1 2006-09-07 Sam Weinig <sam.weinig@gmail.com>
5 Patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10766
6 Auto-generate the Objective-C DOM Events bindings
8 - Auto-generates DOMEvent, DOMKeyboardEvent, DOMMouseEvent, DOMMutationEvent,
9 DOMOverflowEvent, DOMUIEvent, and DOMWheelEvent.
11 - Splits out DOMEventListener and DOMEventTarget into their own files.
13 * DerivedSources.make:
14 * WebCore.xcodeproj/project.pbxproj:
15 * bindings/objc/DOMEventListener.h: Added.
16 * bindings/objc/DOMEventTarget.h: Added.
17 * bindings/objc/DOMEvents.h:
18 * bindings/objc/DOMEvents.mm:
19 (-[DOMEvent WebCore::]):
20 (-[DOMEvent _initWithEvent:WebCore::]):
21 (+[DOMEvent _eventWith:WebCore::]):
22 * bindings/objc/DOMEventsNonstandard.mm: Removed.
23 * bindings/objc/DOMNode.h:
24 * bindings/objc/PublicDOMInterfaces.h:
25 * bindings/scripts/CodeGenerator.pm:
26 * bindings/scripts/CodeGeneratorObjC.pm:
28 * dom/EventListener.idl: Added.
29 * dom/EventTarget.idl: Added.
30 * dom/KeyboardEvent.idl:
35 2006-09-07 Rob Buis <buis@kde.org>
39 http://bugzilla.opendarwin.org/show_bug.cgi?id=9753
40 SVG with width and height 100% leaves room for scrollbar on the right.
42 Relayout children of svg containers, except svg shapes that do not depend on percentages.
44 * kcanvas/RenderPath.cpp:
45 (WebCore::RenderPath::hasPercentageValues):
46 * kcanvas/RenderPath.h:
47 * kcanvas/RenderSVGContainer.cpp:
48 (WebCore::RenderSVGContainer::layout):
49 * ksvg2/svg/SVGCircleElement.cpp:
50 (SVGCircleElement::hasPercentageValues):
51 * ksvg2/svg/SVGCircleElement.h:
52 * ksvg2/svg/SVGEllipseElement.cpp:
53 (WebCore::SVGEllipseElement::hasPercentageValues):
54 * ksvg2/svg/SVGEllipseElement.h:
55 * ksvg2/svg/SVGLineElement.cpp:
56 (SVGLineElement::hasPercentageValues):
57 * ksvg2/svg/SVGLineElement.h:
58 * ksvg2/svg/SVGRectElement.cpp:
59 (WebCore::SVGRectElement::hasPercentageValues):
60 * ksvg2/svg/SVGRectElement.h:
61 * ksvg2/svg/SVGStyledElement.h:
62 (WebCore::SVGStyledElement::hasPercentageValues):
64 2006-09-06 Brady Eidson <beidson@apple.com>
66 Constant renamed in 16250 wasn't changed in each use
68 * platform/win/GlyphMapWin.cpp:
69 (WebCore::GlyphMap::fillPage):
71 2006-09-06 Darin Adler <darin@apple.com>
73 Reviewed by Tim Hatcher.
75 - fix crashes affecting editing layout tests (regressions from my vector change)
77 * editing/BreakBlockquoteCommand.cpp:
78 (WebCore::BreakBlockquoteCommand::doApply): Added check for empty vector.
79 * editing/InsertParagraphSeparatorCommand.cpp:
80 (WebCore::InsertParagraphSeparatorCommand::doApply): Ditto.
82 2006-09-06 David Harrison <harrison@apple.com>
84 Reviewed and tweaked by Tim H.
86 <rdar://problem/4564955> WebKit doesn't trigger Auto Font Activation
88 If we don't find the font in the available fonts list, call [NSFont fontWithName:size:]
89 to trigger a search that will include auto activation. No PLT or iBench perf impact.
90 No layout tests affected. Not testable in an automated way that will work on all systems.
92 * platform/mac/WebFontCache.mm:
93 (+[WebFontCache fontWithFamily:traits:size:]):
95 2006-09-06 Nikolas Zimmermann <zimmermann@kde.org>
97 Reviewed and landed by ap.
101 * CMakeLists.txt: Take out CharacterData.cpp from build / add new Text* files to build.
102 * platform/qt/BrowserExtensionQt.cpp: Add wtf/Platform.h include.
103 * platform/qt/FontCacheQt.cpp: Add FontData.h include.
104 * platform/qt/FontQt.cpp:
105 (WebCore::Font::drawGlyphs): Fix constness in reinterpret_cast.
106 * platform/qt/FrameQt.cpp:
107 (WebCore::FrameQt::markMisspellings): Change "SelectionController" param type to "Selection".
108 (WebCore::FrameQt::respondToChangedSelection): Ditto.
109 (WebCore::FrameQt::respondToChangedContents): Ditto.
110 (WebCore::FrameQt::shouldChangeSelection): Ditto.
111 * platform/qt/FrameQt.h: Ditto.
112 * platform/qt/ImageQt.cpp:
113 (WebCore::Image::supportsType): Fix String->QString conversion.
114 * platform/qt/ResourceLoaderManager.cpp:
115 (WebCore::ResourceLoaderManager::add): Fix String->DeprecatedString conversion.
116 * platform/qt/ScrollViewCanvasQt.cpp:
117 (WebCore::ScrollViewCanvasQt::handleKeyEvent): Adapt to SelectionController signature changes.
118 * platform/qt/qt-encodings.txt: Removed.
120 2006-09-06 Darin Adler <darin@apple.com>
122 Reviewed by Tim Hatcher.
124 - http://bugzilla.opendarwin.org/show_bug.cgi?id=10675
125 tweak font-related headers and convert lists to vectors
127 One major change was to greatly reduce the number of files that include Font.h.
128 Another was to convert many uses of DeprecatedPtrList/DeprecatedValueList to Vector.
130 * WebCore.xcodeproj/project.pbxproj: Added TextStyle.h.
132 * bindings/objc/DOM.mm: (-[DOMElement _font]): Changed to not depend on
133 Font::getNSFont since a WebCore::Font represents more than one NSFont.
135 * bindings/objc/DOMNode.mm: (-[DOMNode lineBoxRects]): Updated to use Vector.
136 * bridge/mac/FormDataMac.mm: (WebCore::arrayFromFormData): Ditto.
137 * bridge/mac/FrameViewMac.mm: (WebCore::FrameView::updateDashboardRegions): Ditto.
138 * css/CSSComputedStyleDeclaration.cpp:
139 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Ditto.
141 (WebCore::Document::dashboardRegions): Ditto.
142 (WebCore::Document::setDashboardRegions): Ditto.
143 * dom/Document.h: Ditto.
144 * editing/ReplaceSelectionCommand.cpp:
145 (WebCore::ReplacementFragment::removeUnrenderedNodes): Ditto.
146 * html/FormDataList.h: Ditto.
147 * html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::isFocusable): Ditto.
148 * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::formData): Ditto.
149 * kcanvas/RenderPath.cpp: (WebCore::RenderPath::absoluteRects): Ditto.
150 * kcanvas/RenderPath.h: Ditto.
151 * kcanvas/RenderSVGImage.cpp: (WebCore::RenderSVGImage::absoluteRects): Ditto.
152 * kcanvas/RenderSVGImage.h: Ditto.
153 * kcanvas/RenderSVGText.cpp: (WebCore::RenderSVGText::absoluteRects): Ditto.
154 * kcanvas/RenderSVGText.h: Ditto.
155 * loader/FormData.cpp:
156 (WebCore::FormData::flatten): Ditto.
157 (WebCore::FormData::flattenToString): Ditto.
158 * loader/FormData.h: (WebCore::FormData::elements): Ditto.
159 * loader/mac/LoaderFunctionsMac.mm: (WebCore::ServeSynchronousRequest): Ditto.
160 * page/Frame.cpp: (WebCore::Frame::markedTextUnderlines): Ditto.
161 * page/Frame.h: Ditto.
162 * page/FramePrivate.h: Ditto.
163 * platform/mac/ResourceLoaderMac.mm: (WebCore::ResourceLoader::start): Ditto.
164 * rendering/InlineTextBox.h: Ditto.
165 * rendering/InlineTextBox.cpp:
166 (WebCore::InlineTextBox::paint): Ditto.
167 (WebCore::InlineTextBox::paintMarkedTextUnderline): Ditto.
168 * rendering/RenderContainer.h: Ditto.
169 * rendering/RenderContainer.cpp: (WebCore::RenderContainer::lineBoxRects): Ditto.
170 * rendering/RenderInline.h: Ditto.
171 * rendering/RenderInline.cpp: (WebCore::RenderInline::absoluteRects): Ditto.
172 * rendering/RenderObject.h: Ditto.
173 * rendering/RenderObject.cpp:
174 (WebCore::RenderObject::lineBoxRects): Ditto.
175 (WebCore::RenderObject::absoluteRects): Ditto.
176 (WebCore::RenderObject::absoluteBoundingBoxRect): Ditto.
177 (WebCore::RenderObject::addDashboardRegions): Ditto.
178 (WebCore::RenderObject::collectDashboardRegions): Ditto.
179 * rendering/RenderStyle.h: Ditto.
180 * rendering/RenderStyle.cpp:
181 (WebCore::RenderStyle::initialDashboardRegions): Ditto.
182 (WebCore::RenderStyle::noneDashboardRegions): Ditto.
183 * rendering/RenderText.h: Ditto.
184 * rendering/RenderText.cpp:
185 (WebCore::RenderText::absoluteRects): Ditto.
186 (WebCore::RenderText::lineBoxRects): Ditto.
187 * rendering/RenderView.h: Ditto.
188 * rendering/RenderView.cpp: (WebCore::RenderView::absoluteRects): Ditto.
190 * bridge/mac/FrameMac.mm:
191 (WebCore::FrameMac::attributedString): Updated to use Vector and changed to not
192 depend on getNSFont on a Font.
193 (WebCore::FrameMac::fontForSelection): Changed to not depend on Font::getNSFont.
194 (WebCore::FrameMac::fontAttributesForSelectionStart): Ditto.
195 (WebCore::convertAttributesToUnderlines): Updated to use Vector.
196 (WebCore::FrameMac::setMarkedTextRange): Ditto.
197 (WebCore::FrameMac::dashboardRegionsDictionary): Ditto.
199 * bridge/mac/WebCoreAXObject.mm:
200 (boundingBoxRect): Updated to use Vector.
201 (AXAttributeStringSetStyle): Changed to not depend on Font::getNSFont.
203 * bridge/mac/WebCoreStringTruncator.mm: Updated includes.
204 * page/Settings.h: Ditto.
205 * platform/mac/WebCoreTextRenderer.mm: Ditto.
206 * rendering/EllipsisBox.cpp: Ditto.
208 * editing/BreakBlockquoteCommand.cpp: (WebCore::BreakBlockquoteCommand::doApply):
209 Updated to use a Vector that we iterate in reverse order instead of a linked list
210 that we reverse by prepending elements instead of adding to the end.
211 * editing/InsertParagraphSeparatorCommand.cpp:
212 (WebCore::InsertParagraphSeparatorCommand::doApply): Ditto.
214 * loader/DocLoader.h: Removed unneeded include of DeprecatedPtrList.h.
216 * platform/Font.h: Moved TextStyle to a separate header. Removed Font::getNSFont.
217 * platform/Font.cpp: Changed to use const instead of #define.
218 (WebCore::Font::width): Overloaded this so we don't have a default parameter, which
219 eliminates the need to have TextStyle defined to compiler the Font.h header.
221 * platform/TextStyle.h: Added.
223 * platform/FontData.h: Added a forward declaration of ATSUStyle so this header
226 * platform/FontFallbackList.h: Tweaks.
227 * platform/FontFallbackList.cpp: Tweaks.
229 * platform/FontFamily.h: Removed unneeded NSString declaration. Simplified class by
230 using Shared and RefPtr, which resulted in removing many explicit functions.
231 * platform/FontFamily.cpp: More of the same.
233 * platform/GlyphBuffer.h: Removed unneeded MAX_GLYPH_EXPANSION and GLYPH_BUFFER_SIZE
236 * platform/GlyphMap.h: Removed unneeded include of GlyphBuffer.h, which was included
237 only for the typedef of Glyph; there's no reason to not just repeat that typedef here
238 since C++ allows multiple typedefs if they match. Renamed the cGlyphPageSize constant
240 * platform/GlyphMap.cpp: Changed NO_BREAK_SPACE and ZERO_WIDTH_SPACE macros into
241 constants. Updated for cGlyphPageSize change.
242 * platform/mac/GlyphMapMac.cpp: Updated for cGlyphPageSize change.
244 * platform/GlyphWidthMap.h: Removed unneeded include of GlyphBuffer.h, which was included
245 only for the typedef of Glyph; there's no reason to not just repeat that typedef here
246 since C++ allows multiple typedefs if they match. Renamed the cGlyphWidthPageSize constant
247 to GlyphWidthPage::size.
248 * platform/GlyphWidthMap.cpp: Updated for cGlyphWidthPageSize change.
250 * platform/GraphicsContext.h: Removed unneeded include of Font.h. Changed drawText
251 function to use overloading instead of default parameters to allow TextStyle to be optional.
252 This cuts the dependency on TextStyle.
253 * platform/GraphicsContext.cpp: (WebCore::GraphicsContext::drawText): Added overload.
255 * platform/Image.h: Removed unneeded forward declaration of IntSize.
257 * platform/mac/FontCacheMac.mm: (WebCore::FontCache::getFontDataForCharacters):
258 Changed to not depend on Font::getNSFont.
259 * platform/mac/ListBoxMac.mm: (-[WebCoreTableView fontChanged]): Ditto.
260 * platform/mac/TextFieldMac.mm: (-[NSSearchFieldCell _addStringToRecentSearches:]):
262 * rendering/RenderPopupMenuMac.mm:
263 (WebCore::RenderPopupMenuMac::showPopup): Ditto.
264 (WebCore::RenderPopupMenuMac::addGroupLabel): Ditto.
265 (WebCore::RenderPopupMenuMac::addOption): Ditto.
267 * platform/mac/FontDataMac.mm: Fixed includes. Converted a bunch of macros to be
268 constants and inline functions instead.
270 * platform/mac/FontMac.mm: Fixed includes.
271 * platform/mac/PopUpButtonMac.mm: Ditto.
272 * rendering/RenderMenuList.cpp: Ditto.
273 * rendering/RenderTextControl.cpp: Ditto.
275 * platform/mac/WebCoreSystemInterface.h: Fixes so this header stands alone and is
276 compatible with all 4 of C, ObjC, C++, ObjC++.
278 2006-09-05 MorganL <morlmor@yahoocom>
280 Reviewed/landed by aroben.
282 Fixes bug 10743: Windows build is busted.
284 * WebCore.vcproj/WebCore/WebCore.vcproj:
285 * bridge/win/FrameWin.h:
286 * platform/ResourceLoaderInternal.h:
287 * platform/TextEncodingRegistry.cpp:
288 * platform/win/ResourceLoaderWin.cpp:
289 (WebCore::ResourceLoaderWndProc):
290 (WebCore::ResourceLoader::start):
291 * platform/win/TemporaryLinkStubs.cpp:
292 (FrameWin::markMisspellings):
293 (FrameWin::shouldChangeSelection):
294 (FrameWin::respondToChangedSelection):
295 (FrameWin::respondToChangedContents):
296 (RenderThemeWin::adjustMenuListStyle):
298 2006-09-05 Darin Adler <darin@apple.com>
300 - some quick build fixes
302 * bridge/mac/WebCoreAXObject.mm: Remove use of WebCore::UChar.
303 * bridge/mac/WebCoreFrameBridge.mm: Ditto. Also remove include
305 * css/CSSGrammar.y: Remove use of WebCore::UChar.
306 * platform/UChar.h: Back out WebCore::UChar for now.
308 2006-09-05 Darin Adler <darin@apple.com>
312 - http://bugzilla.opendarwin.org/show_bug.cgi?id=10728
313 text encodings should work without a numeric ID
315 - includes a fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=10681
316 REGRESSION: Reproducible crash at Wikipedia
318 - fixed a bug where link elements would not set the charset properly for
319 CSS stylesheets they loaded
321 - converted DeprecatedString code paths that are related to decoding web
322 pages to use String instead, to ensure that conversion back and forth won't
325 Test: fast/encoding/css-link-charset.html
326 Test: fast/forms/form-data-encoding-normalization-overrun.html
328 Coverage for encoding issues is pretty good, so we probably don't need more
329 tests to land this. Our existing tests did find issues with this patch while
330 it was under development. And I suppose it would be nice to have even more tests.
332 * platform/TextEncoding.h:
333 * platform/TextEncoding.cpp:
334 (WebCore::addEncodingName): Added. Used to build up the set used by isJapanese.
335 (WebCore::TextEncoding::TextEncoding): Removed boolean "eight bit only" parameter and
336 added an overload for String as well as const char*. Simplified because now the only
337 data member is m_name -- calls the registry's atomicCanonicalTextEncodingName function
338 to make the name canonical (resolve aliases) and atomic (use a single pointer for each
339 encoding name so we can compare and hash efficiently).
340 (WebCore::TextEncoding::decode): Renamed from toUnicode. Just a simple wrapper on top
341 of TextDecoder that can be used when the data to decode is all present at once.
342 (WebCore::TextEncoding::encode): Renamed from fromUnicode. Handles the normalization and
343 then uses the registry to get a codec to handle the rest.
344 (WebCore::TextEncoding::usesVisualOrdering): New implementation that compares with the
345 name of the only encoding that uses visual ordering. We blur the concepts a bit so that
346 we treat the visual ordering and logical ordering variations as two separate encodings.
347 (WebCore::TextEncoding::isJapanese): New implementation that uses a set to efficiently
348 determine if an encoding is Japanese.
349 (WebCore::TextEncoding::backslashAsCurrencySymbol): New implementation that compares
350 with the names of the two encodings that have the strange backslash.
351 (WebCore::TextEncoding::closest8BitEquivalent): Added. Replaces the old "eight bit only"
352 boolean parameter to the constructor.
353 (WebCore::ASCIIEncoding): Added.
354 (WebCore::Latin1Encoding): Added.
355 (WebCore::UTF16BigEndianEncoding): Added.
356 (WebCore::UTF16LittleEndianEncoding): Added.
357 (WebCore::UTF8Encoding): Added.
358 (WebCore::WindowsLatin1Encoding): Added.
360 * platform/TextEncodingRegistry.h: Added.
361 * platform/TextEncodingRegistry.cpp: Added. Keeps a table of all the character set
362 aliases and names and another of all the codecs and parameters for each name.
364 * platform/TextDecoder.h: Added.
365 * platform/TextDecoder.cpp: Added. Contains logic to look for a BOM and hand the data
366 to the proper codec, based on code that used to be in both the ICU and Mac codecs.
368 * platform/StreamingTextDecoder.h: Renamed class to TextCodec. We'll rename
369 the files in a later check-in. Moved creation functions into TextEncodingRegistry.h.
370 Added typedefs of the registrar function types so classes derived from this one
371 can use them without including the TextEncodingRegistry header. Renamed toUnicode
372 and fromUnicode to decode and encode. Changed the parameter and return types so that
373 the parameters are pointers to the data and the return types are String and CString.
374 * platform/StreamingTextDecoder.cpp:
375 (WebCore::TextCodec::appendOmittingBOM): Added. Helper function used by multiple
376 classes derived from this one.
378 * platform/TextCodecLatin1.h: Added.
379 * platform/TextCodecLatin1.cpp: Added. Contains logic to handle encoding and decoding
380 Windows Latin-1, based on code that used to be in both the ICU and Mac codecs.
382 * platform/TextCodecUTF16.h: Added.
383 * platform/TextCodecUTF16.cpp: Added. Contains logic to handle encoding and decoding
384 UTF-16, based on code that used to be in both the ICU and Mac codecs.
386 * platform/StreamingTextDecoderICU.h: Renamed class to TextCodecICU. We'll rename
387 the files in a later check-in. Removed all the functions having to do with handling
388 BOM, UTF-16, and Latin-1; those are now handled elsewhere. Removed textEncodingSupported
389 because that's superseded by the registry. Added registry hook functions.
390 * platform/StreamingTextDecoderICU.cpp:
391 (WebCore::TextCodecICU::registerEncodingNames): Added. Registers all encodings that
392 ICU can handle with the "IANA" standard. Also includes a special case for a particular
393 type of encoding for Hebrew that uses logical ordering. Also includes aliases that are
394 not in ICU but that were historically known to WebKit for encodings that ICU handles.
395 (WebCore::newTextCodecICU): Added. Used by registerCodecs.
396 (WebCore::TextCodecICU::registerCodecs): Added. Registers codecs for the same encodings
398 (WebCore::TextCodecICU::TextCodecICU): Much simplified since this now only handles the
399 actual ICU encoding and decoding.
400 (WebCore::TextCodecICU::~TextCodecICU): Renamed.
401 (WebCore::TextCodecICU::releaseICUConverter): Changed to be a const member function.
402 (WebCore::TextCodecICU::createICUConverter): Changed to be a const member function and
403 to check if the cached converter can be reused in a simpler way.
404 (WebCore::TextCodecICU::decode): Updated for changes to types.
405 (WebCore::TextCodecICU::encode): Updated for changes to types, and removed normalization
406 since this is now handled by the caller.
408 * platform/mac/StreamingTextDecoderMac.h: Renamed class to TextCodecMac. We'll rename
409 the files in a later check-in. Removed all the functions having to do with handling
410 BOM, UTF-16, and Latin-1; those are now handled elsewhere. Removed textEncodingSupported
411 because that's superseded by the registry. Added registry hook functions.
412 * platform/mac/StreamingTextDecoderMac.cpp:
413 (WebCore::TextCodecMac::registerEncodingNames): Added. Registers encodings based on
414 the charset table generated by the make-charset-table.pl perl script.
415 (WebCore::newTextCodecMac): Added. Used by registerCodecs.
416 (WebCore::TextCodecMac::registerCodecs): Added. Registers codecs for the same encodings
418 (WebCore::TextCodecMac::TextCodecMac): Much simplified since this now only handles the
419 actual TEC/CF encoding and decoding.
420 (WebCore::TextCodecMac::~TextCodecMac): Renamed.
421 (WebCore::TextCodecMac::releaseTECConverter): Changed to be a const member function.
422 (WebCore::TextCodecMac::createTECConverter): Changed to be a const member function.
423 (WebCore::TextCodecMac::decode): Updated for changes to types.
424 (WebCore::TextCodecMac::encode): Updated for changes to types, and removed normalization
425 since this is now handled by the caller.
427 * platform/mac/mac-encodings.txt: Removed most of the names in this file. This now
428 only includes encodings where we want to use Mac OS X Carbon Text Encoding Converter,
429 which is only encodings that are not supported by ICU.
430 * platform/make-charset-table.pl: Removed flags from output. We don't use them any more.
431 * platform/CharsetData.h: Changed from a platform-independent header into a
432 Macintosh-specific one. A later patch should move this and rename it. Also
433 subsumes ExtraCFEncodings.h.
435 * WebCore.xcodeproj/project.pbxproj: Added new files. Changed the prefix on the
436 "make character sets" rule to be kTextEncoding instead of kCFStringEncoding.
438 * loader/Decoder.h: Change the default encoding parameter to the constructor to be
439 a TextEncoding object. Renamed setEncodingName to setEncoding, and made it take a
440 TextEncoding for the encoding. Removed the encodingName and visuallyOrdered functions,
441 since TextEncoding supports both directly in a straightforward way. Changed both
442 decode and flush functions to return String instead of DeprecatedString. Added a
443 number of private functions to factor this class a bit more so it's easier to read.
444 Got rid of a number of redundant data members. Changed the buffer to a Vector<char>.
445 * loader/Decoder.cpp:
446 (WebCore::Decoder::determineContentType): Added. Used by constructor to determine
447 the content type based on the passed-in MIME type.
448 (WebCore::Decoder::defaultEncoding): Added. Used by constructor to determine the
449 default encoding based on the passed in default and the content type.
450 (WebCore::Decoder::Decoder): Changed to use the functions above. Also renamed
451 m_reachedBody to m_checkedForHeadCharset.
452 (WebCore::Decoder::setEncoding): Renamed and changed to take an encoding rather
453 than an encoding name.
454 (WebCore::Decoder::checkForBOM): Factored out of decode.
455 (WebCore::Decoder::checkForCSSCharset): Factored out of decode.
456 (WebCore::Decoder::checkForHeadCharset): Factored out of decode.
457 (WebCore::Decoder::detectJapaneseEncoding): Factored out of decode.
458 (WebCore::Decoder::decode): Refactored so it's no longer one huge function.
459 Changed to use the new Vector<char> and the new API for TextDecoder.
460 (WebCore::Decoder::flush): Added code to empty out the buffer. Not an issue in
461 practice since we don't re-use the decoder after flushing it.
463 * platform/UChar.h: Added. Has the type named WebCore::UChar that we'll be switching
464 to. We'll switch away from the ICU ::UChar type, because we don't want to be so
465 closely tied to ICU -- include this instead of <unicode/umachine.h>.
467 * platform/PlatformString.h:
468 * platform/String.cpp:
469 (WebCore::String::latin1): Updated for changes to TextEncoding.
470 (WebCore::String::utf8): Ditto.
471 (WebCore::String::newUninitialized): Added. Gives a way to create a String and
472 then write directly into its buffer.
474 * platform/StringImpl.h: Changed return value for charactersWithNullTermination to
475 be a const UChar*. While it's true that this function changes the underlying
476 StringImpl, the characters still shouldn't be modified with the returned pointer.
477 * platform/StringImpl.cpp:
478 (WebCore::StringImpl::charactersWithNullTermination): Updated for change above.
479 (WebCore::StringImpl::newUninitialized): Added. Gives a way to create a StringImpl
480 and then write directly into its buffer.
482 * platform/CString.h:
483 * platform/CString.cpp: (WebCore::CString::newUninitialized): Added. Gives a way
484 to create a CString and then write directly into its buffer.
486 * bridge/mac/WebCoreFrameBridge.h: Removed textEncoding method, and replaced
487 +[WebCoreFrameBridge stringWithData:textEncoding:] with
488 -[WebCoreFrameBridge stringWithData:] to avoid having to pass text encoding
490 * bridge/mac/WebCoreFrameBridge.mm:
491 (-[WebCoreFrameBridge setEncoding:userChosen:]): Removed now-unneeded conversion
493 (-[WebCoreFrameBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
495 (-[WebCoreFrameBridge aeDescByEvaluatingJavaScriptFromString:]): Ditto.
496 (-[WebCoreFrameBridge referrer]): Removed now-unneeded call to getNSString.
497 (-[WebCoreFrameBridge stringWithData:]): Added. Asks the document's decoder
498 what its encoding is, and decodes using that.
499 (+[WebCoreFrameBridge stringWithData:textEncodingName:]): Simplified so it
500 no longer involved a text encoding ID number.
501 (-[WebCoreFrameBridge smartInsertForString:replacingRange:beforeString:afterString:]):
502 Changed to use UChar instead of DeprecatedChar.
503 (-[WebCoreFrameBridge documentFragmentWithMarkupString:baseURLString:]): Removed
504 now-unneeded conversion to DeprecatedString.
505 (-[WebCoreFrameBridge documentFragmentWithText:inContext:]): Ditto.
507 * html/HTMLFormElement.cpp:
508 (WebCore::encodeCString): Changed parameter to CString.
509 (WebCore::HTMLFormElement::formData): Updated code for improvements to TextEncoding.
511 * loader/CachedCSSStyleSheet.h:
512 * loader/CachedCSSStyleSheet.cpp:
513 (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet): Fixed mistake where the
514 decoder was created without passing in the character set. Also changed from
515 DeprecatedString to String.
516 (WebCore::CachedCSSStyleSheet::setCharset): More of the same.
518 * bindings/js/kjs_window.h: (KJS::ScheduledAction::ScheduledAction): Changed
519 to use String instead of DeprecatedString, UChar instead of DeprecatedChar,
520 CString instead of DeprecatedCString, etc.
521 * bridge/mac/FormDataMac.mm: (WebCore::arrayFromFormData): Ditto.
522 * bridge/mac/FrameMac.h: Ditto.
523 * bridge/mac/FrameMac.mm: (WebCore::FrameMac::isCharacterSmartReplaceExempt):
525 * bridge/mac/WebCoreAXObject.mm:
526 (-[WebCoreAXObject helpText]): Ditto.
527 (-[WebCoreAXObject value]): Ditto.
528 (-[WebCoreAXObject accessibilityDescription]): Ditto.
529 (-[WebCoreAXObject doAXStringForTextMarkerRange:]): Ditto.
530 * bridge/mac/WebCoreEncodings.mm: (+[WebCoreEncodings decodeData:]): Ditto.
531 Also fixed code that does a deref without a ref to use RefPtr instead.
532 * bridge/mac/WebCoreScriptDebugger.mm:
533 (-[WebCoreScriptCallFrame evaluateWebScript:]): Ditto.
534 * bridge/mac/WebCoreSettings.mm:
535 (-[WebCoreSettings setDefaultTextEncoding:]): Ditto.
536 * css/CSSImportRule.cpp: (WebCore::CSSImportRule::insertedIntoParent): Ditto.
537 * css/cssparser.cpp: (WebCore::CSSParser::lex): Ditto.
540 (WebCore::Document::setCharset): Ditto.
541 (WebCore::Document::write): Ditto.
542 (WebCore::Document::determineParseMode): Ditto.
543 * dom/ProcessingInstruction.cpp:
544 (WebCore::ProcessingInstruction::checkStyleSheet): Ditto.
545 * dom/XMLTokenizer.h:
546 * dom/XMLTokenizer.cpp:
547 (WebCore::shouldAllowExternalLoad): Ditto.
548 (WebCore::createStringParser): Ditto.
549 (WebCore::XMLTokenizer::write): Ditto.
550 (WebCore::toString): Ditto.
551 (WebCore::handleElementAttributes): Ditto.
552 (WebCore::XMLTokenizer::startElementNs): Ditto.
553 (WebCore::XMLTokenizer::endElementNs): Ditto.
554 (WebCore::XMLTokenizer::characters): Ditto.
555 (WebCore::XMLTokenizer::processingInstruction): Ditto.
556 (WebCore::XMLTokenizer::cdataBlock): Ditto.
557 (WebCore::XMLTokenizer::comment): Ditto.
558 (WebCore::XMLTokenizer::internalSubset): Ditto.
559 (WebCore::getXHTMLEntity): Ditto.
560 (WebCore::externalSubsetHandler): Ditto.
561 (WebCore::XMLTokenizer::initializeParserContext): Ditto.
562 (WebCore::XMLTokenizer::notifyFinished): Ditto.
563 (WebCore::xmlDocPtrForString): Ditto.
564 (WebCore::parseXMLDocumentFragment): Ditto.
565 (WebCore::attributesStartElementNsHandler): Ditto.
566 (WebCore::parseAttributes): Ditto.
567 * html/FormDataList.h:
568 * html/FormDataList.cpp:
569 (WebCore::FormDataList::appendString): Ditto. Also changed to call the
570 encoding function by its new name and with new parameters.
571 (WebCore::FormDataList::appendFile): Ditto.
572 * html/HTMLDocument.h:
573 * html/HTMLDocument.cpp:
574 (WebCore::parseDocTypePart): Ditto.
575 (WebCore::containsString): Ditto.
576 (WebCore::parseDocTypeDeclaration): Ditto.
577 (WebCore::HTMLDocument::determineParseMode): Ditto.
578 * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::appendFormData): Ditto.
579 * html/HTMLScriptElement.cpp:
580 (WebCore::HTMLScriptElement::parseMappedAttribute): Ditto.
581 * html/HTMLTokenizer.h:
582 * html/HTMLTokenizer.cpp:
583 (WebCore::HTMLTokenizer::scriptHandler): Ditto.
584 (WebCore::HTMLTokenizer::parseTag): Ditto.
585 (WebCore::HTMLTokenizer::write): Ditto.
586 (WebCore::HTMLTokenizer::finish): Ditto.
587 (WebCore::parseHTMLDocumentFragment): Ditto.
590 (WebCore::Cache::requestStyleSheet): Ditto.
591 (WebCore::Cache::requestScript): Ditto.
592 * loader/CachedResource.h: Ditto.
593 * loader/CachedScript.h:
594 * loader/CachedScript.cpp:
595 (WebCore::CachedScript::CachedScript): Ditto.
596 (WebCore::CachedScript::ref): Ditto.
597 (WebCore::CachedScript::deref): Ditto.
598 (WebCore::CachedScript::setCharset): Ditto.
599 (WebCore::CachedScript::data): Ditto.
600 (WebCore::CachedScript::checkNotify): Ditto.
601 * loader/CachedXBLDocument.h:
602 * loader/CachedXBLDocument.cpp:
603 (WebCore::CachedXBLDocument::setCharset): Ditto.
604 * loader/CachedXSLStyleSheet.h:
605 * loader/CachedXSLStyleSheet.cpp:
606 (WebCore::CachedXSLStyleSheet::setCharset): Ditto.
607 * loader/DocLoader.cpp:
608 (WebCore::DocLoader::requestStyleSheet): Ditto.
609 (WebCore::DocLoader::requestScript): Ditto.
610 * loader/DocLoader.h: Ditto.
612 * loader/FormData.cpp:
613 (WebCore::FormData::FormData): Ditto.
614 (WebCore::FormData::appendFile): Ditto.
615 (WebCore::FormData::flattenToString): Ditto.
617 * page/FramePrivate.h:
619 (WebCore::UserStyleSheetLoader::setStyleSheet): Ditto.
620 (WebCore::getString): Ditto.
621 (WebCore::Frame::replaceContentsWithScriptResult): Ditto.
622 (WebCore::Frame::executeScript): Ditto.
623 (WebCore::Frame::clear): Ditto.
624 (WebCore::Frame::write): Ditto.
625 (WebCore::Frame::endIfNotLoading): Ditto.
626 (WebCore::Frame::baseTarget): Ditto.
627 (WebCore::Frame::scheduleRedirection): Ditto.
628 (WebCore::Frame::scheduleLocationChange): Ditto.
629 (WebCore::Frame::scheduleHistoryNavigation): Ditto.
630 (WebCore::Frame::changeLocation): Ditto.
631 (WebCore::Frame::redirectionTimerFired): Ditto.
632 (WebCore::Frame::encoding): Ditto.
633 (WebCore::Frame::submitForm): Ditto.
634 (WebCore::Frame::referrer): Ditto.
635 (WebCore::Frame::isCharacterSmartReplaceExempt): Ditto.
636 (WebCore::Frame::setEncoding): Ditto.
637 * page/Settings.h: Ditto.
638 * platform/SegmentedString.h: Ditto.
639 * platform/SegmentedString.cpp: Ditto.
640 * xml/XSLStyleSheet.cpp: (WebCore::XSLStyleSheet::parseString): Ditto.
641 * xml/XSLTProcessor.cpp:
642 (WebCore::transformTextStringToXHTMLDocumentString): Ditto.
643 (WebCore::XSLTProcessor::createDocumentFromSource): Ditto.
644 * xml/xmlhttprequest.h:
645 * xml/xmlhttprequest.cpp:
646 (WebCore::XMLHttpRequest::open): Ditto.
647 (WebCore::XMLHttpRequest::send): Ditto.
648 (WebCore::XMLHttpRequest::receivedData): Ditto.
650 * platform/DeprecatedString.cpp:
651 (WebCore::DeprecatedString::fromUtf8): Updated for changes to TextEncoding.
652 (WebCore::DeprecatedString::utf8): Ditto.
656 (WebCore::KURL::KURL): Updated to overload based on presence or absence of
657 TextEncoding rather than having a default.
658 (WebCore::KURL::init): Moved body of constructor in here. Updated to use
659 the new TextEncoding interface.
660 (WebCore::KURL::decode_string): Updated to overload based on presence or
661 absence of TextEncoding rather than having a default. Updated to use
662 the new TextEncoding interface.
663 (WebCore::encodeRelativeString): Updated to use the new TextEncoding interface.
665 * platform/Font.cpp: (WebCore::WidthIterator::normalizeVoicingMarks): Fixed
666 code to use U_ZERO_ERROR instead of a typecast.
668 * bindings/js/kjs_proxy.h: Removed unneeded declaration of DeprecatedString.
669 * platform/GraphicsContext.h: Ditto.
671 * platform/GraphicsContext.cpp: Removed unneeded include of "DeprecatedString.h".
672 * rendering/break_lines.cpp: Ditto.
673 * xml/XMLSerializer.cpp: Ditto.
675 * platform/mac/FontDataMac.mm: Removed unneeded include of <unicode/unorm.h>.
677 * platform/CharsetNames.h: Emptied out this file. A later patch could remove it.
678 * platform/CharsetNames.cpp: Ditto.
679 * platform/mac/ExtraCFEncodings.h: Ditto.
681 2006-09-05 Nikolas Zimmermann <zimmermann@kde.org>
683 Reviewed by eseidel. Landed by eseidel.
685 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10490
687 -> Remove all SVGAnimated* usage from ksvg2.
688 This is all done using a set of macros which live in svg/SVGElement.h
689 (ANIMATED_PROPERTY_DECLARATIONS / ANIMATED_PROPERTY_DEFINITIONS).
690 Transform all properties to this new concept using Eric ruby script.
692 -> Replace all usages of "property()->baseVal()" with "propertyBaseValue()".
693 -> Replace all usages of "property()->setBaseVal()" with "setPropertyBaseValue()".
695 -> Add "virtual const SVGElement* contextElement() const".
696 This concept allows to access the document (needed to access the SVGDocumentExtensions)
697 from lowest-base-classes like SVGURIReference / SVGExternalResourcesRequired etc.
699 These classes contain this contextElement() function as pure virtual functions.
700 The topmost classes (like SVGCircleElement) implement this function with "return this".
702 -> Move default value initialization to constructors.
703 As the lazy_create usage, which was involved in default property initialization,
704 has been removed, we need to do the initialization in the constructor.
706 This forces us to fix the SVGLength class, as calling viewportElement() from the
707 constructor does not work. This SVGLength cleanup is one of the next things to fix.
709 * bindings/scripts/CodeGeneratorJS.pm:
710 * kcanvas/RenderForeignObject.cpp:
711 (WebCore::RenderForeignObject::translationForAttributes):
712 * kcanvas/RenderSVGImage.cpp:
713 (WebCore::RenderSVGImage::paint):
714 (WebCore::RenderSVGImage::relativeBBox):
715 (WebCore::RenderSVGImage::getAbsoluteRepaintRect):
716 (WebCore::RenderSVGImage::translationForAttributes):
717 * kcanvas/RenderSVGText.cpp:
718 (WebCore::RenderSVGText::translationForAttributes):
719 * ksvg2/misc/KSVGTimeScheduler.cpp:
720 (WebCore::SVGTimer::notifyAll):
721 * ksvg2/misc/SVGDocumentExtensions.cpp:
722 * ksvg2/misc/SVGDocumentExtensions.h:
723 (WebCore::SVGDocumentExtensions::baseValueMap):
724 (WebCore::SVGDocumentExtensions::baseValue):
725 (WebCore::SVGDocumentExtensions::setBaseValue):
726 (WebCore::SVGDocumentExtensions::hasBaseValue):
730 * ksvg2/misc/SVGImageLoader.cpp:
731 (WebCore::SVGImageLoader::updateFromElement):
732 * ksvg2/svg/SVGAElement.cpp:
733 (WebCore::SVGAElement::parseMappedAttribute):
734 (WebCore::SVGAElement::defaultEventHandler):
735 * ksvg2/svg/SVGAElement.h:
736 (WebCore::SVGAElement::contextElement):
737 * ksvg2/svg/SVGAnimateColorElement.h:
738 (WebCore::SVGAnimateColorElement::contextElement):
739 * ksvg2/svg/SVGAnimateElement.h:
740 (WebCore::SVGAnimateElement::contextElement):
741 * ksvg2/svg/SVGAnimateTransformElement.cpp:
742 (WebCore::SVGAnimateTransformElement::handleTimerEvent):
743 (WebCore::SVGAnimateTransformElement::initialMatrix):
744 * ksvg2/svg/SVGAnimateTransformElement.h:
745 (WebCore::SVGAnimateTransformElement::contextElement):
746 * ksvg2/svg/SVGCircleElement.cpp:
747 (SVGCircleElement::SVGCircleElement):
748 (SVGCircleElement::parseMappedAttribute):
749 (SVGCircleElement::toPathData):
750 (SVGCircleElement::pushAttributeContext):
751 * ksvg2/svg/SVGCircleElement.h:
752 (WebCore::SVGCircleElement::contextElement):
753 * ksvg2/svg/SVGClipPathElement.cpp:
754 (SVGClipPathElement::SVGClipPathElement):
755 (SVGClipPathElement::parseMappedAttribute):
756 (SVGClipPathElement::canvasResource):
757 * ksvg2/svg/SVGClipPathElement.h:
758 (WebCore::SVGClipPathElement::contextElement):
759 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
760 (SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement):
761 (SVGComponentTransferFunctionElement::parseMappedAttribute):
762 (SVGComponentTransferFunctionElement::transferFunction):
763 * ksvg2/svg/SVGComponentTransferFunctionElement.h:
764 * ksvg2/svg/SVGCursorElement.cpp:
765 (SVGCursorElement::SVGCursorElement):
766 (SVGCursorElement::parseMappedAttribute):
767 * ksvg2/svg/SVGCursorElement.h:
768 (WebCore::SVGCursorElement::contextElement):
769 * ksvg2/svg/SVGDefsElement.h:
770 (WebCore::SVGDefsElement::contextElement):
771 * ksvg2/svg/SVGElement.h:
772 * ksvg2/svg/SVGEllipseElement.cpp:
773 (WebCore::SVGEllipseElement::SVGEllipseElement):
774 (WebCore::SVGEllipseElement::parseMappedAttribute):
775 (WebCore::SVGEllipseElement::toPathData):
776 (WebCore::SVGEllipseElement::pushAttributeContext):
777 * ksvg2/svg/SVGEllipseElement.h:
778 (WebCore::SVGEllipseElement::contextElement):
779 * ksvg2/svg/SVGExternalResourcesRequired.cpp:
780 (WebCore::SVGExternalResourcesRequired::SVGExternalResourcesRequired):
781 (WebCore::SVGExternalResourcesRequired::parseMappedAttribute):
782 * ksvg2/svg/SVGExternalResourcesRequired.h:
783 * ksvg2/svg/SVGFEBlendElement.cpp:
784 (SVGFEBlendElement::SVGFEBlendElement):
785 (SVGFEBlendElement::parseMappedAttribute):
786 (SVGFEBlendElement::filterEffect):
787 * ksvg2/svg/SVGFEBlendElement.h:
788 (WebCore::SVGFEBlendElement::contextElement):
789 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
790 (SVGFEColorMatrixElement::SVGFEColorMatrixElement):
791 (SVGFEColorMatrixElement::parseMappedAttribute):
792 (SVGFEColorMatrixElement::filterEffect):
793 * ksvg2/svg/SVGFEColorMatrixElement.h:
794 (WebCore::SVGFEColorMatrixElement::contextElement):
795 * ksvg2/svg/SVGFEComponentTransferElement.cpp:
796 (SVGFEComponentTransferElement::SVGFEComponentTransferElement):
797 (SVGFEComponentTransferElement::parseMappedAttribute):
798 (SVGFEComponentTransferElement::filterEffect):
799 * ksvg2/svg/SVGFEComponentTransferElement.h:
800 (WebCore::SVGFEComponentTransferElement::contextElement):
801 * ksvg2/svg/SVGFECompositeElement.cpp:
802 (SVGFECompositeElement::SVGFECompositeElement):
803 (SVGFECompositeElement::parseMappedAttribute):
804 (SVGFECompositeElement::filterEffect):
805 * ksvg2/svg/SVGFECompositeElement.h:
806 (WebCore::SVGFECompositeElement::contextElement):
807 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
808 (WebCore::SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement):
809 (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
810 (WebCore::SVGFEDiffuseLightingElement::filterEffect):
811 * ksvg2/svg/SVGFEDiffuseLightingElement.h:
812 (WebCore::SVGFEDiffuseLightingElement::contextElement):
813 * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
814 (SVGFEDisplacementMapElement::SVGFEDisplacementMapElement):
815 (SVGFEDisplacementMapElement::parseMappedAttribute):
816 (SVGFEDisplacementMapElement::filterEffect):
817 * ksvg2/svg/SVGFEDisplacementMapElement.h:
818 (WebCore::SVGFEDisplacementMapElement::contextElement):
819 * ksvg2/svg/SVGFEDistantLightElement.cpp:
820 (WebCore::SVGFEDistantLightElement::lightSource):
821 * ksvg2/svg/SVGFEFloodElement.cpp:
822 (SVGFEFloodElement::parseMappedAttribute):
823 (SVGFEFloodElement::filterEffect):
824 * ksvg2/svg/SVGFEFloodElement.h:
825 (WebCore::SVGFEFloodElement::contextElement):
826 * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
827 (SVGFEGaussianBlurElement::SVGFEGaussianBlurElement):
828 (SVGFEGaussianBlurElement::parseMappedAttribute):
829 (SVGFEGaussianBlurElement::filterEffect):
830 * ksvg2/svg/SVGFEGaussianBlurElement.h:
831 (WebCore::SVGFEGaussianBlurElement::contextElement):
832 * ksvg2/svg/SVGFEImageElement.cpp:
833 (SVGFEImageElement::SVGFEImageElement):
834 (SVGFEImageElement::parseMappedAttribute):
835 * ksvg2/svg/SVGFEImageElement.h:
836 (WebCore::SVGFEImageElement::contextElement):
837 * ksvg2/svg/SVGFELightElement.cpp:
838 (SVGFELightElement::SVGFELightElement):
839 (SVGFELightElement::parseMappedAttribute):
840 * ksvg2/svg/SVGFELightElement.h:
841 * ksvg2/svg/SVGFEMergeElement.cpp:
842 (SVGFEMergeElement::SVGFEMergeElement):
843 (SVGFEMergeElement::filterEffect):
844 * ksvg2/svg/SVGFEMergeElement.h:
845 (WebCore::SVGFEMergeElement::contextElement):
846 * ksvg2/svg/SVGFEMergeNodeElement.cpp:
847 (SVGFEMergeNodeElement::parseMappedAttribute):
848 * ksvg2/svg/SVGFEMergeNodeElement.h:
849 (WebCore::SVGFEMergeNodeElement::contextElement):
850 * ksvg2/svg/SVGFEOffsetElement.cpp:
851 (SVGFEOffsetElement::SVGFEOffsetElement):
852 (SVGFEOffsetElement::parseMappedAttribute):
853 (SVGFEOffsetElement::filterEffect):
854 * ksvg2/svg/SVGFEOffsetElement.h:
855 (WebCore::SVGFEOffsetElement::contextElement):
856 * ksvg2/svg/SVGFEPointLightElement.cpp:
857 (WebCore::SVGFEPointLightElement::lightSource):
858 * ksvg2/svg/SVGFESpecularLightingElement.cpp:
859 (SVGFESpecularLightingElement::SVGFESpecularLightingElement):
860 (SVGFESpecularLightingElement::parseMappedAttribute):
861 (SVGFESpecularLightingElement::filterEffect):
862 * ksvg2/svg/SVGFESpecularLightingElement.h:
863 (WebCore::SVGFESpecularLightingElement::contextElement):
864 * ksvg2/svg/SVGFESpotLightElement.cpp:
865 (WebCore::SVGFESpotLightElement::lightSource):
866 * ksvg2/svg/SVGFETileElement.cpp:
867 (SVGFETileElement::parseMappedAttribute):
868 (SVGFETileElement::filterEffect):
869 * ksvg2/svg/SVGFETileElement.h:
870 (WebCore::SVGFETileElement::contextElement):
871 * ksvg2/svg/SVGFETurbulenceElement.cpp:
872 (SVGFETurbulenceElement::SVGFETurbulenceElement):
873 (SVGFETurbulenceElement::parseMappedAttribute):
874 (SVGFETurbulenceElement::filterEffect):
875 * ksvg2/svg/SVGFETurbulenceElement.h:
876 (WebCore::SVGFETurbulenceElement::contextElement):
877 * ksvg2/svg/SVGFilterElement.cpp:
878 (SVGFilterElement::SVGFilterElement):
879 (SVGFilterElement::parseMappedAttribute):
880 (SVGFilterElement::canvasResource):
881 * ksvg2/svg/SVGFilterElement.h:
882 (WebCore::SVGFilterElement::contextElement):
883 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
884 (SVGFilterPrimitiveStandardAttributes::SVGFilterPrimitiveStandardAttributes):
885 (SVGFilterPrimitiveStandardAttributes::~SVGFilterPrimitiveStandardAttributes):
886 (SVGFilterPrimitiveStandardAttributes::parseMappedAttribute):
887 (SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
888 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
889 (WebCore::SVGFilterPrimitiveStandardAttributes::contextElement):
890 * ksvg2/svg/SVGFitToViewBox.cpp:
891 (WebCore::SVGFitToViewBox::SVGFitToViewBox):
892 (WebCore::SVGFitToViewBox::parseViewBox):
893 (WebCore::SVGFitToViewBox::viewBoxToViewTransform):
894 (WebCore::SVGFitToViewBox::parseMappedAttribute):
895 * ksvg2/svg/SVGFitToViewBox.h:
896 * ksvg2/svg/SVGForeignObjectElement.cpp:
897 (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
898 (WebCore::SVGForeignObjectElement::parseMappedAttribute):
899 * ksvg2/svg/SVGForeignObjectElement.h:
900 (WebCore::SVGForeignObjectElement::isValid):
901 (WebCore::SVGForeignObjectElement::contextElement):
902 * ksvg2/svg/SVGGElement.h:
903 (WebCore::SVGGElement::contextElement):
904 * ksvg2/svg/SVGGradientElement.cpp:
905 (SVGGradientElement::SVGGradientElement):
906 (SVGGradientElement::parseMappedAttribute):
907 (SVGGradientElement::rebuildStops):
908 * ksvg2/svg/SVGGradientElement.h:
909 * ksvg2/svg/SVGHelper.cpp:
910 (WebCore::SVGHelper::PercentageOfViewport):
911 * ksvg2/svg/SVGImageElement.cpp:
912 (SVGImageElement::SVGImageElement):
913 (SVGImageElement::parseMappedAttribute):
914 (SVGImageElement::haveLoadedRequiredResources):
915 * ksvg2/svg/SVGImageElement.h:
916 (WebCore::SVGImageElement::contextElement):
917 * ksvg2/svg/SVGLangSpace.h:
918 * ksvg2/svg/SVGLength.cpp:
919 * ksvg2/svg/SVGLineElement.cpp:
920 (SVGLineElement::SVGLineElement):
921 (SVGLineElement::parseMappedAttribute):
922 (SVGLineElement::toPathData):
923 (SVGLineElement::pushAttributeContext):
924 * ksvg2/svg/SVGLineElement.h:
925 (WebCore::SVGLineElement::contextElement):
926 * ksvg2/svg/SVGLinearGradientElement.cpp:
927 (SVGLinearGradientElement::SVGLinearGradientElement):
928 (SVGLinearGradientElement::parseMappedAttribute):
929 (SVGLinearGradientElement::buildGradient):
930 * ksvg2/svg/SVGLinearGradientElement.h:
931 (WebCore::SVGLinearGradientElement::contextElement):
932 * ksvg2/svg/SVGMarkerElement.cpp:
933 (WebCore::SVGMarkerElement::SVGMarkerElement):
934 (WebCore::SVGMarkerElement::parseMappedAttribute):
935 (WebCore::SVGMarkerElement::setOrientToAuto):
936 (WebCore::SVGMarkerElement::setOrientToAngle):
937 (WebCore::SVGMarkerElement::canvasResource):
938 * ksvg2/svg/SVGMarkerElement.h:
939 (WebCore::SVGMarkerElement::contextElement):
940 * ksvg2/svg/SVGMaskElement.cpp:
941 (WebCore::SVGMaskElement::SVGMaskElement):
942 (WebCore::SVGMaskElement::attributeChanged):
943 (WebCore::SVGMaskElement::parseMappedAttribute):
944 (WebCore::SVGMaskElement::drawMaskerContent):
945 * ksvg2/svg/SVGMaskElement.h:
946 (WebCore::SVGMaskElement::contextElement):
947 * ksvg2/svg/SVGPathElement.cpp:
948 (WebCore::SVGPathElement::SVGPathElement):
949 * ksvg2/svg/SVGPathElement.h:
950 (WebCore::SVGPathElement::isValid):
951 (WebCore::SVGPathElement::contextElement):
952 * ksvg2/svg/SVGPatternElement.cpp:
953 (WebCore::SVGPatternElement::SVGPatternElement):
954 (WebCore::SVGPatternElement::parseMappedAttribute):
955 (WebCore::SVGPatternElement::pushAttributeContext):
956 (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
957 (WebCore::SVGPatternElement::drawPatternContentIntoTile):
958 (WebCore::SVGPatternElement::notifyAttributeChange):
959 (WebCore::SVGPatternElement::getCTM):
960 * ksvg2/svg/SVGPatternElement.h:
961 (WebCore::SVGPatternElement::contextElement):
962 * ksvg2/svg/SVGPolyElement.h:
963 (WebCore::SVGPolyElement::contextElement):
964 * ksvg2/svg/SVGRadialGradientElement.cpp:
965 (WebCore::SVGRadialGradientElement::SVGRadialGradientElement):
966 (WebCore::SVGRadialGradientElement::~SVGRadialGradientElement):
967 (WebCore::SVGRadialGradientElement::parseMappedAttribute):
968 (WebCore::SVGRadialGradientElement::buildGradient):
969 * ksvg2/svg/SVGRadialGradientElement.h:
970 (WebCore::SVGRadialGradientElement::contextElement):
971 * ksvg2/svg/SVGRectElement.cpp:
972 (WebCore::SVGRectElement::SVGRectElement):
973 (WebCore::SVGRectElement::parseMappedAttribute):
974 (WebCore::SVGRectElement::toPathData):
975 (WebCore::SVGRectElement::pushAttributeContext):
976 * ksvg2/svg/SVGRectElement.h:
977 (WebCore::SVGRectElement::contextElement):
978 * ksvg2/svg/SVGSVGElement.cpp:
979 (WebCore::SVGSVGElement::SVGSVGElement):
980 (WebCore::SVGSVGElement::~SVGSVGElement):
981 (WebCore::SVGSVGElement::viewport):
982 (WebCore::SVGSVGElement::parseMappedAttribute):
983 (WebCore::SVGSVGElement::getCTM):
984 (WebCore::SVGSVGElement::getScreenCTM):
985 (WebCore::SVGSVGElement::createRenderer):
986 * ksvg2/svg/SVGSVGElement.h:
987 (WebCore::SVGSVGElement::contextElement):
988 * ksvg2/svg/SVGScriptElement.h:
989 (WebCore::SVGScriptElement::contextElement):
990 * ksvg2/svg/SVGSetElement.h:
991 (WebCore::SVGSetElement::contextElement):
992 * ksvg2/svg/SVGStopElement.cpp:
993 (SVGStopElement::SVGStopElement):
994 (SVGStopElement::parseMappedAttribute):
995 * ksvg2/svg/SVGStopElement.h:
996 * ksvg2/svg/SVGStylable.h:
997 * ksvg2/svg/SVGStyledElement.cpp:
998 * ksvg2/svg/SVGStyledElement.h:
999 * ksvg2/svg/SVGStyledTransformableElement.cpp:
1000 (SVGStyledTransformableElement::SVGStyledTransformableElement):
1001 (SVGStyledTransformableElement::parseMappedAttribute):
1002 * ksvg2/svg/SVGStyledTransformableElement.h:
1003 * ksvg2/svg/SVGSwitchElement.cpp:
1004 * ksvg2/svg/SVGSwitchElement.h:
1005 (WebCore::SVGSwitchElement::contextElement):
1006 * ksvg2/svg/SVGSymbolElement.h:
1007 (WebCore::SVGSymbolElement::contextElement):
1008 * ksvg2/svg/SVGTRefElement.cpp:
1009 (SVGTRefElement::updateReferencedText):
1010 * ksvg2/svg/SVGTRefElement.h:
1011 (WebCore::SVGTRefElement::contextElement):
1012 * ksvg2/svg/SVGTSpanElement.h:
1013 (WebCore::SVGTSpanElement::contextElement):
1014 * ksvg2/svg/SVGTextContentElement.cpp:
1015 (SVGTextContentElement::SVGTextContentElement):
1016 (SVGTextContentElement::parseMappedAttribute):
1017 * ksvg2/svg/SVGTextContentElement.h:
1018 * ksvg2/svg/SVGTextElement.cpp:
1019 (WebCore::SVGTextElement::SVGTextElement):
1020 (WebCore::SVGTextElement::parseMappedAttribute):
1021 * ksvg2/svg/SVGTextElement.h:
1022 (WebCore::SVGTextElement::contextElement):
1023 * ksvg2/svg/SVGTextPositioningElement.cpp:
1024 (SVGTextPositioningElement::SVGTextPositioningElement):
1025 (SVGTextPositioningElement::parseMappedAttribute):
1026 * ksvg2/svg/SVGTextPositioningElement.h:
1027 * ksvg2/svg/SVGTransformable.cpp:
1028 * ksvg2/svg/SVGTransformable.h:
1029 * ksvg2/svg/SVGURIReference.cpp:
1030 (SVGURIReference::parseMappedAttribute):
1031 * ksvg2/svg/SVGURIReference.h:
1032 * ksvg2/svg/SVGUseElement.cpp:
1033 (SVGUseElement::SVGUseElement):
1034 (SVGUseElement::parseMappedAttribute):
1035 (SVGUseElement::closeRenderer):
1036 * ksvg2/svg/SVGUseElement.h:
1037 (WebCore::SVGUseElement::contextElement):
1038 * ksvg2/svg/SVGViewElement.h:
1039 (WebCore::SVGViewElement::contextElement):
1041 2006-09-05 Eric Seidel <eric@eseidel.com>
1045 Speed up path parsing by removing string copies.
1046 http://bugzilla.opendarwin.org/show_bug.cgi?id=10722
1048 Tests already cover path parsing.
1050 * ksvg2/svg/SVGFitToViewBox.cpp:
1051 (WebCore::SVGFitToViewBox::parseViewBox):
1052 * ksvg2/svg/svgpathparser.cpp:
1053 (WebCore::skipOptionalSpaces): Added.
1054 (WebCore::skipOptionalSpacesOrComma): Added.
1055 (WebCore::parseCoord):
1056 (WebCore::SVGPolyParser::parsePoints):
1057 (WebCore::SVGPathParser::parseSVG):
1059 2006-09-05 Sam Weinig <sam.weinig@gmail.com>
1063 Patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10742
1064 More Objective-C DOM auto-generation cleanup
1066 - Factor out implementation type-getters into their own function
1067 and standardize naming as was done for type-makers (ie. HTML
1068 and CSS prefixing for method names).
1070 * bindings/objc/DOMCSS.mm:
1071 (-[DOMCSSStyleDeclaration getPropertyShorthand:]):
1072 (-[DOMCSSStyleDeclaration isPropertyImplicit:]):
1073 (-[DOMCSSStyleDeclaration _CSSStyleDeclaration]):
1074 * bindings/objc/DOMHTML.mm:
1075 (-[DOMHTMLTableCaptionElement _HTMLTableCaptionElement]):
1076 (-[DOMHTMLTableSectionElement _HTMLTableSectionElement]):
1077 (-[DOMHTMLTableElement _HTMLTableElement]):
1078 (-[DOMHTMLTableCellElement _HTMLTableCellElement]):
1079 (-[DOMHTMLEmbedElement _HTMLEmbedElement]):
1080 (-[DOMHTMLEmbedElement align]):
1081 (-[DOMHTMLEmbedElement setAlign:]):
1082 (-[DOMHTMLEmbedElement height]):
1083 (-[DOMHTMLEmbedElement setHeight:]):
1084 (-[DOMHTMLEmbedElement name]):
1085 (-[DOMHTMLEmbedElement setName:]):
1086 (-[DOMHTMLEmbedElement src]):
1087 (-[DOMHTMLEmbedElement setSrc:]):
1088 (-[DOMHTMLEmbedElement type]):
1089 (-[DOMHTMLEmbedElement setType:]):
1090 (-[DOMHTMLEmbedElement width]):
1091 (-[DOMHTMLEmbedElement setWidth:]):
1092 * bindings/objc/DOMInternal.h:
1093 * bindings/scripts/CodeGeneratorObjC.pm:
1094 * bridge/mac/WebCoreFrameBridge.mm:
1095 (-[WebCoreFrameBridge setTypingStyle:withUndoAction:]):
1096 (-[WebCoreFrameBridge applyStyle:withUndoAction:]):
1097 (-[WebCoreFrameBridge applyParagraphStyle:withUndoAction:]):
1098 (-[WebCoreFrameBridge selectionStartHasStyle:]):
1099 (-[WebCoreFrameBridge selectionHasStyle:]):
1101 2006-09-05 Adele Peterson <adele@apple.com>
1105 Removed dead code for password field.
1107 * platform/mac/TextFieldMac.mm: (-[NSSearchFieldCell _addStringToRecentSearches:]):
1108 * platform/mac/WebCoreTextField.h:
1109 * platform/mac/WebCoreTextField.mm:
1111 2006-09-05 Justin Garcia <justin.garcia@apple.com>
1113 Reviewed by thatcher
1115 Setup for <rdar://problem/4344550> Misspellings aren't marked after undo delete
1118 <http://bugzilla.opendarwin.org/show_bug.cgi?id=6498>
1119 SelectionController's setters should notify delegates of selection changes
1121 Moved setSelection from Frame to SelectionController.
1122 I haven't moved any of the work that's done as a result of a
1123 Selection change to SelectionController yet.
1124 Make fewer uses of SelectionControllers. They're now only used for
1125 the Frame's selection, the Page's drag caret, and functions that
1126 need to do Selection expansion.
1128 * bindings/js/kjs_window.cpp:
1129 (KJS::Selection::getValueProperty):
1130 (KJS::Selection::toString):
1131 (KJS::SelectionFunc::callAsFunction):
1132 * bridge/mac/FrameMac.h:
1133 * bridge/mac/FrameMac.mm:
1134 (WebCore::FrameMac::advanceToNextMisspelling):
1135 (WebCore::FrameMac::dispatchCPPEvent):
1136 (WebCore::FrameMac::fontForSelection):
1137 (WebCore::FrameMac::baseWritingDirectionForSelectionStart):
1138 (WebCore::FrameMac::markMisspellingsInAdjacentWords):
1139 (WebCore::FrameMac::markMisspellings):
1140 (WebCore::FrameMac::respondToChangedSelection):
1141 (WebCore::FrameMac::shouldChangeSelection):
1142 (WebCore::FrameMac::shouldDeleteSelection):
1143 (WebCore::FrameMac::respondToChangedContents):
1144 * bridge/mac/PageMac.mm:
1145 (WebCore::Page::Page):
1146 * bridge/mac/WebCoreAXObject.mm:
1147 (-[WebCoreAXObject accessibilityAttributeValue:]):
1148 (-[WebCoreAXObject doAXTextMarkerRangeForLine:]):
1149 (-[WebCoreAXObject doAXBoundsForTextMarkerRange:]):
1150 (-[WebCoreAXObject doAXTextMarkerRangeForUnorderedTextMarkers:]):
1151 (-[WebCoreAXObject doSetAXSelectedTextMarkerRange:]):
1152 * bridge/mac/WebCoreFrameBridge.mm:
1153 (-[WebCoreFrameBridge isSelectionEditable]):
1154 (-[WebCoreFrameBridge isSelectionRichlyEditable]):
1155 (-[WebCoreFrameBridge selectionState]):
1156 (-[WebCoreFrameBridge deselectText]):
1157 (-[WebCoreFrameBridge selectedAttributedString]):
1158 (-[WebCoreFrameBridge rangeByExpandingSelectionWithGranularity:]):
1159 (-[WebCoreFrameBridge rangeByAlteringCurrentSelection:direction:granularity:]):
1160 (-[WebCoreFrameBridge alterCurrentSelection:direction:granularity:]):
1161 (-[WebCoreFrameBridge rangeByAlteringCurrentSelection:verticalDistance:]):
1162 (-[WebCoreFrameBridge alterCurrentSelection:verticalDistance:]):
1163 (-[WebCoreFrameBridge setSelectedDOMRange:affinity:closeTyping:]):
1164 (-[WebCoreFrameBridge selectedDOMRange]):
1165 (-[WebCoreFrameBridge selectNSRange:]):
1166 (-[WebCoreFrameBridge selectedNSRange]):
1167 (-[WebCoreFrameBridge selectionAffinity]):
1168 (-[WebCoreFrameBridge replaceSelectionWithText:selectReplacement:smartReplace:]):
1169 (-[WebCoreFrameBridge setSelectionToDragCaret]):
1170 (-[WebCoreFrameBridge moveSelectionToDragCaret:smartMove:]):
1171 (-[WebCoreFrameBridge moveDragCaretToPoint:]):
1172 (-[WebCoreFrameBridge removeDragCaret]):
1173 (-[WebCoreFrameBridge dragCaretDOMRange]):
1174 (-[WebCoreFrameBridge isDragCaretRichlyEditable]):
1175 (-[WebCoreFrameBridge editableDOMRangeForPoint:]):
1176 (-[WebCoreFrameBridge ensureSelectionVisible]):
1177 (-[WebCoreFrameBridge rangeOfCharactersAroundCaret]):
1178 * bridge/win/PageWin.cpp:
1179 (WebCore::Page::Page):
1181 (WebCore::Document::updateSelection):
1182 (WebCore::Document::clearSelectionIfNeeded):
1183 (WebCore::Document::notifyBeforeNodeRemoval):
1185 (WebCore::Element::updateFocusAppearance):
1186 * editing/EditCommand.cpp:
1187 (WebCore::EditCommand::EditCommand):
1188 * editing/JSEditor.cpp:
1189 * editing/ModifySelectionListLevel.cpp:
1190 (WebCore::IncreaseSelectionListLevelCommand::canIncreaseSelectionListLevel):
1191 (WebCore::DecreaseSelectionListLevelCommand::canDecreaseSelectionListLevel):
1192 * editing/Selection.cpp:
1193 (WebCore::Selection::setBase):
1194 (WebCore::Selection::setExtent):
1195 * editing/Selection.h:
1196 (WebCore::Selection::extent):
1197 * editing/SelectionController.cpp:
1198 (WebCore::SelectionController::SelectionController):
1199 (WebCore::SelectionController::moveTo):
1200 (WebCore::SelectionController::setSelection):
1201 (WebCore::SelectionController::nodeWillBeRemoved):
1202 (WebCore::SelectionController::modify):
1203 (WebCore::SelectionController::clear):
1204 (WebCore::SelectionController::setBase):
1205 (WebCore::SelectionController::setExtent):
1206 * editing/SelectionController.h:
1207 * editing/TypingCommand.cpp:
1208 (WebCore::TypingCommand::insertText):
1209 (WebCore::TypingCommand::deleteKeyPressed):
1210 (WebCore::TypingCommand::forwardDeleteKeyPressed):
1211 * editing/VisiblePosition.cpp:
1212 (WebCore::VisiblePosition::caretRect):
1213 * editing/VisiblePosition.h:
1214 * html/HTMLInputElement.cpp:
1215 (WebCore::HTMLInputElement::defaultEventHandler):
1217 (WebCore::Frame::selectedText):
1218 (WebCore::Frame::hasSelection):
1219 (WebCore::Frame::selectionController):
1220 (WebCore::Frame::dragCaretController):
1221 (WebCore::Frame::notifyRendererOfSelectionChange):
1222 (WebCore::Frame::invalidateSelection):
1223 (WebCore::Frame::clearCaretRectIfNeeded):
1224 (WebCore::Frame::setFocusNodeIfNeeded):
1225 (WebCore::Frame::selectionLayoutChanged):
1226 (WebCore::Frame::caretBlinkTimerFired):
1227 (WebCore::Frame::paintCaret):
1228 (WebCore::Frame::paintDragCaret):
1229 (WebCore::Frame::isPointInsideSelection):
1230 (WebCore::Frame::selectClosestWordFromMouseEvent):
1231 (WebCore::Frame::handleMousePressEventDoubleClick):
1232 (WebCore::Frame::handleMousePressEventTripleClick):
1233 (WebCore::Frame::handleMousePressEventSingleClick):
1234 (WebCore::Frame::handleMouseMoveEvent):
1235 (WebCore::Frame::handleMouseReleaseEvent):
1236 (WebCore::Frame::selectAll):
1237 (WebCore::Frame::selectContentsOfNode):
1238 (WebCore::Frame::shouldChangeSelection):
1239 (WebCore::Frame::shouldDeleteSelection):
1240 (WebCore::Frame::isSelectionInPasswordField):
1241 (WebCore::Frame::appliedEditing):
1242 (WebCore::Frame::unappliedEditing):
1243 (WebCore::Frame::reappliedEditing):
1244 (WebCore::Frame::computeAndSetTypingStyle):
1245 (WebCore::Frame::applyStyle):
1246 (WebCore::Frame::applyParagraphStyle):
1247 (WebCore::Frame::selectionListState):
1248 (WebCore::Frame::selectionHasStyle):
1249 (WebCore::Frame::selectionComputedStyle):
1250 (WebCore::Frame::selectFrameElementInParentIfFullySelected):
1251 (WebCore::Frame::currentForm):
1252 (WebCore::Frame::revealSelection):
1253 (WebCore::Frame::centerSelectionInVisibleArea):
1254 (WebCore::Frame::styleForSelectionStart):
1255 (WebCore::Frame::setSelectionFromNone):
1256 (WebCore::Frame::findString):
1258 * page/FramePrivate.h:
1259 (WebCore::FramePrivate::FramePrivate):
1260 * page/FrameView.cpp:
1261 (WebCore::FrameView::clear):
1263 (WebCore::Page::dragCaretController):
1265 * rendering/RenderBlock.cpp:
1266 (WebCore::RenderBlock::paintCaret):
1267 * rendering/RenderLayer.cpp:
1268 (WebCore::RenderLayer::autoscroll):
1269 * rendering/RenderTextControl.cpp:
1270 (WebCore::RenderTextControl::selectionStart):
1271 (WebCore::RenderTextControl::selectionEnd):
1272 (WebCore::RenderTextControl::setSelectionRange):
1273 (WebCore::RenderTextControl::selectionChanged):
1274 * rendering/RenderTreeAsText.cpp:
1275 (WebCore::writeSelection):
1277 2006-09-05 Adele Peterson <adele@apple.com>
1281 Let the engine draw the focus ring for styled menu lists.
1283 * rendering/RenderTheme.cpp: (WebCore::RenderTheme::supportsFocusRing): Added case for MenulistButtonAppearance.
1285 2006-09-05 Adele Peterson <adele@apple.com>
1289 - Fix for <rdar://problem/4706463> REGRESSION: Must click twice on <select> elements for menu to show
1291 * rendering/RenderPopupMenuMac.h:
1292 * rendering/RenderPopupMenuMac.mm:
1293 (WebCore::RenderPopupMenuMac::showPopup): Moved call to dismiss popup into hidePopup method.
1294 Now calls RenderMenuList::hidePopup which will update the m_popupIsVisible flag on the menu list before hiding the popup.
1295 (WebCore::RenderPopupMenuMac::hidePopup): Added.
1297 2006-09-05 Sam Weinig <sam.weinig@gmail.com>
1301 Patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10738
1302 Consolidate the Objective-C DOM Bindings Internal files into DOMInternal.h
1304 - Consolidate DOMHTMLInternal.h, DOMCSSInternal.h, DOMEventsInternal.h,
1305 DOMViewsInternal.h and DOMXPathInternal.h into DOMInternal.h.
1307 - Rename the "type-makers" (used to make a binding from an implementation
1308 type) so that all the HTML ones begin with the prefix HTML. Did the same
1311 - Auto-generate a couple more methods from DOMExtensions.h.
1313 - Various cleanups of the Objective-C auto-generation code.
1315 * WebCore.xcodeproj/project.pbxproj:
1316 * bindings/objc/DOM.mm:
1317 (-[DOMDocument createCSSStyleDeclaration]):
1318 * bindings/objc/DOMCSS.mm:
1319 (+[DOMCSSRuleList _CSSRuleListWith:]):
1320 (+[DOMCSSRule _CSSRuleWith:]):
1321 (+[DOMCSSStyleDeclaration _CSSStyleDeclarationWith:]):
1322 (+[DOMCSSValue _CSSValueWith:]):
1323 (+[DOMCSSPrimitiveValue _CSSPrimitiveValueWith:]):
1324 (-[DOMDocument getComputedStyle::]):
1325 (-[DOMDocument getMatchedCSSRules::]):
1326 * bindings/objc/DOMCSSInternal.h: Removed.
1327 * bindings/objc/DOMEvents.mm:
1328 * bindings/objc/DOMEventsInternal.h: Removed.
1329 * bindings/objc/DOMEventsNonstandard.mm:
1330 * bindings/objc/DOMExtensions.h:
1331 * bindings/objc/DOMHTML.mm:
1332 (+[DOMHTMLCollection _HTMLCollectionWith:]):
1333 (+[DOMHTMLOptionsCollection _HTMLOptionsCollectionWith:]):
1334 (+[DOMHTMLElement _HTMLElementWith:]):
1335 (+[DOMHTMLFormElement _HTMLFormElementWith:]):
1336 (+[DOMHTMLTableCaptionElement _HTMLTableCaptionElementWith:]):
1337 (+[DOMHTMLTableSectionElement _HTMLTableSectionElementWith:]):
1338 (+[DOMHTMLTableElement _HTMLTableElementWith:]):
1339 (+[DOMHTMLTableCellElement _HTMLTableCellElementWith:]):
1340 * bindings/objc/DOMHTMLAppletElement.mm:
1341 * bindings/objc/DOMHTMLDocument.mm:
1342 (-[DOMHTMLDocument body]):
1343 (-[DOMHTMLDocument images]):
1344 (-[DOMHTMLDocument applets]):
1345 (-[DOMHTMLDocument links]):
1346 (-[DOMHTMLDocument forms]):
1347 (-[DOMHTMLDocument anchors]):
1348 * bindings/objc/DOMHTMLInternal.h: Removed.
1349 * bindings/objc/DOMHTMLOptionElement.mm:
1350 (-[DOMHTMLOptionElement form]):
1351 * bindings/objc/DOMInternal.h:
1352 * bindings/objc/DOMRGBColor.mm:
1354 (-[DOMRGBColor red]):
1355 (-[DOMRGBColor green]):
1356 (-[DOMRGBColor blue]):
1357 (-[DOMRGBColor alpha]):
1358 * bindings/objc/DOMUtility.mm:
1359 (KJS::ScriptInterpreter::createObjcInstanceForValue):
1360 * bindings/objc/DOMViews.mm:
1361 (-[DOMAbstractView WebCore::]):
1362 (-[DOMAbstractView _initWithAbstractView:WebCore::]):
1363 (+[DOMAbstractView _abstractViewWith:WebCore::]):
1364 * bindings/objc/DOMViewsInternal.h: Removed.
1365 * bindings/objc/DOMXPath.mm:
1366 * bindings/objc/DOMXPathInternal.h: Removed.
1367 * bindings/objc/PublicDOMInterfaces.h:
1368 * bindings/scripts/CodeGeneratorObjC.pm:
1369 * bridge/mac/WebCoreFrameBridge.mm:
1370 (-[WebCoreFrameBridge typingStyle]):
1371 * html/HTMLAnchorElement.idl:
1372 * html/HTMLAreaElement.idl:
1373 * html/HTMLImageElement.idl:
1374 * html/HTMLInputElement.idl:
1375 * html/HTMLLinkElement.idl:
1377 2006-09-05 Steve Falkenburg <sfalken@apple.com>
1379 Conditionalize new DOM headers for ObjC only
1381 * DerivedSources.make:
1383 2006-09-04 Alexey Proskuryakov <ap@nypop.com>
1387 http://bugzilla.opendarwin.org/show_bug.cgi?id=10716
1388 XMLHttpRequest.responseText is null if HTTP response is empty
1390 Extended existing tests:
1391 - http/tests/xmlhttrequest/zero-length-response.html
1392 - http/tests/xmlhttrequest/zero-length-response-sync.html
1394 * xml/xmlhttprequest.cpp:
1395 (WebCore::XMLHttpRequest::XMLHttpRequest): Initialize responseText to an empty string.
1396 (WebCore::XMLHttpRequest::open): Reset responseText to an empty string.
1397 * bindings/js/JSXMLHttpRequest.cpp:
1398 (KJS::JSXMLHttpRequest::getValueProperty): Return null rather than undefined
1399 for nil responseXML.
1401 2006-09-04 Timothy Hatcher <timothy@apple.com>
1405 Bug 10714: ObjC autogeneration needs safe-guards against easily modifying the public API
1406 http://bugzilla.opendarwin.org/show_bug.cgi?id=10714
1408 - New PublicDOMInterfaces.h file is consulted when generating
1409 the ObjC DOM files. All public DOM class interfaces, properties
1410 and methods need to be in this file. Anything not in the file will
1411 be generated into the appropriate private header file. During
1412 generation if something changed or is missing in the public API
1413 a build error will occur. New interfaces added to the IDLs files
1414 will now not automatically be reflected in the public ObjC API.
1415 Methods commented out in PublicDOMInterfaces.h are pending public
1416 and will be uncommented once approved.
1418 - Removed most of the Exclude=ObjC uses from the IDL files. This
1419 attribute was mostly used to prevent changes to the public headers.
1421 - Make a new parameter name if the original conflicts with a property name.
1423 - Simplified the generation code for dealing with exceptions.
1425 - Moved file opens to WriteData. Files are unlinked before
1426 being opened to work around a Leopard file truncation bug.
1428 - Fixed #imports for DOMImplementation to be DOMDOMImplementation.h
1430 * WebCore.xcodeproj/project.pbxproj:
1431 * bindings/objc/DOMCSS.h:
1432 * bindings/objc/DOMCore.h:
1433 * bindings/objc/DOMExtensions.h:
1434 * bindings/objc/DOMHTMLInternal.h:
1435 * bindings/objc/DOMPrivate.h:
1436 * bindings/objc/PublicDOMInterfaces.h: Added.
1437 * bindings/scripts/CodeGeneratorObjC.pm:
1440 * dom/NamedNodeMap.idl:
1441 * dom/ProcessingInstruction.idl:
1442 * html/HTMLAnchorElement.idl:
1443 * html/HTMLAreaElement.idl:
1444 * html/HTMLBodyElement.idl:
1445 * html/HTMLButtonElement.idl:
1446 * html/HTMLImageElement.idl:
1447 * html/HTMLInputElement.idl:
1448 * html/HTMLLabelElement.idl:
1449 * html/HTMLLegendElement.idl:
1450 * html/HTMLLinkElement.idl:
1451 * html/HTMLOptionsCollection.idl:
1452 * html/HTMLPreElement.idl:
1453 * html/HTMLStyleElement.idl:
1454 * html/HTMLTextAreaElement.idl:
1456 2006-09-04 Nikolas Zimmermann <zimmermann@kde.org>
1460 Continue fixing the build, I forgot this in my previous patch!
1462 * platform/qt/PathQt.cpp:
1463 (WebCore::Path::apply):
1465 2006-09-04 Nikolas Zimmermann <zimmermann@kde.org>
1469 Fix build on Qt/Linux.
1472 * platform/qt/PathQt.cpp:
1473 (WebCore::Path::transform):
1475 2006-09-04 Alexey Proskuryakov <ap@nypop.com>
1479 http://bugzilla.opendarwin.org/show_bug.cgi?id=10676
1480 @charset rules not accessible via DOM
1482 Test: fast/encoding/css-charset-dom.html
1484 * WebCore.xcodeproj/project.pbxproj: Added CSSCharsetRule.cpp
1485 * bindings/js/kjs_css.cpp:
1486 (KJS::DOMCSSStyleSheet::getValueProperty):
1487 Separated Rules and CssRules, since now they behave differently.
1489 * css/CSSCharsetRule.h: Make the constructor take an encoding.
1490 * css/CSSCharsetRule.cpp: Added.
1492 * css/CSSGrammar.y: Create CSSStylesheetRules as necessary.
1494 * css/CSSRuleList.cpp:
1495 (WebCore::CSSRuleList::CSSRuleList):
1496 * css/CSSRuleList.h:
1497 * css/CSSStyleSheet.cpp:
1498 (WebCore::CSSStyleSheet::cssRules):
1499 * css/CSSStyleSheet.h:
1500 Skip charset rules in IE compatibility mode.
1503 (WebCore::StyleBase::isCharsetRule): Fixed a typo.
1505 * css/cssparser.cpp:
1506 (WebCore::CSSParser::createCharsetRule):
1508 Added createCharsetRule().
1510 2006-09-04 Nikolas Zimmermann <zimmermann@kde.org>
1514 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10644
1515 Let FrameQt operate on a FrameQtClient, just like Win/Mac handle it.
1518 * platform/qt/FrameQt.cpp:
1519 (WebCore::FrameQt::FrameQt):
1520 (WebCore::FrameQt::~FrameQt):
1521 (WebCore::FrameQt::openURL):
1522 (WebCore::FrameQt::submitForm):
1523 (WebCore::FrameQt::urlSelected):
1524 * platform/qt/FrameQt.h:
1525 * platform/qt/FrameQtClient.cpp: Added.
1526 (WebCore::FrameQtClientDefault::FrameQtClientDefault):
1527 (WebCore::FrameQtClientDefault::~FrameQtClientDefault):
1528 (WebCore::FrameQtClientDefault::setFrame):
1529 (WebCore::FrameQtClientDefault::openURL):
1530 (WebCore::FrameQtClientDefault::submitForm):
1531 (WebCore::FrameQtClientDefault::receivedResponse):
1532 (WebCore::FrameQtClientDefault::receivedData):
1533 (WebCore::FrameQtClientDefault::receivedAllData):
1534 * platform/qt/FrameQtClient.h: Added.
1535 (WebCore::FrameQtClient::~FrameQtClient):
1537 2006-09-04 Eric Seidel <eric@eseidel.com>
1539 Reviewed by andersca.
1541 Clean-up style and spacing.
1542 http://bugzilla.opendarwin.org/show_bug.cgi?id=10724
1543 No tests needed, no functional changes.
1545 * ksvg2/svg/svgpathparser.cpp:
1546 (WebCore::parseCoord):
1547 (WebCore::SVGPolyParser::parsePoints):
1548 (WebCore::SVGPathParser::parseSVG):
1549 (WebCore::SVGPathParser::calculateArc):
1550 (WebCore::SVGPathParser::svgLineToHorizontal):
1551 (WebCore::SVGPathParser::svgLineToVertical):
1552 (WebCore::SVGPathParser::svgCurveToCubicSmooth):
1553 (WebCore::SVGPathParser::svgCurveToQuadratic):
1554 (WebCore::SVGPathParser::svgCurveToQuadraticSmooth):
1555 (WebCore::SVGPathParser::svgArcTo):
1557 2006-09-04 Rob Buis <buis@kde.org>
1561 http://bugzilla.opendarwin.org/show_bug.cgi?id=6546
1562 clipPath data does not respect transforms
1564 Get the transform from the dom element and adjust
1565 the clip path with it.
1567 * ksvg2/svg/SVGClipPathElement.cpp:
1568 (SVGClipPathElement::canvasResource):
1570 2006-09-04 Rob Buis <buis@kde.org>
1574 This code should have gone in as part of:
1575 http://bugzilla.opendarwin.org/show_bug.cgi?id=10696
1576 It addresses the comments there, also we use double instead
1577 of float now in calculations.
1579 * platform/Path.cpp:
1580 (WebCore::Path::createRoundedRectangle):
1581 (WebCore::Path::createRectangle):
1582 (WebCore::Path::createEllipse):
1583 (WebCore::Path::createCircle):
1585 2006-09-03 Sam Weinig <sam.weinig@gmail.com>
1587 Reviewed by Darin and Tim H.
1589 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10711
1590 Auto-generate the Objective-C DOM Stylesheet bindings
1592 Auto-generates DOMMediaList, DOMStyleSheet, and DOMStyleSheetList.
1594 * DerivedSources.make:
1595 * WebCore.xcodeproj/project.pbxproj:
1596 * bindings/objc/DOMCSS.mm:
1597 (+[DOMStyleSheet _styleSheetWith:]):
1598 (+[DOMCSSStyleSheet _CSSStyleSheetWith:]):
1599 * bindings/objc/DOMCSSInternal.h:
1600 * bindings/objc/DOMInternal.h:
1601 * bindings/objc/DOMObject.mm:
1602 (-[DOMObject sheet]):
1603 * bindings/objc/DOMPrivate.h:
1604 * bindings/objc/DOMStylesheets.h:
1605 * bindings/objc/DOMUtility.mm:
1606 (KJS::ScriptInterpreter::createObjcInstanceForValue):
1607 * bindings/scripts/CodeGeneratorObjC.pm:
1608 * css/StyleSheet.idl: Added.
1609 * css/StyleSheetList.idl: Added.
1611 2006-09-03 Rob Buis <buis@kde.org>
1615 http://bugzilla.opendarwin.org/show_bug.cgi?id=10696
1616 RenderPathQuartz and RenderPathQt should not be needed
1618 Cleanup of code related to RenderPath.
1621 * WebCore.xcodeproj/project.pbxproj:
1622 * kcanvas/KCanvasCreator.cpp:
1623 * kcanvas/KCanvasCreator.h:
1624 * kcanvas/RenderPath.cpp:
1626 (WebCore::DrawMarkersData::DrawMarkersData):
1627 (WebCore::drawMarkerWithData):
1628 (WebCore::updateMarkerDataForElement):
1629 (WebCore::drawStartAndMidMarkers):
1630 (WebCore::RenderPath::drawMarkersIfNeeded):
1631 * kcanvas/RenderPath.h:
1632 * kcanvas/device/KRenderingDevice.h:
1633 * kcanvas/device/qt/KRenderingDeviceQt.cpp:
1634 * kcanvas/device/qt/KRenderingDeviceQt.h:
1635 * kcanvas/device/qt/RenderPathQt.cpp:
1636 (WebCore::RenderPath::strokeContains):
1637 (WebCore::RenderPath::strokeBBox):
1638 * kcanvas/device/qt/RenderPathQt.h:
1639 * kcanvas/device/quartz/KCanvasItemQuartz.h:
1640 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
1641 (WebCore::RenderPath::strokeBBox):
1642 (WebCore::RenderPath::strokeContains):
1643 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
1644 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
1645 * kcanvas/device/quartz/QuartzSupport.h:
1646 * ksvg2/svg/SVGAElement.cpp:
1647 * ksvg2/svg/SVGCircleElement.cpp:
1648 (SVGCircleElement::toPathData):
1649 * ksvg2/svg/SVGEllipseElement.cpp:
1650 (WebCore::SVGEllipseElement::toPathData):
1651 * ksvg2/svg/SVGFEImageElement.cpp:
1652 * ksvg2/svg/SVGGElement.cpp:
1653 * ksvg2/svg/SVGImageElement.cpp:
1654 * ksvg2/svg/SVGLineElement.cpp:
1655 (SVGLineElement::toPathData):
1656 * ksvg2/svg/SVGMarkerElement.cpp:
1657 * ksvg2/svg/SVGPathElement.cpp:
1658 * ksvg2/svg/SVGPatternElement.cpp:
1659 * ksvg2/svg/SVGPolygonElement.cpp:
1660 * ksvg2/svg/SVGPolylineElement.cpp:
1661 * ksvg2/svg/SVGRectElement.cpp:
1662 (WebCore::SVGRectElement::toPathData):
1663 * ksvg2/svg/SVGSVGElement.cpp:
1664 * ksvg2/svg/SVGStyledElement.cpp:
1665 (WebCore::SVGStyledElement::createRenderer):
1666 * ksvg2/svg/SVGSwitchElement.cpp:
1667 * ksvg2/svg/SVGTextElement.cpp:
1668 * ksvg2/svg/SVGUseElement.cpp:
1671 * platform/cg/PathCG.cpp:
1672 (WebCore::CGPathToCFStringApplierFunction):
1673 (WebCore::CGPathApplierToPathApplier):
1674 (WebCore::Path::apply):
1675 (WebCore::Path::transform):
1676 * platform/qt/PathQt.cpp:
1677 (WebCore::Path::apply):
1679 2006-09-03 Timothy Hatcher <timothy@apple.com>
1683 Bug 10685: ObjC DOM should have no unnamed parameters
1684 http://bugzilla.opendarwin.org/show_bug.cgi?id=10685
1686 - The ObjC code generation script now outputs parameter prefixes
1687 for methods that have more than 1 parameter. This prefix is simply
1688 the parameter name. Some parameter names have been changed in the IDL
1689 files to produce better prefixes. If an extended attribute of "ObjCPrefix"
1690 exists on a parameter we will use that for the prefix.
1692 - A backwards compatible version of the method is placed in a
1693 category with a deprecation macro for 10.5 and later. This step only
1694 happens if the IDL extended attribute "OldStyleObjC" is defined.
1695 All new functions in IDL should not get this attribute.
1697 - Made the $interfaceMethodSelector regex in IDLStructure.pm allow "=" so
1698 parameter extended attributes can have values.
1700 - Moved RemoveExcludedAttributesAndFunctions to CodeGenerator.pm
1701 so it can be shared between the two generators.
1703 - Removed the die when we encounter a getter that uses exceptions.
1704 Sam Weinig added support for this in an earlier change.
1706 - Check if $ENV{"MACOSX_DEPLOYMENT_TARGET"} is defined before we compare.
1707 This caused a perl warning when generating on other platforms.
1709 - The ObjC generation will not happen on platforms other than Mac OS.
1710 This is determined by the "OS" env variable Xcode sets. This check
1711 is in the DerivedSources.make.
1713 - Added a way to skip generation if the constructor of the specific
1714 generator returns undef. Not used yet.
1716 - Many cleanup tweaks in CodeGeneratorObjC.pm.
1718 - Removed IDL and CSS files from the project's resource copy phase,
1719 these do no need to be in WebCore's resources.
1721 * DerivedSources.make
1722 * WebCore.xcodeproj/project.pbxproj
1723 * bindings/scripts/CodeGenerator.pm
1724 * bindings/scripts/CodeGeneratorJS.pm
1725 * bindings/scripts/CodeGeneratorObjC.pm
1726 * bindings/scripts/IDLStructure.pm
1727 * css/CSSMediaRule.idl
1728 * css/CSSPrimitiveValue.idl
1729 * css/CSSStyleDeclaration.idl
1730 * css/CSSStyleSheet.idl
1731 * dom/CharacterData.idl
1732 * dom/DOMImplementation.idl
1735 * dom/KeyboardEvent.idl
1736 * dom/MouseEvent.idl
1737 * dom/MutationEvent.idl
1738 * dom/NamedNodeMap.idl
1740 * html/HTMLCanvasElement.idl
1741 * html/HTMLSelectElement.idl
1742 * ksvg2/bindings/idl/svg/SVGLengthList.idl
1743 * ksvg2/bindings/idl/svg/SVGNumberList.idl
1744 * ksvg2/bindings/idl/svg/SVGPointList.idl
1745 * ksvg2/bindings/idl/svg/SVGStringList.idl
1746 * ksvg2/bindings/idl/svg/SVGTextContentElement.idl
1747 * ksvg2/bindings/idl/svg/SVGTransformList.idl
1748 * ksvg2/svg/SVGSVGElement.idl
1749 * page/DOMWindow.idl
1751 2006-09-03 Alexey Proskuryakov <ap@nypop.com>
1755 http://bugzilla.opendarwin.org/show_bug.cgi?id=10693
1756 Convert JavaScript arrays to AppleScript lists
1758 Test: fast/AppleScript/array.html
1760 * bridge/mac/WebCoreFrameBridge.mm:
1761 (aeDescFromJSValue): Added a case for ArrayInstance.
1763 2006-09-03 Alexey Proskuryakov <ap@nypop.com>
1767 http://bugzilla.opendarwin.org/show_bug.cgi?id=10697
1768 REGRESSION (r16175): Errors in incremental decoding of UTF-8
1771 - http/tests/incremental/slow-utf8-html.pl
1772 - fast/encoding/charset-invalid.html
1774 * loader/Decoder.cpp:
1775 (Decoder::Decoder): Ensure that we have a valid encoding. Get its name via TextEncoding, to match
1776 the logic in setEncodingName().
1777 (Decoder::setEncodingName): Only set m_encodingName if the encoding is valid. Rely on TextEncoding
1778 constructor to lowercase it if necessary.
1779 (Decoder::decode): Use setEncodingName() to apply encoding from BOM. Don't try to ensure the
1780 validity of encoding - it is enforced by class constructor and setEncodingName().
1782 2006-09-02 Sam Weinig <sam.weinig@gmail.com>
1786 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10684
1787 Auto-generate the Objective-C DOM CSS bindings
1789 Auto-generates DOMCSSCharsetRule, DOMCSSFontFaceRule, DOMCSSImportRule,
1790 DOMCSSMediaRule, DOMCSSPageRule, DOMCSSPrimitiveValue, DOMCSSRule,
1791 DOMCSSRuleList, DOMCSSStyleDeclaration, DOMCSSStyleRule, DOMCSSStyleSheet,
1792 DOMCSSUnknownRule, DOMCSSValue, DOMCSSValueList, DOMCounter, and DOMRect.
1794 Splits DOMRGBColor into its own files.
1796 * DerivedSources.make:
1797 * WebCore.xcodeproj/project.pbxproj:
1798 * bindings/objc/DOMCSS.h:
1799 * bindings/objc/DOMCSS.mm:
1800 (+[DOMCSSStyleSheet _CSSStyleSheetWith:]):
1801 (+[DOMCSSPrimitiveValue _valueWith:]):
1802 * bindings/objc/DOMCSSInternal.h:
1803 * bindings/objc/DOMExtensions.h:
1804 * bindings/objc/DOMInternal.h:
1805 * bindings/objc/DOMRGBColor.h: Added.
1806 * bindings/objc/DOMRGBColor.mm: Added.
1809 (removeWrapperForRGB):
1810 (-[DOMRGBColor dealloc]):
1811 (-[DOMRGBColor finalize]):
1812 (-[DOMRGBColor red]):
1813 (-[DOMRGBColor green]):
1814 (-[DOMRGBColor blue]):
1815 (-[DOMRGBColor alpha]):
1816 (-[DOMRGBColor color]):
1817 (-[DOMRGBColor _initWithRGB:WebCore::]):
1818 (+[DOMRGBColor _RGBColorWithRGB:WebCore::]):
1819 * bindings/scripts/CodeGeneratorObjC.pm:
1820 * css/CSSCharsetRule.idl: Added.
1821 * css/CSSFontFaceRule.idl: Added.
1822 * css/CSSImportRule.idl: Added.
1823 * css/CSSMediaRule.idl: Added.
1824 * css/CSSPageRule.idl: Added.
1826 * css/CSSStyleDeclaration.idl:
1827 * css/CSSStyleRule.idl: Added.
1828 * css/CSSStyleSheet.idl: Added.
1829 * css/CSSUnknownRule.idl: Added.
1831 * css/MediaList.idl:
1832 * css/RGBColor.idl: Added.
1836 2006-09-02 Graham Dennis <graham.dennis@gmail.com>
1840 http://bugzilla.opendarwin.org/show_bug.cgi?id=10579
1841 AppleStyleCommand::applyBlockStyle crash
1843 * editing/ApplyStyleCommand.cpp:
1844 (WebCore::ApplyStyleCommand::applyBlockStyle): Prevent a crash by
1845 making sure that the 'beyondEnd' node is after the start node.
1847 2006-09-02 Krzysztof Kowalczyk <kkowalczyk@gmail.com>
1851 Bug 10454: Unix bakefile fixes
1852 http://bugzilla.opendarwin.org/show_bug.cgi?id=10454
1854 * WebCoreSources.bkl:
1855 * platform/gdk/RenderPopupMenuGdk.cpp:
1856 (WebCore::RenderPopupMenuGdk::RenderPopupMenuGdk):
1857 * platform/gdk/RenderPopupMenuGdk.h:
1858 * platform/gdk/RenderThemeGdk.cpp:
1859 (WebCore::RenderThemeGdk::createPopupMenu):
1860 (WebCore::RenderThemeGdk::systemFont):
1861 * platform/gdk/RenderThemeGdk.h:
1862 * platform/gdk/TemporaryLinkStubs.cpp:
1865 2006-09-02 Adele Peterson <adele@apple.com>
1869 - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=10667
1870 Password: Double-click should select-all to avoid exposing word boundaries
1872 Test: fast/forms/password-doubleclick-selection.html
1874 * editing/visible_units.cpp:
1875 (WebCore::previousBoundary): When searching for boundaries in renderers that use the textSecurity property,
1876 convert characters in strings to alpha-numeric characters (in this case, all 'x's) so that every character
1877 isn't treated as a punctuation boundary.
1878 (WebCore::nextBoundary): ditto.
1879 * editing/TextIterator.cpp: (WebCore::SimplifiedBackwardsTextIterator::handleTextNode): Updated to use the renderer's
1880 string instead of the node value. This matches the base class implementation of handleTextNode.
1883 * editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::doApply):
1884 Avoid unnecessary check for password field case if the smart replace condition is false.
1885 * page/Frame.cpp: (WebCore::Frame::mayCopy): Removed duplicate code. Calls isSelectionInPasswordField now.
1886 * rendering/RenderText.cpp: (WebCore::RenderText::setText): Updated formatting.
1888 2006-09-01 David Hyatt <hyatt@apple.com>
1890 Fix for 10682, refine the FOUC paint suppression logic so that it
1891 is only triggered when FOUC would really have occurred.
1895 * css/cssstyleselector.cpp:
1896 (WebCore::CSSStyleSelector::styleForElement):
1898 (WebCore::Document::Document):
1899 (WebCore::Document::updateLayoutIgnorePendingStylesheets):
1900 (WebCore::Document::updateStyleSelector):
1902 (WebCore::Document::haveStylesheetsLoaded):
1903 (WebCore::Document::):
1904 (WebCore::Document::didLayoutWithPendingStylesheets):
1905 * rendering/RenderBlock.cpp:
1906 (WebCore::RenderBlock::paintChildren):
1907 * rendering/RenderLayer.cpp:
1908 (WebCore::RenderLayer::paintLayer):
1910 2006-09-01 MorganL <morlmor@yahoo.com>
1912 Reviewed by Darin. Updated/landed by Adam.
1914 Fixes http://bugzilla.opendarwin.org/show_bug.cgi?id=10553
1917 * WebCore.vcproj/WebCore/WebCore.vcproj:
1918 * WebCore.vcproj/WebCore/build-generated-files.sh:
1919 * bridge/win/FrameWin.h:
1920 * bridge/win/PageWin.cpp:
1921 (WebCore::Page::Page):
1922 * platform/win/FontWin.cpp:
1923 * platform/win/TemporaryLinkStubs.cpp:
1924 (FrameWin::registerCommandForUndo):
1925 (FrameWin::canPaste):
1926 (FrameWin::issuePasteAndMatchStyleCommand):
1927 (WebCore::screenDepthPerComponent):
1928 (WebCore::screenIsMonochrome):
1929 (FrameWin::overrideMediaType):
1930 (FrameWin::saveDocumentState):
1931 (FrameWin::respondToChangedContents):
1932 (FrameWin::handledOnloadEvents):
1933 (FrameWin::createPlugin):
1934 (FrameWin::objectContentType):
1936 (TextField::TextField):
1937 (RenderPopupMenuWin::hidePopup):
1938 (RenderThemeWin::paintMenuList):
1939 (RenderThemeWin::adjustMenuListStyle):
1942 * platform/win/WidgetWin.cpp:
1943 * rendering/RenderPopupMenuWin.h:
1945 2006-09-01 Brady Eidson <beidson@apple.com>
1947 Reviewed by Tim Omernick
1949 Added an SQLDatabase logging channel. Changed all SQLDatabase and SQLStatement errors to use this new channel.
1950 Also, as a popular request from other contributers, added a log for all prepare(), step(), finalize(), and reset()s
1951 Also, fixed a grammar error in my previous ChangeLog entry.
1953 * bridge/mac/WebCorePageBridge.mm:
1954 (initializeLoggingChannelsIfNecessary): Initialize the new channel
1955 * loader/icon/SQLDatabase.cpp:
1956 (WebCore::SQLDatabase::setBusyTimeout): Use SQLDatabase logging channel
1957 (WebCore::SQLDatabase::setBusyHandler): ditto
1958 (WebCore::SQLDatabase::clearAllTables): ditto
1959 (WebCore::SQLDatabase::runVacuumCommand): ditto
1960 * loader/icon/SQLStatement.cpp:
1961 (WebCore::SQLStatement::prepare): Added a log
1962 (WebCore::SQLStatement::step): ditto
1963 (WebCore::SQLStatement::finalize): ditto
1964 (WebCore::SQLStatement::reset): ditto
1965 (WebCore::SQLStatement::getColumnBlob): Use SQLDatabase logging channel
1966 (WebCore::SQLStatement::returnTextResults): ditto
1967 (WebCore::SQLStatement::returnTextResults16): ditto
1968 (WebCore::SQLStatement::returnIntResults): ditto
1969 (WebCore::SQLStatement::returnInt64Results): ditto
1970 (WebCore::SQLStatement::returnDoubleResults): ditto
1971 * platform/Logging.cpp:
1972 (WebCore::): Added new logging channel
1973 * platform/Logging.h: ditto
1975 2006-09-01 Adele Peterson <adele@apple.com>
1977 Reviewed by Tim Omernick.
1979 - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=6990
1980 Switch to use new text field implementation for <input type="password">
1982 * css/html4.css: Give input[password] the same style properties as normal text fields.
1983 * html/HTMLInputElement.cpp: Removed checks for TextFieldAppearance.
1984 (WebCore::HTMLInputElement::selectionStart):
1985 (WebCore::HTMLInputElement::selectionEnd):
1986 (WebCore::HTMLInputElement::setSelectionStart):
1987 (WebCore::HTMLInputElement::setSelectionEnd):
1988 (WebCore::HTMLInputElement::select):
1989 (WebCore::HTMLInputElement::setSelectionRange):
1990 (WebCore::HTMLInputElement::createRenderer):
1991 * html/HTMLInputElement.h: (WebCore::HTMLInputElement::isNonWidgetTextField):
1993 2006-09-01 Brady Eidson <beidson@apple.com>
1995 Reviewed by John (though Sarge reviewed a previous patch of mine in an attempt to review this one)
1997 Added some constants for SQL Result Codes to SQLDatabase.h
1998 This way, users of SQLDatabase can access all necessary SQLite functionality
1999 without having access to sqlite3.h.
2000 Also reordered some files in the xcodeproj and some #includes
2002 * WebCore.xcodeproj/project.pbxproj: Reordered some files
2003 * loader/icon/IconDataCache.cpp:
2004 (WebCore::IconDataCache::writeToDatabase): Use our new result codes
2005 * loader/icon/IconDatabase.cpp:
2006 (WebCore::IconDatabase::sharedIconDatabase): Use our new result codes
2007 (WebCore::IconDatabase::retainIconForPageURL): Use our new result codes
2008 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Use our new result codes
2009 (WebCore::IconDatabase::addIconForIconURLQuery): Use our new result codes
2010 (WebCore::IconDatabase::hasIconForIconURLQuery): Use our new result codes
2011 * loader/icon/SQLDatabase.cpp:
2012 (WebCore::SQLDatabase::lastError): Moved from header to eliminate dependency on sqlite3.h in header
2013 (WebCore::SQLDatabase::lastErrorMsg): Ditto
2014 * loader/icon/SQLDatabase.h: Removed #include <sqlite3.h>
2015 * loader/icon/SQLStatement.cpp: Added #include <sqlite3.h>
2016 * loader/icon/SQLStatement.h: Removed #include <sqlite3.h>
2018 2006-09-01 David Hyatt <hyatt@apple.com>
2020 Fix for 10680, contrained flexbox is not shrinking flexible children
2021 properly. (Fixing in case it's hit by the file upload control.)
2025 Adding 026.html to fast/flexbox.
2027 * rendering/RenderFlexibleBox.cpp:
2028 (WebCore::RenderFlexibleBox::allowedChildFlex):
2030 2006-09-01 Nikolas Zimmermann <zimmermann@kde.org>
2032 Reviewed by eseidel. Landed by eseidel.
2034 Implement support for multiple parents in the SVG idls.
2036 For class "FooBar" go through all parents recursively,
2037 collect their attributes & functions & constants and
2038 add them directly into the class "FooBar".
2040 (Note: It is NOT enabled by default for now - still some things related to SVGAnimated* need to be solved first)
2042 * bindings/scripts/CodeGenerator.pm:
2043 * bindings/scripts/CodeGeneratorJS.pm:
2044 * bindings/scripts/generate-bindings.pl:
2046 2006-09-02 Nikolas Zimmermann <zimmermann@kde.org>
2048 Reviewed by hyatt. Landed by eseidel.
2052 * CMakeLists.txt: Add platform/CString.cpp.
2053 * platform/qt/FrameQt.cpp: Correct repsondToChangedContents() signature
2054 * platform/qt/FrameQt.h:: Correct respondToChangedContents() signature
2056 2006-09-01 Darin Adler <darin@apple.com>
2060 - a few small tweaks to the icon database bridge
2062 * bridge/mac/WebCoreIconDatabaseBridge.h: Removed unnecessary declarations.
2063 Renamed sharedBridgeInstance to sharedInstance.
2064 * bridge/mac/WebCoreIconDatabaseBridge.mm: Put functions inside WebCore namespace.
2065 (WebCore::IconDatabase::loadIconFromURL): Updated for sharedInstance namespace.
2067 2006-09-01 Timothy Hatcher <timothy@apple.com>
2071 <rdar://problem/4651318> REGRESSION: can't drag library items to widget in Dashcode
2072 <rdar://problem/4701626> REGRESSION: Unit Converter widget doesn't work convert data in its fields
2074 jsNull should not be returned as NSNull because existing applications do not
2075 expect that return value. Return as nil for backwards compatibility.
2077 * bindings/objc/WebScriptObject.mm:
2078 (+[WebScriptObject _convertValueToObjcValue:originExecutionContext:executionContext:]):
2080 2006-09-01 Alexey Proskuryakov <ap@nypop.com>
2084 * loader/Decoder.cpp:
2085 (Decoder::Decoder): Use String::latin1().
2087 2006-09-01 Alexey Proskuryakov <ap@nypop.com>
2091 - http://bugzilla.opendarwin.org/show_bug.cgi?id=5620
2092 Should only honor encoding from <meta> in HTML
2094 - http://bugzilla.opendarwin.org/show_bug.cgi?id=9783
2095 An XML declaration without an explicit encoding incorrectly triggers
2096 UTF-8 encoding in an HTML document
2098 - http://bugzilla.opendarwin.org/show_bug.cgi?id=10155
2099 CSS2: @charset is not supported
2101 * loader/Decoder.cpp:
2102 (Decoder::Decoder): Decoder now knows what kind of content it is decoding.
2103 Also, the browser default encoding can now be passed directly to the constructor,
2104 to streamline the logic.
2105 (Decoder::decode): Add support for @charset, differentiate between HTML and XML.
2106 (Decoder::setEncodingName): Style cleanup.
2107 (Decoder::encodingName): Ditto.
2108 (Decoder::flush): Ditto.
2110 (WebCore::Decoder::):
2112 * bridge/mac/WebCoreEncodings.mm: Pass a content type of text/html to Decoder.
2114 * loader/CachedCSSStyleSheet.cpp:
2115 (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet):
2116 (WebCore::CachedCSSStyleSheet::setCharset):
2117 (WebCore::CachedCSSStyleSheet::data):
2118 * loader/CachedCSSStyleSheet.h:
2119 Use Decoder instead of TextEncoding::toUnicode() to enable @charset support.
2121 * loader/CachedXBLDocument.cpp:
2122 (WebCore::CachedXBLDocument::CachedXBLDocument): Pass a content type.
2123 * loader/CachedXSLStyleSheet.cpp:
2124 (WebCore::CachedXSLStyleSheet::CachedXSLStyleSheet): Ditto.
2125 (WebCore::CachedXSLStyleSheet::data): Flush the decoder to be safe.
2128 (WebCore::Frame::write): Pass a content type and a default encoding to
2130 * xml/XSLTProcessor.cpp:
2131 (WebCore::XSLTProcessor::createDocumentFromSource): Pass the output document
2133 * xml/xmlhttprequest.cpp:
2134 (WebCore::XMLHttpRequest::receivedData): Ditto.
2136 2006-09-01 Adele Peterson <adele@apple.com>
2140 - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=10580
2141 Password: New secure text field allows non-Roman text entry
2143 * bridge/mac/FrameMac.mm:
2144 (WebCore::FrameMac::setSecureKeyboardEntry): Enable and disable Roman keyboards when switching in and out of this mode.
2145 (WebCore::FrameMac::isSecureKeyboardEntry): Changed secureKeyboardEntry to isSecureKeyboardEntry.
2146 * bridge/mac/FrameMac.h: ditto.
2147 * page/Frame.cpp: (WebCore::Frame::setIsActive): ditto.
2148 * page/Frame.h: (WebCore::Frame::isSecureKeyboardEntry): ditto.
2150 2006-09-01 Adele Peterson <adele@apple.com>
2154 - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=10665
2155 Password: Disable smartReplace for new password fields
2157 * editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::doApply):
2158 Don't smart replace when the selection being replaced is in a password field.
2160 2006-08-31 Sam Weinig <sam.weinig@gmail.com>
2164 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10669
2165 Auto-generate the remaining Objective-C HTML DOM bindings
2167 Auto-generates DOMHTMLAnchorElement, DOMHTMLAreaElement,
2168 DOMHTMLBaseFontElement, DOMHTMLFontElement, DOMHTMLFrameElement,
2169 DOMHTMLFrameSetElement, DOMHTMLHRElement, DOMHTMLIFrameElement,
2170 DOMHTMLImageElement, DOMHTMLMapElement, DOMHTMLModElement,
2171 DOMHTMLObjectElement, DOMHTMLParamElement, DOMHTMLScriptElement,
2172 DOMHTMLTableCaptionElement, DOMHTMLTableCellElement,
2173 DOMHTMLTableColElement, DOMHTMLTableElement, DOMHTMLTableRowElement,
2174 and DOMHTMLTableSectionElement.
2176 Splits DOMHTMLAppletElement and DOMHTMLOptionElement into their own
2179 * DerivedSources.make:
2180 * WebCore.xcodeproj/project.pbxproj:
2181 * bindings/objc/DOM.mm:
2182 * bindings/objc/DOMExtensions.h:
2183 * bindings/objc/DOMHTML.h:
2184 * bindings/objc/DOMHTML.mm:
2185 (-[DOMHTMLAnchorElement absoluteLinkURL]):
2186 (-[DOMHTMLImageElement altDisplayString]):
2187 (-[DOMHTMLImageElement absoluteImageURL]):
2188 (-[DOMHTMLImageElement WebCore::]):
2189 (-[DOMHTMLObjectElement absoluteImageURL]):
2190 (-[DOMHTMLObjectElement WebCore::]):
2191 (+[DOMHTMLTableCaptionElement _tableCaptionElementWith:]):
2192 (-[DOMHTMLTableCaptionElement _tableCaptionElement]):
2193 (+[DOMHTMLTableSectionElement _tableSectionElementWith:]):
2194 (-[DOMHTMLTableSectionElement _tableSectionElement]):
2195 (+[DOMHTMLTableElement _tableElementWith:]):
2196 (-[DOMHTMLTableElement _tableElement]):
2197 (+[DOMHTMLTableCellElement _tableCellElementWith:]):
2198 (-[DOMHTMLTableCellElement _tableCellElement]):
2199 * bindings/objc/DOMHTMLAppletElement.h: Added.
2200 * bindings/objc/DOMHTMLAppletElement.mm: Added.
2201 (-[DOMHTMLAppletElement WebCore::]):
2202 (-[DOMHTMLAppletElement align]):
2203 (-[DOMHTMLAppletElement setAlign:]):
2204 (-[DOMHTMLAppletElement alt]):
2205 (-[DOMHTMLAppletElement setAlt:]):
2206 (-[DOMHTMLAppletElement archive]):
2207 (-[DOMHTMLAppletElement setArchive:]):
2208 (-[DOMHTMLAppletElement code]):
2209 (-[DOMHTMLAppletElement setCode:]):
2210 (-[DOMHTMLAppletElement codeBase]):
2211 (-[DOMHTMLAppletElement setCodeBase:]):
2212 (-[DOMHTMLAppletElement height]):
2213 (-[DOMHTMLAppletElement setHeight:]):
2214 (-[DOMHTMLAppletElement hspace]):
2215 (-[DOMHTMLAppletElement setHspace:]):
2216 (-[DOMHTMLAppletElement name]):
2217 (-[DOMHTMLAppletElement setName:]):
2218 (-[DOMHTMLAppletElement object]):
2219 (-[DOMHTMLAppletElement setObject:]):
2220 (-[DOMHTMLAppletElement vspace]):
2221 (-[DOMHTMLAppletElement setVspace:]):
2222 (-[DOMHTMLAppletElement width]):
2223 (-[DOMHTMLAppletElement setWidth:]):
2224 * bindings/objc/DOMHTMLInternal.h:
2225 * bindings/objc/DOMHTMLOptionElement.h: Added.
2226 * bindings/objc/DOMHTMLOptionElement.mm: Added.
2227 (-[DOMHTMLOptionElement WebCore::]):
2228 (-[DOMHTMLOptionElement form]):
2229 (-[DOMHTMLOptionElement defaultSelected]):
2230 (-[DOMHTMLOptionElement setDefaultSelected:]):
2231 (-[DOMHTMLOptionElement text]):
2232 (-[DOMHTMLOptionElement index]):
2233 (-[DOMHTMLOptionElement disabled]):
2234 (-[DOMHTMLOptionElement setDisabled:]):
2235 (-[DOMHTMLOptionElement label]):
2236 (-[DOMHTMLOptionElement setLabel:]):
2237 (-[DOMHTMLOptionElement selected]):
2238 (-[DOMHTMLOptionElement setSelected:]):
2239 (-[DOMHTMLOptionElement value]):
2240 (-[DOMHTMLOptionElement setValue:]):
2241 * bindings/objc/DOMPrivate.h:
2242 * bindings/scripts/CodeGeneratorObjC.pm:
2244 2006-08-31 Alice Liu <alice.liu@apple.com>
2248 Fixed <rdar://problem/4463870> Switch to use new text field implementation for <isindex>
2250 * bindings/objc/DOMHTML.mm:
2251 (-[DOMHTMLInputElement _isTextField]):
2252 moved isindex from the list of nonTextInputTypes to the list of textInputTypes
2254 added isindex to certain rules that applied to input fields
2255 * html/HTMLInputElement.cpp:
2256 (WebCore::HTMLInputElement::canHaveSelection):
2257 (WebCore::HTMLInputElement::selectionStart):
2258 (WebCore::HTMLInputElement::selectionEnd):
2259 (WebCore::HTMLInputElement::setSelectionStart):
2260 (WebCore::HTMLInputElement::setSelectionEnd):
2261 (WebCore::HTMLInputElement::select):
2262 (WebCore::HTMLInputElement::setSelectionRange):
2263 (WebCore::HTMLInputElement::createRenderer):
2264 for the 8 methods above, moved the case for isindex to the same case as text
2265 * html/HTMLInputElement.h:
2266 (WebCore::HTMLInputElement::isNonWidgetTextField):
2267 added isindex to this test
2268 * html/HTMLIsIndexElement.idl:
2269 HTMLIsIndexElement inherits from HTMLInputElement
2270 * rendering/RenderLineEdit.cpp:
2271 (WebCore::RenderLineEdit::RenderLineEdit):
2272 removed the case for isindex since we changed the renderer type from a RenderLineEdit
2273 to a RenderTextControl in WebCore::HTMLInputElement::createRenderer()
2275 2006-08-31 David Harrison <harrison@apple.com>
2279 <rdar://problem/4708119> REGRESSION: Cannot observe an AXTextField element directly
2282 <rdar://problem/4708022> REGRESSION: TextRange-based attributes are missing from text fields
2283 <rdar://problem/4709515> REGRESSION: Expose text areas
2285 Remaining work for those two bugs in new bugs:
2287 <rdar://problem/4712101> Support NSAccessibilityVisibleCharacterRangeAttribute for AXTextField and AXTextArea elements
2288 <rdar://problem/4712111> Support NSAccessibilityInsertionPointLineNumberAttribute for AXTextArea elements
2289 <rdar://problem/4712125> Support setting NSAccessibilitySelectedTextAttribute for AXTextField and AXTextArea elements
2291 * bridge/AXObjectCache.h:
2292 (WebCore::AXObjectCache::postNotificationToElement):
2293 * bridge/mac/AXObjectCacheMac.mm:
2294 (WebCore::AXObjectCache::postNotification):
2295 (WebCore::AXObjectCache::postNotificationToElement):
2296 Removed postNotificationToTopWebArea.
2297 postNotification now posts to input element or top web area, as appropriate.
2298 postNotificationToElement posts to the specified element itself.
2300 * bridge/mac/FrameMac.h:
2301 * bridge/mac/FrameMac.mm:
2302 (WebCore::FrameMac::respondToChangedContents):
2303 Take a selection. Pass the starting position's renderer to postNotification so that postNotification can post to the appropriate input element, if any.
2305 * bridge/mac/WebCoreAXObject.h:
2306 * bridge/mac/WebCoreAXObject.mm:
2307 (-[WebCoreAXObject isWebArea]):
2308 (-[WebCoreAXObject isAnchor]):
2309 (-[WebCoreAXObject isTextRange]):
2310 New convenience methods.
2312 (-[WebCoreAXObject role]):
2313 (-[WebCoreAXObject roleDescription])
2314 (-[WebCoreAXObject value]):
2315 (-[WebCoreAXObject accessibilityDescription]):
2316 Support AXTextField and AXTextArea.
2318 (-[WebCoreAXObject accessibilityShouldUseUniqueId]):
2319 Register AXTextField and AXTextArea elements so notifications to them can be observed.
2321 (-[WebCoreAXObject accessibilityIsIgnored]):
2322 Use new convenience method isWebArea.
2324 (-[WebCoreAXObject accessibilityAttributeNames]):
2325 Simplify the array creation.
2326 Add text range support.
2328 (-[WebCoreAXObject accessibilityAttributeValue:]):
2329 Add text range support.
2331 (-[WebCoreAXObject canSetFocusAttribute]):
2332 (-[WebCoreAXObject canSetValueAttribute]):
2333 (-[WebCoreAXObject canSetTextRangeAttributes]):
2334 New convenience methods.
2336 (-[WebCoreAXObject accessibilityIsAttributeSettable:]):
2337 (-[WebCoreAXObject accessibilitySetValue:forAttribute:]):
2338 Add text range support.
2340 (-[WebCoreAXObject observableObject]):
2341 New to locate text field or text area to notify.
2344 (WebCore::Document::updateSelection):
2345 Post AXSelectedTextChanged notification with new selection's start node.
2346 postNotification will send it to the input element, if there is one, or the top WebArea.
2348 (WebCore::Document::implicitClose):
2349 Use postNotificationToElement now that it acts like the old postNotification.
2353 (WebCore::Frame::appliedEditing):
2354 (WebCore::Frame::unappliedEditing):
2355 (WebCore::Frame::reappliedEditing):
2356 Pass the selection of interest to respondToChangedContents.
2358 * page/FrameView.cpp:
2359 (WebCore::FrameView::layout):
2360 Use postNotificationToElement now that it acts like the old postNotification.
2362 2006-08-31 Adele Peterson <adele@apple.com>
2366 WebCore part of fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=10666
2367 Password: Disallow Spelling, Font, Speech, and Writing Direction context menu
2369 * bridge/mac/WebCoreFrameBridge.h:
2370 * bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge isSelectionInPasswordField]): Added.
2371 * page/Frame.cpp: (WebCore::Frame::isSelectionInPasswordField): Added.
2374 2006-08-31 Anders Carlsson <acarlsson@apple.com>
2376 Reviewed by Tim O, Hyatt.
2378 * WebCore.xcodeproj/project.pbxproj:
2382 Get rid of include, add KURL constructor that takes a CFURLRef.
2384 * platform/PlatformString.h:
2385 * platform/StringImpl.h:
2388 * platform/cf/KURLCFNet.cpp:
2389 (WebCore::KURL::KURL):
2392 * platform/cf/ResourceLoaderCFNet.cpp:
2395 * platform/cf/StringCF.cpp:
2396 (WebCore::String::createCFString):
2397 Move this here from PlatformString.h
2399 * platform/cf/StringImplCF.cpp:
2400 (WebCore::StringImpl::createCFString):
2403 * platform/mac/KURLMac.mm:
2404 Move createCFURL() to KURLCFNet.cpp
2406 2006-08-31 Dave Hyatt <hyatt@apple.com>
2408 Make ScrollBar.cpp suitable for compiling on Windows by removing the #import.
2412 * platform/ScrollBar.cpp:
2414 2006-08-31 Brady Eidson <beidson@apple.com>
2418 Cleaned up my last patch after further considerations
2420 * loader/icon/IconDatabase.cpp:
2421 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Uses the new checkForDanglingPageURLs to check
2422 for and fix danglers. Does so in all builds (changed from debug only in my last patch)
2423 (WebCore::IconDatabase::syncDatabase): Uses the new checkForDanglingPageURLs to check for danglers
2424 (WebCore::IconDatabase::checkForDanglingPageURLs): This checks and, if asked via an arg, prunes the dangling pageURLs
2425 * loader/icon/IconDatabase.h:
2427 2006-08-31 Anders Carlsson <acarlsson@apple.com>
2431 Add CString. CString is a simple, null-terminated byte buffer that supports data
2432 sharing. Its main use is to be a better const char*.
2434 Also add latin1 and utf8 methods to String which returns CStrings.
2436 * platform/CString.cpp: Added.
2437 (WebCore::CString::CString):
2438 (WebCore::CString::init):
2439 (WebCore::CString::data):
2440 (WebCore::CString::length):
2441 (WebCore::CString::deprecatedCString):
2442 * platform/CString.h: Added.
2443 (WebCore::CStringBuffer::CStringBuffer):
2444 (WebCore::CStringBuffer::data):
2445 (WebCore::CStringBuffer::length):
2446 (WebCore::CString::CString):
2447 (WebCore::CString::operator const char*):
2448 (WebCore::CString::isNull):
2449 * platform/PlatformString.h:
2450 * platform/String.cpp:
2451 (WebCore::String::latin1):
2452 (WebCore::String::utf8):
2454 2006-08-31 Brady Eidson <beidson@apple.com>
2458 Previously mentioned ASSERT was hit right away by folks, as we first need to bring their old icon.db into consistency
2459 Changed the ASSERT to a LOG_ERROR and added a method for debug builds to bring a DB back together.
2461 * loader/icon/IconDatabase.cpp:
2462 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Check for the danglers and prune them out
2463 (WebCore::IconDatabase::syncDatabase): Check for the danglers and log the error
2464 (WebCore::IconDatabase::pruneDanglingPageURLs): Prune the danglers
2465 * loader/icon/IconDatabase.h:
2467 2006-08-31 Brady Eidson <beidson@apple.com>
2471 Fixed an error where an Icon's IconID could change without the change being reflected in the PageURL table,
2472 causing icons to be pruned before their time and pages to lose their icons. This is because I misunderstood
2473 how SQLite handles the "ON CONFLICT REPLACE" condition, which is to delete the row and re-insert instead of
2474 perform an update. Also added an assertion to make sure this doesn't happen again.
2476 * loader/icon/IconDataCache.cpp:
2477 (WebCore::IconDataCache::writeToDatabase): Instead of one INSERT relying on SQLites conflict handling, broke
2478 this into an UPDATE attempt followed by the initial INSERT
2479 * loader/icon/IconDatabase.cpp:
2480 (WebCore::IconDatabase::createDatabaseTables): Slight tweak to the database schema to prevent this from happening
2481 in the future. Note this change will not cause incompatibility with the current schema, therefore I didn't update
2482 the official database version number
2483 (WebCore::IconDatabase::syncDatabase): Added an ASSERT to look for this condition in the future
2484 * loader/icon/SQLDatabase.cpp:
2485 (WebCore::SQLDatabase::lastChanges): Added this SQLite accessor to see if an UPDATE command actually changed a row
2486 * loader/icon/SQLDatabase.h: Ditto
2488 2006-08-31 Sam Weinig <sam.weinig@gmail.com>
2492 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10653
2493 Auto-generate another 20 Objective-C DOM HTML bindings
2495 Auto-generates DOMHTMLBRElement, DOMHTMLButtonElement, DOMHTMLDListElement,
2496 DOMHTMLDirectoryElement, DOMHTMLDivElement, DOMHTMLFieldSetElement,
2497 DOMHTMLHeadingElement, DOMHTMLInputElement, DOMHTMLLIElement, DOMHTMLLabelElement,
2498 DOMHTMLLegendElement, DOMHTMLMenuElement, DOMHTMLOListElement, DOMHTMLOptGroupElement,
2499 DOMHTMLParagraphElement, DOMHTMLPreElement, DOMHTMLQuoteElement, DOMHTMLSelectElement,
2500 DOMHTMLTextAreaElement, and DOMHTMLUListElement.
2502 * DerivedSources.make:
2503 * WebCore.xcodeproj/project.pbxproj:
2504 * bindings/objc/DOM.mm:
2505 * bindings/objc/DOMExtensions.h:
2506 * bindings/objc/DOMHTML.h:
2507 * bindings/objc/DOMHTML.mm:
2508 (-[DOMHTMLInputElement altDisplayString]):
2509 (-[DOMHTMLInputElement absoluteImageURL]):
2510 (-[DOMHTMLInputElement WebCore::]):
2511 (-[DOMHTMLInputElement _rectOnScreen]):
2512 (-[DOMHTMLInputElement _replaceCharactersInRange:withString:selectingFromIndex:]):
2513 (-[DOMHTMLInputElement _selectedRange]):
2514 (-[DOMHTMLInputElement _setAutofilled:]):
2515 * bindings/objc/DOMHTMLInternal.h:
2516 * bindings/objc/DOMPrivate.h:
2517 * bindings/scripts/CodeGeneratorObjC.pm:
2519 2006-08-31 Adele Peterson <adele@apple.com>
2521 Reviewed by John Sullivan.
2523 Removing use of SPI in favor of Carbon API to enable and disable secure event input.
2525 * WebCore.exp: Removed wkSecureEventInput and wkSetSecureEventInput.
2526 * platform/mac/WebCoreSystemInterface.h: ditto.
2527 * platform/mac/WebCoreSystemInterface.mm: ditto.
2529 * bridge/mac/FrameMac.mm:
2530 (WebCore::FrameMac::setSecureKeyboardEntry): Uses EnableSecureEventInput and DisableSecureEventInput.
2531 (WebCore::FrameMac::secureKeyboardEntry): Uses IsSecureEventInputEnabled.
2533 2006-08-30 Brady Eidson <beidson@apple.com>
2535 Reviewed by "common sense" (and Maciej)
2537 Fixed two logging typos
2539 * loader/icon/IconDatabase.cpp:
2540 (WebCore::IconDatabase::syncDatabase):
2542 2006-08-30 Adele Peterson <adele@apple.com>
2544 Adding missing nil check for focus node.
2546 * page/Frame.cpp: (WebCore::Frame::setIsActive):
2548 2006-08-30 Adele Peterson <adele@apple.com>
2552 WebCore part of fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=10575
2553 Enable secure input mode for new password fields
2555 * WebCore.exp: Added wkSetSecureEventInput and wkSecureEventInput.
2556 * platform/mac/WebCoreSystemInterface.h: ditto.
2557 * platform/mac/WebCoreSystemInterface.mm: ditto.
2559 * page/Frame.cpp: (WebCore::Frame::setIsActive): Enables and disables secure keyboard entry based on whether the frame becomes active.
2560 * bridge/mac/FrameMac.h:
2561 * bridge/mac/FrameMac.mm:
2562 (WebCore::FrameMac::setSecureKeyboardEntry): Added. Calls wkSetSecureEventInput.
2563 (WebCore::FrameMac::secureKeyboardEntry): Added. Calls wkSecureEventInput.
2564 * html/HTMLInputElement.cpp:
2565 (WebCore::HTMLInputElement::dispatchFocusEvent): For password fields, enable secure keyboard entry.
2566 (WebCore::HTMLInputElement::dispatchBlurEvent): For password fields, disable secure keyboard entry.
2568 (WebCore::Frame::setSecureKeyboardEntry):
2569 (WebCore::Frame::secureKeyboardEntry):
2571 2006-08-30 Darin Adler <darin@apple.com>
2573 Reviewed by Tim Hatcher.
2575 - eliminated the need for UsesPassRefPtr in IDL files
2576 - got rid of the category mechanism for ObjC generated DOM headers
2577 (after discussions with Tim H where we decided it's not needed)
2578 - simplified use of macro inside ObjC generated code
2580 * ForwardingHeaders/wtf/GetPtr.h: Added.
2582 * bindings/scripts/CodeGeneratorObjC.pm: Removed code to handle
2583 categories. Eliminated use of DOM_cast since that's for the protection
2584 of human programmers -- the script won't make mistakes that it needs
2585 to catch. Changed macro to always be named IMPL instead of incorporating
2586 the class name. Use WTF::getPtr to extract the pointer, and removed the
2587 code that uses .get() to extract the pointer in the PassRefPtr case.
2589 * dom/Attr.idl: Removed all uses of UsesPassRefPtr and ObjCCatagory.
2590 * dom/DOMImplementation.idl: Ditto.
2591 * dom/Document.idl: Ditto.
2592 * dom/Element.idl: Ditto.
2593 * dom/NamedNodeMap.idl: Ditto.
2594 * html/HTMLDocument.idl: Ditto.
2595 * html/HTMLElement.idl: Ditto.
2596 * html/HTMLFormElement.idl: Ditto.
2597 * html/HTMLMapElement.idl: Ditto.
2598 * html/HTMLSelectElement.idl: Ditto.
2599 * html/HTMLTableElement.idl: Ditto.
2600 * html/HTMLTableRowElement.idl: Ditto.
2601 * html/HTMLTableSectionElement.idl: Ditto.
2603 2006-08-30 Brady Eidson <beidson@apple.com>
2607 <rdar://problem/4707718> - Instead of faking the user out with an in-memory icon database if their
2608 ~/Library/Safari/Icons is unwritable, we'll actually fail to open the icon database and the app will
2609 run as if it was disabled via a preference.
2610 Also took the opportunity to change some ASSERTS() to reasonable behavior
2612 * bridge/mac/WebCoreIconDatabaseBridge.mm:
2613 (-[WebCoreIconDatabaseBridge openSharedDatabaseWithPath:]): NSLog on failure so the user has a chance to figure
2614 out there's a problem.
2615 (-[WebCoreIconDatabaseBridge closeSharedDatabase]):
2616 (-[WebCoreIconDatabaseBridge iconForPageURL:withSize:]): From here on, just replaced ASSERTS() with reasonable behavior
2617 (-[WebCoreIconDatabaseBridge iconURLForPageURL:]):
2618 (-[WebCoreIconDatabaseBridge defaultIconWithSize:]):
2619 (-[WebCoreIconDatabaseBridge retainIconForURL:]):
2620 (-[WebCoreIconDatabaseBridge releaseIconForURL:]):
2621 (-[WebCoreIconDatabaseBridge _setIconData:forIconURL:]):
2622 (-[WebCoreIconDatabaseBridge _setHaveNoIconForIconURL:]):
2623 (-[WebCoreIconDatabaseBridge _setIconURL:forPageURL:]):
2624 (-[WebCoreIconDatabaseBridge _hasEntryForIconURL:]):
2625 * loader/icon/IconDatabase.cpp:
2626 (WebCore::IconDatabase::open): If we fail to open, return false
2627 (WebCore::IconDatabase::~IconDatabase): cleanup better
2628 * loader/icon/IconDatabase.h:
2630 2006-08-30 David Harrison <harrison@apple.com>
2632 Reviewed by John Sullivan.
2634 <rdar://problem/4708007> REGRESSION: text field inside a webpage no longer has settable AXValueAttribute
2635 <rdar://problem/4707479> REGRESSION: controls inside a webpage no longer have settable AXFocusedAttribute
2637 * bridge/mac/WebCoreAXObject.mm:
2638 (-[WebCoreAXObject canSetFocusAttribute]):
2639 (-[WebCoreAXObject canSetValueAttribute]):
2640 New utility methods. Text fields and buttons are focusable.
2641 Text fields can have their value set. We need not make
2642 popupbutton value settable because AppKit does not.
2644 (-[WebCoreAXObject accessibilityIsAttributeSettable:]):
2645 Call new utility methods.
2647 (-[WebCoreAXObject accessibilitySetValue:forAttribute:]):
2648 Set focus for text field or button.
2649 Set value for text field.
2651 2006-08-30 David Hyatt <hyatt@apple.com>
2653 Fix for bugs 9000 and 10606. Add code to suppress painting when
2654 a FOUC situation would otherwise occur. There will still typically be
2655 a flash to white, but at least the wrong content won't show.
2660 (WebCore::Document::Document):
2661 (WebCore::Document::updateLayoutIgnorePendingStylesheets):
2662 (WebCore::Document::preferredStylesheetSet):
2663 (WebCore::Document::selectedStylesheetSet):
2664 (WebCore::Document::setSelectedStylesheetSet):
2665 (WebCore::Document::stylesheetLoaded):
2666 (WebCore::Document::updateStyleSelector):
2668 (WebCore::Document::haveStylesheetsLoaded):
2669 * rendering/RenderBlock.cpp:
2670 (WebCore::RenderBlock::paintChildren):
2671 * rendering/RenderLayer.cpp:
2672 (WebCore::RenderLayer::paintLayer):
2673 (WebCore::isSubframe):
2674 (WebCore::RenderLayer::hitTest):
2675 * rendering/RenderView.cpp:
2676 (WebCore::RenderView::repaintViewRectangle):
2678 2006-08-31 Nikolas Zimmermann <zimmermann@kde.org>
2680 Reviewed by Eric. Landed by rwlbuis.
2682 Apply Rob's fixes in RenderPathQt too -> unbreak build.
2684 * kcanvas/RenderPath.h: Some style cleanups.
2685 * kcanvas/device/qt/RenderPathQt.cpp:
2686 (WebCore::RenderPathQt::strokeContains):
2687 * kcanvas/device/qt/RenderPathQt.h:
2689 2006-08-30 Sam Weinig <sam.weinig@gmail.com>
2692 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10640
2693 Auto-generate 10 more Objective-C DOM HTML bindings
2695 Auto-generates DOMHTMLBaseElement, DOMHTMLBodyElement, DOMHTMLHeadElement,
2696 DOMHTMLHtmlElement, DOMHTMLIsIndexElement, DOMHTMLLinkElement,
2697 DOMHTMLMetaElement, DOMHTMLStyleElement and DOMHTMLTitleElement.
2699 Splits DOMHTMLDocument into it's own files.
2701 * DerivedSources.make:
2702 * WebCore.xcodeproj/project.pbxproj:
2703 * bindings/objc/DOM.mm:
2704 * bindings/objc/DOMExtensions.h:
2705 * bindings/objc/DOMHTML.h:
2706 * bindings/objc/DOMHTML.mm:
2707 * bindings/objc/DOMHTMLDocument.h: Added.
2708 * bindings/objc/DOMHTMLDocument.mm: Added.
2709 (-[DOMHTMLDocument WebCore::]):
2710 (-[DOMHTMLDocument title]):
2711 (-[DOMHTMLDocument setTitle:]):
2712 (-[DOMHTMLDocument referrer]):
2713 (-[DOMHTMLDocument domain]):
2714 (-[DOMHTMLDocument URL]):
2715 (-[DOMHTMLDocument body]):
2716 (-[DOMHTMLDocument setBody:]):
2717 (-[DOMHTMLDocument images]):
2718 (-[DOMHTMLDocument applets]):
2719 (-[DOMHTMLDocument links]):
2720 (-[DOMHTMLDocument forms]):
2721 (-[DOMHTMLDocument anchors]):
2722 (-[DOMHTMLDocument cookie]):
2723 (-[DOMHTMLDocument setCookie:]):
2724 (-[DOMHTMLDocument open]):
2725 (-[DOMHTMLDocument close]):
2726 (-[DOMHTMLDocument write:]):
2727 (-[DOMHTMLDocument writeln:]):
2728 (-[DOMHTMLDocument getElementById:]):
2729 (-[DOMHTMLDocument getElementsByName:]):
2730 (-[DOMHTMLDocument createDocumentFragmentWithMarkupString:baseURL:]):
2731 (-[DOMHTMLDocument createDocumentFragmentWithText:]):
2732 * bindings/objc/DOMHTMLInternal.h:
2733 * bindings/scripts/CodeGeneratorObjC.pm:
2734 * html/HTMLDocument.idl:
2736 2006-08-30 Nikolas Zimmermann <zimmermann@kde.org>
2738 Reviewed by eseidel.
2740 Use QColor <-> Color conversion operator, instead of faking it.
2742 * platform/qt/FontQt.cpp:
2743 (WebCore::Font::drawGlyphs):
2744 * platform/qt/GraphicsContextQt.cpp:
2745 (WebCore::GraphicsContext::fillRect):
2747 2006-08-30 Rob Buis <buis@kde.org>
2751 http://bugzilla.opendarwin.org/show_bug.cgi?id=10586
2752 pointer-events has issues when things are not stroked/filled
2754 Add a param to fillContains/strokeContains to indicate
2755 whether we still want hit testing when there is no fill/stroke.
2757 * kcanvas/RenderPath.cpp:
2758 (WebCore::RenderPath::fillContains):
2759 (WebCore::RenderPath::nodeAtPoint):
2760 * kcanvas/RenderPath.h:
2761 * kcanvas/device/quartz/KCanvasItemQuartz.h:
2762 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
2763 (WebCore::KCanvasItemQuartz::strokeContains):
2765 2006-08-29 Justin Garcia <justin.garcia@apple.com>
2767 Reviewed by harrison
2769 <rdar://problem/4700297>
2770 REGRESSION: After replacing a misspelled word in a sentence, the selection extends to end of current line
2772 * editing/ReplaceSelectionCommand.cpp:
2773 (WebCore::ReplaceSelectionCommand::doApply): Rebalance whitespace
2774 around insertionPos before insertion because the content might
2775 cause a collapse, e.g. inserting <div>foo</div> at hello^ world.
2776 * editing/htmlediting.cpp:
2777 (WebCore::rebalanceWhitespaceInTextNode): Rebalance with all nbsps
2778 for simplicity, we can produce sequences of regular spaces and
2779 nbsps on serialization (10636).
2781 2006-08-30 Nikolas Zimmermann <zimmermann@kde.org>
2783 Reviewed by eseidel.
2785 The old solution was slow & does not work correctly.
2786 Move the QString -> DeprecatedString conversion into
2787 DeprectedString.cpp, to be able to access allocateHandle().
2789 * platform/DeprecatedString.cpp:
2790 (WebCore::DeprecatedString::DeprecatedString):
2791 * platform/qt/StringQt.cpp:
2793 2006-08-30 Nikolas Zimmermann <zimmermann@kde.org>
2795 Reviewed/landed by Adam.
2797 Implement containsCharacters() / determinePitch() functions.
2799 * platform/qt/FontDataQt.cpp:
2800 (WebCore::FontData::containsCharacters):
2801 (WebCore::FontData::determinePitch):
2803 2006-08-30 Brady Eidson <beidson@apple.com>
2805 Reviewed by Darin's rubberstamp
2807 We apparently have a fancy delateAllValues() helper for HashMap/Sets - I'll use that instead
2809 * WebCore.xcodeproj/project.pbxproj:
2810 * loader/icon/IconDatabase.cpp:
2811 (WebCore::IconDatabase::removeAllIcons):
2813 2006-08-29 waylonis <waylonis@google.com>
2815 Reviewed, tweaked by ggaren.
2817 - Changed to use ExecState on current context rather than global.
2818 Part of the fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=10114
2819 * bindings/objc/WebScriptObject.mm:
2820 (+[WebScriptObject throwException:]):
2821 (-[WebScriptObject setException:]):
2823 2006-08-30 Adele Peterson <adele@apple.com>
2827 - WebCore part of fix for:
2828 http://bugzilla.opendarwin.org/show_bug.cgi?id=10576
2829 Disallow copy from new password fields
2831 * page/Frame.cpp: (WebCore::Frame::mayCopy): Added. Checks to see if the selection is within a password field.
2832 * page/Frame.h: Added mayCopy.
2834 * bridge/mac/FrameMac.h:
2835 * bridge/mac/FrameMac.mm:
2836 (WebCore::FrameMac::handleMouseMoveEvent): Checks mayCopy before starting a drag.
2837 (WebCore::FrameMac::mayDHTMLCut): Renamed to match the bridge method. This also checks mayCopy now.
2838 (WebCore::FrameMac::mayDHTMLCopy): ditto.
2839 (WebCore::FrameMac::tryDHTMLCut): ditto.
2840 (WebCore::FrameMac::tryDHTMLCopy): ditto.
2841 (WebCore::FrameMac::mayDHTMLPaste): Renamed to match the bridge function.
2842 (WebCore::FrameMac::tryDHTMLPaste): ditto.
2843 * bridge/mac/WebCoreFrameBridge.h:
2844 * bridge/mac/WebCoreFrameBridge.mm:
2845 (-[WebCoreFrameBridge mayCopy]): Calls the renamed method on frame.
2846 (-[WebCoreFrameBridge mayDHTMLCut]): ditto.
2847 (-[WebCoreFrameBridge mayDHTMLCopy]): ditto.
2848 (-[WebCoreFrameBridge mayDHTMLPaste]): ditto.
2849 (-[WebCoreFrameBridge tryDHTMLCut]): ditto.
2850 (-[WebCoreFrameBridge tryDHTMLCopy]): ditto.
2851 (-[WebCoreFrameBridge tryDHTMLPaste]): ditto.
2853 * css/html4.css: Added !important to the -webkit-text-security property for password fields.
2855 2006-08-30 Nikolas Zimmermann <zimmermann@kde.org>
2859 Commit KDE related tweaks, to be able to
2860 differentiate between a Qt-only or a KDE build.
2862 * CMakeLists.txt: Move global variables up to trunk/CMakeLists.txt.
2863 Also rename USE_WEBKIT_SVG_SUPPORT to WEBKIT_USE_SVG_SUPPORT.
2865 2006-08-30 Timothy Hatcher <timothy@apple.com>
2867 Rubber-stamped by Brady.
2869 Fix for the generated headers to make the build work
2870 during "installhdrs" builds. Also export DOM headers
2871 using the #import <WebCore/DOM*.h> syntax.
2873 * WebCore.xcodeproj/project.pbxproj:
2874 * bindings/scripts/CodeGeneratorObjC.pm:
2876 2006-08-29 Brady Eidson <beidson@apple.com>
2878 Reviewed by Kevin Decker (Sarge)
2880 <rdar://problem/4678414> - New IconDB needs to delete icons when asked
2881 <rdar://problem/4707718> - If user's Icon directory is unwritable, Safari will crash at startup
2883 * bridge/mac/WebCoreIconDatabaseBridge.h:
2884 * bridge/mac/WebCoreIconDatabaseBridge.mm:
2885 (-[WebCoreIconDatabaseBridge removeAllIcons]): Added
2886 * loader/icon/IconDatabase.cpp:
2887 (WebCore::IconDatabase::open): If DB file is not writeable, create an in-memory DB for this session
2888 (WebCore::IconDatabase::close): Use new deleteAllPreparedStatements()
2889 (WebCore::IconDatabase::removeAllIcons): Actually implemented
2890 (WebCore::IconDatabase::deleteAllPreparedStatements): Added for convinience/consistency
2891 (WebCore::IconDatabase::setPrivateBrowsingEnabled): Use new SQLDatabase::clearAllTables()
2892 * loader/icon/IconDatabase.h:
2893 * loader/icon/SQLDatabase.cpp:
2894 (WebCore::SQLDatabase::clearAllTables): Moved this from IconDatabase as it actually belongs here
2895 (WebCore::SQLDatabase::vacuum): Added
2896 * loader/icon/SQLDatabase.h:
2897 (WebCore::SQLDatabase::path): changed name from getPath()
2899 2006-08-29 Brady Eidson <beidson@apple.com>
2903 Added a truth value to setIconURLForPageURL so WebKit can avoid sending a notification
2904 This is a win on the iBench
2906 * bridge/mac/WebCoreIconDatabaseBridge.h:
2907 * bridge/mac/WebCoreIconDatabaseBridge.mm:
2908 (-[WebCoreIconDatabaseBridge _setIconURL:forPageURL:]):
2909 * loader/icon/IconDatabase.cpp:
2910 (WebCore::IconDatabase::setIconURLForPageURL):
2911 * loader/icon/IconDatabase.h:
2913 2006-08-29 Alice Liu <alice.liu@apple.com>
2917 Fixed <rdar://problem/4702021> REGRESSION: WebClip and Weather widgets shift downward vertically on screen after I drag them out from dashboard configure bar
2919 * platform/mac/ScreenMac.mm:
2920 (WebCore::flipScreenRect):
2921 reverted the one line in this method back to what it was before r15765. This changed caused window.screenY to be incorrect.
2923 2006-08-29 Darin Adler <darin@apple.com>
2927 - fix <rdar://problem/4701494> REGRESSION: Scrollbar on EPSN widget doesn't scroll (also affects Widgets widget, web inspector)
2929 The bug was that we would return "none" for computed style properties when they were
2932 Test: fast/css/computed-style-negative-top.html
2934 * css/CSSComputedStyleDeclaration.cpp:
2935 (WebCore::valueForLength): Moved special case for "undefined length" out of here.
2936 (WebCore::valueForMaxLength): Moved it into here.
2937 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Use valueForMaxLength
2938 only for max-height and max-width.
2940 2006-08-29 Nikolas Zimmermann <zimmermann@kde.org>
2942 Reviewed by eseidel.
2944 Add path-related SVG JavaScript bindings to generation.
2948 2006-08-29 Eric Seidel <eric@eseidel.com>
2952 Re-enable path-related SVG JavaScript bindings.
2953 http://bugzilla.opendarwin.org/show_bug.cgi?id=10623
2954 Split all SVGPathSeg*.idl files into Abs and Rel pieces.
2955 Move all SVGPath*.idl files into ksvg2/svg
2957 * DerivedSources.make:
2958 * WebCore.xcodeproj/project.pbxproj:
2959 * bindings/scripts/CodeGeneratorJS.pm: Special case Abs and Rel header includes
2960 * ksvg2/bindings/idl/svg/SVGAnimatedNumber.idl: Removed.
2961 * ksvg2/bindings/idl/svg/SVGPathElement.idl: Removed.
2962 * ksvg2/bindings/idl/svg/SVGPathSeg.idl: Removed.
2963 * ksvg2/bindings/idl/svg/SVGPathSegArc.idl: Removed.
2964 * ksvg2/bindings/idl/svg/SVGPathSegClosePath.idl: Removed.
2965 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubic.idl: Removed.
2966 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubicSmooth.idl: Removed.
2967 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadratic.idl: Removed.
2968 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadraticSmooth.idl: Removed.
2969 * ksvg2/bindings/idl/svg/SVGPathSegLineto.idl: Removed.
2970 * ksvg2/bindings/idl/svg/SVGPathSegLinetoHorizontal.idl: Removed.
2971 * ksvg2/bindings/idl/svg/SVGPathSegLinetoVertical.idl: Removed.
2972 * ksvg2/bindings/idl/svg/SVGPathSegList.idl: Removed.
2973 * ksvg2/bindings/idl/svg/SVGPathSegMoveto.idl: Removed.
2974 * ksvg2/ksvg.h: move SVGPathSegment enum
2975 * ksvg2/svg/SVGPathElement.cpp: move SVGPathSegment enum
2976 (WebCore::SVGPathElement::toPathData):
2977 * ksvg2/svg/SVGPathSeg.cpp:
2978 (WebCore::SVGPathSeg::SVGPathSeg):
2979 * ksvg2/svg/SVGPathSeg.h:
2980 (WebCore::SVGPathSeg::):
2981 * ksvg2/svg/SVGPathSegArcAbs.idl: Added.
2982 * ksvg2/svg/SVGPathSegArcRel.idl: Added.
2983 * ksvg2/svg/SVGPathSegCurvetoCubicAbs.idl: Added.
2984 * ksvg2/svg/SVGPathSegCurvetoCubicRel.idl: Added.
2985 * ksvg2/svg/SVGPathSegCurvetoCubicSmoothAbs.idl: Added.
2986 * ksvg2/svg/SVGPathSegCurvetoCubicSmoothRel.idl: Added.
2987 * ksvg2/svg/SVGPathSegCurvetoQuadraticAbs.idl: Added.
2988 * ksvg2/svg/SVGPathSegCurvetoQuadraticRel.idl: Added.
2989 * ksvg2/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl: Added.
2990 * ksvg2/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl: Added.
2991 * ksvg2/svg/SVGPathSegLinetoAbs.idl: Added.
2992 * ksvg2/svg/SVGPathSegLinetoHorizontalAbs.idl: Added.
2993 * ksvg2/svg/SVGPathSegLinetoHorizontalRel.idl: Added.
2994 * ksvg2/svg/SVGPathSegLinetoRel.idl: Added.
2995 * ksvg2/svg/SVGPathSegLinetoVerticalAbs.idl: Added.
2996 * ksvg2/svg/SVGPathSegLinetoVerticalRel.idl: Added.
2997 * ksvg2/svg/SVGPathSegMovetoAbs.idl: Added.
2998 * ksvg2/svg/SVGPathSegMovetoRel.idl: Added.
3000 2006-08-28 Nikolas Zimmermann <zimmermann@kde.org>
3002 Reviewed by Eric, landed by Anders.
3004 Fixes one chunk of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10604
3006 Finish Unity merging. Remove libcurl usage, in favour of KIO.
3007 This makes the regression testing fly! IO processing is way faster now.
3010 * platform/ResourceLoaderInternal.h:
3011 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
3012 * platform/qt/FrameQt.cpp:
3013 (WebCore::FrameQt::openURL):
3014 (WebCore::FrameQt::submitForm):
3015 (WebCore::FrameQt::urlSelected):
3016 (WebCore::FrameQt::createEmptyDocument):
3017 (WebCore::FrameQt::receivedData):
3018 (WebCore::FrameQt::receivedAllData):
3019 * platform/qt/FrameQt.h:
3020 * platform/qt/ResourceLoaderCurl.cpp: Removed.
3021 * platform/qt/ResourceLoaderManager.cpp:
3022 (WebCore::ResourceLoaderManager::ResourceLoaderManager):
3023 (WebCore::ResourceLoaderManager::~ResourceLoaderManager):
3024 (WebCore::ResourceLoaderManager::self):
3025 (WebCore::ResourceLoaderManager::slotData):
3026 (WebCore::ResourceLoaderManager::slotMimetype):
3027 (WebCore::ResourceLoaderManager::slotResult):
3028 (WebCore::ResourceLoaderManager::remove):
3029 (WebCore::ResourceLoaderManager::add):
3030 * platform/qt/ResourceLoaderManager.h:
3031 * platform/qt/ResourceLoaderQt.cpp: Added.
3032 (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
3033 (WebCore::ResourceLoader::~ResourceLoader):
3034 (WebCore::ResourceLoader::start):
3035 (WebCore::ResourceLoader::cancel):
3036 (WebCore::ResourceLoader::assembleResponseHeaders):
3037 (WebCore::ResourceLoader::retrieveCharset):
3038 (WebCore::ResourceLoader::receivedResponse):
3040 2006-08-29 Timothy Hatcher <timothy@apple.com>
3044 Bug 10632: Objective-C DOM should use the @property syntax for DOM attributes
3045 http://bugzilla.opendarwin.org/show_bug.cgi?id=10632
3047 Generate @property when MACOSX_DEPLOYMENT_TARGET is >= 10.5.
3048 This is backwards compatible with the getter/setter methods.
3049 Generate setter arguments with a "new" prefix to avoid the property
3050 name conflict warning. Also removes some whitespace and the comments
3051 that we added to the headers. This makes the headers look like what we ship now.
3053 * bindings/objc/DOMCSS.mm:
3054 (-[DOMDocument getComputedStyle::]): renamed a local variable to avoid the property name conflict.
3055 (-[DOMDocument getMatchedCSSRules::]): ditto.
3056 * bindings/scripts/CodeGeneratorObjC.pm: generate @property in the headers.
3058 2006-08-30 Nikolas Zimmermann <zimmermann@kde.org>
3060 Reviewed and landed by Anders.
3062 Fix time calculation, by using a correct calculation. Calling time()
3063 returns a number of seconds, aka. an integer. Fix it by using gettimeofday().
3064 Patch originally proposed by Ronan Meneu <rmeneu@origyn.fr>
3066 * platform/qt/SystemTimeQt.cpp:
3067 (WebCore::currentTime):
3069 2006-08-29 Sam Weinig <sam.weinig@gmail.com>
3073 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10628
3074 Auto-generate the remaining Objective-C DOM bindings
3076 Auto-generates DOMHTMLCollection, DOMHTMLElement, DOMHTMLFormElement,
3077 and DOMHTMLOptionsCollection, and lays groundwork for the rest of the
3078 HTML DOM bindings by adding/fixing the appropriate IDL's and updating
3079 the CodeGeneratorObjC.pm build script.
3081 * DerivedSources.make:
3082 * WebCore.xcodeproj/project.pbxproj:
3083 * bindings/objc/DOM.mm:
3084 * bindings/objc/DOMExtensions.h:
3085 * bindings/objc/DOMHTML.h:
3086 * bindings/objc/DOMHTML.mm:
3087 * bindings/objc/DOMHTMLInternal.h:
3088 * bindings/scripts/CodeGeneratorObjC.pm:
3089 * html/HTMLAnchorElement.idl:
3090 * html/HTMLAreaElement.idl:
3091 * html/HTMLBaseFontElement.idl:
3092 * html/HTMLBodyElement.idl:
3093 * html/HTMLButtonElement.idl:
3094 * html/HTMLCollection.idl: Added.
3095 * html/HTMLDocument.idl:
3096 * html/HTMLElement.idl:
3097 * html/HTMLFormElement.idl:
3098 * html/HTMLFrameElement.idl: Added.
3099 * html/HTMLFrameSetElement.idl: Added.
3100 * html/HTMLIFrameElement.idl: Added.
3101 * html/HTMLImageElement.idl:
3102 * html/HTMLInputElement.idl:
3103 * html/HTMLLabelElement.idl:
3104 * html/HTMLLegendElement.idl:
3105 * html/HTMLLinkElement.idl:
3106 * html/HTMLMapElement.idl:
3107 * html/HTMLObjectElement.idl: Added.
3108 * html/HTMLOptionsCollection.idl:
3109 * html/HTMLPreElement.idl:
3110 * html/HTMLSelectElement.idl: Added.
3111 * html/HTMLStyleElement.idl:
3112 * html/HTMLTableCaptionElement.idl: Added.
3113 * html/HTMLTableCellElement.idl: Added.
3114 * html/HTMLTableColElement.idl: Added.
3115 * html/HTMLTableElement.idl: Added.
3116 * html/HTMLTableRowElement.idl: Added.
3117 * html/HTMLTableSectionElement.idl: Added.
3118 * html/HTMLTextAreaElement.idl:
3120 2006-08-29 Nikolas Zimmermann <zimmermann@kde.org>
3122 Reviewed and landed by ap.
3124 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10629.
3125 Drawing convex polygons is broken in the Qt platform.
3127 * platform/qt/GraphicsContextQt.cpp:
3128 (WebCore::GraphicsContext::drawConvexPolygon):
3130 2006-08-29 Nikolas Zimmermann <zimmermann@kde.org>
3134 Implementing font hashing properly, fixes weird crashes in HashMap.
3136 * platform/qt/FontPlatformData.h:
3137 * platform/qt/FontPlatformDataQt.cpp:
3138 (WebCore::FontPlatformData::FontPlatformData):
3139 (WebCore::FontPlatformData::hash):
3141 2006-08-29 Nikolas Zimmermann <zimmermann@kde.org>
3145 Fix scrollbars to reappear after the first layouting.
3147 * platform/qt/ScrollViewQt.cpp:
3148 (WebCore::ScrollView::suppressScrollBars):
3150 2006-08-29 Anders Carlsson <acarlsson@apple.com>
3152 Reviewed by Darin and Geoff.
3154 Move the CF String functions to separate files in platform/cf.
3155 Also, move the files in platform/cfnet to platform/cf.
3157 * WebCore.xcodeproj/project.pbxproj:
3158 * platform/PlatformString.h:
3159 * platform/StringImpl.h:
3160 * platform/cf/StringCF.cpp: Added.
3161 (WebCore::String::String):
3162 * platform/cf/StringImplCF.cpp: Added.
3163 (WebCore::StringImpl::createCFString):
3164 * platform/cfnet/KURLCFNet.cpp: Removed.
3165 * platform/cfnet/ResourceLoaderCFNet.cpp: Removed.
3166 * platform/mac/StringImplMac.mm:
3167 * platform/mac/StringMac.mm:
3169 2006-08-29 Geoffrey Garen <ggaren@apple.com>
3171 Rolling out a change I included by accident in my last commit.
3173 * bridge/mac/FrameMac.mm:
3174 (WebCore::FrameMac::passMouseDownEventToWidget):
3175 * platform/mac/SharedTimerMac.cpp:
3176 (WebCore::setSharedTimerFireTime):
3178 2006-08-28 Geoffrey Garen <ggaren@apple.com>
3182 Added support for experimental CFNetwork-based loader (not turned on yet).
3184 While I was there, I did the following platform cleanup:
3185 - Windows now uses USE(WININET) instead of PLATFORM(WIN_OS), to match the
3186 USE(CFNETWORK) idiom.
3187 - Removed some #includes of windows.h in platform-independent headers.
3188 - Changed #ifdef __APPLE__ to PLATFORM(MAC)
3189 - Fixed some build bustage, including case-sensitive filesystem bustage.
3191 * loader/loader.cpp:
3192 (WebCore::Loader::receivedAllData):
3193 * platform/Cursor.h:
3195 * platform/ResourceLoader.h:
3196 * platform/ResourceLoaderClient.h:
3197 * platform/ResourceLoaderInternal.h:
3198 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
3199 * platform/cfnet/KURLCFNet.cpp: Added.
3200 (WebCore::KURL::createCFURL):
3201 * platform/cfnet/ResourceLoaderCFNet.cpp: Added.
3202 (WebCore::willSendRequest):
3203 (WebCore::didReceiveChallenge):
3204 (WebCore::didCancelChallenge):
3205 (WebCore::didReceiveResponse):
3206 (WebCore::didReceiveData):
3207 (WebCore::didFinishLoading):
3209 (WebCore::willCacheResponse):
3210 (WebCore::addHeadersFromString):
3211 (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
3212 (WebCore::ResourceLoader::~ResourceLoader):
3213 (WebCore::arrayFromFormData):
3214 (WebCore::emptyPerform):
3215 (WebCore::runLoaderThread):
3216 (WebCore::ResourceLoader::start):
3217 (WebCore::ResourceLoader::cancel):
3218 * platform/win/CursorWin.cpp:
3220 2006-08-28 Justin Garcia <justin.garcia@apple.com>
3222 Reviewed by harrison
3224 <rdar://problem/4700341>
3225 REGRESSION: In new mail message, caret isn't placed at end of line after redoing typing
3227 * editing/ReplaceSelectionCommand.cpp:
3228 (WebCore::ReplaceSelectionCommand::doApply): Added a FIXME.
3230 (WebCore::Frame::reappliedEditing): Restore the endingSelection(), not the startingSelection().
3232 2006-08-28 Tim Omernick <timo@apple.com>
3234 Reviewed by John Sullivan.
3236 Part of <rdar://problem/4481553> NetscapeMoviePlugIn example code scripting doesn't work in Firefox (4319)
3237 <http://bugzilla.opendarwin.org/show_bug.cgi?id=4319>: NetscapeMoviePlugIn example code scripting doesn't work
3240 No test cases added, since this is essentially a leak fix.
3242 A brief history of NPP_GetValue(), NPObjects, and reference counting.
3244 Earlier versions of WebKit incorrectly interpreted the NPRuntime reference counting rules. We failed to take
3245 into account the fact that plug-ins are required to retain NPObjects before returning them. This creates several
3246 classes of interesting plug-ins:
3248 1) Plug-ins tested in WebKit and other browsers. These plug-ins may have WebKit-specific workarounds to not retain
3249 the returned NPObject, thus avoiding the memory leak in WebKit.
3251 2) Plug-ins tested only in other browsers. These plug-ins must already retain their NPObjects, since other browsers
3252 implemented the NPRuntime retain/release rules correctly. These plug-ins likely work in WebKit, but probably leak
3253 NPObjects since WebKit adds its own retain in addition to the plug-in's retain.
3255 3) Plug-ins tested only in WebKit, that fail to retain their NPObjects before returning them.
3256 Such plug-ins are guaranteed to crash in other browsers due to the missing expected retain. These plug-ins
3257 work in older WebKits because WebKit did not expect the plug-in to retain the NPObject. Now that our retain
3258 rules match other browsers, these plug-ins may crash due to the difference in retain/release behavior. We could
3259 potentially detect that situation and correct it here, but I consider it a bug that the plug-in did not follow the
3260 documented NPRuntime reference counting rules. Furthermore, it is extremely unlikely that someone would develop
3261 a Netscape plug-in and test it *only* in WebKit. The entire purpose of creating a Netscape plugin is so that it
3262 works in all browsers!
3264 4) Plug-ins tested only in WebKit, that properly retain their NPObjects before returning them.
3265 These plug-ins probably work in other browsers, and leak their NPObjects in older WebKits because of WebKit's
3266 extra retain. A developer of this type of plug-in is probably unaware of the NPObject leak. A more savvy developer
3267 would create a plug-in that fits into category #1.
3269 I am changing our NPP_GetValue() behavior to match Firefox and other browsers -- the plug-in is now expected to retain the
3270 returned NPObject, and the browser is expected to release it when done. This means that plug-ins in category #3 need to be
3271 changed so that they don't crash in Safari. However, such plug-ins already crash in every other browser, so I do not feel that
3272 this needs to be handled specifically by WebKit.
3274 * bridge/mac/FrameMac.mm:
3275 Changed -pluginScriptableObject to -createPluginScriptableObject to make clearer the contract that the method must return a
3276 retained NPObject. Also changed it to return an actual NPObject* instead of a void*. There is only one caller of this method,
3277 and only one implementor. Using void* here is a needless abstraction. It's an NPObject*! Admit it!
3278 (WebCore::getInstanceForView):
3279 Release the NPObject after creating the bindings instance. This is the actual bug fix.
3281 2006-08-28 Alice Liu <alice.liu@apple.com>
3285 Fixed <rdar://problem/4548537> Document.domain and other attributes are blank for an iframe created with document.write
3288 (WebCore::Document::open):
3289 set the document's url to the parent's url and re-located the code that does this to occur before calling the frame's didExplicitOpen()
3291 (WebCore::Frame::didExplicitOpen):
3292 set the frame's url to the document's url
3294 2006-08-28 Brady Eidson <beidson@apple.com>
3296 Reviewed by Adele and Adam
3298 Added an optimization to return early if there's no replacements to be made
3300 * platform/StringImpl.cpp:
3301 (WebCore::StringImpl::replace):
3303 2006-08-28 Nikolas Zimmermann <zimmermann@kde.org>
3305 Reviewed and landed by ap.
3307 Fixes one chunk of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10604
3308 Provide stub implementation of RenderPopupMenuQt.
3311 * platform/qt/RenderPopupMenuQt.cpp: Added.
3312 (WebCore::RenderPopupMenuQt::RenderPopupMenuQt):
3313 (WebCore::RenderPopupMenuQt::~RenderPopupMenuQt):
3314 (WebCore::RenderPopupMenuQt::clear):
3315 (WebCore::RenderPopupMenuQt::populate):
3316 (WebCore::RenderPopupMenuQt::showPopup):
3317 (WebCore::RenderPopupMenuQt::hidePopup):
3318 (WebCore::RenderPopupMenuQt::addSeparator):
3319 (WebCore::RenderPopupMenuQt::addGroupLabel):
3320 (WebCore::RenderPopupMenuQt::addOption):
3321 * platform/qt/RenderPopupMenuQt.h: Added.
3322 * platform/qt/RenderThemeQt.cpp:
3323 (WebCore::RenderThemeQt::systemFont):
3324 (WebCore::RenderThemeQt::createPopupMenu):
3326 2006-08-28 Nikolas Zimmermann <zimmermann@kde.org>
3328 Reviewed and landed by ap.
3330 Fixes one chunk of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10604
3331 Offer QString -> DeprecatedString conversion.
3333 * platform/DeprecatedString.h:
3334 * platform/qt/StringQt.cpp:
3335 (WebCore::DeprecatedString::DeprecatedString):
3337 2006-08-28 Nikolas Zimmermann <zimmermann@kde.org>
3339 Reviewed by Tim Hatcher.
3341 Fixes one chunk of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10604
3343 * platform/qt/RenderThemeQt.cpp:
3344 (WebCore::RenderThemeQt::systemFont):
3345 Remove annoying notImplemented() usage in systemFont()
3347 2006-08-28 David Harrison <harrison@apple.com>
3351 <rdar://problem/3942647> Support AXStyleTextMarkerRangeForTextMarker parameterized attribute
3353 * bridge/mac/WebCoreAXObject.mm:
3354 (-[WebCoreAXObject accessibilityParameterizedAttributeNames]):
3355 Add AXStyleTextMarkerRangeForTextMarker.
3357 (startOfStyleRange):
3359 Return first/last VisiblePosition in range having the same style has the specified VisiblePosition.
3361 (-[WebCoreAXObject doAXStyleTextMarkerRangeForTextMarker:]):
3362 Return AXTextMarkerRange for startOfStyleRange/endOfStyleRange of the specified AXTextMarker.
3364 (-[WebCoreAXObject accessibilityAttributeValue:forParameter:]):
3365 Call doAXStyleTextMarkerRangeForTextMarker for AXStyleTextMarkerRangeForTextMarker.
3367 2006-08-28 David Harrison <harrison@apple.com>
3371 <rdar://problem/4517383> Hide all images used for spacing purpose in AX
3373 * bridge/mac/WebCoreAXObject.mm:
3374 (-[WebCoreAXObject accessibilityIsIgnored]):
3375 Check for one-dimensional image
3376 Check whether rendered image was stretched from one-dimensional file image
3378 2006-08-27 Brady Eidson <beidson@apple.com>
3382 Rewrote StringImpl::replace(UChar, StringImpl*)
3384 * platform/StringImpl.cpp:
3385 (WebCore::StringImpl::replace):
3387 2006-08-27 Sam Weinig <sam.weinig@gmail.com>
3391 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=4624
3392 WebCore needs autogenerated Obj-C DOM bindings
3394 First round of auto-generated Objective C DOM bindings, starting
3397 * DerivedSources.make:
3398 * WebCore.xcodeproj/project.pbxproj:
3399 * bindings/objc/DOM.mm:
3400 (-[DOMNode description]):
3401 (-[DOMNode KJS::Bindings::]):
3402 (-[DOMNode dispatchEvent:]):
3403 (-[DOMNamedNodeMap _initWithNamedNodeMap:]):
3404 (+[DOMNamedNodeMap _namedNodeMapWith:]):
3405 (-[DOMNodeList _initWithNodeList:]):
3406 (+[DOMNodeList _nodeListWith:]):
3407 (-[DOMImplementation _initWithDOMImplementation:]):
3408 (+[DOMImplementation _DOMImplementationWith:]):
3409 (-[DOMImplementation _DOMImplementation]):
3410 (+[DOMDocumentFragment _documentFragmentWith:]):
3411 (-[DOMDocumentFragment _fragment]):
3412 (-[DOMDocument createCSSStyleDeclaration]):
3413 (+[DOMDocument _documentWith:]):
3414 (-[DOMDocument _document]):
3415 (-[DOMDocument _ownerElement]):
3416 (+[DOMAttr _attrWith:]):
3418 (+[DOMDocumentType _documentTypeWith:WebCore::]):
3419 (-[DOMDocumentType WebCore::]):
3420 (+[DOMText _textWith:WebCore::]):
3421 (+[DOMComment _commentWith:WebCore::]):
3422 (+[DOMCDATASection _CDATASectionWith:WebCore::]):
3423 (+[DOMProcessingInstruction _processingInstructionWith:WebCore::]):
3424 (+[DOMEntityReference _entityReferenceWith:WebCore::]):
3425 * bindings/objc/DOMCSS.h:
3426 * bindings/objc/DOMCSS.mm:
3427 * bindings/objc/DOMCore.h:
3428 * bindings/objc/DOMEvents.h:
3429 * bindings/objc/DOMEvents.mm:
3430 * bindings/objc/DOMExtensions.h:
3431 * bindings/objc/DOMHTML.mm:
3432 (+[DOMHTMLDocument _HTMLDocumentWith:WebCore::]):
3433 * bindings/objc/DOMHTMLInternal.h:
3434 * bindings/objc/DOMImplementationFront.h:
3435 * bindings/objc/DOMInternal.h:
3436 * bindings/objc/DOMNode.h: Added.
3437 * bindings/objc/DOMNode.mm: Added.
3438 (-[DOMNode dealloc]):
3439 (-[DOMNode finalize]):
3440 (-[DOMNode nodeName]):
3441 (-[DOMNode nodeValue]):
3442 (-[DOMNode setNodeValue:]):
3443 (-[DOMNode nodeType]):
3444 (-[DOMNode parentNode]):
3445 (-[DOMNode childNodes]):
3446 (-[DOMNode firstChild]):
3447 (-[DOMNode lastChild]):
3448 (-[DOMNode previousSibling]):
3449 (-[DOMNode nextSibling]):
3450 (-[DOMNode attributes]):
3451 (-[DOMNode ownerDocument]):
3452 (-[DOMNode insertBefore::]):
3453 (-[DOMNode replaceChild::]):
3454 (-[DOMNode removeChild:]):
3455 (-[DOMNode appendChild:]):
3456 (-[DOMNode hasChildNodes]):
3457 (-[DOMNode cloneNode:]):
3458 (-[DOMNode normalize]):
3459 (-[DOMNode isSupported::]):
3460 (-[DOMNode namespaceURI]):
3461 (-[DOMNode prefix]):
3462 (-[DOMNode setPrefix:]):
3463 (-[DOMNode localName]):
3464 (-[DOMNode hasAttributes]):
3465 (-[DOMNode isSameNode:]):
3466 (-[DOMNode isEqualNode:]):
3467 (-[DOMNode isDefaultNamespace:]):
3468 (-[DOMNode lookupPrefix:]):
3469 (-[DOMNode lookupNamespaceURI:]):
3470 (-[DOMNode textContent]):
3471 (-[DOMNode setTextContent:]):
3472 (-[DOMNode boundingBox]):
3473 (-[DOMNode lineBoxRects]):
3474 * bindings/objc/DOMObject.h: Added.
3475 * bindings/objc/DOMObject.mm: Added.
3476 (-[DOMObject init]):
3477 (-[DOMObject dealloc]):
3478 (-[DOMObject finalize]):
3479 (-[DOMObject copyWithZone:]):
3480 (-[DOMObject sheet]):
3481 * bindings/objc/DOMPrivate.h:
3482 * bindings/objc/DOMRange.h:
3483 * bindings/objc/DOMStylesheets.h:
3484 * bindings/objc/DOMTraversal.h:
3485 * bindings/objc/DOMViews.h:
3486 * bindings/objc/DOMViews.mm:
3487 * bindings/objc/DOMXPath.h:
3488 * bindings/objc/DOMXPath.mm:
3489 * bindings/scripts/CodeGenerator.pm:
3490 * bindings/scripts/CodeGeneratorJS.pm:
3491 * bindings/scripts/CodeGeneratorObjC.pm: Added.
3493 * dom/CDATASection.idl: Added.
3494 * dom/Comment.idl: Added.
3495 * dom/DOMImplementation.idl:
3498 * dom/EntityReference.idl: Added.
3499 * dom/NamedNodeMap.idl: Added.
3500 * dom/NodeList.idl: Added.
3501 * dom/ProcessingInstruction.idl:
3503 2006-08-27 Nikolas Zimmermann <zimmermann@kde.org>
3507 Fix crash in LayoutTests/css1/font_properties/font.html,
3508 by implementing FontData::smallCapsFontData.
3510 * platform/qt/FontDataQt.cpp:
3511 (WebCore::FontData::platformDestroy):
3512 (WebCore::FontData::smallCapsFontData):
3514 2006-08-27 Brady Eidson <beidson@apple.com>
3518 Plugged a leak in StringImpl::replace()
3520 * platform/StringImpl.cpp:
3521 (WebCore::StringImpl::replace):
3523 2006-08-27 Nikolas Zimmermann <zimmermann@kde.org>
3525 Reviewed and landed by Anders.
3527 Remove most annoying notImplemented() usages and
3528 implement some missing ScrollViewQt functions.
3529 Much nicer output when invoking run-webkit-tests.
3531 * platform/qt/FrameQt.cpp:
3532 (WebCore::FrameQt::saveDocumentState):
3533 (WebCore::FrameQt::restoreDocumentState):
3534 (WebCore::FrameQt::clearUndoRedoOperations):
3535 (WebCore::FrameQt::partClearedInBegin):
3536 * platform/qt/ResourceLoaderManager.cpp:
3537 (WebCore::headerCallback):
3538 (WebCore::ResourceLoaderManager::downloadTimerCallback):
3539 * platform/qt/ScrollViewQt.cpp:
3540 (WebCore::ScrollView::updateContents):
3541 (WebCore::ScrollView::suppressScrollBars):
3542 (WebCore::ScrollView::setStaticBackground):
3543 (WebCore::ScrollView::addChild):
3544 (WebCore::ScrollView::removeChild):
3545 * platform/qt/TemporaryLinkStubs.cpp:
3546 (WebCore::historyContains):
3547 (WebCore::CheckCacheObjectStatus):
3548 (WebCore::CheckIfReloading):
3549 (loadResourceIntoArray):
3550 (WebCore::PlugInInfoStore::supportsMIMEType):
3552 2006-08-27 Nikolas Zimmermann <zimmermann@kde.org>
3554 Reviewed and landed by Anders.
3556 Fix Qt build (add SVGMetaDataElement.cpp to build system)
3560 2006-08-27 Eric Seidel <eric@eseidel.com>
3562 Reviewed by andersca.
3564 No logic changes. Just cleanup.
3566 * ksvg2/svg/SVGAngle.cpp:
3567 (SVGAngle::SVGAngle):
3568 (SVGAngle::unitType):
3569 (SVGAngle::valueAsString):
3570 (SVGAngle::newValueSpecifiedUnits):
3571 (SVGAngle::convertToSpecifiedUnits):
3572 * ksvg2/svg/SVGAngle.h:
3573 * ksvg2/svg/SVGLength.cpp:
3574 (WebCore::SVGLength::unitType):
3575 (WebCore::SVGLength::newValueSpecifiedUnits):
3576 (WebCore::SVGLength::convertToSpecifiedUnits):
3577 (WebCore::SVGLength::updateValue):
3578 (WebCore::SVGLength::updateValueInSpecifiedUnits):
3579 * ksvg2/svg/SVGLength.h:
3580 * platform/BitmapImage.cpp: Removed.
3581 * platform/BitmapImage.h: Removed.
3583 2006-08-27 Brady Eidson <beidson@apple.com>
3587 -Changed all of the commonly used queries to keep around pre-prepared statements and bind
3588 their arguments instead of constructing a new, messy, string appended statement each time
3589 -Changed some code in pruneUnretainedIconsOnStartup regarding transactions
3591 * loader/icon/IconDatabase.cpp:
3592 (WebCore::IconDatabase::IconDatabase): Initializers
3593 (WebCore::IconDatabase::close): Wipe all the preprepared statements
3594 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Better handling of transactions
3595 (WebCore::readySQLStatement): Make sure a preprepared statement is ready to go for a fooQuery()
3596 (WebCore::IconDatabase::pageURLTableIsEmptyQuery): Added a comment
3597 (WebCore::IconDatabase::imageDataForIconURLQuery): Use preprepared statement + binding
3598 (WebCore::IconDatabase::timeStampForIconURLQuery): ditto
3599 (WebCore::IconDatabase::iconURLForPageURLQuery): ditto
3600 (WebCore::IconDatabase::forgetPageURLQuery): ditto
3601 (WebCore::IconDatabase::setIconIDForPageURLQuery): ditto
3602 (WebCore::IconDatabase::getIconIDForIconURLQuery): ditto
3603 (WebCore::IconDatabase::addIconForIconURLQuery): ditto
3604 (WebCore::IconDatabase::hasIconForIconURLQuery): ditto
3605 * loader/icon/IconDatabase.h: Added fooQuery() and *m_fooStatements
3606 * loader/icon/SQLStatement.h:
3607 (WebCore::SQLStatement::database): Added
3609 2006-08-27 Nikolas Zimmermann <zimmermann@kde.org>
3615 * platform/qt/ScrollViewQt.cpp:
3616 (WebCore::ScrollView::setHScrollBarMode):
3617 (WebCore::ScrollView::setVScrollBarMode):
3619 2006-08-27 Rob Buis <buis@kde.org>
3623 http://bugzilla.opendarwin.org/show_bug.cgi?id=10557
3624 KCanvasPath should be replace by platform/Path
3626 Refactoring out the KCanvasPath class.
3629 * WebCore.xcodeproj/project.pbxproj:
3630 * kcanvas/KCanvasCreator.cpp:
3631 (WebCore::KCanvasCreator::createRoundedRectangle):
3632 (WebCore::KCanvasCreator::createRectangle):
3633 (WebCore::KCanvasCreator::createEllipse):
3634 (WebCore::KCanvasCreator::createCircle):
3635 (WebCore::KCanvasCreator::createLine):
3636 * kcanvas/KCanvasCreator.h:
3637 * kcanvas/KCanvasPath.cpp: Removed.
3638 * kcanvas/KCanvasPath.h: Removed.
3639 * kcanvas/KCanvasResources.cpp:
3640 (WebCore::operator<<):
3641 (WebCore::KCanvasResource::clients):
3642 (WebCore::KCanvasResource::invalidate):
3643 (WebCore::KCanvasClipper::addClipData):
3644 * kcanvas/KCanvasResources.h:
3645 (WebCore::KCClipData::windRule):
3646 (WebCore::KCClipDataList::KCClipDataList):
3647 (WebCore::KCClipDataList::addPath):
3648 * kcanvas/KCanvasTreeDebug.cpp:
3649 (WebCore::operator<<):
3650 * kcanvas/RenderPath.cpp:
3651 (WebCore::RenderPath::fillContains):
3652 (WebCore::RenderPath::relativeBBox):
3653 (WebCore::RenderPath::setPath):
3654 (WebCore::RenderPath::path):
3655 (WebCore::RenderPath::paint):
3656 (WebCore::RenderPath::nodeAtPoint):
3657 * kcanvas/RenderPath.h:
3658 * kcanvas/device/KRenderingDevice.h:
3659 * kcanvas/device/KRenderingFillPainter.cpp:
3660 (WebCore::KRenderingFillPainter::fillRule):
3661 (WebCore::KRenderingFillPainter::setFillRule):
3662 * kcanvas/device/KRenderingFillPainter.h:
3663 * kcanvas/device/qt/KCanvasClipperQt.cpp:
3664 (WebCore::KCanvasClipperQt::applyClip):
3665 * kcanvas/device/qt/KCanvasPathQt.cpp: Removed.
3666 * kcanvas/device/qt/KCanvasPathQt.h: Removed.
3667 * kcanvas/device/qt/KRenderingDeviceQt.cpp:
3668 (WebCore::KRenderingDeviceContextQt::addPath):
3669 (WebCore::KRenderingDeviceContextQt::setFillRule):
3670 (WebCore::KRenderingDeviceQt::createItem):
3671 * kcanvas/device/qt/KRenderingDeviceQt.h:
3672 * kcanvas/device/qt/RenderPathQt.cpp:
3673 (WebCore::RenderPathQt::drawMarkersIfNeeded):
3674 (WebCore::RenderPathQt::strokeContains):
3675 (WebCore::getPathStroke):
3676 (WebCore::RenderPathQt::strokeBBox):
3677 * kcanvas/device/qt/RenderPathQt.h:
3678 * kcanvas/device/quartz/KCanvasItemQuartz.h:
3679 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
3680 (WebCore::KCanvasItemQuartz::drawMarkersIfNeeded):
3681 (WebCore::KCanvasItemQuartz::strokeBBox):
3682 (WebCore::KCanvasItemQuartz::strokeContains):
3683 * kcanvas/device/quartz/KCanvasPathQuartz.h: Removed.
3684 * kcanvas/device/quartz/KCanvasPathQuartz.mm: Removed.
3685 * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
3686 (WebCore::KCanvasClipperQuartz::applyClip):
3687 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
3688 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
3689 (WebCore::KRenderingDeviceContextQuartz::addPath):
3690 (WebCore::KRenderingDeviceQuartz::createItem):
3691 * kcanvas/device/quartz/QuartzSupport.h:
3692 * kcanvas/device/quartz/QuartzSupport.mm:
3693 (WebCore::scratchContext):
3694 (WebCore::strokeBoundingBox):
3695 (WebCore::pathContainsPoint):
3696 * ksvg2/css/SVGCSSParser.cpp:
3697 (WebCore::CSSParser::parseSVGValue):
3698 * ksvg2/css/SVGCSSStyleSelector.cpp:
3699 (WebCore::CSSStyleSelector::applySVGProperty):
3700 * ksvg2/css/SVGRenderStyle.h:
3701 (WebCore::SVGRenderStyle::InheritedFlags::):
3702 * ksvg2/css/SVGRenderStyleDefs.h:
3703 * ksvg2/misc/KCanvasRenderingStyle.cpp:
3704 (WebCore::KSVGPainterFactory::fillPainter):
3705 * ksvg2/svg/SVGCircleElement.cpp:
3706 (SVGCircleElement::toPathData):
3707 * ksvg2/svg/SVGCircleElement.h:
3708 * ksvg2/svg/SVGClipPathElement.cpp:
3709 (SVGClipPathElement::canvasResource):
3710 * ksvg2/svg/SVGEllipseElement.cpp:
3711 (WebCore::SVGEllipseElement::toPathData):
3712 * ksvg2/svg/SVGEllipseElement.h:
3713 * ksvg2/svg/SVGGradientElement.cpp:
3714 (SVGGradientElement::notifyAttributeChange):
3715 * ksvg2/svg/SVGImageElement.cpp:
3716 * ksvg2/svg/SVGLineElement.cpp:
3717 (SVGLineElement::toPathData):
3718 * ksvg2/svg/SVGLineElement.h:
3719 * ksvg2/svg/SVGMaskElement.cpp:
3720 * ksvg2/svg/SVGPathElement.cpp:
3721 (WebCore::SVGPathElement::toPathData):
3722 * ksvg2/svg/SVGPathElement.h:
3723 * ksvg2/svg/SVGPatternElement.cpp:
3724 (WebCore::SVGPatternElement::notifyClientsToRepaint):
3725 * ksvg2/svg/SVGPolygonElement.cpp:
3726 (SVGPolygonElement::toPathData):
3727 * ksvg2/svg/SVGPolygonElement.h:
3728 * ksvg2/svg/SVGPolylineElement.cpp:
3729 (SVGPolylineElement::toPathData):
3730 * ksvg2/svg/SVGPolylineElement.h:
3731 * ksvg2/svg/SVGRectElement.cpp:
3732 (WebCore::SVGRectElement::toPathData):
3733 * ksvg2/svg/SVGRectElement.h:
3734 * ksvg2/svg/SVGStyledElement.cpp:
3735 (WebCore::SVGStyledElement::createRenderer):
3736 * ksvg2/svg/SVGStyledElement.h:
3737 (WebCore::SVGStyledElement::toPathData):
3738 * ksvg2/svg/SVGTextContentElement.cpp:
3739 * ksvg2/svg/SVGTextElement.cpp:
3742 (WebCore::Path::setWindingRule):
3743 (WebCore::Path::windingRule):
3744 * platform/cg/PathCG.cpp:
3745 (WebCore::Path::contains):
3746 (WebCore::Path::isEmpty):
3747 (WebCore::CGPathToCFStringApplierFunction):
3748 (WebCore::CFStringFromCGPath):
3749 (WebCore::Path::debugString):
3750 * platform/qt/FrameQt.cpp:
3751 (WebCore::FrameQt::openURL):
3752 * platform/qt/PathQt.cpp:
3753 (WebCore::Path::contains):
3754 (WebCore::Path::isEmpty):
3755 (WebCore::Path::debugString):
3757 2006-08-26 Eric Seidel <eric@eseidel.com>
3761 pointer-events attribute does not work.
3762 http://bugzilla.opendarwin.org/show_bug.cgi?id=10415
3764 * kcanvas/RenderPath.cpp:
3765 (WebCore::RenderPath::pointerEventsHitRules): new function to contain pointer-events hit logic
3766 (WebCore::RenderPath::nodeAtPoint): respect pointer-events property
3767 * kcanvas/RenderPath.h:
3768 (WebCore::RenderPath::PointerEventsHitRules::PointerEventsHitRules):
3769 * ksvg2/css/SVGCSSParser.cpp:
3770 (WebCore::CSSParser::parseSVGValue):
3771 * ksvg2/svg/SVGPaint.cpp: Fix this to use a real enum value
3772 (WebCore::SVGPaint::SVGPaint):
3773 (WebCore::SVGPaint::paintType):
3774 (WebCore::SVGPaint::uri):
3775 (WebCore::SVGPaint::setUri):
3776 (WebCore::SVGPaint::setPaint):
3777 * ksvg2/svg/SVGPaint.h:
3779 2006-08-27 Rob Buis <buis@kde.org>
3783 http://bugzilla.opendarwin.org/show_bug.cgi?id=10558
3784 SVG should have support for <metadata> element
3786 Add support for metadata tag.
3788 * DerivedSources.make:
3789 * WebCore.xcodeproj/project.pbxproj:
3790 * ksvg2/bindings/js/JSSVGElementWrapperFactory.cpp:
3791 * ksvg2/svg/SVGMetadataElement.cpp: Added.
3792 (SVGMetadataElement::SVGMetadataElement):
3793 (SVGMetadataElement::~SVGMetadataElement):
3794 * ksvg2/svg/SVGMetadataElement.h: Added.
3795 * ksvg2/svg/SVGMetadataElement.idl: Added.
3796 * ksvg2/svg/svgtags.in:
3798 2006-08-26 Nikolas Zimmermann <zimmermann@kde.org>
3802 Daily Qt build fixes :-)
3804 * platform/qt/GraphicsContextQt.cpp:
3805 (WebCore::GraphicsContext::drawConvexPolygon):
3806 * platform/qt/ImageQt.cpp:
3807 (WebCore::Image::initPlatformData):
3808 (WebCore::Image::invalidatePlatformData):
3809 (WebCore::Image::loadPlatformResource):
3811 2006-08-26 David Hyatt <hyatt@apple.com>
3813 Fix the ifdef in Path.h to be CG.
3817 2006-08-26 David Hyatt <hyatt@apple.com>
3819 Fix Mac build bustage (lots of float/int confusion). I am not sure
3820 whether rounding was desired or not... this is just a band-aid to get
3821 the build working again.
3823 * rendering/RenderThemeMac.mm:
3824 (WebCore::RenderThemeMac::paintMenuListButtonGradients):
3825 (WebCore::RenderThemeMac::paintMenuListButton):
3826 (WebCore::RenderThemeMac::adjustMenuListButtonStyle):
3828 2006-08-25 David Hyatt <hyatt@apple.com>
3830 More refactoring of image to disentangle graphics (e.g., Cairo) from
3831 platform (e.g., Windows).
3833 * WebCore.vcproj/WebCore/WebCore.vcproj:
3834 Add ImageWin to project.
3837 (WebCore::Cache::init):
3838 * loader/icon/IconDataCache.cpp:
3839 (WebCore::IconDataCache::loadImageFromResource):
3840 Renamed loadResource to loadPlatformResource to try to make it more clear
3841 that this call is implemented on each OS (and not by graphics libraries).
3843 * platform/Image.cpp:
3844 (WebCore::Image::Image):
3845 (WebCore::Image::~Image):
3846 (WebCore::Image::invalidateData):
3847 (WebCore::Image::size):
3848 (WebCore::Image::setData):
3849 (WebCore::Image::setNativeData):
3850 Fix up the PDF code to not be considered platform data any more, since
3851 PDF rendering is not for a specific OS.
3853 Renamed the methods that set OS-specific data (like NSImage) to PlatformData
3854 instead of NativeData.
3857 Shifted the PDF members into CG defines. Made CGImageRef a CG define.
3858 Renamed methods to reflect that they are OS-specific and not
3859 graphics-library-specific.
3861 * platform/cairo/ImageCairo.cpp:
3862 Removed the platform data methods. Other platforms besides Windows that
3863 use Cairo will need to account for this change by adding these methods
3864 to their OS Image***.cpp file.
3866 * platform/cg/ImageCG.cpp:
3867 (WebCore::Image::drawTiled):
3868 Add FIXMEs to the wkpattern stuff.
3870 * platform/cg/PDFDocumentImage.cpp:
3871 Shouldn't have #imports in .cpp.
3873 * platform/mac/ImageMac.mm:
3874 (WebCore::Image::initPlatformData):
3875 (WebCore::Image::invalidatePlatformData):
3876 (WebCore::Image::loadPlatformResource):
3877 (WebCore::Image::getTIFFRepresentation):
3878 Add the platform data initializers to the Mac Image file. Move the
3879 TIFF representation there as well, since this is only used by Mac code.
3881 * platform/win/ImageWin.cpp: Added.
3882 (WebCore::Image::initPlatformData):
3883 (WebCore::Image::invalidatePlatformData):
3884 (WebCore::Image::loadPlatformResource):
3885 (WebCore::Image::supportsType):
3886 Similar work for Windows. Add stubs for possible future HBITMAP returns
3887 in the platform data methods.
3889 * rendering/RenderLayer.cpp:
3890 (WebCore::RenderLayer::paintResizeControl):
3891 * rendering/RenderThemeMac.mm:
3892 (WebCore::RenderThemeMac::paintResizeControl):
3893 loadResource -> loadPlatformResource
3895 2006-08-26 Adam Roben <aroben@apple.com>
3897 Rubber-stamped by Adele.
3901 * platform/cairo/GraphicsContextCairo.cpp:
3902 (WebCore::GraphicsContext::drawConvexPolygon):
3904 2006-08-25 Adele Peterson <adele@apple.com>
3906 Patch by Francisco, Reviewed by me.
3908 Preparation for switch to new text field implementation of password field.
3910 Added -webkit-text-security property.
3912 Tests: updated fast/css/computed-style-expected.txt
3914 * css/CSSPropertyNames.in: Added -webkit-text-security.
3915 * css/CSSComputedStyleDeclaration.cpp:
3917 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Added cases for textSecurity.
3918 * css/cssparser.cpp: (WebCore::CSSParser::parseValue): ditto.
3919 * css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::applyProperty): ditto.
3920 * css/html4.css: Added style for password field to use -webkit-text-security.
3922 * html/HTMLInputElement.cpp: Check appearance property to decide which renderer to use.
3923 (WebCore::HTMLInputElement::selectionStart):
3924 (WebCore::HTMLInputElement::selectionEnd):
3925 (WebCore::HTMLInputElement::setSelectionStart):
3926 (WebCore::HTMLInputElement::setSelectionEnd):
3927 (WebCore::HTMLInputElement::select):
3928 (WebCore::HTMLInputElement::setSelectionRange):
3929 (WebCore::HTMLInputElement::createRenderer):
3930 * html/HTMLInputElement.h: (WebCore::HTMLInputElement::isNonWidgetTextField): Added check for password.
3932 * platform/StringImpl.cpp: (WebCore::StringImpl::secure): Added. Converts a string to replace
3933 characters with one character, like a bullet.
3934 * platform/StringImpl.h:
3936 * rendering/RenderStyle.cpp:
3937 (WebCore::StyleCSS3InheritedData::StyleCSS3InheritedData): Initialize textSecurity.
3938 (WebCore::RenderStyle::diff): Added case for textSecurity.
3939 * rendering/RenderStyle.h:
3941 (WebCore::RenderStyle::textSecurity): Added.
3942 (WebCore::RenderStyle::setTextSecurity): Added.
3943 (WebCore::RenderStyle::initialTextSecurity): Added.
3944 * rendering/RenderText.cpp:
3945 (WebCore::RenderText::setStyle): Added case for textSecurity.
3946 (WebCore::RenderText::setText): ditto.
3948 2006-08-25 Adele Peterson <adele@apple.com>
3952 Enable styling for popup menus. Also fixed baseline calculation for buttons and selects.
3954 Tests: fast/forms/select-baseline.html
3955 fast/borders/borderRadiusInvalidColor.html
3956 updated: fast/forms/select-style-expected.txt and more...
3958 * css/html4.css: Added style rules for styled select elements.
3960 * platform/GraphicsContext.h: Added argument for antialiasing.
3961 * platform/cg/GraphicsContextCG.cpp: (WebCore::GraphicsContext::drawConvexPolygon): ditto.
3962 * platform/cairo/GraphicsContextCairo.cpp: (WebCore::GraphicsContext::drawConvexPolygon): ditto.
3964 * rendering/RenderObject.cpp:
3965 (WebCore::RenderObject::drawBorderArc): Added textColor argument so this can be used when the border color is invalid.
3966 (WebCore::RenderObject::drawBorder): Removed invalidisInvert since its dead code
3967 (any callers that set this to true were already ensuring that their color was valid).
3968 Updated drawConvexPolygon call to use FloatPoints instead of IntPoints.
3969 (WebCore::RenderObject::paintBorder): Updated to remove invalidisInvert argument from drawBorder call.
3970 (WebCore::RenderObject::paintOutline): ditto.
3971 * rendering/RenderFlow.cpp: (WebCore::RenderFlow::paintOutlineForLine): ditto.
3972 * rendering/RenderObject.h: Updated arguments for drawBorder and drawBorderArc.
3974 * rendering/RenderBlock.cpp: (WebCore::RenderBlock::getBaselineOfLastLineBox): Changed isRootLineBox argument to true when setting line height.
3975 Added case for when there's no children to check for hasLineIfEmpty.
3976 * rendering/RenderBlock.h:
3977 * rendering/bidi.cpp: (WebCore::RenderBlock::layoutInlineChildren): Changed isRootLineBox argument to true when setting line height.
3978 * rendering/RenderButton.h: (WebCore::RenderButton::hasLineIfEmpty): Added so buttons always get a line height.
3979 * rendering/RenderMenuList.h: (WebCore::RenderMenuList::hasLineIfEmpty): ditto.
3980 * rendering/RenderFlexibleBox.cpp:
3981 (WebCore::RenderFlexibleBox::layoutHorizontalBox): Added code to check hasLineIfEmpty to give flex boxes line height.
3982 (WebCore::RenderFlexibleBox::layoutVerticalBox): ditto.
3984 * css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::adjustRenderStyle): Moved the appearance adjustment code into adjust style.
3985 * rendering/RenderBox.cpp: (WebCore::RenderBox::paintBoxDecorations): Lets the theme paint "decorations", like the arrow control and gradients
3986 immediately after painting the background.
3988 * rendering/RenderTheme.cpp:
3989 (WebCore::RenderTheme::adjustStyle): This now checks whether the control is styled, and adjusts the appearance property appropriately.
3990 For styled selects, instead of setting the appearance to none, which is what we do for other styled controls, we set the appearance
3991 to MenulistButtonAppearance, which indicates that we will draw the arrow controls and button appearance in the engine.
3992 (WebCore::RenderTheme::paintDecorations): Added. Paints MenulistButtonAppearance in a different function,
3993 so the arrow control will draw at the right time (after the background).
3994 (WebCore::RenderTheme::paint): Added case for MenulistButtonAppearance.
3995 (WebCore::RenderTheme::paintBorderOnly): ditto.
3996 (WebCore::RenderTheme::isControlContainer): Removed cases for MenuListAppearance and MenulistButtonAppearance since the baseline is no longer provided by the theme.
3997 (WebCore::RenderTheme::adjustMenuListButtonStyle): Added.
3998 * rendering/RenderTheme.h: (WebCore::RenderTheme::paintMenuListButton): Added.
4000 * rendering/RenderThemeMac.h:
4001 * rendering/RenderThemeMac.mm:
4002 (WebCore::RenderThemeMac::isControlStyled): Removed code that made selects unstyle-able.
4003 (WebCore::RenderThemeMac::baselinePosition): Removed cases for MenuListAppearance and MenulistButtonAppearance.
4004 (WebCore::RenderThemeMac::popupButtonPadding): Added top and bottom padding so empty popups have the right baseline.
4005 (WebCore::TopGradientInterpolate): Added.
4006 (WebCore::BottomGradientInterpolate): Added.
4007 (WebCore::MainGradientInterpolate): Added.
4008 (WebCore::RenderThemeMac::paintMenuListButtonGradients): Added. Draws gradients for styled popup menu button appearance.
4009 (WebCore::RenderThemeMac::paintMenuListButton): Calls paintMenuListButtonGradients, and draws arrow control.
4010 (WebCore::RenderThemeMac::adjustMenuListButtonStyle): Added to set padding and border radius to account for the arrow control size and font size.
4012 2006-08-25 Brady Eidson <beidson@apple.com>
4016 Changed some time()-related code to be more platform independent
4018 * loader/icon/IconDatabase.cpp:
4019 (WebCore::IconDatabase::isIconExpiredForIconURL):
4020 (WebCore::IconDatabase::getOrCreateIconDataCache):
4021 (WebCore::IconDatabase::setIconDataForIconURL):
4023 2006-08-25 David Harrison <harrison@apple.com>
4027 <rdar://problem/4416432> Radio buttons and Checkboxes in AXWebAreas don't fill in their AXTitle attribute
4029 * bridge/mac/WebCoreAXObject.mm:
4031 New. Returns the HTMLLabelElement, if any, for the specified Element.
4033 (-[WebCoreAXObject title]):
4034 For input elements, return the innerHTML() of the labelForElement().
4036 2006-08-25 Brady Eidson <beidson@apple.com>
4038 Reviewed by Tim Hatcher
4040 Changed some debugging-only code to be more platform independent
4042 * WebCore.xcodeproj/project.pbxproj:
4043 * loader/icon/IconDatabase.cpp:
4044 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup):
4045 (WebCore::IconDatabase::syncDatabase):
4047 2006-08-25 Nikolas Zimmermann <zimmermann@kde.org>
4049 Reviewed/landed by Adam.
4051 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10561
4052 Qt platform build fixes.
4054 * platform/qt/FrameQt.h:
4055 * platform/qt/ScreenQt.cpp:
4056 (WebCore::qwidgetForPage):
4057 (WebCore::screenRect):
4058 (WebCore::screenDepth):
4059 (WebCore::usableScreenRect):
4060 * platform/qt/TemporaryLinkStubs.cpp:
4061 (WebCore::screenDepthPerComponent):
4062 (WebCore::screenIsMonochrome):
4063 * platform/qt/WidgetQt.cpp:
4065 2006-08-25 Nikolas Zimmermann <zimmermann@kde.org>
4067 Reviewed/landed by Adam.
4069 Finally fix font caching. WebKit+Qt now works
4070 out of the box without any further patches :-)
4072 * platform/qt/FontDataQt.cpp:
4073 (WebCore::FontData::platformDestroy):
4074 * platform/qt/FontPlatformData.h:
4075 * platform/qt/FontPlatformDataQt.cpp:
4076 (WebCore::FontPlatformData::FontPlatformData):
4077 (WebCore::FontPlatformData::isFixedPitch):
4078 (WebCore::FontPlatformData::font):
4079 (WebCore::FontPlatformData::fontPtr):
4080 (WebCore::FontPlatformData::hash):
4081 (WebCore::FontPlatformData::operator==):
4083 2006-08-25 Nikolas Zimmermann <zimmermann@kde.org>
4085 Reviewed/landed by Adam.
4087 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10559
4088 Confirm to WebKit style guide - last fixes :-)
4090 * platform/ResourceLoaderClient.h:
4091 * platform/qt/ComboBoxQt.cpp:
4092 * platform/qt/FrameQt.cpp:
4093 (WebCore::doScroll):
4094 (WebCore::FrameQt::FrameQt):
4095 (WebCore::FrameQt::openURL):
4096 (WebCore::FrameQt::submitForm):
4097 (WebCore::FrameQt::setTitle):
4098 (WebCore::FrameQt::passSubframeEventToSubframe):
4099 (WebCore::FrameQt::registerCommandForUndo):
4100 (WebCore::FrameQt::registerCommandForRedo):
4101 (WebCore::FrameQt::keyEvent):
4102 (WebCore::FrameQt::setFrameGeometry):
4103 * platform/qt/GlyphMapQt.cpp:
4104 (WebCore::GlyphMap::fillPage):
4105 * platform/qt/GraphicsContextQt.cpp:
4106 (WebCore::toQtCompositionMode):
4107 (WebCore::toQtLineCap):
4108 (WebCore::toQtLineJoin):
4109 (WebCore::TextShadow::TextShadow):
4110 (WebCore::GraphicsContextPlatformPrivate::p):
4111 * platform/qt/ImageQt.cpp:
4112 (WebCore::FrameData::clear):
4113 (WebCore::Image::supportsType):
4114 * platform/qt/IntSizeQt.cpp:
4115 * platform/qt/LineEditQt.cpp:
4116 * platform/qt/ListBoxQt.cpp:
4117 * platform/qt/PageQt.cpp:
4118 (WebCore::Page::windowRect):
4119 * platform/qt/PathQt.cpp:
4120 (WebCore::Path::~Path):
4121 * platform/qt/ResourceLoaderCurl.cpp:
4122 (WebCore::ResourceLoader::assembleResponseHeaders):
<