1 2006-12-18 Alice Liu <alice.liu@apple.com>
5 * editing/EditorDeleteAction.h: Added.
8 2006-12-18 Alice Liu <alice.liu@apple.com>
12 Have the Editor handle deletion instead of WebHTMLView
15 Exposed Editor::deleteWithDirection and ::deleteRange()
17 * WebCore.xcodeproj/project.pbxproj:
18 Added EditorDeleteAction.h
21 (WebCore::Editor::deleteRange):
22 (WebCore::Editor::deleteWithDirection):
25 (WebCore::Editor::deleteSelectionWithSmartDelete):
26 Overloaded to take no params, in which case canSmartCopyOrDelete is called
30 (WebCore::execDelete):
32 Call the editor instead of asking frame to cut/copy/paste/delete
34 (WebCore::execBackwardDelete):
35 (WebCore::execForwardDelete):
36 Call deleteWithDirection instead of just executing a TypingCommand
38 (WebCore::CommandEntry::):
39 distinguished delete (which deletes selection) from backwards delete (single character, no selection)
41 (WebCore::Editor::cut):
42 (WebCore::Editor::performDelete):
47 (WebCore::Editor::setStartNewKillRingSequence):
48 (WebCore::Editor::propogateDOMException):
49 (WebCore::Editor::addToKillRing):
50 * editing/mac/EditorMac.mm:
51 Factored out support for Kill Rings to this file
53 * platform/mac/PasteboardMac.mm:
56 2006-12-18 Kevin McCullough <KMcCullough@apple.com>
60 - Removed CG header include
62 * platform/graphics/ImageSource.h:
64 2006-12-18 John Sullivan <sullivan@apple.com>
66 Reviewed by Tim Hatcher
68 - fixed <rdar://problem/4887764> GMAIL: Crash occurs at WebCore::Range::cloneRange()
69 when I ctrl-click in a empty list item
71 * editing/mac/EditorMac.mm:
72 (WebCore::isRangeUngrammatical):
73 bail out immediately for nil range (which selectionController()->toRange().get()
74 can return). Also save some work by bailing out immediately for collapsed ranges.
76 2006-12-18 Alice Liu <alice.liu@apple.com>
80 * platform/ContextMenu.cpp:
81 (WebCore::ContextMenu::checkOrEnableIfNeeded):
83 2006-12-17 Zack Rusin <zack@kde.org>
85 Fix compilation after the const changes.
87 * platform/qt/ContextMenuItemQt.cpp:
88 (WebCore::ContextMenuItem::type):
89 (WebCore::ContextMenuItem::setTitle):
90 (WebCore::ContextMenuItem::setChecked):
91 (WebCore::ContextMenuItem::setEnabled):
93 2006-12-17 Nikolas Zimmermann <zimmermann@kde.org>
97 Fixes: http://bugs.webkit.org/show_bug.cgi?id=10956
99 Long standing regression. The old code in FontMac.mm, used set the fill/stroke
100 color "[nsColor(graphicsContext->pen().color()) set];", and current code only
101 sets the fill color. Reverting to old behaviour fixes gradient-on-stroke-of-text.
103 * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
104 (WebCore::SVGPaintServerGradient::setup):
105 * platform/mac/FontMac.mm:
106 (WebCore::Font::drawComplexText):
107 (WebCore::Font::drawGlyphs):
109 2006-12-17 Lars Naesbye Christensen <larsnaesbye@stud.ku.dk>
111 Reviewed, tweaked and landed by Alexey.
113 http://bugs.webkit.org/show_bug.cgi?id=11798
114 [CSS 3] missing cursor support for 'none'
116 * Resources/noneCursor.png: Added.
117 * WebCore.xcodeproj/project.pbxproj:
118 * css/CSSComputedStyleDeclaration.cpp:
119 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
120 * css/CSSValueKeywords.in:
121 * css/cssparser.cpp: Also fixed previously broken -webkit-background-composite: copy.
122 * manual-tests/cursor.html:
123 * page/EventHandler.cpp:
124 (WebCore::selectCursor):
126 * platform/gdk/CursorGdk.cpp:
127 (WebCore::noneCursor):
128 * platform/mac/CursorMac.mm:
129 (WebCore::noneCursor):
130 * platform/qt/CursorQt.cpp:
131 (WebCore::noneCursor):
132 * platform/win/CursorWin.cpp:
133 (WebCore::noneCursor):
134 * rendering/RenderStyle.h:
137 2006-12-17 Nikolas Zimmermann <zimmermann@kde.org>
139 Build fix, not reviewed.
141 This should hopefully fix Qt build.
143 * ksvg2/svg/SVGLength.cpp: Include math.h for Qt/Linux build.
145 2006-12-17 Nikolas Zimmermann <zimmermann@kde.org>
149 Remove SVGHelper class. Move the last static function "parseSeparatedList"
150 to the only place using it: SVGAnimationElement. Update all build files.
152 Remove any lazy_create macro usage, by what it does - cleaner.
156 * WebCore.xcodeproj/project.pbxproj:
157 * ksvg2/misc/KCanvasRenderingStyle.cpp:
158 * ksvg2/svg/SVGAElement.cpp:
159 * ksvg2/svg/SVGAnimationElement.cpp:
160 (WebCore::parseSeparatedList):
161 (WebCore::SVGAnimationElement::parseMappedAttribute):
162 * ksvg2/svg/SVGCircleElement.cpp:
163 * ksvg2/svg/SVGClipPathElement.cpp:
164 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
165 * ksvg2/svg/SVGCursorElement.cpp:
166 * ksvg2/svg/SVGEllipseElement.cpp:
167 * ksvg2/svg/SVGExternalResourcesRequired.cpp:
168 * ksvg2/svg/SVGFEBlendElement.cpp:
169 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
170 * ksvg2/svg/SVGFEComponentTransferElement.cpp:
171 * ksvg2/svg/SVGFECompositeElement.cpp:
172 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
173 * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
174 * ksvg2/svg/SVGFEFloodElement.cpp:
175 * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
176 * ksvg2/svg/SVGFEImageElement.cpp:
177 * ksvg2/svg/SVGFELightElement.cpp:
178 * ksvg2/svg/SVGFEMergeElement.cpp:
179 * ksvg2/svg/SVGFEMergeNodeElement.cpp:
180 * ksvg2/svg/SVGFEOffsetElement.cpp:
181 * ksvg2/svg/SVGFESpecularLightingElement.cpp:
182 * ksvg2/svg/SVGFETileElement.cpp:
183 * ksvg2/svg/SVGFilterElement.cpp:
184 * ksvg2/svg/SVGForeignObjectElement.cpp:
185 * ksvg2/svg/SVGGradientElement.cpp:
186 * ksvg2/svg/SVGHelper.cpp: Removed.
187 * ksvg2/svg/SVGHelper.h: Removed.
188 * ksvg2/svg/SVGImageElement.cpp:
189 * ksvg2/svg/SVGLength.cpp:
190 * ksvg2/svg/SVGLineElement.cpp:
191 * ksvg2/svg/SVGLinearGradientElement.cpp:
192 * ksvg2/svg/SVGMarkerElement.cpp:
193 * ksvg2/svg/SVGMaskElement.cpp:
194 * ksvg2/svg/SVGPathElement.cpp:
195 * ksvg2/svg/SVGPatternElement.cpp:
196 * ksvg2/svg/SVGPolyElement.cpp:
197 * ksvg2/svg/SVGRadialGradientElement.cpp:
198 * ksvg2/svg/SVGRectElement.cpp:
199 * ksvg2/svg/SVGStopElement.cpp:
200 * ksvg2/svg/SVGStyledElement.cpp:
201 * ksvg2/svg/SVGStyledTransformableElement.cpp:
202 * ksvg2/svg/SVGSymbolElement.cpp:
203 * ksvg2/svg/SVGTests.cpp:
204 * ksvg2/svg/SVGTextContentElement.cpp:
205 * ksvg2/svg/SVGTextElement.cpp:
206 * ksvg2/svg/SVGTextPositioningElement.cpp:
207 * ksvg2/svg/SVGTransformable.cpp:
208 * ksvg2/svg/SVGURIReference.cpp:
209 * ksvg2/svg/SVGUseElement.cpp:
210 * ksvg2/svg/SVGViewElement.cpp:
211 * ksvg2/svg/SVGZoomAndPan.cpp:
213 2006-12-17 Nikolas Zimmermann <zimmermann@kde.org>
217 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11813
219 Pass SVGLength around by value, remove any SVGLength* usage.
220 Bindings work fine, as the SVG POD JS Wrapper stuff is already in svn.
222 No new regressions, none fixed. But the code itself is much cleaner.
223 And some problems with width-full-percentage.svg have been fixed, viewport
224 clipping works in any case now, also for percentual width/height values set on <svg>.
226 * bindings/scripts/CodeGenerator.pm:
227 * bindings/scripts/CodeGeneratorJS.pm:
228 * ksvg2/misc/KCanvasRenderingStyle.cpp:
229 (WebCore::KSVGPainterFactory::cssPrimitiveToLength):
230 * ksvg2/svg/SVGAnimatedTemplate.h:
231 * ksvg2/svg/SVGCircleElement.cpp:
232 (WebCore::SVGCircleElement::SVGCircleElement):
233 (WebCore::SVGCircleElement::parseMappedAttribute):
234 (WebCore::SVGCircleElement::toPathData):
235 * ksvg2/svg/SVGCircleElement.h:
236 * ksvg2/svg/SVGCursorElement.cpp:
237 (WebCore::SVGCursorElement::SVGCursorElement):
238 (WebCore::SVGCursorElement::parseMappedAttribute):
239 * ksvg2/svg/SVGCursorElement.h:
240 * ksvg2/svg/SVGElement.cpp:
241 * ksvg2/svg/SVGEllipseElement.cpp:
242 (WebCore::SVGEllipseElement::SVGEllipseElement):
243 (WebCore::SVGEllipseElement::parseMappedAttribute):
244 (WebCore::SVGEllipseElement::toPathData):
245 * ksvg2/svg/SVGEllipseElement.h:
246 * ksvg2/svg/SVGFilterElement.cpp:
247 (WebCore::SVGFilterElement::SVGFilterElement):
248 (WebCore::SVGFilterElement::parseMappedAttribute):
249 (WebCore::SVGFilterElement::canvasResource):
250 * ksvg2/svg/SVGFilterElement.h:
251 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
252 (WebCore::SVGFilterPrimitiveStandardAttributes::SVGFilterPrimitiveStandardAttributes):
253 (WebCore::SVGFilterPrimitiveStandardAttributes::parseMappedAttribute):
254 (WebCore::SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
255 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
256 * ksvg2/svg/SVGFitToViewBox.cpp:
257 (WebCore::SVGFitToViewBox::parseViewBox):
258 * ksvg2/svg/SVGForeignObjectElement.cpp:
259 (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
260 (WebCore::SVGForeignObjectElement::parseMappedAttribute):
261 (WebCore::SVGForeignObjectElement::createRenderer):
262 (WebCore::SVGForeignObjectElement::childShouldCreateRenderer):
263 * ksvg2/svg/SVGForeignObjectElement.h:
264 * ksvg2/svg/SVGHelper.cpp:
265 (WebCore::SVGHelper::parseSeparatedList):
266 * ksvg2/svg/SVGHelper.h:
267 * ksvg2/svg/SVGImageElement.cpp:
268 (WebCore::SVGImageElement::SVGImageElement):
269 (WebCore::SVGImageElement::parseMappedAttribute):
270 * ksvg2/svg/SVGImageElement.h:
271 * ksvg2/svg/SVGLength.cpp:
272 (WebCore::storeUnit):
273 (WebCore::extractMode):
274 (WebCore::extractType):
275 (WebCore::lengthTypeToString):
276 (WebCore::stringToLengthType):
277 (WebCore::SVGLength::SVGLength):
278 (WebCore::SVGLength::unitType):
279 (WebCore::SVGLength::value):
280 (WebCore::SVGLength::setValue):
281 (WebCore::SVGLength::setValueInSpecifiedUnits):
282 (WebCore::SVGLength::setValueAsString):
283 (WebCore::SVGLength::valueAsString):
284 (WebCore::SVGLength::newValueSpecifiedUnits):
285 (WebCore::SVGLength::convertToSpecifiedUnits):
286 (WebCore::SVGLength::isFraction):
287 (WebCore::SVGLength::dpi):
288 (WebCore::SVGLength::PercentageOfViewport):
289 * ksvg2/svg/SVGLength.h:
291 (WebCore::SVGLength::):
292 * ksvg2/svg/SVGLength.idl:
293 * ksvg2/svg/SVGLengthList.cpp:
294 (WebCore::SVGLengthList::SVGLengthList):
295 (WebCore::SVGLengthList::parse):
296 * ksvg2/svg/SVGLengthList.h:
297 * ksvg2/svg/SVGLineElement.cpp:
298 (WebCore::SVGLineElement::SVGLineElement):
299 (WebCore::SVGLineElement::parseMappedAttribute):
300 (WebCore::SVGLineElement::toPathData):
301 * ksvg2/svg/SVGLineElement.h:
302 * ksvg2/svg/SVGLinearGradientElement.cpp:
303 (WebCore::SVGLinearGradientElement::SVGLinearGradientElement):
304 (WebCore::SVGLinearGradientElement::parseMappedAttribute):
305 (WebCore::SVGLinearGradientElement::buildGradient):
306 * ksvg2/svg/SVGLinearGradientElement.h:
307 * ksvg2/svg/SVGMarkerElement.cpp:
308 (WebCore::SVGMarkerElement::SVGMarkerElement):
309 (WebCore::SVGMarkerElement::parseMappedAttribute):
310 (WebCore::SVGMarkerElement::canvasResource):
311 * ksvg2/svg/SVGMarkerElement.h:
312 * ksvg2/svg/SVGMaskElement.cpp:
313 (WebCore::SVGMaskElement::SVGMaskElement):
314 (WebCore::SVGMaskElement::attributeChanged):
315 (WebCore::SVGMaskElement::parseMappedAttribute):
316 (WebCore::SVGMaskElement::drawMaskerContent):
317 * ksvg2/svg/SVGMaskElement.h:
318 * ksvg2/svg/SVGPatternElement.cpp:
319 (WebCore::SVGPatternElement::SVGPatternElement):
320 (WebCore::SVGPatternElement::parseMappedAttribute):
321 (WebCore::SVGPatternElement::drawPatternContentIntoTile):
322 (WebCore::SVGPatternElement::notifyAttributeChange):
323 (WebCore::SVGPatternElement::getCTM):
324 * ksvg2/svg/SVGPatternElement.h:
325 * ksvg2/svg/SVGRadialGradientElement.cpp:
326 (WebCore::SVGRadialGradientElement::SVGRadialGradientElement):
327 (WebCore::SVGRadialGradientElement::parseMappedAttribute):
328 (WebCore::SVGRadialGradientElement::buildGradient):
329 * ksvg2/svg/SVGRadialGradientElement.h:
330 * ksvg2/svg/SVGRectElement.cpp:
331 (WebCore::SVGRectElement::SVGRectElement):
332 (WebCore::SVGRectElement::parseMappedAttribute):
333 (WebCore::SVGRectElement::toPathData):
334 * ksvg2/svg/SVGRectElement.h:
335 * ksvg2/svg/SVGSVGElement.cpp:
336 (WebCore::SVGSVGElement::SVGSVGElement):
337 (WebCore::SVGSVGElement::viewport):
338 (WebCore::SVGSVGElement::parseMappedAttribute):
339 (WebCore::SVGSVGElement::createSVGLength):
340 (WebCore::SVGSVGElement::getCTM):
341 (WebCore::SVGSVGElement::getScreenCTM):
342 * ksvg2/svg/SVGSVGElement.h:
343 * ksvg2/svg/SVGStyledElement.cpp:
344 * ksvg2/svg/SVGStyledElement.h:
345 * ksvg2/svg/SVGTextContentElement.cpp:
346 (WebCore::SVGTextContentElement::SVGTextContentElement):
347 (WebCore::SVGTextContentElement::parseMappedAttribute):
348 * ksvg2/svg/SVGTextContentElement.h:
349 * ksvg2/svg/SVGTextElement.cpp:
350 * ksvg2/svg/SVGTextPositioningElement.cpp:
351 (WebCore::SVGTextPositioningElement::parseMappedAttribute):
352 * ksvg2/svg/SVGUseElement.cpp:
353 (WebCore::SVGUseElement::SVGUseElement):
354 (WebCore::SVGUseElement::parseMappedAttribute):
355 (WebCore::SVGUseElement::closeRenderer):
356 * ksvg2/svg/SVGUseElement.h:
357 * page/EventHandler.cpp:
358 (WebCore::selectCursor):
359 * rendering/RenderForeignObject.cpp:
360 (WebCore::RenderForeignObject::translationForAttributes):
361 * rendering/RenderPath.cpp:
362 * rendering/RenderPath.h:
363 * rendering/RenderSVGContainer.cpp:
364 (WebCore::RenderSVGContainer::layout):
365 (WebCore::RenderSVGContainer::calcViewport):
366 * rendering/RenderSVGImage.cpp:
367 (WebCore::RenderSVGImage::relativeBBox):
368 (WebCore::RenderSVGImage::getAbsoluteRepaintRect):
369 (WebCore::RenderSVGImage::translationForAttributes):
370 * rendering/RenderSVGText.cpp:
371 (WebCore::RenderSVGText::layout):
372 * rendering/SVGInlineFlowBox.cpp:
373 (WebCore::translateBox):
374 (WebCore::placePositionedBoxesHorizontally):
375 (WebCore::placeBoxesVerticallyWithAbsBaseline):
377 2006-12-16 Sam Weinig <sam@webkit.org>
381 Patch for http://bugs.webkit.org/show_bug.cgi?id=11856
382 Update renderName() methods to return current class names.
384 * rendering/RenderPath.h:
385 (WebCore::RenderPath::renderName): Returns "RenderPath" instead of "KCanvasItem".
386 * rendering/RenderSVGContainer.h:
387 (WebCore::RenderSVGContainer::renderName): Returns "RenderSVGContainer" instead of "KCanvasContainer".
388 * rendering/RenderTextControl.h:
389 (WebCore::RenderTextControl::renderName): Returns "RenderTextControl" instead of "RenderTextField".
391 2006-12-16 Sam Weinig <sam@webkit.org>
395 Patch for http://bugs.webkit.org/show_bug.cgi?id=11844
396 Code Cleanup for more of the rendering code
398 * WebCore.xcodeproj/project.pbxproj:
399 * rendering/RenderCounter.cpp:
400 (WebCore::RenderCounter::calcMinMaxWidth):
401 * rendering/RenderText.cpp:
402 (WebCore::RenderText::RenderText):
403 (WebCore::RenderText::setStyle):
404 (WebCore::RenderText::destroy):
405 (WebCore::RenderText::attachTextBox):
406 (WebCore::RenderText::findNextInlineTextBox):
407 (WebCore::RenderText::positionForCoordinates):
408 (WebCore::firstRendererOnNextLine):
409 (WebCore::lastRendererOnPrevLine):
410 (WebCore::RenderText::caretRect):
411 (WebCore::RenderText::posOfChar):
412 (WebCore::RenderText::allAscii):
413 (WebCore::RenderText::shouldUseMonospaceCache):
414 (WebCore::RenderText::cacheWidths):
415 (WebCore::RenderText::widthFromCache):
416 (WebCore::RenderText::trimmedMinMaxWidth):
417 (WebCore::RenderText::calcMinMaxWidth):
418 (WebCore::isSpaceAccordingToStyle):
419 (WebCore::RenderText::containsOnlyWhitespace):
420 (WebCore::RenderText::minXPos):
421 (WebCore::RenderText::setSelectionState):
422 (WebCore::RenderText::setTextWithOffset):
423 (WebCore::RenderText::setText):
424 (WebCore::RenderText::position):
425 (WebCore::RenderText::width):
426 (WebCore::RenderText::getAbsoluteRepaintRect):
427 (WebCore::RenderText::selectionRect):
428 (WebCore::RenderText::verticalPositionHint):
429 (WebCore::RenderText::font):
430 (WebCore::RenderText::caretMinOffset):
431 (WebCore::RenderText::caretMaxOffset):
432 (WebCore::RenderText::previousOffset):
433 (WebCore::RenderText::nextOffset):
434 (WebCore::RenderText::inlineBox):
435 * rendering/RenderText.h:
436 (WebCore::RenderText::isTextFragment):
437 (WebCore::RenderText::data):
438 (WebCore::RenderText::string):
439 (WebCore::RenderText::paint):
440 (WebCore::RenderText::layout):
441 (WebCore::RenderText::nodeAtPoint):
442 (WebCore::RenderText::length):
443 (WebCore::RenderText::text):
444 (WebCore::RenderText::stringLength):
445 * rendering/RenderTextControl.cpp:
446 (WebCore::RenderTextControl::setStyle):
447 (WebCore::disabledTextColor):
448 (WebCore::RenderTextControl::createInnerBlockStyle):
449 (WebCore::RenderTextControl::createInnerTextStyle):
450 (WebCore::RenderTextControl::createResultsButtonStyle):
451 (WebCore::RenderTextControl::createCancelButtonStyle):
452 (WebCore::RenderTextControl::showPlaceholderIfNeeded):
453 (WebCore::RenderTextControl::hidePlaceholderIfNeeded):
454 (WebCore::RenderTextControl::createSubtreeIfNeeded):
455 (WebCore::RenderTextControl::updateFromElement):
456 (WebCore::RenderTextControl::selectionStart):
457 (WebCore::RenderTextControl::setSelectionRange):
458 (WebCore::RenderTextControl::visiblePositionForIndex):
459 (WebCore::RenderTextControl::subtreeHasChanged):
460 (WebCore::RenderTextControl::textWithHardLineBreaks):
461 (WebCore::RenderTextControl::calcHeight):
462 (WebCore::RenderTextControl::nodeAtPoint):
463 (WebCore::RenderTextControl::layout):
464 (WebCore::RenderTextControl::calcMinMaxWidth):
465 (WebCore::RenderTextControl::addSearchResult):
466 (WebCore::RenderTextControl::showPopup):
467 (WebCore::RenderTextControl::itemText):
468 (WebCore::RenderTextControl::itemIsEnabled):
469 (WebCore::RenderTextControl::listSize):
470 (WebCore::RenderTextControl::scroll):
471 * rendering/RenderTextControl.h:
472 (WebCore::RenderTextControl::renderName):
473 (WebCore::RenderTextControl::removeLeftoverAnonymousBoxes):
474 * rendering/RenderTextFragment.cpp:
475 (WebCore::RenderTextFragment::RenderTextFragment):
476 (WebCore::RenderTextFragment::originalString):
477 * rendering/RenderTextFragment.h:
478 (WebCore::RenderTextFragment::isTextFragment):
479 * rendering/RenderTheme.cpp:
480 (WebCore::RenderTheme::adjustStyle):
481 (WebCore::RenderTheme::isControlStyled):
482 (WebCore::RenderTheme::stateChanged):
483 (WebCore::RenderTheme::adjustCheckboxStyle):
484 (WebCore::RenderTheme::adjustRadioStyle):
485 * rendering/RenderTheme.h:
487 * rendering/RenderThemeMac.h:
488 * rendering/RenderThemeMac.mm:
489 (WebCore::RenderThemeMac::RenderThemeMac):
490 (WebCore::RenderThemeMac::platformActiveSelectionBackgroundColor):
491 (WebCore::RenderThemeMac::platformInactiveSelectionBackgroundColor):
492 (WebCore::RenderThemeMac::activeListBoxSelectionBackgroundColor):
493 (WebCore::RenderThemeMac::systemFont):
494 (WebCore::RenderThemeMac::isControlStyled):
495 (WebCore::RenderThemeMac::adjustRepaintRect):
496 (WebCore::RenderThemeMac::updateCheckedState):
497 (WebCore::RenderThemeMac::controlSupportsTints):
498 (WebCore::RenderThemeMac::setFontFromControlSize):
499 (WebCore::RenderThemeMac::paintCheckbox):
500 (WebCore::RenderThemeMac::checkboxMargins):
501 (WebCore::RenderThemeMac::setCheckboxCellState):
502 (WebCore::RenderThemeMac::setCheckboxSize):
503 (WebCore::RenderThemeMac::paintRadio):
504 (WebCore::RenderThemeMac::radioMargins):
505 (WebCore::RenderThemeMac::setRadioCellState):
506 (WebCore::RenderThemeMac::setRadioSize):
507 (WebCore::RenderThemeMac::adjustButtonStyle):
508 (WebCore::RenderThemeMac::buttonMargins):
509 (WebCore::RenderThemeMac::setButtonSize):
510 (WebCore::RenderThemeMac::setButtonCellState):
511 (WebCore::RenderThemeMac::adjustTextFieldStyle):
512 (WebCore::RenderThemeMac::adjustTextAreaStyle):
513 (WebCore::RenderThemeMac::popupButtonMargins):
514 (WebCore::RenderThemeMac::popupButtonPadding):
515 (WebCore::TopGradientInterpolate):
516 (WebCore::BottomGradientInterpolate):
517 (WebCore::MainGradientInterpolate):
518 (WebCore::TrackGradientInterpolate):
519 (WebCore::RenderThemeMac::paintMenuListButtonGradients):
520 (WebCore::RenderThemeMac::paintMenuListButton):
521 (WebCore::RenderThemeMac::adjustMenuListStyle):
522 (WebCore::RenderThemeMac::adjustMenuListButtonStyle):
523 (WebCore::RenderThemeMac::paintSliderTrack):
524 (WebCore::RenderThemeMac::paintSliderThumb):
525 (WebCore::RenderThemeMac::paintSearchField):
526 (WebCore::RenderThemeMac::setSearchCellState):
527 (WebCore::RenderThemeMac::adjustSearchFieldStyle):
528 (WebCore::RenderThemeMac::paintSearchFieldCancelButton):
529 (WebCore::RenderThemeMac::paintSearchFieldResultsDecoration):
530 * rendering/RenderTreeAsText.cpp:
531 (WebCore::operator<<):
532 (WebCore::writeIndent):
533 (WebCore::printBorderStyle):
534 (WebCore::getTagName):
535 (WebCore::isEmptyOrUnstyledAppleStyleSpan):
536 (WebCore::writeTextRun):
538 (WebCore::writeLayers):
539 (WebCore::nodePosition):
540 (WebCore::writeSelection):
541 * rendering/RenderTreeAsText.h:
542 * rendering/RenderView.cpp:
543 (WebCore::RenderView::RenderView):
544 (WebCore::RenderView::calcMinMaxWidth):
545 (WebCore::RenderView::layout):
546 (WebCore::RenderView::absolutePosition):
547 (WebCore::RenderView::paint):
548 (WebCore::RenderView::repaintViewRectangle):
549 (WebCore::rendererAfterPosition):
550 (WebCore::RenderView::selectionRect):
551 (WebCore::RenderView::setSelection):
552 (WebCore::RenderView::selectionStartEnd):
553 (WebCore::RenderView::updateWidgetPositions):
554 (WebCore::RenderView::addWidget):
555 (WebCore::RenderView::removeWidget):
556 (WebCore::RenderView::viewRect):
557 (WebCore::RenderView::docHeight):
558 (WebCore::RenderView::docWidth):
559 (WebCore::RenderView::setBestTruncatedAt):
560 * rendering/RenderView.h:
561 (WebCore::RenderView::renderName):
562 (WebCore::RenderView::selectionStart):
563 (WebCore::RenderView::selectionEnd):
564 * rendering/RenderWidget.cpp:
565 (WebCore::RenderWidget::destroy):
566 (WebCore::RenderWidget::resizeWidget):
567 (WebCore::RenderWidget::setStyle):
568 (WebCore::RenderWidget::paint):
569 (WebCore::RenderWidget::updateWidgetPosition):
570 (WebCore::RenderWidget::setSelectionState):
571 * rendering/RootInlineBox.cpp:
572 (WebCore::RootInlineBox::placeEllipsis):
573 (WebCore::RootInlineBox::fillLineSelectionGap):
574 (WebCore::RootInlineBox::selectionState):
575 (WebCore::RootInlineBox::firstSelectedBox):
576 (WebCore::RootInlineBox::lastSelectedBox):
577 (WebCore::RootInlineBox::selectionTop):
578 (WebCore::RootInlineBox::closestLeafChildForXPos):
579 * rendering/RootInlineBox.h:
580 (WebCore::RootInlineBox::isRootInlineBox):
581 (WebCore::RootInlineBox::setVerticalOverflowPositions):
582 (WebCore::RootInlineBox::setHorizontalOverflowPositions):
583 (WebCore::RootInlineBox::setVerticalSelectionPositions):
584 (WebCore::RootInlineBox::lineBreakObj):
585 (WebCore::RootInlineBox::lineBreakPos):
586 (WebCore::RootInlineBox::setLineBreakPos):
587 (WebCore::RootInlineBox::blockHeight):
588 (WebCore::RootInlineBox::setBlockHeight):
589 (WebCore::RootInlineBox::endsWithBreak):
590 (WebCore::RootInlineBox::setEndsWithBreak):
591 * rendering/SVGInlineFlowBox.cpp:
592 (WebCore::SVGInlineFlowBox::paint):
593 (WebCore::paintSVGInlineFlow):
594 (WebCore::translateBox):
595 (WebCore::placePositionedBoxesHorizontally):
596 (WebCore::placeBoxesVerticallyWithAbsBaseline):
597 (WebCore::placeSVGFlowVertically):
598 * rendering/SVGInlineFlowBox.h:
599 * rendering/SVGRenderTreeAsText.cpp:
600 (WebCore::TextStreamSeparator::TextStreamSeparator):
601 (WebCore::operator<<):
602 (WebCore::hasFractions):
603 (WebCore::writeIndent):
604 (WebCore::writeStyle):
605 (WebCore::getTagName):
607 (WebCore::writeRenderResources):
608 * rendering/SVGRenderTreeAsText.h:
609 (WebCore::operator<<):
610 * rendering/SVGRootInlineBox.cpp:
611 (WebCore::SVGRootInlineBox::paint):
612 (WebCore::SVGRootInlineBox::placeBoxesHorizontally):
613 * rendering/SVGRootInlineBox.h:
614 * rendering/TableLayout.h:
616 2006-12-16 Adam Roben <aroben@apple.com>
620 * platform/ContextMenuItem.h: Fixed const declarations.
621 * platform/mac/ContextMenuItemMac.mm: Dito.
622 (WebCore::ContextMenuItem::type):
623 (WebCore::ContextMenuItem::setTitle):
624 (WebCore::ContextMenuItem::setChecked):
625 (WebCore::ContextMenuItem::setEnabled):
627 2006-12-16 Adele Peterson <adele@apple.com>
631 Fix for http://bugs.webkit.org/show_bug.cgi?id=11189
632 <rdar://problem/4770249> REGRESSION (NativeListBox): When a list box has focus, pressing command- A (select all) doesn't selected all items in list
634 Test: fast/forms/listbox-select-all.html
636 * dom/Node.h: We should try to find a more appropriate place to put these methods.
637 (WebCore::Node::canSelectAll): Added.
638 (WebCore::Node::selectAll): Added.
639 * editing/SelectionController.cpp: (WebCore::SelectionController::selectAll): Before selecting editable content, give the focused node
640 a chance to select its content.
641 * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::selectAll): Selects all items in a multi-select list box. Single-select
642 list boxes will just do nothing, but we still want the select to handle this case when it has focus, rather than selecting other content.
643 * html/HTMLSelectElement.h: (WebCore::HTMLSelectElement::canSelectAll): Returns true for list boxes.
645 2006-12-16 Zack Rusin <zack@kde.org>
647 Add a stub for SearchPopupMenu for Qt code.
649 * platform/qt/SearchPopupMenuQt.cpp: Added.
650 (WebCore::SearchPopupMenu::SearchPopupMenu):
651 (WebCore::SearchPopupMenu::saveRecentSearches):
652 (WebCore::SearchPopupMenu::loadRecentSearches):
654 2006-12-16 Zack Rusin <zack@kde.org>
656 Make it compile after last nights changes.
659 * loader/qt/DocumentLoaderQt.cpp:
660 (WebCore::DocumentLoader::stopLoading):
661 (WebCore::DocumentLoader::prepareForLoadStart):
662 * platform/qt/ContextMenuItemQt.cpp:
663 (WebCore::ContextMenuItem::ContextMenuItem):
664 (WebCore::ContextMenuItem::releasePlatformDescription):
665 (WebCore::ContextMenuItem::type):
666 (WebCore::ContextMenuItem::setType):
667 (WebCore::ContextMenuItem::action):
668 (WebCore::ContextMenuItem::setAction):
669 (WebCore::ContextMenuItem::setTitle):
670 (WebCore::ContextMenuItem::platformSubMenu):
671 (WebCore::ContextMenuItem::setSubMenu):
672 (WebCore::ContextMenuItem::setChecked):
673 (WebCore::ContextMenuItem::setEnabled):
674 * platform/qt/ContextMenuQt.cpp:
675 (WebCore::ContextMenu::appendItem):
676 (WebCore::ContextMenu::insertItem):
677 * platform/qt/TemporaryLinkStubs.cpp:
679 2006-12-16 Adele Peterson <adele@apple.com>
683 * editing/ReplaceSelectionCommand.cpp:
684 (WebCore::ReplacementFragment::ReplacementFragment):
686 2006-12-16 Adele Peterson <adele@apple.com>
688 Missed one instance of isNonWidgetTextField.
690 * editing/DeleteSelectionCommand.cpp:
691 (WebCore::DeleteSelectionCommand::doApply):
693 2006-12-16 Hunter L. Williams <hlwebkit@gmail.com>
697 Fix mouse wheel scrolling in <textarea> controls.
699 * rendering/RenderTextControl.cpp:
700 * rendering/RenderTextControl.h:
701 Override |scroll| on RenderTextControl to forward the call to the RenderObject of the
702 inner m_innerText, which has a layer that can be scrolled.
704 2006-12-16 Adele Peterson <adele@apple.com>
708 Removed RenderLineEdit, TextField, WebCoreTextField classes, and use of isNonWidgetTextField,
710 * WebCore.xcodeproj/project.pbxproj:
711 * html/HTMLInputElement.cpp:
712 (WebCore::HTMLInputElement::isKeyboardFocusable):
713 (WebCore::HTMLInputElement::isMouseFocusable):
714 (WebCore::HTMLInputElement::focus):
715 (WebCore::HTMLInputElement::updateFocusAppearance):
716 (WebCore::HTMLInputElement::aboutToUnload):
717 (WebCore::HTMLInputElement::dispatchFocusEvent):
718 (WebCore::HTMLInputElement::dispatchBlurEvent):
719 (WebCore::HTMLInputElement::setValue):
720 (WebCore::HTMLInputElement::defaultEventHandler):
721 * html/HTMLInputElement.h:
722 (WebCore::HTMLInputElement::isTextField):
723 * html/HTMLTextFieldInnerElement.cpp:
724 (WebCore::HTMLTextFieldInnerTextElement::defaultEventHandler):
725 * platform/TextField.h: Removed.
726 * platform/mac/TextFieldMac.mm: Removed.
727 * platform/mac/WebCoreTextField.h: Removed.
728 * platform/mac/WebCoreTextField.mm: Removed.
729 * rendering/RenderLineEdit.cpp: Removed.
730 * rendering/RenderLineEdit.h: Removed.
732 2006-12-16 Adele Peterson <adele@apple.com>
734 Two more files I forgot to svn add for search fields.
736 * platform/SearchPopupMenu.h: Added.
737 (WebCore::SearchPopupMenu::create):
738 * platform/mac/SearchPopupMenuMac.mm: Added.
739 (WebCore::SearchPopupMenu::SearchPopupMenu):
740 (WebCore::autosaveKey):
741 (WebCore::SearchPopupMenu::saveRecentSearches):
742 (WebCore::SearchPopupMenu::loadRecentSearches):
744 2006-12-16 Adele Peterson <adele@apple.com>
748 * platform/PopupMenuClient.h: Added. Broken out of PopupMenu class.
749 (WebCore::PopupMenuClient::~PopupMenuClient):
751 2006-12-16 Adele Peterson <adele@apple.com>
755 WebCore part of fix for:
756 <rdar://problem/4463829> Switch to use new search field implementation for <input type="search">
758 * WebCore.xcodeproj/project.pbxproj: Added SearchPopupMenu.h, SearchPopupMenuMac.mm, and PopupMenuClient.h.
760 Added pseudo classes and corresponding values for -webkit appearance for the cancel button and for the three types of "decoration" that
761 correspond to the different functions of the magnifier glass in the search field. One for the button that will show and hide the
762 recent searches menu. One for decoration when the results attribute is set, but no results are saved. And one for decoration
763 when no results attribute is set. We added these different pseudo elements so that RenderTextControl can decide which pseudo class
764 is appropriate, and each theme can decide for itself which kind of image is appropriate for each function.
766 * css/CSSSelector.cpp: (WebCore::CSSSelector::extractPseudoType):
767 * css/CSSSelector.h: (WebCore::CSSSelector::): Added to PseudoType enum.
768 * css/CSSValueKeywords.in: Added searchfield-decoration, searchfield-results-decoration, searchfield-results-button, searchfield-cancel-button values.
769 * css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::checkOneSelector): Added cases for -webkit-search-cancel-button,
770 -webkit-search-decoration, -webkit-search-results-decoration, -webkit-search-results-button
771 * rendering/RenderStyle.cpp: Addes new pseudoBits for matching pseudoIds.
773 (WebCore::pseudoBit):
774 * rendering/RenderStyle.h: Added new appearance values and pseudoIds.
776 (WebCore::RenderStyle::):
777 * css/html4.css: Added style for input[type=search], and the new pseudo elements.
779 The structure of the shadow DOM for new search field adds an intermediate block that contains 3 inline-blocks for the magnifier, text element, and cancel button.
780 Since the tree has become deeper, some editing and event code that used to check for a shadowParent, really needs to check the shadowAncestorNode.
782 * editing/Editor.cpp: (WebCore::Editor::dispatchCPPEvent): Check shadowAncestorNode instead of shadowParentNode.
783 * editing/Selection.cpp: (WebCore::Selection::adjustForEditableContent): ditto.
784 * editing/htmlediting.cpp:
785 (WebCore::firstEditablePositionAfterPositionInRoot): ditto.
786 (WebCore::lastEditablePositionBeforePositionInRoot): ditto.
787 * editing/ReplaceSelectionCommand.cpp:
788 (WebCore::ReplacementFragment::ReplacementFragment): ditto.
789 (WebCore::ReplaceSelectionCommand::shouldMerge): Nil check enclosingBlock call. I ran into this while testing search fields in mixed editability.
790 (WebCore::ReplaceSelectionCommand::doApply): ditto.
792 * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::submit): Remove use of RenderLineEdit.
793 * html/HTMLInputElement.cpp:
794 (WebCore::HTMLInputElement::selectionStart): ditto.
795 (WebCore::HTMLInputElement::selectionEnd): ditto.
796 (WebCore::HTMLInputElement::setSelectionStart): ditto.
797 (WebCore::HTMLInputElement::setSelectionEnd): ditto.
798 (WebCore::HTMLInputElement::select): ditto.
799 (WebCore::HTMLInputElement::setSelectionRange): ditto.
800 (WebCore::HTMLInputElement::parseMappedAttribute): ditto.
801 (WebCore::HTMLInputElement::createRenderer): ditto.
802 (WebCore::HTMLInputElement::defaultEventHandler): ditto.
803 (WebCore::HTMLInputElement::addSearchResult): Added. Calls addSearchResult on the renderer.
804 * html/HTMLInputElement.h:
805 (WebCore::HTMLInputElement::isNonWidgetTextField): Added case for search field.
806 (WebCore::HTMLInputElement::isSearchField): Added.
808 * platform/PopupMenu.h: Broke PopupMenuClient out into a separate file.
809 * platform/PopupMenuClient.h: Added.
810 (WebCore::PopupMenuClient::~PopupMenuClient):
811 * platform/graphics/Icon.h:
813 * platform/SearchPopupMenu.h: Added. Saves and loads recent search vector.
814 (WebCore::SearchPopupMenu::create):
815 * platform/mac/SearchPopupMenuMac.mm: Added.
816 (WebCore::SearchPopupMenu::SearchPopupMenu):
817 (WebCore::autosaveKey):
818 (WebCore::SearchPopupMenu::saveRecentSearches):
819 (WebCore::SearchPopupMenu::loadRecentSearches):
821 * html/HTMLTextFieldInnerElement.h: Reorganized this class.
822 Added subclasses HTMLTextFieldInnerTextElement, HTMLSearchFieldResultsButtonElement, HTMLSearchFieldCancelButtonElement
823 (WebCore::HTMLTextFieldInnerElement::isMouseFocusable): Added. Returns false so setFocusNodeIfNeeded
824 will try to focus the input element instead of nodes in the shadow tree.
825 (WebCore::HTMLTextFieldInnerElement::isShadowNode): Now returns whether or not a shadowParent has been specified.
826 * html/HTMLTextFieldInnerElement.cpp:
827 (WebCore::HTMLTextFieldInnerTextElement::HTMLTextFieldInnerTextElement):
828 (WebCore::HTMLTextFieldInnerTextElement::defaultEventHandler): Moved this from the old HTMLTextFieldInnerElement class.
829 (WebCore::HTMLSearchFieldResultsButtonElement::HTMLSearchFieldResultsButtonElement):
830 (WebCore::HTMLSearchFieldResultsButtonElement::defaultEventHandler): Shows and hides recent searches menu.
831 (WebCore::HTMLSearchFieldCancelButtonElement::HTMLSearchFieldCancelButtonElement):
832 (WebCore::HTMLSearchFieldCancelButtonElement::defaultEventHandler): On mouse up, clears the value from the text field.
834 * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::listSize): Changed return type to unsigned.
835 * rendering/RenderMenuList.h: (WebCore::RenderMenuList::valueShouldChangeOnHotTrack): Added.
837 * WebCore.exp: Export _wkDrawTextFieldCellFocusRing.
838 * platform/mac/WebCoreSystemInterface.h: Added wkDrawTextFieldCellFocusRing
839 * platform/mac/WebCoreSystemInterface.mm: ditto.
841 * rendering/RenderTextControl.h:
842 (WebCore::RenderTextControl::popupIsVisible): Added so HTMLSearchFieldResultsButtonElement knows whether or not the menu is already up.
843 (WebCore::RenderTextControl::shouldPopOver): Added as a PopupClient method so the results menu shows up under the control instead of over.
844 (WebCore::RenderTextControl::valueShouldChangeOnHotTrack):
845 * rendering/RenderTextControl.cpp:
846 (WebCore::RenderTextControl::RenderTextControl): Initialize m_placeholderIsVisible, m_searchPopup, and m_searchPopupIsVisible.
847 (WebCore::RenderTextControl::~RenderTextControl): Detach the node at the top of the shadow tree (m_innerBlock for search fields, and m_innerText for other text controls).
848 (WebCore::RenderTextControl::setStyle): Sets style on new elements.
849 (WebCore::disabledTextColor): Added so this can be used in setPlaceholder.
850 (WebCore::RenderTextControl::createInnerBlockStyle): Added.
851 (WebCore::RenderTextControl::createInnerTextStyle): Added.
852 (WebCore::RenderTextControl::createResultsButtonStyle): Added.
853 (WebCore::RenderTextControl::createCancelButtonStyle): Added.
854 (WebCore::RenderTextControl::showPlaceholderIfNeeded): Added. Shows the placeholder if there's no value and the field doesn't have focus.
855 (WebCore::RenderTextControl::hidePlaceholderIfNeeded): Added. Clears the placeholder if there's a value or the field has focus.
856 (WebCore::RenderTextControl::createSubtreeIfNeeded): Added. Creates all of the shadow tree elements.
857 (WebCore::RenderTextControl::updateFromElement): Calls showPlaceholderIfNeeded.
858 (WebCore::RenderTextControl::visiblePositionForIndex): Renaming (m_div to m_innerText).
859 (WebCore::RenderTextControl::indexForVisiblePosition): ditto.
860 (WebCore::RenderTextControl::updateCancelButtonVisibility): Shows and hides cancel button based on the value of the control.
861 (WebCore::RenderTextControl::subtreeHasChanged): Fires onSearch if the incremental attribute is set.
862 (WebCore::RenderTextControl::text): Renaming.
863 (WebCore::RenderTextControl::textWithHardLineBreaks): ditto.
864 (WebCore::RenderTextControl::calcHeight): Take the size of the results button and cancel button into account when calculating height.
865 (WebCore::RenderTextControl::nodeAtPoint): Act as if we've hit the shadow tree elements based on the x coordinate of the mouse event.
866 (WebCore::RenderTextControl::layout): Set the height and width of the text block taking the other shadow tree elements into account.
867 (WebCore::RenderTextControl::calcMinMaxWidth): Take new shadow tree elements into account when calculating width.
868 (WebCore::RenderTextControl::forwardEvent): Forward events to appropriate shadow nodes.
869 (WebCore::RenderTextControl::scrollWidth): Renaming.
870 (WebCore::RenderTextControl::scrollHeight): ditto.
871 (WebCore::RenderTextControl::scrollLeft): ditto.
872 (WebCore::RenderTextControl::scrollTop): ditto.
873 (WebCore::RenderTextControl::setScrollLeft): ditto.
874 (WebCore::RenderTextControl::setScrollTop): ditto.
875 (WebCore::RenderTextControl::autosaveName): ditto.
876 (WebCore::RenderTextControl::addSearchResult): Added. Saves value to search result list.
877 (WebCore::RenderTextControl::onSearch): Added. Dispatches search event.
878 (WebCore::RenderTextControl::showPopup): Added. Loads searches, and displays menu.
879 (WebCore::RenderTextControl::hidePopup): Added PopupClient method.
880 (WebCore::RenderTextControl::valueChanged): Added PopupClient method. Interprets the selected menu item index, and either sets the value and
881 fires onSearch, or clears all recent searches for this autosave name.
882 (WebCore::RenderTextControl::itemText): Added PopupClient method.
883 (WebCore::RenderTextControl::itemIsEnabled): Added PopupClient method.
884 (WebCore::RenderTextControl::itemStyle): ditto.
885 (WebCore::RenderTextControl::clientStyle): ditto.
886 (WebCore::RenderTextControl::clientDocument): ditto.
887 (WebCore::RenderTextControl::clientPaddingLeft): ditto.
888 (WebCore::RenderTextControl::clientPaddingRight): ditto.
889 (WebCore::RenderTextControl::listSize): ditto.
890 (WebCore::RenderTextControl::selectedIndex): ditto.
891 (WebCore::RenderTextControl::itemIsSeparator): ditto.
892 (WebCore::RenderTextControl::itemIsLabel): ditto.
893 (WebCore::RenderTextControl::itemIsSelected): ditto.
894 (WebCore::RenderTextControl::setTextFromItem): ditto.
896 * rendering/RenderTheme.cpp: Added search field theme.
897 (WebCore::RenderTheme::adjustStyle):
898 (WebCore::RenderTheme::paint):
899 (WebCore::RenderTheme::paintBorderOnly):
900 (WebCore::RenderTheme::paintDecorations):
901 (WebCore::RenderTheme::isControlStyled): Returns false for search fields, until we've worked out the kinks.
902 (WebCore::RenderTheme::adjustSearchFieldStyle):
903 (WebCore::RenderTheme::adjustSearchFieldCancelButtonStyle):
904 (WebCore::RenderTheme::adjustSearchFieldDecorationStyle):
905 (WebCore::RenderTheme::adjustSearchFieldResultsDecorationStyle):
906 (WebCore::RenderTheme::adjustSearchFieldResultsButtonStyle):
907 * rendering/RenderTheme.h:
908 (WebCore::RenderTheme::paintSearchField):
909 (WebCore::RenderTheme::paintSearchFieldCancelButton):
910 (WebCore::RenderTheme::paintSearchFieldDecoration):
911 (WebCore::RenderTheme::paintSearchFieldResultsDecoration):
912 (WebCore::RenderTheme::paintSearchFieldResultsButton):
913 * rendering/RenderThemeMac.h:
914 * rendering/RenderThemeMac.mm:
915 (WebCore::RenderThemeMac::RenderThemeMac):
916 (WebCore::RenderThemeMac::sizeForSystemFont): Added. Compares style's font to systemFontSizeForControlSize to determine
917 what controlSize to use after a style's font has already been initially adjusted.
918 (WebCore::RenderThemeMac::controlSizeForSystemFont): Added. ditto.
919 (WebCore::RenderThemeMac::paintCheckbox):
920 (WebCore::RenderThemeMac::paintRadio):
921 (WebCore::RenderThemeMac::menuListSizes):
922 (WebCore::RenderThemeMac::minimumMenuListSize): Uses sizeForSystemFont instead of hardcoded adjusted font sizes.
923 (WebCore::RenderThemeMac::paintSearchField):
924 (WebCore::RenderThemeMac::setSearchCellState):
925 (WebCore::RenderThemeMac::adjustSearchFieldStyle):
926 (WebCore::RenderThemeMac::paintSearchFieldCancelButton):
927 (WebCore::RenderThemeMac::cancelButtonSizes):
928 (WebCore::RenderThemeMac::adjustSearchFieldCancelButtonStyle):
929 (WebCore::RenderThemeMac::resultsButtonSizes):
930 (WebCore::RenderThemeMac::adjustSearchFieldDecorationStyle):
931 (WebCore::RenderThemeMac::paintSearchFieldDecoration):
932 (WebCore::RenderThemeMac::adjustSearchFieldResultsDecorationStyle):
933 (WebCore::RenderThemeMac::paintSearchFieldResultsDecoration):
934 (WebCore::RenderThemeMac::adjustSearchFieldResultsButtonStyle):
935 (WebCore::RenderThemeMac::paintSearchFieldResultsButton):
937 2006-12-16 Beth Dakin <bdakin@apple.com>
939 Reviewed by Adam (and partially Geoff).
941 Primarily, this patch gives WebCore context menus the ability to
942 enable/disable and set state. It does a few other things along the
943 way, though. Some of the more noticeable things:
944 -Re-architects the ContextMenuItem class a bit so that the
945 ownership model is a bit less confusing. ContextMenuItem is
946 now *purely* a wrapper for the platformDescription. There
947 are no other member variables. If you ever need the
948 platformDescription outside of the MenuItem class, you have
949 to call releasePlatformDescription(), which transfers
950 ownership of the platformDescription to the caller.
951 -Moves fontForSelection() from FrameMac into Editor.cpp.
952 Turns out I don't need to use this function for my patch
953 after all, but it doesn't seem like a terrible idea to move
954 it anyway since we seem to be moving things from FrameMac
955 into Editor these days anyway.
958 * editing/Editor.cpp:
959 (WebCore::Editor::fontForSelection): Moved in from FrameMac.
960 * editing/Editor.h: Same, and name change.
961 * editing/mac/EditorMac.mm: Name change.
962 * page/ContextMenuClient.h: contextMenuItemSelected() has to take a
963 pointer to the parent context menu since ContextMenuItem no longer
965 * page/ContextMenuController.cpp: Same.
966 (WebCore::ContextMenuController::contextMenuItemSelected): Same.
967 * page/mac/FrameMac.h: Move fontForSelection to Editor
968 * page/mac/FrameMac.mm: Same.
969 * page/mac/WebCoreFrameBridge.mm:
970 (-[WebCoreFrameBridge fontForSelection:]): Account for above.
971 * platform/ContextMenu.cpp:
972 (WebCore::separatorItem): Can't be const because appendItem now
973 expects a non-const menu item.
974 (WebCore::createAndAppendFontSubMenu): Change name for clarity.
975 (WebCore::createAndAppendSpellingAndGrammarSubMenu): Same.
976 (WebCore::createAndAppendSpellingSubMenu): Same.
977 (WebCore::createAndAppendSpeechSubMenu): Same.
978 (WebCore::createAndAppendWritingDirectionSubMenu): Same.
979 (WebCore::ContextMenu::populate): Account for above.
980 (WebCore::triStateToBool): New helper.
981 (WebCore::ContextMenu::checkOrEnableIfNeeded): Transfers
982 logic from WebHTMLView into WebCore to determine if menu items are
983 enabled or disabled and to determine if they require a check.
984 * platform/ContextMenu.h:
985 * platform/ContextMenuItem.h: Re-factored stuff so that our only
986 member variable is the platform description.
987 (WebCore::): Get rid of if-def.
988 * platform/cf/RetainPtr.h: Add releaseRef like in PassRefPtr.
989 (WebCore::RetainPtr::releaseRef):
990 * platform/mac/ContextMenuItemMac.mm: Same as .h
991 (WebCore::ContextMenuItem::ContextMenuItem): Same.
992 (WebCore::ContextMenuItem::releasePlatformDescription): Same.
993 (WebCore::ContextMenuItem::type): Same.
994 (WebCore::ContextMenuItem::platformSubMenu): Same.
995 (WebCore::ContextMenuItem::setType): Same.
996 (WebCore::ContextMenuItem::setTitle): Same.
997 (WebCore::ContextMenuItem::setSubMenu): Same.
998 (WebCore::ContextMenuItem::setChecked): Same.
999 (WebCore::ContextMenuItem::setEnabled): Same.
1000 * platform/mac/ContextMenuMac.mm:
1001 (-[WebCoreMenuTarget forwardContextMenuAction:]): Don't set the
1003 (WebCore::setMenuItemTarget):
1004 (WebCore::ContextMenu::appendItem): Call releasePlatformDescription
1005 (WebCore::ContextMenu::insertItem): Same.
1007 2006-12-15 MorganL <morganl.webkit@yahoo.com>
1011 Allow images to load into frames again. Tidy up code a bit and
1012 add some much needed documentation.
1014 * platform/MimeTypeRegistry.cpp:
1015 (WebCore::initialiseSupportedImageMIMETypes):
1016 (WebCore::initialiseSupportedNonImageMimeTypes):
1017 * platform/MimeTypeRegistry.h:
1019 2006-12-15 Anders Carlsson <acarlsson@apple.com>
1023 * loader/DocumentLoader.cpp:
1024 (WebCore::DocumentLoader::response):
1025 (WebCore::DocumentLoader::setResponse):
1026 (WebCore::DocumentLoader::isStopping):
1027 (WebCore::DocumentLoader::mainDocumentError):
1028 * loader/DocumentLoader.h:
1030 2006-12-15 Anders Carlsson <acarlsson@apple.com>
1034 More loader cleanup.
1036 * loader/DocumentLoader.h:
1037 (WebCore::DocumentLoader::isStopping):
1038 (WebCore::DocumentLoader::response):
1039 (WebCore::DocumentLoader::mainDocumentError):
1040 (WebCore::DocumentLoader::setResponse):
1041 * loader/FrameLoader.h:
1042 * loader/FrameLoaderClient.h:
1043 * loader/mac/DocumentLoaderMac.mm:
1044 (WebCore::DocumentLoader::DocumentLoader):
1045 (WebCore::DocumentLoader::stopLoading):
1046 (WebCore::DocumentLoader::receivedData):
1047 (WebCore::DocumentLoader::setupForReplaceByMIMEType):
1048 (WebCore::DocumentLoader::prepareForLoadStart):
1049 * loader/mac/FrameLoaderMac.mm:
1050 (WebCore::FrameLoader::commitProvisionalLoad):
1051 (WebCore::FrameLoader::setResponse):
1052 * loader/mac/ImageDocumentMac.mm:
1053 (WebCore::finishImageLoad):
1055 2006-12-15 Anders Carlsson <acarlsson@apple.com>
1057 * loader/DocumentLoader.h:
1058 Whoops, didn't mean to commit this.
1060 2006-12-15 Anders Carlsson <acarlsson@apple.com>
1062 Reviewed by Darin and Brady (in no particular order).
1064 More loader cleanup.
1066 * loader/FrameLoader.h:
1067 * loader/mac/FrameLoaderMac.mm:
1068 (WebCore::FrameLoader::cancelledError):
1069 (WebCore::FrameLoader::fileDoesNotExistError):
1070 (WebCore::FrameLoader::cannotShowMIMEType):
1071 (WebCore::FrameLoader::interruptionForPolicyChangeError):
1072 * loader/mac/MainResourceLoaderMac.mm:
1073 * loader/mac/NetscapePlugInStreamLoaderMac.mm:
1075 2006-12-16 Alexey Proskuryakov <ap@webkit.org>
1077 Try to fix Windows buid.
1079 * WebCore.vcproj/WebCore/WebCore.vcproj: Added EventTarget.{h,cpp}
1081 2006-12-15 Alexey Proskuryakov <ap@webkit.org>
1085 http://bugs.webkit.org/show_bug.cgi?id=11610
1086 XMLHttpRequest.onreadystatechange doesn't provide access to the request object
1088 Created a separate EventTarget class, now that EventTargetNode isn't the only kind.
1090 Test: http/tests/xmlhttprequest/event-target.html
1092 * WebCore.xcodeproj/project.pbxproj: Added EventTarget.{h,cpp}
1094 * bindings/js/kjs_dom.cpp:
1095 (KJS::toJS): Added an EventTarget variant.
1096 * bindings/js/kjs_dom.h: Added toJS() for EventTarget; some minor style fixes.
1098 * bindings/objc/DOM.mm:
1099 (+[DOMNode _eventTargetWith:WebCore::]):
1100 * bindings/scripts/CodeGeneratorObjC.pm:
1101 Added an EventTarget->DOMEventTarget converter in DOMNode (WebCoreInternal).
1102 It only works for nodes, since we don't have an ObjC binding for XMLHttpRequest.
1103 Corrected spelling of internalHeaderContent.
1106 (WebCore::Event::setTarget):
1108 (WebCore::Event::target):
1109 (WebCore::Event::currentTarget):
1110 (WebCore::Event::setCurrentTarget):
1111 These methods now work with EventTargets instead of Nodes.
1113 * dom/EventTarget.cpp: Added.
1114 (WebCore::EventTarget::~EventTarget):
1115 (WebCore::EventTarget::toNode):
1116 (WebCore::EventTarget::toXMLHttpRequest):
1117 * dom/EventTarget.h: Added.
1118 (WebCore::EventTarget::ref):
1119 (WebCore::EventTarget::deref):
1120 Originally, my intention was to share much of the implementation between
1121 EventTargetNode and XHR, but now I don't see anything substantial worth sharing.
1123 * dom/EventTargetNode.cpp:
1124 (WebCore::EventTargetNode::dispatchGenericEvent): Cast Node to EventTargetNode.
1126 * dom/EventTargetNode.h: Made EventTarget methods virtual.
1127 (WebCore::EventTargetNode::toNode): Added poor man's RTTI to upcast from EventTarget.
1128 (WebCore::EventTargetNode::refEventTarget):
1129 (WebCore::EventTargetNode::derefEventTarget):
1131 * dom/MouseEvent.cpp:
1132 (WebCore::MouseEvent::toElement):
1133 (WebCore::MouseEvent::fromElement):
1134 * dom/MouseRelatedEvent.cpp:
1135 (WebCore::MouseRelatedEvent::receivedTarget):
1136 * html/HTMLAnchorElement.cpp:
1137 (WebCore::HTMLAnchorElement::defaultEventHandler):
1138 * html/HTMLLabelElement.cpp:
1139 (WebCore::HTMLLabelElement::defaultEventHandler):
1140 * page/ContextMenuController.cpp:
1141 (WebCore::ContextMenuController::handleContextMenuEvent):
1142 * rendering/RenderSlider.cpp:
1143 (WebCore::RenderSlider::mouseEventIsInThumb):
1144 Cast from EventTarget to Node as appropriate.
1146 * xml/xmlhttprequest.cpp:
1147 (WebCore::XMLHttpRequest::dispatchEvent):
1148 (WebCore::XMLHttpRequest::callReadyStateChangeListener):
1149 Set target and currentTarget before dispatching.
1151 * xml/xmlhttprequest.h: Made EventTarget methods virtual, added a bool tempEvent parameter
1152 to match EventTargetNode.
1153 (WebCore::XMLHttpRequest::toXMLHttpRequest): Added poor man's RTTI to upcast from EventTarget.
1154 (WebCore::XMLHttpRequest::refEventTarget):
1155 (WebCore::XMLHttpRequest::derefEventTarget):
1157 2006-12-15 Anders Carlsson <acarlsson@apple.com>
1161 More loader cleanup, use KURL instead of NSURL in a couple of places.
1163 * loader/DocumentLoader.h:
1164 * loader/FrameLoader.h:
1165 * loader/FrameLoaderClient.h:
1166 * loader/ResourceLoader.h:
1167 * loader/mac/DocumentLoaderMac.mm:
1168 (WebCore::DocumentLoader::DocumentLoader):
1169 (WebCore::DocumentLoader::prepareForLoadStart):
1170 * loader/mac/FrameLoaderMac.mm:
1171 (WebCore::FrameLoader::willUseArchive):
1172 * loader/mac/ResourceLoaderMac.mm:
1173 (WebCore::ResourceLoader::load):
1175 2006-12-15 Marvin Decker <marv.decker@gmail.com>
1177 Reviewed by Darin and Alexey.
1179 Fix the Windows build, move various Client implementations out of
1180 WebCore and into WebKit.
1182 * WebCore.vcproj/WebCore/WebCore.vcproj:
1183 * bridge/win/ChromeClientWin.h: Removed.
1184 * bridge/win/ContextMenuClientWin.h: Removed.
1185 * bridge/win/EditorClientWin.h: Removed.
1186 * bridge/win/FrameWin.cpp:
1187 (WebCore::FrameWin::FrameWin):
1188 * bridge/win/FrameWin.h:
1189 * loader/win/FrameLoaderClientWin.cpp: Removed.
1190 * loader/win/FrameLoaderClientWin.h: Removed.
1191 * platform/network/win/ResourceHandleWin.cpp:
1192 (WebCore::ResourceHandle::start):
1193 * platform/win/TemporaryLinkStubs.cpp:
1194 (WebCore::DocumentLoader::URL):
1195 (WebCore::FrameLoader::load):
1196 (WebCore::FrameLoader::createFrame):
1197 (WebCore::FrameLoader::loadResourceSynchronously):
1198 (WebCore::Pasteboard::writeSelection):
1199 (WebCore::Pasteboard::writeURL):
1200 (WebCore::Pasteboard::clear):
1201 (WebCore::Pasteboard::~Pasteboard):
1202 (WebCore::PolicyCheck::call):
1203 (WebCore::PopupMenu::PopupMenu):
1204 (WebCore::ResourceHandle::loadsBlocked):
1205 (WebCore::ResourceLoader::cancel):
1207 2006-12-15 Anders Carlsson <acarlsson@apple.com>
1211 http://bugs.webkit.org/show_bug.cgi?id=11842
1212 REGRESSION: Using Safari's snippet editor leaves applewebdata: URLs in history
1214 * loader/mac/DocumentLoaderMac.mm:
1215 (WebCore::DocumentLoader::URLForHistory):
1216 Don't return appleweburls without an unreachable url.
1218 2006-12-15 Anders Carlsson <acarlsson@apple.com>
1222 Replace more instances of NSError with ResourceError.
1224 Also remove a check for a selector that was added pre-Tiger.
1227 * loader/DocumentLoader.h:
1228 * loader/FrameLoader.h:
1229 * loader/ResourceLoader.h:
1230 * loader/mac/DocumentLoaderMac.mm:
1231 (WebCore::DocumentLoader::setMainDocumentError):
1232 (WebCore::DocumentLoader::mainDocumentError):
1233 (WebCore::DocumentLoader::clearErrors):
1234 (WebCore::DocumentLoader::mainReceivedError):
1235 * loader/mac/FrameLoaderMac.mm:
1236 (WebCore::FrameLoader::cancelMainResourceLoad):
1237 (WebCore::FrameLoader::opened):
1238 (WebCore::FrameLoader::mainReceivedError):
1239 (WebCore::FrameLoader::cancelledError):
1240 (WebCore::FrameLoader::fileDoesNotExistError):
1241 (WebCore::FrameLoader::handleUnimplementablePolicy):
1242 (WebCore::FrameLoader::setMainDocumentError):
1243 (WebCore::FrameLoader::mainReceivedCompleteError):
1244 (WebCore::FrameLoader::sendRemainingDelegateMessages):
1245 (WebCore::FrameLoader::requestFromDelegate):
1246 (WebCore::FrameLoader::loadedResourceFromMemoryCache):
1247 (WebCore::FrameLoader::loadResourceSynchronously):
1248 * loader/mac/ResourceLoaderMac.mm:
1249 (WebCore::ResourceLoader::willSendRequest):
1250 (WebCore::ResourceLoader::didCancel):
1251 (WebCore::ResourceLoader::cancel):
1252 (WebCore::ResourceLoader::cancelledError):
1253 * loader/mac/SubresourceLoaderMac.mm:
1254 (WebCore::SubresourceLoader::didCancel):
1256 2006-12-15 Rob Buis <buis@kde.org>
1260 http://bugs.webkit.org/show_bug.cgi?id=11824
1261 CSSStyleSheet.title property is always null
1263 Set title on the stylesheet just after creating it, for the HTML
1264 elements <link> and <style>.
1267 (WebCore::StyleSheet::setTitle):
1269 (WebCore::Element::title):
1271 * dom/StyleElement.cpp:
1272 (WebCore::StyleElement::childrenChanged):
1273 * dom/StyleElement.h:
1274 * html/HTMLElement.cpp:
1275 * html/HTMLElement.h:
1276 * html/HTMLLinkElement.cpp:
1277 (WebCore::HTMLLinkElement::parseMappedAttribute):
1278 (WebCore::HTMLLinkElement::setCSSStyleSheet):
1279 * html/HTMLStyleElement.cpp:
1280 (WebCore::HTMLStyleElement::parseMappedAttribute):
1281 * ksvg2/svg/SVGStyleElement.cpp:
1282 (WebCore::SVGStyleElement::setTitle):
1283 (WebCore::SVGStyleElement::parseMappedAttribute):
1284 * ksvg2/svg/SVGStyleElement.h:
1286 2006-12-15 Lars Knoll <lars@trolltech.com>
1292 * loader/SubresourceLoader.h:
1293 * platform/qt/PopupMenuQt.cpp:
1294 (WebCore::PopupMenu::PopupMenu):
1296 2006-12-14 Anders Carlsson <acarlsson@apple.com>
1300 Use char* pointer + length instead of NSData in a bunch of places.
1302 * loader/DocumentLoader.h:
1303 * loader/FrameLoader.h:
1304 * loader/FrameLoaderClient.h:
1305 * loader/MainResourceLoader.h:
1306 * loader/NetscapePlugInStreamLoader.h:
1307 * loader/ResourceLoader.h:
1308 (WebCore::ResourceLoader::willStopBufferingData):
1309 * loader/SubresourceLoader.h:
1310 * loader/mac/DocumentLoaderMac.mm:
1311 (WebCore::DocumentLoader::commitLoad):
1312 (WebCore::DocumentLoader::receivedData):
1313 (WebCore::DocumentLoader::setupForReplaceByMIMEType):
1314 * loader/mac/FrameLoaderMac.mm:
1315 (WebCore::FrameLoader::didReceiveData):
1316 (WebCore::FrameLoader::receivedData):
1317 (WebCore::FrameLoader::committedLoad):
1318 * loader/mac/MainResourceLoaderMac.mm:
1319 (WebCore::MainResourceLoader::addData):
1320 (WebCore::MainResourceLoader::didReceiveData):
1321 * loader/mac/NetscapePlugInStreamLoaderMac.mm:
1322 (WebCore::NetscapePlugInStreamLoader::didReceiveData):
1323 * loader/mac/ResourceLoaderMac.mm:
1324 (WebCore::ResourceLoader::addData):
1325 (WebCore::ResourceLoader::didReceiveData):
1326 (WebCore::ResourceLoader::willStopBufferingData):
1327 * loader/mac/SubresourceLoaderMac.mm:
1328 (WebCore::SubresourceLoader::didReceiveData):
1329 * platform/network/ResourceHandleClient.h:
1330 (WebCore::ResourceHandleClient::willStopBufferingData):
1331 * platform/network/mac/ResourceHandleMac.mm:
1332 (-[WebCoreResourceHandleAsDelegate connection:willStopBufferingData:]):
1334 2006-12-14 Adele Peterson <adele@apple.com>
1338 Added PopupMenuClient class so the PopupMenu class no longer needs to know
1339 about the RenderMenuList or the DOM.
1341 * platform/PopupMenu.h:
1342 (WebCore::PopupMenuClient::~PopupMenuClient):
1343 (WebCore::PopupMenu::create): Made this protected so PopupMenu can be subclassed.
1344 (WebCore::PopupMenu::disconnectClient): Renamed from disconnectMenuList.
1345 (WebCore::PopupMenu::client): Added.
1346 * platform/mac/PopupMenuMac.mm:
1347 (WebCore::PopupMenu::PopupMenu): Created using PopupMenuClient instead of RenderMenuList.
1348 (WebCore::PopupMenu::populate): Asks the client for info about the list items instead of looking at the DOM or the renderer.
1349 (WebCore::PopupMenu::show): ditto.
1350 (WebCore::PopupMenu::hide): ditto.
1351 * rendering/RenderMenuList.h: Now also inherits from PopupMenuClient.
1352 (WebCore::RenderMenuList::shouldPopOver): Added. Tells the popup whether the menu should pop over the client, or under.
1353 * rendering/RenderMenuList.cpp:
1354 (WebCore::RenderMenuList::~RenderMenuList): Calls disconnectClient().
1355 (WebCore::RenderMenuList::calcMinMaxWidth): Removed unnecessary (and harmful) call to updateFromElement. updateFromElmeent
1356 can add children, and you don't want to do that in the middle of calculating width.
1357 (WebCore::RenderMenuList::itemText): Added PopupClient method to provide information about the items in the menu list.
1358 (WebCore::RenderMenuList::itemIsEnabled): ditto.
1359 (WebCore::RenderMenuList::itemStyle): ditto.
1360 (WebCore::RenderMenuList::clientStyle): ditto.
1361 (WebCore::RenderMenuList::clientDocument): ditto.
1362 (WebCore::RenderMenuList::clientPaddingLeft): ditto.
1363 (WebCore::RenderMenuList::clientPaddingRight): ditto.
1364 (WebCore::RenderMenuList::listSize): ditto.
1365 (WebCore::RenderMenuList::selectedIndex): ditto.
1366 (WebCore::RenderMenuList::itemIsSeparator): ditto.
1367 (WebCore::RenderMenuList::itemIsLabel): ditto.
1368 (WebCore::RenderMenuList::itemIsSelected): ditto.
1369 (WebCore::RenderMenuList::setTextFromItem): ditto.
1371 2006-12-14 Geoffrey Garen <ggaren@apple.com>
1373 Fixed <rdar://problem/4882713> GMAIL (REGRESSION): Can't apply font style,
1374 foreground or background to selected text
1376 Also <rdar://problem/4883751> REGRESSION: Caret fails to insert itself
1377 automatically in a new note window
1379 I'm rolling out my change to move focus to the page level because it caused
1380 too many unexpected and bizarre regressions. Our code relies on focus
1381 being per-document so that it can make focus changes that are effectively
1382 no-ops, and so that it can conflate focus and selection in some cases (a bad
1383 idea, since they're not the same).
1385 Hopefully we can revisit this, along with hover and active, in the future.
1388 (WebCore::widgetForNode):
1389 (WebCore::relinquishesEditingFocus):
1390 (WebCore::acceptsEditingFocus):
1391 (WebCore::clearSelectionIfNeeded):
1392 (WebCore::Document::removedLastRef):
1393 (WebCore::Document::detach):
1394 (WebCore::Document::focusedNodeDetached):
1395 (WebCore::Document::setFocusedNode):
1397 (WebCore::Document::focusedNode):
1398 * page/FocusController.cpp:
1399 * page/FocusController.h:
1401 2006-12-14 Maciej Stachowiak <mjs@apple.com>
1405 - fix failing drag & drop layout tests
1407 * platform/mac/KURLMac.mm:
1408 (WebCore::KURL::getNSURL): Turn empty KURL into empty NSURL, but null KURL into
1411 2006-12-14 Steve Falkenburg <sfalken@apple.com>
1415 * loader/MainResourceLoader.h:
1417 2006-12-14 Anders Carlsson <acarlsson@apple.com>
1421 Convert a bunch of NSErrors to ResourceError.
1423 Make the ResourceError accessor functions const.
1426 * WebCore.xcodeproj/project.pbxproj:
1427 * loader/FrameLoader.h:
1428 * loader/FrameLoaderClient.h:
1429 * loader/MainResourceLoader.h:
1430 * loader/NetscapePlugInStreamLoader.h:
1431 * loader/ResourceLoader.h:
1432 * loader/SubresourceLoader.h:
1433 * loader/mac/FrameLoaderMac.mm:
1434 (WebCore::FrameLoader::didFailToLoad):
1435 (WebCore::FrameLoader::receivedMainResourceError):
1436 (WebCore::FrameLoader::interruptionForPolicyChangeError):
1437 * loader/mac/MainResourceLoaderMac.mm:
1438 (WebCore::MainResourceLoader::receivedError):
1439 (WebCore::MainResourceLoader::didCancel):
1440 (WebCore::MainResourceLoader::interruptionForPolicyChangeError):
1441 (WebCore::MainResourceLoader::didFail):
1442 * loader/mac/NetscapePlugInStreamLoaderMac.mm:
1443 (WebCore::NetscapePlugInStreamLoader::didFail):
1444 (WebCore::NetscapePlugInStreamLoader::didCancel):
1445 * loader/mac/ResourceLoaderMac.mm:
1446 (WebCore::ResourceLoader::didFail):
1447 (WebCore::ResourceLoader::didCancel):
1448 * loader/mac/SubresourceLoaderMac.mm:
1449 (WebCore::SubresourceLoader::didFail):
1450 (WebCore::SubresourceLoader::didCancel):
1451 * platform/network/ResourceError.h:
1452 (WebCore::ResourceError::domain):
1453 (WebCore::ResourceError::errorCode):
1454 (WebCore::ResourceError::failingURL):
1455 (WebCore::ResourceError::localizedDescription):
1456 (WebCore::ResourceError::unpackPlatformErrorIfNeeded):
1458 2006-12-14 George Staikos <staikos@kde.org>
1460 Link, after the last loader changes. Please update this directory with stubs when modifying the loader.
1462 * loader/qt/FrameLoaderQt.cpp:
1463 (WebCore::FrameLoader::loadResourceSynchronously):
1465 2006-12-14 Justin Garcia <justin.garcia@apple.com>
1467 Reviewed by harrison
1469 <rdar://problem/4866671>
1470 CrashTracer: 1 crashes in Mail after deleting a list item at WebCore::DeleteSelectionCommand::doApply()
1472 Don't allow VisiblePositions inside -webkit-user-select:none regions.
1473 Renamed inRenderedContent to isCandidate.
1476 (WebCore::Document::updateSelection):
1478 (WebCore::Position::previousCharacterPosition):
1479 (WebCore::Position::nextCharacterPosition):
1480 (WebCore::nodeIsUserSelectNone):
1481 (WebCore::Position::isCandidate):
1482 (WebCore::Position::rendersInDifferentPosition):
1484 * editing/InsertParagraphSeparatorCommand.cpp:
1485 (WebCore::InsertParagraphSeparatorCommand::doApply):
1486 * editing/InsertTextCommand.cpp:
1487 (WebCore::InsertTextCommand::input):
1488 * editing/VisiblePosition.cpp:
1489 (WebCore::VisiblePosition::canonicalPosition):
1490 * editing/htmlediting.cpp:
1491 (WebCore::nextCandidate):
1492 (WebCore::nextVisuallyDistinctCandidate):
1493 (WebCore::previousCandidate):
1494 (WebCore::previousVisuallyDistinctCandidate):
1495 * editing/visible_units.cpp:
1496 (WebCore::previousLinePosition):
1497 (WebCore::nextLinePosition):
1498 (WebCore::startOfParagraph):
1500 (WebCore::Frame::styleForSelectionStart):
1502 2006-12-14 David Hyatt <hyatt@apple.com>
1504 Get rid of the containsStart check and just rely on the selectionState
1505 bits. This allows selection gap filling to behave properly in the presence
1506 of inline blocks and inline tables on lines when the selection originates
1507 inside the inline block.
1511 * rendering/RenderBlock.cpp:
1512 (WebCore::RenderBlock::fillInlineSelectionGaps):
1514 2006-12-14 Anders Carlsson <acarlsson@apple.com>
1518 General loader cleanup, convert NSURLResponse to ResourceResponse in some places.
1520 * loader/DocumentLoader.h:
1521 * loader/SubresourceLoader.h:
1522 * loader/mac/DocumentLoaderMac.mm:
1523 (WebCore::DocumentLoader::addResponse):
1524 * loader/mac/FrameLoaderMac.mm:
1525 (WebCore::FrameLoader::opened):
1526 * loader/mac/SubresourceLoaderMac.mm:
1527 (WebCore::SubresourceLoader::create):
1529 2006-12-14 Anders Carlsson <acarlsson@apple.com>
1533 Add loadResourceSynchronously to ResourceHandle and have FrameLoader use it instead of
1534 calling NSURLConnection directly.
1536 Add an isNull flag to ResourceError so we can convert correctly between nil NSErrors and ResourceErrors.
1538 Get rid of ServeSynchronousRequest and use the loader instead.
1541 * dom/XMLTokenizer.cpp:
1542 (WebCore::openFunc):
1543 * loader/FrameLoader.h:
1544 * loader/LoaderFunctions.h:
1545 * loader/mac/FrameLoaderMac.mm:
1546 (WebCore::FrameLoader::canLoad):
1547 (WebCore::FrameLoader::loadResourceSynchronously):
1548 * loader/mac/LoaderFunctionsMac.mm:
1549 * platform/network/ResourceError.h:
1550 (WebCore::ResourceError::ResourceError):
1551 (WebCore::ResourceError::isNull):
1552 * platform/network/ResourceHandle.h:
1553 * platform/network/ResourceRequest.cpp:
1554 (WebCore::ResourceRequest::isConditional):
1555 * platform/network/ResourceRequest.h:
1556 * platform/network/mac/ResourceErrorMac.mm:
1557 (-[NSError WebCore]):
1558 * platform/network/mac/ResourceHandleMac.mm:
1559 (WebCore::ResourceHandle::loadResourceSynchronously):
1560 * xml/XSLTProcessor.cpp:
1561 (WebCore::docLoaderFunc):
1562 * xml/xmlhttprequest.cpp:
1563 (WebCore::XMLHttpRequest::send):
1565 2006-12-14 Nikolas Zimmermann <zimmermann@kde.org>
1569 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11830
1571 Fix fundamental problems with JS SVG POD types.
1572 (currently: FloatPoint/FloatRect/AffineTransform)
1574 This doesn't affect any testcase, but when I wrote my SVGLength* -> SVGLength
1575 the problem got visible (aka. baseVal-animVal-equality.svg broke and more)
1576 With that patch applied first, none breaks - so SVG POD JS wrappers do work now.
1579 - Fix setBaseValue() confusion. ONLY use the hash map in SVGDocumentExtension
1580 when we're animating a property. Add "start##Property" / "stop##Property" methods
1581 which take care, of moving "animVal" -> "baseVal" hash, and back after animation stopped.
1583 These new methods are not yet used anywhere, but finally the "animated property" system is complete.
1585 - Offer a new JSSVGPODTypeWrapper class, wrapping around non-pointer POD types like FloatPoint etc.
1586 to be used in the generated JS bindings. Currently if you modified ie the "x" property of a SVGPoint
1587 from JS, you only actually modified the "m_x" object stored in the JSSVGPoint wrapper.
1589 If you take SVGLength as example (more frequently used in the JS SVG bindings, that's why I'm using it)
1590 "document.rootElement.width.baseVal.value = 100;" only modified the "SVGLength m_impl" object stored in
1591 JSSVGLength, but the "SVGSVGElement" didn't notice it width got changed. The new commitChanges() logic
1592 fixes these problems.
1594 It's quite hard too describe the actual changes, if one is not familiar with the code. This is the result
1595 of endless discussions with Eric Seidel, and we hope this is a decent solution adressing all issues.
1597 * WebCore.xcodeproj/project.pbxproj:
1598 * bindings/js/JSSVGMatrixCustom.cpp:
1599 (WebCore::JSSVGMatrix::inverse):
1600 (WebCore::JSSVGMatrix::rotateFromVector):
1601 * bindings/js/JSSVGPODTypeWrapper.h: Added.
1602 (WebCore::JSSVGPODTypeWrapper::JSSVGPODTypeWrapper):
1603 (WebCore::JSSVGPODTypeWrapper::~JSSVGPODTypeWrapper):
1604 (WebCore::JSSVGPODTypeWrapper::operator PODType&):
1605 (WebCore::JSSVGPODTypeWrapper::commitChange):
1606 (WebCore::JSSVGPODTypeWrapperCreator::JSSVGPODTypeWrapperCreator):
1607 (WebCore::JSSVGPODTypeWrapperCreator::~JSSVGPODTypeWrapperCreator):
1608 (WebCore::JSSVGPODTypeWrapperCreator::commitChange):
1609 * bindings/scripts/CodeGeneratorJS.pm:
1610 * ksvg2/misc/SVGDocumentExtensions.h:
1611 (WebCore::SVGDocumentExtensions::removeBaseValue):
1612 * ksvg2/svg/SVGElement.h:
1614 2006-12-14 Alexey Proskuryakov <ap@webkit.org>
1618 http://bugs.webkit.org/show_bug.cgi?id=11828
1619 Fix a leak of NSURLRequest on each update - RetainPtr retains the object itself.
1621 * platform/network/mac/ResourceRequestMac.mm:
1622 (WebCore::ResourceRequest::doUpdatePlatformRequest):
1624 2006-12-14 Simon Hausmann <hausmann@kde.org>
1626 Reviewed by Zack Rusin.
1628 * WebCore.pro: Clean up the xpath grammar generation rule.
1630 2006-12-14 Zack Rusin <zack@kde.org>
1632 Make it link with temporary stubs.
1634 * loader/qt/DocumentLoaderQt.cpp:
1635 (WebCore::DocumentLoader::originalRequest):
1636 (WebCore::DocumentLoader::originalRequestCopy):
1637 (WebCore::DocumentLoader::request):
1638 (WebCore::DocumentLoader::initialRequest):
1639 (WebCore::DocumentLoader::actualRequest):
1640 (WebCore::DocumentLoader::URL):
1642 2006-12-14 Zack Rusin <zack@kde.org>
1644 Compilation fixes for the Qt port after last nights
1647 * loader/qt/DocumentLoaderQt.cpp:
1648 (WebCore::DocumentLoader::URL):
1649 (WebCore::DocumentLoader::unreachableURL):
1650 * loader/qt/FrameLoaderQt.cpp:
1651 (WebCore::PolicyCheck::call):
1652 * platform/network/ResourceRequest.h:
1653 (WebCore::ResourceRequest::setHTTPReferrer):
1655 2006-12-14 Rob Buis <buis@kde.org>
1659 http://bugs.webkit.org/show_bug.cgi?id=11726
1660 SVG Image do not take into account clip/overflow when hit testing
1662 Take into account the overflowRect when hit-testing <svg> container.
1664 * rendering/RenderSVGContainer.cpp:
1665 (WebCore::RenderSVGContainer::viewportTransform):
1666 (WebCore::RenderSVGContainer::nodeAtPoint):
1667 * rendering/RenderSVGContainer.h:
1669 2006-12-13 David Hyatt <hyatt@apple.com>
1671 Fix for bug 11825, dragging elements via -khtml-user-drag is broken (affects Dashboard). Make sure
1672 to clear the paintingRoot properly when recurring into children. It would be nice to find a design
1673 that prevented this mistake from being made and didn't require explicit clearing of the root.
1677 * rendering/InlineFlowBox.cpp:
1678 (WebCore::InlineFlowBox::paint):
1679 * rendering/RenderBlock.cpp:
1680 (WebCore::RenderBlock::paintChildren):
1681 * rendering/RenderBox.cpp:
1682 (WebCore::RenderBox::paint):
1683 * rendering/RenderTable.cpp:
1684 (WebCore::RenderTable::paint):
1686 2006-12-13 Anders Carlsson <acarlsson@apple.com>
1688 * loader/FrameLoader.h:
1691 2006-12-13 Brady Eidson <beidson@apple.com>
1693 Implicitly reviewed by Darin, Hyatt, Maciej, and others!
1695 Fixes a document tear down crash.
1696 Changes a few long standing assertions to our new style
1699 (WebCore::Document::~Document):
1700 (WebCore::Document::topDocument):
1702 2006-12-13 Maciej Stachowiak <mjs@apple.com>
1706 - converted many places to use ResourceRequest instead of NSURLRequest
1709 * loader/DocumentLoader.h:
1710 * loader/FrameLoader.cpp:
1711 (WebCore::FrameLoader::stopPolicyCheck):
1712 * loader/FrameLoader.h:
1713 (WebCore::PolicyCheck::request):
1714 * loader/FrameLoaderClient.h:
1715 * loader/MainResourceLoader.h:
1716 * loader/mac/DocumentLoaderMac.mm:
1717 (WebCore::DocumentLoader::DocumentLoader):
1718 (WebCore::DocumentLoader::originalRequest):
1719 (WebCore::DocumentLoader::originalRequestCopy):
1720 (WebCore::DocumentLoader::request):
1721 (WebCore::DocumentLoader::initialRequest):
1722 (WebCore::DocumentLoader::actualRequest):
1723 (WebCore::DocumentLoader::URL):
1724 (WebCore::DocumentLoader::unreachableURL):
1725 (WebCore::DocumentLoader::replaceRequestURLForAnchorScroll):
1726 (WebCore::DocumentLoader::setRequest):
1727 (WebCore::DocumentLoader::stopLoading):
1728 (WebCore::DocumentLoader::setLastCheckedRequest):
1729 (WebCore::DocumentLoader::lastCheckedRequest):
1730 (WebCore::DocumentLoader::URLForHistory):
1731 * loader/mac/FrameLoaderMac.mm:
1732 (WebCore::FrameLoader::load):
1733 (WebCore::FrameLoader::startLoadingMainResource):
1734 (WebCore::FrameLoader::applyUserAgent):
1735 (WebCore::FrameLoader::originalRequest):
1736 (WebCore::FrameLoader::receivedMainResourceError):
1737 (WebCore::FrameLoader::callContinueFragmentScrollAfterNavigationPolicy):
1738 (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
1739 (WebCore::FrameLoader::commitProvisionalLoad):
1740 (WebCore::FrameLoader::initialRequest):
1741 (WebCore::FrameLoader::setRequest):
1742 (WebCore::FrameLoader::checkNavigationPolicy):
1743 (WebCore::FrameLoader::shouldReloadToHandleUnreachableURL):
1744 (WebCore::FrameLoader::reloadAllowingStaleData):
1745 (WebCore::FrameLoader::reload):
1746 (WebCore::FrameLoader::checkNewWindowPolicy):
1747 (WebCore::FrameLoader::continueAfterNewWindowPolicy):
1748 (WebCore::FrameLoader::continueAfterNavigationPolicy):
1749 (WebCore::FrameLoader::callContinueLoadAfterNavigationPolicy):
1750 (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
1751 (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
1752 (WebCore::FrameLoader::callContinueLoadAfterNewWindowPolicy):
1753 (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
1754 (WebCore::FrameLoader::post):
1755 (WebCore::FrameLoader::addExtraFieldsToRequest):
1756 (WebCore::FrameLoader::isReloading):
1757 (WebCore::FrameLoader::referrer):
1758 (WebCore::FrameLoader::loadEmptyDocumentSynchronously):
1759 (WebCore::FrameLoader::loadResourceSynchronously):
1760 (WebCore::FrameLoader::originalRequestURL):
1761 (WebCore::PolicyCheck::set):
1762 (WebCore::PolicyCheck::call):
1763 (WebCore::PolicyCheck::clearRequest):
1764 * loader/mac/MainResourceLoaderMac.mm:
1765 (WebCore::MainResourceLoader::callContinueAfterNavigationPolicy):
1766 (WebCore::MainResourceLoader::continueAfterNavigationPolicy):
1767 (WebCore::MainResourceLoader::isPostOrRedirectAfterPost):
1768 * loader/mac/SubresourceLoaderMac.mm:
1769 (WebCore::SubresourceLoader::create):
1770 * loader/mac/WebDataProtocol.h:
1771 * loader/mac/WebDataProtocol.mm:
1772 * platform/KURL.cpp:
1773 (WebCore::operator!=):
1775 * platform/mac/KURLMac.mm:
1776 (WebCore::KURL::getNSURL):
1777 * platform/network/FormData.h:
1778 (WebCore::operator==):
1779 (WebCore::operator!=):
1780 * platform/network/ResourceRequest.cpp:
1781 (WebCore::operator==):
1782 * platform/network/ResourceRequest.h:
1783 * platform/network/mac/ResourceRequestMac.mm:
1784 (WebCore::ResourceRequest::doUpdatePlatformRequest):
1786 2006-12-13 Geoffrey Garen <ggaren@apple.com>
1788 Reviewed by Darin Adler, Dave Hyatt.
1790 Beefed up FocusController to handle frame focus. Changed implementors to
1791 use FocusController, rather than the widget hierarchy, to focus frames.
1793 (WebCore::FocusController::focusedNode): Made a minor change to focus a frame
1794 before focusing the element inside of it. This matches FF.
1795 (WebCore::FocusController::focusedFrame):
1796 * platform/Widget.h:
1798 2006-12-13 Justin Garcia <justin.garcia@apple.com>
1802 <rdar://problem/4818145>
1803 Cannot setSelectedDOMRange to non-editable island unless it has editable content on both sides
1805 There are editable positions before/after a "non-editable island" if its
1806 a table, but the code in canonicalPosition was not using
1807 editableRootForPosition to find root editable elements.
1809 * editing/VisiblePosition.cpp:
1810 (WebCore::VisiblePosition::canonicalPosition): Use editableRootForPosition
1811 to fix the table case.
1813 2006-12-13 Steve Falkenburg <sfalken@apple.com>
1817 Added missing forwarding headers.
1819 * ForwardingHeaders/kjs/value.h: Added.
1820 * ForwardingHeaders/wtf/HashTable.h: Added.
1822 2006-12-13 Lars Knoll <lars@trolltech.com>
1824 Reviewed by Maciej, Zack.
1826 Make the Qt cbuild compile again.
1829 * loader/qt/ResourceLoaderQt.cpp:
1830 * platform/network/qt/ResourceHandleQt.cpp:
1831 (WebCore::ResourceHandle::start):
1832 (WebCore::ResourceHandle::loadsBlocked):
1833 * platform/qt/FrameQtClient.cpp:
1834 (WebCore::FrameQtClient::openURL):
1835 (WebCore::FrameQtClient::submitForm):
1837 2006-12-12 Adam Roben <aroben@apple.com>
1841 Changed #import to #include to match the rest of our ForwardingHeaders.
1843 * ForwardingHeaders/wtf/StringExtras.h:
1845 2006-12-12 Justin Garcia <justin.garcia@apple.com>
1847 Reviewed by harrison
1849 <rdar://problem/4757667>
1850 GoogleDocs: Style menu does not open
1852 * bindings/js/kjs_window.cpp:
1853 (KJS::Selection::getValueProperty): Added rangeCount.
1854 * bindings/js/kjs_window.h:
1856 * editing/SelectionController.h:
1857 (WebCore::SelectionController::rangeCount): Added.
1859 2006-12-12 Alice Liu <alice.liu@apple.com>
1863 * bindings/js/JSSVGMatrixCustom.cpp:
1864 added #ifdef SVG_SUPPORT
1866 2006-12-12 Anders Carlsson <acarlsson@apple.com>
1870 * loader/ResourceLoader.cpp:
1871 Move down include of ResourceHandle.h.
1873 2006-12-12 Geoffrey Garen <ggaren@apple.com>
1875 Reviewed by Adam Roben, Dave Hyatt, Darin Adler.
1877 Factored focus control into a FocusController class. I inted to use this
1878 class for handling window active state and the focused frame, as well.
1882 * WebCore.xcodeproj/project.pbxproj:
1884 (WebCore::Document::view):
1885 (WebCore::Document::page): New helper function.
1886 * dom/Document.h: Moved setters before getters.
1887 (WebCore::Document::hoverNode):
1888 (WebCore::Document::activeNode):
1890 (WebCore::Node::detach): Use the FocusController.
1891 * page/FocusController.cpp: Added.
1892 (WebCore::shouldFocus): renamed and refactored this helper function.
1893 (WebCore::shouldUnfocus): ditto.
1894 * page/FocusController.h: Added.
1896 2006-12-12 Anders Carlsson <acarlsson@apple.com>
1898 Rubber Stamped by Geoff.
1900 * platform/Base64.cpp:
1901 * platform/Base64.h:
1902 Put functions inside of the WebCore namespace.
1904 2006-12-12 Anders Carlsson <acarlsson@apple.com>
1906 Try fixing the non-Mac builds.
1908 * loader/ResourceLoader.cpp:
1909 (WebCore::ResourceLoader::willSendRequest):
1910 (WebCore::ResourceLoader::didReceiveResponse):
1911 (WebCore::ResourceLoader::didReceiveData):
1912 (WebCore::ResourceLoader::didFinishLoading):
1913 (WebCore::ResourceLoader::didFail):
1914 * loader/SubresourceLoader.cpp:
1915 (WebCore::SubresourceLoader::create):
1916 * loader/SubresourceLoader.h:
1918 2006-12-12 Anders Carlsson <acarlsson@apple.com>
1922 Turn ResourceLoader into a ResourceHandleClient and stop using NSURLConnection in the loader.
1925 Add new methods needed by WebKit.
1927 * WebCore.xcodeproj/project.pbxproj:
1928 Make ResourceHandle.h a private header.
1930 * loader/FrameLoaderClient.h:
1931 Change the download method to take a ResourceHandle instead of an NSURLConnection.
1933 * loader/MainResourceLoader.h:
1934 Get rid of the proxy instance variable, that's handled by ResourceHandlw now.
1936 * loader/ResourceLoader.h:
1937 (WebCore::ResourceLoader::didReceiveAuthenticationChallenge):
1938 (WebCore::ResourceLoader::didCancelAuthenticationChallenge):
1939 (WebCore::ResourceLoader::willStopBufferingData):
1940 (WebCore::ResourceLoader::willCacheResponse):
1941 (WebCore::ResourceLoader::receivedCredential):
1942 (WebCore::ResourceLoader::receivedRequestToContinueWithoutCredential):
1943 (WebCore::ResourceLoader::receivedCancellation):
1944 (WebCore::ResourceLoader::handle):
1945 * loader/SubresourceLoader.h:
1946 Make ResourceLoader a ResourceHandleClient, moving the methods from SubresourceLoader.
1948 * loader/mac/MainResourceLoaderMac.mm:
1949 (WebCore::MainResourceLoader::MainResourceLoader):
1950 (WebCore::MainResourceLoader::continueAfterContentPolicy):
1951 (WebCore::MainResourceLoader::loadNow):
1952 (WebCore::MainResourceLoader::load):
1953 Use a ResourceHandle instead of an NSURLConnection.
1955 * loader/mac/ResourceLoaderMac.mm:
1956 (WebCore::ResourceLoader::~ResourceLoader):
1957 (WebCore::ResourceLoader::releaseResources):
1958 (WebCore::ResourceLoader::load):
1959 (WebCore::ResourceLoader::setDefersLoading):
1960 (WebCore::ResourceLoader::resourceData):
1961 (WebCore::ResourceLoader::didReceiveAuthenticationChallenge):
1962 (WebCore::ResourceLoader::didCancel):
1963 (WebCore::ResourceLoader::willSendRequest):
1964 (WebCore::ResourceLoader::didReceiveResponse):
1965 (WebCore::ResourceLoader::didReceiveData):
1966 (WebCore::ResourceLoader::didFinishLoading):
1967 (WebCore::ResourceLoader::didFail):
1968 Remove the WebCoreResourceLoaderAsDelegate class, use a ResourceHandle instead of an NSURLConnection.
1970 * loader/mac/SubresourceLoaderMac.mm:
1971 Remove ResourceHandleClient methods.
1973 * platform/network/ResourceHandle.cpp:
1974 (WebCore::ResourceHandle::ResourceHandle):
1975 (WebCore::ResourceHandle::create):
1976 * platform/network/ResourceHandle.h:
1977 * platform/network/ResourceHandleInternal.h:
1978 (WebCore::ResourceHandleInternal::ResourceHandleInternal):
1979 Add an extra argument denoting whether this ResourceHandle can possibly be "converted" into one used for downloads.
1981 * platform/network/mac/ResourceHandleMac.mm:
1982 (WebCore::ResourceHandle::~ResourceHandle):
1983 (WebCore::ResourceHandle::start):
1984 (WebCore::ResourceHandle::releaseProxy):
1985 (WebCore::ResourceHandle::connection):
1986 New methods for creating a NSURLConnectionDelegateProxy which is used when creating a NSURLDownload from an existing
1989 2006-12-12 Anders Carlsson <acarlsson@apple.com>
1993 * loader/mac/SubresourceLoaderMac.mm:
1994 (WebCore::SubresourceLoader::load):
1995 * platform/network/mac/ResourceHandleMac.mm:
1996 (WebCore::ResourceHandle::start):
1997 Move the didTellBridgeAboutLoad call to SubresourceLoader in preparation for getting rid of
1998 the DocLoader parameter to ResourceHandle::create.
2000 2006-12-12 George Staikos <staikos@kde.org>
2002 Make the last checkin compile.
2005 * ksvg2/svg/SVGTransform.cpp:
2007 2006-12-12 Nikolas Zimmermann <zimmermann@kde.org>
2009 Reviewed by Sam Weinig & Rob Buis.
2011 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11797
2013 Remove SVGMatrix, replace it by AffineTransform usage everywhere.
2014 Changed AffineTransform API to be able to be used within generation
2015 (m11() -> a(), m12() -> b(), ...). Add some methods needed for SVG.
2017 The actual SVGMatrix -> AffineTransformation patch has been created
2018 by Rob - I just adapted it to the autogenerated POD style.
2020 * WebCore.xcodeproj/project.pbxproj:
2021 * bindings/js/JSSVGMatrixCustom.cpp: Added.
2022 (WebCore::JSSVGMatrix::inverse):
2023 (WebCore::JSSVGMatrix::rotateFromVector):
2024 * bindings/objc/DOMInternal.h:
2025 * bindings/scripts/CodeGeneratorJS.pm:
2026 * bindings/scripts/CodeGeneratorObjC.pm:
2027 * ksvg2/misc/KSVGTimeScheduler.cpp:
2028 * ksvg2/misc/SVGImageLoader.cpp:
2029 * ksvg2/svg/SVGAnimateTransformElement.cpp:
2030 (WebCore::SVGAnimateTransformElement::handleTimerEvent):
2031 (WebCore::SVGAnimateTransformElement::calculateRotationFromMatrix):
2032 (WebCore::SVGAnimateTransformElement::initialMatrix):
2033 (WebCore::SVGAnimateTransformElement::transformMatrix):
2034 * ksvg2/svg/SVGAnimateTransformElement.h:
2035 * ksvg2/svg/SVGClipPathElement.cpp:
2036 (WebCore::SVGClipPathElement::canvasResource):
2037 * ksvg2/svg/SVGFitToViewBox.cpp:
2038 (WebCore::SVGFitToViewBox::viewBoxToViewTransform):
2039 * ksvg2/svg/SVGFitToViewBox.h:
2040 * ksvg2/svg/SVGLengthList.cpp:
2041 * ksvg2/svg/SVGLinearGradientElement.cpp:
2042 (WebCore::SVGLinearGradientElement::buildGradient):
2043 * ksvg2/svg/SVGLocatable.cpp:
2044 (WebCore::SVGLocatable::getCTM):
2045 (WebCore::SVGLocatable::getScreenCTM):
2046 (WebCore::SVGLocatable::getTransformToElement):
2047 * ksvg2/svg/SVGLocatable.h:
2048 * ksvg2/svg/SVGMarkerElement.cpp:
2049 * ksvg2/svg/SVGMatrix.cpp: Removed.
2050 * ksvg2/svg/SVGMatrix.h: Removed.
2051 * ksvg2/svg/SVGMatrix.idl:
2052 * ksvg2/svg/SVGNumberList.cpp:
2053 * ksvg2/svg/SVGPatternElement.cpp:
2054 (WebCore::SVGPatternElement::notifyAttributeChange):
2055 (WebCore::SVGPatternElement::getCTM):
2056 * ksvg2/svg/SVGPatternElement.h:
2057 * ksvg2/svg/SVGPoint.idl:
2058 * ksvg2/svg/SVGPreserveAspectRatio.cpp:
2059 (WebCore::SVGPreserveAspectRatio::getCTM):
2060 * ksvg2/svg/SVGPreserveAspectRatio.h:
2061 * ksvg2/svg/SVGRadialGradientElement.cpp:
2062 (WebCore::SVGRadialGradientElement::buildGradient):
2063 * ksvg2/svg/SVGSVGElement.cpp:
2064 (WebCore::SVGSVGElement::viewport):
2065 (WebCore::SVGSVGElement::createSVGMatrix):
2066 (WebCore::SVGSVGElement::createSVGTransformFromMatrix):
2067 (WebCore::SVGSVGElement::getCTM):
2068 (WebCore::SVGSVGElement::getScreenCTM):
2069 * ksvg2/svg/SVGSVGElement.h:
2070 * ksvg2/svg/SVGStyledElement.cpp:
2071 * ksvg2/svg/SVGStyledLocatableElement.cpp:
2072 (WebCore::SVGStyledLocatableElement::getCTM):
2073 (WebCore::SVGStyledLocatableElement::getScreenCTM):
2074 * ksvg2/svg/SVGStyledLocatableElement.h:
2075 * ksvg2/svg/SVGStyledTransformableElement.cpp:
2076 (WebCore::SVGStyledTransformableElement::localMatrix):
2077 (WebCore::SVGStyledTransformableElement::getCTM):
2078 (WebCore::SVGStyledTransformableElement::getScreenCTM):
2079 (WebCore::SVGStyledTransformableElement::updateLocalTransform):
2080 (WebCore::SVGStyledTransformableElement::attach):
2081 * ksvg2/svg/SVGStyledTransformableElement.h:
2082 * ksvg2/svg/SVGTextElement.cpp:
2083 (WebCore::SVGTextElement::localMatrix):
2084 (WebCore::SVGTextElement::updateLocalTransform):
2085 (WebCore::SVGTextElement::attach):
2086 (WebCore::SVGTextElement::getScreenCTM):
2087 (WebCore::SVGTextElement::getCTM):
2088 * ksvg2/svg/SVGTextElement.h:
2089 * ksvg2/svg/SVGTransform.cpp:
2090 (SVGTransform::SVGTransform):
2091 (SVGTransform::matrix):
2092 (SVGTransform::setMatrix):
2093 (SVGTransform::setTranslate):
2094 (SVGTransform::setScale):
2095 (SVGTransform::setRotate):
2096 (SVGTransform::setSkewX):
2097 (SVGTransform::setSkewY):
2098 * ksvg2/svg/SVGTransform.h:
2099 * ksvg2/svg/SVGTransformList.cpp:
2100 (SVGTransformList::createSVGTransformFromMatrix):
2101 (SVGTransformList::concatenate):
2102 * ksvg2/svg/SVGTransformList.h:
2103 * ksvg2/svg/SVGTransformable.cpp:
2104 (WebCore::SVGTransformable::getCTM):
2105 (WebCore::SVGTransformable::getScreenCTM):
2106 (WebCore::SVGTransformable::parseTransformAttribute):
2107 * ksvg2/svg/SVGTransformable.h:
2108 * platform/graphics/AffineTransform.cpp:
2109 (WebCore::AffineTransform::multiply):
2110 (WebCore::AffineTransform::scale):
2111 (WebCore::AffineTransform::scaleNonUniform):
2112 (WebCore::AffineTransform::rotateFromVector):
2113 (WebCore::AffineTransform::flipX):
2114 (WebCore::AffineTransform::flipY):
2115 (WebCore::AffineTransform::skewX):
2116 (WebCore::AffineTransform::skewY):
2117 * platform/graphics/AffineTransform.h:
2118 * platform/graphics/cairo/AffineTransformCairo.cpp:
2119 (WebCore::AffineTransform::a):
2120 (WebCore::AffineTransform::setA):
2121 (WebCore::AffineTransform::b):
2122 (WebCore::AffineTransform::setB):
2123 (WebCore::AffineTransform::c):
2124 (WebCore::AffineTransform::setC):
2125 (WebCore::AffineTransform::d):
2126 (WebCore::AffineTransform::setD):
2127 (WebCore::AffineTransform::e):
2128 (WebCore::AffineTransform::setE):
2129 (WebCore::AffineTransform::f):
2130 (WebCore::AffineTransform::setF):
2131 (WebCore::AffineTransform::inverse):
2132 * platform/graphics/cg/AffineTransformCG.cpp:
2133 (WebCore::AffineTransform::a):
2134 (WebCore::AffineTransform::setA):
2135 (WebCore::AffineTransform::b):
2136 (WebCore::AffineTransform::setB):
2137 (WebCore::AffineTransform::c):
2138 (WebCore::AffineTransform::setC):
2139 (WebCore::AffineTransform::d):
2140 (WebCore::AffineTransform::setD):
2141 (WebCore::AffineTransform::e):
2142 (WebCore::AffineTransform::setE):
2143 (WebCore::AffineTransform::f):
2144 (WebCore::AffineTransform::setF):
2145 (WebCore::AffineTransform::inverse):
2146 * platform/graphics/qt/AffineTransformQt.cpp:
2147 (WebCore::AffineTransform::a):
2148 (WebCore::AffineTransform::setA):
2149 (WebCore::AffineTransform::b):
2150 (WebCore::AffineTransform::setB):
2151 (WebCore::AffineTransform::c):
2152 (WebCore::AffineTransform::setC):
2153 (WebCore::AffineTransform::d):
2154 (WebCore::AffineTransform::setD):
2155 (WebCore::AffineTransform::e):
2156 (WebCore::AffineTransform::setE):
2157 (WebCore::AffineTransform::f):
2158 (WebCore::AffineTransform::setF):
2159 (WebCore::AffineTransform::inverse):
2160 * rendering/RenderForeignObject.cpp:
2161 (WebCore::RenderForeignObject::paint):
2162 (WebCore::RenderForeignObject::nodeAtPoint):
2163 * rendering/RenderPath.cpp:
2164 (WebCore::RenderPath::mapAbsolutePointToLocal):
2165 * rendering/RenderSVGImage.cpp:
2166 (WebCore::RenderSVGImage::paint):
2167 (WebCore::RenderSVGImage::nodeAtPoint):
2168 * rendering/RenderSVGText.cpp:
2169 (WebCore::RenderSVGText::computeAbsoluteRepaintRect):
2170 (WebCore::RenderSVGText::nodeAtPoint):
2171 (WebCore::RenderSVGText::paint):
2172 * rendering/SVGInlineFlowBox.cpp:
2173 (WebCore::paintSVGInlineFlow):
2174 * rendering/SVGRenderTreeAsText.cpp:
2175 (WebCore::operator<<):
2177 2006-12-12 George Staikos <staikos@kde.org>
2181 Fix the Qt build again.
2184 * loader/qt/FrameLoaderQt.cpp:
2185 (WebCore::FrameLoader::createFrame):
2186 (WebCore::FrameLoader::load):
2187 * platform/qt/PasteboardQt.cpp:
2188 (WebCore::Pasteboard::writeSelection):
2189 (WebCore::Pasteboard::writeURL):
2190 (WebCore::Pasteboard::clear):
2192 2006-12-12 Geoffrey Garen <ggaren@apple.com>
2194 Reviewed by Beth Dakin.
2196 Moved focus control to the page level. Fixed a minor bug where a node
2197 would retain keyboard focus even when removed from the document.
2199 We should probably move this, along with hover and active, into a separate
2200 FocusController. But I'm too tired right now.
2202 * dom/Document.cpp: Migrated code to Page
2203 (WebCore::Document::removedLastRef):
2204 (WebCore::Document::detach):
2205 (WebCore::Document::setFocusedNode):
2206 (WebCore::Document::focusedNode):
2209 (WebCore::Node::detach): Clear ourselves from keyboard focus. This fixes
2210 the minor bug and was also necessary to prevent regressions caused by hanging
2211 on to a focused node after the document was replaced.
2213 (WebCore::Node::inDetach):
2214 * page/Page.cpp: Migrated code from Document
2215 (WebCore::shouldAcquireEditingFocus):
2216 (WebCore::shouldRelinquishEditingFocus):
2217 (WebCore::clearSelectionIfNeeded):
2218 (WebCore::widgetForNode):
2219 (WebCore::Page::setFocusedNode):
2221 (WebCore::Page::focusedNode):
2223 2006-12-11 Alexey Proskuryakov <ap@webkit.org>
2227 http://bugs.webkit.org/show_bug.cgi?id=11053
2228 XMLHttpRequest should be an EventTarget
2230 Test: http/tests/xmlhttprequest/event-target.html
2232 * bindings/js/JSXMLHttpRequest.cpp:
2233 (KJS::JSXMLHttpRequest::mark):
2234 (KJS::JSXMLHttpRequest::~JSXMLHttpRequest):
2235 (KJS::JSXMLHttpRequestProtoFunc::callAsFunction):
2236 * bindings/js/JSXMLHttpRequest.h:
2237 (KJS::JSXMLHttpRequest::):
2238 * xml/xmlhttprequest.cpp:
2239 (WebCore::XMLHttpRequest::addEventListener):
2240 (WebCore::XMLHttpRequest::removeEventListener):
2241 (WebCore::XMLHttpRequest::dispatchEvent):
2242 (WebCore::XMLHttpRequest::callReadyStateChangeListener):
2243 * xml/xmlhttprequest.h:
2244 (WebCore::XMLHttpRequest::eventListeners):
2245 Implement EventTarget methods (except for NS variations, which Firefox doesn't have either).
2247 2006-12-11 Darin Adler <darin@apple.com>
2251 - fix http://bugs.webkit.org/show_bug.cgi?id=11809
2252 fast/dom/gc-8.html crash in alternate-thread marking code in ScriptInterpreter
2254 DocumentType objects were getting filed under the wrong document in the
2255 DOM objects structure.
2257 * bindings/js/kjs_binding.h: Added a destructor for debugging purposes only.
2258 * bindings/js/kjs_binding.cpp:
2259 (KJS::wrapperSet): Added. Set of outstanding wrappers for debugging.
2260 (KJS::addWrapper): Added.
2261 (KJS::removeWrapper): Added.
2262 (KJS::removeWrappers): Added.
2263 (KJS::DOMObject::~DOMObject): Added. Asserts that there is no outstanding reference
2264 to this wrapper since it's being destroyed.
2265 (KJS::ScriptInterpreter::putDOMObject): Added a call to ADD_WRAPPER.
2266 (KJS::ScriptInterpreter::forgetDOMObject): Added a call to REMOVE_WRAPPER.
2267 (KJS::ScriptInterpreter::forgetDOMNodeForDocument): Added a call to REMOVE_WRAPPER.
2268 (KJS::ScriptInterpreter::putDOMNodeForDocument): Added a call to ADD_WRAPPER.
2269 (KJS::ScriptInterpreter::forgetAllDOMNodesForDocument): Added a call to REMOVE_WRAPPERS.
2270 (KJS::ScriptInterpreter::updateDOMNodeDocument): Added calls to REMOVE_WRAPPER and
2271 ADD_WRAPPER so the out-of-order transaction doesn't upset the assertions in the functions
2272 we're calling. Another solution would be to reorder the two, but I think that would
2273 create a race where another thread could garbage collect after the forget but before the put.
2274 (KJS::ScriptInterpreter::wasRunByUserGesture): Tweaked formatting.
2276 * dom/Document.cpp: (WebCore::Document::adoptNode): Removed call to updateDOMNodeDocument
2277 since setDocument now takes care of that.
2279 (WebCore::Node::setDocument): Added call to updateDOMNodeDocument here.
2280 (WebCore::Node::checkAddChild): Removed call to updateDOMNodeDocument since setDocument
2281 now takes care of that.
2283 2006-12-11 Alexey Proskuryakov <ap@nypop.com>
2287 http://bugs.webkit.org/show_bug.cgi?id=9673
2288 Add support for window.atob() and window.btoa()
2290 * WebCore.xcodeproj/project.pbxproj: Added Base64.{h,cpp}
2291 * bindings/js/kjs_window.cpp:
2292 (KJS::WindowFunc::callAsFunction):
2293 * bindings/js/kjs_window.h:
2295 * platform/Base64.cpp: Added.
2298 * platform/Base64.h: Added.
2299 * ForwardingHeaders/wtf/StringExtras.h: Added.
2300 * platform/DeprecatedString.cpp: Use strncasecmp from StringExtras.
2302 2006-12-11 Darin Adler <darin@apple.com>
2306 - did some of the Mac-specific file moves mentioned in my recent mail to the WebKit list
2308 * WebCore.xcodeproj/project.pbxproj: Updated project for file moves.
2310 * bridge/mac/FrameMac.h: Moved to page/mac.
2311 * bridge/mac/FrameMac.mm: Ditto.
2312 * bridge/mac/WebCoreFrameBridge.h: Ditto.
2313 * bridge/mac/WebCoreFrameBridge.mm: Ditto.
2314 * bridge/mac/WebCoreFrameView.h: Ditto.
2315 * bridge/mac/WebCoreViewFactory.h: Ditto.
2316 * bridge/mac/WebCoreViewFactory.m: Ditto.
2317 * bridge/mac/WebDashboardRegion.h: Ditto.
2318 * bridge/mac/WebDashboardRegion.m: Ditto.
2320 * bridge/mac/WebCoreKeyboardAccess.h: Moved to page/mac,
2321 renamed WebCoreKeyboardUIMode.h, and made a C++ header.
2323 * page/EventHandler.h: Updated for change to WebCoreKeyboardAccess.
2324 * page/mac/EventHandlerMac.mm:
2325 (WebCore::EventHandler::tabsToLinks): Ditto.
2326 (WebCore::EventHandler::tabsToAllControls): Ditto.
2327 (WebCore::EventHandler::keyboardUIMode): Ditto.
2329 2006-12-11 Beth Dakin <bdakin@apple.com>
2333 Primarily, this patch implements/hooks-up actions for the sub-menu
2334 items in WebCore context menus. I fixed a few other things along
2336 -Made BUILDING_ON_TIGER ifdef work within C++ as well as
2338 -Fixed bug where we would throw and Obj-C exception and
2339 fail to pop up menus with more than one separator item.
2340 -Re-named some of the spelling/grammar tags since Tiger and
2341 Leopard share more of the actions than initially
2344 * WebCorePrefix.h: Make BUILDING_ON_TIGER available to C++
2345 * bridge/EditorClient.h: New functions to toggle
2346 spelling/grammar checking.
2347 * editing/Editor.cpp:
2348 (WebCore::Editor::toggleContinuousSpellChecking): Call into client.
2349 (WebCore::Editor::toggleGrammarChecking): Same.
2350 (WebCore::Editor::toggleBold): call execToggleBold()
2351 (WebCore::Editor::toggleUnderline): Create appropriate underline
2352 style and apply to selection.
2353 (WebCore::Editor::setBaseWritingDirection): Create appropriate
2354 writing direction and apply to selection.
2356 * editing/mac/EditorMac.mm: New functions to show spelling guesses,
2357 fonts, styles, and color panels.
2358 * page/ContextMenuClient.h: New functions for the speech sub-menu.
2359 * page/ContextMenuController.cpp:
2360 (WebCore::ContextMenuController::contextMenuItemSelected): Fill in
2361 editing sub-menu actions.
2362 * platform/ContextMenu.cpp:
2363 (WebCore::separatorItem): Helper function to create a separator
2365 (WebCore::createFontSubMenu): Put very mac-specific things within a
2367 (WebCore::createSpellingAndGrammarSubMenu): Re-named some of the
2368 spelling sub-menu tags.
2369 (WebCore::createSpellingSubMenu): Same.
2370 (WebCore::ContextMenu::populate): We can't share the separator
2371 item. When we do, menus with more than one separator throw and obj-
2372 c exception and fail to pop-up.
2373 * platform/ContextMenuItem.h:
2374 (WebCore::): Re-named some of the spelling sub-menu tags.
2376 2006-12-11 Alice Liu <alice.liu@apple.com>
2378 Reviewed by Geoff, Adam.
2380 Switch to use the Editor for copying URLs. Also some Pasteboard and PlatformMouseEvent cleanup.
2382 All layout tests pass as they would without this patch.
2385 added Editor::copyURL to be called from WebKit
2387 * editing/Editor.cpp:
2388 (WebCore::Editor::tryDHTMLCopy):
2389 (WebCore::Editor::tryDHTMLCut):
2390 Pasteboard::clearTypes() changed to clear()
2392 (WebCore::Editor::writeSelectionToPasteboard):
2393 (WebCore::Editor::cut):
2394 (WebCore::Editor::copy):
2395 Changed signature of writeSelection to take raw pointer instead of PassRefPtr
2397 (WebCore::Editor::copyURL):
2401 * page/ContextMenuClient.h:
2402 * page/ContextMenuController.cpp:
2403 (WebCore::ContextMenuController::contextMenuItemSelected):
2404 Removed copyLinkToClipboard
2406 * platform/KURL.cpp:
2407 (WebCore::KURL::lastPathComponent):
2409 Added lastPathComponent.
2411 * platform/Pasteboard.h:
2412 Changed some function names.
2413 Moved some functions out of class to static.
2415 * platform/PlatformMouseEvent.h:
2417 Removed MouseEventType enum, added NoButton to MouseButton without disturbing other button values.
2419 * platform/mac/PasteboardMac.mm:
2420 Added writeURL, and moved some things around
2422 * platform/mac/WebCoreSystemInterface.h:
2423 * platform/mac/WebCoreSystemInterface.mm:
2424 Add some calls necessary for Pasteboard::writeURL to work
2426 2006-12-11 Darin Adler <darin@apple.com>
2430 - http://bugs.webkit.org/show_bug.cgi?id=11794
2431 fix lifetime problems affecting Frame's ownerElement pointer
2434 * WebCore.vcproj/WebCore/WebCore.vcproj:
2435 * WebCore.xcodeproj/project.pbxproj:
2436 * WebCoreSources.bkl:
2437 Updated for new source files.
2439 * WebCore.exp: Updated for changes to entry point names.
2441 * bridge/mac/FrameMac.h:
2442 * bridge/mac/FrameMac.mm: (WebCore::FrameMac::FrameMac):
2443 * bridge/win/FrameWin.h:
2444 * bridge/win/FrameWin.cpp: (WebCore::FrameWin::FrameWin):
2445 * platform/qt/FrameQt.h:
2446 * platform/qt/FrameQt.cpp: (WebCore::FrameQt::FrameQt):
2447 Updated owner element type to HTMLFrameOwnerElement.
2449 * bridge/mac/WebCoreFrameBridge.h: Removed non-C++ case since we don't
2450 use that any more. Updated owner element type to HTMLFrameOwnerElement.
2452 * dom/Document.cpp: Added include so that the ownerElement function can
2453 compile (since it downcasts an HTMLFrameOwnerElement to an Element).
2455 * html/HTMLFrameElement.cpp:
2456 (WebCore::containingFrameSetElement): Moved this function in here; it
2457 doesn't need to be a member function.
2458 (WebCore::HTMLFrameElement::attach): Updated to call this.
2460 * html/HTMLFrameElementBase.h:
2461 * html/HTMLFrameElementBase.cpp:
2462 (WebCore::HTMLFrameElementBase::HTMLFrameElementBase): Inherit from
2463 HTMLFrameOwnerElement. Removed contentFrame, contentDocument, and
2464 containingFrameSetElement. Removed friend classes.
2466 * html/HTMLFrameOwnerElement.h: Added.
2467 * html/HTMLFrameOwnerElement.cpp: Added.
2469 * html/HTMLEmbedElement.h:
2470 * html/HTMLEmbedElement.cpp:
2471 * html/HTMLObjectElement.h:
2472 * html/HTMLObjectElement.cpp:
2473 Remove now-unneeded contentDocument functions.
2475 * html/HTMLPlugInElement.h:
2476 * html/HTMLPlugInElement.cpp:
2477 (WebCore::HTMLPlugInElement::HTMLPlugInElement): Inherit from
2478 HTMLFrameOwnerElement.
2480 * loader/FormState.h:
2481 * loader/FormState.cpp: Use HTMLFormElement instead of just Element.
2483 * loader/FrameLoader.h:
2484 * loader/FrameLoader.cpp:
2485 (WebCore::FrameLoader::requestFrame): Use HTMLFormElement.
2486 (WebCore::FrameLoader::loadSubframe): Ditto.
2487 (WebCore::FrameLoader::requestObject): Don't pass an element parameter
2488 to shouldUsePlugin, and remove now-unneeded type casts.
2489 (WebCore::FrameLoader::shouldUsePlugin): Removed unneeded element parameter.
2490 (WebCore::FrameLoader::handleFallbackContent): Use HTMLFrameOwnerElement.
2491 (WebCore::FrameLoader::updateBaseURLForEmptyDocument): Ditto.
2492 (WebCore::FrameLoader::isHostedByObjectElement): Ditto.
2493 * loader/mac/FrameLoaderMac.mm:
2494 (WebCore::FrameLoader::load): Use HTMLFormElement.
2495 (WebCore::FrameLoader::post): Ditto.
2496 (WebCore::FrameLoader::createFrame): Use HTMLFrameOwnerElement.
2499 * page/FramePrivate.h:
2501 (WebCore::parentFromOwnerElement): Use HTMLFrameOwnerElement.
2502 (WebCore::Frame::Frame): Ditto. Also set m_contentFrame on the owner element.
2503 (WebCore::Frame::ownerElement): Ditto.
2504 (WebCore::Frame::ownerRenderer): Ditto.
2505 (WebCore::Frame::disconnectOwnerElement): Clear m_contentFrame on the owner
2506 element before disconnecting it.
2507 (WebCore::FramePrivate::FramePrivate): Use HTMLFrameOwnerElement.
2509 * page/mac/EventHandlerMac.mm: Include HTMLFrameOwnerElement.h so that
2510 the code here will compile (no code changes needed).
2512 * rendering/RenderFrame.cpp: (WebCore::RenderFrame::viewCleared):
2513 Updated so that RenderFrame doesn't need to be a friend of HTMLFrameElementBase.
2515 * rendering/RenderPart.h:
2516 * rendering/RenderPart.cpp: (WebCore::RenderPart::RenderPart):
2517 Use HTMLFrameOwnerElement.
2519 * rendering/RenderPartObject.h:
2520 * rendering/RenderPartObject.cpp:
2521 (WebCore::RenderPartObject::RenderPartObject): Use HTMLFrameOwnerElement.
2522 (WebCore::RenderPartObject::viewCleared): Updated so that RenderFrame doesn't
2523 need to be a friend of HTMLFrameElementBase.
2527 * platform/network/ResourceHandleInternal.h: Added Noncopyable and
2530 2006-12-11 David Hyatt <hyatt@apple.com>
2532 Fix failing layout test. Remove WTF::Unicode::isSpace and just revert
2533 the caller to the old behavior.
2537 * platform/StringImpl.cpp:
2540 2006-12-11 Alexey Proskuryakov <ap@webkit.org>
2544 http://bugs.webkit.org/show_bug.cgi?id=11807
2545 Merge EventHandler::m_bMousePressed and EventHandler::m_mousePressed
2547 * page/EventHandler.cpp:
2548 (WebCore::EventHandler::EventHandler):
2549 (WebCore::EventHandler::handleMousePressEvent):
2550 (WebCore::EventHandler::handleMouseMoveEvent):
2551 (WebCore::EventHandler::handleMouseReleaseEvent):
2552 (WebCore::EventHandler::autoscrollTimerFired):
2553 * page/EventHandler.h:
2554 * page/mac/EventHandlerMac.mm:
2555 (WebCore::EventHandler::handleDrag):
2556 (WebCore::EventHandler::mouseMoved):
2557 Merge EventHandler::m_bMousePressed and EventHandler::m_mousePressed
2559 (WebCore::EventHandler::lastEventIsMouseUp):
2560 Check that the "new" event is newer than the "old" one - that's not always the case
2561 when running in DRT, as [NSApp currentEvent] isn't updated by eventSender.
2563 2006-12-11 Nikolas Zimmermann <zimmermann@kde.org>
2565 Reviewed by Sam Weinig.
2567 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11801
2569 Autogenerate POD types for ObjC/JS.
2571 This removes the need for the hand-written JSSVG*, DOMSVG* wrappers
2572 in bindings/js, bindings/objc. Makes it much easier to convert more
2573 SVG types to POD types (ie. SVGMatrix* -> AffineTransform etc.)
2575 Affected test: svg/custom/SVGPoint-matrixTransform.svg
2577 It's failing with this patch, as the SVGPoint matrixTransform() function
2578 got disabled, until the SVGMatrix -> AffineTransform transition patch
2579 is landed. Otherwhise we'd need to add special cases to both CodeGeneratorJS/ObjC.pm
2580 which would be a waste of time, as SVGMatrix is about to die.
2582 Temporarily updating layout test result, as suggested by John Sullivan, so
2583 no-one notices that SVGPoint-matrixTransform.svg actually fails right now.
2585 Expect that to be fixed again in the next hour(s).
2587 * DerivedSources.make:
2588 * WebCore.xcodeproj/project.pbxproj:
2589 * bindings/js/JSSVGNumber.cpp: Removed.
2590 * bindings/js/JSSVGNumber.h: Removed.
2591 * bindings/js/JSSVGPoint.cpp: Removed.
2592 * bindings/js/JSSVGPoint.h: Removed.
2593 * bindings/js/JSSVGRect.cpp: Removed.
2594 * bindings/js/JSSVGRect.h: Removed.
2595 * bindings/objc/DOMSVGNumber.mm: Removed.
2596 * bindings/objc/DOMSVGPoint.mm: Removed.
2597 * bindings/objc/DOMSVGRect.mm: Removed.
2598 * bindings/scripts/CodeGeneratorJS.pm:
2599 * bindings/scripts/CodeGeneratorObjC.pm:
2600 * ksvg2/svg/SVGNumber.idl:
2601 * ksvg2/svg/SVGPoint.idl:
2602 * ksvg2/svg/SVGRect.idl:
2604 2006-12-10 Lars Knoll <lars@trolltech.com>
2608 Fix another issue with frame loading
2610 * platform/network/qt/ResourceHandleManagerQt.cpp:
2611 (WebCore::ResourceHandleManager::cancel):
2612 (WebCore::ResourceHandleManager::receivedData):
2613 (WebCore::ResourceHandleManager::receivedFinished):
2614 (WebCore::FileLoader::request):
2615 * platform/qt/FrameQtClient.cpp:
2616 (WebCore::FrameQtClient::openURL):
2618 2006-12-10 George Staikos <staikos@kde.org>
2622 Make the xpath grammar hack more specific (and work on OS X) until
2627 2006-12-10 Zack Rusin <zack@kde.org>
2629 Set the widgetclient correctly. This code
2630 should be platform independent!
2632 * platform/qt/WidgetQt.cpp:
2633 (WebCore::WidgetPrivate::WidgetPrivate):
2634 (WebCore::Widget::setClient):
2635 (WebCore::Widget::client):
2636 (WebCore::Widget::focusPolicy):
2638 2006-12-11 Lars Knoll <lars@trolltech.com>
2642 Fix loading of local files.
2644 * platform/network/qt/ResourceHandleManagerQt.cpp:
2645 (WebCore::FileLoader::request):
2647 2006-12-10 Zack Rusin <zack@kde.org>
2649 Don't use my QTransform magic, affine QMatrix is fine for
2650 SVG so use setMatrix.
2652 * platform/graphics/svg/qt/SVGPaintServerLinearGradientQt.cpp:
2653 (WebCore::SVGPaintServerLinearGradient::setup):
2654 * platform/graphics/svg/qt/SVGPaintServerRadialGradientQt.cpp:
2657 2006-12-10 Lars Knoll <lars@trolltech.com>
2661 Make sure we call checkCompleted() on the FrameLoader
2662 to get the regression tests running.
2665 * loader/qt/FrameLoaderQt.cpp:
2666 (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
2667 (WebCore::FrameLoader::saveDocumentState):
2668 * page/qt/EventHandlerQt.cpp:
2669 (WebCore::EventHandler::handleDrag):
2670 * platform/qt/FrameQtClient.cpp:
2671 (WebCore::FrameQtClient::openURL):
2672 (WebCore::FrameQtClient::didReceiveResponse):
2673 (WebCore::FrameQtClient::didFinishLoading):
2674 (WebCore::FrameQtClient::didFail):
2675 * platform/qt/FrameQtClient.h:
2677 2006-12-10 Zack Rusin <zack@kde.org>
2679 Enable the SVG build by default and make it build.
2682 * loader/qt/FrameLoaderQt.cpp: Output the method name
2684 2006-12-10 Zack Rusin <zack@kde.org>
2686 Move the client classes to WebKitQt/WebCoreSupport.
2689 * loader/qt/FrameLoaderClientQt.cpp: Removed.
2690 * loader/qt/FrameLoaderClientQt.h: Removed.
2691 * platform/qt/ChromeClientQt.cpp: Removed.
2692 * platform/qt/ChromeClientQt.h: Removed.
2693 * platform/qt/ContextMenuClientQt.cpp: Removed.
2694 * platform/qt/ContextMenuClientQt.h: Removed.
2695 * platform/qt/EditorClientQt.cpp: Removed.
2696 * platform/qt/EditorClientQt.h: Removed.
2698 2006-12-10 Lars Knoll <lars@trolltech.com>
2702 Add some stubs required to link.
2704 * platform/qt/FrameQt.cpp:
2705 (WebCore::FrameQt::runJavaScriptAlert):
2706 (WebCore::FrameQt::runJavaScriptConfirm):
2707 (WebCore::FrameQt::runJavaScriptPrompt):
2708 (WebCore::FrameQt::bindingRootObject):
2710 2006-12-10 Rob Buis <buis@kde.org>
2714 http://bugs.webkit.org/show_bug.cgi?id=10996
2715 WebKit needs (possibly private) XML/SVG innerText support (for DumpRenderTree)
2717 Create an internal method to create innerText functionality for non-HTML
2718 nodes. When called from DRT this omits CDATA nodes.
2721 (WebCore::Element::innerText):
2722 (WebCore::Element::outerText):
2725 * html/HTMLElement.cpp:
2726 * html/HTMLElement.h:
2728 2006-12-10 MorganL <morganl.webkit@yahoo.com>
2732 Fixes http://bugs.webkit.org/show_bug.cgi?id=11790
2733 No way to initialize ResourceResponse::m_httpHeaderFields
2735 * platform/network/ResourceResponse.cpp: impl setHTTPHeaderField
2736 (WebCore::ResourceResponse::setHTTPHeaderField):
2737 * platform/network/ResourceResponse.h: decl setHTTPHeaderField
2739 2006-12-10 Zack Rusin <zack@kde.org>
2741 Cleaning up the code after removals.
2743 * platform/qt/FrameQt.cpp:
2744 * platform/qt/FrameQt.h: Remove virtual methods
2745 which have been moved to different objects
2747 2006-12-10 Zack Rusin <zack@kde.org>
2749 Cleanup the FrameQtClient a little bit more. Remove
2752 * platform/qt/FrameQtClient.cpp:
2753 * platform/qt/FrameQtClient.h:
2755 2006-12-09 Adam Roben <aroben@apple.com>
2759 * xml/XPathParser.cpp:
2760 (WebCore::XPath::charCat): Use C++ unsigned instead of uint.
2762 2006-12-09 George Staikos <staikos@kde.org>
2766 Make it not crash, and make it set the title on Qt platform.
2768 * loader/qt/FrameLoaderClientQt.cpp:
2769 (WebCore::FrameLoaderClientQt::hasWebView):
2770 (WebCore::FrameLoaderClientQt::hasFrameView):
2771 (WebCore::FrameLoaderClientQt::didChangeTitle):
2772 * loader/qt/FrameLoaderQt.cpp:
2773 (WebCore::FrameLoader::setTitle):
2774 (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
2776 2006-12-10 Zack Rusin <zack@kde.org>
2778 Renaming FrameQtClientDefault to FrameQtClient.
2779 Removing FrameQtClient. Adding FrameLoaderClient
2780 as an argument. Clenaing up the code a bit.
2782 * platform/qt/FrameQt.cpp:
2783 (WebCore::FrameQt::FrameQt):
2784 * platform/qt/FrameQt.h:
2785 * platform/qt/FrameQtClient.cpp:
2786 (WebCore::FrameQtClient::FrameQtClient):
2787 (WebCore::FrameQtClient::~FrameQtClient):
2788 (WebCore::FrameQtClient::setFrame):
2789 (WebCore::FrameQtClient::openURL):
2790 (WebCore::FrameQtClient::submitForm):
2791 (WebCore::FrameQtClient::checkLoaded):
2792 (WebCore::FrameQtClient::runJavaScriptAlert):
2793 (WebCore::FrameQtClient::runJavaScriptConfirm):
2794 (WebCore::FrameQtClient::runJavaScriptPrompt):
2795 (WebCore::FrameQtClient::menubarVisible):
2796 (WebCore::FrameQtClient::toolbarVisible):
2797 (WebCore::FrameQtClient::statusbarVisible):
2798 (WebCore::FrameQtClient::personalbarVisible):
2799 (WebCore::FrameQtClient::locationbarVisible):
2800 (WebCore::FrameQtClient::loadFinished):
2801 (WebCore::FrameQtClient::didReceiveResponse):
2802 (WebCore::FrameQtClient::didFinishLoading):
2803 (WebCore::FrameQtClient::didFail):
2804 (WebCore::FrameQtClient::didReceiveData):
2805 (WebCore::FrameQtClient::traverseNextFrameStayWithin):
2806 (WebCore::FrameQtClient::numPendingOrLoadingRequests):
2807 (WebCore::FrameQtClient::receivedAllData):
2808 (WebCore::FrameQtClient::setTitle):
2809 * platform/qt/FrameQtClient.h:
2811 2006-12-10 Zack Rusin <zack@kde.org>
2813 Fixes compilation after the last removals.
2817 2006-12-10 Lars Knoll <lars@trolltech.com>
2821 Implement a decent network loader using QHttp.
2823 * loader/qt/FrameLoaderQt.cpp:
2824 (WebCore::FrameLoader::load):
2825 * platform/network/ResourceHandle.cpp:
2826 (WebCore::ResourceHandle::request):
2827 * platform/network/ResourceHandle.h:
2828 * platform/network/ResourceHandleInternal.h:
2829 * platform/network/qt/ResourceHandleManager.cpp: Removed.
2830 * platform/network/qt/ResourceHandleManager.h: Removed.
2831 * platform/network/qt/ResourceHandleManagerKDE.cpp: Added.
2832 (WebCore::ResourceHandleManager::self):
2833 (WebCore::ResourceHandleManager::ResourceHandleManager):
2834 (WebCore::ResourceHandleManager::~ResourceHandleManager):
2835 (WebCore::ResourceHandleManager::slotData):
2836 (WebCore::ResourceHandleManager::slotMimetype):
2837 (WebCore::ResourceHandleManager::slotResult):
2838 (WebCore::ResourceHandleManager::remove):
2839 (WebCore::ResourceHandleManager::add):
2840 (WebCore::ResourceHandleManager::cancel):
2841 * platform/network/qt/ResourceHandleManagerKDE.h: Added.
2842 * platform/network/qt/ResourceHandleManagerQt.cpp: Added.
2843 (WebCore::ResourceHandleManager::ResourceHandleManager):
2844 (WebCore::ResourceHandleManager::~ResourceHandleManager):
2845 (WebCore::ResourceHandleManager::self):
2846 (WebCore::RequestQt::RequestQt):
2847 (WebCore::ResourceHandleManager::add):
2848 (WebCore::ResourceHandleManager::cancel):
2849 (WebCore::ResourceHandleManager::receivedResponse):
2850 (WebCore::ResourceHandleManager::receivedData):
2851 (WebCore::ResourceHandleManager::receivedFinished):
2852 (WebCore::LoaderThread::LoaderThread):
2853 (WebCore::LoaderThread::run):
2854 (WebCore::FileLoader::FileLoader):
2855 (WebCore::FileLoader::request):
2856 (WebCore::FileLoader::cancel):
2857 (WebCore::WebCoreHttp::WebCoreHttp):
2858 (WebCore::WebCoreHttp::~WebCoreHttp):
2859 (WebCore::WebCoreHttp::request):
2860 (WebCore::WebCoreHttp::scheduleNextRequest):
2861 (WebCore::WebCoreHttp::getConnection):
2862 (WebCore::WebCoreHttp::onResponseHeaderReceived):
2863 (WebCore::WebCoreHttp::onReadyRead):
2864 (WebCore::WebCoreHttp::onRequestFinished):
2865 (WebCore::WebCoreHttp::onStateChanged):
2866 (WebCore::WebCoreHttp::cancel):
2868 (WebCore::operator==):
2869 (WebCore::HostInfo::HostInfo):
2870 (WebCore::NetworkLoader::NetworkLoader):
2871 (WebCore::NetworkLoader::~NetworkLoader):
2872 (WebCore::NetworkLoader::request):
2873 (WebCore::NetworkLoader::connectionClosed):
2874 (WebCore::NetworkLoader::cancel):
2875 * platform/network/qt/ResourceHandleManagerQt.h: Added.
2876 (WebCore::LoaderThread::):
2877 (WebCore::LoaderThread::waitForSetup):
2878 * platform/network/qt/ResourceHandleQt.cpp:
2879 (WebCore::ResourceHandle::start):
2880 * platform/qt/FrameQt.cpp:
2881 (WebCore::FrameQt::FrameQt):
2882 (WebCore::FrameQt::keyEvent):
2883 * platform/qt/FrameQt.h:
2884 * platform/qt/FrameQtClient.cpp:
2885 (WebCore::FrameQtClientDefault::FrameQtClientDefault):
2886 (WebCore::FrameQtClientDefault::openURL):
2887 (WebCore::FrameQtClientDefault::submitForm):
2888 (WebCore::FrameQtClientDefault::didReceiveResponse):
2889 (WebCore::FrameQtClientDefault::didFinishLoading):
2890 (WebCore::FrameQtClientDefault::didFail):
2891 (WebCore::FrameQtClientDefault::didReceiveData):
2892 (WebCore::FrameQtClientDefault::receivedAllData):
2893 (WebCore::FrameQtClientDefault::setTitle):
2894 * platform/qt/FrameQtClient.h:
2896 2006-12-09 George Staikos <staikos@kde.org>
2900 Fix bison again on qmake build.
2904 2006-12-09 Zack Rusin <zack@kde.org>
2908 Use the correct filename.
2910 * WebCore.pro: it's PasteboardQt.cpp
2912 2006-12-09 Zack Rusin <zack@kde.org>
2916 Correctly set the font on widgets.
2918 * platform/qt/WidgetQt.cpp:
2919 (WebCore::Widget::setFont):
2921 2006-12-09 Adam Treat <treat@kde.org>
2925 No more nil renderer warnings
2927 * platform/qt/ScrollViewCanvasQt.cpp:
2928 (WebCore::ScrollViewCanvasQt::paintEvent):
2930 2006-12-09 Friedemann Kleint <fkleint@trolltech.com>
2934 Removed compiler warnings about rounding issues
2936 * platform/qt/FontPlatformDataQt.cpp:
2937 (WebCore::FontPlatformData::FontPlatformData):
2938 * platform/qt/FontQt.cpp:
2939 (WebCore::Font::drawComplexText):
2941 2006-12-09 George Staikos <staikos@kde.org>
2945 Qt 4.1 (especially Qtopia) build fixes
2947 * platform/qt/FrameQtClient.cpp:
2948 * platform/qt/GraphicsContextQt.cpp:
2949 * platform/qt/PlatformKeyboardEventQt.cpp:
2950 * platform/qt/CursorQt.cpp:
2951 * platform/qt/WidgetQt.cpp:
2952 * platform/Cursor.h:
2955 2006-12-09 Lars Knoll <lars@trolltech.com>
2959 Make it possible to build WebKit with qmake.
2961 * WebCore.pro: Added.
2962 * platform/graphics/qt/GraphicsContextQt.cpp:
2964 2006-12-10 Lars Knoll <lars@trolltech.com>
2968 Compile after latest WebKit changes and don't depend
2969 on deprecated methods in Qt.
2971 * platform/network/qt/ResourceHandleManager.cpp:
2972 (WebCore::ResourceHandleManager::remove):
2973 (WebCore::ResourceHandleManager::deliverJobData):
2974 * platform/network/qt/ResourceHandleQt.cpp:
2975 (WebCore::ResourceHandle::extractCharsetFromHeaders):
2976 * platform/qt/PlatformKeyboardEventQt.cpp:
2977 (WebCore::windowsKeyCodeForKeyEvent):
2979 2006-12-10 Lars Knoll <lars@trolltech.com>
2983 Use the Qt image loading framework.
2986 * platform/graphics/ImageSource.h:
2987 * platform/graphics/qt/GraphicsContextQt.cpp:
2988 * platform/graphics/qt/ImageDecoderQt.cpp: Added.
2989 (WebCore::ImageDecoderQt::ImageData::ImageData):
2990 (WebCore::ImageDecoderQt::ReadContext::):
2991 (WebCore::ImageDecoderQt::ReadContext::ReadContext):
2992 (WebCore::ImageDecoderQt::ReadContext::read):
2993 (WebCore::ImageDecoderQt::ReadContext::readImageLines):
2994 (WebCore::ImageDecoderQt::ImageDecoderQt):
2995 (WebCore::ImageDecoderQt::~ImageDecoderQt):
2996 (WebCore::ImageDecoderQt::hasFirstImageHeader):
2997 (WebCore::ImageDecoderQt::reset):
2998 (WebCore::ImageDecoderQt::setData):
2999 (WebCore::ImageDecoderQt::isSizeAvailable):
3000 (WebCore::ImageDecoderQt::frameCount):
3001 (WebCore::ImageDecoderQt::repetitionCount):
3002 (WebCore::ImageDecoderQt::ImageDecoderQt::supportsAlpha):
3003 (WebCore::ImageDecoderQt::duration):
3004 (WebCore::ImageDecoderQt::frameBufferAtIndex):
3005 (WebCore::ImageDecoderQt::imageAtIndex):
3006 * platform/graphics/qt/ImageDecoderQt.h: Added.
3007 (WebCore::ImageDecoderQt::):
3008 * platform/graphics/qt/ImageSourceQt.cpp:
3010 (WebCore::detectImageFormat):
3011 (WebCore::createDecoder):
3012 (WebCore::ImageSource::setData):
3013 (WebCore::ImageSource::createFrameAtIndex):
3014 (WebCore::ImageSource::frameDurationAtIndex):
3015 (WebCore::ImageSource::frameHasAlphaAtIndex):
3017 2006-12-09 Lars Knoll <lars@trolltech.com>
3021 Remove an explicit ICU dependency.
3023 * xml/XPathParser.cpp:
3024 (WebCore::XPath::charCat):
3026 2006-12-09 Zack Rusin <zack@kde.org>
3028 Adjusting the build after the icu changes.
3032 2006-12-09 Adam Roben <aroben@apple.com>
3036 Changed all ForwardingHeaders to use #include instead of #import.
3038 * ForwardingHeaders/kjs/JSLock.h:
3039 * ForwardingHeaders/kjs/SavedBuiltins.h:
3040 * ForwardingHeaders/kjs/collector.h:
3041 * ForwardingHeaders/kjs/dtoa.h:
3042 * ForwardingHeaders/kjs/internal.h:
3043 * ForwardingHeaders/kjs/interpreter.h:
3044 * ForwardingHeaders/kjs/lookup.h:
3045 * ForwardingHeaders/kjs/object.h:
3046 * ForwardingHeaders/kjs/property_map.h:
3047 * ForwardingHeaders/kjs/protect.h:
3048 * ForwardingHeaders/wtf/AlwaysInline.h:
3049 * ForwardingHeaders/wtf/Assertions.h:
3050 * ForwardingHeaders/wtf/FastMalloc.h:
3051 * ForwardingHeaders/wtf/GetPtr.h:
3052 * ForwardingHeaders/wtf/HashCountedSet.h:
3053 * ForwardingHeaders/wtf/HashMap.h:
3054 * ForwardingHeaders/wtf/HashSet.h:
3055 * ForwardingHeaders/wtf/HashTraits.h:
3056 * ForwardingHeaders/wtf/MathExtras.h:
3057 * ForwardingHeaders/wtf/Noncopyable.h:
3058 * ForwardingHeaders/wtf/OwnArrayPtr.h:
3059 * ForwardingHeaders/wtf/OwnPtr.h:
3060 * ForwardingHeaders/wtf/PassRefPtr.h:
3061 * ForwardingHeaders/wtf/Platform.h:
3062 * ForwardingHeaders/wtf/RefPtr.h:
3063 * ForwardingHeaders/wtf/Vector.h:
3065 2006-12-09 Rob Buis <buis@kde.org>
3069 http://bugs.webkit.org/show_bug.cgi?id=11625
3070 Investigate possibility to share code between HTMLStyleElement and SVGStyleElement
3072 Add a class shared by both HTMLStyleElement and SVGStyleElement that
3073 encapsulates the common logic.
3076 * WebCore.xcodeproj/project.pbxproj:
3078 (WebCore::Document::recalcStyleSelector):
3079 Generalize stylesheet processing of svg and html.
3081 * dom/StyleElement.cpp: Added.
3082 (WebCore::StyleElement::StyleElement):
3083 (WebCore::StyleElement::sheet):
3084 (WebCore::StyleElement::insertedIntoDocument):
3085 (WebCore::StyleElement::removedFromDocument):
3086 (WebCore::StyleElement::childrenChanged):
3087 * dom/StyleElement.h: Added.
3088 (WebCore::StyleElement::~StyleElement):
3089 (WebCore::StyleElement::isLoading):
3090 Common base class for SVGStyleElement and HTMLStyleElement.
3092 * html/HTMLStyleElement.cpp:
3093 (WebCore::HTMLStyleElement::HTMLStyleElement):
3094 (WebCore::HTMLStyleElement::parseMappedAttribute):
3095 (WebCore::HTMLStyleElement::insertedIntoDocument):
3096 (WebCore::HTMLStyleElement::removedFromDocument):
3097 (WebCore::HTMLStyleElement::childrenChanged):
3098 (WebCore::HTMLStyleElement::media):
3099 (WebCore::HTMLStyleElement::setMedia):
3100 (WebCore::HTMLStyleElement::type):
3101 (WebCore::HTMLStyleElement::setType):
3102 * html/HTMLStyleElement.h:
3103 Use new common class.
3105 * ksvg2/svg/SVGElement.cpp:
3106 * ksvg2/svg/SVGElement.h:
3107 * ksvg2/svg/SVGSVGElement.cpp:
3108 (WebCore::SVGSVGElement::contentScriptType):
3109 (WebCore::SVGSVGElement::contentStyleType):
3110 * ksvg2/svg/SVGSVGElement.h:
3111 Do not use tryGetAttribute(NS) anymore.
3113 * ksvg2/svg/SVGStyleElement.cpp:
3114 (WebCore::SVGStyleElement::SVGStyleElement):
3115 (WebCore::SVGStyleElement::xmlspace):
3116 (WebCore::SVGStyleElement::type):
3117 (WebCore::SVGStyleElement::media):
3118 (WebCore::SVGStyleElement::title):
3119 (WebCore::SVGStyleElement::insertedIntoDocument):
3120 (WebCore::SVGStyleElement::removedFromDocument):
3121 (WebCore::SVGStyleElement::childrenChanged):
3122 * ksvg2/svg/SVGStyleElement.h:
3123 Use new common class.
3125 2006-12-08 David Hyatt <hyatt@apple.com>
3127 Land the new ICU abstraction layer (WTF::Unicode). Patch
3128 by Lars with a couple of fixes thrown in by me.
3132 * ForwardingHeaders/wtf/icu/UnicodeIcu.h: Added.
3133 * ForwardingHeaders/wtf/unicode/Unicode.h: Added.
3134 * WebCore.xcodeproj/project.pbxproj:
3135 * css/cssparser.cpp:
3136 (WebCore::ParseString::lower):
3138 (WebCore::isValidNameStart):
3139 (WebCore::isValidNamePart):
3140 * editing/TextIterator.cpp:
3141 (WebCore::CircularSearchBuffer::append):
3142 * html/HTMLFontElement.cpp:
3143 (WebCore::parseFontSizeNumber):
3144 * html/HTMLInputElement.cpp:
3145 (WebCore::numGraphemeClusters):
3146 (WebCore::numCharactersInGraphemeClusters):
3147 * html/HTMLSelectElement.cpp:
3148 (WebCore::stripLeadingWhiteSpace):
3150 * platform/DeprecatedString.h:
3151 (WebCore::DeprecatedChar::isSpace):
3152 (WebCore::DeprecatedChar::lower):
3153 (WebCore::DeprecatedChar::upper):
3154 * platform/Font.cpp:
3155 (WebCore::WidthIterator::advance):
3156 (WebCore::WidthIterator::normalizeVoicingMarks):
3157 * platform/FontCache.h:
3158 * platform/FontData.h:
3159 * platform/GlyphMap.cpp:
3160 * platform/GlyphMap.h:
3161 * platform/GlyphWidthMap.h:
3162 * platform/KURL.cpp:
3163 (WebCore::encodeHostname):
3164 * platform/StringHash.h:
3166 * platform/StringImpl.cpp:
3168 (WebCore::parseLength):
3169 (WebCore::StringImpl::isLower):
3170 (WebCore::StringImpl::lower):
3171 (WebCore::StringImpl::upper):
3172 (WebCore::StringImpl::secure):
3173 (WebCore::StringImpl::foldCase):
3174 (WebCore::StringImpl::capitalize):
3175 (WebCore::StringImpl::toInt):
3176 (WebCore::equalIgnoringCase):
3177 (WebCore::StringImpl::find):
3178 * platform/StringImpl.h:
3179 * platform/TextBoundaries.h:
3180 * platform/TextBreakIterator.h: Added.
3182 * platform/TextBreakIteratorICU.cpp: Added.
3183 (WebCore::wordBreakIterator):
3184 (WebCore::characterBreakIterator):
3185 (WebCore::textBreakFirst):
3186 (WebCore::textBreakNext):
3187 (WebCore::textBreakPreceding):
3188 (WebCore::textBreakFollowing):
3189 (WebCore::textBreakCurrent):
3190 * platform/TextCodec.h:
3191 * platform/TextCodecLatin1.cpp:
3192 * platform/TextEncoding.cpp:
3193 (WebCore::TextEncoding::encode):
3194 * platform/TextEncoding.h:
3195 * platform/TextEncodingRegistry.cpp:
3196 (WebCore::buildTextEncodingNameMap):
3197 (WebCore::buildTextCodecMap):
3198 * platform/TextEncodingRegistry.h:
3199 * platform/UChar.h: Removed.
3200 * platform/graphics/GraphicsContext.h:
3201 * platform/qt/GlyphMapQt.cpp:
3202 * platform/qt/TextBreakIteratorQt.cpp: Added.
3203 (WebCore::TextBreakIterator::following):
3204 (WebCore::TextBreakIterator::preceding):
3205 (WebCore::WordBreakIteratorQt::first):
3206 (WebCore::WordBreakIteratorQt::next):
3207 (WebCore::WordBreakIteratorQt::previous):
3208 (WebCore::CharBreakIteratorQt::first):
3209 (WebCore::CharBreakIteratorQt::next):
3210 (WebCore::CharBreakIteratorQt::previous):
3211 (WebCore::wordBreakIterator):
3212 (WebCore::characterBreakIterator):
3213 (WebCore::textBreakFirst):
3214 (WebCore::textBreakNext):
3215 (WebCore::textBreakPreceding):
3216 (WebCore::textBreakFollowing):
3217 (WebCore::textBreakCurrent):
3218 * platform/qt/TextCodecQt.cpp: Added.
3219 (WebCore::getAtomicName):
3220 (WebCore::TextCodecQt::registerEncodingNames):
3221 (WebCore::newTextCodecQt):
3222 (WebCore::TextCodecQt::registerCodecs):
3223 (WebCore::TextCodecQt::TextCodecQt):
3224 (WebCore::TextCodecQt::~TextCodecQt):
3225 (WebCore::TextCodecQt::decode):
3226 (WebCore::TextCodecQt::encode):
3227 * platform/qt/TextCodecQt.h: Added.
3228 * rendering/RenderBlock.cpp:
3229 (WebCore::RenderBlock::updateFirstLetter):
3230 * rendering/RenderText.cpp:
3231 (WebCore::RenderText::previousOffset):
3232 (WebCore::RenderText::nextOffset):
3233 (WebCore::RenderText::widthFromCache):
3234 * rendering/RenderText.h:
3235 * rendering/bidi.cpp:
3236 (WebCore::BidiState::BidiState):
3237 (WebCore::BidiContext::BidiContext):
3238 (WebCore::bidiNext):
3239 (WebCore::bidiFirst):
3240 (WebCore::BidiIterator::direction):
3241 (WebCore::appendRun):
3243 (WebCore::RenderBlock::computeHorizontalPositionsForLine):
3244 (WebCore::RenderBlock::bidiReorderLine):
3245 (WebCore::RenderBlock::layoutInlineChildren):
3247 (WebCore::BidiStatus::BidiStatus):
3248 (WebCore::BidiContext::dir):
3249 (WebCore::BidiContext::basicDir):
3250 (WebCore::BidiRun::BidiRun):
3251 * rendering/break_lines.h:
3253 2006-12-08 Adam Roben <aroben@apple.com>
3255 Rolling out r17865 because it caused a performance regression.
3257 * loader/TextResourceDecoder.cpp:
3258 (WebCore::findXMLEncoding):
3259 * platform/CString.cpp:
3260 (WebCore::CString::data):
3261 * platform/CString.h:
3262 * platform/TextStream.cpp:
3263 (WebCore::TextStream::operator<<):
3264 * platform/TextStream.h:
3266 2006-12-08 Zack Rusin <zack@kde.org>
3270 Fix the Qt/KDE build after all the API changes.
3273 * editing/qt/EditorQt.cpp: Added.
3274 (WebCore::Editor::newGeneralClipboard):
3275 (WebCore::Editor::ignoreSpelling):
3276 (WebCore::Editor::learnSpelling):
3277 (WebCore::Editor::advanceToNextMisspelling):
3278 (WebCore::Editor::isSelectionMisspelled):
3279 (WebCore::Editor::isSelectionUngrammatical):
3280 (WebCore::Editor::guessesForUngrammaticalSelection):
3281 (WebCore::Editor::guessesForMisspelledSelection):
3282 (WebCore::Editor::markMisspellingsInAdjacentWords):
3283 (WebCore::Editor::markMisspellings):
3284 * loader/NavigationAction.h:
3285 * loader/qt/FrameLoaderClientQt.cpp:
3286 (WebCore::FrameLoaderClientQt::frameLoaderDestroyed):
3287 (WebCore::FrameLoaderClientQt::canHandleRequest):
3288 * loader/qt/FrameLoaderClientQt.h:
3289 * loader/qt/FrameLoaderQt.cpp:
3290 (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
3291 (WebCore::FrameLoader::load):
3292 * loader/qt/ResourceLoaderQt.cpp:
3293 * platform/ContextMenu.h:
3294 * platform/graphics/qt/GraphicsContextQt.cpp:
3295 * platform/graphics/qt/PathQt.cpp:
3296 (WebCore::Path::addArc):
3297 * platform/graphics/svg/qt/SVGPaintServerLinearGradientQt.cpp:
3298 (WebCore::SVGPaintServerLinearGradient::setup):
3299 * platform/graphics/svg/qt/SVGPaintServerRadialGradientQt.cpp:
3301 * platform/network/ResourceHandle.h:
3302 (WebCore::ResourceHandle::getInternal):
3303 * platform/network/ResourceHandleInternal.h:
3304 * platform/network/qt/ResourceHandleManager.cpp:
3305 (WebCore::ResourceHandleManager::slotData):
3306 (WebCore::ResourceHandleManager::remove):
3307 * platform/network/qt/ResourceHandleQt.cpp:
3308 (WebCore::ResourceHandle::~ResourceHandle):
3309 (WebCore::ResourceHandle::start):
3310 * platform/qt/ChromeClientQt.cpp:
3311 (WebCore::ChromeClientQt::addMessageToConsole):
3312 (WebCore::ChromeClientQt::chromeDestroyed):
3313 * platform/qt/ChromeClientQt.h:
3314 * platform/qt/ContextMenuClientQt.cpp:
3315 (WebCore::ContextMenuClientQt::copyLinkToClipboard):
3316 (WebCore::ContextMenuClientQt::downloadURL):
3317 (WebCore::ContextMenuClientQt::copyImageToClipboard):
3318 (WebCore::ContextMenuClientQt::contextMenuDestroyed):
3319 (WebCore::ContextMenuClientQt::contextMenuItemSelected):
3320 * platform/qt/ContextMenuClientQt.h:
3321 * platform/qt/ContextMenuItemQt.cpp: Added.
3322 (WebCore::ContextMenuItem::ContextMenuItem):
3323 (WebCore::ContextMenuItem::~ContextMenuItem):
3324 (WebCore::ContextMenuItem::platformDescription):
3325 (WebCore::ContextMenuItem::action):
3326 (WebCore::ContextMenuItem::title):
3327 (WebCore::ContextMenuItem::setAction):
3328 (WebCore::ContextMenuItem::setTitle):
3329 (WebCore::ContextMenuItem::setSubMenu):
3330 * platform/qt/ContextMenuQt.cpp:
3331 (WebCore::ContextMenu::ContextMenu):
3332 (WebCore::ContextMenu::~ContextMenu):
3333 (WebCore::ContextMenu::appendItem):
3334 (WebCore::ContextMenu::itemCount):
3335 (WebCore::ContextMenu::insertItem):
3336 (WebCore::ContextMenu::setPlatformDescription):
3337 * platform/qt/CursorQt.cpp:
3338 (WebCore::copyCursor):
3339 * platform/qt/EditorClientQt.cpp:
3340 (WebCore::EditorClientQt::shouldInsertNode):
3341 (WebCore::WebCore::EditorClientQt::pageDestroyed):
3342 (WebCore::EditorClientQt::smartInsertDeleteEnabled):
3343 * platform/qt/EditorClientQt.h:
3344 * platform/qt/FrameQt.cpp:
3345 (WebCore::FrameQt::FrameQt):
3346 (WebCore::FrameQt::keyEvent):
3347 * platform/qt/FrameQt.h:
3348 * platform/qt/FrameQtClient.cpp:
3349 (WebCore::FrameQtClientDefault::openURL):
3350 (WebCore::FrameQtClientDefault::submitForm):
3351 * platform/qt/LoaderFunctionsQt.cpp:
3352 * platform/qt/PasteboardQt.cpp: Added.
3353 (WebCore::Pasteboard::Pasteboard):
3354 (WebCore::Pasteboard::generalPasteboard):
3355 (WebCore::Pasteboard::clearTypes):
3356 (WebCore::Pasteboard::writeSelection):
3357 (WebCore::Pasteboard::canSmartReplace):
3358 (WebCore::Pasteboard::plainText):
3359 (WebCore::Pasteboard::documentFragment):
3361 === Safari-521.32 ===
3363 2006-12-08 Rob Buis <buis@kde.org>
3367 http://bugs.webkit.org/show_bug.cgi?id=10188
3368 Form elements added via appendChild() are not accessible via form.element
3370 Make sure looking up form elements works when the form is not appended
3373 * html/HTMLFormElement.cpp:
3374 (WebCore::HTMLFormElement::registerFormElement):
3376 2006-12-08 Rob Buis <buis@kde.org>
3380 http://bugs.webkit.org/show_bug.cgi?id=11765
3381 REGRESSION: Clicking on a select with size other than 1 and no children results in a crash
3383 Make sure returned value is -1 for selects without children.
3385 * rendering/RenderListBox.cpp:
3386 (WebCore::RenderListBox::listIndexAtOffset):
3388 2006-12-08 Adam Roben <aroben@apple.com>
3392 This is a mo' better fix for ensuring we don't use macro definitions
3397 2006-12-08 Don Gibson <dgibson77@gmail.com>
3399 Reviewed and landed by Alexey.
3401 http://bugs.webkit.org/show_bug.cgi?id=11759:
3402 Windows build bustage
3404 * WebCore.vcproj/WebCore/WebCore.vcproj:
3405 * bridge/win/ContextMenuClientWin.h:
3406 * bridge/win/FrameWin.h:
3407 * loader/win/FrameLoaderWin.cpp:
3408 (WebCore::FrameLoader::submitForm):
3409 * platform/network/win/ResourceHandleWin.cpp:
3410 (WebCore::ResourceHandle::onRequestComplete):
3411 (WebCore::ResourceHandle::fileLoadTimer):
3412 (WebCore::ResourceHandle::cancel):
3413 * platform/win/MouseEventWin.cpp:
3414 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
3415 * platform/win/TemporaryLinkStubs.cpp:
3416 (WebCore::fileButtonChooseFileLabel):
3417 (WebCore::inputElementAltText):
3418 (WebCore::copyCursor):
3419 (WebCore::resetButtonDefaultLabel):
3420 (WebCore::ContextMenuClientWin::contextMenuItemSelected):
3421 (WebCore::ContextMenuClientWin::copyLinkToClipboard):
3422 (WebCore::ContextMenuClientWin::downloadURL):
3423 (WebCore::ContextMenuClientWin::copyImageToClipboard):
3424 (WebCore::Editor::ignoreSpelling):
3425 (WebCore::Editor::learnSpelling):
3426 (WebCore::Editor::isSelectionUngrammatical):
3427 (WebCore::Editor::isSelectionMisspelled):
3428 (WebCore::Editor::guessesForMisspelledSelection):
3429 (WebCore::Editor::guessesForUngrammaticalSelection):
3430 (WebCore::Editor::markMisspellingsInAdjacentWords):
3431 (WebCore::FrameLoader::load):
3432 (WebCore::FrameWin::scheduleClose):
3433 (WebCore::FrameWin::respondToChangedSelection):
3435 2006-12-08 Sam Weinig <sam@webkit.org>
3439 Fix for http://bugs.webkit.org/show_bug.cgi?id=11777
3440 Crash when using XMLSerializer.serializeToString() on
3441 documentless, DocumentType nodes.
3443 Test: fast/dom/XMLSerializer-doctype.html
3444 Test: fast/dom/XMLSerializer-doctype2.html
3446 * dom/DOMImplementation.cpp:
3447 (WebCore::DOMImplementation::createDocument): set the document of the
3448 DocumentType node to the new document.
3449 * xml/XMLSerializer.cpp: Cleanup.
3450 (WebCore::XMLSerializer::serializeToString): now throws an exception
3451 for documentless nodes.
3452 * xml/XMLSerializer.h: cleanup
3453 * xml/XMLSerializer.idl: add exception
3455 2006-12-07 Justin Garcia <justin.garcia@apple.com>
3459 <rdar://problem/4836287>
3460 Cannot expand selection out of editable element when containing element is non-editable.
3462 * editing/Selection.cpp:
3463 (WebCore::Selection::adjustForEditableContent): Restrict the selection endpoints
3464 to the same *highest* editable root. This bug only happened when creating selections
3465 based in an editable region and extending into a higher editable root, so this change
3466 doesn't expose any new kinds of deletions, but we should start thinking about how
3467 those deletions should behave.
3468 * editing/SelectionController.cpp:
3469 (WebCore::SelectionController::selectAll): Ditto.
3471 2006-12-08 Beth Dakin <bdakin@apple.com>
3475 Add a new member variable to ContextMenuItem to hold on to the sub-
3476 menu. The new member variable is an OwnPtr<ContextMenu>
3478 * platform/ContextMenu.cpp: Because of the OwnPtr in
3479 ContextMenuItem, we have to separate the declaration of
3480 ContextMenuItems away from the calls to appendItem(). Not doing so
3481 causes a build failure because OwnPtr inherits from Noncopyable.
3482 (WebCore::createFontSubMenu): Same.
3483 (WebCore::createSpellingAndGrammarSubMenu): Same.
3484 (WebCore::createSpellingSubMenu): Same.
3485 (WebCore::createSpeechSubMenu): Same.
3486 (WebCore::createWritingDirectionSubMenu): Same.
3487 (WebCore::ContextMenu::populate): Same.
3488 * platform/ContextMenuItem.h: New member variable m_subMenu.
3489 * platform/mac/ContextMenuItemMac.mm: Take care of setting
3490 m_subMenu in addition to setting the submenu of the NSMenuItem when
3492 (WebCore::menuToArray):
3493 (WebCore::ContextMenuItem::ContextMenuItem): Same.
3494 (WebCore::ContextMenuItem::platformSubMenu): Same.
3495 (WebCore::ContextMenuItem::setSubMenu): Same.
3497 2006-12-08 MorganL <morganl.webkit@yahoo.com>
3501 http://bugs.webkit.org/show_bug.cgi?id=11778
3502 CString::data() should be documented as returning a null terminated char array
3504 * platform/CString.h:
3505 Add some basic documentation to CString.h
3507 2006-12-08 Alexey Proskuryakov <ap@webkit.org>
3511 http://bugs.webkit.org/show_bug.cgi?id=11718
3512 REGRESSION: When I mouse up after dragging a selection outside of a iframe, the iframe
3513 continues to scroll automatically.
3515 Test: manual-tests/autoscroll.html
3517 * manual-tests/autoscroll.html: Added.
3519 * page/EventHandler.cpp:
3520 (WebCore::EventHandler::handleMousePressEvent):
3521 Assign to m_mousePressNode earlier, so that it is available in the superframe as well.
3522 Reset m_mouseDownWasInSubframe to false when starting to handle a mousedown - previously, its value
3523 was only defined if the event was passed down to a widget or a subframe.
3525 (WebCore::EventHandler::stopAutoscrollTimer):
3526 If the mouse down event was in a subframe, stop the subframe's timer.
3528 2006-12-08 Alexey Proskuryakov <ap@webkit.org>
3532 http://bugs.webkit.org/show_bug.cgi?id=6275
3533 XMLHttpRequest.getResponseHeader should return a null string for non-existent headers
3535 * bindings/js/JSXMLHttpRequest.cpp:
3536 (KJS::JSXMLHttpRequestProtoFunc::callAsFunction):
3537 Convert null getResponseHeader strings to JS null, rather than undefined.
3539 2006-12-08 Alexey Proskuryakov <ap@webkit.org>
3543 http://bugs.webkit.org/show_bug.cgi?id=9854
3544 HTTP Refresh header with quotes is parsed incorrectly
3546 Test: http/tests/misc/redirect-with-quotes.php
3548 * WebCore.xcodeproj/project.pbxproj:
3549 Added HTTPParsers.{h,cpp}. I intend to move Content-Type parsing here, as well.
3552 (WebCore::Document::processHttpEquiv):
3553 * loader/FrameLoader.cpp:
3554 (WebCore::FrameLoader::receivedFirstData):
3555 Use the new implementation in HTTPHeaders.
3557 * platform/network/HTTPParsers.cpp: Added.
3558 (WebCore::skipWhiteSpace):
3559 (WebCore::parseHTTPRefresh):
3560 * platform/network/HTTPParsers.h: Added.
3561 Merged and rewrote existing implementations for better Firefox compatibility.
3563 2006-12-08 Alexey Proskuryakov <ap@webkit.org>
3567 http://bugs.webkit.org/show_bug.cgi?id=11772
3568 REGRESSION: XMLSerializer.serializeToString incorrect value for CDATA nodes
3570 Test: fast/dom/serialize-cdata.html
3572 * editing/markup.cpp:
3573 (WebCore::startMarkup): Dump CDATA sections, too.
3575 2006-12-08 Mitz Pettel <mitz@webkit.org>
3579 Deleted misplaced comment.
3581 * rendering/RenderWidget.cpp:
3583 2006-12-08 Rob Buis <buis@kde.org>
3587 http://bugs.webkit.org/show_bug.cgi?id=6074
3588 WebKit+SVG and FireFox disagree on invalid "transform" handling
3590 Test for parsing failure on transform attribute and clear the transform
3591 list upon failure to match FF behaviour.
3593 * ksvg2/svg/SVGGradientElement.cpp:
3594 (WebCore::SVGGradientElement::parseMappedAttribute):
3595 * ksvg2/svg/SVGPatternElement.cpp:
3596 (WebCore::SVGPatternElement::parseMappedAttribute):
3597 * ksvg2/svg/SVGStyledTransformableElement.cpp:
3598 (WebCore::SVGStyledTransformableElement::parseMappedAttribute):
3599 * ksvg2/svg/SVGTextElement.cpp:
3600 (WebCore::SVGTextElement::parseMappedAttribute):
3601 * ksvg2/svg/SVGTransformable.cpp:
3602 (WebCore::SVGTransformable::parseTransformAttribute):
3603 * ksvg2/svg/SVGTransformable.h:
3605 2006-12-07 Geoffrey Garen <ggaren@apple.com>
3607 Reviewed by Beth Dakin.
3609 Fixed <rdar://problem/4870551> 9A320: <input type="text"> no longer
3610 dispatches onchange event in response to enter key
3612 To match our old behavior and FF, we need to dispatch onchange in response to the
3613 ENTER key. The strategy here is just to dispatch a blur event, since that's how
3614 the search field always worked, and the DOM spec says onchange only fires
3615 as a precursor to blur.
3618 * html/HTMLInputElement.cpp:
3619 (WebCore::HTMLInputElement::defaultEventHandler):
3621 2006-12-07 Adam Roben <aroben@apple.com>
3625 Some small context menu-related fixes.
3627 * html/HTMLFrameSetElement.cpp:
3628 (WebCore::HTMLFrameSetElement::defaultEventHandler): Don't try to
3629 resize on a contextmenuEvent.
3630 * html/HTMLInputElement.cpp:
3631 (WebCore::HTMLInputElement::defaultEventHandler): Only pass the event
3632 off to HTMLGenericFormElement if we haven't handled it.
3634 2006-12-07 Anders Carlsson <acarlsson@apple.com>
3638 <rdar://problem/4838778>
3639 Title: DashboardClient crashing in WebCore::SubresourceLoader::didFail
3641 * loader/SubresourceLoader.cpp:
3642 (WebCore::SubresourceLoader::stopLoading):
3643 * loader/SubresourceLoader.h:
3644 Add stopLoading method which currently just clears the client. This isn't the ideal fix,
3645 since it doesn't actually stop the load.
3647 * loader/mac/SubresourceLoaderMac.mm:
3648 (WebCore::SubresourceLoader::willSendRequest):
3649 (WebCore::SubresourceLoader::didReceiveResponse):
3650 (WebCore::SubresourceLoader::didReceiveData):
3651 (WebCore::SubresourceLoader::didFinishLoading):
3652 (WebCore::SubresourceLoader::didFail):
3653 (WebCore::SubresourceLoader::didCancel):
3656 * xml/xmlhttprequest.cpp:
3657 (WebCore::XMLHttpRequest::abort):
3660 2006-12-07 Kevin McCullough <kmccullough@apple.com>
3664 - added the ability to set the auto repeating variable to force a keyPressed
3665 event from a keyDown event.
3667 * platform/PlatformKeyboardEvent.h:
3668 (WebCore::PlatformKeyboardEvent::setIsAutoRepeat):
3670 2006-12-07 Don Gibson <dgibson77@gmail.com>
3674 http://bugs.webkit.org/show_bug.cgi?id=11749
3675 Don't call updateThumbProportion() unnecessarily.
3677 * platform/ScrollBar.cpp:
3678 (WebCore::Scrollbar::setProportion):
3680 2006-12-07 Beth Dakin <bdakin@apple.com>
3684 Fixes "Open in new Window" item in WebCore ContextMenus. It wasn't
3685 doing anything before, and now it works! Also some formatting
3688 * page/ContextMenuClient.h: Several of the parameters to several of
3689 the functions here should be const or const references. And now
3691 * page/ContextMenuController.cpp:
3692 (WebCore::openNewWindow): Moved the open new window functionality
3693 into a helper function since it is used by several menu item tags.
3694 Now after calling chrome()->createWindow() we call chrome()->show()
3695 on the new window, and so it appears!
3696 (WebCore::ContextMenuController::contextMenuItemSelected): Call new
3697 openNewWindow function to do the right thing. Shift some
3698 formatting, use local variable for HitTestResult. Implement action
3699 for ContextMenuItemTagOpenLink.
3701 2006-12-06 Kevin McCullough <KMcCullough@apple.com>
3705 - Removed a conflict marker
3709 2006-12-06 Justin Garcia <justin.garcia@apple.com>
3713 <rdar://problem/4818134>
3714 Crash in WebCore::selectRange when invoking WebView:insertNewLine in any empty content editable DIV.
3716 * WebCore.vcproj/WebCore/WebCore.vcproj: Removed RebalanceWhitespaceCommand.*.
3717 * editing/visible_units.cpp:
3718 (WebCore::startOfLine): There are VisiblePositions at offset 0 in blocks without
3719 RootInlineBoxes, like empty editable blocks and bordered blocks.
3720 (WebCore::endOfLine): Ditto.
3722 2006-12-06 Kevin McCullough <KMcCullough@apple.com>
3726 - Removed a conflict marker
3730 2006-12-06 Justin Garcia <justin.garcia@apple.com>
3734 <rdar://problem/4854869>
3735 Inserting a new line in a contenteditable=true SPAN whose parent is a DIV asserts
3737 * editing/htmlediting.cpp:
3738 (WebCore::enclosingBlock): Use enclosingNodeWithType to prevent escape
3739 from editable content.
3740 * editing/markup.cpp:
3741 (WebCore::createMarkup): A null commonAncestorBlock will happen
3742 if commonAncestor is inside an inline editable root that doesn't
3743 contain any blocks. Removed an early return for this case: the
3744 code below the early return can and must handle it.
3746 2006-12-06 Timothy Hatcher <timothy@apple.com>
3748 Reviewed by Mark Rowe.
3750 <rdar://problem/4843505> Fix cross-library ivar use for 64-bit Objective-C
3752 Adds a new WebCore.LP64.exp file that gets appended to the normal export file.
3753 This new file will have 64-bit only symbols we need to export.
3755 * WebCore.LP64.exp: Added.
3756 * WebCore.xcodeproj/project.pbxproj:
3758 2006-12-06 Anders Carlsson <acarlsson@apple.com>
3762 Change SubresourceLoader to use a ResourceHandle, and change ResourceHandle to use a NSURLConnection.
3764 * loader/ResourceLoader.h:
3765 * loader/SubresourceLoader.cpp:
3766 (WebCore::SubresourceLoader::create):
3767 (WebCore::SubresourceLoader::didReceiveData):
3768 (WebCore::SubresourceLoader::didFinishLoading):
3769 (WebCore::SubresourceLoader::didFail):
3770 * loader/SubresourceLoader.h:
3771 (WebCore::SubresourceLoader::didReceiveAuthenticationChallenge):
3772 (WebCore::SubresourceLoader::didCancelAuthenticationChallenge):
3773 (WebCore::SubresourceLoader::willStopBufferingData):
3774 (WebCore::SubresourceLoader::willCacheResponse):
3775 (WebCore::SubresourceLoader::receivedCredential):
3776 (WebCore::SubresourceLoader::receivedRequestToContinueWithoutCredential):
3777 (WebCore::SubresourceLoader::receivedCancellation):
3778 * loader/SubresourceLoaderClient.h:
3779 (WebCore::SubresourceLoaderClient::didFail):
3780 * loader/icon/IconLoader.cpp:
3781 (WebCore::IconLoader::didFail):
3782 * loader/icon/IconLoader.h:
3783 * loader/loader.cpp:
3784 (WebCore::Loader::didFail):
3786 * loader/mac/ResourceLoaderMac.mm:
3787 (WebCore::ResourceLoader::ResourceLoader):
3788 (WebCore::ResourceLoader::addData):
3789 (WebCore::ResourceLoader::resourceData):
3790 * loader/mac/SubresourceLoaderMac.mm:
3791 (WebCore::SubresourceLoader::SubresourceLoader):
3792 (WebCore::SubresourceLoader::setDefersLoading):
3793 (WebCore::SubresourceLoader::resourceData):
3794 (WebCore::SubresourceLoader::load):
3795 (WebCore::SubresourceLoader::create):
3796 (WebCore::SubresourceLoader::willSendRequest):
3797 (WebCore::SubresourceLoader::didReceiveResponse):
3798 (WebCore::SubresourceLoader::didReceiveData):
3799 (WebCore::SubresourceLoader::didFinishLoading):
3800 (WebCore::SubresourceLoader::didFail):
3801 (WebCore::SubresourceLoader::didCancel):
3802 * platform/network/ResourceHandle.cpp:
3803 (WebCore::ResourceHandle::ResourceHandle):
3804 (WebCore::ResourceHandle::create):
3805 * platform/network/ResourceHandle.h:
3806 * platform/network/ResourceHandleClient.h:
3807 (WebCore::ResourceHandleClient::didReceiveData):
3808 (WebCore::ResourceHandleClient::didFail):
3809 (WebCore::ResourceHandleClient::didReceiveAuthenticationChallenge):
3810 (WebCore::ResourceHandleClient::didCancelAuthenticationChallenge):
3811 (WebCore::ResourceHandleClient::willStopBufferingData):
3812 (WebCore::ResourceHandleClient::willCacheResponse):
3813 (WebCore::ResourceHandleClient::receivedCredential):
3814 (WebCore::ResourceHandleClient::receivedRequestToContinueWithoutCredential):
3815 (WebCore::ResourceHandleClient::receivedCancellation):
3816 * platform/network/ResourceHandleInternal.h:
3817 (WebCore::ResourceHandleInternal::ResourceHandleInternal):
3818 * platform/network/mac/ResourceHandleMac.mm:
3819 (WebCore::ResourceHandle::~ResourceHandle):
3820 (WebCore::ResourceHandle::start):
3821 (WebCore::ResourceHandle::cancel):
3822 (WebCore::ResourceHandle::setDefersLoading):
3823 (WebCore::ResourceHandle::delegate):
3824 (WebCore::ResourceHandle::releaseDelegate):
3825 (WebCore::ResourceHandle::supportsBufferedData):
3826 (WebCore::ResourceHandle::bufferedData):
3827 (-[WebCoreResourceHandleAsDelegate initWithHandle:]):
3828 (-[WebCoreResourceHandleAsDelegate detachHandle]):
3829 (-[WebCoreResourceHandleAsDelegate connection:willSendRequest:redirectResponse:]):
3830 (-[WebCoreResourceHandleAsDelegate connection:didReceiveAuthenticationChallenge:]):
3831 (-[WebCoreResourceHandleAsDelegate connection:didCancelAuthenticationChallenge:]):
3832 (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]):
3833 (-[WebCoreResourceHandleAsDelegate connection:didReceiveData:lengthReceived:]):
3834 (-[WebCoreResourceHandleAsDelegate connection:willStopBufferingData:]):
3835 (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]):
3836 (-[WebCoreResourceHandleAsDelegate connection:didFailWithError:]):
3837 (-[WebCoreResourceHandleAsDelegate connection:willCacheResponse:]):
3838 (-[WebCoreResourceHandleAsDelegate useCredential:forAuthenticationChallenge:]):
3839 (-[WebCoreResourceHandleAsDelegate continueWithoutCredentialForAuthenticationChallenge:]):
3840 (-[WebCoreResourceHandleAsDelegate cancelAuthenticationChallenge:]):
3841 * xml/xmlhttprequest.cpp:
3842 (WebCore::XMLHttpRequest::didFail):
3843 * xml/xmlhttprequest.h:
3845 2006-12-06 Beth Dakin <bdakin@apple.com>
3849 There are two bugs with WebCore ContextMenus due to the static
3850 ContextMenuItems. One bug is that we often crashed in
3851 NSAutoreleasePool upon quitting the browser. The other bug is that
3852 we were adding static NSMenuItems to multiple NSMenus, which is
3853 disallowed. To fix these bugs, the MenuItems are no longer static.
3854 This is in line with the current design in WebKit anyway. I made
3855 some re-arrangements in the code because I also removed the macro
3856 that was used to create the menu items since it was a bit
3859 * platform/ContextMenu.cpp:
3860 (WebCore::createFontSubMenu):
3861 (WebCore::createSpellingAndGrammarSubMenu):
3862 (WebCore::createSpellingSubMenu):
3863 (WebCore::createSpeechSubMenu):
3864 (WebCore::createWritingDirectionSubMenu):
3865 (WebCore::ContextMenu::populate):
3866 * platform/ContextMenuItem.h:
3867 * platform/mac/ContextMenuItemMac.mm:
3868 (WebCore::ContextMenuItem::ContextMenuItem): Use the NSMenuItem
3869 global separator item if we have SeparatorType.
3870 * platform/mac/ContextMenuMac.mm:
3871 (WebCore::setMenuItemTarget): Change name of getNSMenuItem since
3872 that is no longer accurate.
3873 (WebCore::ContextMenu::appendItem): Above name change.
3874 (WebCore::ContextMenu::insertItem): Same.
3876 2006-12-06 Kevin McCullough <kmccullough@apple.com>
3880 - Returned the semantic meaning of the mask to be the actual repeat count,
3881 and changed auto_repeat to correctly differnetiate between keypressed and keydown.
3883 * platform/win/KeyEventWin.cpp:
3884 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
3886 2006-12-06 Justin Garcia <justin.garcia@apple.com>
3888 Reviewed by harrison
3890 <rdar://problem/4753545>
3891 REGRESSION: Edited whitespace sequences are all nbsps (10636)
3893 * WebCore.xcodeproj/project.pbxproj: Removed RebalanceWhitespaceCommand.* from the project.
3894 * editing/CompositeEditCommand.cpp:
3895 (WebCore::isWhitespace): Moved from htmlediting.
3896 (WebCore::CompositeEditCommand::rebalanceWhitespaceAt): Moved the work that was
3897 once done in its own command here.
3898 (WebCore::CompositeEditCommand::prepareWhitespaceAtPositionForSplit): Prevents
3899 whitespace around a position from collapsing when it's pushed apart during Paste.
3900 This function can eventually be deployed to eliminate the need for leading/trailing
3901 whitespace handling in InsertParagraphSeparator, InsertLineBreak, Delete, and BreakBlockquote.
3902 (WebCore::CompositeEditCommand::rebalanceWhitespace): Cleaned up.
3903 * editing/CompositeEditCommand.h:
3904 * editing/DeleteSelectionCommand.cpp:
3905 (WebCore::DeleteSelectionCommand::doApply): Do rebalanceWhitespaceAt *before*
3906 saving the typing style, because whitespace rebalancing is no longer it's own
3907 command that claims to preserve the typing style.
3908 * editing/RebalanceWhitespaceCommand.cpp: Removed.
3909 * editing/RebalanceWhitespaceCommand.h: Removed.
3910 * editing/ReplaceSelectionCommand.cpp:
3911 (WebCore::ReplaceSelectionCommand::doApply): Moved the code to prepare whitespace
3912 arond a position for being pushed aparat to its own method.
3913 * editing/htmlediting.cpp:
3914 (WebCore::stringWithRebalancedWhitespace): Added. Returns a rebalanced string.
3915 Takes in whether or not the beginning of that string will be at the start of
3916 a paragraph, because a space at such a position must have be nbsp, even if
3917 that doesn't follow the nbsp/space pattern used. Similar stuff for the end
3919 * editing/htmlediting.h:
3920 * editing/markup.cpp:
3921 (WebCore::fillContainerFromString): Call stringWithRelabacedWhitespace. Pass
3922 it the startOfParagraph/endOfParagraph bools.
3924 2006-12-05 John Sullivan <sullivan@apple.com>
3928 Moved spelling and grammar code from Frame to Editor
3931 updated for these changes
3934 removed declarations of spelling and grammar functions
3936 * bridge/mac/FrameMac.h:
3937 removed declarations of spelling and grammar functions
3939 * bridge/mac/FrameMac.mm:
3940 moved implementation of spelling and grammar functions from here
3941 (WebCore::FrameMac::respondToChangedSelection):
3942 updated for moved functions
3945 moved declarations of spelling and grammar functions to here
3947 * editing/mac/EditorMac.mm:
3948 moved implementation of spelling and grammar functions to here; changed
3949 only to make it compile (e.g. removing "editor()->" and adding "frame()->"
3951 (WebCore::findFirstMisspellingInRange):
3952 (WebCore::paragraphAlignedRangeForRange):
3953 (WebCore::findFirstGrammarDetailInRange):
3954 (WebCore::findFirstBadGrammarInRange):
3955 (WebCore::Editor::advanceToNextMisspelling):
3956 (WebCore::Editor::isSelectionMisspelled):
3957 (WebCore::isRangeUngrammatical):
3958 (WebCore::Editor::isSelectionUngrammatical):
3959 (WebCore::Editor::guessesForUngrammaticalSelection):
3961 (WebCore::Editor::guessesForMisspelledSelection):
3962 (WebCore::Editor::markMisspellingsInAdjacentWords):
3963 (WebCore::markAllMisspellingsInRange):
3964 (WebCore::markAllBadGrammarInRange):
3965 (WebCore::Editor::markMisspellings):
3967 * platform/ContextMenu.cpp:
3968 (WebCore::ContextMenu::populate):
3969 updated for moved functions
3971 * editing/TypingCommand.cpp:
3972 (WebCore::TypingCommand::markMisspellingsAfterTyping):
3973 updated for moved functions
3975 2006-12-05 Anders Carlsson <acarlsson@apple.com>
3979 General cleanup, get rid of PlatformResponse (we have ResourceResponse now)
3980 and remove a couple of functions that were unused.
3982 * loader/CachedResource.h:
3983 * loader/LoaderFunctions.h:
3984 * loader/mac/LoaderFunctionsMac.mm:
3985 * platform/network/ResourceHandle.h:
3986 * platform/network/ResourceHandleClient.h:
3987 * platform/network/mac/ResourceHandleMac.mm:
3988 (WebCore::ResourceHandle::~ResourceHandle):
3990 2006-12-05 Kevin McCullough <kmccullough@apple.com>
3994 - keydown is now a keydown event instead of a keypress event.
3995 Fixes some form submission oddities.
3997 * platform/win/KeyEventWin.cpp:
3999 2006-12-05 John Sullivan <sullivan@apple.com>
4003 * editing/mac/EditorMac.mm:
4004 declare -[NSSpellChecker learnWord:], on Tiger only (it's API on Leopard)
4006 2006-12-05 John Sullivan <sullivan@apple.com>
4008 Reviewed by Geoff Garen
4011 remove declarations of ignoreSpelling() and learnSpelling()
4013 * bridge/mac/FrameMac.h:
4014 remove declarations of ignoreSpelling() and learnSpelling()
4015 * bridge/mac/FrameMac.mm:
4016 moved implementations of ignoreSpelling() and learnSpelling() from here
4019 added declarations of ignoreSpelling() and learnSpelling()
4021 * editing/mac/EditorMac.mm:
4022 (WebCore::Editor::ignoreSpelling):
4023 moved here from FrameMac.mm
4024 (WebCore::Editor::learnSpelling):
4027 * page/ContextMenuController.cpp:
4028 (WebCore::ContextMenuController::contextMenuItemSelected):
4029 updated callers to use frame()->editor() rather than frame()
4031 2006-12-05 John Sullivan <sullivan@apple.com>
4035 New context-menu mechanism fix for:
4036 <rdar://problem/4864351> Should leave out "No Guesses Found" from context menu for bad grammar
4038 * platform/ContextMenu.cpp:
4039 (WebCore::ContextMenu::populate):
4040 Leave out "No Guesses Found" and separator for grammar-checking case.
4042 2006-12-05 Rob Buis <buis@kde.org>
4046 http://bugs.webkit.org/show_bug.cgi?id=11686
4047 WebKit draws Carto.net tabgroup example completely incorrectly (ff does fine)
4049 Make sure the SVG render objects are laid out before measuring their
4050 dimensions using relativeBBox.
4052 * ksvg2/svg/SVGLocatable.cpp:
4053 (WebCore::SVGLocatable::getBBox):
4055 2006-12-05 John Sullivan <sullivan@apple.com>
4059 Grammar/Spelling code re-homing, baby step one: put isGrammarCheckingEnabled in Editor
4060 since that's where isContinousSpellCheckingEnabled lives.
4063 * editing/Editor.cpp:
4064 (WebCore::Editor::isGrammarCheckingEnabled):
4065 new method, calls through to client a la isContinuousSpellCheckingEnabled
4067 * bridge/mac/FrameMac.mm:
4068 (WebCore::FrameMac::advanceToNextMisspelling):
4069 call editor() rather than editor()->client()
4070 (WebCore::FrameMac::markMisspellings):
4073 * platform/ContextMenu.cpp:
4074 (WebCore::ContextMenu::populate):
4077 2006-12-05 Darin Adler <darin@apple.com>
4083 * html/HTMLInputElement.h: Removed unneeded includes of RenderObject.h
4085 * html/HTMLSelectElement.h: Removed unneeded include of RenderStyle.h.
4086 * ksvg2/svg/SVGStyledElement.h: Removed unneeded include of RenderStyle.h.
4088 * ksvg2/svg/SVGSVGElement.h: Remove unneeded parameter to createSVGPoint.
4089 * ksvg2/svg/SVGSVGElement.cpp: (WebCore::SVGSVGElement::createSVGPoint):
4092 * ksvg2/scripts/generateJSBindings.pl: Removed unused script.
4094 2006-12-05 Darin Adler <darin@apple.com>
4096 * doc: Removed empty directory. It's not clear this is a good place for
4097 documentation, so lets add it back later if we actually start using it.
4099 2006-12-05 Anders Carlsson <acarlsson@apple.com>
4101 Reviewed by Brady, Darin.
4103 * loader/loader.cpp:
4104 (WebCore::Loader::receivedAllData):
4105 Remove ref() call that was left around by mistake.
4107 2006-12-05 Sam Weinig <sam@webkit.org>
4111 Fix for http://bugs.webkit.org/show_bug.cgi?id=11758
4112 Don't compile custom SVG and XSLT bindings in non-svg build
4114 * bindings/js/JSSVGNumber.cpp:
4115 * bindings/js/JSSVGNumber.h:
4116 * bindings/js/JSSVGPoint.cpp:
4117 * bindings/js/JSSVGPoint.h:
4118 * bindings/js/JSSVGRect.cpp:
4119 * bindings/js/JSSVGRect.h:
4120 * bindings/js/JSXSLTProcessor.cpp:
4121 * bindings/js/JSXSLTProcessor.h:
4123 2006-12-04 John Sullivan <sullivan@apple.com>
4127 WebCore part of fix for:
4128 <rdar://problem/4817188> Context menu for bad grammar should include suggestions and "Ignore Grammar"
4130 The context menu mechanism is currently in flux; the old mechanism is still in place, but an
4131 up-and-coming new mechanism is waiting in the wings. I updated both of them, but couldn't
4132 test the new mechanism because it doesn't work well enough yet. Also, some of this code
4133 should move from Frame to Editor, but that will wait for another checkin.
4136 added pure virtual function declarations for isSelectionUngrammatical() and guessesForUngrammaticalSelection()
4138 * bridge/mac/FrameMac.h:
4139 added virtual functions declarations for isSelectionUngrammatical() and guessesForUngrammaticalSelection()
4141 * bridge/mac/FrameMac.mm:
4142 (WebCore::FrameMac::isSelectionMisspelled):
4143 now updates spelling panel (whether or not it's showing), since this is now needed to make -[NSSSpellChecker
4144 ignoreWord:inSpellDocumentWithTag:] work correctly
4145 (WebCore::isRangeUngrammatical):
4146 new function, helper used by both isSelectionUngrammatical() and guessesForUngrammaticalSelection()
4147 (WebCore::FrameMac::isSelectionUngrammatical):
4148 new function, calls isRangeUngrammatical
4149 (WebCore::FrameMac::guessesForUngrammaticalSelection):
4152 * platform/ContextMenu.cpp:
4153 (WebCore::ContextMenu::populate):
4154 now considers bad grammar as well as misspellings
4156 * platform/ContextMenuItem.h:
4157 added ContextMenuItemTagIgnoreGrammar
4159 2006-12-05 Kirby White <KWhiteRight@gmail.com>
4161 Reviewed, tweaked and landed by Alexey.
4163 <http://bugs.webkit.org/show_bug.cgi?id=11639> Form buttons don't look different when clicked
4165 * rendering/RenderThemeWin.cpp:
4166 (WebCore::RenderThemeWin::determineState): Moved test for active
4167 state before test for hover state, since active should override hover
4170 * platform/gdk/RenderThemeGdk.cpp:
4171 (WebCore::RenderThemeGdk::determineState): Same fix.
4173 2006-12-05 Kirby White <KWhiteRight@gmail.com>
4175 Reviewed and landed by Alexey.
4177 http://bugs.webkit.org/show_bug.cgi?id=11681
4178 Don't select the first option when resetting a listbox-style form
4179 control (i.e., a multi-select control or one with size > 1) that
4180 has no default selection.
4182 Test: fast/dom/HTMLSelectElement/listbox-select-reset.html
4184 * html/HTMLSelectElement.cpp:
4185 (WebCore::HTMLSelectElement::reset):
4187 2006-12-05 Lars Naesbye Christensen <larsnaesbye@stud.ku.dk>
4189 Reviewed and landed by Alexey.
4191 http://bugs.webkit.org/show_bug.cgi?id=11752
4192 [CSS 3] missing support for cursor selector 'copy'
4194 * Resources/copyCursor.png: Added.
4195 * WebCore.xcodeproj/project.pbxproj:
4196 * css/CSSComputedStyleDeclaration.cpp:
4197 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
4198 * css/CSSValueKeywords.in:
4199 * manual-tests/cursor.html:
4200 * page/EventHandler.cpp:
4201 (WebCore::selectCursor):
4202 * platform/Cursor.h:
4203 * platform/mac/CursorMac.mm:
4204 (WebCore::copyCursor):
4205 * rendering/RenderStyle.h:
4208 2006-12-04 Beth Dakin <bdakin@apple.com>
4212 Fix from last check-in. This line was badbad.
4214 * platform/mac/ContextMenuMac.mm:
4215 (WebCore::ContextMenu::~ContextMenu):
4217 2006-12-04 Beth Dakin <bdakin@apple.com>
4221 With the new changes to ContextMenuItems, WebCore context menus