1 2006-08-27 Rob Buis <buis@kde.org>
5 http://bugzilla.opendarwin.org/show_bug.cgi?id=10558
6 SVG should have support for <metadata> element
8 Add support for metadata tag.
10 * DerivedSources.make:
11 * WebCore.xcodeproj/project.pbxproj:
12 * ksvg2/bindings/js/JSSVGElementWrapperFactory.cpp:
13 * ksvg2/svg/SVGMetadataElement.cpp: Added.
14 (SVGMetadataElement::SVGMetadataElement):
15 (SVGMetadataElement::~SVGMetadataElement):
16 * ksvg2/svg/SVGMetadataElement.h: Added.
17 * ksvg2/svg/SVGMetadataElement.idl: Added.
18 * ksvg2/svg/svgtags.in:
20 2006-08-26 Nikolas Zimmermann <zimmermann@kde.org>
24 Daily Qt build fixes :-)
26 * platform/qt/GraphicsContextQt.cpp:
27 (WebCore::GraphicsContext::drawConvexPolygon):
28 * platform/qt/ImageQt.cpp:
29 (WebCore::Image::initPlatformData):
30 (WebCore::Image::invalidatePlatformData):
31 (WebCore::Image::loadPlatformResource):
33 2006-08-26 David Hyatt <hyatt@apple.com>
35 Fix the ifdef in Path.h to be CG.
39 2006-08-26 David Hyatt <hyatt@apple.com>
41 Fix Mac build bustage (lots of float/int confusion). I am not sure
42 whether rounding was desired or not... this is just a band-aid to get
43 the build working again.
45 * rendering/RenderThemeMac.mm:
46 (WebCore::RenderThemeMac::paintMenuListButtonGradients):
47 (WebCore::RenderThemeMac::paintMenuListButton):
48 (WebCore::RenderThemeMac::adjustMenuListButtonStyle):
50 2006-08-25 David Hyatt <hyatt@apple.com>
52 More refactoring of image to disentangle graphics (e.g., Cairo) from
53 platform (e.g., Windows).
55 * WebCore.vcproj/WebCore/WebCore.vcproj:
56 Add ImageWin to project.
59 (WebCore::Cache::init):
60 * loader/icon/IconDataCache.cpp:
61 (WebCore::IconDataCache::loadImageFromResource):
62 Renamed loadResource to loadPlatformResource to try to make it more clear
63 that this call is implemented on each OS (and not by graphics libraries).
66 (WebCore::Image::Image):
67 (WebCore::Image::~Image):
68 (WebCore::Image::invalidateData):
69 (WebCore::Image::size):
70 (WebCore::Image::setData):
71 (WebCore::Image::setNativeData):
72 Fix up the PDF code to not be considered platform data any more, since
73 PDF rendering is not for a specific OS.
75 Renamed the methods that set OS-specific data (like NSImage) to PlatformData
76 instead of NativeData.
79 Shifted the PDF members into CG defines. Made CGImageRef a CG define.
80 Renamed methods to reflect that they are OS-specific and not
81 graphics-library-specific.
83 * platform/cairo/ImageCairo.cpp:
84 Removed the platform data methods. Other platforms besides Windows that
85 use Cairo will need to account for this change by adding these methods
86 to their OS Image***.cpp file.
88 * platform/cg/ImageCG.cpp:
89 (WebCore::Image::drawTiled):
90 Add FIXMEs to the wkpattern stuff.
92 * platform/cg/PDFDocumentImage.cpp:
93 Shouldn't have #imports in .cpp.
95 * platform/mac/ImageMac.mm:
96 (WebCore::Image::initPlatformData):
97 (WebCore::Image::invalidatePlatformData):
98 (WebCore::Image::loadPlatformResource):
99 (WebCore::Image::getTIFFRepresentation):
100 Add the platform data initializers to the Mac Image file. Move the
101 TIFF representation there as well, since this is only used by Mac code.
103 * platform/win/ImageWin.cpp: Added.
104 (WebCore::Image::initPlatformData):
105 (WebCore::Image::invalidatePlatformData):
106 (WebCore::Image::loadPlatformResource):
107 (WebCore::Image::supportsType):
108 Similar work for Windows. Add stubs for possible future HBITMAP returns
109 in the platform data methods.
111 * rendering/RenderLayer.cpp:
112 (WebCore::RenderLayer::paintResizeControl):
113 * rendering/RenderThemeMac.mm:
114 (WebCore::RenderThemeMac::paintResizeControl):
115 loadResource -> loadPlatformResource
117 2006-08-26 Adam Roben <aroben@apple.com>
119 Rubber-stamped by Adele.
123 * platform/cairo/GraphicsContextCairo.cpp:
124 (WebCore::GraphicsContext::drawConvexPolygon):
126 2006-08-25 Adele Peterson <adele@apple.com>
128 Patch by Francisco, Reviewed by me.
130 Preparation for switch to new text field implementation of password field.
132 Added -webkit-text-security property.
134 Tests: updated fast/css/computed-style-expected.txt
136 * css/CSSPropertyNames.in: Added -webkit-text-security.
137 * css/CSSComputedStyleDeclaration.cpp:
139 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Added cases for textSecurity.
140 * css/cssparser.cpp: (WebCore::CSSParser::parseValue): ditto.
141 * css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::applyProperty): ditto.
142 * css/html4.css: Added style for password field to use -webkit-text-security.
144 * html/HTMLInputElement.cpp: Check appearance property to decide which renderer to use.
145 (WebCore::HTMLInputElement::selectionStart):
146 (WebCore::HTMLInputElement::selectionEnd):
147 (WebCore::HTMLInputElement::setSelectionStart):
148 (WebCore::HTMLInputElement::setSelectionEnd):
149 (WebCore::HTMLInputElement::select):
150 (WebCore::HTMLInputElement::setSelectionRange):
151 (WebCore::HTMLInputElement::createRenderer):
152 * html/HTMLInputElement.h: (WebCore::HTMLInputElement::isNonWidgetTextField): Added check for password.
154 * platform/StringImpl.cpp: (WebCore::StringImpl::secure): Added. Converts a string to replace
155 characters with one character, like a bullet.
156 * platform/StringImpl.h:
158 * rendering/RenderStyle.cpp:
159 (WebCore::StyleCSS3InheritedData::StyleCSS3InheritedData): Initialize textSecurity.
160 (WebCore::RenderStyle::diff): Added case for textSecurity.
161 * rendering/RenderStyle.h:
163 (WebCore::RenderStyle::textSecurity): Added.
164 (WebCore::RenderStyle::setTextSecurity): Added.
165 (WebCore::RenderStyle::initialTextSecurity): Added.
166 * rendering/RenderText.cpp:
167 (WebCore::RenderText::setStyle): Added case for textSecurity.
168 (WebCore::RenderText::setText): ditto.
170 2006-08-25 Adele Peterson <adele@apple.com>
174 Enable styling for popup menus. Also fixed baseline calculation for buttons and selects.
176 Tests: fast/forms/select-baseline.html
177 fast/borders/borderRadiusInvalidColor.html
178 updated: fast/forms/select-style-expected.txt and more...
180 * css/html4.css: Added style rules for styled select elements.
182 * platform/GraphicsContext.h: Added argument for antialiasing.
183 * platform/cg/GraphicsContextCG.cpp: (WebCore::GraphicsContext::drawConvexPolygon): ditto.
184 * platform/cairo/GraphicsContextCairo.cpp: (WebCore::GraphicsContext::drawConvexPolygon): ditto.
186 * rendering/RenderObject.cpp:
187 (WebCore::RenderObject::drawBorderArc): Added textColor argument so this can be used when the border color is invalid.
188 (WebCore::RenderObject::drawBorder): Removed invalidisInvert since its dead code
189 (any callers that set this to true were already ensuring that their color was valid).
190 Updated drawConvexPolygon call to use FloatPoints instead of IntPoints.
191 (WebCore::RenderObject::paintBorder): Updated to remove invalidisInvert argument from drawBorder call.
192 (WebCore::RenderObject::paintOutline): ditto.
193 * rendering/RenderFlow.cpp: (WebCore::RenderFlow::paintOutlineForLine): ditto.
194 * rendering/RenderObject.h: Updated arguments for drawBorder and drawBorderArc.
196 * rendering/RenderBlock.cpp: (WebCore::RenderBlock::getBaselineOfLastLineBox): Changed isRootLineBox argument to true when setting line height.
197 Added case for when there's no children to check for hasLineIfEmpty.
198 * rendering/RenderBlock.h:
199 * rendering/bidi.cpp: (WebCore::RenderBlock::layoutInlineChildren): Changed isRootLineBox argument to true when setting line height.
200 * rendering/RenderButton.h: (WebCore::RenderButton::hasLineIfEmpty): Added so buttons always get a line height.
201 * rendering/RenderMenuList.h: (WebCore::RenderMenuList::hasLineIfEmpty): ditto.
202 * rendering/RenderFlexibleBox.cpp:
203 (WebCore::RenderFlexibleBox::layoutHorizontalBox): Added code to check hasLineIfEmpty to give flex boxes line height.
204 (WebCore::RenderFlexibleBox::layoutVerticalBox): ditto.
206 * css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::adjustRenderStyle): Moved the appearance adjustment code into adjust style.
207 * rendering/RenderBox.cpp: (WebCore::RenderBox::paintBoxDecorations): Lets the theme paint "decorations", like the arrow control and gradients
208 immediately after painting the background.
210 * rendering/RenderTheme.cpp:
211 (WebCore::RenderTheme::adjustStyle): This now checks whether the control is styled, and adjusts the appearance property appropriately.
212 For styled selects, instead of setting the appearance to none, which is what we do for other styled controls, we set the appearance
213 to MenulistButtonAppearance, which indicates that we will draw the arrow controls and button appearance in the engine.
214 (WebCore::RenderTheme::paintDecorations): Added. Paints MenulistButtonAppearance in a different function,
215 so the arrow control will draw at the right time (after the background).
216 (WebCore::RenderTheme::paint): Added case for MenulistButtonAppearance.
217 (WebCore::RenderTheme::paintBorderOnly): ditto.
218 (WebCore::RenderTheme::isControlContainer): Removed cases for MenuListAppearance and MenulistButtonAppearance since the baseline is no longer provided by the theme.
219 (WebCore::RenderTheme::adjustMenuListButtonStyle): Added.
220 * rendering/RenderTheme.h: (WebCore::RenderTheme::paintMenuListButton): Added.
222 * rendering/RenderThemeMac.h:
223 * rendering/RenderThemeMac.mm:
224 (WebCore::RenderThemeMac::isControlStyled): Removed code that made selects unstyle-able.
225 (WebCore::RenderThemeMac::baselinePosition): Removed cases for MenuListAppearance and MenulistButtonAppearance.
226 (WebCore::RenderThemeMac::popupButtonPadding): Added top and bottom padding so empty popups have the right baseline.
227 (WebCore::TopGradientInterpolate): Added.
228 (WebCore::BottomGradientInterpolate): Added.
229 (WebCore::MainGradientInterpolate): Added.
230 (WebCore::RenderThemeMac::paintMenuListButtonGradients): Added. Draws gradients for styled popup menu button appearance.
231 (WebCore::RenderThemeMac::paintMenuListButton): Calls paintMenuListButtonGradients, and draws arrow control.
232 (WebCore::RenderThemeMac::adjustMenuListButtonStyle): Added to set padding and border radius to account for the arrow control size and font size.
234 2006-08-25 Brady Eidson <beidson@apple.com>
238 Changed some time()-related code to be more platform independent
240 * loader/icon/IconDatabase.cpp:
241 (WebCore::IconDatabase::isIconExpiredForIconURL):
242 (WebCore::IconDatabase::getOrCreateIconDataCache):
243 (WebCore::IconDatabase::setIconDataForIconURL):
245 2006-08-25 David Harrison <harrison@apple.com>
249 <rdar://problem/4416432> Radio buttons and Checkboxes in AXWebAreas don't fill in their AXTitle attribute
251 * bridge/mac/WebCoreAXObject.mm:
253 New. Returns the HTMLLabelElement, if any, for the specified Element.
255 (-[WebCoreAXObject title]):
256 For input elements, return the innerHTML() of the labelForElement().
258 2006-08-25 Brady Eidson <beidson@apple.com>
260 Reviewed by Tim Hatcher
262 Changed some debugging-only code to be more platform independent
264 * WebCore.xcodeproj/project.pbxproj:
265 * loader/icon/IconDatabase.cpp:
266 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup):
267 (WebCore::IconDatabase::syncDatabase):
269 2006-08-25 Nikolas Zimmermann <zimmermann@kde.org>
271 Reviewed/landed by Adam.
273 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10561
274 Qt platform build fixes.
276 * platform/qt/FrameQt.h:
277 * platform/qt/ScreenQt.cpp:
278 (WebCore::qwidgetForPage):
279 (WebCore::screenRect):
280 (WebCore::screenDepth):
281 (WebCore::usableScreenRect):
282 * platform/qt/TemporaryLinkStubs.cpp:
283 (WebCore::screenDepthPerComponent):
284 (WebCore::screenIsMonochrome):
285 * platform/qt/WidgetQt.cpp:
287 2006-08-25 Nikolas Zimmermann <zimmermann@kde.org>
289 Reviewed/landed by Adam.
291 Finally fix font caching. WebKit+Qt now works
292 out of the box without any further patches :-)
294 * platform/qt/FontDataQt.cpp:
295 (WebCore::FontData::platformDestroy):
296 * platform/qt/FontPlatformData.h:
297 * platform/qt/FontPlatformDataQt.cpp:
298 (WebCore::FontPlatformData::FontPlatformData):
299 (WebCore::FontPlatformData::isFixedPitch):
300 (WebCore::FontPlatformData::font):
301 (WebCore::FontPlatformData::fontPtr):
302 (WebCore::FontPlatformData::hash):
303 (WebCore::FontPlatformData::operator==):
305 2006-08-25 Nikolas Zimmermann <zimmermann@kde.org>
307 Reviewed/landed by Adam.
309 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10559
310 Confirm to WebKit style guide - last fixes :-)
312 * platform/ResourceLoaderClient.h:
313 * platform/qt/ComboBoxQt.cpp:
314 * platform/qt/FrameQt.cpp:
316 (WebCore::FrameQt::FrameQt):
317 (WebCore::FrameQt::openURL):
318 (WebCore::FrameQt::submitForm):
319 (WebCore::FrameQt::setTitle):
320 (WebCore::FrameQt::passSubframeEventToSubframe):
321 (WebCore::FrameQt::registerCommandForUndo):
322 (WebCore::FrameQt::registerCommandForRedo):
323 (WebCore::FrameQt::keyEvent):
324 (WebCore::FrameQt::setFrameGeometry):
325 * platform/qt/GlyphMapQt.cpp:
326 (WebCore::GlyphMap::fillPage):
327 * platform/qt/GraphicsContextQt.cpp:
328 (WebCore::toQtCompositionMode):
329 (WebCore::toQtLineCap):
330 (WebCore::toQtLineJoin):
331 (WebCore::TextShadow::TextShadow):
332 (WebCore::GraphicsContextPlatformPrivate::p):
333 * platform/qt/ImageQt.cpp:
334 (WebCore::FrameData::clear):
335 (WebCore::Image::supportsType):
336 * platform/qt/IntSizeQt.cpp:
337 * platform/qt/LineEditQt.cpp:
338 * platform/qt/ListBoxQt.cpp:
339 * platform/qt/PageQt.cpp:
340 (WebCore::Page::windowRect):
341 * platform/qt/PathQt.cpp:
342 (WebCore::Path::~Path):
343 * platform/qt/ResourceLoaderCurl.cpp:
344 (WebCore::ResourceLoader::assembleResponseHeaders):
345 (WebCore::ResourceLoader::retrieveCharset):
346 (WebCore::ResourceLoader::receivedResponse):
347 * platform/qt/ResourceLoaderManager.cpp:
348 (WebCore::headerCallback):
349 (WebCore::ResourceLoaderManager::downloadTimerCallback):
350 (WebCore::ResourceLoaderManager::add):
351 * platform/qt/ScreenQt.cpp:
352 (WebCore::screenRect):
353 (WebCore::usableScreenRect):
354 * platform/qt/ScrollViewQt.cpp:
355 (WebCore::ScrollView::ScrollView):
356 (WebCore::ScrollView::~ScrollView):
357 (WebCore::ScrollView::setParentWidget):
358 (WebCore::ScrollView::addChild):
359 * platform/qt/SharedTimerQt.cpp:
360 (WebCore::setSharedTimerFiredFunction):
361 * platform/qt/SharedTimerQt.h:
362 (WebCore::SharedTimerQt::SharedTimerQt):
363 (WebCore::SharedTimerQt::fire):
364 * platform/qt/SystemTimeQt.cpp:
365 (WebCore::currentTime):
366 * platform/qt/TextEditQt.cpp:
367 (WebCore::PlatformTextEdit::setParentWidget):
368 (WebCore::PlatformTextEdit::text):
369 (WebCore::PlatformTextEdit::sizeWithColumnsAndRows):
371 2006-08-24 David Harrison <harrison@apple.com>
376 <rdar://problem/4471481> Represent misspellings in AXAttributedStringForTextMarkerRange
378 Fix bug I introduced in r15959.
380 * bridge/mac/WebCoreAXObject.mm:
381 (-[WebCoreAXObject accessibilityAttributeValue:]):
382 Use topDocument in case we are in a subframe (we want the start/end of the overall page).
384 2006-08-24 Brady Eidson <beidson@apple.com>
388 Fixed my previous checkin, which was pruning the users entire icon db on startup everytime
390 * loader/icon/IconDatabase.cpp:
391 (WebCore::IconDatabase::retainIconForPageURL): Bind the PageURL to argument 1, as SQL bindings
392 are indexed to 1, not 0
394 2006-08-24 Geoffrey Garen <ggaren@apple.com>
398 Frame refactoring: changed FrameView clients so they no longer assume that
399 FrameViews are Widgets that can tell you things about the platform, in
400 preparation for divorcing FrameViews from heavy-weight Widgets altogether.
402 This patch makes Page, rather than Widget, responsible for answering
403 questions about the screen (scale factor, color depth, etc.). Refactoring
404 aside, I think this makes more sense, since (a) the screen has nothing to do
405 with any particular widget and (b) Page was already half-responsible for
406 answering those questions, anyway.
408 Plus some random Windows build fix goodness.
410 Layout tests still pass.
412 2006-08-24 Timothy Hatcher <timothy@apple.com>
416 Allow changing the background color WebCore draws under transparent page backgrounds.
417 No automated way to test. All tests pass, no performance regression.
419 * bridge/mac/WebCoreFrameBridge.h:
420 * bridge/mac/WebCoreFrameBridge.mm:
421 (-[WebCoreFrameBridge setBaseBackgroundColor:]):
422 * page/FrameView.cpp:
423 (WebCore::FrameViewPrivate::FrameViewPrivate):
424 (WebCore::FrameView::baseBackgroundColor):
425 (WebCore::FrameView::setBaseBackgroundColor):
427 * rendering/RenderBox.cpp:
428 (WebCore::RenderBox::paintBackgroundExtended):
429 * rendering/RenderView.cpp:
430 (WebCore::RenderView::paintBoxDecorations):
432 2006-08-24 Darin Adler <darin@apple.com>
436 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10169
437 REGRESSION: NativeTextArea: Text dragged from <input type=text> to textarea disappears
438 - eliminate the EditCommandPtr class from editing; use PassRefPtr and RefPtr instead
439 - other editing-related cleanup
441 Test: fast/forms/drag-into-textarea.html
443 * bridge/mac/FrameMac.h: Changed EditCommandPtr parameters to use PassRefPtr<EditCommand> instead.
444 * bridge/win/FrameWin.h: Ditto.
445 * bridge/mac/FrameMac.mm:
446 (WebCore::FrameMac::registerCommandForUndoOrRedo): Ditto.
447 (WebCore::FrameMac::registerCommandForUndo): Ditto.
448 (WebCore::FrameMac::registerCommandForRedo): Ditto.
450 * bridge/mac/WebCoreFrameBridge.mm:
451 (-[WebCoreFrameBridge replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
452 Use applyCommand instead of EditCommandPtr. Also remove now-unneeded document parameter.
453 (-[WebCoreFrameBridge moveSelectionToDragCaret:smartMove:]): Ditto.
454 (-[WebCoreFrameBridge deleteSelectionWithSmartDelete:]): Ditto.
456 * editing/AppendNodeCommand.h: Removed document parameter from constructor. Changed new child
457 parameter to be a PassRefPtr. Reversed order of child and parent parameters.
458 * editing/AppendNodeCommand.cpp:
459 (WebCore::AppendNodeCommand::AppendNodeCommand): Ditto.
460 (WebCore::AppendNodeCommand::doApply): Ditto.
461 (WebCore::AppendNodeCommand::doUnapply): Ditto.
463 * editing/ApplyStyleCommand.h: Removed document parameter from constructor.
464 * editing/ApplyStyleCommand.cpp: (WebCore::ApplyStyleCommand::ApplyStyleCommand): Ditto.
466 * editing/BreakBlockquoteCommand.h: Removed unneeded include of DeprecatedPtrList.h.
467 * editing/BreakBlockquoteCommand.cpp: Moved the include of DeprecatedPtrList.h here.
468 (WebCore::BreakBlockquoteCommand::doApply): Changed code to construct a Selection explicitly
469 since setEndingSelection is no longer overloaded for Position.
471 * editing/CompositeEditCommand.h: Added isFirstCommand function. Changed m_cmds from
472 a DeprecatedValueList<EditCommandPtr> to a Vector<RefPtr<EditCommand>> and renamed it
473 m_commands and made both doUnapply and doReapply private.
474 * editing/CompositeEditCommand.cpp:
475 (WebCore::CompositeEditCommand::doUnapply): Rewrote to use m_commands.
476 (WebCore::CompositeEditCommand::doReapply): Ditto.
477 (WebCore::CompositeEditCommand::applyCommandToComposite): Removed code to explicitly set up
478 starting and ending selection -- now done inside setParent. Rewrote to use m_commands.
479 (WebCore::CompositeEditCommand::applyStyle): Changed to not use EditCommandPtr.
480 (WebCore::CompositeEditCommand::applyStyledElement): Ditto.
481 (WebCore::CompositeEditCommand::removeStyledElement): Ditto.
482 (WebCore::CompositeEditCommand::insertParagraphSeparator): Ditto.
483 (WebCore::CompositeEditCommand::insertNodeBefore): Ditto.
484 (WebCore::CompositeEditCommand::appendNode): Ditto.
485 (WebCore::CompositeEditCommand::removeNode): Ditto.
486 (WebCore::CompositeEditCommand::removeNodePreservingChildren): Ditto.
487 (WebCore::CompositeEditCommand::splitTextNode): Ditto.
488 (WebCore::CompositeEditCommand::splitElement): Ditto.
489 (WebCore::CompositeEditCommand::mergeIdenticalElements): Ditto.
490 (WebCore::CompositeEditCommand::wrapContentsInDummySpan): Ditto.
491 (WebCore::CompositeEditCommand::splitTextNodeContainingElement): Ditto.
492 (WebCore::CompositeEditCommand::joinTextNodes): Ditto.
493 (WebCore::CompositeEditCommand::inputText): Ditto.
494 (WebCore::CompositeEditCommand::insertTextIntoNode): Ditto.
495 (WebCore::CompositeEditCommand::deleteTextFromNode): Ditto.
496 (WebCore::CompositeEditCommand::replaceTextInNode): Ditto.
497 (WebCore::CompositeEditCommand::deleteSelection): Ditto.
498 (WebCore::CompositeEditCommand::removeCSSProperty): Ditto.
499 (WebCore::CompositeEditCommand::removeNodeAttribute): Ditto. Also fixed a bug where the code
500 would not remove an empty attribute -- will not come up in practice, but wrong in theory.
501 (WebCore::CompositeEditCommand::setNodeAttribute): Changed to not use EditCommandPtr.
502 (WebCore::CompositeEditCommand::rebalanceWhitespaceAt): Ditto.
503 (WebCore::CompositeEditCommand::deleteInsignificantText): Rewrote to use a for loop.
504 (WebCore::CompositeEditCommand::moveParagraphs): Changed to not use EditCommandPtr.
505 (WebCore::CompositeEditCommand::breakOutOfEmptyListItem): Changed code to construct a
506 Selection explicitly since setEndingSelection is no longer overloaded for Position.
507 (WebCore::createBlockPlaceholderElement): Collapsed this code so that the
508 block placeholder class string is no longer spread across multiple functions.
509 Perhaps we can get rid of this altogether at some point.
511 * editing/DeleteFromTextNodeCommand.h: Removed unneeded document parameter from one constructor.
512 Also removed unneeded destructor.
513 * editing/DeleteFromTextNodeCommand.cpp:
514 (WebCore::DeleteFromTextNodeCommand::DeleteFromTextNodeCommand): Ditto.
516 * editing/DeleteSelectionCommand.h: Removed unneeded document parameter from one constructor.
517 * editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::DeleteSelectionCommand): Ditto.
519 * editing/EditCommand.h: Removed ECommandState, isCompositeStep(), parent(), state(), setState(),
520 and most overloads of setStartingSelection() and setEndingSelection(). Made document() protected
521 and non-virtual. Made setStartingSelection() setEndingSelection(), and styleAtPosition() protected.
522 Made doApply(), doUnapply(), and doReapply() private. Added startingRootEditableElement(),
523 endingRootEditableElement(), m_startingRootEditableElement, and m_endingRootEditableElement, which
524 are needed so we can determine which editable elements an editing operation affects. Changed setParent()
525 and m_parent to use CompositeEditCommand instead of EditCommand. Removed EditCommandPtr. Added
526 applyCommand() function that's convenient to use on a newly-created command.
527 * editing/EditCommand.cpp:
528 (WebCore::EditCommand::EditCommand): Removed initialization for m_state, and added it for starting
529 and ending root editable elements.
530 (WebCore::EditCommand::apply): Simplified check for top level by just checking m_parent. Removed
531 code to assert and set m_start. Eliminated use of EditCommandPtr.
532 (WebCore::EditCommand::unapply): Ditto.
533 (WebCore::EditCommand::reapply): Ditto.
534 (WebCore::EditCommand::setStartingSelection): Changed to set root editable element too. Also made this
535 not change the starting selection of the parent unless this is the first command in the parent -- didn't
536 make sense the way it was.
537 (WebCore::EditCommand::setEndingSelection): Changed to set root editable element too.
538 (WebCore::EditCommand::setParent): Added code to set the starting and ending selection on the child
539 based on the ending selection of the parent, formerly done by callers.
540 (WebCore::applyCommand): Added.
542 * editing/FormatBlockCommand.h: Tweaked formatting.
543 * editing/FormatBlockCommand.cpp: (WebCore::FormatBlockCommand::FormatBlockCommand): Ditto.
544 * editing/InsertLineBreakCommand.h: Ditto.
545 * editing/InsertLineBreakCommand.cpp: (WebCore::InsertLineBreakCommand::doApply):
547 * editing/IndentOutdentCommand.cpp:
548 (WebCore::IndentOutdentCommand::splitTreeToNode): Removed use of EditCommandPtr.
549 (WebCore::IndentOutdentCommand::outdentParagraph): Updated for change to list type enum.
550 (WebCore::IndentOutdentCommand::outdentRegion): Removed use of EditCommandPtr.
552 * editing/InsertIntoTextNodeCommand.h: Removed unneeded document parameter to constructor.
553 * editing/InsertIntoTextNodeCommand.cpp:
554 (WebCore::InsertIntoTextNodeCommand::InsertIntoTextNodeCommand): Ditto.
556 * editing/InsertListCommand.h: Renamed EListType to EList, and took the "Type" suffix off
558 * editing/InsertListCommand.cpp:
559 (WebCore::InsertListCommand::InsertListCommand): Ditto.
560 (WebCore::InsertListCommand::doApply): Ditto.
562 * editing/InsertNodeBeforeCommand.h: Removed unneeded document parameter from constructor
563 and changed the parameter of the node to insert to a PassRefPtr.
564 * editing/InsertNodeBeforeCommand.cpp:
565 (WebCore::InsertNodeBeforeCommand::InsertNodeBeforeCommand): Ditto.
567 * editing/InsertParagraphSeparatorCommand.cpp:
568 (WebCore::InsertParagraphSeparatorCommand::doApply): Remvoed use of EditCommandPtr.
570 * editing/InsertTextCommand.h: Changed insertTab to take const Position&.
571 * editing/InsertTextCommand.cpp:
572 (WebCore::InsertTextCommand::input): Ditto.
573 (WebCore::InsertTextCommand::insertTab): Ditto.
575 * editing/JSEditor.h: Tweaked formatting and names.
576 * editing/JSEditor.cpp: Ditto. Also changed places that use EditCommandPtr.
578 * editing/JoinTextNodesCommand.h: Removed unneeeded document pointer
579 * editing/JoinTextNodesCommand.cpp:
580 (WebCore::JoinTextNodesCommand::JoinTextNodesCommand): Ditto.
581 * editing/MergeIdenticalElementsCommand.h: Ditto.
582 * editing/MergeIdenticalElementsCommand.cpp:
583 (WebCore::MergeIdenticalElementsCommand::MergeIdenticalElementsCommand): Ditto.
585 * editing/ModifySelectionListLevel.h: Changed EListType to be named Type and be a member of
586 IncreaseSelectionListLevelCommand. Also changed m_listElement to be a RefPtr<Node>.
587 * editing/ModifySelectionListLevel.cpp:
588 (WebCore::getStartEndListChildren): Changed parameters to be references instead of pointers.
589 (WebCore::IncreaseSelectionListLevelCommand::IncreaseSelectionListLevelCommand):
590 Changed to use Type instead of EListType.
591 (WebCore::canIncreaseListLevel): Changed parameters to be references instead of pointers.
592 (WebCore::IncreaseSelectionListLevelCommand::doApply): Updated for change to canIncreaseListLevel.
593 (WebCore::IncreaseSelectionListLevelCommand::canIncreaseSelectionListLevel): Ditto.
594 (WebCore::IncreaseSelectionListLevelCommand::increaseSelectionListLevelWithType):
595 Changed to not use EditCommandPtr.
596 (WebCore::canDecreaseListLevel): Changed parameters to be references instead of pointers.
597 (WebCore::DecreaseSelectionListLevelCommand::doApply): Updated for change to canDecreaseListLevel.
598 (WebCore::DecreaseSelectionListLevelCommand::canDecreaseSelectionListLevel): Ditto.
599 (WebCore::DecreaseSelectionListLevelCommand::decreaseSelectionListLevel): Changed to not use
602 * editing/MoveSelectionCommand.h: Removed unnecessary document parameter and changed the fragment
603 parameter to be a PassRefPtr.
604 * editing/MoveSelectionCommand.cpp:
605 (WebCore::MoveSelectionCommand::MoveSelectionCommand): Ditto.
606 (WebCore::MoveSelectionCommand::doApply): Got rid of use of EditCommandPtr.
608 * editing/RebalanceWhitespaceCommand.h: Removed unnecessary document parameter.
609 * editing/RebalanceWhitespaceCommand.cpp:
610 (WebCore::RebalanceWhitespaceCommand::RebalanceWhitespaceCommand): Ditto.
611 (WebCore::RebalanceWhitespaceCommand::doApply): Got rid of use of EditCommandPtr.
613 * editing/RemoveCSSPropertyCommand.h: Tweaked formatting.
615 * editing/RemoveNodeAttributeCommand.h: Removed unnecessary document parameter.
616 * editing/RemoveNodeAttributeCommand.cpp:
617 (WebCore::RemoveNodeAttributeCommand::RemoveNodeAttributeCommand): Ditto.
619 * editing/RemoveNodeCommand.h: Removed unnecessary document parameter.
620 * editing/RemoveNodeCommand.cpp:
621 (WebCore::RemoveNodeCommand::RemoveNodeCommand): Ditto.
623 * editing/RemoveNodePreservingChildrenCommand.h: Removed unnecessary document parameter.
624 * editing/RemoveNodePreservingChildrenCommand.cpp:
625 (WebCore::RemoveNodePreservingChildrenCommand::RemoveNodePreservingChildrenCommand): Ditto.
627 * editing/ReplaceSelectionCommand.h: Change fragment parameter to a PassRefPtr.
628 * editing/ReplaceSelectionCommand.cpp:
629 (WebCore::ReplacementFragment::ReplacementFragment): Ditto.
630 (WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand): Ditto.
631 (WebCore::ReplaceSelectionCommand::doApply): Ditto.
632 (WebCore::ReplaceSelectionCommand::completeHTMLReplacement): Ditto.
634 * editing/Selection.h: Changed SEL_DEFAULT_AFFINITY to be a constant rather than
635 a macro. Added constructors that take visible positions. Changed setBase and
636 setExtent to take const Position& for better efficiency.
637 * editing/Selection.cpp:
638 (WebCore::Selection::Selection): Removed unnecessary double initialization of m_state
639 and m_baseIsFirst in existing constructors. Added VisiblePosition-based constructors.
641 * editing/SetNodeAttributeCommand.h: Removed unnneeded document parameter.
642 * editing/SetNodeAttributeCommand.cpp:
643 (WebCore::SetNodeAttributeCommand::SetNodeAttributeCommand): Ditto.
645 * editing/SplitElementCommand.h: Removed unnneeded document parameter.
646 * editing/SplitElementCommand.cpp:
647 (WebCore::SplitElementCommand::SplitElementCommand): Ditto.
649 * editing/SplitTextNodeCommand.h: Removed unnneeded document parameter.
650 * editing/SplitTextNodeCommand.cpp:
651 (WebCore::SplitTextNodeCommand::SplitTextNodeCommand): Ditto.
653 * editing/SplitTextNodeContainingElementCommand.h: Removed unnneeded document parameter.
654 * editing/SplitTextNodeContainingElementCommand.cpp:
655 (WebCore::SplitTextNodeContainingElementCommand::SplitTextNodeContainingElementCommand): Ditto.
657 * editing/TypingCommand.h: Replaced uses of EditCommandPtr with EditCommand*.
658 Renamed openForMoveTyping() with isOpenForMoreTyping().
659 * editing/TypingCommand.cpp:
660 (WebCore::TypingCommand::deleteKeyPressed): Updated to remove use of EditCommandPtr.
661 (WebCore::TypingCommand::forwardDeleteKeyPressed): Ditto.
662 (WebCore::TypingCommand::insertText): Ditto.
663 (WebCore::TypingCommand::insertLineBreak): Ditto.
664 (WebCore::TypingCommand::insertParagraphSeparatorInQuotedContent): Ditto.
665 (WebCore::TypingCommand::insertParagraphSeparator): Ditto.
666 (WebCore::TypingCommand::isOpenForMoreTypingCommand): Ditto.
667 (WebCore::TypingCommand::closeTyping): Ditto.
668 (WebCore::TypingCommand::typingAddedToOpenCommand): Ditto.
669 (WebCore::TypingCommand::insertTextRunWithoutNewlines): Ditto.
671 * editing/WrapContentsInDummySpanCommand.h: Removed unnneeded document parameter.
672 * editing/WrapContentsInDummySpanCommand.cpp:
673 (WebCore::WrapContentsInDummySpanCommand::WrapContentsInDummySpanCommand): Ditto.
675 * editing/htmlediting.h: Changed type of NON_BREAKING_SPACE to UChar instead of
678 * page/Frame.h: Changed lastEditCommand() to return an EditCommand* and changed
679 appliedEditing(), unappliedEditing(), reappliedEditing(), registerCommandForUndo(),
680 and registerCommandForRedo() to take PassRefPtr<EditCommand>.
681 * page/FramePrivate.h: Changed m_lastEditCommand to be a RefPtr<EditCommand>.
683 (WebCore::Frame::didOpenURL): Fixed for change to m_lastEditCommand.
684 (WebCore::Frame::setFocusNodeIfNeeded): Call the rootEditableElement function
685 from Selection to simplify the code.
686 (WebCore::Frame::selectAll): Ditto.
687 (WebCore::Frame::lastEditCommand): Updated for change to m_lastEditCommand.
688 (WebCore::dispatchEditableContentChangedEvents): Added. This sends an event to
689 both of the root editable elements involved in a change -- the start selection
690 might be in a different element than the end selection.
691 (WebCore::Frame::appliedEditing): Changed to call dispatchEditableContentChangedEvents,
692 and to do it before setting the ending selection. Also update to use PassRefPtr instead
693 of EditCommandPtr and change the order of setting m_lastEditCommand since passing it
694 to registerCommandForUndo will take ownership and set it to 0.
695 (WebCore::Frame::unappliedEditing): Ditto.
696 (WebCore::Frame::reappliedEditing): Ditto.
697 (WebCore::Frame::computeAndSetTypingStyle): Updated for removal of EditCommandPtr.
698 (WebCore::Frame::applyStyle): Ditto.
699 (WebCore::Frame::applyParagraphStyle): Ditto.
701 * platform/gdk/FrameGdk.h: Updated for above changes.
702 * platform/gdk/TemporaryLinkStubs.cpp: Updated for above changes.
703 * platform/win/TemporaryLinkStubs.cpp: Updated for above changes.
705 2006-08-24 Brady Eidson <beidson@apple.com>
709 <rdar://problem/4697973> - Unacceptable delay on startup
710 <rdar://problem/4690949> - Need to correctly prune unretained pageurls and icons on startup
712 This patch was started by me and finished by Mark Rowe - we now special case all retains during
713 startup into one huge sql transaction. Also we track PageURL retains instead of IconURLs so pruning works right.
714 Testing with reasonable sets of bookmarks/history (3000), startup time is neglibile. Testing with a huge set of
715 bookmarks (40,000), startup has a noticable delay, but reasonable, and is inline with shipping safari which also
716 has a noticeable delay.
718 * loader/icon/IconDatabase.cpp:
719 (WebCore::IconDatabase::IconDatabase):
720 (WebCore::IconDatabase::open): adding an initialStartupTransaction and pageRetainStatement
721 (WebCore::IconDatabase::close): do cleanup on the initialStartupSQL stuff
722 (WebCore::IconDatabase::retainIconForPageURL): Track initial PageURL retains in the temporary table
723 (WebCore::IconDatabase::releaseIconForPageURL): Ditto
724 (WebCore::IconDatabase::retainIconURL): We no longer special case this on startup
725 (WebCore::IconDatabase::releaseIconURL): We no longer special case this on startup
726 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Handle the big transaction correctly and quickly
727 (WebCore::IconDatabase::syncDatabase): Change the timing log message
728 * loader/icon/IconDatabase.h:
729 * loader/icon/SQLStatement.cpp:
730 (WebCore::SQLStatement::bindText16): Added this - for reusing commonly used statements by just rebinding parameters.
731 * loader/icon/SQLStatement.h:
733 2006-08-24 Nikolas Zimmermann <zimmermann@kde.org>
735 Reviewed/landed by Adam.
737 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
738 WebKit should have Qt platform support
741 Remove KCanvasMatrix.cpp because it no longer exists
742 Remove platform/qt/test
743 * platform/FloatSize.h:
744 * platform/image-decoders/bmp/BMPImageDecoder.cpp:
745 * platform/image-decoders/gif/GIFImageDecoder.cpp:
746 * platform/image-decoders/gif/GIFImageReader.cpp:
747 * platform/image-decoders/ico/ICOImageDecoder.cpp:
748 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
749 * platform/image-decoders/png/PNGImageDecoder.cpp:
750 * platform/image-decoders/xbm/XBMImageDecoder.cpp:
751 Added PLATFORM(QT) hooks in the image-decoders/, as they also need
752 to work for Qt, not only for Cairo.
753 * platform/qt/qt-encodings.txt: Added (required for build).
755 2006-08-24 Adam Roben <aroben@apple.com>
757 Fixing a typo from last patch.
759 * kcanvas/device/qt/KRenderingPaintServerQt.cpp:
760 (WebCore::KRenderingPaintServerQt::setPenProperties):
762 2006-08-24 Nikolas Zimmermann <zimmermann@kde.org>
764 Reviewed/landed by Adam.
766 Final cleanup to conform to WebKit coding style!
768 * kcanvas/device/qt/KCanvasClipperQt.cpp:
769 (WebCore::KCanvasClipperQt::applyClip):
770 * kcanvas/device/qt/KCanvasClipperQt.h:
771 * kcanvas/device/qt/KCanvasPathQt.cpp:
772 * kcanvas/device/qt/KCanvasPathQt.h:
773 * kcanvas/device/qt/KRenderingDeviceQt.cpp:
774 * kcanvas/device/qt/KRenderingDeviceQt.h:
775 * kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp:
776 (WebCore::KRenderingPaintServerLinearGradientQt::KRenderingPaintServerLinearGradientQt):
777 (WebCore::KRenderingPaintServerRadialGradientQt::KRenderingPaintServerRadialGradientQt):
778 * kcanvas/device/qt/KRenderingPaintServerGradientQt.h:
779 * kcanvas/device/qt/KRenderingPaintServerPatternQt.cpp:
780 (WebCore::KRenderingPaintServerPatternQt::KRenderingPaintServerPatternQt):
781 * kcanvas/device/qt/KRenderingPaintServerPatternQt.h:
782 * kcanvas/device/qt/KRenderingPaintServerQt.cpp:
783 (WebCore::KRenderingPaintServerQt::setPenProperties):
784 * kcanvas/device/qt/KRenderingPaintServerQt.h:
785 * kcanvas/device/qt/KRenderingPaintServerSolidQt.cpp:
786 (WebCore::KRenderingPaintServerSolidQt::KRenderingPaintServerSolidQt):
787 (WebCore::KRenderingPaintServerSolidQt::renderPath):
788 * kcanvas/device/qt/KRenderingPaintServerSolidQt.h:
789 * kcanvas/device/qt/RenderPathQt.cpp:
790 * kcanvas/device/qt/RenderPathQt.h:
791 * platform/qt/AffineTransformQt.cpp:
792 * platform/qt/BrowserExtensionQt.cpp:
793 * platform/qt/BrowserExtensionQt.h:
794 * platform/qt/ColorQt.cpp:
795 (WebCore::Color::Color):
796 * platform/qt/ComboBoxQt.cpp:
797 (WebCore::PlatformComboBox::PlatformComboBox):
798 (WebCore::PlatformComboBox::~PlatformComboBox):
799 (WebCore::PlatformComboBox::setParentWidget):
800 (WebCore::PlatformComboBox::appendGroupLabel):
801 * platform/qt/CookieJarQt.cpp:
802 * platform/qt/CursorQt.cpp:
803 (WebCore::Cursors::Cursors::self):
804 * platform/qt/FloatPointQt.cpp:
805 * platform/qt/FloatRectQt.cpp:
806 * platform/qt/FontCacheQt.cpp:
807 (WebCore::FontCache::getSimilarFontPlatformData):
808 (WebCore::FontCache::createFontPlatformData):
809 * platform/qt/FontDataQt.cpp:
810 * platform/qt/FontPlatformData.h:
811 * platform/qt/FontPlatformDataQt.cpp:
812 * platform/qt/FontQt.cpp:
813 (WebCore::Font::operator QFont):
814 (WebCore::Font::drawComplexText):
815 (WebCore::Font::floatWidthForComplexText):
816 * platform/qt/FrameQt.cpp:
817 (WebCore::FrameQt::openURL):
818 (WebCore::FrameQt::submitForm):
819 (WebCore::FrameQt::urlSelected):
820 (WebCore::FrameQt::keyEvent):
821 * platform/qt/FrameQt.h:
822 * platform/qt/GlyphMapQt.cpp:
823 * platform/qt/GraphicsContextQt.cpp:
824 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
825 (WebCore::GraphicsContext::GraphicsContext):
826 (WebCore::GraphicsContext::drawConvexPolygon):
827 (WebCore::GraphicsContext::setFocusRingClip):
828 (WebCore::GraphicsContext::clip):
829 * platform/qt/ImageQt.cpp:
830 (WebCore::Image::draw):
831 (WebCore::Image::drawTiled):
832 * platform/qt/ImageSourceQt.cpp:
833 * platform/qt/IntPointQt.cpp:
834 * platform/qt/IntRectQt.cpp:
835 * platform/qt/IntSizeQt.cpp:
836 * platform/qt/LineEditQt.cpp:
837 (WebCore::PlatformLineEdit::PlatformLineEdit):
838 (WebCore::PlatformLineEdit::~PlatformLineEdit):
839 (WebCore::PlatformLineEdit::setParentWidget):
840 (WebCore::PlatformLineEdit::addSearchResult):
841 * platform/qt/ListBoxQt.cpp:
842 (WebCore::ListBox::ListBox):
843 (WebCore::ListBox::~ListBox):
844 (WebCore::ListBox::setParentWidget):
845 * platform/qt/PageQt.cpp:
846 (WebCore::Page::windowRect):
847 (WebCore::Page::setWindowRect):
848 * platform/qt/PathQt.cpp:
849 (WebCore::Path::addArc):
850 * platform/qt/PlatformKeyboardEventQt.cpp:
851 (WebCore::windowsKeyCodeForKeyEvent):
852 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
853 * platform/qt/PlatformMouseEventQt.cpp:
854 * platform/qt/RenderThemeQt.cpp:
855 (WebCore::RenderThemeQt::getStylePainterAndWidgetFromPaintInfo):
856 (WebCore::RenderThemeQt::applyTheme):
857 (WebCore::RenderThemeQt::paintButton):
858 (WebCore::RenderThemeQt::paintTextField):
859 * platform/qt/ResourceLoaderCurl.cpp:
860 (WebCore::ResourceLoader::assembleResponseHeaders):
861 (WebCore::ResourceLoader::retrieveCharset):
862 (WebCore::ResourceLoader::receivedResponse):
863 * platform/qt/ResourceLoaderManager.cpp:
864 (WebCore::ResourceLoaderManager::add):
865 * platform/qt/ResourceLoaderManager.h:
866 * platform/qt/ScreenQt.cpp:
867 * platform/qt/ScrollViewCanvasQt.cpp:
868 (WebCore::ScrollViewCanvasQt::handleKeyEvent):
869 * platform/qt/ScrollViewCanvasQt.h:
870 * platform/qt/ScrollViewQt.cpp:
871 * platform/qt/SharedTimerQt.cpp:
872 * platform/qt/SharedTimerQt.h:
873 (WebCore::SharedTimerQt::inst):
874 * platform/qt/StringQt.cpp:
875 * platform/qt/SystemTimeQt.cpp:
876 * platform/qt/TemporaryLinkStubs.cpp:
877 * platform/qt/TextEditQt.cpp:
878 (WebCore::PlatformTextEdit::PlatformTextEdit):
879 (WebCore::PlatformTextEdit::~PlatformTextEdit):
880 (WebCore::PlatformTextEdit::setParentWidget):
881 * platform/qt/WidgetQt.cpp:
882 (WebCore::Widget::setQWidget):
884 2006-08-24 Nikolas Zimmermann <zimmermann@kde.org>
886 Reviewed and landed by Anders.
888 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
889 WebKit should have Qt platform support
892 * platform/qt/FrameQt.cpp: Added.
894 (WebCore::FrameView::isFrameView):
895 (WebCore::FrameQt::FrameQt):
896 (WebCore::FrameQt::init):
897 (WebCore::FrameQt::~FrameQt):
898 (WebCore::FrameQt::openURL):
899 (WebCore::FrameQt::submitForm):
900 (WebCore::FrameQt::urlSelected):
901 (WebCore::FrameQt::userAgent):
902 (WebCore::FrameQt::runJavaScriptAlert):
903 (WebCore::FrameQt::runJavaScriptConfirm):
904 (WebCore::FrameQt::locationbarVisible):
905 (WebCore::FrameQt::setTitle):
906 (WebCore::FrameQt::createFrame):
907 (WebCore::FrameQt::passWheelEventToChildWidget):
908 (WebCore::FrameQt::passSubframeEventToSubframe):
909 (WebCore::FrameQt::objectContentType):
910 (WebCore::FrameQt::createPlugin):
911 (WebCore::FrameQt::passMouseDownEventToWidget):
912 (WebCore::FrameQt::menubarVisible):
913 (WebCore::FrameQt::personalbarVisible):
914 (WebCore::FrameQt::statusbarVisible):
915 (WebCore::FrameQt::toolbarVisible):
916 (WebCore::FrameQt::createEmptyDocument):
917 (WebCore::FrameQt::markedTextRange):
918 (WebCore::FrameQt::incomingReferrer):
919 (WebCore::FrameQt::mimeTypeForFileName):
920 (WebCore::FrameQt::markMisspellingsInAdjacentWords):
921 (WebCore::FrameQt::markMisspellings):
922 (WebCore::FrameQt::lastEventIsMouseUp):
923 (WebCore::FrameQt::saveDocumentState):
924 (WebCore::FrameQt::restoreDocumentState):
925 (WebCore::FrameQt::openURLRequest):
926 (WebCore::FrameQt::scheduleClose):
927 (WebCore::FrameQt::unfocusWindow):
928 (WebCore::FrameQt::focusWindow):
929 (WebCore::FrameQt::overrideMediaType):
930 (WebCore::FrameQt::addMessageToConsole):
931 (WebCore::FrameQt::runJavaScriptPrompt):
932 (WebCore::FrameQt::getEmbedInstanceForWidget):
933 (WebCore::FrameQt::getObjectInstanceForWidget):
934 (WebCore::FrameQt::getAppletInstanceForWidget):
935 (WebCore::FrameQt::registerCommandForUndo):
936 (WebCore::FrameQt::registerCommandForRedo):
937 (WebCore::FrameQt::clearUndoRedoOperations):
938 (WebCore::FrameQt::issueUndoCommand):
939 (WebCore::FrameQt::issueRedoCommand):
940 (WebCore::FrameQt::issueCutCommand):
941 (WebCore::FrameQt::issueCopyCommand):
942 (WebCore::FrameQt::issuePasteCommand):
943 (WebCore::FrameQt::issuePasteAndMatchStyleCommand):
944 (WebCore::FrameQt::issueTransposeCommand):
945 (WebCore::FrameQt::respondToChangedSelection):
946 (WebCore::FrameQt::respondToChangedContents):
947 (WebCore::FrameQt::shouldChangeSelection):
948 (WebCore::FrameQt::partClearedInBegin):
949 (WebCore::FrameQt::canGoBackOrForward):
950 (WebCore::FrameQt::handledOnloadEvents):
951 (WebCore::FrameQt::canPaste):
952 (WebCore::FrameQt::canRedo):
953 (WebCore::FrameQt::canUndo):
954 (WebCore::FrameQt::print):
955 (WebCore::FrameQt::shouldInterruptJavaScript):
956 (WebCore::FrameQt::keyEvent):
957 (WebCore::FrameQt::receivedResponse):
958 (WebCore::FrameQt::receivedData):
959 (WebCore::FrameQt::receivedAllData):
960 (WebCore::FrameQt::setFrameGeometry):
961 * platform/qt/FrameQt.h: Added.
962 * platform/qt/ScrollViewCanvasQt.cpp: Added.
963 (WebCore::ScrollViewCanvasQt::ScrollViewCanvasQt):
964 (WebCore::ScrollViewCanvasQt::paintEvent):
965 (WebCore::ScrollViewCanvasQt::sizeHint):
966 (WebCore::ScrollViewCanvasQt::mouseMoveEvent):
967 (WebCore::ScrollViewCanvasQt::mousePressEvent):
968 (WebCore::ScrollViewCanvasQt::mouseReleaseEvent):
969 (WebCore::ScrollViewCanvasQt::keyPressEvent):
970 (WebCore::ScrollViewCanvasQt::keyReleaseEvent):
971 (WebCore::ScrollViewCanvasQt::handleKeyEvent):
972 * platform/qt/ScrollViewCanvasQt.h: Added.
973 * platform/qt/ScrollViewQt.cpp:
974 (WebCore::ScrollView::setParentWidget):
976 2006-08-24 Nikolas Zimmermann <zimmermann@kde.org>
980 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
981 WebKit should have Qt platform support
983 * platform/qt/FontCacheQt.cpp: Added.
984 (WebCore::FontCache::platformInit):
985 (WebCore::FontCache::getFontDataForCharacters):
986 (WebCore::FontCache::getSimilarFontPlatformData):
987 (WebCore::FontCache::getLastResortFallbackFont):
988 (WebCore::FontCache::createFontPlatformData):
989 * platform/qt/FontDataQt.cpp: Added.
990 (WebCore::FontData::platformInit):
991 (WebCore::FontData::platformDestroy):
992 (WebCore::FontData::smallCapsFontData):
993 (WebCore::FontData::containsCharacters):
994 (WebCore::FontData::determinePitch):
995 (WebCore::FontData::platformWidthForGlyph):
996 * platform/qt/FontPlatformData.h: Added.
997 * platform/qt/FontPlatformDataQt.cpp: Added.
998 (WebCore::FontPlatformData::FontPlatformData):
999 (WebCore::FontPlatformData::operator=):
1000 (WebCore::FontPlatformData::~FontPlatformData):
1001 (WebCore::FontPlatformData::isFixedPitch):
1002 (WebCore::FontPlatformData::setFont):
1003 (WebCore::FontPlatformData::font):
1004 (WebCore::FontPlatformData::hash):
1005 (WebCore::FontPlatformData::operator==):
1006 * platform/qt/FontQt.cpp: Added.
1007 (WebCore::Font::operator QFont):
1008 (WebCore::Font::drawGlyphs):
1009 (WebCore::Font::drawComplexText):
1010 (WebCore::Font::floatWidthForComplexText):
1011 * platform/qt/GlyphMapQt.cpp: Added.
1012 (WebCore::GlyphMap::fillPage):
1014 2006-08-24 David Harrison <harrison@apple.com>
1016 Reinstate r15966 because layout test changes are correct.
1018 <rdar://problem/4522205> Represent controls in AXAttributedStringForTextMarkerRange
1020 * editing/TextIterator.cpp:
1021 (WebCore::TextIterator::advance):
1023 2006-08-24 Nikolas Zimmermann <zimmermann@kde.org>
1027 http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
1028 WebKit should have Qt platform support (Part II)
1030 Adapt the KCanvas Qt device to Rob's KCanvasMatrix removal.
1031 Use AffineTransform everywhere instead.
1033 * kcanvas/device/qt/KRenderingDeviceQt.cpp:
1034 (WebCore::KRenderingDeviceContextQt::KRenderingDeviceContextQt):
1035 (WebCore::KRenderingDeviceContextQt::concatCTM):
1036 (WebCore::KRenderingDeviceContextQt::ctm):
1037 * kcanvas/device/qt/KRenderingDeviceQt.h:
1038 * kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp:
1039 (WebCore::KRenderingPaintServerLinearGradientQt::setup):
1040 (WebCore::KRenderingPaintServerRadialGradientQt::setup):
1042 2006-08-24 Rob Buis <buis@kde.org>
1046 http://bugzilla.opendarwin.org/show_bug.cgi?id=10524
1047 svg transform: comma delimiting breaks display
1049 Properly parse transforms which use ',' as seperators.
1051 * ksvg2/svg/SVGTransformable.cpp:
1052 (SVGTransformable::parseTransformAttribute):
1054 2006-08-23 Darin Adler <darin@apple.com>
1058 - added an assert to make it slightly easier to debug the common case of
1059 calling document() on a node of 0
1061 * dom/Node.h: (WebCore::Node::document): ASSERT(this).
1063 2006-08-23 David Hyatt <hyatt@apple.com>
1065 Refactor Cairo and CoreGraphics to use platform ifdefs. This patch
1066 separates the graphics engines from their respective platforms and replaces
1067 #ifdef PLATFORM(MAC) and PLATFORM(WIN) with PLATFORM(CG) and PLATFORM(CAIRO).
1071 * WebCore.xcodeproj/project.pbxproj:
1072 * platform/AffineTransform.h:
1074 * platform/Cursor.h:
1075 * platform/FloatPoint.h:
1076 * platform/FloatRect.h:
1077 * platform/FloatSize.h:
1079 * platform/FontData.h:
1080 * platform/GlyphBuffer.h:
1081 (WebCore::GlyphBuffer::glyphAt):
1082 (WebCore::GlyphBuffer::advanceAt):
1083 (WebCore::GlyphBuffer::add):
1084 * platform/GraphicsContext.h:
1086 * platform/ImageSource.h:
1087 * platform/IntPoint.h:
1088 * platform/IntRect.h:
1089 * platform/IntSize.h:
1090 * platform/ResourceLoader.h:
1091 * platform/ResourceLoaderClient.h:
1092 * platform/Widget.h:
1093 * platform/cairo/GraphicsContextCairo.cpp:
1094 * platform/cairo/ImageCairo.cpp:
1095 * platform/cairo/ImageSourceCairo.cpp:
1096 * platform/cg/AffineTransformCG.cpp:
1097 * platform/cg/FloatPointCG.cpp: Added.
1098 * platform/cg/FloatRectCG.cpp: Added.
1099 * platform/cg/FloatSizeCG.cpp: Added.
1100 * platform/cg/GraphicsContextCG.cpp:
1101 (WebCore::GraphicsContext::GraphicsContext):
1102 (WebCore::GraphicsContext::~GraphicsContext):
1103 (WebCore::GraphicsContext::setFocusRingClip):
1104 (WebCore::GraphicsContext::clearFocusRingClip):
1105 (WebCore::GraphicsContext::platformContext):
1106 (WebCore::GraphicsContext::drawRect):
1107 (WebCore::GraphicsContext::drawLine):
1108 * platform/cg/GraphicsContextPlatformPrivate.h: Added.
1109 (WebCore::GraphicsContextPlatformPrivate:::m_cgContext):
1110 (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate):
1111 * platform/cg/ImageCG.cpp: Added.
1112 (WebCore::Image::drawTiled):
1113 * platform/cg/ImageSourceCG.cpp: Added.
1114 * platform/cg/IntPointCG.cpp: Added.
1115 * platform/cg/IntRectCG.cpp: Added.
1116 * platform/cg/IntSizeCG.cpp: Added.
1117 * platform/cg/PDFDocumentImage.cpp: Added.
1118 (WebCore::PDFDocumentImage::adjustCTM):
1119 * platform/cg/PDFDocumentImage.h: Added.
1120 * platform/cg/PathCG.cpp:
1121 * platform/image-decoders/bmp/BMPImageDecoder.cpp:
1122 * platform/image-decoders/gif/GIFImageDecoder.cpp:
1123 * platform/image-decoders/gif/GIFImageReader.cpp:
1124 * platform/image-decoders/ico/ICOImageDecoder.cpp:
1125 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
1126 * platform/image-decoders/png/PNGImageDecoder.cpp:
1127 * platform/image-decoders/xbm/XBMImageDecoder.cpp:
1128 * platform/mac/FloatPointMac.mm:
1129 * platform/mac/FloatRectMac.mm:
1130 * platform/mac/FloatSizeMac.mm:
1131 * platform/mac/GraphicsContextMac.mm:
1132 * platform/mac/ImageMac.mm:
1133 * platform/mac/ImageSourceMac.cpp: Removed.
1134 * platform/mac/IntPointMac.mm:
1135 * platform/mac/IntRectMac.mm:
1136 * platform/mac/IntSizeMac.mm:
1137 * platform/mac/PDFDocumentImage.h: Removed.
1138 * platform/mac/PDFDocumentImage.mm: Removed.
1140 2006-08-23 David Hyatt <hyatt@apple.com>
1142 Remove the ifdef for platform scrollbars vs. engine scrollbars until
1143 engine scrollbars actually exist.
1145 * platform/ScrollBar.h:
1146 (WebCore::ScrollBar::hasPlatformScrollBars):
1148 2006-08-23 Justin Garcia <justin.garcia@apple.com>
1150 Reviewed by harrison
1152 Removed the poorly named next/previousVisiblePosition
1153 and use next/previousCandidate and next/previousVisuallyDistinctCandidate.
1154 Removed the unused VisiblePosition::maxOffset()
1156 * editing/VisiblePosition.cpp:
1157 (WebCore::VisiblePosition::next):
1158 (WebCore::VisiblePosition::previous):
1159 (WebCore::VisiblePosition::canonicalPosition):
1160 * editing/VisiblePosition.h:
1162 2006-08-23 Nikolas Zimmermann <zimmermann@kde.org>
1164 Reviewed by Alexey. Landed by rwlbuis.
1166 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
1167 WebKit should have Qt platform support (Part II)
1169 * platform/qt/GraphicsContextQt.cpp: Added.
1170 (WebCore::toQtCompositionMode):
1171 (WebCore::toQtLineCap):
1172 (WebCore::toQtLineJoin):
1173 (WebCore::TransparencyLayer::TransparencyLayer):
1174 (WebCore::TransparencyLayer::cleanup):
1175 (WebCore::TextShadow::TextShadow):
1176 (WebCore::TextShadow::isNull):
1177 (WebCore::GraphicsContextPlatformPrivate::p):
1178 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
1179 (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate):
1180 (WebCore::GraphicsContext::GraphicsContext):
1181 (WebCore::GraphicsContext::~GraphicsContext):
1182 (WebCore::GraphicsContext::platformContext):
1183 (WebCore::GraphicsContext::savePlatformState):
1184 (WebCore::GraphicsContext::restorePlatformState):
1185 (WebCore::GraphicsContext::drawRect):
1186 (WebCore::adjustLineToPixelBounderies):
1187 (WebCore::GraphicsContext::drawLine):
1188 (WebCore::GraphicsContext::drawEllipse):
1189 (WebCore::GraphicsContext::drawArc):
1190 (WebCore::GraphicsContext::drawConvexPolygon):
1191 (WebCore::GraphicsContext::fillRect):
1192 (WebCore::GraphicsContext::addClip):
1193 (WebCore::GraphicsContext::drawFocusRing):
1194 (WebCore::GraphicsContext::setFocusRingClip):
1195 (WebCore::GraphicsContext::clearFocusRingClip):
1196 (WebCore::GraphicsContext::drawLineForText):
1197 (WebCore::GraphicsContext::drawLineForMisspelling):
1198 (WebCore::GraphicsContext::roundToDevicePixels):
1199 (WebCore::GraphicsContext::setShadow):
1200 (WebCore::GraphicsContext::clearShadow):
1201 (WebCore::GraphicsContext::beginTransparencyLayer):
1202 (WebCore::GraphicsContext::endTransparencyLayer):
1203 (WebCore::GraphicsContext::clearRect):
1204 (WebCore::GraphicsContext::strokeRect):
1205 (WebCore::GraphicsContext::setLineWidth):
1206 (WebCore::GraphicsContext::setLineCap):
1207 (WebCore::GraphicsContext::setLineJoin):
1208 (WebCore::GraphicsContext::setMiterLimit):
1209 (WebCore::GraphicsContext::setAlpha):
1210 (WebCore::GraphicsContext::setCompositeOperation):
1211 (WebCore::GraphicsContext::clip):
1212 (WebCore::GraphicsContext::translate):
1213 (WebCore::GraphicsContext::rotate):
1214 (WebCore::GraphicsContext::scale):
1215 (WebCore::GraphicsContext::addInnerRoundedRectClip):
1216 (WebCore::GraphicsContext::addRoundedRectClip):
1217 (WebCore::GraphicsContext::createRenderingDeviceContext):
1218 * platform/qt/ImageQt.cpp: Added.
1219 (WebCore::FrameData::clear):
1220 (WebCore::Image::initNativeData):
1221 (WebCore::Image::destroyNativeData):
1222 (WebCore::Image::invalidateNativeData):
1223 (WebCore::Image::loadResource):
1224 (WebCore::Image::supportsType):
1225 (WebCore::Image::draw):
1226 (WebCore::Image::drawTiled):
1227 (WebCore::Image::checkForSolidColor):
1228 * platform/qt/ImageSourceQt.cpp: Added.
1229 (WebCore::createDecoder):
1230 (WebCore::ImageSource::ImageSource):
1231 (WebCore::ImageSource::~ImageSource):
1232 (WebCore::ImageSource::initialized):
1233 (WebCore::ImageSource::setData):
1234 (WebCore::ImageSource::isSizeAvailable):
1235 (WebCore::ImageSource::size):
1236 (WebCore::ImageSource::repetitionCount):
1237 (WebCore::ImageSource::frameCount):
1238 (WebCore::ImageSource::createFrameAtIndex):
1239 (WebCore::ImageSource::frameDurationAtIndex):
1240 (WebCore::ImageSource::frameHasAlphaAtIndex):
1242 2006-08-23 Brady Eidson <beidson@apple.com>
1246 Moved default URL icon from WebKit to WebCore
1248 * Resources/urlIcon.tiff: Added.
1249 * WebCore.xcodeproj/project.pbxproj:
1250 * loader/icon/IconDataCache.cpp:
1251 (WebCore::IconDataCache::loadImageFromResource):
1252 * loader/icon/IconDataCache.h:
1253 * loader/icon/IconDatabase.cpp:
1254 (WebCore::IconDatabase::IconDatabase):
1255 (WebCore::IconDatabase::defaultIcon):
1256 * loader/icon/IconDatabase.h:
1258 2006-08-23 Adam Roben <aroben@apple.com>
1260 Reviewed by Darin, Adele.
1262 Some popup refactoring/cleanup.
1264 * html/HTMLSelectElement.cpp:
1265 (WebCore::HTMLSelectElement::defaultEventHandler):
1266 * rendering/RenderMenuList.cpp:
1267 (WebCore::RenderMenuList::RenderMenuList):
1268 (WebCore::RenderMenuList::~RenderMenuList):
1269 (WebCore::RenderMenuList::showPopup):
1270 (WebCore::RenderMenuList::hidePopup):
1271 * rendering/RenderMenuList.h:
1272 (WebCore::RenderMenuList::popup):
1273 (WebCore::RenderMenuList::popupIsVisible):
1274 * rendering/RenderPopupMenu.h:
1275 * rendering/RenderPopupMenuMac.h:
1276 (WebCore::RenderPopupMenuMac::hidePopup):
1278 2006-08-23 Nikolas Zimmermann <zimmermann@kde.org>
1280 Reviewed by Anders. Landed by rwlbuis.
1282 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
1283 WebKit should have Qt platform support
1285 * platform/qt/ResourceLoaderCurl.cpp: Added.
1286 (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
1287 (WebCore::ResourceLoader::~ResourceLoader):
1288 (WebCore::ResourceLoader::start):
1289 (WebCore::ResourceLoader::cancel):
1290 (WebCore::ResourceLoader::assembleResponseHeaders):
1291 (WebCore::ResourceLoader::retrieveCharset):
1292 (WebCore::ResourceLoader::receivedResponse):
1293 * platform/qt/ResourceLoaderManager.cpp: Added.
1294 (WebCore::ResourceLoaderManager::ResourceLoaderManager):
1295 (WebCore::ResourceLoaderManager::get):
1296 (WebCore::ResourceLoaderManager::useSimpleTransfer):
1297 (WebCore::writeCallback):
1298 (WebCore::headerCallback):
1299 (WebCore::ResourceLoaderManager::downloadTimerCallback):
1300 (WebCore::ResourceLoaderManager::remove):
1301 (WebCore::ResourceLoaderManager::add):
1302 (WebCore::ResourceLoaderManager::cancel):
1303 * platform/qt/ResourceLoaderManager.h: Added.
1304 * platform/qt/StringQt.cpp: Added.
1305 (WebCore::String::String):
1306 (WebCore::String::operator QString):
1307 (WebCore::DeprecatedString::operator QString):
1309 2006-08-23 Brady Eidson <beidson@apple.com>
1313 Added escapeSQLString() - a helper to escape strings to be used in textual SQL queries
1315 * WebCore.xcodeproj/project.pbxproj: Reordered some files
1316 * loader/icon/IconDataCache.cpp: Use the new escapeSQLString()
1317 (WebCore::IconDataCache::writeToDatabase):
1318 * loader/icon/IconDatabase.cpp: Use the new escapeSQLString() throughout
1319 (WebCore::IconDatabase::retainIconURL):
1320 (WebCore::IconDatabase::releaseIconURL):
1321 (WebCore::IconDatabase::forgetIconForIconURLFromDatabase):
1322 (WebCore::IconDatabase::establishIconIDForIconURL):
1323 (WebCore::imageDataForIconURLQuery):
1324 (WebCore::timeStampForIconURLQuery):
1325 (WebCore::iconURLForPageURLQuery):
1326 (WebCore::forgetPageURLQuery):
1327 (WebCore::setIconIDForPageURLQuery):
1328 (WebCore::getIconIDForIconURLQuery):
1329 (WebCore::addIconForIconURLQuery):
1330 (WebCore::hasIconForIconURLQuery):
1331 * loader/icon/SQLDatabase.h:
1332 (WebCore::escapeSQLString): Added
1334 2006-08-22 Maciej Stachowiak <mjs@apple.com>
1338 - assorted style cleanup of icon loader code:
1340 - wrapped all implementation files in namespace WebCore {} instead of "using namespace WebCore;" at top
1341 - split headers to be one per class, to match impl files
1342 - made files that are purely local in IconDatabase.cpp static
1343 - make each impl file include config.h as first header (and no config.h includes in other headers)
1344 - avoid multiple copies of Vector<unsigned char> for image data
1346 * WebCore.xcodeproj/project.pbxproj:
1347 * loader/icon/IconDataCache.cpp:
1348 * loader/icon/IconDataCache.h: Added.
1350 (WebCore::IconDataCache::getTimestamp):
1351 (WebCore::IconDataCache::setTimestamp):
1352 (WebCore::IconDataCache::getIconURL):
1353 * loader/icon/IconDatabase.cpp:
1354 (WebCore::IconDatabase::imageDataForIconURL):
1355 (WebCore::IconDatabase::iconForPageURL):
1356 (WebCore::pageURLTableIsEmptyQuery):
1357 (WebCore::imageDataForIconURLQuery):
1358 (WebCore::timeStampForIconURLQuery):
1359 (WebCore::iconURLForPageURLQuery):
1360 (WebCore::forgetPageURLQuery):
1361 (WebCore::setIconIDForPageURLQuery):
1362 (WebCore::getIconIDForIconURLQuery):
1363 (WebCore::addIconForIconURLQuery):
1364 (WebCore::hasIconForIconURLQuery):
1365 * loader/icon/IconDatabase.h:
1366 * loader/icon/SQLDatabase.cpp:
1367 * loader/icon/SQLDatabase.h:
1368 * loader/icon/SQLStatement.cpp:
1369 (WebCore::SQLStatement::getColumnBlobAsVector):
1370 * loader/icon/SQLStatement.h: Added.
1371 (WebCore::SQLStatement::isPrepared):
1372 (WebCore::SQLStatement::prepareAndStep):
1373 (WebCore::SQLStatement::lastError):
1374 (WebCore::SQLStatement::lastErrorMsg):
1375 * loader/icon/SQLTransaction.cpp:
1376 * loader/icon/SQLTransaction.h: Added.
1378 2006-08-22 Brady Eidson <beidson@apple.com>
1382 The role of the SiteIcon is now the original intention - to be a cache of data relating to an Icon
1383 As such, I'm renaming it to IconDataCache.
1384 Also, the IconDatabase has to manually set the image data on the IconDataCache and also sets the
1385 TimeStamp when an icon is created or the data is changed.
1386 IconDataCache now has a method to write itself *to* a given database, instead of read itself from one.
1387 IconDatabase schema changes to have the timestamp set manually instead of via a trigger.
1388 The overall purpose of this change is to cache the timestamp, killing off a very common SQL query.
1390 * WebCore.xcodeproj/project.pbxproj: Renamed a file
1391 * loader/icon/IconDataCache.cpp: Added.
1392 (IconDataCache::IconDataCache):
1393 (IconDataCache::getImage): Now either returns the stored image, or 0 - no attempt to grab data
1394 (IconDataCache::manuallySetImageData): Delete the old image and create the new one
1395 (IconDataCache::writeToDatabase): Write the current iconURL, data, and timestamp to the given DB
1396 (IconDataCache::imageDataStatus): Determine if an IconDataCache is new without data versus actually having null data
1397 * loader/icon/IconDatabase.cpp:
1398 (WebCore::IconDatabase::createDatabaseTables): Changed DB schema to version 5 (hopefully the final version)
1399 (WebCore::IconDatabase::iconForPageURL):
1400 (WebCore::IconDatabase::isIconExpiredForIconURL): Uses the timestamp in the IconDataCache object instead of always querying
1401 (WebCore::IconDatabase::getOrCreateIconDataCache): Added, to handle creation of new IconDataCache when appropriate
1402 (WebCore::IconDatabase::setIconDataForIconURL): Puts data in SiteIcon then marks it for a future write
1403 (WebCore::IconDatabase::syncDatabase): Now syncs SiteIconsPendingUpdate
1404 * loader/icon/IconDatabase.h:
1405 (WebCore::IconDataCache::getTimestamp):
1406 (WebCore::IconDataCache::setTimestamp):
1407 * loader/icon/SiteIcon.cpp: Removed.
1410 2006-08-22 Justin Garcia <justin.garcia@apple.com>
1412 Reviewed by harrison
1414 <http://bugzilla.opendarwin.org/show_bug.cgi?id=10449>
1415 REGRESSION(r15918): drag-into-marker.html failing
1417 * editing/ReplaceSelectionCommand.cpp:
1418 (WebCore::ReplaceSelectionCommand::doApply): Don't avoid nesting
1421 2006-08-22 Brady Eidson <beidson@apple.com>
1425 Added a check in getTIFFRepresentation to not proceed if the frame count is zero
1426 This is an error condition that was handled gracefully before - in certain circumstances
1427 the call to CGImageDestinationCreateWithData will spam the Console if it is passed null/empty data
1428 or invalid data. This small change bails out before that call if that call will definitely fail
1430 * platform/mac/ImageMac.mm:
1431 (WebCore::Image::getTIFFRepresentation):
1433 2006-08-22 David Harrison <harrison@apple.com>
1435 Backed out my last change (r15966) because it broke lots of layout tests.
1437 * editing/TextIterator.cpp:
1438 (WebCore::TextIterator::advance):
1440 2006-08-22 Maciej Stachowiak <mjs@apple.com>
1444 - added some SPI indirections to support the following in WebKit/Loader:
1445 - pull more WebDataSource code into WebFrameLoader
1446 - make WebMainResourceLoader not depend on WebKit or on SPI
1449 * WebCore.xcodeproj/project.pbxproj:
1450 * platform/mac/WebCoreSystemInterface.h:
1451 * platform/mac/WebCoreSystemInterface.mm:
1453 2006-08-22 Justin Garcia <justin.garcia@apple.com>
1455 Reviewed by harrison
1457 <rdar://problem/4052343&4052343&4426622> Mail hung on paste text
1459 * editing/ReplaceSelectionCommand.cpp:
1460 (WebCore::isInterchangeNewlineNode):
1461 (WebCore::isInterchangeConvertedSpaceSpan):
1462 (WebCore::ReplacementFragment::ReplacementFragment):
1463 (WebCore::ReplaceSelectionCommand::removeRedundantStyles): Compute the redundant inheritable styles and
1464 remove them and remove style nodes and style spans which were only contributing redundant styles.
1465 (WebCore::ReplaceSelectionCommand::doApply):
1466 * editing/ReplaceSelectionCommand.h:
1468 2006-08-22 David Harrison <harrison@apple.com>
1472 <rdar://problem/4077676> Inline hole line adheres to the Japanese characters in inline hole
1474 This happens because the underline is always 2 pixels thick, and placed 3 pixels above the bottom of the text box.
1477 * manual-tests/inline-input-marking.html: Added.
1478 Check that underlining of the inline input hole does not obscure the glyphs.
1480 * rendering/InlineTextBox.cpp:
1481 (WebCore::InlineTextBox::paintMarkedTextUnderline):
1482 Position underline at bottom of text box.
1483 Height of underline is reduced to 1 px when font's descent is less than or equal to 2 px.
1485 2006-08-22 Rob Buis <buis@kde.org>
1489 http://bugzilla.opendarwin.org/show_bug.cgi?id=10402
1490 REPRO: SVG crashes inside gradient code
1492 Make sure we do not try to update the canvas resource/gradient paintserver when it is not yet built.
1494 * ksvg2/svg/SVGGradientElement.cpp:
1495 (SVGGradientElement::notifyAttributeChange):
1496 (SVGGradientElement::resourceNotification):
1498 2006-08-22 David Harrison <harrison@apple.com>
1502 <rdar://problem/4523606> Represent heading elements in AXAttributedStringForTextMarkerRange
1504 * bridge/mac/WebCoreAXObject.mm:
1506 (-[WebCoreAXObject headingLevel]):
1507 (-[WebCoreAXObject isHeading]):
1508 New. Heading level is per the tag (h1 == 1, h2 == 2, etc.)
1510 (-[WebCoreAXObject role]):
1511 (-[WebCoreAXObject roleDescription]):
1512 Add role and roleDescription for headings.
1514 (-[WebCoreAXObject value]):
1515 Value is the headingLevel.
1517 (AXAttributeStringSetHeadingLevel):
1518 (AXAttributedStringAppendText):
1519 Put text's heading level (if applicable) in the attributes.
1521 2006-08-22 David Harrison <harrison@apple.com>
1525 <rdar://problem/4522205> Represent controls in AXAttributedStringForTextMarkerRange
1527 Treat controls as replaced elements, so that AXAttributedStringForTextMarkerRange will, too.
1529 * editing/TextIterator.cpp:
1530 (WebCore::TextIterator::advance):
1533 2006-08-22 David Harrison <harrison@apple.com>
1537 <rdar://problem/4407336> Some non-text elements return AXTextMarkerRangeForUIElement with equal start and end marker
1539 * bridge/mac/WebCoreAXObject.mm:
1540 (-[WebCoreAXObject textMarkerRange]):
1541 Use 0 and maxDeepOffset(), instead of caretMinOffset() and caretMaxRenderedOffset().
1542 Check for VisiblePositions being equal. If so, adjust end one to its next().
1543 That happens with, e.g., buttons.
1545 2006-08-22 Rob Buis <buis@kde.org>
1549 http://bugzilla.opendarwin.org/show_bug.cgi?id=10491
1550 KCanvasMatrix removal
1552 Remove KCanvasMatrix from project, using AffineTransform instead.
1554 * WebCore.xcodeproj/project.pbxproj:
1555 * kcanvas/KCanvasMatrix.cpp: Removed.
1556 * kcanvas/KCanvasMatrix.h: Removed.
1557 * kcanvas/KCanvasResources.cpp:
1558 (WebCore::KCanvasMarker::draw):
1559 * kcanvas/KCanvasResources.h:
1560 * kcanvas/RenderForeignObject.cpp:
1561 * kcanvas/RenderPath.h:
1562 * kcanvas/RenderSVGContainer.cpp:
1563 (WebCore::RenderSVGContainer::viewportTransform):
1564 (WebCore::RenderSVGContainer::getAspectRatio):
1565 * kcanvas/RenderSVGContainer.h:
1566 * kcanvas/RenderSVGText.cpp:
1567 * kcanvas/device/KRenderingDevice.h:
1568 * kcanvas/device/KRenderingPaintServerGradient.cpp:
1569 (WebCore::KRenderingPaintServerGradient::gradientTransform):
1570 (WebCore::KRenderingPaintServerGradient::setGradientTransform):
1571 (WebCore::KRenderingPaintServerGradient::externalRepresentation):
1572 * kcanvas/device/KRenderingPaintServerGradient.h:
1573 * kcanvas/device/KRenderingPaintServerPattern.cpp:
1574 (WebCore::KRenderingPaintServerPattern::patternTransform):
1575 (WebCore::KRenderingPaintServerPattern::setPatternTransform):
1576 (WebCore::KRenderingPaintServerPattern::externalRepresentation):
1577 * kcanvas/device/KRenderingPaintServerPattern.h:
1578 * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
1579 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
1580 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
1581 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
1582 (WebCore::KRenderingDeviceContextQuartz::concatCTM):
1583 (WebCore::KRenderingDeviceContextQuartz::ctm):
1584 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
1585 (WebCore::KRenderingPaintServerGradientQuartz::renderPath):
1586 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
1587 (WebCore::KRenderingPaintServerPatternQuartz::setup):
1588 * kcanvas/device/quartz/QuartzSupport.mm:
1589 * ksvg2/misc/KCanvasRenderingStyle.h:
1590 * ksvg2/svg/SVGAnimateTransformElement.cpp:
1591 * ksvg2/svg/SVGAnimateTransformElement.h:
1592 * ksvg2/svg/SVGLinearGradientElement.cpp:
1593 (SVGLinearGradientElement::buildGradient):
1594 * ksvg2/svg/SVGPatternElement.cpp:
1595 (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
1596 (WebCore::SVGPatternElement::drawPatternContentIntoTile):
1597 (WebCore::SVGPatternElement::notifyAttributeChange):
1598 * ksvg2/svg/SVGPatternElement.h:
1599 * ksvg2/svg/SVGRadialGradientElement.cpp:
1600 (WebCore::SVGRadialGradientElement::buildGradient):
1602 2006-08-22 Rob Buis <buis@kde.org>
1606 http://bugzilla.opendarwin.org/show_bug.cgi?id=10405
1607 REPRO: SVG Maze crashes in RenderPath code
1609 Do not render a path when it is empty so maze15.svg does not crash anymore.
1610 Also get rid of a runtime warning issued by CGContextGetPathBoundingBox.
1612 * kcanvas/RenderPath.cpp:
1613 (WebCore::RenderPath::paint):
1614 * kcanvas/device/quartz/KCanvasPathQuartz.mm:
1615 (WebCore::KCanvasPathQuartz::strokeBoundingBox):
1617 2006-08-21 Brady Eidson <beidson@apple.com>
1621 <rdar://4690949> - New IconDB: Need to prune unretained icons on startup
1623 Added a flag to track whether or not the initial pruning has taken place on startup
1624 If that flag is not set, IconURL retain counts will be tracked in a temporary db table
1625 in addition to the in-memory hash. Then when the timer fires after initial retains
1626 are complete, we prune those icons not in the retain table, prune dangling PageURL
1627 references, delete the temporary table, and set the flag - and carry on as normal
1629 * loader/icon/IconDatabase.cpp:
1630 (WebCore::IconDatabase::IconDatabase): initialize the flag
1631 (WebCore::IconDatabase::open): changed the schema of the temporary table
1632 (WebCore::IconDatabase::retainIconURL): store the icon retain to the temp table if starting up
1633 (WebCore::IconDatabase::releaseIconURL): ditto
1634 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): remove all icons *not* in the retain table, then
1635 wipe all the PageURLs who no longer point to a valid IconURL
1636 * loader/icon/IconDatabase.h:
1638 2006-08-21 Alexey Proskuryakov <ap@nypop.com>
1642 http://bugzilla.opendarwin.org/show_bug.cgi?id=10419
1643 XSLTProcessor transformToFragment fails because of an XML declaration
1645 Test: fast/xsl/transformToFragment-XML-declaration.html
1647 * xml/XSLTProcessor.cpp:
1648 (WebCore::XSLTProcessor::transformToString): Always inhibit XML declaration printout.
1650 2006-08-21 David Harrison <harrison@apple.com>
1654 <rdar://problem/4471481> Represent misspellings in AXAttributedStringForTextMarkerRange
1656 Added support for the NSAccessibilityMisspelledTextAttribute.
1658 Test cases added: None. Manual AX testing is way too awkward, and automated testing
1659 is not possible. See following bug...
1660 <rdar://problem/4256882> Need automated testing support for accessibility APIs
1662 * bridge/mac/WebCoreAXObject.mm:
1663 Lots of trivial formatting in many methods.
1665 (-[WebCoreAXObject accessibilityAttributeValue:]):
1666 Fixed AXStartTextMarker and AXEndTextMarker to use startOfDocument and endOfDocument, instead of
1667 of positionForCoordinates. I had seen erroneous endOfDocument results while testing the spelling
1670 (WebCore::AXAttributeStringSetSpelling):
1671 New. Adds the NSAccessibilityMisspelledTextAttribute for misspelled words.
1673 (-[WebCoreAXObject AXAttributedStringAppendText:]):
1674 Added call to AXAttributeStringSetSpelling.
1676 * editing/visible_units.cpp:
1677 (WebCore::startOfDocument):
1678 (WebCore::endOfDocument):
1679 Added for AXStartTextMarker/AXEndTextMarker fix, these forms of the familiar functions take a Node*,
1680 so a previously existing VisiblePosition is not required.
1682 * editing/visible_units.h:
1683 Declare new forms of startOfDocument and endOfDocument.
1685 2006-08-21 Nikolas Zimmermann <zimmermann@kde.org>
1689 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
1690 WebKit should have Qt platform support
1692 * platform/qt/TemporaryLinkStubs.cpp: Added.
1693 (JavaAppletWidget::JavaAppletWidget):
1694 (Font::selectionRectForComplexText):
1695 (Font::offsetForPositionForComplexText):
1696 (WebCore::refreshPlugins):
1697 (WebCore::focusRingColor):
1699 (WebCore::TextField::selectAll):
1700 (WebCore::TextField::addSearchResult):
1701 (WebCore::TextField::selectionStart):
1702 (WebCore::TextField::hasSelectedText):
1703 (WebCore::TextField::selectedText):
1704 (WebCore::TextField::setAutoSaveName):
1705 (WebCore::TextField::checksDescendantsForFocus):
1706 (WebCore::TextField::setSelection):
1707 (WebCore::TextField::setMaxResults):
1708 (WebCore::TextField::edited):
1709 (WebCore::TextField::focusPolicy):
1710 (WebCore::TextField::TextField):
1711 (WebCore::TextField::~TextField):
1712 (WebCore::TextField::setFont):
1713 (WebCore::TextField::setAlignment):
1714 (WebCore::TextField::setWritingDirection):
1715 (WebCore::TextField::maxLength):
1716 (WebCore::TextField::setMaxLength):
1717 (WebCore::TextField::text):
1718 (WebCore::TextField::setText):
1719 (WebCore::TextField::cursorPosition):
1720 (WebCore::TextField::setCursorPosition):
1721 (WebCore::TextField::setEdited):
1722 (WebCore::TextField::setReadOnly):
1723 (WebCore::TextField::setPlaceholderString):
1724 (WebCore::TextField::setColors):
1725 (WebCore::TextField::sizeForCharacterWidth):
1726 (WebCore::TextField::baselinePosition):
1727 (WebCore::TextField::setLiveSearch):
1728 (WebCore::Slider::Slider):
1729 (WebCore::Slider::sizeHint):
1730 (WebCore::Slider::~Slider):
1731 (WebCore::Slider::setValue):
1732 (WebCore::Slider::setMaxValue):
1733 (WebCore::Slider::setMinValue):
1734 (WebCore::Slider::setFont):
1735 (WebCore::Slider::value):
1736 (WebCore::Slider::focusPolicy):
1737 (WebCore::ScrollBar::ScrollBar):
1738 (WebCore::ScrollBar::setSteps):
1739 (WebCore::ScrollBar::scroll):
1740 (WebCore::ScrollBar::setValue):
1741 (WebCore::ScrollBar::setKnobProportion):
1742 (WebCore::PlatformScrollBar::PlatformScrollBar):
1743 (WebCore::PlatformScrollBar::~PlatformScrollBar):
1744 (WebCore::PlatformScrollBar::width):
1745 (WebCore::PlatformScrollBar::height):
1746 (WebCore::PlatformScrollBar::setEnabled):
1747 (WebCore::PlatformScrollBar::paint):
1748 (WebCore::PlatformScrollBar::setScrollBarValue):
1749 (WebCore::PlatformScrollBar::setKnobProportion):
1750 (WebCore::PlatformScrollBar::setRect):
1751 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
1752 (WebCore::CheckCacheObjectStatus):
1753 (WebCore::CheckIfReloading):
1754 (WebCore::ServeSynchronousRequest):
1755 (WebCore::historyContains):
1756 (WebCore::submitButtonDefaultLabel):
1757 (WebCore::inputElementAltText):
1758 (WebCore::resetButtonDefaultLabel):
1759 (WebCore::defaultLanguage):
1760 (WebCore::findNextSentenceFromIndex):
1761 (WebCore::findSentenceBoundary):
1762 (WebCore::findNextWordFromIndex):
1763 (WebCore::findWordBoundary):
1764 (Frame::setNeedsReapplyStyles):
1765 (WebCore::screenDepthPerComponent):
1766 (WebCore::screenIsMonochrome):
1767 (WebCore::searchableIndexIntroduction):
1768 (WebCore::setFocusRingColorChangeFunction):
1769 (FrameView::updateBorder):
1770 (loadResourceIntoArray):
1771 (PlugInInfoStore::createPluginInfoForPluginAtIndex):
1772 (PlugInInfoStore::pluginCount):
1773 (WebCore::PlugInInfoStore::supportsMIMEType):
1774 (FileButton::FileButton):
1775 (FileButton::click):
1776 (FileButton::sizeForCharacterWidth):
1777 (FileButton::focusPolicy):
1778 (FileButton::frameGeometry):
1779 (FileButton::setFilename):
1780 (FileButton::baselinePosition):
1781 (FileButton::setFrameGeometry):
1782 (FileButton::setDisabled):
1783 (WebCore::supportedKeySizes):
1784 (WebCore::signedPublicKeyAndChallengeString):
1786 2006-08-21 Nikolas Zimmermann <zimmermann@kde.org>
1790 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
1791 WebKit should have Qt platform support
1793 * platform/qt/CursorQt.cpp: Added.
1794 (WebCore::Cursor::Cursor):
1795 (WebCore::Cursor::~Cursor):
1796 (WebCore::Cursor::operator=):
1797 (WebCore::Cursors::Cursors::self):
1798 (WebCore::moveCursor):
1799 (WebCore::crossCursor):
1800 (WebCore::handCursor):
1801 (WebCore::iBeamCursor):
1802 (WebCore::waitCursor):
1803 (WebCore::helpCursor):
1804 (WebCore::eastResizeCursor):
1805 (WebCore::northResizeCursor):
1806 (WebCore::northEastResizeCursor):
1807 (WebCore::northWestResizeCursor):
1808 (WebCore::southResizeCursor):
1809 (WebCore::southEastResizeCursor):
1810 (WebCore::southWestResizeCursor):
1811 (WebCore::westResizeCursor):
1812 (WebCore::northSouthResizeCursor):
1813 (WebCore::eastWestResizeCursor):
1814 (WebCore::northEastSouthWestResizeCursor):
1815 (WebCore::northWestSouthEastResizeCursor):
1816 (WebCore::columnResizeCursor):
1817 (WebCore::rowResizeCursor):
1818 * platform/qt/RenderThemeQt.cpp: Added.
1819 (WebCore::RenderThemeQt::RenderThemeQt):
1820 (WebCore::RenderThemeQt::supportsHover):
1821 (WebCore::RenderThemeQt::paintCheckbox):
1822 (WebCore::RenderThemeQt::paintRadio):
1824 (WebCore::RenderThemeQt::isControlStyled):
1825 (WebCore::RenderThemeQt::controlSupportsTints):
1826 (WebCore::RenderThemeQt::systemFont):
1827 (WebCore::RenderThemeQt::createPopupMenu):
1828 (WebCore::RenderThemeQt::addIntrinsicMargins):
1829 (WebCore::RenderThemeQt::stylePainterAndWidgetForPaintInfo):
1830 (WebCore::RenderThemeQt::setCheckboxSize):
1831 (WebCore::RenderThemeQt::setRadioSize):
1832 (WebCore::RenderThemeQt::supportsFocus):
1833 (WebCore::RenderThemeQt::applyTheme):
1834 (WebCore::RenderThemeQt::adjustButtonStyle):
1835 (WebCore::RenderThemeQt::paintButton):
1836 (WebCore::RenderThemeQt::adjustTextFieldStyle):
1837 (WebCore::RenderThemeQt::paintTextField):
1839 2006-08-21 Nikolas Zimmermann <zimmermann@kde.org>
1843 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
1844 WebKit should have Qt platform support
1846 * platform/qt/SharedTimerQt.cpp: Added.
1847 (WebCore:setSharedTimerFiredFunction):
1848 (WebCore::setSharedTimerFireTime):
1849 (WebCore::stopSharedTimer):
1850 * platform/qt/SharedTimerQt.h: Added.
1851 (WebCore::SharedTimerQt::SharedTimerQt):
1852 (WebCore::SharedTimerQt::~SharedTimerQt):
1853 (WebCore::SharedTimerQt::inst):
1854 (WebCore::SharedTimerQt::fire):
1855 * platform/qt/SystemTimeQt.cpp: Added.
1856 (WebCore::currentTime):
1858 2006-08-21 Brady Eidson <beidson@apple.com>
1862 -Defers writing to the database via a timer and handles starting the timer
1865 * loader/icon/IconDatabase.cpp:
1866 (WebCore::IconDatabase::IconDatabase):
1867 (WebCore::IconDatabase::open): Don't start the update timer by default
1868 (WebCore::IconDatabase::close): Call syncDatabase()
1869 (WebCore::IconDatabase::setPrivateBrowsingEnabled): Call syncDatabase()
1870 (WebCore::IconDatabase::setIconURLForPageURL): Setup the cached url, but defer the DB call
1871 (WebCore::IconDatabase::setIconURLForPageURLInDatabase): Actually commit the url to the DB
1872 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup):
1873 (WebCore::IconDatabase::updateDatabase): The updateTimer calls this, which just calls syncDatabase()
1874 (WebCore::IconDatabase::syncDatabase): Add and remove pending pageURLs and iconURLs, and stop the updateTimer
1875 * loader/icon/IconDatabase.h:
1877 2006-08-21 Alexey Proskuryakov <ap@nypop.com>
1881 - http://bugzilla.opendarwin.org/show_bug.cgi?id=10429
1882 XSLTProcessor.transformToFragment crashes if the owner document is empty
1884 Test: fast/js/xslt-fragment-in-empty-doc.html
1886 * dom/XMLTokenizer.cpp:
1887 (WebCore::XMLTokenizer::XMLTokenizer): Don't iterate over the element stack if it's empty.
1889 2006-08-21 Brady Eidson <beidson@apple.com>
1893 -Added timer-based, deferred deletion of database records - PageURLs and Icons handled seperately
1894 In the near future, we'll also have timer-based deferred *addition* of database records
1895 -Keep retain/release counts in a hash instead of a DB table
1896 -Keep only one hash record for the SiteIcons
1897 -Renamed some methods for clarity
1899 * bridge/mac/WebCoreIconDatabaseBridge.h: Renamed method for clarity
1900 * bridge/mac/WebCoreIconDatabaseBridge.mm: Ditto
1901 (-[WebCoreIconDatabaseBridge _hasEntryForIconURL:]): Ditto
1902 * loader/icon/IconDatabase.cpp:
1903 (WebCore::IconDatabase::IconDatabase):
1904 (WebCore::IconDatabase::open): Added new timer setup
1905 (WebCore::IconDatabase::iconForPageURL): Only work with one hash of the SiteIcons
1906 (WebCore::IconDatabase::retainIconForPageURL): Keep count in a hash
1907 (WebCore::IconDatabase::releaseIconForPageURL): Keep count in a hash, use deferred deletion
1908 (WebCore::IconDatabase::retainIconURL): Added
1909 (WebCore::IconDatabase::releaseIconURL): Added
1910 (WebCore::IconDatabase::forgetPageURL): Added
1911 (WebCore::IconDatabase::isIconURLRetained): New and improved simplicity
1912 (WebCore::IconDatabase::setIconDataForIconURL): Cleanup
1913 (WebCore::IconDatabase::setIconURLForPageURL):
1914 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Renamed
1915 (WebCore::IconDatabase::pruneIconsPendingDeletion): Added
1916 (WebCore::IconDatabase::hasEntryForIconURL): Renamed for clarity
1917 * loader/icon/IconDatabase.h: Added multiple stuffs
1919 2006-08-21 Brady Eidson <beidson@apple.com>
1921 Reviewed by Maciej's rubberstamp
1923 Removed stale file references from the Xcode.proj
1925 * WebCore.xcodeproj/project.pbxproj:
1927 2006-08-20 Nikolas Zimmermann <zimmermann@kde.org>
1929 Reviewed by Maciej. Landed by rwlbuis.
1931 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10463
1932 WebKit should have Qt platform support
1934 Removing HelperQt.h usage by creating appropriate operators
1935 constructor in some of the platform classes, as suggested by Darin.
1938 * platform/DeprecatedString.h:
1940 * platform/PlatformString.h:
1941 * platform/qt/ComboBoxQt.cpp:
1942 (WebCore::PlatformComboBox::appendItem):
1943 (WebCore::PlatformComboBox::appendGroupLabel):
1944 (WebCore::PlatformComboBox::setFont):
1945 * platform/qt/LineEditQt.cpp:
1946 (WebCore::PlatformLineEdit::setFont):
1947 (WebCore::PlatformLineEdit::setText):
1948 (WebCore::PlatformLineEdit::text):
1949 (WebCore::PlatformLineEdit::selectedText):
1950 * platform/qt/ListBoxQt.cpp:
1951 (WebCore::ListBox::setFont):
1952 (WebCore::ListBox::appendItem):
1953 * platform/qt/PlatformKeyboardEventQt.cpp:
1954 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
1955 * platform/qt/ScrollViewQt.cpp:
1956 * platform/qt/StringQt.cpp: Added.
1957 (WebCore::String::String):
1958 (WebCore::String::operator QString):
1959 (WebCore::DeprecatedString::operator QString):
1960 * platform/qt/TextEditQt.cpp:
1961 * platform/qt/WidgetQt.cpp:
1962 (WebCore::Widget::setFont):
1964 2006-08-18 Steve Falkenburg <sfalken@apple.com>
1966 Rubber stamped by adele.
1968 Fix call to WebFormDelegate's textFieldDidBeginEditing.
1970 * rendering/RenderTextControl.cpp:
1971 (WebCore::RenderTextControl::subtreeHasChanged):
1973 2006-08-19 Nikolas Zimmermann <zimmermann@kde.org>
1975 Reviewed by Eric. Landed by rwlbuis.
1977 Next chunk of the implementation for:
1978 http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
1980 WebKit should have Qt platform support
1982 * platform/qt/KeyboardCodes.h: Added.
1983 * platform/qt/PlatformKeyboardEventQt.cpp: Added.
1984 (WebCore::keyIdentifierForQtKeyCode):
1985 (WebCore::windowsKeyCodeForKeyEvent):
1986 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
1987 * platform/qt/PlatformMouseEventQt.cpp: Added.
1989 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
1991 2006-08-19 Nikolas Zimmermann <zimmermann@kde.org>
1993 Reviewed by Eric. Landed by rwlbuis.
1995 Next chunk of the implementation for:
1996 http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
1998 WebKit should have Qt platform support
2000 * platform/qt/AffineTransformQt.cpp: Added.
2001 (WebCore::AffineTransform::AffineTransform):
2002 (WebCore::AffineTransform::setMatrix):
2003 (WebCore::AffineTransform::map):
2004 (WebCore::AffineTransform::mapRect):
2005 (WebCore::AffineTransform::isIdentity):
2006 (WebCore::AffineTransform::m11):
2007 (WebCore::AffineTransform::m12):
2008 (WebCore::AffineTransform::m21):
2009 (WebCore::AffineTransform::m22):
2010 (WebCore::AffineTransform::dx):
2011 (WebCore::AffineTransform::dy):
2012 (WebCore::AffineTransform::reset):
2013 (WebCore::AffineTransform::scale):
2014 (WebCore::AffineTransform::rotate):
2015 (WebCore::AffineTransform::translate):
2016 (WebCore::AffineTransform::shear):
2017 (WebCore::AffineTransform::det):
2018 (WebCore::AffineTransform::invert):
2019 (WebCore::AffineTransform::operator QMatrix):
2020 (WebCore::AffineTransform::operator==):
2021 (WebCore::AffineTransform::operator*=):
2022 (WebCore::AffineTransform::operator*):
2023 * platform/qt/BrowserExtensionQt.cpp: Added.
2024 (WebCore::BrowserExtensionQt::BrowserExtensionQt):
2025 (WebCore::BrowserExtensionQt::canRunModal):
2026 (WebCore::BrowserExtensionQt::createNewWindow):
2027 (WebCore::BrowserExtensionQt::canRunModalNow):
2028 (WebCore::BrowserExtensionQt::runModal):
2029 (WebCore::BrowserExtensionQt::goBackOrForward):
2030 (WebCore::BrowserExtensionQt::historyURL):
2031 (WebCore::BrowserExtensionQt::setTypedIconURL):
2032 (WebCore::BrowserExtensionQt::setIconURL):
2033 (WebCore::BrowserExtensionQt::getHistoryLength):
2034 * platform/qt/BrowserExtensionQt.h: Added.
2035 * platform/qt/CookieJarQt.cpp: Added.
2036 (WebCore::setCookies):
2038 (WebCore::cookiesEnabled):
2039 * platform/qt/PageQt.cpp: Added.
2040 (WebCore::rootWindowForFrame):
2041 (WebCore::Page::windowRect):
2042 (WebCore::Page::setWindowRect):
2043 * platform/qt/PathQt.cpp: Added.
2044 (WebCore::Path::Path):
2045 (WebCore::Path::~Path):
2046 (WebCore::Path::operator=):
2047 (WebCore::Path::contains):
2048 (WebCore::Path::translate):
2049 (WebCore::Path::boundingRect):
2050 (WebCore::Path::moveTo):
2051 (WebCore::Path::addLineTo):
2052 (WebCore::Path::addQuadCurveTo):
2053 (WebCore::Path::addBezierCurveTo):
2054 (WebCore::Path::addArcTo):
2055 (WebCore::Path::closeSubpath):
2056 (WebCore::Path::addArc):
2057 (WebCore::Path::addRect):
2058 (WebCore::Path::addEllipse):
2059 (WebCore::Path::clear):
2060 * platform/qt/ScreenQt.cpp: Added.
2061 (WebCore::screenRect):
2062 (WebCore::screenDepth):
2063 (WebCore::usableScreenRect):
2066 2006-08-19 Nikolas Zimmermann <zimmermann@kde.org>
2068 Reviewed by Eric. Landed by rwlbuis.
2070 First chunk of the implementation for:
2071 http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
2073 WebKit should have Qt platform support
2075 * platform/qt/ComboBoxQt.cpp: Added.
2076 (WebCore::PlatformComboBox::PlatformComboBox):
2077 (WebCore::PlatformComboBox::~PlatformComboBox):
2078 (WebCore::PlatformComboBox::setParentWidget):
2079 (WebCore::PlatformComboBox::clear):
2080 (WebCore::PlatformComboBox::appendItem):
2081 (WebCore::PlatformComboBox::appendGroupLabel):
2082 (WebCore::PlatformComboBox::appendSeparator):
2083 (WebCore::PlatformComboBox::setCurrentItem):
2084 (WebCore::PlatformComboBox::sizeHint):
2085 (WebCore::PlatformComboBox::frameGeometry):
2086 (WebCore::PlatformComboBox::setFrameGeometry):
2087 (WebCore::PlatformComboBox::baselinePosition):
2088 (WebCore::PlatformComboBox::setFont):
2089 (WebCore::PlatformComboBox::focusPolicy):
2090 (WebCore::PlatformComboBox::itemSelected):
2091 (WebCore::PlatformComboBox::setWritingDirection):
2092 (WebCore::PlatformComboBox::populate):
2093 (WebCore::PlatformComboBox::populateMenu):
2094 * platform/qt/LineEditQt.cpp: Added.
2095 (WebCore::PlatformLineEdit::PlatformLineEdit):
2096 (WebCore::PlatformLineEdit::~PlatformLineEdit):
2097 (WebCore::PlatformLineEdit::setParentWidget):
2098 (WebCore::PlatformLineEdit::setColors):
2099 (WebCore::PlatformLineEdit::setAlignment):
2100 (WebCore::PlatformLineEdit::setCursorPosition):
2101 (WebCore::PlatformLineEdit::cursorPosition):
2102 (WebCore::PlatformLineEdit::setEdited):
2103 (WebCore::PlatformLineEdit::edited):
2104 (WebCore::PlatformLineEdit::setFont):
2105 (WebCore::PlatformLineEdit::setMaxLength):
2106 (WebCore::PlatformLineEdit::maxLength):
2107 (WebCore::PlatformLineEdit::setReadOnly):
2108 (WebCore::PlatformLineEdit::isReadOnly):
2109 (WebCore::PlatformLineEdit::setText):
2110 (WebCore::PlatformLineEdit::text):
2111 (WebCore::PlatformLineEdit::setWritingDirection):
2112 (WebCore::PlatformLineEdit::selectAll):
2113 (WebCore::PlatformLineEdit::hasSelectedText):
2114 (WebCore::PlatformLineEdit::selectionStart):
2115 (WebCore::PlatformLineEdit::selectedText):
2116 (WebCore::PlatformLineEdit::setSelection):
2117 (WebCore::PlatformLineEdit::sizeForCharacterWidth):
2118 (WebCore::PlatformLineEdit::baselinePosition):
2119 (WebCore::PlatformLineEdit::focusPolicy):
2120 (WebCore::PlatformLineEdit::checksDescendantsForFocus):
2121 (WebCore::PlatformLineEdit::setLiveSearch):
2122 (WebCore::PlatformLineEdit::setAutoSaveName):
2123 (WebCore::PlatformLineEdit::setMaxResults):
2124 (WebCore::PlatformLineEdit::setPlaceholderString):
2125 (WebCore::PlatformLineEdit::addSearchResult):
2126 * platform/qt/ListBoxQt.cpp: Added.
2127 (WebCore::ListBox::ListBox):
2128 (WebCore::ListBox::~ListBox):
2129 (WebCore::ListBox::setParentWidget):
2130 (WebCore::ListBox::sizeForNumberOfLines):
2131 (WebCore::ListBox::setSelectionMode):
2132 (WebCore::ListBox::clear):
2133 (WebCore::ListBox::doneAppendingItems):
2134 (WebCore::ListBox::setSelected):
2135 (WebCore::ListBox::isSelected):
2136 (WebCore::ListBox::setEnabled):
2137 (WebCore::ListBox::isEnabled):
2138 (WebCore::ListBox::setWritingDirection):
2139 (WebCore::ListBox::focusPolicy):
2140 (WebCore::ListBox::checksDescendantsForFocus):
2141 (WebCore::ListBox::clearCachedTextRenderers):
2142 (WebCore::ListBox::setFont):
2143 (WebCore::ListBox::appendItem):
2144 * platform/qt/ScrollViewQt.cpp: Added.
2145 (WebCore::ScrollView::ScrollView):
2146 (WebCore::ScrollView::~ScrollView):
2147 (WebCore::ScrollView::setParentWidget):
2148 (WebCore::ScrollView::updateContents):
2149 (WebCore::ScrollView::visibleWidth):
2150 (WebCore::ScrollView::visibleHeight):
2151 (WebCore::ScrollView::visibleContentRect):
2152 (WebCore::ScrollView::setContentsPos):
2153 (WebCore::ScrollView::resizeContents):
2154 (WebCore::ScrollView::contentsX):
2155 (WebCore::ScrollView::contentsY):
2156 (WebCore::ScrollView::contentsWidth):
2157 (WebCore::ScrollView::contentsHeight):
2158 (WebCore::ScrollView::viewportToContents):
2159 (WebCore::ScrollView::contentsToViewport):
2160 (WebCore::ScrollView::scrollOffset):
2161 (WebCore::ScrollView::scrollBy):
2162 (WebCore::ScrollView::hScrollBarMode):
2163 (WebCore::ScrollView::vScrollBarMode):
2164 (WebCore::ScrollView::suppressScrollBars):
2165 (WebCore::ScrollView::setHScrollBarMode):
2166 (WebCore::ScrollView::setVScrollBarMode):
2167 (WebCore::ScrollView::setScrollBarsMode):
2168 (WebCore::ScrollView::setStaticBackground):
2169 (WebCore::ScrollView::addChild):
2170 (WebCore::ScrollView::removeChild):
2171 (WebCore::ScrollView::scrollPointRecursively):
2172 (WebCore::ScrollView::inWindow):
2173 * platform/qt/TextEditQt.cpp: Added.
2174 (WebCore::PlatformTextEdit::PlatformTextEdit):
2175 (WebCore::PlatformTextEdit::~PlatformTextEdit):
2176 (WebCore::PlatformTextEdit::setParentWidget):
2177 (WebCore::PlatformTextEdit::setColors):
2178 (WebCore::PlatformTextEdit::setAlignment):
2179 (WebCore::PlatformTextEdit::setLineHeight):
2180 (WebCore::PlatformTextEdit::setCursorPosition):
2181 (WebCore::PlatformTextEdit::getCursorPosition):
2182 (WebCore::PlatformTextEdit::setFont):
2183 (WebCore::PlatformTextEdit::setReadOnly):
2184 (WebCore::PlatformTextEdit::isReadOnly):
2185 (WebCore::PlatformTextEdit::setDisabled):
2186 (WebCore::PlatformTextEdit::isDisabled):
2187 (WebCore::PlatformTextEdit::hasSelectedText):
2188 (WebCore::PlatformTextEdit::setText):
2189 (WebCore::PlatformTextEdit::text):
2190 (WebCore::PlatformTextEdit::textWithHardLineBreaks):
2191 (WebCore::PlatformTextEdit::focusPolicy):
2192 (WebCore::PlatformTextEdit::setWordWrap):
2193 (WebCore::PlatformTextEdit::wordWrap):
2194 (WebCore::PlatformTextEdit::setScrollBarModes):
2195 (WebCore::PlatformTextEdit::setWritingDirection):
2196 (WebCore::PlatformTextEdit::selectionStart):
2197 (WebCore::PlatformTextEdit::selectionEnd):
2198 (WebCore::PlatformTextEdit::setSelectionStart):
2199 (WebCore::PlatformTextEdit::setSelectionEnd):
2200 (WebCore::PlatformTextEdit::selectAll):
2201 (WebCore::PlatformTextEdit::setSelectionRange):
2202 (WebCore::PlatformTextEdit::sizeWithColumnsAndRows):
2203 (WebCore::PlatformTextEdit::checksDescendantsForFocus):
2204 * platform/qt/WidgetQt.cpp: Added.
2205 (WebCore::WidgetPrivate::WidgetPrivate):
2206 (WebCore::WidgetPrivate::~WidgetPrivate):
2207 (WebCore::Widget::Widget):
2208 (WebCore::Widget::~Widget):
2209 (WebCore::Widget::setClient):
2210 (WebCore::Widget::client):
2211 (WebCore::Widget::frameGeometry):
2212 (WebCore::Widget::hasFocus):
2213 (WebCore::Widget::setFocus):
2214 (WebCore::Widget::clearFocus):
2215 (WebCore::Widget::font):
2216 (WebCore::Widget::setFont):
2217 (WebCore::Widget::setCursor):
2218 (WebCore::Widget::show):
2219 (WebCore::Widget::hide):
2220 (WebCore::Widget::setQWidget):
2221 (WebCore::Widget::qwidget):
2222 (WebCore::Widget::setParentWidget):
2223 (WebCore::Widget::parentWidget):
2224 (WebCore::Widget::setFrameGeometry):
2225 (WebCore::Widget::mapFromGlobal):
2226 (WebCore::Widget::scaleFactor):
2227 (WebCore::Widget::lockDrawingFocus):
2228 (WebCore::Widget::unlockDrawingFocus):
2229 (WebCore::Widget::paint):
2230 (WebCore::Widget::enableFlushDrawing):
2231 (WebCore::Widget::isEnabled):
2232 (WebCore::Widget::setIsSelected):
2233 (WebCore::Widget::disableFlushDrawing):
2234 (WebCore::Widget::setEnabled):
2235 (WebCore::Widget::focusPolicy):
2237 2006-08-19 Nikolas Zimmermann <zimmermann@kde.org>
2239 Reviewed by Eric. Landed by rwlbuis.
2241 First chunk of the implementation for:
2242 http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
2244 WebKit should have Qt platform support
2246 * platform/qt/ColorQt.cpp: Added.
2247 (WebCore::Color::Color):
2248 (WebCore::Color::operator QColor):
2249 * platform/qt/FloatPointQt.cpp: Added.
2250 (WebCore::FloatPoint::FloatPoint):
2251 (WebCore::FloatPoint::operator QPointF):
2252 * platform/qt/FloatRectQt.cpp: Added.
2253 (WebCore::FloatRect::FloatRect):
2254 (WebCore::FloatRect::operator QRectF):
2255 * platform/qt/IntPointQt.cpp: Added.
2256 (WebCore::IntPoint::IntPoint):
2257 (WebCore::IntPoint::operator QPoint):
2258 * platform/qt/IntRectQt.cpp: Added.
2259 (WebCore::IntRect::IntRect):
2260 (WebCore::IntRect::operator QRect):
2261 * platform/qt/IntSizeQt.cpp: Added.
2262 (WebCore::IntSize::IntSize):
2263 (WebCore::IntSize::operator QSize):
2265 2006-08-18 Nikolas Zimmermann <zimmermann@kde.org>
2267 Reviewed by Eric. Landed by rwlbuis.
2269 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10470
2270 The Qt platform needs a KCanvas device.
2272 * kcanvas/device/qt/KCanvasClipperQt.cpp: Added.
2273 (WebCore::KCanvasClipperQt::applyClip):
2274 * kcanvas/device/qt/KCanvasClipperQt.h: Added.
2275 (WebCore::KCanvasClipperQt::KCanvasClipperQt):
2276 * kcanvas/device/qt/KCanvasPathQt.cpp: Added.
2277 (WebCore::KCanvasPathQt::KCanvasPathQt):
2278 (WebCore::KCanvasPathQt::~KCanvasPathQt):
2279 (WebCore::KCanvasPathQt::isEmpty):
2280 (WebCore::KCanvasPathQt::moveTo):
2281 (WebCore::KCanvasPathQt::lineTo):
2282 (WebCore::KCanvasPathQt::curveTo):
2283 (WebCore::KCanvasPathQt::closeSubpath):
2284 (WebCore::KCanvasPathQt::boundingBox):
2285 (WebCore::KCanvasPathQt::strokeBoundingBox):
2286 (WebCore::KCanvasPathQt::strokeContainsPoint):
2287 (WebCore::KCanvasPathQt::containsPoint):
2288 * kcanvas/device/qt/KCanvasPathQt.h: Added.
2289 (WebCore::KCanvasPathQt::qtPath):
2290 * kcanvas/device/qt/KRenderingDeviceQt.cpp: Added.
2291 (WebCore::KRenderingDeviceContextQt::KRenderingDeviceContextQt):
2292 (WebCore::KRenderingDeviceContextQt::~KRenderingDeviceContextQt):
2293 (WebCore::KRenderingDeviceContextQt::concatCTM):
2294 (WebCore::KRenderingDeviceContextQt::ctm):
2295 (WebCore::KRenderingDeviceContextQt::mapFromVisual):
2296 (WebCore::KRenderingDeviceContextQt::mapToVisual):
2297 (WebCore::KRenderingDeviceContextQt::clearPath):
2298 (WebCore::KRenderingDeviceContextQt::addPath):
2299 (WebCore::KRenderingDeviceContextQt::createGraphicsContext):
2300 (WebCore::KRenderingDeviceContextQt::painter):
2301 (WebCore::KRenderingDeviceContextQt::pathBBox):
2302 (WebCore::KRenderingDeviceContextQt::setFillRule):
2303 (WebCore::KRenderingDeviceContextQt::fillPath):
2304 (WebCore::KRenderingDeviceContextQt::strokePath):
2305 (WebCore::KRenderingDeviceQt::KRenderingDeviceQt):
2306 (WebCore::KRenderingDeviceQt::~KRenderingDeviceQt):
2307 (WebCore::KRenderingDeviceQt::popContext):
2308 (WebCore::KRenderingDeviceQt::pushContext):
2309 (WebCore::KRenderingDeviceQt::qtContext):
2310 (WebCore::KRenderingDeviceQt::contextForImage):
2311 (WebCore::KRenderingDeviceQt::stringForPath):
2312 (WebCore::KRenderingDeviceQt::createResource):
2313 (WebCore::KRenderingDeviceQt::createPaintServer):
2314 (WebCore::KRenderingDeviceQt::createFilterEffect):
2316 2006-08-17 Nikolas Zimmermann <zimmermann@kde.org>
2318 Reviewed by Eric. Landed by rwlbuis.
2320 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10466
2321 WebKit should have Qt platform support.
2324 * platform/Cursor.h:
2325 (WebCore::Cursor::Cursor):
2326 * platform/FloatPoint.h:
2327 * platform/FloatRect.h:
2328 * platform/GlyphBuffer.h:
2329 (WebCore::GlyphBuffer::glyphAt):
2330 (WebCore::GlyphBuffer::advanceAt):
2331 (WebCore::GlyphBuffer::add):
2332 * platform/GraphicsContext.h:
2333 * platform/ImageSource.h:
2334 * platform/IntPoint.h:
2335 * platform/IntRect.h:
2336 * platform/IntSize.h:
2337 * platform/ListBox.h:
2339 * platform/PlatformKeyboardEvent.h:
2340 * platform/PlatformMouseEvent.h:
2341 * platform/ResourceLoader.h:
2342 * platform/ResourceLoaderClient.h:
2343 * platform/ResourceLoaderInternal.h:
2344 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
2345 * platform/ScrollView.h:
2346 * platform/Widget.h:
2348 2006-08-17 Nikolas Zimmermann <zimmermann@kde.org>
2350 Reviewed by Eric. Landed by rwlbuis.
2352 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10465
2353 General WebKit Linux build fixes.
2355 * kcanvas/KCanvasFilters.cpp:
2356 (WebCore::operator<<):
2357 * kcanvas/RenderSVGImage.cpp:
2358 * ksvg2/css/SVGCSSStyleSelector.cpp:
2359 * ksvg2/svg/SVGAnimateColorElement.cpp:
2360 * ksvg2/svg/SVGMaskElement.cpp:
2361 * ksvg2/svg/SVGPatternElement.cpp:
2363 * rendering/RenderStyle.h:
2364 (WebCore::RenderStyle::deleteBindingURIs):
2365 * xml/DOMParser.cpp:
2367 2006-08-17 Nikolas Zimmermann <zimmermann@kde.org>
2369 Reviewed by Eric. Landed by rwlbuis.
2371 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10464
2372 Offer a cmake build system for Qt platform.
2374 * CMakeLists.txt: Added.
2376 2006-08-17 David Harrison <harrison@apple.com>
2378 Reviewed by John Sullivan.
2380 <rdar://problem/4671069> REGRESSION: Popup buttons in web pages aren't exposed as AXPopupButtons
2382 Accessorized RenderMenuList objects.
2384 * bridge/mac/WebCoreAXObject.mm:
2385 (-[WebCoreAXObject mouseButtonListener]):
2388 (-[WebCoreAXObject actionElement]):
2389 Return the HTMLSelectElement.
2391 (-[WebCoreAXObject firstChild]):
2392 (-[WebCoreAXObject lastChild]):
2393 (-[WebCoreAXObject previousSibling]):
2394 (-[WebCoreAXObject nextSibling]):
2395 (-[WebCoreAXObject parentObject]):
2396 (-[WebCoreAXObject parentObjectUnignored]):
2397 (-[WebCoreAXObject isAttachment]):
2398 (-[WebCoreAXObject attachmentView]):
2401 (-[WebCoreAXObject role]):
2402 Return NSAccessibilityPopUpButtonRole.
2404 (-[WebCoreAXObject subrole]):
2407 (-[WebCoreAXObject roleDescription]):
2408 Return NSAccessibilityPopUpButtonRole.
2410 (-[WebCoreAXObject textUnderElement]):
2413 (-[WebCoreAXObject value]):
2414 Return the RenderMenuList::text().
2416 (-[WebCoreAXObject position]):
2419 (-[WebCoreAXObject accessibilityIsIgnored]):
2420 - Ignore popup menu items because AppKit does.
2421 - Remove redundant check for buttonTag (earlier isControl() check suffices).
2423 (-[WebCoreAXObject accessibilityAttributeNames]):
2424 (-[WebCoreAXObject accessibilityActionNames]):
2425 (-[WebCoreAXObject accessibilityAttributeValue:]):
2428 (-[WebCoreAXObject doAXTextMarkerRangeForUnorderedTextMarkers:]):
2429 Removed old debugging code that is no longer needed.
2432 (-[WebCoreAXObject doAXSentenceTextMarkerRangeForTextMarker:]):
2433 (-[WebCoreAXObject doAXParagraphTextMarkerRangeForTextMarker:]):
2434 (-[WebCoreAXObject removeAXObjectID]):
2437 * html/HTMLSelectElement.cpp:
2438 (WebCore::HTMLSelectElement::accessKeyAction):
2439 Call click() instead of focus().
2441 * rendering/RenderMenuList.cpp:
2442 (WebCore::RenderMenuList::text):
2443 Added for easy access to popup's current text.
2445 * rendering/RenderMenuList.h:
2446 (WebCore::RenderMenuList::isMenuList):
2447 * rendering/RenderObject.h:
2448 (WebCore::RenderObject::isMenuList):
2449 Added so popups can be identified.
2451 2006-08-17 David Harrison <harrison@apple.com>
2455 <rdar://problem/4527201> REGRESSION: AXTextMarkerRangeForUnorderedTextMarkers returns out of order range
2457 Test cases added: None. Manual AX testing is way too awkward, and automated testing
2458 is not possible. See following bug...
2459 <rdar://problem/4256882> Need automated testing support for accessibility APIs
2461 * bridge/mac/AXObjectCacheMac.mm:
2462 (WebCore::AXObjectCache::visiblePositionForTextMarker):
2463 Validate the marker by comparing the node and offset to those of the resulting VisiblePosition.
2465 2006-08-17 Nikolas Zimmermann <zimmermann@kde.org>
2469 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10447
2470 AffineTransform should be multi-platform compatible
2472 * platform/AffineTransform.h:
2473 * platform/cg/AffineTransformCG.cpp:
2474 (WebCore::AffineTransform::m11):
2475 (WebCore::AffineTransform::m12):
2476 (WebCore::AffineTransform::m21):
2477 (WebCore::AffineTransform::m22):
2478 (WebCore::AffineTransform::dx):
2479 (WebCore::AffineTransform::dy):
2481 2006-08-16 David Hyatt <hyatt@apple.com>
2483 Fix an issue with CSS2 system fonts where they did not respect text
2484 zoom. This was most visible with the new control fonts used for form
2485 controls (they stopped swapping between small/mini/regular as you zoomed).
2489 * css/cssstyleselector.cpp:
2490 (WebCore::CSSStyleSelector::applyProperty):
2492 2006-08-15 Justin Garcia <justin.garcia@apple.com>
2494 Reviewed by thatcher
2496 First part of fix for:
2497 <rdar://problem/4384589>
2498 Mail hung on paste text
2501 <http://bugzilla.opendarwin.org/show_bug.cgi?id=8592>
2502 Extra line left after deleting whitespace:pre text
2503 <rdar://problem/4128080> Paste as HTML does not yield equivalent style
2504 <rdar://problem/4046469> Box styles on first element aren't copied/pasted
2505 Copy/paste of arstechnica.com
2507 Here's how we avoid adding redundant style information on paste: insert
2508 the fragment and do a test rendering, save away style information for
2509 every node in the fragment, remove all style information from the fragment,
2510 remove the fragment, insert it into the appropriate place in the document,
2511 then restore only those styles gathered during the test insertion that aren't
2512 redundant. Restoring the styles in this way results in an ApplyStyleCommand
2513 and a layout for nearly every inserted node.
2514 Instead we want to insert the fragment into the document without removing the
2515 style information, then mark style nodes and inline style declarations for
2516 removal if they are redundant, and sweep to remove them. This means that we
2517 can't rely on ReplacementFragment::wasBlock anymore, because blocks will now
2518 have style spans around them. This patch removes the use of wasBlock in
2519 ReplaceSelectionCommand.
2521 * editing/CompositeEditCommand.cpp:
2522 (WebCore::CompositeEditCommand::moveParagraphs): Added code
2523 to remove the line placeholder left after a move from preserveNewline text.
2524 * editing/DeleteSelectionCommand.cpp:
2525 (WebCore::DeleteSelectionCommand::doApply): Don't add a placeholder if
2526 we're deleting a paragraph in preserveNewline text.
2527 * editing/JSEditor.cpp: Pass true to prevent nesting.
2528 * editing/ReplaceSelectionCommand.cpp: Removed wasBlock and friends.
2529 (WebCore::ReplacementFragment::ReplacementFragment): Ditto.
2530 (WebCore::ReplacementFragment::saveRenderingInfo): Ditto.
2531 (WebCore::RenderingInfo::RenderingInfo): Ditto.
2532 (WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand):
2533 (WebCore::ReplaceSelectionCommand::shouldMergeStart): Combined the to/from
2534 merging rules into one method.
2535 (WebCore::ReplaceSelectionCommand::shouldMergeEnd):
2536 (WebCore::ReplaceSelectionCommand::shouldMerge):
2537 (WebCore::ReplaceSelectionCommand::doApply):
2538 Don't do nesting prevention when pasting into an empty paragraph, this
2539 fixes 4046469, the common cause of paste fidelity bugs, but needs
2540 to be tweaked a little because this can lead to margin/border build-up
2541 on repeated copy/pastes.
2542 Don't track startPos in addition to insertionPos. It was never used.
2543 Fixed a bug where a fragment starting with an interchange newline would
2544 cause content to be put outside of an editable region when pasting at the
2546 Adjust insertionPos before insertion (not during) and do not consult wasBlock
2547 to decide whether or not to do so.
2548 Changed the way we do the start merge: insert the fragment, then stich
2549 paragraphs together, in the same way that we do the end merge. This
2550 doesn't require wasBlock and fixes bugs.
2551 Replaced some uses of insertionPos with endOfInsertedContent.
2552 Fixed a bug in the expansion of the last incoming br (a "collapsed" br
2553 is one where !isStartOfParagraph([br,0])).
2554 Removed the special case code that did the end merge for the preserveNewline
2555 case, since this patch fixes the moveParagraph bug in the preserveNewline case.
2556 Removed some unused variables.
2557 (WebCore::ReplaceSelectionCommand::shouldRemoveEndBR): An endBR that was
2558 holding a line open should always be displaced by inserted content, unless
2559 the inserted content ends with a br.
2560 (WebCore::ReplaceSelectionCommand::updateNodesInserted):
2561 * editing/ReplaceSelectionCommand.h:
2562 (WebCore::RenderingInfo::style):
2563 * editing/markup.cpp:
2564 (WebCore::createMarkup): Only add mail blockquotes and list/table/pre when
2565 annotate is true (when we're creating markup for the pasteboard).
2567 2006-08-16 John Sullivan <sullivan@apple.com>
2569 Reviewed by Brady Eidson
2571 - fixed <rdar://problem/4637156> underlines appearing in white selection text
2573 * rendering/InlineFlowBox.cpp:
2574 (WebCore::InlineFlowBox::paintDecorations):
2575 bail out if phase is PaintPhaseSelection and forceWhiteText is true
2577 2006-08-16 Brady Eidson <beidson@apple.com>
2581 Updated the DB version number and added a helpful comment explaining its meaning
2583 * loader/icon/IconDatabase.cpp:
2585 2006-08-16 Brady Eidson <beidson@apple.com>
2589 Major refactoring of new iconDB:
2590 -Instead of private browsing being handled by in-memory tables, it's now handled
2591 by a separate in-memory database with the same table names. This allows us to
2592 re-use the same SQL on either the main or private-browsing database
2593 -So it follows, I broke out much of the SQL queries into seperate methods suffixed with
2594 "Query" that take a database as the method's argument so the same language can run on
2595 both private and main tables
2596 -Now that we have two DBs, moved the retain/release count to the m_mainDB
2597 -While I was at it, updated the schema to combine the Icon and IconResource table - cuts
2598 down on some high-usage, low value queries which were too expensive
2599 -Ditched the _url -> url convention for escaping urls for SQL. Now its url and escapedURL
2600 -Pruned tons of unused methods from previous revisions
2602 * bridge/mac/WebCoreIconDatabaseBridge.h: Removed isIconExpiredForPageURL as it was never used
2603 * bridge/mac/WebCoreIconDatabaseBridge.mm: Ditto
2604 * loader/icon/IconDatabase.cpp:
2605 (WebCore::IconDatabase::IconDatabase): Updated initializer list
2606 (WebCore::IconDatabase::open): Sets up both databases
2607 (WebCore::IconDatabase::close): Closes both databases
2608 (WebCore::IconDatabase::isEmpty): Queries both databases for at least 1 record
2609 (WebCore::IconDatabase::isValidDatabase): Reflect the updated schema
2610 (WebCore::IconDatabase::clearDatabaseTables): Ditto - and takes DB as a parameter
2611 (WebCore::IconDatabase::createDatabaseTables): Ditto
2612 (WebCore::IconDatabase::imageDataForIconURL): style cleanup, and using a query-function
2613 (WebCore::IconDatabase::setPrivateBrowsingEnabled): Resets private DB instead of private tables
2614 (WebCore::IconDatabase::isIconExpiredForIconURL): Uses a query-function on each DB
2615 (WebCore::IconDatabase::iconURLForPageURL): Uses a query-function on each DB
2616 (WebCore::IconDatabase::retainIconForPageURL): Retain count DB changes
2617 (WebCore::IconDatabase::releaseIconForPageURL): Ditto
2618 (WebCore::IconDatabase::isIconURLRetained): Determine if it's time to prune a released icon yet
2619 (WebCore::IconDatabase::forgetIconForIconURLFromDatabase): Alot simpler
2620 (WebCore::IconDatabase::setIconDataForIconURL): Style cleanup
2621 (WebCore::IconDatabase::setHaveNoIconForIconURL): Ditto
2622 (WebCore::IconDatabase::setIconURLForPageURL): Ditto - and using a query-function
2623 (WebCore::IconDatabase::establishIconIDForIconURL): Style cleanup
2624 (WebCore::IconDatabase::pruneUnreferencedIcons): DB name change
2625 (WebCore::IconDatabase::pruneUnretainedIcons): Ditto
2626 (WebCore::IconDatabase::hasIconForIconURL): Simpler, using a query-function
2627 (WebCore::IconDatabase::~IconDatabase):
2628 (WebCore::pageURLTableIsEmptyQuery): Self-explanatory SQL query
2629 (WebCore::imageDataForIconURLQuery): Self-explanatory SQL query
2630 (WebCore::timeStampForIconURLQuery): Self-explanatory SQL query
2631 (WebCore::iconURLForPageURLQuery): Self-explanatory SQL query
2632 (WebCore::forgetPageURLQuery): Self-explanatory SQL query
2633 (WebCore::setIconIDForPageURLQuery): Self-explanatory SQL query
2634 (WebCore::getIconIDForIconURLQuery): Self-explanatory SQL query
2635 (WebCore::addIconForIconURLQuery): Self-explanatory SQL query
2636 (WebCore::hasIconForIconURLQuery): Self-explanatory SQL query
2637 * loader/icon/IconDatabase.h: Some new/changed methods, pruned methods, and new comments
2638 (WebCore::IconDatabase::isOpen): Changed our meaning of "isOpen" to reflect the 2 databases
2640 2006-08-15 Jonas Witt <jonas.witt@gmail.com>
2644 - added ObjC wrappers for the KeyboardEvent and WheelEvent initializers
2645 http://bugzilla.opendarwin.org/show_bug.cgi?id=9736
2647 * bindings/objc/DOMEvents.mm:
2648 (-[DOMKeyboardEvent initKeyboardEvent::::::::::]):
2649 * bindings/objc/DOMEventsNonstandard.mm:
2650 (-[DOMWheelEvent initWheelEvent:::::::::::]):
2651 * bindings/objc/DOMPrivate.h:
2653 - added an initializer for the WheelEvent
2655 * dom/WheelEvent.cpp:
2656 (WebCore::WheelEvent::initWheelEvent):
2659 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz>
2663 Build fix: DWARF and -gfull are incompatible with symbol separation.
2665 * WebCore.xcodeproj/project.pbxproj:
2667 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz>
2671 http://bugzilla.opendarwin.org/show_bug.cgi?id=10394
2672 Bug 10394: WebKit Release and Production configurations should enable dead code stripping
2674 * WebCore.xcodeproj/project.pbxproj:
2676 2006-08-15 Geoffrey Garen <ggaren@apple.com>
2680 - This patch reworks a previous fix for <rdar://problem/3524912> repro
2681 crash in KHTMLParser::parseToken, due to parser's current element being
2682 destroyed (www.gnnetcom.dk), along with subsequent adjustments to fix
2685 The previous solutions caused a ~2% performance regression on iBench HTML,
2686 due to RefPtr churn. The optimizations here gain back that ~2% plus ~1% more,
2687 for a total win of ~3% vs current TOT.
2689 We can merge this fix to the branch to fix <rdar://problem/4661982>
2690 (crash in KHTMLParser::popBlock).
2692 The solution here is:
2693 (1) Don't let the parser ref document nodes -- that causes leaks.
2694 (2) Handle ref/deref manually, to avoid RefPtr churn. Specifically, when
2695 moving a node between stacks or to/from 'current', rather than deref'ing
2696 and then ref'ing again, simply move the node, along with its refcount, to
2697 its new location, and overwrite its old location.
2699 * WebCore.xcodeproj/project.pbxproj:
2700 * html/HTMLParser.cpp:
2701 (WebCore::HTMLStackElem::HTMLStackElem):
2702 (WebCore::HTMLStackElem::derefNode):
2703 (WebCore::HTMLParser::HTMLParser):
2704 (WebCore::HTMLParser::setCurrent):
2705 (WebCore::HTMLParser::insertNode):
2706 (WebCore::HTMLParser::popNestedHeaderTag):
2707 (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks):
2708 (WebCore::HTMLParser::reopenResidualStyleTags):
2709 (WebCore::HTMLParser::pushBlock):
2710 (WebCore::HTMLParser::popBlock):
2711 (WebCore::HTMLParser::popOneBlockCommon):
2712 (WebCore::HTMLParser::popOneBlock):
2713 (WebCore::HTMLParser::moveOneBlockToStack):
2714 * html/HTMLParser.h:
2716 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz>
2720 http://bugzilla.opendarwin.org/show_bug.cgi?id=10384
2721 Bug 10384: Switch to DWARF for Release configuration
2723 * WebCore.xcodeproj/project.pbxproj:
2725 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz>
2728 Tweaked and landed by Darin.
2730 http://bugzilla.opendarwin.org/show_bug.cgi?id=10399
2731 Bug 10399: RenderTextArea is unused
2733 * WebCore.vcproj/WebCore/WebCore.vcproj:
2734 * WebCore.xcodeproj/project.pbxproj:
2735 * WebCoreSources.bkl:
2736 Removed RenderTextArea source files.
2738 * html/HTMLTextAreaElement.cpp: Removed include of RenderTextArea.h.
2739 * html/HTMLTextAreaElement.h: Removed forward declaration of RenderTextArea.
2741 * platform/mac/WidgetMac.mm: (WebCore::Widget::paint): Updated a comment.
2743 * platform/TextBox.h: Removed.
2744 * platform/mac/TextBoxMac.mm: Removed.
2745 * platform/mac/WebCoreTextArea.h: Removed.
2746 * platform/mac/WebCoreTextArea.mm: Removed.
2747 * rendering/RenderTextArea.cpp: Removed.
2748 * rendering/RenderTextArea.h: Removed.
2750 2006-08-15 Brady Eidson <beidson@apple.com>
2752 Reviewed by THE OTHER Maciej...
2755 1) Renamed retain/release methods to add PageUrl in - we're being consistent and clear in the WebCore API
2756 2) Fixed a bug where a null SiteIcon reference would be added into the pageURLToSiteIcon map causing a
2757 null dereference later
2759 * bridge/mac/WebCoreIconDatabaseBridge.mm:
2760 (-[WebCoreIconDatabaseBridge retainIconForURL:]): Changed IconDatabase method name
2761 (-[WebCoreIconDatabaseBridge releaseIconForURL:]): ditto
2762 * loader/icon/IconDatabase.cpp:
2763 (WebCore::IconDatabase::retainIconForPageURL): Name change
2764 (WebCore::IconDatabase::releaseIconForPageURL): ditto
2765 (WebCore::IconDatabase::setIconURLForPageURL): Added the null site-icon check when changing a PageURL's iconURL
2766 * loader/icon/IconDatabase.h: Some renames
2768 2006-08-14 Eric Seidel <eric@eseidel.com>
2772 <mask>, <marker>, <pattern> inside <defs> do not work
2773 http://bugzilla.opendarwin.org/show_bug.cgi?id=6548
2775 * ksvg2/svg/SVGDefsElement.cpp:
2776 (WebCore::SVGDefsElement::SVGDefsElement): moved to .cpp file
2777 (WebCore::SVGDefsElement::isValid): moved to .cpp file
2778 (WebCore::SVGDefsElement::rendererIsNeeded): Added.
2779 (WebCore::SVGDefsElement::createRenderer): Added.
2780 * ksvg2/svg/SVGDefsElement.h:
2781 * ksvg2/svg/SVGGElement.cpp:
2782 (WebCore::SVGGElement::SVGGElement): adjusted spacing
2783 (WebCore::SVGGElement::parseMappedAttribute): adjusted spacing
2784 (WebCore::SVGDummyElement::SVGDummyElement): adjusted spacing
2786 2006-08-14 Eric Seidel <eric@eseidel.com>
2788 Reviewed by darin and mjs.
2790 Add better SVGLoad event support.
2791 http://bugzilla.opendarwin.org/show_bug.cgi?id=6010
2792 There will still need to be additional support added for <link> and <script> elements.
2793 Not all of the error -> loaded -> error transition cases work yet.
2795 * dom/EventTargetNode.cpp:
2796 (WebCore::EventTargetNode::dispatchGenericEvent):
2797 * html/HTMLImageLoader.cpp:
2798 (WebCore::HTMLImageLoader::dispatchLoadEvent):
2799 * html/HTMLImageLoader.h:
2800 (WebCore::HTMLImageLoader::haveFiredLoadEvent):
2801 (WebCore::HTMLImageLoader::setHaveFiredLoadEvent):
2802 * ksvg2/misc/SVGImageLoader.cpp:
2803 (WebCore::SVGImageLoader::SVGImageLoader):
2804 (WebCore::SVGImageLoader::dispatchLoadEvent):
2805 * ksvg2/misc/SVGImageLoader.h:
2806 * ksvg2/svg/SVGAElement.cpp:
2807 (WebCore::SVGAElement::parseMappedAttribute):
2808 * ksvg2/svg/SVGAnimatedBoolean.h:
2809 * ksvg2/svg/SVGElement.cpp:
2810 (WebCore::SVGElement::SVGElement):
2811 (WebCore::SVGElement::parseMappedAttribute):
2812 (WebCore::SVGElement::haveLoadedRequiredResources):
2813 (WebCore::SVGElement::sendSVGLoadEventIfPossible):
2814 (WebCore::SVGElement::closeRenderer):
2815 * ksvg2/svg/SVGElement.h:
2816 (WebCore::SVGElement::rendererIsNeeded):
2817 (WebCore::svg_dynamic_cast):
2818 * ksvg2/svg/SVGExternalResourcesRequired.h:
2819 * ksvg2/svg/SVGImageElement.cpp:
2820 (SVGImageElement::SVGImageElement):
2821 (SVGImageElement::haveLoadedRequiredResources):
2822 * ksvg2/svg/SVGImageElement.h:
2823 * ksvg2/svg/SVGSVGElement.cpp:
2824 (WebCore::SVGSVGElement::parseMappedAttribute):
2825 * ksvg2/svg/SVGScriptElement.cpp:
2826 (WebCore::SVGScriptElement::SVGScriptElement):
2827 (WebCore::SVGScriptElement::parseMappedAttribute):
2828 (WebCore::SVGScriptElement::executeScript):
2829 * xml/xmlhttprequest.cpp:
2830 (WebCore::XMLHttpRequest::callReadyStateChangeListener): use new Event() instead of createEvent
2832 2006-08-14 Anders Carlsson <acarlsson@apple.com>
2836 http://bugzilla.opendarwin.org/show_bug.cgi?id=10393
2837 Autogenerate NodeIterator and TreeWalker.
2839 * DerivedSources.make:
2840 * WebCore.xcodeproj/project.pbxproj:
2843 * bindings/js/JSNodeIteratorCustom.cpp: Added.
2844 (WebCore::JSNodeIterator::mark):
2845 * bindings/js/JSTreeWalkerCustom.cpp: Added.
2846 (WebCore::JSTreeWalker::mark):
2848 * bindings/js/kjs_traversal.cpp:
2849 * bindings/js/kjs_traversal.h:
2850 Remove implementations of DOMNodeIterator and DOMTreeWalker.
2852 * bindings/scripts/CodeGeneratorJS.pm:
2853 Add "CustomMarkFunction" attribute for classes where mark() needs to be overridden.
2855 * bindings/objc/DOM.mm:
2856 (-[DOMNodeIterator detach]):
2857 * dom/NodeIterator.cpp:
2858 (WebCore::NodeIterator::detach):
2859 * dom/NodeIterator.h:
2860 Get rid of exception in detach, it isn't used at all and this function can't throw an exception according to the spec.
2861 * dom/NodeIterator.idl: Added.
2862 * dom/TreeWalker.idl: Added.
2864 2006-08-14 Brady Eidson <beidson@apple.com>
2868 The changes are plentiful, but small, mostly to improve performance
2869 1) Add a bool flag to SiteIcon to stop it from querying the database over and over
2870 2) Added a pageURL->iconURL hashmap to cache database results, as an optimization
2871 3) Fix a bug in setIconURLForPageURL code where the pageURL would still point to an old icon
2872 4) Added isIconURLRetained() to optimize the retain count check
2873 5) Prune old, unused code
2875 * loader/icon/IconDatabase.cpp:
2876 (WebCore::IconDatabase::imageDataForIconID): Removed unused code
2877 (WebCore::IconDatabase::imageDataForIconURL): Removed unused code
2878 (WebCore::IconDatabase::imageDataForPageURL): Removed unused code
2879 (WebCore::IconDatabase::isIconExpiredForIconURL): Removed LOG msg
2880 (WebCore::IconDatabase::isIconExpiredForPageURL): Removed LOG msg
2881 (WebCore::IconDatabase::iconURLForPageURL): Added a hashmap cache to avoid common queries
2882 (WebCore::IconDatabase::releaseIconForURL): Changed to is isRetained() instead of retainCount()
2883 (WebCore::IconDatabase::isIconURLRetained): Added - we don't care about the actual retain count
2884 for an icon so much as whether or not it is retained
2885 (WebCore::IconDatabase::setIconURLForPageURL): If the new and old iconURLs are the same, skip the
2887 * loader/icon/IconDatabase.h: Added new methods/variables
2888 * loader/icon/SiteIcon.cpp:
2889 (SiteIcon::SiteIcon): Added a flag so it only queries the database for icon data once
2890 (SiteIcon::getImage): Ditto
2892 2006-08-14 David Hyatt <hyatt@apple.com>
2894 Fix for bug 10385, add more support for crappy pseudo-XML-in-HTML.
2898 Added fast/parser/bad-xml-slash.html
2900 * html/HTMLTokenizer.cpp:
2901 (WebCore::HTMLTokenizer::parseTag):
2903 2006-08-14 Darin Adler <darin@apple.com>
2905 Reviewed by John Sullivan.
2907 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10204
2908 REGRESSION: title tag parsing problem breaks Travelocity and Google Analytics pages
2910 Test: fast/parser/title-error-test.html
2912 * html/HTMLParser.cpp: (WebCore::HTMLParser::handleError): Fixed an error
2913 handling case that was skipping until a </style> tag in code that was shared
2914 between both <title> and <style>. Also rearranged the code a tiny bit.
2916 2006-08-14 Darin Adler <darin@apple.com>
2920 - fixed some storage leaks
2921 (part of http://bugzilla.opendarwin.org/show_bug.cgi?id=10259)
2923 * platform/mac/ResourceLoaderMac.mm: (WebCore::ResourceLoader::start):
2924 Rearrange code so that "delete this" is called any time the function returns
2925 false -- ownership was inconsistent before.
2927 * rendering/RenderContainer.cpp: (WebCore::RenderContainer::removeChildNode):
2928 Call deleteLineBoxWrapper even when documentBeingDestroyed() is true, because
2929 some of what it does has to be done during destruction. A little awkward since
2930 I preserved the order of operations. Perhaps we could structure this better later.
2932 2006-08-14 David Harrison <harrison@apple.com>
2934 Reviewed by John Sullivan and Geoff Garen.
2936 <rdar://problem/3854950> AX Seed: Blackboard Learning Systems - frame names need to be put in AXDescription AXAttribute
2938 Test cases added: None. Manual AX testing is way too awkward, and automated testing
2939 is not possible. See following bug...
2940 <rdar://problem/4256882> Need automated testing support for accessibility APIs
2942 * bridge/mac/WebCoreAXObject.mm:
2943 (-[WebCoreAXObject accessibilityDescription]):
2944 For a web area, return the name of the owning frame or iframe.
2946 (-[WebCoreAXObject accessibilityAttributeNames]):
2947 Advertize NSAccessibilityDescriptionAttribute.
2949 (-[WebCoreAXObject rendererForView:]):
2950 Clean up some old naming.
2952 2006-08-11 Anders Carlsson <acarlsson@apple.com>
2956 http://bugzilla.opendarwin.org/show_bug.cgi?id=10353
2957 XMLSerializer and DOMParser should have real implementations
2959 Make real implementation files for DOMParser and XMLSerializer and wrap them
2960 using our bindings generation.
2962 * DerivedSources.make:
2963 * WebCore.xcodeproj/project.pbxproj:
2964 * bindings/js/JSDOMParser.cpp: Removed.
2965 * bindings/js/JSDOMParser.h: Removed.
2966 * bindings/js/JSXMLSerializer.cpp: Removed.
2967 * bindings/js/JSXMLSerializer.h: Removed.
2968 * bindings/js/kjs_window.cpp:
2969 (KJS::Window::getValueProperty):
2970 * bindings/js/kjs_window.h:
2972 * page/DOMWindow.idl:
2973 * xml/DOMParser.cpp: Added.
2974 (WebCore::DOMParser::parseFromString):
2975 * xml/DOMParser.h: Added.
2976 * xml/DOMParser.idl: Added.
2977 * xml/XMLSerializer.cpp: Added.
2978 (WebCore::XMLSerializer::serializeToString):
2979 * xml/XMLSerializer.h: Added.
2980 * xml/XMLSerializer.idl: Added.
2982 2006-08-14 Maciej Stachowiak <mjs@apple.com>
2986 - removed WebKit-level dependencies from WebFormDataStream. Use WebCore version of system interface
2988 * WebCore.exp: export new functions
2989 * platform/mac/WebCoreSystemInterface.h: Added CFReadStream related functions
2990 * platform/mac/WebCoreSystemInterface.mm: ditto
2992 2006-08-13 Maks Orlovich <maksim@kde.org>
2994 Reviewed (and tweaked a little) by Maciej.
2996 - shrank the size of JSObject by 8 bytes and made the corresponding reduction to the cell size, resulting
2997 in a 1.2% speed improvement on JS iBench (and probably overall memory savings).
2999 The WebCore part of this is to expect only FunctionImp to have a scope, not all JSObjects.
3001 * bindings/js/kjs_events.cpp:
3002 (KJS::JSLazyEventListener::parseCode):
3004 2006-08-12 Eric Seidel <eric@eseidel.com>
3006 Reviewed by hyatt and mjs.
3008 Fix two missing null checks causing layout test crashes.
3010 * css/cssstyleselector.cpp:
3011 (WebCore::CSSStyleSelector::adjustRenderStyle): check e for null (null for pseudo styles)
3012 * kcanvas/RenderSVGContainer.cpp:
3013 (WebCore::RenderSVGContainer::requiresLayer): check parent()->element() for null
3016 2006-08-11 Eric Seidel <eric@eseidel.com>
3018 Reviewed by andersca.
3020 The outermost <svg> element needs to clip itself
3021 http://bugzilla.opendarwin.org/show_bug.cgi?id=5358
3023 * css/cssstyleselector.cpp:
3024 (WebCore::CSSStyleSelector::adjustRenderStyle): adjust for SVG overflow rules
3025 * kcanvas/RenderSVGContainer.cpp:
3026 (WebCore::RenderSVGContainer::requiresLayer): only require layers for absolute/relative positioning of outermost SVG
3027 (WebCore::RenderSVGContainer::paint):
3028 * kcanvas/device/KRenderingDevice.h:
3029 * kcanvas/device/quartz/KRenderingDeviceQuartz.h: remove dead methods
3030 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm: remove dead methods
3031 (WebCore::KRenderingDeviceContextQuartz::KRenderingDeviceContextQuartz):
3032 * ksvg2/svg/SVGPaint.cpp: spacing changes
3033 (WebCore::SVGPaint::SVGPaint): spacing cleanup
3034 * ksvg2/svg/SVGSVGElement.cpp:
3035 (WebCore::SVGSVGElement::parseMappedAttribute): spacing cleanup
3036 * platform/GraphicsContext.h: Added concatCTM
3037 * platform/cg/GraphicsContextCG.cpp:
3038 (WebCore::GraphicsContext::concatCTM): Added.
3040 2006-08-11 Brady Eidson <beidson@apple.com>
3044 Renamed a method/parameter for clarity and consistency, as well as some style
3045 cleanups and removing some ridiculously verbose log messages.
3046 Also added an _isEmpty method to the database and bridge for WebKit's use.
3047 Finally, added a central way for both WebKit and WebCore to get the icon database filename
3049 * bridge/mac/WebCoreIconDatabaseBridge.h: Added _isEmpty and defaultDatabaseFilename
3050 * bridge/mac/WebCoreIconDatabaseBridge.mm: Removed an unnecessary semicolon off most of these methods
3051 (-[WebCoreIconDatabaseBridge openSharedDatabaseWithPath:]):
3052 (-[WebCoreIconDatabaseBridge closeSharedDatabase]):
3053 (-[WebCoreIconDatabaseBridge isOpen]):
3054 (-[WebCoreIconDatabaseBridge _isEmpty]): Added
3055 (-[WebCoreIconDatabaseBridge setPrivateBrowsingEnabled:]):
3056 (-[WebCoreIconDatabaseBridge privateBrowsingEnabled]):
3057 (-[WebCoreIconDatabaseBridge iconForPageURL:withSize:]):
3058 (-[WebCoreIconDatabaseBridge iconURLForPageURL:]):
3059 (-[WebCoreIconDatabaseBridge defaultIconWithSize:]):
3060 (-[WebCoreIconDatabaseBridge retainIconForURL:]):
3061 (-[WebCoreIconDatabaseBridge releaseIconForURL:]):
3062 (-[WebCoreIconDatabaseBridge _setIconData:forIconURL:]):
3063 (-[WebCoreIconDatabaseBridge _setHaveNoIconForIconURL:]):
3064 (-[WebCoreIconDatabaseBridge _setIconURL:forPageURL:]):
3065 (-[WebCoreIconDatabaseBridge _hasIconForIconURL:]):
3066 (-[WebCoreIconDatabaseBridge defaultDatabaseFilename]): Added
3068 * loader/icon/IconDatabase.cpp:
3069 (WebCore::IconDatabase::defaultDatabaseFilename): Added
3070 (WebCore::IconDatabase::open):
3071 (WebCore::IconDatabase::isEmpty): Added
3072 (WebCore::IconDatabase::retainIconForURL): Removed log message
3073 (WebCore::IconDatabase::releaseIconForURL): Removed log message
3074 * loader/icon/IconDatabase.h:
3076 2006-08-11 David Hyatt <hyatt@apple.com>
3078 Eliminate RenderImageButton.
3082 * WebCore.xcodeproj/project.pbxproj:
3083 * bridge/mac/WebCoreAXObject.mm:
3084 (-[WebCoreAXObject isImageButton]):
3085 * html/HTMLInputElement.cpp:
3086 (WebCore::HTMLInputElement::createRenderer):
3087 * rendering/RenderImage.h:
3088 (WebCore::RenderImage::isImage):
3090 2006-08-11 Adele Peterson <adele@apple.com>
3094 - Fix for <rdar://problem/4656274>
3095 REGRESSION: option elements are selected when added regardless of "selected" property
3097 Test: fast/forms/option-constructor-selected.html
3099 * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::setOption):
3100 When adding an option element, check that the option element is selected before calling setSelectedIndex.
3102 2006-08-11 David Hyatt <hyatt@apple.com>
3104 Fix for bug 10349, make sure to call setChanged when an anchor changes
3105 from not being a link to being a link (and vice versa).
3107 Test is in fast/dynamic/link-href-change.html
3111 * html/HTMLAnchorElement.cpp:
3112 (WebCore::HTMLAnchorElement::HTMLAnchorElement):
3113 (WebCore::HTMLAnchorElement::parseMappedAttribute):
3114 * html/HTMLAnchorElement.h:
3115 * html/HTMLAreaElement.cpp:
3116 (WebCore::HTMLAreaElement::parseMappedAttribute):
3118 2006-08-09 Rob Buis <buis@kde.org>
3122 Revert an over-optimization step that messed up the HashSet lookup.
3124 * dom/DOMImplementation.cpp:
3126 2006-08-12 Oliver <ojh16@student.canterbury.ac.nz>
3128 Rubber stamped by tim
3130 Removed commented out code
3132 * kcanvas/RenderSVGImage.cpp:
3133 (WebCore::RenderSVGImage::paint):
3135 2006-08-12 Oliver <ojh16@student.canterbury.ac.nz>
3139 Fixed regression in SVG image layout
3142 * kcanvas/RenderSVGImage.cpp:
3143 (WebCore::RenderSVGImage::paint):
3145 2006-08-10 Anders Carlsson <acarlsson@apple.com>
3147 Rubber-stamped by Maciej.
3151 * DerivedSources.make:
3152 * WebCore.vcproj/WebCore/WebCore.vcproj:
3153 * WebCore.xcodeproj/project.pbxproj:
3154 * xpath/XPathEvaluator.cpp: Removed.
3155 * xpath/XPathEvaluator.h: Removed.
3156 * xpath/XPathEvaluator.idl: Removed.
3157 * xpath/XPathExpression.cpp: Removed.
3158 * xpath/XPathExpression.h: Removed.
3159 * xpath/XPathExpression.idl: Removed.
3160 * xpath/XPathNSResolver.cpp: Removed.
3161 * xpath/XPathNSResolver.h: Removed.
3162 * xpath/XPathNSResolver.idl: Removed.
3163 * xpath/XPathNamespace.cpp: Removed.
3164 * xpath/XPathNamespace.h: Removed.
3165 * xpath/XPathResult.cpp: Removed.
3166 * xpath/XPathResult.h: Removed.
3167 * xpath/XPathResult.idl: Removed.
3168 * xpath/impl/XPathExpressionNode.cpp: Removed.
3169 * xpath/impl/XPathExpressionNode.h: Removed.
3170 * xpath/impl/XPathFunctions.cpp: Removed.
3171 * xpath/impl/XPathFunctions.h: Removed.
3172 * xpath/impl/XPathGrammar.y: Removed.
3173 * xpath/impl/XPathParser.cpp: Removed.
3174 * xpath/impl/XPathParser.h: Removed.
3175 * xpath/impl/XPathPath.cpp: Removed.
3176 * xpath/impl/XPathPath.h: Removed.
3177 * xpath/impl/XPathPredicate.cpp: Removed.
3178 * xpath/impl/XPathPredicate.h: Removed.
3179 * xpath/impl/XPathStep.cpp: Removed.
3180 * xpath/impl/XPathStep.h: Removed.
3181 * xpath/impl/XPathUtil.cpp: Removed.
3182 * xpath/impl/XPathUtil.h: Removed.
3183 * xpath/impl/XPathValue.cpp: Removed.
3184 * xpath/impl/XPathValue.h: Removed.
3185 * xpath/impl/XPathVariableReference.cpp: Removed.
3186 * xpath/impl/XPathVariableReference.h: Removed.
3188 2006-08-10 David Harrison <harrison@apple.com>
3190 Reviewed by John Sullivan.
3192 <rdar://problem/4600112> REGRESSION: VO no longer able to review text within an edit field on web pages
3194 Test cases added: None. Manual AX testing is way too awkward, and automated testing
3195 is not possible. See following bug...
3196 <rdar://problem/4256882> Need automated testing support for accessibility APIs
3198 * bridge/mac/WebCoreAXObject.mm:
3199 (-[WebCoreAXObject value]):
3200 Add handling for text input fields.
3202 2006-08-09 Graham Dennis <graham.dennis@gmail.com>
3206 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10247
3207 REGRESSION: Unable to build webkit without SVG/XPATH
3209 * bindings/js/kjs_binding.cpp:
3210 (KJS::setDOMException):
3211 * bindings/js/kjs_dom.cpp:
3213 * bindings/js/kjs_html.cpp:
3214 (KJS::HTMLElementFunction::callAsFunction):
3215 * bindings/js/kjs_proxy.cpp:
3216 * bindings/js/kjs_proxy.h:
3217 * bindings/objc/DOMInternal.h:
3218 * bindings/objc/DOMInternal.mm:
3219 (raiseDOMException):
3220 * bindings/objc/DOMXPath.mm:
3221 * bindings/objc/DOMXPathInternal.h:
3222 * bindings/scripts/CodeGeneratorJS.pm:
3223 * bridge/mac/WebCoreFrameBridge.mm:
3224 (+[WebCoreFrameBridge supportedNonImageMIMETypes]):
3226 * css/CSSStyleDeclaration.cpp:
3227 (WebCore::propertyID):
3228 * css/cssparser.cpp:
3229 (WebCore::CSSParser::parseValue):
3231 * css/cssstyleselector.cpp:
3232 (WebCore::CSSStyleSelector::loadDefaultStyle):
3233 (WebCore::CSSStyleSelector::applyProperty):
3234 * css/cssstyleselector.h:
3236 (WebCore::Document::Document):
3237 (WebCore::Document::~Document):
3238 (WebCore::Document::createElementNS):
3239 (WebCore::Document::implicitClose):
3240 (WebCore::Document::recalcStyleSelector):
3241 (WebCore::Document::createEvent):
3245 (WebCore::Node::createRendererIfNeeded):
3247 * dom/XMLTokenizer.cpp:
3248 (WebCore::XMLTokenizer::endElementNs):
3249 (WebCore::XMLTokenizer::insertErrorMessageBlock):
3250 * html/HTMLEmbedElement.cpp:
3251 * html/HTMLEmbedElement.h:
3252 * html/HTMLObjectElement.cpp:
3253 * html/HTMLObjectElement.h:
3254 * kcanvas/KCanvasCreator.cpp:
3255 * kcanvas/KCanvasCreator.h:
3256 * kcanvas/KCanvasFilters.cpp:
3257 * kcanvas/KCanvasFilters.h:
3258 * kcanvas/KCanvasImage.h:
3259 * kcanvas/KCanvasMatrix.cpp:
3260 * kcanvas/KCanvasMatrix.h:
3261 * kcanvas/KCanvasPath.cpp:
3262 * kcanvas/KCanvasPath.h:
3263 * kcanvas/KCanvasResourceListener.h:
3264 * kcanvas/KCanvasResources.cpp:
3265 * kcanvas/KCanvasResources.h:
3266 * kcanvas/KCanvasTreeDebug.cpp:
3267 * kcanvas/RenderForeignObject.cpp:
3268 * kcanvas/RenderForeignObject.h:
3269 * kcanvas/RenderPath.cpp:
3270 * kcanvas/RenderPath.h:
3271 * kcanvas/RenderSVGContainer.cpp:
3272 * kcanvas/RenderSVGContainer.h:
3273 * kcanvas/RenderSVGImage.cpp:
3274 * kcanvas/RenderSVGImage.h:
3275 * kcanvas/RenderSVGText.cpp:
3276 * kcanvas/RenderSVGText.h:
3277 * kcanvas/device/KRenderingDevice.cpp:
3278 * kcanvas/device/KRenderingDevice.h:
3279 * kcanvas/device/KRenderingFillPainter.cpp:
3280 * kcanvas/device/KRenderingFillPainter.h:
3281 * kcanvas/device/KRenderingPaintServer.h:
3282 * kcanvas/device/KRenderingPaintServerGradient.cpp:
3283 * kcanvas/device/KRenderingPaintServerGradient.h:
3284 * kcanvas/device/KRenderingPaintServerPattern.cpp:
3285 * kcanvas/device/KRenderingPaintServerPattern.h:
3286 * kcanvas/device/KRenderingPaintServerSolid.cpp:
3287 * kcanvas/device/KRenderingPaintServerSolid.h:
3288 * kcanvas/device/KRenderingStrokePainter.cpp:
3289 * kcanvas/device/KRenderingStrokePainter.h:
3290 * kcanvas/device/quartz/KCanvasFilterQuartz.h:
3291 * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
3292 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
3293 * kcanvas/device/quartz/KCanvasMaskerQuartz.mm:
3294 * kcanvas/device/quartz/KCanvasPathQuartz.mm:
3295 * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
3296 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
3297 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
3298 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
3299 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
3300 * kcanvas/device/quartz/QuartzSupport.h:
3301 * kcanvas/device/quartz/QuartzSupport.mm:
3302 * ksvg2/bindings/js/JSSVGElementWrapperFactory.cpp:
3303 * ksvg2/bindings/js/JSSVGElementWrapperFactory.h:
3304 * ksvg2/css/SVGCSSParser.cpp:
3305 * ksvg2/css/SVGCSSStyleSelector.cpp:
3306 * ksvg2/css/SVGRenderStyle.cpp:
3307 * ksvg2/css/SVGRenderStyle.h:
3308 * ksvg2/css/SVGRenderStyleDefs.cpp:
3309 * ksvg2/css/SVGRenderStyleDefs.h:
3310 * ksvg2/ecma/GlobalObject.cpp:
3311 * ksvg2/ecma/GlobalObject.h:
3312 * ksvg2/events/JSSVGLazyEventListener.cpp:
3313 * ksvg2/events/JSSVGLazyEventListener.h:
3314 * ksvg2/events/SVGZoomEvent.cpp:
3315 * ksvg2/events/SVGZoomEvent.h:
3317 * ksvg2/misc/KCanvasRenderingStyle.cpp:
3318 * ksvg2/misc/KCanvasRenderingStyle.h:
3319 * ksvg2/misc/KSVGTimeScheduler.cpp:
3320 * ksvg2/misc/KSVGTimeScheduler.h:
3321 * ksvg2/misc/SVGDocumentExtensions.cpp:
3322 * ksvg2/misc/SVGDocumentExtensions.h:
3323 * ksvg2/misc/SVGImageLoader.cpp:
3324 * ksvg2/misc/SVGImageLoader.h:
3325 * ksvg2/svg/DOMList.h:
3326 * ksvg2/svg/SVGAElement.cpp:
3327 * ksvg2/svg/SVGAElement.h:
3328 * ksvg2/svg/SVGAngle.cpp:
3329 * ksvg2/svg/SVGAngle.h:
3330 * ksvg2/svg/SVGAnimateColorElement.cpp:
3331 * ksvg2/svg/SVGAnimateColorElement.h:
3332 * ksvg2/svg/SVGAnimateElement.cpp:
3333 * ksvg2/svg/SVGAnimateElement.h:
3334 * ksvg2/svg/SVGAnimateTransformElement.cpp:
3335 * ksvg2/svg/SVGAnimateTransformElement.h:
3336 * ksvg2/svg/SVGAnimatedAngle.cpp:
3337 * ksvg2/svg/SVGAnimatedAngle.h:
3338 * ksvg2/svg/SVGAnimatedBoolean.cpp:
3339 * ksvg2/svg/SVGAnimatedBoolean.h:
3340 * ksvg2/svg/SVGAnimatedColor.cpp:
3341 * ksvg2/svg/SVGAnimatedColor.h:
3342 * ksvg2/svg/SVGAnimatedEnumeration.cpp:
3343 * ksvg2/svg/SVGAnimatedEnumeration.h:
3344 * ksvg2/svg/SVGAnimatedInteger.cpp:
3345 * ksvg2/svg/SVGAnimatedInteger.h:
3346 * ksvg2/svg/SVGAnimatedLength.cpp:
3347 * ksvg2/svg/SVGAnimatedLength.h:
3348 * ksvg2/svg/SVGAnimatedLengthList.cpp:
3349 * ksvg2/svg/SVGAnimatedLengthList.h:
3350 * ksvg2/svg/SVGAnimatedNumber.cpp:
3351 * ksvg2/svg/SVGAnimatedNumber.h:
3352 * ksvg2/svg/SVGAnimatedNumberList.cpp:
3353 * ksvg2/svg/SVGAnimatedNumberList.h:
3354 * ksvg2/svg/SVGAnimatedPathData.cpp:
3355 * ksvg2/svg/SVGAnimatedPathData.h:
3356 * ksvg2/svg/SVGAnimatedPoints.cpp:
3357 * ksvg2/svg/SVGAnimatedPoints.h:
3358 * ksvg2/svg/SVGAnimatedPreserveAspectRatio.cpp:
3359 * ksvg2/svg/SVGAnimatedPreserveAspectRatio.h:
3360 * ksvg2/svg/SVGAnimatedRect.cpp:
3361 * ksvg2/svg/SVGAnimatedRect.h:
3362 * ksvg2/svg/SVGAnimatedString.cpp:
3363 * ksvg2/svg/SVGAnimatedString.h:
3364 * ksvg2/svg/SVGAnimatedTemplate.h:
3365 * ksvg2/svg/SVGAnimatedTransformList.cpp:
3366 * ksvg2/svg/SVGAnimatedTransformList.h:
3367 * ksvg2/svg/SVGAnimationElement.cpp:
3368 * ksvg2/svg/SVGAnimationElement.h:
3369 * ksvg2/svg/SVGCircleElement.cpp:
3370 * ksvg2/svg/SVGCircleElement.h:
3371 * ksvg2/svg/SVGClipPathElement.cpp:
3372 * ksvg2/svg/SVGClipPathElement.h:
3373 * ksvg2/svg/SVGColor.cpp:
3374 * ksvg2/svg/SVGColor.h:
3375 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
3376 * ksvg2/svg/SVGComponentTransferFunctionElement.h:
3377 * ksvg2/svg/SVGCursorElement.cpp:
3378 * ksvg2/svg/SVGCursorElement.h:
3379 * ksvg2/svg/SVGDOMImplementation.cpp:
3380 * ksvg2/svg/SVGDOMImplementation.h:
3381 * ksvg2/svg/SVGDefsElement.cpp:
3382 * ksvg2/svg/SVGDefsElement.h:
3383 * ksvg2/svg/SVGDescElement.cpp:
3384 * ksvg2/svg/SVGDescElement.h:
3385 * ksvg2/svg/SVGDocument.cpp:
3386 * ksvg2/svg/SVGDocument.h:
3387 * ksvg2/svg/SVGElement.cpp:
3388 * ksvg2/svg/SVGElement.h:
3389 * ksvg2/svg/SVGElementInstance.cpp:
3390 * ksvg2/svg/SVGElementInstance.h:
3391 * ksvg2/svg/SVGElementInstanceList.cpp:
3392 * ksvg2/svg/SVGElementInstanceList.h:
3393 * ksvg2/svg/SVGEllipseElement.cpp:
3394 * ksvg2/svg/SVGEllipseElement.h:
3395 * ksvg2/svg/SVGExternalResourcesRequired.cpp:
3396 * ksvg2/svg/SVGExternalResourcesRequired.h:
3397 * ksvg2/svg/SVGFEBlendElement.cpp:
3398 * ksvg2/svg/SVGFEBlendElement.h:
3399 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
3400 * ksvg2/svg/SVGFEColorMatrixElement.h:
3401 * ksvg2/svg/SVGFEComponentTransferElement.cpp:
3402 * ksvg2/svg/SVGFEComponentTransferElement.h:
3403 * ksvg2/svg/SVGFECompositeElement.cpp:
3404 * ksvg2/svg/SVGFECompositeElement.h:
3405 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
3406 * ksvg2/svg/SVGFEDiffuseLightingElement.h:
3407 * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
3408 * ksvg2/svg/SVGFEDisplacementMapElement.h:
3409 * ksvg2/svg/SVGFEDistantLightElement.cpp:
3410 * ksvg2/svg/SVGFEDistantLightElement.h:
3411 * ksvg2/svg/SVGFEFloodElement.cpp:
3412 * ksvg2/svg/SVGFEFloodElement.h:
3413 * ksvg2/svg/SVGFEFuncAElement.cpp:
3414 * ksvg2/svg/SVGFEFuncAElement.h:
3415 * ksvg2/svg/SVGFEFuncBElement.cpp:
3416 * ksvg2/svg/SVGFEFuncBElement.h:
3417 * ksvg2/svg/SVGFEFuncGElement.cpp:
3418 * ksvg2/svg/SVGFEFuncGElement.h:
3419 * ksvg2/svg/SVGFEFuncRElement.cpp:
3420 * ksvg2/svg/SVGFEFuncRElement.h:
3421 * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
3422 * ksvg2/svg/SVGFEGaussianBlurElement.h:
3423 * ksvg2/svg/SVGFEImageElement.cpp:
3424 * ksvg2/svg/SVGFEImageElement.h:
3425 * ksvg2/svg/SVGFELightElement.cpp:
3426 * ksvg2/svg/SVGFELightElement.h:
3427 * ksvg2/svg/SVGFEMergeElement.cpp:
3428 * ksvg2/svg/SVGFEMergeElement.h:
3429 * ksvg2/svg/SVGFEMergeNodeElement.cpp:
3430 * ksvg2/svg/SVGFEMergeNodeElement.h:
3431 * ksvg2/svg/SVGFEOffsetElement.cpp:
3432 * ksvg2/svg/SVGFEOffsetElement.h:
3433 * ksvg2/svg/SVGFEPointLightElement.cpp:
3434 * ksvg2/svg/SVGFEPointLightElement.h:
3435 * ksvg2/svg/SVGFESpecularLightingElement.cpp:
3436 * ksvg2/svg/SVGFESpecularLightingElement.h:
3437 * ksvg2/svg/SVGFESpotLightElement.cpp:
3438 * ksvg2/svg/SVGFESpotLightElement.h:
3439 * ksvg2/svg/SVGFETileElement.cpp:
3440 * ksvg2/svg/SVGFETileElement.h:
3441 * ksvg2/svg/SVGFETurbulenceElement.cpp:
3442 * ksvg2/svg/SVGFETurbulenceElement.h:
3443 * ksvg2/svg/SVGFilterElement.cpp:
3444 * ksvg2/svg/SVGFilterElement.h:
3445 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
3446 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
3447 * ksvg2/svg/SVGFitToViewBox.cpp:
3448 * ksvg2/svg/SVGFitToViewBox.h:
3449 * ksvg2/svg/SVGForeignObjectElement.cpp:
3450 * ksvg2/svg/SVGForeignObjectElement.h:
3451 * ksvg2/svg/SVGGElement.cpp:
3452 * ksvg2/svg/SVGGElement.h:
3453 * ksvg2/svg/SVGGradientElement.cpp:
3454 * ksvg2/svg/SVGGradientElement.h:
3455 * ksvg2/svg/SVGHelper.cpp:
3456 * ksvg2/svg/SVGHelper.h:
3457 * ksvg2/svg/SVGImageElement.cpp:
3458 * ksvg2/svg/SVGImageElement.h:
3459 * ksvg2/svg/SVGLangSpace.cpp:
3460 * ksvg2/svg/SVGLangSpace.h:
3461 * ksvg2/svg/SVGLength.cpp:
3462 * ksvg2/svg/SVGLength.h:
3463 * ksvg2/svg/SVGLengthList.cpp:
3464 * ksvg2/svg/SVGLengthList.h:
3465 * ksvg2/svg/SVGLineElement.cpp:
3466 * ksvg2/svg/SVGLineElement.h:
3467 * ksvg2/svg/SVGLinearGradientElement.cpp:
3468 * ksvg2/svg/SVGLinearGradientElement.h:
3469 * ksvg2/svg/SVGList.h:
3470 * ksvg2/svg/SVGLocatable.cpp:
3471 * ksvg2/svg/SVGLocatable.h:
3472 * ksvg2/svg/SVGMarkerElement.cpp:
3473 * ksvg2/svg/SVGMarkerElement.h:
3474 * ksvg2/svg/SVGMaskElement.cpp:
3475 * ksvg2/svg/SVGMaskElement.h:
3476 * ksvg2/svg/SVGMatrix.cpp:
3477 * ksvg2/svg/SVGMatrix.h:
3478 * ksvg2/svg/SVGNumber.cpp:
3479 * ksvg2/svg/SVGNumber.h:
3480 * ksvg2/svg/SVGNumberList.cpp:
3481 * ksvg2/svg/SVGNumberList.h:
3482 * ksvg2/svg/SVGPaint.cpp:
3483 * ksvg2/svg/SVGPaint.h:
3484 * ksvg2/svg/SVGPathElement.cpp:
3485 * ksvg2/svg/SVGPathElement.h:
3486 * ksvg2/svg/SVGPathSeg.cpp:
3487 * ksvg2/svg/SVGPathSeg.h:
3488 * ksvg2/svg/SVGPathSegArc.cpp:
3489 * ksvg2/svg/SVGPathSegArc.h:
3490 * ksvg2/svg/SVGPathSegClosePath.cpp:
3491 * ksvg2/svg/SVGPathSegClosePath.h:
3492 * ksvg2/svg/SVGPathSegCurvetoCubic.cpp:
3493 * ksvg2/svg/SVGPathSegCurvetoCubic.h:
3494 * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.cpp:
3495 * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h:
3496 * ksvg2/svg/SVGPathSegCurvetoQuadratic.cpp:
3497 * ksvg2/svg/SVGPathSegCurvetoQuadratic.h:
3498 * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.cpp:
3499 * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h:
3500 * ksvg2/svg/SVGPathSegLineto.cpp:
3501 * ksvg2/svg/SVGPathSegLineto.h:
3502 * ksvg2/svg/SVGPathSegLinetoHorizontal.cpp:
3503 * ksvg2/svg/SVGPathSegLinetoHorizontal.h:
3504 * ksvg2/svg/SVGPathSegLinetoVertical.cpp:
3505 * ksvg2/svg/SVGPathSegLinetoVertical.h:
3506 * ksvg2/svg/SVGPathSegList.cpp:
3507 * ksvg2/svg/SVGPathSegList.h:
3508 * ksvg2/svg/SVGPathSegMoveto.cpp:
3509 * ksvg2/svg/SVGPathSegMoveto.h:
3510 * ksvg2/svg/SVGPatternElement.cpp:
3511 * ksvg2/svg/SVGPatternElement.h:
3512 * ksvg2/svg/SVGPoint.cpp:
3513 * ksvg2/svg/SVGPoint.h:
3514 * ksvg2/svg/SVGPointList.cpp:
3515 * ksvg2/svg/SVGPointList.h:
3516 * ksvg2/svg/SVGPolyElement.cpp:
3517 * ksvg2/svg/SVGPolyElement.h:
3518 * ksvg2/svg/SVGPolygonElement.cpp:
3519 * ksvg2/svg/SVGPolygonElement.h:
3520 * ksvg2/svg/SVGPolylineElement.cpp:
3521 * ksvg2/svg/SVGPolylineElement.h:
3522 * ksvg2/svg/SVGPreserveAspectRatio.cpp:
3523 * ksvg2/svg/SVGPreserveAspectRatio.h:
3524 * ksvg2/svg/SVGRadialGradientElement.cpp:
3525 * ksvg2/svg/SVGRadialGradientElement.h:
3526 * ksvg2/svg/SVGRect.cpp:
3527 * ksvg2/svg/SVGRect.h:
3528 * ksvg2/svg/SVGRectElement.cpp:
3529 * ksvg2/svg/SVGRectElement.h:
3530 * ksvg2/svg/SVGSVGElement.cpp:
3531 * ksvg2/svg/SVGSVGElement.h:
3532 * ksvg2/svg/SVGScriptElement.cpp:
3533 * ksvg2/svg/SVGScriptElement.h:
3534 * ksvg2/svg/SVGSetElement.cpp:
3535 * ksvg2/svg/SVGSetElement.h:
3536 * ksvg2/svg/SVGStopElement.cpp:
3537 * ksvg2/svg/SVGStopElement.h:
3538 * ksvg2/svg/SVGStringList.cpp:
3539 * ksvg2/svg/SVGStringList.h:
3540 * ksvg2/svg/SVGStylable.cpp:
3541 * ksvg2/svg/SVGStylable.h:
3542 * ksvg2/svg/SVGStyleElement.cpp:
3543 * ksvg2/svg/SVGStyleElement.h:
3544 * ksvg2/svg/SVGStyledElement.cpp:
3545 * ksvg2/svg/SVGStyledElement.h:
3546 * ksvg2/svg/SVGStyledLocatableElement.cpp:
3547 * ksvg2/svg/SVGStyledLocatableElement.h:
3548 * ksvg2/svg/SVGStyledTransformableElement.cpp:
3549 * ksvg2/svg/SVGStyledTransformableElement.h:
3550 * ksvg2/svg/SVGSwitchElement.cpp:
3551 * ksvg2/svg/SVGSwitchElement.h:
3552 * ksvg2/svg/SVGSymbolElement.cpp:
3553 * ksvg2/svg/SVGSymbolElement.h:
3554 * ksvg2/svg/SVGTRefElement.cpp:
3555 * ksvg2/svg/SVGTRefElement.h:
3556 * ksvg2/svg/SVGTSpanElement.cpp:
3557 * ksvg2/svg/SVGTSpanElement.h:
3558 * ksvg2/svg/SVGTests.cpp:
3559 * ksvg2/svg/SVGTests.h:
3560 * ksvg2/svg/SVGTextContentElement.cpp:
3561 * ksvg2/svg/SVGTextContentElement.h:
3562 * ksvg2/svg/SVGTextElement.cpp:
3563 * ksvg2/svg/SVGTextElement.h:
3564 * ksvg2/svg/SVGTextPositioningElement.cpp:
3565 * ksvg2/svg/SVGTextPositioningElement.h:
3566 * ksvg2/svg/SVGTitleElement.cpp:
3567 * ksvg2/svg/SVGTitleElement.h:
3568 * ksvg2/svg/SVGTransform.cpp:
3569 * ksvg2/svg/SVGTransform.h:
3570 * ksvg2/svg/SVGTransformList.cpp:
3571 * ksvg2/svg/SVGTransformList.h:
3572 * ksvg2/svg/SVGTransformable.cpp:
3573 * ksvg2/svg/SVGTransformable.h:
3574 * ksvg2/svg/SVGURIReference.cpp:
3575 * ksvg2/svg/SVGURIReference.h:
3576 * ksvg2/svg/SVGUseElement.cpp:
3577 * ksvg2/svg/SVGUseElement.h:
3578 * ksvg2/svg/SVGViewElement.cpp:
3579 * ksvg2/svg/SVGViewElement.h:
3580 * ksvg2/svg/SVGZoomAndPan.cpp:
3581 * ksvg2/svg/SVGZoomAndPan.h:
3582 * ksvg2/svg/svgpathparser.cpp:
3583 * ksvg2/svg/svgpathparser.h:
3584 * page/DOMWindow.idl:
3586 (WebCore::Frame::Frame):
3587 (WebCore::Frame::begin):
3588 (WebCore::Frame::pauseTimeouts):
3589 (WebCore::Frame::resumeTimeouts):
3590 * platform/GraphicsContext.h:
3591 * platform/cg/GraphicsContextCG.cpp:
3592 * rendering/RenderLayer.cpp:
3593 (WebCore::RenderLayer::isTransparent):
3594 * rendering/RenderObject.cpp:
3595 (WebCore::RenderObject::containingBlock):
3596 * rendering/RenderObject.h:
3597 * rendering/RenderStyle.cpp:
3598 (WebCore::RenderStyle::RenderStyle):
3599 (WebCore::RenderStyle::inheritFrom):
3600 (WebCore::RenderStyle::operator==):
3601 (WebCore::RenderStyle::inheritedNotEqual):
3602 (WebCore::RenderStyle::diff):
3603 * rendering/RenderStyle.h:
3604 * rendering/RenderTreeAsText.cpp:
3606 (WebCore::externalRepresentation):
3607 * xpath/XPathEvaluator.cpp:
3608 * xpath/XPathEvaluator.h:
3609 * xpath/XPathExpression.cpp:
3610 * xpath/XPathExpression.h:
3611 * xpath/XPathNSResolver.cpp:
3612 * xpath/XPathNSResolver.h:
3613 * xpath/XPathNamespace.cpp:
3614 * xpath/XPathNamespace.h:
3615 * xpath/XPathResult.cpp:
3616 * xpath/XPathResult.h:
3617 * xpath/impl/XPathExpressionNode.cpp:
3618 * xpath/impl/XPathExpressionNode.h:
3619 * xpath/impl/XPathFunctions.cpp:
3620 * xpath/impl/XPathFunctions.h:
3621 * xpath/impl/XPathGrammar.y:
3622 * xpath/impl/XPathParser.cpp:
3623 * xpath/impl/XPathParser.h:
3624 * xpath/impl/XPathPath.cpp:
3625 * xpath/impl/XPathPath.h:
3626 * xpath/impl/XPathPredicate.cpp:
3627 * xpath/impl/XPathPredicate.h:
3628 * xpath/impl/XPathStep.cpp:
3629 * xpath/impl/XPathStep.h:
3630 * xpath/impl/XPathUtil.cpp:
3631 * xpath/impl/XPathUtil.h:
3632 * xpath/impl/XPathValue.cpp:
3633 * xpath/impl/XPathValue.h:
3634 * xpath/impl/XPathVariableReference.cpp:
3635 * xpath/impl/XPathVariableReference.h:
3637 Change all #if SVG_SUPPORT to #ifdef SVG_SUPPORT and
3638 #if XPATH_SUPPORT to #ifdef XPATH_SUPPORT
3639 (except for one #if !SVG_SUPPORT to a #ifndef SVG_SUPPORT
3640 in RenderTreeAsText.cpp)
3642 2006-08-08 Rob Buis <buis@kde.org>
3646 http://bugzilla.opendarwin.org/show_bug.cgi?id=10230
3647 SVGDOMImplementation should die (and be rolled into DOMImplementation)
3649 Delete SVGDOMImplementation and references to it. The
3650 svg specific functionality is now in DOMImplementation.
3652 * WebCore.xcodeproj/project.pbxproj:
3653 * dom/DOMImplementation.cpp:
3654 (WebCore::svgFeatureSet):
3655 (WebCore::DOMImplementation::hasFeature):
3656 (WebCore::DOMImplementation::createDocument):
3657 (WebCore::DOMImplementation::createSVGDocument):
3658 * dom/DOMImplementation.h:
3659 * ksvg2/bindings/idl/svg/SVGDOMImplementation.idl: Removed.
3660 * ksvg2/misc/KSVGTimeScheduler.cpp:
3661 * ksvg2/svg/SVGColor.cpp:
3662 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
3663 * ksvg2/svg/SVGDocument.cpp:
3664 (WebCore::SVGDocument::SVGDocument):
3665 * ksvg2/svg/SVGDocument.h:
3666 * ksvg2/svg/SVGElement.cpp:
3667 (WebCore::SVGElement::isSupported):
3668 * ksvg2/svg/SVGFEBlendElement.cpp:
3669 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
3670 * ksvg2/svg/SVGFEComponentTransferElement.cpp:
3671 * ksvg2/svg/SVGFECompositeElement.cpp:
3672 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
3673 * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
3674 * ksvg2/svg/SVGFEFloodElement.cpp:
3675 * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
3676 * ksvg2/svg/SVGFELightElement.cpp:
3677 * ksvg2/svg/SVGFEMergeElement.cpp:
3678 * ksvg2/svg/SVGFEOffsetElement.cpp:
3679 * ksvg2/svg/SVGFESpecularLightingElement.cpp:
3680 * ksvg2/svg/SVGFETileElement.cpp:
3681 * ksvg2/svg/SVGFETurbulenceElement.cpp:
3682 * ksvg2/svg/SVGGradientElement.cpp:
3683 * ksvg2/svg/SVGPatternElement.cpp:
3684 * ksvg2/svg/SVGPolyElement.cpp:
3685 * ksvg2/svg/SVGStopElement.cpp:
3686 * ksvg2/svg/SVGStyledElement.cpp:
3687 * ksvg2/svg/SVGStyledTransformableElement.cpp:
3688 * ksvg2/svg/SVGTests.cpp:
3689 (WebCore::SVGTests::isValid):
3690 * ksvg2/svg/SVGTransformable.cpp:
3692 (WebCore::Frame::begin):
3694 2006-08-07 Brady Eidson <beidson@apple.com>
3696 Reviewed by Anders and John
3698 Icons can now refresh when new data is sent from WebKit, both on disk and in memory
3700 * bridge/mac/WebCoreIconDatabaseBridge.h:
3701 * bridge/mac/WebCoreIconDatabaseBridge.mm:
3702 (WebCore::IconDatabase::loadIconFromURL): Allows WebCore/Kit to kick off a load
3703 outside of any greater context
3704 (-[WebCoreIconDatabaseBridge isIconExpiredForIconURL:]):
3705 (-[WebCoreIconDatabaseBridge isIconExpiredForPageURL:]): Allows WebKit
3706 to get whether or not an icon has expired
3708 * loader/icon/IconDatabase.cpp:
3709 (WebCore::IconDatabase::recreateDatabase): Changed database schema slightly
3710 (WebCore::IconDatabase::createPrivateTables): Changed database schema slightly
3711 (WebCore::IconDatabase::iconForPageURL):
3712 (WebCore::IconDatabase::isIconExpiredForIconURL): Get if an icon has expired
3713 (WebCore::IconDatabase::isIconExpiredForPageURL): Get if an icon has expired
3714 (WebCore::IconDatabase::setIconDataForIconURL): Force a refresh of the in memory
3715 image when new icon data is loaded
3716 (WebCore::IconDatabase::setIconURLForPageURL): added a check for null iconID
3718 * loader/icon/IconDatabase.h: added/changed some methods
3719 * loader/icon/SiteIcon.cpp:
3720 (SiteIcon::getImage): simplified/removed debugging code
3721 (SiteIcon::manuallySetImageData): allow the image data to be changed when new icon
3724 2006-08-05 Darin Adler <darin@apple.com>
3726 Reviewed by Eric Seidel.
3728 - fix a storage leak
3730 * rendering/RenderView.cpp: (WebCore::RenderView::setSelection):
3731 Delete the values if we are going to exit without using the maps.
3732 Otherwise all the values leak.
3734 2006-08-05 Darin Adler <darin@apple.com>
3738 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10213
3739 REGRESSION: Crash in WebCore::RenderLayer::isTransparent involving <iframe> and <select>
3741 Test: fast/frames/iframe-option-crash.xhtml
3743 * rendering/RenderView.cpp: (WebCore::RenderView::paintBoxDecorations):
3744 Check for a nil renderer.
3746 2006-08-04 David Hyatt <hyatt@apple.com>
3748 Fix for Radar bug #4644045, regression where dragging selection no longer
3749 works for floats contained inside layers. I added an optimization to
3750 refine dirty rect checking for layers, and it incorrectly excluded floats
3751 from the paint bounds since PaintPhaseSelection was not considered when
3752 analyzing the floatRect().
3756 * rendering/RenderBlock.cpp:
3757 (WebCore::RenderBlock::paint):
3759 2006-08-04 David Hyatt <hyatt@apple.com>
3761 Fix remove() so that it is equivalent to calling removeChild on the
3762 parent. This involved moving three operations that remove did.
3764 (1) Move the accessibility object cache removal into the destroy methods,
3765 since this really should just happen when a render object is going away.
3767 (2) removeFromObjectLists shifted into removeChild, which means it will
3768 now be called more often (this is a correct change). Note that there is
3769 also now a new guard on removeFromObjectLists so that it won't do any
3770 work unless the document is not being destroyed.
3772 (3) The big one. deleteLineBoxWrapper was not getting called to clean up
3773 the line box tree. This moved right into RenderContainer's removeChildNode so
3774 that it is now done even in the lowest level RenderContainer removal primitive.
3778 * rendering/RenderContainer.cpp:
3779 (WebCore::RenderContainer::removeChildNode):
3780 (WebCore::RenderContainer::removeChild):
3781 * rendering/RenderObject.cpp:
3782 (WebCore::RenderObject::removeFromObjectLists):
3783 (WebCore::RenderObject::destroy):
3784 * rendering/RenderObject.h:
3785 (WebCore::RenderObject::remove):
3786 * rendering/RenderWidget.cpp:
3787 (WebCore::RenderWidget::destroy):
3789 2006-08-04 David Hyatt <hyatt@apple.com>
3791 Back out the fix for list marker crashes. The actual bug here is that
3792 there is a confusing mismatch between remove() and removeChild() in the
3793 render tree. remove() does a little bit of extra work that removeChild
3794 should be doing instead (so that remove() can just be a shorthand for
3797 This conservative fix does not solve the remove/removeChild mismatch
3798 but instead just changes the list marker updating code to use remove
3803 Test Case: fast/lists/dynamic-marker-crash.html
3805 * rendering/ListMarkerBox.cpp:
3806 * rendering/ListMarkerBox.h:
3807 * rendering/RenderListItem.cpp:
3808 (WebCore::RenderListItem::updateMarkerLocation):
3810 2006-08-04 Sam Weinig <sam.weinig@gmail.com>
3814 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10192
3815 Make WebCore (and friends) compile with -Wshorten-64-to-32
3817 * Adds -Wshorten-64-to-32 flag to Xcode project.
3818 * Adds 'f' to float literals where expecting a float.
3819 * Use cosf() instead of cos() when assigning to a float.
3821 * WebCore.xcodeproj/project.pbxproj:
3822 * kcanvas/device/quartz/filters/WKDiffuseLightingFilter.m:
3823 (+[WKDiffuseLightingFilter initialize]):
3824 * kcanvas/device/quartz/filters/WKDiscreteTransferFilter.m:
3825 (-[WKDiscreteTransferFilter outputImage]):
3826 * kcanvas/device/quartz/filters/WKDisplacementMapFilter.m:
3827 (+[WKDisplacementMapFilter initialize]):
3828 * kcanvas/device/quartz/filters/WKSpecularLightingFilter.m:
3829 (+[WKSpecularLightingFilter initialize]):
3830 * kcanvas/device/quartz/filters/WKSpotLightFilter.m:
3831 (-[WKSpotLightFilter outputImage]):
3832 * kcanvas/device/quartz/filters/WKTableTransferFilter.m:
3833 (-[WKTableTransferFilter outputImage]):
3835 2006-08-03 David Hyatt <hyatt@apple.com>
3837 Fix for bug 10229, don't bother trying to clear when no floats are
3838 present. I suspect there's still a bug in the math that follows, but
3839 this fix is safer in that it just does the obvious thing (and doesn't
3840 compute any clearance if no floats are even around).
3845 * rendering/RenderBlock.cpp:
3846 (WebCore::RenderBlock::getClearDelta):
3848 2006-08-03 Justin Garcia <justin.garcia@apple.com>
3850 Reviewed by harrison
3852 <rdar://problem/4641033/4515463/4052426/4046570/4053718/4053724/4060115/4062858>
3853 Copy/Paste fidelity was bad.
3855 * editing/ApplyStyleCommand.cpp:
3856 (WebCore::ApplyStyleCommand::applyInlineStyle):
3857 * editing/markup.cpp:
3858 (WebCore::startMarkup): We were not adding non-inheritable styles
3859 to the markup for an element unless they were in the elements inline
3862 2006-08-03 Sam Weinig <sam.weinig@gmail.com>
3866 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10176
3867 Make WebCore compile with -Wundef
3869 * Adds -Wundef flag to Xcode project
3870 * Converts #ifs to #ifdef and #ifndefs where needed.
3871 * Replaces #ifdef WIN32 with #if PLATFORM(WIN_OS) or PLATFORM(WIN)
3872 (and in one instance in config.h with #if !COMPILER(MSVC))
3873 * Added #define YYMAXDEPTH 10000 in XPathGrammar.y and CSSGrammar.y
3874 to fix a warning from within Bison.
3875 * Cleaned up style a little in surrounding code.
3877 * WebCore.xcodeproj/project.pbxproj:
3878 * bridge/mac/WebCoreAXObject.mm:
3879 (-[WebCoreAXObject doAXTextMarkerRangeForUnorderedTextMarkers:]):
3882 * css/MediaFeatureNames.cpp:
3883 * css/MediaFeatureNames.h:
3884 * css/cssparser.cpp:
3885 * dom/ContainerNode.cpp:
3886 (WebCore::ContainerNode::setActive):
3888 (WebCore::Element::attach):
3890 * dom/EventNames.cpp:
3892 * dom/NamedAttrMap.h:
3894 * dom/QualifiedName.cpp:
3895 * dom/QualifiedName.h:
3897 * dom/XMLTokenizer.cpp:
3898 (WebCore::XMLTokenizer::error):
3899 * html/HTMLTokenizer.cpp:
3900 (WebCore::HTMLTokenizer::scriptHandler):
3901 (WebCore::HTMLTokenizer::scriptExecution):
3902 (WebCore::HTMLTokenizer::parseTag):
3903 (WebCore::HTMLTokenizer::continueProcessing):
3904 (WebCore::HTMLTokenizer::write):
3905 (WebCore::HTMLTokenizer::timerFired):
3906 (WebCore::HTMLTokenizer::notifyFinished):
3907 * kcanvas/device/quartz/KCanvasFilterQuartz.h:
3908 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
3909 * ksvg2/css/SVGRenderStyle.h:
3910 * ksvg2/css/SVGRenderStyleDefs.h:
3911 * ksvg2/scripts/make_names.pl:
3912 * loader/CachedResource.h:
3913 * loader/LoaderFunctions.h:
3916 * page/FrameTree.cpp:
3917 * page/FrameView.cpp:
3918 (WebCore::FrameView::clear):
3919 (WebCore::FrameView::layout):
3920 (WebCore::FrameView::layoutTimerFired):
3921 (WebCore::FrameView::scheduleRelayout):
3922 (WebCore::FrameView::unscheduleRelayout):
3923 * platform/AtomicString.cpp:
3924 * platform/AtomicString.h:
3925 * platform/Cursor.h:
3926 * platform/DeprecatedArray.h:
3927 * platform/DeprecatedString.cpp:
3928 (WebCore::allocateHandle):
3929 (WebCore::initializeHandleNodeBlock):
3930 (WebCore::freeHandle):
3931 * platform/FloatPoint.h:
3932 * platform/FloatRect.h:
3933 * platform/FloatSize.h:
3934 * platform/GraphicsContext.h:
3936 * platform/IntPoint.h:
3937 * platform/IntRect.h:
3938 (WebCore::IntRect::inflateX):
3939 (WebCore::IntRect::inflateY):
3940 * platform/IntSize.h:
3941 * platform/PlatformKeyboardEvent.h:
3942 * platform/PlatformMouseEvent.h:
3943 * platform/PlatformString.h:
3944 * platform/ResourceLoader.h:
3945 * platform/ResourceLoaderInternal.h:
3946 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
3947 * platform/ScrollView.h:
3948 * platform/StaticConstructors.h:
3949 * platform/StreamingTextDecoderICU.cpp:
3950 (WebCore::StreamingTextDecoderICU::convert):
3951 * platform/StringImpl.h:
3952 * platform/Widget.h:
3953 * platform/mac/BlockExceptions.mm:
3954 * platform/mac/ColorMac.mm:
3955 (+[WebCoreControlTintObserver WebCore]):
3956 * platform/mac/FloatPointMac.mm:
3957 * platform/mac/FloatRectMac.mm:
3958 * platform/mac/FloatSizeMac.mm:
3959 * platform/mac/FontMac.mm:
3960 * platform/mac/GraphicsContextMac.mm:
3961 (WebCore::GraphicsContext::drawFocusRing):
3962 * platform/mac/IntPointMac.mm:
3963 * platform/mac/IntRectMac.mm:
3964 * platform/mac/IntSizeMac.mm:
3965 * platform/mac/WebCoreSystemInterface.h:
3966 * rendering/RenderBlock.h:
3967 * rendering/RenderTableCell.h:
3968 * rendering/bidi.cpp:
3969 (WebCore::appendRun):
3970 (WebCore::RenderBlock::layoutInlineChildren):
3971 * xml/XSLTProcessor.cpp:
3972 (WebCore::parseErrorFunc):
3973 * xpath/impl/XPathGrammar.y:
3975 2006-08-03 Adam Roben <aroben@apple.com>
3977 Reviewed by Maciej and Beth.
3979 Fix use-after-dispose heap corruption bug.
3981 * rendering/ListMarkerBox.cpp:
3982 (WebCore::ListMarkerBox::destroy): Only call removeChild if we're not
3983 destroying the document
3985 2006-08-03 Adam Roben <aroben@apple.com>
3989 - Fixed Windows build.
3991 * platform/Color.cpp:
3992 (WebCore::makeRGBAFromHSLA): Whitespace change
3993 * platform/win/TemporaryLinkStubs.cpp: Add new method stubs
3994 (PlatformScrollBar::PlatformScrollBar):
3995 (PlatformScrollBar::~PlatformScrollBar):
3996 (PlatformScrollBar::width):
3997 (PlatformScrollBar::height):
3998 (PlatformScrollBar::setEnabled):
3999 (PlatformScrollBar::paint):
4000 (PlatformScrollBar::setScrollBarValue):
4001 (PlatformScrollBar::setKnobProportion):
4002 (PlatformScrollBar::setRect):
4003 (ScrollBar::ScrollBar):
4004 (ScrollBar::scroll):
4005 (ScrollBar::setValue):
4007 2006-08-02 Justin Garcia <justin.garcia@apple.com>
4011 <http://bugzilla.opendarwin.org/show_bug.cgi?id=10225>
4012 GMail Editor: Change Hilite Color doesn't work
4014 * editing/JSEditor.cpp: Added support for execCommand("HiliteColor", ...).
4015 It's what GMail uses to implement text hiliting. It's just a synonym for BackColor.
4016 * editing/SelectionController.cpp:
4017 (WebCore::SelectionController::nodeWillBeRemoved): Moved a comment
4018 a more appropriate place.
4020 2006-08-03 Mitz Pettel <opendarwin.org@mitzpettel.com>
4022 Reviewed by Adele and Darin.
4024 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10177
4025 REGRESSION: Successfully dragging text into a disabled field
4027 Test: fast/forms/textfield-drag-into-disabled.html
4029 * rendering/RenderTextControl.cpp:
4030 (WebCore::RenderTextControl::createDivStyle): Changed to set -webkit-user-modify
4031 to read-only on the inner div if the control is disabled.
4032 (WebCore::RenderTextControl::updateFromElement): Ditto.
4034 2006-08-03 Mitz Pettel <opendarwin.org@mitzpettel.com>
4038 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10198
4039 REGRESSION: WebKit r15750 crashes while loading anthem.com
4041 Test: fast/overflow/generated-content-crash.html
4043 * rendering/RenderLayer.cpp:
4044 (WebCore::RenderLayer::updateScrollInfoAfterLayout): Added a null check for
4045 the renderer's element. Generated content does not have an element and
4046 therefore does not need to maintain overflow status.
4048 2006-08-03 Mitz Pettel <opendarwin.org@mitzpettel.com>
4052 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10202
4053 REGRESSION: Repro crash when loading an empty image document
4055 Test: fast/tokenizer/image-empty-crash.html
4057 * loader/ImageDocument.cpp:
4058 (WebCore::ImageTokenizer::stopParsing): Added null check for m_imageElement.
4059 (WebCore::ImageTokenizer::finish): Ditto.
4061 2006-08-03 Darin Adler <darin@apple.com>
4065 - clean up "flip"-related code a tiny bit
4067 * platform/Screen.h: Removed redundant parameter names.
4068 * platform/mac/ScreenMac.mm:
4069 (WebCore::flipScreenRect): Changed to call flipScreenPoint so we only have one
4070 copy of the flipping code.
4071 (WebCore::flipScreenPoint): Fixed indentation.
4073 * bridge/mac/WebCoreFrameBridge.mm: (globalPoint): Removed type casts and
4076 * platform/mac/PlatformMouseEventMac.mm: (WebCore::globalPositionForEvent):
4077 * platform/mac/WheelEventMac.mm: (WebCore::globalPositionForEvent):
4078 Removed unneeded local variable.
4080 2006-08-02 David Hyatt <hyatt@apple.com>
4082 Abstract RenderLayer scrollbar creation and destruction so that there
4083 is a clean spot in which to drop in engine scrollbar stuff.
4087 * platform/ScrollBar.h:
4088 (WebCore::ScrollBar::hasPlatformScrollBars):
4089 * rendering/RenderLayer.cpp:
4090 (WebCore::RenderLayer::createScrollbar):
4091 (WebCore::RenderLayer::destroyScrollbar):
4092 (WebCore::RenderLayer::setHasHorizontalScrollbar):
4093 (WebCore::RenderLayer::setHasVerticalScrollbar):
4094 * rendering/RenderLayer.h:
4096 2006-08-02 Mitz Pettel <opendarwin.org@mitzpettel.com>
4100 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=3438
4101 incorrect display of transparent 1x1 PNGs
4103 Test: fast/replaced/image-solid-color-with-alpha.html
4105 * platform/mac/ImageMac.mm:
4106 (WebCore::Image::checkForSolidColor): Changed to divide each color component
4107 by the alpha component. You need to do that since the bitmap context has
4108 premultiplied alpha but m_solidColor should be non-premultiplied.
4110 2006-08-02 Adam Roben <aroben@apple.com>
4114 - Remove redundant #include
4116 * loader/loader.cpp:
4118 2006-07-31 Sam Weinig <sam.weinig@gmail.com>
4122 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=9955
4123 Colors scaled from [0, 1] range to [0, 255] incorrectly
4125 Fixes scaling issue and fixes Color to follow style guidelines.
4127 * css/cssstyleselector.cpp:
4128 (WebCore::CSSStyleSelector::getColorFromPrimitiveValue):
4129 * platform/Color.cpp:
4131 (WebCore::makeRGBAFromHSLA):
4132 (WebCore::Color::Color):
4133 (WebCore::Color::name):
4134 (WebCore::Color::setNamedColor):
4135 (WebCore::Color::light):
4136 (WebCore::Color::dark):
4139 (WebCore::Color::Color):
4140 (WebCore::Color::isValid):
4141 (WebCore::Color::red):
4142 (WebCore::Color::green):
4143 (WebCore::Color::blue):
4144 (WebCore::Color::alpha):
4145 (WebCore::Color::rgb):
4146 (WebCore::Color::setRGB):
4147 (WebCore::operator==):
4148 (WebCore::operator!=):
4149 * rendering/RenderObject.cpp:
4150 (WebCore::RenderObject::drawBorder):