1 2009-01-23 Darin Fisher <darin@chromium.org>
3 Reviewed by Eric Seidel.
5 https://bugs.webkit.org/show_bug.cgi?id=23506
6 Copy existing image-decoders in preparation for landing Skia changes on top.
8 * platform/image-decoders/skia: Added.
9 * platform/image-decoders/skia/GIFImageDecoder.cpp: Copied from platform/image-decoders/gif/GIFImageDecoder.cpp.
10 * platform/image-decoders/skia/GIFImageDecoder.h: Copied from platform/image-decoders/gif/GIFImageDecoder.h.
11 * platform/image-decoders/skia/GIFImageReader.cpp: Copied from platform/image-decoders/gif/GIFImageReader.cpp.
12 * platform/image-decoders/skia/GIFImageReader.h: Copied from platform/image-decoders/gif/GIFImageReader.h.
13 * platform/image-decoders/skia/JPEGImageDecoder.cpp: Copied from platform/image-decoders/jpeg/JPEGImageDecoder.cpp.
14 * platform/image-decoders/skia/JPEGImageDecoder.h: Copied from platform/image-decoders/jpeg/JPEGImageDecoder.h.
15 * platform/image-decoders/skia/PNGImageDecoder.cpp: Copied from platform/image-decoders/png/PNGImageDecoder.cpp.
16 * platform/image-decoders/skia/PNGImageDecoder.h: Copied from platform/image-decoders/png/PNGImageDecoder.h.
18 2009-01-23 Holger Freyther <zecke@selfish.org>
22 Based on https://bugs.webkit.org/show_bug.cgi?id=23498
23 from craig.schlenter@gmail.com
25 * platform/gtk/RenderThemeGtk.cpp:
26 (WebCore::RenderThemeGtk::baselinePosition):
28 2009-01-23 David Levin <levin@chromium.org>
30 Reviewed by Alexey Proskuryakov.
32 Bug 22720: Make XMLHttpRequest work in Workers
33 <https://bugs.webkit.org/show_bug.cgi?id=22720>
35 Add copy/adopt for ResourceResponse(Base)/ResourceRequest(Base) to allow the
36 data to be passed across threads.
38 No observable change in behavior, so no test.
40 * platform/network/FormData.cpp:
41 (WebCore::FormData::deepCopy):
42 * platform/network/FormData.h:
43 * platform/network/HTTPHeaderMap.cpp:
44 (WebCore::HTTPHeaderMap::copyData):
45 (WebCore::HTTPHeaderMap::adopt):
46 * platform/network/HTTPHeaderMap.h:
47 * platform/network/ResourceRequestBase.cpp:
48 (WebCore::ResourceRequestBase::adopt):
49 (WebCore::ResourceRequestBase::copyData):
50 * platform/network/ResourceRequestBase.h:
51 * platform/network/ResourceResponseBase.cpp:
52 (WebCore::ResourceResponseBase::adopt):
53 (WebCore::ResourceResponseBase::copyData):
54 * platform/network/ResourceResponseBase.h:
56 2009-01-23 Dmitry Titov <dimich@chromium.org>
58 Reviewed by Alexey Proskuryakov.
60 https://bugs.webkit.org/show_bug.cgi?id=23374
61 Add WorkerRunLoop to encapsulate message queue and timer heap.
62 This is first half (timer heap is added as separate patch).
64 * GNUmakefile.am: Added WorkerRunLoop.cpp to the build.
65 * WebCore.vcproj/WebCore.vcproj: Same as above.
66 * WebCore.xcodeproj/project.pbxproj: Same as above
67 * dom/WorkerContext.cpp:
68 (WebCore::WorkerContext::postTask):
69 * dom/WorkerContext.h:
70 * dom/WorkerMessagingProxy.cpp:
71 (WebCore::WorkerMessagingProxy::postMessageToWorkerContext):
72 (WebCore::WorkerMessagingProxy::workerThreadCreated):
73 * dom/WorkerRunLoop.cpp: Added.
74 (WebCore::WorkerRunLoop::run): Runs the loop until terminate() is called.
75 (WebCore::WorkerRunLoop::terminate): Causes the loop to exit.
76 (WebCore::WorkerRunLoop::postTask): Adds a task to the internal queue.
77 * dom/WorkerRunLoop.h: Added.
78 (WebCore::WorkerRunLoop::WorkerRunLoop):
79 * dom/WorkerThread.cpp:
80 (WebCore::WorkerThread::workerThread):
81 (WebCore::WorkerThread::stop):
83 (WebCore::WorkerThread::runLoop):
85 2009-01-23 Adam Treat <adam.treat@torchmobile.com>
87 Reviewed by Holger Hans Peter Freyther.
89 Redo previous patch http://trac.webkit.org/changeset/34260 which fixes a
90 huge memory leak by ensuring that the timer is fired one last time on
91 application tear down thus triggering the GCController thereby freeing
92 JavaScript objects as well as triggering other timer based tear down methods.
94 * platform/qt/SharedTimerQt.cpp:
95 (WebCore::SharedTimerQt::~SharedTimerQt):
97 2009-01-23 Alexey Proskuryakov <ap@webkit.org>
99 Reviewed by Oliver Hunt.
101 https://bugs.webkit.org/show_bug.cgi?id=23459
102 Workers are not properly terminated if execution hasn't begun yet
104 Doesn't affect observable behavior, so test case is not possible.
106 * dom/WorkerThread.cpp: (WebCore::WorkerThread::workerThread): Call forbidExecution() if
107 it couldn't be called earlier.
109 2009-01-23 Ariya Hidayat <ariya.hidayat@trolltech.com>
111 [Qt] Fix the build after RenderBox refactoring in r40153.
113 * platform/qt/RenderThemeQt.cpp:
114 (WebCore::RenderThemeQt::baselinePosition):
116 2009-01-23 Ariya Hidayat <ariya.hidayat@trolltech.com>
118 Rubber-stamped by Alexey Proskuryakov.
120 Fix the build after RenderBox refactoring in r40153.
122 * plugins/PluginView.cpp:
123 (WebCore::PluginView::invalidateWindowlessPluginRect):
125 2009-01-23 Ariya Hidayat <ariya.hidayat@trolltech.com>
127 Reviewed by Simon Hausmann.
129 [Qt] Simplify the assertion.
131 * platform/graphics/qt/GraphicsContextQt.cpp:
132 (WebCore::GraphicsContext::getWindowsContext):
133 (WebCore::GraphicsContext::releaseWindowsContext):
135 2009-01-22 David Hyatt <hyatt@apple.com>
137 Move the border and padding methods from RenderObject to RenderBox.
139 Reviewed by Oliver Hunt
141 * css/CSSComputedStyleDeclaration.cpp:
142 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
143 * editing/DeleteButtonController.cpp:
144 (WebCore::DeleteButtonController::createDeletionUI):
145 * page/EventHandler.cpp:
146 (WebCore::EventHandler::hitTestResultAtPoint):
147 * rendering/InlineFlowBox.cpp:
148 (WebCore::InlineFlowBox::placeBoxesVertically):
149 * rendering/InlineFlowBox.h:
150 (WebCore::InlineFlowBox::borderLeft):
151 (WebCore::InlineFlowBox::borderRight):
152 (WebCore::InlineFlowBox::paddingLeft):
153 (WebCore::InlineFlowBox::paddingRight):
154 * rendering/RenderBlock.cpp:
155 (WebCore::RenderBlock::clearFloats):
156 * rendering/RenderBox.cpp:
157 (WebCore::RenderBox::paddingTop):
158 (WebCore::RenderBox::paddingBottom):
159 (WebCore::RenderBox::paddingLeft):
160 (WebCore::RenderBox::paddingRight):
161 (WebCore::RenderBox::calcHeight):
162 (WebCore::RenderBox::containingBlockWidthForPositioned):
163 (WebCore::RenderBox::containingBlockHeightForPositioned):
164 (WebCore::RenderBox::calcAbsoluteHorizontal):
165 (WebCore::RenderBox::calcAbsoluteHorizontalValues):
166 (WebCore::RenderBox::calcAbsoluteVertical):
167 (WebCore::RenderBox::calcAbsoluteVerticalValues):
168 (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
169 (WebCore::RenderBox::calcAbsoluteVerticalReplaced):
170 * rendering/RenderBox.h:
171 (WebCore::RenderBox::borderTop):
172 (WebCore::RenderBox::borderBottom):
173 (WebCore::RenderBox::borderLeft):
174 (WebCore::RenderBox::borderRight):
175 * rendering/RenderObject.cpp:
176 (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
177 * rendering/RenderObject.h:
178 * rendering/RenderTextControl.cpp:
179 (WebCore::RenderTextControl::textBlockWidth):
180 (WebCore::RenderTextControl::calcHeight):
181 (WebCore::RenderTextControl::calcPrefWidths):
182 * rendering/RenderTextControlSingleLine.cpp:
183 (WebCore::RenderTextControlSingleLine::preferredContentWidth):
184 * rendering/RenderTreeAsText.cpp:
185 (WebCore::operator<<):
186 * rendering/RenderView.cpp:
187 (WebCore::RenderView::repaintViewRectangle):
189 2009-01-22 David Hyatt <hyatt@apple.com>
191 Devirtualize the marginTop/Right/Left/Bottom functions and move them to RenderBox (along with some of the
192 other margin functions that have to come along for the ride).
194 Reviewed by Oliver Hunt
196 * css/CSSComputedStyleDeclaration.cpp:
197 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
198 * editing/TextIterator.cpp:
199 (WebCore::shouldEmitExtraNewlineForNode):
200 * rendering/InlineBox.cpp:
201 * rendering/InlineBox.h:
202 (WebCore::InlineBox::renderBox):
203 * rendering/InlineFlowBox.cpp:
204 (WebCore::InlineFlowBox::marginLeft):
205 (WebCore::InlineFlowBox::marginRight):
206 (WebCore::InlineFlowBox::placeBoxesHorizontally):
207 (WebCore::InlineFlowBox::computeLogicalBoxHeights):
208 (WebCore::InlineFlowBox::placeBoxesVertically):
209 (WebCore::InlineFlowBox::shrinkBoxesWithNoTextChildren):
210 * rendering/RenderBlock.cpp:
211 (WebCore::RenderBlock::isSelfCollapsingBlock):
212 (WebCore::RenderBlock::adjustPositionedBlock):
213 (WebCore::RenderBlock::handleCompactChild):
214 (WebCore::RenderBlock::estimateVerticalPosition):
215 (WebCore::getBorderPaddingMargin):
216 (WebCore::RenderBlock::calcInlinePrefWidths):
217 * rendering/RenderBlock.h:
218 * rendering/RenderBox.cpp:
219 (WebCore::RenderBox::calcHeight):
220 * rendering/RenderBox.h:
221 (WebCore::RenderBox::hasHorizontalBordersPaddingOrMargin):
222 (WebCore::RenderBox::hasHorizontalBordersOrPadding):
223 (WebCore::RenderBox::marginTop):
224 (WebCore::RenderBox::marginBottom):
225 (WebCore::RenderBox::marginLeft):
226 (WebCore::RenderBox::marginRight):
227 (WebCore::RenderBox::isSelfCollapsingBlock):
228 (WebCore::RenderBox::collapsedMarginTop):
229 (WebCore::RenderBox::collapsedMarginBottom):
230 (WebCore::RenderBox::isTopMarginQuirk):
231 (WebCore::RenderBox::isBottomMarginQuirk):
232 (WebCore::RenderBox::maxTopMargin):
233 (WebCore::RenderBox::maxBottomMargin):
234 * rendering/RenderObject.cpp:
235 (WebCore::RenderObject::getAbsoluteRepaintRectWithOutline):
236 * rendering/RenderObject.h:
237 * rendering/RenderSVGContainer.cpp:
238 (WebCore::RenderSVGContainer::lineHeight):
239 (WebCore::RenderSVGContainer::baselinePosition):
240 * rendering/RenderTextControl.cpp:
241 (WebCore::RenderTextControl::calcHeight):
242 * rendering/RenderTheme.cpp:
243 (WebCore::RenderTheme::baselinePosition):
244 * rendering/bidi.cpp:
245 (WebCore::getBorderPaddingMargin):
246 (WebCore::inlineWidth):
247 (WebCore::RenderBlock::computeHorizontalPositionsForLine):
248 (WebCore::inlineFlowRequiresLineBox):
249 (WebCore::requiresLineBox):
250 (WebCore::RenderBlock::findNextLineBreak):
252 2009-01-22 Mark Rowe <mrowe@apple.com>
254 Rubber-stamped by Anders Carlsson.
256 Disable GCC_WARN_ABOUT_MISSING_PROTOTYPES temporarily.
258 Current versions of Xcode only respect it for C and Objective-C files,
259 and our code doesn't currently compile if it is applied to C++ and
262 * Configurations/Base.xcconfig:
264 2009-01-22 David Hyatt <hyatt@apple.com>
266 Move the m_widthChanged bit on RenderTableCell into RenderFlow's set of bits. Let intrinsicPaddingTop and
267 intrinsicPaddingBottom just be normal non-bitfield values.
269 Reviewed by Oliver Hunt
271 * rendering/RenderFlow.h:
272 (WebCore::RenderFlow::RenderFlow):
273 * rendering/RenderTableCell.cpp:
274 (WebCore::RenderTableCell::RenderTableCell):
275 (WebCore::RenderTableCell::updateWidth):
276 (WebCore::RenderTableCell::layout):
277 * rendering/RenderTableCell.h:
279 2009-01-22 David Hyatt <hyatt@apple.com>
281 Properly encapsulate m_frameRect.y() behind the RenderBox::y() method now that they are the same thing.
282 Make m_frameRect private.
284 Reviewed by Oliver Hunt
286 * rendering/RenderBlock.cpp:
287 (WebCore::RenderBlock::paint):
288 (WebCore::RenderBlock::clearFloats):
289 * rendering/RenderBox.cpp:
290 (WebCore::RenderBox::offsetTop):
291 (WebCore::RenderBox::nodeAtPoint):
292 (WebCore::RenderBox::paint):
293 (WebCore::RenderBox::paintCustomHighlight):
294 (WebCore::RenderBox::containingBlockWidth):
295 (WebCore::RenderBox::localToAbsolute):
296 (WebCore::RenderBox::offsetFromContainer):
297 (WebCore::RenderBox::computeAbsoluteRepaintRect):
298 (WebCore::RenderBox::repaintDuringLayoutIfMoved):
299 * rendering/RenderContainer.cpp:
300 (WebCore::RenderContainer::layout):
301 * rendering/RenderFlexibleBox.cpp:
302 (WebCore::RenderFlexibleBox::layoutBlock):
303 * rendering/RenderFrameSet.cpp:
304 (WebCore::RenderFrameSet::paint):
305 * rendering/RenderImage.cpp:
306 (WebCore::RenderImage::paintReplaced):
307 (WebCore::RenderImage::nodeAtPoint):
308 * rendering/RenderListMarker.cpp:
309 (WebCore::RenderListMarker::paint):
310 (WebCore::RenderListMarker::getRelativeMarkerRect):
311 * rendering/RenderReplaced.cpp:
312 (WebCore::RenderReplaced::paint):
313 (WebCore::RenderReplaced::shouldPaint):
314 * rendering/RenderReplica.cpp:
315 (WebCore::RenderReplica::paint):
316 * rendering/RenderSVGRoot.cpp:
317 (WebCore::RenderSVGRoot::applyContentTransforms):
318 (WebCore::RenderSVGRoot::paint):
319 (WebCore::RenderSVGRoot::absoluteTransform):
320 (WebCore::RenderSVGRoot::nodeAtPoint):
321 * rendering/RenderTable.cpp:
322 (WebCore::RenderTable::calcWidth):
323 (WebCore::RenderTable::layout):
324 * rendering/RenderTableCell.cpp:
325 (WebCore::RenderTableCell::paint):
326 (WebCore::RenderTableCell::paintBackgroundsBehindCell):
327 * rendering/RenderTableSection.cpp:
328 (WebCore::RenderTableSection::setCellWidths):
329 (WebCore::RenderTableSection::calcRowHeight):
330 (WebCore::RenderTableSection::layoutRows):
331 (WebCore::RenderTableSection::paint):
332 (WebCore::RenderTableSection::nodeAtPoint):
333 * rendering/RenderWidget.cpp:
334 (WebCore::RenderWidget::paint):
336 2009-01-22 David Hyatt <hyatt@apple.com>
338 Fix for https://bugs.webkit.org/show_bug.cgi?id=23487.
340 This patch completely reworks vertical alignment of table cells. The current system uses methods called borderTopExtra() and borderBottomExtra() to
341 add extra space above and below the content of a cell. This system was not confined to the table code and spilled out into all the other RenderObjects.
342 The y-position of the table cell box was set to the outer edge of the cell, but the y() method of RenderBox lied and added in borderTopExtra(). height()
343 also excluded the extra space, so did not accurately reflect the true size of the cell.
345 With the new system, the table cell box is completely accurate. The extra space becomes part of the padding of the cell. Padding has been reworked so that
346 additional intrinsic padding can be added on to the specified padding from style. Only the table code has to deal with the extra cell padding.
348 localToAbsoluteForContent has now been removed, since there no longer has to be a special hacked content box.
350 A number of table layout tests progress with this change, since the new layout system actually fixes existing bugs in baseline alignment of cells.
352 Reviewed by Oliver Hunt
354 * css/CSSComputedStyleDeclaration.cpp:
355 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
356 Make CSSComputedStyleDeclaration ask for padding values that exclude the built-in intrinsic padding. This ensures that getComputedStyle continues
357 to give the right answer.
359 * dom/ContainerNode.cpp:
360 (WebCore::ContainerNode::getLowerRightCorner):
361 * editing/visible_units.cpp:
362 (WebCore::previousLinePosition):
363 (WebCore::nextLinePosition):
364 * rendering/LayoutState.cpp:
365 (WebCore::LayoutState::LayoutState):
366 Remove borderTopExtra()/borderBottomExtra() hacks and localToAbsoluteForContent calls.
368 * rendering/RenderBlock.cpp:
369 (WebCore::RenderBlock::overflowRect):
370 Remove borderTopExtra()/borderBottomExtra() hacks and localToAbsoluteForContent calls.
372 (WebCore::RenderBlock::layoutBlock):
373 (WebCore::RenderBlock::expandsToEncloseOverhangingFloats):
374 The expandsToEncloseOverhangingFloats logic has been reworked. Table cells and fieldsets did not properly handle floats that spilled into the bottom padding. The
375 resulting box needed to not only expand to encompass the float, but also needed to place the full bottom padding after the float. The switch to make the extra table cell
376 space into padding exposed this issue. No extra layout test is required, since an existing table layout test exposes this issue and progresses to match Firefox with
379 (WebCore::RenderBlock::selectionGapRects):
380 (WebCore::RenderBlock::paintSelection):
381 (WebCore::RenderBlock::fillSelectionGaps):
382 (WebCore::RenderBlock::nodeAtPoint):
383 (WebCore::RenderBlock::positionForCoordinates):
384 (WebCore::RenderBlock::offsetForContents):
385 Remove borderTopExtra()/borderBottomExtra() hacks and localToAbsoluteForContent calls.
387 * rendering/RenderBlock.h:
388 Add the new simplified method for expanding to encompass overhanging floats. The method has been devirtualized and made to include all of the cases (and not just a subset).
390 * rendering/RenderBox.cpp:
391 (WebCore::RenderBox::absoluteRects):
392 (WebCore::RenderBox::absoluteQuads):
393 (WebCore::RenderBox::absoluteContentBox):
394 (WebCore::RenderBox::paintBoxDecorations):
395 (WebCore::RenderBox::paintMask):
396 (WebCore::RenderBox::getOverflowClipRect):
397 (WebCore::RenderBox::localToAbsolute):
398 (WebCore::RenderBox::absoluteToLocal):
399 (WebCore::RenderBox::localToAbsoluteQuad):
400 Remove borderTopExtra()/borderBottomExtra() hacks and localToAbsoluteForContent calls.
402 * rendering/RenderBox.h:
403 (WebCore::RenderBox::y):
404 (WebCore::RenderBox::location):
405 (WebCore::RenderBox::borderBoxRect):
406 (WebCore::RenderBox::offsetHeight):
407 Remove borderTopExtra()/borderBottomExtra() hacks and localToAbsoluteForContent calls.
409 * rendering/RenderContainer.cpp:
410 (WebCore::RenderContainer::addLineBoxRects):
411 * rendering/RenderFieldset.cpp:
412 (WebCore::RenderFieldset::paintBoxDecorations):
413 (WebCore::RenderFieldset::paintMask):
414 * rendering/RenderFieldset.h:
415 (WebCore::RenderFieldset::avoidsFloats):
416 * rendering/RenderFlow.cpp:
417 (WebCore::RenderFlow::localCaretRect):
418 * rendering/RenderLayer.cpp:
419 (WebCore::RenderLayer::updateLayerPosition):
420 (WebCore::RenderLayer::paintLayer):
421 (WebCore::RenderLayer::hitTestLayer):
422 (WebCore::RenderLayer::boundingBox):
423 * rendering/RenderListBox.cpp:
424 (WebCore::RenderListBox::isPointInOverflowControl):
425 * rendering/RenderObject.cpp:
426 (WebCore::RenderObject::localToAbsolute):
427 (WebCore::RenderObject::absoluteToLocal):
428 (WebCore::RenderObject::localToAbsoluteQuad):
429 (WebCore::RenderObject::offsetFromContainer):
430 (WebCore::RenderObject::paddingTop):
431 (WebCore::RenderObject::paddingBottom):
432 (WebCore::RenderObject::paddingLeft):
433 (WebCore::RenderObject::paddingRight):
434 * rendering/RenderObject.h:
435 (WebCore::RenderObject::hasOverhangingFloats):
436 * rendering/RenderReplaced.cpp:
437 (WebCore::RenderReplaced::selectionRect):
438 (WebCore::RenderReplaced::localSelectionRect):
439 Remove borderTopExtra()/borderBottomExtra() hacks and localToAbsoluteForContent calls. Also modifed paddingLeft/Top/Right/Bottom to take an argument indicating
440 whether or not the intrinsic padding of an object should be included (by default it is). getComputedStyle needs to exclude it, which is why this argument is
443 * rendering/RenderTableCell.cpp:
444 (WebCore::RenderTableCell::RenderTableCell):
445 (WebCore::RenderTableCell::paddingTop):
446 (WebCore::RenderTableCell::paddingBottom):
447 The new paddingTop() and paddingBottom() methods on table cells include the extra intrinsic padding.
449 (WebCore::RenderTableCell::setOverrideSize):
450 When a table's override size gets altered, the intrinsic padding needs to be cleared.
452 (WebCore::RenderTableCell::absoluteClippedOverflowRect):
453 (WebCore::RenderTableCell::computeAbsoluteRepaintRect):
454 (WebCore::RenderTableCell::baselinePosition):
455 (WebCore::RenderTableCell::paint):
456 (WebCore::RenderTableCell::paintBackgroundsBehindCell):
457 (WebCore::RenderTableCell::paintBoxDecorations):
458 (WebCore::RenderTableCell::paintMask):
459 Remove borderTopExtra()/borderBottomExtra() hacks and localToAbsoluteForContent calls.
461 * rendering/RenderTableCell.h:
462 (WebCore::RenderTableCell::setIntrinsicPaddingTop):
463 (WebCore::RenderTableCell::setIntrinsicPaddingBottom):
464 (WebCore::RenderTableCell::setIntrinsicPadding):
465 (WebCore::RenderTableCell::clearIntrinsicPadding):
466 (WebCore::RenderTableCell::intrinsicPaddingTop):
467 (WebCore::RenderTableCell::intrinsicPaddingBottom):
468 Add new helper methods for getting/setting a cell's intrinsic padding.
470 * rendering/RenderTableSection.cpp:
471 (WebCore::RenderTableSection::calcRowHeight):
472 calcRowHeight has been modified to exclude the intrinsic padding when calculating the base height of rows prior to flexing. Because a cell now includes that
473 extra space, it has to be subtracted out in this method.
475 (WebCore::RenderTableSection::layoutRows):
476 Modify the code that sets up the intrinsic padding so that it does a relayout if the intrinsic padding changes. There was also an error where the baseline
477 position mismatched leading to negative intrinsic padding being added in (this error exists in ToT). The code now properly ignores cells that don't establish
478 a baseline. A number of tests progress with this change.
480 * rendering/RenderText.cpp:
481 (WebCore::RenderText::addLineBoxRects):
482 Remove borderTopExtra()/borderBottomExtra() hacks and localToAbsoluteForContent calls.
484 * rendering/RenderTreeAsText.cpp:
485 (WebCore::operator<<):
486 (WebCore::writeTextRun):
487 Modify the render tree dumping code to continue to produce the same results as before. This is really a hack, since we're now capable of indicating the correct
488 position for the descendants of cells with intrinsic padding (and also indicating what the correct cell box is). A future patch can remove these hacks so that the
489 layout test results can all be regenerated.
491 2009-01-22 Eric Seidel <eric@webkit.org>
493 Reviewed by Justin Garcia.
495 Remove <span> turds left by editing commands
496 https://bugs.webkit.org/show_bug.cgi?id=23466
499 * editing/execCommand/empty-span-removal.html
500 * editing/execCommand/toggle-styles.html
502 * editing/ApplyStyleCommand.cpp:
503 (WebCore::styleSpanClassString):
504 (WebCore::isStyleSpan):
505 (WebCore::isUnstyledStyleSpan):
506 (WebCore::isSpanWithoutAttributesOrUnstyleStyleSpan):
507 (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
508 (WebCore::ApplyStyleCommand::removeEmbeddingUpToEnclosingBlock):
509 (WebCore::ApplyStyleCommand::removeHTMLBidiEmbeddingStyle):
510 (WebCore::ApplyStyleCommand::removeCSSStyle):
512 2009-01-22 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com>
514 Reviewed by Eric Seidel.
516 Rename some of the casting functions in dom/*Element.cpp:
517 formControlElementForElement -> toFormControlElement
518 inputElementForElement -> toInputElement
519 optionElementForElement -> toOptionElement
520 optionGroupElementForElement -> toOptionGroupElement
522 Suggested by Alexey, while refactoring the Element*->ScriptElement* code.
523 The Element*->ScriptElement* helper function is already named 'toScriptElement'.
525 * dom/FormControlElement.cpp:
526 (WebCore::toFormControlElement):
527 * dom/FormControlElement.h:
528 * dom/InputElement.cpp:
529 (WebCore::InputElement::setValueFromRenderer):
530 (WebCore::toInputElement):
531 * dom/InputElement.h:
532 * dom/OptionElement.cpp:
533 (WebCore::OptionElement::collectOptionTextRespectingGroupLabel):
534 (WebCore::toOptionElement):
535 * dom/OptionElement.h:
536 * dom/OptionGroupElement.cpp:
537 (WebCore::toOptionGroupElement):
538 * dom/OptionGroupElement.h:
539 * rendering/RenderListBox.cpp:
540 (WebCore::RenderListBox::updateFromElement):
541 (WebCore::RenderListBox::paintItemForeground):
542 (WebCore::RenderListBox::paintItemBackground):
543 * rendering/RenderMenuList.cpp:
544 (WebCore::RenderMenuList::updateOptionsWidth):
545 (WebCore::RenderMenuList::setTextFromOption):
546 (WebCore::RenderMenuList::itemText):
547 (WebCore::RenderMenuList::itemIsSelected):
548 * rendering/RenderTextControl.cpp:
549 (WebCore::RenderTextControl::formControlElement):
550 * rendering/RenderTextControlSingleLine.cpp:
551 (WebCore::RenderTextControlSingleLine::inputElement):
553 2009-01-22 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com>
555 Rubber-stamped by George Staikos.
557 Forgot to include in my last commit: Activate code depending on WMLOptionElement/WMLOptGroupElement.
559 * dom/OptionElement.cpp:
560 (WebCore::optionElementForElement):
561 * dom/OptionGroupElement.cpp:
562 (WebCore::optionGroupElementForElement):
564 2009-01-22 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com>
566 Reviewed by George Staikos.
568 Fixes: https://bugs.webkit.org/show_bug.cgi?id=23454
570 Add WML <option>/<optgroup> element support.
571 Currently the implementation is stubbed, all relevant parts can be enabled
572 once WMLSelectElement/SelectElement has been created.
576 * WebCore.vcproj/WebCore.vcproj:
577 * WebCore.xcodeproj/project.pbxproj:
578 * wml/WMLOptGroupElement.cpp: Added.
579 (WebCore::WMLOptGroupElement::WMLOptGroupElement):
580 (WebCore::WMLOptGroupElement::~WMLOptGroupElement):
581 (WebCore::WMLOptGroupElement::insertBefore):
582 (WebCore::WMLOptGroupElement::replaceChild):
583 (WebCore::WMLOptGroupElement::removeChild):
584 (WebCore::WMLOptGroupElement::appendChild):
585 (WebCore::WMLOptGroupElement::removeChildren):
586 (WebCore::ownerSelectElement):
587 (WebCore::WMLOptGroupElement::accessKeyAction):
588 (WebCore::WMLOptGroupElement::childrenChanged):
589 (WebCore::WMLOptGroupElement::parseMappedAttribute):
590 (WebCore::WMLOptGroupElement::attach):
591 (WebCore::WMLOptGroupElement::detach):
592 (WebCore::WMLOptGroupElement::setRenderStyle):
593 (WebCore::WMLOptGroupElement::nonRendererRenderStyle):
594 (WebCore::WMLOptGroupElement::groupLabelText):
595 (WebCore::WMLOptGroupElement::recalcSelectOptions):
596 * wml/WMLOptGroupElement.h: Added.
597 (WebCore::WMLOptGroupElement::title):
598 (WebCore::WMLOptGroupElement::valueMatchesRenderer):
599 (WebCore::WMLOptGroupElement::setValueMatchesRenderer):
600 (WebCore::WMLOptGroupElement::rendererIsNeeded):
601 * wml/WMLOptionElement.cpp: Added.
602 (WebCore::WMLOptionElement::WMLOptionElement):
603 (WebCore::WMLOptionElement::~WMLOptionElement):
604 (WebCore::ownerSelectElement):
605 (WebCore::WMLOptionElement::accessKeyAction):
606 (WebCore::WMLOptionElement::childrenChanged):
607 (WebCore::WMLOptionElement::parseMappedAttribute):
608 (WebCore::WMLOptionElement::attach):
609 (WebCore::WMLOptionElement::detach):
610 (WebCore::WMLOptionElement::setRenderStyle):
611 (WebCore::WMLOptionElement::insertedIntoDocument):
612 (WebCore::WMLOptionElement::selected):
613 (WebCore::WMLOptionElement::setSelectedState):
614 (WebCore::WMLOptionElement::value):
615 (WebCore::WMLOptionElement::textIndentedToRespectGroupLabel):
616 (WebCore::WMLOptionElement::nonRendererRenderStyle):
617 (WebCore::WMLOptionElement::handleIntrinsicEventIfNeeded):
618 * wml/WMLOptionElement.h: Added.
619 (WebCore::WMLOptionElement::valueMatchesRenderer):
620 (WebCore::WMLOptionElement::setValueMatchesRenderer):
621 (WebCore::WMLOptionElement::rendererIsNeeded):
622 * wml/WMLTagNames.in:
624 2009-01-22 Eric Roman <eroman@chromium.org>
626 Reviewed by Eric Seidel.
628 https://bugs.webkit.org/show_bug.cgi?id=20806
629 Send referrer for history navigations.
631 Test: http/tests/navigation/back-send-referrer.html
633 Consolidates HistoryItem::rssFeedReferrer and HistoryItem::formReferrer into a single HistoryItem::referrer property.
635 * history/HistoryItem.cpp:
636 (WebCore::HistoryItem::HistoryItem):
637 (WebCore::HistoryItem::referrer):
638 (WebCore::HistoryItem::setReferrer):
639 (WebCore::HistoryItem::formReferrer):
640 (WebCore::HistoryItem::rssFeedReferrer):
641 (WebCore::HistoryItem::setRSSFeedReferrer):
642 (WebCore::HistoryItem::setFormInfoFromRequest):
643 * history/HistoryItem.h:
644 * loader/FrameLoader.cpp:
645 (WebCore::FrameLoader::loadItem):
647 2009-01-22 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com>
649 Reviewed by Eric Seidel.
651 Fixes: https://bugs.webkit.org/show_bug.cgi?id=23465
653 Further enhancments to share code between HTMLOptionElement and the upcoming WMLOptionElement.
655 Rename optionText() to textIndentedToRespectGroupLabel() in (HTML)OptionElement, as it fits better.
656 optionText() returns the options text prefixed with some spaces, in case it got an optgroup parent.
658 Add two more pure-virtual functions to OptionElement: setSelectedState(bool) & value().
659 These aren't used outside of html/ at the moment (unlike the other pure-virtual functions
660 used by RenderMenuList/RenderListBox) - but they will be used by SelectElement, once it exists.
662 * dom/OptionElement.cpp:
663 (WebCore::OptionElement::setSelectedState):
664 (WebCore::OptionElement::collectOptionText):
665 (WebCore::OptionElement::collectOptionTextRespectingGroupLabel):
666 (WebCore::OptionElement::collectOptionValue):
667 (WebCore::OptionElementData::OptionElementData):
668 (WebCore::OptionElementData::~OptionElementData):
669 * dom/OptionElement.h:
670 (WebCore::OptionElementData::element):
671 (WebCore::OptionElementData::value):
672 (WebCore::OptionElementData::setValue):
673 (WebCore::OptionElementData::label):
674 (WebCore::OptionElementData::setLabel):
675 (WebCore::OptionElementData::selected):
676 (WebCore::OptionElementData::setSelected):
677 * html/HTMLOptionElement.cpp:
678 (WebCore::HTMLOptionElement::HTMLOptionElement):
679 (WebCore::HTMLOptionElement::text):
680 (WebCore::HTMLOptionElement::parseMappedAttribute):
681 (WebCore::HTMLOptionElement::value):
682 (WebCore::HTMLOptionElement::selected):
683 (WebCore::HTMLOptionElement::setSelected):
684 (WebCore::HTMLOptionElement::setSelectedState):
685 (WebCore::HTMLOptionElement::label):
686 (WebCore::HTMLOptionElement::textIndentedToRespectGroupLabel):
687 * html/HTMLOptionElement.h:
688 * html/HTMLSelectElement.cpp:
689 (WebCore::HTMLSelectElement::typeAheadFind):
690 * rendering/RenderListBox.cpp:
691 (WebCore::RenderListBox::updateFromElement):
692 (WebCore::RenderListBox::paintItemForeground):
693 * rendering/RenderMenuList.cpp:
694 (WebCore::RenderMenuList::updateOptionsWidth):
695 (WebCore::RenderMenuList::setTextFromOption):
696 (WebCore::RenderMenuList::itemText):
698 2009-01-22 Chris Fleizach <cfleizach@apple.com>
700 Reviewed by Justin Garcia.
702 Bug 23464: Infinite recursion at SelectionController::setSelection
703 https://bugs.webkit.org/show_bug.cgi?id=23464
705 Check for conditions leading to infinite recursion.
707 * editing/SelectionController.cpp:
708 (WebCore::SelectionController::setSelection):
710 2009-01-22 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com>
712 Not reviewed. Fix WML build problem in RenderBox.cpp, WMLNames is undefined.
714 * rendering/RenderBox.cpp:
716 2009-01-22 Adam Treat <adam.treat@torchmobile.com>
718 Fix the Qt build after RenderBox changes.
720 * platform/qt/RenderThemeQt.cpp:
721 (WebCore::RenderThemeQt::baselinePosition):
723 2009-01-22 David Hyatt <hyatt@apple.com>
725 Fix regressions in list box selection on Mac. The wrong color was being used for the list box
726 background, and list box colors actually weren't even being properly fetched because of a bug in
727 the RenderTheme base class. Existing pixel tests cover the bug fix.
729 Reviewed by Jon Honeycutt
731 * rendering/RenderTheme.cpp:
732 (WebCore::RenderTheme::activeListBoxSelectionBackgroundColor):
733 (WebCore::RenderTheme::inactiveListBoxSelectionBackgroundColor):
734 (WebCore::RenderTheme::activeListBoxSelectionForegroundColor):
735 (WebCore::RenderTheme::inactiveListBoxSelectionForegroundColor):
736 * rendering/RenderThemeMac.mm:
737 (WebCore::RenderThemeMac::platformInactiveListBoxSelectionBackgroundColor):
739 2009-01-22 David Levin <levin@chromium.org>
741 Reviewed by Alexey Proskuryakov.
743 Bug 22720: Make XMLHttpRequest work in Workers
744 <https://bugs.webkit.org/show_bug.cgi?id=22720>
746 Add copy/adopt for HTTPHeaderMap to allow the data to be passed across threads.
748 No observable change in behavior, so no test.
753 * WebCore.vcproj/WebCore.vcproj:
754 * WebCore.xcodeproj/project.pbxproj:
755 * WebCoreSources.bkl:
756 * platform/network/HTTPHeaderMap.cpp: Added.
757 (WebCore::HTTPHeaderMap::copyData):
758 (WebCore::HTTPHeaderMap::adopt):
759 * platform/network/HTTPHeaderMap.h:
761 2009-01-21 David Hyatt <hyatt@apple.com>
763 Back out a portion of my patch that I did not mean to land. Revert paintOutline back to the way it
764 was before my landing. Fixes failing SVG focus ring tests.
766 * rendering/RenderObject.cpp:
767 (WebCore::RenderObject::paintOutline):
768 * rendering/RenderObject.h:
769 * rendering/RenderPath.cpp:
770 (WebCore::RenderPath::paint):
771 * rendering/RenderSVGContainer.cpp:
772 (WebCore::RenderSVGContainer::paint):
774 2009-01-21 David Hyatt <hyatt@apple.com>
776 Fix Node's renderBox() method on Windows.
779 (WebCore::Node::renderBox):
781 2009-01-21 David Hyatt <hyatt@apple.com>
783 Fix RenderThemeSafari bustage on Win32.
785 * rendering/RenderThemeSafari.cpp:
786 (WebCore::RenderThemeSafari::baselinePosition):
788 2009-01-21 David Hyatt <hyatt@apple.com>
790 Fix bustage in RenderThemeWin. It's actually terrible that RenderThemeWin is using absoluteContentBox,
791 but that's a problem for another day.
793 * rendering/RenderThemeWin.cpp:
794 (WebCore::RenderThemeWin::paintSearchFieldCancelButton):
795 (WebCore::RenderThemeWin::paintSearchFieldResultsDecoration):
796 (WebCore::RenderThemeWin::paintSearchFieldResultsButton):
798 2009-01-21 Oliver Hunt <oliver@apple.com>
800 Reviewed by Dave Hyatt.
802 Bug 23470: Crash when page load occurs while processing scroll event with MallocScribble enabled
803 <https://bugs.webkit.org/show_bug.cgi?id=23470>
805 Add a RefPtr protector to handleWheelEvent to guard against destruction
806 while processing the scroll event. Alas the absurd set of circumstances
807 required to trigger this do not appear to be reproducible in DRT.
809 * page/EventHandler.cpp:
810 (WebCore::EventHandler::handleWheelEvent):
812 2009-01-21 David Hyatt <hyatt@apple.com>
814 Fix for https://bugs.webkit.org/show_bug.cgi?id=23453
816 Devirtualize the width/height/x/y methods of the render tree. The methods are now non-virtual on RenderBox.
817 Many functions that were previously in RenderObject.cpp are now in RenderBox.cpp.
819 Reviewed by Eric Seidel and Darin Adler
822 * css/CSSComputedStyleDeclaration.cpp:
823 (WebCore::sizingBox):
824 * dom/ContainerNode.cpp:
825 (WebCore::ContainerNode::getUpperLeftCorner):
826 (WebCore::ContainerNode::getLowerRightCorner):
828 (WebCore::Element::offsetLeft):
829 (WebCore::Element::offsetTop):
830 (WebCore::Element::offsetWidth):
831 (WebCore::Element::offsetHeight):
832 (WebCore::Element::offsetParent):
833 (WebCore::Element::clientLeft):
834 (WebCore::Element::clientTop):
835 (WebCore::Element::clientWidth):
836 (WebCore::Element::clientHeight):
837 (WebCore::Element::scrollLeft):
838 (WebCore::Element::scrollTop):
839 (WebCore::Element::setScrollLeft):
840 (WebCore::Element::setScrollTop):
841 (WebCore::Element::scrollWidth):
842 (WebCore::Element::scrollHeight):
844 (WebCore::Node::renderBox):
845 (WebCore::Node::getRect):
848 (WebCore::endsOfNodeAreVisuallyDistinctPositions):
849 (WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight):
850 (WebCore::Position::isCandidate):
851 * dom/PositionIterator.cpp:
852 (WebCore::PositionIterator::isCandidate):
853 * editing/CompositeEditCommand.cpp:
854 (WebCore::CompositeEditCommand::addBlockPlaceholderIfNeeded):
855 * editing/DeleteButtonController.cpp:
856 (WebCore::isDeletableElement):
857 * editing/DeleteSelectionCommand.cpp:
858 (WebCore::DeleteSelectionCommand::removeNode):
859 * editing/Editor.cpp:
860 (WebCore::Editor::insideVisibleArea):
861 * editing/EditorCommand.cpp:
862 (WebCore::verticalScrollDistance):
863 * html/HTMLAnchorElement.cpp:
864 (WebCore::HTMLAnchorElement::isKeyboardFocusable):
865 * html/HTMLCanvasElement.cpp:
866 (WebCore::HTMLCanvasElement::willDraw):
867 * html/HTMLFormControlElement.cpp:
868 (WebCore::HTMLFormControlElement::isFocusable):
869 * html/HTMLFrameElementBase.cpp:
870 (WebCore::HTMLFrameElementBase::width):
871 (WebCore::HTMLFrameElementBase::height):
872 * html/HTMLImageElement.cpp:
873 (WebCore::HTMLImageElement::width):
874 (WebCore::HTMLImageElement::height):
875 * inspector/InspectorController.cpp:
876 (WebCore::InspectorController::drawNodeHighlight):
877 * page/AccessibilityRenderObject.cpp:
878 (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
879 * page/FrameView.cpp:
880 (WebCore::FrameView::createScrollbar):
881 (WebCore::FrameView::updateDashboardRegions):
882 * page/animation/AnimationBase.cpp:
883 (WebCore::blendFunc):
884 * rendering/HitTestResult.cpp:
885 (WebCore::HitTestResult::imageRect):
886 * rendering/InlineBox.cpp:
887 (WebCore::InlineBox::renderBox):
888 (WebCore::InlineBox::adjustPosition):
889 * rendering/InlineBox.h:
890 * rendering/InlineFlowBox.cpp:
891 (WebCore::InlineFlowBox::placeBoxesHorizontally):
892 (WebCore::InlineFlowBox::verticallyAlignBoxes):
893 (WebCore::InlineFlowBox::placeBoxesVertically):
894 * rendering/InlineFlowBox.h:
895 * rendering/RenderApplet.cpp:
896 (WebCore::RenderApplet::createWidgetIfNecessary):
897 * rendering/RenderBlock.cpp:
898 (WebCore::RenderBlock::overflowHeight):
899 (WebCore::RenderBlock::overflowWidth):
900 (WebCore::RenderBlock::overflowRect):
901 (WebCore::RenderBlock::isSelfCollapsingBlock):
902 (WebCore::RenderBlock::layout):
903 (WebCore::RenderBlock::layoutBlock):
904 (WebCore::RenderBlock::adjustPositionedBlock):
905 (WebCore::RenderBlock::adjustFloatingBlock):
906 (WebCore::RenderBlock::handleSpecialChild):
907 (WebCore::RenderBlock::handlePositionedChild):
908 (WebCore::RenderBlock::handleFloatingChild):
909 (WebCore::RenderBlock::handleCompactChild):
910 (WebCore::RenderBlock::insertCompactIfNeeded):
911 (WebCore::RenderBlock::handleRunInChild):
912 (WebCore::RenderBlock::collapseMargins):
913 (WebCore::RenderBlock::clearFloatsIfNeeded):
914 (WebCore::RenderBlock::estimateVerticalPosition):
915 (WebCore::RenderBlock::determineHorizontalPosition):
916 (WebCore::RenderBlock::handleBottomOfBlock):
917 (WebCore::RenderBlock::layoutBlockChildren):
918 (WebCore::RenderBlock::layoutOnlyPositionedObjects):
919 (WebCore::RenderBlock::layoutPositionedObjects):
920 (WebCore::RenderBlock::markPositionedObjectsForLayout):
921 (WebCore::RenderBlock::repaintOverhangingFloats):
922 (WebCore::RenderBlock::paint):
923 (WebCore::RenderBlock::paintChildren):
924 (WebCore::RenderBlock::paintObject):
925 (WebCore::RenderBlock::paintFloats):
926 (WebCore::RenderBlock::paintContinuationOutlines):
927 (WebCore::clipOutPositionedObjects):
928 (WebCore::RenderBlock::fillSelectionGaps):
929 (WebCore::RenderBlock::fillBlockSelectionGaps):
930 (WebCore::RenderBlock::leftSelectionOffset):
931 (WebCore::RenderBlock::rightSelectionOffset):
932 (WebCore::RenderBlock::insertPositionedObject):
933 (WebCore::RenderBlock::removePositionedObject):
934 (WebCore::RenderBlock::removePositionedObjects):
935 (WebCore::RenderBlock::insertFloatingObject):
936 (WebCore::RenderBlock::removeFloatingObject):
937 (WebCore::RenderBlock::positionNewFloats):
938 (WebCore::RenderBlock::newLine):
939 (WebCore::RenderBlock::lowestPosition):
940 (WebCore::RenderBlock::rightmostPosition):
941 (WebCore::RenderBlock::leftmostPosition):
942 (WebCore::RenderBlock::clearFloats):
943 (WebCore::RenderBlock::addOverhangingFloats):
944 (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
945 (WebCore::RenderBlock::getClearDelta):
946 (WebCore::RenderBlock::nodeAtPoint):
947 (WebCore::RenderBlock::positionForCoordinates):
948 (WebCore::RenderBlock::layoutColumns):
949 (WebCore::RenderBlock::getBaselineOfFirstLineBox):
950 (WebCore::RenderBlock::getBaselineOfLastLineBox):
951 (WebCore::getHeightForLineCount):
952 (WebCore::RenderBlock::adjustForBorderFit):
953 * rendering/RenderBlock.h:
954 (WebCore::RenderBlock::FloatWithRect::FloatWithRect):
955 (WebCore::RenderBlock::hasOverhangingFloats):
956 (WebCore::RenderBlock::CompactInfo::compact):
957 (WebCore::RenderBlock::CompactInfo::set):
958 * rendering/RenderBox.cpp:
959 (WebCore::RenderBox::RenderBox):
960 (WebCore::RenderBox::offsetLeft):
961 (WebCore::RenderBox::offsetTop):
962 (WebCore::RenderBox::offsetParent):
963 (WebCore::RenderBox::clientWidth):
964 (WebCore::RenderBox::clientHeight):
965 (WebCore::RenderBox::scrollWidth):
966 (WebCore::RenderBox::scrollHeight):
967 (WebCore::RenderBox::scrollLeft):
968 (WebCore::RenderBox::scrollTop):
969 (WebCore::RenderBox::setScrollLeft):
970 (WebCore::RenderBox::setScrollTop):
971 (WebCore::RenderBox::absoluteRects):
972 (WebCore::RenderBox::absoluteQuads):
973 (WebCore::RenderBox::absoluteContentBox):
974 (WebCore::RenderBox::absoluteContentQuad):
975 (WebCore::RenderBox::absoluteOutlineBounds):
976 (WebCore::RenderBox::addFocusRingRects):
977 (WebCore::RenderBox::reflectionBox):
978 (WebCore::RenderBox::reflectionOffset):
979 (WebCore::RenderBox::reflectedRect):
980 (WebCore::RenderBox::overrideWidth):
981 (WebCore::RenderBox::overrideHeight):
982 (WebCore::RenderBox::nodeAtPoint):
983 (WebCore::RenderBox::paint):
984 (WebCore::RenderBox::maskClipRect):
985 (WebCore::RenderBox::repaintLayerRectsForImage):
986 (WebCore::RenderBox::paintCustomHighlight):
987 (WebCore::RenderBox::getOverflowClipRect):
988 (WebCore::RenderBox::getClipRect):
989 (WebCore::RenderBox::containingBlockWidth):
990 (WebCore::RenderBox::localToAbsolute):
991 (WebCore::RenderBox::offsetFromContainer):
992 (WebCore::RenderBox::position):
993 (WebCore::RenderBox::computeAbsoluteRepaintRect):
994 (WebCore::RenderBox::repaintDuringLayoutIfMoved):
995 (WebCore::RenderBox::calcWidth):
996 (WebCore::RenderBox::calcWidthUsing):
997 (WebCore::RenderBox::calcHorizontalMargins):
998 (WebCore::RenderBox::calcHeight):
999 (WebCore::RenderBox::calcPercentageHeight):
1000 (WebCore::RenderBox::calcReplacedHeightUsing):
1001 (WebCore::RenderBox::containingBlockWidthForPositioned):
1002 (WebCore::RenderBox::containingBlockHeightForPositioned):
1003 (WebCore::RenderBox::calcAbsoluteHorizontal):
1004 (WebCore::RenderBox::calcAbsoluteVertical):
1005 (WebCore::RenderBox::calcAbsoluteVerticalValues):
1006 (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
1007 (WebCore::RenderBox::calcAbsoluteVerticalReplaced):
1008 (WebCore::RenderBox::localCaretRect):
1009 (WebCore::RenderBox::lowestPosition):
1010 (WebCore::RenderBox::rightmostPosition):
1011 (WebCore::RenderBox::leftmostPosition):
1012 (WebCore::RenderBox::localTransform):
1013 * rendering/RenderBox.h:
1015 (WebCore::RenderBox::x):
1016 (WebCore::RenderBox::y):
1017 (WebCore::RenderBox::width):
1018 (WebCore::RenderBox::height):
1019 (WebCore::RenderBox::setX):
1020 (WebCore::RenderBox::setY):
1021 (WebCore::RenderBox::setWidth):
1022 (WebCore::RenderBox::setHeight):
1023 (WebCore::RenderBox::location):
1024 (WebCore::RenderBox::size):
1025 (WebCore::RenderBox::setLocation):
1026 (WebCore::RenderBox::setSize):
1027 (WebCore::RenderBox::move):
1028 (WebCore::RenderBox::frameRect):
1029 (WebCore::RenderBox::setFrameRect):
1030 (WebCore::RenderBox::borderBoxRect):
1031 (WebCore::RenderBox::contentBoxRect):
1032 (WebCore::RenderBox::previousSiblingBox):
1033 (WebCore::RenderBox::nextSiblingBox):
1034 (WebCore::RenderBox::parentBox):
1035 (WebCore::RenderBox::overflowHeight):
1036 (WebCore::RenderBox::overflowWidth):
1037 (WebCore::RenderBox::setOverflowHeight):
1038 (WebCore::RenderBox::setOverflowWidth):
1039 (WebCore::RenderBox::overflowLeft):
1040 (WebCore::RenderBox::overflowTop):
1041 (WebCore::RenderBox::overflowRect):
1042 (WebCore::RenderBox::contentWidth):
1043 (WebCore::RenderBox::contentHeight):
1044 (WebCore::RenderBox::offsetWidth):
1045 (WebCore::RenderBox::offsetHeight):
1046 (WebCore::RenderBox::clientLeft):
1047 (WebCore::RenderBox::clientTop):
1048 (WebCore::RenderBox::availableWidth):
1049 (WebCore::RenderBox::tryLayoutDoingPositionedMovementOnly):
1050 * rendering/RenderButton.cpp:
1051 (WebCore::RenderButton::controlClipRect):
1052 * rendering/RenderContainer.cpp:
1053 (WebCore::RenderContainer::layout):
1054 (WebCore::RenderContainer::positionForCoordinates):
1055 * rendering/RenderContainer.h:
1056 (WebCore::RenderContainer::firstChildBox):
1057 (WebCore::RenderContainer::lastChildBox):
1058 * rendering/RenderFieldset.cpp:
1059 (WebCore::RenderFieldset::calcPrefWidths):
1060 (WebCore::RenderFieldset::layoutLegend):
1061 (WebCore::RenderFieldset::findLegend):
1062 (WebCore::RenderFieldset::paintBoxDecorations):
1063 (WebCore::RenderFieldset::paintMask):
1064 * rendering/RenderFieldset.h:
1065 * rendering/RenderFileUploadControl.cpp:
1066 (WebCore::RenderFileUploadControl::maxFilenameWidth):
1067 (WebCore::RenderFileUploadControl::paintObject):
1068 * rendering/RenderFlexibleBox.cpp:
1069 (WebCore::FlexBoxIterator::FlexBoxIterator):
1070 (WebCore::FlexBoxIterator::first):
1071 (WebCore::FlexBoxIterator::next):
1072 (WebCore::RenderFlexibleBox::calcHorizontalPrefWidths):
1073 (WebCore::RenderFlexibleBox::calcVerticalPrefWidths):
1074 (WebCore::RenderFlexibleBox::layoutBlock):
1075 (WebCore::RenderFlexibleBox::layoutHorizontalBox):
1076 (WebCore::RenderFlexibleBox::layoutVerticalBox):
1077 (WebCore::RenderFlexibleBox::placeChild):
1078 (WebCore::RenderFlexibleBox::allowedChildFlex):
1079 * rendering/RenderFlexibleBox.h:
1080 * rendering/RenderFlow.cpp:
1081 (WebCore::RenderFlow::absoluteClippedOverflowRect):
1082 (WebCore::RenderFlow::lowestPosition):
1083 (WebCore::RenderFlow::rightmostPosition):
1084 (WebCore::RenderFlow::leftmostPosition):
1085 (WebCore::RenderFlow::localCaretRect):
1086 (WebCore::RenderFlow::addFocusRingRects):
1087 * rendering/RenderFrameSet.cpp:
1088 (WebCore::RenderFrameSet::paint):
1089 (WebCore::RenderFrameSet::layout):
1090 (WebCore::RenderFrameSet::positionFrames):
1091 * rendering/RenderHTMLCanvas.cpp:
1092 (WebCore::RenderHTMLCanvas::paintReplaced):
1093 (WebCore::RenderHTMLCanvas::canvasSizeChanged):
1094 * rendering/RenderImage.cpp:
1095 (WebCore::RenderImage::imageChanged):
1096 (WebCore::RenderImage::paintReplaced):
1097 (WebCore::RenderImage::nodeAtPoint):
1098 (WebCore::RenderImage::calcReplacedWidth):
1099 * rendering/RenderInline.cpp:
1100 (WebCore::RenderInline::absoluteRects):
1101 (WebCore::RenderInline::boundingBoxWidth):
1102 (WebCore::RenderInline::boundingBoxHeight):
1103 (WebCore::RenderInline::positionForCoordinates):
1104 * rendering/RenderInline.h:
1105 (WebCore::RenderInline::offsetWidth):
1106 (WebCore::RenderInline::offsetHeight):
1107 * rendering/RenderLayer.cpp:
1108 (WebCore::RenderLayer::updateTransform):
1109 (WebCore::RenderLayer::updateLayerPosition):
1110 (WebCore::RenderLayer::scrollbarCornerPresent):
1111 (WebCore::RenderLayer::createScrollbar):
1112 (WebCore::RenderLayer::positionOverflowControls):
1113 (WebCore::RenderLayer::paintScrollCorner):
1114 (WebCore::RenderLayer::paintResizer):
1115 (WebCore::RenderLayer::paintLayer):
1116 (WebCore::RenderLayer::hitTestLayer):
1117 (WebCore::RenderLayer::calculateRects):
1118 (WebCore::RenderLayer::boundingBox):
1119 * rendering/RenderListBox.cpp:
1120 (WebCore::RenderListBox::calcHeight):
1121 (WebCore::RenderListBox::controlClipRect):
1122 * rendering/RenderListItem.cpp:
1123 (WebCore::RenderListItem::positionListMarker):
1124 (WebCore::RenderListItem::paint):
1125 * rendering/RenderListMarker.cpp:
1126 (WebCore::RenderListMarker::paint):
1127 (WebCore::RenderListMarker::layout):
1128 (WebCore::RenderListMarker::imageChanged):
1129 (WebCore::RenderListMarker::getRelativeMarkerRect):
1130 (WebCore::RenderListMarker::selectionRect):
1131 * rendering/RenderMarquee.cpp:
1132 (WebCore::RenderMarquee::computePosition):
1133 * rendering/RenderMedia.cpp:
1134 (WebCore::RenderMedia::layout):
1135 (WebCore::RenderMedia::lowestPosition):
1136 (WebCore::RenderMedia::rightmostPosition):
1137 (WebCore::RenderMedia::leftmostPosition):
1138 * rendering/RenderMenuList.cpp:
1139 (WebCore::RenderMenuList::controlClipRect):
1140 * rendering/RenderObject.cpp:
1141 (WebCore::RenderObject::RenderObject):
1142 (WebCore::RenderObject::markAllDescendantsWithFloatsForLayout):
1143 (WebCore::RenderObject::paintOutline):
1144 (WebCore::RenderObject::addLineBoxRects):
1145 (WebCore::RenderObject::absoluteBoundingBoxRect):
1146 (WebCore::RenderObject::addAbsoluteRectForLayer):
1147 (WebCore::RenderObject::paintingRootRect):
1148 (WebCore::RenderObject::container):
1149 (WebCore::RenderObject::removeFromObjectLists):
1150 (WebCore::RenderObject::updateHitTestResult):
1151 (WebCore::RenderObject::addDashboardRegions):
1152 (WebCore::RenderObject::localTransform):
1153 * rendering/RenderObject.h:
1154 (WebCore::RenderObject::isBox):
1155 (WebCore::RenderObject::hasMask):
1156 (WebCore::RenderObject::setIsText):
1157 (WebCore::RenderObject::setIsBox):
1158 (WebCore::RenderObject::borderTop):
1159 (WebCore::RenderObject::borderBottom):
1160 (WebCore::RenderObject::absoluteRects):
1161 (WebCore::RenderObject::collectAbsoluteLineBoxQuads):
1162 (WebCore::RenderObject::absoluteQuads):
1163 (WebCore::RenderObject::hasReflection):
1164 (WebCore::RenderObject::addFocusRingRects):
1165 (WebCore::RenderObject::absoluteOutlineBounds):
1166 * rendering/RenderPart.cpp:
1167 (WebCore::RenderPart::updateWidgetPosition):
1168 * rendering/RenderPath.cpp:
1169 (WebCore::RenderPath::layout):
1170 (WebCore::RenderPath::paint):
1171 (WebCore::RenderPath::absoluteOutlineBounds):
1172 * rendering/RenderPath.h:
1173 * rendering/RenderReplaced.cpp:
1174 (WebCore::RenderReplaced::layout):
1175 (WebCore::RenderReplaced::paint):
1176 (WebCore::RenderReplaced::shouldPaint):
1177 (WebCore::RenderReplaced::positionForCoordinates):
1178 (WebCore::RenderReplaced::localSelectionRect):
1179 (WebCore::RenderReplaced::adjustOverflowForBoxShadow):
1180 (WebCore::RenderReplaced::overflowRect):
1181 * rendering/RenderReplica.cpp:
1182 (WebCore::RenderReplica::layout):
1183 (WebCore::RenderReplica::calcPrefWidths):
1184 (WebCore::RenderReplica::paint):
1185 * rendering/RenderSVGContainer.cpp:
1186 (WebCore::RenderSVGContainer::paint):
1187 (WebCore::RenderSVGContainer::absoluteOutlineBounds):
1188 * rendering/RenderSVGContainer.h:
1189 (WebCore::RenderSVGContainer::width):
1190 (WebCore::RenderSVGContainer::height):
1191 * rendering/RenderSVGImage.cpp:
1192 (WebCore::RenderSVGImage::layout):
1193 * rendering/RenderSVGInlineText.cpp:
1194 (WebCore::RenderSVGInlineText::computeAbsoluteRectForRange):
1195 (WebCore::RenderSVGInlineText::positionForCoordinates):
1196 * rendering/RenderSVGRoot.cpp:
1197 (WebCore::RenderSVGRoot::layout):
1198 (WebCore::RenderSVGRoot::applyContentTransforms):
1199 (WebCore::RenderSVGRoot::paint):
1200 (WebCore::RenderSVGRoot::absoluteTransform):
1201 (WebCore::RenderSVGRoot::nodeAtPoint):
1202 * rendering/RenderSVGTSpan.cpp:
1203 (WebCore::RenderSVGTSpan::absoluteRects):
1204 (WebCore::RenderSVGTSpan::absoluteQuads):
1205 * rendering/RenderSVGText.cpp:
1206 (WebCore::RenderSVGText::layout):
1207 (WebCore::RenderSVGText::relativeBBox):
1208 * rendering/RenderSVGTextPath.cpp:
1209 (WebCore::RenderSVGTextPath::absoluteRects):
1210 (WebCore::RenderSVGTextPath::absoluteQuads):
1211 * rendering/RenderSVGViewportContainer.cpp:
1212 (WebCore::RenderSVGViewportContainer::nodeAtPoint):
1213 * rendering/RenderScrollbar.cpp:
1214 (WebCore::RenderScrollbar::createCustomScrollbar):
1215 (WebCore::RenderScrollbar::RenderScrollbar):
1216 (WebCore::RenderScrollbar::setParent):
1217 * rendering/RenderScrollbar.h:
1218 (WebCore::RenderScrollbar::owningRenderer):
1219 * rendering/RenderScrollbarPart.cpp:
1220 (WebCore::RenderScrollbarPart::layout):
1221 (WebCore::RenderScrollbarPart::layoutHorizontalPart):
1222 (WebCore::RenderScrollbarPart::layoutVerticalPart):
1223 (WebCore::RenderScrollbarPart::computeScrollbarWidth):
1224 (WebCore::RenderScrollbarPart::computeScrollbarHeight):
1225 (WebCore::RenderScrollbarPart::paintIntoRect):
1226 * rendering/RenderSlider.cpp:
1227 (WebCore::HTMLSliderThumbElement::defaultEventHandler):
1228 (WebCore::RenderSlider::layout):
1229 (WebCore::RenderSlider::mouseEventIsInThumb):
1230 (WebCore::RenderSlider::positionForOffset):
1231 (WebCore::RenderSlider::trackSize):
1232 * rendering/RenderTable.cpp:
1233 (WebCore::RenderTable::calcWidth):
1234 (WebCore::RenderTable::layout):
1235 (WebCore::RenderTable::paint):
1236 (WebCore::RenderTable::getBaselineOfFirstLineBox):
1237 * rendering/RenderTableCell.cpp:
1238 (WebCore::RenderTableCell::updateWidth):
1239 (WebCore::RenderTableCell::computeAbsoluteRepaintRect):
1240 (WebCore::RenderTableCell::localToAbsolute):
1241 (WebCore::RenderTableCell::absoluteToLocal):
1242 (WebCore::RenderTableCell::localToAbsoluteQuad):
1243 (WebCore::RenderTableCell::paint):
1244 (WebCore::RenderTableCell::paintBackgroundsBehindCell):
1245 * rendering/RenderTableCell.h:
1246 * rendering/RenderTableSection.cpp:
1247 (WebCore::RenderTableSection::addChild):
1248 (WebCore::RenderTableSection::addCell):
1249 (WebCore::RenderTableSection::setCellWidths):
1250 (WebCore::RenderTableSection::calcRowHeight):
1251 (WebCore::RenderTableSection::layoutRows):
1252 (WebCore::RenderTableSection::lowestPosition):
1253 (WebCore::RenderTableSection::rightmostPosition):
1254 (WebCore::RenderTableSection::leftmostPosition):
1255 (WebCore::RenderTableSection::getBaselineOfFirstLineBox):
1256 (WebCore::RenderTableSection::paint):
1257 (WebCore::RenderTableSection::recalcCells):
1258 (WebCore::RenderTableSection::nodeAtPoint):
1259 * rendering/RenderTableSection.h:
1260 (WebCore::RenderTableSection::overflowWidth):
1261 (WebCore::RenderTableSection::overflowHeight):
1262 * rendering/RenderText.cpp:
1263 (WebCore::RenderText::RenderText):
1264 (WebCore::RenderText::boundingBoxX):
1265 (WebCore::RenderText::boundingBoxY):
1266 (WebCore::RenderText::firstRunX):
1267 (WebCore::RenderText::firstRunY):
1268 (WebCore::RenderText::boundingBoxHeight):
1269 (WebCore::RenderText::boundingBoxWidth):
1270 * rendering/RenderText.h:
1271 * rendering/RenderTextControl.cpp:
1272 (WebCore::RenderTextControl::textBlockHeight):
1273 (WebCore::RenderTextControl::textBlockWidth):
1274 (WebCore::RenderTextControl::setSelectionRange):
1275 (WebCore::RenderTextControl::calcHeight):
1276 (WebCore::RenderTextControl::hitInnerTextBlock):
1277 (WebCore::RenderTextControl::controlClipRect):
1278 * rendering/RenderTextControlMultiLine.cpp:
1279 (WebCore::RenderTextControlMultiLine::layout):
1280 (WebCore::RenderTextControlMultiLine::adjustControlHeightBasedOnLineHeight):
1281 * rendering/RenderTextControlSingleLine.cpp:
1282 (WebCore::RenderTextControlSingleLine::paint):
1283 (WebCore::RenderTextControlSingleLine::layout):
1284 (WebCore::RenderTextControlSingleLine::nodeAtPoint):
1285 (WebCore::RenderTextControlSingleLine::forwardEvent):
1286 (WebCore::RenderTextControlSingleLine::textBlockWidth):
1287 (WebCore::RenderTextControlSingleLine::adjustControlHeightBasedOnLineHeight):
1288 (WebCore::RenderTextControlSingleLine::clientPaddingLeft):
1289 (WebCore::RenderTextControlSingleLine::clientPaddingRight):
1290 * rendering/RenderTheme.cpp:
1291 (WebCore::RenderTheme::hitTestMediaControlPart):
1292 (WebCore::RenderTheme::baselinePosition):
1293 * rendering/RenderThemeMac.mm:
1294 (WebCore::RenderThemeMac::paintSearchFieldCancelButton):
1295 (WebCore::RenderThemeMac::paintSearchFieldResultsDecoration):
1296 (WebCore::RenderThemeMac::paintSearchFieldResultsButton):
1297 (WebCore::RenderThemeMac::hitTestMediaControlPart):
1298 * rendering/RenderTreeAsText.cpp:
1299 (WebCore::operator<<):
1300 * rendering/RenderVideo.cpp:
1301 (WebCore::RenderVideo::videoBox):
1302 * rendering/RenderView.cpp:
1303 (WebCore::RenderView::RenderView):
1304 (WebCore::RenderView::calcHeight):
1305 (WebCore::RenderView::calcWidth):
1306 (WebCore::RenderView::layout):
1307 (WebCore::RenderView::viewRect):
1308 (WebCore::RenderView::docHeight):
1309 (WebCore::RenderView::docWidth):
1310 (WebCore::RenderView::setBestTruncatedAt):
1311 * rendering/RenderView.h:
1312 * rendering/RenderWidget.cpp:
1313 (WebCore::RenderWidget::paint):
1314 (WebCore::RenderWidget::updateWidgetPosition):
1315 (WebCore::RenderWidget::nodeAtPoint):
1316 * rendering/RootInlineBox.h:
1317 (WebCore::RootInlineBox::floats):
1318 (WebCore::RootInlineBox::floatsPtr):
1319 * rendering/SVGInlineFlowBox.cpp:
1320 (WebCore::SVGInlineFlowBox::verticallyAlignBoxes):
1321 * rendering/SVGInlineFlowBox.h:
1322 * rendering/SVGRenderTreeAsText.cpp:
1323 (WebCore::operator<<):
1325 * rendering/SVGRootInlineBox.cpp:
1326 (WebCore::SVGRootInlineBox::verticallyAlignBoxes):
1327 (WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation):
1328 (WebCore::SVGRootInlineBox::layoutInlineBoxes):
1329 * rendering/SVGRootInlineBox.h:
1330 * rendering/bidi.cpp:
1331 (WebCore::RenderBlock::computeHorizontalPositionsForLine):
1332 (WebCore::RenderBlock::computeVerticalPositionsForLine):
1333 (WebCore::RenderBlock::layoutInlineChildren):
1334 (WebCore::RenderBlock::determineStartPosition):
1335 (WebCore::RenderBlock::matchedEndLine):
1336 (WebCore::RenderBlock::skipTrailingWhitespace):
1337 (WebCore::RenderBlock::skipLeadingWhitespace):
1338 (WebCore::RenderBlock::fitBelowFloats):
1339 (WebCore::RenderBlock::findNextLineBreak):
1340 (WebCore::RenderBlock::checkLinesForOverflow):
1341 * svg/SVGLength.cpp:
1342 (WebCore::SVGLength::PercentageOfViewport):
1344 2009-01-21 Anders Carlsson <andersca@apple.com>
1346 Reviewed by Sam Weinig.
1349 Add some bridge related symbols.
1351 * WebCore.xcodeproj/project.pbxproj:
1352 Make runtime_object.h a private header.
1354 2009-01-20 David Levin <levin@chromium.org>
1356 Reviewed by Alexey Proskuryakov.
1358 Bug 22720: Make XMLHttpRequest work in Workers
1359 <https://bugs.webkit.org/show_bug.cgi?id=22720>
1361 More removal of document usage from XMLHttpRequest.
1362 * Abstracted away the sync and async requests behind the ThreadableLoader class, which
1363 will get an implementation for Workers. ThreadableLoader follows the same model as
1364 SubresourceLoader because DocumentThreadableLoader is a thin wrapper around SubresourceLoader.
1365 Also, WorkerThreadableLoader (coming soon) will use DocumentThreadableLoader to get things done.
1366 * Consolidated dashboard compatibility checks into usesDashboardBackwardCompatibilityMode
1367 which handles workers.
1369 No observable change in behavior, so no test.
1374 * WebCore.vcproj/WebCore.vcproj:
1375 * WebCore.xcodeproj/project.pbxproj:
1376 * WebCoreSources.bkl:
1377 * loader/DocumentThreadableLoader.cpp: Added.
1378 (WebCore::DocumentThreadableLoader::create):
1379 (WebCore::DocumentThreadableLoader::DocumentThreadableLoader):
1380 (WebCore::DocumentThreadableLoader::~DocumentThreadableLoader):
1381 (WebCore::DocumentThreadableLoader::cancel):
1382 (WebCore::DocumentThreadableLoader::willSendRequest):
1383 (WebCore::DocumentThreadableLoader::didSendData):
1384 (WebCore::DocumentThreadableLoader::didReceiveResponse):
1385 (WebCore::DocumentThreadableLoader::didReceiveData):
1386 (WebCore::DocumentThreadableLoader::didFinishLoading):
1387 (WebCore::DocumentThreadableLoader::didFail):
1388 (WebCore::DocumentThreadableLoader::receivedCancellation):
1389 * loader/DocumentThreadableLoader.h: Added.
1390 (WebCore::DocumentThreadableLoader::refThreadableLoader):
1391 (WebCore::DocumentThreadableLoader::derefThreadableLoader):
1392 * loader/SubresourceLoaderClient.h:
1393 (WebCore::SubresourceLoaderClient::didReceiveData):
1394 * loader/ThreadableLoader.cpp: Added.
1395 (WebCore::ThreadableLoader::create):
1396 (WebCore::ThreadableLoader::loadResourceSynchronously):
1397 * loader/ThreadableLoader.h: Added.
1399 (WebCore::ThreadableLoader::ref):
1400 (WebCore::ThreadableLoader::deref):
1401 (WebCore::ThreadableLoader::~ThreadableLoader):
1402 * loader/ThreadableLoaderClient.h: Added.
1403 (WebCore::ThreadableLoaderClient::didSendData):
1404 (WebCore::ThreadableLoaderClient::didReceiveResponse):
1405 (WebCore::ThreadableLoaderClient::didReceiveData):
1406 (WebCore::ThreadableLoaderClient::didFinishLoading):
1407 (WebCore::ThreadableLoaderClient::didFail):
1408 (WebCore::ThreadableLoaderClient::didGetCancelled):
1409 (WebCore::ThreadableLoaderClient::didReceiveAuthenticationCancellation):
1410 (WebCore::ThreadableLoaderClient::~ThreadableLoaderClient):
1411 * xml/XMLHttpRequest.cpp:
1412 (WebCore::XMLHttpRequest::XMLHttpRequest):
1413 (WebCore::XMLHttpRequest::usesDashboardBackwardCompatibilityMode):
1414 (WebCore::XMLHttpRequest::send):
1415 (WebCore::XMLHttpRequest::loadRequestSynchronously):
1416 (WebCore::XMLHttpRequest::loadRequestAsynchronously):
1417 (WebCore::XMLHttpRequest::setRequestHeader):
1418 (WebCore::XMLHttpRequest::processSyncLoadResults):
1419 (WebCore::XMLHttpRequest::didFail):
1420 (WebCore::XMLHttpRequest::didGetCancelled):
1421 (WebCore::XMLHttpRequest::didFinishLoading):
1422 (WebCore::XMLHttpRequest::didFinishLoadingPreflight):
1423 (WebCore::XMLHttpRequest::didSendData):
1424 (WebCore::XMLHttpRequest::didReceiveResponse):
1425 (WebCore::XMLHttpRequest::didReceiveResponsePreflight):
1426 (WebCore::XMLHttpRequest::didReceiveAuthenticationCancellation):
1427 (WebCore::XMLHttpRequest::didReceiveData):
1428 * xml/XMLHttpRequest.h:
1430 2009-01-19 Chris Marrin <cmarrin@apple.com>
1432 Reviewed by David Hyatt.
1434 Fix for https://bugs.webkit.org/show_bug.cgi?id=23317
1436 The high CPU usage was really from repeatedly firing transitions caused
1437 by a bug in the way we handle background-color animations. If animating
1438 from a valid background color to no background color, we sometimes left
1439 (based on timing) the background color as transparent black, but valid
1440 rather than invalid, which it should be. Fixing that got rid of the
1443 But we really were doing more expensive iteration of all objects with
1444 animations or transitions on them (running or not). So I added two
1445 optimizations to quickly short circuit when an object had no running
1446 animations or transitions. Things are now as zippy as ever.
1448 Test: transitions/repeated-firing-background-color.html
1450 * page/animation/AnimationBase.cpp:
1451 (WebCore::blendFunc):
1452 * page/animation/AnimationController.cpp:
1453 (WebCore::AnimationControllerPrivate::updateAnimationTimer):
1454 * page/animation/CompositeAnimation.cpp:
1455 (WebCore::CompositeAnimationPrivate::hasAnimations):
1456 (WebCore::CompositeAnimationPrivate::clearRenderer):
1457 (WebCore::CompositeAnimationPrivate::animate):
1458 (WebCore::CompositeAnimationPrivate::setAnimating):
1459 (WebCore::CompositeAnimationPrivate::willNeedService):
1460 (WebCore::CompositeAnimationPrivate::getAnimationForProperty):
1461 (WebCore::CompositeAnimationPrivate::cleanupFinishedAnimations):
1462 (WebCore::CompositeAnimationPrivate::setAnimationStartTime):
1463 (WebCore::CompositeAnimationPrivate::setTransitionStartTime):
1464 (WebCore::CompositeAnimationPrivate::suspendAnimations):
1465 (WebCore::CompositeAnimationPrivate::resumeAnimations):
1466 (WebCore::CompositeAnimationPrivate::overrideImplicitAnimations):
1467 (WebCore::CompositeAnimationPrivate::resumeOverriddenImplicitAnimations):
1468 (WebCore::CompositeAnimationPrivate::styleAvailable):
1469 (WebCore::CompositeAnimationPrivate::isAnimatingProperty):
1470 (WebCore::CompositeAnimationPrivate::numberOfActiveAnimations):
1471 (WebCore::CompositeAnimation::hasAnimations):
1472 * page/animation/CompositeAnimation.h:
1474 2009-01-21 Eric Seidel <eric@webkit.org>
1476 Reviewed by Justin Garcia.
1478 Remove the style='' turds left by some editing commands
1479 https://bugs.webkit.org/show_bug.cgi?id=23463
1481 Test: editing/execCommand/toggle-styles.html
1483 * editing/ApplyStyleCommand.cpp:
1484 (WebCore::ApplyStyleCommand::removeCSSStyle): check if we just removed the last CSS property and remove the style attribute as well
1485 * editing/CompositeEditCommand.cpp:
1486 (WebCore::CompositeEditCommand::removeNodeAttribute): remove extra ;
1488 2009-01-21 Eric Seidel <eric@webkit.org>
1490 No review, build fix.
1492 Fix release-only build failure (and do a tiny code-cleanup).
1494 * editing/ApplyStyleCommand.cpp:
1495 (WebCore::createFontElement):
1496 (WebCore::createStyleSpanElement):
1497 (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
1499 2009-01-21 Chris Fleizach <cfleizach@apple.com>
1501 Reviewed by Beth Dakin.
1503 Bug 23443: Table accessibility should be re-enabled after fixing crash that occurs at WebCore::AccessibilityTable::isTableExposableThroughAccessibility()
1504 https://bugs.webkit.org/show_bug.cgi?id=23443
1506 Test: accessibility/table-modification-crash.html
1508 * page/AccessibilityObject.cpp:
1509 (WebCore::AccessibilityObject::updateBackingStore):
1510 * page/AccessibilityObject.h:
1511 * page/AccessibilityRenderObject.cpp:
1512 (WebCore::AccessibilityRenderObject::childrenChanged):
1513 (WebCore::AccessibilityRenderObject::children):
1514 (WebCore::AccessibilityRenderObject::updateBackingStore):
1515 * page/AccessibilityRenderObject.h:
1516 (WebCore::AccessibilityRenderObject::markChildrenDirty):
1517 * page/AccessibilityTable.cpp:
1518 (WebCore::AccessibilityTable::AccessibilityTable):
1519 * page/mac/AccessibilityObjectWrapper.mm:
1520 (-[AccessibilityObjectWrapper accessibilityActionNames]):
1521 (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
1522 (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
1523 (-[AccessibilityObjectWrapper accessibilityFocusedUIElement]):
1524 (-[AccessibilityObjectWrapper accessibilityHitTest:]):
1525 (-[AccessibilityObjectWrapper accessibilityIsAttributeSettable:]):
1526 (-[AccessibilityObjectWrapper accessibilityIsIgnored]):
1527 (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
1528 (-[AccessibilityObjectWrapper accessibilityPerformPressAction]):
1529 (-[AccessibilityObjectWrapper accessibilityPerformAction:]):
1530 (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
1531 (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
1532 (-[AccessibilityObjectWrapper accessibilityIndexOfChild:]):
1533 (-[AccessibilityObjectWrapper accessibilityArrayAttributeCount:]):
1534 (-[AccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
1535 * rendering/RenderObject.cpp:
1536 (WebCore::RenderObject::destroy):
1537 * rendering/RenderWidget.cpp:
1538 (WebCore::RenderWidget::destroy):
1540 2009-01-16 Eric Seidel <eric@webkit.org>
1542 Reviewed by Justin Garcia.
1544 Fix execCommand() 'super' and 'sub' commands to add <sup> and <sub> in quirks mode, and to toggle when called twice
1545 https://bugs.webkit.org/show_bug.cgi?id=17733
1547 Test changed: editing/execCommand/toggle-styles-expected.txt
1549 * editing/ApplyStyleCommand.cpp:
1550 (WebCore::StyleChange::applySubscript):
1551 (WebCore::StyleChange::applySuperscript):
1552 (WebCore::StyleChange::StyleChange):
1553 (WebCore::StyleChange::init):
1554 (WebCore::StyleChange::checkForLegacyHTMLStyleChange):
1555 (WebCore::ApplyStyleCommand::isHTMLStyleNode):
1556 (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
1557 * editing/EditorCommand.cpp:
1558 (WebCore::executeSubscript):
1559 (WebCore::executeSuperscript):
1560 * editing/htmlediting.cpp:
1561 (WebCore::createHTMLElement):
1562 * editing/htmlediting.h:
1564 2009-01-21 Anders Carlsson <andersca@apple.com>
1570 2009-01-21 Oliver Hunt <oliver@apple.com>
1572 Reviewed by Alexey Proskuryakov.
1574 Bug 23458: Reintroduce CanvasPixelArray in ImageData.idl
1575 <https://bugs.webkit.org/show_bug.cgi?id=23458>
1577 Return CanvasPixelArray, et al -- the only difference between this
1578 and the original CPA implementation is that it now uses a ByteArray
1579 rather than a vector. JSC still uses a custom wrapper, but this allows
1580 ObjC, COM, and V8 bindings to be autogenerated again.
1584 * WebCore.vcproj/WebCore.vcproj:
1585 * WebCore.xcodeproj/project.pbxproj:
1586 * WebCoreSources.bkl:
1587 * bindings/js/JSImageDataCustom.cpp:
1589 * html/CanvasPixelArray.cpp: Added.
1590 (WebCore::CanvasPixelArray::create):
1591 (WebCore::CanvasPixelArray::CanvasPixelArray):
1592 * html/CanvasPixelArray.h: Added.
1593 (WebCore::CanvasPixelArray::data):
1594 (WebCore::CanvasPixelArray::length):
1595 (WebCore::CanvasPixelArray::set):
1596 (WebCore::CanvasPixelArray::get):
1597 * html/CanvasPixelArray.idl: Added.
1598 * html/CanvasRenderingContext2D.cpp:
1599 (WebCore::createEmptyImageData):
1600 * html/ImageData.cpp:
1601 (WebCore::ImageData::ImageData):
1603 (WebCore::ImageData::data):
1604 * html/ImageData.idl:
1605 * platform/graphics/cairo/ImageBufferCairo.cpp:
1606 (WebCore::ImageBuffer::getImageData):
1607 (WebCore::ImageBuffer::putImageData):
1608 * platform/graphics/cg/ImageBufferCG.cpp:
1609 (WebCore::ImageBuffer::getImageData):
1610 (WebCore::ImageBuffer::putImageData):
1612 2009-01-21 Dirk Schulze <krit@webkit.org>
1614 Reviewed by Nikolas Zimmermann.
1616 Remove last relics of platform dependent PaintServer in SVG.
1617 We draw everything with the help of GraphicsContext.
1619 Remove SVGPaintServerPlatform's
1620 [https://bugs.webkit.org/show_bug.cgi?id=23439]
1624 * WebCore.vcproj/WebCore.vcproj:
1625 * WebCore.xcodeproj/project.pbxproj:
1626 * svg/graphics/SVGPaintServer.cpp:
1627 (WebCore::SVGPaintServer::draw):
1628 (WebCore::SVGPaintServer::renderPath):
1629 (WebCore::SVGPaintServer::teardown):
1630 * svg/graphics/SVGPaintServer.h:
1631 * svg/graphics/SVGPaintServerGradient.cpp:
1632 * svg/graphics/SVGPaintServerGradient.h:
1633 * svg/graphics/SVGPaintServerPattern.cpp:
1634 * svg/graphics/SVGPaintServerPattern.h:
1635 * svg/graphics/SVGPaintServerSolid.cpp:
1636 * svg/graphics/SVGPaintServerSolid.h:
1637 * svg/graphics/cairo/SVGPaintServerCairo.cpp: Removed.
1638 * svg/graphics/cg/SVGPaintServerCg.cpp: Removed.
1639 * svg/graphics/qt/SVGPaintServerQt.cpp: Removed.
1640 * svg/graphics/skia/SVGPaintServerSkia.cpp: Removed.
1642 2009-01-21 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com>
1644 Reviewed by Alexey Proskuryakov.
1646 Move "Element -> ScriptElement" casting functionality into ScriptElement.h
1647 to be consistent with FormControlElement/InputElement/OptionElement/OptionGroupElement.
1649 It was living in XMLTokenizer before, which is not an obvious place for this.
1650 TODO: Rename 'formControlElementForElement' to 'toFormControlElement' (analogous changes for InputElement etc.)
1651 as suggested by Alexey, it really reads better this way.
1653 * dom/ScriptElement.cpp:
1654 (WebCore::toScriptElement):
1655 * dom/ScriptElement.h:
1656 * dom/XMLTokenizer.cpp:
1657 (WebCore::XMLTokenizer::notifyFinished):
1658 * dom/XMLTokenizer.h:
1659 * dom/XMLTokenizerLibxml2.cpp:
1660 (WebCore::XMLTokenizer::startElementNs):
1661 (WebCore::XMLTokenizer::endElementNs):
1662 * dom/XMLTokenizerQt.cpp:
1663 (WebCore::XMLTokenizer::parseStartElement):
1664 (WebCore::XMLTokenizer::parseEndElement):
1666 2009-01-20 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com>
1668 Reviewed by George Staikos.
1670 Fixes: https://bugs.webkit.org/show_bug.cgi?id=23444
1672 Refactor some functionality from HTMLOption/OptGroupElement needed by RenderListBox/RenderMenuList
1673 in two abstract base classes: OptionElement & OptionGroupElement living in dom/ - just like it
1674 has been done before for FormControlElement and RenderTextControl.
1676 This is needed to prepare the addtion of WMLOption/OptGroupElement.
1681 * WebCore.vcproj/WebCore.vcproj:
1682 * WebCore.xcodeproj/project.pbxproj:
1683 * WebCoreSources.bkl:
1684 * dom/OptionElement.cpp: Added.
1685 (WebCore::optionElementForElement):
1686 * dom/OptionElement.h: Added.
1687 (WebCore::OptionElement::~OptionElement):
1688 (WebCore::OptionElement::OptionElement):
1689 * dom/OptionGroupElement.cpp: Added.
1690 (WebCore::optionGroupElementForElement):
1691 * dom/OptionGroupElement.h: Added.
1692 (WebCore::OptionGroupElement::~OptionGroupElement):
1693 (WebCore::OptionGroupElement::OptionGroupElement):
1694 * html/HTMLOptGroupElement.h:
1695 * html/HTMLOptionElement.cpp:
1696 (WebCore::HTMLOptionElement::optionText):
1697 * html/HTMLOptionElement.h:
1698 (WebCore::HTMLOptionElement::selected):
1699 * rendering/RenderListBox.cpp:
1700 (WebCore::RenderListBox::updateFromElement):
1701 (WebCore::RenderListBox::paintItemForeground):
1702 (WebCore::RenderListBox::paintItemBackground):
1703 * rendering/RenderMenuList.cpp:
1704 (WebCore::RenderMenuList::updateOptionsWidth):
1705 (WebCore::RenderMenuList::setTextFromOption):
1706 (WebCore::RenderMenuList::itemText):
1707 (WebCore::RenderMenuList::itemIsSelected):
1709 2009-01-20 Darin Adler <darin@apple.com>
1711 Reviewed by Alexey Proskuryakov.
1713 Bug 23448: memory leak in Mac version of preferredExtensionForImageSourceType
1714 https://bugs.webkit.org/show_bug.cgi?id=23448
1716 * platform/graphics/cg/ImageSourceCGMac.mm:
1717 (WebCore::preferredExtensionForImageSourceType): Use RetainPtr to avoid the leak.
1719 2009-01-20 Darin Adler <darin@apple.com>
1721 Try to fix Wx build.
1723 * platform/wx/PasteboardWx.cpp:
1724 (WebCore::Pasteboard::writeSelection): Removed code that replaces backslash
1725 with backslashAsCurrencySymbol. I'm pretty sure this is not needed when writing
1726 to the clipboard. Other platforms don't do it. If it was needed, the new function
1727 to use would be displayStringModifiedByEncoding.
1729 2009-01-19 Brent Fulgham <bfulgham@gmail.com>
1731 Reviewed by Mitz Pettel.
1733 Fixes https://bugs.webkit.org/show_bug.cgi?id=23423.
1735 The Windows Cairo post-build targets (Release/Debug) do not
1736 copy all of the headers that the CG-based build does.
1738 * WebCore.vcproj/WebCore.vcproj: Extend WebCore Cairo build targets
1739 to copy the page/animation/*.h files into WebKitBuild so that
1740 WebKit can find them.
1742 2009-01-20 Dmitry Titov <dimich@chromium.org>
1744 Reviewed by Alexey Proskuryakov.
1746 https://bugs.webkit.org/show_bug.cgi?id=23413
1747 Remove unused WebCore::setDeferringTimers()
1749 * platform/Timer.cpp:
1750 (WebCore::updateSharedTimer):
1753 2009-01-20 David Hyatt <hyatt@apple.com>
1755 Tighten up the type of RenderObject owned by RenderLayer to be a RenderBox. Rename m_object to
1756 m_renderer to be consistent with the corresponding member function.
1758 Reviewed by Jon Honeycutt
1760 * rendering/RenderLayer.cpp:
1761 (WebCore::RenderLayer::RenderLayer):
1762 (WebCore::RenderLayer::updateLayerPositions):
1763 (WebCore::RenderLayer::updateVisibilityStatus):
1764 (WebCore::RenderLayer::updateLayerPosition):
1765 (WebCore::RenderLayer::stackingContext):
1766 (WebCore::RenderLayer::enclosingPositionedAncestor):
1767 (WebCore::RenderLayer::enclosingTransformedAncestor):
1768 (WebCore::RenderLayer::isTransparent):
1769 (WebCore::RenderLayer::convertToLayerCoords):
1770 (WebCore::RenderLayer::scrollByRecursively):
1771 (WebCore::RenderLayer::scrollToOffset):
1772 (WebCore::RenderLayer::scrollRectToVisible):
1773 (WebCore::RenderLayer::resize):
1774 (WebCore::RenderLayer::scrollbarCornerPresent):
1775 (WebCore::RenderLayer::createScrollbar):
1776 (WebCore::RenderLayer::setHasHorizontalScrollbar):
1777 (WebCore::RenderLayer::setHasVerticalScrollbar):
1778 (WebCore::RenderLayer::positionOverflowControls):
1779 (WebCore::RenderLayer::computeScrollDimensions):
1780 (WebCore::RenderLayer::updateOverflowStatus):
1781 (WebCore::RenderLayer::updateScrollInfoAfterLayout):
1782 (WebCore::RenderLayer::paintOverflowControls):
1783 (WebCore::RenderLayer::paintScrollCorner):
1784 (WebCore::RenderLayer::paintResizer):
1785 (WebCore::RenderLayer::isPointInResizeControl):
1786 (WebCore::RenderLayer::paintLayer):
1787 (WebCore::RenderLayer::hitTestLayer):
1788 (WebCore::RenderLayer::updateClipRects):
1789 (WebCore::RenderLayer::calculateClipRects):
1790 (WebCore::RenderLayer::calculateRects):
1791 (WebCore::RenderLayer::clearClipRects):
1792 (WebCore::RenderLayer::repaintIncludingDescendants):
1793 (WebCore::RenderLayer::styleChanged):
1794 (WebCore::RenderLayer::updateScrollCornerStyle):
1795 (WebCore::RenderLayer::updateResizerStyle):
1796 * rendering/RenderLayer.h:
1797 (WebCore::RenderLayer::renderer):
1798 (WebCore::RenderLayer::hasReflection):
1799 (WebCore::RenderLayer::hasTransform):
1801 2009-01-20 David Hyatt <hyatt@apple.com>
1803 Fix Mac build bustage from my selection changes. I forgot to implement the functions on RenderThemeMac
1804 for returning the appropriate listbox selection colors.
1808 * rendering/RenderThemeMac.mm:
1809 (WebCore::RenderThemeMac::platformActiveListBoxSelectionForegroundColor):
1810 (WebCore::RenderThemeMac::platformInactiveListBoxSelectionForegroundColor):
1811 (WebCore::RenderThemeMac::platformInactiveListBoxSelectionBackgroundColor):
1813 2009-01-20 Dave Hyatt <hyatt@apple.com>
1815 Fix for focus rings on Windows. Make sure that focus rings draw for all controls but buttons.
1817 Fix list box selection colors on Windows. Also add a cache for all of the selection colors (and not just the two
1818 background selection colors).
1820 Reviewed by Adam Roben
1822 * rendering/RenderObject.cpp:
1823 (WebCore::RenderObject::selectionForegroundColor):
1824 * rendering/RenderTheme.cpp:
1825 (WebCore::RenderTheme::activeSelectionBackgroundColor):
1826 (WebCore::RenderTheme::inactiveSelectionBackgroundColor):
1827 (WebCore::RenderTheme::activeSelectionForegroundColor):
1828 (WebCore::RenderTheme::inactiveSelectionForegroundColor):
1829 (WebCore::RenderTheme::activeListBoxSelectionBackgroundColor):
1830 (WebCore::RenderTheme::inactiveListBoxSelectionBackgroundColor):
1831 (WebCore::RenderTheme::activeListBoxSelectionForegroundColor):
1832 (WebCore::RenderTheme::inactiveListBoxSelectionForegroundColor):
1833 (WebCore::RenderTheme::platformActiveSelectionForegroundColor):
1834 (WebCore::RenderTheme::platformInactiveSelectionBackgroundColor):
1835 (WebCore::RenderTheme::platformInactiveSelectionForegroundColor):
1836 (WebCore::RenderTheme::platformActiveListBoxSelectionBackgroundColor):
1837 (WebCore::RenderTheme::platformActiveListBoxSelectionForegroundColor):
1838 (WebCore::RenderTheme::platformInactiveListBoxSelectionBackgroundColor):
1839 (WebCore::RenderTheme::platformInactiveListBoxSelectionForegroundColor):
1840 (WebCore::RenderTheme::platformColorsDidChange):
1841 * rendering/RenderTheme.h:
1842 (WebCore::RenderTheme::supportsForegroundSelectionColors):
1843 (WebCore::RenderTheme::supportsForegroundListBoxSelectionColors):
1844 * rendering/RenderThemeMac.h:
1845 (WebCore::RenderThemeMac::supportsForegroundSelectionColors):
1846 * rendering/RenderThemeMac.mm:
1847 (WebCore::RenderThemeMac::platformActiveListBoxSelectionBackgroundColor):
1848 * rendering/RenderThemeWin.cpp:
1849 (WebCore::RenderThemeWin::platformInactiveSelectionBackgroundColor):
1850 (WebCore::RenderThemeWin::platformInactiveSelectionForegroundColor):
1851 (WebCore::RenderThemeWin::supportsFocus):
1852 (WebCore::RenderThemeWin::supportsFocusRing):
1853 * rendering/RenderThemeWin.h:
1855 2009-01-20 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com>
1857 Reviewed by George Staikos.
1859 Fixes: https://bugs.webkit.org/show_bug.cgi?id=23434
1861 Add WML <input> element support - it required a lot of changes to the RenderText*/HTMLInput* code.
1862 Now any language can provide <input>-style elements, without having to inherit from HTML* classes.
1864 No WML specific features/attributes are handled so far. A follow-up patch will provide those bits.
1865 Added very simple fast/wml/input.wml, just checking that input elements can be rendered properly now.
1866 Detailed testcases will follow in conjunction with the WML specific attribute support.
1870 * WebCore.vcproj/WebCore.vcproj:
1871 * WebCore.xcodeproj/project.pbxproj:
1872 * css/CSSStyleSelector.cpp:
1873 (WebCore::CSSStyleSelector::adjustRenderStyle):
1874 * dom/FormControlElement.cpp: Activate disabled code from previous checking.
1875 (WebCore::formControlElementForElement):
1876 * dom/InputElement.cpp: Ditto.
1877 (WebCore::inputElementForElement):
1878 * wml/WMLInputElement.cpp: Added.
1879 (WebCore::WMLInputElement::WMLInputElement):
1880 (WebCore::WMLInputElement::~WMLInputElement):
1881 (WebCore::isInputFocusable):
1882 (WebCore::WMLInputElement::isKeyboardFocusable):
1883 (WebCore::WMLInputElement::isMouseFocusable):
1884 (WebCore::WMLInputElement::dispatchFocusEvent):
1885 (WebCore::WMLInputElement::dispatchBlurEvent):
1886 (WebCore::WMLInputElement::updateFocusAppearance):
1887 (WebCore::WMLInputElement::aboutToUnload):
1888 (WebCore::WMLInputElement::size):
1889 (WebCore::WMLInputElement::name):
1890 (WebCore::WMLInputElement::value):
1891 (WebCore::WMLInputElement::setValue):
1892 (WebCore::WMLInputElement::setValueFromRenderer):
1893 (WebCore::WMLInputElement::saveState):
1894 (WebCore::WMLInputElement::restoreState):
1895 (WebCore::WMLInputElement::select):
1896 (WebCore::WMLInputElement::accessKeyAction):
1897 (WebCore::WMLInputElement::parseMappedAttribute):
1898 (WebCore::WMLInputElement::copyNonAttributeProperties):
1899 (WebCore::WMLInputElement::createRenderer):
1900 (WebCore::WMLInputElement::attach):
1901 (WebCore::WMLInputElement::detach):
1902 (WebCore::WMLInputElement::appendFormData):
1903 (WebCore::WMLInputElement::reset):
1904 (WebCore::WMLInputElement::defaultEventHandler):
1905 (WebCore::WMLInputElement::cacheSelection):
1906 (WebCore::WMLInputElement::constrainValue):
1907 (WebCore::WMLInputElement::documentDidBecomeActive):
1908 (WebCore::WMLInputElement::placeholderShouldBeVisible):
1909 (WebCore::WMLInputElement::willMoveToNewOwnerDocument):
1910 (WebCore::WMLInputElement::didMoveToNewOwnerDocument):
1911 * wml/WMLInputElement.h: Added.
1912 (WebCore::WMLInputElement::valueMatchesRenderer):
1913 (WebCore::WMLInputElement::setValueMatchesRenderer):
1914 (WebCore::WMLInputElement::shouldUseInputMethod):
1915 (WebCore::WMLInputElement::isChecked):
1916 (WebCore::WMLInputElement::isIndeterminate):
1917 (WebCore::WMLInputElement::isTextControl):
1918 (WebCore::WMLInputElement::isRadioButton):
1919 (WebCore::WMLInputElement::isTextField):
1920 (WebCore::WMLInputElement::isSearchField):
1921 (WebCore::WMLInputElement::isInputTypeHidden):
1922 (WebCore::WMLInputElement::isPasswordField):
1923 (WebCore::WMLInputElement::searchEventsShouldBeDispatched):
1924 (WebCore::WMLInputElement::placeholderValue):
1925 * wml/WMLTagNames.in:
1927 2009-01-20 Darin Adler <darin@apple.com>
1929 Reviewed by John Sullivan.
1931 Remove a little dead code left over after the fix for
1932 https://bugs.webkit.org/show_bug.cgi?id=11395, which
1933 moved pointer-events from SVG to be shared with HTML.
1935 * css/SVGCSSParser.cpp:
1936 (WebCore::CSSParser::parseSVGValue): Remove SVG's parsing of this
1937 property since it's handled in the non-SVG function now so we'll
1940 2009-01-20 Julien Chaffraix <jchaffraix@webkit.org>
1942 Reviewed by Darin Adler.
1944 Bug 23438: Provide a default value to the .in file parser
1946 Added the default value 1 as it simplifies some of
1947 the format by removing some "=1" that were awkward.
1949 This was suggested by Darin Adler as par of a previous
1952 * bindings/scripts/InFilesParser.pm: When no value
1953 was entered (the second part of the split is undef),
1954 provide the default value.
1956 * html/HTMLAttributeNames.in: Removed unnecessary "=1".
1957 * html/HTMLTagNames.in: Ditto.
1958 * svg/svgattrs.in: Ditto.
1959 * svg/svgtags.in: Ditto.
1960 * svg/xlinkattrs.in: Ditto.
1961 * wml/WMLAttributeNames.in: Ditto.
1963 2009-01-20 Anders Carlsson <andersca@apple.com>
1965 Reviewed by Darin Adler.
1967 * bridge/c/c_class.cpp:
1968 * bridge/c/c_class.h:
1969 Get rid of CClass::name().
1971 * bridge/jni/jni_class.h:
1972 Get rid of JavaClass::name().
1974 * bridge/objc/objc_class.h:
1975 * bridge/objc/objc_class.mm:
1976 Get rid of ObjcClass::name().
1978 * bridge/objc/objc_instance.h:
1979 Get rid of supportsSetValueOfUndefinedField.
1981 * bridge/objc/objc_instance.mm:
1982 (ObjcInstance::setValueOfUndefinedField):
1983 Fold supportsSetValueOfUndefinedField into setValueOfUndefinedField.
1985 * bridge/runtime.cpp:
1986 Get rid of getValueOfField and setValueOfField.
1989 (JSC::Bindings::Instance::setValueOfUndefinedField):
1990 Have this return a bool and get rid of supportsSetValueOfUndefinedField
1992 * bridge/runtime_object.cpp:
1993 (JSC::RuntimeObjectImp::fieldGetter):
1994 Call Field::valueFromInstance on the field.
1996 (JSC::RuntimeObjectImp::put):
1997 Call Field::setValueToInstance on the field.
1999 2009-01-20 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com>
2001 Not reviewed. Forgot to land build changes for non-mac platforms.
2006 * WebCore.vcproj/WebCore.vcproj:
2007 * WebCoreSources.bkl:
2009 2009-01-20 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com>
2011 Reviewed by Adam Roben.
2013 Fix last-minute regression, introduced by simplifying max length determination - by
2014 clamping using min/max, negative maxLength values got broken.
2016 * dom/InputElement.cpp:
2017 (WebCore::InputElement::parseMaxLengthAttribute):
2019 2009-01-20 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com>
2021 Reviewed by Adam Roben.
2023 Fixes: https://bugs.webkit.org/show_bug.cgi?id=23433
2025 Add InputElement abstraction, similar to the FormControlElement refactorization
2026 done a month ago. The goal is to share as much code as possible between HTML/WMLInputElement.
2027 In a previous patch the RenderTextControl class has been split-up in RenderTextControlSingle/MultiLine,
2028 RenderTextControl itself only depends on FormControlElement, RenderTextControlSingleLine still
2029 depends on HTMLInputElement directly -> change that and make it use the new InputElement abstraction.
2031 A lot of code from HTMLInputElement now lives in InputElement, as static member functions - the
2032 InputElement class itself is an abstract virtual class, just like ScriptElement. HTML/WMLInputElement
2033 derive from InputElement, and hold a InputElementData member variable, that they pass to the
2034 static functions in InputElement. The abstraction is equal to the one chosen for HTML/SVGScriptElement.
2036 * WebCore.xcodeproj/project.pbxproj:
2037 * dom/FormControlElement.cpp: Added.
2038 (WebCore::formControlElementForElement):
2039 * dom/FormControlElement.h:
2040 * dom/InputElement.cpp: Added.
2041 (WebCore::InputElement::dispatchFocusEvent):
2042 (WebCore::InputElement::dispatchBlurEvent):
2043 (WebCore::InputElement::updatePlaceholderVisibility):
2044 (WebCore::InputElement::updateFocusAppearance):
2045 (WebCore::InputElement::updateSelectionRange):
2046 (WebCore::InputElement::aboutToUnload):
2047 (WebCore::InputElement::setValueFromRenderer):
2048 (WebCore::numCharactersInGraphemeClusters):
2049 (WebCore::InputElement::constrainValue):
2050 (WebCore::numGraphemeClusters):
2051 (WebCore::InputElement::handleBeforeTextInsertedEvent):
2052 (WebCore::InputElement::parseSizeAttribute):
2053 (WebCore::InputElement::parseMaxLengthAttribute):
2054 (WebCore::InputElement::updateValueIfNeeded):
2055 (WebCore::InputElement::notifyFormStateChanged):
2056 (WebCore::InputElementData::InputElementData):
2057 (WebCore::InputElementData::~InputElementData):
2058 (WebCore::InputElementData::name):
2059 (WebCore::inputElementForElement):
2060 * dom/InputElement.h: Added.
2061 (WebCore::InputElement::~InputElement):
2062 (WebCore::InputElement::InputElement):
2063 (WebCore::InputElementData::inputElement):
2064 (WebCore::InputElementData::element):
2065 (WebCore::InputElementData::placeholderShouldBeVisible):
2066 (WebCore::InputElementData::setPlaceholderShouldBeVisible):
2067 (WebCore::InputElementData::setName):
2068 (WebCore::InputElementData::value):
2069 (WebCore::InputElementData::setValue):
2070 (WebCore::InputElementData::size):
2071 (WebCore::InputElementData::setSize):
2072 (WebCore::InputElementData::maxLength):
2073 (WebCore::InputElementData::setMaxLength):
2074 (WebCore::InputElementData::cachedSelectionStart):
2075 (WebCore::InputElementData::setCachedSelectionStart):
2076 (WebCore::InputElementData::cachedSelectionEnd):
2077 (WebCore::InputElementData::setCachedSelectionEnd):
2078 * html/HTMLInputElement.cpp:
2079 (WebCore::HTMLInputElement::HTMLInputElement):
2080 (WebCore::HTMLInputElement::name):
2081 (WebCore::HTMLInputElement::updateFocusAppearance): Moved to InputElement.
2082 (WebCore::HTMLInputElement::aboutToUnload): Ditto.
2083 (WebCore::HTMLInputElement::dispatchFocusEvent): Ditto.
2084 (WebCore::HTMLInputElement::dispatchBlurEvent): Ditto.
2085 (WebCore::HTMLInputElement::setSelectionRange): Moved to InputElement::updateSelectionRange, call it from here.
2086 (WebCore::HTMLInputElement::parseMappedAttribute):
2087 (WebCore::HTMLInputElement::size): Make virtual and override InputElements abstract version.
2088 (WebCore::HTMLInputElement::copyNonAttributeProperties):
2089 (WebCore::HTMLInputElement::value): Make virtual and override InputElements abstract version.
2090 (WebCore::HTMLInputElement::setValue): Ditto.
2091 (WebCore::HTMLInputElement::placeholderValue): Ditto.
2092 (WebCore::HTMLInputElement::searchEventsShouldBeDispatched): Ditto.
2093 (WebCore::HTMLInputElement::setValueFromRenderer): Ditto.
2094 (WebCore::HTMLInputElement::setFileListFromRenderer): Use new code in InputElement::setValueFromRenderer
2095 (WebCore::HTMLInputElement::defaultEventHandler):
2096 (WebCore::HTMLInputElement::setDefaultName): Added as helper function for HTMLIsIndexElement.
2097 (WebCore::HTMLInputElement::maxLength): Added accesor.
2098 (WebCore::HTMLInputElement::constrainValue): Move functionality to InputElement::constrainValue.
2099 (WebCore::HTMLInputElement::cacheSelection): Move functionality to InputElement::cacheSelection.
2100 (WebCore::HTMLInputElement::selection):
2101 (WebCore::HTMLInputElement::placeholderShouldBeVisible): Make virtual and override InputElements abstract version.
2102 * html/HTMLInputElement.h:
2103 (WebCore::HTMLInputElement::isTextField):
2104 (WebCore::HTMLInputElement::isSearchField):
2105 (WebCore::HTMLInputElement::isAutofilled):
2106 * html/HTMLIsIndexElement.cpp:
2107 (WebCore::HTMLIsIndexElement::HTMLIsIndexElement):
2108 * rendering/RenderTextControl.cpp:
2109 (WebCore::RenderTextControl::formControlElement):
2110 * rendering/RenderTextControlSingleLine.cpp:
2111 (WebCore::RenderTextControlSingleLine::placeholderShouldBeVisible):
2112 (WebCore::RenderTextControlSingleLine::addSearchResult):
2113 (WebCore::RenderTextControlSingleLine::stopSearchEventTimer):
2114 (WebCore::RenderTextControlSingleLine::showPopup):
2115 (WebCore::RenderTextControlSingleLine::hidePopup):
2116 (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
2117 (WebCore::RenderTextControlSingleLine::capsLockStateMayHaveChanged):
2118 (WebCore::RenderTextControlSingleLine::preferredContentWidth):
2119 (WebCore::RenderTextControlSingleLine::createSubtreeIfNeeded):
2120 (WebCore::RenderTextControlSingleLine::updateFromElement):
2121 (WebCore::RenderTextControlSingleLine::cacheSelection):
2122 (WebCore::RenderTextControlSingleLine::createInnerBlockStyle):
2123 (WebCore::RenderTextControlSingleLine::createResultsButtonStyle):
2124 (WebCore::RenderTextControlSingleLine::createCancelButtonStyle):
2125 (WebCore::RenderTextControlSingleLine::updateCancelButtonVisibility):
2126 (WebCore::RenderTextControlSingleLine::startSearchEventTimer):
2127 (WebCore::RenderTextControlSingleLine::searchEventTimerFired):
2128 (WebCore::RenderTextControlSingleLine::valueChanged):
2129 (WebCore::RenderTextControlSingleLine::setTextFromItem):
2130 (WebCore::RenderTextControlSingleLine::inputElement):
2131 * rendering/RenderTextControlSingleLine.h:
2133 2009-01-20 Dirk Schulze <krit@webkit.org>
2135 Reviewed by Nikolas Zimmermann.
2137 Make SVG pattern platform independent and remove platform code.
2139 Make SVGPattern platform independent
2140 https://bugs.webkit.org/show_bug.cgi?id=21205
2144 * WebCore.vcproj/WebCore.vcproj:
2145 * WebCore.xcodeproj/project.pbxproj:
2146 * platform/graphics/GraphicsContext.h:
2147 * platform/graphics/cg/GraphicsContextCG.cpp:
2148 (WebCore::GraphicsContext::applyStrokePattern):
2149 (WebCore::GraphicsContext::applyFillPattern):
2150 (WebCore::GraphicsContext::drawPath):
2151 (WebCore::GraphicsContext::fillPath):
2152 (WebCore::GraphicsContext::strokePath):
2153 (WebCore::GraphicsContext::fillRect):
2154 (WebCore::GraphicsContext::strokeRect):
2155 * svg/graphics/SVGPaintServerPattern.cpp:
2156 (WebCore::SVGPaintServerPattern::SVGPaintServerPattern):
2157 (WebCore::SVGPaintServerPattern::~SVGPaintServerPattern):
2158 (WebCore::SVGPaintServerPattern::setup):
2159 (WebCore::SVGPaintServerPattern::renderPath):
2160 (WebCore::SVGPaintServerPattern::teardown):
2161 * svg/graphics/SVGPaintServerPattern.h:
2162 * svg/graphics/cairo/SVGPaintServerPatternCairo.cpp: Removed.
2163 * svg/graphics/cg/SVGPaintServerPatternCg.cpp: Removed.
2164 * svg/graphics/qt/SVGPaintServerPatternQt.cpp: Removed.
2165 * svg/graphics/skia/SVGPaintServerPatternSkia.cpp: Removed.
2167 2009-01-20 Darin Fisher <darin@chromium.org>
2169 Reviewed by Eric Seidel.
2171 https://bugs.webkit.org/show_bug.cgi?id=23436
2172 Upstream rendering/RenderThemeChromium*
2174 * rendering/RenderThemeChromiumGtk.cpp: Added.
2175 * rendering/RenderThemeChromiumGtk.h: Added.
2176 * rendering/RenderThemeChromiumMac.h: Added.
2177 * rendering/RenderThemeChromiumMac.mm: Added.
2178 * rendering/RenderThemeChromiumWin.cpp: Added.
2179 * rendering/RenderThemeChromiumWin.h: Added.
2181 2009-01-20 Darin Adler <darin@apple.com>
2183 Reviewed by Mark Rowe.
2185 Bug 23352: Turn on more compiler warnings in the Mac build
2186 https://bugs.webkit.org/show_bug.cgi?id=23352
2188 First patch: Fix some simple cases of various warnings.
2190 * platform/DeprecatedPtrListImpl.cpp:
2191 (WebCore::DeprecatedPtrListImpl::insert): Use const_cast to change const-ness.
2192 * platform/graphics/mac/SimpleFontDataMac.mm:
2193 (WebCore::SimpleFontData::containsCharacters): Ditto.
2195 * platform/text/PlatformString.h: Overload for short and unsigned short to avoid
2196 ambiguity leading to warnings.
2197 * platform/text/String.cpp:
2198 (WebCore::String::number): Implemented overloads.
2200 * platform/text/TextStream.cpp:
2201 (WebCore::TextStream::operator<<): Overload for bool to avoid ambiguity leading
2203 * platform/text/TextStream.h: Ditto.
2205 * rendering/InlineFlowBox.h: Fix declaration that was specifying the wrong type.
2207 * svg/graphics/filters/cg/WKLinearTransferFilter.m: Fix stray characters after
2208 #endif that should be a comment instead.
2209 * svg/graphics/filters/cg/WKSpecularLightingFilter.h: Ditto.
2211 * xml/XPathPath.h: Remove unneeded redundant declaration.
2213 2009-01-20 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com>
2215 Build fix for WML enabled builds, not reviewed.
2217 Fix unused variable warning.
2219 * wml/WMLGoElement.cpp:
2220 (WebCore::WMLGoElement::executeTask):
2222 2009-01-20 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com>
2224 Build fix for WML enabled builds, not reviewed.
2226 Rename 'continuation' to 'virtualContinuation'.
2228 * wml/WMLAElement.cpp:
2229 (WebCore::WMLAElement::isKeyboardFocusable):
2231 2009-01-20 Oliver Hunt <oliver@apple.com>
2235 Move runtime/ByteArray to wtf/ByteArray
2237 * ForwardingHeaders/wtf/ByteArray.h: Renamed from WebCore/ForwardingHeaders/runtime/ByteArray.h.
2238 * html/CanvasRenderingContext2D.cpp:
2239 * html/ImageData.cpp:
2240 (WebCore::ImageData::ImageData):
2242 (WebCore::ImageData::data):
2244 2009-01-20 Darin Fisher <darin@chromium.org>
2246 Reviewed by Sam Weinig.
2248 https://bugs.webkit.org/show_bug.cgi?id=23391
2249 Upstream plugins/chromium/
2251 * plugins/chromium: Added.
2252 * plugins/chromium/PluginDataChromium.cpp: Added.
2254 2009-01-19 Steve Falkenburg <sfalken@apple.com>
2256 Fix Windows release build.
2257 Move SVG files into all-in-one file for Windows build.
2259 * WebCore.vcproj/WebCore.vcproj:
2260 * svg/SVGAllInOne.cpp: Added.
2262 2009-01-19 Steve Falkenburg <sfalken@apple.com>
2265 Move new derived sources into all-in-one DerivedSources.cpp
2267 * DerivedSources.cpp:
2268 * WebCore.vcproj/WebCore.vcproj:
2270 2009-01-19 Sam Weinig <sam@webkit.org>
2274 * bridge/qt/qt_instance.cpp:
2275 (JSC::Bindings::QtInstance::mark):
2276 * bridge/qt/qt_runtime.cpp:
2277 (JSC::Bindings::valueRealType):
2278 (JSC::Bindings::convertValueToQVariant):
2279 (JSC::Bindings::QtRuntimeConnectionMethod::call):
2280 (JSC::Bindings::QtConnectionObject::execute):
2282 2009-01-19 Sam Weinig <sam@webkit.org>
2286 * plugins/PluginView.cpp:
2287 (WebCore::getString):
2289 2009-01-19 Sam Weinig <sam@webkit.org>
2291 Rubber-stamped by Gavin Barraclough.
2293 Remove temporary operator-> from JSValuePtr.
2295 * WebCore.xcodeproj/project.pbxproj:
2296 * bindings/js/JSAudioConstructor.cpp:
2297 (WebCore::constructAudio):
2298 * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
2299 (WebCore::toHTMLCanvasStyle):
2300 (WebCore::JSCanvasRenderingContext2D::setFillColor):
2301 (WebCore::JSCanvasRenderingContext2D::setStrokeColor):
2302 (WebCore::JSCanvasRenderingContext2D::strokeRect):
2303 (WebCore::JSCanvasRenderingContext2D::drawImage):
2304 (WebCore::JSCanvasRenderingContext2D::drawImageFromRect):
2305 (WebCore::JSCanvasRenderingContext2D::setShadow):
2306 (WebCore::JSCanvasRenderingContext2D::createPattern):
2307 (WebCore::JSCanvasRenderingContext2D::putImageData):
2308 (WebCore::JSCanvasRenderingContext2D::fillText):
2309 (WebCore::JSCanvasRenderingContext2D::strokeText):
2310 * bindings/js/JSClipboardCustom.cpp:
2311 (WebCore::JSClipboard::clearData):
2312 (WebCore::JSClipboard::getData):
2313 (WebCore::JSClipboard::setData):
2314 (WebCore::JSClipboard::setDragImage):
2315 * bindings/js/JSCustomPositionCallback.cpp:
2316 (WebCore::JSCustomPositionCallback::handleEvent):
2317 * bindings/js/JSCustomPositionErrorCallback.cpp:
2318 (WebCore::JSCustomPositionErrorCallback::handleEvent):
2319 * bindings/js/JSCustomSQLStatementCallback.cpp:
2320 (WebCore::JSCustomSQLStatementCallback::handleEvent):
2321 * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
2322 (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
2323 * bindings/js/JSCustomSQLTransactionCallback.cpp:
2324 (WebCore::JSCustomSQLTransactionCallback::handleEvent):
2325 * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
2326 (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
2327 * bindings/js/JSCustomVoidCallback.cpp:
2328 (WebCore::JSCustomVoidCallback::handleEvent):
2329 (WebCore::toVoidCallback):
2330 * bindings/js/JSCustomXPathNSResolver.cpp:
2331 (WebCore::JSCustomXPathNSResolver::create):
2332 (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
2333 * bindings/js/JSDOMApplicationCacheCustom.cpp:
2334 (WebCore::JSDOMApplicationCache::hasItem):
2335 (WebCore::JSDOMApplicationCache::add):
2336 (WebCore::JSDOMApplicationCache::remove):
2337 (WebCore::JSDOMApplicationCache::addEventListener):
2338 (WebCore::JSDOMApplicationCache::removeEventListener):
2339 * bindings/js/JSDOMBinding.cpp:
2340 (WebCore::valueToStringWithNullCheck):
2341 (WebCore::valueToStringWithUndefinedOrNullCheck):
2342 (WebCore::reportException):
2343 * bindings/js/JSDOMGlobalObject.cpp:
2344 (WebCore::JSDOMGlobalObject::findJSEventListener):
2345 (WebCore::JSDOMGlobalObject::findOrCreateJSEventListener):
2346 (WebCore::JSDOMGlobalObject::findJSUnprotectedEventListener):
2347 (WebCore::JSDOMGlobalObject::findOrCreateJSUnprotectedEventListener):
2348 * bindings/js/JSDOMStringListCustom.cpp:
2349 (WebCore::JSDOMStringList::item):
2350 * bindings/js/JSDOMWindowBase.cpp:
2351 (WebCore::JSDOMWindowBase::getOwnPropertySlot):
2352 (windowProtoFuncOpen):
2353 (WebCore::toJSDOMWindow):
2354 * bindings/js/JSDOMWindowCustom.cpp:
2355 (WebCore::JSDOMWindow::setLocation):
2356 (WebCore::JSDOMWindow::postMessage):
2357 (WebCore::setTimeoutOrInterval):
2358 (WebCore::JSDOMWindow::clearTimeout):
2359 (WebCore::JSDOMWindow::clearInterval):
2360 (WebCore::JSDOMWindow::atob):
2361 (WebCore::JSDOMWindow::btoa):
2362 (WebCore::JSDOMWindow::addEventListener):
2363 (WebCore::JSDOMWindow::removeEventListener):
2364 (WebCore::toDOMWindow):
2365 * bindings/js/JSDatabaseCustom.cpp:
2366 (WebCore::JSDatabase::changeVersion):
2367 (WebCore::JSDatabase::transaction):
2368 * bindings/js/JSDocumentCustom.cpp:
2369 (WebCore::JSDocument::setLocation):
2370 * bindings/js/JSElementCustom.cpp:
2371 (WebCore::JSElement::setAttribute):
2372 (WebCore::JSElement::setAttributeNS):
2373 * bindings/js/JSEventListener.cpp:
2374 (WebCore::JSAbstractEventListener::handleEvent):
2375 (WebCore::JSLazyEventListener::parseCode):
2376 * bindings/js/JSEventTargetNodeCustom.cpp:
2377 (WebCore::JSEventTargetNode::addEventListener):
2378 (WebCore::JSEventTargetNode::removeEventListener):
2379 * bindings/js/JSGeolocationCustom.cpp:
2380 (WebCore::createPositionOptions):
2381 (WebCore::JSGeolocation::getCurrentPosition):
2382 (WebCore::JSGeolocation::watchPosition):
2383 * bindings/js/JSHTMLCollectionCustom.cpp:
2384 (WebCore::callHTMLCollection):
2385 (WebCore::JSHTMLCollection::canGetItemsForName):
2386 (WebCore::JSHTMLCollection::item):
2387 (WebCore::JSHTMLCollection::namedItem):
2388 * bindings/js/JSHTMLDocumentCustom.cpp:
2389 (WebCore::JSHTMLDocument::open):
2390 (WebCore::writeHelper):
2391 * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
2392 (WebCore::JSHTMLOptionsCollection::setLength):
2393 (WebCore::JSHTMLOptionsCollection::add):
2394 * bindings/js/JSHTMLSelectElementCustom.cpp:
2395 (WebCore::JSHTMLSelectElement::remove):
2396 (WebCore::selectIndexSetter):
2397 * bindings/js/JSImageConstructor.cpp:
2398 (WebCore::constructImage):
2399 * bindings/js/JSInspectedObjectWrapper.cpp:
2400 (WebCore::JSInspectedObjectWrapper::wrap):
2401 (WebCore::JSInspectedObjectWrapper::prepareIncomingValue):
2402 * bindings/js/JSInspectorCallbackWrapper.cpp:
2403 (WebCore::JSInspectorCallbackWrapper::wrap):
2404 * bindings/js/JSJavaScriptCallFrameCustom.cpp:
2405 (WebCore::JSJavaScriptCallFrame::evaluate):
2406 * bindings/js/JSLocationCustom.cpp:
2407 (WebCore::JSLocation::setHref):
2408 (WebCore::JSLocation::setProtocol):
2409 (WebCore::JSLocation::setHost):
2410 (WebCore::JSLocation::setHostname):
2411 (WebCore::JSLocation::setPort):
2412 (WebCore::JSLocation::setPathname):
2413 (WebCore::JSLocation::setSearch):
2414 (WebCore::JSLocation::setHash):
2415 (WebCore::JSLocation::replace):
2416 (WebCore::JSLocation::assign):
2417 * bindings/js/JSMessageChannelConstructor.cpp:
2418 (WebCore::JSMessageChannelConstructor::mark):
2419 * bindings/js/JSMessagePortCustom.cpp:
2420 (WebCore::JSMessagePort::startConversation):
2421 (WebCore::JSMessagePort::addEventListener):
2422 (WebCore::JSMessagePort::removeEventListener):
2423 * bindings/js/JSNodeFilterCondition.cpp:
2424 (WebCore::JSNodeFilterCondition::mark):
2425 (WebCore::JSNodeFilterCondition::acceptNode):
2426 * bindings/js/JSNodeFilterCondition.h:
2427 * bindings/js/JSNodeFilterCustom.cpp:
2428 (WebCore::toNodeFilter):
2429 * bindings/js/JSNodeListCustom.cpp:
2430 (WebCore::callNodeList):
2431 * bindings/js/JSOptionConstructor.cpp:
2432 (WebCore::constructHTMLOptionElement):
2433 * bindings/js/JSQuarantinedObjectWrapper.cpp:
2434 (WebCore::JSQuarantinedObjectWrapper::asWrapper):
2435 (WebCore::JSQuarantinedObjectWrapper::construct):
2436 * bindings/js/JSSQLResultSetRowListCustom.cpp:
2437 (WebCore::JSSQLResultSetRowList::item):
2438 * bindings/js/JSSQLTransactionCustom.cpp:
2439 (WebCore::JSSQLTransaction::executeSql):
2440 * bindings/js/JSSVGElementInstanceCustom.cpp:
2441 (WebCore::JSSVGElementInstance::addEventListener):
2442 (WebCore::JSSVGElementInstance::removeEventListener):
2443 * bindings/js/JSSVGLengthCustom.cpp:
2444 (WebCore::JSSVGLength::convertToSpecifiedUnits):
2445 * bindings/js/JSSVGMatrixCustom.cpp:
2446 (WebCore::JSSVGMatrix::translate):
2447 (WebCore::JSSVGMatrix::scale):
2448 (WebCore::JSSVGMatrix::scaleNonUniform):
2449 (WebCore::JSSVGMatrix::rotate):
2450 (WebCore::JSSVGMatrix::rotateFromVector):
2451 (WebCore::JSSVGMatrix::skewX):
2452 (WebCore::JSSVGMatrix::skewY):
2453 * bindings/js/JSSVGPathSegListCustom.cpp:
2454 (WebCore::JSSVGPathSegList::getItem):
2455 (WebCore::JSSVGPathSegList::insertItemBefore):
2456 (WebCore::JSSVGPathSegList::replaceItem):
2457 (WebCore::JSSVGPathSegList::removeItem):
2458 * bindings/js/JSSVGPointListCustom.cpp:
2459 (WebCore::JSSVGPointList::getItem):
2460 (WebCore::JSSVGPointList::insertItemBefore):
2461 (WebCore::JSSVGPointList::replaceItem):
2462 (WebCore::JSSVGPointList::removeItem):
2463 * bindings/js/JSSVGTransformListCustom.cpp:
2464 (WebCore::JSSVGTransformList::getItem):
2465 (WebCore::JSSVGTransformList::insertItemBefore):
2466 (WebCore::JSSVGTransformList::replaceItem):
2467 (WebCore::JSSVGTransformList::removeItem):
2468 * bindings/js/JSStorageCustom.cpp:
2469 (WebCore::JSStorage::deleteProperty):
2470 (WebCore::JSStorage::customPut):
2471 * bindings/js/JSWebKitCSSMatrixConstructor.cpp:
2472 (WebCore::constructWebKitCSSMatrix):
2473 * bindings/js/JSWorkerConstructor.cpp:
2474 (WebCore::constructWorker):
2475 * bindings/js/JSWorkerContextCustom.cpp:
2476 (WebCore::JSWorkerContext::addEventListener):
2477 (WebCore::JSWorkerContext::removeEventListener):
2478 * bindings/js/JSWorkerCustom.cpp:
2479 (WebCore::JSWorker::addEventListener):
2480 (WebCore::JSWorker::removeEventListener):
2481 * bindings/js/JSXMLHttpRequestCustom.cpp:
2482 (WebCore::JSXMLHttpRequest::open):
2483 (WebCore::JSXMLHttpRequest::setRequestHeader):
2484 (WebCore::JSXMLHttpRequest::send):
2485 (WebCore::JSXMLHttpRequest::getResponseHeader):
2486 (WebCore::JSXMLHttpRequest::overrideMimeType):
2487 (WebCore::JSXMLHttpRequest::addEventListener):
2488 (WebCore::JSXMLHttpRequest::removeEventListener):
2489 * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
2490 (WebCore::JSXMLHttpRequestUpload::addEventListener):
2491 (WebCore::JSXMLHttpRequestUpload::removeEventListener):
2492 * bindings/js/JSXSLTProcessorCustom.cpp:
2493 (WebCore::JSXSLTProcessor::importStylesheet):
2494 (WebCore::JSXSLTProcessor::transformToFragment):
2495 (WebCore::JSXSLTProcessor::transformToDocument):
2496 (WebCore::JSXSLTProcessor::setParameter):
2497 (WebCore::JSXSLTProcessor::getParameter):
2498 (WebCore::JSXSLTProcessor::removeParameter):
2499 * bindings/js/ScheduledAction.cpp:
2500 (WebCore::ScheduledAction::executeFunctionInContext):
2501 * bindings/js/ScriptCallStack.cpp:
2502 (WebCore::ScriptCallStack::initialize):
2503 * bindings/js/ScriptController.cpp:
2504 (WebCore::ScriptController::createScriptObjectForPluginElement):
2505 * bindings/js/ScriptValue.cpp:
2506 (WebCore::ScriptValue::getString):
2507 (WebCore::ScriptValue::isNull):
2508 (WebCore::ScriptValue::isUndefined):
2509 * bindings/objc/WebScriptObject.mm:
2510 (-[WebScriptObject callWebScriptMethod:withArguments:]):
2511 (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
2512 * bindings/scripts/CodeGeneratorJS.pm:
2513 * bridge/NP_jsobject.cpp:
2514 (_NPN_InvokeDefault):
2518 * bridge/c/c_utility.cpp:
2519 (JSC::Bindings::convertValueToNPVariant):
2520 * bridge/jni/jni_instance.cpp:
2521 (JavaInstance::invokeMethod):
2522 * bridge/jni/jni_jsobject.mm:
2523 (JavaJSObject::call):
2524 (JavaJSObject::convertValueToJObject):
2525 * bridge/jni/jni_runtime.cpp:
2526 (JavaField::dispatchValueFromInstance):
2527 (JavaField::valueFromInstance):
2528 (JavaField::dispatchSetValueToInstance):
2529 (JavaField::setValueToInstance):
2530 * bridge/jni/jni_utility.cpp:
2531 (JSC::Bindings::convertArrayInstanceToJavaArray):
2532 (JSC::Bindings::convertValueToJValue):
2533 * bridge/objc/objc_runtime.mm:
2534 (JSC::Bindings::callObjCFallbackObject):
2535 * bridge/objc/objc_utility.mm:
2536 (JSC::Bindings::convertValueToObjcValue):
2537 * bridge/runtime_method.cpp:
2538 (JSC::callRuntimeMethod):
2539 * bridge/runtime_object.cpp:
2540 (JSC::RuntimeObjectImp::getOwnPropertySlot):
2541 (JSC::callRuntimeConstructor):
2543 2009-01-20 Gustavo Noronha Silva <gns@gnome.org>
2545 Reviewed by Mark Rowe.
2547 https://bugs.webkit.org/show_bug.cgi?id=23419
2548 removal of FramePrivate.h breaks GTK+'s make dist
2550 * GNUmakefile.am: No longer mention FramePrivate.h in our build,
2551 since it was removed.
2553 2009-01-20 Alexander V. Butenko <alex@digiqube.com>
2555 Reviewed by Holger Freyther.
2557 http://bugs.webkit.org/show_bug.cgi?id=23116
2558 [GTK] Fix crash due a callback called from GIO after the
2559 destruction of the ResourceHandle
2561 * platform/network/soup/ResourceHandleSoup.cpp:
2562 (WebCore::ResourceHandle::cancel): Only call didFinishLoading if
2563 'client' is set, otherwise cancelling a load could lead to a crash.
2565 2009-01-19 Simon Fraser <simon.fraser@apple.com>
2567 Build fix: remove duplicate entries in the Xcode project, and
2568 sort the project with sort-Xcode-project-file .
2570 * WebCore.xcodeproj/project.pbxproj:
2572 2009-01-19 Simon Fraser <simon.fraser@apple.com>
2574 Reviewed by Dave Hyatt
2576 https://bugs.webkit.org/show_bug.cgi?id=18078
2578 Support animations and transitions of shorthand properties by creating
2579 PropertyWrappers that simply wrap a vector of atomic wrappers, and implement
2580 equal() and blend(). Build that collection of shorthand wrappers using the
2581 shorthand map that CSSMutableStyleDeclaration already has. Skip comparing these
2582 shorthand wrappers during 'all' transitions.
2587 * WebCore.vcproj/WebCore.vcproj:
2588 * WebCore.xcodeproj/project.pbxproj:
2589 * WebCoreSources.bkl:
2590 Add CSSPropertyLonghand.h/cpp.
2592 * css/CSSMutableStyleDeclaration.cpp:
2593 (WebCore::CSSMutableStyleDeclaration::removeShorthandProperty):
2594 Move CSSPropertyLonghand to its own file.
2596 * css/CSSPropertyLonghand.cpp: Added.
2597 (WebCore::initShorthandMap):
2598 (WebCore::longhandForProperty):
2599 * css/CSSPropertyLonghand.h: Added.
2600 (WebCore::CSSPropertyLonghand::CSSPropertyLonghand):
2601 (WebCore::CSSPropertyLonghand::properties):
2602 (WebCore::CSSPropertyLonghand::length):
2603 Code moved from CSSMutableStyleDeclaration.h/cpp
2605 * page/animation/AnimationBase.cpp:
2606 (WebCore::PropertyWrapperBase::isShorthandWrapper):
2607 (WebCore::ShorthandPropertyWrapper::ShorthandPropertyWrapper):
2608 (WebCore::ShorthandPropertyWrapper::isShorthandWrapper):
2609 (WebCore::ShorthandPropertyWrapper::equals):
2610 (WebCore::ShorthandPropertyWrapper::blend):
2611 Add a wrapper class for shorthand properties that simply wraps an
2612 array of atomic property wrappers.
2614 (WebCore::ensurePropertyMap):
2615 (WebCore::addPropertyWrapper):
2616 (WebCore::addShorthandProperties):
2617 (WebCore::wrapperForProperty):
2618 (WebCore::AnimationBase::propertiesEqual):
2619 (WebCore::AnimationBase::getPropertyAtIndex):
2620 Some minor refactoring to re-use wrapperForProperty(), and ensure that gPropertyWrapperMap
2621 is filled with an invalid index (-1), not 0.
2623 (WebCore::AnimationBase::blendProperties):
2624 * page/animation/AnimationBase.h:
2625 * page/animation/CompositeAnimation.cpp:
2626 (WebCore::CompositeAnimationPrivate::updateTransitions):
2627 When doing 'all' transitions, skip shorthand wrappers, since 'all' transitions
2628 just need to compare all the atomic property wrappers.
2630 2009-01-19 Oliver Hunt <oliver@apple.com>
2632 Reviewed by NOBODY (Build fix).
2634 Actually add the new header.
2636 * dom/GenericWorkerTask.h: Added.
2638 2009-01-19 David Levin <levin@chromium.org>
2640 Reviewed by Alexey Proskuryakov.
2642 https://bugs.webkit.org/show_bug.cgi?id=22720
2644 Provide a generic class to handle the pattern of task callbacks across worker/parent threads. It
2645 only works for methods that need 6 parameters but similar classes could be added as needed for
2646 other numbers of parameters.
2648 Add addMessage and resourceRetrievedByXMLHttpRequest to ScriptExecutionContext.
2650 Use these methods and others to remove document() from XMLHttpRequest in a few more places.
2652 No observable change in behavior, so no test.
2655 * WebCore.vcproj/WebCore.vcproj:
2656 * WebCore.xcodeproj/project.pbxproj:
2657 Sorted project file while adding GenericWorkerTask.h
2659 * bindings/js/ScriptString.h:
2660 (WebCore::ScriptString::operator=):
2661 (WebCore::ScriptString::operator+=):
2662 (WebCore::ScriptString::operator==):
2663 (WebCore::ScriptString::operator!=):
2664 Removed unnecessary JSLock.
2667 (WebCore::Document::addMessage):
2668 (WebCore::Document::resourceRetrievedByXMLHttpRequest):
2670 * dom/GenericWorkerTask.h: Added.
2671 (WebCore::GenericWorkerTaskBase::GenericWorkerTaskBase):
2672 (WebCore::GenericWorkerTaskBase::canPerformTask):
2673 (WebCore::GenericWorkerTask6::create):
2674 (WebCore::GenericWorkerTask6::GenericWorkerTask6):
2675 (WebCore::GenericWorkerTask6::performTask):
2676 (WebCore::createCallbackTask):
2677 * dom/ScriptExecutionContext.h:
2678 * dom/WorkerContext.cpp:
2679 (WebCore::addMessageTask):
2680 (WebCore::WorkerContext::addMessage):
2681 (WebCore::WorkerContext::resourceRetrievedByXMLHttpRequest):
2682 (WebCore::WorkerContext::postTaskToParentContext):
2683 * dom/WorkerContext.h:
2684 * dom/WorkerMessagingProxy.cpp:
2685 (WebCore::WorkerMessagingProxy::postTaskToParentContext):
2686 * dom/WorkerMessagingProxy.h:
2687 * dom/WorkerThread.h:
2688 * xml/XMLHttpRequest.cpp:
2689 (WebCore::XMLHttpRequest::XMLHttpRequest):
2690 (WebCore::XMLHttpRequest::dropProtection):
2691 (WebCore::reportUnsafeUsage):
2692 (WebCore::XMLHttpRequest::setRequestHeader):
2693 (WebCore::XMLHttpRequest::getResponseHeader):
2694 (WebCore::XMLHttpRequest::didFinishLoading):
2695 * xml/XMLHttpRequest.h:
2696 (WebCore::XMLHttpRequest::create):
2699 2009-01-19 Chris Fleizach <cfleizach@apple.com>
2701 Reviewed by Beth Dakin.
2703 Bug 23422: AX: AXLinks should expose access key information
2704 https://bugs.webkit.org/show_bug.cgi?id=23422
2706 Test: accessibility/accesskey.html
2708 * page/mac/AccessibilityObjectWrapper.mm:
2709 (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
2710 (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
2712 2009-01-19 Alexey Proskuryakov <ap@webkit.org>
2714 Reviewed by Anders Carlsson.
2716 https://bugs.webkit.org/show_bug.cgi?id=23417
2717 Implement application cache obsolete state
2719 Test: http/tests/appcache/remove-cache.html
2721 * bindings/js/JSDOMApplicationCacheCustom.cpp:
2722 (WebCore::JSDOMApplicationCache::mark):
2724 * loader/appcache/DOMApplicationCache.h:
2725 (WebCore::DOMApplicationCache::Status):
2726 (WebCore::DOMApplicationCache::setOnobsolete):
2727 (WebCore::DOMApplicationCache::onobsolete):
2728 * loader/appcache/DOMApplicationCache.idl:
2729 Added "obsolete" event and status.
2731 * loader/appcache/ApplicationCacheGroup.h:
2732 (WebCore::ApplicationCacheGroup::savedNewestCachePointer): Removed, there is no longer
2733 any need to track what the newest cache was during teardown.
2734 (WebCore::ApplicationCacheGroup::updateStatus): Renamed Status to UpdateStatus, reducing
2735 confusion with cache group lifecycle status.
2736 (WebCore::ApplicationCacheGroup::m_isObsolete): Added an obsolete state flag.
2738 * loader/appcache/ApplicationCacheGroup.cpp:
2739 (WebCore::ApplicationCacheGroup::ApplicationCacheGroup): Initialize m_isObsolete.
2740 (WebCore::ApplicationCacheGroup::cacheForMainRequest): Assert that the returned cache does
2741 not belong to an obsolete group.
2742 (WebCore::ApplicationCacheGroup::fallbackCacheForMainRequest): Ditto.
2743 (WebCore::ApplicationCacheGroup::disassociateDocumentLoader): Disassociation can now happen
2744 via a JS swapCache() call, not only when the loader is destroyed.
2745 (WebCore::ApplicationCacheGroup::cacheDestroyed): Don't track m_savedNewestCachePointer.
2746 (WebCore::ApplicationCacheGroup::setNewestCache): Remove old newest cache from storage is
2747 a caller responsibility, because this method is also used when loading caches from disk.
2748 (WebCore::ApplicationCacheGroup::makeObsolete): Added. Mark the cache group as obsolete, and
2749 inform cache storage, so that it could be removed.
2750 (WebCore::ApplicationCacheGroup::didFailToLoadManifest): Removed, as all this method did
2751 was call cacheUpdateFailed().
2752 (WebCore::ApplicationCacheGroup::didReceiveResponse): Added a FIXME about correct failure
2754 (WebCore::ApplicationCacheGroup::didFail): Ditto.
2755 (WebCore::ApplicationCacheGroup::didReceiveManifestResponse): Call a new manifestNotFound()
2756 method for 404 and 410 responses.
2757 (WebCore::ApplicationCacheGroup::didFinishLoadingManifest): Call cacheUpdateFailed()
2758 directly, instead of the removed didFailToLoadManifest().
2759 (WebCore::ApplicationCacheGroup::manifestNotFound): Implement "remove a cache" algorithm.
2760 (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete): Remove superceded cache from storage
2761 after update successfully finishes (moved from setNewestCache()).
2762 (WebCore::ApplicationCacheGroup::associateDocumentLoaderWithCache): Revive the group using
2763 an explicitly passed pointer, without the need to save it during teardown.
2765 * loader/DocumentLoader.cpp: (WebCore::DocumentLoader::~DocumentLoader):
2766 Call the general ApplicationCacheGroup::disassociateDocumentLoader() method.
2768 * loader/appcache/ApplicationCacheStorage.h: Added a cacheGroupMadeObsolete() method, updated
2771 * loader/appcache/ApplicationCacheStorage.cpp:
2772 (WebCore::ApplicationCacheStorage::cacheGroupForURL): Assert that iterated caches are not
2774 (WebCore::ApplicationCacheStorage::fallbackCacheGroupForURL): Ditto.
2775 (WebCore::ApplicationCacheStorage::cacheGroupDestroyed): Don't do anything for obsolete
2776 groups, as they cannot be in storage.
2777 (WebCore::ApplicationCacheStorage::cacheGroupMadeObsolete): Remove the cache group from storage
2778 completely, so that a new one could replace it, if necessary.
2779 (WebCore::ApplicationCacheStorage::storeNewestCache): Added assertions.
2780 (WebCore::ApplicationCacheStorage::remove): Remove cache group if its newest cache is removed.
2782 * loader/appcache/DOMApplicationCache.cpp:
2783 (WebCore::DOMApplicationCache::status): Added support for OBSOLETE state.
2784 (WebCore::DOMApplicationCache::swapCache): Disassociate document loader from cache if the
2785 application was removed server-side.
2786 (WebCore::DOMApplicationCache::callObsoleteListener): Added support for obsolete event.
2788 * loader/appcache/DOMApplicationCache.h:
2789 (WebCore::DOMApplicationCache::Status):
2790 (WebCore::DOMApplicationCache::setOnobsolete):
2791 (WebCore::DOMApplicationCache::onobsolete):
2792 Added support for OBSOLETE state and obsolete event.
2794 * loader/appcache/DOMApplicationCache.idl: Ditto.
2796 2009-01-19 Anders Carlsson <andersca@apple.com>
2798 Reviewed by Kevin Decker.
2800 Allow plug-in views to return an instance directly.
2802 * bindings/js/ScriptControllerMac.mm:
2803 (WebCore::ScriptController::createScriptInstanceForWidget):
2805 2009-01-19 Chris Fleizach <cfleizach@apple.com>
2807 Reviewed by David Hyatt.
2809 AX: some buttons don't expose AXPress as an action
2810 https://bugs.webkit.org/show_bug.cgi?id=23399
2812 Test: accessibility/button-press-action.html
2814 * page/AccessibilityRenderObject.cpp:
2815 (WebCore::AccessibilityRenderObject::actionElement):
2817 2009-01-19 Adam Roben <aroben@apple.com>
2821 * WebCore.vcproj/WebCore.vcproj: Copy headers from page/animation into
2822 $WebKitOutputDir so that WebKit can access them.
2824 * html/HTMLBaseFontElement.cpp: Touched this file to cause a rebuild
2827 2009-01-19 Ariya Hidayat <ariya.hidayat@trolltech.com>
2829 Reviewed by Simon Hausmann.
2831 http://www.qtsoftware.com/developer/task-tracker/index_html?id=211228&method=entry
2833 [Qt] Show focus rect when a button gets the focus for the first time.
2834 This is important at least for Windows style.
2836 * platform/qt/RenderThemeQt.cpp:
2837 (WebCore::RenderThemeQt::applyTheme):
2839 2009-01-19 Ariya Hidayat <ariya.hidayat@trolltech.com>
2841 [Qt] Build fix after r39971.
2843 * platform/qt/LoggingQt.cpp:
2844 (WebCore::InitializeLoggingChannelsIfNecessary):
2846 2009-01-18 Sam Weinig <sam@webkit.org>
2848 Reviewed by Cameron Zwarich.
2850 Fix for https://bugs.webkit.org/show_bug.cgi?id=23415
2856 * WebCore.vcproj/WebCore.vcproj:
2857 * WebCore.xcodeproj/project.pbxproj:
2858 * loader/FrameLoader.cpp:
2860 (WebCore::Frame::Frame):
2861 (WebCore::Frame::~Frame):
2862 (WebCore::Frame::init):
2863 (WebCore::Frame::loader):
2864 (WebCore::Frame::view):
2865 (WebCore::Frame::setView):
2866 (WebCore::Frame::script):
2867 (WebCore::Frame::document):
2868 (WebCore::Frame::setDocument):
2869 (WebCore::Frame::settings):
2870 (WebCore::Frame::selection):
2871 (WebCore::Frame::editor):
2872 (WebCore::Frame::selectionGranularity):
2873 (WebCore::Frame::setSelectionGranularity):
2874 (WebCore::Frame::dragCaretController):
2875 (WebCore::Frame::animation):
2876 (WebCore::Frame::mark):
2877 (WebCore::Frame::setMark):
2878 (WebCore::Frame::setCaretVisible):
2879 (WebCore::Frame::clearCaretRectIfNeeded):
2880 (WebCore::Frame::selectionLayoutChanged):
2881 (WebCore::Frame::caretBlinkTimerFired):
2882 (WebCore::Frame::paintCaret):
2883 (WebCore::Frame::paintDragCaret):
2884 (WebCore::Frame::zoomFactor):
2885 (WebCore::Frame::isZoomFactorTextOnly):
2886 (WebCore::Frame::shouldApplyTextZoom):
2887 (WebCore::Frame::shouldApplyPageZoom):
2888 (WebCore::Frame::setZoomFactor):
2889 (WebCore::Frame::setPrinting):
2890 (WebCore::Frame::setJSStatusBarText):
2891 (WebCore::Frame::setJSDefaultStatusBarText):
2892 (WebCore::Frame::jsStatusBarText):
2893 (WebCore::Frame::jsDefaultStatusBarText):
2894 (WebCore::Frame::setNeedsReapplyStyles):
2895 (WebCore::Frame::needsReapplyStyles):
2896 (WebCore::Frame::reapplyStyles):
2897 (WebCore::Frame::isContentEditable):
2898 (WebCore::Frame::updateSecureKeyboardEntryIfActive):
2899 (WebCore::Frame::typingStyle):
2900 (WebCore::Frame::setTypingStyle):
2901 (WebCore::Frame::clearTypingStyle):
2902 (WebCore::Frame::computeAndSetTypingStyle):
2903 (WebCore::Frame::selectionComputedStyle):
2904 (WebCore::Frame::applyEditingStyleToBodyElement):
2905 (WebCore::Frame::removeEditingStyleFromBodyElement):
2906 (WebCore::Frame::keepAlive):
2907 (WebCore::Frame::cancelAllKeepAlive):
2908 (WebCore::Frame::clearDOMWindow):
2909 (WebCore::Frame::ownerElement):
2910 (WebCore::Frame::ownerRenderer):
2911 (WebCore::Frame::isDisconnected):
2912 (WebCore::Frame::setIsDisconnected):
2913 (WebCore::Frame::excludeFromTextSearch):
2914 (WebCore::Frame::setExcludeFromTextSearch):
2915 (WebCore::Frame::selectionBounds):
2916 (WebCore::Frame::selectionTextRects):
2917 (WebCore::Frame::isFrameSet):
2918 (WebCore::Frame::currentForm):
2919 (WebCore::Frame::forceLayout):
2920 (WebCore::Frame::sendScrollEvent):
2921 (WebCore::Frame::clearTimers):
2922 (WebCore::Frame::styleForSelectionStart):
2923 (WebCore::Frame::inViewSourceMode):
2924 (WebCore::Frame::setInViewSourceMode):
2925 (WebCore::Frame::markAllMatchesForText):
2926 (WebCore::Frame::markedTextMatchesAreHighlighted):
2927 (WebCore::Frame::setMarkedTextMatchesAreHighlighted):
2928 (WebCore::Frame::tree):
2929 (WebCore::Frame::setDOMWindow):
2930 (WebCore::Frame::domWindow):
2931 (WebCore::Frame::clearFormerDOMWindow):
2932 (WebCore::Frame::page):
2933 (WebCore::Frame::eventHandler):
2934 (WebCore::Frame::pageDestroyed):
2935 (WebCore::Frame::disconnectOwnerElement):
2936 (WebCore::Frame::documentAtPoint):
2938 * page/FramePrivate.h: Removed.
2940 * page/chromium/FrameChromium.cpp:
2941 * page/mac/FrameMac.mm:
2942 (WebCore::Frame::imageFromRect):
2943 (WebCore::Frame::selectionImage):
2944 (WebCore::Frame::snapshotDragImage):
2945 (WebCore::Frame::nodeImage):
2946 (WebCore::Frame::setUserStyleSheetLocation):
2947 (WebCore::Frame::setUserStyleSheet):
2948 * page/qt/FrameQt.cpp:
2949 (WebCore::Frame::setUserStyleSheetLocation):
2950 (WebCore::Frame::setUserStyleSheet):
2951 * page/win/FrameCGWin.cpp:
2952 (WebCore::Frame::nodeImage):
2953 * page/win/FrameWin.cpp:
2955 2009-01-18 Eric Carlson <eric.carlson@apple.com>
2957 Build fix for !ENABLE(VIDEO) following r40016.
2959 * rendering/RenderSlider.cpp:
2960 (WebCore::RenderSlider::mouseEventIsInThumb):
2962 2009-01-17 Steve Falkenburg <sfalken@apple.com>
2966 2009-01-17 David Hyatt <hyatt@apple.com>
2968 Optimize isTextNode() the same way isElementNode() was optimized in an earlier checkin. isTextNode()
2969 on Node is now non-virtual and just checks a bit that is set at construction time by Text.
2971 Reviewed by Sam Weinig
2973 * dom/CharacterData.cpp:
2974 (WebCore::CharacterData::CharacterData):
2975 * dom/CharacterData.h:
2976 * dom/EventTargetNode.cpp:
2977 (WebCore::EventTargetNode::EventTargetNode):
2978 * dom/EventTargetNode.h:
2980 (WebCore::Node::Node):
2982 (WebCore::Node::isTextNode):
2983 (WebCore::Node::isAttributeNode):
2985 (WebCore::Text::Text):
2988 2009-01-17 David Hyatt <hyatt@apple.com>
2990 Change how backslashAsCurrencySymbol() works. Instead of forcing call sites to do the direct
2991 replacement themselves, the exact transformation is instead done by the encoding (indirectly through
2992 a method on Document).
2994 These changes allow the fast case (where no replacement is needed) checks to be completely inlined for
2995 a slight speedup, and also allow encodings to do future alterations to displayed string content without
2996 having to patch call sites again.
2998 Reviewed by Oliver Hunt
3003 (WebCore::Document::displayStringModifiedByEncoding):
3004 (WebCore::Document::displayBufferModifiedByEncoding):
3005 * editing/Editor.cpp:
3006 (WebCore::Editor::addToKillRing):
3007 * editing/TextIterator.cpp:
3008 (WebCore::plainTextToMallocAllocatedBuffer):
3009 (WebCore::plainText):
3010 * editing/TextIterator.h:
3011 * html/HTMLOptGroupElement.cpp:
3012 (WebCore::HTMLOptGroupElement::groupLabelText):
3013 * html/HTMLOptionElement.cpp:
3014 (WebCore::HTMLOptionElement::text):
3015 * loader/DocumentLoader.cpp:
3016 (WebCore::canonicalizedTitle):
3018 (WebCore::displayString):
3019 (WebCore::Chrome::runJavaScriptAlert):
3020 (WebCore::Chrome::runJavaScriptConfirm):
3021 (WebCore::Chrome::runJavaScriptPrompt):
3022 (WebCore::Chrome::setStatusbarText):
3024 (WebCore::Frame::shouldClose):
3026 * platform/mac/PasteboardMac.mm:
3027 (WebCore::Pasteboard::writeSelection):
3028 * platform/text/TextCodecICU.cpp:
3029 (WebCore::TextCodecICU::encode):
3030 * platform/text/TextEncoding.cpp:
3031 (WebCore::TextEncoding::TextEncoding):
3032 * platform/text/TextEncoding.h:
3033 (WebCore::TextEncoding::displayString):
3034 (WebCore::TextEncoding::displayBuffer):
3035 * rendering/HitTestResult.cpp:
3036 (WebCore::displayString):
3037 * rendering/RenderImage.cpp:
3038 (WebCore::RenderImage::paintReplaced):
3039 * rendering/RenderObject.cpp:
3040 * rendering/RenderObject.h:
3041 * rendering/RenderText.cpp:
3042 (WebCore::RenderText::RenderText):
3043 (WebCore::RenderText::setTextInternal):
3044 * rendering/RenderTextControl.cpp:
3045 (WebCore::RenderTextControl::setInnerTextValue):
3046 (WebCore::RenderTextControl::finishText):
3048 2009-01-17 Eric Carlson <eric.carlson@apple.com>
3050 Reviewed by Adele Peterson
3052 Complete <rdar://problem/6293969>
3054 * DerivedSources.make: include mediaControlsQT.css for Mac build.
3056 * WebCore.xcodeproj/project.pbxproj: add mediaControlsQT.css
3058 * css/CSSPrimitiveValueMappings.h:
3059 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): add MediaTimelineContainerPart,
3060 CSSValueMediaCurrentTimeDisplay, and CSSValueMediaTimeRemainingDisplay
3062 * css/CSSSelector.cpp:
3063 (WebCore::CSSSelector::extractPseudoType): include new media controller element styles
3064 * css/CSSSelector.h:
3065 (WebCore::CSSSelector::): Ditto.
3067 * css/CSSStyleSelector.cpp:
3068 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): include new media
3069 controller element styles
3071 * css/CSSValueKeywords.in: add keywords for new media time display controls
3073 * css/mediaControls.css: adjust css for new control elements
3075 * css/mediaControlsQT.css: Added.
3077 * platform/ThemeTypes.h:
3078 (WebCore::): add media time display controls to ControlPart
3080 * platform/mac/WebCoreSystemInterface.h:
3081 * platform/mac/WebCoreSystemInterface.mm: pass controller style to WKSI functions
3083 * rendering/MediaControlElements.cpp:
3084 (WebCore::MediaTextDisplayElement::MediaTextDisplayElement): Added
3085 (WebCore::MediaTextDisplayElement::attachToParent): Added
3086 (WebCore::MediaTextDisplayElement::update): Added
3087 (WebCore::MediaTimeDisplayElement::MediaTimeDisplayElement): Added
3088 (WebCore::MediaControlInputElement::MediaControlInputElement): Added
3089 (WebCore::MediaControlInputElement::hitTest): Added
3090 (WebCore::MediaControlTimelineElement::defaultEventHandler): Update the time display when
3092 * rendering/MediaControlElements.h:
3093 (WebCore::): Add MediaTextDisplayElement
3095 * rendering/RenderMedia.cpp:
3096 (WebCore::RenderMedia::createTimelineContainer): Added
3097 (WebCore::RenderMedia::createTimeline): Parent is now the timeline container
3098 (WebCore::RenderMedia::createCurrentTimeDisplay): Added
3099 (WebCore::RenderMedia::createTimeRemainingDisplay): Added
3100 (WebCore::RenderMedia::updateControls): Create new elements. Don't ever start the time update
3101 timer when the time display elements are not visible
3102 (WebCore::RenderMedia::formatTime): Handle negative times. Don't display 0 hours or minutes
3103 (WebCore::RenderMedia::updateTimeDisplay): Do nothing when the time display elements are not
3104 visible. Display time remaining as well as current time.
3105 (WebCore::RenderMedia::updateControlVisibility): Don't assume opacity should be set to 0 when
3107 (WebCore::RenderMedia::forwardEvent): Call element hitTest() method instead of local function
3108 as we can't assume that all controls are rectangular
3109 * rendering/RenderMedia.h: Updated
3111 * rendering/RenderSlider.cpp:
3112 (WebCore::RenderSlider::mouseEventIsInThumb): When slider is media timeline control, call
3113 element hitTest() method instead of assuming it is rectangular
3114 * rendering/RenderSlider.h: make mouseEventIsInThumb virtual
3116 * rendering/RenderTheme.cpp:
3117 (WebCore::RenderTheme::paint): Deal with time display and timeline container
3118 * rendering/RenderTheme.h:
3119 (WebCore::RenderTheme::paintMediaTimelineContainer): Updated
3120 (WebCore::RenderTheme::paintMediaCurrentTime): Added
3121 (WebCore::RenderTheme::paintMediaTimeRemaining): Added
3123 * rendering/RenderThemeMac.h: Updated
3124 * rendering/RenderThemeMac.mm:
3126 (WebCore::mediaControllerTheme):
3127 (WebCore::RenderThemeMac::adjustSliderThumbSize): Call WebKitSystemInterface to get the thumb
3128 size when appropriate
3129 (WebCore::RenderThemeMac::paintMediaFullscreenButton): pass controller style to render function
3130 (WebCore::RenderThemeMac::paintMediaMuteButton): Ditto
3131 (WebCore::RenderThemeMac::paintMediaPlayButton): Ditto
3132 (WebCore::RenderThemeMac::paintMediaSeekBackButton): Ditto
3133 (WebCore::RenderThemeMac::paintMediaSeekForwardButton): Ditto
3134 (WebCore::RenderThemeMac::paintMediaSliderTrack): Ditto
3135 (WebCore::RenderThemeMac::paintMediaSliderThumb): Ditto
3136 (WebCore::RenderThemeMac::paintMediaTimelineContainer): Added
3137 (WebCore::RenderThemeMac::paintMediaCurrentTime): Added
3138 (WebCore::RenderThemeMac::paintMediaTimeRemaining): Added
3139 (WebCore::RenderThemeMac::extraMediaControlsStyleSheet): Added
3140 (WebCore::RenderThemeMac::hitTestMediaControlPart): Added
3141 * rendering/style/RenderStyle.h: Updated
3144 2009-01-17 David Hyatt <hyatt@apple.com>
3146 Inline a few methods in FrameView for speed.
3148 Reviewed by Oliver Hunt
3150 * page/FrameView.cpp:
3152 (WebCore::FrameView::layoutCount):
3153 (WebCore::FrameView::needsFullRepaint):
3155 2009-01-17 David Hyatt <hyatt@apple.com>
3157 Inline Document::documentElement(), since it is used by the (very hot) RenderObject::isRoot(). Split off
3158 the code that fetches and caches the document element into a separate function and inline the part that
3159 does the null check and the return of the already-cached element.
3161 Reviewed by Oliver Hunt
3164 (WebCore::Document::cacheDocumentElement):
3166 (WebCore::Document::documentElement):
3168 2009-01-17 David Hyatt <hyatt@apple.com>
3170 Minor tweaks to RenderBox::styleChange to speed it up.
3172 Reviewed by Oliver Hunt
3174 * rendering/RenderBox.cpp:
3175 (WebCore::RenderBox::styleDidChange):
3177 2009-01-17 David Hyatt <hyatt@apple.com>
3179 Inline FrameLoader::client().
3181 Reviewed by Oliver Hunt
3184 * loader/FrameLoader.cpp:
3185 * loader/FrameLoader.h:
3186 (WebCore::FrameLoader::client):
3188 2009-01-17 David Hyatt <hyatt@apple.com>
3190 Inline some Image methods for speed. Fix CachedImage's addClient method to just use isNull rather
3191 than needlessly creating a rect.
3193 Reviewed by Oliver Hunt
3195 * loader/CachedImage.cpp:
3196 (WebCore::CachedImage::addClient):
3197 * platform/graphics/Image.cpp:
3198 * platform/graphics/Image.h:
3199 (WebCore::Image::isNull):
3200 (WebCore::Image::rect):
3201 (WebCore::Image::width):
3202 (WebCore::Image::height):
3204 2009-01-17 David Hyatt <hyatt@apple.com>
3206 Avoid using the non-inlined isVariable() when adding parsed values during CSS parsing.
3208 Reviewed by Oliver Hunt
3210 * css/CSSParserValues.cpp:
3211 (WebCore::CSSParserValueList::addValue):
3213 2009-01-17 David Hyatt <hyatt@apple.com>
3215 Inline Document::inPageCache(), since - because of animation code - it is now called every time
3216 styles change on any element and so is now super-hot.
3218 Reviewed by Oliver Hunt
3222 (WebCore::Document::inPageCache):
3224 2009-01-16 David Hyatt <hyatt@apple.com>
3226 Take Font out of the GraphicsContext. Fonts are moderately expensive to both compare and to assign to.
3227 The Font's presence in the GraphicsContext was making save/restore more expensive than it needed to be,
3228 and was also causing expensive comparison checks to be made before doing alterations of the Font in the
3231 A font must now be passed as a parameter to all text drawing functions.
3233 Reviewed by Oliver Hunt
3235 * html/CanvasRenderingContext2D.cpp:
3236 (WebCore::CanvasRenderingContext2D::setFont):
3237 (WebCore::CanvasRenderingContext2D::drawTextInternal):
3238 * platform/graphics/GraphicsContext.cpp:
3239 (WebCore::GraphicsContext::drawText):
3240 (WebCore::GraphicsContext::drawBidiText):
3241 (WebCore::GraphicsContext::drawHighlightForText):
3242 * platform/graphics/GraphicsContext.h:
3243 * platform/graphics/GraphicsContextPrivate.h:
3244 * platform/graphics/qt/GraphicsContextQt.cpp:
3245 * rendering/EllipsisBox.cpp:
3246 (WebCore::EllipsisBox::paint):
3247 * rendering/InlineTextBox.cpp:
3248 (WebCore::paintTextWithShadows):
3249 (WebCore::InlineTextBox::paint):
3250 (WebCore::InlineTextBox::paintSelection):
3251 (WebCore::InlineTextBox::paintCompositionBackground):
3252 (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
3253 (WebCore::InlineTextBox::paintTextMatchMarker):
3254 (WebCore::InlineTextBox::paintDocumentMarkers):
3255 * rendering/InlineTextBox.h:
3256 * rendering/RenderFileUploadControl.cpp:
3257 (WebCore::RenderFileUploadControl::paintObject):
3258 * rendering/RenderImage.cpp:
3259 (WebCore::RenderImage::paintReplaced):
3260 * rendering/RenderListBox.cpp:
3261 (WebCore::RenderListBox::paintItemForeground):
3262 * rendering/RenderListMarker.cpp:
3263 (WebCore::RenderListMarker::paint):
3264 * rendering/SVGInlineTextBox.cpp:
3265 (WebCore::SVGInlineTextBox::paintCharacters):
3266 (WebCore::SVGInlineTextBox::paintSelection):
3267 * rendering/SVGInlineTextBox.h:
3269 (WebCore::Font::drawTextUsingSVGFont):
3271 2009-01-16 David Hyatt <hyatt@apple.com>
3273 Fix a regression from the virtualContinuation()/continuation() split where I accidentally changed
3276 Reviewed by Oliver Hunt
3278 * rendering/RenderObject.cpp:
3279 (WebCore::RenderObject::absoluteRects):
3280 (WebCore::RenderObject::absoluteQuads):
3282 2009-01-16 David Hyatt <hyatt@apple.com>
3284 Fix a regression from my before/after optimization. Make sure the <q> element puts the document
3285 into a mode where it will respect before/after rules, since <q> implicitly uses such rules.
3287 Make sure view source mode documents also turn on before/after rules, since they are used there also.
3289 Reviewed by Oliver Hunt
3291 * html/HTMLElementFactory.cpp:
3292 (WebCore::quoteConstructor):
3293 * html/HTMLViewSourceDocument.cpp:
3294 (WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument):
3296 2009-01-16 Chris Fleizach <cfleizach@apple.com>
3298 Reviewed by Oliver Hunt.
3300 Bug 23397: AXURL is not reported for <INPUT type="image"> elements
3301 https://bugs.webkit.org/show_bug.cgi?id=23397
3303 Report an AXURL for inputs that have an image type.
3305 Test: accessibility/input-image-url.html
3307 * page/AccessibilityObject.h:
3308 (WebCore::AccessibilityObject::isInputImage):
3309 * page/AccessibilityRenderObject.cpp:
3310 (WebCore::AccessibilityRenderObject::isInputImage):
3311 (WebCore::AccessibilityRenderObject::url):
3312 * page/AccessibilityRenderObject.h:
3313 * page/mac/AccessibilityObjectWrapper.mm:
3314 (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
3316 2009-01-16 Adele Peterson <adele@apple.com>
3320 * loader/FrameLoader.cpp: (WebCore::FrameLoader::logCanCachePageDecision):
3322 2009-01-16 Steve Falkenburg <sfalken@apple.com>
3324 <rdar://problem/6502511> Safari crashes if it's running while the desktop theme is changed.
3326 This was caused by mismatched ENABLE definitions across WebCore and WebKit.
3328 Several virtual methods were added to RenderTheme.h, conditionalized by ENABLE(VIDEO).
3329 In addition to adding ENABLE_VIDEO to WebKit, this change also adds ENABLE_DATABASE and ENABLE_ICONDATABASE
3330 to Windows WebCore/WebKit, and adds ENABLE_WORKERS, and several ENABLE_SVG_ flags to WebKit on Windows.
3331 Our Windows ENABLE flags now match Mac.
3333 Reviewed by Adele Peterson.
3335 * WebCore.vcproj/WebCore.vcproj:
3336 * WebCore.vcproj/build-generated-files.sh:
3338 2009-01-16 Mark Rowe <mrowe@apple.com>
3342 * ChangeLog: Point out revision 40,000.
3344 2009-01-16 Eric Seidel <eric@webkit.org>
3346 Reviewed by Justin Garcia.
3348 Make surroundNodeRangeWithElement call insertNodeBefore implicitly
3349 Make insertNodeBefore take PassRefPtr
3350 Clean up the use of PassRefPtr vs. raw pointers a few places in the editing code.
3351 https://bugs.webkit.org/show_bug.cgi?id=23389
3353 * editing/ApplyStyleCommand.cpp:
3354 (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
3355 (WebCore::ApplyStyleCommand::applyTextDecorationStyle):
3356 (WebCore::ApplyStyleCommand::surroundNodeRangeWithElement):
3357 (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
3358 * editing/ApplyStyleCommand.h:
3359 * editing/CompositeEditCommand.cpp:
3360 (WebCore::CompositeEditCommand::insertNodeAt):
3361 * editing/IndentOutdentCommand.cpp:
3362 (WebCore::IndentOutdentCommand::prepareBlockquoteLevelForInsertion):
3363 * editing/InsertLineBreakCommand.cpp:
3364 (WebCore::InsertLineBreakCommand::doApply):
3365 * editing/InsertParagraphSeparatorCommand.cpp:
3366 (WebCore::InsertParagraphSeparatorCommand::doApply):
3367 * editing/InsertTextCommand.cpp:
3368 (WebCore::InsertTextCommand::insertTab):
3369 * editing/ModifySelectionListLevel.cpp:
3370 (WebCore::IncreaseSelectionListLevelCommand::doApply):
3371 * editing/ReplaceSelectionCommand.cpp:
3372 (WebCore::ReplacementFragment::removeNodePreservingChildren):
3373 (WebCore::ReplacementFragment::insertNodeBefore):
3374 (WebCore::ReplacementFragment::removeInterchangeNodes):
3375 (WebCore::ReplaceSelectionCommand::doApply):
3376 (WebCore::ReplaceSelectionCommand::insertNodeAfterAndUpdateNodesInserted):
3377 (WebCore::ReplaceSelectionCommand::insertNodeAtAndUpdateNodesInserted):
3378 (WebCore::ReplaceSelectionCommand::insertNodeBeforeAndUpdateNodesInserted):
3379 * editing/ReplaceSelectionCommand.h:
3381 2009-01-16 Chris Fleizach <cfleizach@apple.com>
3383 Reviewed by Oliver Hunt.
3385 Bug 23393: TextField has AXTitle and AXTitleUIElement
3386 https://bugs.webkit.org/show_bug.cgi?id=23393
3388 Test: accessibility/double-title.html
3390 * page/AccessibilityRenderObject.cpp:
3391 (WebCore::AccessibilityRenderObject::title):
3393 2009-01-16 Adam Treat <adam.treat@torchmobile.com>
3395 The correct build fix for all platforms.
3397 * platform/graphics/Font.h:
3399 2009-01-16 Adam Treat <adam.treat@torchmobile.com>
3403 * platform/graphics/Font.h:
3405 2009-01-16 David Hyatt <hyatt@apple.com>
3407 Add a new flag (similar to first-line and first-letter) to Document to track whether any before/after rules
3408 are being used. If not, don't waste time probing for those pseudo element styles.
3410 Reviewed by Sam Weinig
3414 (WebCore::Document::Document):
3416 (WebCore::Document::usesBeforeAfterRules):
3417 (WebCore::Document::setUsesBeforeAfterRules):
3418 * rendering/RenderBlock.cpp:
3419 (WebCore::RenderBlock::styleDidChange):
3420 * rendering/RenderContainer.cpp:
3421 (WebCore::RenderContainer::updateBeforeAfterContentForContainer):
3422 * rendering/RenderInline.cpp:
3423 (WebCore::RenderInline::styleDidChange):
3424 (WebCore::RenderInline::addChildToFlow):
3425 (WebCore::RenderInline::splitInlines):
3427 2009-01-16 Dmitry Titov <dimich@chromium.org>
3429 Reviewed by Alp Toker.
3431 https://bugs.webkit.org/show_bug.cgi?id=23394
3432 Remove unnecessary calls to setDeferringTimers().
3434 Use of this function was obsoleted by better handling of EINTR.
3436 * platform/network/curl/ResourceHandleManager.cpp:
3437 (WebCore::ResourceHandleManager::downloadTimerCallback): removed setDeferringTimers calls.
3439 2009-01-16 David Hyatt <hyatt@apple.com>
3441 Fix badness with the cursor CSS property. For all links and form controls, resetting to a value of auto
3442 was resulting in the creation of a cursor list. clearCursorList was creating a new list rather than just
3443 nulling out the pointer. Since addCursor already lazily recreates the list, in the case of simple cursor types,
3444 the clear method was wastefully creating a completely unnecessary list for all of these elements.
3446 Also optimized the setting of simple cursor values to not alter the RenderStyle's cursor setting if it is already
3447 set to the same value. Since this is the common case, it prevents a fault and copy of StyleInheritedData for
3448 all links and form controls.
3450 This is a PLT speedup.
3452 Reviewed by Oliver Hunt
3454 * css/CSSStyleSelector.cpp:
3455 (WebCore::CSSStyleSelector::applyProperty):
3456 * rendering/style/RenderStyle.cpp:
3457 (WebCore::RenderStyle::clearCursorList):
3459 2009-01-16 Darin Fisher <darin@chromium.org>
3461 Reviewed by Darin Adler.
3463 https://bugs.webkit.org/show_bug.cgi?id=23384
3464 PLATFORM(CHROMIUM) needs to delegate BackForwardList.cpp methods to the embedder
3466 * history/BackForwardList.h:
3467 (WebCore::BackForwardListClient::~BackForwardListClient):
3468 (WebCore::BackForwardList::setClient):
3469 * history/BackForwardListChromium.cpp: Added.
3471 2009-01-16 Dan Bernstein <mitz@apple.com>
3473 Reviewed by Kevin Decker and Adam Roben.
3475 - fix a regression that resulted in a crash when plug-ins were
3478 * rendering/RenderPartObject.cpp:
3479 (WebCore::RenderPartObject::updateWidget): Added a null check.
3481 2009-01-16 David Hyatt <hyatt@apple.com>
3483 Split continuation() into virtual and non-virtual versions so that the non-virtual version can
3484 be used whereever possible. Eventually the virtual method can be eliminated completely.
3486 Reviewed by Sam Weinig and Oliver Hunt
3488 * html/HTMLAnchorElement.cpp:
3489 (WebCore::HTMLAnchorElement::isKeyboardFocusable):
3490 * page/AccessibilityRenderObject.cpp:
3491 (WebCore::AccessibilityRenderObject::anchorElement):
3492 * rendering/InlineFlowBox.cpp:
3493 (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
3494 (WebCore::InlineFlowBox::paint):
3495 * rendering/RenderBlock.cpp:
3496 (WebCore::RenderBlock::removeChild):
3497 * rendering/RenderContainer.cpp:
3498 (WebCore::RenderContainer::updateBeforeAfterContentForContainer):
3499 * rendering/RenderFlow.h:
3500 (WebCore::RenderFlow::virtualContinuation):
3501 (WebCore::RenderFlow::continuation):
3502 * rendering/RenderInline.cpp:
3503 (WebCore::RenderInline::positionForCoordinates):
3504 * rendering/RenderObject.cpp:
3505 (WebCore::RenderObject::absoluteRects):
3506 (WebCore::RenderObject::absoluteQuads):
3507 (WebCore::RenderObject::addFocusRingRects):
3508 (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
3509 (WebCore::RenderObject::getAbsoluteRepaintRectWithOutline):
3510 (WebCore::RenderObject::handleDynamicFloatPositionChange):
3511 (WebCore::RenderObject::hoverAncestor):
3512 (WebCore::RenderObject::updateDragState):
3513 (WebCore::RenderObject::updateHitTestResult):
3514 (WebCore::RenderObject::getTextDecorationColors):
3515 (WebCore::RenderObject::adjustRectForOutlineAndShadow):
3516 * rendering/RenderObject.h:
3517 (WebCore::RenderObject::virtualContinuation):
3519 2009-01-16 David Hyatt <hyatt@apple.com>
3521 Inline the methods of Font for obtaining metrics such as ascent, descent and line spacing.
3525 * platform/graphics/Font.cpp:
3526 * platform/graphics/Font.h:
3527 (WebCore::Font::width):
3528 (WebCore::Font::ascent):
3529 (WebCore::Font::descent):
3530 (WebCore::Font::lineSpacing):
3531 (WebCore::Font::lineGap):
3532 (WebCore::Font::xHeight):
3533 (WebCore::Font::unitsPerEm):
3534 (WebCore::Font::spaceWidth):
3536 2009-01-16 Sam Weinig <sam@webkit.org>
3538 Reviewed by David Hyatt.
3540 Fix for https://bugs.webkit.org/show_bug.cgi?id=23388
3541 Remove FrameViewPrivate
3543 Removes an indirection and is a small speedup on PLT.
3545 * page/FrameView.cpp:
3546 (WebCore::FrameView::FrameView):
3547 (WebCore::FrameView::~FrameView):
3548 (WebCore::FrameView::reset):
3549 (WebCore::FrameView::resetScrollbars):
3550 (WebCore::FrameView::init):
3551 (WebCore::FrameView::clear):
3552 (WebCore::FrameView::didFirstLayout):
3553 (WebCore::FrameView::initScrollbars):
3554 (WebCore::FrameView::updateDefaultScrollbarState):
3555 (WebCore::FrameView::setCanHaveScrollbars):
3556 (WebCore::FrameView::applyOverflowToViewport):
3557 (WebCore::FrameView::layoutCount):