1 2006-05-10 Matt Gough <matt (a] softchaos.com> 2 3 Reviewed, tweaked, and landed by Darin. 4 5 Optimization of [DOMNode _nodeWith:] to look up the obj-c wrapperClass 6 for each HTMLElement using a HashMap instead of by repeated calls to 7 htmlElt->hasLocalName(someTag). 8 9 * bindings/objc/DOM.mm: 10 (addElementClass): Added. 11 (createHTMLElementClassMap): 12 (elementClass): 13 (+[DOMNode _nodeWith:]): Added code to call elementClass. 14 15 2006-05-09 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 16 17 Reviewed by Hyatt. 18 19 - fix http://bugs.webkit.org/show_bug.cgi?id=8760 20 crash (hang?) on subtlegradient.com article page 21 22 * manual-tests/first-line-style-crash.html: Added. 23 24 * css/cssstyleselector.cpp: 25 (WebCore::CSSStyleSelector::createStyleForElement): Changed to not return the 26 shared styleNotYetAvailable if allowSharing is off. 27 * rendering/RenderObject.cpp: 28 (WebCore::RenderObject::getPseudoStyle): In the FIRST_LINE_INHERITED case, 29 set the styleType on the style returned from createStyleForElement(). 30 * rendering/render_style.h: 31 (WebCore::RenderStyle::setStyleType): Added. Called from RenderObject::getPseudoStyle(). 32 33 2006-05-09 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 34 35 Reviewed by Hyatt. 36 37 - fix http://bugs.webkit.org/show_bug.cgi?id=8789 38 RenderStyle::getPseudoStyle() always returns 0 39 40 No test possible (no functionality change). 41 42 * dom/Node.cpp: 43 (WebCore::Node::diff): When checking if :before or :after has changed, 44 return NoInherit unless both pseudoStyles are known and equal. 45 * rendering/render_style.cpp: 46 (WebCore::RenderStyle::getPseudoStyle): Fixed to match the requested 47 type against the pseudoStyle's styleType instead of our own. 48 49 2006-05-09 Darin Adler <darin (a] apple.com> 50 51 - another attempt to fix the Windows build 52 53 * bindings/js/kjs_window.cpp: (KJS::isSeparator): Take a UChar, not a KJS::UChar. 54 * bridge/win/FrameWin.cpp: 55 (WebCore::FrameWin::runJavaScriptAlert): Use UChar instead of QChar. 56 (WebCore::FrameWin::runJavaScriptConfirm): Ditto. 57 * editing/TextIterator.h: Include DeprecatedString.h. 58 59 2006-05-09 Darin Adler <darin (a] apple.com> 60 61 Reviewed by Hyatt. 62 63 - fix http://bugs.webkit.org/show_bug.cgi?id=8781 64 REGRESSION: image maps with "poly" areas, including one at lisp.geek.nz, don't work 65 66 * html/html_imageimpl.cpp: (WebCore::HTMLAreaElement::getRegion): Remove extra Path 67 definition that was shadowing the real one. 68 69 2006-05-09 Darin Adler <darin (a] apple.com> 70 71 - fix build 72 73 * rendering/render_style.cpp: (WebCore::RenderStyle::getPseudoStyle): 74 Fix a typo. 75 76 - attempt to fix Windows build 77 78 * css/maketokenizer: Use UChar instead of unsigned short. 79 * platform/win/FontWin.cpp: 80 (WebCore::getFontData): Removed cast to QChar. 81 (WebCore::hackishExtentForString): Use UChar. 82 (WebCore::Font::floatWidth): Use UChar. 83 (WebCore::Font::drawText): Use UChar. 84 (WebCore::Font::drawHighlightForText): Use UChar. 85 (WebCore::Font::selectionRectForText): Use UChar. 86 (WebCore::Font::checkSelectionPoint): Use UChar. 87 * platform/win/KeyEventWin.cpp: 88 (WebCore::singleCharacterString): Added. 89 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent): Use above function. 90 * platform/win/TemporaryLinkStubs.cpp: 91 (WebCore::findNextSentenceFromIndex): Use UChar. 92 (WebCore::findSentenceBoundary): Use UChar. 93 (WebCore::findNextWordFromIndex): Use UChar. 94 (WebCore::findWordBoundary): Use UChar. 95 * platform/win/TransferJobWin.cpp: 96 (WebCore::TransferJob::start): Use a different String constructor. 97 * rendering/RenderTable.h: Added an include of DeprecatedArray.h. 98 * rendering/RenderText.cpp: Added an include of DeprecatedString.h. 99 * rendering/render_list.h: Ditto. 100 101 2006-05-09 Darin Adler <darin (a] apple.com> 102 103 Rubber stamped by Hyatt. 104 105 - http://bugs.webkit.org/show_bug.cgi?id=8782 106 use ICU and UChar more, QChar less 107 108 - fix http://bugs.webkit.org/show_bug.cgi?id=6310 109 text-transform: uppercase/lowercase don't handle cases one character becomes two 110 111 Test: fast/css/case-transform.html 112 113 By using ICU more, this fixes some bugs in a few places. 114 115 * bindings/js/JSXMLSerializer.cpp: 116 * css/css_valueimpl.h: 117 * kwq/KWQTextStream.cpp: 118 * loader/CachedObject.h: 119 * platform/Color.cpp: 120 Add includes of DeprecatedString.h as needed, now that StringImpl.h no longer 121 includes it. 122 123 * bindings/js/kjs_css.cpp: (KJS::cssPropertyName): 124 Eliminate use of QChar::latin1() in a case where it's not helpful. 125 126 * bindings/js/kjs_proxy.cpp: (WebCore::KJSProxy::evaluate): 127 Use characters() function instead of the old unicode() function. 128 129 * bindings/js/kjs_window.cpp: (KJS::isSeparator): 130 Use UChar instead of QChar. 131 132 * bindings/objc/DOMInternal.mm: 133 (StringImpl::operator NSString*): Remove typecast that's no longer needed. 134 (String::String): Ditto. Also use Vector for local buffer to make code read simpler. 135 136 * bridge/mac/FrameMac.mm: 137 (WebCore::selectorForKeyEvent): Remove call to unicode() function, no longer needed. 138 (WebCore::FrameMac::setTitle): Remove QChar cast, no longer needed. 139 (WebCore::FrameMac::setStatusBarText): Ditto. 140 (WebCore::FrameMac::advanceToNextMisspelling): Use UChar instead of QChar. 141 (WebCore::FrameMac::runJavaScriptAlert): Remove QChar cast, no longer needed. 142 (WebCore::FrameMac::runJavaScriptConfirm): Ditto. 143 (WebCore::FrameMac::runJavaScriptPrompt): Ditto. 144 (WebCore::FrameMac::attributedString): Replaces calls of QChar::direction() with 145 calls to u_charDirection and use ICU constants instead of QChar ones. 146 (WebCore::FrameMac::markMisspellings): Remove QChar cast, no longer needed. Added a 147 QChar cast so we can call isSpace -- slated to be removed later. 148 (WebCore::FrameMac::shouldClose): Remove QChar cast, no longer needed. 149 150 * bridge/mac/WebCoreFrameBridge.mm: 151 (-[WebCoreFrameBridge selectedString]): Remove QChar cast, no longer needed. 152 (-[WebCoreFrameBridge stringForRange:]): Ditto. 153 154 * css/CSSGrammar.y: Update for field name change from string to characters. 155 Use UChar instead of unsigned short. 156 157 * css/css_valueimpl.cpp: 158 (WebCore::propertyID): Use UChar instead of unsigned short and get rid of call to 159 unicode() function, no longer needed. 160 (WebCore::quoteStringIfNeeded): Use strings when building up a resulting string, 161 instead of depending on the feature where you can append characters to a string. 162 163 * css/csshelper.cpp: (WebCore::parseURL): Remove calls to unicode() function and 164 rewrite to obviate the need to call lower() just to check for a few constant 165 character values. Also remove a now-unneeded type cast. 166 167 * css/cssparser.h: Changed ParseString field to use UChar and to be named characters 168 instead of string. Changed many other fields to be UChar instead of unsigned short. 169 (WebCore::domString): Update for that. 170 (WebCore::atomicString): Ditto. 171 * css/cssparser.cpp: 172 (WebCore::ParseString::lower): Use u_tolower instead of QChar::lower(). Also change 173 name to characters from string. 174 (WebCore::CSSParser::setupParser): Use UChar instead of unsigned short. 175 (WebCore::CSSParser::lex): Ditto. Also update for characters name change. 176 (WebCore::CSSParser::text): Use UChar instead of unsigned short. Also tweak some 177 of the code a little bit to handle a couple of overflow cases better and reduce 178 type casting. 179 (WebCore::deprecatedString): Moved here so we don't have to include DeprecatedString.h 180 in the header file. 181 182 * css/cssstyleselector.cpp: (WebCore::checkPseudoState): Added a type cast since this 183 code now bridges the world between modern code and QChar/DeprecatedString. 184 185 * dom/CharacterData.cpp: (WebCore::CharacterData::CharacterData): Changed QChar to UChar. 186 187 * dom/Document.h: 188 * dom/Document.cpp: 189 (WebCore::Document::isValidName): Updated for name change from unicode to characters. 190 (WebCore::Document::parseQualifiedName): Ditto. 191 (WebCore::Document::backslashAsCurrencySymbol): Changed return type to UChar. 192 193 * dom/NamedMappedAttrMap.cpp: 194 (WebCore::isClassWhitespace): Changed parameter to UChar from QChar. 195 (WebCore::NamedMappedAttrMap::parseClassAttribute): Changed from UChar to QChar and 196 from unicode to characters. 197 198 * dom/Position.cpp: 199 (WebCore::Position::leadingWhitespacePosition): Changed from QChar to UChar. 200 (WebCore::Position::trailingWhitespacePosition): Ditto. 201 202 * dom/StyledElement.cpp: 203 (WebCore::isClassWhitespace): Changed from QChar to UChar. 204 (WebCore::StyledElement::addCSSLength): Changed from QChar to UChar, and remove one 205 case where latin1() was used and was not helpful. 206 (WebCore::StyledElement::addCSSColor): Removed unicode() function call, no longer needed. 207 208 * dom/dom2_eventsimpl.cpp: (WebCore::KeyboardEvent::charCode): 209 * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::constrainValue): 210 Removed unicode() function call, no longer needed. 211 212 * dom/xml_tokenizer.h: Removed default parameter for xmlDocPtrForString so we don't have 213 to include the DeprecatedString.h header in this file (and since no one uses it). 214 215 * editing/HTMLInterchange.cpp: (convertHTMLTextToInterchangeFormat): Added a couple calls 216 to the unicode() function to bridge the gap from QChar/DeprecatedString back to modern 217 code. 218 219 * editing/InsertTextCommand.cpp: Removed unused function. 220 221 * editing/TextIterator.h: Changed from QChar to UChar. 222 * editing/TextIterator.cpp: 223 (WebCore::TextIterator::TextIterator): Initialize m_lastCharacter since it's now a UChar 224 (which is just a typedef) rather than a QChar (which was a class with a default value of 0). 225 (WebCore::TextIterator::handleTextNode): Updated to use characters() instead of unicode(). 226 (WebCore::TextIterator::handleTextBox): Removed unicode() call since it's now a UChar instead 227 of a QChar. 228 (WebCore::TextIterator::emitCharacter): More of the same. 229 (WebCore::SimplifiedBackwardsTextIterator::handleTextNode): Ditto. 230 (WebCore::SimplifiedBackwardsTextIterator::emitCharacter): Ditto. 231 (WebCore::CharacterIterator::string): Ditto. 232 (WebCore::WordAwareIterator::advance): Ditto. 233 (WebCore::WordAwareIterator::length): Ditto. 234 (WebCore::WordAwareIterator::characters): Ditto. 235 (WebCore::CircularSearchBuffer::CircularSearchBuffer): Changed to use UChar 236 instead of QChar, but also to use foldCase() instead of lower(), because 237 we want case folding here, not lowercasing. 238 (WebCore::CircularSearchBuffer::append): Ditto, with u_foldCase. 239 (WebCore::CircularSearchBuffer::isMatch): Ditto. 240 (WebCore::plainText): Added type cast since this bridges the gap from the modern stuff 241 to QChar/DeprecatedString. 242 243 * editing/VisiblePosition.h: Changed from QChar to UChar. 244 * editing/VisiblePosition.cpp: (WebCore::VisiblePosition::characterAfter): Ditto. 245 246 * editing/markup.cpp: (WebCore::escapeTextForMarkup): Changed code that used latin1() 247 for no good reason to use unicode() instead. 248 249 * html/HTMLTokenizer.h: Changed from QChar to UChar. 250 * html/HTMLTokenizer.cpp: Changed from QChar to UChar, including removing the 251 KHTML_ALLOC_QCHAR_VEC and KHTML_DELETE_QCHAR_VEC macros, which weren't being 252 used consistently anyway. 253 (WebCore::fixUpChar): More of the same. 254 (WebCore::tagMatch): Ditto. 255 (WebCore::HTMLTokenizer::reset): Ditto. 256 (WebCore::HTMLTokenizer::begin): Ditto. Also corrected anomaly where buffer 257 size was not the same as the size value -- this was only true in the initial 258 allocation, so I believe there was no value in it. 259 (WebCore::HTMLTokenizer::parseSpecial): Ditto. Also removed a use of latin1() 260 that was unnnecessary extra work. 261 (WebCore::HTMLTokenizer::scriptHandler): More of the same. 262 (WebCore::HTMLTokenizer::parseComment): Ditto. 263 (WebCore::HTMLTokenizer::parseServer): Ditto. 264 (WebCore::HTMLTokenizer::parseProcessingInstruction): Ditto. Another unnecessary 265 use of latin1() removed. 266 (WebCore::HTMLTokenizer::parseText): Ditto. 267 (WebCore::HTMLTokenizer::parseEntity): Ditto. Changed hex-parsing code to handle 268 uppercase hex a more-efficient way than calling QChar::lower() on each character. 269 Also changed surrogate code logic to fix a couple things -- reject character codes 270 > 0x10FFFF as it should and use U16_LEAD and U16_TRAIL instead of writing our 271 own versions of these. 272 (WebCore::HTMLTokenizer::parseTag): Ditto. 273 (WebCore::HTMLTokenizer::write): Ditto. 274 (WebCore::HTMLTokenizer::end): Ditto. 275 (WebCore::HTMLTokenizer::finish): Ditto. 276 (WebCore::HTMLTokenizer::enlargeBuffer): Ditto. 277 (WebCore::HTMLTokenizer::enlargeScriptBuffer): Ditto. 278 (WebCore::HTMLTokenizer::notifyFinished): 279 (WebCore::decodeNamedEntity): Ditto. 280 281 * html/html_inlineimpl.cpp: (WebCore::parseFontSizeNumber): Changed from QChar 282 to UChar, including using u_isdigit and u_charDigitValue instead of QChar::isNumber 283 and QChar::digitValue. Also removed unneeded range checking that's already done 284 by WebCore::String. 285 286 * kwq/KWQLoader.mm: (KWQIsResponseURLEqualToURL): Rewrote to use Vector and UChar, 287 removing all the type casts and making the whole function much shorter. 288 289 * kwq/WebCoreAXObject.mm: 290 (AXAttributedStringAppendText): Use UChar instead of QChar. 291 (-[WebCoreAXObject doAXAttributedStringForTextMarkerRange:]): More of the same. 292 293 * loader/Cache.h: Remove unnecessary default parameters, preventing the need to 294 include the DeprecatedString.h header in this header. Cleaned up the header 295 structure a bit, removing some obsolete and redundant comments and fixing typos. 296 * loader/Cache.cpp: Removed unused preload functions. 297 298 * page/Frame.h: 299 * page/Frame.cpp: 300 (WebCore::UserStyleSheetLoader::UserStyleSheetLoader): Added explicit arguments. 301 This was the only caller anywhere that took advantage of the default parameter 302 values in one of the Cache class request functions. 303 (WebCore::Frame::backslashAsCurrencySymbol): Changed QChar to UChar. 304 305 * platform/AtomicString.h: Changed QChar to UChar. Removed constructor that makes 306 an AtomicString from a single character. Renamed unicode() function to characters(). 307 Renamed KHTML_ATOMICSTRING_HIDE_GLOBALS to ATOMICSTRING_HIDE_GLOBALS. 308 * platform/AtomicString.cpp: 309 (WebCore::CStringTranslator::equal): Changed QChar to UChar. 310 (WebCore::operator==): Changed unicode() to characters(). 311 (WebCore::UCharBufferTranslator::hash): More of the same. 312 (WebCore::UCharBufferTranslator::equal): Ditto. 313 (WebCore::UCharBufferTranslator::translate): Ditto. 314 (WebCore::AtomicString::add): Ditto. 315 (WebCore::AtomicString::operator Identifier): Ditto. 316 (WebCore::AtomicString::operator UString): Ditto. 317 (WebCore::AtomicString::AtomicString): Moved here so we don't need DeprecatedString.h 318 in the header. 319 (WebCore::AtomicString::deprecatedString): Ditto. 320 321 * platform/DeprecatedString.h: Removed QChar::Direction enum and all the DirXXX values, 322 isDigit, isLetter, isNumber, isLetterOrNumber, isPunct, digitValue, and direction functions. 323 (QChar::isSpace): Changed to use u_charDirection instead of QChar::direction. 324 325 * platform/Font.h: (WebCore::Font::width): Changed QChar to UChar. 326 * platform/Font.cpp: (WebCore::Font::width): Ditto. 327 328 * platform/GraphicsContext.h: 329 * platform/GraphicsContext.cpp: 330 (WebCore::GraphicsContext::drawText): Changed QChar to UChar. Removed horizontalAlignment 331 parameter from simplified string drawing entry point, since it's not used. 332 (WebCore::GraphicsContext::drawHighlightForText): Changed QChar to UChar. 333 334 * platform/PlatformString.h: Changed QChar to UChar. Removed constructor that makes 335 a String from a single character. Renamed unicode() function to characters(). Added 336 an append function and changed += operator to just call that. Added a foldCase() function. 337 Removed the concatenation operators that add individual strings before or after. 338 * platform/String.cpp: 339 (WebCore::String::String): Changed QChar to UChar. 340 (WebCore::String::append): Renamed from operator+= and removed the return value. 341 (WebCore::String::operator[]): Changed QChar to UChar. 342 (WebCore::String::foldCase): Added. 343 (WebCore::String::percentage): More of the same. 344 (WebCore::String::characters): Renamed from unicode(). 345 (WebCore::String::deprecatedString): More of the same. 346 (WebCore::String::sprintf): Fixed mistakes in the comments. 347 (WebCore::String::isEmpty): Tweaked a bit. 348 (WebCore::operator==): More of the same. 349 (WebCore::String::operator Identifier): Ditto. 350 (WebCore::String::operator UString): Ditto. 351 352 * platform/SegmentedString.h: Changed from QChar to UChar. Had to initialize 353 data members that are now UChar. 354 * platform/SegmentedString.cpp: 355 (WebCore::SegmentedString::length): Updated for change from QChar to UChar. 356 (WebCore::SegmentedString::append): Ditto. 357 (WebCore::SegmentedString::prepend): Ditto. 358 (WebCore::SegmentedString::toString): Ditto. 359 360 * platform/StringHash.h: Updated to use UChar instead of QChar and for name changes. 361 Also changed to use case folding intead of lowercasing for case insensitive hashing. 362 363 * platform/StringImpl.h: 364 * platform/StringImpl.cpp: 365 (WebCore::newUCharVector): Changed to UChar from QChar. 366 (WebCore::deleteUCharVector): Ditto. 367 (WebCore::StringImpl::StringImpl): Ditto. 368 (WebCore::StringImpl::init): Ditto. Also renamed from initWithChar and initWithQChar. 369 (WebCore::StringImpl::~StringImpl): Ditto. 370 (WebCore::StringImpl::append): Ditto. 371 (WebCore::StringImpl::insert): Ditto. 372 (WebCore::StringImpl::truncate): Ditto. 373 (WebCore::StringImpl::remove): Ditto. 374 (WebCore::StringImpl::split): Ditto. 375 (WebCore::StringImpl::containsOnlyWhitespace): Ditto. Also added comment because this 376 function seems a little broken. 377 (WebCore::parseLength): More of the same. 378 (WebCore::StringImpl::toCoordsArray): Ditto. 379 (WebCore::StringImpl::toLengthArray): Ditto. 380 (WebCore::StringImpl::isLower): Ditto. 381 (WebCore::StringImpl::lower): Rewrote to use u_strToLower. 382 (WebCore::StringImpl::upper): Rewrote to use u_strToUpper. 383 (WebCore::StringImpl::foldCase): Added. Uses u_strFoldCase. 384 (WebCore::getWordBreakIterator): Changed to use U_FAILURE instead of accepting only 385 U_ZERO_ERROR as a success code. 386 (WebCore::StringImpl::capitalize): More QChar to UChar changes. 387 (WebCore::StringImpl::toInt): Ditto. 388 (WebCore::equal): Changed from QChar to UChar and was careful to preserve the old 389 semantics where "high ASCII" is treated as U+0080-U+00FF even though I don't know 390 if this feature is important. 391 (WebCore::equalIgnoringCase): Ditto, but used case folding instead of lowercasing 392 by using the u_foldCase and u_memcasecmp functions. Also renamed from 393 equalCaseInsensitive for more-consistent naming. 394 (WebCore::StringImpl::find): Ditto. Use case folding for the case insensitive branch. 395 (WebCore::StringImpl::replace): More of the same. 396 (WebCore::StringImpl::computeHash): Ditto. 397 (WebCore::StringImpl::ascii): Ditto. 398 399 * platform/TextBoundaries.h: Changed from QChar to UChar. 400 * platform/mac/TextBoundaries.mm: 401 (WebCore::findWordBoundary): Made the change to UChar and removed some type casts. 402 (WebCore::findNextWordFromIndex): Ditto. 403 (WebCore::findSentenceBoundary): Ditto. 404 (WebCore::findNextSentenceFromIndex): Ditto. 405 406 * platform/TextEncoding.h: 407 * platform/TextEncoding.cpp: 408 (WebCore::TextEncoding::backslashAsCurrencySymbol): Changed from QChar to UChar. 409 (WebCore::TextEncoding::fromUnicode): More of the same. 410 * platform/mac/TextEncodingMac.cpp: (WebCore::TextEncoding::fromUnicode): More 411 of the same. 412 413 * platform/mac/FontFamilyMac.mm: (WebCore::FontFamily::getNSFamily): Removed a 414 now-unneeded type cast. 415 416 * platform/mac/FontMac.mm: 417 (WebCore::Font::selectionRectForText): 418 (WebCore::Font::drawText): 419 (WebCore::Font::drawHighlightForText): 420 (WebCore::Font::floatWidth): 421 (WebCore::Font::checkSelectionPoint): 422 Changed QChar to UChar and removed some now-unneeded type casts. 423 424 * editing/RebalanceWhitespaceCommand.cpp: (WebCore::isWhitespace): 425 * editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::doApply): 426 * editing/visible_units.cpp: 427 (WebCore::previousBoundary): 428 (WebCore::nextBoundary): 429 (WebCore::startWordBoundary): 430 (WebCore::endWordBoundary): 431 (WebCore::previousWordPositionBoundary): 432 (WebCore::nextWordPositionBoundary): 433 (WebCore::startSentenceBoundary): 434 (WebCore::endSentenceBoundary): 435 (WebCore::previousSentencePositionBoundary): 436 (WebCore::nextSentencePositionBoundary): 437 (WebCore::startOfParagraph): 438 (WebCore::endOfParagraph): 439 * html/HTMLParser.cpp: (WebCore::HTMLParser::handleError): 440 * rendering/InlineTextBox.cpp: 441 (WebCore::InlineTextBox::selectionRect): 442 (WebCore::InlineTextBox::paint): 443 (WebCore::InlineTextBox::paintSelection): 444 (WebCore::InlineTextBox::paintMarkedTextBackground): 445 (WebCore::InlineTextBox::paintTextMatchMarker): 446 (WebCore::InlineTextBox::offsetForPosition): 447 (WebCore::InlineTextBox::positionForOffset): 448 * rendering/RenderBlock.cpp: 449 (WebCore::stripTrailingSpace): 450 (WebCore::RenderBlock::updateFirstLetter): 451 * rendering/RenderFlexibleBox.cpp: 452 (WebCore::RenderFlexibleBox::layoutVerticalBox): 453 * rendering/RenderObject.h: 454 * rendering/RenderObject.cpp: 455 (WebCore::RenderObject::backslashAsCurrencySymbol): 456 * rendering/RenderTreeAsText.cpp: (quoteAndEscapeNonPrintables): 457 * rendering/break_lines.cpp: (WebCore::nextBreakablePosition): 458 * rendering/break_lines.h: (WebCore::isBreakable): 459 * rendering/render_style.h: (WebCore::RenderStyle::isCollapsibleWhiteSpace): 460 * xml/XSLStyleSheet.cpp: (WebCore::XSLStyleSheet::parseString): 461 * xml/xmlhttprequest.cpp: 462 (WebCore::getMIMEType): 463 (WebCore::getCharset): 464 Changed QChar to UChar. 465 466 * rendering/RenderImage.cpp: 467 (WebCore::RenderImage::imageChanged): Changed QChar to UChar. 468 (WebCore::RenderImage::paint): Changed callers of drawText to no-longer pass 0 469 for the horizontal alignment, since I removed that parameters. 470 471 * rendering/RenderText.h: Changed QChar to UChar. 472 * rendering/RenderText.cpp: 473 (WebCore::characterBreakIterator): Update for name change. 474 (WebCore::RenderText::RenderText): Ditto. 475 (WebCore::RenderText::allAscii): Remove uneeded unicode() and allow the value 476 U+007F to count as ASCII. 477 (WebCore::RenderText::cacheWidths): Changed QChar to UChar. 478 (WebCore::RenderText::widthFromCache): Changed code that deals with direction to 479 use the ICU direction calls. 480 (WebCore::RenderText::trimmedMinMaxWidth): Changed QChar to UChar. 481 (WebCore::RenderText::calcMinMaxWidth): Ditto. 482 (WebCore::RenderText::containsOnlyWhitespace): Ditto. 483 (WebCore::RenderText::setText): Ditto. 484 (WebCore::RenderText::width): Ditto. 485 486 * rendering/RenderTextField.cpp: 487 (WebCore::RenderTextField::updateFromElement): Removed unneeded QChar cast. 488 (WebCore::RenderTextField::calcMinMaxWidth): Changed from QChar to UChar. 489 490 * rendering/bidi.h: 491 * rendering/bidi.cpp: 492 (WebCore::BidiIterator::BidiIterator): 493 (WebCore::BidiState::BidiState): 494 (WebCore::BidiContext::BidiContext): 495 (WebCore::bidiNext): 496 (WebCore::bidiFirst): 497 (WebCore::BidiIterator::current): 498 (WebCore::BidiIterator::direction): 499 (WebCore::addRun): 500 (WebCore::checkMidpoints): 501 (WebCore::appendRun): 502 (WebCore::embed): 503 (WebCore::RenderBlock::tabWidth): 504 (WebCore::RenderBlock::computeHorizontalPositionsForLine): 505 (WebCore::RenderBlock::bidiReorderLine): 506 (WebCore::RenderBlock::layoutInlineChildren): 507 (WebCore::skipNonBreakingSpace): 508 (WebCore::RenderBlock::skipWhitespace): 509 (WebCore::RenderBlock::findNextLineBreak): 510 (WebCore::RenderBlock::checkLinesForTextOverflow): 511 Changed from QChar to UChar and all direction from QChar constants to the 512 ones from ICU. 513 514 * rendering/render_form.cpp: 515 (WebCore::RenderLineEdit::updateFromElement): 516 (WebCore::RenderSelect::updateFromElement): 517 (WebCore::RenderTextArea::updateFromElement): 518 (WebCore::RenderTextArea::text): 519 (WebCore::RenderTextArea::textWithHardLineBreaks): 520 Got rid of now-unneeded QChar type casts. 521 522 * rendering/render_line.cpp: 523 (WebCore::InlineFlowBox::placeBoxesHorizontally): Updated for change from QChar 524 to UChar. 525 (WebCore::EllipsisBox::paint): Updated for unicode() -> characters() name change. 526 527 * rendering/render_list.cpp: 528 (WebCore::toRoman): Updated from QChar to UChar. 529 (WebCore::toLetterString): Ditto. 530 (WebCore::toHebrew): More of the same, also cleaned up the logic a bit. 531 (WebCore::RenderListMarker::paint): Removed the alignment parameters from the 532 various functions. Also removed all reliance on the width-measuring functions 533 that take a string. 534 (WebCore::RenderListMarker::calcMinMaxWidth): More of the same. 535 (WebCore::RenderListMarker::getRelativeMarkerRect): Ditto. 536 537 2006-05-09 Tim Omernick <timo (a] apple.com> 538 539 Reviewed by/co-written by Darin. 540 541 Performance improvement when drawing large numbers of animated images. 542 543 Instead of removing the "first" object from a set on each next(), 544 copy the clients into a vector once and keep track of the current index. 545 546 * loader/CachedObjectClientWalker.h: 547 * loader/CachedObjectClientWalker.cpp: 548 (WebCore::CachedObjectClientWalker::CachedObjectClientWalker): 549 (WebCore::CachedObjectClientWalker::next): 550 551 2006-05-09 Steve Falkenburg <sfalken (a] apple.com> 552 553 Fix Windows build. Added TextDocument.cpp to vcproj. 554 555 Reviewed by adele. 556 557 * WebCore.vcproj/WebCore/WebCore.vcproj: 558 559 2006-05-09 Steve Falkenburg <sfalken (a] apple.com> 560 561 Fix Windows build. 562 Add host calback so caller can determine success/failure of a page load. 563 564 Reviewed by kevin. 565 566 * WebCore.vcproj/WebCore/WebCore.vcproj: Fix paths, add missing files 567 * loader/CachedResource.h: Fix include path. 568 * loader/CachedResourceClientWalker.h: Fix include path. 569 * platform/FontPlatformData.h: Fix include path. 570 * platform/TransferJobClient.h: Make PlatformData, PlatformResponse an opaque struct. 571 * platform/image-decoders/ImageDecoder.h: Fix include path. 572 * platform/win/SharedTimerWin.cpp: Fix include path. 573 * platform/win/TransferJobWin.cpp: 574 (WebCore::TransferJobWndProc): Add host callback for success/failure of load. 575 * platform/win/TransferJobWin.h: Added. Windows version of PlatformData/PlatformResponse. 576 * xpath/impl/XPathFunctions.cpp: Work around missing math functions in MSVC. 577 (round): Work around missing math functions in MSVC. 578 * xpath/impl/XPathPredicate.cpp: Work around missing math functions in MSVC. 579 * xpath/impl/XPathValue.cpp: Work around missing math functions in MSVC. 580 581 2006-05-09 David Hyatt <hyatt (a] apple.com> 582 583 Revert styleForElement, pseudoStyleForElement, styleForRenderer back to 584 their old names, since the term "create" is not accurate. 585 586 * css/cssstyleselector.cpp: 587 (WebCore::CSSStyleSelector::styleForElement): 588 (WebCore::CSSStyleSelector::pseudoStyleForElement): 589 * css/cssstyleselector.h: 590 * dom/Element.cpp: 591 (WebCore::Element::styleForRenderer): 592 (WebCore::Element::recalcStyle): 593 * dom/Element.h: 594 * dom/Node.cpp: 595 (WebCore::Node::createRendererIfNeeded): 596 (WebCore::Node::styleForRenderer): 597 * dom/Node.h: 598 * ksvg2/svg/SVGClipPathElement.cpp: 599 (SVGClipPathElement::canvasResource): 600 * ksvg2/svg/SVGFEFloodElement.cpp: 601 (SVGFEFloodElement::filterEffect): 602 * ksvg2/svg/SVGGradientElement.cpp: 603 (SVGGradientElement::rebuildStops): 604 605 2006-05-09 Anders Carlsson <acarlsson (a] apple.com> 606 607 Reviewed by Darin. 608 609 * loader/TextDocument.cpp: 610 (WebCore::TextTokenizer::write): 611 Use the correct variable to prevent crashes. 612 613 2006-05-09 Anders Carlsson <acarlsson (a] apple.com> 614 615 Reviewed by Darin. 616 617 http://bugs.webkit.org/show_bug.cgi?id=8808 618 WebCore should handle text files 619 620 * WebCore.xcodeproj/project.pbxproj: 621 Add TextDocument.cpp and TextDocument.h 622 623 * bridge/mac/WebCoreFrameBridge.mm: 624 (+[WebCoreFrameBridge supportedMIMETypes]): 625 Add text types here. 626 627 * dom/DOMImplementation.cpp: 628 (WebCore::DOMImplementation::createTextDocument): 629 (WebCore::DOMImplementation::isTextMIMEType): 630 * dom/DOMImplementation.h: 631 New functions for creating a TextDocument and determining if a 632 mime type is a text MIME type. 633 634 * loader/TextDocument.cpp: Added. 635 (WebCore::TextTokenizer::TextTokenizer): 636 (WebCore::TextTokenizer::write): 637 (WebCore::TextTokenizer::finish): 638 (WebCore::TextTokenizer::isWaitingForScripts): 639 Special tokenizer which will put text inside a <pre> tag 640 in a document. 641 642 (WebCore::TextDocument::TextDocument): 643 (WebCore::TextDocument::createTokenizer): 644 Create a TextTokenizer. 645 646 * loader/TextDocument.h: Added. 647 648 * page/Frame.cpp: 649 (WebCore::Frame::begin): 650 Create a TextDocument if the MIME type is of type text. 651 652 2006-05-09 Maciej Stachowiak <mjs (a] apple.com> 653 654 Rubber stamped by Anders. 655 656 - renamed kxmlcore to wtf 657 658 kxmlcore --> wtf 659 KXMLCore --> WTF 660 KXC --> WTF 661 662 * ForwardingHeaders/kxmlcore: Removed. 663 * ForwardingHeaders/kxmlcore/AlwaysInline.h: Removed. 664 * ForwardingHeaders/kxmlcore/Assertions.h: Removed. 665 * ForwardingHeaders/kxmlcore/FastMalloc.h: Removed. 666 * ForwardingHeaders/kxmlcore/Forward.h: Removed. 667 * ForwardingHeaders/kxmlcore/HashCountedSet.h: Removed. 668 * ForwardingHeaders/kxmlcore/HashMap.h: Removed. 669 * ForwardingHeaders/kxmlcore/HashSet.h: Removed. 670 * ForwardingHeaders/kxmlcore/HashTraits.h: Removed. 671 * ForwardingHeaders/kxmlcore/Noncopyable.h: Removed. 672 * ForwardingHeaders/kxmlcore/OwnArrayPtr.h: Removed. 673 * ForwardingHeaders/kxmlcore/OwnPtr.h: Removed. 674 * ForwardingHeaders/kxmlcore/PassRefPtr.h: Removed. 675 * ForwardingHeaders/kxmlcore/Platform.h: Removed. 676 * ForwardingHeaders/kxmlcore/RefPtr.h: Removed. 677 * ForwardingHeaders/kxmlcore/Vector.h: Removed. 678 * ForwardingHeaders/wtf: Added. 679 * bindings/js/JSHTMLElementWrapperFactory.h: 680 * bindings/js/kjs_binding.cpp: 681 * bindings/js/kjs_window.h: 682 * bindings/objc/DOMImplementationFront.h: 683 * bridge/JavaAppletWidget.h: 684 * bridge/mac/WebCoreFrameNamespaces.mm: 685 * bridge/mac/WebCorePageBridge.mm: 686 (initializeLogChannel): 687 * bridge/mac/WebCoreStringTruncator.mm: 688 * bridge/mac/WebCoreViewFactory.m: 689 * config.h: 690 * css/css_base.h: 691 * css/css_valueimpl.h: 692 * css/csshelper.cpp: 693 * css/cssparser.h: 694 * dom/DOMImplementation.h: 695 * dom/Document.h: 696 * dom/NamedNodeMap.h: 697 * dom/Node.h: 698 * dom/NodeList.h: 699 * dom/QualifiedName.cpp: 700 * dom/Range.h: 701 * dom/StyledElement.cpp: 702 * dom/dom2_traversalimpl.h: 703 * dom/xml_tokenizer.h: 704 * editing/RebalanceWhitespaceCommand.cpp: 705 * editing/RemoveCSSPropertyCommand.cpp: 706 * editing/RemoveNodeAttributeCommand.cpp: 707 * editing/RemoveNodeCommand.cpp: 708 * editing/RemoveNodePreservingChildrenCommand.cpp: 709 * editing/ReplaceSelectionCommand.h: 710 * editing/Selection.cpp: 711 * editing/SetNodeAttributeCommand.cpp: 712 * editing/SplitElementCommand.cpp: 713 * editing/SplitTextNodeCommand.cpp: 714 * editing/SplitTextNodeContainingElementCommand.cpp: 715 * editing/TextIterator.h: 716 * editing/htmlediting.h: 717 * editing/markup.h: 718 * html/CanvasGradient.h: 719 * html/CanvasRenderingContext2D.h: 720 * html/CanvasStyle.cpp: 721 * html/HTMLCollection.h: 722 * html/HTMLElementFactory.h: 723 * kcanvas/KCanvasFilters.cpp: 724 * kcanvas/KCanvasPath.h: 725 * kcanvas/RenderPath.cpp: 726 * kcanvas/RenderSVGImage.cpp: 727 * kcanvas/RenderSVGText.cpp: 728 * kcanvas/device/quartz/KCanvasItemQuartz.mm: 729 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm: 730 * kcanvas/device/quartz/QuartzSupport.mm: 731 * ksvg2/misc/KSVGTimeScheduler.h: 732 * ksvg2/misc/SVGDocumentExtensions.h: 733 * ksvg2/scripts/make_names.pl: 734 * ksvg2/svg/SVGDOMImplementation.cpp: 735 * ksvg2/svg/SVGExternalResourcesRequired.h: 736 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp: 737 * ksvg2/svg/SVGForeignObjectElement.cpp: 738 * ksvg2/svg/SVGImageElement.cpp: 739 * ksvg2/svg/SVGMaskElement.cpp: 740 * ksvg2/svg/SVGStyledElement.cpp: 741 * ksvg2/svg/SVGTests.h: 742 * ksvg2/svg/SVGTransform.h: 743 * ksvg2/svg/SVGTransformable.cpp: 744 * kwq/AccessibilityObjectCache.h: 745 * kwq/KWQCString.cpp: 746 * kwq/KWQFormData.mm: 747 * kwq/KWQListBox.mm: 748 * kwq/KWQResourceLoader.mm: 749 * kwq/KWQTextEdit.mm: 750 * loader/Cache.h: 751 * loader/CachedObject.h: 752 * loader/CachedObjectClientWalker.h: 753 * loader/Decoder.h: 754 * loader/DocLoader.h: 755 * loader/loader.cpp: 756 * loader/loader.h: 757 * page/DOMWindow.h: 758 * page/Frame.h: 759 * page/FramePrivate.h: 760 * page/FrameTree.cpp: 761 * page/Page.cpp: 762 * page/Page.h: 763 * page/Plugin.h: 764 * platform/Arena.cpp: 765 * platform/ArrayImpl.h: 766 * platform/AtomicString.cpp: 767 * platform/CharsetNames.cpp: 768 * platform/Color.cpp: 769 * platform/DeprecatedPtrListImpl.cpp: 770 * platform/DeprecatedValueListImpl.h: 771 * platform/FontFallbackList.h: 772 * platform/GraphicsContext.h: 773 * platform/GraphicsTypes.cpp: 774 * platform/Image.h: 775 * platform/KURL.cpp: 776 * platform/Logging.cpp: 777 * platform/Logging.h: 778 * platform/PlatformString.h: 779 * platform/PlugInInfoStore.h: 780 * platform/StreamingTextDecoder.cpp: 781 * platform/StreamingTextDecoder.h: 782 * platform/String.cpp: 783 * platform/StringHash.h: 784 * platform/StringImpl.cpp: 785 * platform/StringImpl.h: 786 * platform/TextEncoding.cpp: 787 * platform/Timer.cpp: 788 * platform/Timer.h: 789 * platform/TransferJob.h: 790 * platform/TransferJobInternal.h: 791 * platform/mac/BlockExceptions.mm: 792 * platform/mac/ColorMac.mm: 793 * platform/mac/FontData.mm: 794 * platform/mac/KURLMac.mm: 795 * platform/mac/QStringMac.mm: 796 * platform/mac/SharedTimerMac.cpp: 797 * platform/mac/TextEncodingMac.cpp: 798 * platform/mac/WebCoreImageRendererFactory.m: 799 * platform/mac/WebCoreKeyGenerator.m: 800 * platform/mac/WebCoreTextArea.mm: 801 * platform/mac/WebCoreTextField.mm: 802 * platform/mac/WebTextRendererFactory.h: 803 * platform/mac/WebTextRendererFactory.mm: 804 * platform/win/TemporaryLinkStubs.cpp: 805 (JavaAppletWidget::JavaAppletWidget): 806 * rendering/InlineTextBox.cpp: 807 * rendering/RenderText.cpp: 808 * rendering/RenderTreeAsText.cpp: 809 * rendering/bidi.cpp: 810 * xml/XSLTProcessor.h: 811 * xpath/impl/XPathExpressionNode.h: 812 * xpath/impl/XPathParser.h: 813 * xpath/impl/XPathPath.h: 814 * xpath/impl/XPathUtil.h: 815 816 2006-05-09 Anders Carlsson <acarlsson (a] apple.com> 817 818 Reviewed by Maciej. 819 820 http://bugs.webkit.org/show_bug.cgi?id=8803 821 XPath query for empty attributes crashes in XPath::StringExpression::StringExpression 822 823 * xpath/impl/XPathParser.cpp: 824 (WebCore::XPath::Parser::lexString): 825 Make sure an empty string is returned instead of a null string. 826 827 (WebCore::XPath::Parser::lex): 828 Only assign the string if it isn't null. 829 830 2006-05-09 Alexey Proskuryakov <ap (a] nypop.com> 831 832 Reviewed by Darin. 833 834 - http://bugs.webkit.org/show_bug.cgi?id=8769 835 TextEncoding::fromUnicode() - support non-BMP characters and convert to NFC 836 837 Fix the ICU code path, too (currently unused on the Mac). 838 839 * platform/TextEncoding.cpp: 840 (WebCore::TextEncoding::fromUnicode): Normalize the string. 841 842 2006-05-08 Maciej Stachowiak <mjs (a] apple.com> 843 844 Reviewed by Tim Hatcher. 845 846 - refactor things so that WebKit doesn't save a WebResource for every loaded URL, 847 but rather retrieves the data from the WebCore cache as needed. 848 http://bugs.webkit.org/show_bug.cgi?id=8802 849 850 * bridge/mac/WebCoreFrameBridge.h: 851 * bridge/mac/WebCoreFrameBridge.mm: 852 (-[WebCoreFrameBridge getData:andResponse:forURL:]): 853 (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]): 854 * loader/Cache.cpp: 855 (WebCore::Cache::updateCacheStatus): 856 (WebCore::Cache::requestImage): 857 (WebCore::Cache::requestStyleSheet): 858 (WebCore::Cache::requestScript): 859 (WebCore::Cache::requestXSLStyleSheet): 860 (WebCore::Cache::requestXBLDocument): 861 * loader/Cache.h: 862 * loader/CachedResource.cpp: Added. 863 * loader/CachedResource.h: Added. 864 * loader/CachedResourceClient.h: Added. 865 * loader/CachedResourceClientWalker.cpp: Added. 866 * loader/CachedResourceClientWalker.h: Added. 867 * loader/DocLoader.cpp: 868 (WebCore::DocLoader::setAutoloadImages): 869 (WebCore::DocLoader::removeCachedObject): 870 * loader/DocLoader.h: 871 (WebCore::DocLoader::cachedObject): 872 (WebCore::DocLoader::allCachedObjects): 873 874 2006-05-08 Levi Weintraub <lweintraub (a] apple.com> 875 876 Reviewed by justin. 877 878 * editing/TextIterator.cpp: 879 (WebCore::shouldEmitSpaceBeforeAndAfterNode): 880 Returns true when the node should have a leading and trailing space. Currently only 881 used for inline tables. The function shouldEmitNewlinesBeforeAndAfterNode has a 882 fallback for nodes with no RenderObject, but the inline property doesn't really 883 have a meaning without one. 884 (WebCore::TextIterator::handleNonTextNode): 885 Checks shouldEmitSpaceBeforeAndAfterNode and inserts a space if necessary. 886 (WebCore::TextIterator::exitNode): 887 Checks shouldEmitSpaceBeforeAndAfterNode and inserts a space if necessary. 888 889 2006-05-08 Anders Carlsson <acarlsson (a] apple.com> 890 891 Try fixing the Win32 build 892 893 * WebCore.vcproj/WebCore/WebCore.vcproj: 894 Add XPath files to project. 895 896 2006-05-08 Anders Carlsson <acarlsson (a] apple.com> 897 898 Reviewed by Darin, Eric and Maciej. 899 900 http://bugs.webkit.org/show_bug.cgi?id=6638 901 Support Mozilla's XPathEvaluator object. 902 903 * DerivedSources.make: 904 Generate XPath grammar, and JavaScript wrappers. 905 906 * WebCore.xcodeproj/project.pbxproj: 907 Add new files to project 908 909 * bindings/js/kjs_binding.cpp: 910 (KJS::): 911 (KJS::setDOMException): 912 Handle setting XPath exceptions. 913 914 * bindings/objc/DOM.mm: 915 Just return nil for now when trying to create a wrapper for 916 XPath namespace nodes. 917 918 * bindings/scripts/CodeGeneratorJS.pm: 919 Add XPath types. Also add a "CanBeConstructed" extended attribute 920 for interfaces that can be constructed directly. 921 922 * bridge/mac/WebCorePageBridge.mm: 923 (initializeLoggingChannelsIfNecessary): 924 Initialize LogXPath channel. 925 926 * dom/DOMImplementation.cpp: 927 (WebCore::DOMImplementation::hasFeature): 928 Support "xpath" version "3.0". 929 930 * dom/Document.cpp: 931 (WebCore::Document::Document): 932 933 (WebCore::Document::importNode): 934 Ignore XPath namespace nodes. 935 936 (WebCore::Document::createExpression): 937 (WebCore::Document::createNSResolver): 938 (WebCore::Document::evaluate): 939 New functions which call down to a lazily created XPathEvaluator. 940 941 * dom/Document.h: 942 Add function declarations. 943 944 * dom/Document.idl: 945 Add XPath methods. 946 947 * dom/Node.h: 948 (WebCore::Node::): 949 Add XPATH_NAMESPACE_NODE type. 950 951 * editing/markup.cpp: 952 (WebCore::startMarkup): 953 Ignore XPath namespace nodes. 954 955 * page/DOMWindow.idl: 956 Add constructors for XPathEvaluator and XPathResult. 957 958 * platform/Logging.cpp: 959 * platform/Logging.h: 960 Add XPath log channel 961 962 * xpath: Added. 963 * xpath/XPathEvaluator.cpp: Added. 964 (WebCore::XPathEvaluator::createExpression): 965 (WebCore::XPathEvaluator::createNSResolver): 966 (WebCore::XPathEvaluator::evaluate): 967 * xpath/XPathEvaluator.h: Added. 968 (WebCore::): 969 * xpath/XPathEvaluator.idl: Added. 970 * xpath/XPathExpression.cpp: Added. 971 (WebCore::XPathExpression::createExpression): 972 (WebCore::XPathExpression::~XPathExpression): 973 (WebCore::XPathExpression::evaluate): 974 * xpath/XPathExpression.h: Added. 975 * xpath/XPathExpression.idl: Added. 976 * xpath/XPathNSResolver.cpp: Added. 977 (WebCore::XPathNSResolver::XPathNSResolver): 978 (WebCore::XPathNSResolver::lookupNamespaceURI): 979 * xpath/XPathNSResolver.h: Added. 980 * xpath/XPathNSResolver.idl: Added. 981 * xpath/XPathNamespace.cpp: Added. 982 (WebCore::XPathNamespace::XPathNamespace): 983 (WebCore::XPathNamespace::~XPathNamespace): 984 (WebCore::XPathNamespace::ownerDocument): 985 (WebCore::XPathNamespace::ownerElement): 986 (WebCore::XPathNamespace::prefix): 987 (WebCore::XPathNamespace::nodeName): 988 (WebCore::XPathNamespace::nodeValue): 989 (WebCore::XPathNamespace::namespaceURI): 990 (WebCore::XPathNamespace::nodeType): 991 * xpath/XPathNamespace.h: Added. 992 * xpath/XPathResult.cpp: Added. 993 (WebCore::InvalidatingEventListener::InvalidatingEventListener): 994 (WebCore::InvalidatingEventListener::handleEvent): 995 (WebCore::XPathResult::XPathResult): 996 (WebCore::XPathResult::~XPathResult): 997 (WebCore::XPathResult::convertTo): 998 (WebCore::XPathResult::resultType): 999 (WebCore::XPathResult::numberValue): 1000 (WebCore::XPathResult::stringValue): 1001 (WebCore::XPathResult::booleanValue): 1002 (WebCore::XPathResult::singleNodeValue): 1003 (WebCore::XPathResult::invalidateIteratorState): 1004 (WebCore::XPathResult::invalidIteratorState): 1005 (WebCore::XPathResult::snapshotLength): 1006 (WebCore::XPathResult::iterateNext): 1007 (WebCore::XPathResult::snapshotItem): 1008 * xpath/XPathResult.h: Added. 1009 (WebCore::XPathResult::): 1010 * xpath/XPathResult.idl: Added. 1011 * xpath/impl: Added. 1012 * xpath/impl/XPathExpressionNode.cpp: Added. 1013 (WebCore::XPath::Expression::evaluationContext): 1014 (WebCore::XPath::Expression::Expression): 1015 (WebCore::XPath::Expression::~Expression): 1016 (WebCore::XPath::Expression::evaluate): 1017 (WebCore::XPath::Expression::addSubExpression): 1018 (WebCore::XPath::Expression::optimize): 1019 (WebCore::XPath::Expression::subExprCount): 1020 (WebCore::XPath::Expression::subExpr): 1021 (WebCore::XPath::Expression::isConstant): 1022 * xpath/impl/XPathExpressionNode.h: Added. 1023 (WebCore::XPath::EvaluationContext::EvaluationContext): 1024 * xpath/impl/XPathFunctions.cpp: Added. 1025 (WebCore::XPath::Interval::Interval): 1026 (WebCore::XPath::Interval::contains): 1027 (WebCore::XPath::Interval::asString): 1028 (WebCore::XPath::Function::setArguments): 1029 (WebCore::XPath::Function::setName): 1030 (WebCore::XPath::Function::arg): 1031 (WebCore::XPath::Function::argCount): 1032 (WebCore::XPath::Function::name): 1033 (WebCore::XPath::FunLast::doEvaluate): 1034 (WebCore::XPath::FunLast::isConstant): 1035 (WebCore::XPath::FunPosition::doEvaluate): 1036 (WebCore::XPath::FunPosition::isConstant): 1037 (WebCore::XPath::FunLocalName::isConstant): 1038 (WebCore::XPath::FunLocalName::doEvaluate): 1039 (WebCore::XPath::FunNamespaceURI::isConstant): 1040 (WebCore::XPath::FunNamespaceURI::doEvaluate): 1041 (WebCore::XPath::FunName::isConstant): 1042 (WebCore::XPath::FunName::doEvaluate): 1043 (WebCore::XPath::FunCount::doEvaluate): 1044 (WebCore::XPath::FunCount::isConstant): 1045 (WebCore::XPath::FunString::doEvaluate): 1046 (WebCore::XPath::FunConcat::doEvaluate): 1047 (WebCore::XPath::FunStartsWith::doEvaluate): 1048 (WebCore::XPath::FunContains::doEvaluate): 1049 (WebCore::XPath::FunSubstringBefore::doEvaluate): 1050 (WebCore::XPath::FunSubstringAfter::doEvaluate): 1051 (WebCore::XPath::FunSubstring::doEvaluate): 1052 (WebCore::XPath::FunStringLength::doEvaluate): 1053 (WebCore::XPath::FunNormalizeSpace::doEvaluate): 1054 (WebCore::XPath::FunTranslate::doEvaluate): 1055 (WebCore::XPath::FunBoolean::doEvaluate): 1056 (WebCore::XPath::FunNot::doEvaluate): 1057 (WebCore::XPath::FunTrue::doEvaluate): 1058 (WebCore::XPath::FunTrue::isConstant): 1059 (WebCore::XPath::FunLang::doEvaluate): 1060 (WebCore::XPath::FunLang::isConstant): 1061 (WebCore::XPath::FunFalse::doEvaluate): 1062 (WebCore::XPath::FunFalse::isConstant): 1063 (WebCore::XPath::FunNumber::doEvaluate): 1064 (WebCore::XPath::FunSum::doEvaluate): 1065 (WebCore::XPath::FunFloor::doEvaluate): 1066 (WebCore::XPath::FunCeiling::doEvaluate): 1067 (WebCore::XPath::FunRound::doEvaluate): 1068 (WebCore::XPath::FunctionLibrary::self): 1069 (WebCore::XPath::FunctionLibrary::FunctionLibrary): 1070 (WebCore::XPath::FunctionLibrary::createFunction): 1071 * xpath/impl/XPathFunctions.h: Added. 1072 * xpath/impl/XPathGrammar.y: Added. 1073 * xpath/impl/XPathParser.cpp: Added. 1074 (WebCore::XPath::): 1075 (WebCore::XPath::Parser::charCat): 1076 (WebCore::XPath::Parser::isAxisName): 1077 (WebCore::XPath::Parser::isNodeTypeName): 1078 (WebCore::XPath::Parser::isOperatorContext): 1079 (WebCore::XPath::Parser::skipWS): 1080 (WebCore::XPath::Parser::makeTokenAndAdvance): 1081 (WebCore::XPath::Parser::makeIntTokenAndAdvance): 1082 (WebCore::XPath::Parser::peekAheadHelper): 1083 (WebCore::XPath::Parser::peekCurHelper): 1084 (WebCore::XPath::Parser::lexString): 1085 (WebCore::XPath::Parser::lexNumber): 1086 (WebCore::XPath::Parser::lexNCName): 1087 (WebCore::XPath::Parser::lexQName): 1088 (WebCore::XPath::Parser::nextTokenInternal): 1089 (WebCore::XPath::Parser::nextToken): 1090 (WebCore::XPath::Parser::Parser): 1091 (WebCore::XPath::Parser::reset): 1092 (WebCore::XPath::Parser::lex): 1093 (WebCore::XPath::Parser::parseStatement): 1094 (WebCore::XPath::Parser::registerParseNode): 1095 (WebCore::XPath::Parser::unregisterParseNode): 1096 (WebCore::XPath::Parser::registerPredicateVector): 1097 (WebCore::XPath::Parser::unregisterPredicateVector): 1098 (WebCore::XPath::Parser::registerExpressionVector): 1099 (WebCore::XPath::Parser::unregisterExpressionVector): 1100 (WebCore::XPath::Parser::registerString): 1101 (WebCore::XPath::Parser::unregisterString): 1102 * xpath/impl/XPathParser.h: Added. 1103 (WebCore::XPath::Token::Token): 1104 (WebCore::XPath::Parser::): 1105 (WebCore::XPath::Parser::current): 1106 * xpath/impl/XPathPath.cpp: Added. 1107 (WebCore::XPath::Filter::Filter): 1108 (WebCore::XPath::Filter::~Filter): 1109 (WebCore::XPath::Filter::doEvaluate): 1110 (WebCore::XPath::LocationPath::LocationPath): 1111 (WebCore::XPath::LocationPath::~LocationPath): 1112 (WebCore::XPath::LocationPath::optimize): 1113 (WebCore::XPath::LocationPath::doEvaluate): 1114 (WebCore::XPath::Path::Path): 1115 (WebCore::XPath::Path::~Path): 1116 (WebCore::XPath::Path::doEvaluate): 1117 * xpath/impl/XPathPath.h: Added. 1118 * xpath/impl/XPathPredicate.cpp: Added. 1119 (WebCore::XPath::Number::Number): 1120 (WebCore::XPath::Number::isConstant): 1121 (WebCore::XPath::Number::doEvaluate): 1122 (WebCore::XPath::StringExpression::StringExpression): 1123 (WebCore::XPath::StringExpression::isConstant): 1124 (WebCore::XPath::StringExpression::doEvaluate): 1125 (WebCore::XPath::Negative::doEvaluate): 1126 (WebCore::XPath::NumericOp::NumericOp): 1127 (WebCore::XPath::NumericOp::doEvaluate): 1128 (WebCore::XPath::EqTestOp::EqTestOp): 1129 (WebCore::XPath::EqTestOp::doEvaluate): 1130 (WebCore::XPath::LogicalOp::LogicalOp): 1131 (WebCore::XPath::LogicalOp::shortCircuitOn): 1132 (WebCore::XPath::LogicalOp::isConstant): 1133 (WebCore::XPath::LogicalOp::doEvaluate): 1134 (WebCore::XPath::Union::doEvaluate): 1135 (WebCore::XPath::Predicate::Predicate): 1136 (WebCore::XPath::Predicate::~Predicate): 1137 (WebCore::XPath::Predicate::evaluate): 1138 (WebCore::XPath::Predicate::optimize): 1139 * xpath/impl/XPathPredicate.h: Added. 1140 (WebCore::XPath::NumericOp::): 1141 (WebCore::XPath::EqTestOp::): 1142 (WebCore::XPath::LogicalOp::): 1143 * xpath/impl/XPathStep.cpp: Added. 1144 (WebCore::XPath::Step::axisAsString): 1145 (WebCore::XPath::Step::Step): 1146 (WebCore::XPath::Step::~Step): 1147 (WebCore::XPath::Step::evaluate): 1148 (WebCore::XPath::Step::nodesInAxis): 1149 (WebCore::XPath::Step::nodeTestMatches): 1150 (WebCore::XPath::Step::optimize): 1151 (WebCore::XPath::Step::namespaceFromNodetest): 1152 (WebCore::XPath::Step::primaryNodeType): 1153 * xpath/impl/XPathStep.h: Added. 1154 (WebCore::XPath::Step::): 1155 * xpath/impl/XPathUtil.cpp: Added. 1156 (WebCore::XPath::isRootDomNode): 1157 (WebCore::XPath::stringValue): 1158 (WebCore::XPath::isValidContextNode): 1159 * xpath/impl/XPathUtil.h: Added. 1160 * xpath/impl/XPathValue.cpp: Added. 1161 (WebCore::XPath::Value::Value): 1162 (WebCore::XPath::Value::type): 1163 (WebCore::XPath::Value::isNodeVector): 1164 (WebCore::XPath::Value::isBoolean): 1165 (WebCore::XPath::Value::isNumber): 1166 (WebCore::XPath::Value::isString): 1167 (WebCore::XPath::Value::toNodeVector): 1168 (WebCore::XPath::Value::toBoolean): 1169 (WebCore::XPath::Value::toNumber): 1170 (WebCore::XPath::Value::toString): 1171 * xpath/impl/XPathValue.h: Added. 1172 (WebCore::XPath::Value::): 1173 * xpath/impl/XPathVariableReference.cpp: Added. 1174 (WebCore::XPath::VariableReference::VariableReference): 1175 (WebCore::XPath::VariableReference::isConstant): 1176 (WebCore::XPath::VariableReference::doEvaluate): 1177 * xpath/impl/XPathVariableReference.h: Added. 1178 1179 2006-05-08 David Hyatt <hyatt (a] apple.com> 1180 1181 Comprehensive box-sizing fix. This patch changes all form controls to 1182 have the right box-sizing values (text fields and text areas actually only 1183 use border-box in quirks mode now, and image buttons never use border-box). 1184 1185 Tables are supposed to use border-box box-sizing as well, but that's a scary 1186 enough change that I'm saving it for a separate patch. 1187 1188 Reviewed by mjs 1189 1190 * css/html4.css: 1191 * css/quirks.css: 1192 1193 2006-05-07 Darin Adler <darin (a] apple.com> 1194 1195 Suggested by Mitz. Reviewed and landed by Maciej. 1196 1197 * dom/Document.cpp: (WebCore::Document::formElementsState): Fixed mistake where the 1198 vector has an initial size and instead should have an initial capacity. Harmless in 1199 a way, but hurts performance. 1200 1201 2006-05-07 David Hyatt <hyatt (a] apple.com> 1202 1203 Fix for bugzilla bug 8060. 1204 1205 Fixed width table cells weren't having their border widths 1206 included in the effective width of the column (and thus could end up being 1207 too small). 1208 1209 Reviewed by darin 1210 1211 Added fast/tables/fixed-cell-growth.html 1212 1213 * rendering/table_layout.cpp: 1214 (WebCore::AutoTableLayout::recalcColumn): 1215 1216 2006-05-07 Alexey Proskuryakov <ap (a] nypop.com> 1217 1218 Reviewed by Darin. 1219 1220 - http://bugs.webkit.org/show_bug.cgi?id=8769 1221 TextEncoding::fromUnicode() - support non-BMP characters and convert to NFC 1222 1223 Tests: 1224 * fast/forms/form-data-encoding.html 1225 * fast/forms/form-data-encoding-2.html 1226 1227 * platform/mac/TextEncodingMac.cpp: 1228 (WebCore::TextEncoding::fromUnicode): Normalize the string; handle surrogate pairs. 1229 1230 2006-05-06 David Hyatt <hyatt (a] apple.com> 1231 1232 Rename WebCoreFont to FontPlatformData and WebTextRenderer to FontData. Merge them into the 1233 headers (uncleanly with ifdefs at the moment, so I can see what I'm working towards). 1234 1235 Reviewed by mjs 1236 1237 * ChangeLog: 1238 * WebCore.vcproj/WebCore/WebCore.vcproj: 1239 * WebCore.xcodeproj/project.pbxproj: 1240 * bridge/mac/WebCoreStringTruncator.mm: 1241 (stringWidth): 1242 (truncateString): 1243 (+[WebCoreStringTruncator widthOfString:font:]): 1244 * kwq/KWQComboBox.mm: 1245 (QComboBox::sizeHint): 1246 * kwq/KWQLineEdit.mm: 1247 (QLineEdit::sizeForCharacterWidth): 1248 * kwq/KWQListBox.mm: 1249 (itemTextRenderer): 1250 (groupLabelTextRenderer): 1251 (QListBox::sizeForNumberOfLines): 1252 (-[KWQTableView drawRow:clipRect:]): 1253 * platform/Font.cpp: 1254 (WebCore::m_wordSpacing): 1255 (WebCore::Font::Font): 1256 (WebCore::Font::operator=): 1257 (WebCore::Font::update): 1258 (WebCore::Font::ascent): 1259 (WebCore::Font::descent): 1260 (WebCore::Font::lineSpacing): 1261 (WebCore::Font::xHeight): 1262 (WebCore::Font::isFixedPitch): 1263 * platform/Font.h: 1264 (WebCore::Font::getNSFont): 1265 * platform/FontData.h: 1266 (WebCore::FontData::ascent): 1267 (WebCore::FontData::descent): 1268 (WebCore::FontData::lineSpacing): 1269 (WebCore::FontData::lineGap): 1270 (WebCore::FontData::misspellingLineThickness): 1271 (WebCore::FontData::misspellingLinePatternWidth): 1272 (WebCore::FontData::misspellingLinePatternGapWidth): 1273 * platform/FontDataSet.h: Removed. 1274 * platform/FontFallbackList.h: Added. 1275 * platform/FontPlatformData.h: 1276 * platform/mac/FontData.mm: Added. 1277 (WebCore::WebCoreInitializeFont): 1278 (WebCore::WebCoreInitializeEmptyTextGeometry): 1279 (WebCore::widthForGlyph): 1280 (WebCore::overrideLayoutOperation): 1281 (WebCore::FontData::~FontData): 1282 (WebCore::FontData::xHeight): 1283 (WebCore::FontData::drawRun): 1284 (WebCore::FontData::floatWidthForRun): 1285 (WebCore::FontData::drawLineForCharacters): 1286 (WebCore::FontData::selectionRectForRun): 1287 (WebCore::FontData::drawHighlightForRun): 1288 (WebCore::FontData::drawLineForMisspelling): 1289 (WebCore::FontData::pointToOffset): 1290 (WebCore::FontData::setAlwaysUseATSU): 1291 (WebCore::getSmallCapsRenderer): 1292 (WebCore::findSubstituteFont): 1293 (WebCore::rendererForAlternateFont): 1294 (WebCore::findSubstituteRenderer): 1295 (WebCore::computeWidthForSpace): 1296 (WebCore::setUpFont): 1297 (WebCore::CG_drawHighlight): 1298 (WebCore::CG_selectionRect): 1299 (WebCore::CG_draw): 1300 (WebCore::CG_floatWidthForRun): 1301 (WebCore::updateGlyphMapEntry): 1302 (WebCore::extendGlyphMap): 1303 (WebCore::extendWidthMap): 1304 (WebCore::initializeATSUStyle): 1305 (WebCore::createATSULayoutParameters): 1306 (WebCore::getTextBounds): 1307 (WebCore::ATSU_floatWidthForRun): 1308 (WebCore::ATSU_drawHighlight): 1309 (WebCore::ATSU_selectionRect): 1310 (WebCore::ATSU_draw): 1311 (WebCore::ATSU_pointToOffset): 1312 (WebCore::advanceWidthIteratorOneCharacter): 1313 (WebCore::CG_pointToOffset): 1314 (WebCore::glyphForCharacter): 1315 (WebCore::initializeWidthIterator): 1316 (WebCore::advanceWidthIterator): 1317 * platform/mac/FontMac.mm: 1318 (WebCore::m_font): 1319 (WebCore::FontFallbackList::~FontFallbackList): 1320 (WebCore::FontFallbackList::platformFont): 1321 (WebCore::FontFallbackList::primaryFont): 1322 (WebCore::FontFallbackList::determinePitch): 1323 (WebCore::FontFallbackList::invalidate): 1324 (WebCore::Font::platformFont): 1325 (WebCore::Font::selectionRectForText): 1326 (WebCore::Font::drawText): 1327 (WebCore::Font::drawHighlightForText): 1328 (WebCore::Font::drawLineForText): 1329 (WebCore::Font::drawLineForMisspelling): 1330 (WebCore::Font::misspellingLineThickness): 1331 (WebCore::Font::floatWidth): 1332 (WebCore::Font::checkSelectionPoint): 1333 * platform/mac/WebCoreTextRenderer.mm: 1334 (WebCoreDrawTextAtPoint): 1335 (WebCoreTextFloatWidth): 1336 (WebCoreSetAlwaysUseATSU): 1337 * platform/mac/WebTextRenderer.h: Removed. 1338 * platform/mac/WebTextRenderer.mm: Removed. 1339 * platform/mac/WebTextRendererFactory.h: 1340 * platform/mac/WebTextRendererFactory.mm: 1341 (-[WebTextRendererFactory isFontFixedPitch:]): 1342 (-[WebTextRendererFactory init]): 1343 (-[WebTextRendererFactory rendererWithFont:]): 1344 (-[WebTextRendererFactory fontWithFamilies:traits:size:]): 1345 * platform/win/FontWin.cpp: 1346 (WebCore::FontFallbackList::~FontFallbackList): 1347 (WebCore::FontFallbackList::determinePitch): 1348 (WebCore::FontFallbackList::invalidate): 1349 (WebCore::FontFallbackList::primaryFont): 1350 (WebCore::Font::floatWidth): 1351 (WebCore::Font::drawText): 1352 (WebCore::Font::drawHighlightForText): 1353 (WebCore::Font::selectionRectForText): 1354 (WebCore::Font::checkSelectionPoint): 1355 1356 2006-05-05 Darin Adler <darin (a] apple.com> 1357 1358 - fix the Windows build 1359 1360 * platform/win/FontWin.cpp: (WebCore::getFontData): 1361 1362 2006-05-05 Darin Adler <darin (a] apple.com> 1363 1364 * platform/SegmentedString.h: (WebCore::SegmentedString::advance): Oops! 1365 Removed an extra ! that was causing everything to fail. 1366 1367 2006-05-05 Darin Adler <darin (a] apple.com> 1368 1369 Reviewed by Tim Hatcher. 1370 1371 - remove a few of the stranger features of QChar on the road to 1372 eventually replacing it with an integer type (probably ICU's UChar) 1373 1374 * platform/DeprecatedString.h: Remove SpecialCharacter, byteOrderMark, null, 1375 cell, row, isNull, mirrored, mirroredChar, operator char, >, >=, <, and <= 1376 from QChar. Also removed the many unneeded friend declarations. Remove findArg 1377 and arg from DeprecatedString. 1378 1379 * dom/Document.cpp: (WebCore::Document::parseQualifiedName): Cast the type of the 1380 buffer before invoking the U16_NEXT function. Turns out this was converting each 1381 QChar to a char and back to a UChar, which means it caused a bug with characters 1382 that are U+0100 or greater. 1383 1384 * css/csshelper.cpp: (WebCore::parseURL): 1385 * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::constrainValue): 1386 * platform/StringImpl.cpp: (WebCore::StringImpl::toCoordsArray): 1387 * xml/xmlhttprequest.cpp: (WebCore::getCharset): 1388 Add some calls to unicode() since we don't have comparison operators any more. 1389 1390 * dom/StyledElement.cpp: 1391 (WebCore::toHex): Rewrote to just take a UChar parameter. 1392 (WebCore::StyledElement::addCSSColor): Call toHex on the character code. 1393 1394 * bridge/mac/WebCoreFrameBridge.mm: 1395 (-[WebCoreFrameBridge smartInsertForString:replacingRange:beforeString:afterString:]): 1396 * editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::doApply): 1397 * editing/TextIterator.cpp: (WebCore::TextIterator::handleTextBox): 1398 * platform/SegmentedString.h: 1399 (WebCore::SegmentedString::push): 1400 (WebCore::SegmentedString::advance): 1401 (WebCore::SegmentedString::escaped): 1402 * platform/SegmentedString.cpp: 1403 (WebCore::SegmentedString::length): 1404 (WebCore::SegmentedString::append): 1405 (WebCore::SegmentedString::prepend): 1406 (WebCore::SegmentedString::toString): 1407 Changed calls to isNull() to instead just use unicode() and check for 0. 1408 1409 * html/HTMLTokenizer.cpp: 1410 (WebCore::HTMLTokenizer::parseEntity): Change callers that used cell and row to 1411 just use unicode() instead. 1412 (WebCore::HTMLTokenizer::parseTag): Ditto. 1413 1414 * loader/Decoder.cpp: (Decoder::decode): Changed code that did a type cast to 1415 unsigned char to instead call unicode(). 1416 1417 * platform/DeprecatedString.cpp: 1418 (KWQStringData::makeAscii): Call latin1() instead of relying on the conversion operator. 1419 (DeprecatedString::DeprecatedString): Call unicode() instead of relying on the conversion 1420 operator (the character has been tested and is known to be ASCII). 1421 (DeprecatedString::at): Use 0 instead of QChar::null. 1422 (DeprecatedString::compare): Use unicode() so we can do comparison since we don't have 1423 comparison operators any more. 1424 (DeprecatedString::find): Call unicode() instead of relying on the conversion 1425 operator (the character has been tested and is known to be ASCII). 1426 (DeprecatedString::findRev): Ditto. 1427 (DeprecatedString::copyLatin1): Call latin1() instead of relying on the conversion operator. 1428 (DeprecatedString::lower): Call unicode() instead of relying on the conversion 1429 operator (the character has been tested and is known to be ASCII). 1430 (DeprecatedString::insert): Ditto. 1431 (DeprecatedString::replace): Ditto. 1432 (DeprecatedString::fill): Ditto. 1433 (DeprecatedString::append): Ditto. 1434 1435 * html/html_inlineimpl.cpp: (WebCore::HTMLAnchorElement::defaultEventHandler): 1436 Eliminate the one use of DeprecatedString::arg. 1437 1438 - other cleanup 1439 1440 * kwq/KWQCString.cpp: Remove unneeded "using" directive. 1441 1442 * html/HTMLElementFactory.cpp: 1443 (WebCore::htmlConstructor): 1444 (WebCore::headConstructor): 1445 (WebCore::bodyConstructor): 1446 (WebCore::baseConstructor): 1447 (WebCore::linkConstructor): 1448 (WebCore::metaConstructor): 1449 (WebCore::styleConstructor): 1450 (WebCore::titleConstructor): 1451 (WebCore::frameConstructor): 1452 (WebCore::framesetConstructor): 1453 (WebCore::iframeConstructor): 1454 (WebCore::formConstructor): 1455 (WebCore::buttonConstructor): 1456 (WebCore::inputConstructor): 1457 (WebCore::isindexConstructor): 1458 (WebCore::fieldsetConstructor): 1459 (WebCore::labelConstructor): 1460 (WebCore::legendConstructor): 1461 (WebCore::optgroupConstructor): 1462 (WebCore::optionConstructor): 1463 (WebCore::selectConstructor): 1464 (WebCore::textareaConstructor): 1465 (WebCore::dlConstructor): 1466 (WebCore::ulConstructor): 1467 (WebCore::olConstructor): 1468 (WebCore::dirConstructor): 1469 (WebCore::menuConstructor): 1470 (WebCore::liConstructor): 1471 (WebCore::blockquoteConstructor): 1472 (WebCore::divConstructor): 1473 (WebCore::headingConstructor): 1474 (WebCore::hrConstructor): 1475 (WebCore::paragraphConstructor): 1476 (WebCore::preConstructor): 1477 (WebCore::basefontConstructor): 1478 (WebCore::fontConstructor): 1479 (WebCore::modConstructor): 1480 (WebCore::anchorConstructor): 1481 (WebCore::imageConstructor): 1482 (WebCore::mapConstructor): 1483 (WebCore::areaConstructor): 1484 (WebCore::canvasConstructor): 1485 (WebCore::appletConstructor): 1486 (WebCore::embedConstructor): 1487 (WebCore::objectConstructor): 1488 (WebCore::paramConstructor): 1489 (WebCore::scriptConstructor): 1490 (WebCore::tableConstructor): 1491 (WebCore::tableCaptionConstructor): 1492 (WebCore::tableColConstructor): 1493 (WebCore::tableRowConstructor): 1494 (WebCore::tableCellConstructor): 1495 (WebCore::tableSectionConstructor): 1496 (WebCore::brConstructor): 1497 (WebCore::quoteConstructor): 1498 (WebCore::marqueeConstructor): 1499 Mark functions static, remove unused parameters, change from docPtr to doc. 1500 1501 2006-05-05 Alexey Proskuryakov <ap (a] nypop.com> 1502 1503 Reviewed by Maciej. 1504 1505 - http://bugs.webkit.org/show_bug.cgi?id=8626 1506 Strict mode erroneously triggered by a broken comment 1507 1508 Test: fast/parser/broken-comments-vs-parsing-mode.html 1509 1510 * page/Frame.cpp: 1511 (WebCore::Frame::endIfNotLoading): Call determineParseMode() if needed. 1512 1513 2006-05-05 Darin Adler <darin (a] apple.com> 1514 1515 - fix the Windows build (this time for sure) 1516 1517 * platform/win/TemporaryLinkStubs.cpp: 1518 (GraphicsContext::translate): Added. 1519 (GraphicsContext::rotate): Ditto. 1520 (GraphicsContext::scale): Ditto. 1521 1522 2006-05-05 Darin Adler <darin (a] apple.com> 1523 1524 - fix the Windows build 1525 1526 * bridge/win/FrameWin.h: Add Element* parameter to createPlugin. 1527 * platform/win/TemporaryLinkStubs.cpp: (FrameWin::createPlugin): Ditto. 1528 1529 2006-05-05 Darin Adler <darin (a] apple.com> 1530 1531 - get the Windows build a little closer to building again 1532 1533 * platform/cairo/GraphicsContextCairo.cpp: 1534 (WebCore::GraphicsContext::drawRect): Call alpha to check if the color is transparent. 1535 Call setColor directly instead of setColorFromPen. 1536 (WebCore::GraphicsContext::drawLine): Ditto. 1537 (WebCore::GraphicsContext::drawEllipse): Ditto. 1538 (WebCore::GraphicsContext::drawArc): Ditto. 1539 (WebCore::GraphicsContext::drawConvexPolygon): Ditto. 1540 * platform/win/TemporaryLinkStubs.cpp: (JavaAppletWidget::JavaAppletWidget): Updated parameter types. 1541 1542 2006-05-05 Darin Adler <darin (a] apple.com> 1543 1544 Reviewed by Adele. 1545 1546 - fixed data structure used to save/restore form element state to remove the 1547 O(n^2) algorithm and remove anomalies in how it works 1548 - fix http://bugs.webkit.org/show_bug.cgi?id=8683 1549 REGRESSION: imdb search button has "Submit" overload after going back 1550 1551 * manual-tests/form-value-restore.html: Added. 1552 1553 * bridge/mac/WebCoreFrameBridge.mm: 1554 (-[WebCoreFrameBridge saveDocumentState]): Rewrote to call the new formElementsState 1555 function on the document and also to convert null strings to NSNull instead of empty 1556 NSString objects. 1557 (-[WebCoreFrameBridge restoreDocumentState]): Ditto, with the setStateForNewFormElements 1558 function. 1559 1560 * dom/Document.h: Added FormElementKey, FormElementKeyHash, and FormElementKeyHashTraits 1561 for use in the hash map. Made readyState, inputEncoding, defaultCharset, charset, 1562 characterSet, getElementByAccessKey, haveStylesheetsLoaded, usesDescendantRules, 1563 usesSiblingRules, inCompatMode, inAlmostStrictMode, inStrictMode, preferredStylesheetSet, 1564 selectedStylesheetSet, and getCSSTarget all const member functions. Removed the unused 1565 nextState function. Renamed registerMaintainsState and deregisterMaintainsState to 1566 registerFormElementWithState and HTMLGenericFormElement and changed them to use form 1567 elements rather than arbitrary DOM nodes. Replaced docState with formElementsState and 1568 setRestoreState and restoreState with setStateForNewFormElements, hasStateForNewFormElements, 1569 and takeStateForFormElement. Replaced m_maintainsState with m_formElementsWithState, 1570 m_state with m_stateForNewFormElements. Made m_elementsByAccessKey and m_accessKeyMapValid 1571 mutable. Removed unused m_elementNames, m_elementNameAlloc, m_elementNameCount, m_attrNames, 1572 m_attrNameAlloc, m_attrNameCount, m_namespaceURIs, m_namespaceURIAlloc, m_namespaceURICount. 1573 1574 * dom/Document.cpp: 1575 (WebCore::Document::Document): Remove initialization of long-obsolete m_elementNames and 1576 m_attrNames. 1577 (WebCore::Document::~Document): Remove destruction of same. 1578 (WebCore::Document::readyState): Made const. 1579 (WebCore::Document::inputEncoding): Ditto. 1580 (WebCore::Document::defaultCharset): Ditto. 1581 (WebCore::Document::getElementByAccessKey): Ditto. 1582 (WebCore::Document::preferredStylesheetSet): Ditto. 1583 (WebCore::Document::selectedStylesheetSet): Ditto. 1584 (WebCore::Document::getCSSTarget): Ditto. 1585 (WebCore::Document::formElementsState): Added. Replaces the old docState function. 1586 Builds a vector of strings, with 3 strings for each form element containing the 1587 name, type, and state value. 1588 (WebCore::Document::setStateForNewFormElements): Added. Converts the state vector 1589 into a hash map, considering the scheme with 3 strings for form element used above. 1590 (WebCore::Document::hasStateForNewFormElements): Added. 1591 (WebCore::Document::takeStateForFormElement): Added. Given a name and type, looks 1592 up the values in the hash map and "peels off" the last one. 1593 (WebCore::FormElementKey::FormElementKey): Added. 1594 (WebCore::FormElementKey::~FormElementKey): Added. 1595 (WebCore::FormElementKey::operator=): Added. 1596 (WebCore::FormElementKey::ref): Added. 1597 (WebCore::FormElementKey::deref): Added. 1598 (WebCore::FormElementKeyHash::hash): Added. 1599 (WebCore::FormElementKeyHashTraits::deletedValue): Added. 1600 1601 * dom/Element.h: Removed state function. 1602 * dom/Node.h: Removed maintainsState, state, and restoreState functions. 1603 * dom/Node.cpp: Ditto. 1604 1605 * dom/QualifiedName.cpp: Reformatted. 1606 (WebCore::hashComponents): Removed code to handle buffers that are not multiples 1607 of 4 bytes, since a QualifiedName is guaranteed to be; also asserted that fact. 1608 1609 * html/HTMLParser.cpp: 1610 (WebCore::HTMLParser::insertNode): Remove code to restore state; that's now handled 1611 by closeRenderer. 1612 (WebCore::HTMLParser::popOneBlock): Ditto. 1613 1614 * html/HTMLFormElement.cpp: Added include of HTMLInputElement.h. 1615 1616 * html/HTMLGenericFormElement.h: Changed form to be a const member function. 1617 Changed type function to return a const AtomicString& instead of a String. 1618 Added an override of closeRenderer. Removed state and findMatchingState functions. 1619 Added stateValue and restoreState functions. Made m_form, m_disabled, and m_readOnly 1620 be private instead of protected. Removed m_inited. Changed booleans to not use bit 1621 fields since there are only two of them. 1622 * html/HTMLGenericFormElement.cpp: Removed encodedElementName, state, and 1623 findMatchingState functions. 1624 (WebCore::HTMLGenericFormElement::stateValue): Added. No implementation. This will only be 1625 called for subclasses that call registerFormElementWithState, and those will override and 1626 implement it. 1627 (WebCore::HTMLGenericFormElement::restoreState): Ditto. 1628 (WebCore::HTMLGenericFormElement::closeRenderer): Added. Replaces code that was in the 1629 HTML parser. Calls takeStateForFormElement, passing in the name and type, and if a 1630 state is found, calls restoreState. 1631 1632 * html/HTMLButtonElement.h: Changed type to return a const AtomicString& instead 1633 of a String. 1634 * html/HTMLButtonElement.cpp: 1635 (WebCore::HTMLButtonElement::type): Return a const AtomicString& instead of a 1636 String. 1637 (WebCore::HTMLButtonElement::defaultEventHandler): Use form() instead of m_form. 1638 (WebCore::HTMLButtonElement::isSuccessfulSubmitButton): Use disabled() instead of 1639 m_disabled. 1640 1641 * html/HTMLInputElement.h: Changed type to return a const AtomicString& instead 1642 of a String. Removed maintainsState, state, and restoreState functions, and added 1643 new stateValue and restoreState functions. Added m_inited (moved here from the generic 1644 form element base class). 1645 * html/HTMLInputElement.cpp: 1646 (WebCore::HTMLInputElement::init): Call registerFormElementWithState. This was 1647 formerly done by the HTML parser. 1648 (WebCore::HTMLInputElement::~HTMLInputElement): Call deregisterFormElementWithState 1649 by its new name. 1650 (WebCore::HTMLInputElement::isKeyboardFocusable): Use form() instead of m_form. 1651 (WebCore::HTMLInputElement::setType): Ditto. 1652 (WebCore::HTMLInputElement::setInputType): Ditto. Also call inputType() != PASSWORD 1653 instead of maintainsState(), since this is the only function that needs to know 1654 the rule and it's no longer a function in the base class. Also call register and 1655 deregister functions by their new names. 1656 (WebCore::HTMLInputElement::type): Changed to return const AtomicString& instead 1657 of String. 1658 (WebCore::HTMLInputElement::stateValue): Renamed from state and changed to no 1659 longer include the name and type, formerly obtained by calling the base class's 1660 HTMLGenericFormElement::state, and to no longer modify the value() string by 1661 adding a ".", which gets in the way of distinguishing null and empty values 1662 and is slower and unnecessary. 1663 (WebCore::HTMLInputElement::restoreState): Changed because it takes a single 1664 state and doesn't need to call findMatchingState, and also to no longer remove the last 1665 character from the value when restoring state. 1666 (WebCore::HTMLInputElement::parseMappedAttribute): Use form() instead of m_form. 1667 (WebCore::HTMLInputElement::isSuccessfulSubmitButton): Use disabled() instead of 1668 m_disabled. 1669 (WebCore::HTMLInputElement::setChecked): Use form() instead of m_form. 1670 (WebCore::HTMLInputElement::preDispatchEventHandler): Ditto. 1671 (WebCore::HTMLInputElement::defaultEventHandler): Ditto. 1672 1673 * html/HTMLSelectElement.h: Changed type to return a const AtomicString& instead 1674 of a String. 1675 * html/HTMLSelectElement.cpp: 1676 (WebCore::HTMLSelectElement::HTMLSelectElement): Call registerFormElementWithState. 1677 This was formerly done by the HTML parser. 1678 (WebCore::HTMLSelectElement::~HTMLSelectElement): Call deregisterFormElementWithState 1679 by its new name. 1680 (WebCore::HTMLSelectElement::type): Changed to return const AtomicString& instead 1681 of String. 1682 (WebCore::HTMLSelectElement::stateValue): Renamed from state and changed to no 1683 longer include the name and type, formerly obtained by calling the base class's 1684 HTMLGenericFormElement::state, and to build the string in a Vector<char> instead of 1685 appending characters one at a time to a string. 1686 (WebCore::HTMLSelectElement::restoreState): Changed because it takes a single 1687 state and doesn't need to call findMatchingState. 1688 (WebCore::HTMLSelectElement::defaultEventHandler): Use form() instead of m_form. 1689 1690 * html/HTMLTextAreaElement.h: Changed type to return a const AtomicString& instead 1691 of a String. Removed maintainsState, state, and restoreState functions, and added 1692 new stateValue and restoreState functions. 1693 * html/HTMLTextAreaElement.cpp: 1694 (WebCore::HTMLTextAreaElement::HTMLTextAreaElement): Call registerFormElementWithState. 1695 This was formerly done by the HTML parser. Also use member initialization instead of 1696 assignment. 1697 (WebCore::HTMLTextAreaElement::~HTMLTextAreaElement): Call deregisterFormElementWithState 1698 by its new name. 1699 (WebCore::HTMLTextAreaElement::type): Changed to return const AtomicString& instead 1700 of String. 1701 (WebCore::HTMLTextAreaElement::stateValue): Renamed from state and changed to no 1702 longer include the name and type, formerly obtained by calling the base class's 1703 HTMLGenericFormElement::state, and to no longer modify the value() string by 1704 adding a ".", which is unnecessary. 1705 (WebCore::HTMLTextAreaElement::restoreState): Changed because it takes a single 1706 state and doesn't need to call findMatchingState, and also to no longer remove the last 1707 character from the value when restoring state. 1708 (WebCore::HTMLTextAreaElement::updateValue): Changed to const. 1709 (WebCore::HTMLTextAreaElement::value): Ditto. 1710 (WebCore::HTMLTextAreaElement::defaultValue): Ditto. 1711 1712 * html/HTMLFieldSetElement.h: Changed type to return a const AtomicString& instead 1713 of a String. 1714 * html/HTMLFieldSetElement.cpp: (WebCore::HTMLFieldSetElement::type): Ditto. 1715 * html/HTMLKeygenElement.h: Ditto. 1716 * html/HTMLKeygenElement.cpp: (WebCore::HTMLKeygenElement::type): Ditto. 1717 * html/HTMLLegendElement.h: Ditto. 1718 * html/HTMLLegendElement.cpp: (WebCore::HTMLLegendElement::type): 1719 * html/HTMLOptGroupElement.h: Ditto. 1720 * html/HTMLOptGroupElement.cpp: (WebCore::HTMLOptGroupElement::type): Ditto. 1721 * html/HTMLOptionElement.h: Ditto. 1722 * html/HTMLOptionElement.cpp: (WebCore::HTMLOptionElement::type): Ditto. 1723 1724 * ksvg2/svg/SVGAnimationElement.cpp: (SVGAnimationElement::closeRenderer): 1725 Added missing call to base class. 1726 1727 * rendering/render_form.h: Removed element() functions that cast to the 1728 appropriate derived element class. They do make some bits of code slightly 1729 more readable, but they also require including too many headers. Removed 1730 the includes of HTMLInputElement.h, HTMLSelectElement.h, HTMLTextAreaElement.h, 1731 and KWQLineEdit.h, and added an include of GraphicsTypes.h. 1732 * rendering/render_form.cpp: 1733 (WebCore::RenderFormElement::updateFromElement): Changed use of element() 1734 to instead use node() and cast. 1735 (WebCore::RenderFormElement::clicked): Ditto. 1736 (WebCore::RenderLineEdit::selectionChanged): Ditto. 1737 (WebCore::RenderLineEdit::returnPressed): Ditto. 1738 (WebCore::RenderLineEdit::performSearch): Ditto. 1739 (WebCore::RenderLineEdit::addSearchResult): Ditto. 1740 (WebCore::RenderLineEdit::calcMinMaxWidth): Ditto. 1741 (WebCore::RenderLineEdit::setStyle): Ditto. 1742 (WebCore::RenderLineEdit::updateFromElement): Ditto. 1743 (WebCore::RenderLineEdit::valueChanged): Ditto. 1744 (WebCore::RenderFileButton::calcMinMaxWidth): Ditto. 1745 (WebCore::RenderFileButton::updateFromElement): Ditto. 1746 (WebCore::RenderFileButton::returnPressed): Ditto. 1747 (WebCore::RenderFileButton::valueChanged): Ditto. 1748 (WebCore::RenderSelect::updateFromElement): Ditto. 1749 (WebCore::RenderSelect::layout): Ditto. 1750 (WebCore::RenderSelect::valueChanged): Ditto. 1751 (WebCore::RenderSelect::selectionChanged): Ditto. 1752 (WebCore::RenderSelect::updateSelection): Ditto. 1753 (WebCore::RenderTextArea::destroy): Ditto. 1754 (WebCore::RenderTextArea::calcMinMaxWidth): Ditto. 1755 (WebCore::RenderTextArea::setStyle): Ditto. 1756 (WebCore::RenderTextArea::updateFromElement): Ditto. 1757 (WebCore::RenderTextArea::valueChanged): Ditto. 1758 (WebCore::RenderTextArea::selectionChanged): Ditto. 1759 (WebCore::RenderSlider::updateFromElement): Ditto. 1760 (WebCore::RenderSlider::valueChanged): Ditto. 1761 1762 2006-05-05 Matt Gough <matt (a] softchaos.com> 1763 1764 Reviewed by Darin. 1765 1766 http://bugs.webkit.org/show_bug.cgi?id=8563 1767 1768 Test: fast/doctypes/005-case-preserving.html 1769 1770 The doctype object in the DOM is now usable by client code 1771 as opposed to always being exposed as nil. Now also ensures that 1772 the 'name' of the component preserves the case of the original html source. 1773 (i.e HtMl -> HtMl not HTML) 1774 1775 * dom/Document.h: 1776 Changes comment by docType() to say it may return 0 for html 1777 * html/HTMLDocument.cpp: 1778 (WebCore::parseDocTypeDeclaration): 1779 (WebCore::HTMLDocument::determineParseMode): 1780 Preserves the case of the name component 1781 (WebCore::HTMLDocument::doctype):removed 1782 * html/HTMLDocument.h: 1783 (WebCore::HTMLDocument::doctype):removed 1784 1785 2006-05-05 Rob Buis <buis (a] kde.org> 1786 1787 Reviewed by Darin. 1788 1789 Fix for http://bugs.webkit.org/show_bug.cgi?id=8445: 1790 [DOMHTMLSelectElement multiple] returns no when the select element is multiple 1791 1792 Correct the logic errors, which are clearly indicated by the changeset given 1793 in the bug report. 1794 1795 * bindings/objc/DOMHTML.mm: 1796 (-[DOMHTMLLinkElement disabled]): 1797 (-[DOMHTMLSelectElement disabled]): 1798 (-[DOMHTMLSelectElement multiple]): 1799 (-[DOMHTMLOptGroupElement disabled]): 1800 (-[DOMHTMLOptionElement defaultSelected]): 1801 (-[DOMHTMLOptionElement disabled]): 1802 1803 2006-05-04 Darin Adler <darin (a] apple.com> 1804 1805 Reviewed by Tim Omernick. 1806 1807 - fix storage leak I introduced yesterday 1808 1809 * platform/cg/GraphicsContextCG.cpp: 1810 (WebCore::setCGFillColor): Added. 1811 (WebCore::setCGStrokeColor): Added. 1812 (WebCore::GraphicsContext::drawRect): Use setCGFillColor to avoid allocating 1813 a CGColorRef object. 1814 (WebCore::GraphicsContext::drawLine): Use setCGStrokeColor and setCGFillColor 1815 to avoid allocating a CGColorRef object. 1816 (WebCore::GraphicsContext::drawEllipse): Ditto. 1817 (WebCore::GraphicsContext::drawArc): Ditto. 1818 (WebCore::GraphicsContext::drawConvexPolygon): Ditto. 1819 (WebCore::GraphicsContext::fillRect): Ditto. 1820 1821 2006-05-04 Justin Garcia <justin.garcia (a] apple.com> 1822 1823 Reviewed by harrison 1824 1825 * dom/Node.cpp: 1826 (WebCore::Node::rootEditableElement): 1827 Restored code to stop at the body tag. Editing shouldn't be allowed to 1828 happen outside the body, so it needs to be the editable root even if the 1829 html element is contentEditable. 1830 * editing/ReplaceSelectionCommand.cpp: 1831 (WebCore::ReplaceSelectionCommand::shouldMergeEnd): 1832 Now takes in more information so it can be "the decider". 1833 (WebCore::ReplaceSelectionCommand::doApply): 1834 Merging two paragraphs will destroy the moved one's block styles. Perform 1835 the end merge backward (from content already in the document to just inserted 1836 content) if moving forward would move the paragraph that contained the start of 1837 the selection being pasted into, since we always want to preserve that paragraph's 1838 block style. 1839 Moving backward in this case is also helpful because otherwise it would be 1840 difficult to remember the position where inserted content began (since merging 1841 would remove m_firstNodeInserted). That position is needed in order to select 1842 the replacement and to add smart replace whitespace. 1843 (WebCore::ReplaceSelectionCommand::removeEndBRIfNeeded): 1844 If [br, 0] is at the end of a block, the br is not necessarily collapsed 1845 in quirks mode. [br, 0] needs to also not be at the start of a block. 1846 1847 * editing/ReplaceSelectionCommand.h: 1848 1849 2006-05-04 Tim Omernick <timo (a] apple.com> 1850 1851 Reviewed by Darin. 1852 1853 <rdar://problem/4537606> Give Java WebKit plugin access to its own DOM element 1854 1855 * bridge/mac/WebCoreFrameBridge.h: 1856 Added DOMElement parameter to -viewForJavaAppletWithFrame:attributeNames:attributeValues:baseURL:. 1857 1858 * bridge/JavaAppletWidget.h: 1859 Constructor now takes the applet's element instead of its containing frame. 1860 1861 * bridge/mac/JavaAppletWidget.mm: 1862 (JavaAppletWidget::JavaAppletWidget): 1863 Pass the applet's element to viewForJavaAppletWithFrame:. 1864 1865 * rendering/RenderApplet.cpp: 1866 (WebCore::RenderApplet::createWidgetIfNecessary): 1867 Pass the element along to JavaAppletWidget. 1868 1869 2006-05-04 Tim Omernick <timo (a] apple.com> 1870 1871 Reviewed by John Sullivan. 1872 1873 <rdar://problem/4480186> Give WebKit plugins access to their own DOM element 1874 1875 * bridge/mac/WebCoreFrameBridge.h: 1876 Added DOMElement: parameter to -viewForPluginWithURL:attributeNames:attributueValues:MIMEType: 1877 1878 * bridge/mac/FrameMac.h: 1879 * bridge/mac/FrameMac.mm: 1880 (WebCore::FrameMac::createPlugin): 1881 Added "element" parameter; wrap element in DOMElement and pass up to the bridge. 1882 1883 * page/Frame.h: 1884 Added "element" parameter to createPlugin(). 1885 * page/Frame.cpp: 1886 (WebCore::Frame::loadPlugin): 1887 Get the plugin's DOM element and pass to createPlugin(). 1888 1889 2006-05-04 Eric Seidel <eseidel (a] apple.com> 1890 1891 Reviewed by timo. 1892 1893 Add drag & drop support to <input type="file"> 1894 http://bugs.webkit.org/show_bug.cgi?id=8733 1895 1896 Test: manual/input-type-file-drag-drop.html 1897 1898 * kwq/KWQFileButton.mm: 1899 (-[WebFileChooserButton initWithWidget::]): 1900 (-[WebCoreFileButton initWithWidget:]): 1901 (-[WebCoreFileButton drawRect:]): 1902 (-[WebCoreFileButton updateLabel]): 1903 (-[WebCoreFileButton setFilename:]): 1904 (-[WebCoreFileButton changeFilename:]): 1905 (-[WebCoreFileButton chooseFilename:]): 1906 (validFilenameFromPasteboard): 1907 (-[WebCoreFileButton draggingEntered:]): 1908 (-[WebCoreFileButton draggingExited:]): 1909 (-[WebCoreFileButton performDragOperation:]): 1910 1911 2006-05-04 Beth Dakin <bdakin (a] apple.com> 1912 1913 Reviewed by Hyatt. 1914 1915 Fix for http://bugs.webkit.org/show_bug.cgi?id=8732 1916 Backgrounds with background-size and background-origin do not 1917 always lay out correctly 1918 1919 * platform/cairo/ImageCairo.cpp: 1920 (WebCore::Image::drawTiled): We no longer need to scale the source 1921 point since it will now come in with the scale already taken into 1922 account. 1923 * platform/mac/ImageMac.mm: 1924 (WebCore::Image::drawTiled): Same as above. 1925 * rendering/RenderBox.cpp: 1926 (WebCore::cacluateBackgroundSize): Now calculate the background 1927 size in a helper method. 1928 (WebCore::RenderBox::paintBackgroundExtended): Calculate the 1929 background size before calculating cx, cy, cw, ch, sx, and sy so 1930 that they can all be calculated with the scaled image size taken 1931 into account. 1932 1933 2006-05-04 David Hyatt <hyatt (a] apple.com> 1934 1935 Fix for 8693, crash when reloading PDF. Make sure to clear the truncator's 1936 cached renderer. 1937 1938 Reviewed by beth 1939 1940 * bridge/mac/WebCoreStringTruncator.h: 1941 * bridge/mac/WebCoreStringTruncator.mm: 1942 (+[WebCoreStringTruncator clear]): 1943 * platform/mac/WebTextRendererFactory.mm: 1944 (-[WebTextRendererFactory clearCaches]): 1945 1946 2006-05-03 Darin Adler <darin (a] apple.com> 1947 1948 Reviewed by Eric. 1949 1950 - http://bugs.webkit.org/show_bug.cgi?id=8696 1951 another round of GraphicsContext improvements 1952 1953 * WebCore.xcodeproj/project.pbxproj: Added GraphicsContextCG.cpp. 1954 * html/CanvasRenderingContext2D.cpp: 1955 (WebCore::CanvasRenderingContext2D::scale): Use new GraphicsContext function. 1956 (WebCore::CanvasRenderingContext2D::rotate): Ditto. 1957 (WebCore::CanvasRenderingContext2D::translate): Ditto. 1958 * kwq/KWQComboBox.mm: Added include (not sure if this is needed for this patch, 1959 but it's needed for one of my upcoming ones). 1960 1961 * platform/GraphicsContext.h: Changed fillColor and setFillColor to use Color 1962 instead of RGBA32. Removed setColorFromFillColor and setColorFromPen. Added 1963 scale, rotate, and translate functions. 1964 * platform/GraphicsContext.cpp: 1965 (WebCore::GraphicsContext::setFillColor): Changed to use Color instead of RGBA32. 1966 (WebCore::GraphicsContext::fillColor): Ditto. 1967 1968 * platform/GraphicsTypes.h: Moved HorizontalAlignment here. 1969 * platform/Widget.h: Removed HorizontalAlignment from here. 1970 1971 * platform/cg/GraphicsContextCG.cpp: Added. Started as a copy of GraphicsContextMac.mm. 1972 (WebCore::GraphicsContext::drawRect): Rewrote to not rely on [NSGraphicsContext currentContext]. 1973 (WebCore::GraphicsContext::drawLine): Ditto. 1974 (WebCore::GraphicsContext::drawEllipse): Ditto. 1975 (WebCore::GraphicsContext::drawArc): Ditto. 1976 (WebCore::GraphicsContext::drawConvexPolygon): Ditto. 1977 (WebCore::GraphicsContext::fillRect): Ditto. 1978 (WebCore::GraphicsContext::setLineWidth): Added check of paintingDisabled(). 1979 (WebCore::GraphicsContext::setMiterLimit): Ditto. 1980 (WebCore::GraphicsContext::setAlpha): Ditto. 1981 (WebCore::GraphicsContext::clearRect): Ditto. 1982 (WebCore::GraphicsContext::strokeRect): Ditto. 1983 (WebCore::GraphicsContext::setLineCap): Ditto. 1984 (WebCore::GraphicsContext::setLineJoin): Ditto. 1985 (WebCore::GraphicsContext::clip): Ditto. 1986 (WebCore::GraphicsContext::scale): Added. 1987 (WebCore::GraphicsContext::rotate): Added. 1988 (WebCore::GraphicsContext::translate): Added. 1989 1990 * platform/mac/GraphicsContextMac.mm: Moved most of this file into GraphicsContextCG.cpp. 1991 (WebCore::GraphicsContext::setCompositeOperation): Added check of paintingDisabled(). 1992 1993 * platform/mac/WebCoreSystemInterface.h: Added declarations so this header 1994 stands alone. 1995 1996 2006-05-03 Darin Adler <darin (a] apple.com> 1997 1998 Reviewed by Justin. 1999 2000 - fix http://bugs.webkit.org/show_bug.cgi?id=8159 2001 REGRESSION: Clicking outside new text field focuses the field 2002 2003 This bug has always been present for "content editable" HTML, but 2004 now affects <input type=text> as well. The problem is with the editing 2005 concept of a "deep equivalent". When computing the deep equivalent, 2006 the code can move from outside an editable area to inside. To fix this, 2007 I removed all use of the "deep equivalent" concept. 2008 2009 * rendering/RenderBlock.cpp: (WebCore::RenderBlock::positionForCoordinates): 2010 Changed argument names from _x and _y to just x and y. When the element 2011 is the editable root, changed things so that clicks that are not within 2012 the element at all return positions before or after the element, rather than 2013 always choosing the closest point within the element. This gets us off on 2014 the right foot, by not choosing a position inside an editable root when you 2015 click outside that editable root. This code handles shadowParentNode as well, 2016 and also calls positionForCoordinates on children rather than calling 2017 positionForRenderer (which I believe is now a function that can be removed). 2018 2019 * editing/VisiblePosition.h: Removed the deepEquivalent function. 2020 * editing/VisiblePosition.cpp: 2021 (WebCore::VisiblePosition::previousVisiblePosition): Removed use of the 2022 deepEquivalent function. Also, to make this function easier to understand 2023 I separated out the case where the start point is "in rendered content" 2024 and the case where it's not into two separate loops. 2025 (WebCore::VisiblePosition::nextVisiblePosition): Ditto. 2026 (WebCore::VisiblePosition::initDeepPosition): Removed use of the deepEquivalent 2027 function. Also added code to make sure that this work never turns a position 2028 outside an editable element into a position inside that editable element, or 2029 vice versa. Reorganized the code a bit. 2030 2031 * dom/Position.cpp: 2032 (WebCore::Position::upstream): Removed use of the deepEquivalent function. 2033 (WebCore::Position::downstream): Ditto. 2034 2035 * editing/htmlediting.cpp: 2036 (WebCore::editingIgnoresContent): Changed to use isReplaced instead of isWidget 2037 and isImage to determine if editing should ignore content. 2038 (WebCore::firstInSpecialElement): Rewrote isFirstVisiblePositionInSpecialElement 2039 to have code to share with positionBeforeContainingSpecialElement. And changed 2040 to allow both the position just before a table and the position just inside a 2041 table to qualify. While this is slightly sloppy, the old code worked because 2042 of the "deep equivalent" technique. This change is needed to get the desired 2043 results even without that technique. 2044 (WebCore::lastInSpecialElement): Ditto. 2045 (WebCore::isFirstVisiblePositionInSpecialElement): Changed to use the new function. 2046 (WebCore::positionBeforeContainingSpecialElement): Ditto. 2047 (WebCore::isLastVisiblePositionInSpecialElement): Ditto. 2048 (WebCore::positionAfterContainingSpecialElement): Ditto. 2049 2050 * dom/Node.cpp: (WebCore::Node::rootEditableElement): Rewrote to remove 2051 special case for body tag. 2052 2053 - other changes 2054 2055 * html/HTMLElement.cpp: 2056 (WebCore::HTMLElement::setOuterHTML): Added a FIXME about the fact 2057 that this won't merge neighboring text nodes the way setOuterText does. 2058 (WebCore::HTMLElement::setInnerText): Added a FIXME about the fact that 2059 this creates a text node even when setting to empty text. 2060 (WebCore::HTMLElement::setOuterText): Ditto. 2061 2062 * editing/DeleteSelectionCommand.cpp: Removed some #if 1 and #if 0. 2063 * editing/ReplaceSelectionCommand.cpp: A little reformatting. 2064 * rendering/render_button.h: Tiny formatting tweak. 2065 2066 2006-05-02 Adele Peterson <adele (a] apple.com> 2067 2068 Reviewed by Beth. 2069 2070 Fix for <rdar://problem/4523671> 2071 REGRESSION (NativeTextField): Auto-complete popup list doesn't appear at the correct location after scrolling page. 2072 2073 * bindings/objc/DOMHTML.mm: (-[DOMHTMLInputElement _rectOnScreen]): 2074 Use the documentView to compute the correct rect for the element when the view is scrolled. 2075 2076 2006-05-02 Justin Garcia <justin.garcia (a] apple.com> 2077 2078 Reviewed by harrison 2079 2080 <http://bugs.webkit.org/show_bug.cgi?id=8704> 2081 Fix a few end merge bugs 2082 <rdar://problem/4424044> 2083 REGRESSION: Extra line appears when typing 2084 2085 * bridge/mac/WebCoreFrameBridge.mm: 2086 (-[WebCoreFrameBridge smartInsertForString:replacingRange:beforeString:afterString:]): 2087 Use renamed characterAfter. 2088 * editing/InsertParagraphSeparatorCommand.cpp: 2089 (WebCore::InsertParagraphSeparatorCommand::doApply): 2090 Regenerate a VisiblePosition that became stale during a text node split. 2091 Don't rebalance whitespace after the operation, 1) it has a bug that turns preserved 2092 newlines into nbsps, 2) I think it should only be done during serialization, not after 2093 every command (since editable regions now always have -webkit-nbsp-mode:space on them). 2094 Use a regular br for the placeholder as I think we can move away from -webkit-block-placeholders. 2095 2096 * editing/RebalanceWhitespaceCommand.cpp: Added FIXMEs. 2097 * editing/ReplaceSelectionCommand.cpp: 2098 (WebCore::ReplaceSelectionCommand::shouldMergeStart): Removed FIXME. 2099 (WebCore::ReplaceSelectionCommand::shouldMergeEnd): Can now use rendering information. 2100 (WebCore::ReplaceSelectionCommand::doApply): 2101 Call shouldMergeEnd after the insertion so that it can use rendering information. 2102 Don't use positionAfterNode of the last node inserted to mark the position at the end 2103 of inserted content because canonicalization can send it into content that was already 2104 in the document. 2105 2106 * editing/ReplaceSelectionCommand.h: 2107 * editing/VisiblePosition.cpp: 2108 (WebCore::VisiblePosition::characterAfter): 2109 Renamed. When two candidates are visually equivalent, the rightmost candidate will be 2110 the one inside the text node where the character will be. 2111 2112 * editing/VisiblePosition.h: 2113 * editing/htmlediting.cpp: 2114 (WebCore::enclosingTableCell): Added. 2115 (WebCore::enclosingList): 2116 * editing/htmlediting.h: 2117 2118 2006-05-02 David Hyatt <hyatt (a] apple.com> 2119 2120 Partial fix for the crash in bugzilla bug 8088. There's a third crash 2121 even after fixing this though. 2122 2123 Reviewed by darin 2124 2125 * platform/mac/WebTextRenderer.mm: 2126 (WebCore::WidthMap::widths): 2127 (WebCore::extendWidthMap): 2128 * platform/mac/WebTextRendererFactory.mm: 2129 (-[WebTextRendererFactory clearCaches]): 2130 2131 2006-05-02 Steve Falkenburg <sfalken (a] apple.com> 2132 2133 Reviewed by eric. 2134 2135 * WebCore.vcproj/WebCore/WebCore.vcproj: defined NDEBUG in release build 2136 * bridge/win/FrameWin.cpp: 2137 (WebCore::FrameWin::FrameWin): turned on javascript. 2138 * kwq/KWQKHTMLSettings.h: 2139 (KHTMLSettings::KHTMLSettings): initialized settings to 0 2140 2141 2006-05-02 David Hyatt <hyatt (a] apple.com> 2142 2143 Make sure to updateLayout on all scrolling functions (in particular when 2144 setting scrollLeft/Top). 2145 2146 Reviewed by eric 2147 2148 fast/overflow/008,html added as a test case. 2149 2150 * dom/Element.cpp: 2151 (WebCore::Element::scrollIntoView): 2152 (WebCore::Element::scrollIntoViewIfNeeded): 2153 (WebCore::Element::setScrollLeft): 2154 (WebCore::Element::setScrollTop): 2155 2156 2006-05-02 Anders Carlsson <andersca (a] mac.com> 2157 2158 Reviewed by Dave Hyatt. 2159 2160 http://bugs.webkit.org/show_bug.cgi?id=8688 2161 file URLs aren't being serialized correctly when using window.location 2162 2163 * platform/KURL.cpp: 2164 (KURL::prettyURL): 2165 Append "//" for file URLs. 2166 2167 2006-05-01 David Hyatt <hyatt (a] apple.com> 2168 2169 Convert WebTextRenderer to be a C++ class. Change the factory so 2170 that it uses pointer-based hashmaps instead of NSMutableDictionaries. 2171 Convert uses of malloc/free to new/delete so that they start using 2172 the fastMalloc/fastFree code. 2173 2174 Reviewed by darin 2175 2176 * bridge/mac/WebCoreStringTruncator.mm: 2177 (stringWidth): 2178 (truncateString): 2179 * kwq/KWQComboBox.mm: 2180 (QComboBox::sizeHint): 2181 * kwq/KWQLineEdit.mm: 2182 (QLineEdit::sizeForCharacterWidth): 2183 * kwq/KWQListBox.mm: 2184 (itemTextRenderer): 2185 (groupLabelTextRenderer): 2186 (QListBox::sizeForNumberOfLines): 2187 (QListBox::clearCachedTextRenderers): 2188 (-[KWQTableView drawRow:clipRect:]): 2189 * platform/FontDataSet.h: 2190 * platform/mac/FontMac.mm: 2191 (WebCore::FontDataSet::~FontDataSet): 2192 (WebCore::FontDataSet::getRenderer): 2193 (WebCore::FontDataSet::invalidate): 2194 (WebCore::Font::ascent): 2195 (WebCore::Font::descent): 2196 (WebCore::Font::lineSpacing): 2197 (WebCore::Font::xHeight): 2198 (WebCore::Font::selectionRectForText): 2199 (WebCore::Font::drawText): 2200 (WebCore::Font::drawHighlightForText): 2201 (WebCore::Font::drawLineForText): 2202 (WebCore::Font::drawLineForMisspelling): 2203 (WebCore::Font::misspellingLineThickness): 2204 (WebCore::Font::floatWidth): 2205 (WebCore::Font::checkSelectionPoint): 2206 * platform/mac/WebCoreTextRenderer.mm: 2207 (WebCoreDrawTextAtPoint): 2208 (WebCoreTextFloatWidth): 2209 (WebCoreSetAlwaysUseATSU): 2210 * platform/mac/WebTextRenderer.h: 2211 (WebCore::WebTextRenderer::ascent): 2212 (WebCore::WebTextRenderer::descent): 2213 (WebCore::WebTextRenderer::lineSpacing): 2214 (WebCore::WebTextRenderer::lineGap): 2215 (WebCore::WebTextRenderer::misspellingLineThickness): 2216 (WebCore::WebTextRenderer::misspellingLinePatternWidth): 2217 (WebCore::WebTextRenderer::misspellingLinePatternGapWidth): 2218 * platform/mac/WebTextRenderer.mm: 2219 (WebCore::WebCoreInitializeFont): 2220 (WebCore::WebCoreInitializeTextRun): 2221 (WebCore::WebCoreInitializeEmptyTextStyle): 2222 (WebCore::WebCoreInitializeEmptyTextGeometry): 2223 (WebCore::widthForGlyph): 2224 (WebCore::overrideLayoutOperation): 2225 (WebCore::m_ATSUMirrors): 2226 (WebCore::WebTextRenderer::~WebTextRenderer): 2227 (WebCore::WebTextRenderer::xHeight): 2228 (WebCore::WebTextRenderer::drawRun): 2229 (WebCore::WebTextRenderer::floatWidthForRun): 2230 (WebCore::WebTextRenderer::drawLineForCharacters): 2231 (WebCore::WebTextRenderer::selectionRectForRun): 2232 (WebCore::WebTextRenderer::drawHighlightForRun): 2233 (WebCore::WebTextRenderer::drawLineForMisspelling): 2234 (WebCore::WebTextRenderer::pointToOffset): 2235 (WebCore::WebTextRenderer::setAlwaysUseATSU): 2236 (WebCore::getSmallCapsRenderer): 2237 (WebCore::findSubstituteFont): 2238 (WebCore::rendererForAlternateFont): 2239 (WebCore::computeWidthForSpace): 2240 (WebCore::setUpFont): 2241 (WebCore::CG_selectionRect): 2242 (WebCore::CG_draw): 2243 (WebCore::updateGlyphMapEntry): 2244 (WebCore::extendGlyphMap): 2245 (WebCore::extendWidthMap): 2246 (WebCore::initializeATSUStyle): 2247 (WebCore::createATSULayoutParameters): 2248 (WebCore::disposeATSULayoutParameters): 2249 (WebCore::addDirectionalOverride): 2250 (WebCore::ATSU_selectionRect): 2251 (WebCore::ATSU_draw): 2252 (WebCore::ATSU_pointToOffset): 2253 (WebCore::freeWidthMap): 2254 (WebCore::freeGlyphMap): 2255 (WebCore::glyphForCharacter): 2256 (WebCore::advanceWidthIterator): 2257 * platform/mac/WebTextRendererFactory.h: 2258 * platform/mac/WebTextRendererFactory.mm: 2259 (-[WebTextRendererFactory clearCaches]): 2260 (-[WebTextRendererFactory init]): 2261 (-[WebTextRendererFactory dealloc]): 2262 (-[WebTextRendererFactory rendererWithFont:]): 2263 2264 2006-05-01 Justin Garcia <justin.garcia (a] apple.com> 2265 2266 Reviewed by darin 2267 2268 <http://bugs.webkit.org/show_bug.cgi?id=8653> 2269 Remove a use of hasMoreThanOneBlock, which uses info from the test rendering. 2270 2271 * editing/DeleteSelectionCommand.cpp: 2272 (WebCore::DeleteSelectionCommand::initializePositionData): 2273 Removed code that stopped the merge if the end of the selection to delete 2274 was in a fully selected line, which was nonsense. 2275 2276 (WebCore::DeleteSelectionCommand::mergeParagraphs): 2277 Deletion does a bad job of updating the endpoints of the selection as it removes 2278 content. If the endpoints have been flip flipped, bail. 2279 If deletion has removed everything from the block that contained the 2280 start of the selection to delete, we can't create a visible position inside 2281 that block to serve as a destination for the merge. So, we insert a placeholder 2282 at that position to prop the block open to let content in. 2283 2284 * editing/ReplaceSelectionCommand.cpp: 2285 (WebCore::ReplaceSelectionCommand::doApply): 2286 Added an assert and two early returns for cases where we'll crash. 2287 Removed a use of !fragment.hasMoreThanOneBlock, which uses test rendering info 2288 and which was wrong. 2289 If we've already inserted content during the start merge, insertionPos will be 2290 the position just after that content, so inserting new content before insertionPos 2291 will reverse its order. 2292 2293 2006-05-01 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 2294 2295 Reviewed by Darin. 2296 2297 - manual test for http://bugs.webkit.org/show_bug.cgi?id=8658 2298 Assertion failure in -[WebPluginContainerCheck _isForbiddenFileLoad] 2299 (bridge is null) when clicking QuickTime object with href 2300 2301 * manual-tests/plugin-controller-datasource.html: Added. 2302 * manual-tests/resources/orange.mov: Added. 2303 2304 2006-04-30 Rob Buis <buis (a] kde.org> 2305 2306 Reviewed by eseidel. Landed by eseidel. 2307 2308 Fix for http://bugs.webkit.org/show_bug.cgi?id=8651: 2309 CGContextSetLineDash: invalid dash array: emmited during WebKit tests 2310 2311 Properly discard invalid stroke-dasharray properties like in 2312 invalid-css.svg. (Tests updated.) 2313 2314 * ksvg2/css/SVGCSSParser.cpp: 2315 (WebCore::CSSParser::parseSVGStrokeDasharray): 2316 2317 2006-04-28 David Hyatt <hyatt (a] apple.com> 2318 2319 Make image buffer sizes in the loader more accurate, since we know we store 2320 buffers with 4 bytes per pixel. Double sizes to account for this. Also 2321 deal better with animated GIFs that may have thousands of frames by adding 2322 in a heuristic that will use the data size instead of a single frame RGBA32 2323 buffer size if it's larger. 2324 2325 Reviewed by darin 2326 2327 * loader/Cache.cpp: 2328 * loader/CachedImage.cpp: 2329 (WebCore::CachedImage::data): 2330 2331 2006-04-28 Steve Falkenburg <sfalken (a] apple.com> 2332 2333 Reviewed by eric. 2334 2335 No test necessary - fixing Win32 build, turned off C++ exceptions, turned off RTTI 2336 2337 * WebCore.vcproj/WebCore/WebCore.vcproj: 2338 * bridge/win/FrameWin.cpp: 2339 (WebCore::FrameWin::~FrameWin): 2340 * bridge/win/PageWin.cpp: 2341 (WebCore::Page::Page): 2342 * page/Page.h: 2343 * platform/win/TemporaryLinkStubs.cpp: 2344 (FrameWin::saveDocumentState): 2345 (Path::contains): 2346 (Path::boundingRect): 2347 2348 2006-04-28 David Hyatt <hyatt (a] apple.com> 2349 2350 Merge WebCoreTextRenderer into WebTextRenderer. Merge WebCoreTextRendererFactory 2351 into WebTextRendererFactory. Change all callers to refer to the concrete classes 2352 now. Change WebCoreTextRenderer.h to be the public API that WebKit uses when 2353 it calls in to WebCore. Clean up the exports to remove things WebKit no longer 2354 needs. 2355 2356 Reviewed by darin 2357 2358 * WebCore.exp: 2359 * WebCore.xcodeproj/project.pbxproj: 2360 * bridge/mac/WebCoreStringTruncator.mm: 2361 (stringWidth): 2362 (truncateString): 2363 (+[WebCoreStringTruncator widthOfString:font:]): 2364 * kwq/KWQComboBox.mm: 2365 (QComboBox::sizeHint): 2366 * kwq/KWQLineEdit.mm: 2367 (QLineEdit::sizeForCharacterWidth): 2368 * kwq/KWQListBox.mm: 2369 (itemTextRenderer): 2370 (groupLabelTextRenderer): 2371 (QListBox::sizeForNumberOfLines): 2372 (-[KWQTableView drawRow:clipRect:]): 2373 * platform/Font.h: 2374 * platform/FontDataSet.h: 2375 * platform/mac/FontMac.mm: 2376 (WebCore::FontDataSet::getWebCoreFont): 2377 (WebCore::FontDataSet::getRenderer): 2378 (WebCore::FontDataSet::determinePitch): 2379 * platform/mac/WebCoreTextRenderer.h: 2380 * platform/mac/WebCoreTextRendererFactory.mm: 2381 (-[WebCoreTextRendererFactory init]): 2382 * platform/mac/WebTextRenderer.h: 2383 * platform/mac/WebTextRenderer.mm: 2384 * platform/mac/WebTextRendererFactory.h: 2385 * platform/mac/WebTextRendererFactory.mm: 2386 (WebCoreInitializeFont): 2387 (WebCoreInitializeTextRun): 2388 (WebCoreInitializeEmptyTextStyle): 2389 (WebCoreInitializeEmptyTextGeometry): 2390 (-[WebTextRendererFactory clearCaches]): 2391 (+[WebTextRendererFactory createSharedFactory]): 2392 (+[WebTextRendererFactory sharedFactory]): 2393 (-[WebTextRendererFactory init]): 2394 2395 2006-04-28 David Hyatt <hyatt (a] apple.com> 2396 2397 Fix for 8586, move WebTextRenderer into WebCore. 2398 2399 Reviewed by darin 2400 2401 * WebCore.exp: 2402 * WebCore.xcodeproj/project.pbxproj: 2403 * bridge/mac/WebCoreStringTruncator.mm: 2404 * platform/mac/WebCoreSystemInterface.h: 2405 * platform/mac/WebCoreSystemInterface.mm: 2406 * platform/mac/WebCoreTextRenderer.h: 2407 * platform/mac/WebCoreTextRendererFactory.mm: 2408 (+[WebCoreTextRendererFactory sharedFactory]): 2409 * platform/mac/WebTextRenderer.h: Added. 2410 * platform/mac/WebTextRenderer.mm: Added. 2411 (widthForGlyph): 2412 (-[WebTextRenderer initWithFont:]): 2413 (destroy): 2414 (-[WebTextRenderer drawLineForCharacters:yOffset:width:color:thickness:]): 2415 (-[WebTextRenderer drawLineForMisspelling:withWidth:]): 2416 (findSubstituteFont): 2417 (setUpFont): 2418 (pathFromFont): 2419 (drawGlyphs): 2420 (CG_draw): 2421 (extendGlyphMap): 2422 (extendWidthMap): 2423 (initializeATSUStyle): 2424 (createATSULayoutParameters): 2425 (getTextBounds): 2426 (addDirectionalOverride): 2427 (ATSU_draw): 2428 (normalizeVoicingMarks): 2429 (advanceWidthIterator): 2430 (fillStyleWithAttributes): 2431 * platform/mac/WebTextRendererFactory.h: Added. 2432 * platform/mac/WebTextRendererFactory.mm: Added. 2433 (getAppDefaultValue): 2434 (getUserDefaultValue): 2435 (getLCDScaleParameters): 2436 (fontsChanged): 2437 (+[WebTextRendererFactory createSharedFactory]): 2438 (-[WebTextRendererFactory isFontFixedPitch:]): 2439 (-[WebTextRendererFactory fontWithFamily:traits:size:]): 2440 (FontCacheKeyCopy): 2441 (-[WebTextRendererFactory cachedFontFromFamily:traits:size:]): 2442 2443 2006-04-28 Eric Seidel <eseidel (a] apple.com> 2444 2445 Fix by beth. Reviewed by darin. Landed by eseidel. 2446 2447 Make hackish fix to avoid crash in Xcode and Filemaker. 2448 <rdar://problem/4059059> Crash in RenderFlow::detach (XCode Documentation Window) 2449 2450 * bridge/mac/WebCoreFrameBridge.mm: 2451 (-[WebCoreFrameBridge didNotOpenURL:pageCache:]): 2452 2453 2006-04-28 Alexey Proskuryakov <ap (a] nypop.com> 2454 2455 Reviewed by hyatt. 2456 2457 - http://bugs.webkit.org/show_bug.cgi?id=5855 2458 REGRESSION: revert SGML comment parsing fix (comment parsing causes most of usbank.com page to be missing) 2459 2460 * html/HTMLTokenizer.cpp: 2461 (WebCore::HTMLTokenizer::parseComment): Revert one change made for acid2, 2462 <http://weblogs.mozillazine.org/hyatt/acid6.txt>. 2463 2464 2006-04-28 Darin Adler <darin (a] apple.com> 2465 2466 Reviewed by Eric. 2467 2468 - http://bugs.webkit.org/show_bug.cgi?id=8608 2469 make GraphicsContext more suitable for cross-platform use, step 2 2470 2471 - Changed GraphicsContext to use NSGraphicsContext as little as possible. 2472 - Removed the printing flag from GraphicsContext. 2473 - Changed GraphicsContext to assume the NSGraphicsContext is always flipped, 2474 and got rid of parameters to pass the flipped boolean around. 2475 2476 * WebCore.vcproj/WebCore/WebCore.vcproj: Add GraphicsTypes.h/cpp and remove 2477 CompositeOperator.h/cpp. 2478 * WebCore.xcodeproj/project.pbxproj: Ditto. 2479 2480 * bridge/mac/FrameMac.mm: (WebCore::FrameMac::setDisplaysWithFocusAttributes): 2481 * bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge drawRect:]): 2482 * html/CanvasPattern.cpp: (WebCore::patternCallback): 2483 * html/HTMLCanvasElement.cpp: (WebCore::HTMLCanvasElement::createDrawingContext): 2484 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm: 2485 (WebCore::KRenderingDeviceContextQuartz::createGraphicsContext): 2486 * platform/mac/WidgetMac.mm: (WebCore::Widget::lockDrawingFocus): 2487 Update for changes to GraphicsContext constructor (no flipped or printing boolean). 2488 2489 * html/CanvasRenderingContext2D.h: Added a Path to the context state. Changed the 2490 LineCap and LineJoin types to use the new ones in GraphicsTypes.h instead of defining 2491 types here in this class. Changed m_platformContextStrokeStyleIsPattern and 2492 m_platformContextFillStyleIsPattern to be named m_appliedStrokePattern and 2493 m_appliedFillPattern and moved them outside the __APPLE__ ifdefs. Removed the 2494 platformContext() function. Moved applyStrokePattern and applyFillPattern out of 2495 the __APPLE__ ifdef. 2496 2497 * html/CanvasRenderingContext2D.cpp: 2498 (WebCore::CanvasRenderingContext2D::State::State): Moved the stroke pattern 2499 booleans out of Mac-specific ifdef. 2500 (WebCore::CanvasRenderingContext2D::save): Changed to use GraphicsContext instead 2501 of using CGContext directly. 2502 (WebCore::CanvasRenderingContext2D::restore): Ditto. 2503 (WebCore::CanvasRenderingContext2D::setStrokeStyle): Ditto. 2504 (WebCore::CanvasRenderingContext2D::setFillStyle): Ditto. 2505 (WebCore::CanvasRenderingContext2D::setLineWidth): Ditto. 2506 (WebCore::CanvasRenderingContext2D::lineCap): Ditto. 2507 (WebCore::CanvasRenderingContext2D::setLineCap): Ditto. 2508 (WebCore::CanvasRenderingContext2D::lineJoin): Ditto. 2509 (WebCore::CanvasRenderingContext2D::setLineJoin): Ditto. 2510 (WebCore::CanvasRenderingContext2D::setMiterLimit): Ditto. 2511 (WebCore::CanvasRenderingContext2D::shadowColor): Ditto. 2512 (WebCore::CanvasRenderingContext2D::setGlobalAlpha): Ditto. 2513 (WebCore::CanvasRenderingContext2D::setGlobalCompositeOperation): Ditto. 2514 (WebCore::CanvasRenderingContext2D::scale): Update since platformContext() function 2515 no longer exists. 2516 (WebCore::CanvasRenderingContext2D::rotate): Ditto. 2517 (WebCore::CanvasRenderingContext2D::translate): Ditto. 2518 (WebCore::CanvasRenderingContext2D::beginPath): Changed to use GraphicsContext instead 2519 of using CGContext directly. 2520 (WebCore::CanvasRenderingContext2D::closePath): Ditto. 2521 (WebCore::CanvasRenderingContext2D::moveTo): Ditto. 2522 (WebCore::CanvasRenderingContext2D::lineTo): Ditto. 2523 (WebCore::CanvasRenderingContext2D::quadraticCurveTo): Ditto. 2524 (WebCore::CanvasRenderingContext2D::bezierCurveTo): Ditto. 2525 (WebCore::CanvasRenderingContext2D::arcTo): Ditto. 2526 (WebCore::CanvasRenderingContext2D::arc): Ditto. 2527 (WebCore::CanvasRenderingContext2D::rect): Ditto. 2528 (WebCore::CanvasRenderingContext2D::fill): Changed to use the current path from this class 2529 instead of relying on the CGContext's current path. 2530 (WebCore::CanvasRenderingContext2D::stroke): Ditto. 2531 (WebCore::CanvasRenderingContext2D::clip): Changed to use the current path and use the 2532 GraphicsContext instead of using CGContext directly. 2533 (WebCore::CanvasRenderingContext2D::clearRect): Changed to use GraphicsContext instead 2534 of using CGContext directly. 2535 (WebCore::CanvasRenderingContext2D::fillRect): Update since platformContext() function 2536 no longer exists. 2537 (WebCore::CanvasRenderingContext2D::strokeRect): Ditto. 2538 (WebCore::CanvasRenderingContext2D::setShadow): Ditto. 2539 (WebCore::CanvasRenderingContext2D::applyShadow): Ditto. 2540 (WebCore::CanvasRenderingContext2D::drawImage): Ditto. 2541 (WebCore::CanvasRenderingContext2D::drawImageFromRect): Ditto. 2542 (WebCore::CanvasRenderingContext2D::createPattern): Ditto. 2543 (WebCore::CanvasRenderingContext2D::applyStrokePattern): Made a tiny bit of this function 2544 cross-platform. The bulk is still Mac-specific. 2545 (WebCore::CanvasRenderingContext2D::applyFillPattern): Ditto. 2546 2547 * html/CanvasStyle.h: Changed to use GraphicsContext instead of CGContext. Now the 2548 platform-specific stuff is in the implementation, not the header. 2549 * html/CanvasStyle.cpp: 2550 (WebCore::CanvasStyle::applyStrokeColor): Moved the ifdefs inside the function, getting 2551 us one step closer to platform independence. 2552 (WebCore::CanvasStyle::applyFillColor): Ditto. 2553 2554 * html/html_imageimpl.cpp: 2555 (WebCore::HTMLAreaElement::getRect): Update for changes to the Path class. 2556 (WebCore::HTMLAreaElement::getRegion): Ditto. 2557 2558 * page/Frame.cpp: 2559 (WebCore::Frame::paint): Change to check printing flag on the document, rather than on 2560 the GraphicsContext, since there is no printing flag for GraphicsContext any more. 2561 (WebCore::Frame::adjustPageHeight): Update for change to GraphicsContext constructor. 2562 2563 * platform/GraphicsContext.h: Define a type called PlatformGraphicsContext so the 2564 platform-specific getter and constructor don't have to be ifdef'd. Added clearRect, 2565 strokeRect, setLineWidth, setLineCap, setLineJoin, setMiterLimit, setAlpha, setCompositeOperation, 2566 and clip functions. Removed the isForPrinting parameter from createGraphicsContextPrivate. 2567 * platform/GraphicsContext.cpp: 2568 (WebCore::GraphicsContextPrivate::GraphicsContextPrivate): Removed isForPrinting. 2569 (WebCore::GraphicsContext::createGraphicsContextPrivate): Ditto. 2570 * platform/mac/GraphicsContextMac.mm: 2571 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): 2572 Removed NSGraphicsContext. 2573 (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate): 2574 Ditto. 2575 (WebCore::GraphicsContext::GraphicsContext): Removed constructor that 2576 takes an NSGraphicsContext. Removed the flipText and forPrinting parameters 2577 to the other constructor. 2578 (WebCore::GraphicsContext::savePlatformState): Removed NSGraphicsContext code. 2579 (WebCore::GraphicsContext::restorePlatformState): Ditto. 2580 (WebCore::GraphicsContext::drawRect): Updated assertion to more-precisely 2581 reflect the limitation of the current version of this function. 2582 (WebCore::GraphicsContext::setColorFromFillColor): Ditto. 2583 (WebCore::GraphicsContext::setColorFromPen): Ditto. 2584 (WebCore::GraphicsContext::drawLine): Updated assertion to more-precisely 2585 reflect the limitation of the current version of this function. 2586 (WebCore::setCompositeOperation): 2587 (WebCore::GraphicsContext::fillRect): Ditto. 2588 (WebCore::GraphicsContext::setLineWidth): Added. 2589 (WebCore::GraphicsContext::setMiterLimit): Added. 2590 (WebCore::GraphicsContext::setAlpha): Added. 2591 (WebCore::GraphicsContext::setCompositeOperation): Added. 2592 (WebCore::GraphicsContext::clearRect): Added. 2593 (WebCore::GraphicsContext::strokeRect): Added. 2594 (WebCore::GraphicsContext::setLineCap): Added. 2595 (WebCore::GraphicsContext::setLineJoin): Added. 2596 (WebCore::GraphicsContext::clip): Added. 2597 2598 * platform/CompositeOperator.cpp: Removed. 2599 * platform/CompositeOperator.h: Removed. 2600 * platform/GraphicsTypes.cpp: Added. Includes CompositeOperator, LineCap, and LineJoin. 2601 * platform/GraphicsTypes.h: Added. 2602 2603 * platform/Image.h: Changed include to GraphicsTypes.h from CompositeOperator.h. 2604 2605 * platform/Path.h: Removed constructors that take a Rect and an array of points. Made 2606 the Path mutable. Changed the types for contains and boundingRect to be float-based 2607 instead of int-based. Changed translate to take a FloatSize instead of two integers. 2608 Added clear, moveTo, addLineTo, addQuadCurveTo, addBezierCurveTo, addArcTo, closeSubpath, 2609 addArc, addRect, addEllipse, and platformPath functions. Defined a PlatformPath type 2610 so we don't have to ifdef the header so much. 2611 * platform/cg/PathCG.cpp: 2612 (WebCore::Path::Path): Changed class to always have a mutable path. 2613 (WebCore::Path::operator=): Changed to make a mutable copy. 2614 (WebCore::Path::contains): Changed to take a FloatPoint instead of IntPoint. 2615 (WebCore::Path::translate): Changed to use a FloatSize instead of two ints. 2616 (WebCore::Path::boundingRect): Changed to return a FloatRect. 2617 (WebCore::Path::moveTo): Added. 2618 (WebCore::Path::addLineTo): Added. 2619 (WebCore::Path::addQuadCurveTo): Added. 2620 (WebCore::Path::addBezierCurveTo): Added. 2621 (WebCore::Path::addArcTo): Added. 2622 (WebCore::Path::closeSubpath): Added. 2623 (WebCore::Path::addArc): Added. 2624 (WebCore::Path::addRect): Added. 2625 (WebCore::Path::addEllipse): Added. 2626 (WebCore::Path::clear): Added. 2627 2628 * platform/mac/ImageMac.mm: 2629 (WebCore::fillSolidColorInRect): Changed to take a GraphicsContext instead of 2630 a CGContext. 2631 (WebCore::Image::checkForSolidColor): Changed to use the new setCompositeOperation 2632 in GraphicsContex. 2633 (WebCore::Image::draw): Changed to use the new PDF image and fillSolidColorInRect 2634 function that take GraphicsContext instead of CGContext. 2635 (WebCore::Image::drawTiled): Ditto. 2636 2637 * platform/mac/PDFDocumentImage.h: Made most functions private. Changed to 2638 use GraphicsContext and FloatRect instead of CGContext and NSRect. Also 2639 removed the unused alpha and flipped booleans. 2640 * platform/mac/PDFDocumentImage.mm: 2641 (WebCore::PDFDocumentImage::bounds): Update for change in types. 2642 (WebCore::PDFDocumentImage::adjustCTM): Ditto. 2643 (WebCore::PDFDocumentImage::setCurrentPage): Ditto. 2644 (WebCore::PDFDocumentImage::draw): Ditto. 2645 2646 * platform/win/TemporaryLinkStubs.cpp: Added lots of new stubs. 2647 2648 * rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::paint): Changed to get 2649 printing boolean from document instead graphics context. 2650 * rendering/RenderBlock.cpp: 2651 (WebCore::RenderBlock::paintChildren): Ditto. 2652 (WebCore::RenderBlock::paintObject): Ditto. 2653 * rendering/RenderFlow.cpp: (WebCore::RenderFlow::paintLines): Ditto. 2654 * rendering/RenderHTMLCanvas.cpp: (WebCore::RenderHTMLCanvas::paint): Ditto. 2655 * rendering/RenderImage.cpp: (WebCore::RenderImage::paint): Ditto. 2656 * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::paintButton): Ditto. 2657 * rendering/render_list.cpp: (WebCore::RenderListMarker::paint): Ditto. 2658 * rendering/render_replaced.cpp: (WebCore::RenderWidget::paint): Ditto. 2659 2660 2006-04-28 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 2661 2662 Reviewed by hyatt, landed by ap. 2663 2664 - fix http://bugs.webkit.org/show_bug.cgi?id=6769 2665 REGRESSION: Incomplete repaint when a cell's extra bottom margin grows 2666 2667 Test: fast/repaint/table-extra-bottom-grow.html 2668 2669 * rendering/RenderBlock.cpp: 2670 (WebCore::RenderBlock::overflowRect): Changed to not add the top/left overflow twice and 2671 allow the normal overflow height to overlap with the bottom extra height. 2672 * rendering/RenderTableRow.cpp: 2673 (WebCore::RenderTableRow::layout): Removed the code that resets the extra heights. 2674 * rendering/RenderTableSection.cpp: 2675 (WebCore::RenderTableSection::layoutRows): If the top extra height changed or the 2676 bottom extra height increased, just repaint the entire cell. 2677 2678 2006-04-28 Eric Seidel <eseidel (a] apple.com> 2679 2680 Reviewed by andersca. 2681 2682 Remove KCanvasContainerQuartz, pushing all logic into KCanvasContainer. 2683 2684 No tests affected. 2685 2686 * kcanvas/KCanvasContainer.cpp: 2687 (WebCore::KCanvasContainer::canHaveChildren): 2688 (WebCore::KCanvasContainer::requiresLayer): 2689 (WebCore::KCanvasContainer::lineHeight): 2690 (WebCore::KCanvasContainer::baselinePosition): 2691 (WebCore::KCanvasContainer::calcMinMaxWidth): 2692 (WebCore::KCanvasContainer::layout): 2693 (WebCore::KCanvasContainer::paint): 2694 (WebCore::KCanvasContainer::setViewport): 2695 (WebCore::KCanvasContainer::viewport): 2696 (WebCore::KCanvasContainer::setViewBox): 2697 (WebCore::KCanvasContainer::viewBox): 2698 (WebCore::KCanvasContainer::setAlign): 2699 (WebCore::KCanvasContainer::align): 2700 (WebCore::KCanvasContainer::viewportTransform): 2701 (WebCore::KCanvasContainer::getAbsoluteRepaintRect): 2702 (WebCore::KCanvasContainer::absoluteTransform): 2703 (WebCore::KCanvasContainer::getAspectRatio): 2704 * kcanvas/KCanvasContainer.h: 2705 (WebCore::KCanvasContainer::renderName): 2706 * kcanvas/device/KRenderingDevice.h: 2707 * kcanvas/device/quartz/KCanvasResourcesQuartz.h: 2708 * kcanvas/device/quartz/KCanvasResourcesQuartz.mm: 2709 * kcanvas/device/quartz/KRenderingDeviceQuartz.h: 2710 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm: 2711 (WebCore::KRenderingDeviceQuartz::createPaintServer): 2712 * ksvg2/svg/SVGAElement.cpp: 2713 (WebCore::SVGAElement::createRenderer): 2714 * ksvg2/svg/SVGGElement.cpp: 2715 (SVGGElement::createRenderer): 2716 * ksvg2/svg/SVGMarkerElement.cpp: 2717 (WebCore::SVGMarkerElement::createRenderer): 2718 * ksvg2/svg/SVGMaskElement.cpp: 2719 (WebCore::SVGMaskElement::createRenderer): 2720 * ksvg2/svg/SVGPatternElement.cpp: 2721 (WebCore::SVGPatternElement::createRenderer): 2722 * ksvg2/svg/SVGSVGElement.cpp: 2723 (WebCore::SVGSVGElement::createRenderer): 2724 * ksvg2/svg/SVGSwitchElement.cpp: 2725 (WebCore::SVGSwitchElement::createRenderer): 2726 * ksvg2/svg/SVGUseElement.cpp: 2727 (SVGUseElement::createRenderer): 2728 2729 2006-04-27 Eric Seidel <eseidel (a] apple.com> 2730 2731 Reviewed by andersca. 2732 2733 Make WebCore accept any */*+xml type as XML. 2734 http://bugs.webkit.org/show_bug.cgi?id=5998 2735 <rdar://problem/4031511> XmlHttpRequest doesn't allow responses with Content-Type: application/soap+xml 2736 2737 Test: http/tests/xmlhttprequest/supported-xml-content-types.html 2738 2739 * dom/DOMImplementation.cpp: 2740 (WebCore::DOMImplementation::isXMLMIMEType): 2741 2742 2006-04-27 Eric Seidel <eseidel (a] apple.com> 2743 2744 * WebCore.vcproj/WebCore/WebCore.vcproj: Fix break from last checkin. 2745 2746 2006-04-27 Geoffrey Garen <ggaren (a] apple.com> 2747 2748 Reviewed by Maciej. 2749 2750 - Added global constructor autogeneration for the following, 2751 many of which are required by *.live.com: Node, Element, Range, 2752 CSSRule, CSSValue, CSSPrimitiveValue, CSSStyleDeclaration, Event, 2753 MutationEvent, NodeFilter 2754 2755 It works like so: 2756 2757 - The autogenerator knows about the "Constructor" data type, which 2758 gets special treatment because it exists purely in the 2759 bindings. It also knows about the "GenerateConstructor" interface 2760 attribute, which does just that. 2761 2762 - The window interface has many Constructor attributes 2763 2764 - The hash table generator swizzles empty tables to tables with one 2765 empty bucket, to prevent crashes in Lookup::findEntry. (The old 2766 generator used to work this way, too.) 2767 2768 - Window object property lookup gets special treatment to allow 2769 shadowing of its built-in global constructor properties. We'll 2770 need to expand this mechanism in the future and make it more 2771 flexible, but it works for now. 2772 2773 * DerivedSources.make: 2774 * WebCore.vcproj/WebCore/WebCore.vcproj: 2775 * WebCore.xcodeproj/project.pbxproj: 2776 * bindings/js/kjs_css.cpp: 2777 (KJS::toJS): 2778 * bindings/js/kjs_css.h: 2779 * bindings/js/kjs_window.cpp: Removed 'namedFrameGetter' and its use 2780 because they were bogus; added FIXME describing what they were 2781 attempting to do. 2782 (KJS::Window::getValueProperty): 2783 (KJS::Window::getOverridePropertySlot): 2784 (KJS::Window::getOwnPropertySlot): 2785 * bindings/js/kjs_window.h: 2786 (KJS::Window::): 2787 * bindings/scripts/CodeGeneratorJS.pm: 2788 * css/CSSPrimitiveValue.idl: 2789 * css/CSSRule.idl: 2790 * css/CSSStyleDeclaration.idl: Added. 2791 * css/CSSValue.idl: 2792 * dom/Document.idl: 2793 * dom/Element.idl: 2794 * dom/Event.idl: 2795 * dom/MutationEvent.idl: 2796 * dom/Node.idl: 2797 * dom/NodeFilter.idl: 2798 * dom/Range.idl: 2799 * page/DOMWindow.idl: 2800 2801 2006-04-27 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 2802 2803 Reviewed by darin 2804 2805 <http://bugs.webkit.org/show_bug.cgi?id=8607> 2806 Automate repaint tests 2807 2808 * manual-tests/backgroundSizeRepaint.html: Removed. 2809 * manual-tests/border-repaint-glitch.html: Removed. 2810 * manual-tests/bugzilla-3509.html: Removed. 2811 * manual-tests/bugzilla-5699.html: Removed. 2812 * manual-tests/bugzilla-6278.html: Removed. 2813 * manual-tests/bugzilla-6388.html: Removed. 2814 * manual-tests/bugzilla-6473.html: Removed. 2815 * manual-tests/bugzilla-7235.html: Removed. 2816 * manual-tests/inline-outline-repaint.html: Removed. 2817 * manual-tests/outline-repaint-glitch.html: Removed. 2818 * manual-tests/repaint-resized-overflow.html: Removed. 2819 * manual-tests/table-cell-move.html: Removed. 2820 2821 2006-04-27 Justin Garcia <justin.garcia (a] apple.com> 2822 2823 Reviewed by darin 2824 2825 <http://bugs.webkit.org/show_bug.cgi?id=8624> 2826 Placeholders aren't always removed during paste 2827 <rdar://problem/4059807> 2828 Seed: Mail: pasting quoted content sometimes adds a phantom newline 2829 2830 * editing/CompositeEditCommand.cpp: Added a FIXME. 2831 * editing/ReplaceSelectionCommand.cpp: 2832 (WebCore::ReplaceSelectionCommand::doApply): 2833 Removed two no-op setEndingSelection calls. 2834 Store away a br at the position where we'll start inserting content in case the 2835 br a) is made unnecessary by the insertion (it's collapsed away) b) was acting 2836 as a placeholder and should therefore be displaced by inserted content or c) was 2837 acting as a line break and, as a result of the insertion, is now acting as a 2838 placeholder. 2839 Don't only store away brs that have the webkit-block-placeholder class on them. 2840 Any br that does any of the three things just mentioned should be removed. 2841 The linePlaceholder removal was run after the code that makes sure to interpret 2842 incoming brs strictly, and was negating that work in certain cases. 2843 2844 (WebCore::ReplaceSelectionCommand::removeEndBRIfNeeded): Described above. 2845 * editing/ReplaceSelectionCommand.h: 2846 * editing/VisiblePosition.cpp: 2847 (WebCore::isEqualIgnoringAffinity): 2848 Added a workaround for 8622. We want this function to return true even if one of 2849 the two visible positions has been incorrectly canonicalized. 2850 2851 2006-04-26 Tim Omernick <timo (a] apple.com> 2852 2853 Reviewed by Hyatt. 2854 2855 <rdar://problem/4068375> Flash inserted via innerHTML Fails to Show when CSS Display 2856 Style is Toggled via Javascript 2857 2858 * html/html_objectimpl.cpp: 2859 (WebCore::HTMLObjectElement::setComplete): 2860 Set needWidgetUpdate when finished parsing, even if the object element is not in 2861 a document. That way, when the element attaches to a document, it will update its 2862 widget (creating the plug-in view if necessary). This is important when the object 2863 is being inserted via setInnerHTML, since the parsed nodes are not added to the 2864 document until the whole HTML string is parsed. 2865 2866 2006-04-26 Geoffrey Garen <ggaren (a] apple.com> 2867 2868 Reviewed by Hyatt. 2869 2870 - Fixed http://bugs.webkit.org/post_bug.cgi 2871 REGRESSION (r14048): Google calendar not parsing 2872 2873 * html/HTMLParser.cpp: 2874 (WebCore::HTMLParser::handleError): Rolling out grandparent NULL check 2875 because it caused this regression and there's no test case 2876 justifying it. 2877 2878 2006-04-26 Justin Garcia <justin.garcia (a] apple.com> 2879 2880 Reviewed by hyatt 2881 2882 <http://bugs.webkit.org/show_bug.cgi?id=8459> 2883 REGRESSION: Content lost during a delete/merge of whitespace:pre text 2884 2885 * editing/CompositeEditCommand.cpp: 2886 (WebCore::CompositeEditCommand::prune): 2887 The function would prune a rendered leaf because it assumed that the 2888 first node passed to it would be a container. 2889 The old code ascended using the DOM tree, and would remove the <b> when 2890 pruning the <div> in <b><div></div>foo</b>. Now ascends using the render tree. 2891 2892 2006-04-26 Geoffrey Garen <ggaren (a] apple.com> 2893 2894 This time for sure. Fixed Windows build too. 2895 2896 * WebCore.vcproj/WebCore/WebCore.vcproj: 2897 * WebCore.xcodeproj/project.pbxproj: 2898 2899 2006-04-26 Geoffrey Garen <ggaren (a] apple.com> 2900 2901 Reviewed by TimO. 2902 2903 Build fix. 2904 2905 * bindings/js/kjs_dom.cpp: 2906 * bindings/js/kjs_domnode.h: 2907 2908 2006-04-26 Geoffrey Garen <ggaren (a] apple.com> 2909 2910 Reviewed by OMG DETHBAKIN. 2911 2912 - Start autogenerating Node. This fixes many missing attributes in our 2913 DOM by making prototypes hold their relevant constants as properties. 2914 2915 * DerivedSources.make: 2916 * WebCore.xcodeproj/project.pbxproj: 2917 * bindings/js/kjs_dom.cpp: 2918 (KJS::DOMEventTargetNode::DOMEventTargetNode): 2919 (KJS::toJS): 2920 * bindings/js/kjs_dom.h: 2921 (KJS::DOMEventTargetNode::): 2922 * bindings/js/kjs_domnode.h: Had to break DOMNode into a separate 2923 header to avoid circular dependency in header includes. Gave it an 2924 old-school file name to keep distinguishing beteween old school and 2925 news school files easy. 2926 (KJS::DOMNode::impl): 2927 (KJS::DOMNode::classInfo): 2928 (KJS::DOMNode::): 2929 * bindings/js/kjs_window.cpp: 2930 (KJS::Window::getValueProperty): 2931 * bindings/scripts/CodeGeneratorJS.pm: 2932 * dom/DocumentType.idl: 2933 * dom/Entity.idl: 2934 * dom/Node.idl: Added. 2935 * dom/Notation.idl: 2936 * dom/ProcessingInstruction.idl: 2937 2938 2006-04-26 Geoffrey Garen <ggaren (a] apple.com> 2939 2940 Reviewed by Darin. 2941 2942 Committing the project file change jhaygood suggesed in 2943 http://bugs.webkit.org/show_bug.cgi?id=8044 2944 WebKit Visual Studio 2005 project shouldn't use the SolutionDir 2945 2946 Instead of his patch, I used the following commands: 2947 2948 sed -e 's/$(SolutionDir)/$(ProjectDir)\\../g' Image\ Viewer/Image\ 2949 Viewer.vcproj > Image\ Viewer/Image\ Viewer.vcproj_ && mv Image\ 2950 Viewer/Image\ Viewer.vcproj_ Image\ Viewer/Image\ Viewer.vcproj 2951 2952 sed -e 's/$(SolutionDir)/$(ProjectDir)\\../g' 2953 WebCore/WebCore.vcproj > WebCore/WebCore.vcproj_ && mv 2954 WebCore/WebCore.vcproj_ WebCore/WebCore.vcproj 2955 2956 * Viewer.vcproj: 2957 * WebCore.vcproj/WebCore/WebCore.vcproj: 2958 2959 2006-04-25 Justin Garcia <justin.garcia (a] apple.com> 2960 2961 Reviewed by harrison 2962 2963 <http://bugs.webkit.org/show_bug.cgi?id=8583> 2964 Moving paste code around and some small fixes 2965 2966 Moved code to make it easier to do the start merge after the fact, 2967 with moveParagraph, instead of in the middle of the paste operation. 2968 2969 * editing/CompositeEditCommand.cpp: 2970 (WebCore::CompositeEditCommand::moveParagraph): 2971 * editing/ReplaceSelectionCommand.cpp: 2972 (WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand): 2973 (WebCore::ReplaceSelectionCommand::shouldMergeStart): 2974 Moved code to make this decision to its own function. Moved special case 2975 checks to the top. Added m_forceMergeStart to override the special cases 2976 because moveParagraph uses ReplaceSelectionCommand and expects a merge. 2977 2978 (WebCore::ReplaceSelectionCommand::shouldMergeEnd): 2979 No functional changes, just moved code here. 2980 (WebCore::ReplaceSelectionCommand::doApply): 2981 Do the end merge in the opposite direction. Merging two paragraphs destroys 2982 the moved one's block level styles, and we prefer to use the styles of the 2983 one that was in the document, not the one that's being pasted. 2984 2985 * editing/ReplaceSelectionCommand.h: 2986 * editing/Selection.h: 2987 (WebCore::Selection::visibleStart): Added. 2988 (WebCore::Selection::visibleEnd): Added. 2989 * editing/htmlediting.cpp: 2990 (WebCore::enclosingList): Added. 2991 (WebCore::isMailBlockquote): 2992 Don't require a renderer so that this can be used on nodes in fragments. 2993 2994 * editing/htmlediting.h: 2995 2996 2006-04-25 Geoffrey Garen <ggaren (a] apple.com> 2997 2998 Reviewed by Maciej. 2999 3000 - Removed special handling of attributes in the DOM. To match 3001 WinIE, we used to make all attributes available as properties of 3002 their elements in the DOM, but that has caused us more 3003 compatibility woes than it has solved, so, after talking with Darin 3004 and Maciej, I'm taking it out. (Firefox does not support it.) 3005 3006 A layout test regression caused by this change led me to do the 3007 following as well: 3008 3009 - Implemented DOM properties missing on EMBED elements: align, height, 3010 name, width, src, type. Since align, height, name, and width are 3011 common to all plugin elements, I factored them and some other common 3012 functionality out into a new abstract base class, HTMLPlugInElement. 3013 3014 - Removed extraneous attribute-to-style mappings on EMBED elements: 3015 valign, border. Why they were there in the first place is a question 3016 for the ages. Neither FF nor IE supports them. 3017 3018 * bindings/js/kjs_dom.cpp: 3019 (KJS::getRuntimeObject): 3020 * bindings/js/kjs_html.cpp: 3021 (KJS::): 3022 (KJS::JSHTMLElement::classInfo): 3023 (KJS::JSHTMLElement::accessors): 3024 (KJS::JSHTMLElement::embedGetter): 3025 (KJS::JSHTMLElement::embedSetter): 3026 * bindings/js/kjs_html.h: 3027 (KJS::JSHTMLElement::): 3028 * bindings/scripts/CodeGeneratorJS.pm: 3029 * dom/Element.idl: 3030 * html/html_objectimpl.cpp: 3031 (WebCore::HTMLPlugInElement::HTMLPlugInElement): 3032 (WebCore::HTMLPlugInElement::align): 3033 (WebCore::HTMLPlugInElement::setAlign): 3034 (WebCore::HTMLPlugInElement::height): 3035 (WebCore::HTMLPlugInElement::setHeight): 3036 (WebCore::HTMLPlugInElement::name): 3037 (WebCore::HTMLPlugInElement::setName): 3038 (WebCore::HTMLPlugInElement::width): 3039 (WebCore::HTMLPlugInElement::setWidth): 3040 (WebCore::HTMLPlugInElement::mapToEntry): 3041 (WebCore::HTMLPlugInElement::parseMappedAttribute): 3042 (WebCore::HTMLPlugInElement::checkDTD): 3043 (WebCore::HTMLAppletElement::HTMLAppletElement): 3044 (WebCore::HTMLAppletElement::~HTMLAppletElement): 3045 (WebCore::HTMLAppletElement::parseMappedAttribute): 3046 (WebCore::HTMLAppletElement::insertedIntoDocument): 3047 (WebCore::HTMLAppletElement::removedFromDocument): 3048 (WebCore::HTMLAppletElement::getInstance): 3049 (WebCore::HTMLAppletElement::closeRenderer): 3050 (WebCore::HTMLAppletElement::detach): 3051 (WebCore::HTMLEmbedElement::HTMLEmbedElement): 3052 (WebCore::HTMLEmbedElement::~HTMLEmbedElement): 3053 (WebCore::HTMLEmbedElement::getInstance): 3054 (WebCore::HTMLEmbedElement::mapToEntry): 3055 (WebCore::HTMLEmbedElement::parseMappedAttribute): 3056 (WebCore::HTMLEmbedElement::attach): 3057 (WebCore::HTMLEmbedElement::detach): 3058 (WebCore::HTMLEmbedElement::insertedIntoDocument): 3059 (WebCore::HTMLEmbedElement::removedFromDocument): 3060 (WebCore::HTMLEmbedElement::src): 3061 (WebCore::HTMLEmbedElement::setSrc): 3062 (WebCore::HTMLEmbedElement::type): 3063 (WebCore::HTMLEmbedElement::setType): 3064 (WebCore::HTMLObjectElement::HTMLObjectElement): 3065 (WebCore::HTMLObjectElement::~HTMLObjectElement): 3066 (WebCore::HTMLObjectElement::getInstance): 3067 (WebCore::HTMLObjectElement::parseMappedAttribute): 3068 (WebCore::HTMLObjectElement::rendererIsNeeded): 3069 (WebCore::HTMLObjectElement::attach): 3070 (WebCore::HTMLObjectElement::closeRenderer): 3071 (WebCore::HTMLObjectElement::detach): 3072 (WebCore::HTMLObjectElement::insertedIntoDocument): 3073 (WebCore::HTMLObjectElement::removedFromDocument): 3074 (WebCore::HTMLObjectElement::recalcStyle): 3075 * html/html_objectimpl.h: 3076 (WebCore::HTMLPlugInElement::endTagRequirement): 3077 (WebCore::HTMLAppletElement::tagPriority): 3078 (WebCore::HTMLEmbedElement::tagPriority): 3079 (WebCore::HTMLObjectElement::tagPriority): 3080 3081 2006-04-25 Beth Dakin <bdakin (a] apple.com> 3082 3083 Reviewed by Maciej. 3084 3085 Fix for <rdar://problem/4518632> getComputedStyle returns 'auto' 3086 for dimensions like 'margin-left' 3087 3088 * css/CSSComputedStyleDeclaration.cpp: 3089 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): For 3090 margin and padding, to match Firefox we now go to the renderer to 3091 get the property value instead of calling valueForLength() on the 3092 style attribute. valueForLength() will return the string 'auto' if 3093 that was what was specified in the CSS, or a percentage if it was 3094 specified as a percent. But to match Firefox, we always want to 3095 return a pixel value for margin and padding. 3096 3097 2006-04-26 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 3098 3099 Reviewed by darin. Landed by eseidel. 3100 3101 - fix http://bugs.webkit.org/show_bug.cgi?id=8452 3102 mangleme(0x58c22e11): Random crashes 3103 3104 Test: fast/frames/empty-cols-attribute.html 3105 3106 * platform/StringImpl.cpp: 3107 (WebCore::StringImpl::toLengthArray): If the string is empty, return 0 3108 but set len to 1. This gives the same behavior you get if you don't specify 3109 the attribute at all, matching WinIE and Firefox. Previously, the empty 3110 string resulted in len being set to 0 (and a memory smasher in 3111 RenderFrameSet::layout()). 3112 * rendering/render_frames.cpp: 3113 (WebCore::RenderFrameSet::layout): Added an assert. 3114 3115 2006-04-26 Oliver Hunt <ojh16 (a] student.canterbury.ac.nz> 3116 3117 Reviewed by eseidel. Landed by eseidel. 3118 3119 * WebCore.xcodeproj/project.pbxproj: 3120 * kcanvas/KCanvasFilters.cpp: 3121 (WebCore::operator<<): 3122 * kcanvas/KCanvasFilters.h: 3123 (WebCore::KCComponentTransferFunction::KCComponentTransferFunction): 3124 * kcanvas/device/quartz/KCanvasFilterQuartz.h: 3125 * kcanvas/device/quartz/KCanvasFilterQuartz.mm: 3126 (WebCore::getVectorForChannel): 3127 (WebCore::genImageFromTable): 3128 (WebCore::filterForComponentFunc): 3129 (WebCore::setParametersForComponentFunc): 3130 (WebCore::getFilterForFunc): 3131 (WebCore::KCanvasFEComponentTransferQuartz::getFunctionFilter): 3132 (WebCore::KCanvasFEComponentTransferQuartz::getCIFilter): 3133 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm: 3134 (WebCore::KRenderingDeviceQuartz::createFilterEffect): 3135 * kcanvas/device/quartz/filters/WKComponentMergeFilter.cikernel: Added. 3136 * kcanvas/device/quartz/filters/WKComponentMergeFilter.h: Added. 3137 * kcanvas/device/quartz/filters/WKComponentMergeFilter.m: Added. 3138 (+[WKComponentMergeFilter initialize]): 3139 (+[WKComponentMergeFilter filterWithName:]): 3140 (-[WKComponentMergeFilter init]): 3141 (-[WKComponentMergeFilter outputImage]): 3142 * kcanvas/device/quartz/filters/WKDiscreteTransferFilter.cikernel: Added. 3143 * kcanvas/device/quartz/filters/WKDiscreteTransferFilter.h: Added. 3144 * kcanvas/device/quartz/filters/WKDiscreteTransferFilter.m: Added. 3145 (+[WKDiscreteTransferFilter initialize]): 3146 (+[WKDiscreteTransferFilter filterWithName:]): 3147 (-[WKDiscreteTransferFilter init]): 3148 (-[WKDiscreteTransferFilter outputImage]): 3149 * kcanvas/device/quartz/filters/WKGammaTransferFilter.cikernel: Added. 3150 * kcanvas/device/quartz/filters/WKGammaTransferFilter.h: Added. 3151 * kcanvas/device/quartz/filters/WKGammaTransferFilter.m: Added. 3152 (+[WKGammaTransferFilter initialize]): 3153 (+[WKGammaTransferFilter filterWithName:]): 3154 (-[WKGammaTransferFilter init]): 3155 (-[WKGammaTransferFilter outputImage]): 3156 * kcanvas/device/quartz/filters/WKIdentityTransferFilter.h: Added. 3157 * kcanvas/device/quartz/filters/WKIdentityTransferFilter.m: Added. 3158 (+[WKIdentityTransferFilter initialize]): 3159 (+[WKIdentityTransferFilter filterWithName:]): 3160 (-[WKIdentityTransferFilter init]): 3161 (-[WKIdentityTransferFilter outputImage]): 3162 * kcanvas/device/quartz/filters/WKLinearTransferFilter.cikernel: Added. 3163 * kcanvas/device/quartz/filters/WKLinearTransferFilter.h: Added. 3164 * kcanvas/device/quartz/filters/WKLinearTransferFilter.m: Added. 3165 (+[WKLinearTransferFilter initialize]): 3166 (+[WKLinearTransferFilter filterWithName:]): 3167 (-[WKLinearTransferFilter init]): 3168 (-[WKLinearTransferFilter outputImage]): 3169 * kcanvas/device/quartz/filters/WKTableTransferFilter.cikernel: Added. 3170 * kcanvas/device/quartz/filters/WKTableTransferFilter.h: Added. 3171 * kcanvas/device/quartz/filters/WKTableTransferFilter.m: Added. 3172 (+[WKTableTransferFilter initialize]): 3173 (+[WKTableTransferFilter filterWithName:]): 3174 (-[WKTableTransferFilter init]): 3175 (-[WKTableTransferFilter outputImage]): 3176 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp: 3177 (SVGComponentTransferFunctionElement::parseMappedAttribute): 3178 (SVGComponentTransferFunctionElement::transferFunction): 3179 3180 2006-04-25 Eric Seidel <eseidel (a] apple.com> 3181 3182 Reviewed by ggaren. 3183 3184 Make trunk match the branch. Now nodes are fully removed 3185 from the tree before calling detach. There is (thankfully) no 3186 good way to test this, as no one should depend on this behavior. 3187 This change was made are part of fixing: 3188 <rdar://problem/4427024> repro crash on www.formassembly.com in khtml::RenderBlock::addChildToFlow 3189 <rdar://problem/4233435> CrashTracer: 2698 crashes in Safari at com.apple.WebCore: khtml::RenderBlock::addChildToFlow + 156 3190 on the branch. 3191 3192 * dom/ContainerNode.cpp: 3193 (WebCore::ContainerNode::removeChildren): 3194 3195 2006-04-25 Maciej Stachowiak <mjs (a] apple.com> 3196 3197 Reviewed by Adele. 3198 3199 - don't have a fini method, since trying to call it will actually call the subclass method 3200 and mess up the bridge count. 3201 3202 * bridge/mac/WebCoreFrameBridge.mm: 3203 (-[WebCoreFrameBridge dealloc]): 3204 (-[WebCoreFrameBridge finalize]): 3205 3206 2006-04-25 Steve Falkenburg <sfalkenburg (a] apple.com> 3207 3208 Reviewed by eseidel. 3209 3210 No test case needed 3211 3212 * platform/win/TemporaryLinkStubs.cpp: 3213 (KWQFileButton::setFrameGeometry): 3214 3215 2006-04-25 Eric Seidel <eseidel (a] apple.com> 3216 3217 Reviewed by mjs. 3218 3219 Fix reproducible crash in html parser code. 3220 http://bugs.webkit.org/show_bug.cgi?id=7137 3221 3222 Test: fast/parser/remove-current-node-parent.html 3223 3224 * html/HTMLParser.cpp: 3225 (WebCore::HTMLParser::handleError): 3226 3227 2006-04-25 Maciej Stachowiak <mjs (a] apple.com> 3228 3229 Reviewed by Eric. 3230 3231 - fixed http://bugs.webkit.org/show_bug.cgi?id=8575 3232 New KWQFileButton leaks reported by buildbot 3233 3234 * kwq/KWQFileButton.mm: 3235 (KWQFileButton::KWQFileButton): Add a missing release 3236 3237 2006-04-24 David Hyatt <hyatt (a] apple.com> 3238 3239 Fix for 8336, focus ring redrawing on top of itself. Make sure 3240 not to include empty rects when doing the focus ring drawing, since 3241 that results in a draw with no clip set. 3242 3243 Reviewed by adele 3244 3245 * platform/mac/GraphicsContextMac.mm: 3246 (WebCore::GraphicsContext::drawFocusRing): 3247 3248 2006-04-24 Eric Seidel <eseidel (a] apple.com> 3249 3250 Reviewed by ggaren. 3251 3252 Fix for 5th worst unresolved crasher: 3253 <rdar://problem/4129744> [REGRESSION]CrashTracer: ..400 crashes at com.apple.WebCore: DOM::NodeImpl::createRendererIfNeeded + 44 3254 3255 Test: fast/dom/remove-style-element.html 3256 3257 * dom/ContainerNode.cpp: 3258 (WebCore::ContainerNode::removeChildren): 3259 3260 2006-04-24 Eric Seidel <eseidel (a] apple.com> 3261 3262 Reviewed by mjs. 3263 3264 Speculative fix for our 7th worst crasher. 3265 Also added ASSERTs to help us better understand the issue. 3266 <rdar://problem/4153404> CrashTracer: 2412 crashes in Safari at com.apple.WebCore: khtml::RenderStyle::RenderStyle[unified] + 44 3267 3268 * dom/Document.cpp: 3269 (WebCore::Document::recalcStyle): 3270 (WebCore::Document::setInPageCache): 3271 * dom/Document.h: 3272 * dom/Element.cpp: 3273 (WebCore::Element::recalcStyle): 3274 3275 2006-04-24 Adele Peterson <adele (a] apple.com> 3276 3277 Reviewed by Hyatt. 3278 3279 Fix for <rdar://problem/4503438> REGRESSION (NativeTextField): Can't insert caret when 3280 selection is active in field (Business/Unit) 3281 3282 * css/html4.css: Added -webkit-user-select:text for input elements. 3283 3284 2006-04-24 Maciej Stachowiak <mjs (a] apple.com> 3285 3286 Build fix: 3287 3288 - move some prematurely moved code back 3289 3290 * bridge/mac/WebCoreFrameBridge.h: 3291 * bridge/mac/WebCoreFrameBridge.mm: 3292 (-[WebCoreFrameBridge fini]): 3293 3294 2006-04-24 Maciej Stachowiak <mjs (a] apple.com> 3295 3296 Reviewed by Darin. 3297 3298 - move more code from WebFrameBridge to WebCoreFrameBridge 3299 3300 * bridge/mac/WebCoreFrameBridge.h: 3301 * bridge/mac/WebCoreFrameBridge.mm: 3302 (-[WebCoreFrameBridge domain]): 3303 (-[WebCoreFrameBridge canTargetLoadInFrame:]): 3304 (-[WebCoreFrameBridge fini]): 3305 (-[WebCoreFrameBridge dealloc]): 3306 (-[WebCoreFrameBridge finalize]): 3307 (_getPreSmartSet): 3308 (_getPostSmartSet): 3309 (-[WebCoreFrameBridge isCharacterSmartReplaceExempt:isPreviousCharacter:]): 3310 (-[WebCoreFrameBridge _retrieveKeyboardUIModeFromPreferences:]): 3311 (-[WebCoreFrameBridge keyboardUIMode]): 3312 3313 2006-04-24 Adele Peterson <adele (a] apple.com> 3314 3315 Reviewed by Tim O. 3316 3317 Fix to send textFieldDidBeginEditing on the first editing change instead of on focus. 3318 This matches our old behavior. 3319 3320 * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::dispatchFocusEvent): 3321 * rendering/RenderTextField.cpp: (WebCore::RenderTextField::subtreeHasChanged): 3322 3323 2006-04-24 Beth Dakin <bdakin (a] apple.com> 3324 3325 Reviewed by Eric. 3326 3327 Fix for <rdar://problem/4513383> REGRESSION: Crash in 3328 WebCore::shouldEmitTabBeforeNode() when iterating through document 3329 text 3330 3331 * editing/TextIterator.cpp: 3332 (WebCore::shouldEmitTabBeforeNode): Need to nil-check the renderer. 3333 3334 2006-04-23 Geoffrey Garen <ggaren (a] apple.com> 3335 3336 Reviewed by Maciej. 3337 3338 * bindings/scripts/CodeGeneratorJS.pm: Removed confusing 'JS' prefix 3339 from string descriptions of DOM prototypes, so the prototype for, e.g., 3340 Document serializes as 'Document,' not 'JSDocument.' 3341 3342 2006-04-23 Geoffrey Garen <ggaren (a] apple.com> 3343 3344 Reviewed by Darin. 3345 3346 - Took the larger snippets of C++ in the code generator and broke 3347 them into HERE documents in the hopes of improving readability. 3348 3349 * bindings/scripts/CodeGeneratorJS.pm: I indented variable names 3350 level with their corresponding HERE documents to clearly 3351 "sandwich" the HERE documents between opening and closing EOF 3352 statements. 3353 3354 2006-04-23 Maciej Stachowiak <mjs (a] apple.com> 3355 3356 Reviewed by Darin. 3357 3358 - push WebFileButton and WebStringTruncator code down to WebCore 3359 http://bugs.webkit.org/show_bug.cgi?id=8552 3360 3361 * WebCore.exp: 3362 * WebCore.xcodeproj/project.pbxproj: 3363 * bridge/mac/WebCoreFrameBridge.h: 3364 * bridge/mac/WebCoreStringTruncator.h: Added. 3365 * bridge/mac/WebCoreStringTruncator.mm: Added. 3366 (stringWidth): 3367 (truncateString): 3368 (+[WebCoreStringTruncator widthOfString:font:]): 3369 * bridge/mac/WebCoreViewFactory.h: 3370 * kwq/KWQFileButton.h: 3371 * kwq/KWQFileButton.mm: 3372 (-[WebFileChooserButton initWithWidget::]): 3373 (-[WebCoreFileButton positionButton]): 3374 (-[WebCoreFileButton initWithWidget:]): 3375 (-[WebCoreFileButton initWithFrame:]): 3376 (-[WebCoreFileButton dealloc]): 3377 (-[WebCoreFileButton isFlipped]): 3378 (-[WebCoreFileButton drawRect:]): 3379 (-[WebCoreFileButton updateLabel]): 3380 (-[WebCoreFileButton setFilename:]): 3381 (-[WebCoreFileButton filename]): 3382 (-[WebCoreFileButton setFrameSize:]): 3383 (-[WebCoreFileButton bestVisualFrameSizeForCharacterCount:]): 3384 (-[WebCoreFileButton visualFrame]): 3385 (-[WebCoreFileButton setVisualFrame:]): 3386 (-[WebCoreFileButton baseline]): 3387 (-[WebCoreFileButton beginSheet]): 3388 (-[WebCoreFileButton chooseFilename:]): 3389 (-[WebCoreFileButton cancel]): 3390 (-[WebCoreFileButton chooseButtonPressed:]): 3391 (-[WebCoreFileButton mouseDown:]): 3392 (-[WebCoreFileButton acceptsFirstResponder]): 3393 (-[WebCoreFileButton becomeFirstResponder]): 3394 (-[WebCoreFileButton nextKeyView]): 3395 (-[WebCoreFileButton previousKeyView]): 3396 (-[WebCoreFileButton nextValidKeyView]): 3397 (-[WebCoreFileButton previousValidKeyView]): 3398 (-[WebCoreFileButton performClick]): 3399 (-[WebFileChooserButton initWithWidget:]): 3400 (-[WebFileChooserButton nextValidKeyView]): 3401 (-[WebFileChooserButton previousValidKeyView]): 3402 (-[WebFileChooserButton resignFirstResponder]): 3403 (KWQFileButton::KWQFileButton): 3404 (KWQFileButton::setFilename): 3405 (KWQFileButton::click): 3406 (KWQFileButton::sizeForCharacterWidth): 3407 (KWQFileButton::frameGeometry): 3408 (KWQFileButton::setFrameGeometry): 3409 (KWQFileButton::baselinePosition): 3410 (KWQFileButton::filenameChanged): 3411 3412 2006-04-23 Maciej Stachowiak <mjs (a] apple.com> 3413 3414 Reviewed by Eric. 3415 3416 - remove WebCoreCookieAdapter, instead make mac implementation of 3417 CookieJar use Foundation directly. 3418 3419 * WebCore.exp: 3420 * WebCore.xcodeproj/project.pbxproj: 3421 * platform/mac/CookieJar.mm: 3422 (WebCore::cookies): 3423 (WebCore::setCookies): 3424 (WebCore::cookiesEnabled): 3425 * platform/mac/WebCoreCookieAdapter.h: Removed. 3426 * platform/mac/WebCoreCookieAdapter.m: Removed. 3427 3428 2006-04-21 Rob Buis <buis (a] kde.org> 3429 3430 Reviewed by hyatt. Landed by eseidel. 3431 3432 Fix for http://bugs.webkit.org/show_bug.cgi?id=8170: 3433 SVG CSS property values with extra items do not get treated 3434 as invalid (they should) 3435 3436 Fixes the handling of invalid svg css properties similar 3437 to how invalid html css properties are handled, ie. discard 3438 the property if there are more values in the value list than 3439 expected. 3440 3441 Test: svg/custom/invalid-css.svg 3442 3443 * ksvg2/css/SVGCSSParser.cpp: 3444 (WebCore::CSSParser::parseSVGValue): 3445 3446 2006-04-23 Michael Emmel <mike.emmel (a] gmail.com> 3447 3448 Reviewed by mjs. Landed by eseidel. 3449 3450 http://bugs.webkit.org/show_bug.cgi?id=8517 3451 No test necessary, no functional change. 3452 3453 * DerivedSources.make: use VPATH more consistently. 3454 3455 2006-04-23 Jon Shier <jshier (a] iastate.edu> 3456 3457 Reviewed by ggaren. Landed by eseidel. 3458 3459 - Fix for http://bugs.webkit.org/show_bug.cgi?id=8511 3460 onerror JS property does not register listener properly 3461 3462 Test: fast/dom/onerror-img.html 3463 3464 * bindings/js/kjs_dom.cpp: 3465 (KJS::DOMEventTargetNode::getValueProperty): changed khtmlErrorEvent to errorEvent. 3466 (KJS::DOMEventTargetNode::putValueProperty): ditto. 3467 * bindings/js/kjs_window.cpp: 3468 (KJS::Window::getValueProperty): ditto. 3469 (KJS::Window::put): 3470 * dom/EventNames.h: Removed khtmlError macro. 3471 3472 2006-04-23 Eric Seidel <eseidel (a] apple.com> 3473 3474 Reviewed by hyatt. 3475 3476 Reproducible crasher with <li value=1234567890 type=A> 3477 http://bugs.webkit.org/show_bug.cgi?id=8542 3478 3479 Fixed our alphabetical list generation to match WinIE (not FireFox) 3480 Previously our alphabetical lists were completely wrong past 26 items. 3481 3482 Tests: 3483 * fast/lists/alpha-list-wrap.html 3484 * fast/lists/li-style-alpha-huge-value-crash.html 3485 3486 * rendering/render_list.cpp: 3487 (WebCore::toLetterString): 3488 (WebCore::toHebrew): 3489 (WebCore::RenderListMarker::calcMinMaxWidth): 3490 3491 2006-04-22 Geoffrey Garen <ggaren (a] apple.com> 3492 3493 Reviewed by Darin. 3494 3495 - Finished autogeneration of Element 3496 3497 * bindings/js/kjs_dom.cpp: Removed DOMElement class 3498 * bindings/js/kjs_dom.h: ditto 3499 * bindings/scripts/CodeGeneratorJS.pm: added support for special 3500 attribute lookup that elements do 3501 * dom/Element.idl: added new attribute, 3502 "IncludeAttributesInPropertyLookup," which tells the code generator 3503 to include HTML element attributes in property lookup 3504 3505 2006-04-22 Michael Emmel <mike.emmel (a] gmail.com> 3506 3507 Reviewed by Maciej. 3508 3509 - fix http://bugs.webkit.org/show_bug.cgi?id=8529 3510 Extra Qaulification in header 3511 - fix http://bugs.webkit.org/show_bug.cgi?id=8530 3512 Missing assert.h include 3513 3514 * rendering/RenderObject.h: Removed erroneous RenderObject:: 3515 prefix from a member function name. 3516 * rendering/RenderText.h: Removed erroneous RenderText:: 3517 prefix from a member function name. 3518 3519 * platform/Arena.cpp: Added <assert.h> to list of includes. 3520 * platform/KURL.cpp: Ditto. 3521 * platform/StringImpl.cpp: Ditto. 3522 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: Ditto. 3523 * platform/image-decoders/png/PNGImageDecoder.cpp: Ditto. 3524 3525 2006-04-22 Darin Adler <darin (a] apple.com> 3526 3527 * doc: Added. 3528 3529 2006-04-22 Maciej Stachowiak <mjs (a] apple.com> 3530 3531 Reviewed by Eric. 3532 3533 - push down a bunch of WebCoreFrameBridge code to C++ (plus some reformatting) 3534 3535 * bridge/mac/WebCoreFrameBridge.mm: 3536 (-[WebCoreFrameBridge isDescendantOfFrame:]): 3537 (-[WebCoreFrameBridge traverseNextFrameStayWithin:]): 3538 (-[WebCoreFrameBridge nextFrameWithWrap:]): 3539 (-[WebCoreFrameBridge previousFrameWithWrap:]): 3540 (+[WebCoreFrameBridge bridgeForDOMDocument:]): 3541 (-[WebCoreFrameBridge parent]): 3542 (-[WebCoreFrameBridge addData:]): 3543 (-[WebCoreFrameBridge didNotOpenURL:pageCache:]): 3544 (-[WebCoreFrameBridge restoreDocumentState]): 3545 (-[WebCoreFrameBridge _stringWithDocumentTypeStringAndMarkupString:]): 3546 (-[WebCoreFrameBridge nodesFromList:]): 3547 (-[WebCoreFrameBridge markupStringFromNode:nodes:]): 3548 (-[WebCoreFrameBridge markupStringFromRange:nodes:]): 3549 (-[WebCoreFrameBridge rangeByExpandingSelectionWithGranularity:]): 3550 (-[WebCoreFrameBridge rangeByAlteringCurrentSelection:direction:granularity:]): 3551 (-[WebCoreFrameBridge alterCurrentSelection:direction:granularity:]): 3552 (-[WebCoreFrameBridge rangeByAlteringCurrentSelection:verticalDistance:]): 3553 (-[WebCoreFrameBridge alterCurrentSelection:verticalDistance:]): 3554 (-[WebCoreFrameBridge replaceMarkedTextWithText:]): 3555 (-[WebCoreFrameBridge replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]): 3556 (-[WebCoreFrameBridge increaseSelectionListLevel]): 3557 (-[WebCoreFrameBridge decreaseSelectionListLevel]): 3558 (-[WebCoreFrameBridge insertLineBreak]): 3559 (-[WebCoreFrameBridge insertParagraphSeparator]): 3560 (-[WebCoreFrameBridge insertParagraphSeparatorInQuotedContent]): 3561 (-[WebCoreFrameBridge insertText:selectInsertedText:]): 3562 (-[WebCoreFrameBridge deleteSelectionWithSmartDelete:]): 3563 (-[WebCoreFrameBridge ensureSelectionVisible]): 3564 (-[WebCoreFrameBridge RenderObject::nodeInfoAtPoint:allowShadowContent:]): 3565 * page/Frame.cpp: 3566 (WebCore::Frame::nodeInfoAtPoint): 3567 (WebCore::Frame::hasSelection): 3568 (WebCore::Frame::documentTypeString): 3569 * page/Frame.h: 3570 * page/FrameTree.cpp: 3571 (WebCore::FrameTree::traverseNextWithWrap): 3572 (WebCore::FrameTree::traversePreviousWithWrap): 3573 (WebCore::FrameTree::deepLastChild): 3574 * page/FrameTree.h: 3575 3576 2006-04-22 Beth Dakin <bdakin (a] apple.com> 3577 3578 Reviewed by Hyatt. 3579 3580 Fix for http://bugs.webkit.org/show_bug.cgi?id=6141 3581 DOMCSSPrimitiveValue is always returning values in pixels when 3582 using getComputedStyle: 3583 3584 getFloatValue() took a unit type as a parameter, ignored it, and 3585 returned m_value.num. This patch writes a second version of the 3586 function that actually converts m_value.num to the specified unites 3587 before returning it. Where a conversion is not required, I removed 3588 the unit type from the caller so that it would go directly to the 3589 inline version of the function. 3590 3591 * css/css_valueimpl.cpp: 3592 (WebCore::CSSPrimitiveValue::computeLengthFloat): Remove type 3593 parameter since a conversion is not needed. 3594 (WebCore::scaleFactorForConversion): Helper function for 3595 conversion. 3596 (WebCore::CSSPrimitiveValue::getFloatValue): This version of 3597 getFloatValue() takes a unit type parameter and converts 3598 m_value.num. 3599 * css/css_valueimpl.h: 3600 (WebCore::CSSPrimitiveValue::getFloatValue): This version does not 3601 take a parameter and just returns m_value.num. 3602 * css/cssparser.cpp: 3603 (WebCore::BorderImageParseContext::commitBorderImage): Remove type 3604 parameter since a conversion is not needed. 3605 * css/cssstyleselector.cpp: 3606 (WebCore::convertToLength): Same. 3607 (WebCore::CSSStyleSelector::applyProperty): Same. 3608 (WebCore::CSSStyleSelector::mapBackgroundSize): Same. 3609 (WebCore::CSSStyleSelector::mapBackgroundXPosition): Same. 3610 (WebCore::CSSStyleSelector::mapBackgroundYPosition): Same. 3611 * editing/ApplyStyleCommand.cpp: 3612 (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange): Same. 3613 * ksvg2/css/SVGCSSStyleSelector.cpp: 3614 (WebCore::CSSStyleSelector::applySVGProperty): Same. 3615 * ksvg2/misc/KCanvasRenderingStyle.cpp: 3616 (WebCore::KSVGPainterFactory::cssPrimitiveToLength): Same. 3617 3618 2006-04-21 Geoffrey Garen <ggaren (a] apple.com> 3619 3620 Reviewed by John. 3621 3622 - Fixed http://bugs.webkit.org/show_bug.cgi?id=8509 3623 javascript:document.importNode(null) 3624 3625 * dom/Document.cpp: 3626 (WebCore::Document::importNode): Throw an error if the node is null. 3627 This happens when the object provided in the JavaScript call is not 3628 a node. 3629 (WebCore::Document::adoptNode): Set the DOM exception code in all error 3630 cases instead of just a few, because that's what the spec requires. 3631 3632 2006-04-21 Geoffrey Garen <ggaren (a] apple.com> 3633 3634 Reviewed by John. 3635 3636 - Fixed http://bugs.webkit.org/show_bug.cgi?id=8510 3637 submit event doesn't bubble - it's supposed to. 3638 3639 * html/HTMLElement.cpp: 3640 (WebCore::HTMLElement::parseMappedAttribute): Added recognition for the 3641 onsubmit attribute, so elements can use it 3642 * html/HTMLFormElement.cpp: 3643 (WebCore::HTMLFormElement::prepareSubmit): Changed bubbling attribute 3644 to 'true' 3645 3646 2006-04-21 Geoffrey Garen <ggaren (a] apple.com> 3647 3648 Reviewed by TimO. 3649 3650 - Fixed: error event does not bubble 3651 3652 I discovered this bug while working on the "submit event does not 3653 bubble" bug. The DOM spec says the event should bubble, and that's how 3654 it works in Firefox. 3655 3656 The DOM Spec also says that the error event is "valid for 3657 OBJECT elements, BODY elements, and FRAMESET element." But it doesn't 3658 say "valid ONLY." Firefox supports it on all elements and web 3659 developers tend to think it will work for things like <img> and 3660 <script>, so I went whole hog here. 3661 3662 * html/HTMLElement.cpp: 3663 (WebCore::HTMLElement::parseMappedAttribute): Make onerror a mapped 3664 attribute for all elements, so containing elements can register for 3665 the event. 3666 * html/HTMLTokenizer.cpp: 3667 (WebCore::HTMLTokenizer::notifyFinished): make onerror bubble 3668 * html/html_headimpl.cpp: 3669 (WebCore::HTMLScriptElement::parseMappedAttribute): Remove special 3670 case for onerror because HTMLElement will take care of it 3671 (WebCore::HTMLScriptElement::notifyFinished): make onerror bubble 3672 * html/html_imageimpl.cpp: 3673 (WebCore::HTMLImageElement::parseMappedAttribute): Remove special 3674 case for onerror because HTMLElement will take care of it 3675 3676 2006-04-21 Adele Peterson <adele (a] apple.com> 3677 3678 Test for: http://bugs.webkit.org/show_bug.cgi?id=8181 3679 REGRESSION: After tabbing in page's field, attempting to tab from Google toolbar search to page fails on first try 3680 3681 * manual-tests/tabbing-input-google.html: Added. 3682 3683 2006-04-21 Kevin M. Ollivier <kevino (a] theolliviers.com> 3684 3685 Reviewed by Darin. 3686 3687 - http://bugs.webkit.org/show_bug.cgi?id=8507 3688 Compilation fixes for building on gcc 4.0.2, and without precomp headers 3689 3690 * platform/Cursor.h: Created a fallback case that typedefs PlatformCursor 3691 to void * if it isn't defined to anything else. (Useful to help get new ports 3692 initially compiling.) 3693 3694 * bindings/js/kjs_window.cpp: 3695 * rendering/RenderTextField.cpp: 3696 * rendering/RenderBox.cpp: 3697 Add missing headers to resolve issues when compiling without precompiled 3698 headers. 3699 3700 * rendering/RenderText.h: Declare the InlineTextBox class before 3701 friend declaration to resolve compilation issues with gcc 4.0.2. 3702 3703 2006-04-21 Adele Peterson <adele (a] apple.com> 3704 3705 Reviewed by Darin. 3706 3707 Fix for: http://bugs.webkit.org/show_bug.cgi?id=8213 3708 REGRESSION: Can't tab out of text field if iframe comes after it 3709 3710 Test: fast/forms/tabbing-input-iframe.html 3711 3712 * bridge/mac/FrameMac.mm: (WebCore::FrameMac::nextKeyViewInFrame): 3713 If the next focusable node is a RenderWidget without a view, then continue in the loop. We used to break out in this case. 3714 I also made some formatting changes and reorganized the function to make it easier to read. 3715 3716 2006-04-21 Adele Peterson <adele (a] apple.com> 3717 3718 Reviewed by Beth. 3719 3720 Fix for: http://bugs.webkit.org/show_bug.cgi?id=8496 3721 REGRESSION: Dragging to select text around a text field causes the text field to scroll. 3722 3723 Test: manual-tests/text-field-autoscroll.html 3724 3725 * bridge/mac/FrameMac.mm: (WebCore::FrameMac::handleMouseMoveEvent): Start the frame's autoscroll timer 3726 even when we're calling over the bridge to handle the autoscroll. 3727 * page/Frame.cpp: (WebCore::Frame::stopAutoscrollTimer): Clear out pointer to layer. 3728 3729 2006-04-21 Geoffrey Garen <ggaren (a] apple.com> 3730 3731 - And again. 3732 3733 * WebCore.vcproj/WebCore/WebCore.vcproj: 3734 3735 2006-04-21 Geoffrey Garen <ggaren (a] apple.com> 3736 3737 - Futile attempt to fix Windows build. 3738 3739 * WebCore.vcproj/WebCore/WebCore.vcproj: 3740 3741 2006-04-20 Geoffrey Garen <ggaren (a] apple.com> 3742 3743 Reviewed by Maciej. 3744 3745 - Added autogeneration of JS bindings for CSSRule, CSSValue, 3746 Event, and NodeFilter. 3747 3748 - Made related prototype objects hold the relevant constants, to 3749 match Mozilla and the DOM 2 spec. (Previously, only the related 3750 constructor objects held those constants, in accordance with the 3751 DOM 3 spec.) 3752 3753 - Fixed up remaining Windows build issues. 3754 3755 * DerivedSources.make: Added new autogenerated files 3756 * WebCore.xcodeproj/project.pbxproj: ditto 3757 * bindings/js/kjs_css.cpp: 3758 (KJS::DOMCSSRule::classInfo): 3759 (KJS::DOMCSSRule::getOwnPropertySlot): scope call to classInfo() 3760 because it's virtual and DOMCSSRule has a derrived class now. 3761 (KJS::DOMCSSRule::put): ditto 3762 (KJS::DOMCSSRuleFunc::callAsFunction): 3763 (KJS::toJS): 3764 * bindings/js/kjs_css.h: 3765 * bindings/js/kjs_events.cpp: 3766 (KJS::toJS): 3767 * bindings/js/kjs_events.h: 3768 * bindings/js/kjs_html.cpp: 3769 (KJS::OptionConstructorImp::OptionConstructorImp): 3770 * bindings/js/kjs_traversal.cpp: 3771 (KJS::toJS): 3772 * bindings/js/kjs_traversal.h: 3773 * bindings/js/kjs_window.cpp: 3774 (KJS::Window::getValueProperty): added CSSValue global object 3775 * bindings/js/kjs_window.h: 3776 (KJS::Window::): 3777 * bindings/scripts/CodeGeneratorJS.pm: Changed generator to write 3778 constants to prototype objects (previously only wrote constants to 3779 constructor objects) 3780 * css/CSSPrimitiveValue.idl: Removed LegacyParent since CSSValue now 3781 exists in IDL 3782 * css/CSSRule.idl: Added. 3783 * css/CSSValue.idl: Added. 3784 * css/css_ruleimpl.h: 3785 (WebCore::CSSRule::): 3786 * css/css_valueimpl.h: 3787 * dom/Event.idl: Added. 3788 * dom/MutationEvent.idl: Removed LegacyParent since Event now exists 3789 in IDL 3790 * dom/NodeFilter.idl: Added. 3791 * dom/UIEvent.idl: Removed LegacyParent since event now exists in IDL 3792 * dom/dom2_eventsimpl.h: 3793 (WebCore::Event::): 3794 3795 2006-04-21 Darin Adler <darin (a] apple.com> 3796 3797 - one more attempt to fix Windows build 3798 3799 * platform/cairo/GraphicsContextCairo.cpp: 3800 (WebCore::GraphicsContext::fillRect): Update to use Color and match 3801 the similar function on GraphicsContextMac. 3802 3803 2006-04-21 Beth Dakin <bdakin (a] apple.com> 3804 3805 Reviewed by Hyatt. 3806 3807 Fix for http://bugs.webkit.org/show_bug.cgi?id=8495 3808 REGRESSION: Sidebar on cnn.com is hosed 3809 3810 * platform/mac/ImageMac.mm: 3811 (WebCore::Image::drawTiled): Use the size of the destination rect, 3812 not the oneTileRect in the no-pattern case. 3813 * rendering/RenderBox.cpp: 3814 (WebCore::RenderBox::paintBackgroundExtended): Initialize 3815 scaledWidth and scaledHeight to the appropriate value (was wrong in 3816 scroll case), adjust position at appropriate times, and take out 3817 no-repeat clause for now since we don't have enough test cases yet 3818 to be sure we won't cause massive regressions. 3819 3820 2006-04-21 Darin Adler <darin (a] apple.com> 3821 3822 - attempt to fix Windows build after my last check-in 3823 3824 * WebCore.vcproj/Image Viewer/ImageView.cpp: Changed calls to use the 3825 new IntRect-based API. 3826 3827 * html/CanvasPattern.cpp: (WebCore::CanvasPattern::CanvasPattern): 3828 Put appropriate ifdefs around the m_platformImage initializer. 3829 3830 * page/Frame.cpp: Make Frame::adjustPageHeight Mac-OS-X-only for now 3831 since it's used for printing and we don't have printing going on any 3832 other platforms yet. 3833 3834 * platform/cairo/GraphicsContextCairo.cpp: Take out constructor that 3835 takes only the "for printing" boolean for now. 3836 3837 * platform/cairo/ImageCairo.cpp: Include the GraphicsContext.h header. 3838 3839 * platform/win/TemporaryLinkStubs.cpp: (GraphicsContext::setShadow): 3840 Fix up this stub and remove the GraphicsContext empty constructor stub. 3841 3842 2006-04-21 Darin Adler <darin (a] apple.com> 3843 3844 - fix build 3845 3846 * WebCore.xcodeproj/project.pbxproj: Replaced absolute path on my system 3847 with a build-result-relative path; also removed some source files from the 3848 list of resources to install! 3849 3850 2006-04-20 Darin Adler <darin (a] apple.com> 3851 3852 Reviewed by Hyatt. 3853 3854 - make <canvas> element and related API behave more like the draft of 3855 the WhatWG Web Application specification, checking parameter validity 3856 and raising exceptions 3857 - changed HTMLCanvasElement bindings to be auto-generated, fixing all 3858 issues so we can generate bindings for classes drived from HTMLElement 3859 - change GraphicsContext API to use IntRect/Point/Size in more cases 3860 - change GraphicsContext so it is closer to truly wrapping a graphics 3861 context rather than representing the current NSGraphicsContext; there 3862 are still some things like text and rectangle fills that are tied to 3863 NSGraphicsContext, but we're most of the way there 3864 - removed Brush class since it just amounted to a color, using an RGBA32 3865 instead where we used to use a Brush 3866 3867 * DerivedSources.make: Added JSHTMLCanvasElement.h. 3868 * WebCore.xcodeproj/project.pbxproj: Added new files. 3869 3870 * bindings/js/JSCanvasRenderingContext2DBase.h: Added toJS. 3871 * bindings/js/JSCanvasRenderingContext2DBase.cpp: 3872 (WebCore::JSCanvasRenderingContext2DBaseProtoFunc::callAsFunction): 3873 Added exception code handling for strokeRect, drawImage, and createPattern. 3874 Added version of createPattern that takes a canvas. Use TYPE_MISMATCH_ERR 3875 instead of JavaScript TypeError when parameter is neither an image or canvas 3876 element. Adapt for new HTMLCanvasElement binding. 3877 (WebCore::toJS): Added. Converts context object to JS wrapper. 3878 3879 * bindings/js/JSHTMLElementWrapperFactory.h: Added. 3880 * bindings/js/JSHTMLElementWrapperFactory.cpp: Added. Creates a JavaScript 3881 wrapper for an arbitrary HTML element. Better than putting this all in the 3882 DOM node class toJS function. 3883 3884 * bindings/js/JSXMLSerializer.cpp: Tweaked to make it build. 3885 * bindings/js/kjs_dom.cpp: (KJS::toJS): Changed to call the 3886 JSHTMLElementWrapperFactory function createJSWrapper, instead 3887 of always creating a JSHTMLElement. 3888 3889 * bindings/js/kjs_html.h: Removed canvas-related stuff. Added HTMLElement 3890 prototype. 3891 * bindings/js/kjs_html.cpp: 3892 (KJS::JSHTMLElement::classInfo): Removed canvas element. 3893 (KJS::JSHTMLElement::accessors): Ditto. 3894 (KJS::JSHTMLElementProtoFunc::callAsFunction): Added, to help the auto-binding 3895 machiner cope with HTMLElement. 3896 (KJS::HTMLElementFunction::callAsFunction): Removed canvas element. 3897 3898 * bindings/scripts/CodeGeneratorJS.pm: Added types needed for HTMLCanvasElement. 3899 3900 * bridge/mac/FrameMac.mm: (WebCore::FrameMac::setDisplaysWithFocusAttributes): 3901 Changed to create a GraphicsContext with the new constructor that takes 3902 a CGContextRef. 3903 * bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge drawRect:]): 3904 Changed to create a GraphicsContext with the new constructor that takes 3905 a NSGraphicsContext. 3906 * page/Frame.cpp: (WebCore::Frame::adjustPageHeight): Changed to create a 3907 GraphicsContext with the new constructor that takes a CGContextRef. 3908 3909 * editing/SelectionController.cpp: (WebCore::SelectionController::paintCaret): 3910 Eliminated a use of obsolete class Brush. 3911 3912 * html/CanvasPattern.h: 3913 * html/CanvasPattern.cpp: 3914 (WebCore::CanvasPattern::parseRepetitionType): Added. Parses a repetition 3915 type. Different from the old logic in that it is case-sensitive and rejects 3916 anything other than null, empty string, or the four repeat types. 3917 (WebCore::CanvasPattern::CanvasPattern): Added constructor that takes 3918 a CGImageRef. Changed constructor to take two booleans instead of the repetition 3919 type string. It's the caller's responsibility to parse the string. 3920 (WebCore::CanvasPattern::~CanvasPattern): Release the CGImage. 3921 (WebCore::patternCallback): Handle the CGImage case. Also changed the code 3922 to create a GraphicsContext as needed and call the image drawing code with that. 3923 (WebCore::CanvasPattern::createPattern): Handle both the image element case and 3924 the canvas element case. 3925 3926 * html/CanvasRenderingContext2D.h: 3927 * html/CanvasRenderingContext2D.cpp: 3928 (WebCore::CanvasRenderingContext2D::State::State): Change line cap, line join, 3929 and global composite to store enum values instead of strings. 3930 (WebCore::CanvasRenderingContext2D::setLineWidth): Do nothing if width is NaN 3931 or <= 0. 3932 (WebCore::CanvasRenderingContext2D::lineCap): Return a string based on a 3933 stored enum, rather than returning a stored string. 3934 (WebCore::CanvasRenderingContext2D::setLineCap): Do nothing if the string is 3935 not one of the standard line cap types. Also case sensitive and stores enum 3936 rather than the string. 3937 (WebCore::CanvasRenderingContext2D::lineJoin): Return a string based on a 3938 stored enum, rather than returning a stored string. 3939 (WebCore::CanvasRenderingContext2D::setLineJoin): Do nothing if the string is 3940 not one of the standard line join types. Also case sensitive and stores enum 3941 rather than the string. 3942 (WebCore::CanvasRenderingContext2D::setMiterLimit): Do nothing if limit is NaN 3943 or <= 0. 3944 (WebCore::CanvasRenderingContext2D::setGlobalAlpha): Do nothing if alpha is NaN 3945 or < 0 or > 1. 3946 (WebCore::CanvasRenderingContext2D::globalCompositeOperation): Return a string 3947 based on a stored enum, rather than returning a stored string. 3948 (WebCore::CanvasRenderingContext2D::setGlobalCompositeOperation): Do nothing if 3949 the string is not one of the standard compositing modes. Also case sensitive and 3950 stores enum rather than the string. 3951 (WebCore::CanvasRenderingContext2D::arcTo): Generate INDEX_SIZE_ERR exception 3952 if radius is NaN or <= 0. 3953 (WebCore::CanvasRenderingContext2D::arc): Ditto. 3954 (WebCore::CanvasRenderingContext2D::rect): Generate INDEX_SIZE_ERR exception 3955 if width or height is NaN or <= 0. 3956 (WebCore::CanvasRenderingContext2D::clearRect): Ditto. 3957 (WebCore::CanvasRenderingContext2D::fillRect): Ditto. 3958 (WebCore::CanvasRenderingContext2D::strokeRect): Ditto, same for line width. 3959 Changed the case where the line width is not specified to share code with the 3960 case where it is. 3961 (WebCore::size): Renamed from imageSize, since C++ overloads based on parameter 3962 types anyway. 3963 (WebCore::CanvasRenderingContext2D::drawImage): Generate INDEX_SIZE_ERR exception 3964 if the source rect is not entirely inside the image rect, or if the width or height 3965 of either the source or destination rect is NaN or <= 0. Changed image drawing 3966 code to be platform-independent for the image element case, but not yet for the 3967 canvas case. 3968 (WebCore::CanvasRenderingContext2D::drawImageFromRect): Change code to parse the 3969 composite operation to use the new code shared with Image. 3970 (WebCore::CanvasRenderingContext2D::createPattern): Added code to parse the 3971 repetition type separately before creating the pattern. Added an overload for 3972 canvas elements. 3973 (WebCore::CanvasRenderingContext2D::drawingContext): Changed to return a 3974 GraphicsContext*. 3975 (WebCore::CanvasRenderingContext2D::platformContext): Added. Now does what 3976 drawingContext used to do. 3977 3978 * html/CanvasRenderingContext2D.idl: Added exception declarations as needed 3979 for changes above. 3980 3981 * html/HTMLCanvasElement.h: 3982 * html/HTMLCanvasElement.cpp: 3983 (WebCore::HTMLCanvasElement::HTMLCanvasElement): Changed m_drawingContext 3984 to be a GraphicsContext instead of a CGContextRef. 3985 (WebCore::HTMLCanvasElement::~HTMLCanvasElement): Ditto. 3986 (WebCore::HTMLCanvasElement::getContext): Removed special cases for null 3987 and empty string. Only give a 2D graphics context if the string is "2d". 3988 (WebCore::HTMLCanvasElement::reset): Updated for change to GraphicsContext 3989 from CGContextRef. 3990 (WebCore::HTMLCanvasElement::paint): Ditto. 3991 (WebCore::HTMLCanvasElement::createDrawingContext): Changed to create a 3992 GraphicsContext* instead of a CGContextRef. 3993 (WebCore::HTMLCanvasElement::drawingContext): Changed to return a 3994 GraphicsContext* instead of a CGContextRef. 3995 (WebCore::HTMLCanvasElement::createPlatformImage): Updated for changes above. 3996 3997 * html/HTMLCanvasElement.idl: Added. 3998 3999 * html/HTMLParser.h: 4000 * html/HTMLParser.cpp: 4001 (WebCore::HTMLParser::canvasCreateErrorCheck): Added. An attempt to implement the 4002 fallback behavior for canvas elements when JavaScript is off. 4003 (WebCore::HTMLParser::getNode): Sorted list of functions. Added case for canvas. 4004 4005 * html/html_imageimpl.h: 4006 * html/html_imageimpl.cpp: 4007 (WebCore::HTMLImageElement::HTMLImageElement): Changed m_compositeOperator to be 4008 an enum instead of a string. 4009 (WebCore::HTMLImageElement::parseMappedAttribute): Parse the enum here. 4010 4011 * kcanvas/KCanvasResources.h: 4012 * kcanvas/KCanvasResources.cpp: (WebCore::KCanvasMarker::draw): Changed to take a 4013 GraphicsContext parameter. 4014 4015 * kcanvas/RenderPath.h: Added GraphicsContext parameter to drawMarkersIfNeeded. 4016 4017 * kcanvas/RenderPath.cpp: (WebCore::RenderPath::paint): 4018 * kcanvas/RenderSVGImage.cpp: (WebCore::RenderSVGImage::paint): 4019 * kcanvas/RenderSVGText.cpp: (WebCore::RenderSVGText::paint): 4020 Changed to generate and use an appropriate GraphicsContext. 4021 4022 * kcanvas/device/quartz/KCanvasItemQuartz.h: Added GraphicsContext parameter to 4023 drawMarkersIfNeeded. 4024 * kcanvas/device/quartz/KCanvasItemQuartz.mm: 4025 (WebCore::DrawMarkersData::DrawMarkersData): Added GraphicsContext*. 4026 (WebCore::drawMarkerWithData): Pass along a GraphicsContext*. 4027 (WebCore::drawStartAndMidMarkers): Ditto. 4028 (WebCore::KCanvasItemQuartz::drawMarkersIfNeeded): Pass a long a GraphicsContext*. 4029 4030 * kcanvas/device/KRenderingDevice.h: Added a pure virtual createGraphicsContext 4031 to bridge back to a GraphicsContext. Long term that class will replace this one. 4032 * kcanvas/device/quartz/KRenderingDeviceQuartz.h: 4033 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm: 4034 (WebCore::KRenderingDeviceContextQuartz::createGraphicsContext): Added. 4035 4036 * ksvg2/svg/SVGMaskElement.cpp: (WebCore::SVGMaskElement::drawMaskerContent): 4037 Create and pass a GraphicsContext -- old code used the default constructor for 4038 GraphicsContext which meant "current context", and that no longer exists. 4039 * ksvg2/svg/SVGPatternElement.cpp: 4040 (WebCore::SVGPatternElement::drawPatternContentIntoTile): Ditto. 4041 4042 * platform/Brush.h: Removed. 4043 * platform/CompositeOperator.h: Added. 4044 * platform/CompositeOperator.cpp: Added. 4045 4046 * platform/Font.h: Changed calls to use IntPoint instead of pairs of ints. 4047 Also removed the const from all the uses of GraphicsContext*. 4048 4049 * platform/GraphicsContext.h: Eliminated default constructor and constructor 4050 that takes only a boolean. Replaced with constructors that take platform 4051 graphics contexts only. Replaced brush-related calls with fill color calls. 4052 Replaced use of Brush with use of Color. Changed Image::CompositeOperator to 4053 just plain CompositeOperator. Changed tuples of ints into IntRect and IntPoint. 4054 Moved setFocusRingClip and clearFocusRingClip out of ifdefs. Removed unused 4055 getCompositeOperation and string-based setCompositeOperation. Moved 4056 currentCGContext and the other setCompositeOperation out of the GraphicsContext 4057 class and made them global functions. Fixed platformContext so it won't always 4058 return the CGContextRef of the current NSGraphicsContext. Instead, it will 4059 return the appropriate CGContextRef for the GraphicsContext. This eliminates 4060 the need to use void* for the image-drawing functions. 4061 4062 * platform/GraphicsContext.cpp: 4063 (WebCore::GraphicsContextState::GraphicsContextState): Replaced Brush with 4064 an RGBA fill color. 4065 (WebCore::GraphicsContext::setFillColor): Renamed from setBrush. 4066 (WebCore::GraphicsContext::fillColor): Renamed from brush. 4067 (WebCore::GraphicsContext::drawImage): Changed to use IntRect. 4068 (WebCore::GraphicsContext::drawTiledImage): Moved here from GraphicsContextMac.mm. 4069 (WebCore::GraphicsContext::drawText): Changed to use IntPoint. 4070 (WebCore::GraphicsContext::drawHighlightForText): Ditto. 4071 (WebCore::GraphicsContext::drawLineForText): Ditto. 4072 (WebCore::GraphicsContext::drawLineForMisspelling): Ditto. 4073 4074 * platform/Image.h: Removed CompositeOperator and related functions. 4075 Removed void* context parameters from draw functions. 4076 4077 * platform/Image.cpp: Removed compositeOperatorFromString. 4078 4079 * platform/Widget.h: Added a GraphicsContext* return value from lockDrawingFocus 4080 that you pass back to unlockDrawingFocus (for deletion). 4081 4082 * platform/mac/FontMac.mm: 4083 (WebCore::Font::selectionRectForText): Changed parameter to point and removed 4084 const on GraphicsContext* parameter. 4085 (WebCore::Font::drawText): Ditto. 4086 (WebCore::Font::drawHighlightForText): Ditto. 4087 (WebCore::Font::drawLineForText): Ditto. 4088 (WebCore::Font::drawLineForMisspelling): Ditto. 4089 (WebCore::Font::misspellingLineThickness): Removed const. 4090 4091 * platform/mac/GraphicsContextMac.mm: 4092 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): 4093 Added fields to store a CGContextRef and an NSGraphicsContext. 4094 (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate): 4095 Release both the CGContextRef and the NSGraphicsContext. 4096 (WebCore::GraphicsContext::GraphicsContext): Implement to set up both the 4097 CGContextRef and the NSGraphicsContext in one case, and only the CGContextRef 4098 in the other. 4099 (WebCore::GraphicsContext::savePlatformState): Implement for the CGContext-only 4100 case. 4101 (WebCore::GraphicsContext::restorePlatformState): Ditto. 4102 (WebCore::GraphicsContext::drawRect): Assert that the NS context is present 4103 and 4104 (WebCore::GraphicsContext::setColorFromFillColor): Renamed from 4105 setColorFromBrush. 4106 (WebCore::GraphicsContext::setColorFromPen): Added assertion. 4107 (WebCore::GraphicsContext::drawLine): Added assertion. 4108 (WebCore::GraphicsContext::drawEllipse): Get CGContext from the platformContext 4109 function instead of currentCGContext, and changed to use fillColor. 4110 (WebCore::GraphicsContext::drawArc): Ditto. 4111 (WebCore::GraphicsContext::drawConvexPolygon): Ditto. 4112 (WebCore::setCompositeOperation): Changed to global function and also changed 4113 to do the work here -- no need to use WebCoreImageRendererFactory. 4114 (WebCore::GraphicsContext::drawImage): Move most of this into GraphicsContext.cpp. 4115 Remove the void* context parameter. Changed to take rects instead of separate coordinates. 4116 (WebCore::GraphicsContext::fillRect): Changed to take color instead of Brush. 4117 (WebCore::GraphicsContext::addClip): Added assertion. 4118 (WebCore::GraphicsContext::addRoundedRectClip): Get CGContextRef from the platformContext 4119 function instead of currentCGContext. 4120 (WebCore::GraphicsContext::createRenderingDeviceContext): Ditto. 4121 (WebCore::GraphicsContext::beginTransparencyLayer): Ditto. 4122 (WebCore::GraphicsContext::endTransparencyLayer): Ditto. 4123 (WebCore::GraphicsContext::setShadow): Change to take size instead of x,y. Also get 4124 CGCOntextRef from the platformContext function instead of currentCGContext. 4125 (WebCore::GraphicsContext::clearShadow): Get CGContextRef from the platformContext 4126 function instead of currentCGContext. 4127 (WebCore::GraphicsContext::platformContext): Added. Returns m_data->m_cgContext. 4128 4129 * platform/mac/ImageMac.mm: 4130 (WebCore::fillSolidColorInRect): Updated for change in CompositeOperator type. 4131 (WebCore::Image::checkForSolidColor): Ditto. 4132 (WebCore::Image::draw): Removed void* context parameter and replaced it with 4133 a GraphicsContext* parameter. Renamed from drawInRect. 4134 (WebCore::Image::drawTiled): Ditto. Renamed from tileInRect and scaleAndTileInRect. 4135 4136 * platform/mac/PDFDocumentImage.h: Updated for change in CompositeOperator type. 4137 * platform/mac/PDFDocumentImage.mm: (WebCore::PDFDocumentImage::draw): Ditto. 4138 4139 * platform/mac/WidgetMac.mm: 4140 (WebCore::Widget::lockDrawingFocus): Changed to return a GraphicsContext*. 4141 (WebCore::Widget::unlockDrawingFocus): Changed to take a GraphicsContext*. 4142 4143 * rendering/InlineTextBox.cpp: 4144 (WebCore::InlineTextBox::selectionRect): Changed to pass IntPoint. 4145 (WebCore::InlineTextBox::paint): Changed to pass IntSize. 4146 (WebCore::InlineTextBox::paintSelection): More of the same. 4147 (WebCore::InlineTextBox::paintMarkedTextBackground): Ditto. 4148 (WebCore::InlineTextBox::paintDecoration): Ditto. 4149 (WebCore::InlineTextBox::paintSpellingMarker): Ditto. 4150 (WebCore::InlineTextBox::paintTextMatchMarker): Ditto. 4151 (WebCore::InlineTextBox::paintMarkedTextUnderline): Ditto. 4152 (WebCore::InlineTextBox::positionForOffset): Ditto. 4153 * rendering/RenderBlock.cpp: 4154 (WebCore::RenderBlock::fillHorizontalSelectionGap): Ditto. 4155 (WebCore::RenderBlock::fillVerticalSelectionGap): Ditto. 4156 (WebCore::RenderBlock::fillLeftSelectionGap): Ditto. 4157 (WebCore::RenderBlock::fillRightSelectionGap): Ditto. 4158 * rendering/RenderBox.cpp: 4159 (WebCore::RenderBox::paintBackgroundExtended): Ditto. 4160 (WebCore::RenderBox::outlineBox): Ditto. 4161 * rendering/RenderImage.cpp: 4162 (WebCore::RenderImage::paint): Ditto. 4163 * rendering/RenderLayer.cpp: 4164 (WebCore::setClip): Take out ifdefs. We'll do that inside GraphicsContext instead. 4165 (WebCore::restoreClip): Ditto. 4166 * rendering/RenderObject.cpp: 4167 (WebCore::RenderObject::drawBorder): More of the same. 4168 (WebCore::RenderObject::paintBorderImage): Ditto. 4169 * rendering/render_line.cpp: 4170 (WebCore::InlineFlowBox::paintDecorations): Ditto. 4171 (WebCore::EllipsisBox::paint): Ditto. 4172 * rendering/render_list.cpp: 4173 (WebCore::RenderListMarker::paint): Ditto. 4174 4175 * rendering/render_frames.cpp: (WebCore::RenderFrameSet::userResize): Set up a graphics 4176 context by calling lockDrawingFocus. Also changed a color here to be a constant. 4177 4178 * platform/cairo/GraphicsContextCairo.cpp: 4179 (WebCore::GraphicsContext::drawImage): Update for parameter type changes. 4180 (WebCore::GraphicsContext::drawScaledAndTiledImage): 4181 (WebCore::GraphicsContext::setFocusRingClip): 4182 (WebCore::GraphicsContext::clearFocusRingClip): 4183 * platform/cairo/ImageCairo.cpp: 4184 (WebCore::setCompositingOperation): 4185 (WebCore::Image::tileInRect): 4186 (WebCore::Image::scaleAndTileInRect): 4187 4188 2006-04-20 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 4189 4190 Reviewed by Darin. 4191 4192 WebCore part of: 4193 - fix http://bugs.webkit.org/show_bug.cgi?id=8276 4194 REGRESSION (NativeTextField): Pasting a Finder item into a text field results in 4195 a file: URL being pasted instead of just the file name 4196 - fix http://bugs.webkit.org/show_bug.cgi?id=8283 4197 REGRESSION: File's path doesn't appear after dragging file into input field 4198 4199 * bridge/mac/WebCoreFrameBridge.h: 4200 * bridge/mac/WebCoreFrameBridge.mm: 4201 (-[WebCoreFrameBridge isDragCaretRichlyEditable]): Added. 4202 * manual-tests/plain-text-paste.html: Added. 4203 * manual-tests/resources/plain-text-paste: Added. 4204 * manual-tests/resources/plain-text-paste/1.textClipping: Added. 4205 * manual-tests/resources/plain-text-paste/2.textClipping: Added. 4206 * manual-tests/resources/plain-text-paste/3.gif: Added. 4207 * manual-tests/resources/plain-text-paste/4.txt: Added. 4208 * manual-tests/resources/plain-text-paste/5.webloc: Added. 4209 4210 2006-04-20 Darin Adler <darin (a] apple.com> 4211 4212 Reviewed by Adele. 4213 4214 - WebCore part of http://bugs.webkit.org/show_bug.cgi?id=8505 4215 eliminate WebCoreGraphics bridge, demonstrate new SystemInterface technique 4216 4217 * platform/mac/WebCoreGraphicsBridge.h: Removed. 4218 * platform/mac/WebCoreGraphicsBridge.m: Removed. 4219 * platform/mac/WebCoreSystemInterface.h: Added. 4220 * platform/mac/WebCoreSystemInterface.mm: Added. 4221 4222 * WebCore.exp: Add new SystemInterface globals, remove WebCoreGraphicsBridge. 4223 4224 * WebCore.xcodeproj/project.pbxproj: Updated for removed and added files. 4225 Sorted files. 4226 4227 * bridge/mac/FrameMac.mm: Removed unneeded include of WebCoreGraphicsBridge.h. 4228 4229 * platform/mac/ClipboardMac.mm: (WebCore::ClipboardMac::setDragImage): 4230 Moved code from WebGraphicsBridge here, using WebCoreSystemInterface so we can 4231 call wkSetDragImage. 4232 4233 * platform/mac/GraphicsContextMac.mm: (WebCore::GraphicsContext::drawFocusRing): 4234 Moved code from WebGraphicsBridge here, using WebCoreSystemInterface so we can 4235 call wkDrawFocusRing. 4236 4237 * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::paintTextField): 4238 Call wkDrawBezeledTextFieldCell from WebCoreSystemInterface instead of using 4239 WebGraphicsBridge to do the same thing. 4240 4241 2006-04-20 Adele Peterson <adele (a] apple.com> 4242 4243 Reviewed by Hyatt. 4244 4245 Fix for http://bugs.webkit.org/show_bug.cgi?id=8273 4246 REGRESSION: Read only input text field renders at the wrong height when value attribute is not present 4247 4248 Test: fast/forms/input-readonly-empty.html 4249 4250 * rendering/RenderBlock.h: Added hasLineIfEmpty. 4251 * rendering/RenderBlock.cpp: 4252 (WebCore::RenderBlock::hasLineIfEmpty): Added. Checks for rootEditableElement as well as 4253 a shadowNode who has an input element as a parent. 4254 (WebCore::RenderBlock::getBaselineOfLastLineBox): Calls hasLineIfEmpty instead of just checking for the rootEditableElement. 4255 * rendering/bidi.cpp: (WebCore::RenderBlock::layoutInlineChildren): ditto. 4256 4257 2006-04-20 Darin Adler <darin (a] apple.com> 4258 4259 Reviewed by Timothy. 4260 4261 Removed TO_NODE_OFFSET and TO_NODE_ADDRESS macros. These can just be done inline with pointer math. 4262 4263 * platform/DeprecatedString.cpp: 4264 (allocateNode): 4265 (freeHandle): 4266 4267 2006-04-19 Adele Peterson <adele (a] apple.com> 4268 4269 Rubber-stamped by Darin. 4270 4271 Removed optimizations recently added in setInnerHTML and setInnerText. The setInnerHTML change broke a first-letter style test. 4272 The setInnerText change caused an empty text node to get added when setting inner text to an empty string. The bug that this 4273 change went in with remains fixed. 4274 4275 * html/HTMLElement.cpp: 4276 (WebCore::HTMLElement::setInnerHTML): 4277 (WebCore::HTMLElement::setInnerText): 4278 4279 2006-04-19 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 4280 4281 Reviewed by Haytt. 4282 4283 - fix http://bugs.webkit.org/show_bug.cgi?id=6770 4284 REGRESSION: Incomplete repaint when block with clipping grows 4285 4286 * manual-tests/repaint-resized-overflow.html: Added. 4287 * rendering/RenderLayer.cpp: 4288 (WebCore::RenderLayer::RenderLayer): 4289 (WebCore::RenderLayer::computeRepaintRects): Set the m_repaintOverflowOnResize 4290 flag to true if our object itself needs layout or if we're an overflow 4291 and have a normal child that needs layout, in which case if we end up 4292 resizing it will be because of the child, and that child might have not repainted 4293 itself correctly during its own layout. 4294 (WebCore::RenderLayer::updateLayerPositions): Do a full repaint if 4295 m_repaintOverflowOnResize is set and we resized but didn't move. 4296 * rendering/RenderLayer.h: 4297 4298 2006-04-19 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 4299 4300 Reviewed by Hyatt. 4301 4302 - fix http://bugs.webkit.org/show_bug.cgi?id=8352 4303 CSS text-shadow does not repaint completely when changed 4304 4305 * manual-tests/dynamic-shadow.html: Added. 4306 * rendering/render_style.cpp: 4307 (WebCore::RenderStyle::diff): Changed to return Layout when text-shadow 4308 changes. 4309 4310 2006-04-19 Adele Peterson <adele (a] apple.com> 4311 4312 Reviewed by Darin. 4313 4314 Added readOnly methods for HTMLInputElement and HTMLTextAreaElement so the DOM bindings can call 4315 a method with the same name. This will make it easier to autogenerate the DOM bindings in the future. 4316 4317 * html/HTMLInputElement.h: (WebCore::HTMLInputElement::readOnly): Added. Calls isReadOnlyControl. 4318 * html/HTMLTextAreaElement.h: (WebCore::HTMLTextAreaElement::readOnly): ditto. 4319 * bindings/js/kjs_html.cpp: 4320 (KJS::JSHTMLElement::inputGetter): Calls readOnly instead of isReadOnlyControl. 4321 (KJS::JSHTMLElement::textAreaGetter): ditto. 4322 * bindings/objc/DOMHTML.mm: 4323 (-[DOMHTMLInputElement readOnly]): ditto. 4324 (-[DOMHTMLTextAreaElement readOnly]): Calls readOnly instead of getting the attribute directly. 4325 (-[DOMHTMLTextAreaElement setReadOnly:]): Calls setReadOnly instead of setting the attribute directly. 4326 4327 2006-04-19 Adele Peterson <adele (a] apple.com> 4328 4329 Reviewed by Hyatt. 4330 4331 Fix for: http://bugs.webkit.org/show_bug.cgi?id=8297 4332 REGRESSION: Input element extends outside of DIV element at http://www.macdock.com/ 4333 4334 * platform/Font.h: Added runRounding parameter to floatWidth. 4335 * platform/mac/FontMac.mm: (WebCore::Font::floatWidth): ditto. 4336 * platform/win/FontWin.cpp: (WebCore::Font::floatWidth): ditto. 4337 * rendering/RenderTextField.cpp: (WebCore::RenderTextField::calcMinMaxWidth): 4338 Use new floatWidth parameter to turn off run rounding. 4339 4340 2006-04-19 Adele Peterson <adele (a] apple.com> 4341 4342 Reviewed by Beth. 4343 4344 Fix for Windows build. 4345 4346 * rendering/RenderThemeWin.cpp: (WebCore::RenderThemeWin::determineState): 4347 Use isReadOnlyControl instead of isReadOnly. 4348 4349 2006-04-19 Adele Peterson <adele (a] apple.com> 4350 4351 Reviewed by Beth. 4352 4353 Fix to make readonly text fields have dimmed borders to match AppKit behavior. 4354 4355 Test: fast/forms/input-readonly-dimmed.html 4356 4357 * dom/Node.h: (WebCore::Node::isReadOnlyControl): Changed from const version of isReadOnly. 4358 * dom/Node.cpp: 4359 (WebCore::Node::isReadOnlyNode): Changed from isReadOnly. 4360 (WebCore::Node::setNodeValue): Uses isReadOnlyNode instead of isReadOnly. 4361 (WebCore::Node::checkSetPrefix): ditto. 4362 (WebCore::Node::checkAddChild): ditto. 4363 * dom/Attr.cpp: (WebCore::Attr::setValue): ditto. 4364 * dom/CharacterData.cpp: 4365 (WebCore::CharacterData::setData): ditto. 4366 (WebCore::CharacterData::appendData): ditto. 4367 (WebCore::CharacterData::checkCharDataOperation): ditto. 4368 * dom/ContainerNode.cpp: (WebCore::ContainerNode::removeChild): ditto. 4369 * dom/Element.cpp: (WebCore::Element::setAttribute): ditto. 4370 * dom/NamedAttrMap.cpp: 4371 (WebCore::NamedAttrMap::setNamedItem): ditto. 4372 (WebCore::NamedAttrMap::removeNamedItem): ditto. 4373 * dom/NamedAttrMap.h: (WebCore::NamedAttrMap::isReadOnlyNode): ditto. 4374 * dom/NamedNodeMap.h: (WebCore::NamedNodeMap::isReadOnlyNode): ditto. 4375 * dom/Range.cpp: 4376 (WebCore::Range::checkDeleteExtract): ditto. 4377 (WebCore::Range::containedByReadOnly): ditto. 4378 * dom/Text.cpp: (WebCore::Text::splitText): ditto. 4379 * dom/dom_xmlimpl.cpp: (WebCore::ProcessingInstruction::setData): ditto. 4380 4381 * bindings/js/kjs_html.cpp: 4382 (KJS::JSHTMLElement::inputGetter): Uses isReadOnlyControl instead of isReadOnly. 4383 (KJS::JSHTMLElement::textAreaGetter): ditto. 4384 * bindings/objc/DOMHTML.mm: (-[DOMHTMLInputElement readOnly]): ditto. 4385 * rendering/render_form.cpp: 4386 (WebCore::RenderLineEdit::updateFromElement): ditto. 4387 (WebCore::RenderTextArea::updateFromElement): ditto. 4388 * rendering/RenderTextField.cpp: 4389 (WebCore::RenderTextField::createDivStyle): ditto. 4390 (WebCore::RenderTextField::updateFromElement): ditto. 4391 4392 * html/HTMLGenericFormElement.cpp: (WebCore::HTMLGenericFormElement::parseMappedAttribute): 4393 When readonly attribute changes, update the theme so the control will repaint. 4394 * html/HTMLGenericFormElement.h: (WebCore::HTMLGenericFormElement::isReadOnlyControl): Renamed from readOnly. 4395 * html/HTMLInputElement.h: Removed isReadOnly, since isReadOnlyControl now exists on HTMLGenericFormElement. 4396 * rendering/RenderTheme.cpp: (WebCore::RenderTheme::isReadOnlyControl): Renamed from isReadOnly. 4397 * rendering/RenderTheme.h: (WebCore::): Added ReadOnlyState to ControlState enum. 4398 * rendering/RenderThemeMac.h: Removed NSTextFieldCell since it was only being used to store the enabled state. 4399 Removed setTextFieldState since it was updating the enabled state of the cell, which is only used in one place. 4400 * rendering/RenderThemeMac.mm: 4401 (WebCore::RenderThemeMac::RenderThemeMac): No longer initialized the NSTextFieldCell. 4402 (WebCore::RenderThemeMac::adjustRepaintRect): No longer calls setTextFieldState. 4403 (WebCore::RenderThemeMac::paintTextField): Uses the enabled state and the readonly state to determine whether to draw 4404 a dimmed version of the aqua border. 4405 4406 2006-04-19 Beth Dakin <bdakin (a] apple.com> 4407 4408 Reviewed by Hyatt. 4409 4410 Fix for http://bugs.webkit.org/show_bug.cgi?id=8467 Block 4411 with percentage background-size doesn't repaint properly when it 4412 grows 4413 4414 * manual-tests/backgroundSizeRepaint.html: Added. 4415 * manual-tests/resources/apple.jpg: Added. 4416 * rendering/RenderObject.cpp: 4417 (WebCore::RenderObject::mustRepaintBackgroundOrBorder): We must 4418 return true if we have a percentage background-size. 4419 4420 2006-04-19 David Hyatt <hyatt (a] apple.com> 4421 4422 Fix for a regression in the new text fields. Don't allow the repaint 4423 rect created by dynamic line layout changes to spill out of an overflow 4424 area's clip region. 4425 4426 (There is no test, since we have no way of testing cases where we repaint 4427 too much rather than too little.) 4428 4429 Reviewed by darin 4430 4431 * rendering/bidi.cpp: 4432 (WebCore::RenderBlock::layoutInlineChildren): 4433 4434 2006-04-19 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 4435 4436 Fix for bug 8449, incomplete repaint of table cell that moved. This 4437 fix also solves some of the textfield repainting problems (e.g., on 4438 google.com and lxr.mozilla.org). 4439 4440 Reviewed by hyatt 4441 4442 * manual-tests/table-cell-move.html: Added. 4443 * rendering/RenderCanvas.cpp: 4444 (WebCore::RenderCanvas::repaintViewRectangle): 4445 * rendering/RenderTableSection.cpp: 4446 (WebCore::RenderTableSection::layoutRows): 4447 4448 2006-04-19 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 4449 4450 Reviewed by Eric, landed by ap. 4451 4452 - fix http://bugs.webkit.org/show_bug.cgi?id=8469 4453 CRASH: WebCore::CSSParser::parseDashboardRegions when attr() is passed 4454 4455 Test: fast/css/dashboard-regions-attr-crash.html 4456 4457 * css/cssparser.cpp: 4458 (WebCore::CSSParser::parseDashboardRegions): Added null check for args. 4459 4460 2006-04-18 Rob Buis <buis (a] kde.org> 4461 4462 Reviewed by eseidel & darin. Landed by eseidel. 4463 4464 No automated tests possible (from javascript). 4465 4466 Fix for http://bugs.webkit.org/show_bug.cgi?id=6664: 4467 Inspector does not highlight SVG elements properly 4468 4469 Make sure RenderObject::absoluteBoundingBoxRect works for 4470 svg specific render objects by overriding absoluteRects. 4471 This fixes highlighting in the Inspector of svg shapes, paths, 4472 images and text. 4473 4474 * kcanvas/RenderPath.cpp: 4475 (WebCore::RenderPath::absoluteRects): 4476 * kcanvas/RenderPath.h: 4477 * kcanvas/RenderSVGImage.cpp: 4478 (WebCore::RenderSVGImage::getAbsoluteRepaintRect): 4479 (WebCore::RenderSVGImage::absoluteRects): 4480 * kcanvas/RenderSVGImage.h: 4481 * kcanvas/RenderSVGText.cpp: 4482 (WebCore::RenderSVGText::absoluteRects): 4483 * kcanvas/RenderSVGText.h: 4484 4485 2006-04-17 Rob Buis <buis (a] kde.org> 4486 4487 Reviewed by eseidel. Landed by eseidel. 4488 4489 Test: svg/custom/tref-update.svg 4490 4491 Fix for http://bugs.webkit.org/show_bug.cgi?id=6427: 4492 <tref> element not implemented 4493 4494 Implementation of <tref> element. 4495 4496 * WebCore.xcodeproj/project.pbxproj: 4497 * ksvg2/svg/SVGTRefElement.cpp: Added. 4498 (SVGTRefElement::SVGTRefElement): 4499 (SVGTRefElement::~SVGTRefElement): 4500 (SVGTRefElement::parseMappedAttribute): 4501 (SVGTRefElement::closeRenderer): 4502 (SVGTRefElement::childShouldCreateRenderer): 4503 (SVGTRefElement::createRenderer): 4504 * ksvg2/svg/SVGTRefElement.h: Added. 4505 (WebCore::SVGTRefElement::rendererIsNeeded): 4506 * ksvg2/svg/SVGTSpanElement.cpp: 4507 (SVGTSpanElement::childShouldCreateRenderer): 4508 * ksvg2/svg/SVGTextElement.cpp: 4509 (WebCore::SVGTextElement::childShouldCreateRenderer): 4510 * ksvg2/svg/svgtags.in: 4511 4512 2006-04-18 Darin Adler <darin (a] apple.com> 4513 4514 * rendering/render_form.cpp: (WebCore::RenderSelect::updateFromElement): 4515 Roll out accidentally-landed change for bug 8398. 4516 4517 2006-04-18 Beth Dakin <bdakin (a] apple.com> 4518 4519 Reviewed by Darin. 4520 4521 Fix for a leak exposed by background-size and detected by the 4522 layout tests. 4523 4524 * css/css_valueimpl.cpp: 4525 (WebCore::CSSPrimitiveValue::cleanup): We must deref pairs. 4526 4527 2006-04-18 Beth Dakin <bdakin (a] apple.com> 4528 4529 Reviewed by Eric. 4530 4531 Build fix for Windows. Just a few typos from background-size patch. 4532 4533 * platform/cairo/GraphicsContextCairo.cpp: 4534 (WebCore::GraphicsContext::drawTiledImage): 4535 * platform/cairo/ImageCairo.cpp: 4536 (WebCore::Image::tileInRect): 4537 4538 2006-04-18 Beth Dakin <bdakin (a] apple.com> 4539 4540 Reviewed by Hyatt. 4541 4542 Implementation of CSS3 background-size property. See 4543 http://bugs.webkit.org/show_bug.cgi?id=8353 for details. 4544 4545 * Viewer/ImageView.cpp: Adjust parameters to drawTiledImage() 4546 * css/CSSComputedStyleDeclaration.cpp: Add background-size 4547 * css/CSSPropertyNames.in: Same. 4548 * css/css_valueimpl.h: Add a constructor for Pair that takes the 4549 two halves of the pair. 4550 * css/cssparser.cpp: Parse background-size. Still need to take care 4551 of parsing the shorthand. 4552 * css/cssparser.h: Same. 4553 * css/cssstyleselector.cpp: Address background-size. 4554 * css/cssstyleselector.h: Same. 4555 * platform/GraphicsContext.h: drawTiledImage() now takes the 4556 tileSize so that it can appropriately scale. 4557 * platform/Image.h: Same as above, but for tileInRect() 4558 * platform/cairo/GraphicsContextCairo.cpp: 4559 (WebCore::GraphicsContext::drawTiledImage): 4560 * platform/cairo/ImageCairo.cpp: 4561 (WebCore::Image::tileInRect): Take care of scaling image in 4562 necessary in Cairo. 4563 * platform/mac/GraphicsContextMac.mm: 4564 (WebCore::GraphicsContext::drawTiledImage): 4565 * platform/mac/ImageMac.mm: 4566 (WebCore::Image::tileInRect): Take care of scaling image if 4567 necessary in CG. 4568 * rendering/RenderBox.cpp: 4569 (WebCore::RenderBox::paintBackgroundExtended): Compute appropriate 4570 scale if background-size is set. If no-repeat is set, just call 4571 drawImage() directly. 4572 * rendering/render_style.cpp: Add background-size to the style. 4573 (WebCore::m_next): 4574 (WebCore::BackgroundLayer::BackgroundLayer): 4575 (WebCore::BackgroundLayer::operator=): 4576 (WebCore::BackgroundLayer::operator==): 4577 (WebCore::BackgroundLayer::fillUnsetProperties): 4578 (WebCore::BackgroundLayer::cullEmptyLayers): 4579 * rendering/render_style.h: Same. 4580 (WebCore::BackgroundLayer::backgroundSize): 4581 (WebCore::BackgroundLayer::isBackgroundSizeSet): 4582 (WebCore::BackgroundLayer::setBackgroundSize): 4583 (WebCore::BackgroundLayer::clearBackgroundSize): 4584 (WebCore::RenderStyle::backgroundSize): 4585 (WebCore::RenderStyle::initialBackgroundSize): 4586 4587 2006-04-17 Justin Garcia <justin.garcia (a] apple.com> 4588 4589 Reviewed by harrison 4590 4591 * editing/CompositeEditCommand.cpp: 4592 (WebCore::CompositeEditCommand::moveParagraph): The placeholder that's inserted 4593 to keep content from collapsing due to pruning was inserted at the position after 4594 the moved paragraph. That's only appropriate when moving the paragraph backward 4595 into the previous paragraph. 4596 4597 * editing/ReplaceSelectionCommand.cpp: 4598 (WebCore::ReplaceSelectionCommand::doApply): The last paragraph of the incoming 4599 fragment should be merged with the paragraph after the end of the selection being pasted 4600 into even if the incoming fragment has only one block. This fixes a bug and gets 4601 rid of a use of the info gathered during the test insertion. 4602 4603 2006-04-17 Adele Peterson <adele (a] apple.com> 4604 4605 Reviewed by Darin. 4606 4607 Fix for http://bugs.webkit.org/show_bug.cgi?id=8407 4608 REGRESSION (NativeTextField): Leading and trailing spaces trimmed from text field value attribute 4609 4610 Test: fast/forms/input-spaces.html 4611 4612 * rendering/RenderTextField.cpp: (WebCore::RenderTextField::createDivStyle): 4613 Use white-space:pre for the inner div to avoid collapsing spaces in the text field. 4614 4615 2006-04-18 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 4616 4617 Reviewed by Darin. 4618 4619 - fix http://bugs.webkit.org/show_bug.cgi?id=8437 4620 iExploder(#293): Crash in StringImpl::hash() 4621 4622 * manual-tests/applet-param-no-name.html: Added. 4623 * rendering/RenderApplet.cpp: 4624 (WebCore::RenderApplet::createWidgetIfNecessary): Skip param elements with 4625 empty name. 4626 4627 2006-04-18 Darin Adler <darin (a] apple.com> 4628 4629 - try to fix the Windows build 4630 4631 * platform/cairo/GraphicsContextCairo.cpp: (WebCore::setColor): 4632 Update for changes to getRGBA. 4633 4634 2006-04-17 Alexey Proskuryakov <ap (a] nypop.com> 4635 4636 Reviewed by Darin. 4637 4638 - fix http://bugs.webkit.org/show_bug.cgi?id=8440 4639 iExploder(#3327): Crash in StringImpl::initWithQChar() 4640 4641 Test: fast/parser/number-sign-in-map-name.html 4642 4643 * html/html_imageimpl.cpp: 4644 (WebCore::HTMLMapElement::parseMappedAttribute): Fixed handling of names starting with a '#'. 4645 4646 2006-04-17 Adele Peterson <adele (a] apple.com> 4647 4648 Reviewed by Darin. 4649 4650 Fix for: http://bugs.webkit.org/show_bug.cgi?id=8269 4651 REGRESSION: disabled text field does not display greyed-out text 4652 4653 * rendering/RenderTextField.cpp: (WebCore::RenderTextField::createDivStyle): 4654 For disabled text fields, lighten or darken text color based on background color. 4655 Tries to get as close as possible to logic in AppKit for old text fields. 4656 * platform/Color.h: Removed hsv and setHsv since they were just used within Color.cpp. 4657 * platform/Color.cpp: 4658 (WebCore::parseHexColor): Cleanup. 4659 (WebCore::differenceSquared): Added. Returns the difference squared of two colors. 4660 (WebCore::convertRGBToHSV): Added static function. Replaces hsv and setHSV, and fixes bug in old implementation of the algorithm. 4661 (WebCore::convertHSVToRGB): ditto. 4662 (WebCore::Color::light): No longer takes in a factor, since all callers use the same factor. Uses new conversion functions. 4663 (WebCore::Color::dark): ditto. 4664 * rendering/InlineTextBox.cpp: Removed simpleDifferenceBetweenColors. 4665 (WebCore::correctedTextColor): Uses differenceSquared instead of simpleDifferenceBetweenColors. 4666 4667 2006-04-17 David Hyatt <hyatt (a] apple.com> 4668 4669 Fix for bug 8270, text highlights outside of textfield when it shouldn't. 4670 4671 Reviewed by darin 4672 4673 Added fast/forms/input-double-click-selection-gap-bug.html 4674 4675 * rendering/RenderBlock.cpp: 4676 (WebCore::RenderBlock::fillInlineSelectionGaps): 4677 4678 2006-04-17 David Hyatt <hyatt (a] apple.com> 4679 4680 Fix for bug 8848, caret off by 1 pixel on numerous pixel tests. 4681 4682 Reviewed by darin 4683 4684 * rendering/InlineTextBox.cpp: 4685 (WebCore::InlineTextBox::positionForOffset): 4686 * rendering/RenderText.cpp: 4687 (WebCore::RenderText::caretRect): 4688 4689 2006-04-17 Timothy Hatcher <timothy (a] apple.com> 4690 4691 Reviewed by Darin. 4692 4693 <rdar://problem/4506601> TOT WebCore fails to build ppc64 4694 4695 Switch many CG calls to use CGFloat for colors and gradients 4696 4697 * bindings/objc/DOMCSS.mm: 4698 (-[DOMRGBColor dealloc]): cast _internal to uintptr_t 4699 (-[DOMRGBColor finalize]): cast _internal to uintptr_t 4700 (-[DOMRGBColor red]): cast _internal to uintptr_t 4701 (-[DOMRGBColor green]): cast _internal to uintptr_t 4702 (-[DOMRGBColor blue]): cast _internal to uintptr_t 4703 (-[DOMRGBColor alpha]): cast _internal to uintptr_t 4704 (-[DOMRGBColor _color]): cast _internal to uintptr_t 4705 * bridge/mac/FrameMac.mm: 4706 (WebCore::regExpForLabels): use CFIndex as the type returned from indexOfObject: 4707 * bridge/mac/WebCoreFrameBridge.mm: 4708 (-[WebCoreFrameBridge baseWritingDirectionForSelectionStart]): workaround for <rdar://problem/4509035> 4709 * config.h: define CGFloat if it isn't defined already 4710 * html/CanvasGradient.cpp: 4711 (WebCore::CanvasGradient::addColorStop): 4712 (WebCore::gradientCallback): 4713 (WebCore::CanvasGradient::platformShading): 4714 * html/CanvasRenderingContext2D.cpp: 4715 (WebCore::CanvasRenderingContext2D::setShadow): 4716 (WebCore::CanvasRenderingContext2D::applyShadow): 4717 (WebCore::CanvasRenderingContext2D::applyStrokePattern): 4718 (WebCore::CanvasRenderingContext2D::applyFillPattern): 4719 * html/CanvasStyle.cpp: 4720 (WebCore::CanvasStyle::applyStrokeColor): 4721 (WebCore::CanvasStyle::applyFillColor): 4722 * kcanvas/device/quartz/KCanvasFilterQuartz.mm: 4723 (WebCore::alphaImageForImage): 4724 (WebCore::KCanvasFEColorMatrixQuartz::getCIFilter): 4725 * kcanvas/device/quartz/KCanvasMaskerQuartz.mm: 4726 (WebCore::applyLuminanceToAlphaFilter): 4727 (WebCore::applyExpandAlphatoGrayscaleFilter): 4728 (WebCore::transformImageIntoGrayscaleMask): 4729 * kcanvas/device/quartz/KCanvasPathQuartz.mm: 4730 (WebCore::scratchContext): 4731 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm: 4732 (WebCore::cgGradientCallback): 4733 (WebCore::CGShadingRefForLinearGradient): 4734 (WebCore::CGShadingRefForRadialGradient): 4735 (WebCore::KRenderingPaintServerGradientQuartz::updateQuartzGradientStopsCache): 4736 * kcanvas/device/quartz/KRenderingPaintServerQuartz.h: 4737 (WebCore::): 4738 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm: 4739 (WebCore::KRenderingPaintServerPatternQuartz::setup): 4740 * kcanvas/device/quartz/QuartzSupport.mm: 4741 (WebCore::applyStrokeStyleToContext): 4742 * kwq/WebCoreAXObject.mm: 4743 (CreateCGColorIfDifferent): 4744 * platform/Color.cpp: 4745 (WebCore::Color::getRGBA): new name, was getRgbaF. getRGBA uses float and has a double overload 4746 * platform/Color.h: 4747 * platform/mac/ClipboardMac.h: no need to define NSDragOperation 4748 * platform/mac/ColorMac.mm: 4749 (+[WebCoreControlTintObserver WebCore]): 4750 * platform/mac/GraphicsContextMac.mm: 4751 (WebCore::GraphicsContext::drawLine): 4752 * platform/mac/ImageMac.mm: 4753 (WebCore::Image::checkForSolidColor): 4754 (WebCore::Image::tileInRect): 4755 (WebCore::Image::scaleAndTileInRect): 4756 * platform/mac/TextEncodingMac.cpp: 4757 (WebCore::TextEncoding::fromUnicode): 4758 4759 2006-04-17 Justin Garcia <justin.garcia (a] apple.com> 4760 4761 Reviewed by darin 4762 4763 <http://bugs.webkit.org/show_bug.cgi?id=8402> 4764 Fix interchange newline handling and avoid use of test rendering info 4765 4766 * editing/ReplaceSelectionCommand.cpp: 4767 (WebCore::ReplaceSelectionCommand::doApply): 4768 Fixed bugs in handling of interchange newlines at the end of incoming 4769 fragments. Removed the use of !fragment.isBlockFlow since it isn't 4770 correct and relies on information gathered during the test insertion, which 4771 we're trying to get rid of. 4772 * editing/VisiblePosition.h: 4773 (WebCore::VisiblePosition::rootEditableElement): Added for convenience. 4774 4775 2006-04-16 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 4776 4777 Reviewed by Darin. 4778 4779 - fix http://bugs.webkit.org/show_bug.cgi?id=8408 4780 Paint the highlight behind selected list markers 4781 4782 Test: fast/lists/markers-in-selection.html 4783 4784 * rendering/RenderObject.h: Added selectionColorImageOverlayAlpha constant - 4785 the maximum opacity of the selection color when painted over images. 4786 * rendering/render_list.cpp: 4787 (WebCore::RenderListMarker::RenderListMarker): 4788 (WebCore::RenderListMarker::paint): Paint the selection highlight 4789 if selected: over the marker for image markers, under the marker for all other 4790 markers. 4791 (WebCore::RenderListMarker::setSelectionState): Added. 4792 (WebCore::RenderListMarker::selectionRect): Added. 4793 (WebCore::RenderListMarker::selectionColor): Added. Ensures that the selection 4794 color is transparent for image markers. 4795 * rendering/render_list.h: 4796 (WebCore::RenderListMarker::selectionState): 4797 (WebCore::RenderListMarker::canBeSelectionLeaf): 4798 * rendering/render_replaced.cpp 4799 (WebCore::RenderReplaced::selectionColor): Changed to use the selectionColorImageOverlayAlpha 4800 constant. 4801 4802 2006-04-16 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 4803 4804 Reviewed by Darin. 4805 4806 - fix http://bugs.webkit.org/show_bug.cgi?id=8420 4807 iExploder(#12): Assertion failure in RenderContainer::removeChildNode 4808 4809 Test: fast/forms/button-inner-block-reuse.html 4810 4811 Buttons have a distinguished anonymous child that holds all their other 4812 descendants. Descendants ended up in a sibling anonymous block as the 4813 initial anonymous child was being reused to hold the initial part of an 4814 inline that got split. 4815 4816 * rendering/RenderInline.cpp: 4817 (WebCore::RenderInline::splitFlow): Check if the anonymous block's parent 4818 allows us to reuse it. 4819 * rendering/RenderObject.h: 4820 (WebCore::RenderObject::allowsReusingAnonymousChild): Added. Returns true. 4821 * rendering/render_button.h: 4822 (WebCore::RenderButton::allowsReusingAnonymousChild): Added. Returns false. 4823 4824 2006-04-16 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 4825 4826 Reviewed by Justin. 4827 4828 - fix http://bugs.webkit.org/show_bug.cgi?id=8394 4829 Editable region does not accept dropped text if there is no selection 4830 4831 Test: editing/pasteboard/drop-text-without-selection.html 4832 4833 * bridge/mac/WebCoreFrameBridge.mm: 4834 (-[WebCoreFrameBridge documentFragmentWithText:]): Changed to allow 4835 creating a fragment regardless of the selection. 4836 4837 2006-04-16 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 4838 4839 Reviewed by Darin. 4840 4841 - WebCore part of fix for http://bugs.webkit.org/show_bug.cgi?id=8324 4842 REGRESSION: textarea :focus not applied immediately 4843 4844 * bridge/mac/WebCoreFrameBridge.h: 4845 * kwq/KWQComboBox.mm: 4846 (-[KWQPopUpButton becomeFirstResponder]): Added call to formControlIsBecomingFirstResponder:. 4847 (-[KWQPopUpButton resignFirstResponder]): Cleaned up. 4848 * kwq/KWQListBox.mm: Ditto. 4849 (-[KWQTableView becomeFirstResponder]): 4850 (-[KWQTableView resignFirstResponder]): 4851 * kwq/KWQSlider.mm: 4852 (-[KWQSlider becomeFirstResponder]): Added call to formControlIsBecomingFirstResponder: and 4853 cleaned up. 4854 (-[KWQSlider resignFirstResponder]): Cleaned up. 4855 * platform/mac/WebCoreTextArea.mm: 4856 (-[WebCoreTextView becomeFirstResponder]): Added call to formControlIsBecomingFirstResponder:. 4857 (-[WebCoreTextView resignFirstResponder]): Cleaned up. 4858 * platform/mac/WebCoreTextField.mm: 4859 (-[KWQTextFieldController setHasFocus:]): Added call to formControlIsBecomingFirstResponder:. 4860 * manual-tests/textarea-focus.html: Added. 4861 4862 2006-04-16 Darin Adler <darin (a] apple.com> 4863 4864 Reviewed by Adele and Justin. 4865 4866 - fix http://bugs.webkit.org/show_bug.cgi?id=8298 4867 REGRESSION: Crash occurs when attempting to drag selection into 4868 Depart/Return input fields at http://www.travelocity.com/ 4869 - remove the mutation event listener that's installed all the time, 4870 since it slows things down a bit 4871 4872 Calling SelectionController::nodeWillBeRemoved from Document::notifyBeforeNodeRemoval 4873 fixes the crash, which was happening because the call that was removing the text 4874 node, removeChildren, does not send a "node removed" mutation event (it sends a 4875 "subtree modified" mutation event instead). So this change alone fixes the crash. 4876 4877 But I also changed setInnerText to not blow away the text node each time the value 4878 is changed, and that makes the test case behave even better -- you don't even lose 4879 the selection; it works as it did with the NSTextField-based text field. 4880 4881 * manual-tests/input-empty-on-focus.html: Added. 4882 4883 * page/Frame.h: Tweaked a few comments and functions related to selection. 4884 * page/Frame.cpp: (WebCore::Frame::dragCaret): Made non-const. 4885 4886 * dom/Document.cpp: (WebCore::Document::notifyBeforeNodeRemoval): 4887 Call nodeWillBeRemoved on the two selection controllers before removing 4888 a node from the document. 4889 4890 * editing/SelectionController.h: Tweak formatting. Remove MutationListener 4891 class and m_mutationListener field. 4892 * editing/SelectionController.cpp: 4893 (WebCore::SelectionController::SelectionController): Remove code to set up 4894 the mutation event listener. 4895 (WebCore::SelectionController::setSelection): Remove code to maintain the 4896 mutation event listener. 4897 4898 * html/HTMLElement.cpp: 4899 (WebCore::HTMLElement::setInnerHTML): In cases where the container has only a 4900 single child use replaceChild, and in cases where the HTML being inserted 4901 also has only a single child and both are text nodes use setData. It's common 4902 to use setInnerHTML to set something that's just text. 4903 (WebCore::HTMLElement::setInnerText): Same as above, but simpler since the 4904 thing we're replacing with is always text. 4905 4906 2006-04-16 Kevin Ollivier <kevino (a] theolliviers.com> 4907 4908 Reviewed by Darin. 4909 4910 - fix http://bugs.webkit.org/show_bug.cgi?id=8417 4911 make-css-file-arrays.pl hangs when run on Linux 4912 4913 * css/make-css-file-arrays.pl: Remove the "-" parameter from the invocation of cpp, 4914 which means "send output to stdout". It's optional on Mac OS X, and is causing a 4915 hang on Linux. 4916 * rendering/RenderArena.cpp: Added a missing include of <assert.h>. 4917 4918 2006-04-15 Darin Adler <darin (a] apple.com> 4919 4920 - removed references to a couple files that are obsolete 4921 but were still in the Windows project file 4922 4923 * WebCore.vcproj/WebCore/WebCore.vcproj: Remove kjs_views.h and .cpp. 4924 4925 2006-04-15 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 4926 4927 Reviewed by Maciej. 4928 4929 - fix http://bugs.webkit.org/show_bug.cgi?id=8405 4930 REGRESSION: Web Inspector's Style pane is blank 4931 4932 * bindings/js/kjs_window.cpp: 4933 (KJS::Window::isSafeScript): Use isEmpty() instead of isNull() for checking 4934 the domain to determine if the document in a local file. 4935 4936 2006-04-14 David Hyatt <hyatt (a] apple.com> 4937 4938 CSS vendor-specific property/value cleanup. Properly qualify background-clip, 4939 background-origin, border-image and the border-radius properties. Make sure 4940 our overflow extensions of marquee and overlay are qualified as well. Rename 4941 the -khtml- extension to -webkit. 4942 4943 Reviewed by beth 4944 4945 * bindings/js/kjs_css.cpp: 4946 (KJS::cssPropertyName): 4947 * bindings/objc/DOMCSS.mm: 4948 (-[DOMCSSStyleDeclaration _fontSizeDelta]): 4949 (-[DOMCSSStyleDeclaration _setFontSizeDelta:]): 4950 * bindings/objc/DOMHTML.mm: 4951 (-[DOMHTMLInputElement _setAutofilled:]): 4952 * bridge/mac/FrameMac.h: 4953 * bridge/mac/FrameMac.mm: 4954 * css/CSSComputedStyleDeclaration.cpp: 4955 (WebCore::): 4956 (WebCore::valueForTextAlign): 4957 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): 4958 * css/CSSGrammar.y: 4959 * css/CSSPropertyNames.in: 4960 * css/CSSValueKeywords.in: 4961 * css/css_base.cpp: 4962 (WebCore::CSSSelector::extractPseudoType): 4963 * css/css_valueimpl.cpp: 4964 (WebCore::): 4965 * css/css_valueimpl.h: 4966 * css/cssparser.cpp: 4967 (WebCore::CSSParser::parseRule): 4968 (WebCore::CSSParser::parseValue): 4969 (WebCore::CSSParser::parseColor): 4970 (WebCore::CSSParser::parseDeclaration): 4971 (WebCore::CSSParser::parseBackgroundShorthand): 4972 (WebCore::CSSParser::parseBackgroundColor): 4973 (WebCore::CSSParser::parseBackgroundProperty): 4974 (WebCore::CSSParser::parseFontFamily): 4975 (WebCore::CSSParser::parseShadow): 4976 * css/cssstyleselector.cpp: 4977 (WebCore::CSSStyleSelector::applyDeclarations): 4978 (WebCore::CSSStyleSelector::applyProperty): 4979 (WebCore::CSSStyleSelector::getColorFromPrimitiveValue): 4980 * css/cssstyleselector.h: 4981 * css/html4.css: 4982 * css/quirks.css: 4983 * css/tokenizer.flex: 4984 * editing/ApplyStyleCommand.cpp: 4985 (WebCore::StyleChange::init): 4986 (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange): 4987 (WebCore::ApplyStyleCommand::removeInlineStyle): 4988 * editing/CompositeEditCommand.cpp: 4989 (WebCore::blockPlaceholderClassString): 4990 * editing/JSEditor.cpp: 4991 * editing/ReplaceSelectionCommand.cpp: 4992 (WebCore::ReplaceSelectionCommand::fixupNodeStyles): 4993 (WebCore::styleForNode): 4994 * editing/htmlediting.cpp: 4995 (WebCore::rebalanceWhitespaceInTextNode): 4996 * html/HTMLElement.cpp: 4997 (WebCore::HTMLElement::addHTMLAlignment): 4998 (WebCore::HTMLElement::setContentEditable): 4999 * html/html_blockimpl.cpp: 5000 (WebCore::HTMLDivElement::parseMappedAttribute): 5001 (WebCore::HTMLParagraphElement::parseMappedAttribute): 5002 (WebCore::HTMLMarqueeElement::parseMappedAttribute): 5003 * html/html_inlineimpl.cpp: 5004 (WebCore::HTMLFontElement::parseMappedAttribute): 5005 * html/html_tableimpl.cpp: 5006 (WebCore::HTMLTablePartElement::parseMappedAttribute): 5007 (WebCore::HTMLTableCellElement::parseMappedAttribute): 5008 * page/Frame.cpp: 5009 (WebCore::Frame::canMouseDownStartSelect): 5010 * page/Frame.h: 5011 * rendering/RenderObject.cpp: 5012 (WebCore::RenderObject::draggableNode): 5013 5014 2006-04-14 Eric Seidel <eseidel (a] apple.com> 5015 5016 Reviewed by beth. 5017 5018 Fix win32 build. 5019 5020 * WebCore.vcproj/WebCore/WebCore.vcproj: 5021 * page/FramePrivate.h: 5022 5023 2006-04-04 Eric Seidel <eseidel (a] apple.com> 5024 5025 Reviewed by darin. 5026 5027 Fix build-warnings in cairo code. 5028 http://bugs.webkit.org/show_bug.cgi?id=8176 5029 5030 * platform/cairo/cairo/src/cairo-win32-surface.c: 5031 (_cairo_win32_print_gdi_error): 5032 (_cairo_win32_surface_create_for_dc): 5033 (_composite_alpha_blend): 5034 (cairo_win32_surface_create): 5035 * platform/cairo/pixman/src/iccolor.c: 5036 (pixman_pixel_to_color): 5037 5038 2006-04-14 David Hyatt <hyatt (a] apple.com> 5039 5040 Fix for 8333, make sure newlines in whitespace:pre (and friends) get 5041 line boxes created for them. This resolves all the weird selection/navigation 5042 issues that arise by not creating lines (and thus not having navigable positions 5043 on those lines). 5044 5045 This checkin is also removing all of the layout test hacks that have piled 5046 up, so layout test results are being regenerated completely. 5047 5048 Reviewed by eric 5049 5050 * dom/Position.cpp: 5051 (WebCore::Position::downstream): 5052 * editing/CompositeEditCommand.cpp: 5053 (WebCore::CompositeEditCommand::moveParagraph): 5054 * editing/DeleteSelectionCommand.cpp: 5055 (WebCore::DeleteSelectionCommand::doApply): 5056 * editing/visible_units.cpp: 5057 (WebCore::startOfParagraph): 5058 (WebCore::endOfParagraph): 5059 * kwq/RenderTreeAsText.cpp: 5060 (getTagName): 5061 (operator<<): 5062 * rendering/InlineTextBox.cpp: 5063 (WebCore::InlineTextBox::selectionState): 5064 (WebCore::InlineTextBox::isLineBreak): 5065 (WebCore::InlineTextBox::nodeAtPoint): 5066 (WebCore::InlineTextBox::paint): 5067 (WebCore::InlineTextBox::offsetForPosition): 5068 (WebCore::InlineTextBox::positionForOffset): 5069 * rendering/InlineTextBox.h: 5070 * rendering/RenderBR.cpp: 5071 * rendering/RenderBR.h: 5072 * rendering/RenderText.cpp: 5073 (WebCore::RenderText::atLineWrap): 5074 (WebCore::RenderText::caretRect): 5075 (WebCore::RenderText::height): 5076 (WebCore::RenderText::inlineBox): 5077 * rendering/bidi.cpp: 5078 (WebCore::RenderBlock::computeHorizontalPositionsForLine): 5079 (WebCore::RenderBlock::layoutInlineChildren): 5080 (WebCore::RenderBlock::findNextLineBreak): 5081 * rendering/render_line.h: 5082 (WebCore::InlineBox::isLineBreak): 5083 5084 2006-04-13 Darin Adler <darin (a] apple.com> 5085 5086 Reviewed by Geoff. 5087 5088 - moved a few things out of kwq and cleaned up the 5089 Java-applet-related renderers 5090 5091 * WebCore.vcproj/WebCore/WebCore.vcproj: Updated for file location 5092 and name changes. 5093 * WebCore.xcodeproj/project.pbxproj: Ditto. 5094 5095 * kwq/JavaAppletWidget.h: Moved. 5096 * kwq/JavaAppletWidget.mm: Moved. 5097 * kwq/RegularExpression.cpp: Moved. 5098 * kwq/RegularExpression.h: Moved. 5099 * kwq/RenderTreeAsText.cpp: Moved. 5100 * kwq/RenderTreeAsText.h: Moved. 5101 * rendering/render_applet.cpp: Moved. 5102 * rendering/render_applet.h: Moved. 5103 5104 * bridge/JavaAppletWidget.h: Moved here. 5105 * bridge/mac/JavaAppletWidget.mm: Moved here. 5106 * platform/RegularExpression.cpp: Moved here. 5107 * platform/RegularExpression.h: Moved here. 5108 * rendering/RenderTreeAsText.cpp: Moved here. 5109 * rendering/RenderTreeAsText.h: Moved here. 5110 5111 * rendering/RenderApplet.h: Moved here and made changes. 5112 Removed unused element() function. 5113 * rendering/RenderApplet.cpp: Moved here and made changes. 5114 (WebCore::RenderApplet::RenderApplet): Changed parameter type to 5115 be more precise (HTMLAppletElement). 5116 (WebCore::RenderApplet::intrinsicWidth): Removed unnecessary type 5117 cast and simplified. 5118 (WebCore::RenderApplet::intrinsicHeight): Ditto. 5119 (WebCore::RenderApplet::createWidgetIfNecessary): Straightened out 5120 the if statements and changed to use node() instead of element(). 5121 (WebCore::RenderApplet::layout): Removed unneeded check before 5122 calling createWidgetIfNecessary. 5123 5124 * rendering/RenderEmptyApplet.h: Moved here and made changes. 5125 Removed unneeded overrides of intrinsicWidth and intrinsicHeight. 5126 * rendering/RenderEmptyApplet.cpp: Moved here and made changes. 5127 (WebCore::RenderEmptyApplet::RenderEmptyApplet): Added code to 5128 set the intrinsic width and height. 5129 5130 * rendering/render_replaced.cpp: 5131 (WebCore::RenderWidget::RenderWidget): Initialize m_widget 5132 with contructor syntax. 5133 (WebCore::RenderWidget::paint): Changed _tx and _ty to be just 5134 tx and ty. Rearranged the code so the transparent wash will draw 5135 even if m_widget is 0. 5136 5137 * html/html_objectimpl.cpp: Update includes for new file names. 5138 5139 2006-04-12 Geoffrey Garen <ggaren (a] apple.com> 5140 5141 Reviewed by Darin. 5142 5143 - Fixed <rdar://problem/4478467> document.defaultView should return 5144 the window object 5145 5146 Also made part of the window object autogenerated by IDL file. 5147 5148 * DerivedSources.make: Added /page to IDL file search path, added 5149 JSDOMWindow.h, removed kjs_views.lut.h 5150 * WebCore.xcodeproj/project.pbxproj: Added missing files, removed 5151 obsolete files 5152 * bindings/js/kjs_dom.cpp: 5153 * bindings/js/kjs_events.cpp: 5154 * bindings/js/kjs_proxy.cpp: 5155 (WebCore::KJSProxy::initScriptIfNeeded): 5156 * bindings/js/kjs_views.cpp: Removed. 5157 * bindings/js/kjs_views.h: Removed. 5158 * bindings/js/kjs_window.cpp: Removed document property -- it now 5159 belongs to JSDOMWindow. Added toJS and toDOMWindow. 5160 (KJS::Window::Window): 5161 (KJS::Window::impl): 5162 (KJS::Window::getValueProperty): 5163 (KJS::Window::clear): Added call to setPrototype to ensure 5164 that the prototype gets cleared during navigation. (Previously 5165 this wasn't an issue because the window object had no real prototype.) 5166 (WebCore::toJS): 5167 (WebCore::toDOMWindow): 5168 * bindings/js/kjs_window.h: 5169 (KJS::Window::): 5170 * bindings/objc/DOMCSS.mm: Added NULL checks for the AbstractView 5171 (Presumably this is an issue after the window is closed.) Typedef-ed 5172 AbstractView as DOMWindow. I could have just replaced AbstractView 5173 with DOMWindow, but I think it's clearer to say, "There's this thing 5174 called the AbstractView, but really it's just the window." 5175 (-[DOMDocument getComputedStyle::]): 5176 (-[DOMDocument getMatchedCSSRules::]): 5177 * bindings/objc/DOMViews.mm: 5178 * bindings/objc/DOMViewsInternal.h: 5179 * bindings/scripts/CodeGeneratorJS.pm: Removed unused 5180 GetLegacyImplementationIncludes. Added support for DOMWindow and new 5181 "DoNotCache" attribute. Replaced C macros with text because (1) it 5182 makes the generated source easier to read and debug and (2) it made 5183 it much easier to implement the DoNotCache attribute. 5184 * bindings/scripts/IDLParser.pm: Return a hash reference instead of 5185 a hash, because otherwise an interface with more than one attribute 5186 returns too many arguments to be processed. 5187 * bridge/mac/FrameMac.mm: 5188 * dom/AbstractView.cpp: Removed. 5189 * dom/AbstractView.h: Removed. 5190 * dom/Document.cpp: 5191 (WebCore::Document::Document): 5192 (WebCore::Document::defaultView): 5193 * dom/Document.h: 5194 * dom/Document.idl: 5195 * dom/KeyboardEvent.idl: 5196 * dom/MouseEvent.idl: 5197 * dom/Position.cpp: 5198 * dom/UIEvent.idl: 5199 * dom/dom2_eventsimpl.h: 5200 * page/DOMWindow.cpp: Added. 5201 (WebCore::DOMWindow::DOMWindow): 5202 (WebCore::DOMWindow::frame): 5203 (WebCore::DOMWindow::disconnectFrame): 5204 (WebCore::DOMWindow::document): 5205 (WebCore::DOMWindow::getComputedStyle): 5206 (WebCore::DOMWindow::getMatchedCSSRules): 5207 * page/DOMWindow.h: Added. 5208 * page/DOMWindow.idl: Added. 5209 * page/Frame.cpp: 5210 (WebCore::Frame::~Frame): Disconnect the new DOMWindow object in 5211 addition to the Window object. Maybe we can unify this in the future. 5212 (WebCore::Frame::tree): 5213 (WebCore::Frame::domWindow): 5214 * page/Frame.h: 5215 * page/FramePrivate.h: 5216 5217 2006-04-13 Alexey Proskuryakov <ap (a] nypop.com> 5218 5219 Reviewed by Darin. 5220 5221 - fix http://bugs.webkit.org/show_bug.cgi?id=7602 5222 Only use fixupChar for entities 5223 5224 * html/HTMLTokenizer.cpp: Only use fixUpChar() when handling entities. 5225 (WebCore::HTMLTokenizer::parseSpecial): 5226 (WebCore::HTMLTokenizer::parseText): 5227 (WebCore::HTMLTokenizer::parseTag): 5228 (WebCore::HTMLTokenizer::write): 5229 * platform/StreamingTextDecoder.cpp: 5230 (WebCore::StreamingTextDecoder::convert): Remove the special case for Latin-1, because it is already handled 5231 via effectiveEncoding(). 5232 * platform/StreamingTextDecoder.h: Remove convertLatin1(). 5233 5234 2006-04-13 Darin Adler <darin (a] apple.com> 5235 5236 * platform/mac/GraphicsContextMac.mm: Fix one no-SVG compile problem by adding 5237 a "using namespace std". 5238 5239 2006-04-12 Darin Adler <darin (a] apple.com> 5240 5241 Rubber-stamped by Anders. 5242 5243 - fix Windows build 5244 5245 * WebCore.vcproj/Image\ Viewer/Image\ Viewer.vcproj: Add loader directory. 5246 5247 - use std::min/max exclusively intead of kMin/Max 5248 - eliminate KWQDef.h since all it had left in it was kMin/Max 5249 5250 * WebCore.vcproj/WebCore/WebCore.vcproj: Remove KWQDef.h. 5251 * WebCore.xcodeproj/project.pbxproj: Ditto. 5252 5253 * kwq/KWQDef.h: Removed. 5254 5255 * bridge/mac/FrameMac.mm: 5256 (WebCore::FrameMac::attributedString): 5257 * bridge/mac/WebCoreFrameBridge.mm: 5258 (-[WebCoreFrameBridge computePageRectsWithPrintWidthScaleFactor:printHeight:]): 5259 * css/cssstyleselector.cpp: 5260 (WebCore::CSSStyleSelector::applyProperty): 5261 (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize): 5262 (WebCore::CSSStyleSelector::fontSizeForKeyword): 5263 * dom/Document.cpp: 5264 (WebCore::Document::minimumLayoutDelay): 5265 (WebCore::Document::addMarker): 5266 * dom/StyledElement.cpp: 5267 (WebCore::StyledElement::addCSSColor): 5268 * dom/xml_tokenizer.cpp: 5269 (WebCore::OffsetBuffer::readOutBytes): 5270 * editing/ApplyStyleCommand.cpp: 5271 (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange): 5272 * editing/CompositeEditCommand.cpp: 5273 (WebCore::CompositeEditCommand::deleteInsignificantText): 5274 * editing/TextIterator.cpp: 5275 (WebCore::TextIterator::handleTextNode): 5276 (WebCore::TextIterator::handleTextBox): 5277 (WebCore::CharacterIterator::string): 5278 (WebCore::findPlainText): 5279 * editing/htmlediting.cpp: 5280 (WebCore::rangeCompliantEquivalent): 5281 * editing/markup.cpp: 5282 (WebCore::renderedText): 5283 * editing/visible_units.cpp: 5284 (WebCore::startOfParagraph): 5285 * html/HTMLSelectElement.cpp: 5286 (WebCore::HTMLSelectElement::parseMappedAttribute): 5287 * html/HTMLTokenizer.cpp: 5288 (WebCore::HTMLTokenizer::parseComment): 5289 (WebCore::HTMLTokenizer::parseEntity): 5290 (WebCore::HTMLTokenizer::parseTag): 5291 (WebCore::HTMLTokenizer::enlargeBuffer): 5292 (WebCore::HTMLTokenizer::enlargeScriptBuffer): 5293 * html/html_imageimpl.cpp: 5294 (WebCore::HTMLAreaElement::getRegion): 5295 * html/html_tableimpl.cpp: 5296 (WebCore::HTMLTableElement::parseMappedAttribute): 5297 * ksvg2/css/SVGCSSParser.cpp: 5298 (WebCore::CSSParser::parseSVGPaint): 5299 (WebCore::CSSParser::parseSVGColor): 5300 * kwq/KWQComboBox.mm: 5301 (QComboBox::sizeHint): 5302 * kwq/KWQListBox.mm: 5303 (QListBox::sizeForNumberOfLines): 5304 * kwq/KWQSlider.mm: 5305 (QSlider::setValue): 5306 * loader/Cache.cpp: 5307 (WebCore::Cache::setSize): 5308 * page/Frame.cpp: 5309 (WebCore::Frame::forceLayoutWithPageWidthRange): 5310 * platform/DeprecatedPtrListImpl.h: 5311 * platform/DeprecatedString.cpp: 5312 (ucstrcmp): 5313 * platform/DeprecatedString.h: 5314 * platform/DeprecatedValueListImpl.h: 5315 * platform/mac/GraphicsContextMac.mm: 5316 (WebCore::GraphicsContext::addRoundedRectClip): 5317 * platform/mac/WebCoreTextArea.mm: 5318 (-[WebCoreTextView _trackResizeFromMouseDown:]): 5319 * rendering/InlineTextBox.cpp: 5320 (WebCore::InlineTextBox::isSelected): 5321 (WebCore::InlineTextBox::selectionRect): 5322 (WebCore::InlineTextBox::placeEllipsisBox): 5323 (WebCore::InlineTextBox::selectionStartEnd): 5324 (WebCore::InlineTextBox::paintMarkedTextBackground): 5325 (WebCore::InlineTextBox::paintSpellingMarker): 5326 (WebCore::InlineTextBox::paintTextMatchMarker): 5327 (WebCore::InlineTextBox::paintMarkedTextUnderline): 5328 * rendering/RenderBlock.cpp: 5329 (WebCore::RenderBlock::overflowRect): 5330 (WebCore::RenderBlock::layoutBlock): 5331 (WebCore::RenderBlock::collapseMargins): 5332 (WebCore::RenderBlock::clearFloatsIfNeeded): 5333 (WebCore::RenderBlock::estimateVerticalPosition): 5334 (WebCore::RenderBlock::determineHorizontalPosition): 5335 (WebCore::RenderBlock::setCollapsedBottomMargin): 5336 (WebCore::RenderBlock::handleBottomOfBlock): 5337 (WebCore::RenderBlock::layoutBlockChildren): 5338 (WebCore::RenderBlock::fillVerticalSelectionGap): 5339 (WebCore::RenderBlock::fillLeftSelectionGap): 5340 (WebCore::RenderBlock::fillRightSelectionGap): 5341 (WebCore::RenderBlock::positionNewFloats): 5342 (WebCore::RenderBlock::nearestFloatBottom): 5343 (WebCore::RenderBlock::lowestPosition): 5344 (WebCore::RenderBlock::rightmostPosition): 5345 (WebCore::RenderBlock::leftmostPosition): 5346 (WebCore::RenderBlock::getClearDelta): 5347 (WebCore::RenderBlock::calcMinMaxWidth): 5348 (WebCore::RenderBlock::calcInlineMinMaxWidth): 5349 (WebCore::RenderBlock::calcBlocminMaxWidth): 5350 * rendering/RenderBlock.h: 5351 * rendering/RenderBox.cpp: 5352 (WebCore::RenderBox::calcBorderBoxWidth): 5353 (WebCore::RenderBox::calcBorderBoxHeight): 5354 (WebCore::RenderBox::calcContentBoxWidth): 5355 (WebCore::RenderBox::calcContentBoxHeight): 5356 (WebCore::RenderBox::paintRootBoxDecorations): 5357 (WebCore::RenderBox::paintBoxDecorations): 5358 (WebCore::RenderBox::calcWidth): 5359 (WebCore::RenderBox::calcWidthUsing): 5360 (WebCore::RenderBox::calcHeight): 5361 (WebCore::RenderBox::calcPercentageHeight): 5362 (WebCore::RenderBox::calcReplacedWidth): 5363 (WebCore::RenderBox::calcReplacedHeight): 5364 (WebCore::RenderBox::calcAbsoluteHorizontalValues): 5365 (WebCore::RenderBox::calcAbsoluteVerticalValues): 5366 * rendering/RenderCanvas.cpp: 5367 (WebCore::RenderCanvas::layout): 5368 * rendering/RenderFlexibleBox.cpp: 5369 (WebCore::RenderFlexibleBox::calcMinMaxWidth): 5370 (WebCore::RenderFlexibleBox::layoutHorizontalBox): 5371 (WebCore::RenderFlexibleBox::layoutVerticalBox): 5372 (WebCore::RenderFlexibleBox::allowedChildFlex): 5373 * rendering/RenderFlow.cpp: 5374 (WebCore::RenderFlow::paintLines): 5375 (WebCore::RenderFlow::lowestPosition): 5376 (WebCore::RenderFlow::rightmostPosition): 5377 (WebCore::RenderFlow::leftmostPosition): 5378 (WebCore::RenderFlow::paintOutlineForLine): 5379 * rendering/RenderImage.cpp: 5380 (WebCore::RenderImage::imageChanged): 5381 (WebCore::RenderImage::calcReplacedWidth): 5382 (WebCore::RenderImage::calcReplacedHeight): 5383 * rendering/RenderLayer.cpp: 5384 (WebCore::RenderLayer::scrollRectToVisible): 5385 (WebCore::RenderLayer::computeScrollDimensions): 5386 (WebCore::RenderLayer::updateScrollInfoAfterLayout): 5387 (WebCore::RenderLayer::absoluteBoundingBox): 5388 (WebCore::Marquee::marqueeSpeed): 5389 (WebCore::Marquee::computePosition): 5390 (WebCore::Marquee::timerFired): 5391 * rendering/RenderObject.cpp: 5392 (WebCore::RenderObject::drawBorder): 5393 (WebCore::RenderObject::paintBorderImage): 5394 (WebCore::RenderObject::paintBorder): 5395 (WebCore::RenderObject::repaintAfterLayoutIfNeeded): 5396 * rendering/RenderTable.cpp: 5397 (WebCore::RenderTable::calcWidth): 5398 (WebCore::RenderTable::layout): 5399 (WebCore::RenderTable::paintBoxDecorations): 5400 * rendering/RenderTableCell.cpp: 5401 (WebCore::RenderTableCell::paintBackgroundsBehindCell): 5402 * rendering/RenderTableSection.cpp: 5403 (WebCore::RenderTableSection::layoutRows): 5404 (WebCore::RenderTableSection::lowestPosition): 5405 (WebCore::RenderTableSection::rightmostPosition): 5406 (WebCore::RenderTableSection::leftmostPosition): 5407 * rendering/RenderText.cpp: 5408 (WebCore::RenderText::caretRect): 5409 (WebCore::RenderText::calcMinMaxWidth): 5410 (WebCore::RenderText::minXPos): 5411 (WebCore::RenderText::width): 5412 (WebCore::RenderText::caretMinOffset): 5413 (WebCore::RenderText::caretMaxOffset): 5414 * rendering/bidi.cpp: 5415 (WebCore::RenderBlock::computeHorizontalPositionsForLine): 5416 (WebCore::RenderBlock::layoutInlineChildren): 5417 (WebCore::RenderBlock::checkLinesForOverflow): 5418 * rendering/render_form.cpp: 5419 (WebCore::RenderLineEdit::setSelectionStart): 5420 (WebCore::RenderLineEdit::setSelectionEnd): 5421 (WebCore::RenderLineEdit::setSelectionRange): 5422 (WebCore::RenderFieldset::layoutLegend): 5423 (WebCore::RenderFieldset::paintBoxDecorations): 5424 (WebCore::RenderSelect::layout): 5425 (WebCore::RenderTextArea::calcMinMaxWidth): 5426 (WebCore::RenderSlider::updateFromElement): 5427 * rendering/render_frames.cpp: 5428 (WebCore::RenderFrameSet::layout): 5429 * rendering/render_line.cpp: 5430 (WebCore::InlineFlowBox::placeBoxesHorizontally): 5431 (WebCore::InlineFlowBox::verticallyAlignBoxes): 5432 (WebCore::InlineFlowBox::adjustMaxAscentAndDescent): 5433 (WebCore::InlineFlowBox::placeBoxesVertically): 5434 (WebCore::InlineFlowBox::paintBackgroundAndBorder): 5435 * rendering/render_line.h: 5436 (WebCore::RootInlineBox::selectionHeight): 5437 * rendering/render_list.cpp: 5438 (WebCore::RenderListItem::positionListMarker): 5439 * rendering/render_replaced.cpp: 5440 (WebCore::RenderReplaced::shouldPaint): 5441 * rendering/table_layout.cpp: 5442 (WebCore::FixedTableLayout::calcMinMaxWidth): 5443 (WebCore::AutoTableLayout::recalcColumn): 5444 (WebCore::AutoTableLayout::calcMinMaxWidth): 5445 (WebCore::AutoTableLayout::calcEffectiveWidth): 5446 (WebCore::AutoTableLayout::layout): 5447 Use min/max instead of kMin/kMax. 5448 5449 2006-04-12 Darin Adler <darin (a] apple.com> 5450 5451 Rubber-stamped by Anders. 5452 5453 - get ready for some more de-KWQ-ing done by the renaming script in two ways 5454 1) stop using forwarding headers for things within WebCore 5455 2) remove a bit of unused stuff 5456 5457 * loader/CachedImage.h: 5458 * loader/CachedImage.cpp: 5459 * loader/DocLoader.cpp: 5460 * loader/DocLoader.h: 5461 * page/Frame.cpp: 5462 * xml/XSLTProcessor.cpp: 5463 Removed unused showAnimations functions and data. We can add back later if we need it. 5464 And if we do, we won't use a typedef from KHTMLSettings. 5465 5466 * ForwardingHeaders/java: Removed. 5467 * ForwardingHeaders/java/kjavaappletwidget.h: Removed. 5468 * ForwardingHeaders/khtml_settings.h: Removed. 5469 * ForwardingHeaders/kio: Removed. 5470 * ForwardingHeaders/kio/global.h: Removed. 5471 * ForwardingHeaders/ksslkeygen.h: Removed. 5472 * ForwardingHeaders/q3ptrlist.h: Removed. 5473 * ForwardingHeaders/q3valuelist.h: Removed. 5474 * ForwardingHeaders/qcombobox.h: Removed. 5475 * ForwardingHeaders/qfontmetrics.h: Removed. 5476 * ForwardingHeaders/qlineedit.h: Removed. 5477 * ForwardingHeaders/qmatrix.h: Removed. 5478 * ForwardingHeaders/qptrlist.h: Removed. 5479 * ForwardingHeaders/qptrqueue.h: Removed. 5480 * ForwardingHeaders/qregexp.h: Removed. 5481 * ForwardingHeaders/qscrollbar.h: Removed. 5482 * ForwardingHeaders/qtextedit.h: Removed. 5483 * ForwardingHeaders/qtextstream.h: Removed. 5484 * ForwardingHeaders/qvaluelist.h: Removed. 5485 * ForwardingHeaders/qwmatrix.h: Removed. 5486 5487 * WebCore+SVG/DOMList.h: 5488 * bindings/js/kjs_dom.cpp: 5489 * bindings/js/kjs_dom.h: 5490 * bindings/js/kjs_window.cpp: 5491 * css/css_stylesheetimpl.h: 5492 * css/css_valueimpl.cpp: 5493 * css/css_valueimpl.h: 5494 * css/cssstyleselector.cpp: 5495 * dom/CharacterData.cpp: 5496 * dom/Document.cpp: 5497 * dom/Document.h: 5498 * dom/EventTargetNode.cpp: 5499 * dom/Node.cpp: 5500 * editing/BreakBlockquoteCommand.h: 5501 * editing/htmlediting.cpp: 5502 * html/FormDataList.h: 5503 * html/HTMLKeygenElement.cpp: 5504 * html/HTMLTokenizer.h: 5505 * html/html_objectimpl.cpp: 5506 * kcanvas/KCanvasFilters.cpp: 5507 * kcanvas/KCanvasMatrix.cpp: 5508 * kcanvas/KCanvasMatrix.h: 5509 * kcanvas/KCanvasPath.cpp: 5510 * kcanvas/KCanvasPath.h: 5511 * kcanvas/KCanvasResources.cpp: 5512 * kcanvas/KCanvasTreeDebug.h: 5513 * kcanvas/RenderForeignObject.h: 5514 * kcanvas/RenderPath.h: 5515 * kcanvas/RenderSVGImage.h: 5516 * kcanvas/RenderSVGText.h: 5517 * kcanvas/device/KRenderingPaintServerGradient.cpp: 5518 * kcanvas/device/KRenderingPaintServerPattern.cpp: 5519 * kcanvas/device/KRenderingPaintServerSolid.cpp: 5520 * kcanvas/device/quartz/KCanvasItemQuartz.h: 5521 * kcanvas/device/quartz/KCanvasResourcesQuartz.h: 5522 * ksvg2/svg/SVGColor.cpp: 5523 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp: 5524 * ksvg2/svg/SVGDocument.h: 5525 * ksvg2/svg/SVGFEBlendElement.cpp: 5526 * ksvg2/svg/SVGFEColorMatrixElement.cpp: 5527 * ksvg2/svg/SVGFEComponentTransferElement.cpp: 5528 * ksvg2/svg/SVGFECompositeElement.cpp: 5529 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp: 5530 * ksvg2/svg/SVGFEDisplacementMapElement.cpp: 5531 * ksvg2/svg/SVGFEGaussianBlurElement.cpp: 5532 * ksvg2/svg/SVGFELightElement.cpp: 5533 * ksvg2/svg/SVGFEMergeElement.cpp: 5534 * ksvg2/svg/SVGFEOffsetElement.cpp: 5535 * ksvg2/svg/SVGFESpecularLightingElement.cpp: 5536 * ksvg2/svg/SVGFETileElement.cpp: 5537 * ksvg2/svg/SVGFETurbulenceElement.cpp: 5538 * ksvg2/svg/SVGFitToViewBox.cpp: 5539 * ksvg2/svg/SVGLengthList.cpp: 5540 * ksvg2/svg/SVGMatrix.h: 5541 * ksvg2/svg/SVGNumberList.cpp: 5542 * ksvg2/svg/SVGPreserveAspectRatio.cpp: 5543 * ksvg2/svg/SVGSVGElement.cpp: 5544 * ksvg2/svg/SVGStringList.cpp: 5545 * ksvg2/svg/SVGStyledElement.h: 5546 * ksvg2/svg/SVGStyledTransformableElement.cpp: 5547 * ksvg2/svg/SVGTransformable.cpp: 5548 * ksvg2/svg/SVGURIReference.h: 5549 * ksvg2/svg/svgpathparser.cpp: 5550 * kwq/KWQKHTMLSettings.h: 5551 * loader/Cache.h: 5552 * loader/CachedObject.h: 5553 * loader/Decoder.cpp: 5554 * loader/FormData.h: 5555 * loader/loader.h: 5556 * page/Frame.h: 5557 * page/FramePrivate.h: 5558 * platform/Font.cpp: 5559 * platform/SegmentedString.h: 5560 * platform/mac/FontMac.mm: 5561 * platform/mac/WebCoreTextField.mm: 5562 * rendering/RenderBlock.cpp: 5563 * rendering/RenderObject.cpp: 5564 * rendering/RenderTable.cpp: 5565 * rendering/RenderTableCell.cpp: 5566 * rendering/RenderTableCol.cpp: 5567 * rendering/RenderTableSection.cpp: 5568 * rendering/bidi.h: 5569 * rendering/break_lines.cpp: 5570 * rendering/render_applet.cpp: 5571 * rendering/render_form.cpp: 5572 * rendering/render_form.h: 5573 * rendering/render_frames.cpp: 5574 * rendering/render_style.h: 5575 * xml/xmlhttprequest.cpp: 5576 Updated includes. 5577 5578 * WebCore.xcodeproj/project.pbxproj: Resorted a couple things. 5579 5580 2006-04-12 Adele Peterson <adele (a] apple.com> 5581 5582 Reviewed by Darin and Tim O. 5583 5584 WebCore part of fix for: 5585 http://bugs.webkit.org/show_bug.cgi?id=8061 5586 REGRESSION: New text fields need to send callbacks used by autocomplete 5587 5588 Fix for: 5589 http://bugs.webkit.org/show_bug.cgi?id=8156 5590 FrameMac::submitForm is busted after Vector changes 5591 5592 * bindings/objc/DOMHTML.mm: 5593 (-[DOMHTMLInputElement _rectOnScreen]): Use boundingBox method so this no longer relies on an NSTextField. 5594 The old code is no longer needed because this method was used by autocomplete, and that was not enabled for password or search fields. 5595 (-[DOMHTMLInputElement _replaceCharactersInRange:withString:selectingFromIndex:]): New implementation that uses setValue and setSelectionRange 5596 instead of NSTextField specific code. 5597 (-[DOMHTMLInputElement _selectedRange]): Creates range by calling selectionStart and selectionEnd on the input element. 5598 (-[DOMHTMLInputElement _setAutofilled:]): Provides a way for the autofill code to set a flag on the input element so 5599 it knows when its value is set by autofill. This is how we change the background color. 5600 * bindings/objc/DOMPrivate.h: Removed _displayedValue, _setDisplayedValue, _setBackgroundColor since these are no 5601 longer needed for the new text field implementation, and aren't used for remaining NSView-style password and search fields. 5602 Added _setAutofilled method. 5603 * bridge/mac/FrameMac.h: Added virtual clearRecordedFormValues and recordFormValue. These were moved into Frame.cpp recently, which broke 5604 how Safari asked to add form values to the keychain. 5605 5606 * bridge/mac/FrameMac.mm: 5607 (WebCore::createNSDictionary): Added. Converts a hashmap to an NSDictionary for m_formValuesAboutToBeSubmitted. This is needed to fix the submit form bug. 5608 (WebCore::selectorForKeyEvent): Added. This helper function converts key events into selectors that the autocomplete code needs to know about. 5609 (WebCore::FrameMac::FrameMac): 5610 (WebCore::FrameMac::submitForm): Convert saved form and formValues into DOMElement and NSMutableDictionary. 5611 (WebCore::FrameMac::textFieldDidBeginEditing): Added so the input element can send this notification over the bridge. 5612 (WebCore::FrameMac::textFieldDidEndEditing): ditto. 5613 (WebCore::FrameMac::textDidChangeInTextField): ditto. 5614 (WebCore::FrameMac::doTextFieldCommandFromEvent): ditto. Also calls selectorForKeyEvent. 5615 (WebCore::FrameMac::textWillBeDeletedInTextField): ditto. 5616 * page/Frame.cpp: 5617 (WebCore::Frame::textFieldDidBeginEditing): ditto. 5618 (WebCore::Frame::textFieldDidEndEditing): ditto. 5619 (WebCore::Frame::textDidChangeInTextField): ditto. 5620 (WebCore::Frame::doTextFieldCommandFromEvent): ditto. 5621 (WebCore::Frame::textWillBeDeletedInTextField): ditto. 5622 * page/Frame.h: ditto. 5623 * platform/PlatformString.h: (WebCore::String::replace): Added to use an existing version of StringImpl::replace. 5624 5625 * rendering/RenderTextField.cpp: 5626 (WebCore::RenderTextField::setSelectionRange): Setting the selection here should close the typing command. 5627 (WebCore::RenderTextField::subtreeHasChanged): Calls textDidChangeInTextField. 5628 5629 * dom/Document.cpp: (WebCore::Document::setFocusNode): Calls dispatchFocusEvent and dispatchBlurEvent instead of directly dispatching the events. This gives the node a chance to do other work before dispatching the event. 5630 5631 * dom/EventTargetNode.cpp: 5632 (WebCore:: EventTargetNode::dispatchFocusEvent): Added. 5633 (WebCore:: EventTargetNode::dispatchBlurEvent): Added. 5634 * dom/EventTargetNode.h: 5635 5636 * html/HTMLInputElement.cpp: 5637 (WebCore::HTMLInputElement::init): initializes m_autofilled. 5638 (WebCore::HTMLInputElement::dispatchFocusEvent): Calls textFieldDidBeginEditing and then calls up to the base class 5639 (WebCore::HTMLInputElement::dispatchBlurEvent): Calls textFieldDidEndEditing and then calls up to the base class 5640 (WebCore::HTMLInputElement::defaultEventHandler): For keypress events, calls doTextFieldCommandFromEvent so the form delegate will 5641 have a chance to say whether or not it is going to handle the event. 5642 (WebCore::HTMLInputElement::isKeyboardFocusable): Uses isNonWidgetTextField instead of checking the inputType. 5643 (WebCore::HTMLInputElement::isMouseFocusable): ditto. 5644 (WebCore::HTMLInputElement::focus): ditto. 5645 (WebCore::HTMLInputElement::constrainValue): Uses isTextField instead of checking inputType. 5646 * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::submit): ditto. 5647 * html/HTMLInputElement.h: 5648 (WebCore::HTMLInputElement::isTextField): Added. Checks for TEXT, PASSWORD, and SEARCH 5649 (WebCore::HTMLInputElement::isNonWidgetTextField): Added. Checks for all converted controls. 5650 (WebCore::HTMLInputElement::autofilled): Added. 5651 (WebCore::HTMLInputElement::setAutofilled): Added. 5652 * html/HTMLTextFieldInnerElement.cpp: (WebCore::HTMLTextFieldInnerElement::defaultEventHandler): Uses isNonWidgetTextField instead of checking the inputType. 5653 5654 * editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::doApply): 5655 If the deletion is occuring in a text field, call textWillBeDeletedInTextField so the frame can 5656 call across the bridge to notify the form delegate. 5657 5658 * css/css_base.cpp: (WebCore::CSSSelector::extractPseudoType): Added autofill string for "-khtml-autofill". 5659 * css/css_base.h: (WebCore::CSSSelector::): Added PseudoAutofill to enum. 5660 * css/cssstyleselector.cpp: 5661 (WebCore::CSSStyleSelector::checkOneSelector): Added case for PseudoAutofill that checks the input element's autofilled flag. 5662 (WebCore::CSSStyleSelector::getColorFromPrimitiveValue): Changed -webkit-focus-ring-color to -khtml-focus-ring-color for consistency. 5663 * css/html4.css: Added background-color and background-image for input:-khtml-autofill style. 5664 Changed -webkit-focus-ring-color to -khtml-focus-ring-color for consistency. 5665 * css/CSSValueKeywords.in: ditto. 5666 * css/cssparser.cpp: 5667 (WebCore::CSSParser::parseValue): ditto. 5668 (WebCore::CSSParser::parseShadow): ditto. 5669 5670 2006-04-12 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 5671 5672 Reviewed by hyatt 5673 5674 - fix http://bugs.webkit.org/show_bug.cgi?id=4855 5675 List item's bullets fail to redraw correctly after their style is set with JavaScript 5676 5677 * manual-tests/list-marker-repaint.html: Added. 5678 * rendering/RenderBlock.cpp: 5679 (WebCore::RenderBlock::layoutBlock): Call positionListMarker() after laying out 5680 the children. 5681 (WebCore::RenderBlock::calcInlineMinMaxWidth): Call calcWidth() on the child 5682 if we are going to use its marginLeft() or marginRight(), which is if they are 5683 given as a percentage or if the child is a list marker. 5684 * rendering/RenderBlock.h: 5685 (WebCore::RenderBlock::positionListMarker): Added this virtual function which 5686 RenderListItem implements and which is called from layoutBlock(). 5687 * rendering/RenderFlow.cpp: 5688 (WebCore::RenderFlow::addFocusRingRects): Avoid adding focus rings around outside list 5689 markers. Previously it did not matter since the markers had zero width. 5690 * rendering/bidi.cpp: 5691 (WebCore::RenderBlock::findNextLineBreak): Outside list markers should not contribute 5692 to the line width, even now that they have width. 5693 * rendering/render_line.cpp: 5694 (WebCore::InlineFlowBox::placeBoxesHorizontally): Skip outside list markers. 5695 * rendering/render_list.cpp: 5696 (WebCore::RenderListItem::positionListMarker): Added. 5697 (WebCore::RenderListMarker::paint): Removed code that was used to right-align outside 5698 text markers, since that is achieved by margins now. 5699 (WebCore::RenderListMarker::calcMinMaxWidth): Changed the marker height to be the font height. 5700 Made the width of outside list markers non-zero and equal to the width of inside markers. 5701 Changed the width to include only the marker and not any padding. Increased the width of bullets 5702 by 2 to contain spillage due to antialiasing. 5703 (WebCore::RenderListMarker::calcWidth): Calculate horizontal margins. Padding that was 5704 previously included in the width is now part of the margins. 5705 (WebCore::RenderListMarker::getRelativeMarkerRect): Adjusted for the changes to width and 5706 margins. 5707 * rendering/render_list.h: 5708 5709 2006-04-12 Darin Adler <darin (a] apple.com> 5710 5711 Rubber-stamped by Hyatt. 5712 5713 - moved some more files out of KWQ to more-permanent homes 5714 5715 * WebCore.vcproj/WebCore/WebCore.vcproj: Updated for new locations. 5716 * WebCore.xcodeproj/project.pbxproj: Ditto. 5717 5718 * kwq/BlockExceptions.h: Removed. 5719 * kwq/BlockExceptions.mm: Removed. 5720 * kwq/ClipboardMac.h: Removed. 5721 * kwq/ClipboardMac.mm: Removed. 5722 * kwq/DeprecatedPtrList.h: Removed. 5723 * kwq/DeprecatedPtrListImpl.cpp: Removed. 5724 * kwq/DeprecatedPtrListImpl.h: Removed. 5725 * kwq/DeprecatedValueList.h: Removed. 5726 * kwq/DeprecatedValueListImpl.cpp: Removed. 5727 * kwq/DeprecatedValueListImpl.h: Removed. 5728 * kwq/WebCoreTextArea.h: Removed. 5729 * kwq/WebCoreTextArea.mm: Removed. 5730 * kwq/WebCoreTextField.h: Removed. 5731 * kwq/WebCoreTextField.mm: Removed. 5732 * platform/DeprecatedPtrList.h: Added. 5733 * platform/DeprecatedPtrListImpl.cpp: Added. 5734 * platform/DeprecatedPtrListImpl.h: Added. 5735 * platform/DeprecatedValueList.h: Added. 5736 * platform/DeprecatedValueListImpl.cpp: Added. 5737 * platform/DeprecatedValueListImpl.h: Added. 5738 * platform/mac/BlockExceptions.h: Added. 5739 * platform/mac/BlockExceptions.mm: Added. 5740 * platform/mac/ClipboardMac.h: Added. 5741 * platform/mac/ClipboardMac.mm: Added. 5742 * platform/mac/WebCoreTextArea.h: Added. 5743 * platform/mac/WebCoreTextArea.mm: Added. 5744 * platform/mac/WebCoreTextField.h: Added. 5745 * platform/mac/WebCoreTextField.mm: Added. 5746 5747 2006-04-12 David Harrison <harrison (a] apple.com> 5748 5749 Reviewed by Darin. 5750 5751 <rdar://problem/4386640> AX: AXPreviousSentenceStartTextMarkerForTextMarker does not respect paragraph boundary 5752 <rdar://problem/4414575> AX: Dictionary popup cannot find some words on Dictionary.app 5753 5754 AXPreviousSentenceStartTextMarkerForTextMarker failed to stop at the beginning a block because 5755 SimplifiedBackwardsTextIterator::handleNonTextNode() emitted a space when exiting the block. 5756 Fixed by emitting a newline instead. 5757 5758 Word boundary failed to stop at the beginning of a block because no character at all was emitted 5759 when leaving the block, because the exitNode was checking specific html tags to decide whether the 5760 node is block, but the node was xml. Fixed by using the node's renderer, if present. 5761 5762 (see related changes in WebKit) 5763 5764 Tests added: 5765 * editing/selection/extend-by-sentence-001.html: Added. 5766 * fast/dom/inner-text-001.html: Added. 5767 5768 * bridge/mac/WebCoreFrameBridge.h: 5769 * bridge/mac/WebCoreFrameBridge.mm: 5770 (-[WebCoreFrameBridge alterCurrentSelection:direction:granularity:]): 5771 Add sentence navigation/selection. 5772 5773 * editing/Selection.cpp: 5774 (WebCore::Selection::validate): 5775 Add sentence navigation/selection. 5776 5777 * editing/SelectionController.cpp: 5778 (WebCore::SelectionController::modifyExtendingRightForward): 5779 (WebCore::SelectionController::modifyMovingRightForward): 5780 (WebCore::SelectionController::modifyExtendingLeftBackward): 5781 (WebCore::SelectionController::modifyMovingLeftBackward): 5782 (WebCore::SelectionController::modify): 5783 Add sentence navigation/selection. 5784 5785 * editing/TextGranularity.h: 5786 (WebCore::): 5787 Add SentenceGranularity and SentenceBoundary. 5788 5789 * editing/TextIterator.cpp: 5790 (WebCore::isTableCell): 5791 (WebCore::shouldEmitTabBeforeNode): 5792 (WebCore::shouldEmitNewlineForNode): 5793 (WebCore::shouldEmitNewlinesBeforeAndAfterNode): 5794 (WebCore::shouldEmitExtraNewlineForNode): 5795 New utility functions that prefer renderers over html tag names. 5796 5797 (WebCore::TextIterator::handleNonTextNode): 5798 (WebCore::TextIterator::exitNode): 5799 (WebCore::SimplifiedBackwardsTextIterator::advance): 5800 Use new utility functions. 5801 5802 (WebCore::SimplifiedBackwardsTextIterator::handleNonTextNode): 5803 Use new utility functions. Also emit linefeed instead of space, 5804 so sentence parsing works across block boundaries. 5805 5806 (WebCore::SimplifiedBackwardsTextIterator::exitNode): 5807 Use new utility functions. 5808 5809 (WebCore::SimplifiedBackwardsTextIterator::emitNewline): 5810 Renamed from emitNewlineForBROrText because it is not always for BR or text. 5811 5812 * editing/TextIterator.h: 5813 Renamed emitNewlineForBROrText to emitNewline. 5814 5815 * editing/visible_units.cpp: 5816 * editing/visible_units.h: 5817 (WebCore::previousBoundary): 5818 (WebCore::nextBoundary): 5819 (WebCore::previousSentencePosition): 5820 (WebCore::nextSentencePosition): 5821 Add sentence navigation/selection. 5822 5823 2006-04-12 Darin Adler <darin (a] apple.com> 5824 5825 Rubber-stamped by Hyatt. 5826 5827 - moved Decoder and FormData classes into loader directory 5828 (Decoder, because it's part of the loading process. 5829 FormData, because it's used as a parameter when specifying 5830 what to load. Arguably either could be in page instead.) 5831 - moved Length.h from css to renderer, cause that's where Hyatt 5832 says it belongs 5833 5834 * WebCore.vcproj/WebCore/WebCore.vcproj: Updated for new locations. 5835 * WebCore.xcodeproj/project.pbxproj: Ditto. 5836 5837 * khtml: Removed. 5838 * loader/Decoder.cpp: Added. 5839 * loader/Decoder.h: Added. 5840 * loader/FormData.cpp: Added. 5841 * loader/FormData.h: Added. 5842 5843 * css/Length.h: Removed. 5844 * rendering/Length.h: Added. 5845 5846 * bridge/mac/WebCoreEncodings.mm: 5847 * dom/Document.h: 5848 * kwq/KWQFormData.mm: 5849 * loader/CachedXBLDocument.cpp: 5850 * loader/CachedXSLStyleSheet.cpp: 5851 * page/ResourceRequest.h: 5852 * platform/TransferJobInternal.h: 5853 * xml/xmlhttprequest.cpp: 5854 Updated includes. 5855 5856 2006-04-12 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 5857 5858 Reviewed by darin 5859 5860 - fix http://bugs.webkit.org/show_bug.cgi?id=8337 5861 Incomplete repaint of inlines' outline during editing 5862 5863 * manual-tests/inline-outline-repaint.html: Added. 5864 * rendering/RenderBlock.cpp: 5865 (WebCore::RenderBlock::layoutBlock): Add the maximal outline width to the 5866 inlines' repaint rect. 5867 5868 2006-04-12 Justin Garcia <justin.garcia (a] apple.com> 5869 5870 Reviewed by darin 5871 5872 <http://bugs.webkit.org/show_bug.cgi?id=8335> 5873 Implement execCommand(InsertHorizontalRule) 5874 5875 * editing/JSEditor.cpp: 5876 5877 2006-04-12 Darin Adler <darin (a] apple.com> 5878 5879 Rubber-stamped by Hyatt. 5880 5881 - moved xsl files into xml directory, removed xbl files (for now) 5882 5883 * WebCore.vcproj/WebCore/WebCore.vcproj: Updated for new locations. 5884 * WebCore.xcodeproj/project.pbxproj: Ditto. 5885 * khtml/xbl: Removed. 5886 * khtml/xsl: Removed. 5887 * xml/XSLStyleSheet.cpp: Added. 5888 * xml/XSLStyleSheet.h: Added. 5889 * xml/XSLTProcessor.cpp: Added. 5890 * xml/XSLTProcessor.h: Added. 5891 5892 2006-04-12 David Hyatt <hyatt (a] apple.com> 5893 5894 Fix for 5283, make sure overflow doesn't paint on top of positioned elements. 5895 5896 Reviewed by beth 5897 5898 * kwq/RenderTreeAsText.cpp: 5899 (writeLayers): 5900 * rendering/RenderLayer.cpp: 5901 (WebCore::RenderLayer::RenderLayer): 5902 (WebCore::RenderLayer::~RenderLayer): 5903 (WebCore::RenderLayer::addChild): 5904 (WebCore::RenderLayer::removeChild): 5905 (WebCore::RenderLayer::paintLayer): 5906 (WebCore::RenderLayer::hitTestLayer): 5907 (WebCore::RenderLayer::dirtyOverflowList): 5908 (WebCore::RenderLayer::updateOverflowList): 5909 (WebCore::RenderLayer::collectLayers): 5910 (WebCore::RenderLayer::shouldBeOverflowOnly): 5911 (WebCore::RenderLayer::styleChanged): 5912 * rendering/RenderLayer.h: 5913 (WebCore::RenderLayer::isOverflowOnly): 5914 (WebCore::RenderLayer::overflowList): 5915 5916 2006-04-12 Darin Adler <darin (a] apple.com> 5917 5918 * WebCore.xcodeproj/project.pbxproj: Turn SVG support back on. 5919 I accidentally checked in this file with SVG off last night. 5920 5921 2006-04-12 Darin Adler <darin (a] apple.com> 5922 5923 - try to fix Windows build 5924 5925 * platform/TransferJobInternal.h: Declare HANDLE. 5926 * platform/image-decoders/gif/GIFImageReader.h: Include GIFImageDecoder.h. 5927 * rendering/RenderThemeWin.h: Declare HANDLE and HMODULE. 5928 5929 2006-04-12 Darin Adler <darin (a] apple.com> 5930 5931 - another attempt to get things building 5932 5933 * bindings/js/kjs_proxy.cpp: Add "kjs_events.h" include, needed when not 5934 building SVG (so for Windows too). 5935 * editing/TextIterator.h: Add back include of Vector.h. 5936 5937 2006-04-11 Darin Adler <darin (a] apple.com> 5938 5939 - try to fix Windows build 5940 5941 * html/HTMLCollection.h: Add back include of Vector.h. 5942 * page/Frame.h: Ditto. 5943 * platform/Timer.h: Ditto. 5944 5945 - more changes for no-SVG (not working yet though) 5946 5947 * editing/CompositeEditCommand.h: Added css_valueimpl.h include. 5948 5949 2006-04-11 Darin Adler <darin (a] apple.com> 5950 5951 - try to fix no-SVG build 5952 5953 * kwq/RenderTreeAsText.cpp: Added back an include only needed for non-SVG. 5954 * rendering/RenderObject.h: Ditto. 5955 5956 2006-04-11 Darin Adler <darin (a] apple.com> 5957 5958 - try to fix Windows build 5959 5960 * ForwardingHeaders/kxmlcore/HashForward.h: Removed. 5961 * dom/xml_tokenizer.h: Include another header instead of HashForward.h. 5962 * loader/Cache.h: Ditto. 5963 * page/Page.h: Ditto. 5964 * platform/TransferJob.h: Ditto. 5965 5966 2006-04-11 Justin Garcia <justin.garcia (a] apple.com> 5967 5968 Reviewed by harrison 5969 5970 Fixes more instances of: 5971 <rdar://problem/3950559> 5972 CrashTracer: 2116 crashes in Mail at com.apple.WebCore: khtml::CompositeEditCommand::insertNodeAfter + 32 5973 5974 * editing/ReplaceSelectionCommand.cpp: 5975 (WebCore::ReplaceSelectionCommand::doApply): Do paragraph merging using moveParagraphs. 5976 5977 2006-04-11 Justin Garcia <justin.garcia (a] apple.com> 5978 5979 Reviewed by harrison 5980 5981 Some setup for work on paste performance. 5982 5983 * editing/CompositeEditCommand.cpp: 5984 (WebCore::CompositeEditCommand::moveParagraph): 5985 Moved code from mergeParagraphs so that it can be used in ReplaceSelectionCommand. 5986 * editing/CompositeEditCommand.h: 5987 * editing/DeleteSelectionCommand.cpp: 5988 (WebCore::DeleteSelectionCommand::mergeParagraphs): 5989 (WebCore::DeleteSelectionCommand::doApply): 5990 * editing/VisiblePosition.cpp: 5991 (WebCore::VisiblePosition::init): Put the code that chooses m_deepPosition into initDeepPosition. 5992 (WebCore::VisiblePosition::initDeepPosition): 5993 Fixed a bug: don't fall through to the code that's only for positions inside unrendered space between blocks when 5994 downstream() is a candidate. Added a comment about why the fall through code is necessary. 5995 * editing/VisiblePosition.h: 5996 5997 2006-04-11 John Sullivan <sullivan (a] apple.com> 5998 5999 Reviewed by Darin Adler. 6000 6001 - fixed <rdar://problem/4509328> highlight all matches hangs when searching for tab character on www.google.com (and others) 6002 6003 For reasons not yet completely understood, searching for a tab character on some pages (Google, Amazon) finds a match 6004 with a non-collapsed range but then claims that the end visible position of the match is the original start visible 6005 position of the search range. This was causing the highlightAllMatches code to loop forever. Fixed the loop by 6006 checking for the non-advancing search range explicitly. I'm going to track down a reduction of the bogus 6007 search-for-tab issue, and write that up as a separate bug (that bug is not a regression; you can "find" a tab on 6008 google in Tiger also). 6009 6010 * page/Frame.cpp: 6011 (WebCore::Frame::highlightAllMatchesForString): 6012 break the loop if the search range hasn't advanced 6013 6014 2006-04-10 Darin Adler <darin (a] apple.com> 6015 6016 Rubber-stamped by John Sullivan (except for pbxproj change). 6017 6018 - updated to use the new Forward.h and HashForward.h headers 6019 - moved the showTree debugging functions out of the WebCore 6020 namespace so they are easier to call from gdb, and renamed 6021 the showTree member functions so they don't get in the way; 6022 now you can do "call showTree(x)" in gdb and it just works 6023 - removed a lot of unneeded includes 6024 6025 * WebCore.xcodeproj/project.pbxproj: Fixed a lot of paths that 6026 were not relative to the enclosing group. 6027 6028 * ForwardingHeaders/kxmlcore/Forward.h: Added. 6029 * ForwardingHeaders/kxmlcore/HashForward.h: Added. 6030 * bindings/js/JSCanvasRenderingContext2DBase.cpp: 6031 * bindings/js/JSXMLHttpRequest.cpp: 6032 * bindings/js/JSXMLHttpRequest.h: 6033 * bindings/js/JSXSLTProcessor.h: 6034 * bindings/js/kjs_binding.h: 6035 * bindings/js/kjs_dom.cpp: 6036 * bindings/js/kjs_dom.h: 6037 * bindings/js/kjs_events.cpp: 6038 * bindings/js/kjs_events.h: 6039 * bindings/js/kjs_html.cpp: 6040 * bindings/js/kjs_navigator.cpp: 6041 * bindings/js/kjs_navigator.h: 6042 * bindings/js/kjs_proxy.cpp: 6043 * bindings/js/kjs_traversal.h: 6044 * bindings/js/kjs_window.cpp: 6045 * bindings/js/kjs_window.h: 6046 * bindings/objc/DOM.mm: 6047 * bindings/objc/DOMCSS.mm: 6048 * bindings/objc/DOMCore.h: 6049 * bindings/objc/DOMEvents.mm: 6050 * bindings/objc/DOMHTML.mm: 6051 * bindings/objc/DOMImplementationFront.h: 6052 * bindings/objc/DOMInternal.mm: 6053 * bindings/objc/DOMUtility.mm: 6054 * bindings/objc/DOMViews.mm: 6055 * bridge/BrowserExtension.h: 6056 * bridge/mac/BrowserExtensionMac.mm: 6057 * bridge/mac/FrameMac.h: 6058 * bridge/mac/FrameMac.mm: 6059 * bridge/mac/WebCoreFrameBridge.mm: 6060 * bridge/mac/WebCoreFrameNamespaces.mm: 6061 * bridge/mac/WebCoreJavaScript.mm: 6062 * bridge/win/PageWin.cpp: 6063 * css/CSSComputedStyleDeclaration.cpp: 6064 * css/css_base.h: 6065 * css/css_ruleimpl.h: 6066 * css/css_valueimpl.cpp: 6067 * css/cssparser.cpp: 6068 * css/cssparser.h: 6069 * css/cssstyleselector.cpp: 6070 * css/cssstyleselector.h: 6071 * dom/AbstractView.h: 6072 * dom/AtomicStringList.h: 6073 * dom/Attribute.cpp: 6074 * dom/Attribute.h: 6075 * dom/Comment.cpp: 6076 * dom/ContainerNode.cpp: 6077 * dom/DOMImplementation.cpp: 6078 * dom/DOMImplementation.h: 6079 * dom/Document.cpp: 6080 * dom/Document.h: 6081 * dom/Element.h: 6082 * dom/EventTargetNode.cpp: 6083 (WebCore::EventTargetNode::dump): 6084 (WebCore::forbidEventDispatch): 6085 (WebCore::allowEventDispatch): 6086 (WebCore::eventDispatchForbidden): 6087 * dom/EventTargetNode.h: 6088 (WebCore::EventTargetNode::postDispatchEventHandler): 6089 * dom/NamedAttrMap.h: 6090 * dom/Node.cpp: 6091 (WebCore::Node::showNode): 6092 (WebCore::Node::showTree): 6093 (WebCore::Node::showTreeAndMark): 6094 (showTree): 6095 * dom/Node.h: 6096 * dom/NodeList.cpp: 6097 * dom/NodeList.h: 6098 * dom/Position.cpp: 6099 (showTree): 6100 * dom/Position.h: 6101 * dom/Range.cpp: 6102 * dom/Range.h: 6103 * dom/StyledElement.cpp: 6104 * dom/StyledElement.h: 6105 * dom/dom2_eventsimpl.cpp: 6106 * dom/dom2_eventsimpl.h: 6107 * dom/dom2_traversalimpl.h: 6108 * dom/dom_xmlimpl.cpp: 6109 * dom/xml_tokenizer.cpp: 6110 * dom/xml_tokenizer.h: 6111 * editing/AppendNodeCommand.cpp: 6112 * editing/ApplyStyleCommand.cpp: 6113 * editing/ApplyStyleCommand.h: 6114 * editing/BreakBlockquoteCommand.cpp: 6115 * editing/CompositeEditCommand.cpp: 6116 * editing/CreateLinkCommand.cpp: 6117 * editing/DeleteFromTextNodeCommand.cpp: 6118 * editing/DeleteFromTextNodeCommand.h: 6119 * editing/DeleteSelectionCommand.cpp: 6120 * editing/EditCommand.cpp: 6121 * editing/EditCommand.h: 6122 * editing/HTMLInterchange.cpp: 6123 * editing/InsertIntoTextNodeCommand.cpp: 6124 * editing/InsertIntoTextNodeCommand.h: 6125 * editing/InsertLineBreakCommand.cpp: 6126 * editing/InsertNodeBeforeCommand.cpp: 6127 * editing/InsertParagraphSeparatorCommand.cpp: 6128 * editing/InsertTextCommand.cpp: 6129 * editing/JSEditor.cpp: 6130 * editing/JoinTextNodesCommand.cpp: 6131 * editing/MergeIdenticalElementsCommand.cpp: 6132 * editing/ModifySelectionListLevelCommand.cpp: 6133 * editing/MoveSelectionCommand.cpp: 6134 * editing/RebalanceWhitespaceCommand.h: 6135 * editing/RemoveCSSPropertyCommand.h: 6136 * editing/ReplaceSelectionCommand.cpp: 6137 * editing/ReplaceSelectionCommand.h: 6138 * editing/Selection.cpp: 6139 (WebCore::Selection::formatForDebugger): 6140 (WebCore::Selection::showTree): 6141 (showTree): 6142 * editing/Selection.h: 6143 * editing/SelectionController.cpp: 6144 (WebCore::SelectionController::formatForDebugger): 6145 (WebCore::SelectionController::showTree): 6146 (showTree): 6147 * editing/SelectionController.h: 6148 * editing/TextIterator.cpp: 6149 * editing/TextIterator.h: 6150 * editing/TypingCommand.cpp: 6151 * editing/TypingCommand.h: 6152 * editing/UnlinkCommand.cpp: 6153 * editing/VisiblePosition.cpp: 6154 (WebCore::isEqualIgnoringAffinity): 6155 (WebCore::VisiblePosition::formatForDebugger): 6156 (WebCore::VisiblePosition::showTree): 6157 (showTree): 6158 * editing/VisiblePosition.h: 6159 (WebCore::VisiblePosition::VisiblePosition): 6160 (WebCore::operator==): 6161 * editing/WrapContentsInDummySpanCommand.cpp: 6162 * editing/htmlediting.h: 6163 * editing/markup.cpp: 6164 * editing/markup.h: 6165 (WebCore::): 6166 * editing/visible_units.cpp: 6167 * html/CanvasGradient.cpp: 6168 * html/CanvasRenderingContext2D.h: 6169 * html/CanvasStyle.cpp: 6170 * html/CanvasStyle.h: 6171 * html/FormDataList.cpp: 6172 * html/FormDataList.h: 6173 * html/HTMLCollection.cpp: 6174 * html/HTMLCollection.h: 6175 * html/HTMLDocument.cpp: 6176 * html/HTMLDocument.h: 6177 * html/HTMLElement.cpp: 6178 * html/HTMLElementFactory.cpp: 6179 * html/HTMLElementFactory.h: 6180 * html/HTMLFormCollection.cpp: 6181 * html/HTMLFormElement.cpp: 6182 * html/HTMLFormElement.h: 6183 * html/HTMLInputElement.cpp: 6184 * html/HTMLParser.cpp: 6185 * html/HTMLSelectElement.cpp: 6186 * html/HTMLSelectElement.h: 6187 * html/HTMLTokenizer.cpp: 6188 * html/HTMLTokenizer.h: 6189 * html/html_baseimpl.cpp: 6190 * html/html_headimpl.h: 6191 * kcanvas/KCanvasCreator.cpp: 6192 * kcanvas/KCanvasFilters.h: 6193 * kcanvas/KCanvasPath.h: 6194 * kcanvas/KCanvasResources.h: 6195 * kcanvas/KCanvasTreeDebug.cpp: 6196 * kcanvas/RenderPath.cpp: 6197 * kcanvas/RenderPath.h: 6198 * kcanvas/device/KRenderingDevice.h: 6199 * kcanvas/device/KRenderingPaintServerGradient.h: 6200 * kcanvas/device/KRenderingPaintServerPattern.h: 6201 * kcanvas/device/KRenderingPaintServerSolid.h: 6202 * kcanvas/device/quartz/KCanvasFilterQuartz.mm: 6203 * kcanvas/device/quartz/KCanvasMaskerQuartz.h: 6204 * kcanvas/device/quartz/KCanvasResourcesQuartz.h: 6205 * kcanvas/device/quartz/KCanvasResourcesQuartz.mm: 6206 * kcanvas/device/quartz/KRenderingPaintServerQuartz.h: 6207 * khtml/misc/decoder.cpp: 6208 * khtml/misc/decoder.h: 6209 * khtml/xsl/XSLStyleSheet.cpp: 6210 * khtml/xsl/XSLTProcessor.cpp: 6211 * khtml/xsl/XSLTProcessor.h: 6212 * ksvg2/css/SVGRenderStyle.h: 6213 * ksvg2/ecma/GlobalObject.cpp: 6214 * ksvg2/misc/KCanvasRenderingStyle.h: 6215 * ksvg2/misc/SVGDocumentExtensions.h: 6216 * ksvg2/svg/SVGAngle.h: 6217 * ksvg2/svg/SVGAnimateColorElement.h: 6218 * ksvg2/svg/SVGAnimatedColor.h: 6219 * ksvg2/svg/SVGAnimatedLengthList.h: 6220 * ksvg2/svg/SVGAnimatedNumberList.h: 6221 * ksvg2/svg/SVGAnimatedString.h: 6222 * ksvg2/svg/SVGAnimatedTransformList.h: 6223 * ksvg2/svg/SVGAnimationElement.h: 6224 * ksvg2/svg/SVGColor.h: 6225 * ksvg2/svg/SVGCursorElement.h: 6226 * ksvg2/svg/SVGHelper.h: 6227 * ksvg2/svg/SVGLength.h: 6228 * ksvg2/svg/SVGList.h: 6229 * ksvg2/svg/SVGPaint.h: 6230 * ksvg2/svg/SVGPathSeg.h: 6231 * ksvg2/svg/SVGPatternElement.h: 6232 * ksvg2/svg/SVGSVGElement.cpp: 6233 * ksvg2/svg/SVGSVGElement.h: 6234 * ksvg2/svg/SVGStringList.h: 6235 * ksvg2/svg/SVGTransform.h: 6236 * kwq/AccessibilityObjectCache.mm: 6237 * kwq/ClipboardMac.mm: 6238 * kwq/JavaAppletWidget.mm: 6239 * kwq/KWQComboBox.mm: 6240 * kwq/KWQEditCommand.mm: 6241 * kwq/KWQFileButton.mm: 6242 * kwq/KWQKHTMLSettings.h: 6243 * kwq/KWQKSSLKeyGen.mm: 6244 * kwq/KWQLoader.mm: 6245 * kwq/KWQPageState.mm: 6246 * kwq/KWQTextEdit.mm: 6247 * kwq/RegularExpression.h: 6248 * kwq/RenderTreeAsText.cpp: 6249 * kwq/RenderTreeAsText.h: 6250 * kwq/WebCoreAXObject.mm: 6251 * loader/Cache.cpp: 6252 * loader/Cache.h: 6253 * loader/CachedCSSStyleSheet.cpp: 6254 * loader/CachedObject.h: 6255 * loader/CachedScript.cpp: 6256 * loader/CachedXBLDocument.cpp: 6257 * loader/CachedXBLDocument.h: 6258 * loader/CachedXSLStyleSheet.cpp: 6259 * loader/CachedXSLStyleSheet.h: 6260 * loader/DocLoader.cpp: 6261 * page/Frame.cpp: 6262 * page/Frame.h: 6263 * page/FramePrivate.h: 6264 * page/FrameTree.cpp: 6265 * page/FrameTree.h: 6266 * page/FrameView.cpp: 6267 * page/FrameView.h: 6268 * page/Page.cpp: 6269 * page/Page.h: 6270 * page/Plugin.h: 6271 (WebCore::Plugin::Plugin): 6272 (WebCore::Plugin::view): 6273 * platform/Color.cpp: 6274 * platform/FloatRect.h: 6275 * platform/Font.cpp: 6276 * platform/Font.h: 6277 * platform/FontFamily.cpp: 6278 * platform/GraphicsContext.cpp: 6279 * platform/Image.cpp: 6280 * platform/Image.h: 6281 * platform/IntRect.h: 6282 * platform/KURL.cpp: 6283 * platform/KURL.h: 6284 * platform/SegmentedString.h: 6285 * platform/Shared.h: 6286 * platform/StreamingTextDecoder.cpp: 6287 * platform/StringImpl.cpp: 6288 * platform/StringImpl.h: 6289 * platform/TextEncoding.h: 6290 * platform/Timer.cpp: 6291 * platform/Timer.h: 6292 * platform/TransferJob.cpp: 6293 * platform/TransferJob.h: 6294 * platform/TransferJobInternal.h: 6295 * platform/cairo/GraphicsContextCairo.cpp: 6296 * platform/cairo/ImageCairo.cpp: 6297 * platform/cairo/ImageSourceCairo.cpp: 6298 * platform/image-decoders/gif/GIFImageReader.cpp: 6299 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: 6300 * platform/mac/FontFamilyMac.mm: 6301 * platform/mac/FontMac.mm: 6302 * platform/mac/ImageMac.mm: 6303 * platform/mac/TextEncodingMac.cpp: 6304 * platform/mac/TransferJobMac.mm: 6305 * platform/win/FontPlatformDataWin.cpp: 6306 * platform/win/TransferJobWin.cpp: 6307 * rendering/RenderBlock.cpp: 6308 * rendering/RenderBlock.h: 6309 * rendering/RenderBox.cpp: 6310 * rendering/RenderBox.h: 6311 * rendering/RenderCanvas.cpp: 6312 * rendering/RenderCanvas.h: 6313 * rendering/RenderContainer.cpp: 6314 * rendering/RenderFlexibleBox.h: 6315 * rendering/RenderFlow.cpp: 6316 * rendering/RenderFlow.h: 6317 * rendering/RenderImage.cpp: 6318 * rendering/RenderImage.h: 6319 * rendering/RenderLayer.cpp: 6320 * rendering/RenderLayer.h: 6321 * rendering/RenderObject.cpp: 6322 (showTree): 6323 * rendering/RenderObject.h: 6324 * rendering/RenderTableCell.h: 6325 * rendering/RenderTableSection.h: 6326 * rendering/RenderText.cpp: 6327 * rendering/RenderText.h: 6328 * rendering/RenderTextField.cpp: 6329 * rendering/RenderTextFragment.h: 6330 * rendering/RenderTheme.h: 6331 * rendering/RenderThemeMac.mm: 6332 * rendering/RenderThemeWin.cpp: 6333 * rendering/bidi.cpp: 6334 * rendering/render_form.h: 6335 * rendering/render_line.cpp: 6336 (showTree): 6337 * rendering/render_line.h: 6338 * rendering/render_list.cpp: 6339 * rendering/render_replaced.cpp: 6340 * rendering/render_replaced.h: 6341 * rendering/render_style.cpp: 6342 * rendering/render_style.h: 6343 * xml/xmlhttprequest.h: 6344 6345 2006-04-10 Darin Adler <darin (a] apple.com> 6346 6347 - try to fix the Windows build 6348 6349 * WebCore.vcproj/WebCore/WebCore.vcproj: Fix mistaken bad editing of 6350 AdditionalIncludeDirectories. 6351 6352 2006-04-10 David Hyatt <hyatt (a] apple.com> 6353 6354 Make focus ring painting respect clips set by WebCore (e.g., overflow). 6355 6356 Reviewed by darin 6357 6358 * platform/GraphicsContext.h: 6359 * platform/mac/GraphicsContextMac.mm: 6360 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): 6361 (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate): 6362 (WebCore::GraphicsContext::setFocusRingClip): 6363 (WebCore::GraphicsContext::clearFocusRingClip): 6364 (WebCore::GraphicsContext::drawFocusRing): 6365 * platform/mac/WebCoreGraphicsBridge.h: 6366 * platform/mac/WebCoreGraphicsBridge.m: 6367 (-[WebCoreGraphicsBridge drawFocusRingWithPath:radius:color:clipRect:]): 6368 * rendering/RenderLayer.cpp: 6369 (WebCore::setClip): 6370 (WebCore::restoreClip): 6371 6372 2006-04-10 Darin Adler <darin (a] apple.com> 6373 6374 Reviewed by Geoff. 6375 6376 - death to khtml/ecma, long live bindings/js 6377 6378 * khtml/ecma: Removed. Moved all files to bindings/js. 6379 6380 * bindings/js/JSDOMParser.cpp: Added. 6381 * bindings/js/JSDOMParser.h: Added. 6382 * bindings/js/JSXMLHttpRequest.cpp: Added. 6383 * bindings/js/JSXMLHttpRequest.h: Added. 6384 * bindings/js/JSXMLSerializer.cpp: Added. 6385 * bindings/js/JSXMLSerializer.h: Added. 6386 * bindings/js/JSXSLTProcessor.cpp: Added. 6387 * bindings/js/JSXSLTProcessor.h: Added. 6388 * bindings/js/kjs_binding.cpp: Added. 6389 * bindings/js/kjs_binding.h: Added. 6390 * bindings/js/kjs_css.cpp: Added. 6391 * bindings/js/kjs_css.h: Added. 6392 * bindings/js/kjs_dom.cpp: Added. 6393 * bindings/js/kjs_dom.h: Added. 6394 * bindings/js/kjs_events.cpp: Added. 6395 * bindings/js/kjs_events.h: Added. 6396 * bindings/js/kjs_html.cpp: Added. 6397 * bindings/js/kjs_html.h: Added. 6398 * bindings/js/kjs_navigator.cpp: Added. 6399 * bindings/js/kjs_navigator.h: Added. 6400 * bindings/js/kjs_proxy.cpp: Added. 6401 * bindings/js/kjs_proxy.h: Added. 6402 * bindings/js/kjs_traversal.cpp: Added. 6403 * bindings/js/kjs_traversal.h: Added. 6404 * bindings/js/kjs_views.cpp: Added. 6405 * bindings/js/kjs_views.h: Added. 6406 * bindings/js/kjs_window.cpp: Added. 6407 * bindings/js/kjs_window.h: Added. 6408 6409 * DerivedSources.make: Removed khtml/ecma from directory list. 6410 * WebCore.vcproj/WebCore/WebCore.vcproj: Moved files from 6411 khtml/ecma to bindings/js. 6412 * WebCore.xcodeproj/project.pbxproj: Ditto. 6413 6414 2006-04-10 Darin Adler <darin (a] apple.com> 6415 6416 Reviewed by Geoff. 6417 6418 - try to fix the Windows build 6419 6420 * html/HTMLCanvasElement.cpp: (WebCore::HTMLCanvasElement::reset): 6421 Put code to release m_drawingContext into an __APPLE__ ifdef. 6422 6423 * platform/win/TemporaryLinkStubs.cpp: 6424 6425 2006-04-10 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 6426 6427 Reviewed by Eric, landed by ap. 6428 6429 - fix http://bugs.webkit.org/show_bug.cgi?id=8295 6430 Dictionary pop-up panel targets the wrong word in a scrolled IFRAME 6431 6432 * kwq/WebCoreAXObject.mm: 6433 (-[WebCoreAXObject doAXTextMarkerForPosition:]): Removed the addition of scroll 6434 offsets, which is redundant for scrolled views, then changed the first view 6435 to be the document's scrolled view instead of its scroll view (all subsequent views were 6436 already scrolled views). 6437 * manual-tests/dictionary-scrolled-iframe.html: Added. 6438 6439 2006-04-09 Alexey Proskuryakov <ap (a] nypop.com> 6440 6441 Reviewed by Darin. 6442 6443 - fix http://bugs.webkit.org/show_bug.cgi?id=7877 6444 XMLHttpRequest ignores username/password passed to open() 6445 6446 Test: http/tests/xmlhttprequest/basic-auth.html 6447 6448 * platform/KURL.cpp: 6449 (KURL::setUser): Enable a code path that handles non-empty user name - 6450 it was already present, but commented out and protected with an assertion. 6451 (KURL::setPass): Ditto. 6452 6453 2006-04-09 Darin Adler <darin (a] apple.com> 6454 6455 Reviewed by Anders. 6456 6457 - fix http://bugs.webkit.org/show_bug.cgi?id=4884 6458 Canvas element breaks when RenderObject creation is deferred by external CSS 6459 6460 Test: fast/canvas/canvas-before-css.html 6461 6462 This patch makes us match the canvas documentation in Hixie's Web Applications 6463 draft as far as when the canvas is created and recreated and how it's sized. 6464 It also gets rid of the compositeOperation attribute of the canvas element. 6465 We can add that back if we need it. Anders points out that this specifically 6466 changes behavior for canvas elements where the size is set in CSS and not with 6467 width and height attributes. The CSS size now determines how big a box the canvas 6468 is rendered into, but has no effect on the size of the canvas's buffer. 6469 6470 * html/CanvasRenderingContext2D.h: Added overloads of drawImage that take 6471 HTMLCanvasElement, which is no longer derived from HTMLImageElement. 6472 * html/CanvasRenderingContext2D.cpp: 6473 (WebCore::imageSize): Renamed from imageOrCanvasSize. Now used for images only, 6474 because canvas is no longer derived from image. 6475 (WebCore::CanvasRenderingContext2D::drawImage): Split the implementation of this 6476 for image sources from the implementation for canvas sources. 6477 (WebCore::CanvasRenderingContext2D::willDraw): Changed to call a new willDraw 6478 function on the canvas element. 6479 (WebCore::CanvasRenderingContext2D::drawingContext): Changed to call drawingContext 6480 on the canvas element rather than the renderer. 6481 6482 * html/HTMLCanvasElement.h: Changed HTMLCanvasElement to derive from HTMLElement 6483 instead of HTMLImageElement. Added width, height, setWidth, setHeight, willDraw, 6484 paint, drawingContext, createDrawingContext, and reset functions. Added m_size, 6485 m_createdDrawingContext, m_data, and m_drawingContext data members. Removed 6486 mapToEntry, attach, detach, and isURLAttribute functins. 6487 6488 * html/HTMLCanvasElement.cpp: 6489 (WebCore::HTMLCanvasElement::HTMLCanvasElement): Added initializers for new m_size, 6490 m_createdDrawingContext, m_data, and m_drawingContext data members. 6491 (WebCore::HTMLCanvasElement::~HTMLCanvasElement): Free m_data and m_drawingContext. 6492 (WebCore::HTMLCanvasElement::parseMappedAttribute): Got rid of special case for 6493 srcAttr, which is no longer needed since we aren't deriving from HTMLImageElement. 6494 Added code that triggers a reset when either width or height is set. 6495 (WebCore::HTMLCanvasElement::createRenderer): Added code to set the intrinsic 6496 width and height of the renderer to the size of the element. 6497 (WebCore::HTMLCanvasElement::setHeight): Added. Sets the height attribute. 6498 (WebCore::HTMLCanvasElement::setWidth): Added. Sets the width attribute. 6499 (WebCore::HTMLCanvasElement::willDraw): Added. Tells the renderer to repaint. 6500 Also has FIXME mentioning we could dirty only the part that has changed in the future. 6501 (WebCore::HTMLCanvasElement::reset): Added. Sets the size of the canvas and discards 6502 the old buffer, which is an indirect way of resetting the buffer to transparent black. 6503 (WebCore::HTMLCanvasElement::paint): Added. Draws the canvas image into the graphics 6504 context that's passed in. 6505 (WebCore::HTMLCanvasElement::createDrawingContext): Added. Allocates a buffer for 6506 the bits, then creates a bitmap context for drawing into the buffer. 6507 (WebCore::HTMLCanvasElement::drawingContext): Added. Calls createDrawingContext if 6508 needed, then returns the current drawing context. 6509 (WebCore::HTMLCanvasElement::createPlatformImage): Changed to always call CGContextFlush 6510 and to create the image from the context in this class. 6511 6512 * rendering/RenderHTMLCanvas.h: Remove almost all of the contents of this file. 6513 Removed ~RenderHTMLCanvas, setNeedsImageUpdate, element, updateDrawnImage, drawingContext, 6514 createDrawingContext, and drawnImage functions and _drawingContext, _drawingContextData, 6515 _drawnImage, and _needsImageUpdate booleans. Changed RenderHTMLCanvas to derive from 6516 RenderReplaced instead of RenderImage. 6517 6518 * rendering/RenderHTMLCanvas.cpp: 6519 (WebCore::RenderHTMLCanvas::RenderHTMLCanvas): Changed to only initialize RenderReplaced. 6520 (WebCore::RenderHTMLCanvas::renderName): Moved this in here, since there's no good reason 6521 to have this virtual function inlined. 6522 (WebCore::RenderHTMLCanvas::paint): Changed implementation to use HTMLCanvasElement::paint 6523 instead ofcalling CGContextDrawImage directly. 6524 (WebCore::RenderHTMLCanvas::layout): Removed the code that detects changes in width and 6525 causes the drawing context to be recreated; instead, if the width and height changes we 6526 scale when we paint the canvas. 6527 6528 * bindings/js/JSCanvasRenderingContext2DBase.cpp: 6529 (WebCore::JSCanvasRenderingContext2DBaseProtoFunc::callAsFunction): 6530 Separated out handling for <canvas> vs. <img> elements in drawRect, since 6531 HTMLCanvasElement is no longer derived from HTMLImageElement. 6532 6533 2006-04-09 Rob Buis <buis (a] kde.org> 6534 6535 Reviewed by eseidel. Landed by eseidel. 6536 6537 Fix for http://bugs.webkit.org/show_bug.cgi?id=6027: 6538 Dirty rect invalidation issues in mozilla sample 6539 6540 Make sure the paths calculate the new bounding box and not 6541 use the cached bbox. 6542 6543 No automated test case possible. 6544 6545 * kcanvas/RenderPath.cpp: 6546 (WebCore::RenderPath::setPath): 6547 6548 2006-04-09 Rob Buis <buis (a] kde.org> 6549 6550 Reviewed by darin. Landed by eseidel. 6551 6552 Fix for http://bugs.webkit.org/show_bug.cgi?id=6930: 6553 % width/height on nested <svg> tags do not work 6554 6555 Set the context correctly for inner <svg>, so calculation of 6556 width/height for inner <svg> elements is done against the 6557 viewport element. 6558 6559 Test: svg/custom/inner-percent.svg 6560 6561 * ksvg2/svg/SVGSVGElement.cpp: 6562 (WebCore::SVGSVGElement::width): 6563 (WebCore::SVGSVGElement::height): 6564 6565 2006-04-08 Rob Buis <buis (a] kde.org> 6566 6567 Reviewed by eseidel. Landed by eseidel. 6568 6569 No automated test case possible. 6570 6571 Fix for http://bugs.webkit.org/show_bug.cgi?id=7531: 6572 hang in SVGPolygonElementImpl::toPathData in polygon test case 6573 6574 Make sure the points list is cleared, just like the path 6575 list is cleared first before (re)parsing. 6576 6577 * ksvg2/svg/SVGPolyElement.cpp: 6578 (SVGPolyElement::parseMappedAttribute): 6579 6580 2006-04-08 Darin Adler <darin (a] apple.com> 6581 6582 Reviewed by Beth. 6583 6584 - fix http://bugs.webkit.org/show_bug.cgi?id=7622 6585 REGRESSION: New text fields should compute maxlength considering composed character sequences 6586 6587 Test: fast/forms/input-text-maxlength.html 6588 Test: fast/forms/input-text-paste-maxlength.html 6589 6590 * html/HTMLInputElement.h: Removed all friend classes (not needed any more). Renamed 6591 typeEnum to InputType. Made init() function private. Tweaked parameter names and formatting 6592 in many function declarations. Made canHaveSelection, selectionStart, and selectionEnd 6593 const. Made data members except for m_name private instead of protected. Added private 6594 functions constrainValue and recheckValue. Removed unused isEditable function. 6595 6596 * html/HTMLInputElement.cpp: 6597 (WebCore::numGraphemeClusters): Added. 6598 (WebCore::numCharactersInGraphemeClusters): Added. 6599 (WebCore::HTMLInputElement::isKeyboardFocusable): Use inputType() instead of using m_type 6600 directly. 6601 (WebCore::HTMLInputElement::isMouseFocusable): Ditto. 6602 (WebCore::HTMLInputElement::focus): Ditto. 6603 (WebCore::HTMLInputElement::setInputType): Added code to call constrainValue or recheckValue 6604 so we will enforce maxLen if changing from a type that doesn't have maxLen to one that does. 6605 (WebCore::HTMLInputElement::type): More-standard formatting for switch statement. Put 6606 cases into alphabetical order. 6607 (WebCore::HTMLInputElement::state): Changed switch statement to include all case values and 6608 not include a default case to take advantage of gcc's missing case warning. 6609 (WebCore::HTMLInputElement::restoreState): Ditto. 6610 (WebCore::HTMLInputElement::canHaveSelection): Ditto. 6611 (WebCore::HTMLInputElement::selectionStart): Ditto. 6612 (WebCore::HTMLInputElement::selectionEnd): Ditto. 6613 (WebCore::HTMLInputElement::setSelectionStart): Ditto. 6614 (WebCore::HTMLInputElement::setSelectionEnd): Ditto. 6615 (WebCore::HTMLInputElement::select): Ditto. 6616 (WebCore::HTMLInputElement::setSelectionRange): Ditto. 6617 (WebCore::HTMLInputElement::click): Ditto. 6618 (WebCore::HTMLInputElement::accessKeyAction): Ditto. 6619 (WebCore::HTMLInputElement::parseMappedAttribute): Use inputType() instead of using m_type 6620 directly. Added call to recheckValue when parsing a new value for the maxlength attribute. 6621 (WebCore::HTMLInputElement::rendererIsNeeded): Changed switch statement to include all case 6622 values and not include a default case to take advantage of gcc's missing case warning. 6623 (WebCore::HTMLInputElement::createRenderer): Ditto. 6624 (WebCore::HTMLInputElement::attach): Remove code to condition the value attribute when done 6625 parsing. This is now all handled by constrainValue and recheckValue as needed. 6626 (WebCore::HTMLInputElement::isSuccessfulSubmitButton): Use inputType() instead of using 6627 m_type directly. 6628 (WebCore::HTMLInputElement::appendFormData): Ditto. Rearranged code a little. 6629 (WebCore::HTMLInputElement::setChecked): Ditto. 6630 (WebCore::HTMLInputElement::setIndeterminate): Ditto. 6631 (WebCore::HTMLInputElement::value): Ditto. Call constrainValue when reading the value out 6632 of the value attribute. 6633 (WebCore::HTMLInputElement::valueWithDefault): Use inputType() instead of using 6634 m_type directly. Changed switch statement to include all case values and not include a 6635 default case to take advantage of gcc's missing case warning. 6636 (WebCore::HTMLInputElement::setValue): Ditto. Call constrainValue when storing a value. 6637 (WebCore::HTMLInputElement::setValueFromRenderer): Added an assertion. 6638 (WebCore::HTMLInputElement::storesValueSeparateFromAttribute): Use inputType() instead of 6639 using m_type directly. 6640 (WebCore::HTMLInputElement::preDispatchEventHandler): Ditto. 6641 (WebCore::HTMLInputElement::postDispatchEventHandler): Ditto. 6642 (WebCore::HTMLInputElement::defaultEventHandler): Ditto. Changed code to truncate inserted 6643 text in a BeforeTextInsertedEvent to use the new constrainValue function and also the 6644 numGraphemeClusters function, so it's based on grapheme clusters instead of characters and 6645 shares code. 6646 (WebCore::HTMLInputElement::constrainValue): Added. 6647 (WebCore::HTMLInputElement::recheckValue): Added. 6648 6649 * html/HTMLIsIndexElement.cpp: (WebCore::HTMLIsIndexElement::HTMLIsIndexElement): 6650 Removed unneeded code to set m_type to TEXT, which is already what it gets set to by 6651 the base class's constructor. 6652 6653 * html/HTMLGenericFormElement.h: Removed unused isEditable function. 6654 * html/HTMLGenericFormElement.cpp: Ditto. 6655 * html/HTMLTextAreaElement.h: Ditto. 6656 * html/HTMLTextAreaElement.cpp: Ditto. 6657 6658 * platform/StringImpl.cpp: (WebCore::StringImpl::truncate): Changed > to >= so that 6659 truncating to the size of the string does nothing, efficiently. 6660 6661 * rendering/RenderText.h: Added declaration of characterBreakIterator. 6662 * rendering/RenderText.cpp: 6663 (WebCore::characterBreakIterator): Made this public so it can be used in other files. 6664 Maybe we should also move it to another source file later. Also renamed to remove the 6665 "get" from the title. 6666 (WebCore::RenderText::previousOffset): Updated for name change. 6667 (WebCore::RenderText::nextOffset): Updated for name change. 6668 6669 * rendering/RenderTextField.cpp: (WebCore::RenderTextField::updateFromElement): 6670 Removed code to implement maxlength checking. That's handled entirely in the DOM now. 6671 Also moved down the code to get the value into a string so that it's done only in the 6672 case where the string is used. 6673 6674 * rendering/render_form.cpp: (WebCore::RenderFileButton::valueChanged): Use setValueFromRenderer 6675 instead of setting the value directly in the input element. We changed this for all the other 6676 types a while ago, and it works just as well for the input element. 6677 6678 * dom/BeforeTextInsertedEvent.h: Added setText function. Previously, clients changed the text 6679 by modifying the text object in place, but going forward we'd like to avoid that sort of thing. 6680 6681 * editing/ReplaceSelectionCommand.cpp: (WebCore::ReplacementFragment::ReplacementFragment): 6682 Changed code to assume clients will change the text in the event rather than mutating the 6683 text object itself. This is compatible with possible future changes to String to be copy 6684 on write. 6685 * editing/TypingCommand.cpp: (WebCore::TypingCommand::insertText): Ditto. 6686 6687 2006-04-07 Darin Adler <darin (a] apple.com> 6688 6689 Reviewed by Hyatt. 6690 6691 - test for http://bugs.webkit.org/show_bug.cgi?id=8134 6692 REGRESSION: dragging down from the middle of a text field does not select to end of field 6693 6694 * editing/Selection.cpp: 6695 (WebCore::comparePositions): Added. Takes shadow content into account. 6696 (WebCore::Selection::validate): Changed to call comparePositions instead of calling 6697 Range::compareBoundaryPoints directly. Also removed unneeded code to redundantly set 6698 m_start and m_end to null and did a bit of reformatting. 6699 6700 - some tiny efficiency improvements to the tokenizer -- no measurable speedup, but removes 6701 a little bit of unneeded code 6702 6703 * html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::parseTag): Changed all the places 6704 that do "unsigned short x = *c" to "unsigned short x = c->unicode()" when c is a QChar, 6705 otherwise we do an unnecessary conversion to char (which requires a branch to see if 6706 the c fits in a char). 6707 6708 2006-04-07 Justin Garcia <justin.garcia (a] apple.com> 6709 6710 Reviewed by harrison 6711 6712 Rolled the fix for 8250 back in and fixed a bug: 6713 The local variables for the first and last nodes in the fragment 6714 need to be reset when the fragment is changed for plaintext-only mode 6715 or a change from the beforetextinserted event handler. 6716 6717 * editing/ReplaceSelectionCommand.cpp: 6718 (WebCore::ReplacementFragment::ReplacementFragment): 6719 6720 2006-04-07 Maciej Stachowiak <mjs (a] apple.com> 6721 6722 Reviewed by Darin. 6723 6724 - fixed REGRESSION: offsetParent on element with no offset parent crashes 6725 6726 * dom/Element.cpp: 6727 (WebCore::Element::offsetParent): Add missing null check. 6728 6729 2006-04-07 Justin Garcia <justin.garcia (a] apple.com> 6730 6731 Reviewed by adele 6732 6733 maxlength truncation in text fields didn't work if the fragment was a 6734 single text node. 6735 6736 * editing/ReplaceSelectionCommand.cpp: 6737 (WebCore::ReplacementFragment::ReplacementFragment): 6738 6739 2006-04-07 Justin Garcia <justin.garcia (a] apple.com> 6740 6741 Reviewed by harrison 6742 6743 <http://bugs.webkit.org/show_bug.cgi?id=8250> 6744 REGRESSION: Interchange newlines aren't passed with the khtmlBeforeTextInsertedEvent 6745 6746 * editing/ReplaceSelectionCommand.cpp: 6747 (WebCore::ReplacementFragment::ReplacementFragment): 6748 Interchange content removal happened before khtmlBeforeTextInsertedEvent was sent. 6749 6750 2006-04-07 Justin Garcia <justin.garcia (a] apple.com> 6751 6752 Reviewed by adele 6753 6754 <http://bugs.webkit.org/show_bug.cgi?id=8219> 6755 REGRESSION: Two extra newlines added when pasting a single styled line into a plaintext-only region 6756 6757 * editing/ReplaceSelectionCommand.cpp: 6758 (WebCore::ReplacementFragment::ReplacementFragment): 6759 Converting the fragment to plaintext introduced an extraneous newline because 6760 the range passed to plainText ended after the paragraph containing the fragment 6761 built from the markup that TextEdit put on the paste board. TextIterator will 6762 emit a newline when it exits a paragraph. 6763 Two extra newlines were added because the '\n' in the plaintext string turns 6764 into an interchange newline, which isn't removed because of 8250, and the 6765 interchange newline looks like inline content that requires the insertion of 6766 a paragraph separator during paste. 6767 Fixed by creating a range using VisiblePositions at the start and the end of 6768 the node that holds the fragment during paste's test rendering. 6769 6770 2006-04-06 Justin Garcia <justin.garcia (a] apple.com> 6771 6772 Reviewed by harrison 6773 6774 <http://bugs.webkit.org/show_bug.cgi?id=8145> 6775 REGRESSION: Pasting text from TextEdit with a bold word into text field results in crash 6776 6777 * editing/AppendNodeCommand.cpp: 6778 (WebCore::AppendNodeCommand::doApply): 6779 Assert that the node will be placed somewhere that's contenteditable. 6780 * editing/InsertNodeBeforeCommand.cpp: 6781 (WebCore::InsertNodeBeforeCommand::doApply): Ditto 6782 * editing/JSEditor.cpp: 6783 Enabled insertHTML for plaintext-only regions since it's useful for debugging rich 6784 content pastes into the new text fields. 6785 * editing/ReplaceSelectionCommand.cpp: 6786 (WebCore::ReplaceSelectionCommand::doApply): 6787 1) After the first paragraph of the fragment has been merged with the first part of the 6788 paragraph where the paste occured, if the next node to be inserted is inline, we put it 6789 in a new paragraph because it was at the start of a paragraph in the fragment. The change 6790 is to insert a paragraph separator if insertionPos.next() is null or outside of the current 6791 editable region. 6792 2) Before the paste begins, a paragraph separator is inserted in order to avoid 6793 nesting blocks from the fragment to be pasted inside the block where the paste will 6794 occur. I made two fixes to the code that decides whether or not to insert the 6795 paragraph separator and added testcases for each. Added a fixme because it appears that 6796 this code is also used to ensure that the aforementioned insertionPos will be at the end of 6797 a paragraph. This code should only be about preventing nesting. 6798 6799 2006-04-06 Maciej Stachowiak <mjs (a] apple.com> 6800 6801 Reviewed by Anders. 6802 6803 - Convert Element JS bindings to be almost completely autogenerated 6804 http://bugs.webkit.org/show_bug.cgi?id=8227 6805 6806 * dom/Element.idl: Declare full interface in IDL. 6807 * dom/Element.h: 6808 (WebCore::Element::tagQName): Renamed from tagName, so the real DOM 6809 method can be called tagName. 6810 (WebCore::Element::tagName): inline alias for nodeName. 6811 * dom/Element.cpp: 6812 (WebCore::Element::scrollByUnits): Moved logic from JS bindings to 6813 core DOM. 6814 (WebCore::Element::scrollByLines): ditto 6815 (WebCore::Element::scrollByPages): ditto 6816 (WebCore::Element::offsetLeft): ditto, plus make unrendered elements return 0 not undefined 6817 (WebCore::Element::offsetTop): ditto, plus make unrendered elements return 0 not undefined 6818 (WebCore::Element::offsetWidth): ditto, plus make unrendered elements return 0 not undefined 6819 (WebCore::Element::offsetHeight): ditto, plus make unrendered elements return 0 not undefined 6820 (WebCore::Element::offsetParent): ditto 6821 (WebCore::Element::clientWidth): ditto, plus make unrendered elements return 0 not undefined 6822 (WebCore::Element::clientHeight): ditto, plus make unrendered elements return 0 not undefined 6823 (WebCore::Element::scrollLeft): ditto 6824 (WebCore::Element::scrollTop): ditto 6825 (WebCore::Element::setScrollLeft): ditto 6826 (WebCore::Element::setScrollTop): ditto 6827 (WebCore::Element::scrollWidth): ditto, plus make unrendered elements return 0 not undefined 6828 (WebCore::Element::scrollHeight): ditto, plus make unrendered elements return 0 not undefined 6829 6830 * bindings/scripts/CodeGeneratorJS.pm: Added support for 6831 ConvertUndefinedToTrue, for benefit of scroll methods where 6832 omitted arguments should be treated as true. However, maybe 6833 explicit overloading in the IDL would be a better long-term 6834 approach for optional arguments. 6835 6836 * khtml/ecma/kjs_binding.cpp: 6837 (KJS::valueToStringWithNullCheck): fixed formatting 6838 (KJS::valueToBooleanTreatUndefinedAsTrue): added for binding of scrollIntoView 6839 (isn't this lame?) 6840 * khtml/ecma/kjs_binding.h: 6841 (KJS::toJS): fixed formatting, added new stuff 6842 * khtml/ecma/kjs_dom.cpp: 6843 (KJS::DOMElement::getValueProperty): removed most of contents 6844 (KJS::DOMElement::putValueProperty): ditto 6845 (KJS::DOMElementProtoFunc::callAsFunction): ditto 6846 6847 * css/cssstyleselector.cpp: 6848 (WebCore::CSSStyleSelector::canShareStyleWithElement): updated for rename 6849 of tagName to tagQName 6850 (WebCore::CSSStyleSelector::checkOneSelector): ditto 6851 * dom/Document.cpp: 6852 (WebCore::Document::importNode): ditto 6853 * editing/ApplyStyleCommand.cpp: 6854 (WebCore::ApplyStyleCommand::removeInlineStyle): ditto 6855 (WebCore::areIdenticalElements): ditto 6856 * html/HTMLElement.cpp: 6857 (WebCore::HTMLElement::inEitherTagList): ditto 6858 (WebCore::HTMLElement::inInlineTagList): ditto 6859 (WebCore::HTMLElement::inBlockTagList): ditto 6860 6861 2006-04-06 Beth Dakin <bdakin (a] apple.com> 6862 6863 Reviewed by Darin. 6864 6865 Fix for http://bugs.webkit.org/show_bug.cgi?id=8203 6866 REGRESSION: "Invite a friend" text field in GMail page spills out 6867 of table 6868 6869 RenderReplaced::calcMinMaxWidth() sets m_minWidth to 0 when the 6870 width is a percent, so this patch copies that behavior into 6871 RenderTextField::calcMinMaxWidth(). 6872 6873 * rendering/RenderTextField.cpp: 6874 (WebCore::RenderTextField::calcMinMaxWidth): 6875 6876 2006-04-06 Darin Adler <darin (a] apple.com> 6877 6878 - try to fix Windows build 6879 6880 * WebCore.vcproj/WebCore/WebCore.vcproj: Add JSDocument.cpp. 6881 6882 2006-04-05 Darin Adler <darin (a] apple.com> 6883 6884 Reviewed by Adele. 6885 6886 - fix http://bugs.webkit.org/show_bug.cgi?id=8111 6887 REGRESSION (NativeTextField): first click in form field on weather.com leaves focus 6888 but no caret 6889 6890 Test: fast/forms/input-text-self-emptying-click.html 6891 6892 * page/MouseEventWithHitTestResults.h: Removed url, target, m_url and m_target, 6893 replacing them with isOverLink and m_isOverLink. Replaced innerNode with targetNode, 6894 and added logic to handle the case where the target node is removed from the document 6895 but the element the target node was in is still inside the document. 6896 * page/MouseEventWithHitTestResults.cpp: Added. 6897 6898 * WebCore.xcodeproj/project.pbxproj: Added MouseEventWithHitTestResults.cpp. 6899 * WebCore.vcproj/WebCore/WebCore.vcproj: Ditto. 6900 6901 * kwq/RenderTreeAsText.cpp: (nodePosition): Added a call to shadowParentNode so we 6902 correctly dump positions within shadow trees. This was needed to give a good result 6903 from my new test for this bug. 6904 6905 * dom/Document.cpp: 6906 (WebCore::Document::prepareMouseEvent): Update to pass fewer parameters to the 6907 constructor for MouseEventWithHitTestResults. Now takes isOverLink boolean, and no 6908 longer takes href and target parameters. 6909 6910 * page/Frame.cpp: 6911 (WebCore::Frame::handleMousePressEventDoubleClick): Use new name targetNode, instead 6912 of old name innerNode. 6913 (WebCore::Frame::handleMousePressEventTripleClick): Ditto. 6914 (WebCore::Frame::handleMousePressEventSingleClick): Ditto. Also change code to check 6915 if over a link to use !isOverLink instead of url.isNull. 6916 (WebCore::Frame::handleMousePressEvent): Ditto. Also remove unused "url" local variable. 6917 (WebCore::Frame::handleMouseMoveEvent): Ditto. 6918 (WebCore::Frame::handleMouseReleaseEvent): Ditto. 6919 (WebCore::Frame::passWidgetMouseDownEventToWidget): Ditto. 6920 6921 * bridge/mac/FrameMac.mm: 6922 (WebCore::FrameMac::handleMousePressEvent): Use new name targetNode, instead of old 6923 name innerNode. 6924 (WebCore::FrameMac::handleMouseMoveEvent): Ditto. 6925 (WebCore::FrameMac::passSubframeEventToSubframe): Ditto. 6926 (WebCore::FrameMac::sendContextMenuEvent): Ditto. 6927 6928 * page/FrameView.cpp: 6929 (WebCore::subframeForEvent): Use new name targetNode, instead of old name innerNode. 6930 (WebCore::FrameView::handleMousePressEvent): Ditto. 6931 (WebCore::FrameView::handleMouseDoubleClickEvent): Ditto. 6932 (WebCore::selectCursor): Ditto. Also change code to check if over a link to use 6933 isOverLink instead of !url.isNull. 6934 (WebCore::FrameView::handleMouseMoveEvent): Ditto. 6935 (WebCore::FrameView::handleMouseReleaseEvent): Ditto. 6936 (WebCore::FrameView::updateDragAndDrop): Ditto. 6937 6938 2006-04-05 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 6939 6940 Reviewed and landed by Maciej. 6941 6942 - fix http://bugs.webkit.org/show_bug.cgi?id=8184 6943 REGRESSION (r13655): Layer outline not clipped where it should be 6944 6945 * rendering/RenderLayer.cpp: 6946 (WebCore::RenderLayer::calculateRects): Reverted this part of the fix for bug 7943. 6947 The outlineRect should not be inflated. 6948 6949 2006-04-05 Rob Buis <buis (a] kde.org> 6950 6951 Reviewed by Eric, landed by Maciej. 6952 6953 Fix for http://bugs.webkit.org/show_bug.cgi?id=7627: 6954 SVG from the W3C SVG 1.1 test suite (cubic01.svg) renders as all black 6955 6956 Fix this svg stylesheet to use strict-mode, as this makes sure 6957 class selecting is done correctly. 6958 6959 * ksvg2/svg/SVGStyleElement.cpp: 6960 (SVGStyleElement::childrenChanged): 6961 6962 2006-04-05 Justin Garcia <justin.garcia (a] apple.com> 6963 6964 Reviewed by mjs 6965 6966 I forgot to convert one of the implicit remove/inserts to an explicit remove/insert, 6967 so we were hitting the assert I just added to InsertNodeBeforeCommand that checked for 6968 implicit removes. 6969 6970 * editing/ReplaceSelectionCommand.cpp: 6971 (WebCore::ReplaceSelectionCommand::doApply): 6972 6973 2006-04-05 Maciej Stachowiak <mjs (a] apple.com> 6974 6975 Reviewed by Anders. 6976 6977 - autogenerate bindings for all of the methods and properties of Document 6978 http://bugs.webkit.org/show_bug.cgi?id=8163 6979 6980 - also removed document.actualEncoding since it is not in any spec 6981 or implemented by any other browser 6982 6983 * DerivedSources.make: add JSDocument.h to results 6984 * WebCore.xcodeproj/project.pbxproj: Added new files to project 6985 * bindings/scripts/CodeGeneratorJS.pm: Support for new stuff needed by Document. 6986 * dom/Document.cpp: 6987 (WebCore::Document::readyState): moved impl here from JS bindings 6988 (WebCore::Document::inputEncoding): ditto 6989 (WebCore::Document::defaultCharset): ditto 6990 (WebCore::Document::setCharset): ditto 6991 * dom/Document.h: 6992 (WebCore::Document::charset): added, synonym for inputEncoding. 6993 (WebCore::Document::characterSet): ditto 6994 * dom/Document.idl: Added. Full interface for the Document object. 6995 * khtml/ecma/JSXMLHttpRequest.cpp: 6996 (KJS::JSXMLHttpRequestProtoFunc::callAsFunction): JSDocument, not DOMDocument 6997 * khtml/ecma/JSXSLTProcessor.cpp: 6998 (KJS::XSLTProcessorProtoFunc::callAsFunction): ditto 6999 * khtml/ecma/kjs_binding.cpp: 7000 (KJS::jsStringOrFalse): Added this convenience for the method on Document 7001 that bizzarely returns false on failure and a string otherwise. 7002 * khtml/ecma/kjs_binding.h: 7003 * khtml/ecma/kjs_css.cpp: 7004 (KJS::toJS): renamed for consistency 7005 * khtml/ecma/kjs_css.h: 7006 * khtml/ecma/kjs_dom.cpp: 7007 - removed all traces of DOMDocument 7008 (KJS::toJS): JSDocument, not DOMDocument 7009 * khtml/ecma/kjs_dom.h: 7010 * khtml/ecma/kjs_html.cpp: 7011 (KJS::): 7012 (KJS::JSHTMLDocument::JSHTMLDocument): inherit from JSDocument 7013 (KJS::JSHTMLDocument::getOwnPropertySlot): ditto 7014 (KJS::JSHTMLDocument::put): ditto 7015 * khtml/ecma/kjs_html.h: 7016 * khtml/ecma/kjs_traversal.cpp: 7017 (KJS::toJS): added overloads 7018 (KJS::toNodeFilter): handle JS functions as well as impl NodeFilter objects 7019 * khtml/ecma/kjs_traversal.h: 7020 * platform/AtomicString.h: 7021 (WebCore::AtomicString::AtomicString): Allow implicit conversion from String. 7022 7023 2006-04-05 Justin Garcia <justin.garcia (a] apple.com> 7024 7025 Reviewed by darin 7026 7027 <http://bugs.webkit.org/show_bug.cgi?id=8198> 7028 Hitting an assert on undo paste 7029 7030 ReplaceSelectionCommand was doing a combination of undoable and non-undoable 7031 removes from the ReplacementFragment. On Undo Paste, the undoable removes 7032 couldn't be undone because the tree was in a different state than it was 7033 at the time of the remove. This patch makes all the removes from the fragment 7034 non-undoable. We could make them all undoable, but I can't think of any reason 7035 why we'd want the fragment to be reconstructed on an Undo Paste. 7036 7037 * editing/AppendNodeCommand.cpp: 7038 (WebCore::AppendNodeCommand::doApply): 7039 Assert that the node to append isn't already in a tree, since if it is, it will 7040 be removed in a non-undoable way. 7041 * editing/InsertNodeBeforeCommand.cpp: 7042 (WebCore::InsertNodeBeforeCommand::doApply): Ditto. 7043 * editing/ReplaceSelectionCommand.cpp: 7044 (WebCore::ReplaceSelectionCommand::doApply): 7045 Nodes were being moved from the fragment to the document with undoable inserts. 7046 Undoable inserts implicitly remove the node (in a non-undoable way) from its 7047 old location if it is already in a tree. I now explicitly remove the nodes 7048 from the fragment before inserting them into the document to make it clear that 7049 they are being removed in a non-non-undoable way. I also changed the one undoable 7050 remove from the fragment to a non-undoable remove. 7051 * editing/ReplaceSelectionCommand.h: 7052 Made ReplacementFragment's non-undoable removeNode public. 7053 7054 2006-04-05 Darin Adler <darin (a] apple.com> 7055 7056 - fixed the build 7057 7058 * WebCore.xcodeproj/project.pbxproj: Oops! Resolved merge conflict. 7059 7060 2006-04-05 Darin Adler <darin (a] apple.com> 7061 7062 Reviewed by Maciej. 7063 7064 - fix for http://bugs.webkit.org/show_bug.cgi?id=8049 7065 StringImpl hash traits deleted value creates an init routine for WebCore 7066 <rdar://problem/4442248> REGRESSION: WebCore has init routines (8049) 7067 7068 * platform/StringHash.h: Added. Moved hash functions and such for 7069 WebCore::String and friends into this file so we don't have to include 7070 the hash traits header everywhere. Changed hashing for WebCore::StringImpl 7071 and WebCore::String so that they use a raw pointer for the underlying 7072 storage type, taking advantage of the new feature added in JavaScriptCore. 7073 7074 * platform/AtomicString.h: Moved StrHash specialization to StringHash.h. 7075 * platform/PlatformString.h: Moved StrHash specialization to StringHash.h. 7076 * platform/StringImpl.h: Moved StrHash, CaseInsensitiveHash, and HashTraits 7077 to StringHash.h. Left DefaultHash behind so that you can't get the wrong 7078 hash function by accident if you forget to include "StringHash.h". 7079 7080 * platform/StringImpl.cpp: Added include of StringHash.h and removed 7081 RefPtr<StringImpl> HashTraits<RefPtr<StringImpl> >::_deleted, which is 7082 the object with a global initializer causing all the trouble! 7083 7084 * kwq/AccessibilityObjectCache.h: Changed hash function to be IntHash 7085 instead of PtrHash. 7086 7087 * dom/StyledElement.cpp: Changed MappedAttributeKeyTraits to inherit from 7088 the generic traits in KXMLCore so we get a StorageType. Also cleaned up a 7089 tiny bit by adding default values to the MappedAttributeKey constructor. 7090 7091 * platform/CharsetNames.cpp: Changed hash traits here to be a new 7092 TextEncodingIDHashTraits struct rather than defining new default traits 7093 for the integer type since more integer types have default traits in 7094 HashTraits.h now. Also added a specialization so this class will share 7095 the underlying implementation (since InvalidEncoding happens to be -1). 7096 7097 * bridge/mac/FrameMac.h: 7098 * dom/Document.h: 7099 * dom/xml_tokenizer.h: 7100 * khtml/xsl/XSLTProcessor.h: 7101 * kwq/JavaAppletWidget.h: 7102 * page/FramePrivate.h: 7103 * page/Page.cpp: 7104 * platform/AtomicString.cpp: 7105 * platform/TransferJob.h: 7106 * rendering/render_applet.h: 7107 Added include of StringHash.h. 7108 7109 * WebCore.xcodeproj/project.pbxproj: Added StringHash.h. Remove unneeded 7110 CREATE_HASH_TABLE variable in build settings. Re-sorted some file lists. 7111 Added quotes to the CREATE_HASH_TABLE initialization in the rule that 7112 builds generated files. Removed various unneeded build settings for that 7113 target as well. 7114 7115 * ForwardingHeaders/kxmlcore/HashTraits.h: Added. 7116 7117 - other minor cleanup 7118 7119 * bridge/mac/FrameMac.mm: Sorted includes. 7120 * dom/Node.cpp: Removed bogus symbol after #endif. 7121 7122 * khtml/xsl/XSLTProcessor.cpp: Sorted includes. Removed redundant using 7123 namespace WebCore. 7124 * loader/Cache.cpp: Ditto. 7125 7126 2006-04-05 Beth Dakin <bdakin (a] apple.com> 7127 7128 Reviewed by Darin. 7129 7130 Fix for <rdar://problem/4502311> text-transform:capitalize needs to 7131 treat nbsp as a regular space when ICU changes 7132 7133 There will be future changes in ICU to match the Unicode 4.1 7134 standard which no longer recognizes   as a word separator. We 7135 need to work around this with text-transform:capitalize because 7136 words after non-breaking spaces still need to be capitalized. 7137 7138 No layout tests added because existing layout tests cover this. 7139 7140 * platform/StringImpl.cpp: 7141 (WebCore::StringImpl::capitalize): If the character is a non- 7142 breaking space, add a regular space to our temporary buffer, 7143 otherwise, just copy the character in. 7144 7145 2006-04-05 Alexey Proskuryakov <ap (a] nypop.com> 7146 7147 Reviewed by Darin. 7148 7149 - fix http://bugs.webkit.org/show_bug.cgi?id=8110 7150 Define navigator.vendorSub (bcms.gov.uk doesn't allow access to login page) 7151 7152 Test: fast/dom/navigator-vendorSub.html 7153 7154 * khtml/ecma/kjs_navigator.cpp: 7155 (KJS::Navigator::getValueProperty): Return an empty string for vendorSub property. 7156 * khtml/ecma/kjs_navigator.h: 7157 7158 2006-04-04 Darin Adler <darin (a] apple.com> 7159 7160 Reviewed by Justin (editing parts) and Adele (the rest). 7161 7162 - fix http://bugs.webkit.org/show_bug.cgi?id=8182 7163 some text-field-related layout tests are failing 7164 7165 The smart paste code was getting confused and adding extra spaces. 7166 7167 * editing/ReplaceSelectionCommand.cpp: 7168 (WebCore::ReplaceSelectionCommand::doApply): Use isStartOfParagraph instead of 7169 isStartOfLine. 7170 (WebCore::ReplaceSelectionCommand::removeLinePlaceholderIfNeeded): Ditto. 7171 7172 * editing/InsertParagraphSeparatorCommand.cpp: (WebCore::enclosingEmptyListItem): 7173 Change to call isStart/EndOfParagraph instead of Line. 7174 7175 * editing/InsertTextCommand.cpp: (WebCore::InsertTextCommand::input): 7176 Add a comment about how isStartOfLine is almost certainly wrong here. 7177 7178 - clean up some loose ends in the Frame class from the recent renaming 7179 7180 * page/Frame.h: Removed declarations of deleteMe1, deleteMe2, and 7181 handleMouseMoveEventPart2. 7182 * page/Frame.cpp: (WebCore::Frame::handleMouseMoveEvent): Removed 7183 handleMouseMoveEventPart2 by renaming it to handleMouseMoveEvent and removing 7184 handleMouseMoveEvent itself. 7185 7186 - invoke the makefile directly, removing the generate-derived-sources script 7187 7188 * WebCore.vcproj/WebCore/build-generated-files.sh: Call make directly. 7189 * WebCore.xcodeproj/project.pbxproj: Ditto. 7190 * generate-derived-sources: Removed. 7191 7192 2006-04-04 Adele Peterson <adele (a] apple.com> 7193 7194 Reviewed by Justin. 7195 7196 - Fix for http://bugs.webkit.org/show_bug.cgi?id=8158 7197 REGRESSION: Clicking past RTL text in a new text field puts the caret on the wrong side of the text 7198 7199 Tests: 7200 editing/selection/caret-rtl.html 7201 editing/selection/caret-rtl-2.html 7202 7203 * rendering/RenderText.cpp: (WebCore::RenderText::positionForCoordinates): 7204 When calculating the position for the beginning or end of an InlineTextBox, 7205 we now use offsetForPosition instead of just using m_start and m_len, because 7206 offsetForPosition will take rtl text into account. I also made some formatting 7207 changes. 7208 7209 2006-04-04 David Hyatt <hyatt (a] apple.com> 7210 7211 Fix for bug 8065, inline blocks incorrectly loses spaces between them. 7212 7213 Reviewed by beth 7214 7215 * dom/Text.cpp: 7216 (WebCore::Text::rendererIsNeeded): 7217 7218 2006-04-04 Adele Peterson <adele (a] apple.com> 7219 7220 Reviewed by Hyatt. 7221 7222 - Fix for: 7223 http://bugs.webkit.org/show_bug.cgi?id=8092 7224 REGRESSION (NativeTextField): table contents misaligned in Netflix queue 7225 7226 http://bugs.webkit.org/show_bug.cgi?id=8141 7227 REGRESSION: Native text field fails to wrap inside table 7228 7229 http://bugs.webkit.org/show_bug.cgi?id=8072 7230 REGRESSION: text fields at connect.apple.com spill out of the containing box 7231 7232 Test: fast/forms/input-table.html 7233 7234 Rewrote calcMinMaxWidth for text fields so it considers width, 7235 min-width, and max-width settings as well as the size attribute. 7236 7237 * rendering/RenderTextField.cpp: (WebCore::RenderTextField::calcMinMaxWidth): 7238 7239 2006-04-04 Beth Dakin <bdakin (a] apple.com> 7240 7241 Reviewed by Darin. 7242 7243 This is a followup to my fix for <rdar://problem/4493218> 7244 7245 This patch re-names computeIntLength() and computeShortLength() to 7246 be computeLengthInt() and computeLengthShort(), respectively, to 7247 match the pre-existing computeLengthFloat(). This patch also adds 7248 the slightly confusing-ly named computeLengthIntForLength() which 7249 uses the max and min values of a 28-bit integer as bounds for 7250 overflow. This function is necessary because Length objects expect 7251 28-bit integers. 7252 7253 * css/css_valueimpl.cpp: 7254 (WebCore::CSSPrimitiveValue::computeLengthInt): 7255 (WebCore::CSSPrimitiveValue::computeLengthIntForLength): 7256 (WebCore::CSSPrimitiveValue::computeLengthShort): 7257 * css/css_valueimpl.h: 7258 * css/cssstyleselector.cpp: 7259 (WebCore::convertToLength): 7260 (WebCore::CSSStyleSelector::applyProperty): 7261 (WebCore::CSSStyleSelector::mapBackgroundXPosition): 7262 (WebCore::CSSStyleSelector::mapBackgroundYPosition): 7263 7264 2006-04-04 Timothy Hatcher <timothy (a] apple.com> 7265 7266 Reviewed by Darin. 7267 7268 The Debug and Release frameworks are now built with install paths relative to the build products directory. 7269 This removes the need for other projects to build with -framework WebCore and -framework JavaScriptCore. 7270 7271 * WebCore.xcodeproj/project.pbxproj: 7272 7273 2006-04-04 Justin Garcia <justin.garcia (a] apple.com> 7274 7275 Reviewed by darin 7276 7277 <http://bugs.webkit.org/show_bug.cgi?id=6608> 7278 REGRESSION: Line disappears when deleting 7279 7280 Rewrote moveNodesAfterNode to address these problems: 7281 It moved nodes without preserving their style. 7282 It traversed over siblings looking for a br to know when 7283 to stop merging. If the br was burried inside a span, it 7284 wouldn't find it. If the text is whitespace:pre, it wouldn't 7285 stop. 7286 In theory it would crash if the "enclosingInlineElements" of the start of the 7287 selection to delete and the end of the selection to delete were the 7288 same. We think that this will fix these: 7289 <rdar://problems/3950559&4498113> 7290 CrashTracer: 2116 crashes in Mail at com.apple.WebCore: khtml::CompositeEditCommand::insertNodeAfter + 32 7291 CrashTracer: 1569 crashes in Mail at com.apple.WebCore: khtml::DeleteSelectionCommand::moveNodesAfterNode + 340 7292 But we haven't been able to construct a reproducible case. 7293 7294 * editing/CompositeEditCommand.cpp: 7295 (WebCore::CompositeEditCommand::removeNodeAndPruneAncestors): Moved from ReplaceSelectionCommand. 7296 (WebCore::CompositeEditCommand::prune): Ditto. 7297 * editing/CompositeEditCommand.h: 7298 * editing/DeleteSelectionCommand.cpp: 7299 (WebCore::DeleteSelectionCommand::mergeParagraphs): 7300 (WebCore::DeleteSelectionCommand::doApply): 7301 * editing/DeleteSelectionCommand.h: 7302 * editing/ReplaceSelectionCommand.cpp: 7303 (WebCore::ReplaceSelectionCommand::doApply): 7304 * editing/ReplaceSelectionCommand.h: 7305 (WebCore::): 7306 * editing/markup.cpp: 7307 (WebCore::createMarkup): 7308 Was crashing when passed a collapsed range. I early return an empty string instead. 7309 7310 2006-04-04 John Sullivan <sullivan (a] apple.com> 7311 7312 Reviewed by Adele Peterson. 7313 7314 - WebCore part of <rdar://problem/4498418> "Autosaved" searchterms are saved during private browsing 7315 7316 * bridge/mac/WebCoreSettings.h: 7317 * bridge/mac/WebCoreSettings.mm: 7318 (-[WebCoreSettings setPrivateBrowsingEnabled:]): 7319 (-[WebCoreSettings privateBrowsingEnabled]): 7320 Teach WebCoreSettings about private browsing (WebKit knew, but WebCore didn't) 7321 7322 * kwq/KWQKHTMLSettings.h: 7323 (KHTMLSettings::privateBrowsingEnabled): 7324 (KHTMLSettings::setPrivateBrowsingEnabled): 7325 Teach KHTMLSettings about private browsing 7326 7327 * kwq/KWQLineEdit.mm: 7328 Fix wrong class in a category method declaration; the compiler didn't seem to mind. 7329 7330 * kwq/WebCoreTextField.mm: 7331 (-[KWQSearchFieldCell _addStringToRecentSearches:]): 7332 Override this method to bail out if private browsing is enabled. 7333 7334 2006-04-04 Trey Matteson <trey (a] usa.net> 7335 7336 Reviewed by Hyatt. 7337 7338 http://bugs.webkit.org/show_bug.cgi?id=7951 7339 REGRESSION: Safari crashes when printing a google map w/directions 7340 7341 Tests: none, because I believe it only happens when printing, due to the relayouts 7342 7343 * rendering/RenderTable.cpp: 7344 (WebCore::RenderTable::recalcSectionsIfNeeded): Add new utility to let the cells 7345 ensure the sections' grid data is up to date. 7346 * rendering/RenderTable.h: 7347 * rendering/RenderTableCell.cpp: 7348 (WebCore::RenderTableCell::calcMinMaxWidth): Call above method. 7349 7350 2006-04-03 Justin Haygood <jhaygood (a] spsu.edu> 7351 7352 Reviewed by eseidel. Landed by eseidel. 7353 7354 - WIN32: maximumScroll() is the maximum scroll delta, not the maximum scroll position. Update to use 7355 the real maximum scroll position. 7356 http://bugs.webkit.org/show_bug.cgi?id=8160 7357 7358 * platform/win/ScrollViewWin.cpp: 7359 (WebCore::ScrollView::updateScrollBars): 7360 7361 2006-04-04 Eric Seidel <eseidel (a] apple.com> 7362 7363 Reviewed by andersca. 7364 7365 Work-around spaces-in-pathnames issue in gnumake on win32. 7366 http://bugs.webkit.org/show_bug.cgi?id=8173 7367 7368 * WebCore.vcproj/WebCore/build-generated-files.sh: 7369 7370 2006-04-03 Darin Adler <darin (a] apple.com> 7371 7372 - tried to fix build again 7373 7374 * WebCore.xcodeproj/project.pbxproj: Removed JSStyleSheet files. 7375 * WebCore.vcproj/WebCore/WebCore.vcproj: Ditto. 7376 7377 2006-04-03 Darin Adler <darin (a] apple.com> 7378 7379 - fixed properties on a bunch of files 7380 (removed allow-tabs and svn:executable from many) 7381 7382 * css/css_base.cpp: 7383 * html/html_headimpl.cpp: 7384 * khtml/ecma/kjs_traversal.cpp: 7385 * kwq/DeprecatedPtrListImpl.cpp: 7386 * kwq/DeprecatedValueListImpl.cpp: 7387 * loader/CachedScript.h: 7388 * platform/ArrayImpl.cpp: 7389 * platform/StringImpl.cpp: 7390 * rendering/DataRef.h: 7391 * rendering/RenderContainer.cpp: 7392 * rendering/RenderTableCell.cpp: 7393 * rendering/bidi.h: 7394 * rendering/render_list.cpp: 7395 * rendering/render_style.cpp: 7396 * rendering/table_layout.h: 7397 Converted tabs to spaces. 7398 7399 2006-04-03 Alexey Proskuryakov <ap (a] nypop.com> 7400 7401 Reviewed by Darin. 7402 7403 - fix http://bugs.webkit.org/show_bug.cgi?id=7118 7404 Property values with extra items do not get treated as invalid (they should) 7405 7406 Tests: fast/css/invalidation-errors.html 7407 fast/css/invalidation-errors-2.html 7408 fast/css/invalidation-errors-3.html 7409 7410 * css/CSSGrammar.y: Rollback the properties added by parseValue() when it returns false. 7411 * css/cssparser.h: Moved shorthand counting to ShorthandScope, a new class in cssparser.cpp. 7412 * css/cssparser.cpp: 7413 (WebCore::CSSParser::rollbackLastProperties): Added. 7414 (WebCore::CSSParser::parseValue): Return false if there are too many properties in the list. 7415 (WebCore::CSSParser::parseBackgroundShorthand): Use ShorthandScope. 7416 (WebCore::CSSParser::parseShorthand): Ditto. 7417 (WebCore::CSSParser::parse4Values): Ditto. 7418 7419 2006-04-03 Darin Adler <darin (a] apple.com> 7420 7421 - changed StyleSheet back to hand-generated since the generated toJS 7422 function was not making the right type of wrapper for CSS style sheets 7423 (fixes failing layout tests) 7424 7425 * DerivedSources.make: Removed JSStyleSheet.h. 7426 * css/StyleSheet.idl: Removed. 7427 * khtml/ecma/kjs_css.cpp: Added DOMStyleSheet back in. 7428 * khtml/ecma/kjs_css.h: Ditto. 7429 7430 2006-04-03 Darin Adler <darin (a] apple.com> 7431 7432 - fixed Macintosh build 7433 7434 * WebCore.xcodeproj/project.pbxproj: Fixed paths of some files that were absolute 7435 paths from my machine. 7436 7437 2006-04-03 Darin Adler <darin (a] apple.com> 7438 7439 - try to fix Windows build 7440 7441 * WebCore.vcproj/WebCore/WebCore.vcproj: Add three new generated files as source files. 7442 7443 2006-04-03 Darin Adler <darin (a] apple.com> 7444 7445 Reviewed by Maciej. 7446 7447 - get RTL right for bug http://bugs.webkit.org/show_bug.cgi?id=8106 7448 REGRESSION (NativeTextField): New text fields don't scroll to the beginning when losing focus 7449 7450 * rendering/RenderTextField.cpp: (WebCore::RenderTextField::forwardEvent): 7451 Scroll to the right if RTL. 7452 7453 2006-04-03 Darin Adler <darin (a] apple.com> 7454 7455 Reviewed by Maciej. 7456 7457 - http://bugs.webkit.org/show_bug.cgi?id=8147 7458 convert derived sources script to a Makefile 7459 7460 * DerivedSources.make: Added. 7461 * css/CSSPrimitiveValue.idl: Added. 7462 * css/Counter.idl: Added. 7463 * css/StyleSheet.idl: Added. 7464 7465 * WebCore.xcodeproj/project.pbxproj: Added new generated files, IDLs, and the makefile. 7466 * bindings/scripts/CodeGeneratorJS.pm: 7467 7468 * generate-derived-sources: Added license header. Removed most of the script, except for 7469 a single invocation of make. 7470 7471 * khtml/ecma/kjs_css.h: Removed DOMStyleSheet, DOMCSSPrimitiveValue, 7472 CSSPrimitiveValueConstructor, and DOMCounter. 7473 * khtml/ecma/kjs_css.cpp: 7474 (KJS::DOMCSSStyleSheet::DOMCSSStyleSheet): Changed to use JSStyleSheet as the base class. 7475 (KJS::DOMCSSStyleSheet::getOwnPropertySlot): Ditto. 7476 (KJS::DOMCSSValueProtoFunc::callAsFunction): Added. 7477 (KJS::toJS): Changed to use JSCSSPrimitiveValue. 7478 (KJS::DOMRGBColor::getValueProperty): Changed to call toJS instead of making a 7479 DOMCSSPrimitiveValue directly. 7480 7481 2006-04-03 Justin Garcia <justin.garcia (a] apple.com> 7482 7483 Reviewed by harrison 7484 7485 <http://bugs.webkit.org/show_bug.cgi?id=8117> 7486 REGRESSION (NativeTextField): Drag and drop text within a text input field modifies page 7487 7488 The frame's selection is only set after all sub-commands have been 7489 performed. When we send the khtmlBeforeTextInsertedEvent to the root 7490 editable element we were using frame->selection(), which may no longer 7491 be in the document. 7492 7493 Had to move the construction of the ReplacementFragment to when the 7494 replace operation is applied, because endingSelection isn't the 7495 endingSelection of the last operation when the replace operation 7496 is constructed. 7497 7498 * editing/ReplaceSelectionCommand.cpp: 7499 (WebCore::ReplacementFragment::ReplacementFragment): 7500 (WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand): 7501 (WebCore::ReplaceSelectionCommand::doApply): 7502 * editing/ReplaceSelectionCommand.h: 7503 7504 2006-04-03 Beth Dakin <bdakin (a] apple.com> 7505 7506 Reviewed by Hyatt. 7507 7508 Fix for <rdar://problem/4495644> crash when mousing over links at 7509 nationalrealestateinvestors.com in 7510 WebCore::RenderBlock::findNextLineBreak 7511 7512 This is a fix for a repro crasher where a rootLineBox had a stale 7513 pointer to a render object. 7514 7515 * rendering/RenderFlow.cpp: 7516 (WebCore::RenderFlow::dirtyLinesFromChangedChild): Only break from 7517 the function because of selfNeedsLayout() if we are not an inline 7518 flow, because if we are, we will not re-layout before bad things 7519 can happen. 7520 7521 2006-04-03 Timothy Hatcher <timothy (a] apple.com> 7522 7523 Reviewed by Maciej. 7524 7525 Removing idl files and some scripts from the WebCore target to prevent 7526 them from being copied into the Resources. 7527 7528 * WebCore.xcodeproj/project.pbxproj: 7529 7530 2006-04-03 Dave Hyatt <hyatt (a] apple.com> 7531 7532 Implement basic theme support on Win32. Still much to do, but 7533 the backgrounds of buttons, textfields, checkboxes and radio 7534 controls now draw correctly. Still work to do for the Classic look 7535 and to get the foreground defaults of the controls correct. 7536 7537 Reviewed by anders 7538 7539 * dom/Node.h: 7540 (WebCore::Node::isReadOnly): 7541 * html/HTMLInputElement.h: 7542 (WebCore::HTMLInputElement::isReadOnly): 7543 * platform/win/IntRectWin.cpp: 7544 (WebCore::IntRect::operator RECT): 7545 * rendering/RenderTheme.cpp: 7546 (WebCore::RenderTheme::isControlStyled): 7547 (WebCore::RenderTheme::stateChanged): 7548 (WebCore::RenderTheme::isReadOnly): 7549 (WebCore::RenderTheme::isHovered): 7550 * rendering/RenderTheme.h: 7551 (WebCore::RenderTheme::supportsHover): 7552 * rendering/RenderThemeMac.h: 7553 * rendering/RenderThemeMac.mm: 7554 (WebCore::RenderThemeMac::isControlStyled): 7555 * rendering/RenderThemeWin.cpp: 7556 (WebCore::m_textFieldTheme): 7557 (WebCore::RenderThemeWin::~RenderThemeWin): 7558 (WebCore::RenderThemeWin::close): 7559 (WebCore::RenderThemeWin::supportsFocus): 7560 (WebCore::RenderThemeWin::determineState): 7561 (WebCore::RenderThemeWin::getThemeData): 7562 (WebCore::RenderThemeWin::paintButton): 7563 (WebCore::RenderThemeWin::setCheckboxSize): 7564 (WebCore::RenderThemeWin::setRadioSize): 7565 (WebCore::RenderThemeWin::paintTextField): 7566 * rendering/RenderThemeWin.h: 7567 (WebCore::ThemeData::m_state): 7568 (WebCore::RenderThemeWin::supportsHover): 7569 (WebCore::RenderThemeWin::paintCheckbox): 7570 (WebCore::RenderThemeWin::paintRadio): 7571 7572 2006-04-03 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 7573 7574 Reviewed by Beth. 7575 7576 - fix http://bugs.webkit.org/show_bug.cgi?id=8085 7577 REGRESSION: Main menu positioned incorrectly on eia.org and fedex.com/us 7578 7579 Test: fast/dom/Element/offsetTop-table-cell.html 7580 7581 * rendering/RenderObject.cpp: 7582 (WebCore::RenderObject::offsetTop): Skip table rows when adding up 7583 the offsets, since a table cell's yPos() is relative to the table 7584 section, not the row. 7585 7586 2006-04-03 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 7587 7588 Test: fast/repaint/layer-outline.html fast/repaint/layer-outline-horizontal.html 7589 7590 Reviewed by Darin. 7591 7592 - fix http://bugs.webkit.org/show_bug.cgi?id=7943 7593 Layer outline does not repaint 7594 7595 * rendering/RenderLayer.cpp: 7596 (WebCore::RenderLayer::paintLayer): Use the outlineRect for the 7597 outline phase and do it only if the outlineRect isn't empty. 7598 (WebCore::RenderLayer::calculateRects): Actually add the outline width to the 7599 outline rect. 7600 7601 2006-04-03 Adele Peterson <adele (a] apple.com> 7602 7603 Reviewed by Justin. 7604 7605 - Fix for http://bugs.webkit.org/show_bug.cgi?id=8104 7606 REGRESSION (NativeTextField): New text fields should not allow pasting newlines 7607 7608 Test: fast/forms/input-truncate-newline.html 7609 7610 * html/HTMLInputElement.cpp: 7611 (WebCore::minPosition): Added helper function. 7612 (WebCore::HTMLInputElement::defaultEventHandler): Searches for /r or /n and 7613 truncates the text to be inserted to the earliest newline. 7614 7615 2006-04-03 Alexey Proskuryakov <ap (a] nypop.com> 7616 7617 Fixed a comment (forgot to save the file before the previous commit). 7618 7619 * xml/xmlhttprequest.cpp: 7620 (WebCore::XMLHttpRequest::open): 7621 7622 2006-04-03 Alexey Proskuryakov <ap (a] nypop.com> 7623 7624 Reviewed by Darin. 7625 7626 - fix http://bugs.webkit.org/show_bug.cgi?id=8099 7627 REGRESSION: XMLHttpRequest lowercase post requests broken 7628 7629 Test: http/tests/xmlhttprequest/methods-lower-case.html 7630 7631 * xml/xmlhttprequest.cpp: 7632 (WebCore::XMLHttpRequest::open): Uppercase some HTTP method names, to match a Firefox quirk. 7633 (WebCore::XMLHttpRequest::send): Account for the above change. 7634 7635 2006-04-02 Graham Dennis <Graham.Dennis (a] gmail.com> 7636 7637 Reviewed by Darin. 7638 7639 - fix http://bugs.webkit.org/show_bug.cgi?id=8032 7640 REGRESSION: Focus ring not completely redrawn after a Delete changes its size 7641 7642 * rendering/RenderObject.cpp: 7643 (WebCore::RenderObject::repaintAfterLayoutIfNeeded): When an element changes size, the 7644 delta rectangles that need to be invalidated must be inflated by the outline size to ensure 7645 that the previous outline is erased, and the space where the new outline is to be drawn is 7646 also invalidated. This behaviour is identical to the behaviour of borders that was fixed in 7647 bug 6301. 7648 * manual-tests/outline-repaint-glitch.html: Added. Manual testcase. 7649 This is just an outline version of border-repaint-glitch.html 7650 7651 2006-04-02 Trey Matteson <trey (a] usa.net> 7652 7653 Reviewed by Maciej. 7654 7655 Support for fixing http://bugs.webkit.org/show_bug.cgi?id=8121 7656 REGRESSION: 404s are not displayed 7657 7658 * bridge/mac/WebCoreFrameBridge.mm: 7659 (-[WebCoreFrameBridge currentForm]): Nuke redundant nil check. 7660 (-[WebCoreFrameBridge frameElement]): Tweak to not rely on our document, which 7661 gives a correct result even at the start of our loading process. 7662 * bindings/objc/DOM.mm: 7663 (-[DOMDocument _ownerElement]): Nuke redundant nil check. 7664 7665 2006-04-02 David Kilzer <ddkilzer (a] kilzer.net> 7666 7667 Reviewed by Maciej. 7668 7669 - Fix for http://bugs.webkit.org/show_bug.cgi?id=8079 7670 REGRESSION: Redraw from page cache does not show visited links 7671 7672 * page/Frame.cpp: (WebCore::Frame::reparseConfiguration): Added back 7673 updateStyleSelector call that was removed as part of the patch for bug 7907. 7674 7675 2006-04-02 Maciej Stachowiak <mjs (a] apple.com> 7676 7677 Reviewed by Hyatt. 7678 7679 - fixed <rdar://problem/4198619> REGRESSION: tabbing through links fails after hitting text field w/ sys's "tab to all controls" off 7680 - fixed <rdar://problem/4463760> REGRESSION: Can't tab from old text field (like password fields) to new text field (6811) 7681 (http://bugs.webkit.org/show_bug.cgi?id=6811) 7682 - fixed tab and shift tab don't select the right things 7683 http://bugs.webkit.org/show_bug.cgi?id=5685 7684 7685 * bridge/mac/FrameMac.mm: 7686 (WebCore::FrameMac::nextKeyViewInFrame): 7687 * bridge/mac/WebCoreFrameBridge.h: 7688 7689 2006-04-02 Darin Adler <darin (a] apple.com> 7690 7691 - add a few stubs to get Windows closer to building 7692 7693 * platform/win/TemporaryLinkStubs.cpp: 7694 (WebCore::focusRingColor): 7695 (WebCore::setFocusRingColorChangeFunction): 7696 (Frame::setNeedsReapplyStyles): 7697 7698 2006-04-02 Darin Adler <darin (a] apple.com> 7699 7700 - fix the build 7701 7702 * WebCore.xcodeproj/project.pbxproj: Removed a bunch of files that should not have been 7703 mentioned at all, and a bunch of others that should be in the project but not in the target. 7704 7705 2006-04-02 Darin Adler <darin (a] apple.com> 7706 7707 Reviewed by Adele. 7708 7709 - fix http://bugs.webkit.org/show_bug.cgi?id=8123 7710 focus ring on new text field doesn't look like the old one 7711 7712 - fix http://bugs.webkit.org/show_bug.cgi?id=7685 7713 Focus ring color should change to match graphite when system theme is graphite 7714 7715 - some cleanup to how we parse user agent style sheets 7716 7717 * css/CSSValueKeywords.in: Added -webkit-focus-ring-color. 7718 7719 * css/cssstyleselector.cpp: 7720 (WebCore::parseUASheet): Parse an array of chars instead of UTF-16. 7721 Cuts the size of the style sheet in half. 7722 (WebCore::CSSStyleSelector::applyProperty): Allow negative value for 7723 outline-offset. Changed shadow parsing to use getColorFromPrimitiveValue 7724 instead of repeating the same logic. 7725 (WebCore::CSSStyleSelector::getColorFromPrimitiveValue): Added a case 7726 for the focus ring color. 7727 * rendering/render_style.h: (WebCore::RenderStyle::setOutlineOffset): 7728 Changed to allow negative values. 7729 7730 * css/html4.css: Removed a lot of excess spaces. Changed color of focus 7731 to -webkit-focus-ring-color. Changed width of focus to 5px. 7732 Added an outline-offset for <input type=text> of -2px. 7733 7734 * css/cssparser.cpp: 7735 (WebCore::CSSParser::parseValue): Added focus ring color as an outline color all 7736 the time, and as any other color when not in strict mode. I'm confused about what's 7737 best for this whole strict mode policy, and I may need advice on Hyatt to perfect 7738 this one later. 7739 (WebCore::CSSParser::parseColorFromValue): Removed code to pin r, g, and b because 7740 the functions in platform already take care of that. Kept the pinning of a, though 7741 because that's done in floating point before converting to an integer. 7742 (WebCore::CSSParser::parseShadow): Allow focus ring color when not in strict mode. 7743 7744 * bridge/mac/FrameMac.h: Eliminated the virtual detachFromView function. 7745 * bridge/mac/FrameMac.mm: 7746 (WebCore::FrameMac::FrameMac): Eliminated code to maintain the frame instances list. 7747 (WebCore::FrameMac::~FrameMac): Ditto. 7748 (WebCore::Frame::setNeedsReapplyStyles): Added. 7749 7750 * bridge/mac/WebCoreSettings.mm: (-[WebCoreSettings _updateAllViews]): 7751 * platform/mac/WebCoreTextRendererFactory.mm: 7752 (-[WebCoreTextRendererFactory clearCaches]): 7753 Changed to call the new Page::setNeedsReapplyStylesForSettingsChange instead of using the 7754 obsolete Frame::instances. 7755 7756 * page/Frame.h: Removed instances, mutableInstances, and detachFromView. 7757 * page/Frame.cpp: Ditto. 7758 7759 * page/FrameTree.cpp: 7760 (WebCore::FrameTree::~FrameTree): Call setView(0) instead of detachFromView(). 7761 (WebCore::FrameTree::removeChild): Ditto. 7762 7763 * page/Page.h: 7764 * page/Page.cpp: 7765 (WebCore::Page::init): Added a set of pages instead of a page count. Also 7766 register a function for when the focus ring color changes the first time this 7767 is called. 7768 (WebCore::Page::~Page): Call setView(0) instead of detachFromView. Also update 7769 to manager the set of pages. 7770 (WebCore::Page::setNeedsReapplyStyles): Call setNeedsReapplyStyles on all frames. 7771 (WebCore::Page::setNeedsReapplyStylesForSettingsChange): Call setNeedsReapplyStyles 7772 on all frames with the passed-in settings. 7773 7774 * css/make-css-file-arrays.pl: Changed to run the C preprocessor on the 7775 input files and to generate an array of char instead of unsigned short. 7776 7777 * platform/PlatformString.h: Added a constructor that takes a char* and 7778 a length. 7779 * platform/String.cpp: (WebCore::String::String): Ditto. 7780 7781 * WebCore.xcodeproj/project.pbxproj: Just some tweaks; adding in a few files like 7782 the user agent style sheets. 7783 7784 * platform/Color.h: Removed all use of DeprecatedString. Cleaned up a bit. 7785 Added focusRingColor and setFocusRingColorChangeFunction. 7786 * platform/Color.cpp: 7787 (WebCore::makeRGB): Rewrote using max and min. 7788 (WebCore::makeRGBA): Ditto. 7789 (WebCore::parseHexColor): Cleaned up a bit; changed partway to String instead of 7790 DeprecatedString. 7791 (WebCore::Color::Color): Changed to use String and to call setNamedColor to save code. 7792 (WebCore::Color::setNamedColor): Changed to use String in the interface. 7793 7794 * platform/mac/ColorMac.mm: 7795 (WebCore::observeTheme): Added. Function used to start up the observer. 7796 (WebCore::setFocusRingColorChangeFunction): Added. Used to get a call back so we can 7797 update all the views when the color changes (including recomputing style to get the 7798 color change in). 7799 (WebCore::setFocusRingColorChangeFunction): Added. Returns one of the two focus 7800 ring colors. Both of these match what AppKit uses -- neither matches what we used 7801 to have in the html4.css file. 7802 (+[WebCoreControlTintObserver controlTintDidChange]): Added. Used to update when 7803 the appearance is changed from blue to graphite and back. We keep a global so we 7804 don't have to call over to AppKit every time; that's probably overkill but we need 7805 the obsever for the color change function anyway. 7806 7807 2006-04-02 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 7808 7809 Test: fast/inline-block/overflow-clip.html 7810 7811 Reviewed by Darin. 7812 7813 - fix http://bugs.webkit.org/show_bug.cgi?id=8118 7814 REGRESSION (r13595): Inline block's clipped overflow increases table row height 7815 7816 * rendering/render_line.cpp: 7817 (WebCore::InlineFlowBox::placeBoxesVertically): Don't look at interior overflow 7818 when calculating the contribution to the inline's vertical overflows. 7819 7820 2006-04-02 Eric Seidel <eseidel (a] apple.com> 7821 7822 Reviewed by andersca. 7823 7824 Make WebCore safe against KJS::Node in JavaScriptCore private headers. 7825 7826 * editing/ReplaceSelectionCommand.h: 7827 * khtml/ecma/JSXMLSerializer.cpp: 7828 (KJS::XMLSerializerProtoFunc::callAsFunction): 7829 * khtml/ecma/JSXSLTProcessor.cpp: 7830 (KJS::XSLTProcessorProtoFunc::callAsFunction): 7831 * khtml/ecma/kjs_binding.cpp: 7832 (KJS::ScriptInterpreter::forgetDOMNodeForDocument): 7833 (KJS::ScriptInterpreter::putDOMNodeForDocument): 7834 * khtml/ecma/kjs_dom.cpp: 7835 (KJS::DOMNode::DOMNode): 7836 (KJS::DOMNode::mark): 7837 (KJS::DOMNode::getValueProperty): 7838 (KJS::DOMNode::putValueProperty): 7839 (KJS::DOMNodeProtoFunc::callAsFunction): 7840 (KJS::toNode): 7841 (KJS::DOMEventTargetNode::DOMEventTargetNode): 7842 (KJS::DOMDocumentProtoFunc::callAsFunction): 7843 (KJS::DOMElement::putValueProperty): 7844 (KJS::DOMElementProtoFunc::callAsFunction): 7845 (KJS::checkNodeSecurity): 7846 (KJS::toJS): 7847 (KJS::getRuntimeObject): 7848 (KJS::DOMNamedNodesCollection::DOMNamedNodesCollection): 7849 (KJS::DOMNamedNodesCollection::getOwnPropertySlot): 7850 * khtml/ecma/kjs_events.cpp: 7851 (KJS::JSLazyEventListener::JSLazyEventListener): 7852 (KJS::ClipboardProtoFunc::callAsFunction): 7853 * khtml/ecma/kjs_html.cpp: 7854 (KJS::JSHTMLDocument::namedItemGetter): 7855 (KJS::JSHTMLElement::framesetNameGetter): 7856 (KJS::JSHTMLElement::getOwnPropertySlot): 7857 (KJS::JSHTMLElement::pushEventHandlerScope): 7858 (KJS::JSHTMLCollection::callAsFunction): 7859 (KJS::JSHTMLCollection::getNamedItems): 7860 (KJS::JSHTMLSelectCollection::put): 7861 * khtml/ecma/kjs_traversal.cpp: 7862 (KJS::JSNodeFilterCondition::acceptNode): 7863 * khtml/ecma/kjs_window.cpp: 7864 (KJS::Window::put): 7865 * kwq/KWQPageState.mm: 7866 (-[KWQPageState WebCore::]): 7867 7868 2006-04-01 Darin Adler <darin (a] apple.com> 7869 7870 Reviewed by Eric. 7871 7872 - removed a bunch of unneeded ForwardingHeaders and WebCore+SVG headers 7873 7874 * ForwardingHeaders/kcanvas: Removed. 7875 * ForwardingHeaders/kcanvas/KCanvas.h: Removed. 7876 * ForwardingHeaders/kdom: Removed. 7877 * ForwardingHeaders/kdom/DOMString.h: Removed. 7878 * ForwardingHeaders/kdom/Helper.h: Removed. 7879 * ForwardingHeaders/kdom/KDOMSettings.h: Removed. 7880 * ForwardingHeaders/kdom/Namespace.h: Removed. 7881 * ForwardingHeaders/kdom/cache: Removed. 7882 * ForwardingHeaders/kdom/cache/KDOMCachedImage.h: Removed. 7883 * ForwardingHeaders/kdom/cache/KDOMCachedObject.h: Removed. 7884 * ForwardingHeaders/kdom/cache/KDOMCachedObjectClient.h: Removed. 7885 * ForwardingHeaders/kdom/cache/KDOMCachedScript.h: Removed. 7886 * ForwardingHeaders/kdom/cache/KDOMLoader.h: Removed. 7887 * ForwardingHeaders/kdom/core: Removed. 7888 * ForwardingHeaders/kdom/core/DOMConfiguration.h: Removed. 7889 * ForwardingHeaders/kdom/core/DOMException.h: Removed. 7890 * ForwardingHeaders/kdom/core/DOMList.h: Removed. 7891 * ForwardingHeaders/kdom/core/DOMString.h: Removed. 7892 * ForwardingHeaders/kdom/core/NamedAttrMap.h: Removed. 7893 * ForwardingHeaders/kdom/core/ProcessingInstruction.h: Removed. 7894 * ForwardingHeaders/kdom/core/domattrs.h: Removed. 7895 * ForwardingHeaders/kdom/ecma: Removed. 7896 * ForwardingHeaders/kdom/ecma/GlobalObject.h: Removed. 7897 * ForwardingHeaders/kdom/events: Removed. 7898 * ForwardingHeaders/kdom/events/Event.h: Removed. 7899 * ForwardingHeaders/kdom/events/EventListener.h: Removed. 7900 * ForwardingHeaders/kdom/events/EventTarget.h: Removed. 7901 * ForwardingHeaders/kdom/events/KeyboardEvent.h: Removed. 7902 * ForwardingHeaders/kdom/events/MouseEvent.h: Removed. 7903 * ForwardingHeaders/kdom/events/UIEvent.h: Removed. 7904 * ForwardingHeaders/kdom/events/kdomevents.h: Removed. 7905 * ForwardingHeaders/kdom/kdom.h: Removed. 7906 * ForwardingHeaders/kdom/parser: Removed. 7907 * ForwardingHeaders/kdom/parser/KDOMParser.h: Removed. 7908 * ForwardingHeaders/ksvg2: Removed. 7909 * ForwardingHeaders/ksvg2/KSVGPart.h: Removed. 7910 * ForwardingHeaders/ksvg2/KSVGView.h: Removed. 7911 * ForwardingHeaders/ksvg2/css: Removed. 7912 * ForwardingHeaders/ksvg2/css/CSSPropertyNames.h: Removed. 7913 * ForwardingHeaders/ksvg2/css/CSSValueKeywords.h: Removed. 7914 * WebCore+SVG/KDOMHeaders.h: Removed. 7915 * WebCore+SVG/Namespace.h: Removed. 7916 * WebCore+SVG/kdom.h: Removed. 7917 7918 * WebCore.xcodeproj/project.pbxproj: Removed headers. 7919 7920 * kcanvas/KCanvasCreator.cpp: 7921 * kcanvas/KCanvasResources.cpp: 7922 * kcanvas/KCanvasTreeDebug.cpp: 7923 * kcanvas/RenderPath.cpp: 7924 * kcanvas/RenderSVGImage.cpp: 7925 * kcanvas/device/quartz/KCanvasItemQuartz.mm: 7926 * kcanvas/device/quartz/KCanvasMaskerQuartz.mm: 7927 * kcanvas/device/quartz/KCanvasResourcesQuartz.mm: 7928 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm: 7929 * ksvg2/css/SVGCSSStyleSelector.cpp: 7930 * ksvg2/events/SVGZoomEvent.h: 7931 * ksvg2/misc/KCanvasRenderingStyle.cpp: 7932 * ksvg2/misc/KSVGTimeScheduler.cpp: 7933 * ksvg2/misc/SVGImageLoader.cpp: 7934 * ksvg2/svg/SVGAElement.cpp: 7935 * ksvg2/svg/SVGAnimationElement.cpp: 7936 * ksvg2/svg/SVGCircleElement.cpp: 7937 * ksvg2/svg/SVGClipPathElement.cpp: 7938 * ksvg2/svg/SVGCursorElement.cpp: 7939 * ksvg2/svg/SVGCursorElement.h: 7940 * ksvg2/svg/SVGDOMImplementation.cpp: 7941 * ksvg2/svg/SVGDocument.cpp: 7942 * ksvg2/svg/SVGDocument.h: 7943 * ksvg2/svg/SVGElement.cpp: 7944 * ksvg2/svg/SVGEllipseElement.cpp: 7945 * ksvg2/svg/SVGExternalResourcesRequired.cpp: 7946 * ksvg2/svg/SVGExternalResourcesRequired.h: 7947 * ksvg2/svg/SVGFEBlendElement.cpp: 7948 * ksvg2/svg/SVGFEColorMatrixElement.cpp: 7949 * ksvg2/svg/SVGFEComponentTransferElement.cpp: 7950 * ksvg2/svg/SVGFECompositeElement.cpp: 7951 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp: 7952 * ksvg2/svg/SVGFEDisplacementMapElement.cpp: 7953 * ksvg2/svg/SVGFEFloodElement.cpp: 7954 * ksvg2/svg/SVGFEGaussianBlurElement.cpp: 7955 * ksvg2/svg/SVGFEImageElement.cpp: 7956 * ksvg2/svg/SVGFEImageElement.h: 7957 * ksvg2/svg/SVGFELightElement.cpp: 7958 * ksvg2/svg/SVGFEMergeElement.cpp: 7959 * ksvg2/svg/SVGFEOffsetElement.cpp: 7960 * ksvg2/svg/SVGFESpecularLightingElement.cpp: 7961 * ksvg2/svg/SVGFETileElement.cpp: 7962 * ksvg2/svg/SVGFETurbulenceElement.cpp: 7963 * ksvg2/svg/SVGFilterElement.cpp: 7964 * ksvg2/svg/SVGGradientElement.cpp: 7965 * ksvg2/svg/SVGHelper.cpp: 7966 * ksvg2/svg/SVGImageElement.cpp: 7967 * ksvg2/svg/SVGLangSpace.cpp: 7968 * ksvg2/svg/SVGLength.cpp: 7969 * ksvg2/svg/SVGLineElement.cpp: 7970 * ksvg2/svg/SVGLinearGradientElement.cpp: 7971 * ksvg2/svg/SVGList.h: 7972 * ksvg2/svg/SVGLocatable.cpp: 7973 * ksvg2/svg/SVGMarkerElement.cpp: 7974 * ksvg2/svg/SVGMarkerElement.h: 7975 * ksvg2/svg/SVGMaskElement.cpp: 7976 * ksvg2/svg/SVGPathElement.cpp: 7977 * ksvg2/svg/SVGPatternElement.cpp: 7978 * ksvg2/svg/SVGPolyElement.cpp: 7979 * ksvg2/svg/SVGPolygonElement.cpp: 7980 * ksvg2/svg/SVGPolylineElement.cpp: 7981 * ksvg2/svg/SVGRadialGradientElement.cpp: 7982 * ksvg2/svg/SVGRectElement.cpp: 7983 * ksvg2/svg/SVGSVGElement.cpp: 7984 * ksvg2/svg/SVGStopElement.cpp: 7985 * ksvg2/svg/SVGStyleElement.cpp: 7986 * ksvg2/svg/SVGStyledElement.cpp: 7987 * ksvg2/svg/SVGStyledLocatableElement.cpp: 7988 * ksvg2/svg/SVGStyledTransformableElement.cpp: 7989 * ksvg2/svg/SVGTextElement.cpp: 7990 * ksvg2/svg/SVGTransformable.cpp: 7991 * ksvg2/svg/SVGUseElement.cpp: 7992 * ksvg2/svg/SVGViewElement.cpp: 7993 Updated includes. 7994 7995 2006-04-01 Darin Adler <darin (a] apple.com> 7996 7997 Reviewed by Maciej. 7998 7999 - fix http://bugs.webkit.org/show_bug.cgi?id=8089 8000 REGRESSION: Caret position is off in native text field with text-align:right 8001 8002 - fix http://bugs.webkit.org/show_bug.cgi?id=8082 8003 REGRESSION: Empty RTL text fields place the caret on the left side 8004 8005 Need a way to make a test for this. No obvious way at the moment. 8006 8007 * rendering/RenderFlow.cpp: (WebCore::RenderFlow::caretRect): 8008 Consider border, padding, and the width of the caret properly in the 8009 calculation of the caret's X position. 8010 8011 * rendering/RenderBox.cpp: (WebCore::RenderBox::caretRect): 8012 Fixed some similar issues and rewrote this function for clarity. 8013 However, I suspect this function was and remains broken and is almost 8014 never called. 8015 8016 2006-04-01 Darin Adler <darin (a] apple.com> 8017 8018 Reviewed by Justin. 8019 8020 - fix http://bugs.webkit.org/show_bug.cgi?id=8106 8021 REGRESSION (NativeTextField): New text fields don't scroll to the beginning when losing focus 8022 8023 Test: fast/forms/input-text-scroll-left-on-blur.html 8024 8025 * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::defaultEventHandler): Pass blur events 8026 through to the RenderTextField, as well as mouse, drag, and wheel events. 8027 * rendering/RenderTextField.cpp: (WebCore::RenderTextField::forwardEvent): Scroll all the way to 8028 the left on a blur. 8029 8030 - unrelated small changes 8031 8032 * html/HTMLTextFieldInnerElement.cpp: Removed excess includes. 8033 (WebCore::HTMLTextFieldInnerElement::defaultEventHandler): Tweaked comments a bit. 8034 8035 * dom/Element.cpp: 8036 (WebCore::Element::scrollIntoView): Removed unneeded this-> before function call. 8037 (WebCore::Element::scrollIntoViewIfNeeded): Ditto. 8038 8039 * page/FrameView.cpp: (WebCore::FrameView::dispatchMouseEvent): Removed obsolete comment. 8040 8041 2006-03-31 Maciej Stachowiak <mjs (a] apple.com> 8042 8043 Reviewed by Adele. 8044 8045 <rdar://problem/4497684> REGRESSION(NativeTextField): After undoing pasted text in a field, the field changes to only a few pixels in height (8096) 8046 8047 * editing/ReplaceSelectionCommand.cpp: 8048 (WebCore::ReplaceSelectionCommand::doApply): merge into start block when pasting into 8049 an empty editable subtree. 8050 8051 2006-04-01 Darin Adler <darin (a] apple.com> 8052 8053 Reviewed by Maciej. 8054 8055 - fix http://bugs.webkit.org/show_bug.cgi?id=8063 8056 REGRESSION: double clicking in new text fields won't select whole words 8057 8058 Test: fast/forms/input-text-double-click.html 8059 8060 * editing/visible_units.cpp: (WebCore::nextBoundary): Set the end of the range by 8061 calling selectNodeContents rather than by calling setEndAfter. The problem with 8062 setEndAfter is that it doesn't do anything when the parent of the node is 0, and 8063 also it's not really what we want, since the boundary node is one with editable 8064 contents -- we want to stay inside the boundary node. 8065 8066 * editing/Selection.cpp: (WebCore::Selection::validate): Fix a tiny formatting glitch 8067 I noticed at the same time. 8068 8069 2006-03-31 John Sullivan <sullivan (a] apple.com> 8070 8071 Reviewed by Tim Hatcher. 8072 8073 - fixed <rdar://problem/4372842> 10.4.4 Regression: control-clicking on a misspelled word 8074 doesn't select it or offer corrections (first click only) 8075 8076 * bridge/mac/FrameMac.mm: 8077 (WebCore::FrameMac::sendContextMenuEvent): 8078 Rolled in this one-line change that Hyatt wrote ages ago. 8079 8080 2006-03-31 Beth Dakin <bdakin (a] apple.com> 8081 8082 Reviewed by John. 8083 8084 Fix for http://bugs.webkit.org/show_bug.cgi?id=8108 8085 REGRESSION (r13590-r13593): Floating table's cells don't paint 8086 their background 8087 8088 This is a regression from my painting patch yesterday. Just a silly 8089 error I didn't catch. 8090 8091 * rendering/RenderTable.cpp: 8092 (WebCore::RenderTable::paint): Change the phase of our new 8093 PaintInfo, not our old one. 8094 8095 2006-03-31 Tim Omernick <timo (a] apple.com> 8096 8097 Reviewed by Adele. 8098 8099 <http://bugs.webkit.org/show_bug.cgi?id=7858> 8100 <rdar://problem/4483359> REGRESSION: New text field doesn't recognize the read only attribute 8101 8102 * rendering/RenderTextField.cpp: 8103 (WebCore::RenderTextField::createDivStyle): 8104 Set user modify based on the form element's readOnly(). 8105 (WebCore::RenderTextField::updateFromElement): 8106 ditto 8107 8108 2006-03-31 Adele Peterson <adele (a] apple.com> 8109 8110 Reviewed by Tim Omernick. 8111 8112 Updating shadowAncestorNode so it doesn't check for rootEditableElement. Now we just walk 8113 up the tree to look for a shadowNode, and then we find the shadowParent. 8114 8115 * dom/Node.cpp: (WebCore::Node::shadowAncestorNode): 8116 * rendering/RenderTextField.cpp: (WebCore::RenderTextField::setSelectionRange): 8117 Updated assertion to check for shadowAncestorNode instead of rootEditableElement. 8118 8119 2006-03-31 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 8120 8121 Reviewed by John Sullivan. 8122 8123 - fix http://bugs.webkit.org/show_bug.cgi?id=8101 8124 REGSRESSION: Fix for bug 7031 causes 30 layout tests to fail 8125 8126 * rendering/render_line.cpp: 8127 (WebCore::InlineFlowBox::placeBoxesVertically): Change top and bottom positions 8128 only if childAffectsTopBottomPos is true. 8129 * rendering/RenderFlow.cpp: 8130 (WebCore::RenderFlow::paintLines): Redo a part of the patch for bug 7031 that 8131 wasn't committed with the rest of the patch. 8132 8133 2006-03-31 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 8134 8135 Reviewed by Darin, landed by Beth. 8136 8137 Fix for http://bugs.webkit.org/show_bug.cgi?id=8081 8138 REGRESSION: Drop-down menu has gap at top 8139 8140 * rendering/RenderBox.cpp: 8141 (WebCore::RenderBox::calcAbsoluteVerticalValues): When calculating 8142 the hypothetical vertical position in normal flow, skip table rows 8143 in the ancestor chain, since a table cell's Y position is relative 8144 to the table section, not the row. 8145 8146 2006-03-31 Dave Hyatt <hyatt (a] apple.com> 8147 8148 Fix the border drawing for themes on Win32. 8149 8150 Reviewed by adele 8151 8152 * rendering/RenderBox.cpp: 8153 (WebCore::RenderBox::paintBoxDecorations): 8154 * rendering/RenderTheme.cpp: 8155 (WebCore::RenderTheme::paintBorderOnly): 8156 * rendering/RenderTheme.h: 8157 8158 2006-03-31 Darin Adler <darin (a] apple.com> 8159 8160 Reviewed by John Sullivan. 8161 8162 * khtml/ecma/kjs_binding.cpp: Added names for VALIDATION_ERR and 8163 TYPE_MISMATCH_ERR; new DOM Level 3 errors that need to be listed in 8164 the mapping from error code to error name. 8165 8166 * dom/Element.idl: Removed comment from bad old days where we had to 8167 touch these files to make them rebuild. 8168 8169 2006-03-30 Maciej Stachowiak <mjs (a] apple.com> 8170 8171 - fixed Windows build breakage from previous change 8172 8173 * platform/ScrollView.h: 8174 * platform/win/FontWin.cpp: 8175 (WebCore::Font::drawLineForText): 8176 * platform/win/ScrollViewWin.cpp: 8177 (WebCore::ScrollView::scrollOffset): 8178 (WebCore::ScrollView::scrollBy): 8179 8180 2006-03-30 Maciej Stachowiak <mjs (a] apple.com> 8181 8182 Reviewed by Eric. 8183 8184 - various Point / Size related cleanup 8185 8186 First, I clarified the semantics of some operations to keep a 8187 better distinction between IntPoint and IntSize: 8188 8189 * platform/IntPoint.h: 8190 (WebCore::IntPoint::move): new convenience to move a point by separate 8191 x and y deltas. 8192 (WebCore::operator+=): You can't add a point to a point, you can only add 8193 a size to a point. 8194 (WebCore::operator+): ditto 8195 (WebCore::operator-): point - point = size; point - size = point 8196 (WebCore::operator-=): only allow subtracting a size for the mutating version 8197 * platform/IntRect.h: 8198 (WebCore::IntRect::move): tweaked to use IntPoint::move, also, move by an IntSize, 8199 not an IntPoint. 8200 * platform/IntSize.h: 8201 (WebCore::IntSize::shrunkTo): analog to expandedTo 8202 (WebCore::IntSize::clampNegativeToZero): a handy helper 8203 (WebCore::operator-): Added unary minus operator 8204 8205 Made the same changes for FloatPoint: 8206 8207 * platform/FloatPoint.h: 8208 (WebCore::FloatPoint::move): 8209 (WebCore::operator+=): 8210 (WebCore::operator-=): 8211 (WebCore::operator+): 8212 (WebCore::operator-): 8213 * platform/FloatRect.h: 8214 (WebCore::FloatRect::move): 8215 * platform/FloatSize.h: 8216 (WebCore::operator-): 8217 8218 Then I changed a bunch of stuff to pass around IntPoint instead of separate x and y 8219 coordinates. The main one was: 8220 8221 * platform/ScrollView.h: 8222 * platform/mac/ScrollViewMac.mm: 8223 (WebCore::ScrollView::scrollOffset): new method, return an IntSize 8224 (WebCore::ScrollView::contentsToViewport): take and return an IntPoint 8225 (WebCore::ScrollView::viewportToContents): take and return an IntPoint 8226 * platform/win/ScrollViewWin.cpp: 8227 (WebCore::ScrollView::updateContents): handle things in terms of scrollOffset, 8228 not scrollPoint 8229 (WebCore::ScrollView::visibleContentRect): 8230 (WebCore::ScrollView::contentsX): 8231 (WebCore::ScrollView::contentsY): 8232 (WebCore::ScrollView::viewportToContents): 8233 (WebCore::ScrollView::contentsToViewport): 8234 (WebCore::scrollOffset): 8235 (WebCore::ScrollView::maximumScroll): 8236 (WebCore::ScrollView::scrollBy): 8237 (WebCore::ScrollView::updateScrollBars): 8238 8239 The rest is mainly updates for these changes. 8240 8241 * bridge/mac/FrameMac.h: 8242 * bridge/mac/FrameMac.mm: 8243 (WebCore::FrameMac::eventMayStartDrag): 8244 (WebCore::FrameMac::dragHysteresisExceeded): 8245 (WebCore::FrameMac::handleMouseMoveEvent): 8246 (WebCore::FrameMac::mouseDown): 8247 (WebCore::FrameMac::shouldDragAutoNode): 8248 (WebCore::FrameMac::sendContextMenuEvent): 8249 * bridge/mac/WebCoreFrameBridge.mm: 8250 (-[WebCoreFrameBridge isPointInsideSelection:]): 8251 * dom/EventTargetNode.cpp: 8252 (WebCore::EventTargetNode::dispatchMouseEvent): 8253 (WebCore::EventTargetNode::dispatchWheelEvent): 8254 * khtml/ecma/kjs_window.cpp: 8255 (KJS::WindowFunc::callAsFunction): 8256 * page/Frame.cpp: 8257 (WebCore::Frame::shouldDragAutoNode): 8258 (WebCore::Frame::isPointInsideSelection): 8259 (WebCore::Frame::selectClosestWordFromMouseEvent): 8260 (WebCore::Frame::handleMousePressEventDoubleClick): 8261 (WebCore::Frame::handleMousePressEventTripleClick): 8262 (WebCore::Frame::handleMousePressEventSingleClick): 8263 (WebCore::Frame::handleMouseMoveEventPart2): 8264 (WebCore::Frame::handleMouseReleaseEvent): 8265 * page/Frame.h: 8266 * page/FrameView.cpp: 8267 (WebCore::FrameView::dispatchDragEvent): 8268 (WebCore::FrameView::prepareMouseEvent): 8269 (WebCore::FrameView::handleWheelEvent): 8270 * rendering/RenderLayer.cpp: 8271 (WebCore::RenderLayer::scrollRectToVisible): 8272 * rendering/RenderObject.cpp: 8273 (WebCore::RenderObject::draggableNode): 8274 * rendering/RenderObject.h: 8275 (WebCore::RenderObject::positionForPoint): 8276 * rendering/render_list.cpp: 8277 (WebCore::RenderListMarker::paint): 8278 8279 2006-03-30 Maciej Stachowiak <mjs (a] apple.com> 8280 8281 - fixed windows build 8282 8283 * platform/win/TemporaryLinkStubs.cpp: 8284 (Widget::unlockDrawingFocus): 8285 8286 2006-03-31 Eric Seidel <eseidel (a] apple.com> 8287 8288 Reviewed by mjs. 8289 8290 A bit more code cleanup. 8291 8292 * bridge/mac/WebCoreScriptDebugger.mm: 8293 (-[WebCoreScriptCallFrame evaluateWebScript:]): 8294 * html/HTMLFormElement.cpp: 8295 (WebCore::HTMLFormElement::submit): 8296 * html/HTMLInputElement.cpp: 8297 (WebCore::HTMLInputElement::setValue): 8298 * kwq/WebCoreTextField.mm: 8299 (-[KWQTextFieldController textView:shouldHandleEvent:]): 8300 (-[KWQSecureTextField selectText:]): 8301 * page/Frame.cpp: 8302 (WebCore::Frame::submitForm): 8303 * platform/Widget.h: 8304 * platform/mac/WidgetMac.mm: 8305 * rendering/render_frames.cpp: 8306 (WebCore::RenderFrameSet::userResize): 8307 8308 2006-03-30 Maciej Stachowiak <mjs (a] apple.com> 8309 8310 Reviewed by Eric. 8311 8312 * bridge/mac/FrameMac.mm: 8313 (WebCore::FrameMac::wheelEvent): 8314 (WebCore::FrameMac::eventMayStartDrag): 8315 (WebCore::FrameMac::handleMouseMoveEvent): 8316 (WebCore::FrameMac::sendContextMenuEvent): 8317 * bridge/mac/WebCoreFrameBridge.mm: 8318 (-[WebCoreFrameBridge RenderObject::nodeInfoAtPoint:allowShadowContent:]): 8319 * dom/Document.cpp: 8320 (WebCore::Document::elementFromPoint): 8321 (WebCore::Document::prepareMouseEvent): 8322 * dom/Document.h: 8323 * kwq/WebCoreAXObject.mm: 8324 (-[WebCoreAXObject doAXTextMarkerForPosition:]): 8325 (-[WebCoreAXObject accessibilityHitTest:]): 8326 * manual-tests/frame-hover.html: Added. 8327 * manual-tests/resources/hover-subframe-1.html: Added. 8328 * manual-tests/resources/hover-subframe-2.html: Added. 8329 * page/Frame.cpp: 8330 (WebCore::Frame::isPointInsideSelection): 8331 * page/FrameView.cpp: 8332 (WebCore::FrameView::prepareMouseEvent): 8333 (WebCore::FrameView::handleWheelEvent): 8334 * platform/IntRect.h: 8335 (WebCore::IntRect::contains): 8336 * rendering/RenderLayer.cpp: 8337 (WebCore::isSubframeCanvas): 8338 (WebCore::frameVisibleRect): 8339 (WebCore::RenderLayer::hitTest): 8340 (WebCore::shouldApplyImplicitCapture): 8341 (WebCore::RenderLayer::hitTestLayer): 8342 * rendering/RenderLayer.h: 8343 8344 2006-03-30 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 8345 8346 Tests: fast/repaint/flexible-box-overflow.html fast/repaint/flexible-box-overflow-horizontal.html 8347 8348 Reviewed by Darin. 8349 8350 - fix http://bugs.webkit.org/show_bug.cgi?id=8056 8351 Flexible boxes do not repaint their top, left and children's overflows 8352 8353 * rendering/RenderBlock.cpp: 8354 (WebCore::RenderBlock::layoutBlockChildren): 8355 * rendering/RenderFlexibleBox.cpp: 8356 (WebCore::FlexBoxIterator::next): 8357 (WebCore::RenderFlexibleBox::layoutHorizontalBox): Update top overflow when 8358 determining vertical positions. Update horizontal overflows after horizontal 8359 positions are determined. 8360 (WebCore::RenderFlexibleBox::layoutVerticalBox): Update left overflow when 8361 determining horizontal positions. Update vertical overflows after vertical 8362 positions are determined. 8363 (WebCore::RenderFlexibleBox::allowedChildFlex): 8364 8365 2006-03-30 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 8366 8367 Tests: fast/repaint/text-shadow.html fast/repaint/text-shadow-horizontal.html 8368 8369 Reviewed by Darin. 8370 8371 - fix http://bugs.webkit.org/show_bug.cgi?id=7301 8372 Text shadow does not repaint correctly 8373 8374 * rendering/InlineTextBox.cpp: 8375 (WebCore::InlineTextBox::paint): Paint the text box if it is within the maximum 8376 possible horizontal shadow overflow of the damage rect. 8377 * rendering/InlineTextBox.h: Removed unused function checkVerticalPoint(). 8378 * rendering/RenderFlow.cpp: 8379 (WebCore::RenderFlow::paintLines): Use the vertical overflows instead of the 8380 selection vertical bounds. 8381 (WebCore::RenderFlow::hitTestLines): 8382 * rendering/render_line.cpp: 8383 (WebCore::InlineFlowBox::placeBoxesHorizontally): Include overflow due to text shadow 8384 in leftPosition and rightPosition and keep track of the maximum horizontal shadow 8385 on the inline. 8386 (WebCore::InlineFlowBox::verticallyAlignBoxes): 8387 (WebCore::InlineFlowBox::placeBoxesVertically): Include overflow due to shadow and 8388 inline-blocks' overflow in topPosition and bottomPosition but not in the selection 8389 vertical bounds. 8390 (WebCore::RootInlineBox::selectionTop): 8391 * rendering/render_line.h: 8392 (WebCore::InlineFlowBox:::InlineRunBox): 8393 (WebCore::InlineFlowBox::setVerticalSelectionPositions): 8394 (WebCore::InlineFlowBox::maxHorizontalShadow): 8395 (WebCore::RootInlineBox::setVerticalSelectionPositions): 8396 (WebCore::RootInlineBox::selectionBottom): 8397 (WebCore::RootInlineBox::selectionHeight): 8398 8399 2006-03-30 Beth Dakin <bdakin (a] apple.com> 8400 8401 Reviewed by Hyatt. 8402 8403 Fix for <rdar://problem/4472371> REGRESSION(417.9-TOT): Focus ring 8404 around link in overflow:auto div isn't clipped to div 8405 8406 Focus rings around the children off overflow:auto divs were not 8407 being appropriately clipped because they were being painted with 8408 the div's outlineRect, when they should be painted separately. This 8409 patch adds two new PaintPhases -- PaintPhaseSelfOutline and 8410 PaintPhaseChildOutlines -- to address this problem. 8411 8412 This patch also changes the name of PaintAction back to PaintPhase. 8413 Because Hyatt said so. 8414 8415 * kcanvas/KCanvasResources.cpp: 8416 (WebCore::KCanvasMarker::draw): 8417 * kcanvas/RenderPath.cpp: 8418 (WebCore::RenderPath::paint): 8419 * kcanvas/RenderSVGImage.cpp: 8420 (WebCore::RenderSVGImage::paint): 8421 * kcanvas/device/quartz/KCanvasResourcesQuartz.mm: 8422 (WebCore::KCanvasContainerQuartz::paint): 8423 * ksvg2/svg/SVGMaskElement.cpp: 8424 (WebCore::SVGMaskElement::drawMaskerContent): 8425 * ksvg2/svg/SVGPatternElement.cpp: 8426 (WebCore::SVGPatternElement::drawPatternContentIntoTile): 8427 * rendering/InlineTextBox.cpp: 8428 (WebCore::InlineTextBox::paint): 8429 * rendering/RenderBlock.cpp: 8430 (WebCore::RenderBlock::paint): 8431 (WebCore::RenderBlock::paintChildren): 8432 (WebCore::RenderBlock::paintObject): 8433 (WebCore::RenderBlock::paintFloats): 8434 (WebCore::RenderBlock::paintEllipsisBoxes): 8435 (WebCore::RenderBlock::paintSelection): 8436 * rendering/RenderBox.cpp: 8437 (WebCore::RenderBox::setStyle): 8438 * rendering/RenderCanvas.cpp: 8439 (WebCore::RenderCanvas::paint): 8440 * rendering/RenderFlow.cpp: 8441 (WebCore::RenderFlow::paintLines): 8442 * rendering/RenderHTMLCanvas.cpp: 8443 (WebCore::RenderHTMLCanvas::paint): 8444 * rendering/RenderImage.cpp: 8445 (WebCore::RenderImage::paint): 8446 * rendering/RenderLayer.cpp: 8447 (WebCore::RenderLayer::paintLayer): 8448 * rendering/RenderObject.cpp: 8449 (WebCore::RenderObject::maximalOutlineSize): 8450 * rendering/RenderObject.h: 8451 (WebCore::): 8452 (WebCore::RenderObject::PaintInfo::PaintInfo): 8453 * rendering/RenderTable.cpp: 8454 (WebCore::RenderTable::paint): 8455 * rendering/RenderTableCell.cpp: 8456 (WebCore::RenderTableCell::paint): 8457 * rendering/RenderTableRow.cpp: 8458 (WebCore::RenderTableRow::paint): 8459 * rendering/RenderTableSection.cpp: 8460 (WebCore::RenderTableSection::paint): 8461 * rendering/render_button.cpp: 8462 (WebCore::RenderButton::paintObject): 8463 * rendering/render_line.cpp: 8464 (WebCore::InlineBox::paint): 8465 (WebCore::InlineFlowBox::paint): 8466 (WebCore::InlineFlowBox::paintBackgroundAndBorder): 8467 (WebCore::RootInlineBox::paintEllipsisBox): 8468 * rendering/render_list.cpp: 8469 (WebCore::RenderListMarker::paint): 8470 * rendering/render_replaced.cpp: 8471 (WebCore::RenderReplaced::shouldPaint): 8472 (WebCore::RenderWidget::paint): 8473 8474 2006-03-30 Tim Omernick <timo (a] apple.com> 8475 8476 Manual test case for the Java aspect of <rdar://problem/4212626> REGRESSION: LIVECONNECT: 8477 JavaScript type for Java Strings is function, not object 8478 8479 * manual-tests/java-string-object-type.html: Added. 8480 * manual-tests/resources/StringTypeTest.class: Added. 8481 * manual-tests/resources/StringTypeTest.java: Added. 8482 8483 2006-03-30 Eric Seidel <eseidel (a] apple.com> 8484 8485 Reviewed by hyatt. 8486 8487 Fix text form controls, and add basic submit support! 8488 8489 * bridge/win/FrameWin.cpp: 8490 (WebCore::FrameWin::submitForm): 8491 * bridge/win/FrameWin.h: 8492 * platform/win/KeyEventWin.cpp: 8493 (WebCore::keyIdentifierForWindowsKeyCode): 8494 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent): 8495 * platform/win/TemporaryLinkStubs.cpp: 8496 (FrameWin::incomingReferrer): 8497 * platform/win/TransferJobWin.cpp: 8498 (WebCore::TransferJob::start): 8499 8500 2006-03-30 Adele Peterson <adele (a] apple.com> 8501 8502 Reviewed by Justin. 8503 8504 - Fix for http://bugs.webkit.org/show_bug.cgi?id=8083 8505 REGRESSION: Repro crash when dragging to select over a new text field 8506 8507 * editing/Selection.cpp: (WebCore::Selection::adjustForEditableContent): 8508 When searching for non-editable content, if the end of the selection is in a 8509 shadow tree, then we need to jump out of that first. 8510 8511 2006-03-30 Justin Garcia <justin.garcia (a] apple.com> 8512 8513 Reviewed by darin 8514 8515 http://bugs.webkit.org/show_bug.cgi?id=6989 8516 REGRESSION: Plain-text mode needed for contenteditable area used in new text field 8517 8518 * bridge/mac/WebCoreFrameBridge.h: 8519 * bridge/mac/WebCoreFrameBridge.mm: 8520 (-[WebCoreFrameBridge isSelectionEditable]): 8521 (-[WebCoreFrameBridge isSelectionRichlyEditable]): 8522 * css/CSSComputedStyleDeclaration.cpp: 8523 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): 8524 * css/CSSValueKeywords.in: 8525 * css/cssparser.cpp: 8526 (WebCore::CSSParser::parseValue): 8527 * dom/Node.cpp: 8528 (WebCore::Node::isContentRichlyEditable): 8529 * dom/Node.h: 8530 * editing/EditCommand.cpp: 8531 (WebCore::EditCommand::apply): 8532 * editing/JSEditor.cpp: 8533 * editing/ReplaceSelectionCommand.cpp: 8534 (WebCore::ReplacementFragment::ReplacementFragment): 8535 (WebCore::ReplaceSelectionCommand::doApply): 8536 * editing/Selection.h: 8537 (WebCore::Selection::rootEditableElement): 8538 (WebCore::Selection::isContentEditable): 8539 (WebCore::Selection::isContentRichlyEditable): 8540 * editing/SelectionController.h: 8541 (WebCore::SelectionController::rootEditableElement): 8542 (WebCore::SelectionController::isContentEditable): 8543 (WebCore::SelectionController::isContentRichlyEditable): 8544 * html/HTMLElement.cpp: 8545 (WebCore::HTMLElement::isContentEditable): 8546 (WebCore::HTMLElement::contentEditable): 8547 (WebCore::HTMLElement::setContentEditable): 8548 * rendering/RenderTextField.cpp: 8549 (WebCore::RenderTextField::createDivStyle): 8550 * rendering/render_style.h: 8551 (WebCore::): 8552 8553 2006-03-30 David Harrison <harrison (a] apple.com> 8554 8555 Reviewed by Justin. 8556 8557 <rdar://problem/4444693> REGRESSION: Deleting empty lines causes quoted text to mistakenly get "unquoted" 8558 8559 * editing/DeleteSelectionCommand.cpp: 8560 (WebCore::DeleteSelectionCommand::handleGeneralDelete): 8561 Formatting. 8562 (WebCore::DeleteSelectionCommand::moveNodesAfterNode): 8563 Generalize check that preserves nesting when deleting to the beginning of an ancestor block. 8564 8565 * editing/deleting/delete-block-merge-contents-022.html: Added. 8566 * editing/deleting/delete-block-merge-contents-023.html: Added. 8567 * editing/deleting/delete-block-merge-contents-024.html: Added. 8568 8569 2006-03-30 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 8570 8571 Reviewed by Darin. 8572 8573 - Test for http://bugs.webkit.org/show_bug.cgi?id=8076 8574 REGRESSION: native text fields are reversed on "visual Hebrew" pages 8575 8576 * fast/forms/visual-hebrew-text-field-expected.checksum: Added. 8577 * fast/forms/visual-hebrew-text-field-expected.png: Added. 8578 * fast/forms/visual-hebrew-text-field-expected.txt: Added. 8579 * fast/forms/visual-hebrew-text-field.html: Added. 8580 8581 2006-03-30 Alexey Proskuryakov <ap (a] nypop.com> 8582 8583 Reviewed by John Sullivan. 8584 8585 - fix http://bugs.webkit.org/show_bug.cgi?id=8051 8586 Empty forms are submitted incorrectly 8587 8588 Test: fast/forms/empty-get.html 8589 8590 * platform/KURL.cpp: 8591 (KURL::setQuery): Add a question mark for empty query strings, too. 8592 8593 2006-03-30 Dave Hyatt <hyatt (a] apple.com> 8594 8595 Roll out the fix to 7102 and reopen it to get Spinneret working 8596 again. 8597 8598 Reviewed by justin 8599 8600 * page/Frame.cpp: 8601 (WebCore::Frame::didOpenURL): 8602 (WebCore::Frame::receivedFirstData): 8603 (WebCore::Frame::begin): 8604 8605 2006-03-30 Dave Hyatt <hyatt (a] apple.com> 8606 8607 Land support for JPEG image decoding on Win32. 8608 8609 * WebCore.vcproj/WebCore/WebCore.vcproj: 8610 * platform/cairo/ImageSourceCairo.cpp: 8611 (WebCore::createDecoder): 8612 (WebCore::ImageSource::frameHasAlphaAtIndex): 8613 * platform/image-decoders/ImageDecoder.h: 8614 (WebCore::RGBA32Buffer::setRGBA): 8615 (WebCore::ImageDecoder::supportsAlpha): 8616 * platform/image-decoders/gif/GIFImageDecoder.cpp: 8617 (WebCore::GIFImageDecoder::haveDecodedRow): 8618 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: 8619 (WebCore::JPEGImageReader::JPEGImageReader): 8620 (WebCore::JPEGImageReader::close): 8621 (WebCore::JPEGImageReader::skipBytes): 8622 (WebCore::JPEGImageReader::decode): 8623 (WebCore::JPEGImageReader::info): 8624 (WebCore::JPEGImageReader::samples): 8625 (WebCore::JPEGImageReader::decoder): 8626 (WebCore::error_exit): 8627 (WebCore::init_source): 8628 (WebCore::skip_input_data): 8629 (WebCore::fill_input_buffer): 8630 (WebCore::term_source): 8631 (WebCore::JPEGImageDecoder::decode): 8632 (WebCore::JPEGImageDecoder::outputScanlines): 8633 (WebCore::JPEGImageDecoder::jpegComplete): 8634 * platform/image-decoders/jpeg/JPEGImageDecoder.h: 8635 (WebCore::JPEGImageDecoder::supportsAlpha): 8636 (WebCore::JPEGImageDecoder::setSize): 8637 * platform/image-decoders/png/PNGImageDecoder.cpp: 8638 (WebCore::PNGImageDecoder::rowAvailable): 8639 8640 2006-03-29 Justin Garcia <justin.garcia (a] apple.com> 8641 8642 Reviewed by darin 8643 8644 <http://bugs.webkit.org/show_bug.cgi?id=8067> 8645 REGRESSION: selectionRect includes next/previous replaced elements 8646 Also fixes: <rdar://problems/4402375&4474871&4492934> 8647 8648 In the case where a selection starts at the end or ends at the start 8649 of o, o->selectionState() != SelectionNone, but o isn't really selected. 8650 Constraining the selection with upstream and downstream eliminates these 8651 types of endpoints, but constraining endpoints that occur at the 8652 start or end of a paragraph creates positions inside containers - some 8653 of which the selection painting code isn't equipped to handle. 8654 8655 * dom/Document.cpp: 8656 (WebCore::Document::updateSelection): 8657 * rendering/render_replaced.cpp: 8658 (WebCore::RenderReplaced::shouldPaint): 8659 (WebCore::RenderReplaced::selectionRect): 8660 (WebCore::RenderReplaced::setSelectionState): 8661 (WebCore::RenderWidget::setSelectionState): 8662 8663 2006-03-29 Adele Peterson <adele (a] apple.com> 8664 8665 Reviewed by Hyatt. 8666 8667 - Fix for http://bugs.webkit.org/show_bug.cgi?id=6986 8668 Switch to use new text field implementation for <input type="text"> 8669 8670 * css/html4.css: Added default style info for new text fields. 8671 * rendering/RenderTextField.cpp: 8672 (WebCore::RenderTextField::createDivStyle): Added an extra 1px of padding on the left & right to match Win IE & the latest Mozilla. 8673 (WebCore::RenderTextField::updateFromElement): Removed some outdated comments. Cleaned up the way we add text nodes to the div. 8674 (WebCore::RenderTextField::setSelectionStart): Tweaked selection code to better match Mozilla behavior. 8675 (WebCore::RenderTextField::setSelectionEnd): ditto. 8676 (WebCore::RenderTextField::select): Cleaned this up by having it call setSelectionRange. 8677 (WebCore::RenderTextField::setSelectionRange): Calls updateLayout now in case this is called in an onload handler, and no other layout has occurred. 8678 (WebCore::RenderTextField::calcMinMaxWidth): Use floatWidth to calculate the width of the "0" character. 8679 * rendering/RenderTheme.cpp: (WebCore::RenderTheme::isControlStyled): If the text field's specified border is different from 8680 the default border, then treat the control as styled, so the engine knows to turn off the aqua appearance. 8681 * rendering/RenderThemeMac.mm: 8682 (WebCore::RenderThemeMac::paintTextField): return false so the engine knows not to try to draw the border. 8683 (WebCore::RenderThemeMac::adjustTextFieldStyle): text field style info has been moved to html4.css. 8684 We also add intrinsic margins here if the font size is large enough. 8685 * html/HTMLTextFieldInnerElement.cpp: (WebCore::HTMLTextFieldInnerElement::defaultEventHandler): 8686 No longer check for appearance. All text fields with m_type == TEXT will use the new implementation. 8687 * html/HTMLInputElement.cpp: 8688 (WebCore::HTMLInputElement::isKeyboardFocusable): ditto. 8689 (WebCore::HTMLInputElement::focus): ditto. 8690 (WebCore::HTMLInputElement::selectionStart): ditto. 8691 (WebCore::HTMLInputElement::selectionEnd): ditto. 8692 (WebCore::HTMLInputElement::setSelectionStart): ditto. 8693 (WebCore::HTMLInputElement::setSelectionEnd): ditto. 8694 (WebCore::HTMLInputElement::select): ditto. 8695 (WebCore::HTMLInputElement::setSelectionRange): ditto. 8696 (WebCore::HTMLInputElement::createRenderer): ditto. 8697 (WebCore::HTMLInputElement::defaultEventHandler): ditto. 8698 (WebCore::HTMLInputElement::isMouseFocusable): Added. Old text fields relied on the widget to provide a focus policy. 8699 A text field that is focusable should be mouse focusable, and shouldn't need to ask the base class. 8700 * html/HTMLInputElement.h: Added isMouseFocusable. 8701 * html/HTMLGenericFormElement.cpp: (WebCore::HTMLGenericFormElement::isMouseFocusable): 8702 Removed specific text field code since that is now done in HTMLInputElement::isMouseFocusable. 8703 * dom/Document.cpp: (WebCore::Document::clearSelectionIfNeeded): Check that the new selection is does not have a shadowAncestorNode that is focused. 8704 8705 2006-03-29 Darin Adler <darin (a] apple.com> 8706 8707 Reviewed by Eric. 8708 8709 - fix http://bugs.webkit.org/show_bug.cgi?id=8026 8710 A particular animated SVG crashes in filter code 8711 <rdar://problem/4494775> A particular animated SVG crashes in filter code 8712 8713 - fix some code that is not handling references correctly for GC 8714 8715 Test: svg/custom/empty-merge.svg 8716 8717 * kcanvas/device/quartz/KCanvasFilterQuartz.mm: 8718 (WebCore::KCanvasFilterQuartz::KCanvasFilterQuartz): Use KWQRetainNSRelease to 8719 properly retain a reference to an Objective-C object in a C++ class. 8720 (WebCore::KCanvasFilterQuartz::~KCanvasFilterQuartz): Use KWQRelease instead of 8721 release. 8722 (WebCore::KCanvasFilterQuartz::prepareFilter): Use KWQRetain instead of retain. 8723 (WebCore::KCanvasFilterQuartz::applyFilter): Use KWQRelease instead of release. 8724 (WebCore::KCanvasFilterQuartz::imageForName): Use objectForKey: instead of 8725 valueForKey: on the dictionary to sidestep a bug in valueForKey: on empty strings 8726 and because what we're doing with a dictionary here has nothing to do with 8727 key value encoding. 8728 8729 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm: 8730 (WebCore::KRenderingDeviceContextQuartz::~KRenderingDeviceContextQuartz): 8731 Use KWQRelease instead of release. 8732 (WebCore::KRenderingDeviceContextQuartz::nsGraphicsContext): Use KWQRetain 8733 instead of retain to properly retain a reference to an Objective-C object 8734 in a C++ class. 8735 8736 * platform/mac/ImageMac.mm: 8737 (WebCore::Image::invalidateNativeData): Use CFRelease instead of release. 8738 (WebCore::Image::getNSImage): Use KWQRetainNSRelease to properly retain 8739 a reference to an Objective-C object in a C++ class. 8740 8741 2006-03-29 Geoffrey Garen <ggaren (a] apple.com> 8742 8743 Reviewed by Darin. 8744 8745 - WebCore side of fix for <rdar://problem/4308243> 8F36 Regression: 8746 crash in malloc_consolidate if you use a .PAC file 8747 8748 (1) To ensure thread-safe deallocation, set the "unsafe to destroy on 8749 non-main threads" bit in the DOMObject constructor. 8750 8751 (2) Made all binding objects inherit from DOMObject, because the 8752 WebCore data structures they wrap are not thread-safe. "DOMObject" is 8753 a slightly awkward name for things like the Window object, but the 8754 DOM spec is considering adding a Window object, and creating a whole 8755 new base class for this purpose seemed like overkill. 8756 8757 * khtml/ecma/JSDOMParser.h: 8758 * khtml/ecma/JSXMLHttpRequest.h: 8759 * khtml/ecma/JSXMLSerializer.cpp: 8760 (KJS::XMLSerializerConstructorImp::XMLSerializerConstructorImp): 8761 * khtml/ecma/JSXMLSerializer.h: 8762 * khtml/ecma/JSXSLTProcessor.h: 8763 * khtml/ecma/kjs_binding.h: 8764 (KJS::DOMObject::DOMObject): Unset the "safe to collect on non-main 8765 threads bit" to ensure thread-safe deallocation. 8766 * khtml/ecma/kjs_html.h: 8767 * khtml/ecma/kjs_navigator.cpp: 8768 (KJS::Navigator::Navigator): 8769 (KJS::PluginBase::PluginBase): 8770 * khtml/ecma/kjs_navigator.h: 8771 * khtml/ecma/kjs_proxy.cpp: 8772 * khtml/ecma/kjs_window.cpp: 8773 (KJS::History::History): 8774 (KJS::FrameArray::FrameArray): 8775 (KJS::Screen::Screen): 8776 (KJS::Window::Window): 8777 (KJS::BarInfo::BarInfo): 8778 * khtml/ecma/kjs_window.h: 8779 8780 2006-03-29 Geoffrey Garen <ggaren (a] apple.com> 8781 8782 Reviewed by Darin. 8783 8784 - Fixed <rdar://problem/4477126> TOT REGRESSION: with release 8785 build, maps.google.com zoom slider always zooms fully out 8786 8787 There were 2 problems: (1) A syntax error in the UIEvent IDL file 8788 prevented some things from showing up in the bindings; (2) 8789 MouseEvent had a duplicate isSimulated property that shadowed 8790 MouseRelatedEvent's isSimulated property, and MouseEvent failed to 8791 initialize MouseRelatedEvent's isSimulated property. 8792 8793 * dom/UIEvent.idl: 8794 * dom/dom2_eventsimpl.cpp: 8795 (WebCore::MouseRelatedEvent::MouseRelatedEvent): 8796 (WebCore::MouseEvent::MouseEvent): 8797 * dom/dom2_eventsimpl.h: 8798 8799 2006-03-29 Tim Omernick <timo (a] apple.com> 8800 8801 Reviewed by Darin. 8802 8803 * html/HTMLInputElement.cpp: 8804 (WebCore::HTMLInputElement::setInputType): 8805 If the input type is dynamically changed, reevaluate whether the element maintains its state 8806 (this decision is based on the input's type). Fixes an assertion error when leaving a page 8807 with a text field that had been dynamically changed to a password field. 8808 8809 2006-03-29 Alexey Proskuryakov <ap (a] nypop.com> 8810 8811 Reviewed by Darin. 8812 8813 - http://bugs.webkit.org/show_bug.cgi?id=8055 8814 Fix most CSS grammar conflicts. 8815 8816 Gets the number of shift/reduce and reduce/reduce conflicts down from 37+4 to 7+0. 8817 8818 I have fixed the reduce/reduce conflicts, then noticed that two of the fixes 8819 were already made in KDE tree (the other two are different because declaration 8820 blocks are described in quite different ways). Shift/reduce fixes are just 8821 merged from KDE, r332845 by Michael Matz. 8822 8823 * css/CSSGrammar.y: 8824 8825 2006-03-29 Alexey Proskuryakov <ap (a] nypop.com> 8826 8827 Reviewed by Darin. 8828 8829 - fix http://bugs.webkit.org/show_bug.cgi?id=7157 8830 An asterisk in a CSS property name breaks CSS handling 8831 (Many layout problems at letras.terra.com.br) 8832 8833 Test: fast/css/error-in-last-decl.html 8834 8835 * css/CSSGrammar.y: Added a rule for the case when the last CSS rule 8836 has a syntax error, and doesn't end with a semicolon. 8837 8838 2006-03-29 Darin Adler <darin (a] apple.com> 8839 8840 Reviewed by Anders. 8841 8842 - another cut at fixing the buildbot 8843 8844 * generate-derived-sources: Fix if statement that was always following 8845 the Windows case. I believe this is the main problem. 8846 8847 * WebCore.xcodeproj/project.pbxproj: Added CharsetData.h and added CharsetData.cpp 8848 to the target. 8849 * WebCore.vcproj/WebCore/WebCore.vcproj: Similar changes. 8850 8851 * platform/CharsetData.h: Added. 8852 * platform/CharsetNames.cpp: Moved the actual character set data out into a 8853 separate source file instead of include a .cpp file. 8854 8855 * platform/make-charset-table.pl: Changed to generate a file that can stand alone. 8856 8857 2006-03-29 Darin Adler <darin (a] apple.com> 8858 8859 - an attempt to fix the buildbot 8860 8861 * platform/mac/mac-encodings.txt: Touched this file so the character encodings 8862 files will be regenerated. 8863 8864 2006-03-29 Darin Adler <darin (a] apple.com> 8865 8866 - a quick cut at fixing the windows build 8867 8868 * WebCore.vcproj/WebCore/WebCore.vcproj: Added a few recently-added files. 8869 8870 2006-03-29 Maciej Stachowiak <mjs (a] apple.com> 8871 8872 Reviewed by Anders. 8873 8874 - fixed <rdar://problem/4454976> repro crash in -[NSTextView(NSSharing) setSelectedRanges:affinity:stillSelecting:] when navigating 8875 8876 Also fixed other issues with contains. The problem that caused the bug was: 8877 - contains should return true for the element itself, unlike isAncestor 8878 8879 Other problems I fixed: 8880 - contains shouldn't be present on non-Element nodes 8881 - contains should return false when passed a non-Element node 8882 - contains should return false when passed a non-Node 8883 8884 * bindings/scripts/CodeGeneratorJS.pm: Handle Element as a parameter. 8885 * dom/Element.cpp: 8886 (WebCore::Element::contains): Added new implementation. 8887 * dom/Element.h: Added prototype for contains. 8888 * dom/Element.idl: Added IDL declaration for contains. 8889 * khtml/ecma/kjs_dom.cpp: 8890 (KJS::DOMNodeProtoFunc::callAsFunction): Added old wrong contains(). 8891 8892 2006-03-28 Beth Dakin <bdakin (a] apple.com> 8893 8894 Reviewed by Maciej 8895 8896 Fix for <rdar://problem/4493218> repro crash in 8897 khtml::RenderBlock::repaintFloatingDescendants with giant 8898 cellspacing value 8899 8900 Some callers of CSSPrimitiveValue::computeLength() expect an int, 8901 and others a short. This patch splits computeLength() into 8902 computeIntLength() and computeShortLength() so that the appropriate 8903 bounds can be checked. 8904 8905 * css/css_valueimpl.cpp: 8906 (WebCore::CSSPrimitiveValue::computeIntLength): Return 0 if not 8907 within int bounds. 8908 (WebCore::CSSPrimitiveValue::computeShortLength): Return 0 if not 8909 within short bounds. 8910 * css/css_valueimpl.h: 8911 * css/cssstyleselector.cpp: 8912 (WebCore::convertToLength): Switch to appropriate computeLength() 8913 call. 8914 (WebCore::CSSStyleSelector::applyProperty): Same. 8915 (WebCore::CSSStyleSelector::mapBackgroundXPosition): Same. 8916 (WebCore::CSSStyleSelector::mapBackgroundYPosition): Same. 8917 * rendering/RenderBlock.cpp: 8918 (WebCore::RenderBlock::repaintFloatingDescendants): Nil check 8919 m_floatingObjects and add an assertion. This is not necessary for 8920 the fix, it is just because we are not sure that it is safe not to 8921 nil-check, and we want to prevent potential problems in release 8922 builds, and catch them with the assertion in debug builds. 8923 (WebCore::RenderBlock::addOverhangingFloats): Same as above. 8924 8925 2006-03-28 Alexey Proskuryakov <ap (a] nypop.com> 8926 8927 Reviewed by Maciej. 8928 8929 - fix http://bugs.webkit.org/show_bug.cgi?id=4616 8930 Setting nodeValue on a textnode with collapsed whitespace only has no visual effect 8931 8932 Test: fast/dom/space-to-text.html 8933 8934 * dom/CharacterData.cpp: 8935 (WebCore::CharacterData::setData): Create a renderer if it's needed, but missing. 8936 (WebCore::CharacterData::appendData): Ditto. 8937 (WebCore::CharacterData::insertData): Ditto. 8938 (WebCore::CharacterData::replaceData): Ditto. 8939 8940 2006-03-28 Tim Omernick <timo (a] apple.com> 8941 8942 Reviewed by Maciej. 8943 8944 <rdar://problem/4454976> repro crash in -[NSTextView(NSSharing) setSelectedRanges:affinity:stillSelecting:] when navigating 8945 to another page while selecting inside textarea inside iframe 8946 8947 * kwq/WebCoreTextArea.mm: 8948 (-[WebCoreTextArea mouseDown:]): 8949 Guard super's -mouseDown: with calls to Widget::beforeMouseDown() and Widget::afterMouseDown(). 8950 Other widgets do this to protect against being removed from the page and deallocated while handling 8951 mouse down events. 8952 (-[WebCoreTextView mouseDown:]): 8953 ditto 8954 8955 * manual-tests/textarea-iframe-navigation.html: Added. 8956 * manual-tests/textarea-iframe-navigation2.html: Added. 8957 Manual test case for this fix. 8958 8959 2006-03-28 Eric Seidel <eseidel (a] apple.com> 8960 8961 Reviewed by darin. 8962 8963 <rdar://problem/4402170> CrashTracer: 499 crashes in Safari at com.apple.WebCore: DOM::DocumentImpl::open + 16 8964 8965 * dom/Document.cpp: 8966 (WebCore::Document::write): Fix unreproducible infinite recursion. 8967 8968 2006-03-28 Eric Seidel <eseidel (a] apple.com> 8969 8970 Reviewed by darin. 8971 8972 Remove global initializers. 8973 8974 * kcanvas/device/quartz/KCanvasFilterQuartz.mm: 8975 * ksvg2/svg/SVGAngle.cpp: 8976 * ksvg2/svg/SVGColor.cpp: 8977 * ksvg2/svg/SVGLength.cpp: 8978 8979 2006-03-28 Eric Seidel <eseidel (a] apple.com> 8980 8981 Reviewed by darin. 8982 8983 Switch UIEvent, MouseEvent and KeyboardEvent over to 8984 be new auto-generated bindings. 8985 http://bugs.webkit.org/show_bug.cgi?id=7928 8986 8987 Updated test: fast/dom/prototype-chain.html 8988 8989 * WebCore.xcodeproj/project.pbxproj: 8990 * bindings/objc/DOMEvents.mm: 8991 (-[DOMEvent ::]): 8992 (-[DOMMouseEvent initMouseEvent:::::::::::::::]): 8993 * bindings/scripts/CodeGeneratorJS.pm: 8994 * dom/EventTargetNode.cpp: 8995 (WebCore::EventTargetNode::dispatchMouseEvent): 8996 * dom/KeyboardEvent.idl: Added. 8997 * dom/MouseEvent.idl: Added. 8998 * dom/UIEvent.idl: Added. 8999 * dom/WheelEvent.idl: 9000 * dom/dom2_eventsimpl.cpp: 9001 (WebCore::MouseEvent::MouseEvent): 9002 (WebCore::MouseEvent::initMouseEvent): 9003 * dom/dom2_eventsimpl.h: 9004 (WebCore::MouseEvent::relatedTarget): 9005 (WebCore::MouseEvent::clipboard): 9006 * generate-derived-sources: 9007 * khtml/ecma/kjs_dom.cpp: 9008 (KJS::toEventTargetNode): 9009 * khtml/ecma/kjs_dom.h: 9010 * khtml/ecma/kjs_events.cpp: 9011 (KJS::toJS): 9012 * khtml/ecma/kjs_events.h: 9013 9014 2006-03-28 Darin Adler <darin (a] apple.com> 9015 9016 Reviewed by Eric. 9017 9018 - replace getDocument with document in a few places that Geoff missed 9019 9020 * WebCore.xcodeproj/project.pbxproj: 9021 * dom/Attr.cpp: 9022 (WebCore::Attr::createTextChild): 9023 (WebCore::Attr::setValue): 9024 (WebCore::Attr::cloneNode): 9025 * dom/Attribute.cpp: 9026 (WebCore::Attribute::createAttrIfNeeded): 9027 * dom/Element.cpp: 9028 (WebCore::Element::cloneNode): 9029 (WebCore::inHTMLDocument): 9030 (WebCore::Element::setAttribute): 9031 (WebCore::Element::setAttributeMap): 9032 (WebCore::Element::createStyleForRenderer): 9033 (WebCore::Element::createRenderer): 9034 (WebCore::Element::recalcStyle): 9035 (WebCore::Element::dispatchAttrRemovalEvent): 9036 (WebCore::Element::dispatchAttrAdditionEvent): 9037 (WebCore::Element::updateId): 9038 (WebCore::Element::removeAttributeNode): 9039 (WebCore::Element::focus): 9040 (WebCore::Element::blur): 9041 * dom/NamedAttrMap.cpp: 9042 (WebCore::inHTMLDocument): 9043 (WebCore::NamedAttrMap::setNamedItem): 9044 * dom/NamedMappedAttrMap.cpp: 9045 (WebCore::NamedMappedAttrMap::parseClassAttribute): 9046 * dom/StyledElement.cpp: 9047 (WebCore::StyledElement::createInlineStyleDecl): 9048 (WebCore::StyledElement::parseMappedAttribute): 9049 (WebCore::StyledElement::createMappedDecl): 9050 9051 - added missing include that seems to be breaking the Windows build 9052 9053 * platform/String.cpp: Include <stdarg.h>. 9054 9055 2006-03-28 Geoffrey Garen <ggaren (a] apple.com> 9056 9057 Reviewed by Beth. 9058 9059 - Global replace of getDocument() with document(). Darin suggested this 9060 in his review of my EventTargetNode patch. It matches the style of 9061 methods like ownerDocument(). 9062 9063 - Changed getDocument() to document(); changed data member document to 9064 m_document; changed stack variable document to doc. 9065 9066 * bindings/objc/DOM.mm: 9067 (-[DOMNode ownerDocument]): 9068 (-[DOMNode KJS::Bindings::]): 9069 (-[DOMElement _getURLAttribute:]): 9070 * bindings/objc/DOMHTML.mm: 9071 (-[DOMHTMLElement titleDisplayString]): 9072 (-[DOMHTMLInputElement altDisplayString]): 9073 (-[DOMHTMLAnchorElement blur]): 9074 (-[DOMHTMLAnchorElement focus]): 9075 (-[DOMHTMLImageElement altDisplayString]): 9076 (-[DOMHTMLAppletElement altDisplayString]): 9077 (-[DOMHTMLAreaElement altDisplayString]): 9078 * bindings/objc/DOMInternal.mm: 9079 (-[WebScriptObject _initializeScriptDOMNodeImp]): 9080 * bridge/mac/FrameMac.mm: 9081 (WebCore::FrameMac::attributedString): 9082 * bridge/mac/FrameViewMac.mm: 9083 (WebCore::FrameView::updateDashboardRegions): 9084 * bridge/mac/WebCoreFrameBridge.mm: 9085 (-[WebCoreFrameBridge initSubframeWithRenderer:]): 9086 (-[WebCoreFrameBridge setSelectedDOMRange:affinity:closeTyping:]): 9087 (-[WebCoreFrameBridge smartDeleteRangeForProposedRange:]): 9088 * css/CSSComputedStyleDeclaration.cpp: 9089 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): 9090 * css/css_base.cpp: 9091 (WebCore::StyleBase::baseURL): 9092 * css/css_stylesheetimpl.cpp: 9093 (WebCore::CSSStyleSheet::CSSStyleSheet): 9094 * css/cssstyleselector.cpp: 9095 (WebCore::CSSStyleSelector::initForStyleResolve): 9096 (WebCore::CSSStyleSelector::canShareStyleWithElement): 9097 (WebCore::CSSStyleSelector::locateSharedStyle): 9098 (WebCore::CSSStyleSelector::createStyleForElement): 9099 (WebCore::CSSStyleSelector::createPseudoStyleForElement): 9100 (WebCore::CSSStyleSelector::adjustRenderStyle): 9101 (WebCore::CSSStyleSelector::styleRulesForElement): 9102 (WebCore::CSSStyleSelector::checkOneSelector): 9103 (WebCore::CSSStyleSelector::applyProperty): 9104 (WebCore::CSSStyleSelector::mapBackgroundImage): 9105 (WebCore::CSSStyleSelector::getColorFromPrimitiveValue): 9106 * dom/AbstractView.cpp: 9107 (WebCore::AbstractView::AbstractView): 9108 * dom/CDATASection.cpp: 9109 (WebCore::CDATASection::cloneNode): 9110 (WebCore::CDATASection::createNew): 9111 * dom/CharacterData.cpp: 9112 (WebCore::CharacterData::setData): 9113 (WebCore::CharacterData::insertData): 9114 (WebCore::CharacterData::deleteData): 9115 (WebCore::CharacterData::replaceData): 9116 (WebCore::CharacterData::dispatchModifiedEvent): 9117 * dom/Comment.cpp: 9118 (WebCore::Comment::cloneNode): 9119 * dom/ContainerNode.cpp: 9120 (WebCore::ContainerNode::insertBefore): 9121 (WebCore::ContainerNode::replaceChild): 9122 (WebCore::ContainerNode::removeChild): 9123 (WebCore::ContainerNode::appendChild): 9124 (WebCore::ContainerNode::addChild): 9125 (WebCore::ContainerNode::getUpperLeftCorner): 9126 (WebCore::dispatchChildInsertionEvents): 9127 (WebCore::dispatchChildRemovalEvents): 9128 * dom/DOMImplementation.cpp: 9129 (WebCore::DOMImplementation::createDocument): 9130 * dom/Document.cpp: 9131 (WebCore::Document::Document): 9132 (WebCore::Document::~Document): 9133 (WebCore::Document::createDocumentFragment): 9134 (WebCore::Document::adoptNode): 9135 (WebCore::Document::createElementNS): 9136 (WebCore::Document::nodeAbsIndex): 9137 (WebCore::Document::setFocusNode): 9138 (WebCore::Document::topDocument): 9139 * dom/DocumentFragment.cpp: 9140 (WebCore::DocumentFragment::cloneNode): 9141 * dom/EventTargetNode.cpp: 9142 (WebCore::EventTargetNode::~EventTargetNode): 9143 (WebCore::EventTargetNode::insertedIntoDocument): 9144 (WebCore::EventTargetNode::removedFromDocument): 9145 (WebCore::EventTargetNode::addEventListener): 9146 (WebCore::EventTargetNode::removeEventListener): 9147 (WebCore::EventTargetNode::dispatchGenericEvent): 9148 (WebCore::EventTargetNode::dispatchEvent): 9149 (WebCore::EventTargetNode::dispatchSubtreeModifiedEvent): 9150 (WebCore::EventTargetNode::dispatchWindowEvent): 9151 (WebCore::EventTargetNode::dispatchUIEvent): 9152 (WebCore::EventTargetNode::dispatchKeyEvent): 9153 (WebCore::EventTargetNode::dispatchMouseEvent): 9154 (WebCore::EventTargetNode::dispatchWheelEvent): 9155 (WebCore::EventTargetNode::removeHTMLEventListener): 9156 * dom/Node.cpp: 9157 (WebCore::Node::Node): 9158 (WebCore::Node::setDocument): 9159 (WebCore::Node::setChanged): 9160 (WebCore::Node::checkSetPrefix): 9161 (WebCore::Node::checkAddChild): 9162 (WebCore::Node::attach): 9163 (WebCore::Node::detach): 9164 (WebCore::Node::createRendererIfNeeded): 9165 (WebCore::Node::rendererIsNeeded): 9166 (WebCore::Node::getElementsByTagNameNS): 9167 (WebCore::Node::ownerDocument): 9168 (WebCore::Node::setTextContent): 9169 * dom/Node.h: 9170 (WebCore::Node::document): 9171 (WebCore::Node::inDocument): 9172 * dom/NodeList.cpp: 9173 (WebCore::NodeList::itemById): 9174 * dom/Position.cpp: 9175 (WebCore::Position::documentElement): 9176 * dom/Range.cpp: 9177 (WebCore::Range::commonAncestorContainer): 9178 (WebCore::Range::setStart): 9179 (WebCore::Range::setEnd): 9180 (WebCore::Range::compareBoundaryPoints): 9181 (WebCore::Range::insertNode): 9182 (WebCore::Range::text): 9183 (WebCore::Range::setStartAfter): 9184 (WebCore::Range::setEndBefore): 9185 (WebCore::Range::setEndAfter): 9186 (WebCore::Range::surroundContents): 9187 (WebCore::Range::setStartBefore): 9188 (WebCore::rangeOfContents): 9189 * dom/Text.cpp: 9190 (WebCore::Text::cloneNode): 9191 (WebCore::Text::createNew): 9192 * dom/dom2_eventsimpl.cpp: 9193 (WebCore::MouseRelatedEvent::receivedTarget): 9194 * dom/dom2_traversalimpl.cpp: 9195 (WebCore::NodeIterator::NodeIterator): 9196 * dom/dom_elementimpl.cpp: 9197 (WebCore::Attribute::createAttrIfNeeded): 9198 (WebCore::Attr::createTextChild): 9199 (WebCore::Attr::setValue): 9200 (WebCore::Attr::cloneNode): 9201 (WebCore::Element::cloneNode): 9202 (WebCore::inHTMLDocument): 9203 (WebCore::Element::setAttribute): 9204 (WebCore::Element::setAttributeMap): 9205 (WebCore::Element::createStyleForRenderer): 9206 (WebCore::Element::createRenderer): 9207 (WebCore::Element::recalcStyle): 9208 (WebCore::Element::dispatchAttrRemovalEvent): 9209 (WebCore::Element::dispatchAttrAdditionEvent): 9210 (WebCore::Element::updateId): 9211 (WebCore::Element::removeAttributeNode): 9212 (WebCore::Element::focus): 9213 (WebCore::Element::blur): 9214 (WebCore::NamedAttrMap::setNamedItem): 9215 (WebCore::NamedMappedAttrMap::parseClassAttribute): 9216 (WebCore::StyledElement::createInlineStyleDecl): 9217 (WebCore::StyledElement::parseMappedAttribute): 9218 (WebCore::StyledElement::createMappedDecl): 9219 * dom/dom_xmlimpl.cpp: 9220 (WebCore::EntityReference::cloneNode): 9221 (WebCore::ProcessingInstruction::cloneNode): 9222 (WebCore::ProcessingInstruction::checkStyleSheet): 9223 (WebCore::ProcessingInstruction::sheetLoaded): 9224 (WebCore::ProcessingInstruction::setStyleSheet): 9225 * dom/xml_tokenizer.cpp: 9226 (WebCore::XMLTokenizer::XMLTokenizer): 9227 * editing/ReplaceSelectionCommand.cpp: 9228 (WebCore::ReplacementFragment::ReplacementFragment): 9229 (WebCore::ReplaceSelectionCommand::fixupNodeStyles): 9230 (WebCore::styleForNode): 9231 * editing/Selection.cpp: 9232 (WebCore::Selection::toRange): 9233 * editing/SelectionController.cpp: 9234 (WebCore::SelectionController::~SelectionController): 9235 (WebCore::SelectionController::setSelection): 9236 (WebCore::SelectionController::xPosForVerticalArrowNavigation): 9237 (WebCore::SelectionController::frame): 9238 (WebCore::SelectionController::layout): 9239 (WebCore::SelectionController::needsCaretRepaint): 9240 * editing/TextIterator.cpp: 9241 (WebCore::TextIterator::range): 9242 (WebCore::SimplifiedBackwardsTextIterator::range): 9243 * editing/VisiblePosition.cpp: 9244 (WebCore::VisiblePosition::init): 9245 (WebCore::makeRange): 9246 * editing/markup.cpp: 9247 (WebCore::startMarkup): 9248 (WebCore::shouldSelfClose): 9249 (WebCore::markup): 9250 (WebCore::createMarkup): 9251 * editing/visible_units.cpp: 9252 (WebCore::previousBoundary): 9253 (WebCore::nextBoundary): 9254 (WebCore::previousLinePosition): 9255 (WebCore::nextLinePosition): 9256 (WebCore::inSameDocument): 9257 * html/HTMLCollection.cpp: 9258 (WebCore::HTMLCollection::HTMLCollection): 9259 (WebCore::HTMLCollection::resetCollectionInfo): 9260 * html/HTMLElement.cpp: 9261 (WebCore::HTMLElement::nodeName): 9262 (WebCore::HTMLElement::cloneNode): 9263 (WebCore::HTMLElement::innerText): 9264 (WebCore::HTMLElement::createContextualFragment): 9265 (WebCore::HTMLElement::setInnerText): 9266 (WebCore::HTMLElement::setOuterText): 9267 (WebCore::HTMLElement::isContentEditable): 9268 (WebCore::HTMLElement::contentEditable): 9269 (WebCore::HTMLElement::toString): 9270 (WebCore::HTMLElement::childAllowed): 9271 (WebCore::HTMLElement::setHTMLEventListener): 9272 * html/HTMLFormElement.cpp: 9273 (WebCore::HTMLFormElement::formWouldHaveSecureSubmission): 9274 (WebCore::HTMLFormElement::attach): 9275 (WebCore::HTMLFormElement::insertedIntoDocument): 9276 (WebCore::HTMLFormElement::removedFromDocument): 9277 (WebCore::HTMLFormElement::formData): 9278 (WebCore::HTMLFormElement::prepareSubmit): 9279 (WebCore::HTMLFormElement::submit): 9280 (WebCore::HTMLFormElement::reset): 9281 (WebCore::HTMLFormElement::parseMappedAttribute): 9282 (WebCore::HTMLFormElement::registerFormElement): 9283 (WebCore::HTMLFormElement::removeFormElement): 9284 * html/HTMLGenericFormElement.cpp: 9285 (WebCore::HTMLGenericFormElement::attach): 9286 (WebCore::HTMLGenericFormElement::insertedIntoTree): 9287 (WebCore::HTMLGenericFormElement::isKeyboardFocusable): 9288 * html/HTMLInputElement.cpp: 9289 (WebCore::HTMLInputElement::~HTMLInputElement): 9290 (WebCore::HTMLInputElement::isKeyboardFocusable): 9291 (WebCore::HTMLInputElement::focus): 9292 (WebCore::HTMLInputElement::setInputType): 9293 (WebCore::HTMLInputElement::parseMappedAttribute): 9294 (WebCore::HTMLInputElement::attach): 9295 (WebCore::HTMLInputElement::setChecked): 9296 (WebCore::HTMLInputElement::preDispatchEventHandler): 9297 (WebCore::HTMLInputElement::defaultEventHandler): 9298 (WebCore::HTMLInputElement::src): 9299 * html/HTMLKeygenElement.cpp: 9300 (WebCore::HTMLKeygenElement::appendFormData): 9301 * html/HTMLLabelElement.cpp: 9302 (WebCore::HTMLLabelElement::formElement): 9303 * html/HTMLOptionElement.cpp: 9304 (WebCore::HTMLOptionElement::text): 9305 (WebCore::HTMLOptionElement::setText): 9306 * html/HTMLParser.cpp: 9307 (WebCore::HTMLParser::HTMLParser): 9308 * html/HTMLSelectElement.cpp: 9309 (WebCore::HTMLSelectElement::~HTMLSelectElement): 9310 * html/HTMLTextAreaElement.cpp: 9311 (WebCore::HTMLTextAreaElement::~HTMLTextAreaElement): 9312 (WebCore::HTMLTextAreaElement::setDefaultValue): 9313 * html/HTMLTokenizer.cpp: 9314 (WebCore::HTMLTokenizer::HTMLTokenizer): 9315 * html/html_baseimpl.cpp: 9316 (WebCore::HTMLBodyElement::createLinkDecl): 9317 (WebCore::HTMLBodyElement::mapToEntry): 9318 (WebCore::HTMLBodyElement::parseMappedAttribute): 9319 (WebCore::HTMLBodyElement::insertedIntoDocument): 9320 (WebCore::HTMLFrameElement::isURLAllowed): 9321 (WebCore::HTMLFrameElement::openURL): 9322 (WebCore::HTMLFrameElement::attach): 9323 (WebCore::HTMLFrameElement::close): 9324 (WebCore::HTMLFrameElement::contentFrame): 9325 (WebCore::HTMLFrameElement::frameWidth): 9326 (WebCore::HTMLFrameElement::frameHeight): 9327 (WebCore::HTMLFrameSetElement::parseMappedAttribute): 9328 (WebCore::HTMLIFrameElement::parseMappedAttribute): 9329 (WebCore::HTMLIFrameElement::insertedIntoDocument): 9330 (WebCore::HTMLIFrameElement::removedFromDocument): 9331 (WebCore::HTMLIFrameElement::attach): 9332 (WebCore::HTMLIFrameElement::src): 9333 * html/html_blockimpl.cpp: 9334 (WebCore::HTMLParagraphElement::checkDTD): 9335 * html/html_headimpl.cpp: 9336 (WebCore::HTMLBaseElement::removedFromDocument): 9337 (WebCore::HTMLBaseElement::process): 9338 (WebCore::HTMLLinkElement::setDisabledState): 9339 (WebCore::HTMLLinkElement::parseMappedAttribute): 9340 (WebCore::HTMLLinkElement::process): 9341 (WebCore::HTMLLinkElement::setStyleSheet): 9342 (WebCore::HTMLLinkElement::sheetLoaded): 9343 (WebCore::HTMLLinkElement::href): 9344 (WebCore::HTMLMetaElement::process): 9345 (WebCore::HTMLScriptElement::childrenChanged): 9346 (WebCore::HTMLScriptElement::parseMappedAttribute): 9347 (WebCore::HTMLScriptElement::insertedIntoDocument): 9348 (WebCore::HTMLScriptElement::evaluateScript): 9349 (WebCore::HTMLScriptElement::setText): 9350 (WebCore::HTMLScriptElement::src): 9351 (WebCore::HTMLStyleElement::insertedIntoDocument): 9352 (WebCore::HTMLStyleElement::removedFromDocument): 9353 (WebCore::HTMLStyleElement::childrenChanged): 9354 (WebCore::HTMLStyleElement::sheetLoaded): 9355 (WebCore::HTMLTitleElement::insertedIntoDocument): 9356 (WebCore::HTMLTitleElement::removedFromDocument): 9357 (WebCore::HTMLTitleElement::childrenChanged): 9358 (WebCore::HTMLTitleElement::setText): 9359 * html/html_imageimpl.cpp: 9360 (WebCore::HTMLImageLoader::~HTMLImageLoader): 9361 (WebCore::HTMLImageLoader::updateFromElement): 9362 (WebCore::HTMLImageLoader::notifyFinished): 9363 (WebCore::HTMLImageElement::parseMappedAttribute): 9364 (WebCore::HTMLImageElement::insertedIntoDocument): 9365 (WebCore::HTMLImageElement::removedFromDocument): 9366 (WebCore::HTMLImageElement::width): 9367 (WebCore::HTMLImageElement::height): 9368 (WebCore::HTMLImageElement::src): 9369 (WebCore::HTMLMapElement::~HTMLMapElement): 9370 (WebCore::HTMLMapElement::parseMappedAttribute): 9371 (WebCore::HTMLAreaElement::href): 9372 * html/html_inlineimpl.cpp: 9373 (WebCore::HTMLAnchorElement::isKeyboardFocusable): 9374 (WebCore::HTMLAnchorElement::defaultEventHandler): 9375 (WebCore::HTMLAnchorElement::href): 9376 (WebCore::HTMLAnchorElement::blur): 9377 (WebCore::HTMLAnchorElement::focus): 9378 * html/html_objectimpl.cpp: 9379 (WebCore::HTMLAppletElement::parseMappedAttribute): 9380 (WebCore::HTMLAppletElement::insertedIntoDocument): 9381 (WebCore::HTMLAppletElement::removedFromDocument): 9382 (WebCore::HTMLAppletElement::createRenderer): 9383 (WebCore::HTMLAppletElement::getAppletInstance): 9384 (WebCore::HTMLEmbedElement::getEmbedInstance): 9385 (WebCore::HTMLEmbedElement::parseMappedAttribute): 9386 (WebCore::HTMLEmbedElement::rendererIsNeeded): 9387 (WebCore::HTMLEmbedElement::insertedIntoDocument): 9388 (WebCore::HTMLEmbedElement::removedFromDocument): 9389 (WebCore::HTMLObjectElement::getObjectInstance): 9390 (WebCore::HTMLObjectElement::parseMappedAttribute): 9391 (WebCore::HTMLObjectElement::rendererIsNeeded): 9392 (WebCore::HTMLObjectElement::insertedIntoDocument): 9393 (WebCore::HTMLObjectElement::removedFromDocument): 9394 (WebCore::HTMLObjectElement::updateDocNamedItem): 9395 (WebCore::HTMLParamElement::parseMappedAttribute): 9396 * html/html_tableimpl.cpp: 9397 (WebCore::HTMLTableElement::createTHead): 9398 (WebCore::HTMLTableElement::createTFoot): 9399 (WebCore::HTMLTableElement::createCaption): 9400 (WebCore::HTMLTableElement::insertRow): 9401 (WebCore::HTMLTableElement::addChild): 9402 (WebCore::HTMLTableElement::mapToEntry): 9403 (WebCore::HTMLTableElement::parseMappedAttribute): 9404 (WebCore::HTMLTableElement::additionalAttributeStyleDecl): 9405 (WebCore::HTMLTableElement::getSharedCellDecl): 9406 (WebCore::HTMLTablePartElement::mapToEntry): 9407 (WebCore::HTMLTablePartElement::parseMappedAttribute): 9408 (WebCore::HTMLTableSectionElement::insertRow): 9409 (WebCore::HTMLTableRowElement::insertCell): 9410 * khtml/ecma/kjs_dom.cpp: 9411 (KJS::DOMNode::~DOMNode): 9412 (KJS::DOMNode::mark): 9413 (KJS::DOMElement::getValueProperty): 9414 (KJS::DOMElementProtoFunc::callAsFunction): 9415 (KJS::checkNodeSecurity): 9416 (KJS::toJS): 9417 * khtml/ecma/kjs_html.cpp: 9418 (KJS::JSHTMLElement::implementsCall): 9419 (KJS::JSHTMLElement::bodyGetter): 9420 (KJS::JSHTMLElement::anchorGetter): 9421 (KJS::JSHTMLElement::getValueProperty): 9422 (KJS::JSHTMLElement::bodySetter): 9423 * khtml/ecma/kjs_traversal.cpp: 9424 (KJS::JSNodeFilterCondition::acceptNode): 9425 * khtml/ecma/kjs_views.cpp: 9426 (KJS::DOMAbstractViewProtoFunc::callAsFunction): 9427 * khtml/xbl/xbl_binding.cpp: 9428 (XBL::XBLBindingChain::failed): 9429 (XBL::m_nextBinding): 9430 (XBL::XBLBinding::setXBLDocument): 9431 * khtml/xbl/xbl_protobinding.cpp: 9432 (XBL::XBLPrototypeBinding::document): 9433 * khtml/xsl/XSLStyleSheet.cpp: 9434 (WebCore::XSLStyleSheet::XSLStyleSheet): 9435 * khtml/xsl/XSLTProcessor.cpp: 9436 (WebCore::XSLTProcessor::createDocumentFromSource): 9437 (WebCore::xmlDocPtrFromNode): 9438 (WebCore::XSLTProcessor::transformToString): 9439 * ksvg2/svg/SVGAElement.cpp: 9440 (SVGAElement::defaultEventHandler): 9441 * ksvg2/svg/SVGAnimateColorElement.cpp: 9442 (SVGAnimateColorElement::handleTimerEvent): 9443 * ksvg2/svg/SVGAnimateElement.cpp: 9444 (SVGAnimateElement::handleTimerEvent): 9445 * ksvg2/svg/SVGAnimateTransformElement.cpp: 9446 (SVGAnimateTransformElement::handleTimerEvent): 9447 * ksvg2/svg/SVGAnimationElement.cpp: 9448 (SVGAnimationElement::closeRenderer): 9449 * ksvg2/svg/SVGClipPathElement.cpp: 9450 (SVGClipPathElement::canvasResource): 9451 * ksvg2/svg/SVGElement.cpp: 9452 (WebCore::SVGElement::addSVGEventListener): 9453 * ksvg2/svg/SVGGradientElement.cpp: 9454 (SVGGradientElement::rebuildStops): 9455 * ksvg2/svg/SVGHelper.cpp: 9456 (SVGHelper::PercentageOfViewport): 9457 * ksvg2/svg/SVGLinearGradientElement.cpp: 9458 (SVGLinearGradientElement::buildGradient): 9459 * ksvg2/svg/SVGPatternElement.cpp: 9460 (WebCore::SVGPatternElement::fillAttributesFromReferencePattern): 9461 * ksvg2/svg/SVGRadialGradientElement.cpp: 9462 (WebCore::SVGRadialGradientElement::buildGradient): 9463 * ksvg2/svg/SVGSVGElement.cpp: 9464 (WebCore::SVGSVGElement::setCurrentScale): 9465 (WebCore::SVGSVGElement::addSVGWindowEventListner): 9466 * ksvg2/svg/SVGSetElement.cpp: 9467 (SVGSetElement::handleTimerEvent): 9468 * ksvg2/svg/SVGStyleElement.cpp: 9469 (SVGStyleElement::childrenChanged): 9470 * ksvg2/svg/SVGStyledElement.cpp: 9471 (WebCore::SVGStyledElement::canvas): 9472 * ksvg2/svg/SVGTitleElement.cpp: 9473 (WebCore::SVGTitleElement::closeRenderer): 9474 (WebCore::SVGTitleElement::insertedIntoDocument): 9475 (WebCore::SVGTitleElement::removedFromDocument): 9476 (WebCore::SVGTitleElement::childrenChanged): 9477 * ksvg2/svg/SVGUseElement.cpp: 9478 (SVGUseElement::closeRenderer): 9479 * kwq/WebCoreAXObject.mm: 9480 (-[WebCoreAXObject accessibilityPerformAction:]): 9481 (-[WebCoreAXObject accessibilityAttributeValue:]): 9482 * page/Frame.cpp: 9483 (WebCore::parentFromOwnerRenderer): 9484 (WebCore::Frame::frameForNode): 9485 (WebCore::Frame::clearDocumentFocus): 9486 * page/FrameView.cpp: 9487 (WebCore::FrameView::dispatchMouseEvent): 9488 * rendering/RenderBox.cpp: 9489 (WebCore::RenderBox::setStyle): 9490 * rendering/RenderCanvas.cpp: 9491 (WebCore::RenderCanvas::RenderCanvas): 9492 (WebCore::RenderCanvas::paintBoxDecorations): 9493 (WebCore::RenderCanvas::repaintViewRectangle): 9494 * rendering/RenderImage.cpp: 9495 (WebCore::RenderImage::imageMap): 9496 * rendering/RenderLayer.cpp: 9497 (WebCore::RenderLayer::setHasHorizontalScrollbar): 9498 (WebCore::RenderLayer::setHasVerticalScrollbar): 9499 * rendering/RenderObject.cpp: 9500 (WebCore::RenderObject::createObject): 9501 (WebCore::RenderObject::RenderObject): 9502 (WebCore::RenderObject::isRoot): 9503 (WebCore::RenderObject::backslashAsCurrencySymbol): 9504 * rendering/RenderObject.h: 9505 (WebCore::RenderObject::document): 9506 * rendering/RenderTheme.cpp: 9507 (WebCore::RenderTheme::isFocused): 9508 * rendering/render_applet.cpp: 9509 (WebCore::RenderApplet::createWidgetIfNecessary): 9510 * rendering/render_replaced.cpp: 9511 (WebCore::RenderWidget::RenderWidget): 9512 (WebCore::RenderWidget::focusIn): 9513 (WebCore::RenderWidget::focusOut): 9514 9515 2006-03-28 Darin Adler <darin (a] apple.com> 9516 9517 Reviewed by Geoff. 9518 9519 - added a build step that checks for init routines 9520 9521 * WebCore.xcodeproj/project.pbxproj: Deleted now-unused custom build rule that 9522 was replaced by the generate-derived-sources script a while back. Added a custom 9523 build phase that invokes the check-for-global-initializers script. 9524 9525 2006-03-28 Timothy Hatcher <timothy (a] apple.com> 9526 9527 Reviewed by Maciej. 9528 9529 Moved the derived sources script to an agregate target. Fixes internal builds. 9530 9531 * WebCore.xcodeproj/project.pbxproj: 9532 * generate-derived-sources: was missing a use of $CREATE_HASH_TABLE 9533 9534 2006-03-28 Eric Seidel <eseidel (a] apple.com> 9535 9536 Reviewed by hyatt. 9537 9538 Build fix. 9539 9540 * dom/xml_tokenizer.cpp: 9541 (WebCore::XMLTokenizer::error): 9542 9543 2006-03-28 Michael Emmel <mike.emmel (a] gmail.com> 9544 9545 Reviewed, tweaked, landed by Darin. 9546 9547 - fix http://bugs.webkit.org/show_bug.cgi?id=8023 9548 Attribute.h missing class predeclaration 9549 9550 * dom/Attribute.h: Add declarations for classes so that the friend 9551 declaration is not the only one. There's an issue with either an earlier 9552 or later version of gcc, which is why we see this only on certain platforms. 9553 9554 * dom/Attr.cpp: 9555 (WebCore::Attr::Attr): 9556 (WebCore::Attr::~Attr): 9557 * dom/NamedAttrMap.cpp: 9558 (WebCore::NamedAttrMap::clearAttributes): 9559 (WebCore::NamedAttrMap::addAttribute): 9560 (WebCore::NamedAttrMap::removeAttribute): 9561 Change places where practical to use attr() instead of m_impl in the vain 9562 hope of removing the need for the friend declarations. 9563 9564 2006-03-27 Eric Seidel <eseidel (a] apple.com> 9565 9566 Reviewed by darin. 9567 9568 Replace more DeprecatedString with String. 9569 Add String::sprintf() and String::number() 9570 http://bugs.webkit.org/show_bug.cgi?id=8009 9571 9572 * bindings/objc/DOMHTML.mm: 9573 (-[DOMHTMLTextAreaElement setCols:]): 9574 (-[DOMHTMLTextAreaElement setRows:]): 9575 (-[DOMHTMLOListElement setStart:]): 9576 (-[DOMHTMLPreElement setWidth:]): 9577 (-[DOMHTMLImageElement setHeight:]): 9578 (-[DOMHTMLImageElement setHspace:]): 9579 (-[DOMHTMLImageElement setVspace:]): 9580 (-[DOMHTMLImageElement setWidth:]): 9581 (-[DOMHTMLObjectElement setHspace:]): 9582 (-[DOMHTMLObjectElement setTabIndex:]): 9583 (-[DOMHTMLObjectElement setVspace:]): 9584 (-[DOMHTMLAppletElement setHspace:]): 9585 (-[DOMHTMLAppletElement setVspace:]): 9586 (-[DOMHTMLAreaElement setTabIndex:]): 9587 (-[DOMHTMLTableColElement setSpan:]): 9588 (-[DOMHTMLTableCellElement setColSpan:]): 9589 (-[DOMHTMLTableCellElement setRowSpan:]): 9590 (-[DOMHTMLEmbedElement setHeight:]): 9591 (-[DOMHTMLEmbedElement setWidth:]): 9592 * bindings/objc/DOMInternal.mm: 9593 (String::String): 9594 * css/CSSComputedStyleDeclaration.cpp: 9595 (WebCore::numberAsString): 9596 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): 9597 * css/css_valueimpl.cpp: 9598 (WebCore::CSSMutableStyleDeclaration::getPropertyValue): 9599 (WebCore::CSSPrimitiveValue::cssText): 9600 * dom/Position.cpp: 9601 (WebCore::Position::formatForDebugger): 9602 * dom/Range.cpp: 9603 (WebCore::Range::formatForDebugger): 9604 * dom/StyledElement.cpp: 9605 (WebCore::StyledElement::addCSSColor): 9606 * dom/xml_tokenizer.cpp: 9607 (WebCore::XMLTokenizer::error): 9608 * editing/ApplyStyleCommand.cpp: 9609 (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange): 9610 * html/HTMLGenericFormElement.cpp: 9611 (WebCore::HTMLGenericFormElement::findMatchingState): 9612 (WebCore::HTMLGenericFormElement::setTabIndex): 9613 * html/HTMLInputElement.cpp: 9614 (WebCore::HTMLInputElement::setMaxLength): 9615 (WebCore::HTMLInputElement::setSize): 9616 * html/HTMLSelectElement.cpp: 9617 (WebCore::HTMLSelectElement::setSize): 9618 * html/HTMLTextAreaElement.cpp: 9619 (WebCore::HTMLTextAreaElement::setCols): 9620 (WebCore::HTMLTextAreaElement::setRows): 9621 * html/html_baseimpl.cpp: 9622 (WebCore::HTMLBodyElement::insertedIntoDocument): 9623 * html/html_blockimpl.cpp: 9624 (WebCore::HTMLHRElement::parseMappedAttribute): 9625 (WebCore::HTMLPreElement::setWidth): 9626 * html/html_imageimpl.cpp: 9627 (WebCore::HTMLImageElement::width): 9628 (WebCore::HTMLImageElement::height): 9629 (WebCore::HTMLImageElement::setBorder): 9630 (WebCore::HTMLImageElement::setHeight): 9631 (WebCore::HTMLImageElement::setHspace): 9632 (WebCore::HTMLImageElement::setVspace): 9633 (WebCore::HTMLImageElement::setWidth): 9634 (WebCore::HTMLAreaElement::setTabIndex): 9635 * html/html_inlineimpl.cpp: 9636 (WebCore::HTMLAnchorElement::setTabIndex): 9637 * html/html_listimpl.cpp: 9638 (WebCore::HTMLOListElement::setStart): 9639 (WebCore::HTMLLIElement::setValue): 9640 * html/html_objectimpl.cpp: 9641 (WebCore::HTMLObjectElement::setTabIndex): 9642 * html/html_tableimpl.cpp: 9643 (WebCore::HTMLTableElement::parseMappedAttribute): 9644 (WebCore::HTMLTableCellElement::setColSpan): 9645 (WebCore::HTMLTableCellElement::setRowSpan): 9646 (WebCore::HTMLTableColElement::setSpan): 9647 * khtml/ecma/kjs_window.cpp: 9648 (KJS::Window::isSafeScript): 9649 (KJS::Location::getValueProperty): 9650 * ksvg2/css/SVGCSSParser.cpp: 9651 (WebCore::CSSParser::parseSVGPaint): 9652 (WebCore::CSSParser::parseSVGColor): 9653 * ksvg2/svg/SVGAngle.cpp: 9654 (SVGAngle::setValueAsString): 9655 (SVGAngle::valueAsString): 9656 * ksvg2/svg/SVGAngle.h: 9657 * ksvg2/svg/SVGLength.cpp: 9658 (SVGLength::setValueAsString): 9659 (SVGLength::valueAsString): 9660 * ksvg2/svg/SVGLength.h: 9661 * ksvg2/svg/SVGPathSeg.h: 9662 (WebCore::SVGPathSeg::pathSegTypeAsLetter): 9663 (WebCore::SVGPathSeg::toString): 9664 * ksvg2/svg/SVGPathSegArc.h: 9665 (WebCore::SVGPathSegArcAbs::pathSegTypeAsLetter): 9666 (WebCore::SVGPathSegArcAbs::toString): 9667 (WebCore::SVGPathSegArcRel::pathSegTypeAsLetter): 9668 (WebCore::SVGPathSegArcRel::toString): 9669 * ksvg2/svg/SVGPathSegClosePath.h: 9670 (WebCore::SVGPathSegClosePath::pathSegTypeAsLetter): 9671 (WebCore::SVGPathSegClosePath::toString): 9672 * ksvg2/svg/SVGPathSegCurvetoCubic.h: 9673 (WebCore::SVGPathSegCurvetoCubicAbs::pathSegTypeAsLetter): 9674 (WebCore::SVGPathSegCurvetoCubicAbs::toString): 9675 (WebCore::SVGPathSegCurvetoCubicRel::pathSegTypeAsLetter): 9676 (WebCore::SVGPathSegCurvetoCubicRel::toString): 9677 * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h: 9678 (WebCore::SVGPathSegCurvetoCubicSmoothAbs::pathSegTypeAsLetter): 9679 (WebCore::SVGPathSegCurvetoCubicSmoothAbs::toString): 9680 (WebCore::SVGPathSegCurvetoCubicSmoothRel::pathSegTypeAsLetter): 9681 (WebCore::SVGPathSegCurvetoCubicSmoothRel::toString): 9682 * ksvg2/svg/SVGPathSegCurvetoQuadratic.h: 9683 (WebCore::SVGPathSegCurvetoQuadraticAbs::pathSegTypeAsLetter): 9684 (WebCore::SVGPathSegCurvetoQuadraticAbs::toString): 9685 (WebCore::SVGPathSegCurvetoQuadraticRel::pathSegTypeAsLetter): 9686 (WebCore::SVGPathSegCurvetoQuadraticRel::toString): 9687 * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h: 9688 (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::pathSegTypeAsLetter): 9689 (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::toString): 9690 (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::pathSegTypeAsLetter): 9691 (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::toString): 9692 * ksvg2/svg/SVGPathSegLineto.h: 9693 (WebCore::SVGPathSegLinetoAbs::pathSegTypeAsLetter): 9694 (WebCore::SVGPathSegLinetoAbs::toString): 9695 (WebCore::SVGPathSegLinetoRel::pathSegTypeAsLetter): 9696 (WebCore::SVGPathSegLinetoRel::toString): 9697 * ksvg2/svg/SVGPathSegLinetoHorizontal.h: 9698 (WebCore::SVGPathSegLinetoHorizontalAbs::pathSegTypeAsLetter): 9699 (WebCore::SVGPathSegLinetoHorizontalAbs::toString): 9700 (WebCore::SVGPathSegLinetoHorizontalRel::pathSegTypeAsLetter): 9701 (WebCore::SVGPathSegLinetoHorizontalRel::toString): 9702 * ksvg2/svg/SVGPathSegLinetoVertical.h: 9703 (WebCore::SVGPathSegLinetoVerticalAbs::pathSegTypeAsLetter): 9704 (WebCore::SVGPathSegLinetoVerticalAbs::toString): 9705 (WebCore::SVGPathSegLinetoVerticalRel::pathSegTypeAsLetter): 9706 (WebCore::SVGPathSegLinetoVerticalRel::toString): 9707 * ksvg2/svg/SVGPathSegMoveto.h: 9708 (WebCore::SVGPathSegMovetoAbs::pathSegTypeAsLetter): 9709 (WebCore::SVGPathSegMovetoAbs::toString): 9710 (WebCore::SVGPathSegMovetoRel::pathSegTypeAsLetter): 9711 (WebCore::SVGPathSegMovetoRel::toString): 9712 * ksvg2/svg/SVGPolyElement.cpp: 9713 (SVGPolyElement::notifyAttributeChange): 9714 * ksvg2/svg/SVGStopElement.cpp: 9715 (SVGStopElement::parseMappedAttribute): 9716 * ksvg2/svg/SVGUseElement.cpp: 9717 (SVGUseElement::closeRenderer): 9718 * platform/AtomicString.h: 9719 (WebCore::AtomicString::toInt): 9720 * platform/Color.cpp: 9721 (WebCore::Color::name): 9722 * platform/Color.h: 9723 * platform/PlatformString.h: 9724 * platform/String.cpp: 9725 (WebCore::String::sprintf): 9726 (WebCore::String::number): 9727 * platform/StringImpl.cpp: 9728 (WebCore::StringImpl::StringImpl): 9729 (WebCore::StringImpl::initWithChar): 9730 (WebCore::StringImpl::initWithQChar): 9731 (WebCore::StringImpl::containsOnlyWhitespace): 9732 * platform/mac/KeyEventMac.mm: 9733 (WebCore::keyIdentifierForKeyEvent): 9734 * rendering/render_form.cpp: 9735 (WebCore::RenderSlider::updateFromElement): 9736 (WebCore::RenderSlider::valueChanged): 9737 9738 2006-03-28 Justin Garcia <justin.garcia (a] apple.com> 9739 9740 Reviewed by mjs 9741 9742 <http://bugs.webkit.org/attachment.cgi?id=7322> 9743 REGRESSION: Select All does not highlight table if it's last in the document 9744 9745 * rendering/RenderCanvas.cpp: 9746 (WebCore::rendererAfterPosition): 9747 Added, returns the render object that a pre-order traversal over a range 9748 of render objects ending at the input position should stop at. 9749 (WebCore::RenderCanvas::selectionRect): 9750 Stop at rendererAfterPosition(m_selectionEnd, m_selectionEndPos), moved code 9751 for traversal to nextInPreOrder. Also, the travesal doesn't need to fetch the 9752 next object before doing work, since the work it does will never change what 9753 the next object in the traversal will be. 9754 (WebCore::RenderCanvas::setSelection): Ditto. 9755 * rendering/RenderObject.cpp: 9756 (WebCore::RenderObject::nextInPreOrder): Renamed from nextRenderer, cleaned up the logic a little. 9757 (WebCore::RenderObject::nextInPreOrderAfterChildren): Added. 9758 (WebCore::RenderObject::previousInPreOrder): Renamed from previousRenderer. 9759 (WebCore::RenderObject::childAt): Added. 9760 * rendering/RenderObject.h: 9761 * rendering/RenderText.cpp: 9762 (WebCore::RenderText::setText): 9763 9764 2006-03-28 Maciej Stachowiak <mjs (a] apple.com> 9765 9766 Reviewed by Justin. 9767 9768 - fixed <rdar://problem/4483851> REGRESSION: parse mode gets set to strict after going back from non-HTML content (7102) 9769 9770 Reshuffled things to arrange for m_doc to be cleared somewhat earlier than before. 9771 9772 * page/Frame.cpp: 9773 (WebCore::Frame::didOpenURL): 9774 (WebCore::Frame::receivedFirstData): 9775 (WebCore::Frame::begin): 9776 (WebCore::Frame::endIfNotLoading): 9777 * manual-tests/accidental-strict-mode.html: Added. I don't think an 9778 automated test is possible. 9779 9780 2006-03-28 Eric Seidel <eseidel (a] apple.com> 9781 9782 Reviewed by mjs. 9783 9784 Convert a couple DeprecatedPtrList<T> to Vector<T*> and HashSet<T*> 9785 9786 * bridge/mac/FrameMac.h: 9787 * bridge/mac/FrameMac.mm: 9788 (WebCore::regExpForLabels): 9789 (WebCore::FrameMac::addPluginRootObject): 9790 (WebCore::FrameMac::cleanupPluginRootObjects): 9791 * loader/Cache.cpp: 9792 (WebCore::Cache::init): 9793 (WebCore::Cache::clear): 9794 (WebCore::Cache::remove): 9795 * loader/Cache.h: 9796 * loader/DocLoader.cpp: 9797 (WebCore::DocLoader::DocLoader): 9798 (WebCore::DocLoader::~DocLoader): 9799 9800 2006-03-27 Eric Seidel <eseidel (a] apple.com> 9801 9802 Reviewed by mjs. 9803 9804 Give StringImpl a little privacy. 9805 http://bugs.webkit.org/show_bug.cgi?id=8022 9806 9807 * dom/CharacterData.cpp: 9808 (WebCore::CharacterData::length): 9809 (WebCore::CharacterData::appendData): 9810 (WebCore::CharacterData::replaceData): 9811 (WebCore::CharacterData::checkCharDataOperation): 9812 (WebCore::CharacterData::rendererIsNeeded): 9813 * dom/Range.cpp: 9814 (WebCore::Range::compareBoundaryPoints): 9815 * dom/Text.cpp: 9816 (WebCore::Text::splitText): 9817 * html/HTMLTokenizer.cpp: 9818 (WebCore::HTMLTokenizer::processToken): 9819 * platform/AtomicString.cpp: 9820 (WebCore::operator==): 9821 * platform/String.cpp: 9822 (WebCore::String::operator[]): 9823 (WebCore::String::length): 9824 (WebCore::String::percentage): 9825 (WebCore::String::unicode): 9826 (WebCore::String::deprecatedString): 9827 (WebCore::String::isEmpty): 9828 * platform/StringImpl.cpp: 9829 (WebCore::equal): 9830 (WebCore::equalIgnoringCase): 9831 * platform/StringImpl.h: 9832 * rendering/InlineTextBox.cpp: 9833 (WebCore::InlineTextBox::selectionRect): 9834 (WebCore::InlineTextBox::paint): 9835 (WebCore::InlineTextBox::paintSelection): 9836 (WebCore::InlineTextBox::paintMarkedTextBackground): 9837 (WebCore::InlineTextBox::paintTextMatchMarker): 9838 (WebCore::InlineTextBox::offsetForPosition): 9839 (WebCore::InlineTextBox::positionForOffset): 9840 * rendering/RenderText.cpp: 9841 (WebCore::RenderText::widthFromCache): 9842 (WebCore::RenderText::calcMinMaxWidth): 9843 (WebCore::RenderText::width): 9844 9845 2006-03-27 Maciej Stachowiak <mjs (a] apple.com> 9846 9847 Reviewed by Beth. 9848 9849 - fixed <rdar://problem/4279765> REGRESSION: "More..." links on flickr groups pages have hover issues (flickr.com) 9850 9851 * rendering/RenderBlock.cpp: 9852 (WebCore::RenderBlock::floatRect): Rewrote in terms of rects, and made it consider child floatRects 9853 as well as their overflowRects. 9854 * platform/IntRect.h: 9855 (WebCore::unionRect): useful helper 9856 * platform/FloatRect.h: 9857 (WebCore::unionRect): added same for FloatRect just because 9858 9859 2006-03-27 Darin Adler <darin (a] apple.com> 9860 9861 Based on a patch by Michael Emmel <mike.emmel (a] gmail.com>. 9862 9863 - fix http://bugs.webkit.org/show_bug.cgi?id=8012 9864 TransferJob.cpp includes non-existent "String.h" (capital S) 9865 9866 * platform/TransferJob.cpp: Remove unneeded include of "String.h". 9867 9868 2006-03-27 David Harrison <harrison (a] apple.com> 9869 9870 Reviewed by Darin. 9871 9872 <rdar://problem/4427002> REGRESSION: VoiceOver doesn't read heading level text in Safari (Range selectNodeContents broken) 9873 9874 Better fix than previous checkin, since maxDeepOffset is really an editing hack. 9875 9876 * editing/selection/selectNodeContents-textNode.html: Added. 9877 9878 * dom/Range.cpp: 9879 (WebCore::Range::selectNodeContents): 9880 Use maxOffset if offsetInCharacters, otherwise use childNodeCount. 9881 9882 2006-03-27 Darin Adler <darin (a] apple.com> 9883 9884 Based on a patch by Michael Emmel <mike.emmel (a] gmail.com>. 9885 9886 - fix compilation for Linux 9887 http://bugs.webkit.org/show_bug.cgi?id=8013 9888 9889 * rendering/render_style.h: Add declaration of CSSStyleSelector. Also tweaked 9890 formatting a bit and removed some extraneous WebCore:: prefixes. 9891 9892 2006-03-27 John Sullivan <sullivan (a] apple.com> 9893 9894 Reviewed by Darin Adler and Tim Omernick 9895 9896 - fixed <rdar://problem/4406505> REGRESSION: (japanese text) Clauses is unexpectedly 9897 confirmed while typing on Safari. 9898 9899 * bindings/objc/DOMHTML.mm: 9900 (-[DOMHTMLInputElement _displayedValue]): 9901 Avoid calling stringValue on the focused NSTextField. This will soon be obsolete, but 9902 for now it fixes this regression. 9903 9904 2006-03-27 Alexander Kellett <lypanov (a] kde.org> 9905 9906 Reviewed by darin 9907 9908 Implement the IE extension insertAdjacentElement 9909 http://bugs.webkit.org/show_bug.cgi?id=6520 9910 9911 * bindings/scripts/CodeGeneratorJS.pm: 9912 * dom/Element.cpp: 9913 (WebCore::ElementImpl::insertAdjacentElement): 9914 * dom/Element.h: 9915 * dom/Element.idl: 9916 9917 2006-03-27 David Harrison <harrison (a] apple.com> 9918 9919 Reviewed by Tim Hatcher. 9920 9921 <rdar://problem/4427002> REGRESSION: VoiceOver doesn't read heading level text in Safari (Range selectNodeContents broken) 9922 9923 Range::selectNodeContents() was erroneously using childNodeCount, which is always 0 for text 9924 nodes. Turns out that [WebCoreAXObject textUnderElement] is the only code that ends up calling 9925 selectNodeContents on a text node. 9926 9927 Test cases added: None. Manual AX testing is way too awkward, and automated testing 9928 is not possible. See following bug... 9929 <rdar://problem/4256882> Need automated testing support for accessibility APIs 9930 9931 * dom/Range.cpp: 9932 (WebCore::Range::selectNodeContents): 9933 Use maxDeepOffset instead of childNodeCount, so that text node content is selected. 9934 9935 2006-03-27 Graham Dennis <Graham.Dennis (a] gmail.com> 9936 9937 Reviewed by darin 9938 9939 <http://bugs.webkit.org/show_bug.cgi?id=7868> 9940 REGRESSION: Extraneous focus ring drawn at the end of the page 9941 9942 * platform/GraphicsContext.cpp: 9943 (WebCore::GraphicsContext::addFocusRingRect): Don't add a focus ring for an empty rect. 9944 9945 2006-03-27 Maciej Stachowiak <mjs (a] apple.com> 9946 9947 Reviewed by Anders. 9948 9949 - fixed <rdar://problem/4489745> REGRESSION: Safari crashes at to display http://www.lgphilips-lcd.com/ 9950 9951 * manual-tests/empty-script-crash.html: Added. 9952 9953 2006-03-27 Maciej Stachowiak <mjs (a] apple.com> 9954 9955 Build fix: 9956 9957 - reverted fix for <rdar://problem/4362396> capturing listeners do not fire on the target node 9958 It turns out that the behavior we had was standards-compliant and 9959 Moz will be changing to match. 9960 9961 Also added a note so this doesn't get reverted again. 9962 9963 * dom/EventTargetNode.cpp: 9964 (WebCore::EventTargetNode::dispatchGenericEvent): 9965 9966 2006-03-26 Justin Garcia <justin.garcia (a] apple.com> 9967 9968 Reviewed by darn 9969 9970 <http://bugs.webkit.org/show_bug.cgi?id=7974> 9971 Add EditActions and WebUndoActions for CreateLink and Unlink 9972 9973 * bridge/mac/WebCoreFrameBridge.h: 9974 * editing/CreateLinkCommand.h: 9975 (WebCore::CreateLinkCommand::editingAction): 9976 * editing/EditAction.h: 9977 * editing/UnlinkCommand.h: 9978 (WebCore::UnlinkCommand::editingAction): 9979 9980 2006-03-26 Eric Seidel <eseidel (a] apple.com> 9981 9982 Reviewed by mjs. 9983 9984 Fix win32 build. 9985 9986 * WebCore.vcproj/WebCore/WebCore.vcproj: 9987 * editing/CompositeEditCommand.cpp: 9988 * editing/InsertTextCommand.cpp: 9989 * generate-derived-sources: 9990 9991 2006-03-26 Eric Seidel <eseidel (a] apple.com> 9992 9993 * dom/Element.cpp: fix include case, fixing build. 9994 9995 2006-03-25 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 9996 9997 Reviewed by darin. Landed by eseidel. 9998 9999 - fix http://bugs.webkit.org/show_bug.cgi?id=7916 10000 Box repaint rect does not include the left overflow 10001 10002 * manual-tests/left-overflow-repaint.html: Added. 10003 * rendering/RenderBlock.cpp: 10004 (WebCore::RenderBlock::overflowRect): Changed m_overflowWidth and m_overflowHeight 10005 to overflowWidth() and overflowHeight() since RenderTable overrides the latter. 10006 * rendering/RenderBox.cpp: 10007 (WebCore::RenderBox::getAbsoluteRepaintRect): Include top and left overflows. 10008 * rendering/RenderFlow.cpp: 10009 (WebCore::RenderFlow::getAbsoluteRepaintRect): Removed redundant code. 10010 * rendering/RenderTableCell.cpp: Removed subclass implementation of 10011 getAbsoluteRepaintRect(). 10012 * rendering/RenderTableCell.h: 10013 * rendering/bidi.cpp: 10014 (WebCore::RenderBlock::layoutInlineChildren): Include left overflow in repaint rect. 10015 10016 2006-03-25 Eric Seidel <eseidel (a] apple.com> 10017 10018 Reviewed by andersca. 10019 10020 Build fix. 10021 10022 * bindings/scripts/CodeGeneratorJS.pm: include Element.h 10023 10024 2006-03-25 Eric Seidel <eseidel (a] apple.com> 10025 10026 Reviewed by andersca. 10027 10028 Split dom_elementimpl.* into multiple files (one per class). 10029 http://bugs.webkit.org/show_bug.cgi?id=7978 10030 10031 * ForwardingHeaders/kdom/core/Attr.h: Removed. 10032 * ForwardingHeaders/kdom/core/Element.h: Removed. 10033 * ForwardingHeaders/kdom/core/XMLElement.h: Removed. 10034 * WebCore.xcodeproj/project.pbxproj: 10035 * bindings/objc/DOM.mm: 10036 * bindings/objc/DOMHTML.mm: 10037 * bindings/scripts/CodeGeneratorJS.pm: 10038 * dom/AbstractView.cpp: 10039 * dom/Attr.cpp: Added. 10040 * dom/Attr.h: Added. 10041 * dom/Attribute.cpp: Added. 10042 * dom/Attribute.h: Added. 10043 * dom/CSSMappedAttributeDeclaration.cpp: Added. 10044 * dom/CSSMappedAttributeDeclaration.h: Added. 10045 * dom/DOMImplementation.cpp: 10046 * dom/Document.h: 10047 * dom/DocumentType.cpp: 10048 * dom/Element.cpp: Added. 10049 (WebCore::Element::Element): 10050 (WebCore::Element::~Element): 10051 * dom/Element.h: Added. 10052 * dom/EventNames.cpp: 10053 * dom/EventTargetNode.cpp: 10054 * dom/MappedAttribute.cpp: Added. 10055 * dom/MappedAttribute.h: Added. 10056 * dom/MappedAttributeEntry.h: Added. 10057 (WebCore::): 10058 * dom/NameNodeList.cpp: 10059 (WebCore::NameNodeList::NameNodeList): 10060 (WebCore::NameNodeList::item): 10061 (WebCore::NameNodeList::nodeMatches): 10062 * dom/NamedAttrMap.cpp: Added. 10063 * dom/NamedAttrMap.h: Added. 10064 * dom/NamedMappedAttrMap.cpp: Added. 10065 (WebCore::NamedMappedAttrMap::NamedMappedAttrMap): 10066 * dom/NamedMappedAttrMap.h: Added. 10067 * dom/Node.cpp: 10068 * dom/NodeList.cpp: 10069 * dom/Position.cpp: 10070 * dom/StyledElement.cpp: Added. 10071 * dom/StyledElement.h: Added. 10072 * dom/dom_elementimpl.cpp: Removed. 10073 * dom/dom_elementimpl.h: Removed. 10074 * editing/BreakBlockquoteCommand.cpp: 10075 * editing/CompositeEditCommand.cpp: 10076 * editing/DeleteFromTextNodeCommand.cpp: 10077 * editing/DeleteSelectionCommand.cpp: 10078 * editing/InsertLineBreakCommand.cpp: 10079 * editing/InsertParagraphSeparatorCommand.cpp: 10080 * editing/InsertTextCommand.cpp: 10081 * editing/MergeIdenticalElementsCommand.cpp: 10082 * editing/ModifySelectionListLevelCommand.cpp: 10083 * editing/MoveSelectionCommand.cpp: 10084 * editing/RemoveCSSPropertyCommand.cpp: 10085 * editing/RemoveNodeAttributeCommand.cpp: 10086 * editing/Selection.cpp: 10087 * editing/SelectionController.cpp: 10088 * editing/SetNodeAttributeCommand.cpp: 10089 * editing/SplitElementCommand.cpp: 10090 * editing/SplitTextNodeContainingElementCommand.cpp: 10091 * editing/TextIterator.cpp: 10092 * editing/TypingCommand.cpp: 10093 * editing/VisiblePosition.cpp: 10094 * editing/visible_units.cpp: 10095 * html/HTMLElement.h: 10096 * html/HTMLTokenizer.h: 10097 * html/html_baseimpl.cpp: 10098 * kcanvas/RenderSVGImage.cpp: 10099 * khtml/ecma/kjs_views.cpp: 10100 * khtml/ecma/kjs_window.cpp: 10101 (KJS::Window::getValueProperty): 10102 * khtml/xbl/xbl_binding_manager.cpp: 10103 * khtml/xbl/xbl_tokenizer.cpp: 10104 * ksvg2/misc/SVGImageLoader.cpp: 10105 * ksvg2/svg/SVGAElement.cpp: 10106 * ksvg2/svg/SVGAnimateTransformElement.cpp: 10107 * ksvg2/svg/SVGAnimationElement.cpp: 10108 * ksvg2/svg/SVGCircleElement.cpp: 10109 * ksvg2/svg/SVGClipPathElement.cpp: 10110 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp: 10111 * ksvg2/svg/SVGCursorElement.cpp: 10112 * ksvg2/svg/SVGElement.cpp: 10113 (WebCore::SVGElement::SVGElement): 10114 * ksvg2/svg/SVGElement.h: 10115 * ksvg2/svg/SVGEllipseElement.cpp: 10116 * ksvg2/svg/SVGExternalResourcesRequired.cpp: 10117 * ksvg2/svg/SVGFEBlendElement.cpp: 10118 * ksvg2/svg/SVGFEColorMatrixElement.cpp: 10119 * ksvg2/svg/SVGFEComponentTransferElement.cpp: 10120 * ksvg2/svg/SVGFECompositeElement.cpp: 10121 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp: 10122 * ksvg2/svg/SVGFEDisplacementMapElement.cpp: 10123 * ksvg2/svg/SVGFEFloodElement.cpp: 10124 * ksvg2/svg/SVGFEGaussianBlurElement.cpp: 10125 * ksvg2/svg/SVGFEImageElement.cpp: 10126 * ksvg2/svg/SVGFELightElement.cpp: 10127 * ksvg2/svg/SVGFEMergeElement.cpp: 10128 * ksvg2/svg/SVGFEMergeNodeElement.cpp: 10129 * ksvg2/svg/SVGFEOffsetElement.cpp: 10130 * ksvg2/svg/SVGFESpecularLightingElement.cpp: 10131 * ksvg2/svg/SVGFETileElement.cpp: 10132 * ksvg2/svg/SVGFETurbulenceElement.cpp: 10133 * ksvg2/svg/SVGFilterElement.cpp: 10134 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp: 10135 * ksvg2/svg/SVGFitToViewBox.cpp: 10136 * ksvg2/svg/SVGGradientElement.cpp: 10137 * ksvg2/svg/SVGImageElement.cpp: 10138 * ksvg2/svg/SVGLangSpace.cpp: 10139 * ksvg2/svg/SVGLineElement.cpp: 10140 * ksvg2/svg/SVGLinearGradientElement.cpp: 10141 * ksvg2/svg/SVGMarkerElement.cpp: 10142 * ksvg2/svg/SVGMaskElement.cpp: 10143 * ksvg2/svg/SVGPathElement.cpp: 10144 * ksvg2/svg/SVGPatternElement.cpp: 10145 * ksvg2/svg/SVGPolyElement.cpp: 10146 * ksvg2/svg/SVGRadialGradientElement.cpp: 10147 * ksvg2/svg/SVGRectElement.cpp: 10148 * ksvg2/svg/SVGSVGElement.cpp: 10149 * ksvg2/svg/SVGScriptElement.cpp: 10150 * ksvg2/svg/SVGStopElement.cpp: 10151 * ksvg2/svg/SVGStyledElement.cpp: 10152 * ksvg2/svg/SVGStyledTransformableElement.cpp: 10153 * ksvg2/svg/SVGSwitchElement.cpp: 10154 * ksvg2/svg/SVGTests.cpp: 10155 * ksvg2/svg/SVGTextContentElement.cpp: 10156 * ksvg2/svg/SVGTextPositioningElement.cpp: 10157 * ksvg2/svg/SVGTransformable.cpp: 10158 * ksvg2/svg/SVGURIReference.cpp: 10159 * ksvg2/svg/SVGUseElement.cpp: 10160 * ksvg2/svg/SVGViewElement.cpp: 10161 * ksvg2/svg/SVGZoomAndPan.cpp: 10162 * kwq/WebCoreTextArea.mm: 10163 * platform/Widget.h: 10164 * rendering/RenderBlock.cpp: 10165 * rendering/RenderCanvas.cpp: 10166 * rendering/RenderContainer.cpp: 10167 * rendering/RenderObject.cpp: 10168 * rendering/RenderTextField.cpp: 10169 * rendering/RenderThemeMac.mm: 10170 * rendering/bidi.cpp: 10171 * rendering/render_replaced.cpp: 10172 10173 2006-03-25 Eric Seidel <eseidel (a] apple.com> 10174 10175 Reviewed by mjs. 10176 10177 Fix RenderStyle creation to avoid floating RenderStyle objects. 10178 This also fixes a bug, were SVG to ever start sharing RenderStyles 10179 between elements, code would have crashed as there were improperly 10180 paired style->deref() statements in SVG code. 10181 http://bugs.webkit.org/show_bug.cgi?id=7976 10182 10183 No test possible (no functionality change). 10184 10185 * css/cssstyleselector.cpp: 10186 (WebCore::CSSStyleSelector::createStyleForElement): 10187 (WebCore::CSSStyleSelector::createPseudoStyleForElement): 10188 * css/cssstyleselector.h: 10189 * dom/Node.cpp: 10190 (WebCore::Node::createRendererIfNeeded): 10191 (WebCore::Node::createStyleForRenderer): 10192 * dom/Node.h: 10193 * dom/dom_elementimpl.cpp: 10194 (WebCore::Element::createStyleForRenderer): 10195 (WebCore::Element::recalcStyle): 10196 * dom/dom_elementimpl.h: 10197 * ksvg2/svg/SVGClipPathElement.cpp: 10198 (SVGClipPathElement::canvasResource): 10199 * ksvg2/svg/SVGFEFloodElement.cpp: 10200 (SVGFEFloodElement::filterEffect): 10201 * ksvg2/svg/SVGGradientElement.cpp: 10202 (SVGGradientElement::rebuildStops): 10203 * rendering/RenderObject.cpp: 10204 (WebCore::RenderObject::createObject): 10205 (WebCore::RenderObject::RenderObject): 10206 (WebCore::selectStartNode): 10207 (WebCore::RenderObject::draggableNode): 10208 (WebCore::RenderObject::getPseudoStyle): 10209 10210 2006-03-23 Eric Seidel <eseidel (a] apple.com> 10211 10212 Reviewed by mjs. 10213 10214 Shave .2% on PLT by removing bogus strcmp. 10215 http://bugs.webkit.org/show_bug.cgi?id=7938 10216 10217 Test: fast/parser/tag-with-exclamation-point.html 10218 10219 * html/HTMLTokenizer.cpp: 10220 (WebCore::HTMLTokenizer::parseTag): remove bogus strcmp 10221 10222 2006-03-25 Justin Garcia <justin.garcia (a] apple.com> 10223 10224 Reviewed by harrison 10225 10226 <http://bugs.webkit.org/show_bug.cgi?id=7683> 10227 TinyMCE: execCommand("Unlink") unimplemented 10228 10229 Added code to push partially selected anchor elements down before 10230 creating or removing links to create fully selected chunks that can be removed. 10231 Changed __create_link_command_h__ to CreateLinkCommand_h 10232 Gave styled element application/removal its own ApplyStyleCommand constructor. 10233 Still need to add new EditActions (7974). 10234 10235 * WebCore.xcodeproj/project.pbxproj: 10236 * editing/ApplyStyleCommand.cpp: 10237 (WebCore::ApplyStyleCommand::ApplyStyleCommand): 10238 (WebCore::ApplyStyleCommand::applyBlockStyle): 10239 (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded): 10240 * editing/ApplyStyleCommand.h: 10241 * editing/CompositeEditCommand.cpp: 10242 (WebCore::CompositeEditCommand::applyStyle): 10243 (WebCore::CompositeEditCommand::applyStyledElement): 10244 (WebCore::CompositeEditCommand::removeStyledElement): 10245 (WebCore::enclosingAnchorElement): 10246 (WebCore::CompositeEditCommand::pushAnchorElementDown): 10247 (WebCore::CompositeEditCommand::pushPartiallySelectedAnchorElementsDown): 10248 * editing/CompositeEditCommand.h: 10249 * editing/CreateLinkCommand.cpp: 10250 (WebCore::CreateLinkCommand::doApply): 10251 * editing/CreateLinkCommand.h: 10252 * editing/JSEditor.cpp: 10253 * editing/Selection.cpp: 10254 (WebCore::Selection::selectionFromContentsOfNode): 10255 * editing/Selection.h: 10256 * editing/UnlinkCommand.cpp: Added. 10257 (WebCore::UnlinkCommand::UnlinkCommand): 10258 (WebCore::UnlinkCommand::doApply): 10259 * editing/UnlinkCommand.h: Added. 10260 * page/Frame.cpp: 10261 (WebCore::Frame::selectContentsOfNode): 10262 (WebCore::Frame::computeAndSetTypingStyle): 10263 (WebCore::Frame::applyStyle): 10264 (WebCore::Frame::applyParagraphStyle): 10265 10266 2006-03-24 Justin Garcia <justin.garcia (a] apple.com> 10267 10268 Reviewed by harrison 10269 10270 <http://bugs.webkit.org/show_bug.cgi?id=7955> 10271 REGRESSION: Content with an interchange newline lost when pasted at the end of the document 10272 10273 There's no safe place in the document to keep the fragment while pasting, so I avoid 10274 isProbablyBlock by saving whether or not something was blockFlow during the test 10275 insertion. 10276 10277 * editing/ReplaceSelectionCommand.cpp: 10278 (WebCore::ReplacementFragment::ReplacementFragment): 10279 (WebCore::ReplacementFragment::~ReplacementFragment): 10280 (WebCore::ReplacementFragment::firstChild): 10281 (WebCore::ReplacementFragment::lastChild): 10282 (WebCore::ReplacementFragment::mergeStartNode): 10283 (WebCore::ReplacementFragment::enclosingBlock): 10284 (WebCore::ReplacementFragment::insertFragmentForTestRendering): 10285 (WebCore::ReplacementFragment::restoreTestRenderingNodesToFragment): 10286 (WebCore::ReplacementFragment::isBlockFlow): 10287 (WebCore::ReplaceSelectionCommand::fixupNodeStyles): 10288 (WebCore::styleForNode): 10289 (WebCore::ReplacementFragment::saveRenderingInfo): 10290 (WebCore::ReplacementFragment::removeUnrenderedNodes): 10291 (WebCore::ReplacementFragment::renderedBlocks): 10292 (WebCore::ReplacementFragment::removeStyleNodes): 10293 (WebCore::RenderingInfo::RenderingInfo): 10294 (WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand): 10295 (WebCore::ReplaceSelectionCommand::doApply): 10296 * editing/ReplaceSelectionCommand.h: 10297 (WebCore::RenderingInfo::isBlockFlow): 10298 (WebCore::ReplacementFragment::renderingInfo): 10299 (WebCore::ReplacementFragment::nodes): 10300 10301 2006-03-24 Eric Seidel <eseidel (a] apple.com> 10302 10303 Reviewed by justing. 10304 10305 * generate-derived-sources: fix clean builds on mac. 10306 10307 2006-03-24 Darin Adler <darin (a] apple.com> 10308 10309 Reviewed by Dave Harrison. 10310 10311 - fix http://bugs.webkit.org/show_bug.cgi?id=7942 10312 nightlies after r13387 break js createcontextualfragment 10313 10314 Test: fast/dom/Range/create-contextual-fragment.html 10315 10316 * dom/Range.idl: Add createContextualFragment. 10317 10318 2006-03-24 Eric Seidel <eseidel (a] apple.com> 10319 10320 Reviewed by mjs. 10321 10322 Fix win32 build. 10323 Unify mac/win dependency handling. 10324 Fix class vs. struct linker problem for win32. 10325 10326 * WebCore.vcproj/WebCore/WebCore.vcproj: Add DerivedSources 10327 * WebCore.vcproj/WebCore/build-generated-files.sh: 10328 * bridge/win/BrowserExtensionWin.h: 10329 * bridge/win/FrameWin.h: 10330 * generate-derived-sources: 10331 * kwq/AccessibilityObjectCache.h: 10332 * platform/GraphicsContext.cpp: 10333 (WebCore::GraphicsContext::createGraphicsContextPrivate): 10334 (WebCore::GraphicsContext::destroyGraphicsContextPrivate): 10335 * platform/GraphicsContext.h: 10336 * platform/cairo/GraphicsContextCairo.cpp: 10337 * platform/mac/GraphicsContextMac.mm: 10338 * platform/win/TemporaryLinkStubs.cpp: 10339 (QLineEdit::selectedText): 10340 (FrameWin::createPlugin): 10341 (BrowserExtensionWin::setTypedIconURL): 10342 10343 2006-03-23 Darin Adler <darin (a] apple.com> 10344 10345 Reviewed by Adele. 10346 10347 - fix <rdar://problem/4484787> KWQAccObject dangles under GC 10348 10349 * kwq/AccessibilityObjectCache.h: Moved AccessibilityObjectCache into the WebCore 10350 namespace. Renamed accObject to get, removed setAccObject, renamed removeAccObject 10351 to remove, removed getAccObjectID, renamed removeAXObjectID to removeAXID, change 10352 from CF dictionaries to HashMap and HashSet. 10353 * kwq/AccessibilityObjectCache.mm: 10354 (WebCore::AccessibilityObjectCache::~AccessibilityObjectCache): Detach all objects 10355 and call CFRelease on all of them. 10356 (WebCore::AccessibilityObjectCache::get): Call CFRetain on objects before putting 10357 them in the HashMap, rather than assuming that retain == CFRetain. This is what 10358 fixes the GC issue. 10359 (WebCore::AccessibilityObjectCache::remove): Detach and call CFRelease when removing. 10360 (WebCore::AccessibilityObjectCache::getAXID): Change to use a single global variable 10361 for the AXIDs, which makes it so we won't reuse the same AXID as much as we did before. 10362 (WebCore::AccessibilityObjectCache::removeAXID): Updated to use HashSet. 10363 (WebCore::AccessibilityObjectCache::textMarkerForVisiblePosition): Updated for other changes. 10364 (WebCore::AccessibilityObjectCache::visiblePositionForTextMarker): Ditto. 10365 (WebCore::AccessibilityObjectCache::childrenChanged): Ditto. 10366 (WebCore::AccessibilityObjectCache::postNotificationToTopWebArea): Ditto. 10367 (WebCore::AccessibilityObjectCache::postNotification): Ditto. 10368 10369 * bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge accessibilityTree]): 10370 Change to use functions by new names. 10371 10372 * dom/Document.h: AccessibilityObjectCache is now in the WebCore namespace. 10373 getAccObjectCache and ownerElement are const member functions, and m_accCache 10374 is a mutable data member. 10375 * dom/Document.cpp: 10376 (WebCore::Document::getAccObjectCache): Make const. 10377 (WebCore::Document::ownerElement): Make const. 10378 10379 * kwq/WebCoreAXObject.h: Changed WebCoreAXID to WebCore::AXID. 10380 * kwq/WebCoreAXObject.mm: 10381 (-[WebCoreAXObject anchorElement]): Update for function name change. 10382 (-[WebCoreAXObject firstChild]): Ditto. 10383 (-[WebCoreAXObject lastChild]): Ditto. 10384 (-[WebCoreAXObject previousSibling]): Ditto. 10385 (-[WebCoreAXObject nextSibling]): Ditto. 10386 (-[WebCoreAXObject parentObject]): Ditto. 10387 (-[WebCoreAXObject accessibilityAttributeValue:]): Ditto. 10388 (-[WebCoreAXObject doAXUIElementForTextMarker:]): Ditto. 10389 (AXLinkElementForNode): Ditto. 10390 (AXAttributedStringAppendReplaced): Ditto. 10391 (-[WebCoreAXObject accessibilityHitTest:]): Ditto. 10392 (-[WebCoreAXObject _accessibilityParentForSubview:]): Ditto. 10393 (-[WebCoreAXObject accessibilityFocusedUIElement]): Ditto. 10394 (-[WebCoreAXObject axObjectID]): Change field name to m_id. 10395 (-[WebCoreAXObject setAXObjectID:]): Ditto. 10396 (-[WebCoreAXObject removeAXObjectID]): Ditto. 10397 10398 * rendering/RenderContainer.cpp: 10399 (WebCore::RenderContainer::removeChildNode): Remove ifdefs. 10400 (WebCore::RenderContainer::appendChildNode): Ditto. 10401 (WebCore::RenderContainer::insertChildNode): Ditto. 10402 * rendering/RenderObject.cpp: (WebCore::RenderObject::remove): Ditto. 10403 10404 2006-03-23 Darin Adler <darin (a] apple.com> 10405 10406 Reviewed by Maciej. 10407 10408 - fix http://bugs.webkit.org/show_bug.cgi?id=7726 10409 REGRESSION: orbitz calendar fails (JavaScript function serialization/parsing) 10410 10411 Test: fast/js/function-names.html 10412 10413 * dom/Document.h: Add function name parameter to createHTMLEventListener. 10414 * dom/Document.cpp: 10415 (WebCore::Document::createHTMLEventListener): Pass function name when calling 10416 createHTMLEventHandler. 10417 (WebCore::Document::setHTMLWindowEventListener): Pass attribute name as function name 10418 when calling createHTMLEventListener. 10419 10420 * html/HTMLElement.cpp: (WebCore::HTMLElement::setHTMLEventListener): Pass attribute 10421 name as function name when calling createHTMLEventListener. 10422 10423 * khtml/ecma/kjs_events.h: Add a function name parameter to JSLazyEventListener. 10424 * khtml/ecma/kjs_events.cpp: 10425 (KJS::JSLazyEventListener::JSLazyEventListener): Take and store a function name. 10426 (KJS::JSLazyEventListener::parseCode): Pass function name when constructing the function. 10427 10428 * khtml/ecma/kjs_proxy.h: Add a function name parameter to createHTMLEventHandler and 10429 createSVGEventHandler. 10430 * khtml/ecma/kjs_proxy.cpp: 10431 (WebCore::KJSProxy::createHTMLEventHandler): Pass function name when creating 10432 a JSLazyEventListener. 10433 (WebCore::KJSProxy::createSVGEventHandler): Ditto. 10434 10435 * ksvg2/events/JSSVGLazyEventListener.h: Add a function name parameter to 10436 JSSVGLazyEventListener. 10437 * ksvg2/events/JSSVGLazyEventListener.cpp: 10438 (WebCore::JSSVGLazyEventListener::JSSVGLazyEventListener): Pass the function name 10439 on to the base class constructor. 10440 10441 * ksvg2/misc/SVGDocumentExtensions.h: Add function name parameter to createSVGEventListener. 10442 * ksvg2/misc/SVGDocumentExtensions.cpp: 10443 (WebCore::SVGDocumentExtensions::createSVGEventListener): Pass function name when 10444 calling createSVGEventHandler. 10445 10446 * ksvg2/svg/SVGElement.cpp: (WebCore::SVGElement::addSVGEventListener): 10447 * ksvg2/svg/SVGSVGElement.cpp: (WebCore::SVGSVGElement::addSVGWindowEventListner): 10448 Pass attribute name as function name when calling createSVGEventListener. 10449 10450 * WebCore.xcodeproj/project.pbxproj: Moved generation script to the top. 10451 10452 2006-03-23 Tim Omernick <timo (a] apple.com> 10453 10454 Reviewed by Darin. 10455 10456 <http://bugs.webkit.org/show_bug.cgi?id=7691> 10457 REGRESSION: imdb.com search button looks wrong because "Submit" is drawn 10458 10459 * html/HTMLInputElement.cpp: 10460 (WebCore::HTMLInputElement::valueWithDefault): 10461 Only use the default button title if no title was specified; previously we'd use the default 10462 button title if the specified title was empty, which is not what Firefox does. 10463 10464 2006-03-23 Darin Adler <darin (a] apple.com> 10465 10466 Reviewed by Beth. 10467 10468 - fix <rdar://problem/4335038> REGRESSION: when max-height is none, height value is ignored 10469 10470 * css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::applyProperty): 10471 For max-height of none, set it to Length(undefinedLength, Fixed), which 10472 is the correct value (same as the default). Also did some formatting fixes 10473 to the height section. 10474 10475 2006-03-23 Beth Dakin <bdakin (a] apple.com> 10476 10477 Reviewed by Darin 10478 10479 Fix for http://bugs.webkit.org/show_bug.cgi?id=6431 10480 REGRESSION: style change where :hover changes only an :after style 10481 doesn't work 10482 10483 * dom/Node.cpp: 10484 (WebCore::Node::diff): Need to call diff() on the before and after 10485 styles if we have them. 10486 10487 2006-03-23 Adele Peterson <adele (a] apple.com> 10488 10489 Reviewed by Hyatt. 10490 10491 - Fix for http://bugs.webkit.org/show_bug.cgi?id=7935 10492 <rdar://problem/4489010> 10493 Infinite recursion in table code when button or new text fields get display:table-row 10494 10495 Test: 10496 fast/forms/button-table-styles.html 10497 10498 * rendering/RenderTheme.cpp: (WebCore::RenderTheme::adjustStyle): 10499 The theme should disallow table display styles form elements. 10500 10501 2006-03-23 Darin Adler <darin (a] apple.com> 10502 10503 * generate-derived-sources: Tweaked formatting a tiny bit and removed a stray 10504 touch that was left in here. 10505 10506 2006-03-23 Eric Seidel <eseidel (a] apple.com> 10507 10508 Reviewed by mjs. 10509 10510 REGRESSION: Dashed borders paint with the wrong phase 10511 http://bugs.webkit.org/show_bug.cgi?id=7879 10512 10513 Test: Already covered by css1/box_properties/border_style.html 10514 10515 * platform/cairo/GraphicsContextCairo.cpp: 10516 (WebCore::GraphicsContext::drawLine): 10517 * platform/mac/GraphicsContextMac.mm: 10518 (WebCore::GraphicsContext::drawLine): 10519 10520 2006-03-22 Maciej Stachowiak <mjs (a] apple.com> 10521 10522 Reviewed by Eric. 10523 10524 * generate-derived-sources: Suppress warning. 10525 10526 2006-03-22 Maciej Stachowiak <mjs (a] apple.com> 10527 10528 * generate-derived-sources: Added svn:executable property. 10529 10530 2006-03-22 Maciej Stachowiak <mjs (a] apple.com> 10531 10532 Reviewed by Eric. 10533 10534 Handle dependencies for derived sources properly. 10535 10536 - Made a new generate-derived-sources script that does all the dependency checking 10537 and source generation. 10538 - Put this script in a subtarget instead of a phase. 10539 - Made derived sources go in the build root, not a source root. 10540 - Added derived sources to the project. 10541 - Removed files whose sole purpose was to include and compile derived sources, 10542 just compile those directly now. 10543 - Tweaked the IDL code generator so it can handle one IDL at a time, to make 10544 it easier to get the dependencies right. 10545 10546 * generate-derived-sources: Added. 10547 * WebCore.xcodeproj/project.pbxproj: 10548 * bindings/js/JSDOMCore.cpp: Removed. 10549 * bindings/js/JSDOMEvents.cpp: Removed. 10550 * bindings/js/JSDOMHTML.cpp: Removed. 10551 * bindings/scripts/CodeGenerator.pm: 10552 * bindings/scripts/CodeGeneratorJS.pm: 10553 * bindings/scripts/generate-bindings.pl: 10554 * css/UserAgentStyleSheets.cpp: Removed. 10555 * dom/Range.cpp: 10556 (WebCore::Range::~Range): 10557 * dom/Range.h: 10558 * khtml/ecma/kjs_css.cpp: 10559 (KJS::DOMStyleSheet::DOMStyleSheet): 10560 (KJS::DOMStyleSheetList::DOMStyleSheetList): 10561 (KJS::DOMCSSRuleList::DOMCSSRuleList): 10562 (KJS::DOMCSSRule::DOMCSSRule): 10563 * khtml/ecma/kjs_css.h: 10564 10565 2006-03-22 Justin Garcia <justin.garcia (a] apple.com> 10566 10567 Reviewed by harrison 10568 10569 <http://bugs.webkit.org/show_bug.cgi?id=7904> 10570 Avoid a layout after test insertion and remove isProbablyBlock 10571 10572 * editing/ReplaceSelectionCommand.cpp: 10573 (WebCore::ReplacementFragment::ReplacementFragment): 10574 (WebCore::ReplacementFragment::~ReplacementFragment): 10575 (WebCore::ReplacementFragment::firstChild): 10576 (WebCore::ReplacementFragment::lastChild): 10577 (WebCore::ReplacementFragment::mergeStartNode): 10578 (WebCore::ReplacementFragment::enclosingBlock): 10579 (WebCore::ReplacementFragment::insertFragmentForTestRendering): 10580 (WebCore::ReplacementFragment::computeAndStoreNodeStyles): 10581 (WebCore::ReplacementFragment::removeUnrenderedNodes): 10582 (WebCore::ReplacementFragment::renderedBlocks): 10583 (WebCore::ReplacementFragment::removeStyleNodes): 10584 (WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand): 10585 (WebCore::ReplaceSelectionCommand::doApply): 10586 * editing/ReplaceSelectionCommand.h: 10587 (WebCore::ReplacementFragment::root): 10588 10589 2006-03-22 Eric Seidel <eseidel (a] apple.com> 10590 10591 Reviewed by hyatt. 10592 10593 Fix attribute mutation events to not fire for "style" attributes. 10594 We lazily update style attributes, so sending mutation events for them makes no sense anymore. 10595 <rdar://problem/4474910> repro assertion failure @ apple.com/store: !eventDispatchForbidden() 10596 10597 Test: fast/events/delayed-style-mutation-event-crash.html 10598 10599 * dom/dom_elementimpl.cpp: 10600 (WebCore::Element::dispatchAttrRemovalEvent): add assert 10601 (WebCore::Element::dispatchAttrAdditionEvent): add assert 10602 (WebCore::NamedAttrMap::addAttribute): 10603 10604 2006-03-22 Eric Seidel <eseidel (a] apple.com> 10605 10606 Reviewed by darin. 10607 10608 Remove more DeprecatedString usage. 10609 http://bugs.webkit.org/show_bug.cgi?id=7882 10610 10611 * bridge/mac/FrameMac.mm: 10612 (WebCore::FrameMac::attributedString): 10613 (WebCore::FrameMac::fontForSelection): 10614 (WebCore::FrameMac::tokenizerProcessedData): 10615 (WebCore::FrameMac::registerCommandForUndoOrRedo): 10616 (WebCore::FrameMac::markMisspellings): 10617 (WebCore::FrameMac::respondToChangedSelection): 10618 (WebCore::FrameMac::dashboardRegionsDictionary): 10619 (WebCore::FrameMac::dragSourceMovedTo): 10620 * css/CSSGrammar.y: 10621 * css/css_valueimpl.h: 10622 * css/cssparser.cpp: 10623 (WebCore::CSSParser::CSSParser): 10624 (WebCore::CSSParser::parseValue): 10625 (WebCore::CSSParser::parseColor): 10626 (WebCore::CSSParser::parseDeclaration): 10627 (WebCore::CSSParser::validUnit): 10628 (WebCore::CSSParser::parseShorthand): 10629 (WebCore::CSSParser::parseContent): 10630 (WebCore::skipCommaInDashboardRegion): 10631 (WebCore::CSSParser::parseDashboardRegions): 10632 (WebCore::CSSParser::parseShape): 10633 (WebCore::CSSParser::parseFont): 10634 (WebCore::CSSParser::parseFontFamily): 10635 (WebCore::CSSParser::parseColorFromValue): 10636 (WebCore::yyerror): 10637 (WebCore::CSSParser::lex): 10638 (WebCore::CSSParser::text): 10639 * css/cssparser.h: 10640 (WebCore::deprecatedString): 10641 * css/cssstyleselector.cpp: 10642 (WebCore::CSSStyleSelector::applyProperty): 10643 * khtml/ecma/kjs_dom.cpp: 10644 (KJS::DOMDocument::getValueProperty): 10645 * ksvg2/css/SVGCSSParser.cpp: 10646 (WebCore::CSSParser::parseSVGPaint): 10647 (WebCore::CSSParser::parseSVGColor): 10648 * ksvg2/svg/SVGAnimationElement.cpp: 10649 (SVGAnimationElement::parseMappedAttribute): 10650 * rendering/RenderBlock.cpp: 10651 (WebCore::RenderBlock::layoutPositionedObjects): 10652 (WebCore::RenderBlock::positionNewFloats): 10653 (WebCore::RenderBlock::newLine): 10654 * rendering/RenderCanvas.cpp: 10655 (WebCore::RenderCanvas::absolutePosition): 10656 (WebCore::RenderCanvas::paint): 10657 * rendering/RenderFlexibleBox.cpp: 10658 (WebCore::RenderFlexibleBox::layoutBlock): 10659 * rendering/RenderObject.h: 10660 * rendering/bidi.cpp: 10661 (WebCore::RenderBlock::bidiReorderLine): 10662 (WebCore::RenderBlock::layoutInlineChildren): 10663 * rendering/render_form.cpp: 10664 (WebCore::RenderFieldset::paintBoxDecorations): 10665 * rendering/render_style.h: 10666 (WebCore::RenderStyle::setDashboardRegion): 10667 * rendering/table_layout.cpp: 10668 (WebCore::AutoTableLayout::calcEffectiveWidth): 10669 (WebCore::AutoTableLayout::insertSpanCell): 10670 (WebCore::AutoTableLayout::layout): 10671 (WebCore::AutoTableLayout::calcPercentages): 10672 10673 2006-03-22 Tim Omernick <timo (a] apple.com> 10674 10675 Reviewed by Kevin Decker. 10676 10677 Part of <rdar://problem/4351664> REGRESSION (420+): extra URL in b/f list - navigating back to previous page fails at apple.com/retail/) 10678 This also fixes <rdar://problem/4477821> REGRESSION (10.4.5-TOT): meta tag specifying refresh is being added to history. 10679 10680 * bridge/mac/FrameMac.h: 10681 * bridge/mac/FrameMac.mm: 10682 Removed redirectionTimerFired(). This was added as attempt to fix <http://bugs.webkit.org/show_bug.cgi?id=7058>. The 10683 aim was to cause Safari and WebKit to update their loading status after a redirect. Unfortunately, the fix had a bad side 10684 effect. Calling -reportClientRedirectCancelled: on a successful redirect causes WebKit to forget that the redirect was supposed 10685 to lock history (i.e. reuse the current back/forward entry for the new page). The end result was that intermediate "quick" redirects 10686 were creating back/forward entries when they should not have been. See 4351664. That fix was almost correct, in that we do need to 10687 notify the frame load delegate when a redirect ends, either because it succeeded or because it was cancelled. However, this is the 10688 wrong place to do it. WebCore's redirect notification logic did not need to change to fix 7058. The never-ending spinning indicators 10689 problem was actually caused by a bug at the WebKit level. 10690 10691 * manual-tests/redirectHistory: Added. 10692 * manual-tests/redirectHistory/redir-1.html: Added. 10693 * manual-tests/redirectHistory/redir-2.html: Added. 10694 * manual-tests/redirectHistory/redir-3.html: Added. 10695 Manual test case. I couldn't figure out how to create a layout test for this, because it involves navigation through history and 10696 it was unclear how/when to tell DumpRenderTree to dump its output. 10697 10698 2006-03-22 Eric Seidel <eseidel (a] apple.com> 10699 10700 Reviewed by darin. 10701 10702 Replace more DeprecatedString with String. 10703 http://bugs.webkit.org/show_bug.cgi?id=7907 10704 10705 * WebCore+SVG/kdom.h: 10706 * bindings/objc/DOMHTML.mm: 10707 (-[DOMHTMLDocument _createDocumentFragmentWithMarkupString:baseURLString:]): 10708 * bridge/BrowserExtension.h: 10709 * bridge/mac/BrowserExtensionMac.h: 10710 * bridge/mac/BrowserExtensionMac.mm: 10711 (WebCore::BrowserExtensionMac::setTypedIconURL): 10712 * bridge/mac/FrameMac.h: 10713 * bridge/mac/FrameMac.mm: 10714 (WebCore::FrameMac::searchForLabelsBeforeElement): 10715 (WebCore::nsArray): 10716 (WebCore::FrameMac::createPlugin): 10717 (WebCore::FrameMac::bindingRootObject): 10718 (WebCore::FrameMac::windowScriptObject): 10719 (WebCore::FrameMac::windowScriptNPObject): 10720 (WebCore::FrameMac::partClearedInBegin): 10721 (WebCore::FrameMac::openURLFromPageCache): 10722 * bridge/mac/WebCoreFrameBridge.mm: 10723 (-[WebCoreFrameBridge openURL:reload:contentType:refresh:lastModified:pageCache:]): 10724 (-[WebCoreFrameBridge scrollToAnchor:]): 10725 (-[WebCoreFrameBridge URLWithAttributeString:]): 10726 (-[WebCoreFrameBridge highlightAllMatchesForString:caseSensitive:]): 10727 * bridge/mac/WebCoreScriptDebugger.mm: 10728 (-[WebCoreScriptCallFrame evaluateWebScript:]): 10729 * bridge/mac/WebCoreSettings.mm: 10730 (-[WebCoreSettings _updateAllViews]): 10731 (-[WebCoreSettings setStandardFontFamily:]): 10732 (-[WebCoreSettings setMinimumFontSize:]): 10733 (-[WebCoreSettings setMinimumLogicalFontSize:]): 10734 (-[WebCoreSettings setDefaultFontSize:]): 10735 (-[WebCoreSettings setDefaultFixedFontSize:]): 10736 (-[WebCoreSettings setUserStyleSheetLocation:]): 10737 * css/CSSComputedStyleDeclaration.cpp: 10738 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): 10739 * css/CSSGrammar.y: 10740 * css/css_stylesheetimpl.cpp: 10741 (WebCore::MediaList::setMediaText): 10742 * css/css_valueimpl.cpp: 10743 (WebCore::quoteStringIfNeeded): 10744 * css/cssparser.cpp: 10745 (WebCore::CSSParser::parseColor): 10746 * css/cssstyleselector.cpp: 10747 (WebCore::CSSStyleSelector::CSSStyleSelector): 10748 * css/cssstyleselector.h: 10749 * dom/Document.cpp: 10750 (WebCore::Document::resetActiveLinkColor): 10751 (WebCore::Document::nextState): 10752 (WebCore::Document::setUserStyleSheet): 10753 (WebCore::Document::processHttpEquiv): 10754 (WebCore::Document::recalcStyleSelector): 10755 * dom/Document.h: 10756 (WebCore::Document::userStyleSheet): 10757 (WebCore::Document::setPrintStyleSheet): 10758 (WebCore::Document::printStyleSheet): 10759 * editing/markup.cpp: 10760 (WebCore::createMarkup): 10761 (WebCore::createFragmentFromMarkup): 10762 (WebCore::createFragmentFromText): 10763 * editing/markup.h: 10764 * html/CanvasRenderingContext2D.cpp: 10765 (WebCore::CanvasRenderingContext2D::setGlobalCompositeOperation): 10766 * html/HTMLTokenizer.cpp: 10767 (WebCore::HTMLTokenizer::scriptHandler): 10768 * html/html_baseimpl.cpp: 10769 (WebCore::HTMLFrameElement::openURL): 10770 (WebCore::HTMLFrameElement::attach): 10771 * html/html_headimpl.cpp: 10772 (WebCore::HTMLLinkElement::process): 10773 (WebCore::HTMLLinkElement::setStyleSheet): 10774 * html/html_headimpl.h: 10775 * html/html_imageimpl.cpp: 10776 (WebCore::HTMLImageElement::parseMappedAttribute): 10777 * html/html_imageimpl.h: 10778 (WebCore::HTMLImageElement::compositeOperator): 10779 * html/html_objectimpl.cpp: 10780 (WebCore::HTMLAppletElement::createRenderer): 10781 * ksvg2/svg/SVGStringList.cpp: 10782 (SVGStringList::reset): 10783 * kwq/AccessibilityObjectCache.h: 10784 * kwq/AccessibilityObjectCache.mm: 10785 (AccessibilityObjectCache::textMarkerForVisiblePosition): 10786 (AccessibilityObjectCache::postNotificationToTopWebArea): 10787 (AccessibilityObjectCache::postNotification): 10788 * kwq/ClipboardMac.mm: 10789 (WebCore::cocoaTypeFromMIMEType): 10790 * kwq/KWQKHTMLSettings.h: 10791 (KHTMLSettings::userStyleSheetLocation): 10792 (KHTMLSettings::setUserStyleSheetLocation): 10793 * kwq/KWQLineEdit.h: 10794 * kwq/KWQLineEdit.mm: 10795 (QLineEdit::selectedText): 10796 * loader/CachedCSSStyleSheet.cpp: 10797 (WebCore::CachedCSSStyleSheet::ref): 10798 * page/Frame.cpp: 10799 (WebCore::UserStyleSheetLoader::setStyleSheet): 10800 (WebCore::Frame::jScriptEnabled): 10801 (WebCore::Frame::javaEnabled): 10802 (WebCore::Frame::pluginsEnabled): 10803 (WebCore::Frame::receivedFirstData): 10804 (WebCore::Frame::begin): 10805 (WebCore::Frame::setUserStyleSheet): 10806 (WebCore::Frame::requestObject): 10807 (WebCore::Frame::loadPlugin): 10808 (WebCore::Frame::referrer): 10809 (WebCore::Frame::lastModified): 10810 (WebCore::Frame::reparseConfiguration): 10811 (WebCore::Frame::handleMousePressEventSingleClick): 10812 (WebCore::Frame::appliedEditing): 10813 (WebCore::Frame::unappliedEditing): 10814 (WebCore::Frame::reappliedEditing): 10815 * page/Frame.h: 10816 * page/FramePrivate.h: 10817 (WebCore::FramePrivate::FramePrivate): 10818 * platform/AtomicString.h: 10819 (WebCore::AtomicString::AtomicString): 10820 * platform/DeprecatedString.cpp: 10821 (DeprecatedString::replace): 10822 * platform/GraphicsContext.h: 10823 * platform/Image.h: 10824 * platform/KURL.cpp: 10825 * platform/KURL.h: 10826 * platform/PlatformString.h: 10827 (WebCore::String::String): 10828 (WebCore::String::replace): 10829 * platform/String.cpp: 10830 (WebCore::operator+): 10831 * platform/StringImpl.cpp: 10832 (WebCore::StringImpl::remove): 10833 (WebCore::parseLength): 10834 (WebCore::StringImpl::replace): 10835 * platform/StringImpl.h: 10836 * platform/mac/GraphicsContextMac.mm: 10837 (WebCore::GraphicsContext::setCompositeOperation): 10838 * rendering/RenderHTMLCanvas.cpp: 10839 (WebCore::RenderHTMLCanvas::paint): 10840 * rendering/render_form.cpp: 10841 (WebCore::RenderSelect::updateFromElement): 10842 * rendering/render_frames.cpp: 10843 (WebCore::isURLAllowed): 10844 (WebCore::mapClassIdToServiceType): 10845 (WebCore::RenderPartObject::updateWidget): 10846 * rendering/render_style.h: 10847 (WebCore::RenderStyle::setDashboardRegion): 10848 * xml/xmlhttprequest.cpp: 10849 (WebCore::getCharset): 10850 (WebCore::XMLHttpRequest::send): 10851 (WebCore::XMLHttpRequest::overrideMIMEType): 10852 10853 2006-03-22 Beth Dakin <bdakin (a] apple.com> 10854 10855 Reviewed by Hyatt 10856 10857 Fix for <rdar://problem/4471984> repro crash CSS position for html/ 10858 table=relative causes crash when hiding table 10859 10860 * css/cssstyleselector.cpp: 10861 (WebCore::CSSStyleSelector::adjustRenderStyle): If an object is 10862 positioned, relatively positioned, or transparent, it should always 10863 have auto indexing. Auto z-index for the root should always be 0. 10864 * rendering/RenderLayer.cpp: 10865 (WebCore::RenderLayer::removeChild): This is not part of the bug 10866 fix; just using a local variable that was created for the stacking 10867 context instead of recalculating it. 10868 10869 2006-03-22 David Hyatt <hyatt (a] apple.com> 10870 10871 Fix for residual style problem where form elements lose their connection 10872 to a degenerate table form because of a residual style fixup. This is 10873 Radar bug #4330765. 10874 10875 Reviewed by eric 10876 10877 * khtml/html/HTMLFormElement.cpp: 10878 (WebCore::HTMLFormElement::HTMLFormElement): 10879 * khtml/html/HTMLFormElement.h: 10880 (WebCore::HTMLFormElement::setPreserveFormConnectionAcrossRemove): 10881 (WebCore::HTMLFormElement::preserveFormConnectionAcrossRemove): 10882 * khtml/html/HTMLGenericFormElement.cpp: 10883 (WebCore::HTMLGenericFormElement::removedFromTree): 10884 * khtml/html/htmlparser.cpp: 10885 (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): 10886 10887 2006-03-22 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 10888 10889 Reviewed by Adele. 10890 10891 - fix http://bugs.webkit.org/show_bug.cgi?id=7747 10892 REGRESSION: Background tab/window auto-refresh in GMail will take focus. 10893 10894 * manual-tests/named-window-blank-target.html: Added. 10895 * manual-tests/resources/named-window-blank-target-step2.html: Added. 10896 * manual-tests/resources/named-window-blank-target-step3.html: Added. 10897 * manual-tests/resources/named-window-blank-target-step4.html: Added. 10898 * page/FrameTree.cpp: 10899 (WebCore::FrameTree::find): If the given name is empty, just return our frame, 10900 even if it has a name. 10901 10902 2006-03-22 Darin Adler <darin (a] apple.com> 10903 10904 Reviewed by Adele. 10905 10906 - fix http://bugs.webkit.org/show_bug.cgi?id=7143 10907 <rdar://problem/4483856> REGRESSION (417.8-TOT): onclick handler cannot call a function named OnClick (7143) 10908 10909 Test: fast/dom/Element/onclick-case.html 10910 10911 We discussed this with Maciej. In the long run we may need to remove the "all attributes 10912 show up as properties in JavaScript" feature entirely. Gecko does not do it, and it's 10913 not really the same thing IE does either. 10914 10915 * khtml/ecma/kjs_dom.cpp: 10916 (KJS::DOMElement::attributeGetter): Use getAttributeNS so we're case sensitive. 10917 (KJS::DOMElement::getOwnPropertySlot): Ditto. 10918 10919 2006-03-22 Eric Seidel <eseidel (a] apple.com> 10920 10921 Reviewed by beth. 10922 10923 <rdar://problem/4486417> REGRESSION: Mail linked against TOT WebKit crashes when composing a message 10924 10925 No test possible. 10926 10927 * bridge/mac/WebCoreSettings.mm: 10928 (-[WebCoreSettings init]): call AtomicString::init() 10929 10930 2006-03-21 Darin Adler <darin (a] apple.com> 10931 10932 - fix buildbot (and everyone else) 10933 10934 * bindings/js/JSDOMCore.cpp: Touch, because Adele's change adds a virtual function, 10935 and Xcode doesn't know this needs recompiling. 10936 * bindings/js/JSDOMEvents.cpp: Ditto. 10937 * bindings/js/JSDOMHTML.cpp: Ditto. 10938 10939 2006-03-21 Justin Haygood and Bjoern Graf <jhaygood (a] spsu.edu> <bjoern.graf (a] gmail.com> 10940 10941 Reviewed by Eric and Darin. 10942 10943 - get Windows building again 10944 10945 * WebCore.vcproj/WebCore/WebCore.vcproj: 10946 * bridge/win/FrameWin.cpp: 10947 (WebCore::FrameWin::userAgent): 10948 * bridge/win/FrameWin.h: 10949 * platform/GraphicsContext.h: 10950 * platform/cairo/ImageCairo.cpp: 10951 (WebCore::Image::supportsType): 10952 * platform/win/TemporaryLinkStubs.cpp: 10953 (FrameWin::mimeTypeForFileName): 10954 (FrameWin::objectContentType): 10955 (FrameWin::createPlugin): 10956 (FrameWin::overrideMediaType): 10957 (FrameWin::passSubframeEventToSubframe): 10958 (FrameWin::createFrame): 10959 (FrameWin::incomingReferrer): 10960 10961 2006-03-21 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 10962 10963 Reviewed by Darin. 10964 10965 - fix http://bugs.webkit.org/show_bug.cgi?id=7884 10966 REGRESSION: Selecting a custom style sheet crashes 20/3 nightly 10967 10968 * page/Frame.cpp: 10969 (WebCore::UserStyleSheetLoader::setStyleSheet): This was calling the function 10970 that sets the stylesheet URL, passing it the actual stylesheet. 10971 (WebCore::Frame::begin): 10972 (WebCore::Frame::setUserStyleSheetLocation): Renamed the version of 10973 setUserStyleSheet() that takes a URL to this. 10974 (WebCore::Frame::reparseConfiguration): 10975 * page/Frame.h: 10976 10977 2006-03-21 Adele Peterson <adele (a] apple.com> 10978 10979 Reviewed by Darin. 10980 10981 - Fix for 10982 http://bugs.webkit.org/show_bug.cgi?id=6813 10983 elementAtPoint needs to return input element when clicking on new text field 10984 http://bugs.webkit.org/show_bug.cgi?id=7799 10985 New text fields don't respect the disabled attribute 10986 10987 - Tests: 10988 fast/forms/input-appearance-disabled.html 10989 fast/forms/input-appearance-elementFromPoint.html 10990 fast/forms/input-appearance-preventDefault.html 10991 10992 * bridge/mac/WebCoreFrameBridge.h: Added allowShadowContent parameter to getInnerNonSharedNode so new elementAtPoint method in WebKit can call this. 10993 * bridge/mac/WebCoreFrameBridge.mm: 10994 (-[WebCoreFrameBridge getInnerNonSharedNode:innerNode:URLElement:atPoint:allowShadowContent:]): Passes allowShadowContent parameter to nodeInfoAtPoint. 10995 (-[WebCoreFrameBridge _visiblePositionForPoint:]): Updated to call nodeInfoAtPoint allowing shadow content. 10996 (-[WebCoreFrameBridge RenderObject::nodeInfoAtPoint:allowShadowContent:]): Added allowShadowContent parameter. 10997 10998 * dom/Node.h: 10999 (WebCore::Node::isShadowNode): Added. 11000 (WebCore::Node::shadowParentNode): Added. 11001 * dom/Node.cpp: (WebCore::Node::shadowAncestorNode): Added. If an ancestor is a shadow node, return its shadow parent node. 11002 * html/HTMLTextFieldInnerElement.h: (WebCore::HTMLTextFieldInnerElement::isShadowNode): Added. 11003 11004 * dom/Document.cpp: (WebCore::Document::elementFromPoint): Gets the shadowAncestorNode (so we get the input element, and not the inner div). 11005 * html/HTMLInputElement.cpp: 11006 (WebCore::HTMLInputElement::isKeyboardFocusable): If text fields are focusable, then they should be keyboard focusable. This works for the 11007 old text fields because HTMLGenericFormElement::isKeyboardFocusable does the right thing for RenderWidgets. That's not needed for the new form 11008 elements. 11009 (WebCore::HTMLInputElement::defaultEventHandler): let the renderer forward drag, mouse, and wheel events. 11010 11011 * page/FrameView.cpp: 11012 (WebCore::FrameView::updateDragAndDrop): Send drag events to the shadowAncestorNode. 11013 (WebCore::FrameView::dispatchMouseEvent): Send mouse events to the shadowAncestorNode. 11014 (WebCore::FrameView::handleWheelEvent): Send wheel events to the shadowAncestorNode. 11015 11016 * rendering/RenderTextField.cpp: (WebCore::RenderTextField::forwardEvent): forwards events to the inner div element. 11017 * rendering/RenderTextField.h: Added forwardEvent method. 11018 11019 * kwq/WebCoreAXObject.mm: 11020 (-[WebCoreAXObject accessibilityHitTest:]): Gets the shadowAncestorNode (so we get the input element, and not the inner div). 11021 (-[WebCoreAXObject role]): Gets the right role for text fields, since we no longer get that from AppKit. 11022 (-[WebCoreAXObject roleDescription]): Gets the right description for text fields. 11023 11024 2006-03-21 Darin Adler <darin (a] apple.com> 11025 11026 Reviewed by Tim O. 11027 11028 - fixed <rdar://problem/4251515> REGRESSION: listing tag broken in TOT 11029 11030 Test: fast/html/listing.html 11031 11032 * html/HTMLNames.h: Add listing tag. 11033 11034 * bindings/objc/DOM.mm: (+[DOMNode _nodeWith:]): 11035 * bridge/mac/FrameMac.mm: (WebCore::FrameMac::attributedString): 11036 * css/html4.css: 11037 * editing/ReplaceSelectionCommand.cpp: (WebCore::isProbablyBlock): 11038 * editing/TextIterator.cpp: 11039 (WebCore::TextIterator::handleNonTextNode): 11040 (WebCore::TextIterator::exitNode): 11041 (WebCore::SimplifiedBackwardsTextIterator::handleNonTextNode): 11042 * editing/markup.cpp: 11043 (WebCore::startMarkup): 11044 (WebCore::createMarkup): 11045 * html/HTMLElement.cpp: (WebCore::blockTagList): 11046 * html/HTMLElementFactory.cpp: 11047 (WebCore::addTag): 11048 (WebCore::createFunctionMap): 11049 (WebCore::HTMLElementFactory::createHTMLElement): 11050 * html/HTMLParser.cpp: (WebCore::HTMLParser::isAffectedByResidualStyle): 11051 * html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::parseTag): 11052 * khtml/ecma/kjs_html.cpp: 11053 (KJS::JSHTMLElement::classInfo): 11054 (KJS::JSHTMLElement::accessors): 11055 Add listing tags everywhere pre tags are listed. 11056 11057 2006-03-21 Maciej Stachowiak <mjs (a] apple.com> 11058 11059 Reviewed by Darin. 11060 11061 - fix horrible build fallout from my attr fix 11062 11063 * bindings/js/JSCanvasRenderingContext2DBase.cpp: 11064 * bindings/js/JSDOMCore.cpp: 11065 * bindings/js/JSDOMEvents.cpp: 11066 * bindings/js/JSDOMHTML.cpp: 11067 * bindings/scripts/CodeGeneratorJS.pm: 11068 11069 2006-03-21 Beth Dakin <bdakin (a] apple.com> 11070 11071 Reviewed by Maciej 11072 11073 Fix for http://bugs.webkit.org/show_bug.cgi?id=7223 11074 Reproducible crash when tabbing to a frame that has not been loaded 11075 11076 * bridge/mac/FrameMac.mm: 11077 (WebCore::FrameMac::nextKeyViewInFrame): When a renderer doesn't 11078 have a widget, skip it in the focus loop. 11079 11080 2006-03-20 Eric Seidel <eseidel (a] apple.com> 11081 11082 Reviewed by mjs. 11083 11084 Fix a unsafe static cast causing intermittent crashes. 11085 <rdar://problem/4411663> crash at KXMLCore::RefPtr<WebCore::DOMStringImpl>::get() const + 20 (RefPtr.h:45) 11086 11087 Test: fast/dom/NodeList/item-by-id-with-no-document.html 11088 11089 * dom/NodeList.cpp: 11090 (WebCore::NodeList::itemById): fix unsafe static cast. 11091 11092 2006-03-20 Maciej Stachowiak <mjs (a] apple.com> 11093 11094 - touch this file in hopes of fixing build 11095 11096 * bindings/js/JSDOMCore.cpp: 11097 11098 2006-03-20 Maciej Stachowiak <mjs (a] apple.com> 11099 11100 Reviewed by Anders. 11101 11102 - fixed <rdar://problem/4446749> 10.4.4: safari crash in DOM::NamedAttrMapImpl::setNamedItem 11103 11104 * bindings/scripts/CodeGeneratorJS.pm: Add a framework for typechecking method 11105 arguments. For now only use it for parameters of type Attr. 11106 * dom/Element.idl: Arbitrary change to make it regenerate. 11107 * dom/dom_elementimpl.cpp: 11108 (WebCore::Element::setAttributeNode): ASSERT that attr is not null 11109 * khtml/ecma/kjs_dom.cpp: 11110 (KJS::toAttr): add bool ok parameter 11111 * khtml/ecma/kjs_dom.h: 11112 11113 2006-03-20 Eric Seidel <eseidel (a] apple.com> 11114 11115 * ksvg2/css/SVGCSSParser.h: Removed unused file. 11116 11117 2006-03-20 Eric Seidel <eseidel (a] apple.com> 11118 11119 Reviewed by mjs. 11120 11121 Fix tokenizer crash when document.open() is called from an external script: 11122 <rdar://problem/4483882> REGRESSION (417.8-TOT): crash at yourmovies.com.au in WebCore::HTMLTokenizer::reset() + 92 (7818) 11123 11124 * dom/Document.cpp: 11125 (WebCore::Document::open): Check to make sure the current tokenizer isn't executing a script 11126 * dom/xml_tokenizer.h: 11127 (WebCore::Tokenizer::executingScript): Add a way for others to know if scripts are executing. 11128 * html/HTMLTokenizer.cpp: 11129 (WebCore::HTMLTokenizer::scriptExecution): Wire into existing m_executingScript member var. 11130 * html/HTMLTokenizer.h: 11131 (WebCore::HTMLTokenizer::executingScript): 11132 * kcanvas/device/quartz/KCanvasFilterQuartz.mm: 11133 (WebCore::KCanvasFilterQuartz::prepareFilter): Unrelated code cleanup. 11134 11135 2006-03-20 Justin Garcia <justin.garcia (a] apple.com> 11136 11137 Reviewed by darin 11138 11139 <rdar://problem/3997958> 11140 REGRESSION (Mail): Mail takes half of forever to paste >1500 lines - replaceSelectionWithNode 11141 11142 * dom/Position.cpp: 11143 (WebCore::Position::upstream): Avoid calling previous() when we know that 11144 it will 1) end the search and 2) be expensive to compute. 11145 (WebCore::Position::downstream): Removed some dead code. 11146 (WebCore::Position::inRenderedText): Return false for offsets inside composed characters. 11147 * dom/Position.h: 11148 * editing/VisiblePosition.cpp: 11149 (WebCore::VisiblePosition::init): If there are two visually equivalent candidates, we choose 11150 the one that occurs first in document order. Using upstream() to find the one that occurs first is 11151 much faster than the old code. 11152 11153 2006-03-20 Eric Seidel <eseidel (a] apple.com> 11154 11155 Reviewed by adele & ggaren. 11156 11157 Added new cachePluginDataIfNecessary function to update 11158 plugins and mimes arrays. Made sure to call this in 11159 constructor as well as refresh. The crash was caused by 11160 a refresh rendering a "plugins" object invalid. 11161 Changed existing test case to depend on this new correct behavior. 11162 11163 <rdar://problem/4480571> Safari crashed at exit at KXMLCore::deleteAllValues + 24 11164 11165 * khtml/ecma/kjs_navigator.cpp: 11166 (KJS::PluginBase::cachePluginDataIfNecessary): 11167 (KJS::PluginBase::PluginBase): 11168 (KJS::PluginBase::~PluginBase): 11169 (KJS::PluginBase::refresh): 11170 11171 2006-03-20 Adele Peterson <adele (a] apple.com> 11172 11173 Reviewed by Justin. 11174 11175 * rendering/RenderTextField.cpp: (WebCore::RenderTextField::visiblePositionForIndex): 11176 When calculating the VisiblePosition for the first position in the text field, it 11177 makes more sense for the position to have a downstream affinity. 11178 11179 2006-03-20 Maciej Stachowiak <mjs (a] apple.com> 11180 11181 Reviewed by Adele. 11182 11183 <rdar://problem/4362396> REGRESSION: (417-420) stopPropagation is not working for click event listener (onclick works fine) 11184 11185 * dom/EventTargetNode.cpp: 11186 (WebCore::EventTargetNode::dispatchGenericEvent): make sure to fire capturing listeners 11187 as well as bubbling ones on the target. 11188 11189 2006-03-20 Maciej Stachowiak <mjs (a] apple.com> 11190 11191 Reviewed by Darin. 11192 11193 <rdar://problem/4458568> WebCore should not disclose https referrers 11194 11195 * bridge/mac/WebCoreFrameBridge.mm: 11196 (-[WebCoreFrameBridge canLoadURL:fromReferrer:hideReferrer:]): 11197 Don't send https URLs as referrers to non-secure http sites. 11198 11199 2006-03-20 Darin Adler <darin (a] apple.com> 11200 11201 Reviewed by Geoff. 11202 11203 - http://bugs.webkit.org/show_bug.cgi?id=7867 11204 get rid of macro hacks for DOM, KDOM, KSVG, khtml, DOMString, QString 11205 11206 * config.h: Remove the defines for DOM, KDOM, KSVG, khtml, DOMString, QString, 11207 and qstring(). 11208 11209 * WebCore.xcodeproj/project.pbxproj: Pass in WebCore instead of KSVG as the 11210 namespace for SVG names. 11211 * ksvg2/scripts/make_names.pl: Made a couple changes to trick the SVG names into 11212 recompiling, since they are in a different namespace now. 11213 11214 * ForwardingHeaders/kjs/identifier.h: Added. 11215 11216 * dom/PlatformWheelEvent.idl: Removed. 11217 * dom/WheelEvent.idl: Added. This file was renamed by accident. 11218 11219 * bindings/js/JSDOMCore.cpp: 11220 * bindings/js/JSDOMEvents.cpp: 11221 * bindings/js/JSDOMHTML.cpp: 11222 * dom/Attr.idl: 11223 * dom/CharacterData.idl: 11224 * dom/DOMImplementation.idl: 11225 * dom/DocumentType.idl: 11226 * dom/Element.idl: 11227 * dom/Entity.idl: 11228 * dom/MutationEvent.idl: 11229 * dom/Notation.idl: 11230 * dom/ProcessingInstruction.idl: 11231 * dom/Text.idl: 11232 * html/CanvasGradient.idl: 11233 * html/CanvasPattern.idl: 11234 * html/CanvasRenderingContext2D.idl: 11235 Touched, to get CodeGeneratorJS.pm changes to take effect. 11236 11237 * css/CSSGrammar.y: 11238 * css/css_valueimpl.cpp: (WebCore::propertyID): 11239 Changed calls to get CSS property values to use an explicit SVG:: namespace, 11240 to match what the script writes out. 11241 11242 * khtml/ecma/kjs_binding.h: Added forward declaration of WebCore::String. 11243 11244 * ksvg2/scripts/cssmakeget rid of macro hacks for DOM, KDOM, KSVG, khtml, DOMString, QString 11245 props: Made this compile with warnings and strict turned on. 11246 Really just a trick to get properties to recompile, which turned out to be unneeded. 11247 * ksvg2/scripts/cssmakevalues: Ditto. 11248 11249 * ksvg2/svg/SVGAElement.cpp: 11250 (SVGAElement::parseMappedAttribute): 11251 (SVGAElement::defaultEventHandler): 11252 * ksvg2/svg/SVGAnimateTransformElement.cpp: 11253 (SVGAnimateTransformElement::parseMappedAttribute): 11254 * ksvg2/svg/SVGAnimationElement.cpp: 11255 (SVGAnimationElement::parseMappedAttribute): 11256 * ksvg2/svg/SVGClipPathElement.cpp: 11257 (SVGClipPathElement::parseMappedAttribute): 11258 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp: 11259 (SVGComponentTransferFunctionElement::parseMappedAttribute): 11260 * ksvg2/svg/SVGExternalResourcesRequired.cpp: 11261 (SVGExternalResourcesRequired::parseMappedAttribute): 11262 * ksvg2/svg/SVGFEBlendElement.cpp: 11263 (SVGFEBlendElement::parseMappedAttribute): 11264 * ksvg2/svg/SVGFEColorMatrixElement.cpp: 11265 (SVGFEColorMatrixElement::parseMappedAttribute): 11266 * ksvg2/svg/SVGFEComponentTransferElement.cpp: 11267 (SVGFEComponentTransferElement::parseMappedAttribute): 11268 * ksvg2/svg/SVGFECompositeElement.cpp: 11269 (SVGFECompositeElement::parseMappedAttribute): 11270 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp: 11271 (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute): 11272 * ksvg2/svg/SVGFEDisplacementMapElement.cpp: 11273 (SVGFEDisplacementMapElement::SVGFEDisplacementMapElement): 11274 (SVGFEDisplacementMapElement::stringToChannel): 11275 (SVGFEDisplacementMapElement::parseMappedAttribute): 11276 (SVGFEDisplacementMapElement::filterEffect): 11277 * ksvg2/svg/SVGFEDisplacementMapElement.h: 11278 * ksvg2/svg/SVGFEFloodElement.cpp: 11279 (SVGFEFloodElement::parseMappedAttribute): 11280 * ksvg2/svg/SVGFEGaussianBlurElement.cpp: 11281 (SVGFEGaussianBlurElement::parseMappedAttribute): 11282 * ksvg2/svg/SVGFEImageElement.cpp: 11283 (SVGFEImageElement::parseMappedAttribute): 11284 * ksvg2/svg/SVGFELightElement.cpp: 11285 (SVGFELightElement::parseMappedAttribute): 11286 * ksvg2/svg/SVGFEMergeNodeElement.cpp: 11287 (SVGFEMergeNodeElement::parseMappedAttribute): 11288 * ksvg2/svg/SVGFEOffsetElement.cpp: 11289 (SVGFEOffsetElement::parseMappedAttribute): 11290 * ksvg2/svg/SVGFESpecularLightingElement.cpp: 11291 (SVGFESpecularLightingElement::parseMappedAttribute): 11292 * ksvg2/svg/SVGFETileElement.cpp: 11293 (SVGFETileElement::parseMappedAttribute): 11294 * ksvg2/svg/SVGFETurbulenceElement.cpp: 11295 (SVGFETurbulenceElement::parseMappedAttribute): 11296 * ksvg2/svg/SVGFilterElement.cpp: 11297 (SVGFilterElement::parseMappedAttribute): 11298 * ksvg2/svg/SVGGradientElement.cpp: 11299 (SVGGradientElement::parseMappedAttribute): 11300 * ksvg2/svg/SVGMaskElement.cpp: 11301 (WebCore::SVGMaskElement::parseMappedAttribute): 11302 * ksvg2/svg/SVGPolyElement.cpp: 11303 (SVGPolyElement::parseMappedAttribute): 11304 * ksvg2/svg/SVGStopElement.cpp: 11305 (SVGStopElement::parseMappedAttribute): 11306 * ksvg2/svg/SVGStyledElement.cpp: 11307 (WebCore::SVGStyledElement::parseMappedAttribute): 11308 * ksvg2/svg/SVGTests.cpp: 11309 (WebCore::SVGTests::parseMappedAttribute): 11310 * ksvg2/svg/SVGTextContentElement.cpp: 11311 (SVGTextContentElement::parseMappedAttribute): 11312 * ksvg2/svg/SVGTextPositioningElement.cpp: 11313 (SVGTextPositioningElement::parseMappedAttribute): 11314 * ksvg2/svg/SVGViewElement.cpp: 11315 (SVGViewElement::parseMappedAttribute): 11316 * ksvg2/svg/SVGZoomAndPan.cpp: 11317 (SVGZoomAndPan::parseMappedAttribute): 11318 Changed code that converts an AtomicString to a String to do it in a 11319 more-efficient fashion that works even with all the new conversions. 11320 11321 * page/Frame.cpp: 11322 (WebCore::getString): Removed unneeded .deprecatedString(). 11323 (WebCore::Frame::begin): Removed the only use of QSTRING_NULL. 11324 11325 * platform/AtomicString.h: Added conversion to and from KJS::Identifier 11326 and KJS::UString. 11327 * platform/AtomicString.cpp: 11328 (WebCore::AtomicString::add): Added overloads for Identifier and UString. 11329 (WebCore::AtomicString::operator Identifier): Added. 11330 (WebCore::AtomicString::operator UString): Added. 11331 11332 * platform/DeprecatedString.h: Added conversion to and from KJS::Identifier 11333 and KJS::UString. 11334 * platform/DeprecatedString.cpp: 11335 (DeprecatedString::DeprecatedString): Added overloads for Identifier and UString. 11336 (DeprecatedString::operator Identifier): Added. 11337 (DeprecatedString::operator UString): Added. 11338 11339 * platform/PlatformString.h: Added conversion to and from KJS::Identifier 11340 and KJS::UString. 11341 * platform/String.cpp: 11342 (WebCore::String::String): Added overloads for Identifier and UString. 11343 (WebCore::String::operator Identifier): Added. 11344 (WebCore::String::operator UString): Added. 11345 11346 * platform/StringImpl.h: Added constructors that take KJS::Identifier 11347 and KJS::UString 11348 * platform/StringImpl.cpp: 11349 (WebCore::getWordBreakIterator): Changed a use of UChar to say ::UChar 11350 instead because of ambiguity with KJS::UChar. 11351 (WebCore::StringImpl::StringImpl): Added overloads for Identifier and String. 11352 11353 * bindings/js/JSCanvasRenderingContext2DBase.cpp: 11354 (WebCore::JSCanvasRenderingContext2DBaseProtoFunc::callAsFunction): 11355 (WebCore::toHTMLCanvasStyle): 11356 * bindings/scripts/CodeGeneratorJS.pm: 11357 * bridge/mac/WebCoreFrameBridge.mm: 11358 (aeDescFromJSValue): 11359 (-[WebCoreFrameBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]): 11360 * dom/QualifiedName.cpp: 11361 (WebCore::QualifiedName::toString): 11362 * khtml/ecma/JSDOMParser.cpp: 11363 (KJS::DOMParserProtoFunc::callAsFunction): 11364 * khtml/ecma/JSXMLHttpRequest.cpp: 11365 (KJS::JSXMLHttpRequestProtoFunc::callAsFunction): 11366 * khtml/ecma/JSXSLTProcessor.cpp: 11367 (KJS::XSLTProcessorProtoFunc::callAsFunction): 11368 * khtml/ecma/kjs_binding.cpp: 11369 (KJS::valueToStringWithNullCheck): 11370 * khtml/ecma/kjs_css.cpp: 11371 (KJS::cssPropertyName): 11372 (KJS::DOMCSSStyleDeclaration::put): 11373 (KJS::DOMCSSStyleDeclarationProtoFunc::callAsFunction): 11374 (KJS::DOMStyleSheetList::nameGetter): 11375 (KJS::DOMStyleSheetList::getOwnPropertySlot): 11376 (KJS::DOMMediaList::put): 11377 (KJS::KJS::DOMMediaListProtoFunc::callAsFunction): 11378 (KJS::DOMCSSStyleSheetProtoFunc::callAsFunction): 11379 (KJS::DOMCSSRule::putValueProperty): 11380 (KJS::DOMCSSRuleFunc::callAsFunction): 11381 (KJS::DOMCSSValue::put): 11382 (KJS::DOMCSSPrimitiveValueProtoFunc::callAsFunction): 11383 * khtml/ecma/kjs_dom.cpp: 11384 (KJS::DOMNode::putValueProperty): 11385 (KJS::DOMNode::toString): 11386 (KJS::DOMNodeProtoFunc::callAsFunction): 11387 (KJS::DOMEventTargetNodeProtoFunc::callAsFunction): 11388 (KJS::DOMNodeList::nameGetter): 11389 (KJS::DOMNodeList::getOwnPropertySlot): 11390 (KJS::DOMDocument::putValueProperty): 11391 (KJS::DOMDocumentProtoFunc::callAsFunction): 11392 (KJS::DOMElement::attributeGetter): 11393 (KJS::DOMElement::getOwnPropertySlot): 11394 (KJS::DOMNamedNodeMap::nameGetter): 11395 (KJS::DOMNamedNodeMap::getOwnPropertySlot): 11396 (KJS::DOMNamedNodeMapProtoFunc::callAsFunction): 11397 (KJS::DOMNamedNodesCollection::getOwnPropertySlot): 11398 * khtml/ecma/kjs_events.cpp: 11399 (KJS::JSAbstractEventListener::handleEvent): 11400 (KJS::DOMEvent::getValueProperty): 11401 (KJS::DOMEventProtoFunc::callAsFunction): 11402 (KJS::DOMUIEventProtoFunc::callAsFunction): 11403 (KJS::DOMMouseEventProtoFunc::callAsFunction): 11404 (KJS::DOMKeyboardEventProtoFunc::callAsFunction): 11405 (KJS::Clipboard::putValueProperty): 11406 (KJS::ClipboardProtoFunc::callAsFunction): 11407 * khtml/ecma/kjs_html.cpp: 11408 (KJS::HTMLDocFunction::callAsFunction): 11409 (KJS::JSHTMLDocument::namedItemGetter): 11410 (KJS::JSHTMLDocument::getOwnPropertySlot): 11411 (KJS::JSHTMLDocument::putValueProperty): 11412 (KJS::JSHTMLElement::framesetNameGetter): 11413 (KJS::JSHTMLElement::getOwnPropertySlot): 11414 (KJS::HTMLElementFunction::callAsFunction): 11415 (KJS::JSHTMLElement::putValueProperty): 11416 (KJS::JSHTMLCollection::callAsFunction): 11417 (KJS::JSHTMLCollection::getNamedItems): 11418 (KJS::HTMLCollectionProtoFunc::callAsFunction): 11419 (KJS::OptionConstructorImp::construct): 11420 * khtml/ecma/kjs_navigator.cpp: 11421 (KJS::Plugins::nameGetter): 11422 (KJS::Plugins::getOwnPropertySlot): 11423 (KJS::MimeTypes::nameGetter): 11424 (KJS::MimeTypes::getOwnPropertySlot): 11425 (KJS::Plugin::nameGetter): 11426 (KJS::Plugin::getOwnPropertySlot): 11427 * khtml/ecma/kjs_proxy.cpp: 11428 (WebCore::KJSProxy::evaluate): 11429 * khtml/ecma/kjs_range.cpp: 11430 (KJS::DOMRangeProtoFunc::callAsFunction): 11431 * khtml/ecma/kjs_views.cpp: 11432 (KJS::DOMAbstractViewProtoFunc::callAsFunction): 11433 * khtml/ecma/kjs_window.cpp: 11434 (KJS::parseModalDialogFeatures): 11435 (KJS::showModalDialog): 11436 (KJS::Window::childFrameGetter): 11437 (KJS::Window::namedFrameGetter): 11438 (KJS::Window::namedItemGetter): 11439 (KJS::Window::getOwnPropertySlot): 11440 (KJS::Window::put): 11441 (KJS::WindowFunc::callAsFunction): 11442 (KJS::ScheduledAction::execute): 11443 (KJS::Window::installTimeout): 11444 (KJS::FrameArray::nameGetter): 11445 (KJS::FrameArray::getOwnPropertySlot): 11446 (KJS::Location::put): 11447 (KJS::LocationFunc::callAsFunction): 11448 (KJS::SelectionFunc::callAsFunction): 11449 Removed explicit calls to domString(), sometimes replacing with explicit calls to the 11450 String() constructor. Other similar changes for AtomicString and DeprecatedString use. 11451 11452 2006-03-20 Eric Seidel <eseidel (a] apple.com> 11453 11454 Reviewed by darin. 11455 11456 Remove many, many uses of DeprecatedString. 11457 Fix various style issues throughout the touched code. 11458 11459 * bindings/objc/DOM.mm: 11460 (-[DOMRange _text]): 11461 * bridge/mac/BrowserExtensionMac.mm: 11462 (WebCore::BrowserExtensionMac::createNewWindow): 11463 * bridge/mac/FrameMac.h: 11464 (WebCore::FrameMac::bridge): 11465 (WebCore::FrameMac::markedTextRange): 11466 (WebCore::Mac): 11467 * bridge/mac/FrameMac.mm: 11468 (WebCore::FrameMac::openURLRequest): 11469 (WebCore::FrameMac::searchForLabelsAboveCell): 11470 (WebCore::FrameMac::searchForLabelsBeforeElement): 11471 (WebCore::FrameMac::matchLabelsAgainstElement): 11472 (WebCore::FrameMac::findString): 11473 (WebCore::FrameMac::submitForm): 11474 (WebCore::FrameMac::urlSelected): 11475 (WebCore::FrameMac::objectContentType): 11476 (WebCore::FrameMac::createPlugin): 11477 (WebCore::FrameMac::createFrame): 11478 (WebCore::FrameMac::setTitle): 11479 (WebCore::FrameMac::setStatusBarText): 11480 (WebCore::FrameMac::advanceToNextMisspelling): 11481 (WebCore::FrameMac::userAgent): 11482 (WebCore::FrameMac::mimeTypeForFileName): 11483 (WebCore::FrameMac::openURLFromPageCache): 11484 (WebCore::FrameMac::incomingReferrer): 11485 (WebCore::FrameMac::attributedString): 11486 (WebCore::FrameMac::overrideMediaType): 11487 (WebCore::FrameMac::shouldClose): 11488 * bridge/mac/WebCoreFrameBridge.mm: 11489 (-[WebCoreFrameBridge _documentTypeString]): 11490 (-[WebCoreFrameBridge selectedString]): 11491 (-[WebCoreFrameBridge stringForRange:]): 11492 (-[WebCoreFrameBridge advanceToNextMisspelling]): 11493 (-[WebCoreFrameBridge advanceToNextMisspellingStartingJustBeforeSelection]): 11494 (-[WebCoreFrameBridge domain]): 11495 * bridge/mac/WebCoreSettings.mm: 11496 (-[WebCoreSettings setStandardFontFamily:]): 11497 (-[WebCoreSettings setFixedFontFamily:]): 11498 (-[WebCoreSettings setSerifFontFamily:]): 11499 (-[WebCoreSettings setSansSerifFontFamily:]): 11500 (-[WebCoreSettings setCursiveFontFamily:]): 11501 (-[WebCoreSettings setFantasyFontFamily:]): 11502 (-[WebCoreSettings setUserStyleSheetLocation:]): 11503 (-[WebCoreSettings setDefaultTextEncoding:]): 11504 * css/css_valueimpl.cpp: 11505 (WebCore::quoteStringIfNeeded): 11506 * css/cssstyleselector.cpp: 11507 (WebCore::CSSStyleSelector::CSSStyleSelector): 11508 (WebCore::CSSStyleSelector::setEncodedURL): 11509 (WebCore::cleanpath): 11510 (WebCore::checkPseudoState): 11511 (WebCore::CSSStyleSelector::styleForElement): 11512 (WebCore::CSSStyleSelector::styleRulesForElement): 11513 (WebCore::convertToLength): 11514 (WebCore::colorForCSSValue): 11515 (WebCore::CSSStyleSelector::applyProperty): 11516 (WebCore::CSSStyleSelector::getColorFromPrimitiveValue): 11517 * css/cssstyleselector.h: 11518 * dom/CDATASection.cpp: 11519 (WebCore::CDATASection::toString): 11520 * dom/Document.cpp: 11521 (WebCore::Document::recalcStyle): 11522 * dom/Document.h: 11523 (WebCore::Document::baseTarget): 11524 (WebCore::Document::setBaseTarget): 11525 * dom/dom_elementimpl.cpp: 11526 (WebCore::Element::openTagStartToString): 11527 * dom/xml_tokenizer.cpp: 11528 (WebCore::handleElementAttributes): 11529 (WebCore::XMLTokenizer::startElementNs): 11530 * editing/SelectionController.cpp: 11531 (WebCore::SelectionController::type): 11532 * editing/TextIterator.cpp: 11533 (WebCore::TextIterator::advance): 11534 (WebCore::TextIterator::handleTextBox): 11535 (WebCore::TextIterator::handleNonTextNode): 11536 (WebCore::TextIterator::exitNode): 11537 (WebCore::SimplifiedBackwardsTextIterator::advance): 11538 (WebCore::SimplifiedBackwardsTextIterator::handleTextNode): 11539 (WebCore::CharacterIterator::advance): 11540 (WebCore::WordAwareIterator::advance): 11541 (WebCore::WordAwareIterator::length): 11542 (WebCore::WordAwareIterator::characters): 11543 (WebCore::CircularSearchBuffer::CircularSearchBuffer): 11544 (WebCore::CircularSearchBuffer::append): 11545 (WebCore::TextIterator::rangeFromLocationAndLength): 11546 (WebCore::findPlainText): 11547 * editing/TextIterator.h: 11548 * html/HTMLFormElement.cpp: 11549 (WebCore::HTMLFormElement::formData): 11550 * khtml/ecma/kjs_navigator.cpp: 11551 (KJS::Navigator::getValueProperty): 11552 * khtml/ecma/kjs_proxy.cpp: 11553 (WebCore::KJSProxy::initScriptIfNeeded): 11554 * khtml/ecma/kjs_window.cpp: 11555 (KJS::Location::getValueProperty): 11556 * ksvg2/misc/KCanvasRenderingStyle.cpp: 11557 (WebCore::KSVGPainterFactory::fillPaintServer): 11558 (WebCore::KSVGPainterFactory::strokePaintServer): 11559 * ksvg2/svg/SVGAngle.cpp: 11560 (SVGAngle::calculate): 11561 (SVGAngle::setValueAsString): 11562 (SVGAngle::valueAsString): 11563 (SVGAngle::convertToSpecifiedUnits): 11564 (SVGAngle::shortestArcBisector): 11565 * ksvg2/svg/SVGAngle.h: 11566 * ksvg2/svg/SVGAnimationElement.cpp: 11567 (SVGAnimationElement::targetElement): 11568 (SVGAnimationElement::parseMappedAttribute): 11569 (SVGAnimationElement::parseClockValue): 11570 (SVGAnimationElement::targetAttribute): 11571 (SVGAnimationElement::setTargetAttribute): 11572 (SVGAnimationElement::detectAnimationMode): 11573 (SVGAnimationElement::calculateCurrentValueItem): 11574 (SVGAnimationElement::calculateRelativeTimePercentage): 11575 * ksvg2/svg/SVGColor.cpp: 11576 (SVGColor::setRGBColor): 11577 * ksvg2/svg/SVGDOMImplementation.cpp: 11578 (svgFeatureSet): 11579 (SVGDOMImplementation::self): 11580 (SVGDOMImplementation::hasFeature): 11581 (SVGDOMImplementation::createDocumentType): 11582 (SVGDOMImplementation::createDocument): 11583 * ksvg2/svg/SVGDOMImplementation.h: 11584 * ksvg2/svg/SVGPaint.cpp: 11585 (SVGPaint::cssText): 11586 * ksvg2/svg/SVGPathSegClosePath.h: 11587 (WebCore::SVGPathSegClosePath::toString): 11588 * ksvg2/svg/SVGPreserveAspectRatio.cpp: 11589 (SVGPreserveAspectRatio::parsePreserveAspectRatio): 11590 (SVGPreserveAspectRatio::getCTM): 11591 * ksvg2/svg/SVGStopElement.cpp: 11592 (SVGStopElement::parseMappedAttribute): 11593 * ksvg2/svg/SVGStyleElement.cpp: 11594 (SVGStyleElement::childrenChanged): 11595 * ksvg2/svg/SVGURIReference.cpp: 11596 (SVGURIReference::getTarget): 11597 * kwq/ClipboardMac.mm: 11598 (WebCore::ClipboardMac::setData): 11599 (WebCore::ClipboardMac::types): 11600 (WebCore::ClipboardMac::setEffectAllowed): 11601 (WebCore::cocoaOpFromIEOp): 11602 (WebCore::IEOpFromCocoaOp): 11603 (WebCore::ClipboardMac::sourceOperation): 11604 (WebCore::ClipboardMac::destinationOperation): 11605 * kwq/KWQCString.cpp: 11606 (DeprecatedCString::append): 11607 * kwq/KWQKHTMLSettings.h: 11608 (KHTMLSettings::stdFontName): 11609 (KHTMLSettings::fixedFontName): 11610 (KHTMLSettings::serifFontName): 11611 (KHTMLSettings::sansSerifFontName): 11612 (KHTMLSettings::cursiveFontName): 11613 (KHTMLSettings::fantasyFontName): 11614 (KHTMLSettings::minFontSize): 11615 (KHTMLSettings::minLogicalFontSize): 11616 (KHTMLSettings::mediumFontSize): 11617 (KHTMLSettings::mediumFixedFontSize): 11618 (KHTMLSettings::autoLoadImages): 11619 (KHTMLSettings::isJavaScriptEnabled): 11620 (KHTMLSettings::JavaScriptCanOpenWindowsAutomatically): 11621 (KHTMLSettings::isJavaEnabled): 11622 (KHTMLSettings::isPluginsEnabled): 11623 (KHTMLSettings::encoding): 11624 (KHTMLSettings::userStyleSheet): 11625 (KHTMLSettings::shouldPrintBackgrounds): 11626 (KHTMLSettings::textAreasAreResizable): 11627 (KHTMLSettings::setStdFontName): 11628 (KHTMLSettings::setFixedFontName): 11629 (KHTMLSettings::setSerifFontName): 11630 (KHTMLSettings::setSansSerifFontName): 11631 (KHTMLSettings::setCursiveFontName): 11632 (KHTMLSettings::setFantasyFontName): 11633 (KHTMLSettings::setMinFontSize): 11634 (KHTMLSettings::setMinLogicalFontSize): 11635 (KHTMLSettings::setMediumFontSize): 11636 (KHTMLSettings::setMediumFixedFontSize): 11637 (KHTMLSettings::setAutoLoadImages): 11638 (KHTMLSettings::setIsJavaScriptEnabled): 11639 (KHTMLSettings::setIsJavaEnabled): 11640 (KHTMLSettings::setArePluginsEnabled): 11641 (KHTMLSettings::setJavaScriptCanOpenWindowsAutomatically): 11642 (KHTMLSettings::setEncoding): 11643 (KHTMLSettings::setUserStyleSheet): 11644 (KHTMLSettings::setShouldPrintBackgrounds): 11645 (KHTMLSettings::setTextAreasAreResizable): 11646 * kwq/KWQLoader.mm: 11647 (KWQServeSynchronousRequest): 11648 * kwq/KWQTextStream.cpp: 11649 (QTextStream::QTextStream): 11650 (QTextStream::operator<<): 11651 (QTextStream::precision): 11652 * kwq/KWQTextStream.h: 11653 * kwq/RenderTreeAsText.cpp: 11654 (operator<<): 11655 (quoteAndEscapeNonPrintables): 11656 (writeTextRun): 11657 (write): 11658 (writeSelection): 11659 * loader/Cache.cpp: 11660 (WebCore::Cache::init): 11661 (WebCore::Cache::requestImage): 11662 (WebCore::Cache::requestStyleSheet): 11663 (WebCore::Cache::preloadStyleSheet): 11664 (WebCore::Cache::requestScript): 11665 (WebCore::Cache::preloadScript): 11666 (WebCore::Cache::requestXSLStyleSheet): 11667 (WebCore::Cache::requestXBLDocument): 11668 (WebCore::Cache::remove): 11669 * loader/Cache.h: 11670 * loader/CachedCSSStyleSheet.cpp: 11671 (WebCore::CachedCSSStyleSheet::error): 11672 * loader/CachedCSSStyleSheet.h: 11673 * loader/CachedImage.cpp: 11674 (WebCore::CachedImage::error): 11675 * loader/CachedImage.h: 11676 * loader/CachedObject.h: 11677 * loader/CachedScript.cpp: 11678 (WebCore::CachedScript::checkNotify): 11679 (WebCore::CachedScript::error): 11680 * loader/CachedScript.h: 11681 * loader/CachedXBLDocument.cpp: 11682 (WebCore::CachedXBLDocument::error): 11683 * loader/CachedXBLDocument.h: 11684 * loader/CachedXSLStyleSheet.cpp: 11685 (WebCore::CachedXSLStyleSheet::error): 11686 * loader/CachedXSLStyleSheet.h: 11687 * loader/DocLoader.cpp: 11688 (WebCore::DocLoader::DocLoader): 11689 (WebCore::DocLoader::~DocLoader): 11690 (WebCore::DocLoader::needReload): 11691 (WebCore::DocLoader::requestImage): 11692 (WebCore::DocLoader::requestStyleSheet): 11693 (WebCore::DocLoader::requestScript): 11694 (WebCore::DocLoader::requestXSLStyleSheet): 11695 (WebCore::DocLoader::requestXBLDocument): 11696 (WebCore::DocLoader::setAutoloadImages): 11697 (WebCore::DocLoader::setShowAnimations): 11698 (WebCore::DocLoader::removeCachedObject): 11699 * loader/loader.cpp: 11700 (WebCore::Loader::receivedAllData): 11701 (WebCore::Loader::receivedResponse): 11702 * page/Frame.cpp: 11703 (WebCore::UserStyleSheetLoader::setStyleSheet): 11704 (WebCore::Frame::didOpenURL): 11705 (WebCore::Frame::setMetaRefreshEnabled): 11706 (WebCore::Frame::setAutoloadImages): 11707 (WebCore::Frame::autoloadImages): 11708 (WebCore::Frame::clear): 11709 (WebCore::Frame::receivedFirstData): 11710 (WebCore::Frame::begin): 11711 (WebCore::Frame::write): 11712 (WebCore::Frame::baseTarget): 11713 (WebCore::Frame::completeURL): 11714 (WebCore::Frame::scheduleRedirection): 11715 (WebCore::Frame::scheduleLocationChange): 11716 (WebCore::Frame::scheduleHistoryNavigation): 11717 (WebCore::Frame::changeLocation): 11718 (WebCore::Frame::redirectionTimerFired): 11719 (WebCore::Frame::encoding): 11720 (WebCore::Frame::gotoAnchor): 11721 (WebCore::Frame::setStandardFont): 11722 (WebCore::Frame::setFixedFont): 11723 (WebCore::Frame::selectedText): 11724 (WebCore::Frame::selection): 11725 (WebCore::Frame::dragCaret): 11726 (WebCore::Frame::setSelection): 11727 (WebCore::Frame::setDragCaret): 11728 (WebCore::Frame::paintCaret): 11729 (WebCore::Frame::paintDragCaret): 11730 (WebCore::Frame::urlSelected): 11731 (WebCore::Frame::requestFrame): 11732 (WebCore::Frame::requestObject): 11733 (WebCore::Frame::shouldUsePlugin): 11734 (WebCore::Frame::loadPlugin): 11735 (WebCore::Frame::loadSubframe): 11736 (WebCore::Frame::submitForm): 11737 (WebCore::Frame::lastModified): 11738 (WebCore::Frame::reparseConfiguration): 11739 (WebCore::Frame::shouldChangeSelection): 11740 (WebCore::Frame::appliedEditing): 11741 (WebCore::Frame::unappliedEditing): 11742 (WebCore::Frame::reappliedEditing): 11743 (WebCore::Frame::executeScript): 11744 (WebCore::updateState): 11745 (WebCore::Frame::isCharacterSmartReplaceExempt): 11746 (WebCore::Frame::openURL): 11747 (WebCore::Frame::didNotOpenURL): 11748 (WebCore::Frame::setEncoding): 11749 (WebCore::Frame::saveInterpreterBuiltins): 11750 (WebCore::Frame::restoreInterpreterBuiltins): 11751 (WebCore::Frame::mutableInstances): 11752 (WebCore::Frame::setPolicyBaseURL): 11753 (WebCore::Frame::addMetaData): 11754 (WebCore::Frame::scrollToAnchor): 11755 (WebCore::Frame::setMediaType): 11756 (WebCore::Frame::highlightAllMatchesForString): 11757 (WebCore::Frame::tree): 11758 * page/Frame.h: 11759 (WebCore::Frame::instances): 11760 * page/FramePrivate.h: 11761 * page/FrameView.cpp: 11762 (WebCore::FrameViewPrivate::FrameViewPrivate): 11763 (WebCore::FrameView::FrameView): 11764 (WebCore::FrameView::~FrameView): 11765 (WebCore::FrameView::init): 11766 (WebCore::FrameView::setMarginWidth): 11767 (WebCore::FrameView::setMarginHeight): 11768 (WebCore::FrameView::adjustViewSize): 11769 (WebCore::FrameView::layout): 11770 (WebCore::FrameView::dispatchDragEvent): 11771 (WebCore::FrameView::scrollTo): 11772 (WebCore::FrameView::setMediaType): 11773 (WebCore::FrameView::mediaType): 11774 (WebCore::FrameView::setResizingFrameSet): 11775 (WebCore::FrameView::setIgnoreWheelEvents): 11776 * page/FrameView.h: 11777 (WebCore::FrameView::frameWidth): 11778 (WebCore::FrameView::marginWidth): 11779 (WebCore::FrameView::marginHeight): 11780 (WebCore::FrameView::ref): 11781 (WebCore::FrameView::deref): 11782 * page/ResourceRequest.h: 11783 (WebCore::ResourceRequest::contentType): 11784 (WebCore::ResourceRequest::setContentType): 11785 * platform/FontFamily.h: 11786 * platform/Image.h: 11787 * platform/KURL.cpp: 11788 (KURL::KURL): 11789 (KURL::parse): 11790 (urlcmp): 11791 (KURL::encode_string): 11792 (encodeHostname): 11793 * platform/KURL.h: 11794 * platform/PlatformString.h: 11795 (WebCore::String::left): 11796 (WebCore::String::right): 11797 * platform/String.cpp: 11798 (WebCore::String::toInt): 11799 * platform/StringImpl.cpp: 11800 (WebCore::StringImpl::toInt): 11801 * platform/TransferJob.cpp: 11802 (WebCore::TransferJob::queryMetaData): 11803 (WebCore::TransferJob::addMetaData): 11804 * platform/TransferJob.h: 11805 * platform/mac/ImageMac.mm: 11806 (WebCore::Image::supportsType): 11807 * platform/mac/TransferJobMac.mm: 11808 (WebCore::TransferJob::start): 11809 * rendering/RenderObject.cpp: 11810 (WebCore::RenderObject::information): 11811 * rendering/RenderTextField.cpp: 11812 (WebCore::RenderTextField::updateFromElement): 11813 * xml/xmlhttprequest.cpp: 11814 (WebCore::getMIMEType): 11815 (WebCore::getCharset): 11816 (WebCore::XMLHttpRequest::getReadyState): 11817 (WebCore::XMLHttpRequest::getResponseText): 11818 (WebCore::XMLHttpRequest::getResponseXML): 11819 (WebCore::XMLHttpRequest::XMLHttpRequest): 11820 (WebCore::XMLHttpRequest::~XMLHttpRequest): 11821 (WebCore::XMLHttpRequest::changeState): 11822 (WebCore::XMLHttpRequest::callReadyStateChangeListener): 11823 (WebCore::XMLHttpRequest::urlMatchesDocumentDomain): 11824 (WebCore::XMLHttpRequest::open): 11825 (WebCore::XMLHttpRequest::send): 11826 (WebCore::XMLHttpRequest::abort): 11827 (WebCore::XMLHttpRequest::overrideMIMEType): 11828 (WebCore::XMLHttpRequest::setRequestHeader): 11829 (WebCore::XMLHttpRequest::getRequestHeader): 11830 (WebCore::XMLHttpRequest::getAllResponseHeaders): 11831 (WebCore::XMLHttpRequest::getResponseHeader): 11832 (WebCore::XMLHttpRequest::responseIsXML): 11833 (WebCore::XMLHttpRequest::getStatus): 11834 (WebCore::XMLHttpRequest::getStatusText): 11835 (WebCore::XMLHttpRequest::processSyncLoadResults): 11836 (WebCore::XMLHttpRequest::receivedAllData): 11837 (WebCore::XMLHttpRequest::receivedRedirect): 11838 (WebCore::XMLHttpRequest::receivedData): 11839 (WebCore::XMLHttpRequest::cancelRequests): 11840 (WebCore::XMLHttpRequest::detachRequests): 11841 * xml/xmlhttprequest.h: 11842 11843 2006-03-20 Alexey Proskuryakov <ap (a] nypop.com> 11844 11845 Reviewed by Darin. 11846 11847 - http://bugs.webkit.org/show_bug.cgi?id=3439 11848 mouseover effects can get stuck sometimes due to missing events 11849 - http://bugs.webkit.org/show_bug.cgi?id=7701 11850 mouseout sent to the wrong element when layout changes simultaneously 11851 11852 Implemented saving the previous node under the mouse, so that we don't need to 11853 recalculate it, which is slow and even not really possible. This has fixed a number 11854 of issues with mouse event dispatching when the content changes. 11855 The code still needs refactoring and cleanup, see bug 3439 for comments. 11856 11857 Tests (both files perform multiple checks): 11858 - fast/events/mouseover-mouseout.html 11859 - fast/events/mouseover-mouseout2.html 11860 11861 * page/Frame.h: Added a Frame parameter to passSubframeEventToSubframe(), 11862 used for mouseMoved events. 11863 * bridge/mac/FrameMac.h: Ditto. 11864 * bridge/mac/FrameMac.mm: 11865 (WebCore::FrameMac::passSubframeEventToSubframe): Use the passed subframe to target 11866 NSMouseMoved events. 11867 * page/FrameView.h: Added a prepareMouseEvent() helper that does viewportToContents translation. 11868 * page/FrameView.cpp: Added data members for storing the previous node and subframe 11869 under the mouse to FrameViewPrivate. Removed the now unused prevMouseX/prevMouseY. 11870 (WebCore::FrameViewPrivate::reset): Reset the new data members. 11871 (WebCore::subframeForEvent): A temporary place for the code that extracts a subframe 11872 pointer from MouseEventWithHitTestResults, moved from FrameMac::passSubframeEventToSubframe(). 11873 (WebCore::FrameView::prepareMouseEvent): The new helper. 11874 (WebCore::FrameView::handleMousePressEvent): Use the new helper. 11875 (WebCore::FrameView::handleMouseDoubleClickEvent): Ditto. 11876 (WebCore::FrameView::handleMouseReleaseEvent): Ditto. 11877 (WebCore::FrameView::updateDragAndDrop): Ditto. 11878 (WebCore::FrameView::hoverTimerFired): Ditto. 11879 (WebCore::FrameView::dispatchMouseEvent): Store and use the oldUnder node, don't store 11880 or use prevMouseX/Y. 11881 (WebCore::FrameView::handleMouseMoveEvent): Rewrote dispatching events to subframes using 11882 a stored oldSubframe reference. Protect "this" from being removed while in this function. 11883 11884 2006-03-20 Darin Adler <darin (a] apple.com> 11885 11886 Reviewed by Anders. 11887 11888 - http://bugs.webkit.org/show_bug.cgi?id=7875 11889 autogenerate bindings for Range 11890 11891 * dom/Range.idl: Added. 11892 * khtml/ecma/kjs_range.cpp: Removed. 11893 * khtml/ecma/kjs_range.h: Removed. 11894 11895 * WebCore.vcproj/WebCore/build-generated-files.sh: Removed code to generate 11896 kjs_range.lut.h. 11897 11898 * WebCore.xcodeproj/project.pbxproj: Added Range.idl source file. 11899 Removed kjs_range.h and kjs_range.cpp source files. Sorted the "dom" group. 11900 Removed rule to generate kjs_range.lut.h. 11901 11902 * bindings/js/JSDOMCore.cpp: Added include of JSRange.cpp. 11903 11904 * bindings/scripts/CodeGeneratorJS.pm: Added DocumentFragment, Range, CompareHow, 11905 and short to the types this script can handle. Added code to generate toRange 11906 functions and the like. Added separate code to handle exceptions for getters 11907 vs. setters for attributes. Changed return values for the "bad ID" case to 0 11908 -- there's no need to generate the extra code to return jsUndefined() in such 11909 cases, which should be unreachable. Changed exception handling to use setDOMException 11910 directly instead of DOMExceptionTranslator; DOMExceptionTranslator was a trick 11911 to make it easier to convert existing bindings and shouldn't be used going 11912 forward. Fixed names of constructors to use the JavaScript class name (the 11913 interface name), not the name of the C++ implementation class. Fixed generation 11914 of code for functions that have no parameters but do raise exceptions. 11915 11916 * bindings/scripts/IDLParser.pm: Added parsing for separate getter and setter 11917 exceptions in attributes. The syntax is not real IDL, but real IDL doesn't support 11918 declaring exceptions on attributes at all. We'll probably want to revisit our 11919 syntax for this some day. 11920 11921 * bindings/scripts/IDLStructure.pm: Removed unused exceptionName field from 11922 domAttribute, and replaced raisesExceptions field with getterExceptions and 11923 setterExceptions. Added regular expressions for parsing getter/setter syntax. 11924 We'll probably have to redo this whole thing parse in a better way at some 11925 point -- the regular expressions allow any invalid syntax in between them. 11926 11927 * dom/Attr.idl: Change exception declaration for setting the value attribute 11928 to use setter-specific exception syntax. 11929 * dom/CharacterData.idl: Change exception declaration for setting the data 11930 attribute to use setter-specific exception syntax. 11931 * dom/ProcessingInstruction.idl: Change exception declaration for setting the 11932 data attribute to use setter-specific exception syntax. 11933 11934 * khtml/ecma/kjs_dom.cpp: Include JSRange.h instead of kjs_range.h. 11935 * khtml/ecma/kjs_window.cpp: Include JSRange.h instead of kjs_range.h. 11936 (KJS::Window::getValueProperty): Use JSRange::getConstructor instead of 11937 getRangeConstructor. 11938 11939 2006-03-20 Eric Seidel <eseidel (a] apple.com> 11940 11941 Reviewed by hyatt. 11942 11943 Fix win32 compile. 11944 11945 * Viewer/ImageView.cpp: 11946 * platform/GraphicsContext.cpp: 11947 (WebCore::WebCore::GraphicsContext::createGraphicsContextPrivate): 11948 (WebCore::WebCore::GraphicsContext::destroyGraphicsContextPrivate): 11949 * platform/cairo/GraphicsContextCairo.cpp: 11950 (WebCore::fillRectSourceOver): 11951 (WebCore::GraphicsContext::drawLine): 11952 (WebCore::GraphicsContext::drawFocusRing): 11953 * platform/win/FontWin.cpp: 11954 (WebCore::Font::drawHighlightForText): 11955 (WebCore::Font::drawLineForText): 11956 11957 2006-03-19 Darin Adler <darin (a] apple.com> 11958 11959 Rubber stamped by Eric. 11960 11961 - moved khtml/html files all into html directory 11962 11963 * WebCore.vcproj/WebCore/WebCore.vcproj: Updated for new paths. 11964 * WebCore.vcproj/WebCore/build-generated-files.sh: Ditto. 11965 * WebCore.xcodeproj/project.pbxproj: Ditto. 11966 11967 * khtml/html: Removed. 11968 11969 * html/DocTypeStrings.gperf: Moved. 11970 * html/FormDataList.cpp: Ditto. 11971 * html/FormDataList.h: Ditto. 11972 * html/HTMLBaseFontElement.cpp: Ditto. 11973 * html/HTMLBaseFontElement.h: Ditto. 11974 * html/HTMLButtonElement.cpp: Ditto. 11975 * html/HTMLButtonElement.h: Ditto. 11976 * html/HTMLCanvasElement.cpp: Ditto. 11977 * html/HTMLCanvasElement.h: Ditto. 11978 * html/HTMLCollection.cpp: Ditto. 11979 * html/HTMLCollection.h: Ditto. 11980 * html/HTMLDocument.cpp: Ditto. 11981 * html/HTMLDocument.h: Ditto. 11982 * html/HTMLElement.cpp: Ditto. 11983 * html/HTMLElement.h: Ditto. 11984 * html/HTMLElementFactory.cpp: Ditto. 11985 * html/HTMLElementFactory.h: Ditto. 11986 * html/HTMLEntityNames.gperf: Ditto. 11987 * html/HTMLFieldSetElement.cpp: Ditto. 11988 * html/HTMLFieldSetElement.h: Ditto. 11989 * html/HTMLFormCollection.cpp: Ditto. 11990 * html/HTMLFormCollection.h: Ditto. 11991 * html/HTMLFormElement.cpp: Ditto. 11992 * html/HTMLFormElement.h: Ditto. 11993 * html/HTMLGenericFormElement.cpp: Ditto. 11994 * html/HTMLGenericFormElement.h: Ditto. 11995 * html/HTMLInputElement.cpp: Ditto. 11996 * html/HTMLInputElement.h: Ditto. 11997 * html/HTMLIsIndexElement.cpp: Ditto. 11998 * html/HTMLIsIndexElement.h: Ditto. 11999 * html/HTMLKeygenElement.cpp: Ditto. 12000 * html/HTMLKeygenElement.h: Ditto. 12001 * html/HTMLLabelElement.cpp: Ditto. 12002 * html/HTMLLabelElement.h: Ditto. 12003 * html/HTMLLegendElement.cpp: Ditto. 12004 * html/HTMLLegendElement.h: Ditto. 12005 * html/HTMLNameCollection.cpp: Ditto. 12006 * html/HTMLNameCollection.h: Ditto. 12007 * html/HTMLNames.cpp: Ditto. 12008 * html/HTMLNames.h: Ditto. 12009 * html/HTMLOptGroupElement.cpp: Ditto. 12010 * html/HTMLOptGroupElement.h: Ditto. 12011 * html/HTMLOptionElement.cpp: Ditto. 12012 * html/HTMLOptionElement.h: Ditto. 12013 * html/HTMLOptionsCollection.cpp: Ditto. 12014 * html/HTMLOptionsCollection.h: Ditto. 12015 * html/HTMLParser.cpp: Ditto. 12016 * html/HTMLParser.h: Ditto. 12017 * html/HTMLSelectElement.cpp: Ditto. 12018 * html/HTMLSelectElement.h: Ditto. 12019 * html/HTMLTextAreaElement.cpp: Ditto. 12020 * html/HTMLTextAreaElement.h: Ditto. 12021 * html/HTMLTextFieldInnerElement.cpp: Ditto. 12022 * html/HTMLTextFieldInnerElement.h: Ditto. 12023 * html/HTMLTokenizer.cpp: Ditto. 12024 * html/HTMLTokenizer.h: Ditto. 12025 * html/html_baseimpl.cpp: Ditto. 12026 * html/html_baseimpl.h: Ditto. 12027 * html/html_blockimpl.cpp: Ditto. 12028 * html/html_blockimpl.h: Ditto. 12029 * html/html_headimpl.cpp: Ditto. 12030 * html/html_headimpl.h: Ditto. 12031 * html/html_imageimpl.cpp: Ditto. 12032 * html/html_imageimpl.h: Ditto. 12033 * html/html_inlineimpl.cpp: Ditto. 12034 * html/html_inlineimpl.h: Ditto. 12035 * html/html_listimpl.cpp: Ditto. 12036 * html/html_listimpl.h: Ditto. 12037 * html/html_objectimpl.cpp: Ditto. 12038 * html/html_objectimpl.h: Ditto. 12039 * html/html_tableimpl.cpp: Ditto. 12040 * html/html_tableimpl.h: Ditto. 12041 12042 * bindings/objc/DOM.mm: 12043 * bridge/mac/WebCoreEncodings.mm: 12044 * bridge/mac/WebCoreFrameBridge.mm: 12045 * css/CSSGrammar.y: 12046 * css/cssstyleselector.cpp: 12047 * dom/Document.cpp: 12048 * dom/EventTargetNode.cpp: 12049 * dom/NameNodeList.cpp: 12050 * dom/Node.cpp: 12051 * dom/Position.cpp: 12052 * dom/dom_elementimpl.cpp: 12053 * dom/xml_tokenizer.cpp: 12054 * editing/ApplyStyleCommand.cpp: 12055 * editing/BreakBlockquoteCommand.cpp: 12056 * editing/CompositeEditCommand.cpp: 12057 * editing/DeleteSelectionCommand.cpp: 12058 * editing/InsertLineBreakCommand.cpp: 12059 * editing/InsertParagraphSeparatorCommand.cpp: 12060 * editing/JSEditor.cpp: 12061 * editing/ReplaceSelectionCommand.cpp: 12062 * editing/TextIterator.cpp: 12063 * editing/VisiblePosition.cpp: 12064 * editing/htmlediting.cpp: 12065 * editing/markup.cpp: 12066 * editing/visible_units.cpp: 12067 * html/CanvasRenderingContext2D.cpp: 12068 * kcanvas/KCanvasTreeDebug.cpp: 12069 * khtml/ecma/JSDOMParser.cpp: 12070 * khtml/ecma/kjs_css.cpp: 12071 * khtml/ecma/kjs_dom.cpp: 12072 * khtml/ecma/kjs_events.cpp: 12073 * khtml/misc/decoder.cpp: 12074 * khtml/xsl/XSLStyleSheet.cpp: 12075 * khtml/xsl/XSLTProcessor.cpp: 12076 * ksvg2/misc/SVGImageLoader.h: 12077 * ksvg2/svg/SVGElement.cpp: 12078 * ksvg2/svg/SVGSVGElement.cpp: 12079 * kwq/WebCoreAXObject.mm: 12080 * page/Frame.cpp: 12081 * page/FrameView.cpp: 12082 * rendering/RenderBlock.cpp: 12083 * rendering/RenderBox.cpp: 12084 * rendering/RenderFlow.cpp: 12085 * rendering/RenderHTMLCanvas.cpp: 12086 * rendering/RenderImage.cpp: 12087 * rendering/RenderLayer.cpp: 12088 * rendering/RenderObject.cpp: 12089 * rendering/RenderTable.cpp: 12090 * rendering/RenderTableCell.cpp: 12091 * rendering/RenderTableCol.cpp: 12092 * rendering/RenderTableRow.cpp: 12093 * rendering/RenderTableSection.cpp: 12094 * rendering/RenderTextField.cpp: 12095 * rendering/RenderTheme.cpp: 12096 * rendering/render_applet.cpp: 12097 * rendering/render_button.cpp: 12098 * rendering/render_frames.cpp: 12099 * rendering/render_list.cpp: 12100 Updated includes. 12101 12102 2006-03-17 Eric Seidel <eseidel (a] apple.com> 12103 12104 Reviewed by darin. 12105 12106 Move Form code from MacFrame to Frame. 12107 Move GraphicsContext code from GraphicsContextMac to GraphicsContext. 12108 Use IntRect, FloatRect in more places throughout the code. 12109 http://bugs.webkit.org/show_bug.cgi?id=7824 12110 12111 * bridge/mac/MacFrame.h: 12112 * bridge/mac/MacFrame.mm: 12113 (WebCore::MacFrame::MacFrame): 12114 (WebCore::MacFrame::searchForLabelsAboveCell): 12115 (WebCore::MacFrame::searchForLabelsBeforeElement): 12116 (WebCore::dictionaryFromHashMap): 12117 (WebCore::MacFrame::submitForm): 12118 (WebCore::MacFrame::setView): 12119 (WebCore::MacFrame::currentEventIsMouseDownInWidget): 12120 (WebCore::MacFrame::currentEventIsKeyboardOptionTab): 12121 (WebCore::MacFrame::handleKeyboardOptionTabInView): 12122 (WebCore::MacFrame::tabsToAllControls): 12123 (WebCore::MacFrame::shouldDragAutoNode): 12124 (WebCore::MacFrame::selectionImage): 12125 (WebCore::MacFrame::snapshotDragImage): 12126 * bridge/mac/WebCoreFrameBridge.mm: 12127 (-[WebCoreFrameBridge nextKeyView]): 12128 (-[WebCoreFrameBridge previousKeyView]): 12129 (-[WebCoreFrameBridge nextKeyViewInsideWebFrameViews]): 12130 (-[WebCoreFrameBridge previousKeyViewInsideWebFrameViews]): 12131 * kcanvas/RenderSVGImage.cpp: 12132 (WebCore::RenderSVGImage::paint): 12133 * page/Frame.cpp: 12134 (WebCore::Frame::Frame): 12135 (WebCore::Frame::clearRecordedFormValues): 12136 (WebCore::Frame::recordFormValue): 12137 (WebCore::Frame::didNotOpenURL): 12138 (WebCore::scanForForm): 12139 (WebCore::Frame::paint): 12140 (WebCore::Frame::prepareForUserAction): 12141 * page/Frame.h: 12142 * platform/GraphicsContext.cpp: 12143 (WebCore::GraphicsContextState::GraphicsContextState): 12144 (WebCore::GraphicsContextPrivate::GraphicsContextPrivate): 12145 (WebCore::GraphicsContextPrivate::~GraphicsContextPrivate): 12146 (WebCore::GraphicsContext::save): 12147 (WebCore::GraphicsContext::restore): 12148 (WebCore::GraphicsContext::font): 12149 (WebCore::GraphicsContext::setFont): 12150 (WebCore::GraphicsContext::pen): 12151 (WebCore::GraphicsContext::setPen): 12152 (WebCore::GraphicsContext::setBrush): 12153 (WebCore::GraphicsContext::brush): 12154 (WebCore::GraphicsContext::setUsesInactiveTextBackgroundColor): 12155 (WebCore::GraphicsContext::usesInactiveTextBackgroundColor): 12156 (WebCore::GraphicsContext::updatingControlTints): 12157 (WebCore::GraphicsContext::setUpdatingControlTints): 12158 (WebCore::GraphicsContext::setPaintingDisabled): 12159 (WebCore::GraphicsContext::paintingDisabled): 12160 (WebCore::GraphicsContext::printing): 12161 (WebCore::GraphicsContext::drawImageAtPoint): 12162 (WebCore::GraphicsContext::drawImageInRect): 12163 (WebCore::GraphicsContext::drawImage): 12164 (WebCore::GraphicsContext::initFocusRing): 12165 (WebCore::GraphicsContext::clearFocusRing): 12166 (WebCore::GraphicsContext::addFocusRingRect): 12167 (WebCore::GraphicsContext::focusRingWidth): 12168 (WebCore::GraphicsContext::focusRingOffset): 12169 (WebCore::GraphicsContext::focusRingRects): 12170 * platform/GraphicsContext.h: 12171 * platform/mac/GraphicsContextMac.mm: 12172 (WebCore::fillRectSourceOver): 12173 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): 12174 (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate): 12175 (WebCore::GraphicsContext::GraphicsContext): 12176 (WebCore::GraphicsContext::~GraphicsContext): 12177 (WebCore::GraphicsContext::savePlatformState): 12178 (WebCore::GraphicsContext::restorePlatformState): 12179 (WebCore::GraphicsContext::drawRect): 12180 (WebCore::GraphicsContext::setColorFromBrush): 12181 (WebCore::GraphicsContext::setColorFromPen): 12182 (WebCore::GraphicsContext::drawLine): 12183 (WebCore::GraphicsContext::drawEllipse): 12184 (WebCore::GraphicsContext::drawArc): 12185 (WebCore::GraphicsContext::drawConvexPolygon): 12186 (WebCore::GraphicsContext::drawFloatImage): 12187 (WebCore::GraphicsContext::drawTiledImage): 12188 (WebCore::GraphicsContext::drawScaledAndTiledImage): 12189 (WebCore::GraphicsContext::selectedTextBackgroundColor): 12190 (WebCore::GraphicsContext::fillRect): 12191 (WebCore::GraphicsContext::addClip): 12192 (WebCore::GraphicsContext::addRoundedRectClip): 12193 (WebCore::GraphicsContext::beginTransparencyLayer): 12194 (WebCore::GraphicsContext::endTransparencyLayer): 12195 (WebCore::GraphicsContext::setShadow): 12196 (WebCore::GraphicsContext::clearShadow): 12197 (WebCore::GraphicsContext::drawFocusRing): 12198 * rendering/render_box.cpp: 12199 (WebCore::RenderBox::paintBackgroundExtended): 12200 (WebCore::RenderBox::outlineBox): 12201 * rendering/render_frames.cpp: 12202 (WebCore::RenderFrameSet::userResize): 12203 * rendering/render_image.cpp: 12204 (WebCore::RenderImage::paint): 12205 * rendering/render_list.cpp: 12206 (WebCore::RenderListMarker::paint): 12207 * rendering/render_object.cpp: 12208 (WebCore::RenderObject::drawBorder): 12209 (WebCore::RenderObject::paintBorderImage): 12210 12211 2006-03-19 Darin Adler <darin (a] apple.com> 12212 12213 Reviewed by Eric. 12214 12215 - fix http://bugs.webkit.org/show_bug.cgi?id=7854 12216 CanvasGradient leaks 12217 12218 * html/CanvasGradient.cpp: (WebCore::CanvasGradient::platformShading): 12219 Don't make the CG shading object keep a reference to the DOM gradient object. 12220 I got confused because in the case of a CanvasPattern, the pattern does need 12221 to keep a reference to the DOM pattern object, but the object lifetime is 12222 handled differently here. The CG shading object is used right away, not set 12223 in a graphics context. 12224 12225 2006-03-19 Darin Adler <darin (a] apple.com> 12226 12227 Reviewed by Eric. 12228 12229 - attempt to fix the buildbot by handling DOMImplementation another way 12230 12231 * WebCore.xcodeproj/project.pbxproj: Added DOMImplementationFront.h/cpp. 12232 12233 * bindings/objc/DOMImplementationFront.cpp: Added. 12234 * bindings/objc/DOMImplementationFront.h: Added. 12235 12236 * bindings/objc/DOMInternal.h: Use DOMImplementationFront, not DOMImplementation. 12237 * bindings/objc/DOM.mm: 12238 (-[DOMImplementation dealloc]): Ditto. 12239 (-[DOMImplementation finalize]): Ditto. 12240 (-[DOMImplementation _initWithDOMImplementation:]): Ditto. 12241 (+[DOMImplementation _DOMImplementationWith:]): Ditto. 12242 (-[DOMImplementation _DOMImplementation]): Ditto. 12243 (-[DOMDocument implementation]): Call implementationFront from the 12244 DOMImplementationFront header instead of using the real implementation 12245 function on the Document. 12246 12247 2006-03-19 Darin Adler <darin (a] apple.com> 12248 12249 - global rename, done by script 12250 12251 * <lots of files>: Renamed XXXImpl to XXX, and a number of other renames. 12252 See WebKitTools/Scripts/do-webcore-rename version 13392 for details. 12253 12254 2006-03-19 Darin Adler <darin (a] apple.com> 12255 12256 - roll out fix for http://bugs.webkit.org/show_bug.cgi?id=6314 12257 Unclosed <style> element in <head> makes page completely blank 12258 12259 This fix was breaking major sites -- details in the bug report. 12260 12261 * khtml/html/htmltokenizer.cpp: (WebCore::HTMLTokenizer::parseTag): 12262 Removed the bug fix, added a FIXME about the <title> code that has 12263 the same problem. 12264 12265 2006-03-18 David Carson <dacarson (a] gmail.com> 12266 12267 Test: fast/canvas/patternfill-repeat.html 12268 12269 Reviewed by Darin. 12270 12271 - fix http://bugs.webkit.org/show_bug.cgi?id=7830 12272 <canvas> createPattern 'repeat' options fail 12273 12274 * CanvasPattern.cpp (CanvasPattern::createPattern) 12275 Change stepping so that repeat-x, repeat-y, and no-repeat repeat 12276 outside the view area by using large values for repeat interval. 12277 12278 2006-03-18 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 12279 12280 Test: fast/dom/Element/class-attribute-whitespace.html 12281 12282 Reviewed by Darin. 12283 12284 - fix http://bugs.webkit.org/show_bug.cgi?id=7761 12285 Tabs in class attribute not treated as whitespace 12286 12287 * dom/dom_elementimpl.cpp: 12288 (WebCore::isClassWhitespace): Helper function to check if a character 12289 in the class attribute should be treated as whitespace. Added \r and \t. 12290 (WebCore::NamedMappedAttrMapImpl::parseClassAttribute): Instead of creating 12291 a QStringList and iterating it, do everything in one pass over the string. 12292 12293 2006-03-18 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 12294 12295 Test: fast/block/float/vertical-move-relayout.html 12296 12297 Reviewed by Hyatt. 12298 12299 - fix http://bugs.webkit.org/show_bug.cgi?id=6795 12300 Slow image load causes render problem 12301 12302 * rendering/RenderBlock.cpp: 12303 (WebCore::RenderBlock::layoutBlockChildren): Call markAllDescendantsWithFloatsForLayout 12304 when the child's vertical position changes. 12305 12306 2006-03-18 David Kilzer <ddkilzer (a] kilzer.net> 12307 12308 Reviewed by Darin. 12309 12310 - Fix for http://bugs.webkit.org/show_bug.cgi?id=6314 12311 Unclosed <style> element in <head> makes page completely blank 12312 12313 Test: fast/js/exception-linenums-in-html-3.html 12314 Test: fast/js/missing-style-end-tag-js.html 12315 Test: fast/tokenizer/missing-style-end-tag-1.html 12316 Test: fast/tokenizer/missing-style-end-tag-2.html 12317 12318 * khtml/html/htmlparser.cpp: 12319 (WebCore::HTMLParser::handleError): Add check for missing </style> tag and handle 12320 this condition if identified. 12321 * khtml/html/htmltokenizer.cpp: 12322 (WebCore::HTMLTokenizer::parseTag): If parseSpecial() consumes the rest of the 12323 document looking for a </style> tag, reset the state of the tokenizer and 12324 retokenize with no special handling for <style>. The parser will handle the 12325 missing </style> tag in HTMLParser::handleError(). 12326 12327 2006-03-18 Rob Buis <buis (a] kde.org> 12328 12329 Reviewed by Darin. 12330 12331 Fix for http://bugs.webkit.org/show_bug.cgi?id=5351: 12332 SVG: Safari ignores <title> elements 12333 12334 Make SVGTitleElementImpl act the same as HTMLTitleElementImpl, 12335 in the process setting the title on the right triggers. 12336 12337 * ksvg2/svg/SVGTitleElementImpl.cpp: 12338 (SVGTitleElementImpl::SVGTitleElementImpl): 12339 (SVGTitleElementImpl::title): 12340 (SVGTitleElementImpl::closeRenderer): 12341 (SVGTitleElementImpl::insertedIntoDocument): 12342 (SVGTitleElementImpl::removedFromDocument): 12343 (SVGTitleElementImpl::childrenChanged): 12344 * ksvg2/svg/SVGTitleElementImpl.h: 12345 12346 2006-03-18 Darin Adler <darin (a] apple.com> 12347 12348 - another try at fixing Windows build 12349 12350 * WebCore.vcproj/WebCore/WebCore.vcproj: Added EventTargetNodeImpl.h and .cpp. 12351 12352 2006-03-18 Darin Adler <darin (a] apple.com> 12353 12354 - another try at fixing Windows build 12355 12356 * bridge/win/FrameWin.cpp: (WebCore::FrameWin::keyPress): Added EventTargetNodeCast. 12357 12358 2006-03-18 Darin Adler <darin (a] apple.com> 12359 12360 - try to fix Windows build 12361 12362 * bridge/win/FrameWin.h: Remove KURL parameter. 12363 * bridge/win/FrameWin.cpp: (WebCore::FrameWin::urlSelected): Ditto. 12364 * platform/win/TemporaryLinkStubs.cpp: (BrowserExtensionWin::canRunModal): Ditto. 12365 12366 2006-03-18 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 12367 12368 Reviewed by Darin. 12369 12370 - fix leaks caused by the fix for Bugzilla bug 3560 12371 12372 * rendering/RenderContainer.cpp: 12373 (WebCore::RenderContainer::destroyLeftoverChildren): Text renderers with 12374 first-letter pseudo style are children of an existing first-letter inline 12375 that has been updated, and should be destroyed. 12376 12377 2006-03-18 David Hyatt <hyatt (a] apple.com> 12378 12379 Fix for bug 7841, tables, table rows, and table row groups should 12380 all support overflow:hidden. 12381 12382 Reviewed by eric 12383 12384 * css/cssstyleselector.cpp: 12385 (WebCore::CSSStyleSelector::adjustRenderStyle): 12386 * rendering/RenderTable.cpp: 12387 (WebCore::RenderTable::layout): 12388 (WebCore::RenderTable::paint): 12389 (WebCore::RenderTable::getOverflowClipRect): 12390 * rendering/RenderTable.h: 12391 * rendering/RenderTableCol.h: 12392 (WebCore::RenderTableCol::requiresLayer): 12393 * rendering/RenderTableRow.h: 12394 (WebCore::RenderTableRow::requiresLayer): 12395 * rendering/render_box.cpp: 12396 (WebCore::RenderBox::setStyle): 12397 * rendering/render_layer.cpp: 12398 (WebCore::RenderLayer::paintLayer): 12399 12400 2006-03-17 Alice Liu <alice.liu (a] apple.com> 12401 12402 Reviewed by Hyatt. 12403 12404 - fixed http://bugs.webkit.org/show_bug.cgi?id=6999 12405 "Dynamically added link-tag disables the use of change styles 12406 dynamically" 12407 12408 * khtml/html/html_headimpl.cpp: 12409 (WebCore::HTMLLinkElementImpl::process): 12410 - dynamically added link-tags for stylesheets were messing up the 12411 counting of pending stylesheets. If a head link element 12412 specifies a new stylesheet but the previously specified 12413 stylesheet is still loading, tell the document that stylesheets 12414 are loaded so that there are no remaining requests for it to be 12415 loaded. 12416 12417 2006-03-17 Geoffrey Garen <ggaren (a] apple.com> 12418 12419 Reviewed by Darin. 12420 12421 - Fixed some crashes in event dispatch and settled the question of 12422 when getDocument() can return NULL, removing superfluous NULL checks. 12423 12424 I promise to check in a test case soon, but I need to land this before 12425 the global rename happens, and I left the test file on my other machine. 12426 12427 Here's what I did: 12428 12429 (1) Removed NULL checks for getDocument() in cases where we know it 12430 should not return NULL (which turned out to be all but one). Replaced 12431 with ASSERT inside getDocument(). Tested to ensure there was no 12432 regression @ albertsons.com. 12433 12434 (2) Added the EventTargetNode class, which represents Nodes that 12435 implement the DOM EventTarget interface. Discussed this design with 12436 Maciej and Hyatt. The previous dsign -- assuming that all Nodes were 12437 EventTargets -- made it possible to crash WebKit by, for example, 12438 dispatching a mouse event to a documentType node that was not 12439 associated with a document. 12440 12441 (3) Reflected (2) into the JS bindings and touched JSDOMCore.cpp to 12442 force a re-build. 12443 12444 (4) Using classInfo checking, strengthened type constraints on 12445 JavaScript method dispatch so that you can't finagle JavaScript into, 12446 for example, invoking a document-dependent method belonging to a 12447 node type that's guaranteed to have a document on a node type that may 12448 not have one. 12449 12450 (5) Pushed some IE-specific JS bindings that depend on a node having a 12451 document down from DOMNode to DOMElement. (An element always has a 12452 document.) Tested that Firefox's behavior matched. Confirmed with MSDN. 12453 12454 (6) Updated Objc bindigns to throw an exception if you try to use 12455 the event interface on a node that doesn't support it. Discussed this 12456 design with Maciej and TimH. 12457 12458 (7) Consolidated repeated documentElement-finding code in the Position 12459 class into the Position::documentElement() method. Did the same for 12460 repeated top-level document finding and DocumentImpl::topDocument(). 12461 12462 * WebCore+SVG/KDOMHeaders.h: 12463 * WebCore.xcodeproj/project.pbxproj: 12464 * bindings/js/JSDOMCore.cpp: 12465 * bindings/objc/DOM.mm: 12466 (-[DOMNode addEventListener:::]): 12467 (-[DOMNode removeEventListener:::]): 12468 (-[DOMNode dispatchEvent:]): 12469 (-[DOMNode KJS::Bindings::]): 12470 * bridge/mac/MacFrame.mm: 12471 (WebCore::MacFrame::keyEvent): 12472 (WebCore::MacFrame::dispatchCPPEvent): 12473 * bridge/mac/WebCoreFrameBridge.mm: 12474 (-[WebCoreFrameBridge setSelectedDOMRange:affinity:closeTyping:]): 12475 (-[WebCoreFrameBridge smartDeleteRangeForProposedRange:]): 12476 * css/css_base.cpp: 12477 (WebCore::StyleBaseImpl::baseURL): 12478 * css/css_computedstyle.cpp: 12479 (WebCore::CSSComputedStyleDeclarationImpl::getPropertyCSSValue): 12480 * css/css_valueimpl.cpp: 12481 (WebCore::CSSMutableStyleDeclarationImpl::removeProperty): 12482 (WebCore::CSSMutableStyleDeclarationImpl::setProperty): 12483 * css/cssstyleselector.cpp: 12484 (WebCore::CSSStyleSelector::applyProperty): 12485 * dom/Attr.idl: 12486 * dom/CharacterData.idl: 12487 * dom/CharacterDataImpl.cpp: 12488 (WebCore::CharacterDataImpl::CharacterDataImpl): 12489 (WebCore::CharacterDataImpl::rendererIsNeeded): 12490 (WebCore::CharacterDataImpl::dump): 12491 * dom/CharacterDataImpl.h: 12492 * dom/ContainerNodeImpl.cpp: 12493 (WebCore::ContainerNodeImpl::ContainerNodeImpl): 12494 (WebCore::ContainerNodeImpl::removeChild): 12495 (WebCore::ContainerNodeImpl::attach): 12496 (WebCore::ContainerNodeImpl::detach): 12497 (WebCore::ContainerNodeImpl::insertedIntoDocument): 12498 (WebCore::ContainerNodeImpl::removedFromDocument): 12499 (WebCore::ContainerNodeImpl::insertedIntoTree): 12500 (WebCore::ContainerNodeImpl::removedFromTree): 12501 (WebCore::ContainerNodeImpl::setFocus): 12502 (WebCore::ContainerNodeImpl::setActive): 12503 (WebCore::ContainerNodeImpl::setHovered): 12504 (WebCore::dispatchChildInsertionEvents): 12505 (WebCore::dispatchChildRemovalEvents): 12506 * dom/ContainerNodeImpl.h: 12507 * dom/DOMImplementationImpl.cpp: 12508 (WebCore::DOMImplementationImpl::createDocument): 12509 * dom/DocumentImpl.cpp: 12510 (WebCore::DocumentImpl::removeAllEventListenersFromAllNodes): 12511 (WebCore::DocumentImpl::removeAllDisconnectedNodeEventListeners): 12512 (WebCore::DocumentImpl::getAccObjectCache): 12513 (WebCore::DocumentImpl::setFocusNode): 12514 (WebCore::DocumentImpl::topDocument): 12515 * dom/Element.idl: 12516 * dom/EventTargetNodeImpl.cpp: Added. 12517 (WebCore::EventTargetNodeImpl::EventTargetNodeImpl): 12518 (WebCore::EventTargetNodeImpl::~EventTargetNodeImpl): 12519 (WebCore::EventTargetNodeImpl::insertedIntoDocument): 12520 (WebCore::EventTargetNodeImpl::removedFromDocument): 12521 (WebCore::EventTargetNodeImpl::addEventListener): 12522 (WebCore::EventTargetNodeImpl::removeEventListener): 12523 (WebCore::EventTargetNodeImpl::removeAllEventListeners): 12524 (WebCore::EventTargetNodeImpl::handleLocalEvents): 12525 (WebCore::EventTargetNodeImpl::dispatchGenericEvent): 12526 (WebCore::EventTargetNodeImpl::dispatchEvent): 12527 (WebCore::EventTargetNodeImpl::dispatchSubtreeModifiedEvent): 12528 (WebCore::EventTargetNodeImpl::dispatchWindowEvent): 12529 (WebCore::EventTargetNodeImpl::dispatchUIEvent): 12530 (WebCore::EventTargetNodeImpl::dispatchKeyEvent): 12531 (WebCore::EventTargetNodeImpl::dispatchMouseEvent): 12532 (WebCore::EventTargetNodeImpl::dispatchSimulatedMouseEvent): 12533 (WebCore::EventTargetNodeImpl::dispatchWheelEvent): 12534 (WebCore::EventTargetNodeImpl::dispatchHTMLEvent): 12535 (WebCore::EventTargetNodeImpl::removeHTMLEventListener): 12536 (WebCore::EventTargetNodeImpl::setHTMLEventListener): 12537 (WebCore::EventTargetNodeImpl::getHTMLEventListener): 12538 (WebCore::EventTargetNodeImpl::disabled): 12539 (WebCore::EventTargetNodeImpl::defaultEventHandler): 12540 (WebCore::EventTargetNodeImpl::dump): 12541 * dom/EventTargetNodeImpl.h: Added. 12542 (WebCore::EventTargetNodeImpl::isEventTargetNode): 12543 (WebCore::EventTargetNodeImpl::preDispatchEventHandler): 12544 (WebCore::EventTargetNodeImpl::postDispatchEventHandler): 12545 (WebCore::EventTarget): 12546 (WebCore::forbidEventDispatch): 12547 (WebCore::allowEventDispatch): 12548 (WebCore::eventDispatchForbidden): 12549 * dom/NodeImpl.cpp: 12550 (WebCore::NodeImpl::NodeImpl): 12551 (WebCore::NodeImpl::~NodeImpl): 12552 (WebCore::NodeImpl::dump): 12553 (WebCore::NodeImpl::detach): 12554 (WebCore::NodeImpl::insertedIntoDocument): 12555 (WebCore::NodeImpl::removedFromDocument): 12556 * dom/NodeImpl.h: 12557 (WebCore::NodeImpl::isEventTargetNode): 12558 (WebCore::NodeImpl::isLink): 12559 (WebCore::NodeImpl::getDocument): 12560 (WebCore::NodeImpl::inDocument): 12561 * dom/dom2_eventsimpl.cpp: 12562 (WebCore::MouseRelatedEventImpl::receivedTarget): 12563 * dom/dom2_rangeimpl.cpp: 12564 (WebCore::RangeImpl::commonAncestorContainer): 12565 * dom/dom_elementimpl.cpp: 12566 (WebCore::inHTMLDocument): 12567 (WebCore::ElementImpl::focus): 12568 (WebCore::ElementImpl::blur): 12569 (WebCore::StyledElementImpl::parseMappedAttribute): 12570 * dom/dom_position.cpp: 12571 (WebCore::Position::documentElement): 12572 * dom/dom_position.h: 12573 * editing/ReplaceSelectionCommand.cpp: 12574 (WebCore::computeAndStoreNodeDesiredStyle): 12575 * editing/SelectionController.cpp: 12576 (WebCore::SelectionController::needsCaretRepaint): 12577 * editing/visible_units.cpp: 12578 (WebCore::previousBoundary): 12579 (WebCore::nextBoundary): 12580 (WebCore::previousLinePosition): 12581 (WebCore::nextLinePosition): 12582 (WebCore::startOfDocument): 12583 (WebCore::endOfDocument): 12584 * khtml/ecma/kjs_dom.cpp: 12585 (KJS::DOMNode::mark): 12586 (KJS::DOMNode::getValueProperty): 12587 (KJS::DOMNode::putValueProperty): 12588 (KJS::DOMNodeProtoFunc::callAsFunction): 12589 (KJS::DOMEventTargetNode::DOMEventTargetNode): 12590 (KJS::DOMEventTargetNode::getOwnPropertySlot): 12591 (KJS::DOMEventTargetNode::getValueProperty): 12592 (KJS::DOMEventTargetNode::put): 12593 (KJS::DOMEventTargetNode::putValueProperty): 12594 (KJS::DOMEventTargetNode::setListener): 12595 (KJS::DOMEventTargetNode::getListener): 12596 (KJS::DOMEventTargetNode::pushEventHandlerScope): 12597 (KJS::DOMEventTargetNodeProtoFunc::callAsFunction): 12598 (KJS::): 12599 (KJS::DOMDocument::DOMDocument): 12600 (KJS::DOMDocument::getOwnPropertySlot): 12601 (KJS::DOMDocument::put): 12602 (KJS::DOMDocument::putValueProperty): 12603 (KJS::DOMDocumentProtoFunc::callAsFunction): 12604 (KJS::DOMElement::DOMElement): 12605 (KJS::DOMElement::getValueProperty): 12606 (KJS::DOMElement::put): 12607 (KJS::DOMElement::putValueProperty): 12608 (KJS::DOMElement::getOwnPropertySlot): 12609 (KJS::DOMElementProtoFunc::callAsFunction): 12610 (KJS::checkNodeSecurity): 12611 * khtml/ecma/kjs_dom.h: 12612 (KJS::DOMNode::): 12613 (KJS::DOMEventTargetNode::): 12614 (KJS::DOMElement::): 12615 * khtml/ecma/kjs_events.cpp: 12616 (KJS::JSLazyEventListener::parseCode): 12617 (KJS::getNodeEventListener): 12618 * khtml/ecma/kjs_html.cpp: 12619 (KJS::HTMLElement::bodyGetter): 12620 (KJS::HTMLElement::anchorGetter): 12621 (KJS::HTMLElement::getValueProperty): 12622 (KJS::HTMLElement::bodySetter): 12623 * khtml/ecma/kjs_views.cpp: 12624 (KJS::DOMAbstractViewProtoFunc::callAsFunction): 12625 * khtml/html/HTMLFormElementImpl.cpp: 12626 (WebCore::HTMLFormElementImpl::registerFormElement): 12627 (WebCore::HTMLFormElementImpl::removeFormElement): 12628 * khtml/html/HTMLGenericFormElementImpl.cpp: 12629 (WebCore::HTMLGenericFormElementImpl::insertedIntoTree): 12630 * khtml/html/HTMLInputElementImpl.cpp: 12631 (WebCore::HTMLInputElementImpl::~HTMLInputElementImpl): 12632 (WebCore::HTMLInputElementImpl::focus): 12633 * khtml/html/HTMLOptionElementImpl.cpp: 12634 (WebCore::HTMLOptionElementImpl::text): 12635 * khtml/html/HTMLSelectElementImpl.cpp: 12636 (WebCore::HTMLSelectElementImpl::~HTMLSelectElementImpl): 12637 * khtml/html/HTMLTextAreaElementImpl.cpp: 12638 (WebCore::HTMLTextAreaElementImpl::~HTMLTextAreaElementImpl): 12639 * khtml/html/html_baseimpl.cpp: 12640 (WebCore::HTMLBodyElementImpl::insertedIntoDocument): 12641 (WebCore::HTMLFrameElementImpl::isURLAllowed): 12642 (WebCore::HTMLFrameElementImpl::openURL): 12643 (WebCore::HTMLFrameElementImpl::frameWidth): 12644 (WebCore::HTMLFrameElementImpl::frameHeight): 12645 * khtml/html/html_imageimpl.cpp: 12646 (WebCore::HTMLImageLoader::~HTMLImageLoader): 12647 (WebCore::HTMLImageLoader::updateFromElement): 12648 (WebCore::HTMLImageLoader::notifyFinished): 12649 (WebCore::HTMLImageElementImpl::width): 12650 (WebCore::HTMLImageElementImpl::height): 12651 (WebCore::HTMLMapElementImpl::~HTMLMapElementImpl): 12652 * khtml/html/html_inlineimpl.cpp: 12653 (WebCore::HTMLAnchorElementImpl::defaultEventHandler): 12654 * khtml/html/htmltokenizer.cpp: 12655 (WebCore::HTMLTokenizer::notifyFinished): 12656 * ksvg2/svg/SVGAnimateColorElementImpl.cpp: 12657 (SVGAnimateColorElementImpl::handleTimerEvent): 12658 * ksvg2/svg/SVGAnimateElementImpl.cpp: 12659 (SVGAnimateElementImpl::handleTimerEvent): 12660 * ksvg2/svg/SVGAnimateTransformElementImpl.cpp: 12661 (SVGAnimateTransformElementImpl::handleTimerEvent): 12662 * ksvg2/svg/SVGAnimationElementImpl.cpp: 12663 (SVGAnimationElementImpl::closeRenderer): 12664 * ksvg2/svg/SVGDOMImplementationImpl.cpp: 12665 * ksvg2/svg/SVGDocumentImpl.cpp: 12666 (WebCore::SVGDocumentImpl::dispatchRecursiveEvent): 12667 * ksvg2/svg/SVGDocumentImpl.h: 12668 * ksvg2/svg/SVGImageElementImpl.cpp: 12669 * ksvg2/svg/SVGSetElementImpl.cpp: 12670 (SVGSetElementImpl::handleTimerEvent): 12671 * kwq/KWQAccObject.mm: 12672 (-[KWQAccObject mouseButtonListener]): 12673 (-[KWQAccObject accessibilityPerformAction:]): 12674 * kwq/KWQTextArea.mm: 12675 (-[KWQTextAreaTextView dispatchHTMLEvent:]): 12676 * page/Frame.cpp: 12677 (WebCore::dispatchKHTMLEditableContentChanged): 12678 * page/FrameView.cpp: 12679 (WebCore::FrameView::dispatchDragEvent): 12680 (WebCore::FrameView::dispatchMouseEvent): 12681 (WebCore::FrameView::viewportWheelEvent): 12682 * rendering/render_layer.cpp: 12683 (WebCore::RenderLayer::scrollToOffset): 12684 * rendering/render_object.cpp: 12685 (WebCore::RenderObject::shouldSelect): 12686 (WebCore::RenderObject::backslashAsCurrencySymbol): 12687 * rendering/render_replaced.cpp: 12688 (WebCore::RenderWidget::sendConsumedMouseUp): 12689 12690 2006-03-17 David Hyatt <hyatt (a] apple.com> 12691 12692 Fix for 7837, make opacity work with table rows. Make transparent backgrounds 12693 stack properly in cells (so that the layers behind can show through like they 12694 should). 12695 12696 Reviewed by beth 12697 12698 * rendering/RenderTableCell.cpp: 12699 (WebCore::RenderTableCell::requiresLayer): 12700 (WebCore::RenderTableCell::paintBackgroundsBehindCell): 12701 (WebCore::RenderTableCell::paintBoxDecorations): 12702 * rendering/RenderTableCell.h: 12703 * rendering/RenderTableRow.cpp: 12704 (WebCore::RenderTableRow::paint): 12705 * rendering/RenderTableRow.h: 12706 (WebCore::RenderTableRow::requiresLayer): 12707 * rendering/RenderTableSection.cpp: 12708 (WebCore::RenderTableSection::paint): 12709 * rendering/render_layer.cpp: 12710 (WebCore::RenderLayer::updateLayerPosition): 12711 (WebCore::RenderLayer::isTransparent): 12712 (WebCore::RenderLayer::transparentAncestor): 12713 (WebCore::RenderLayer::beginTransparencyLayers): 12714 (WebCore::RenderLayer::paintLayer): 12715 (WebCore::RenderLayer::absoluteBoundingBox): 12716 * rendering/render_object.cpp: 12717 (WebCore::RenderObject::requiresLayer): 12718 * rendering/render_object.h: 12719 (WebCore::RenderObject::isTransparent): 12720 (WebCore::RenderObject::opacity): 12721 12722 2006-03-17 Maciej Stachowiak <mjs (a] apple.com> 12723 12724 Reviewed by Adele. 12725 12726 - clean up ResourceRequest to be closer to a proper request interface 12727 12728 * page/ResourceRequest.h: folded URL into ResourceRequest, other cleanup 12729 (WebCore::ResourceRequest::ResourceRequest): Add new explicit constructor 12730 that takes a KURL. 12731 (WebCore::ResourceRequest::url): getter for KURL 12732 (WebCore::ResourceRequest::setURL): corresponding setter 12733 (WebCore::ResourceRequest::referrer): new getter for referrer, instead 12734 of storing it in m_metaData (it was the only remaining real use of it) 12735 (WebCore::ResourceRequest::setReferrer): corresponding setter 12736 * bridge/BrowserExtension.h: 12737 - removed unused openURLRequest and openURLNotify methods 12738 - folded KURL parameter into ResourceRequest 12739 * bridge/mac/BrowserExtensionMac.h: remove KURL args from methods that 12740 also take a ResourceRequest 12741 * bridge/mac/BrowserExtensionMac.mm: 12742 (WebCore::BrowserExtensionMac::createNewWindow): adjust for ResourceRequest 12743 changes. 12744 * bridge/mac/MacFrame.h: remove KURL args from methods that also take a 12745 ResourceRequest 12746 * bridge/mac/MacFrame.mm: 12747 (WebCore::MacFrame::openURLRequest): adjust for ResourceRequest changes 12748 (WebCore::MacFrame::submitForm): ditto 12749 (WebCore::MacFrame::urlSelected): ditto 12750 * bridge/mac/WebCoreFrameBridge.mm: 12751 (-[WebCoreFrameBridge openURL:reload:contentType:refresh:lastModified:pageCache:]): 12752 adjust for ResourceRequest changes 12753 * bridge/win/BrowserExtensionWin.h: 12754 * khtml/ecma/kjs_window.cpp: 12755 (KJS::createNewWindow): adjust for ResourceRequest changes 12756 (KJS::WindowFunc::callAsFunction): ditto 12757 * page/Frame.cpp: 12758 (WebCore::Frame::didOpenURL): adjust for ResourceRequest changes 12759 (WebCore::Frame::receivedFirstData): ditto 12760 (WebCore::Frame::begin): ditto 12761 (WebCore::Frame::completeURL): ditto 12762 (WebCore::Frame::changeLocation): ditto 12763 (WebCore::Frame::urlSelected): ditto 12764 (WebCore::Frame::requestFrame): ditto 12765 (WebCore::Frame::submitForm): ditto 12766 * page/Frame.h: 12767 * platform/win/TemporaryLinkStubs.cpp: 12768 (BrowserExtensionWin::createNewWindow): ditto 12769 12770 2006-03-17 Adele Peterson <adele (a] apple.com> 12771 12772 Reviewed by Tim H. 12773 12774 Make default backgrounds for new text fields white 12775 instead of transparent. This will move to html4.css 12776 when we flip the switch. 12777 12778 Test added: 12779 * fast/forms/input-appearance-default-bkcolor.html 12780 12781 * rendering/render_theme_mac.mm: 12782 (WebCore::RenderThemeMac::adjustTextFieldStyle): 12783 12784 2006-03-17 David Hyatt <hyatt (a] apple.com> 12785 12786 Make table sections and table captions support opacity. 12787 12788 Reviewed by darin 12789 12790 Covered by some of the new Mozilla table tests. 12791 12792 * rendering/RenderTable.cpp: 12793 (WebCore::RenderTable::paint): 12794 12795 2006-03-17 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 12796 12797 Reviewed by Maciej, landed by Beth. 12798 12799 fix http://bugs.webkit.org/show_bug.cgi?id=3560 12800 page with use of first-letter crashes reproducibly in 12801 RenderObject::renderArena() 12802 12803 * rendering/RenderBlock.cpp: 12804 (WebCore::RenderBlock::updateFirstLetter): Pass the first-leter 12805 renderer to the remaining text fragment. 12806 * rendering/RenderContainer.cpp: 12807 (WebCore::RenderContainer::destroyLeftoverChildren): Do not destroy 12808 first-letter renderers since they are destroyed by their remaining 12809 text now. 12810 * rendering/RenderTextFragment.cpp: 12811 (khtml::RenderTextFragment::RenderTextFragment): 12812 (khtml::RenderTextFragment::destroy): Destroy the first-letter 12813 renderer. 12814 * rendering/RenderTextFragment.h: 12815 (khtml::RenderTextFragment::firstLetter): 12816 12817 2006-03-17 Adele Peterson <adele (a] apple.com> 12818 12819 Reviewed by Eric. 12820 12821 - Fix for http://bugs.webkit.org/show_bug.cgi?id=7798 12822 New text fields are much wider than they should be for a specified size 12823 12824 I changed the character we use to calculate the width from "w" back to "0", 12825 which matches our old behavior. The original change was intentional, to try 12826 to better match other browsers, but "w" is a little too wide. For now, lets 12827 go back to the old behavior. 12828 12829 I also set the minWidth = maxWidth. We were trying to match a WinIE quirk, 12830 but that caused some odd behavior with growth of the text field in table cells. 12831 12832 * rendering/RenderTextField.cpp: (WebCore::RenderTextField::calcMinMaxWidth): 12833 12834 2006-03-17 Eric Seidel <eseidel (a] apple.com> 12835 12836 Reviewed by adele. 12837 12838 Fix win32 build. 12839 Add PageWin class. 12840 Add previously forgotten KeyEventWin class. 12841 Pass MouseEvent() instead of 0 in a couple places to make compiler happy. 12842 12843 * WebCore.vcproj/WebCore/WebCore.vcproj: 12844 * bridge/win/BrowserExtensionWin.h: 12845 * bridge/win/FrameWin.cpp: 12846 (WebCore::FrameWin::urlSelected): 12847 (WebCore::FrameWin::keyPress): 12848 * bridge/win/FrameWin.h: 12849 * bridge/win/PageWin.cpp: Added. 12850 (WebCore::rootWindowForFrame): 12851 (WebCore::Page::windowRect): 12852 (WebCore::Page::setWindowRect): 12853 * page/FrameView.cpp: 12854 (WebCore::FrameView::updateDragAndDrop): 12855 (WebCore::FrameView::hoverTimerFired): 12856 * page/Page.h: 12857 (WebCore::Page::mainFrame): 12858 * platform/win/KeyEventWin.cpp: Added. 12859 (WebCore::KeyEvent::KeyEvent): 12860 * platform/win/TemporaryLinkStubs.cpp: 12861 (WebCore::findNextWordFromIndex): 12862 (FrameWin::passMouseDownEventToWidget): 12863 (FrameWin::scheduleClose): 12864 (BrowserExtensionWin::createNewWindow): 12865 (WebCore::findWordBoundary): 12866 (FrameWin::registerCommandForUndo): 12867 (FrameWin::markMisspellingsInAdjacentWords): 12868 (FrameWin::respondToChangedContents): 12869 12870 2006-03-17 David Hyatt <hyatt (a] apple.com> 12871 12872 Fix pixel test regression in fast/table/overflowHidden.html. There was 12873 a borderTopExtra error made in the new boundingBox code for layers that 12874 caused the bottom half of cells with opacity set to be clipped out. 12875 12876 Reviewed by andersca 12877 12878 * rendering/render_layer.cpp: 12879 (WebCore::RenderLayer::absoluteBoundingBox): 12880 12881 2006-03-17 David Hyatt <hyatt (a] apple.com> 12882 12883 Give table rows and sections accurate dimensions. Fix absolutePosition 12884 to work for table cells properly. Add an absolutePositionForContent method 12885 to make sure callers that want to deal with the content of a cell handle 12886 the cell's extra space correctly. 12887 12888 Reviewed by darin 12889 12890 Existing layout tests cover this change. 12891 12892 * bridge/mac/WebCoreFrameBridge.mm: 12893 (-[WebCoreFrameBridge copyRenderNode:copier:]): 12894 * dom/ContainerNodeImpl.cpp: 12895 (WebCore::ContainerNodeImpl::getUpperLeftCorner): 12896 (WebCore::ContainerNodeImpl::getLowerRightCorner): 12897 * dom/NodeImpl.cpp: 12898 (WebCore::NodeImpl::getRect): 12899 * editing/SelectionController.cpp: 12900 (WebCore::SelectionController::layout): 12901 (WebCore::SelectionController::caretRect): 12902 * editing/visible_units.cpp: 12903 (WebCore::previousLinePosition): 12904 (WebCore::nextLinePosition): 12905 * khtml/html/HTMLInputElementImpl.cpp: 12906 (WebCore::HTMLInputElementImpl::defaultEventHandler): 12907 * kwq/KWQRenderTreeDebug.cpp: 12908 (operator<<): 12909 * rendering/RenderBlock.cpp: 12910 (WebCore::RenderBlock::selectionGapRects): 12911 (WebCore::RenderBlock::positionForCoordinates): 12912 * rendering/RenderContainer.cpp: 12913 (WebCore::RenderContainer::positionForCoordinates): 12914 (WebCore::RenderContainer::lineBoxRects): 12915 * rendering/RenderTableCell.cpp: 12916 (WebCore::RenderTableCell::computeAbsoluteRepaintRect): 12917 (WebCore::RenderTableCell::absolutePosition): 12918 * rendering/RenderTableRow.cpp: 12919 (WebCore::RenderTableRow::addChild): 12920 (WebCore::RenderTableRow::getAbsoluteRepaintRect): 12921 (WebCore::RenderTableRow::nodeAtPoint): 12922 * rendering/RenderTableRow.h: 12923 * rendering/RenderTableSection.cpp: 12924 (WebCore::RenderTableSection::ensureRows): 12925 (WebCore::RenderTableSection::addCell): 12926 (WebCore::RenderTableSection::layoutRows): 12927 (WebCore::RenderTableSection::recalcCells): 12928 (WebCore::RenderTableSection::nodeAtPoint): 12929 * rendering/RenderTableSection.h: 12930 * rendering/RenderText.cpp: 12931 (WebCore::RenderText::lineBoxRects): 12932 (WebCore::RenderText::positionForCoordinates): 12933 (WebCore::RenderText::caretRect): 12934 (WebCore::RenderText::posOfChar): 12935 (WebCore::RenderText::selectionRect): 12936 * rendering/render_box.cpp: 12937 (WebCore::RenderBox::absolutePosition): 12938 (WebCore::RenderBox::caretRect): 12939 * rendering/render_br.cpp: 12940 (WebCore::RenderBR::caretRect): 12941 * rendering/render_canvas.h: 12942 * rendering/render_flow.cpp: 12943 (WebCore::RenderFlow::caretRect): 12944 * rendering/render_frames.cpp: 12945 (WebCore::RenderPart::updateWidgetPosition): 12946 * rendering/render_layer.cpp: 12947 (WebCore::RenderLayer::updateLayerPosition): 12948 * rendering/render_object.cpp: 12949 (WebCore::RenderObject::absoluteRects): 12950 (WebCore::RenderObject::absoluteBoundingBoxRect): 12951 (WebCore::RenderObject::absolutePosition): 12952 * rendering/render_object.h: 12953 (WebCore::RenderObject::absolutePositionForContent): 12954 (WebCore::RenderObject::offsetHeight): 12955 * rendering/render_replaced.cpp: 12956 (WebCore::RenderWidget::updateWidgetPosition): 12957 12958 2006-03-17 Adele Peterson <adele (a] apple.com> 12959 12960 Reviewed by Hyatt. 12961 12962 WebCore part of fix for: 12963 http://bugs.webkit.org/show_bug.cgi?id=7797 12964 Can't set background color on new text fields 12965 12966 Bezeled NSTextFieldCells always draw a background, so instead we'll use a new 12967 WebKitSystemInterface function to just draw the border of the cell. 12968 12969 Since the theme is drawing the border and the engine is drawing the background 12970 (which is different from the other form controls), we have to make sure we let the 12971 theme paint the border after the engine paints the background. 12972 12973 * platform/mac/WebCoreGraphicsBridge.h: 12974 * platform/mac/WebCoreGraphicsBridge.m: 12975 (-[WebCoreGraphicsBridge drawBezeledTextFieldCell:enabled:]): 12976 * rendering/render_box.cpp: (WebCore::RenderBox::paintBoxDecorations): 12977 * rendering/render_theme.cpp: 12978 (WebCore::RenderTheme::paint): 12979 (WebCore::RenderTheme::paintBorder): 12980 (WebCore::RenderTheme::shouldPaintBorder): 12981 * rendering/render_theme.h: 12982 * rendering/render_theme_mac.mm: 12983 (WebCore::RenderThemeMac::paintTextField): 12984 (WebCore::RenderThemeMac::setTextFieldCellState): 12985 12986 2006-03-16 Darin Adler <darin (a] apple.com> 12987 12988 Reviewed by Eric. 12989 12990 - removed KWQWindowWidget 12991 - changed most event handling to use references instead of pointers 12992 - chagned PageMac to no longer be a subclass of Page 12993 12994 Yes, I know there's no detail in this ChangeLog entry. 12995 No, I don't plan to make a habit of doing things this way. 12996 Yes, this will probably break the Windows build again. 12997 12998 * WebCore.xcodeproj/project.pbxproj: 12999 * bridge/mac/BrowserExtensionMac.mm: 13000 (WebCore::BrowserExtensionMac::createNewWindow): 13001 * bridge/mac/FrameViewMac.mm: 13002 * bridge/mac/MacFrame.h: 13003 * bridge/mac/MacFrame.mm: 13004 (WebCore::MacFrame::MacFrame): 13005 (WebCore::MacFrame::~MacFrame): 13006 (WebCore::MacFrame::wheelEvent): 13007 (WebCore::MacFrame::keyEvent): 13008 (WebCore::MacFrame::khtmlMousePressEvent): 13009 (WebCore::MacFrame::khtmlMouseMoveEvent): 13010 (WebCore::MacFrame::khtmlMouseReleaseEvent): 13011 (WebCore::MacFrame::mouseDown): 13012 (WebCore::MacFrame::mouseDragged): 13013 (WebCore::MacFrame::mouseUp): 13014 (WebCore::MacFrame::mouseMoved): 13015 (WebCore::MacFrame::sendContextMenuEvent): 13016 (WebCore::MacFrame::setBridge): 13017 (WebCore::MacFrame::dragSourceMovedTo): 13018 (WebCore::MacFrame::dragSourceEndedAt): 13019 (WebCore::MacFrame::dispatchDragSrcEvent): 13020 * bridge/mac/PageMac.h: Removed. 13021 * bridge/mac/PageMac.mm: Added. 13022 (WebCore::Page::Page): 13023 (WebCore::Page::windowRect): 13024 (WebCore::Page::setWindowRect): 13025 * bridge/mac/WebCoreFrameBridge.h: 13026 * bridge/mac/WebCoreFrameBridge.mm: 13027 (-[WebCoreFrameBridge page]): 13028 (-[WebCoreFrameBridge initializeSettings:]): 13029 (globalPoint): 13030 (createMouseEventFromDraggingInfo): 13031 (-[WebCoreFrameBridge dragOperationForDraggingInfo:]): 13032 (-[WebCoreFrameBridge dragExitedWithDraggingInfo:]): 13033 (-[WebCoreFrameBridge concludeDragForDraggingInfo:]): 13034 (-[WebCoreFrameBridge dragSourceMovedTo:]): 13035 (-[WebCoreFrameBridge dragSourceEndedAt:operation:]): 13036 * bridge/mac/WebCoreFrameNamespaces.mm: 13037 (WebCore::): 13038 * bridge/mac/WebCorePageBridge.h: 13039 * bridge/mac/WebCorePageBridge.mm: 13040 (-[WebCorePageBridge init]): 13041 * dom/DocumentImpl.cpp: 13042 (WebCore::DocumentImpl::prepareMouseEvent): 13043 (WebCore::DocumentImpl::defaultEventHandler): 13044 * dom/DocumentImpl.h: 13045 * dom/NodeImpl.cpp: 13046 (WebCore::NodeImpl::dispatchMouseEvent): 13047 (WebCore::NodeImpl::dispatchKeyEvent): 13048 (WebCore::NodeImpl::dispatchWheelEvent): 13049 * dom/NodeImpl.h: 13050 * dom/dom2_eventsimpl.cpp: 13051 (WebCore::KeyboardEventImpl::KeyboardEventImpl): 13052 * dom/dom2_eventsimpl.h: 13053 (WebCore::KeyboardEventImpl::keyEvent): 13054 * khtml/ecma/kjs_window.cpp: 13055 (KJS::Window::getValueProperty): 13056 (KJS::WindowFunc::callAsFunction): 13057 * khtml/html/html_inlineimpl.cpp: 13058 (WebCore::HTMLAnchorElementImpl::defaultEventHandler): 13059 * ksvg2/svg/SVGDocumentImpl.cpp: 13060 * ksvg2/svg/SVGDocumentImpl.h: 13061 * kwq/KWQWindowWidget.h: 13062 * kwq/KWQWindowWidget.mm: Removed. 13063 * page/Frame.cpp: 13064 (WebCore::Frame::selectClosestWordFromMouseEvent): 13065 (WebCore::Frame::handleMousePressEventDoubleClick): 13066 (WebCore::Frame::handleMousePressEventTripleClick): 13067 (WebCore::Frame::handleMousePressEventSingleClick): 13068 (WebCore::Frame::khtmlMousePressEvent): 13069 (WebCore::Frame::handleMouseMoveEventSelection): 13070 (WebCore::Frame::khtmlMouseMoveEvent): 13071 (WebCore::Frame::khtmlMouseReleaseEvent): 13072 (WebCore::Frame::khtmlMouseDoubleClickEvent): 13073 (WebCore::Frame::passWidgetMouseDownEventToWidget): 13074 * page/Frame.h: 13075 * page/FrameView.cpp: 13076 (WebCore::FrameView::viewportMousePressEvent): 13077 (WebCore::FrameView::viewportMouseDoubleClickEvent): 13078 (WebCore::FrameView::viewportMouseMoveEvent): 13079 (WebCore::FrameView::viewportMouseReleaseEvent): 13080 (WebCore::FrameView::dispatchDragEvent): 13081 (WebCore::FrameView::updateDragAndDrop): 13082 (WebCore::FrameView::cancelDragAndDrop): 13083 (WebCore::FrameView::performDragAndDrop): 13084 (WebCore::FrameView::dispatchMouseEvent): 13085 (WebCore::FrameView::viewportWheelEvent): 13086 * page/FrameView.h: 13087 * page/MouseEventWithHitTestResults.h: 13088 (WebCore::MouseEventWithHitTestResults::MouseEventWithHitTestResults): 13089 (WebCore::MouseEventWithHitTestResults::event): 13090 * page/Page.cpp: 13091 (WebCore::Page::init): 13092 * page/Page.h: 13093 (WebCore::Page::bridge): 13094 * platform/KeyEvent.h: 13095 (WebCore::KeyEvent::isAutoRepeat): 13096 * platform/MouseEvent.h: 13097 (WebCore::MouseEvent::MouseEvent): 13098 * platform/mac/KeyEventMac.mm: 13099 (WebCore::KeyEvent::KeyEvent): 13100 * platform/win/TemporaryLinkStubs.cpp: 13101 (FrameView::isFrameView): 13102 * rendering/render_form.cpp: 13103 (WebCore::RenderFormElement::clicked): 13104 13105 2006-03-16 Eric Seidel <eseidel (a] apple.com> 13106 13107 Reviewed by darin. 13108 13109 Add additional hackish Font, focusring and caret code. 13110 http://bugs.webkit.org/show_bug.cgi?id=7803 13111 13112 * WebCore.vcproj/WebCore/WebCore.vcproj: 13113 * WebCore.vcproj/WebCore/build-generated-files.sh: 13114 * bindings/js/JSCanvasRenderingContext2DBase.cpp: 13115 * bridge/win/FrameWin.cpp: 13116 (WebCore::FrameWin::keyPress): 13117 * bridge/win/FrameWin.h: 13118 * html/CanvasRenderingContext2D.h: 13119 * platform/IntSize.h: 13120 * platform/KeyEvent.h: 13121 * platform/cairo/GraphicsContextCairo.cpp: 13122 (WebCore::GraphicsContext::drawArc): 13123 (WebCore::GraphicsContext::drawFocusRing): 13124 * platform/win/FontWin.cpp: 13125 (WebCore::hackishExtentForString): 13126 (WebCore::Font::floatWidth): 13127 (WebCore::convertRange): 13128 (WebCore::Font::drawText): 13129 (WebCore::Font::drawHighlightForText): 13130 (WebCore::Font::selectionRectForText): 13131 (WebCore::Font::checkSelectionPoint): 13132 (WebCore::Font::drawLineForText): 13133 (WebCore::Font::misspellingLineThickness): 13134 * platform/win/IntSizeWin.cpp: Added. 13135 (WebCore::IntSize::IntSize): 13136 (WebCore::IntSize::operator SIZE): 13137 * platform/win/ScrollViewWin.cpp: 13138 (WebCore::ScrollView::visibleContentRect): 13139 * platform/win/TemporaryLinkStubs.cpp: 13140 (Widget::disableFlushDrawing): 13141 (GraphicsContext::GraphicsContext): 13142 (QListBox::setSelected): 13143 (QListBox::sizeForNumberOfLines): 13144 (QListBox::isSelected): 13145 (QListBox::appendItem): 13146 (QListBox::doneAppendingItems): 13147 (FrameWin::locationbarVisible): 13148 (FrameWin::canUndo): 13149 (FrameWin::mimeTypeForFileName): 13150 (FrameWin::issueTransposeCommand): 13151 (RenderCanvasImage::setNeedsImageUpdate): 13152 (FrameWin::shouldChangeSelection): 13153 (FrameWin::respondToChangedSelection): 13154 (FrameWin::clearRecordedFormValues): 13155 (FrameWin::recordFormValue): 13156 (BrowserExtensionWin::getHistoryLength): 13157 (Widget::setIsSelected): 13158 (GraphicsContext::selectedTextBackgroundColor): 13159 (GraphicsContext::addRoundedRectClip): 13160 (QScrollBar::QScrollBar): 13161 (QScrollBar::~QScrollBar): 13162 (QScrollBar::setSteps): 13163 (QScrollBar::scroll): 13164 (QScrollBar::setValue): 13165 (QScrollBar::setKnobProportion): 13166 (QListBox::QListBox): 13167 (QListBox::~QListBox): 13168 (QListBox::setSelectionMode): 13169 (QListBox::setFont): 13170 * rendering/render_canvasimage.h: 13171 13172 2006-03-16 Maciej Stachowiak <mjs (a] apple.com> 13173 13174 Reviewed by Eric. 13175 13176 - renamed URLArgs to ResourceRequest, split it into its own header 13177 - moved methods to get and set ResourceRequest to Frame 13178 13179 * WebCore.xcodeproj/project.pbxproj: 13180 * bridge/BrowserExtension.h: 13181 * bridge/mac/BrowserExtensionMac.h: 13182 * bridge/mac/BrowserExtensionMac.mm: 13183 (WebCore::BrowserExtensionMac::openURLRequest): 13184 (WebCore::BrowserExtensionMac::createNewWindow): 13185 * bridge/mac/MacFrame.h: 13186 * bridge/mac/MacFrame.mm: 13187 (WebCore::MacFrame::openURLRequest): 13188 (WebCore::MacFrame::submitForm): 13189 (WebCore::MacFrame::urlSelected): 13190 * bridge/mac/WebCoreFrameBridge.mm: 13191 (-[WebCoreFrameBridge openURL:reload:contentType:refresh:lastModified:pageCache:]): 13192 * khtml/ecma/kjs_window.cpp: 13193 (KJS::createNewWindow): 13194 (KJS::WindowFunc::callAsFunction): 13195 * page/Frame.cpp: 13196 (WebCore::Frame::didOpenURL): 13197 (WebCore::Frame::receivedFirstData): 13198 (WebCore::Frame::setResourceRequest): 13199 (WebCore::Frame::resourceRequest): 13200 (WebCore::Frame::begin): 13201 (WebCore::Frame::changeLocation): 13202 (WebCore::Frame::urlSelected): 13203 (WebCore::Frame::requestFrame): 13204 (WebCore::Frame::submitForm): 13205 * page/Frame.h: 13206 * page/FramePrivate.h: 13207 * page/ResourceRequest.h: Added. 13208 (WebCore::ResourceRequest::ResourceRequest): 13209 (WebCore::ResourceRequest::contentType): 13210 (WebCore::ResourceRequest::setContentType): 13211 (WebCore::ResourceRequest::doPost): 13212 (WebCore::ResourceRequest::setDoPost): 13213 (WebCore::ResourceRequest::lockHistory): 13214 (WebCore::ResourceRequest::setLockHistory): 13215 (WebCore::ResourceRequest::metaData): 13216 13217 2006-03-16 Darin Adler <darin (a] apple.com> 13218 13219 - need to touch one more file to fix the build 13220 (Darn the lack of dependencies for autogenerated bindings!) 13221 13222 * dom/Element.idl: Touch. (Really this time.) 13223 13224 2006-03-16 Eric Seidel <eseidel (a] apple.com> 13225 13226 Reviewed by darin. 13227 13228 Pushed focus ring handling down into GraphicsContext.cpp 13229 13230 * bridge/mac/MacFrame.mm: 13231 (WebCore::MacFrame::mouseDown): 13232 * platform/GraphicsContext.cpp: 13233 (WebCore::GraphicsContext::initFocusRing): 13234 (WebCore::GraphicsContext::clearFocusRing): 13235 (WebCore::GraphicsContext::addFocusRingRect): 13236 * platform/GraphicsContext.h: 13237 * platform/mac/GraphicsContextMac.mm: 13238 (WebCore::GraphicsContextPrivate::GraphicsContextPrivate): 13239 (WebCore::GraphicsContextPrivate::~GraphicsContextPrivate): 13240 (WebCore::GraphicsContext::GraphicsContext): 13241 (WebCore::GraphicsContext::drawFocusRing): 13242 * rendering/render_flow.cpp: 13243 (WebCore::RenderFlow::addFocusRingRects): 13244 * rendering/render_object.cpp: 13245 (WebCore::RenderObject::addFocusRingRects): 13246 13247 2006-03-15 Darin Adler <darin (a] apple.com> 13248 13249 Reviewed by Hyatt. 13250 13251 - fix http://bugs.webkit.org/show_bug.cgi?id=7749 13252 canvas should be in DOM, not implemented in the JS bindings 13253 13254 * WebCore.xcodeproj/project.pbxproj: Added new files. 13255 Changed bindings-generation code to work on the new html directory 13256 as well as the dom one. 13257 13258 * bindings/js/JSCanvasRenderingContext2DBase.cpp: Added. 13259 * bindings/js/JSCanvasRenderingContext2DBase.h: Added. 13260 * bindings/js/JSDOMHTML.cpp: Added. 13261 * html: Added. 13262 * html/CanvasGradient.cpp: Added. 13263 * html/CanvasGradient.h: Added. 13264 * html/CanvasGradient.idl: Added. 13265 * html/CanvasPattern.cpp: Added. 13266 * html/CanvasPattern.h: Added. 13267 * html/CanvasPattern.idl: Added. 13268 * html/CanvasRenderingContext2D.cpp: Added. 13269 * html/CanvasRenderingContext2D.h: Added. 13270 * html/CanvasRenderingContext2D.idl: Added. 13271 * html/CanvasStyle.cpp: Added. 13272 * html/CanvasStyle.h: Added. 13273 13274 * bindings/js/JSDOMCore.cpp: Touched so that it will recompile. 13275 * bindings/js/JSDOMEvents.cpp: Ditto. 13276 * dom/Attr.idl: Ditto. 13277 * dom/DOMImplementation.idl: Ditto. 13278 * dom/DocumentType.idl: Ditto. 13279 * dom/MutationEvent.idl: Ditto. 13280 * dom/ProcessingInstruction.idl: Ditto. 13281 * dom/Text.idl: Ditto. 13282 13283 * khtml/ecma/kjs_binding.h: (KJS::toJS): Added. Template so that you can call 13284 toJS on a PassRefPtr as well as on a raw pointer. 13285 13286 * bindings/scripts/CodeGeneratorJS.pm: Fixed handling of a class that has only 13287 a legacy parent, no conventional parents. Added JSCanvasRenderingContext2DBase 13288 as a legacy parent, and html as a legacy module. Added CanvasRenderingContext2D, 13289 CanvasGradient, and CanvasPattern to the "waht to include". Added a special 13290 case for strings beginning with Canvas to not add an "Impl" suffix. Made the 13291 generated impl() function be a const member function. Made m_mimpl be private 13292 instead of protected. Generate a toJS function for each class. Added flaot as 13293 a type. Generate String, not DOMString. Made the HashTable const. 13294 13295 * bindings/scripts/IDLParser.pm: Fix a couple small things. I had started to 13296 try to make a missing semicolon trigger an error, but ended up giving up on 13297 that for now. 13298 13299 * khtml/html/html_canvasimpl.h: 13300 * khtml/html/html_canvasimpl.cpp: 13301 (WebCore::HTMLCanvasElementImpl::HTMLCanvasElementImpl): Set m_2DContext to 0. 13302 (WebCore::HTMLCanvasElementImpl::~HTMLCanvasElementImpl): Call detachCanvas 13303 on m_2DContext, if any. 13304 (WebCore::HTMLCanvasElementImpl::detach): Call reset on m_2DContext, if any. 13305 (WebCore::HTMLCanvasElementImpl::getContext): Added. 13306 (WebCore::HTMLCanvasElementImpl::size): Added. 13307 (WebCore::HTMLCanvasElementImpl::createPlatformImage): Added. 13308 13309 * platform/Image.h: 13310 * platform/Image.cpp: (WebCore::Image::compositeOperatorFromString): 13311 Changed to take a String instead of a const char*. 13312 13313 * khtml/html/html_imageimpl.h: 13314 * khtml/html/html_imageimpl.cpp: (WebCore::HTMLMapElementImpl::areas): 13315 Tweaked formatting. Changed to use PassRefPtr. 13316 13317 * bindings/objc/DOMInternal.mm: (-[WebScriptObject _initializeScriptDOMNodeImp]): 13318 * khtml/ecma/JSXMLHttpRequest.cpp: (KJS::JSXMLHttpRequest::getValueProperty): 13319 * khtml/ecma/XSLTProcessor.cpp: (KJS::XSLTProcessorProtoFunc::callAsFunction): 13320 * khtml/ecma/domparser.cpp: (KJS::DOMParserProtoFunc::callAsFunction): 13321 * khtml/ecma/kjs_css.cpp: 13322 (KJS::DOMCSSStyleDeclaration::getValueProperty): 13323 (KJS::DOMCSSStyleDeclarationProtoFunc::callAsFunction): 13324 (KJS::toJS): 13325 (KJS::DOMStyleSheet::getValueProperty): 13326 (KJS::DOMStyleSheetList::indexGetter): 13327 (KJS::DOMStyleSheetList::nameGetter): 13328 (KJS::DOMStyleSheetListFunc::callAsFunction): 13329 (KJS::DOMCSSStyleSheet::getValueProperty): 13330 (KJS::DOMCSSRuleList::indexGetter): 13331 (KJS::DOMCSSRuleListFunc::callAsFunction): 13332 (KJS::DOMCSSRule::getValueProperty): 13333 (KJS::DOMCSSPrimitiveValueProtoFunc::callAsFunction): 13334 (KJS::DOMCSSValueList::indexGetter): 13335 (KJS::DOMCSSValueListFunc::callAsFunction): 13336 (KJS::DOMRect::getValueProperty): 13337 * khtml/ecma/kjs_css.h: 13338 * khtml/ecma/kjs_dom.cpp: 13339 (KJS::DOMNode::getValueProperty): 13340 (KJS::DOMNodeProtoFunc::callAsFunction): 13341 (KJS::DOMNodeList::indexGetter): 13342 (KJS::DOMNodeList::nameGetter): 13343 (KJS::DOMNodeList::callAsFunction): 13344 (KJS::DOMNodeListFunc::callAsFunction): 13345 (KJS::DOMDocument::getValueProperty): 13346 (KJS::DOMDocumentProtoFunc::callAsFunction): 13347 (KJS::DOMNamedNodeMap::indexGetter): 13348 (KJS::DOMNamedNodeMap::nameGetter): 13349 (KJS::DOMNamedNodeMapProtoFunc::callAsFunction): 13350 (KJS::toJS): 13351 (KJS::DOMNamedNodesCollection::indexGetter): 13352 * khtml/ecma/kjs_dom.h: 13353 * khtml/ecma/kjs_events.cpp: 13354 (KJS::JSAbstractEventListener::handleEvent): 13355 (KJS::JSLazyEventListener::parseCode): 13356 (KJS::DOMEvent::getValueProperty): 13357 (KJS::toJS): 13358 (KJS::DOMUIEvent::getValueProperty): 13359 (KJS::DOMMouseEvent::getValueProperty): 13360 * khtml/ecma/kjs_events.h: 13361 * khtml/ecma/kjs_html.cpp: 13362 (KJS::HTMLDocFunction::callAsFunction): 13363 (KJS::HTMLDocument::namedItemGetter): 13364 (KJS::HTMLDocument::getValueProperty): 13365 (KJS::HTMLDocument::put): 13366 (KJS::HTMLDocument::putValueProperty): 13367 (KJS::HTMLElement::classInfo): 13368 (KJS::HTMLElement::formIndexGetter): 13369 (KJS::HTMLElement::selectIndexGetter): 13370 (KJS::HTMLElement::implementsCall): 13371 (KJS::HTMLElement::callAsFunction): 13372 (KJS::HTMLElement::linkGetter): 13373 (KJS::HTMLElement::isIndexGetter): 13374 (KJS::HTMLElement::styleGetter): 13375 (KJS::HTMLElement::selectGetter): 13376 (KJS::HTMLElement::optionGetter): 13377 (KJS::HTMLElement::inputGetter): 13378 (KJS::HTMLElement::textAreaGetter): 13379 (KJS::HTMLElement::buttonGetter): 13380 (KJS::HTMLElement::labelGetter): 13381 (KJS::HTMLElement::fieldSetGetter): 13382 (KJS::HTMLElement::legendGetter): 13383 (KJS::HTMLElement::objectGetter): 13384 (KJS::HTMLElement::tableGetter): 13385 (KJS::HTMLElement::frameGetter): 13386 (KJS::HTMLElement::iFrameGetter): 13387 (KJS::HTMLElement::getValueProperty): 13388 (KJS::HTMLElement::toString): 13389 (KJS::HTMLElement::pushEventHandlerScope): 13390 (KJS::toJS): 13391 (KJS::HTMLElementFunction::callAsFunction): 13392 (KJS::HTMLElement::put): 13393 (KJS::HTMLCollection::indexGetter): 13394 (KJS::HTMLCollection::callAsFunction): 13395 (KJS::HTMLCollection::getNamedItems): 13396 (KJS::HTMLCollectionProtoFunc::callAsFunction): 13397 (KJS::HTMLSelectCollection::put): 13398 (KJS::OptionConstructorImp::construct): 13399 (KJS::ImageConstructorImp::construct): 13400 * khtml/ecma/kjs_html.h: 13401 * khtml/ecma/kjs_proxy.cpp: (WebCore::KJSProxyImpl::evaluate): 13402 * khtml/ecma/kjs_range.cpp: 13403 (KJS::DOMRange::getValueProperty): 13404 (KJS::DOMRangeProtoFunc::callAsFunction): 13405 (KJS::toJS): 13406 * khtml/ecma/kjs_range.h: 13407 * khtml/ecma/kjs_traversal.cpp: 13408 (KJS::DOMNodeIterator::getValueProperty): 13409 (KJS::DOMNodeIteratorProtoFunc::callAsFunction): 13410 (KJS::toJS): 13411 (KJS::DOMTreeWalker::getValueProperty): 13412 (KJS::DOMTreeWalkerProtoFunc::callAsFunction): 13413 (KJS::JSNodeFilterCondition::acceptNode): 13414 * khtml/ecma/kjs_traversal.h: 13415 * khtml/ecma/kjs_views.cpp: 13416 (KJS::DOMAbstractView::getValueProperty): 13417 (KJS::DOMAbstractViewProtoFunc::callAsFunction): 13418 (KJS::toJS): 13419 * khtml/ecma/kjs_views.h: 13420 * khtml/ecma/kjs_window.cpp: 13421 (KJS::Window::getValueProperty): 13422 (KJS::Window::namedItemGetter): 13423 (KJS::Selection::getValueProperty): 13424 (KJS::SelectionFunc::callAsFunction): 13425 Rename uses and definitions of all the various converstions to JavaScript 13426 wrappers to the new common overloaded name: "toJS". 13427 13428 2006-03-15 Eric Seidel <eseidel (a] apple.com> 13429 13430 Reviewed by darin. 13431 13432 Push more of MacFrame down into Frame. 13433 Add visibleContentRect method to ScrollView. 13434 13435 * bridge/mac/MacFrame.h: 13436 * bridge/mac/MacFrame.mm: 13437 (WebCore::MacFrame::imageFromRect): 13438 (WebCore::MacFrame::setDisplaysWithFocusAttributes): 13439 (WebCore::MacFrame::bodyBackgroundColor): 13440 * bridge/mac/WebCoreFrameBridge.mm: 13441 * page/Frame.cpp: 13442 (WebCore::Frame::visibleSelectionRect): 13443 (WebCore::Frame::setDisplaysWithFocusAttributes): 13444 * page/Frame.h: 13445 * platform/ScrollView.h: 13446 * platform/mac/ScrollViewMac.mm: 13447 (WebCore::ScrollView::visibleWidth): 13448 (WebCore::ScrollView::visibleHeight): 13449 (WebCore::ScrollView::visibleContentRect): 13450 (WebCore::ScrollView::contentsWidth): 13451 (WebCore::ScrollView::contentsHeight): 13452 (WebCore::ScrollView::contentsX): 13453 (WebCore::ScrollView::contentsY): 13454 (WebCore::ScrollView::scrollXOffset): 13455 (WebCore::ScrollView::scrollYOffset): 13456 (WebCore::ScrollView::inWindow): 13457 13458 2006-03-15 Eric Seidel <eseidel (a] apple.com> 13459 13460 Reviewed by darin. 13461 13462 Remove unused code and clean-up style. 13463 13464 * bridge/mac/MacFrame.mm: 13465 (WebCore::MacFrame::advanceToNextMisspelling): 13466 (WebCore::MacFrame::wheelEvent): 13467 (WebCore::MacFrame::nextKeyViewInFrame): 13468 (WebCore::MacFrame::nextKeyViewInFrameHierarchy): 13469 (WebCore::MacFrame::nextKeyView): 13470 * page/Frame.cpp: 13471 * page/Frame.h: 13472 * page/FrameView.cpp: 13473 (WebCore::FrameView::dispatchMouseEvent): 13474 13475 2006-03-15 Eric Seidel <eseidel (a] apple.com> 13476 13477 Reviewed by mjs. 13478 13479 http://bugs.webkit.org/show_bug.cgi?id=7790 13480 addEventListener does not work with "dblclick" event. 13481 Renamed khtmlDblclickEvent to dblclickEvent to fix. 13482 13483 Test: fast/events/dblclick-addEventListener.html 13484 13485 * WebCore.xcodeproj/project.pbxproj: 13486 * bridge/mac/MacFrame.mm: 13487 (WebCore::MacFrame::mouseUp): 13488 (WebCore::MacFrame::mouseMoved): 13489 (WebCore::MacFrame::shouldDragAutoNode): 13490 (WebCore::MacFrame::sendContextMenuEvent): 13491 * dom/EventNames.h: 13492 * dom/NodeImpl.cpp: 13493 (WebCore::NodeImpl::dispatchMouseEvent): 13494 * dom/NodeImpl.h: 13495 * khtml/ecma/kjs_binding.cpp: 13496 (KJS::ScriptInterpreter::wasRunByUserGesture): 13497 * khtml/ecma/kjs_dom.cpp: 13498 (KJS::DOMNode::getValueProperty): 13499 (KJS::DOMNode::putValueProperty): 13500 * khtml/ecma/kjs_window.cpp: 13501 (KJS::Window::getValueProperty): 13502 (KJS::Window::put): 13503 * khtml/html/HTMLElementImpl.cpp: 13504 (WebCore::HTMLElementImpl::parseMappedAttribute): 13505 * page/FrameView.cpp: 13506 (WebCore::FrameView::dispatchMouseEvent): 13507 * page/FrameView.h: 13508 13509 2006-03-16 Alexey Proskuryakov <ap (a] nypop.com> 13510 13511 Reviewed by Maciej. 13512 13513 - fix http://bugs.webkit.org/show_bug.cgi?id=4395 13514 REGRESSION: document.open doesn't clear the document 13515 13516 Test: fast/dom/Document/document-reopen.html 13517 Test: fast/dom/Document/doc-open-while-parsing.html 13518 13519 * dom/DocumentImpl.cpp: 13520 (WebCore::DocumentImpl::open): Only ignore open() while the frame is still loading the main resource. 13521 * page/Frame.cpp: 13522 (WebCore::Frame::isComplete): Added const specifier. 13523 (WebCore::Frame::isLoadingMainResource): New function. 13524 * page/Frame.h: 13525 13526 2006-03-15 Adele Peterson <adele (a] apple.com> 13527 13528 Reviewed by Eric. 13529 13530 - Fixes win32 build. 13531 13532 * page/Frame.cpp: (WebCore::Frame::autoscrollTimerFired): Calls isMouseButtonDown instead of CG function. 13533 * platform/MouseEvent.h: Added isMouseButtonDown 13534 * platform/mac/MouseEventMac.mm: (WebCore::MouseEvent::isMouseButtonDown): Calls CG function to get state of mouse button. 13535 * platform/win/TemporaryLinkStubs.cpp: (MouseEvent::isMouseButtonDown): Added stub. 13536 13537 2006-03-15 Eric Seidel <eseidel (a] apple.com> 13538 13539 Reviewed by geoff. 13540 13541 * platform/KeyEvent.h: Fix #define from QEvent_H to KeyEvent_H 13542 13543 2006-03-15 David Hyatt <hyatt (a] apple.com> 13544 13545 Fix the box-sizing layout test by stopping integer overflowing from 13546 occurring in the flexbox code. 13547 13548 Reviewed by beth 13549 13550 * rendering/render_flexbox.cpp: 13551 (khtml::RenderFlexibleBox::allowedChildFlex): 13552 13553 2006-03-15 Beth Dakin <bdakin (a] apple.com> 13554 13555 Reviewed by Eric 13556 13557 Fix for some leaks and intermittent broken pipes in the layout 13558 tests after check-in for http://bugs.webkit.org/ 13559 show_bug.cgi?id=4171. 13560 13561 * platform/StringImpl.cpp: 13562 (WebCore::StringImpl::capitalize): Call deleteQCharVector() for 13563 stringWithPrevious and make sure we don't walk off the end of 13564 stringWithPrevious when copying to capitalizedString. 13565 13566 2006-03-15 Adele Peterson <adele (a] apple.com> 13567 13568 Reviewed by Maciej. 13569 13570 Followup fix for previous checkin. 13571 http://bugs.webkit.org/show_bug.cgi?id=7114 13572 <rdar://problem/3695120> dragging to scroll doesn't work with overflow:auto/scroll/overlay areas 13573 13574 Many of the bugs related to the Radar bug have to do with autoscrolling in the RSS View. 13575 This fix walks the layer tree to find the first scrollable layer, so that autoscrolling will 13576 also work with nested layers, like those in the RSS View. 13577 13578 * bridge/mac/MacFrame.mm: (WebCore::MacFrame::khtmlMouseMoveEvent): 13579 13580 2006-03-15 Adele Peterson <adele (a] apple.com> 13581 13582 Reviewed by Maciej. 13583 13584 - Fix for http://bugs.webkit.org/show_bug.cgi?id=7114 13585 Dragging to scroll doesn't work for overflow areas 13586 13587 No test case. There doesn't appear to be a way to trigger the autoscroll with the EventSender. 13588 13589 * bridge/mac/MacFrame.mm: 13590 (WebCore::MacFrame::khtmlMouseMoveEvent): If we have a layer that can scroll, let the layer handle its autoscroll. 13591 Otherwise, call over the bridge to let AppKit scroll the view. 13592 (WebCore::MacFrame::khtmlMouseReleaseEvent): Stops the autoscroll timer. 13593 * page/Frame.cpp: 13594 (WebCore::Frame::khtmlMouseReleaseEvent): Stops the autoscroll timer. 13595 (WebCore::Frame::handleAutoscroll): Added. Saves the layer, and starts the timer. 13596 (WebCore::Frame::autoscrollTimerFired): Added. Calls autoscroll() on the layer. 13597 (WebCore::Frame::startAutoscrollTimer): Added. 13598 (WebCore::Frame::stopAutoscrollTimer): Added. 13599 * page/Frame.h: Added new autoscroll methods. 13600 * page/FramePrivate.h: (WebCore::FramePrivate::FramePrivate): Initialize m_autoscrollTimer and m_autoscrollLayer. 13601 * rendering/render_layer.cpp: 13602 (WebCore::RenderLayer::autoscroll): Calculates how much the layer should scroll, and actually scrolls. 13603 (WebCore::RenderLayer::shouldAutoscroll): If the layer has overflow then it should be able to scroll. 13604 Except for overflow:hidden areas that aren't editable. 13605 In the future, we may want to have a css property that indicates an overflow:hidden style that should also scroll. 13606 * rendering/render_layer.h: Added new autoscroll methods. 13607 13608 2006-03-14 Justin Garcia <justin.garcia (a] apple.com> 13609 13610 Reviewed by mjs 13611 13612 <http://bugs.webkit.org/show_bug.cgi?id=7578> 13613 TinyMCE: Implement execCommand CreateLink 13614 13615 Used ApplyStyleCommand so that creating a link from 13616 a selection doesn't change document structure. 13617 13618 * WebCore.xcodeproj/project.pbxproj: 13619 * editing/ApplyStyleCommand.cpp: 13620 (WebCore::ApplyStyleCommand::ApplyStyleCommand): 13621 (WebCore::ApplyStyleCommand::doApply): 13622 (WebCore::ApplyStyleCommand::removeInlineStyle): 13623 (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded): 13624 * editing/ApplyStyleCommand.h: 13625 * editing/CompositeEditCommand.cpp: 13626 (WebCore::CompositeEditCommand::applyStyle): 13627 * editing/CreateLinkCommand.cpp: Added. 13628 (WebCore::CreateLinkCommand::CreateLinkCommand): 13629 (WebCore::CreateLinkCommand::doApply): 13630 * editing/CreateLinkCommand.h: Added. 13631 * editing/jsediting.cpp: 13632 * page/Frame.cpp: 13633 (WebCore::Frame::computeAndSetTypingStyle): 13634 (WebCore::Frame::applyStyle): 13635 (WebCore::Frame::applyParagraphStyle): 13636 13637 2006-03-14 Beth Dakin <bdakin (a] apple.com> 13638 13639 Reviewed by Maciej 13640 13641 Fix for http://bugs.webkit.org/show_bug.cgi?id=4171 13642 This patch changes the word-break algorithm used to apply text- 13643 transform:capitalize to use a UBreakIterator. This fixes some 13644 existing edge cases we have in our text-transform:capitalize 13645 support and generally makes our results more consistent. 13646 13647 * platform/StringImpl.cpp: 13648 (WebCore::getWordBreakIterator): Returns a UBreakIterator for a 13649 given string of a given length. 13650 (WebCore::StringImpl::capitalize): Now uses the UBreakIterator to 13651 step between words and requires the previous character as input. 13652 * platform/StringImpl.h: Change the declaration of capitalize() to 13653 take the previous character as a parameter. 13654 * rendering/RenderText.cpp: 13655 (WebCore::RenderText::setText): Find the previous character and 13656 send it to StringImpl::capitalize() 13657 13658 2006-03-14 Justin Garcia <justin.garcia (a] apple.com> 13659 13660 Reviewed by adele 13661 13662 <http://bugs.webkit.org/show_bug.cgi?id=7770> 13663 Should only dispatch the khtmlTextInsertedEvent for high level editing operations 13664 13665 Dispatching this event for low level editing operations 13666 isn't necessary and causes a big performance regression. 13667 Also renamed the event because it's dispatched for changes 13668 other than just text insertion. 13669 13670 * dom/EventNames.h: 13671 * editing/EditCommand.cpp: 13672 (WebCore::EditCommand::apply): 13673 (WebCore::EditCommand::unapply): 13674 (WebCore::EditCommand::reapply): 13675 * khtml/html/HTMLTextFieldInnerElementImpl.cpp: 13676 (WebCore::HTMLTextFieldInnerElementImpl::defaultEventHandler): 13677 * page/Frame.cpp: 13678 (WebCore::dispatchKHTMLEditableContentChanged): 13679 (WebCore::Frame::appliedEditing): 13680 (WebCore::Frame::unappliedEditing): 13681 (WebCore::Frame::reappliedEditing): 13682 13683 2006-03-14 Darin Adler <darin (a] apple.com> 13684 13685 Reviewed by Eric. 13686 13687 - fix <rdar://problem/4478121> -[WebCoreFrameBridge finalize] crashes under GC 13688 13689 * bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge finalize]): 13690 Don't call setBridge(nil). 13691 13692 2006-03-14 Darin Adler <darin (a] apple.com> 13693 13694 - oops, didn't mean to check this in 13695 13696 * dom/dom_elementimpl.cpp: (WebCore::StyledElementImpl::parseMappedAttribute): 13697 Reverted nil-document check that I didn't mean to remove. 13698 13699 2006-03-14 Beth Dakin <bdakin (a] apple.com> 13700 13701 Reviewed by Hyatt 13702 13703 Fix for http://bugs.webkit.org/show_bug.cgi?id=6796 13704 This fix prevents infinite recursion when a block with overflow: 13705 auto can't decide if it needs scrollbars or not. This fix puts a 13706 guard in place in updateScrollInforAfterLayout that only allows you 13707 to re-layout if you are not currently laying out. 13708 13709 * rendering/render_layer.cpp: 13710 (WebCore::RenderLayer::RenderLayer): Initialize 13711 m_inOverflowRelayout to false. Fixed spacing too. 13712 (WebCore::RenderLayer::updateScrollInfoAfterLayout): Place guard 13713 around layout calls in overflow:auto case. 13714 * rendering/render_layer.h: Add m_inOverflowRelayout. 13715 13716 2006-03-14 Darin Adler <darin (a] apple.com> 13717 13718 Reviewed by Geoff and Eric. 13719 13720 - fix <http://bugs.webkit.org/show_bug.cgi?id=7765>, <rdar://problem/4474884> 13721 hasAttribute always returns false for uppercase attribute names like "STYLE" 13722 - re-add missing JavaScript binding for getAttributeNS 13723 - fixed handling of null namespace parameters in getAttributeNS and friends 13724 13725 Test: fast/dom/Element/attribute-uppercase.html 13726 13727 To match Gecko's behavior, the magic "lowercasing" of all attribute names 13728 is only done when calling DOM Level 1 functions that lack an NS suffix. 13729 The functions with an NS suffix are case sensitive, even in HTML documents. 13730 13731 * dom/NamedNodeMapImpl.h: Changed getNamedItem and removeNamedItem to be pure virtual 13732 functions instead of calling through to getNamedItemNS and removeNamedItemNS. 13733 13734 * dom/dom_elementimpl.h: Eliminated inline versions of non-NS functions that called 13735 the NS functions. They can't work that way any more since the lowercasing behavior 13736 is different. 13737 * dom/dom_elementimpl.cpp: 13738 (WebCore::ElementImpl::getAttribute): Added. Lowercases the name if the document 13739 is an HTML document, and then calls through to the qualified name version. Removed 13740 the null check since getDocument is guaranteed to never return 0 now that nodes 13741 hold a reference to their document. 13742 (WebCore::ElementImpl::getAttributeNS): Removed the lowercasing code. 13743 (WebCore::ElementImpl::setAttribute): More of the same. 13744 (WebCore::ElementImpl::setAttributeNS): Ditto. 13745 (WebCore::ElementImpl::removeAttribute): Ditto. 13746 (WebCore::ElementImpl::removeAttributeNS): Ditto. 13747 (WebCore::ElementImpl::getAttributeNode): Ditto. 13748 (WebCore::ElementImpl::getAttributeNodeNS): Ditto. 13749 (WebCore::ElementImpl::hasAttribute): Ditto. 13750 (WebCore::ElementImpl::hasAttributeNS): Ditto. 13751 (WebCore::NamedAttrMapImpl::getNamedItem): Ditto. 13752 (WebCore::NamedAttrMapImpl::getNamedItemNS): Ditto. 13753 (WebCore::NamedAttrMapImpl::removeNamedItem): Ditto. 13754 (WebCore::NamedAttrMapImpl::removeNamedItemNS): Ditto. 13755 (WebCore::StyledElementImpl::parseMappedAttribute): Removed another unneeded null 13756 check like the one mentioned above. 13757 13758 * dom/Element.idl: Set ConvertNullToNullString for all the namespaceURI 13759 parameters, since we don't want null to turn into "null". Added a semicolon 13760 to the end of the hasAttributeNS line -- was causing the next declaration to 13761 be eaten up (so getAttributeNS was completely broken). 13762 13763 * khtml/ecma/kjs_dom.cpp: (KJS::DOMNamedNodeMapProtoFunc::callAsFunction): 13764 Call valueToStringWithNullCheck to do the equivalent of ConvertNullToNullString 13765 for both getNamedItemNS and removeNamedItemNS. 13766 13767 * bindings/js/JSDOMCore.cpp: Touched so that the changes above will take effect. 13768 13769 2006-03-14 David Hyatt <hyatt (a] apple.com> 13770 13771 Fix for bug 7259, opacity performs badly. 13772 13773 Reviewed by mjs 13774 13775 Adding some tests in fast/opacity. 13776 13777 * rendering/RenderTableRow.h: 13778 (WebCore::RenderTableRow::requiresLayer): 13779 * rendering/render_layer.cpp: 13780 (WebCore::transparencyClipBox): 13781 (WebCore::RenderLayer::beginTransparencyLayers): 13782 (WebCore::RenderLayer::paintLayer): 13783 (WebCore::RenderLayer::intersectsDamageRect): 13784 (WebCore::RenderLayer::absoluteBoundingBox): 13785 * rendering/render_layer.h: 13786 (WebCore::RenderLayer::root): 13787 13788 2006-03-14 Eric Seidel <eseidel (a] apple.com> 13789 13790 Reviewed by mjs. 13791 13792 Fix Gif crasher. 13793 13794 * platform/image-decoders/gif/GIFImageReader.cpp: 13795 (GIFImageReader::do_lzw): Initialize array after new. 13796 13797 2006-03-14 Eric Seidel <eseidel (a] apple.com> 13798 13799 Reviewed by mjs. 13800 13801 Make MouseEvents aware of current scroll position. 13802 13803 * platform/win/ScrollViewWin.cpp: 13804 (WebCore::ScrollView::viewportToContents): 13805 (WebCore::ScrollView::contentsToViewport): 13806 13807 2006-03-13 Eric Seidel <eseidel (a] apple.com> 13808 13809 Reviewed by mjs. 13810 13811 Fix mouse events to be window-relative. 13812 13813 * platform/win/MouseEventWin.cpp: 13814 (WebCore::positionForEvent): 13815 (WebCore::globalPositionForEvent): 13816 (WebCore::MouseEvent::MouseEvent): 13817 13818 2006-03-13 Eric Seidel <eseidel (a] apple.com> 13819 13820 Reviewed by mjs. 13821 13822 Close DeviceContext leaks in Font code. 13823 Also add moveCursor stub to make maps.google.com not crash. 13824 13825 * platform/win/FontWin.cpp: 13826 (WebCore::getFontData): 13827 (WebCore::Font::floatWidth): 13828 (WebCore::Font::drawText): 13829 * platform/win/TemporaryLinkStubs.cpp: 13830 (Cursor::Cursor): 13831 (WebCore::moveCursor): 13832 13833 2006-03-13 Eric Seidel <eseidel (a] apple.com> 13834 13835 Reviewed by ggaren & TimH. 13836 13837 <rdar://problem/4473288> XSL file containing <xsl:include href="../Styles/EscapeString.xsl" /> fails to load file 13838 XML_DTD_NODE objects in the tree were causing loadChildSheets to 13839 fail to preload child stylesheets, this patch causes us to 13840 correctly ignore all nodes besides the first XML_ELEMENT_NODE at 13841 the root level when searching the tree for xsl:include statements 13842 to pre-load. 13843 13844 Test: fast/xsl/xslt-second-level-import.xml 13845 13846 * khtml/xsl/xsl_stylesheetimpl.cpp: 13847 (WebCore::XSLStyleSheetImpl::loadChildSheets): 13848 13849 2006-03-10 Rob Buis <buis (a] kde.org> 13850 13851 Reviewed by darin. Landed by eseidel. 13852 13853 Fix for http://bugs.webkit.org/show_bug.cgi?id=7666: 13854 dasharray on rounded rectangles is broken 13855 13856 Make sure the rounded rectangle is drawn clockwise, as outlined 13857 in the specification. 13858 13859 Test: svg/custom/dashArrayOrigin.svg 13860 13861 * kcanvas/KCanvasCreator.cpp: 13862 (WebCore::KCanvasCreator::createRoundedRectangle): 13863 13864 2006-03-12 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 13865 13866 Reviewed by Maciej, landed by ap. 13867 13868 - fix http://bugs.webkit.org/show_bug.cgi?id=5923 13869 REGRESSION: scrolling on Google maps continues after the mouse is 13870 released outside the window 13871 13872 Test: fast/events/drag-outside-window.html 13873 13874 * rendering/render_layer.cpp: 13875 (WebCore::RenderLayer::containsPoint): Always return true for the root 13876 object to ensure that mouse events occurring outside the window target 13877 the document. 13878 13879 2006-03-12 Alexey Proskuryakov <ap (a] nypop.com> 13880 13881 Reviewed by Maciej. 13882 13883 - Fix for http://bugs.webkit.org/show_bug.cgi?id=7735 13884 REGRESSION: crash on importing bookmarks 13885 13886 No test - only reproducible when Safari imports the bookmarks. 13887 13888 * dom/EventNames.cpp: 13889 (WebCore::EventNames::init): Initialize AtomicString before using it. 13890 * dom/QualifiedName.cpp: 13891 (WebCore::QualifiedName::init): Ditto. 13892 * khtml/html/htmlnames.cpp: 13893 (WebCore::HTMLNames::init): Ditto. 13894 * ksvg2/scripts/make_names.pl: Ditto. 13895 13896 2006-03-12 David Kilzer <ddkilzer (a] kilzer.net> 13897 13898 Reviewed by Darin, landed by ap. 13899 13900 - Fix for http://bugs.webkit.org/show_bug.cgi?id=7724 13901 Minor refactoring to HTMLParser::handleError() to remove duplicate code 13902 13903 Test: fast/invalid/missing-address-end-tag.html 13904 Test: fast/invalid/missing-dl-end-tag.html 13905 Test: fast/invalid/missing-dt-end-tag.html 13906 Test: fast/invalid/missing-font-end-tag.html 13907 13908 * khtml/html/htmlparser.cpp: 13909 (WebCore::HTMLParser::handleError): Refactored code. 13910 13911 2006-03-10 Darin Adler <darin (a] apple.com> 13912 13913 - fix Windows build 13914 13915 * bridge/win/FrameWin.h: Removed declaration of generateFrameName. 13916 13917 2006-03-10 Darin Adler <darin (a] apple.com> 13918 13919 Reviewed by Adele. 13920 13921 - removed some unused stuff from Frame and MacFrame 13922 13923 * page/Frame.h: Removed autoloadImages (the setter), enableMetaRefresh, 13924 setCharset, backgroundURL, findTextBegin, findTextNext, preloadStyleSheet, 13925 preloadScript, restored, onURL, selectionChanged, htmlError, openFile, 13926 updateActions, openURLInFrame, overURL, checkLinkSecurity, and cacheId. 13927 * page/FramePrivate.h: Removed m_restored, m_frameNameId, m_strSelectedURL, 13928 m_strSelectedURLTarget, m_bDnd, m_bClearing, m_bSecurityInQuestion, 13929 m_focusNodeRestored, m_focusNodeNumber, and m_newJSInterpreterExists. 13930 * page/Frame.cpp: 13931 (WebCore::Frame::didOpenURL): Removed use of m_restored, code to set 13932 m_bClearing. 13933 (WebCore::Frame::clear): Removed code to set m_bClearing and m_frameNameId. 13934 (WebCore::Frame::khtmlMousePressEvent): Removed code to set m_strSelectedURL 13935 and m_strSelectedURLTarget. 13936 13937 * bridge/mac/MacFrame.h: Removed scheduleHistoryNavigation and 13938 requestedURLString. 13939 * bridge/mac/MacFrame.mm: 13940 (WebCore::MacFrame::openURLFromPageCache): Removed use of m_restored. 13941 Removed unused requestedURLString. 13942 13943 * bridge/mac/WebCoreFrameBridge.h: Removed requestedURLString. 13944 13945 2006-03-10 Darin Adler <darin (a] apple.com> 13946 13947 - fix Windows build 13948 13949 * page/FrameTree.cpp: Add include of <stdarg.h>. 13950 13951 2006-03-10 Darin Adler <darin (a] apple.com> 13952 13953 Reviewed by Geoff. 13954 13955 - fix http://bugs.webkit.org/show_bug.cgi?id=3308 13956 Pop-up blocking blocks window.open for already open windows 13957 13958 - fix http://bugs.webkit.org/show_bug.cgi?id=7422 13959 Setting a frame name to the same value resets it to a generated one 13960 13961 - refactor frame-name-related functions into the FrameTree object 13962 13963 * WebCore.xcodeproj/project.pbxproj: Update for rename. 13964 * bridge/mac/MacFrame.h: Remove generateFrameName. 13965 * bridge/mac/MacFrame.mm: Ditto. 13966 * bridge/mac/PageMac.h: Added a declaration for WebCorePageBridge. 13967 13968 * bridge/mac/WebCoreFrameBridge.h: Remove _frameNamespace, generateFrameName, 13969 setFrameNamespace, frameNamespace. 13970 * bridge/mac/WebCoreFrameBridge.mm: 13971 (-[WebCoreFrameBridge childFrameNamed:]): Change to call the new child 13972 function on the FrameTree. 13973 (-[WebCoreFrameBridge findFrameNamed:]): Change to call the new find 13974 function on the FrameTree. 13975 (-[WebCoreFrameBridge RenderObject::nodeInfoAtPoint:]): Change since the 13976 contentPart function has been renamed to contentFrame. 13977 13978 * bridge/mac/WebCoreFrameNamespaces.h: Removed everything except for the 13979 one method still used on the WebKit side, framesInNamespace:. 13980 * bridge/mac/WebCoreFrameNamespaces.m: Renamed. 13981 * bridge/mac/WebCoreFrameNamespaces.mm: Added. Reimplemented the 13982 framesInNamespace method to use the namespace in WebCore::Page. 13983 13984 * bridge/mac/WebCorePageBridge.h: Added setGroupName and groupName. 13985 * bridge/mac/WebCorePageBridge.mm: 13986 (-[WebCorePageBridge setGroupName:]): Added. Calls through to Page. 13987 (-[WebCorePageBridge groupName]): Ditto. 13988 13989 * khtml/ecma/kjs_html.cpp: 13990 (KJS::HTMLDocument::namedItemGetter): Changed to call contentFrame by its new name. 13991 (KJS::HTMLElement::frameGetter): Ditto. 13992 (KJS::HTMLElement::iFrameGetter): Ditto. 13993 13994 * khtml/ecma/kjs_window.cpp: 13995 (KJS::Window::getValueProperty): Changed to call FrameTree::childCount 13996 instead of Frame::frames. 13997 (KJS::Window::childFrameGetter): Changed to call FrameTree::child 13998 instead of Frame::childFrameNamed. 13999 (KJS::Window::namedFrameGetter): Changed to call FrameTree::find 14000 instead of Frame::findFrame. 14001 (KJS::Window::indexGetter): Changed to call FrameTree::child 14002 instead of Frame::frames. 14003 (KJS::Window::getOwnPropertySlot): Changed to call FrameTree::child, 14004 FrameTree::find, and FrameTree::childCount instead of Frame::childFrameNamed, 14005 and Frame::findFrame, and Frame::frames. 14006 (KJS::WindowFunc::callAsFunction): Call FrameTree::find to check if the window 14007 is already open when considering whether to block a pop-up. 14008 (KJS::FrameArray::getValueProperty): Changed to call FrameTree::childCount 14009 instead of Frame::frames. 14010 (KJS::FrameArray::indexGetter): Changed to call FrameTree::child 14011 instead of Frame::frames. 14012 (KJS::FrameArray::nameGetter): Changed to call FrameTree::child 14013 instead of Frame::findFrame. 14014 (KJS::FrameArray::getOwnPropertySlot): Changed to call FrameTree::child, 14015 and FrameTree::childCount instead of Frame::findFrame and Frame::frames. 14016 14017 * khtml/html/html_baseimpl.h: 14018 * khtml/html/html_baseimpl.cpp: 14019 (WebCore::HTMLFrameElementImpl::isURLAllowed): Changed to call Page::frameCount 14020 instead of Frame::topLevelFrameCount. 14021 (WebCore::HTMLFrameElementImpl::openURL): Changed to call FrameTree::child 14022 instead of Frame::findFrame. 14023 (WebCore::HTMLFrameElementImpl::attach): Changed to call Page::incrementFrameCount 14024 instead of Frame::incrementFrameCount. Changed to call FrameTree::uniqueChildName 14025 instead of Frame::requestFrameName. 14026 (WebCore::HTMLFrameElementImpl::close): Changed to call Page::decrementFrameCount 14027 instead of Frame::decrementFrameCount. Changed to call FrameTree::child 14028 instead of Frame::findFrame. 14029 (WebCore::HTMLFrameElementImpl::contentFrame): Renamed from contentPart. Also 14030 changed to call FrameTree::child instead of Frame::findFrame. 14031 (WebCore::HTMLFrameElementImpl::contentDocument): Updated for name change of 14032 contentFrame from contentPart. 14033 (WebCore::HTMLIFrameElementImpl::attach): Changed to call Page::incrementFrameCount 14034 instead of Frame::incrementFrameCount. Changed to call FrameTree::uniqueChildName 14035 instead of Frame::requestFrameName. 14036 14037 * rendering/render_frames.cpp: (WebCore::isURLAllowed): Changed to call Page::frameCount 14038 instead of Frame::topLevelFrameCount. 14039 14040 * page/Frame.h: Removed frameNames, frames, childFrameNamed, findFrame, currentFrame, 14041 frameExists, incrementFrameCount, decrementFrameCount, topLevelFrameCount, 14042 generateFrameName, and requestFrameName functions. 14043 * page/Frame.cpp: (WebCore::Frame::requestFrame): Changed to use FrameTree::child 14044 instead of Frame::childFrameNamed. 14045 14046 * page/FrameTree.h: Changed name to an atomic string. Changed childCount to unsigned. 14047 Added isDescendantOf, traverseNext, child, find, uniqueChildName. 14048 * page/FrameTree.cpp: 14049 (WebCore::FrameTree::setName): Changed to call uniqueChildName to handle name 14050 duplication logic. 14051 (WebCore::FrameTree::uniqueChildName): Added. Checks for duplication and generates 14052 an appropriate frame name if there is a duplicate. 14053 (WebCore::FrameTree::child): Added. 14054 (WebCore::FrameTree::find): Added. 14055 (WebCore::FrameTree::isDescendantOf): Added. 14056 (WebCore::FrameTree::traverseNext): Added. 14057 14058 * page/Page.h: Added setGroupName, groupName, frameNamespace, incrementFrameCount, 14059 decrementFrameCount, and frameCount. 14060 * page/Page.cpp: 14061 (WebCore::Page::Page): Initialize m_frameCount to 0. 14062 (WebCore::Page::~Page): Call setGroupName to remove the page from any group it's in. 14063 (WebCore::Page::setGroupName): Added. 14064 (WebCore::Page::frameNamespace): Added. 14065 14066 * platform/win/TemporaryLinkStubs.cpp: Removed FrameWin::generateFrameName. 14067 14068 2006-03-10 Justin Garcia <justin.garcia (a] apple.com> 14069 14070 Reviewed by darin, harrison 14071 14072 ~3x speedup pasting plain text from the console 14073 14074 * dom/dom_position.cpp: 14075 (WebCore::Position::next): 14076 (WebCore::Position::atEnd): 14077 14078 2006-03-10 David Hyatt <hyatt (a] apple.com> 14079 14080 More refactoring. Split the FontData into cross-platform and 14081 platform-specific components. 14082 14083 Reviewed by eric 14084 14085 * WebCore.vcproj/WebCore/WebCore.vcproj: 14086 * platform/FontData.h: Added. 14087 (WebCore::FontData:::m_platformData): 14088 (WebCore::FontData::platformData): 14089 (WebCore::FontData::setMetrics): 14090 (WebCore::FontData::ascent): 14091 (WebCore::FontData::descent): 14092 (WebCore::FontData::xHeight): 14093 (WebCore::FontData::lineSpacing): 14094 * platform/FontPlatformData.h: Added. 14095 (WebCore::FontPlatformData::hfont): 14096 (WebCore::FontPlatformData::scaledFont): 14097 * platform/win/FontPlatformDataWin.cpp: Added. 14098 (WebCore::FontPlatformData::FontPlatformData): 14099 (WebCore::FontPlatformData::~FontPlatformData): 14100 * platform/win/FontWin.cpp: 14101 (WebCore::Font::floatWidth): 14102 (WebCore::Font::drawText): 14103 14104 2006-03-10 Maciej Stachowiak <mjs (a] apple.com> 14105 14106 Reviewed by Eric. 14107 14108 - fix win32 networking to properly use async load API 14109 14110 * platform/win/TransferJobWin.cpp: 14111 (WebCore::TransferJobWndProc): 14112 (WebCore::TransferJob::start): 14113 14114 2006-03-10 Eric Seidel <eseidel (a] apple.com> 14115 14116 Fix build. 14117 14118 * platform/win/FontWin.cpp: 14119 (WebCore::getFontData): 14120 * platform/win/TemporaryLinkStubs.cpp: 14121 14122 2006-03-10 Adele Peterson <adele (a] apple.com> 14123 14124 Reviewed by Tim Hatcher. 14125 14126 - fix for <rdar://problem/4469419> 14127 REGRESSION: RadioButtons are not checked in Safari when name attribute comes after checked attribute 14128 14129 Test: fast/forms/radio-attr-order.html 14130 14131 * khtml/html/HTMLInputElementImpl.cpp: (WebCore::HTMLInputElementImpl::parseMappedAttribute): 14132 When the name attribute gets parsed for radio buttons, if its supposed to be checked by default, call setChecked. 14133 Also, when the name changes on a checked button, we don't need to check that 14134 there's a form before removing it as the checked button for that group. 14135 That was an old check from when we required a form to keep track of checked buttons. 14136 14137 2006-03-10 Eric Seidel <eseidel (a] apple.com> 14138 14139 Reviewed by darin. 14140 14141 Add real ScrollViewWin implementation (fixes redraw bugs, adds ScrollBar support.) 14142 14143 * platform/ScrollView.h: 14144 * platform/Widget.h: 14145 * platform/win/FontWin.cpp: 14146 (WebCore::getCairoFont): Fix crasher. 14147 * platform/win/ScrollViewWin.cpp: 14148 (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate): 14149 (WebCore::ScrollView::ScrollView): 14150 (WebCore::ScrollView::~ScrollView): 14151 (WebCore::ScrollView::updateContents): 14152 (WebCore::ScrollView::visibleWidth): 14153 (WebCore::ScrollView::visibleHeight): 14154 (WebCore::ScrollView::setContentsPos): 14155 (WebCore::ScrollView::resizeContents): 14156 (WebCore::ScrollView::contentsX): 14157 (WebCore::ScrollView::contentsY): 14158 (WebCore::ScrollView::contentsWidth): 14159 (WebCore::ScrollView::contentsHeight): 14160 (WebCore::ScrollView::viewportToContents): 14161 (WebCore::ScrollView::contentsToViewport): 14162 (WebCore::ScrollView::scrollXOffset): 14163 (WebCore::ScrollView::scrollYOffset): 14164 (WebCore::ScrollView::scrollBy): 14165 (WebCore::ScrollView::hScrollBarMode): 14166 (WebCore::ScrollView::vScrollBarMode): 14167 (WebCore::ScrollView::suppressScrollBars): 14168 (WebCore::ScrollView::setHScrollBarMode): 14169 (WebCore::ScrollView::setVScrollBarMode): 14170 (WebCore::ScrollView::setScrollBarsMode): 14171 (WebCore::ScrollView::setStaticBackground): 14172 (WebCore::ScrollView::updateScrollInfo): 14173 (WebCore::ScrollView::updateScrollBars): 14174 * platform/win/TemporaryLinkStubs.cpp: 14175 (BrowserExtensionWin::goBackOrForward): 14176 (BrowserExtensionWin::setIconURL): 14177 (ScrollView::scrollPointRecursively): 14178 * platform/win/WidgetWin.cpp: 14179 (WebCore::Widget::windowHandle): mark as const 14180 14181 2006-03-10 David Hyatt <hyatt (a] apple.com> 14182 14183 Rename the m_renderer variable to m_dataSet now that the class name 14184 has changed. 14185 14186 Reviewed by adele 14187 14188 * platform/Font.cpp: 14189 (WebCore::m_wordSpacing): 14190 (WebCore::Font::Font): 14191 (WebCore::Font::operator=): 14192 (WebCore::Font::update): 14193 * platform/Font.h: 14194 * platform/FontDataSet.h: 14195 * platform/mac/FontMac.mm: 14196 (WebCore::Font::getWebCoreFont): 14197 (WebCore::Font::ascent): 14198 (WebCore::Font::descent): 14199 (WebCore::Font::lineSpacing): 14200 (WebCore::Font::xHeight): 14201 (WebCore::Font::isFixedPitch): 14202 (WebCore::Font::selectionRectForText): 14203 (WebCore::Font::drawText): 14204 (WebCore::Font::drawHighlightForText): 14205 (WebCore::Font::drawLineForText): 14206 (WebCore::Font::drawLineForMisspelling): 14207 (WebCore::Font::misspellingLineThickness): 14208 (WebCore::Font::floatWidth): 14209 (WebCore::Font::checkSelectionPoint): 14210 * platform/win/FontWin.cpp: 14211 (WebCore::FontData::FontData): 14212 (WebCore::FontData::~FontData): 14213 (WebCore::getFontData): 14214 (WebCore::FontDataSet::primaryFont): 14215 (WebCore::Font::floatWidth): 14216 (WebCore::Font::ascent): 14217 (WebCore::Font::descent): 14218 (WebCore::Font::xHeight): 14219 (WebCore::Font::lineSpacing): 14220 (WebCore::Font::isFixedPitch): 14221 (WebCore::Font::drawText): 14222 14223 2006-03-10 David Hyatt <hyatt (a] apple.com> 14224 14225 Rename FontRenderer to FontDataSet. 14226 14227 Reviewed by adele 14228 14229 * WebCore.xcodeproj/project.pbxproj: 14230 * platform/Font.cpp: 14231 (WebCore::Font::update): 14232 * platform/Font.h: 14233 * platform/FontDataSet.h: Added. 14234 * platform/FontRenderer.h: Removed. 14235 * platform/mac/FontMac.mm: 14236 (WebCore::FontDataSet::~FontDataSet): 14237 (WebCore::FontDataSet::getWebCoreFont): 14238 (WebCore::FontDataSet::getRenderer): 14239 (WebCore::FontDataSet::determinePitch): 14240 (WebCore::FontDataSet::invalidate): 14241 * platform/win/FontWin.cpp: 14242 (WebCore::getCairoFont): 14243 (WebCore::FontDataSet::~FontDataSet): 14244 (WebCore::FontDataSet::determinePitch): 14245 (WebCore::FontDataSet::invalidate): 14246 (WebCore::FontDataSet::primaryCairoFont): 14247 14248 2006-03-09 Justin Garcia <justin.garcia (a] apple.com> 14249 14250 Reviewed by adele 14251 14252 <http://bugs.webkit.org/show_bug.cgi?id=7692> 14253 Should use an iterator in CompositeEditCommand::doUnapply() 14254 14255 ~30% speedup of a big undo 14256 14257 * editing/CompositeEditCommand.cpp: 14258 (WebCore::CompositeEditCommand::doUnapply): 14259 (WebCore::CompositeEditCommand::doReapply): 14260 14261 2006-03-09 Adele Peterson <adele (a] apple.com> 14262 14263 Reviewed by Tim O. 14264 14265 Removed unnecessary alerts in TextIterator advance methods. 14266 We want to be able to use advance() even if the iterator is already at the end. 14267 14268 * editing/visible_text.cpp: 14269 (khtml::TextIterator::advance): remove assert since TextIterator will just do nothing if its already at the end. 14270 (khtml::CharacterIterator::advance): ditto. 14271 * rendering/RenderTextField.cpp: (WebCore::RenderTextField::visiblePositionForIndex): 14272 Since the asserts in the iterator are removed, we don't have to check for it.atEnd() before calling advance. 14273 14274 2006-03-09 David Hyatt <hyatt (a] apple.com> 14275 14276 Make text paint with the correct foreground color on Windows. 14277 Make the face validation check case insensitive. 14278 Force ClearType to be on for font rendering. 14279 14280 Reviewed by Tim Hatcher 14281 14282 * platform/win/FontWin.cpp: 14283 (WebCore::getCairoFont): 14284 (WebCore::Font::drawText): 14285 14286 2006-03-09 Adele Peterson <adele (a] apple.com> 14287 14288 Reviewed by Hyatt. 14289 14290 - Fix for http://bugs.webkit.org/show_bug.cgi?id=7675 14291 When new text fields change from visibility:hidden to visibility:visible, value doesn't display 14292 14293 Test: fast/forms/input-appearance-visibility.html 14294 14295 * rendering/RenderTextField.cpp: (WebCore::RenderTextField::setStyle): 14296 Sets the style directly on the children of the inner div. 14297 14298 2006-03-09 David Hyatt <hyatt (a] apple.com> 14299 14300 Make basic text rendering work on Win32. 14301 14302 Reviewed by eric 14303 14304 * WebCore.vcproj/WebCore/WebCore.vcproj: 14305 Add FontDescription.h to the Visual Studio project. 14306 14307 * bridge/win/FrameWin.cpp: 14308 (WebCore::FrameWin::FrameWin): 14309 Add some good default font settings to KHTMLSettings. 14310 14311 * platform/Font.cpp: 14312 (WebCore::Font::update): 14313 Renamed the FontRenderer method to invalidate, so that's what 14314 update calls now. 14315 14316 * platform/FontRenderer.h: 14317 * platform/mac/FontMac.mm: 14318 (WebCore::FontRenderer::~FontRenderer): 14319 (WebCore::FontRenderer::invalidate): 14320 Rename the update method to invalidate. Make sure the Mac 14321 font renderer releases its resources when it gets destroyed. 14322 14323 * platform/win/FontWin.cpp: 14324 (WebCore::CairoFont::CairoFont): 14325 (WebCore::CairoFont::~CairoFont): 14326 (WebCore::CairoFont::hfont): 14327 (WebCore::CairoFont::scaledFont): 14328 (WebCore::CairoFont::setMetrics): 14329 (WebCore::CairoFont::ascent): 14330 (WebCore::CairoFont::descent): 14331 (WebCore::CairoFont::xHeight): 14332 (WebCore::CairoFont::lineSpacing): 14333 Implement a new class called CairoFont that encapsulates 14334 the windows HFONT, the cairo font face, and the cairo scaled 14335 font. 14336 14337 (WebCore::getCairoFont): 14338 The method to look up a Cairo font. This will eventually use 14339 a hash, but for now it just always makes the fonts over and 14340 over again. 14341 14342 (WebCore:::m_pitch): 14343 (WebCore::FontRenderer::~FontRenderer): 14344 (WebCore::FontRenderer::determinePitch): 14345 (WebCore::FontRenderer::invalidate): 14346 More of the FontRenderer plumbing. 14347 14348 (WebCore::FontRenderer::primaryCairoFont): 14349 Returns the primary Cairo font for a family list. This is basically 14350 the first family that is present on the system. 14351 14352 (WebCore::Font::floatWidth): 14353 The width method uses GetTextExtentPoint32W for now. This 14354 is totally wrong and will eventually be replaced by Cairo 14355 code. 14356 14357 (WebCore::Font::ascent): 14358 (WebCore::Font::descent): 14359 (WebCore::Font::xHeight): 14360 (WebCore::Font::lineSpacing): 14361 (WebCore::Font::isFixedPitch): 14362 Accessors for the metrics and pitch info. 14363 14364 (WebCore::Font::drawText): 14365 Drawing of text. Uses TextOut and is also basically throwaway 14366 code. 14367 14368 * platform/win/TemporaryLinkStubs.cpp: 14369 (Font::checkSelectionPoint): 14370 Move the checkSelectionPoint method back to the link stubs. 14371 14372 2006-03-09 Justin Garcia <justin.garcia (a] apple.com> 14373 14374 Reviewed by harrison 14375 14376 Fixed formatting and changed functions to take in 14377 a const Selection& instead of a Selection. 14378 14379 * editing/ModifySelectionListLevelCommand.cpp: 14380 (WebCore::ModifySelectionListLevelCommand::canIncreaseSelectionListLevel): 14381 (WebCore::ModifySelectionListLevelCommand::canDecreaseSelectionListLevel): 14382 (WebCore::ModifySelectionListLevelCommand::increaseSelectionListLevel): 14383 (WebCore::ModifySelectionListLevelCommand::decreaseSelectionListLevel): 14384 (WebCore::modifySelectionListLevel): 14385 (WebCore::getStartEndListChildren): 14386 (WebCore::canIncreaseListLevel): 14387 (WebCore::canDecreaseListLevel): 14388 (WebCore::ModifySelectionListLevelCommand::increaseListLevel): 14389 (WebCore::ModifySelectionListLevelCommand::decreaseListLevel): 14390 * editing/ModifySelectionListLevelCommand.h: 14391 14392 2006-03-09 Adele Peterson <adele (a] apple.com> 14393 14394 Reviewed by Darin. 14395 14396 - Fix for http://bugs.webkit.org/show_bug.cgi?id=6814 14397 Implement selection methods for RenderTextField 14398 14399 Test: fast/forms/input-appearance-selection.html 14400 14401 * rendering/RenderTextField.cpp: 14402 (WebCore::RenderTextField::createDivStyle): removed extra space. 14403 (WebCore::RenderTextField::select): Removed checks for document and m_div since there should always be a document and 14404 m_div will be initialized as the renderer gets attached. 14405 (WebCore::RenderTextField::selectionStart): Calls indexForVisiblePosition. 14406 (WebCore::RenderTextField::selectionEnd): ditto. 14407 (WebCore::RenderTextField::setSelectionStart): calls setSelectionRange. 14408 (WebCore::RenderTextField::setSelectionEnd): ditto. 14409 (WebCore::RenderTextField::setSelectionRange): gets VisiblePositions for both indices, and sets the selection. 14410 (WebCore::RenderTextField::visiblePositionForIndex): Added helper method. 14411 (WebCore::RenderTextField::indexForVisiblePosition): Added helper method. 14412 * rendering/RenderTextField.h: Added new helper methods for selection. 14413 14414 2006-03-09 David Carson <dacarson (a] gmail.com> 14415 14416 Test: fast/canvas/fillrect_gradient.html 14417 14418 Reviewed by Darin. 14419 14420 - fix http://bugs.webkit.org/show_bug.cgi?id=6103 14421 Rectangles are not filled according to the Web Applications Working Draft 14422 14423 * khtml/ecma/kjs_html.cpp: (KJS::Context2DFunction::callAsFunction): 14424 Modified fillrect function to check and use a gradient if set. 14425 Builds a path to fill rects with a gradient. 14426 14427 2006-03-09 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 14428 14429 No test because this fixes an existing pixel test (and does not affect 14430 the render tree). 14431 14432 Reviewed by Maciej. 14433 14434 - fix http://bugs.webkit.org/show_bug.cgi?id=7664 14435 REGRESSION: tests that include numeric list markers fail in pixel mode 14436 14437 * platform/GraphicsContext.cpp: 14438 (WebCore::GraphicsContext::drawText): Restored AlignRight behavior. 14439 14440 2006-03-09 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 14441 14442 No test because we couldn't figure out how to write one. 14443 14444 Reviewed by Darin. 14445 14446 - fix http://bugs.webkit.org/show_bug.cgi?id=7680 14447 REGRESSION: Ellipsis painted over the chrome and in invalid contexts 14448 14449 * rendering/render_line.cpp: 14450 (WebCore::EllipsisBox::paint): Replaced call to Font::drawText with 14451 GraphicsContext::drawText, which checks the paintingDisabled flag. 14452 14453 2006-03-09 Maciej Stachowiak <mjs (a] apple.com> 14454 14455 Reviewed by Eric. 14456 14457 - make link clicks work by propagating them up to a client 14458 14459 * Viewer/ImageView.cpp: 14460 * bridge/win/FrameWin.cpp: 14461 * bridge/win/FrameWin.h: 14462 * platform/win/TemporaryLinkStubs.cpp: 14463 (FrameWin::incomingReferrer): 14464 14465 2006-03-09 Eric Seidel <eseidel (a] apple.com> 14466 14467 Reviewed by mjs. 14468 14469 Add support for Timers under 10ms. 14470 Fix random crashers due to multi-threaded loading. 14471 14472 * platform/TransferJob.h: 14473 * platform/TransferJobInternal.h: 14474 (WebCore::TransferJobInternal::TransferJobInternal): 14475 * platform/Widget.h: 14476 * platform/win/SharedTimerWin.cpp: 14477 (WebCore::TimerWindowWndProc): 14478 (WebCore::initializeOffScreenTimerWindow): 14479 (WebCore::setSharedTimerFireTime): 14480 * platform/win/TemporaryLinkStubs.cpp: 14481 (WebCore::TransferJob::assembleResponseHeaders): 14482 (WebCore::TransferJob::retrieveCharset): 14483 * platform/win/TransferJobWin.cpp: 14484 (WebCore::addToOutstandingJobs): 14485 (WebCore::removeFromOutstandingJobs): 14486 (WebCore::lookupTransferJob): 14487 (WebCore::TransferJobWndProc): 14488 (WebCore::initializeOffScreenTransferJobWindow): 14489 (WebCore::TransferJob::~TransferJob): 14490 (WebCore::transferJobStatusCallback): 14491 (WebCore::TransferJob::start): 14492 (WebCore::TransferJob::cancel): 14493 * platform/win/WidgetWin.cpp: 14494 14495 2006-03-08 Justin Garcia <justin.garcia (a] apple.com> 14496 14497 Reviewed by darin 14498 14499 <http://bugs.webkit.org/show_bug.cgi?id=7579> 14500 TinyMCE: Implement execCommand(insertImage, ...) 14501 14502 Implemented InsertImage and also changed paste to use a single 14503 rule for when to remove junk that remains after node removal. 14504 14505 * editing/ReplaceSelectionCommand.cpp: 14506 (WebCore::ReplaceSelectionCommand::removeNodeAndPruneAncestors): 14507 (WebCore::ReplaceSelectionCommand::doApply): 14508 (WebCore::ReplaceSelectionCommand::removeLinePlaceholderIfNeeded): 14509 * editing/ReplaceSelectionCommand.h: 14510 * editing/htmlediting.cpp: 14511 * editing/jsediting.cpp: 14512 14513 2006-03-08 Eric Seidel <eseidel (a] apple.com> 14514 14515 Reviewed by hyatt. 14516 14517 Fix build script to properly copy dll files. 14518 14519 * WebCore.vcproj/WebCore/build-generated-files.sh: 14520 14521 2006-03-08 Rob Buis <buis (a] kde.org> 14522 14523 Reviewed by eseidel. 14524 14525 Fix for http://bugs.webkit.org/show_bug.cgi?id=6899 SVG <rect> does not respect display: none 14526 14527 For svg elements that can render, call StyledElementImpl::rendererIsNeeded 14528 to decide whether the element should render. In particular this way 14529 any setting of display="none" is handled. 14530 14531 * ksvg2/svg/SVGAElementImpl.h: 14532 (WebCore::SVGAElementImpl::rendererIsNeeded): 14533 * ksvg2/svg/SVGCircleElementImpl.h: 14534 (WebCore::SVGCircleElementImpl::rendererIsNeeded): 14535 * ksvg2/svg/SVGEllipseElementImpl.h: 14536 (WebCore::SVGEllipseElementImpl::rendererIsNeeded): 14537 * ksvg2/svg/SVGForeignObjectElementImpl.h: 14538 (WebCore::SVGForeignObjectElementImpl::rendererIsNeeded): 14539 * ksvg2/svg/SVGGElementImpl.h: 14540 (WebCore::SVGGElementImpl::rendererIsNeeded): 14541 * ksvg2/svg/SVGImageElementImpl.h: 14542 (WebCore::SVGImageElementImpl::rendererIsNeeded): 14543 * ksvg2/svg/SVGLineElementImpl.h: 14544 (WebCore::SVGLineElementImpl::rendererIsNeeded): 14545 * ksvg2/svg/SVGMarkerElementImpl.h: 14546 (WebCore::SVGMarkerElementImpl::rendererIsNeeded): 14547 * ksvg2/svg/SVGMaskElementImpl.h: 14548 (WebCore::SVGMaskElementImpl::rendererIsNeeded): 14549 * ksvg2/svg/SVGPathElementImpl.h: 14550 (WebCore::SVGPathElementImpl::rendererIsNeeded): 14551 * ksvg2/svg/SVGPatternElementImpl.h: 14552 (WebCore::SVGPatternElementImpl::rendererIsNeeded): 14553 * ksvg2/svg/SVGPolyElementImpl.h: 14554 (WebCore::SVGPolyElementImpl::rendererIsNeeded): 14555 * ksvg2/svg/SVGRectElementImpl.h: 14556 (WebCore::SVGRectElementImpl::rendererIsNeeded): 14557 * ksvg2/svg/SVGSVGElementImpl.h: 14558 (WebCore::SVGSVGElementImpl::rendererIsNeeded): 14559 * ksvg2/svg/SVGSwitchElementImpl.h: 14560 (WebCore::SVGSwitchElementImpl::rendererIsNeeded): 14561 * ksvg2/svg/SVGTSpanElementImpl.h: 14562 (WebCore::SVGTSpanElementImpl::rendererIsNeeded): 14563 * ksvg2/svg/SVGTextElementImpl.h: 14564 (WebCore::SVGTextElementImpl::rendererIsNeeded): 14565 * ksvg2/svg/SVGUseElementImpl.h: 14566 (WebCore::SVGUseElementImpl::rendererIsNeeded): 14567 14568 2006-03-08 Eric Seidel <eseidel (a] apple.com> 14569 14570 Reviewed by mjs. 14571 14572 Add stubs to allow JavaScript-enabled WebCore to not crash. 14573 Add ScreenWin implementation. 14574 Add alert() support. 14575 14576 * WebCore.vcproj/WebCore/WebCore.vcproj: 14577 * bridge/win/FrameWin.cpp: 14578 (WebCore::FrameWin::runJavaScriptAlert): 14579 (WebCore::FrameWin::runJavaScriptConfirm): 14580 * platform/win/ScreenWin.cpp: Added. 14581 (WebCore::monitorInfoForWidget): 14582 (WebCore::WebCore::screenRect): 14583 (WebCore::WebCore::screenDepth): 14584 (WebCore::WebCore::usableScreenRect): 14585 * platform/win/TemporaryLinkStubs.cpp: 14586 (FrameWin::canUndo): 14587 (FrameWin::runJavaScriptPrompt): 14588 (FrameWin::canPaste): 14589 (WebCore::setCookies): 14590 (WebCore::cookies): 14591 (WebCore::cookiesEnabled): 14592 (PlugInInfoStore::createPluginInfoForPluginAtIndex): 14593 (PlugInInfoStore::pluginCount): 14594 (WebCore::refreshPlugins): 14595 (FrameWin::clearUndoRedoOperations): 14596 (FrameWin::incomingReferrer): 14597 14598 2006-03-08 Darin Adler <darin (a] apple.com> 14599 14600 Reviewed by Maciej. 14601 14602 - fix another instance of the bug I just fixed in the Macintosh-specific code path 14603 14604 * platform/image-decoders/gif/GIFImageReader.h: Remove not-so-useful 100ms constant. 14605 * platform/image-decoders/gif/GIFImageReader.cpp: (GIFImageReader::read): 14606 Use the correct rule for minimum frame durations. 14607 14608 2006-03-08 Maciej Stachowiak <mjs (a] apple.com> 14609 14610 Reviewed by Eric. 14611 14612 - very rough implementation of networking in TransferJob for windows 14613 14614 * platform/TransferJob.h: 14615 * platform/TransferJobInternal.h: 14616 (WebCore::TransferJobInternal::TransferJobInternal): 14617 * platform/win/TransferJobWin.cpp: 14618 (WebCore::transferJobStatusCallback): 14619 (WebCore::TransferJob::start): 14620 14621 2006-03-08 Maciej Stachowiak <mjs (a] apple.com> 14622 14623 Reviewed by Darin. 14624 14625 - fix win32 build 14626 14627 * platform/win/FontWin.cpp: 14628 (WebCore::Font::drawText): 14629 (WebCore::Font::drawHighlightForText): 14630 * platform/win/TemporaryLinkStubs.cpp: 14631 (GraphicsContext::clearFocusRing): 14632 (GraphicsContext::selectedTextBackgroundColor): 14633 (Font::selectionRectForText): 14634 14635 2006-03-08 Darin Adler <darin (a] apple.com> 14636 14637 Reviewed by Maciej. 14638 14639 - fix one more thing from http://bugs.webkit.org/show_bug.cgi?id=7528 14640 REGRESSION: GIF animation speeds are wrong on a page with many animated GIFs 14641 14642 No layout test because I don't know how to test animated GIF speed. 14643 14644 * platform/mac/ImageSourceMac.cpp: (WebCore::ImageSource::frameDurationAtIndex): 14645 Use the correct rule for minimum frame durations. It's a bit non-intuitive, so 14646 I made the comment more explicit. The old code in WebKit had this rule. 14647 14648 2006-03-08 David Hyatt <hyatt (a] apple.com> 14649 14650 Make GraphicsContext call into Font to draw all text and eliminate 14651 all knowledge of WebTextRenderers from it. 14652 14653 Reviewed by darin 14654 14655 * platform/Font.h: 14656 * platform/GraphicsContext.cpp: 14657 (WebCore::GraphicsContext::drawText): 14658 (WebCore::GraphicsContext::drawHighlightForText): 14659 (WebCore::GraphicsContext::drawLineForText): 14660 (WebCore::GraphicsContext::drawLineForMisspelling): 14661 (WebCore::GraphicsContext::misspellingLineThickness): 14662 * platform/GraphicsContext.h: 14663 (WebCore::GraphicsContext::platformContext): 14664 * platform/cairo/GraphicsContextCairo.cpp: 14665 (WebCore::GraphicsContext::platformContext): 14666 * platform/mac/FontMac.mm: 14667 (WebCore::Font::drawText): 14668 (WebCore::Font::drawHighlightForText): 14669 (WebCore::Font::drawLineForText): 14670 (WebCore::Font::drawLineForMisspelling): 14671 (WebCore::Font::misspellingLineThickness): 14672 * platform/mac/GraphicsContextMac.mm: 14673 * platform/win/FontWin.cpp: 14674 (WebCore::Font::drawText): 14675 * rendering/InlineTextBox.cpp: 14676 (WebCore::InlineTextBox::paint): 14677 (WebCore::InlineTextBox::paintSelection): 14678 (WebCore::InlineTextBox::paintMarkedTextBackground): 14679 (WebCore::InlineTextBox::paintTextMatchMarker): 14680 14681 2006-03-08 Darin Adler <darin (a] apple.com> 14682 14683 Reviewed by Hyatt. 14684 14685 - fixed super-fast animation of many animated GIFs 14686 14687 No layout test because I don't know how to test animated GIF speed. 14688 14689 * platform/mac/ImageSourceMac.cpp: (WebCore::ImageSource::frameDurationAtIndex): 14690 Always take the minimum duration into account, even if there's some kind of failure 14691 getting the duration from the GIF. 14692 14693 2006-03-07 Darin Adler <darin (a] apple.com> 14694 14695 Reviewed by Anders. 14696 14697 - fix http://bugs.webkit.org/show_bug.cgi?id=7655 14698 unwanted output while running layout tests 14699 14700 * khtml/xsl/xsl_stylesheetimpl.cpp: (WebCore::XSLStyleSheetImpl::parseString): 14701 Pass XML_PARSE_NOERROR and XML_PARSE_NOWARNING. We don't want errors and warnings 14702 to be logged to stdout or stderr. If we later decide we want the error messages, 14703 then we should do the additional work to put them into the web page or the 14704 console (along with the JavaScript errors). 14705 14706 * platform/ArrayImpl.cpp: (WebCore::ArrayImpl::resize): Add a preflight to protect 14707 against integer overflow due to large array size. Noticed this while looking into 14708 the malloc error message. 14709 14710 2006-03-07 Darin Adler <darin (a] apple.com> 14711 14712 Reviewed by Adele. 14713 14714 - fix http://bugs.webkit.org/show_bug.cgi?id=7647 14715 Crash when typing into text contols 14716 14717 I missed a couple places that were still saying KWQWidgetHolder 14718 in the change I landed late last night. 14719 14720 * kwq/KWQTextArea.h: 14721 * kwq/KWQTextArea.mm: 14722 * kwq/KWQTextField.h: 14723 Changed them all to say WebCoreWidgetHolder. 14724 14725 2006-03-07 Eric Seidel <eseidel (a] apple.com> 14726 14727 Reviewed by hyatt. 14728 14729 Fix cursor support on win32. 14730 14731 * platform/win/WidgetWin.cpp: 14732 (WebCore::Widget::setCursor): 14733 14734 2006-03-07 Eric Seidel <eseidel (a] apple.com> 14735 14736 Reviewed by hyatt. 14737 14738 Fix basic text support. 14739 14740 * WebCore.vcproj/WebCore/WebCore.vcproj: 14741 * platform/cairo/GraphicsContextCairo.cpp: 14742 (WebCore::GraphicsContext::drawText): 14743 14744 2006-03-07 Dave Hyatt <hyatt (a] apple.com> 14745 14746 Eliminate the unused parameters of the QString version of drawText. 14747 14748 Reviewed by eric 14749 14750 * platform/GraphicsContext.h: 14751 * platform/cairo/GraphicsContextCairo.cpp: 14752 (WebCore::GraphicsContext::drawText): 14753 * platform/mac/GraphicsContextMac.mm: 14754 (WebCore::GraphicsContext::drawText): 14755 * rendering/render_image.cpp: 14756 (WebCore::RenderImage::paint): 14757 * rendering/render_list.cpp: 14758 (WebCore::RenderListMarker::paint): 14759 14760 2006-03-07 Eric Seidel <eseidel (a] apple.com> 14761 14762 Reviewed by hyatt. 14763 14764 Add very basic text support. 14765 Sort a few more stubs. 14766 14767 * WebCore.vcproj/WebCore/WebCore.vcproj: 14768 * platform/cairo/GraphicsContextCairo.cpp: 14769 (WebCore::GraphicsContext::font): 14770 (WebCore::GraphicsContext::setFont): 14771 (WebCore::GraphicsContext::drawText): 14772 * platform/win/FontWin.cpp: Added. 14773 (WebCore::Font::drawText): 14774 * platform/win/TemporaryLinkStubs.cpp: 14775 (QComboBox::focusPolicy): 14776 (ScrollView::scrollXOffset): 14777 (Font::isFixedPitch): 14778 (Path::boundingRect): 14779 14780 2006-03-07 Adele Peterson <adele (a] apple.com> 14781 14782 Reviewed by Hyatt. 14783 14784 - Fix for http://bugs.webkit.org/show_bug.cgi?id=7319 14785 Can't see caret at the end of a contenteditable div with overflow:hidden 14786 14787 No tests added since I don't think the blinking caret will show up in our tests. 14788 14789 * rendering/RenderBlock.cpp: 14790 (WebCore::RenderBlock::rightmostPosition): When calculating the rightmostPosition for editable blocks, 14791 we need to account for the caret that can be drawn 1 px past the last child inline box. 14792 14793 2006-03-07 David Kilzer <ddkilzer (a] kilzer.net> 14794 14795 Reviewed by Darin. 14796 14797 - Fix for http://bugs.webkit.org/show_bug.cgi?id=3905 14798 Missing </title> makes page blank 14799 14800 Test: fast/js/exception-linenums-in-html-1.html 14801 Test: fast/js/exception-linenums-in-html-2.html 14802 Test: fast/js/missing-title-end-tag-js.html 14803 Test: fast/tokenizer/missing-title-end-tag-1.html 14804 Test: fast/tokenizer/missing-title-end-tag-2.html 14805 14806 * khtml/html/htmlparser.cpp: 14807 (WebCore::HTMLParser::handleError): Add check for missing </title> tag and handle 14808 this condition if identified. 14809 * khtml/html/htmltokenizer.cpp: 14810 (WebCore::HTMLTokenizer::parseTag): If parseSpecial() consumes the rest of the 14811 document looking for a </title> tag, reset the state of the tokenizer and 14812 retokenize with no special handling for <title>. The parser will handle the 14813 missing </title> tag in HTMLParser::handleError(). 14814 * platform/SegmentedString.cpp: 14815 (WebCore::SegmentedString::SegmentedString): Added copy constructor. 14816 (WebCore::SegmentedString::operator=): Added assignment operator. Previously the 14817 compiler was generating a default method for the assignment operator, but it did 14818 not handle m_currentChar properly. 14819 * platform/SegmentedString.h: Added prototypes for copy constructor and 14820 assignment operator. 14821 14822 2006-03-07 Eric Seidel <eseidel (a] apple.com> 14823 14824 Fix win32 link stubs. 14825 14826 * platform/win/TemporaryLinkStubs.cpp: 14827 (WebCore::searchableIndexIntroduction): 14828 (WebCore::setCookies): 14829 (WebCore::cookies): 14830 (WebCore::cookiesEnabled): 14831 (WebCore::findNextSentenceFromIndex): 14832 (WebCore::findSentenceBoundary): 14833 (WebCore::findNextWordFromIndex): 14834 (WebCore::findWordBoundary): 14835 (WebCore::submitButtonDefaultLabel): 14836 (WebCore::inputElementAltText): 14837 (WebCore::resetButtonDefaultLabel): 14838 (WebCore::defaultLanguage): 14839 14840 2006-03-07 Darin Adler <darin (a] apple.com> 14841 14842 Reviewed by Adele, except for the first change listed. 14843 14844 - fix recently-introduced bug that GuardMalloc found while I was debugging my other change 14845 14846 * rendering/render_frames.cpp: (WebCore::RenderPart::~RenderPart): 14847 Set m_widget to 0 before calling deref so we don't end up trying to do unwanted work. 14848 14849 - removed 10 more files from KWQ 14850 14851 * ForwardingHeaders/klocale.h: Removed. 14852 14853 * khtml/misc/helper.cpp: Removed. 14854 * khtml/misc/helper.h: Removed. 14855 14856 * kwq/KWQCollection.h: Removed. 14857 * kwq/KWQKCookieJar.h: Removed. 14858 * kwq/KWQKCookieJar.mm: Removed. 14859 * kwq/KWQKLocale.h: Removed. 14860 * kwq/KWQKLocale.mm: Removed. 14861 * kwq/KWQKURL.h: Removed. 14862 * kwq/KWQKURL.mm: Removed. 14863 * kwq/KWQTextUtilities.h: Removed. 14864 * kwq/KWQTextUtilities.mm: Removed. 14865 * kwq/KWQView.h: Removed. 14866 14867 * platform/CookieJar.h: Added. 14868 * platform/Language.h: Added. 14869 * platform/LocalizedStrings.h: Added. 14870 * platform/TextBoundaries.h: Added. 14871 * platform/mac/CookieJar.mm: Added. 14872 * platform/mac/Language.mm: Added. 14873 * platform/mac/LocalizedStringsMac.mm: Added. 14874 * platform/mac/TextBoundaries.mm: Added. 14875 * platform/mac/WebCoreWidgetHolder.h: Added. 14876 14877 * WebCore.xcodeproj/project.pbxproj: Updated for removed and added files. 14878 * WebCore.vcproj/WebCore/WebCore.vcproj: Updated for removed and added files. 14879 14880 * bridge/mac/WebCoreFrameBridge.mm: Updated includes. 14881 (-[WebCoreFrameBridge elementForView:]): Changed KWQWidgetHolder to WebCoreWidgetHolder. 14882 14883 * editing/visible_units.cpp: 14884 (WebCore::previousWordPositionBoundary): 14885 (WebCore::nextWordPositionBoundary): 14886 (WebCore::previousSentencePositionBoundary): 14887 (WebCore::nextSentencePositionBoundary): 14888 Call TextBoundaries.h functions instead of helper.h ones. 14889 14890 * khtml/ecma/kjs_navigator.cpp: (KJS::Navigator::getValueProperty): 14891 * ksvg2/svg/SVGTestsImpl.cpp: (WebCore::SVGTestsImpl::isValid): 14892 Changed to call defaultLanguage; cleaned up formatting. 14893 14894 * khtml/html/HTMLFormElementImpl.cpp: Removed stray comment. 14895 14896 * khtml/html/html_documentimpl.cpp: 14897 (WebCore::HTMLDocumentImpl::cookie): 14898 (WebCore::HTMLDocumentImpl::setCookie): 14899 Call CookieJar.h functions. 14900 14901 * css/css_valueimpl.cpp: 14902 * css/cssparser.cpp: 14903 * css/cssstyleselector.cpp: 14904 * dom/DocumentImpl.cpp: 14905 * dom/dom_position.cpp: 14906 * khtml/ecma/kjs_window.cpp: 14907 * khtml/html/HTMLInputElementImpl.cpp: 14908 * khtml/html/html_headimpl.cpp: 14909 * khtml/html/htmlparser.cpp: 14910 * khtml/misc/decoder.cpp: 14911 * ksvg2/svg/SVGDocumentImpl.cpp: 14912 * kwq/KWQComboBox.mm: 14913 * kwq/KWQKSSLKeyGen.mm: 14914 * kwq/KWQListBox.mm: 14915 * kwq/KWQListImpl.cpp: 14916 * kwq/KWQListImpl.h: 14917 * kwq/KWQScrollBar.mm: 14918 * kwq/KWQSlider.mm: 14919 * kwq/KWQTextField.mm: 14920 * kwq/KWQValueList.h: 14921 * loader/DocLoader.cpp: 14922 * page/Frame.cpp: 14923 * page/FrameView.cpp: 14924 * platform/mac/WidgetMac.mm: 14925 (WebCore::Widget::beforeMouseDown): 14926 (WebCore::Widget::afterMouseDown): 14927 * rendering/render_applet.cpp: 14928 * rendering/render_form.cpp: 14929 * rendering/render_image.cpp: 14930 * rendering/render_list.cpp: 14931 Updated includes and protocol names. 14932 14933 * khtml/html/htmltokenizer.cpp: (WebCore::HTMLTokenizer::write): Remove 14934 QT_VERSION code. 14935 * platform/QString.h: Remove QT_VERSION. 14936 14937 * kwq/KWQPtrList.h: Change to no longer use QPtrCollection. 14938 14939 * kwq/KWQRenderTreeDebug.h: 14940 * kwq/KWQRenderTreeDebug.cpp: (externalRepresentation): 14941 Remove unused debuggingRenderTree boolean. 14942 14943 2006-03-07 Eric Seidel <eseidel (a] apple.com> 14944 14945 Reviewed by darin. 14946 14947 * platform/mac/GraphicsContextMac.mm: Add Widget.h to fix no-svg build. 14948 14949 2006-03-06 Eric Seidel <eseidel (a] apple.com> 14950 14951 Reviewed by hyatt. 14952 14953 Make spinneret run again, fix webview to support dynamic resize. 14954 14955 * platform/win/TemporaryLinkStubs.cpp: 14956 (Widget::setDrawingAlpha): 14957 * platform/win/WidgetWin.cpp: 14958 (WebCore::Widget::Widget): 14959 (WebCore::Widget::setClient): 14960 (WebCore::Widget::client): 14961 (WebCore::Widget::frameGeometry): 14962 14963 2006-03-06 Eric Seidel <eseidel (a] apple.com> 14964 14965 Reviewed by darin. 14966 14967 Fix win32 build. 14968 14969 * platform/win/TemporaryLinkStubs.cpp: 14970 (QScrollBar::QScrollBar): 14971 (QTextEdit::setAlignment): 14972 (Widget::client): 14973 (Widget::setClient): 14974 (QLineEdit::setAlignment): 14975 14976 2006-03-06 Beth Dakin <bdakin (a] apple.com> 14977 14978 Reviewed by Darin. 14979 14980 Fix for http://bugs.webkit.org/show_bug.cgi?id=7566 (also 14981 <rdar://problem/4467128> ). Must call update() on a Font before 14982 attempting to use it because the FontRenderer is not created until 14983 update() is called. 14984 14985 * kwq/KWQListBox.mm: 14986 (QListBox::sizeForNumberOfLines): Call update() 14987 (-[KWQTableView drawRow:clipRect:]): Call update() 14988 14989 2006-03-06 Darin Adler <darin (a] apple.com> 14990 14991 Reviewed by Adele. 14992 14993 - http://bugs.webkit.org/show_bug.cgi?id=7564 14994 remove QObject, QGuardedPtr, slots, and signals 14995 14996 I had written a detailed change log entry, but I lost it! 14997 I'm too annoyed to write one all over again. 14998 14999 * ForwardingHeaders/qguardedptr.h: Removed. 15000 * ForwardingHeaders/qobject.h: Removed. 15001 15002 * kwq/KWQGuardedPtr.cpp: Removed. 15003 * kwq/KWQGuardedPtr.h: Removed. 15004 * kwq/KWQNamespace.h: Removed. 15005 * kwq/KWQObject.cpp: Removed. 15006 * kwq/KWQObject.h: Removed. 15007 * kwq/KWQSignal.cpp: Removed. 15008 * kwq/KWQSignal.h: Removed. 15009 * kwq/KWQSlot.cpp: Removed. 15010 * kwq/KWQSlot.h: Removed. 15011 15012 * platform/WidgetClient.h: Added. 15013 15014 * WebCore.xcodeproj/project.pbxproj: Updated for removed and added files. 15015 * WebCore.vcproj/WebCore/WebCore.vcproj: Ditto. 15016 15017 * bindings/js/JSDOMCore.cpp: Touched. 15018 * bindings/js/JSDOMEvents.cpp: Ditto. 15019 15020 * bridge/BrowserExtension.h: 15021 (WebCore::BrowserExtension::~BrowserExtension): 15022 * bridge/mac/WebCoreFrameBridge.mm: 15023 (-[WebCoreFrameBridge elementForView:]): 15024 * dom/CDATASectionImpl.cpp: 15025 (WebCore::CDATASectionImpl::cloneNode): 15026 * dom/DocumentImpl.cpp: 15027 (WebCore::DocumentImpl::~DocumentImpl): 15028 * dom/DocumentImpl.h: 15029 * kcanvas/device/KRenderingDevice.h: 15030 * khtml/ecma/kjs_css.cpp: 15031 (KJS::DOMCSSStyleDeclaration::put): 15032 * khtml/ecma/kjs_window.cpp: 15033 (KJS::FrameArray::indexGetter): 15034 (KJS::FrameArray::nameGetter): 15035 * khtml/html/html_documentimpl.cpp: 15036 (WebCore::HTMLDocumentImpl::createTokenizer): 15037 * khtml/html/htmlparser.cpp: 15038 (WebCore::HTMLParser::HTMLParser): 15039 (WebCore::HTMLParser::insertNode): 15040 (WebCore::HTMLParser::handleError): 15041 (WebCore::HTMLParser::commentCreateErrorCheck): 15042 (WebCore::HTMLParser::noscriptCreateErrorCheck): 15043 (WebCore::HTMLParser::isInline): 15044 (WebCore::HTMLParser::finished): 15045 * khtml/html/htmlparser.h: 15046 * khtml/html/htmltokenizer.cpp: 15047 (WebCore::HTMLTokenizer::HTMLTokenizer): 15048 (WebCore::HTMLTokenizer::scriptHandler): 15049 (WebCore::HTMLTokenizer::scriptExecution): 15050 (WebCore::HTMLTokenizer::parseComment): 15051 (WebCore::HTMLTokenizer::parseTag): 15052 (WebCore::HTMLTokenizer::stopParsing): 15053 (WebCore::HTMLTokenizer::timerFired): 15054 (WebCore::HTMLTokenizer::processToken): 15055 (WebCore::parseHTMLDocumentFragment): 15056 * khtml/html/htmltokenizer.h: 15057 * kwq/KWQComboBox.h: 15058 * kwq/KWQComboBox.mm: 15059 (-[KWQPopUpButton setPopulatingMenu:QComboBox:::]): 15060 (QComboBox::itemSelected): 15061 (-[KWQPopUpButton becomeFirstResponder]): 15062 (-[KWQPopUpButton resignFirstResponder]): 15063 * kwq/KWQFileButton.h: 15064 (KWQFileButton::filename): 15065 * kwq/KWQFileButton.mm: 15066 (KWQFileButton::KWQFileButton): 15067 (KWQFileButton::filenameChanged): 15068 (-[KWQFileButtonAdapter filenameChanged:]): 15069 (-[KWQFileButtonAdapter focusChanged:]): 15070 (-[KWQFileButtonAdapter clicked]): 15071 * kwq/KWQLineEdit.h: 15072 * kwq/KWQLineEdit.mm: 15073 (QLineEdit::QLineEdit): 15074 (QLineEdit::setAlignment): 15075 (KWQNSTextAlignment): 15076 * kwq/KWQListBox.h: 15077 (QListBox::changingSelection): 15078 * kwq/KWQListBox.mm: 15079 (QListBox::QListBox): 15080 (-[KWQTableView becomeFirstResponder]): 15081 (-[KWQTableView resignFirstResponder]): 15082 (-[KWQTableView tableViewSelectionDidChange:]): 15083 * kwq/KWQScrollBar.h: 15084 (WebCore::): 15085 (QScrollBar::orientation): 15086 * kwq/KWQScrollBar.mm: 15087 (-[KWQScrollBar initWithQScrollBar:]): 15088 (QScrollBar::QScrollBar): 15089 (QScrollBar::valueChanged): 15090 (QScrollBar::scroll): 15091 * kwq/KWQSlider.h: 15092 * kwq/KWQSlider.mm: 15093 (-[KWQSlider mouseDown:]): 15094 (-[KWQSlider slide:]): 15095 (-[KWQSlider becomeFirstResponder]): 15096 (-[KWQSlider resignFirstResponder]): 15097 (QSlider::QSlider): 15098 (QSlider::sliderValueChanged): 15099 (QSlider::dimensions): 15100 * kwq/KWQTextArea.mm: 15101 (-[KWQTextAreaTextView textViewDidChangeSelection:]): 15102 (-[KWQTextAreaTextView textDidChange:]): 15103 (-[KWQTextAreaTextView becomeFirstResponder]): 15104 (-[KWQTextAreaTextView resignFirstResponder]): 15105 (-[KWQTextAreaTextView mouseDown:]): 15106 (-[KWQTextAreaTextView dispatchHTMLEvent:]): 15107 * kwq/KWQTextEdit.h: 15108 * kwq/KWQTextEdit.mm: 15109 (QTextEdit::QTextEdit): 15110 (QTextEdit::setAlignment): 15111 * kwq/KWQTextField.mm: 15112 (-[KWQTextFieldController action:]): 15113 (-[KWQTextFieldController controlTextDidEndEditing:]): 15114 (-[KWQTextFieldController controlTextDidChange:]): 15115 (-[KWQTextFieldController textChanged]): 15116 (-[KWQTextFieldController textView:didHandleEvent:]): 15117 (-[KWQTextFieldController setHasFocus:]): 15118 (-[KWQTextFieldController textViewDidChangeSelection:]): 15119 * loader/CachedObject.h: 15120 * page/Frame.cpp: 15121 (WebCore::Frame::Frame): 15122 (WebCore::Frame::~Frame): 15123 (WebCore::Frame::setOpener): 15124 (WebCore::Frame::nodeForWidget): 15125 (WebCore::Frame::disconnectOwnerRenderer): 15126 * page/Frame.h: 15127 * page/FramePrivate.h: 15128 (WebCore::FramePrivate::FramePrivate): 15129 * page/FrameView.cpp: 15130 (WebCore::FrameView::~FrameView): 15131 * platform/Brush.h: 15132 * platform/Pen.h: 15133 * platform/Widget.cpp: 15134 (WebCore::Widget::isFrameView): 15135 * platform/Widget.h: 15136 (WebCore::): 15137 * platform/mac/GraphicsContextMac.mm: 15138 (WebCore::GraphicsContext::drawText): 15139 * platform/mac/WidgetMac.mm: 15140 (WebCore::Widget::Widget): 15141 (WebCore::Widget::focusPolicy): 15142 (WebCore::Widget::sendConsumedMouseUp): 15143 (WebCore::Widget::setClient): 15144 (WebCore::Widget::client): 15145 * rendering/InlineTextBox.cpp: 15146 (WebCore::InlineTextBox::operator delete): 15147 * rendering/render_applet.cpp: 15148 (WebCore::RenderApplet::createWidgetIfNecessary): 15149 * rendering/render_form.cpp: 15150 (WebCore::RenderFormElement::clicked): 15151 (WebCore::RenderFormElement::textAlignment): 15152 (WebCore::RenderLineEdit::RenderLineEdit): 15153 (WebCore::RenderLineEdit::selectionChanged): 15154 (WebCore::RenderLineEdit::returnPressed): 15155 (WebCore::RenderLineEdit::performSearch): 15156 (WebCore::RenderLineEdit::valueChanged): 15157 (WebCore::RenderFileButton::RenderFileButton): 15158 (WebCore::RenderFileButton::returnPressed): 15159 (WebCore::RenderFileButton::valueChanged): 15160 (WebCore::RenderLegend::RenderLegend): 15161 (WebCore::RenderSelect::RenderSelect): 15162 (WebCore::RenderSelect::updateFromElement): 15163 (WebCore::RenderSelect::valueChanged): 15164 (WebCore::RenderSelect::selectionChanged): 15165 (WebCore::RenderSelect::createListBox): 15166 (WebCore::RenderTextArea::RenderTextArea): 15167 (WebCore::RenderTextArea::valueChanged): 15168 (WebCore::RenderTextArea::selectionChanged): 15169 (WebCore::RenderSlider::RenderSlider): 15170 (WebCore::RenderSlider::valueChanged): 15171 * rendering/render_form.h: 15172 (WebCore::RenderFormElement::element): 15173 (WebCore::RenderLineEdit::element): 15174 (WebCore::RenderFileButton::element): 15175 (WebCore::RenderFileButton::isEditable): 15176 (WebCore::RenderSelect::element): 15177 (WebCore::RenderTextArea::element): 15178 (WebCore::RenderSlider::element): 15179 * rendering/render_frames.cpp: 15180 (WebCore::RenderPart::RenderPart): 15181 (WebCore::RenderPart::~RenderPart): 15182 (WebCore::RenderPart::setFrame): 15183 (WebCore::RenderPart::setWidget): 15184 (WebCore::RenderPart::deleteWidget): 15185 (WebCore::RenderFrame::RenderFrame): 15186 (WebCore::RenderPartObject::RenderPartObject): 15187 (WebCore::RenderPartObject::layout): 15188 * rendering/render_frames.h: 15189 * rendering/render_layer.cpp: 15190 (WebCore::RenderLayer::RenderLayer): 15191 (WebCore::RenderLayer::~RenderLayer): 15192 (WebCore::RenderLayer::valueChanged): 15193 (WebCore::RenderLayer::setHasHorizontalScrollbar): 15194 (WebCore::RenderLayer::setHasVerticalScrollbar): 15195 (WebCore::RenderLayer::hitTest): 15196 * rendering/render_layer.h: 15197 (WebCore::RenderLayer::parent): 15198 (WebCore::RenderLayer::previousSibling): 15199 (WebCore::RenderLayer::nextSibling): 15200 (WebCore::RenderLayer::firstChild): 15201 (WebCore::RenderLayer::lastChild): 15202 * rendering/render_list.cpp: 15203 (WebCore::RenderListMarker::paint): 15204 * rendering/render_replaced.cpp: 15205 (WebCore::RenderWidget::RenderWidget): 15206 (WebCore::RenderWidget::destroy): 15207 (WebCore::RenderWidget::~RenderWidget): 15208 (WebCore::RenderWidget::setWidget): 15209 (WebCore::RenderWidget::layout): 15210 (WebCore::RenderWidget::sendConsumedMouseUp): 15211 (WebCore::RenderWidget::focusIn): 15212 (WebCore::RenderWidget::focusOut): 15213 (WebCore::RenderWidget::scrollToVisible): 15214 (WebCore::RenderWidget::isVisible): 15215 (WebCore::RenderWidget::element): 15216 (WebCore::RenderWidget::deleteWidget): 15217 * rendering/render_replaced.h: 15218 * xml/xmlhttprequest.cpp: 15219 (WebCore::requestsByDocument): 15220 (WebCore::addToRequestsByDocument): 15221 (WebCore::removeFromRequestsByDocument): 15222 (WebCore::XMLHttpRequest::getResponseText): 15223 (WebCore::XMLHttpRequest::getResponseXML): 15224 (WebCore::XMLHttpRequest::XMLHttpRequest): 15225 (WebCore::XMLHttpRequest::~XMLHttpRequest): 15226 (WebCore::XMLHttpRequest::callReadyStateChangeListener): 15227 (WebCore::XMLHttpRequest::urlMatchesDocumentDomain): 15228 (WebCore::XMLHttpRequest::open): 15229 (WebCore::XMLHttpRequest::send): 15230 (WebCore::XMLHttpRequest::abort): 15231 (WebCore::XMLHttpRequest::overrideMIMEType): 15232 (WebCore::XMLHttpRequest::setRequestHeader): 15233 (WebCore::XMLHttpRequest::getRequestHeader): 15234 (WebCore::XMLHttpRequest::getAllResponseHeaders): 15235 (WebCore::XMLHttpRequest::getResponseHeader): 15236 (WebCore::XMLHttpRequest::getSpecificHeader): 15237 (WebCore::XMLHttpRequest::responseIsXML): 15238 (WebCore::XMLHttpRequest::getStatus): 15239 (WebCore::XMLHttpRequest::getStatusText): 15240 (WebCore::XMLHttpRequest::receivedAllData): 15241 (WebCore::XMLHttpRequest::receivedRedirect): 15242 (WebCore::XMLHttpRequest::receivedData): 15243 (WebCore::XMLHttpRequest::cancelRequests): 15244 (WebCore::XMLHttpRequest::detachRequests): 15245 * xml/xmlhttprequest.h: 15246 15247 2006-03-06 Eric Seidel <eseidel (a] apple.com> 15248 15249 Reviewed by beth. 15250 15251 Reorganize link stubs (alphabetically). 15252 Stub out Path methods to make cnn.com work. 15253 15254 * platform/win/TemporaryLinkStubs.cpp: 15255 (FrameView::viewportToGlobal): 15256 (FrameView::updateBorder): 15257 (FrameView::isFrameView): 15258 (FrameView::topLevelWidget): 15259 (QScrollBar::~QScrollBar): 15260 (QScrollBar::setSteps): 15261 (QScrollBar::scroll): 15262 (QScrollBar::QScrollBar): 15263 (QScrollBar::setValue): 15264 (QScrollBar::setKnobProportion): 15265 (QListBox::QListBox): 15266 (QListBox::setSelected): 15267 (QListBox::sizeForNumberOfLines): 15268 (QListBox::isSelected): 15269 (QListBox::appendItem): 15270 (QListBox::doneAppendingItems): 15271 (ScrollView::scrollXOffset): 15272 (QComboBox::focusPolicy): 15273 (QTextEdit::QTextEdit): 15274 (QTextEdit::~QTextEdit): 15275 (QTextEdit::textWithHardLineBreaks): 15276 (QTextEdit::sizeWithColumnsAndRows): 15277 (QTextEdit::setColors): 15278 (QTextEdit::setFont): 15279 (QTextEdit::setWritingDirection): 15280 (QTextEdit::checksDescendantsForFocus): 15281 (QTextEdit::selectionStart): 15282 (QTextEdit::hasSelectedText): 15283 (QTextEdit::setReadOnly): 15284 (QTextEdit::setDisabled): 15285 (QTextEdit::setLineHeight): 15286 (QTextEdit::setSelectionStart): 15287 (QTextEdit::text): 15288 (QTextEdit::setWordWrap): 15289 (QTextEdit::setAlignment): 15290 (QTextEdit::getCursorPosition): 15291 (QTextEdit::setSelectionRange): 15292 (Widget::enableFlushDrawing): 15293 (Widget::isEnabled): 15294 (Widget::focusPolicy): 15295 (Widget::disableFlushDrawing): 15296 (Widget::setIsSelected): 15297 (Widget::unlockDrawingFocus): 15298 (KJavaAppletWidget::KJavaAppletWidget): 15299 (ScrollView::scrollPointRecursively): 15300 (ScrollView::scrollBy): 15301 (QLineEdit::selectAll): 15302 (QLineEdit::addSearchResult): 15303 (QLineEdit::selectionStart): 15304 (QLineEdit::hasSelectedText): 15305 (QLineEdit::selectedText): 15306 (QLineEdit::setAutoSaveName): 15307 (QLineEdit::checksDescendantsForFocus): 15308 (QLineEdit::setMaxResults): 15309 (GraphicsContext::GraphicsContext): 15310 (GraphicsContext::addFocusRingRect): 15311 (GraphicsContext::drawLineForMisspelling): 15312 (GraphicsContext::drawFocusRing): 15313 (GraphicsContext::selectedTextBackgroundColor): 15314 (GraphicsContext::drawHighlightForText): 15315 (GraphicsContext::misspellingLineThickness): 15316 (GraphicsContext::addRoundedRectClip): 15317 (QSlider::QSlider): 15318 (QSlider::sizeHint): 15319 (QSlider::setValue): 15320 (QSlider::setMaxValue): 15321 (QSlider::~QSlider): 15322 (QSlider::setFont): 15323 (QListBox::setFont): 15324 (QListBox::~QListBox): 15325 (QListBox::setSelectionMode): 15326 (QListBox::setEnabled): 15327 (QListBox::clear): 15328 (QListBox::checksDescendantsForFocus): 15329 (KWQFileButton::KWQFileButton): 15330 (KWQFileButton::click): 15331 (KWQFileButton::sizeForCharacterWidth): 15332 (KWQFileButton::frameGeometry): 15333 (KWQFileButton::setFilename): 15334 (KWQFileButton::baselinePosition): 15335 (KWQFileButton::setFrameGeometry): 15336 (QSlider::focusPolicy): 15337 (QListBox::focusPolicy): 15338 (Cursor::Cursor): 15339 (MouseEvent::MouseEvent): 15340 (KWQKCookieJar::cookieEnabled): 15341 (WebCore::screenDepth): 15342 (WebCore::usableScreenRect): 15343 (FrameWin::createPlugin): 15344 (ScrollView::resizeContents): 15345 (ScrollView::visibleHeight): 15346 (ScrollView::visibleWidth): 15347 (ScrollView::setContentsPos): 15348 (ScrollView::contentsHeight): 15349 (ScrollView::contentsWidth): 15350 (ScrollView::inWindow): 15351 (Path::~Path): 15352 (Path::Path): 15353 (Path::contains): 15354 (Path::translate): 15355 (Path::boundingRect): 15356 (Path::operator=): 15357 15358 2006-03-03 Justin Garcia <justin.garcia (a] apple.com> 15359 15360 Reviewed by darin 15361 15362 <http://bugs.webkit.org/show_bug.cgi?id=6844> 15363 elementAtPoint returns the list when the point is over a list marker 15364 15365 Call RenderObject::setInnerNode(), which sets both the 15366 innerNode and the innerNonSharedNode. 15367 15368 * rendering/render_list.cpp: 15369 (WebCore::RenderListItem::nodeAtPoint): 15370 * rendering/render_list.h: 15371 15372 2006-03-05 Darin Adler <darin (a] apple.com> 15373 15374 * WebCore.vcproj/WebCore/WebCore.vcproj: Removed a lot of long-ago-deleted files 15375 from the kwq directory. 15376 15377 2006-03-05 Darin Adler <darin (a] apple.com> 15378 15379 Reviewed by Maciej. 15380 15381 - moved all the remnants of the public C++ DOM API out of khtml/dom 15382 - changed from "int" to "ExceptionCode" for DOM exceptions 15383 - removed unused CSS_HTML_RELATIVE 15384 - changed offsetInCharacters to be a member function of NodeImpl 15385 - changed DOM functions that take a NodeType to use NodeType instead of 15386 unsigned short for clarity (will still be unsigned short in bindings) 15387 - changed exception constants so they can be used directly in the 15388 implementation code (added in the offsets for different types of exceptions) 15389 - replaced the eventListenerType function with an isHTMLEventListener function 15390 - got rid of EventListenerEvent, which is a synonym for EventImpl* 15391 - eliminated handleEventImpl, whish is now the same as handleEvent 15392 15393 - did other preparation for the "remove Impl suffix" renaming 15394 (tested by using a script that does the renaming) 15395 15396 * khtml/dom/css_rule.h: Removed. 15397 * khtml/dom/css_stylesheet.h: Removed. 15398 * khtml/dom/css_value.h: Removed. 15399 * khtml/dom/dom2_events.cpp: Removed. 15400 * khtml/dom/dom2_events.h: Removed. 15401 * khtml/dom/dom2_range.h: Removed. 15402 * khtml/dom/dom2_traversal.cpp: Removed. 15403 * khtml/dom/dom2_traversal.h: Removed. 15404 * khtml/dom/dom_exception.h: Removed. 15405 * khtml/dom/dom_node.h: Removed. 15406 15407 * dom/EventListener.h: Added. 15408 * dom/ExceptionCode.h: Added. 15409 15410 * WebCore+SVG/kdom.h: Removed NodeType and ExceptionCodes 15411 * WebCore+SVG/kdomevents.h: Removed. 15412 15413 * WebCore.xcodeproj/project.pbxproj: Updated for file changes. 15414 * WebCore.vcproj/WebCore/WebCore.vcproj: Ditto. 15415 15416 * bindings/scripts/CodeGeneratorJS.pm: Removed unneeded DOM:: prefix. Updated file 15417 names and exception prefix for changes in DOM exceptions. 15418 15419 * bindings/js/JSDOMCore.cpp: Touched to cause auto-generated code to be 15420 recompiled. We need to get this fixed! 15421 * bindings/js/JSDOMEvents.cpp: Ditto. 15422 15423 * dom/Attr.idl: 15424 * dom/CharacterData.idl: 15425 * dom/DOMImplementation.idl: 15426 * dom/DocumentType.idl: 15427 * dom/Element.idl: 15428 * dom/Entity.idl: 15429 * dom/MutationEvent.idl: 15430 * dom/Notation.idl: 15431 * dom/ProcessingInstruction.idl: 15432 * dom/Text.idl: 15433 * dom/WheelEvent.idl: 15434 Touched all IDL files so that changes in CodeGeneratorJS.pm would take effect. 15435 Added license headers. 15436 15437 * bindings/objc/DOM.mm: Fixed garbled license agreement. Updated includes. 15438 Changed from a single "using namespace WebCore" to individual using statements 15439 because of the imminent conflict between DOMImplementation in Objective C 15440 and WebCore::DOMImplementation (currently has an Impl suffix). Added a typedef 15441 for WebCore::DOMImplementationImpl. Changed to use ExceptionCode instead of int. 15442 15443 * bindings/objc/DOMCSS.h: Removed DOMCSSException and the special CSS exception 15444 codes. This is a feature of DOM Level 1 only. In DOM Level 2 these were eliminated 15445 and use basic DOM exception codes instead. We might have to do something for binary 15446 compatibility eventually, but perhaps not. 15447 15448 * bindings/objc/DOMCSS.mm: 15449 * bindings/objc/DOMEvents.mm: 15450 * bindings/objc/DOMEventsInternal.h: 15451 * bindings/objc/DOMHTML.mm: 15452 * bindings/objc/DOMHTMLInternal.h: 15453 * bindings/objc/DOMViews.mm: 15454 * bindings/objc/DOMViewsInternal.h: 15455 Fixed garbled license agreements. 15456 Changed to use ExceptionCode instead of int and name the variable "ec". 15457 15458 * bindings/objc/DOMInternal.h: Changed addDOMWrapperImpl to take NSObject* instead 15459 of id. This helps with overload resolution when addDOMWrapperImpl is renamed to be 15460 addDOMWrapper. Changed ALLOW_DOM_CAST to always use "class" in from of the type name 15461 of the WebCore class. This helps work around what seems like a bug in namespace support 15462 in Objective-C mode, although the bug only happens after the "remove Impl" renaming. 15463 * bindings/objc/DOMInternal.mm: 15464 (getDOMWrapperImpl): Changed to use HashMap. 15465 (addDOMWrapperImpl): Ditto. 15466 (removeDOMWrapper): Ditto. 15467 (raiseDOMException): Update to use new names for exception number ranges. 15468 15469 * bridge/mac/WebCoreFrameBridge.mm: 15470 * khtml/ecma/xmlserializer.cpp: 15471 * kwq/KWQAccObject.mm: 15472 Removed unneeded includes. 15473 15474 * css/css_ruleimpl.h: Moved "rule type" into this header. 15475 15476 * dom/CommentImpl.h: 15477 * dom/CommentImpl.cpp: (WebCore::CommentImpl::offsetInCharacters): Added. Returns true. 15478 15479 * khtml/ecma/XSLTProcessor.cpp: (KJS::XSLTProcessorProtoFunc::callAsFunction): 15480 Changed this around so we don't have a local variable named docImpl. 15481 15482 * khtml/ecma/kjs_binding.cpp: (KJS::setDOMException): Updated for new form of exception 15483 constants. 15484 15485 * khtml/ecma/kjs_events.h: 15486 * khtml/ecma/kjs_events.cpp: 15487 (KJS::JSAbstractEventListener::handleEvent): Changed to no longer use EventListenerEvent. 15488 (KJS::JSAbstractEventListener::isHTMLEventListener): Added. 15489 15490 * rendering/RenderTextField.h: Updated includes. Tweaked the code formatting of 15491 InputMutationListener. (Might be unnecessary since this class might be deleted soon.) 15492 15493 * bridge/mac/MacFrame.mm: 15494 * css/css_computedstyle.cpp: 15495 * css/css_computedstyle.h: 15496 * css/css_ruleimpl.cpp: 15497 * css/css_stylesheetimpl.cpp: 15498 * css/css_stylesheetimpl.h: 15499 * css/css_valueimpl.cpp: 15500 * css/css_valueimpl.cpp: 15501 * css/css_valueimpl.h: 15502 * css/css_valueimpl.h: 15503 * css/cssparser.cpp: 15504 * css/cssstyleselector.cpp: 15505 * dom/CDATASectionImpl.cpp: 15506 * dom/CDATASectionImpl.h: 15507 * dom/CharacterDataImpl.cpp: 15508 * dom/CharacterDataImpl.h: 15509 * dom/ContainerNodeImpl.cpp: 15510 * dom/DOMImplementationImpl.cpp: 15511 * dom/DocumentFragmentImpl.cpp: 15512 * dom/DocumentFragmentImpl.h: 15513 * dom/DocumentImpl.cpp: 15514 * dom/DocumentImpl.h: 15515 * dom/DocumentTypeImpl.cpp: 15516 * dom/DocumentTypeImpl.h: 15517 * dom/NamedNodeMapImpl.h: 15518 * dom/NodeImpl.cpp: 15519 * dom/NodeImpl.h: 15520 * dom/NodeListImpl.cpp: 15521 * dom/TextImpl.cpp: 15522 * dom/TextImpl.h: 15523 * dom/dom2_eventsimpl.cpp: 15524 * dom/dom2_eventsimpl.h: 15525 * dom/dom2_rangeimpl.cpp: 15526 * dom/dom2_rangeimpl.h: 15527 * dom/dom2_traversalimpl.cpp: 15528 * dom/dom2_traversalimpl.h: 15529 * dom/dom_elementimpl.cpp: 15530 * dom/dom_elementimpl.h: 15531 * dom/dom_position.cpp: 15532 * dom/dom_xmlimpl.cpp: 15533 * dom/dom_xmlimpl.h: 15534 * dom/xml_tokenizer.cpp: 15535 * editing/AppendNodeCommand.cpp: 15536 * editing/ApplyStyleCommand.cpp: 15537 * editing/CompositeEditCommand.cpp: 15538 * editing/DeleteFromTextNodeCommand.cpp: 15539 * editing/InsertIntoTextNodeCommand.cpp: 15540 * editing/InsertLineBreakCommand.cpp: 15541 * editing/InsertNodeBeforeCommand.cpp: 15542 * editing/InsertParagraphSeparatorCommand.cpp: 15543 * editing/JoinTextNodesCommand.cpp: 15544 * editing/MergeIdenticalElementsCommand.cpp: 15545 * editing/RemoveNodeAttributeCommand.cpp: 15546 * editing/RemoveNodeCommand.cpp: 15547 * editing/ReplaceSelectionCommand.cpp: 15548 * editing/Selection.cpp: 15549 * editing/SelectionController.cpp: 15550 * editing/SelectionController.h: 15551 * editing/SetNodeAttributeCommand.cpp: 15552 * editing/SplitElementCommand.cpp: 15553 * editing/SplitTextNodeCommand.cpp: 15554 * editing/VisiblePosition.cpp: 15555 * editing/WrapContentsInDummySpanCommand.cpp: 15556 * editing/htmlediting.cpp: 15557 * editing/markup.cpp: 15558 * editing/visible_text.cpp: 15559 * khtml/ecma/kjs_binding.h: 15560 * khtml/ecma/kjs_css.cpp: 15561 * khtml/ecma/kjs_dom.cpp: 15562 * khtml/ecma/kjs_html.cpp: 15563 * khtml/ecma/kjs_range.cpp: 15564 * khtml/ecma/kjs_traversal.cpp: 15565 * khtml/ecma/kjs_traversal.h: 15566 * khtml/ecma/kjs_window.cpp: 15567 * khtml/html/HTMLElementImpl.cpp: 15568 * khtml/html/HTMLOptionElementImpl.cpp: 15569 * khtml/html/HTMLOptionElementImpl.h: 15570 * khtml/html/HTMLOptionsCollectionImpl.cpp: 15571 * khtml/html/HTMLSelectElementImpl.cpp: 15572 * khtml/html/HTMLTextAreaElementImpl.cpp: 15573 * khtml/html/html_documentimpl.cpp: 15574 * khtml/html/html_documentimpl.h: 15575 * khtml/html/html_headimpl.cpp: 15576 * khtml/html/html_tableimpl.cpp: 15577 * khtml/html/html_tableimpl.h: 15578 * khtml/html/htmlparser.cpp: 15579 * khtml/xbl/xbl_tokenizer.cpp: 15580 * khtml/xsl/xsl_stylesheetimpl.cpp: 15581 * ksvg2/misc/SVGDocumentExtensions.cpp: 15582 * ksvg2/svg/SVGAnimationElementImpl.cpp: 15583 * ksvg2/svg/SVGDOMImplementationImpl.cpp: 15584 * ksvg2/svg/SVGDOMImplementationImpl.h: 15585 * ksvg2/svg/SVGDocumentImpl.cpp: 15586 * ksvg2/svg/SVGDocumentImpl.h: 15587 * ksvg2/svg/SVGElementImpl.cpp: 15588 * ksvg2/svg/SVGLengthImpl.cpp: 15589 * ksvg2/svg/SVGLocatableImpl.cpp: 15590 * ksvg2/svg/SVGPolyElementImpl.cpp: 15591 * ksvg2/svg/SVGSVGElementImpl.cpp: 15592 * ksvg2/svg/SVGStyleElementImpl.cpp: 15593 * ksvg2/svg/SVGStyleElementImpl.h: 15594 * ksvg2/svg/SVGUseElementImpl.cpp: 15595 * page/Frame.cpp: 15596 * page/FrameView.cpp: 15597 * rendering/render_object.cpp: 15598 * xml/xmlhttprequest.cpp: 15599 Changed to use ExceptionCode instead of int and name the variable "ec". 15600 Also updated use of exception codes and other constants to get them from 15601 their new locations. 15602 15603 2006-03-06 Eric Seidel <eseidel (a] apple.com> 15604 15605 Reviewed by mjs. 15606 15607 Fix more pages (apple.com, yahoo.com) by returning empty error image. 15608 Empty a couple more stubs and clean up stub style a little. 15609 15610 * platform/cairo/ImageCairo.cpp: 15611 (WebCore::Image::loadResource): 15612 * platform/win/TemporaryLinkStubs.cpp: 15613 (QListBox::isSelected): 15614 (QSlider::sizeHint): 15615 (QScrollBar::~QScrollBar): 15616 (FrameWin::getObjectInstanceForWidget): 15617 (FrameWin::getEmbedInstanceForWidget): 15618 (FrameWin::recordFormValue): 15619 (FrameWin::getAppletInstanceForWidget): 15620 (FrameWin::passMouseDownEventToWidget): 15621 (FrameWin::passWheelEventToChildWidget): 15622 (FrameWin::createPlugin): 15623 (BrowserExtensionWin::createNewWindow): 15624 (Path::Path): 15625 (QLineEdit::~QLineEdit): 15626 (QLineEdit::setLiveSearch): 15627 (QComboBox::~QComboBox): 15628 15629 2006-03-06 Eric Seidel <eseidel (a] apple.com> 15630 15631 Reviewed by andersca. 15632 15633 Empty enough stubs to make apple.com load. 15634 15635 * platform/win/TemporaryLinkStubs.cpp: 15636 (QTextEdit::sizeWithColumnsAndRows): 15637 (GraphicsContext::misspellingLineThickness): 15638 (QTextEdit::selectAll): 15639 (QTextEdit::setSelectionStart): 15640 (Widget::unlockDrawingFocus): 15641 (QLineEdit::setAutoSaveName): 15642 (ScrollView::scrollYOffset): 15643 (KWQFileButton::setFilename): 15644 (QListBox::setFont): 15645 (GraphicsContext::beginTransparencyLayer): 15646 (GraphicsContext::endTransparencyLayer): 15647 (QComboBox::QComboBox): 15648 (QComboBox::setFont): 15649 (QComboBox::baselinePosition): 15650 (QComboBox::setWritingDirection): 15651 (QComboBox::clear): 15652 (QComboBox::appendItem): 15653 (QComboBox::setCurrentItem): 15654 (QComboBox::sizeHint): 15655 (QComboBox::frameGeometry): 15656 (QComboBox::setFrameGeometry): 15657 (QLineEdit::setLiveSearch): 15658 15659 2006-03-06 Eric Seidel <eseidel (a] apple.com> 15660 15661 Reviewed by darin. 15662 15663 Fix external resource loading. 15664 Make a bunch of stubs not abort (to fix slashdot). 15665 15666 * platform/win/TemporaryLinkStubs.cpp: 15667 (QTextEdit::textWithHardLineBreaks): 15668 (KWQFileButton::click): 15669 (QComboBox::setFrameGeometry): 15670 (QTextEdit::setText): 15671 (QListBox::appendItem): 15672 (GraphicsContext::endTransparencyLayer): 15673 (QLineEdit::selectionStart): 15674 (QTextEdit::QTextEdit): 15675 (QListBox::isSelected): 15676 (QComboBox::focusPolicy): 15677 (QTextEdit::setCursorPosition): 15678 (QTextEdit::setAlignment): 15679 (QLineEdit::selectedText): 15680 (ScrollView::scrollPointRecursively): 15681 (QScrollBar::setSteps): 15682 (QComboBox::appendItem): 15683 (GraphicsContext::drawLineForMisspelling): 15684 (KWQFileButton::setFilename): 15685 (QListBox::setWritingDirection): 15686 (QListBox::focusPolicy): 15687 (MouseEvent::MouseEvent): 15688 (QSlider::setFont): 15689 (Widget::setEnabled): 15690 (Widget::paint): 15691 (ScrollView::addChild): 15692 (ScrollView::inWindow): 15693 (GraphicsContext::setShadow): 15694 (GraphicsContext::clearShadow): 15695 (RenderThemeWin::paintCheckbox): 15696 (RenderThemeWin::paintRadio): 15697 (RenderThemeWin::paintButton): 15698 (RenderThemeWin::paintTextField): 15699 (QLineEdit::QLineEdit): 15700 (QLineEdit::setFont): 15701 (QLineEdit::setAlignment): 15702 (QLineEdit::setWritingDirection): 15703 (QLineEdit::maxLength): 15704 (QLineEdit::setMaxLength): 15705 (QLineEdit::text): 15706 (QLineEdit::setText): 15707 (QLineEdit::cursorPosition): 15708 (QLineEdit::setCursorPosition): 15709 (QLineEdit::setEdited): 15710 (QLineEdit::setReadOnly): 15711 (QLineEdit::setPlaceholderString): 15712 (QLineEdit::setColors): 15713 (QLineEdit::sizeForCharacterWidth): 15714 (QLineEdit::baselinePosition): 15715 * platform/win/TransferJobWin.cpp: 15716 (WebCore::TransferJob::fileLoadTimer): 15717 (WebCore::TransferJob::cancel): 15718 15719 2006-03-05 Darin Adler <darin (a] apple.com> 15720 15721 Reviewed by Maciej. 15722 15723 - fix failure seen running editing layout tests 15724 15725 * editing/ReplaceSelectionCommand.cpp: 15726 (WebCore::ReplacementFragment::ReplacementFragment): 15727 Use selectNodeContents instead of rolling our own. 15728 It handles the "nothing at all" edge case properly. 15729 15730 2006-03-05 Eric Seidel <eseidel (a] apple.com> 15731 15732 Reviewed by darin. 15733 15734 Make updateContents invalidate entire window for now. 15735 Fix indentation in fileLoadTimer. 15736 15737 * platform/win/ScrollViewWin.cpp: 15738 (WebCore::ScrollView::updateContents): 15739 * platform/win/TransferJobWin.cpp: 15740 (WebCore::TransferJob::fileLoadTimer): 15741 15742 2006-03-05 Eric Seidel <eseidel (a] apple.com> 15743 15744 Reviewed by adele. 15745 15746 Add missing files to vcproj (fix win32 build). 15747 Also add svn:eol-style=native to new files. 15748 15749 * WebCore.vcproj/WebCore/WebCore.vcproj: 15750 15751 2006-03-05 Darin Adler <mjs (a] apple.com> 15752 15753 - fix build 15754 15755 * rendering/render_style.h: (compareEqual): Made it inline, fixed variable name. 15756 15757 2006-03-05 Adele Peterson <adele (a] apple.com> 15758 15759 Reviewed by Darin. 15760 15761 - Fixed http://bugs.webkit.org/show_bug.cgi?id=6987 15762 Implement maxlength for new text fields 15763 15764 Test added: 15765 * fast/forms/input-appearance-maxlength.html 15766 15767 * WebCore.xcodeproj/project.pbxproj: 15768 Added BeforeTextInsertedEventImpl.h, BeforeTextInsertedEventImpl.cpp, HTMLTextFieldInnerElementImpl.h, and HTMLTextFieldInnerElementImpl.cpp 15769 15770 * khtml/html/HTMLInputElementImpl.cpp: 15771 (WebCore::HTMLInputElementImpl::init): initialize max length to 1024. 15772 (WebCore::HTMLInputElementImpl::defaultEventHandler): Added case to use the khtmlBeforeTextInsertedEvent to check for maxlength. 15773 (WebCore::HTMLInputElementImpl::parseMappedAttribute): Makes sure that maxlength is between 0 and 1024. 15774 15775 * editing/ReplaceSelectionCommand.cpp: 15776 (WebCore::ReplacementFragment::ReplacementFragment): After doing a test insert of the fragment, 15777 Send khtmlBeforeTextInsertedEvent to the root editable element so the event handler can update the text, and we can update the fragment. 15778 * editing/TypingCommand.cpp: 15779 (WebCore::TypingCommand::insertText): Send khtmlBeforeTextInsertedEvent to the root editable element so the event handler can update the text if necessary. 15780 * editing/EditCommand.cpp: 15781 (WebCore::EditCommand::apply): If we've just applied a command, send the khtmlTextInsertedEvent to the root editable element. 15782 (WebCore::EditCommand::unapply): ditto. 15783 (WebCore::EditCommand::reapply): ditto. 15784 15785 * khtml/html/HTMLTextFieldInnerElementImpl.h: Added this class to store a pointer to the input element for the text field and to handle default events. 15786 (DOM::HTMLTextFieldInnerElementImpl::shadowParentNode): Added. 15787 (DOM::HTMLTextFieldInnerElementImpl::setShadowParentNode): Added. 15788 * khtml/html/HTMLTextFieldInnerElementImpl.cpp: Added. 15789 (WebCore::HTMLTextFieldInnerElementImpl::HTMLTextFieldInnerElementImpl): 15790 (WebCore::HTMLTextFieldInnerElementImpl::~HTMLTextFieldInnerElementImpl): 15791 (WebCore::HTMLTextFieldInnerElementImpl::defaultEventHandler): 15792 Sends khtmlBeforeTextInsertedEvents to the shadowParentNode, 15793 and handles khtmlTextInsertedEvents by telling the renderer that the subtree has changed. 15794 15795 * rendering/RenderTextField.cpp: Removed InputMutationListener since subtreeHasChanged is now called from the editing code. 15796 (WebCore::RenderTextField::~RenderTextField): removed event listener code. 15797 (WebCore::RenderTextField::updateFromElement): ditto. And creates HTMLTextFieldInnerElementImpl. 15798 (WebCore::RenderTextField::subtreeHasChanged): calls new text() method. 15799 (WebCore::RenderTextField::text): created to get a String of all text in the RenderTextField. 15800 * rendering/RenderTextField.h: Removed InputMutationListener class. 15801 15802 * dom/EventNames.h: Added khtmlTextInserted and khtmlBeforeTextInserted. 15803 * dom/BeforeTextInsertedEventImpl.cpp: Added. 15804 (WebCore::BeforeTextInsertedEventImpl::BeforeTextInsertedEventImpl): 15805 * dom/BeforeTextInsertedEventImpl.h: Added. 15806 (WebCore::BeforeTextInsertedEventImpl::isBeforeTextInsertedEvent): 15807 (WebCore::BeforeTextInsertedEventImpl::text): 15808 * dom/dom2_eventsimpl.cpp: (WebCore::EventImpl::isBeforeTextInsertedEvent): Added. 15809 * dom/dom2_eventsimpl.h: Added isBeforeTextInsertedEvent. 15810 15811 2006-03-05 Maciej Stachowiak <mjs (a] apple.com> 15812 15813 - fix build, give this a return type. 15814 15815 * rendering/render_style.h: 15816 (compareEqual): 15817 15818 2006-03-05 Eric Seidel <eseidel (a] apple.com> 15819 15820 Add "Font.h" to (try to) fix the no-svg build. 15821 15822 * platform/mac/GraphicsContextMac.mm: 15823 15824 2006-03-05 Maciej Stachowiak <mjs (a] apple.com> 15825 15826 Rubber stamped by Darin. 15827 15828 - fix win32 build by avoiding use of typeof 15829 15830 * rendering/render_style.h: 15831 (compareEqual): 15832 15833 2006-03-05 Geoffrey Garen <ggaren (a] apple.com> 15834 15835 Reviewed by Maciej. 15836 15837 - Second cut at fixing <rdar://problem/4467143> JavaScript enumeration 15838 of HTML element properties skips DOM node properties 15839 15840 The approach here is for prototypes, in their constructor methods, 15841 to set their own prototypes, preserving the prototype 15842 chain in cases of multiple levels of inheritance. (Previously, our 15843 code assumed that a prototype never had a prototype of its own, 15844 and always used an empty object as a prototype's prototype). 15845 15846 * bindings/scripts/CodeGeneratorJS.pm: Use the new 15847 DEFINE_PROTOTYPE_WITH_PROTOTYPE macro in place of the 15848 KJS_IMPLEMENT_PROTOTYPE_WITH_PARENT macro. 15849 * khtml/ecma/kjs_dom.cpp: Ditto. 15850 * khtml/ecma/kjs_dom.h: Ditto. 15851 * khtml/ecma/kjs_events.cpp: Ditto. 15852 15853 Touched these files to force a rebuild: 15854 15855 * bindings/js/JSDOMCore.cpp: 15856 * bindings/js/JSDOMEvents.cpp: 15857 * dom/Attr.idl: 15858 * dom/CharacterData.idl: 15859 * dom/DOMImplementation.idl: 15860 * dom/DocumentType.idl: 15861 * dom/Element.idl: 15862 * dom/Entity.idl: 15863 * dom/MutationEvent.idl: 15864 * dom/Notation.idl: 15865 * dom/ProcessingInstruction.idl: 15866 * dom/Text.idl: 15867 * dom/WheelEvent.idl: 15868 15869 2006-03-05 Maciej Stachowiak <mjs (a] apple.com> 15870 15871 Reviewed by Darin. 15872 15873 - use unsigned bitfields when storing enums in them, to avoid mangling on win32 (was causing all layout to be RTL) 15874 http://bugs.webkit.org/show_bug.cgi?id=7618 15875 15876 * css/css_base.cpp: 15877 (WebCore::CSSSelector::operator == ): 15878 (WebCore::CSSSelector::selectorText): 15879 * css/css_base.h: 15880 (WebCore::CSSSelector::CSSSelector): 15881 (WebCore::CSSSelector::pseudoType): 15882 (WebCore::CSSSelector::relation): 15883 * css/css_grammar.y: 15884 * css/cssstyleselector.cpp: 15885 (WebCore::CSSStyleSelector::checkSelector): 15886 (WebCore::CSSStyleSelector::checkOneSelector): 15887 * kcanvas/KCanvasPath.cpp: 15888 (WebCore::operator<<): 15889 * kcanvas/KCanvasPath.h: 15890 (WebCore::KCClipData::windRule): 15891 (WebCore::KCClipDataList::addPath): 15892 * kcanvas/device/quartz/KCanvasResourcesQuartz.mm: 15893 (WebCore::KCanvasClipperQuartz::applyClip): 15894 * khtml/ecma/kjs_html.h: 15895 * khtml/html/HTMLButtonElementImpl.h: 15896 * khtml/html/HTMLInputElementImpl.cpp: 15897 (WebCore::HTMLInputElementImpl::setInputType): 15898 * khtml/html/HTMLInputElementImpl.h: 15899 (DOM::HTMLInputElementImpl::inputType): 15900 * khtml/html/html_tableimpl.h: 15901 * khtml/xbl/xbl_protohandler.cpp: 15902 (XBL::m_button): 15903 * khtml/xbl/xbl_protohandler.h: 15904 * ksvg2/css/SVGRenderStyle.h: 15905 (WebCore::SVGRenderStyle::InheritedFlags::): 15906 (WebCore::SVGRenderStyle::NonInheritedFlags::): 15907 (WebCore::SVGRenderStyle::setBitDefaults): 15908 * ksvg2/svg/SVGAnimateTransformElementImpl.h: 15909 * ksvg2/svg/SVGAnimationElementImpl.cpp: 15910 (SVGAnimationElementImpl::targetAttribute): 15911 (SVGAnimationElementImpl::setTargetAttribute): 15912 * ksvg2/svg/SVGAnimationElementImpl.h: 15913 * ksvg2/svg/SVGLengthImpl.cpp: 15914 (SVGLengthImpl::value): 15915 * ksvg2/svg/SVGLengthImpl.h: 15916 * kwq/KWQKHTMLSettings.h: 15917 * loader/CachedImage.h: 15918 * loader/DocLoader.cpp: 15919 (WebCore::DocLoader::setCachePolicy): 15920 (WebCore::DocLoader::setShowAnimations): 15921 * loader/DocLoader.h: 15922 (WebCore::DocLoader::showAnimations): 15923 * platform/FontDescription.h: 15924 (WebCore::FontDescription::genericFamily): 15925 * platform/QString.cpp: 15926 (HandleNode::): 15927 * platform/QString.h: 15928 * rendering/RenderBlock.cpp: 15929 (WebCore::RenderBlock::setSelectionState): 15930 (WebCore::RenderBlock::leftRelOffset): 15931 (WebCore::RenderBlock::rightRelOffset): 15932 (WebCore::RenderBlock::leftBottom): 15933 (WebCore::RenderBlock::rightBottom): 15934 (WebCore::RenderBlock::addOverhangingFloats): 15935 (WebCore::RenderBlock::addIntrudingFloats): 15936 * rendering/RenderBlock.h: 15937 (WebCore::RenderBlock::selectionState): 15938 (WebCore::RenderBlock::FloatingObject::FloatingObject): 15939 (WebCore::RenderBlock::FloatingObject::type): 15940 * rendering/RenderTable.h: 15941 (WebCore::RenderTable::getRules): 15942 * rendering/bidi.cpp: 15943 (khtml::BidiContext::BidiContext): 15944 (khtml::operator==): 15945 (khtml::embed): 15946 (khtml::RenderBlock::computeHorizontalPositionsForLine): 15947 (khtml::RenderBlock::bidiReorderLine): 15948 (khtml::RenderBlock::layoutInlineChildren): 15949 * rendering/bidi.h: 15950 (khtml::BidiContext::dir): 15951 (khtml::BidiContext::basicDir): 15952 (khtml::BidiRun::BidiRun): 15953 * rendering/render_canvasimage.h: 15954 * rendering/render_layer.h: 15955 (WebCore::Marquee::whiteSpace): 15956 * rendering/render_object.cpp: 15957 (WebCore::RenderObject::paintBorderImage): 15958 * rendering/render_replaced.cpp: 15959 (WebCore::RenderWidget::setSelectionState): 15960 * rendering/render_replaced.h: 15961 (WebCore::RenderReplaced::selectionState): 15962 * rendering/render_style.cpp: 15963 (WebCore::RenderStyle::getPseudoStyle): 15964 * rendering/render_style.h: 15965 (khtml::BorderValue::BorderValue): 15966 (khtml::BorderValue::style): 15967 (khtml::BorderValue::nonZero): 15968 (khtml::BorderValue::operator==): 15969 (khtml::OutlineValue::operator==): 15970 (khtml::CollapsedBorderValue::style): 15971 (khtml::BorderImage::horizontalRule): 15972 (khtml::BorderImage::verticalRule): 15973 (khtml::BorderData::borderLeftWidth): 15974 (khtml::BorderData::borderRightWidth): 15975 (khtml::BorderData::borderTopWidth): 15976 (khtml::BorderData::borderBottomWidth): 15977 (khtml::BackgroundLayer::backgroundClip): 15978 (khtml::BackgroundLayer::backgroundOrigin): 15979 (khtml::BackgroundLayer::backgroundRepeat): 15980 (khtml::RenderStyle::styleType): 15981 (khtml::RenderStyle::display): 15982 (khtml::RenderStyle::originalDisplay): 15983 (khtml::RenderStyle::position): 15984 (khtml::RenderStyle::floating): 15985 (khtml::RenderStyle::borderLeftStyle): 15986 (khtml::RenderStyle::borderLeftColor): 15987 (khtml::RenderStyle::borderRightStyle): 15988 (khtml::RenderStyle::borderRightColor): 15989 (khtml::RenderStyle::borderTopStyle): 15990 (khtml::RenderStyle::borderTopColor): 15991 (khtml::RenderStyle::borderBottomStyle): 15992 (khtml::RenderStyle::borderBottomColor): 15993 (khtml::RenderStyle::outlineWidth): 15994 (khtml::RenderStyle::outlineStyle): 15995 (khtml::RenderStyle::overflow): 15996 (khtml::RenderStyle::visibility): 15997 (khtml::RenderStyle::verticalAlign): 15998 (khtml::RenderStyle::unicodeBidi): 15999 (khtml::RenderStyle::clear): 16000 (khtml::RenderStyle::tableLayout): 16001 (khtml::RenderStyle::textAlign): 16002 (khtml::RenderStyle::textTransform): 16003 (khtml::RenderStyle::direction): 16004 (khtml::RenderStyle::whiteSpace): 16005 (khtml::RenderStyle::backgroundRepeat): 16006 (khtml::RenderStyle::backgroundClip): 16007 (khtml::RenderStyle::backgroundOrigin): 16008 (khtml::RenderStyle::emptyCells): 16009 (khtml::RenderStyle::captionSide): 16010 (khtml::RenderStyle::listStyleType): 16011 (khtml::RenderStyle::listStylePosition): 16012 (khtml::RenderStyle::cursor): 16013 (khtml::RenderStyle::pageBreakInside): 16014 (khtml::RenderStyle::pageBreakBefore): 16015 (khtml::RenderStyle::pageBreakAfter): 16016 (khtml::RenderStyle::outlineOffset): 16017 (khtml::RenderStyle::appearance): 16018 (khtml::RenderStyle::boxAlign): 16019 (khtml::RenderStyle::boxDirection): 16020 (khtml::RenderStyle::boxLines): 16021 (khtml::RenderStyle::boxOrient): 16022 (khtml::RenderStyle::boxPack): 16023 (khtml::RenderStyle::boxSizing): 16024 (khtml::RenderStyle::marqueeBehavior): 16025 (khtml::RenderStyle::marqueeDirection): 16026 (khtml::RenderStyle::userModify): 16027 (khtml::RenderStyle::userDrag): 16028 (khtml::RenderStyle::userSelect): 16029 (khtml::RenderStyle::marginTopCollapse): 16030 (khtml::RenderStyle::marginBottomCollapse): 16031 (khtml::RenderStyle::wordWrap): 16032 (khtml::RenderStyle::nbspMode): 16033 (khtml::RenderStyle::khtmlLineBreak): 16034 (khtml::RenderStyle::matchNearestMailBlockquoteColor): 16035 (khtml::RenderStyle::setBorderLeftWidth): 16036 (khtml::RenderStyle::setBorderLeftStyle): 16037 (khtml::RenderStyle::setBorderLeftColor): 16038 (khtml::RenderStyle::setBorderRightWidth): 16039 (khtml::RenderStyle::setBorderRightStyle): 16040 (khtml::RenderStyle::setBorderRightColor): 16041 (khtml::RenderStyle::setBorderTopWidth): 16042 (khtml::RenderStyle::setBorderTopStyle): 16043 (khtml::RenderStyle::setBorderTopColor): 16044 (khtml::RenderStyle::setBorderBottomWidth): 16045 (khtml::RenderStyle::setBorderBottomStyle): 16046 (khtml::RenderStyle::setBorderBottomColor): 16047 (khtml::RenderStyle::setOutlineWidth): 16048 (khtml::RenderStyle::setOutlineStyle): 16049 (khtml::RenderStyle::pseudoState): 16050 16051 2006-03-05 Geoffrey Garen <ggaren (a] apple.com> 16052 16053 - Rolled out the fix for <rdar://problem/4467143> because it's the 16054 wrong approach. Maciej and I discussed this on IRC. 16055 16056 * khtml/ecma/kjs_dom.cpp: 16057 (KJS::): Don't use classInfo to express prototype inheritance. 16058 classInfo is only for representing a c++ superclass relationship. 16059 16060 2006-03-05 Eric Seidel <eseidel (a] apple.com> 16061 16062 Move improperly placed #endif causing no-svg build to fail. 16063 16064 * kcanvas/device/quartz/KRenderingDeviceQuartz.h: 16065 16066 2006-03-05 Alexander Kellett <lypanov (a] kde.org> 16067 16068 Reviewed by Eric. 16069 16070 - fix http://bugs.webkit.org/show_bug.cgi?id=6890 16071 and http://bugs.webkit.org/show_bug.cgi?id=6951 16072 by being more tolerant towards invalid points data 16073 16074 - new tests: 16075 svg/custom/polyline-setattribute-points-null.svg 16076 svg/custom/polyline-invalid-points.svg 16077 16078 * ksvg2/svg/svgpathparser.cpp: 16079 (SVGPolyParser::parsePoints): 16080 16081 2006-03-05 Maciej Stachowiak <mjs (a] apple.com> 16082 16083 Rubber stamped by Eric. 16084 16085 - remove no longer used KDOMSettings and KSVGSettings 16086 16087 * WebCore+SVG/KDOMSettings.cpp: Removed. 16088 * WebCore+SVG/KDOMSettings.h: Removed. 16089 * WebCore.xcodeproj/project.pbxproj: 16090 * ksvg2/KSVGSettings.h: Removed. 16091 * ksvg2/svg/SVGStyledElementImpl.cpp: 16092 16093 2006-03-05 Eric Seidel <eseidel (a] apple.com> 16094 16095 Reviewed by mjs. 16096 16097 * platform/Font.cpp: 16098 (WebCore::Font::update): remove extra ref causing large leak. 16099 16100 2006-03-04 Eric Seidel <eseidel (a] apple.com> 16101 16102 Reviewed by hyatt. 16103 16104 Re-work ImageViewer to use GraphicsContext. 16105 Add GraphicsContext(cairo_t*) constructor to make double-buffering easier. 16106 Add one more stub to prevent slashdot from crashing. 16107 Also fixed win32 build after Font change. 16108 16109 * Viewer.vcproj: 16110 * Viewer/ImageView.cpp: 16111 * platform/Color.h: 16112 * platform/GraphicsContext.h: 16113 * platform/cairo/GraphicsContextCairo.cpp: 16114 (WebCore::GraphicsContext::GraphicsContext): 16115 * platform/win/TemporaryLinkStubs.cpp: 16116 (FrameWin::createPlugin): 16117 (BrowserExtensionWin::setTypedIconURL): 16118 16119 2006-03-05 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 16120 16121 Reviewed by Darin, landed by ap. 16122 16123 - fix http://bugs.webkit.org/show_bug.cgi?id=4840 16124 Frames only resize wider, can't make them narrower 16125 16126 * khtml/html/html_baseimpl.cpp: 16127 (WebCore::HTMLFrameSetElementImpl::HTMLFrameSetElementImpl): Removed unused m_resizing flag. 16128 * khtml/html/html_baseimpl.h: 16129 * manual-tests/bugzilla-4840.html: Added. 16130 * page/FrameView.cpp: 16131 (WebCore::FrameViewPrivate::reset): 16132 (WebCore::FrameView::viewportMouseMoveEvent): 16133 (WebCore::FrameView::viewportMouseReleaseEvent): 16134 (WebCore::FrameView::setResizingFrameSet): New method. When a resizing frameset is set, 16135 mouse move and mouse release events target it instead of hit-testing. 16136 * page/FrameView.h: 16137 * rendering/render_frames.cpp: 16138 (WebCore::RenderFrameSet::setResizing): Inform the FrameView that we are resizing (or not). 16139 16140 2006-03-04 David Hyatt <hyatt (a] apple.com> 16141 16142 Fix for bug 7586, eliminate QFontMetrics. 16143 16144 Reviewed by eric 16145 16146 * WebCore.xcodeproj/project.pbxproj: 16147 * css/css_valueimpl.cpp: 16148 (WebCore::CSSPrimitiveValueImpl::computeLengthFloat): 16149 * ksvg2/svg/SVGLengthImpl.cpp: 16150 (SVGLengthImpl::updateValue): 16151 * kwq/KWQFontMetrics.h: Removed. 16152 * kwq/KWQFontMetrics.mm: Removed. 16153 * platform/Font.cpp: 16154 (WebCore::m_wordSpacing): 16155 (WebCore::Font::Font): 16156 (WebCore::Font::operator=): 16157 (WebCore::Font::~Font): 16158 (WebCore::Font::update): 16159 (WebCore::Font::width): 16160 * platform/Font.h: 16161 (WebCore::Font::operator==): 16162 (WebCore::Font::width): 16163 (WebCore::Font::height): 16164 * platform/FontRenderer.h: Added. 16165 (WebCore::FontRenderer::isFixedPitch): 16166 * platform/GraphicsContext.h: 16167 * platform/mac/FontMac.mm: Added. 16168 (WebCore::m_renderer): 16169 (WebCore::FontRenderer::getWebCoreFont): 16170 (WebCore::FontRenderer::getRenderer): 16171 (WebCore::FontRenderer::determinePitch): 16172 (WebCore::FontRenderer::update): 16173 (WebCore::Font::getWebCoreFont): 16174 (WebCore::Font::ascent): 16175 (WebCore::Font::descent): 16176 (WebCore::Font::lineSpacing): 16177 (WebCore::Font::xHeight): 16178 (WebCore::Font::isFixedPitch): 16179 (WebCore::Font::selectionRectForText): 16180 (WebCore::Font::drawHighlightForText): 16181 (WebCore::Font::drawText): 16182 (WebCore::Font::floatWidth): 16183 (WebCore::Font::checkSelectionPoint): 16184 * platform/mac/GraphicsContextMac.mm: 16185 * rendering/InlineTextBox.h: 16186 * rendering/RenderBlock.cpp: 16187 (WebCore::stripTrailingSpace): 16188 * rendering/RenderText.cpp: 16189 (WebCore::RenderText::trimmedMinMaxWidth): 16190 * rendering/RenderText.h: 16191 * rendering/RenderTextField.cpp: 16192 (WebCore::RenderTextField::calcMinMaxWidth): 16193 * rendering/bidi.cpp: 16194 (khtml::RenderBlock::tabWidth): 16195 (khtml::RenderBlock::checkLinesForTextOverflow): 16196 * rendering/render_box.cpp: 16197 (WebCore::RenderBox::caretRect): 16198 * rendering/render_br.cpp: 16199 (WebCore::RenderBR::lineHeight): 16200 * rendering/render_flow.cpp: 16201 (WebCore::RenderFlow::lineHeight): 16202 (WebCore::RenderFlow::caretRect): 16203 * rendering/render_image.cpp: 16204 (WebCore::RenderImage::imageChanged): 16205 (WebCore::RenderImage::paint): 16206 * rendering/render_line.cpp: 16207 (WebCore::InlineFlowBox::placeBoxesVertically): 16208 * rendering/render_list.cpp: 16209 (WebCore::toHebrew): 16210 (WebCore::RenderListMarker::paint): 16211 (WebCore::RenderListMarker::calcMinMaxWidth): 16212 (WebCore::RenderListMarker::baselinePosition): 16213 (WebCore::RenderListMarker::getRelativeMarkerRect): 16214 * rendering/render_object.cpp: 16215 (WebCore::RenderObject::getVerticalPosition): 16216 (WebCore::RenderObject::lineHeight): 16217 (WebCore::RenderObject::baselinePosition): 16218 * rendering/render_object.h: 16219 * rendering/render_style.h: 16220 16221 2006-03-04 Eric Seidel <eseidel (a] apple.com> 16222 16223 Reviewed by ggaren. 16224 16225 Add urlSelected stub, adjust font metrics, and fix view size/move bug. 16226 16227 * platform/win/TemporaryLinkStubs.cpp: 16228 (MouseEvent::MouseEvent): 16229 (FrameWin::urlSelected): 16230 (QFontMetrics::height): 16231 (QFontMetrics::xHeight): 16232 (QFontMetrics::ascent): 16233 (QFontMetrics::descent): 16234 (ScrollView::resizeContents): 16235 (ScrollView::setContentsPos): 16236 16237 2006-03-04 Maciej Stachowiak <mjs (a] apple.com> 16238 16239 Reviewed by Eric. 16240 16241 - stop background image loads from crashing 16242 16243 * platform/cairo/GraphicsContextCairo.cpp: 16244 (WebCore::GraphicsContext::drawTiledImage): 16245 (WebCore::GraphicsContext::drawScaledAndTiledImage): 16246 16247 - fix termination condition on file load loop 16248 16249 * platform/win/TransferJobWin.cpp: 16250 (WebCore::TransferJob::fileLoadTimer): 16251 16252 2006-03-04 Geoffrey Garen <ggaren (a] apple.com> 16253 16254 Reviewed by Darin. 16255 16256 - Fixed <rdar://problem/4467143> JavaScript enumeration of HTML 16257 element properties skips DOM node properties 16258 16259 No test case yet because this is a preliminary step toward enabling my 16260 uber test case for DOM support, which will cover this. 16261 16262 * khtml/ecma/kjs_dom.cpp: 16263 (KJS::): Make DOMNode's classinfo reflect inheritance from 16264 DOMNodeProto, so a for in enumeration can properly walk the 16265 inheritance chain. 16266 * khtml/ecma/kjs_html.cpp: 16267 (KJS::): Used a script to sort classInfo data alphbetically. 16268 (KJS::KJS::HTMLElement::classInfo): Ditto. 16269 16270 2006-03-04 Maciej Stachowiak <mjs (a] apple.com 16271 16272 Reviewed by Eric. 16273 16274 - fix mistake in TransferJob::start that made it cause a crash 16275 on non-file URLs 16276 16277 * platform/win/TransferJobWin.cpp: 16278 (WebCore::TransferJob::start): 16279 16280 2006-03-04 Maciej Stachowiak <mjs (a] apple.com 16281 16282 Reviewed by Eric. 16283 16284 - make TransferJobWin handle file: URLs, and fix other bugs 16285 as needed to make local file image loads work 16286 http://bugs.webkit.org/show_bug.cgi?id=7587 16287 16288 * WebCore.vcproj/WebCore/WebCore.vcproj: add TransferJobWin 16289 to build. 16290 * bridge/win/FrameWin.cpp: 16291 (WebCore::FrameWin::FrameWin): Set autoLoadImages to true. 16292 * platform/TransferJob.cpp: 16293 (WebCore::TransferJob::TransferJob): Pass this to internal 16294 constructor, so windows version can initialize timer 16295 * platform/TransferJob.h: 16296 * platform/TransferJobInternal.h: 16297 (WebCore::TransferJobInternal::TransferJobInternal): On windows, 16298 prepare a timer for file loads. 16299 * platform/cairo/GraphicsContextCairo.cpp: 16300 (WebCore::GraphicsContext::drawFloatImage): If passed-in context 16301 is null, use our built-in context (this is probably not the best, 16302 but should work for now). 16303 * platform/win/TemporaryLinkStubs.cpp: 16304 (FrameWin::issueRedoCommand): Don't break. 16305 (WebCore::TransferJob::assembleResponseHeaders): ditto 16306 (FrameWin::saveDocumentState): ditto 16307 (FrameWin::clearUndoRedoOperations): ditto 16308 * platform/win/TransferJobWin.cpp: 16309 (WebCore::TransferJobInternal::~TransferJobInternal): Close file 16310 handle if we have one. 16311 (WebCore::TransferJob::~TransferJob): Empty. 16312 (WebCore::TransferJob::start): Open a windows file handle. 16313 (WebCore::TransferJob::fileLoadTimer): Load from windows file 16314 handle. 16315 (WebCore::TransferJob::cancel): Stop timer and close windows file 16316 handle if present. 16317 16318 2006-03-03 Eric Seidel <eseidel (a] apple.com> 16319 16320 Reviewed by hyatt. 16321 16322 Fix QString crasher on Win32, also remove c-style casts from file. 16323 Add a few more stubs to allow more layout tests to not crash. 16324 Make dlls only copy when changed. 16325 Add RenderThemeWin stubs. 16326 16327 * WebCore.vcproj/WebCore/WebCore.vcproj: 16328 * WebCore.vcproj/WebCore/build-generated-files.sh: 16329 * platform/QString.cpp: 16330 (QString::stripWhiteSpace): 16331 (QString::simplifyWhiteSpace): 16332 (QString::setLatin1): 16333 (QString::sprintf): 16334 (QString::insert): 16335 (QString::fill): 16336 * platform/win/TemporaryLinkStubs.cpp: 16337 (WebCore::usableScreenRect): 16338 (FrameWin::respondToChangedContents): 16339 (FrameWin::unfocusWindow): 16340 (FrameWin::locationbarVisible): 16341 (FrameWin::clearUndoRedoOperations): 16342 (FrameWin::issueRedoCommand): 16343 (FrameWin::canRedo): 16344 (FrameWin::canUndo): 16345 (FrameWin::saveDocumentState): 16346 (FrameWin::print): 16347 (FrameWin::issueCutCommand): 16348 (FrameWin::issueCopyCommand): 16349 (FrameWin::issueUndoCommand): 16350 (FrameWin::mimeTypeForFileName): 16351 (FrameWin::clearRecordedFormValues): 16352 (FrameWin::issuePasteCommand): 16353 (FrameWin::scheduleClose): 16354 (FrameWin::menubarVisible): 16355 (FrameWin::personalbarVisible): 16356 (FrameWin::statusbarVisible): 16357 (FrameWin::toolbarVisible): 16358 (FrameWin::issueTransposeCommand): 16359 (FrameWin::canPaste): 16360 (FrameWin::incomingReferrer): 16361 (FrameWin::canGoBackOrForward): 16362 (FrameWin::issuePasteAndMatchStyleCommand): 16363 (FrameWin::createPlugin): 16364 (BrowserExtensionWin::getHistoryLength): 16365 (BrowserExtensionWin::canRunModal): 16366 (BrowserExtensionWin::openURLNotify): 16367 (BrowserExtensionWin::canRunModalNow): 16368 (BrowserExtensionWin::runModal): 16369 (QListBox::setFont): 16370 (WebCore::TransferJob::assembleResponseHeaders): 16371 (WebCore::TransferJob::~TransferJob): 16372 (QFontMetrics::QFontMetrics): 16373 (QFontMetrics::lineSpacing): 16374 (QFontMetrics::xHeight): 16375 (QFontMetrics::ascent): 16376 (FrameWin::shouldChangeSelection): 16377 (FrameWin::generateFrameName): 16378 (FrameWin::createFrame): 16379 (RenderThemeWin::paintCheckbox): 16380 (RenderThemeWin::paintRadio): 16381 (RenderThemeWin::paintButton): 16382 (RenderThemeWin::paintTextField): 16383 * rendering/RenderThemeWin.cpp: Added. 16384 (WebCore::theme): 16385 * rendering/RenderThemeWin.h: Added. 16386 16387 2006-03-03 Geoffrey Garen <ggaren (a] apple.com> 16388 16389 Test case for <rdar://problem/4465598> REGRESSION (TOT): Crash occurs at 16390 http://maps.google.com/?output=html ( KJS::Identifier::add(KJS::UString::Rep*) 16391 16392 * manual-tests/property-map-save-crash.html: Added. 16393 16394 2006-03-03 Eric Seidel <eseidel (a] apple.com> 16395 16396 Reviewed by adele. 16397 16398 Fix clearly bogus cairo elipse drawing code. 16399 Make QFontMetrics stubs slightly more sane. 16400 16401 * platform/cairo/GraphicsContextCairo.cpp: 16402 (WebCore::GraphicsContext::drawEllipse): 16403 * platform/win/TemporaryLinkStubs.cpp: 16404 (QFontMetrics::floatWidth): 16405 (QFontMetrics::height): 16406 (QFontMetrics::width): 16407 (QFontMetrics::isFixedPitch): 16408 16409 2006-03-03 Darin Adler <darin (a] apple.com> 16410 16411 Reviewed by Eric. 16412 16413 - fix http://bugs.webkit.org/show_bug.cgi?id=7480 16414 non-HTML elems w/o children in HTML docs get serialized self-closing 16415 - fix problem where the HTML tokenizer would discard the first newline after </pre> 16416 16417 Test: fast/innerHTML/innerHTML-custom-tag.html 16418 16419 * editing/markup.cpp: (WebCore::shouldSelfClose): Refined rule so that it doesn't 16420 try to do any self-closing tags in HTML documents at all; updated comment. 16421 16422 * khtml/html/htmltokenizer.cpp: (WebCore::HTMLTokenizer::parseTag): Added a check 16423 of beginTag in the <pre> tag case. We were accidentally discarding a newline after 16424 a </pre> tag. 16425 16426 2006-03-03 Maciej Stachowiak <mjs (a] apple.com> 16427 16428 Rubber stamped by Eric. 16429 16430 - add new files to build, fix link stubs. 16431 16432 * WebCore.vcproj/WebCore/WebCore.vcproj: 16433 * platform/win/TemporaryLinkStubs.cpp: 16434 (KWQKCookieJar::cookieEnabled): 16435 (WebCore::TransferJob::retrieveCharset): 16436 (WebCore::TransferJob::assembleResponseHeaders): 16437 (WebCore::TransferJob::~TransferJob): 16438 * platform/win/TransferJobWin.cpp: Added. 16439 16440 2006-03-03 Maciej Stachowiak <mjs (a] apple.com> 16441 16442 - add file I forgot in my last commit. 16443 16444 * platform/TransferJobInternal.h: Added. 16445 (WebCore::TransferJobInternal::TransferJobInternal): 16446 16447 2006-03-03 Eric Seidel <eseidel (a] apple.com> 16448 16449 Reviewed by mjs. 16450 16451 Wire up WidgetWin, CursorWin, ScrollViewWin. 16452 Stub out methods for selection and cursors. 16453 16454 * Viewer/ImageDocument.h: 16455 * WebCore.vcproj/WebCore/WebCore.vcproj: 16456 * bridge/win/FrameWin.cpp: 16457 * khtml/ecma/kjs_proxy.cpp: 16458 (WebCore::KJSProxyImpl::initScriptIfNeeded): 16459 * platform/IntRect.h: 16460 (WebCore::IntRect::IntRect): 16461 * platform/Widget.h: 16462 * platform/win/CursorWin.cpp: 16463 (WebCore::eastResizeCursor): 16464 (WebCore::northResizeCursor): 16465 (WebCore::northEastResizeCursor): 16466 (WebCore::northWestResizeCursor): 16467 (WebCore::southResizeCursor): 16468 (WebCore::southEastResizeCursor): 16469 (WebCore::southWestResizeCursor): 16470 (WebCore::westResizeCursor): 16471 * platform/win/IntRectWin.cpp: 16472 (WebCore::IntRect::IntRect): 16473 (WebCore::IntRect::operator RECT): 16474 * platform/win/MouseEventWin.cpp: 16475 * platform/win/ScrollViewWin.cpp: Added. 16476 (WebCore::ScrollView::updateContents): 16477 * platform/win/TemporaryLinkStubs.cpp: 16478 (QTextEdit::textWithHardLineBreaks): 16479 (QLineEdit::setPlaceholderString): 16480 (QScrollBar::scroll): 16481 (GraphicsContext::beginTransparencyLayer): 16482 (Widget::setIsSelected): 16483 (QLineEdit::selectedText): 16484 (QComboBox::sizeHint): 16485 (KWQFileButton::focusPolicy): 16486 (QTextEdit::focusPolicy): 16487 (QSlider::focusPolicy): 16488 (QListBox::focusPolicy): 16489 (QLineEdit::focusPolicy): 16490 (WebCore::moveCursor): 16491 (ScrollView::scrollBy): 16492 (KWQKCookieJar::cookieEnabled): 16493 (WebCore::TransferJob::TransferJob): 16494 (WebCore::screenDepth): 16495 (WebCore::usableScreenRect): 16496 (FrameWin::getObjectInstanceForWidget): 16497 (FrameWin::getEmbedInstanceForWidget): 16498 (FrameWin::getAppletInstanceForWidget): 16499 (FrameWin::passMouseDownEventToWidget): 16500 (FrameWin::issuePasteCommand): 16501 (FrameWin::issueTransposeCommand): 16502 (QSlider::setFont): 16503 (QLineEdit::setFont): 16504 (QListBox::setFont): 16505 (QFontMetrics::QFontMetrics): 16506 (QComboBox::setFont): 16507 (QTextEdit::setFont): 16508 (QTextEdit::setWritingDirection): 16509 (QFontMetrics::setFontDescription): 16510 (QFontMetrics::checkSelectionPoint): 16511 (FrameWin::addMessageToConsole): 16512 (FrameWin::shouldChangeSelection): 16513 (ScrollView::resizeContents): 16514 (ScrollView::visibleHeight): 16515 (ScrollView::visibleWidth): 16516 (ScrollView::setContentsPos): 16517 (ScrollView::contentsX): 16518 (ScrollView::contentsY): 16519 (ScrollView::contentsHeight): 16520 (ScrollView::contentsWidth): 16521 (ScrollView::viewportToContents): 16522 * platform/win/WidgetWin.cpp: Added. 16523 (WebCore::Widget::Widget): 16524 (WebCore::Widget::~Widget): 16525 (WebCore::Widget::windowHandle): 16526 (WebCore::Widget::setWindowHandle): 16527 (WebCore::Widget::setActiveWindow): 16528 (WebCore::Widget::frameGeometry): 16529 (WebCore::Widget::hasFocus): 16530 (WebCore::Widget::setFocus): 16531 (WebCore::Widget::clearFocus): 16532 (WebCore::Widget::font): 16533 (WebCore::Widget::setFont): 16534 (WebCore::Widget::setCursor): 16535 (WebCore::Widget::show): 16536 (WebCore::Widget::hide): 16537 (WebCore::Widget::setFrameGeometry): 16538 (WebCore::Widget::mapFromGlobal): 16539 16540 2006-03-03 Maciej Stachowiak <mjs (a] apple.com> 16541 16542 Reviewed by Eric. 16543 16544 - move TransferJob from kwq to platform, separate platform from non-platform bits 16545 16546 * ForwardingHeaders/kio/job.h: Removed. 16547 * ForwardingHeaders/kio/jobclasses.h: Removed. 16548 * WebCore.xcodeproj/project.pbxproj: 16549 * bridge/mac/MacFrame.mm: 16550 * dom/xml_tokenizer.cpp: 16551 * khtml/xsl/xslt_processorimpl.cpp: 16552 * kwq/KWQKJobClasses.h: Removed. 16553 * kwq/KWQKJobClasses.mm: Removed. 16554 * kwq/KWQLoader.mm: 16555 * kwq/KWQResourceLoader.mm: 16556 * kwq/TransferJobClient.h: Removed. 16557 * loader/Cache.cpp: 16558 * loader/loader.cpp: 16559 * page/Frame.cpp: 16560 * platform/TransferJob.cpp: Added. 16561 (WebCore::TransferJob::TransferJob): 16562 (WebCore::TransferJob::queryMetaData): 16563 (WebCore::TransferJob::addMetaData): 16564 * platform/TransferJob.h: Added. 16565 * platform/TransferJobClient.h: Added. 16566 * platform/mac/TransferJobMac.mm: Added. 16567 (WebCore::TransferJobInternal::~TransferJobInternal): 16568 (WebCore::TransferJob::retrieveCharset): 16569 (WebCore::TransferJob::cancel): 16570 * xml/xmlhttprequest.cpp: 16571 16572 2006-03-03 Maciej Stachowiak <mjs (a] apple.com> 16573 16574 Reviewed by Eric. 16575 16576 - enough link stubs to "display" local copy of WebKit site w/o hitting breakpoint 16577 16578 * platform/win/TemporaryLinkStubs.cpp: 16579 (QLineEdit::setReadOnly): 16580 (QTextEdit::setCursorPosition): 16581 (QLineEdit::setCursorPosition): 16582 (QFontMetrics::width): 16583 (GraphicsContext::drawText): 16584 (GraphicsContext::drawLineForText): 16585 16586 2006-03-02 Maciej Stachowiak <mjs (a] apple.com> 16587 16588 Rubber stamped by Eric. 16589 16590 - remove function that is now gone 16591 16592 * platform/win/TemporaryLinkStubs.cpp: 16593 16594 2006-03-02 Maciej Stachowiak <mjs (a] apple.com> 16595 16596 Reviewed by Eric. 16597 16598 - move logic to kick off load from KWQLoader function to a TransferJob method 16599 16600 * kwq/KWQKJobClasses.h: 16601 * kwq/KWQKJobClasses.mm: 16602 (WebCore::TransferJob::start): 16603 * kwq/KWQLoader.h: 16604 * kwq/KWQLoader.mm: 16605 * loader/loader.cpp: 16606 (WebCore::Loader::servePendingRequests): 16607 * xml/xmlhttprequest.cpp: 16608 (WebCore::XMLHttpRequest::send): 16609 16610 2006-03-02 Maciej Stachowiak <mjs (a] apple.com> 16611 16612 Rubber stamped by Eric. 16613 16614 - remove unused loader parameter to KWQServeRequest. 16615 16616 * kwq/KWQLoader.h: 16617 * kwq/KWQLoader.mm: 16618 (KWQServeRequest): 16619 * loader/loader.cpp: 16620 (WebCore::Loader::servePendingRequests): 16621 * xml/xmlhttprequest.cpp: 16622 (WebCore::XMLHttpRequest::send): 16623 16624 2006-03-02 Maciej Stachowiak <mjs (a] apple.com> 16625 16626 Reviewed by Eric. 16627 16628 - remove one of the versions of KWQServeRequest. 16629 16630 * kwq/KWQLoader.h: 16631 * kwq/KWQLoader.mm: 16632 * loader/loader.cpp: 16633 (WebCore::Loader::servePendingRequests): 16634 * platform/win/TemporaryLinkStubs.cpp: 16635 (Widget::isEnabled): 16636 (KWQServeRequest): 16637 16638 2006-03-02 Maciej Stachowiak <mjs (a] apple.com> 16639 16640 Rubber stamped by Eric. 16641 16642 - win32 build fix. 16643 16644 * platform/win/MouseEventWin.cpp: 16645 16646 2006-03-02 Justin Garcia <justin.garcia (a] apple.com> 16647 16648 Reviewed by eric 16649 16650 <http://bugs.webkit.org/show_bug.cgi?id=3894> 16651 uses of <cmath> should change to <math> 16652 16653 * ksvg2/svg/SVGAnimateTransformElementImpl.cpp: 16654 * ksvg2/svg/SVGAnimationElementImpl.cpp: 16655 * ksvg2/svg/SVGHelper.cpp: 16656 * ksvg2/svg/SVGLengthImpl.cpp: 16657 16658 2006-03-02 Andrew Wellington <proton (a] wiretapped.net> 16659 16660 Reviewed by Darin, landed by Beth 16661 16662 Fix for http://bugs.webkit.org/show_bug.cgi?id=3230 16663 CSS1: Words with inline elements get extra capital letters 16664 16665 Does not use UBreakIterator (yet?) for this, but a relatively 16666 simple change that fixes our failure in the CSS1 test suite 16667 (5.4.5). 16668 16669 * platform/StringImpl.cpp: 16670 (WebCore::StringImpl::capitalize): Specify if this is a run-on 16671 * platform/StringImpl.h: 16672 * rendering/RenderContainer.cpp: 16673 (WebCore::RenderContainer::addChild): Change to re-run 16674 capitalisation when added into tree as previous text node changes 16675 * rendering/RenderText.cpp: 16676 (WebCore::RenderText::setText): Check if previous node is text that 16677 doesn't end in a space 16678 16679 2006-03-02 Justin Garcia <justin.garcia (a] apple.com> 16680 16681 Reviewed by sullivan 16682 16683 <http://bugs.webkit.org/show_bug.cgi?id=7542> 16684 REGRESSION: (r13028) Scrolling causes incomplete drawing of <ul> bullets 16685 16686 * rendering/render_list.cpp: 16687 (WebCore::RenderListMarker::paint): 16688 16689 2006-03-02 Eric Seidel <eseidel (a] apple.com> 16690 16691 Reviewed by ggaren. 16692 16693 Add (partially stubbed out) mouse event handling for Win32. 16694 16695 * WebCore.vcproj/WebCore/WebCore.vcproj: 16696 * platform/IntPoint.h: 16697 * platform/MouseEvent.h: 16698 * platform/win/IntPointWin.cpp: Added. 16699 (WebCore::IntPoint::IntPoint): 16700 (WebCore::IntPoint::operator POINT): 16701 * platform/win/MouseEventWin.cpp: Added. 16702 (WebCore::MouseEvent::MouseEvent): 16703 * platform/win/TemporaryLinkStubs.cpp: 16704 (QLineEdit::setMaxLength): 16705 (ScrollView::scrollBy): 16706 (WebCore::Widget::setFocus): 16707 (FrameWin::respondToChangedSelection): 16708 (FrameWin::runJavaScriptPrompt): 16709 (FrameWin::recordFormValue): 16710 (FrameWin::registerCommandForRedo): 16711 (FrameWin::runJavaScriptAlert): 16712 (FrameWin::runJavaScriptConfirm): 16713 (FrameWin::openURL): 16714 (FrameWin::registerCommandForUndo): 16715 (FrameWin::addMessageToConsole): 16716 (FrameWin::mimeTypeForFileName): 16717 (FrameWin::shouldChangeSelection): 16718 (FrameWin::markMisspellingsInAdjacentWords): 16719 (FrameWin::markMisspellings): 16720 (FrameWin::personalbarVisible): 16721 (FrameWin::objectContentType): 16722 (FrameWin::createFrame): 16723 (FrameWin::createPlugin): 16724 (BrowserExtensionWin::setTypedIconURL): 16725 (BrowserExtensionWin::getHistoryLength): 16726 (BrowserExtensionWin::canRunModal): 16727 (BrowserExtensionWin::openURLNotify): 16728 (BrowserExtensionWin::createNewWindow): 16729 (BrowserExtensionWin::canRunModalNow): 16730 (BrowserExtensionWin::runModal): 16731 (BrowserExtensionWin::goBackOrForward): 16732 (BrowserExtensionWin::setIconURL): 16733 (FrameWin::passSubframeEventToSubframe): 16734 (FrameWin::lastEventIsMouseUp): 16735 (BrowserExtensionWin::BrowserExtensionWin): 16736 (Widget::setCursor): 16737 (ScrollView::visibleHeight): 16738 (ScrollView::visibleWidth): 16739 (ScrollView::setContentsPos): 16740 (ScrollView::contentsX): 16741 (ScrollView::contentsY): 16742 (ScrollView::contentsHeight): 16743 (ScrollView::contentsWidth): 16744 (ScrollView::viewportToContents): 16745 (TransferJob::TransferJob): 16746 (TransferJob::addMetaData): 16747 16748 2006-03-02 Justin Garcia <justin.garcia (a] apple.com> 16749 16750 Reviewed by mjs 16751 16752 https://bugs.webkit.org/show_bug.cgi?id=7150 16753 <rdar://4433765> TinyMCE: Undo still enabled after a location change, crashes if performed 16754 16755 Can't clear undo/redo operations registered by subframes in didOpenURL, 16756 because subframes have already been detached. 16757 16758 * page/Frame.cpp: 16759 (WebCore::Frame::didOpenURL): 16760 (WebCore::Frame::closeURL): 16761 16762 2006-03-01 Maciej Stachowiak <mjs (a] apple.com> 16763 16764 Reviewed by Darin. 16765 16766 - WebCore updates for "Set up new prototype macros and avoid using #if without defined() in JSC" 16767 http://bugs.webkit.org/show_bug.cgi?id=7387 16768 16769 Add Platform.h 16770 16771 * ForwardingHeaders/kxmlcore/Platform.h: Added. 16772 * bridge/mac/WebCoreFrameNamespaces.m: 16773 * bridge/mac/WebCoreViewFactory.m: 16774 * bridge/mac/WebDashboardRegion.m: 16775 * config.h: 16776 * platform/Logging.cpp: 16777 * platform/mac/ScrollViewMac.mm: 16778 (WebCore::ScrollView::addChild): 16779 * platform/mac/WebCoreCookieAdapter.m: 16780 * platform/mac/WebCoreGraphicsBridge.m: 16781 * platform/mac/WebCoreHistory.m: 16782 * platform/mac/WebCoreImageRendererFactory.m: 16783 * platform/mac/WebCoreKeyGenerator.m: 16784 * platform/mac/WebCoreView.m: 16785 16786 2006-03-02 Eric Seidel <eseidel (a] apple.com> 16787 16788 * WebCore.xcodeproj/project.pbxproj: update GraphicsContext.cpp path to fix build 16789 16790 2006-03-01 Eric Seidel <eseidel (a] apple.com> 16791 16792 Reviewed by andersca. 16793 16794 Add first-stab GraphicsContextCairo. 16795 Shuffle a few more link stubs around, remove uncessary WebCore:: 16796 16797 * WebCore.vcproj/WebCore/WebCore.vcproj: 16798 * platform/GraphicsContext.cpp: Added. 16799 * platform/GraphicsContext.h: 16800 * platform/cairo/GraphicsContextCairo.cpp: 16801 (WebCore::GraphicsContextState::GraphicsContextState): 16802 (WebCore::setColor): 16803 (WebCore::fillRectSourceOver): 16804 (WebCore::GraphicsContextPrivate::GraphicsContextPrivate): 16805 (WebCore::GraphicsContextPrivate::~GraphicsContextPrivate): 16806 (WebCore::GraphicsContext::GraphicsContext): 16807 (WebCore::GraphicsContext::~GraphicsContext): 16808 (WebCore::GraphicsContext::pen): 16809 (WebCore::GraphicsContext::setPen): 16810 (WebCore::GraphicsContext::setBrush): 16811 (WebCore::GraphicsContext::brush): 16812 (WebCore::GraphicsContext::save): 16813 (WebCore::GraphicsContext::restore): 16814 (WebCore::GraphicsContext::drawRect): 16815 (WebCore::GraphicsContext::setColorFromBrush): 16816 (WebCore::GraphicsContext::setColorFromPen): 16817 (WebCore::adjustLineToPixelBounderies): 16818 (WebCore::GraphicsContext::drawLine): 16819 (WebCore::GraphicsContext::drawEllipse): 16820 (WebCore::GraphicsContext::drawArc): 16821 (WebCore::GraphicsContext::drawConvexPolygon): 16822 (WebCore::GraphicsContext::drawFloatImage): 16823 (WebCore::GraphicsContext::drawTiledImage): 16824 (WebCore::GraphicsContext::drawScaledAndTiledImage): 16825 (WebCore::GraphicsContext::fillRect): 16826 (WebCore::GraphicsContext::addClip): 16827 (WebCore::GraphicsContext::setPaintingDisabled): 16828 (WebCore::GraphicsContext::paintingDisabled): 16829 * platform/cairo/ImageCairo.cpp: 16830 * platform/cg/GraphicsContextCG.cpp: Removed. 16831 * platform/win/TemporaryLinkStubs.cpp: 16832 (QLineEdit::selectAll): 16833 (Widget::mapFromGlobal): 16834 (QLineEdit::cursorPosition): 16835 (QTextEdit::setScrollBarModes): 16836 (QTextEdit::selectAll): 16837 (QComboBox::focusPolicy): 16838 (GraphicsContext::clearShadow): 16839 (QTextEdit::setCursorPosition): 16840 (GraphicsContext::drawText): 16841 (QLineEdit::setLiveSearch): 16842 (QComboBox::QComboBox): 16843 (Widget::lockDrawingFocus): 16844 (QTextEdit::setSelectionRange): 16845 (QSlider::QSlider): 16846 (ScrollView::scrollYOffset): 16847 (QComboBox::sizeHint): 16848 (QLineEdit::edited): 16849 (QTextEdit::text): 16850 (QSlider::value): 16851 (WebCore::Widget::setFocus): 16852 (WebCore::TransferJob::addMetaData): 16853 (FrameWin::respondToChangedContents): 16854 (FrameWin::unfocusWindow): 16855 (FrameWin::locationbarVisible): 16856 (FrameWin::respondToChangedSelection): 16857 (FrameWin::clearUndoRedoOperations): 16858 (FrameWin::issueRedoCommand): 16859 (FrameWin::getObjectInstanceForWidget): 16860 (FrameWin::getEmbedInstanceForWidget): 16861 (FrameWin::canRedo): 16862 (FrameWin::canUndo): 16863 (FrameWin::runJavaScriptPrompt): 16864 (FrameWin::recordFormValue): 16865 (FrameWin::registerCommandForRedo): 16866 (FrameWin::runJavaScriptAlert): 16867 (FrameWin::runJavaScriptConfirm): 16868 (FrameWin::openURL): 16869 (FrameWin::saveDocumentState): 16870 (FrameWin::print): 16871 (FrameWin::getAppletInstanceForWidget): 16872 (FrameWin::passMouseDownEventToWidget): 16873 (FrameWin::registerCommandForUndo): 16874 (FrameWin::issueCutCommand): 16875 (FrameWin::issueCopyCommand): 16876 (FrameWin::addMessageToConsole): 16877 (FrameWin::passWheelEventToChildWidget): 16878 (FrameWin::issueUndoCommand): 16879 (FrameWin::mimeTypeForFileName): 16880 (FrameWin::clearRecordedFormValues): 16881 (FrameWin::issuePasteCommand): 16882 (FrameWin::shouldChangeSelection): 16883 (FrameWin::scheduleClose): 16884 (FrameWin::markMisspellingsInAdjacentWords): 16885 (FrameWin::markMisspellings): 16886 (FrameWin::menubarVisible): 16887 (FrameWin::personalbarVisible): 16888 (FrameWin::lastEventIsMouseUp): 16889 (FrameWin::statusbarVisible): 16890 (FrameWin::toolbarVisible): 16891 (FrameWin::issueTransposeCommand): 16892 (FrameWin::userAgent): 16893 (FrameWin::canPaste): 16894 (FrameWin::incomingReferrer): 16895 (FrameWin::objectContentType): 16896 (FrameWin::passSubframeEventToSubframe): 16897 (FrameWin::createFrame): 16898 (FrameWin::canGoBackOrForward): 16899 (FrameWin::issuePasteAndMatchStyleCommand): 16900 (FrameWin::createPlugin): 16901 (FrameWin::generateFrameName): 16902 (QTextEdit::setWritingDirection): 16903 (QFontMetrics::checkSelectionPoint): 16904 (GraphicsContext::GraphicsContext): 16905 (QFontMetrics::isFixedPitch): 16906 (FrameWin::restoreDocumentState): 16907 (FrameWin::partClearedInBegin): 16908 (FrameWin::createEmptyDocument): 16909 (FrameWin::overrideMediaType): 16910 (FrameWin::setTitle): 16911 (FrameWin::handledOnloadEvents): 16912 (FrameWin::markedTextRange): 16913 (GraphicsContext::font): 16914 (GraphicsContext::setFont): 16915 16916 2006-03-02 Alexey Proskuryakov <ap (a] nypop.com> 16917 16918 Reviewed by Darin. 16919 16920 Changed an Objective-C forward declaration from "class" to "@class". 16921 This doesn't appear to fix any problems, though. 16922 16923 * platform/StringImpl.h: 16924 16925 2006-03-01 Justin Garcia <justin.garcia (a] apple.com> 16926 16927 Reviewed by darin 16928 16929 <http://bugs.webkit.org/show_bug.cgi?id=7059> 16930 TinyMCE: Select All + delete sends you Back intsead of deleting 16931 16932 * page/Frame.cpp: 16933 (WebCore::Frame::selectFrameElementInParentIfFullySelected): 16934 16935 2006-03-01 David Harrison <harrison (a] apple.com> 16936 16937 Reviewed by Justin. 16938 (missed these in my earlier commit for <rdar://problem/4359736>) 16939 16940 * bridge/mac/WebCoreFrameBridge.h: 16941 * bridge/mac/WebCoreFrameBridge.mm: 16942 (-[WebCoreFrameBridge canIncreaseSelectionListLevel]): 16943 (-[WebCoreFrameBridge canDecreaseSelectionListLevel]): 16944 (-[WebCoreFrameBridge increaseSelectionListLevel]): 16945 (-[WebCoreFrameBridge decreaseSelectionListLevel]): 16946 16947 2006-03-01 Eric Seidel <eseidel (a] apple.com> 16948 16949 Reviewed by mjs. 16950 16951 Fix win32 build, add IntRectWin and GraphicsContextCairo stub. 16952 16953 * Viewer/ImageDocument.cpp: 16954 * Viewer/ImageMainFrame.cpp: 16955 * WebCore.vcproj/WebCore/WebCore.vcproj: 16956 * platform/IntRect.h: 16957 * platform/cairo/GraphicsContextCairo.cpp: Added. 16958 * platform/win/TemporaryLinkStubs.cpp: 16959 (GraphicsContext::drawLineForText): 16960 (WebCore::GraphicsContext::fillRect): 16961 (WebCore::TransferJob::TransferJob): 16962 (GraphicsContext::GraphicsContext): 16963 (WebCore::GraphicsContext::~GraphicsContext): 16964 16965 2006-02-23 David Harrison <harrison (a] apple.com> 16966 16967 Reviewed by Justin. 16968 16969 <rdar://problem/4359736> Support outlining ability with lists 16970 16971 Added Mail SPI for list level changes. It is SPI because it is not complete support 16972 for outlining. See <rdar://problem/4457070> "API for html lists as note outlines". 16973 Additional support is to end a list when return is typed on empty list item. 16974 16975 * WebCore.vcproj/WebCore/WebCore.vcproj: 16976 * WebCore.xcodeproj/project.pbxproj: 16977 Added ModifySelectionListLevelCommand.cpp and ModifySelectionListLevelCommand.h 16978 16979 * bridge/mac/WebCoreFrameBridge.h: 16980 * bridge/mac/WebCoreFrameBridge.mm: 16981 (-[WebCoreFrameBridge canIncreaseSelectionListLevel]): 16982 (-[WebCoreFrameBridge canDecreaseSelectionListLevel]): 16983 (-[WebCoreFrameBridge increaseSelectionListLevel]): 16984 (-[WebCoreFrameBridge decreaseSelectionListLevel]): 16985 Supply list level calls in the bridge. 16986 16987 * editing/InsertParagraphSeparatorCommand.cpp: 16988 (WebCore::createListItemElement): 16989 New. Creates an li. 16990 16991 (WebCore::InsertParagraphSeparatorCommand::doApply): 16992 - slight logic cleanup 16993 - on empty list item, end the list 16994 16995 * editing/ModifySelectionListLevelCommand.cpp: Added. 16996 (WebCore::ModifySelectionListLevelCommand::ModifySelectionListLevelCommand): 16997 (WebCore::ModifySelectionListLevelCommand::preservesTypingStyle): 16998 (WebCore::ModifySelectionListLevelCommand::doApply): 16999 (WebCore::ModifySelectionListLevelCommand::canIncreaseSelectionListLevel): 17000 (WebCore::ModifySelectionListLevelCommand::canDecreaseSelectionListLevel): 17001 (WebCore::ModifySelectionListLevelCommand::increaseSelectionListLevel): 17002 (WebCore::ModifySelectionListLevelCommand::decreaseSelectionListLevel): 17003 (WebCore::modifySelectionListLevel): 17004 (WebCore::getStartEndListChildren): 17005 (WebCore::canIncreaseListLevel): 17006 (WebCore::canDecreaseListLevel): 17007 (WebCore::ModifySelectionListLevelCommand::insertSiblingNodeRangeBefore): 17008 (WebCore::ModifySelectionListLevelCommand::insertSiblingNodeRangeAfter): 17009 (WebCore::ModifySelectionListLevelCommand::appendSiblingNodeRange): 17010 (WebCore::ModifySelectionListLevelCommand::increaseListLevel): 17011 (WebCore::ModifySelectionListLevelCommand::decreaseListLevel): 17012 * editing/ModifySelectionListLevelCommand.h: Added. 17013 New editing command for adjusting the list level. 17014 17015 * editing/ReplaceSelectionCommand.cpp: 17016 (WebCore::ReplaceSelectionCommand::doApply): 17017 Slight logic cleanup 17018 17019 * editing/htmlediting.cpp: 17020 (WebCore::isListElement): 17021 (WebCore::enclosingListChild): 17022 New helpers. 17023 17024 (WebCore::isTableElement): 17025 Allow caller to pass 0... return false in that case. 17026 17027 * editing/htmlediting.h: 17028 New helpers. 17029 17030 * rendering/RenderContainer.cpp: 17031 (WebCore::updateListMarkerNumbers): 17032 Allow for list children that are not li nodes. Ignore and continue rather than stopping. 17033 17034 (WebCore::RenderContainer::addChild): 17035 Allow for nil beforeChild, meaning "add at end". 17036 17037 2006-03-01 Eric Seidel <eseidel (a] apple.com> 17038 17039 Reviewed by justing. 17040 17041 Update ESelectionGranulartiy enum to use newer CamelCase styling. 17042 17043 * bridge/mac/WebCoreFrameBridge.mm: 17044 (-[WebCoreFrameBridge alterCurrentSelection:direction:granularity:]): 17045 * editing/Selection.cpp: 17046 (WebCore::Selection::Selection): 17047 (WebCore::Selection::validate): 17048 * editing/SelectionController.cpp: 17049 (WebCore::SelectionController::modifyExtendingRightForward): 17050 (WebCore::SelectionController::modifyMovingRightForward): 17051 (WebCore::SelectionController::modifyExtendingLeftBackward): 17052 (WebCore::SelectionController::modifyMovingLeftBackward): 17053 (WebCore::SelectionController::modify): 17054 * editing/TypingCommand.cpp: 17055 (WebCore::TypingCommand::deleteKeyPressed): 17056 (WebCore::TypingCommand::forwardDeleteKeyPressed): 17057 * editing/jsediting.cpp: 17058 * editing/text_granularity.h: 17059 (WebCore::): 17060 * page/Frame.cpp: 17061 (WebCore::Frame::selectClosestWordFromMouseEvent): 17062 (WebCore::Frame::handleMousePressEventTripleClick): 17063 (WebCore::Frame::handleMousePressEventSingleClick): 17064 (WebCore::Frame::handleMouseMoveEventSelection): 17065 17066 2006-03-01 Alexander Kellett <lypanov (a] kde.org> 17067 17068 Reviewed by Maciej. 17069 17070 - fix http://bugs.webkit.org/show_bug.cgi?id=5966 17071 17072 Fixes already existing test: 17073 svg/W3C-SVG-1.1/coords-viewattr-02-b.svg 17074 17075 * kcanvas/RenderSVGImage.cpp: 17076 (WebCore::RenderSVGImage::adjustRectsForAspectRatio): 17077 (WebCore::RenderSVGImage::paint): 17078 * kcanvas/RenderSVGImage.h: 17079 17080 2006-03-01 Alexey Proskuryakov <ap (a] nypop.com> 17081 17082 Reviewed by Darin. 17083 17084 - http://bugs.webkit.org/show_bug.cgi?id=3812 17085 XMLHttpRequest: PUT, DELETE, HEAD and all other methods but POST actually do a GET. 17086 17087 HEAD is currently unimplemented because of what seems to be a bug in NSURLConnection, 17088 and does a GET instead. 17089 17090 * kwq/KWQKJobClasses.h: Add a method parameter to TransferJob. 17091 * kwq/KWQKJobClasses.mm: 17092 (WebCore::TransferJobPrivate::TransferJobPrivate): 17093 (WebCore::TransferJob::TransferJob): 17094 (WebCore::TransferJob::method): 17095 * bridge/mac/WebCoreFrameBridge.h: URL loading functions now take a method parameter. 17096 * dom/xml_tokenizer.cpp: 17097 (WebCore::openFunc): 17098 * khtml/xsl/xslt_processorimpl.cpp: 17099 (DOM::docLoaderFunc): 17100 * kwq/KWQLoader.mm: 17101 (KWQServeRequest): 17102 (KWQServeSynchronousRequest): 17103 * loader/loader.cpp: 17104 (WebCore::Loader::servePendingRequests): 17105 * page/Frame.cpp: 17106 (WebCore::Frame::didOpenURL): 17107 * xml/xmlhttprequest.cpp: 17108 (WebCore::XMLHttpRequest::send): Honor the method passed in open(). 17109 * khtml/ecma/JSXMLHttpRequest.cpp: 17110 (KJS::JSXMLHttpRequestProtoFunc::callAsFunction): Don't serialize null as "null". 17111 17112 2006-03-01 Timothy Hatcher <timothy (a] apple.com> 17113 17114 Reviewed by Darin. 17115 17116 http://bugs.webkit.org/show_bug.cgi?id=7450 17117 elementAtPoint is expensive and should return a smart dictionary 17118 17119 <rdar://problem/2952761> moving the mouse around eats more CPU than I would expect (7450) 17120 17121 Support for WebKit. This removes the old elementAtPoint: on the bridge. 17122 WebKit now uses the bridge method getInnerNonSharedNode:innerNode:URLElement:atPoint: 17123 17124 * WebCore.exp: removes the WebCore* dictionary keys 17125 * bindings/objc/DOM.mm: 17126 (-[DOMElement image]): new method to get an NSImage if the element has an image renderer 17127 * bindings/objc/DOMHTML.mm: 17128 (-[DOMHTMLElement titleDisplayString]): new method that returns the title after doing the backslash as currency symbol conversion 17129 (-[DOMHTMLInputElement altDisplayString]): ditto for alt 17130 (-[DOMHTMLImageElement altDisplayString]): ditto 17131 (-[DOMHTMLAppletElement altDisplayString]): ditto 17132 (-[DOMHTMLAreaElement altDisplayString]): ditto 17133 (-[DOMHTMLAnchorElement absoluteLinkURL]): new method to get the absolute NSURL 17134 (-[DOMHTMLAreaElement absoluteLinkURL]): ditto 17135 (-[DOMHTMLLinkElement absoluteLinkURL]): ditto 17136 (-[DOMHTMLInputElement absoluteImageURL]): new method to get the absolute image location as an NSURL 17137 (-[DOMHTMLImageElement absoluteImageURL]): ditto 17138 (-[DOMHTMLObjectElement absoluteImageURL]): ditto 17139 * bindings/objc/DOMPrivate.h: 17140 * bridge/mac/WebCoreFrameBridge.h: 17141 * bridge/mac/WebCoreFrameBridge.mm: 17142 (-[WebCoreFrameBridge getInnerNonSharedNode:innerNode:URLElement:atPoint:]): 17143 (-[WebCoreFrameBridge isPointInsideSelection:]): 17144 * dom/DocumentImpl.cpp: 17145 (WebCore::DocumentImpl::prepareMouseEvent): 17146 (WebCore::DocumentImpl::backslashAsCurrencySymbol): 17147 * dom/DocumentImpl.h: 17148 * rendering/render_layer.cpp: 17149 (WebCore::RenderLayer::hitTest): 17150 * rendering/render_object.h: 17151 (WebCore::RenderObject::NodeInfo::URLElement): 17152 (WebCore::RenderObject::NodeInfo::setURLElement): 17153 17154 2006-03-01 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 17155 17156 Test: fast/css/hover-subselector.html 17157 17158 Reviewed by Hyatt. 17159 17160 - fix http://bugs.webkit.org/show_bug.cgi?id=7327 17161 REGRESSION (r12869): :hover subselector does not work in quirks mode 17162 17163 * css/cssstyleselector.h: 17164 * css/cssstyleselector.cpp: 17165 (WebCore::CSSStyleSelector::checkSelector): Pass flag to indicate sub-selector. 17166 (WebCore::CSSStyleSelector::checkOneSelector): Apply the *:hover and *:active quirks only 17167 when there are no sub-selectors. 17168 17169 2006-03-01 Maciej Stachowiak <mjs (a] apple.com> 17170 17171 Rubber stamped by Hyatt. 17172 17173 - fix win32 build (and make dumprendertree run) 17174 17175 * kwq/KWQComboBox.h: 17176 * platform/win/TemporaryLinkStubs.cpp: 17177 (QTextEdit::selectionEnd): 17178 (Widget::~Widget): 17179 (GraphicsContext::beginTransparencyLayer): 17180 (QComboBox::populate): 17181 (GraphicsContext::drawConvexPolygon): 17182 (QFontMetrics::selectionRectForText): 17183 (GraphicsContext::setShadow): 17184 (GraphicsContext::clearFocusRing): 17185 (GraphicsContext::drawImageInRect): 17186 (KWQFileButton::setFilename): 17187 (KWQFileButton::focusPolicy): 17188 (KWQFileButton::frameGeometry): 17189 (QSlider::focusPolicy): 17190 (WebCore::GraphicsContext::font): 17191 (QTextEdit::setWritingDirection): 17192 (QFontMetrics::checkSelectionPoint): 17193 (QFontMetrics::isFixedPitch): 17194 (WebCore::TransferJob::addMetaData): 17195 17196 2006-02-28 Darin Adler <darin (a] apple.com> 17197 17198 Reviewed by Eric. 17199 17200 - http://bugs.webkit.org/show_bug.cgi?id=7444 17201 move QPainter to platform directory and name it GraphicsContext 17202 17203 * platform/GraphicsContext.h: Added. 17204 * platform/TextDirection.h: Added. 17205 * platform/cg/GraphicsContextCG.cpp: Added. 17206 * platform/mac/GraphicsContextMac.mm: Added. 17207 17208 * kwq/KWQPainter.h: Removed. 17209 * kwq/KWQPainter.mm: Removed. 17210 * ForwardingHeaders/qpainter.h: Removed. 17211 17212 * WebCore.xcodeproj/project.pbxproj: Updated for moved files. 17213 * WebCore.vcproj/WebCore/WebCore.vcproj: Updated for moved files. 17214 * platform/win/TemporaryLinkStubs.cpp: Updated. 17215 17216 * bridge/mac/MacFrame.mm: (WebCore::MacFrame::setDisplaysWithFocusAttributes): 17217 * bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge drawRect:]): 17218 * editing/SelectionController.h: 17219 * editing/SelectionController.cpp: (WebCore::SelectionController::paintCaret): 17220 * kcanvas/KCanvasResources.cpp: (WebCore::KCanvasMarker::draw): 17221 * khtml/ecma/kjs_html.cpp: 17222 (KJS::KJS::Context2DFunction::callAsFunction): 17223 (KJS::Context2D::putValueProperty): 17224 (KJS::drawPattern): 17225 * page/Frame.h: 17226 * page/Frame.cpp: 17227 (WebCore::Frame::paintCaret): 17228 (WebCore::Frame::paintDragCaret): 17229 (WebCore::Frame::paint): 17230 (WebCore::Frame::adjustPageHeight): 17231 * page/FrameView.h: 17232 * platform/Font.h: 17233 * platform/Font.cpp: 17234 (WebCore::Font::selectionRectForText): 17235 (WebCore::Font::drawHighlightForText): 17236 (WebCore::Font::drawText): 17237 * platform/Widget.h: 17238 * platform/mac/WidgetMac.mm: (WebCore::Widget::paint): 17239 * rendering/InlineTextBox.h: 17240 * rendering/InlineTextBox.cpp: 17241 (WebCore::InlineTextBox::paint): 17242 (WebCore::InlineTextBox::paintSelection): 17243 (WebCore::InlineTextBox::paintMarkedTextBackground): 17244 (WebCore::InlineTextBox::paintDecoration): 17245 (WebCore::InlineTextBox::paintSpellingMarker): 17246 (WebCore::InlineTextBox::paintTextMatchMarker): 17247 (WebCore::InlineTextBox::paintAllMarkersOfType): 17248 (WebCore::InlineTextBox::paintMarkedTextUnderline): 17249 (WebCore::InlineTextBox::offsetForPosition): 17250 * rendering/RenderTableCell.cpp: 17251 (WebCore::outlineBox): 17252 (WebCore::RenderTableCell::paintCollapsedBorder): 17253 (WebCore::RenderTableCell::paintBoxDecorations): 17254 * rendering/RenderTableCell.h: 17255 * rendering/render_box.cpp: 17256 (WebCore::RenderBox::paintBackgrounds): 17257 (WebCore::RenderBox::paintBackground): 17258 (WebCore::RenderBox::paintBackgroundExtended): 17259 (WebCore::RenderBox::outlineBox): 17260 * rendering/render_box.h: 17261 * rendering/render_button.cpp: 17262 (WebCore::RenderButton::RenderButton): 17263 (WebCore::RenderButton::paintObject): 17264 * rendering/render_button.h: 17265 (WebCore::RenderButton::removeLeftoverAnonymousBoxes): 17266 * rendering/render_canvas.cpp: 17267 * rendering/render_canvasimage.cpp: 17268 (WebCore::RenderCanvasImage::paint): 17269 * rendering/render_flow.cpp: 17270 (WebCore::RenderFlow::addFocusRingRects): 17271 (WebCore::RenderFlow::paintFocusRing): 17272 (WebCore::RenderFlow::paintOutlines): 17273 (WebCore::RenderFlow::paintOutlineForLine): 17274 * rendering/render_flow.h: 17275 * rendering/render_form.cpp: 17276 (WebCore::RenderLineEdit::setStyle): 17277 (WebCore::RenderFieldset::paintBorderMinusLegend): 17278 (WebCore::RenderSelect::setWidgetWritingDirection): 17279 (WebCore::RenderTextArea::setStyle): 17280 * rendering/render_form.h: 17281 (WebCore::RenderFieldset::renderName): 17282 * rendering/render_frames.cpp: 17283 (WebCore::RenderFrameSet::userResize): 17284 * rendering/render_image.cpp: 17285 (WebCore::RenderImage::paint): 17286 * rendering/render_layer.cpp: 17287 (WebCore::RenderLayer::beginTransparencyLayers): 17288 (WebCore::RenderLayer::paintScrollbars): 17289 (WebCore::RenderLayer::paint): 17290 (WebCore::setClip): 17291 (WebCore::restoreClip): 17292 (WebCore::RenderLayer::paintLayer): 17293 (WebCore::Marquee::direction): 17294 * rendering/render_layer.h: 17295 * rendering/render_line.cpp: 17296 (WebCore::InlineFlowBox::paintBackgrounds): 17297 (WebCore::InlineFlowBox::paintBackground): 17298 (WebCore::InlineFlowBox::paintBackgroundAndBorder): 17299 (WebCore::InlineFlowBox::paintDecorations): 17300 (WebCore::EllipsisBox::paint): 17301 * rendering/render_line.h: 17302 * rendering/render_list.cpp: 17303 (WebCore::RenderListMarker::paint): 17304 * rendering/render_object.cpp: 17305 (WebCore::RenderObject::drawBorder): 17306 (WebCore::RenderObject::paintBorderImage): 17307 (WebCore::RenderObject::paintBorder): 17308 (WebCore::RenderObject::addFocusRingRects): 17309 (WebCore::RenderObject::paintOutline): 17310 (WebCore::RenderObject::selectionColor): 17311 * rendering/render_object.h: 17312 (WebCore::RenderObject::element): 17313 (WebCore::RenderObject::document): 17314 (WebCore::RenderObject::setNode): 17315 (WebCore::RenderObject::node): 17316 (WebCore::RenderObject::PaintInfo::PaintInfo): 17317 (WebCore::RenderObject::paintBoxDecorations): 17318 (WebCore::RenderObject::paintBackgroundExtended): 17319 (WebCore::RenderObject::printBoxDecorations): 17320 * rendering/render_replaced.cpp: (WebCore::RenderReplaced::selectionColor): 17321 * rendering/render_replaced.h: 17322 Updated to use GraphicsContext instead of QPainter. 17323 17324 * css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::applyProperty): 17325 * kwq/KWQComboBox.h: 17326 * kwq/KWQComboBox.mm: (QComboBox::setWritingDirection): 17327 * kwq/KWQLineEdit.h: 17328 * kwq/KWQLineEdit.mm: (QLineEdit::setWritingDirection): 17329 * kwq/KWQListBox.h: 17330 * kwq/KWQListBox.mm: (QListBox::setWritingDirection): 17331 * kwq/KWQTextEdit.h: 17332 * kwq/KWQTextEdit.mm: (QTextEdit::setWritingDirection): 17333 * rendering/bidi.cpp: 17334 (khtml::bidiNext): 17335 (khtml::bidiFirst): 17336 Updated to use TextDirection instead of QPainter::TextDirection and EDirection. 17337 17338 * kcanvas/device/KRenderingDevice.h: Added renderingDevice here to 17339 replace QPainter::renderingDevice for now. 17340 17341 * khtml/ecma/kjs_html.h: Fixed comments to mention GraphicsContext. 17342 17343 * khtml/html/html_imageimpl.h: 17344 * page/FrameView.cpp: 17345 * rendering/RenderBlock.cpp: 17346 Added include needed since I reduced includes elsewhere. 17347 17348 * kwq/KWQFontMetrics.h: 17349 * kwq/KWQFontMetrics.mm: (QFontMetrics::checkSelectionPoint): 17350 Changed QChar* to be const QChar*. 17351 17352 * platform/FontDescription.h: Added include that was missing. 17353 * rendering/render_theme.cpp: Ditto. 17354 17355 * platform/Image.h: Removed unnecessary forward declaration of QPainter. 17356 17357 * rendering/RenderText.h: Clean up types, use const. 17358 17359 * rendering/render_style.h: Removed EDirection and replaced it with TextDirection. 17360 17361 * kcanvas/KCanvasCreator.cpp: 17362 (WebCore::KCanvasCreator::createRoundedRectangle): 17363 (WebCore::KCanvasCreator::createRectangle): 17364 (WebCore::KCanvasCreator::createEllipse): 17365 (WebCore::KCanvasCreator::createLine): 17366 * kcanvas/KCanvasPath.cpp: (WebCore::operator<<): 17367 * kcanvas/KCanvasTreeDebug.cpp: (WebCore::operator<<): 17368 * kcanvas/RenderForeignObject.cpp: (WebCore::RenderForeignObject::paint): 17369 * kcanvas/RenderPath.cpp: (WebCore::RenderPath::paint): 17370 * kcanvas/RenderSVGImage.cpp: 17371 (WebCore::RenderSVGImage::paint): 17372 (WebCore::RenderSVGImage::translateForAttributes): 17373 * kcanvas/RenderSVGText.cpp: 17374 (WebCore::RenderSVGText::paint): 17375 * kcanvas/device/quartz/KCanvasFilterQuartz.mm: 17376 (WebCore::KCanvasFilterQuartz::prepareFilter): 17377 (WebCore::KCanvasFilterQuartz::applyFilter): 17378 * kcanvas/device/quartz/KCanvasMaskerQuartz.mm: 17379 (WebCore::KCanvasMaskerQuartz::applyMask): 17380 * kcanvas/device/quartz/KCanvasResourcesQuartz.mm: 17381 (WebCore::KCanvasContainerQuartz::paint): 17382 (WebCore::KCanvasClipperQuartz::applyClip): 17383 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm: 17384 (WebCore::KRenderingDeviceQuartz::pushContext): 17385 (WebCore::KRenderingDeviceQuartz::popContext): 17386 (WebCore::renderingDevice): 17387 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm: 17388 (WebCore::KRenderingPaintServerGradientQuartz::setup): 17389 (WebCore::KRenderingPaintServerGradientQuartz::renderPath): 17390 (WebCore::KRenderingPaintServerGradientQuartz::teardown): 17391 * ksvg2/misc/KCanvasRenderingStyle.cpp: (WebCore::sharedSolidPaintServer): 17392 * ksvg2/svg/SVGAElementImpl.cpp: (SVGAElementImpl::createRenderer): 17393 * ksvg2/svg/SVGClipPathElementImpl.cpp: (SVGClipPathElementImpl::canvasResource): 17394 * ksvg2/svg/SVGFEBlendElementImpl.cpp: (SVGFEBlendElementImpl::filterEffect): 17395 * ksvg2/svg/SVGFEColorMatrixElementImpl.cpp: (SVGFEColorMatrixElementImpl::filterEffect): 17396 * ksvg2/svg/SVGFEComponentTransferElementImpl.cpp: (SVGFEComponentTransferElementImpl::filterEffect): 17397 * ksvg2/svg/SVGFECompositeElementImpl.cpp: (SVGFECompositeElementImpl::filterEffect): 17398 * ksvg2/svg/SVGFEDiffuseLightingElementImpl.cpp: (WebCore::SVGFEDiffuseLightingElementImpl::filterEffect): 17399 * ksvg2/svg/SVGFEDisplacementMapElementImpl.cpp: (SVGFEDisplacementMapElementImpl::filterEffect): 17400 * ksvg2/svg/SVGFEFloodElementImpl.cpp: (SVGFEFloodElementImpl::filterEffect): 17401 * ksvg2/svg/SVGFEGaussianBlurElementImpl.cpp: (SVGFEGaussianBlurElementImpl::filterEffect): 17402 * ksvg2/svg/SVGFEImageElementImpl.cpp: (SVGFEImageElementImpl::filterEffect): 17403 * ksvg2/svg/SVGFEMergeElementImpl.cpp: (SVGFEMergeElementImpl::filterEffect): 17404 * ksvg2/svg/SVGFEOffsetElementImpl.cpp: (SVGFEOffsetElementImpl::filterEffect): 17405 * ksvg2/svg/SVGFESpecularLightingElementImpl.cpp: (SVGFESpecularLightingElementImpl::filterEffect): 17406 * ksvg2/svg/SVGFETileElementImpl.cpp: (SVGFETileElementImpl::filterEffect): 17407 * ksvg2/svg/SVGFETurbulenceElementImpl.cpp: (SVGFETurbulenceElementImpl::filterEffect): 17408 * ksvg2/svg/SVGFilterElementImpl.cpp: (SVGFilterElementImpl::canvasResource): 17409 * ksvg2/svg/SVGGElementImpl.cpp: (SVGGElementImpl::createRenderer): 17410 * ksvg2/svg/SVGGradientElementImpl.cpp: (SVGGradientElementImpl::canvasResource): 17411 * ksvg2/svg/SVGMarkerElementImpl.cpp: 17412 (WebCore::SVGMarkerElementImpl::canvasResource): 17413 (WebCore::SVGMarkerElementImpl::createRenderer): 17414 * ksvg2/svg/SVGMaskElementImpl.cpp: 17415 (WebCore::SVGMaskElementImpl::drawMaskerContent): 17416 (WebCore::SVGMaskElementImpl::createRenderer): 17417 (WebCore::SVGMaskElementImpl::canvasResource): 17418 * ksvg2/svg/SVGPathElementImpl.cpp: (WebCore::SVGPathElementImpl::toPathData): 17419 * ksvg2/svg/SVGPatternElementImpl.cpp: 17420 (WebCore::SVGPatternElementImpl::drawPatternContentIntoTile): 17421 (WebCore::SVGPatternElementImpl::createRenderer): 17422 (WebCore::SVGPatternElementImpl::canvasResource): 17423 * ksvg2/svg/SVGPolygonElementImpl.cpp: (SVGPolygonElementImpl::toPathData): 17424 * ksvg2/svg/SVGPolylineElementImpl.cpp: (SVGPolylineElementImpl::toPathData): 17425 * ksvg2/svg/SVGSVGElementImpl.cpp: (WebCore::SVGSVGElementImpl::createRenderer): 17426 * ksvg2/svg/SVGStyledElementImpl.cpp: (WebCore::SVGStyledElementImpl::createRenderer): 17427 * ksvg2/svg/SVGSwitchElementImpl.cpp: (SVGSwitchElementImpl::createRenderer): 17428 * ksvg2/svg/SVGUseElementImpl.cpp: (SVGUseElementImpl::createRenderer): 17429 Updated to use renderingDevice instead of QPainter::renderingDevice. 17430 17431 2006-02-28 Darin Adler <darin (a] apple.com> 17432 17433 - fixed part of the reason the build is broken 17434 17435 * WebCore.xcodeproj/project.pbxproj: Updated project file. 17436 17437 2006-02-28 Darin Adler <darin (a] apple.com> 17438 17439 Rubber-stamped by Hyatt. 17440 17441 - moved the WebCoreXXX files from kwq to appropriate directories 17442 17443 No changes to the contents of the files. 17444 17445 * WebCore.xcodeproj/project.pbxproj: Updated project file. 17446 * bridge/mac/WebCoreCache.h: Added. 17447 * bridge/mac/WebCoreCache.mm: Added. 17448 * bridge/mac/WebCoreEncodings.h: Added. 17449 * bridge/mac/WebCoreEncodings.mm: Added. 17450 * bridge/mac/WebCoreFrameNamespaces.h: Added. 17451 * bridge/mac/WebCoreFrameNamespaces.m: Added. 17452 * bridge/mac/WebCoreFrameView.h: Added. 17453 * bridge/mac/WebCoreJavaScript.h: Added. 17454 * bridge/mac/WebCoreJavaScript.mm: Added. 17455 * bridge/mac/WebCoreKeyboardAccess.h: Added. 17456 * bridge/mac/WebCoreResourceLoader.h: Added. 17457 * bridge/mac/WebCoreScriptDebugger.h: Added. 17458 * bridge/mac/WebCoreScriptDebugger.mm: Added. 17459 * bridge/mac/WebCoreSettings.h: Added. 17460 * bridge/mac/WebCoreSettings.mm: Added. 17461 * bridge/mac/WebCoreTextDecoder.h: Added. 17462 * bridge/mac/WebCoreTextDecoder.mm: Added. 17463 * bridge/mac/WebCoreViewFactory.h: Added. 17464 * bridge/mac/WebCoreViewFactory.m: Added. 17465 * bridge/mac/WebDashboardRegion.h: Added. 17466 * bridge/mac/WebDashboardRegion.m: Added. 17467 * kwq/WebCoreCache.h: Removed. 17468 * kwq/WebCoreCache.mm: Removed. 17469 * kwq/WebCoreCookieAdapter.h: Removed. 17470 * kwq/WebCoreCookieAdapter.m: Removed. 17471 * kwq/WebCoreEncodings.h: Removed. 17472 * kwq/WebCoreEncodings.mm: Removed. 17473 * kwq/WebCoreFrameNamespaces.h: Removed. 17474 * kwq/WebCoreFrameNamespaces.m: Removed. 17475 * kwq/WebCoreFrameView.h: Removed. 17476 * kwq/WebCoreGraphicsBridge.h: Removed. 17477 * kwq/WebCoreGraphicsBridge.m: Removed. 17478 * kwq/WebCoreHistory.h: Removed. 17479 * kwq/WebCoreHistory.m: Removed. 17480 * kwq/WebCoreImageRenderer.h: Removed. 17481 * kwq/WebCoreImageRendererFactory.h: Removed. 17482 * kwq/WebCoreImageRendererFactory.m: Removed. 17483 * kwq/WebCoreJavaScript.h: Removed. 17484 * kwq/WebCoreJavaScript.mm: Removed. 17485 * kwq/WebCoreKeyGenerator.h: Removed. 17486 * kwq/WebCoreKeyGenerator.m: Removed. 17487 * kwq/WebCoreKeyboardAccess.h: Removed. 17488 * kwq/WebCoreResourceLoader.h: Removed. 17489 * kwq/WebCoreScriptDebugger.h: Removed. 17490 * kwq/WebCoreScriptDebugger.mm: Removed. 17491 * kwq/WebCoreSettings.h: Removed. 17492 * kwq/WebCoreSettings.mm: Removed. 17493 * kwq/WebCoreTextDecoder.h: Removed. 17494 * kwq/WebCoreTextDecoder.mm: Removed. 17495 * kwq/WebCoreTextRenderer.h: Removed. 17496 * kwq/WebCoreTextRendererFactory.h: Removed. 17497 * kwq/WebCoreTextRendererFactory.mm: Removed. 17498 * kwq/WebCoreView.h: Removed. 17499 * kwq/WebCoreView.m: Removed. 17500 * kwq/WebCoreViewFactory.h: Removed. 17501 * kwq/WebCoreViewFactory.m: Removed. 17502 * kwq/WebDashboardRegion.h: Removed. 17503 * kwq/WebDashboardRegion.m: Removed. 17504 * platform/mac/WebCoreCookieAdapter.h: Added. 17505 * platform/mac/WebCoreCookieAdapter.m: Added. 17506 * platform/mac/WebCoreGraphicsBridge.h: Added. 17507 * platform/mac/WebCoreGraphicsBridge.m: Added. 17508 * platform/mac/WebCoreHistory.h: Added. 17509 * platform/mac/WebCoreHistory.m: Added. 17510 * platform/mac/WebCoreImageRenderer.h: Added. 17511 * platform/mac/WebCoreImageRendererFactory.h: Added. 17512 * platform/mac/WebCoreImageRendererFactory.m: Added. 17513 * platform/mac/WebCoreKeyGenerator.h: Added. 17514 * platform/mac/WebCoreKeyGenerator.m: Added. 17515 * platform/mac/WebCoreTextRenderer.h: Added. 17516 * platform/mac/WebCoreTextRendererFactory.h: Added. 17517 * platform/mac/WebCoreTextRendererFactory.mm: Added. 17518 * platform/mac/WebCoreView.h: Added. 17519 * platform/mac/WebCoreView.m: Added. 17520 17521 2006-02-28 David Hyatt <hyatt (a] apple.com> 17522 17523 Fold QFont into Font and eliminate QFont completely. 17524 17525 Reviewed by eric 17526 17527 * ForwardingHeaders/qfont.h: Removed. 17528 * WebCore.xcodeproj/project.pbxproj: 17529 * bindings/objc/DOM.mm: 17530 (-[DOMElement _font]): 17531 * bridge/mac/MacFrame.mm: 17532 (WebCore::MacFrame::attributedString): 17533 (WebCore::MacFrame::fontForSelection): 17534 (WebCore::MacFrame::fontAttributesForSelectionStart): 17535 * bridge/mac/WebCoreFrameBridge.mm: 17536 * css/css_computedstyle.cpp: 17537 (WebCore::CSSComputedStyleDeclarationImpl::getPropertyCSSValue): 17538 * css/cssstyleselector.cpp: 17539 (WebCore::CSSStyleSelector::applyProperty): 17540 * dom/DocumentImpl.cpp: 17541 (WebCore::DocumentImpl::recalcStyle): 17542 * ksvg2/svg/SVGLengthImpl.cpp: 17543 (SVGLengthImpl::updateValue): 17544 * kwq/KWQAccObject.mm: 17545 (AXAttributeStringSetStyle): 17546 * kwq/KWQComboBox.h: 17547 * kwq/KWQComboBox.mm: 17548 (QComboBox::setFont): 17549 * kwq/KWQFont.h: Removed. 17550 * kwq/KWQFont.mm: Removed. 17551 * kwq/KWQFontMetrics.h: 17552 * kwq/KWQFontMetrics.mm: 17553 (QFontMetricsPrivate::QFontMetricsPrivate): 17554 (QFontMetricsPrivate::~QFontMetricsPrivate): 17555 (QFontMetricsPrivate::getRenderer): 17556 (QFontMetricsPrivate::fontDescription): 17557 (QFontMetricsPrivate::setFontDescription): 17558 (QFontMetricsPrivate::getWebCoreFont): 17559 (QFontMetricsPrivate::isFixedPitch): 17560 (QFontMetricsPrivate::determinePitch): 17561 (QFontMetrics::QFontMetrics): 17562 (QFontMetrics::setFontDescription): 17563 (QFontMetrics::width): 17564 (QFontMetrics::floatWidth): 17565 (QFontMetrics::selectionRectForText): 17566 (QFontMetrics::checkSelectionPoint): 17567 (QFontMetrics::getWebCoreFont): 17568 (QFontMetrics::isFixedPitch): 17569 * kwq/KWQKHTMLSettings.h: 17570 * kwq/KWQLineEdit.h: 17571 * kwq/KWQLineEdit.mm: 17572 (-[NSSearchField _addStringToRecentSearches:]): 17573 (QLineEdit::setFont): 17574 * kwq/KWQListBox.h: 17575 * kwq/KWQListBox.mm: 17576 (QListBox::sizeForNumberOfLines): 17577 (QListBox::setFont): 17578 (-[KWQTableView drawRow:clipRect:]): 17579 * kwq/KWQPainter.h: 17580 * kwq/KWQPainter.mm: 17581 (WebCore::QPainter::font): 17582 (WebCore::QPainter::setFont): 17583 (WebCore::QPainter::fontMetrics): 17584 (WebCore::QPainter::_updateRenderer): 17585 (WebCore::QPainter::drawText): 17586 (WebCore::QPainter::drawHighlightForText): 17587 * kwq/KWQSlider.h: 17588 * kwq/KWQSlider.mm: 17589 (QSlider::setFont): 17590 * kwq/KWQTextEdit.h: 17591 * kwq/KWQTextEdit.mm: 17592 (QTextEdit::setFont): 17593 * platform/Font.cpp: 17594 (khtml::Font::update): 17595 * platform/Font.h: 17596 (WebCore::): 17597 (WebCore::Font::m_wordSpacing): 17598 (WebCore::Font::Font): 17599 (WebCore::Font::operator==): 17600 (WebCore::Font::operator!=): 17601 (WebCore::Font::fontMetrics): 17602 (WebCore::Font::pixelSize): 17603 (WebCore::Font::size): 17604 (WebCore::Font::letterSpacing): 17605 (WebCore::Font::setWordSpacing): 17606 (WebCore::Font::setLetterSpacing): 17607 (WebCore::Font::isFixedPitch): 17608 (WebCore::Font::isPrinterFont): 17609 (WebCore::Font::firstFamily): 17610 (WebCore::Font::family): 17611 (WebCore::Font::italic): 17612 (WebCore::Font::weight): 17613 (WebCore::Font::getNSFamily): 17614 (WebCore::Font::getNSFont): 17615 (WebCore::Font::getWebCoreFont): 17616 * platform/FontDescription.h: 17617 (WebCore::FontDescription::FontDescription): 17618 * platform/FontFamily.h: 17619 * platform/Widget.h: 17620 * platform/mac/WidgetMac.mm: 17621 (WebCore::Widget::font): 17622 (WebCore::Widget::setFont): 17623 * rendering/InlineTextBox.cpp: 17624 (WebCore::InlineTextBox::selectionRect): 17625 (WebCore::InlineTextBox::paint): 17626 (WebCore::InlineTextBox::positionForOffset): 17627 * rendering/RenderBlock.cpp: 17628 (WebCore::stripTrailingSpace): 17629 * rendering/RenderText.cpp: 17630 (WebCore::RenderText::cacheWidths): 17631 (WebCore::RenderText::trimmedMinMaxWidth): 17632 (WebCore::RenderText::calcMinMaxWidth): 17633 (WebCore::RenderText::font): 17634 (WebCore::RenderText::width): 17635 * rendering/RenderText.h: 17636 * rendering/bidi.cpp: 17637 (khtml::RenderBlock::computeHorizontalPositionsForLine): 17638 (khtml::RenderBlock::findNextLineBreak): 17639 * rendering/render_br.cpp: 17640 (WebCore::RenderBR::lineHeight): 17641 * rendering/render_flow.cpp: 17642 (WebCore::RenderFlow::lineHeight): 17643 * rendering/render_form.cpp: 17644 (WebCore::RenderFormElement::setStyle): 17645 (WebCore::RenderFormElement::addIntrinsicMarginsIfAllowed): 17646 * rendering/render_image.cpp: 17647 (WebCore::RenderImage::paint): 17648 * rendering/render_line.cpp: 17649 (WebCore::InlineFlowBox::placeBoxesHorizontally): 17650 (WebCore::InlineFlowBox::paintDecorations): 17651 (WebCore::EllipsisBox::paint): 17652 * rendering/render_list.cpp: 17653 (RenderListMarker::paint): 17654 * rendering/render_object.cpp: 17655 (WebCore::RenderObject::getVerticalPosition): 17656 (WebCore::RenderObject::lineHeight): 17657 * rendering/render_object.h: 17658 (WebCore::RenderObject::font): 17659 * rendering/render_replaced.cpp: 17660 (WebCore::RenderWidget::setStyle): 17661 * rendering/render_style.h: 17662 (khtml::RenderStyle::fontSize): 17663 (khtml::RenderStyle::fontMetrics): 17664 (khtml::RenderStyle::wordSpacing): 17665 (khtml::RenderStyle::letterSpacing): 17666 (khtml::RenderStyle::setFontDescription): 17667 (khtml::RenderStyle::setWordSpacing): 17668 (khtml::RenderStyle::setLetterSpacing): 17669 17670 2006-02-28 Darin Adler <darin (a] apple.com> 17671 17672 Reviewed by Adele. 17673 17674 - remove obsolete WebCoreScrollView class 17675 17676 * WebCore.exp: Remove WebCoreScrollView class name. 17677 17678 * kwq/WebCoreScrollView.h: Removed. 17679 * kwq/WebCoreScrollView.m: Removed. 17680 * WebCore.xcodeproj/project.pbxproj: Remove WebCoreScrollView source files. 17681 17682 * kwq/KWQListBox.mm: (-[KWQListBoxScrollView autoforwardsScrollWheelEvents]): Added. 17683 * kwq/KWQTextArea.h: Change base class to NSScrollView instead of WebCoreScrollView. 17684 * kwq/KWQTextArea.mm: (-[KWQTextAreaTextView autoforwardsScrollWheelEvents]): Ditto. 17685 17686 2006-02-28 Eric Seidel <eseidel (a] apple.com> 17687 17688 Reviewed by mjs. 17689 17690 Fix spacing/style on several of the stubs. 17691 Reorganize stubs, separating empty stubs. 17692 Remove the abort from certain stubs blocking DRT. 17693 Add a virtual setView call to Frame baseclass. 17694 17695 * bridge/mac/MacFrame.h: mark setView virtual 17696 * dom/DocumentImpl.cpp: 17697 (WebCore::DocumentImpl::attach): remove no-renderer hack 17698 * page/Frame.cpp: 17699 (WebCore::Frame::view): fix spacing 17700 (WebCore::Frame::setView): added. 17701 * page/Frame.h: 17702 * platform/win/TemporaryLinkStubs.cpp: 17703 (notImplemented): make break directly into debugger. 17704 Moved, modified several other stubs not mentioned here. 17705 17706 2006-02-28 Justin Garcia <justin.garcia (a] apple.com> 17707 17708 Reviewed by mjs 17709 17710 <http://bugs.webkit.org/show_bug.cgi?id=6647> 17711 TinyMCE: document.execCommand("insertHTML", ...) unimplemented 17712 17713 * editing/jsediting.cpp: 17714 17715 2006-02-28 Maciej Stachowiak <mjs (a] apple.com> 17716 17717 Reviewed by Darin. 17718 17719 - make win32 DumpRenderTree run without crashing 17720 http://bugs.webkit.org/show_bug.cgi?id=7511 17721 17722 * WebCore.vcproj/WebCore/WebCore.vcproj: 17723 * bridge/win/BrowserExtensionWin.h: Added. 17724 * bridge/win/FrameWin.cpp: 17725 (WebCore::FrameWin::FrameWin): Initialize browser 17726 extension and settings. 17727 * dom/DocumentImpl.cpp: 17728 (WebCore::DocumentImpl::attach): Don't create renderers 17729 for now. 17730 * dom/EventNames.cpp: 17731 (WebCore::EventNames::init): use placement new even when 17732 not avoiding static constructors. 17733 * khtml/html/htmlnames.cpp: 17734 (WebCore::HTMLNames::init): ditto 17735 * dom/QualifiedName.cpp: 17736 (WebCore::QualifiedName::init): ditto 17737 * dom/QualifiedName.h: 17738 (WebCore::QualifiedName::QualifiedName): Added default 17739 constructor but only in ifdef. 17740 * page/Frame.h: 17741 * platform/AtomicString.cpp: 17742 (WebCore::AtomicString::init): use placement new even when 17743 not avoiding static constructors 17744 * platform/StaticConstructors.h: don't initialize when 17745 not avoiding static constructors, just default construct 17746 and let initialization happen normally 17747 * platform/win/TemporaryLinkStubs.cpp: Stub out some more things 17748 (Cursor::~Cursor): 17749 (QFont::~QFont): 17750 (QFontMetrics::~QFontMetrics): 17751 (WebCore::FrameWin::restoreDocumentState): 17752 (WebCore::FrameWin::partClearedInBegin): 17753 (WebCore::FrameWin::createEmptyDocument): 17754 (WebCore::BrowserExtensionWin::getHistoryLength): 17755 (WebCore::BrowserExtensionWin::canRunModal): 17756 (WebCore::BrowserExtensionWin::openURLNotify): 17757 (WebCore::BrowserExtensionWin::canRunModalNow): 17758 (WebCore::BrowserExtensionWin::runModal): 17759 (WebCore::BrowserExtensionWin::goBackOrForward): 17760 17761 2006-02-27 Eric Seidel <eseidel (a] apple.com> 17762 17763 Reviewed by mjs. 17764 17765 Remove abort() from constructors to allow DRT to run. 17766 17767 * platform/win/TemporaryLinkStubs.cpp: 17768 (QFont::QFont): 17769 (QFontMetrics::QFontMetrics): 17770 17771 2006-02-27 Justin Garcia <justin.garcia (a] apple.com> 17772 17773 Reviewed by darin 17774 17775 <http://bugs.webkit.org/show_bug.cgi?id=6893> 17776 REGRESSION: Major bug with TinyMCE, no value submitted from textarea 17777 <rdar://problem/3465857> value from textarea form field inside of hidden div isn't submitted 17778 <rdar://problem/3968059> Textarea with hard-wrap: pre-filled text doesn't get hard-wrapped 17779 17780 Canonicalize line endings in textareas to avoid the workarounds that were a source of bugs, 17781 Also call textWithHardLineWraps inside appendFormData (and nowhere else) if wrap="hard". 17782 17783 * khtml/html/HTMLTextAreaElementImpl.cpp: 17784 (WebCore::HTMLTextAreaElementImpl::HTMLTextAreaElementImpl): 17785 (WebCore::HTMLTextAreaElementImpl::select): 17786 (WebCore::HTMLTextAreaElementImpl::appendFormData): 17787 (WebCore::HTMLTextAreaElementImpl::rendererWillBeDestroyed): 17788 (WebCore::HTMLTextAreaElementImpl::updateValue): 17789 (WebCore::HTMLTextAreaElementImpl::value): 17790 (WebCore::HTMLTextAreaElementImpl::setValue): 17791 (WebCore::HTMLTextAreaElementImpl::defaultValue): 17792 * khtml/html/HTMLTextAreaElementImpl.h: 17793 (DOM::HTMLTextAreaElementImpl::invalidateValue): 17794 * kwq/KWQTextArea.h: 17795 * kwq/KWQTextArea.mm: 17796 (-[KWQTextAreaTextView textDidChange:]): 17797 (-[KWQTextAreaTextView text]): 17798 (-[KWQTextAreaTextView textWithHardLineBreaks]): 17799 (-[KWQTextAreaTextView setSelectedRange:]): 17800 (-[KWQTextAreaTextView selectedRange]): 17801 (-[KWQTextAreaTextView getCursorPositionAsIndex:inParagraph:]): 17802 (RangeOfParagraph): 17803 (-[KWQTextAreaTextView textView:shouldChangeTextInRange:replacementString:]): 17804 * rendering/render_form.cpp: 17805 (WebCore::RenderTextArea::destroy): 17806 (WebCore::RenderTextArea::updateFromElement): 17807 (WebCore::RenderTextArea::text): 17808 (WebCore::RenderTextArea::textWithHardLineBreaks): 17809 * rendering/render_form.h: 17810 17811 2006-02-27 Eric Seidel <eseidel (a] apple.com> 17812 17813 Reviewed by darin. 17814 17815 Copy missing dlls to build directory. 17816 17817 * Viewer.cpp: fix line endings 17818 * Viewer/ImageView.cpp: fix line endings 17819 * Viewer/stdafx.cpp: fix line endings 17820 * WebCore.vcproj/WebCore/build-generated-files.sh: 17821 17822 2006-02-27 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 17823 17824 Test: added to fast/dom/css-selectorText.html 17825 17826 Reviewed by Darin. 17827 17828 - fix http://bugs.webkit.org/show_bug.cgi?id=7338 17829 Incorrect selectorText for multiple subselectors. 17830 17831 * css/css_base.cpp: 17832 (CSSSelector::selectorText): Iterate over subselectors 17833 17834 2006-02-27 Maciej Stachowiak <mjs (a] apple.com> 17835 17836 Reviewed by Darin. 17837 17838 - write a portable ICU version of TextEncoding::fromUnicode for use on win32 17839 17840 * platform/StreamingTextDecoder.h: 17841 * platform/TextEncoding.cpp: 17842 (WebCore::TextEncoding::fromUnicode): added 17843 (WebCore::getConverter): helper 17844 (WebCore::cacheConverter): ditto 17845 (WebCore::effectiveEncoding): ditto 17846 * platform/mac/TextEncodingMac.cpp: Add comment 17847 * platform/win/TemporaryLinkStubs.cpp: 17848 (WebCore::TextEncoding::fromUnicode): remove 17849 17850 2006-02-27 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 17851 17852 Test: fast/text/in-rendered-text-rtl.html 17853 17854 Reviewed by Darin. 17855 17856 - fix http://bugs.webkit.org/show_bug.cgi?id=7433 17857 REGRESSION (r12789): Second RTL text run on a line cannot be selected 17858 17859 * dom/dom_position.cpp: 17860 (WebCore::Position::inRenderedText): If the RenderText contains 17861 reversed text, the text boxes are not necessarily ordered by start 17862 position, so iterate through all of them. 17863 (WebCore::Position::isRenderedCharacter): Ditto. 17864 17865 2006-02-27 David Kilzer <ddkilzer (a] kilzer.net> 17866 17867 Reviewed by Darin. 17868 17869 - Fix for http://bugs.webkit.org/show_bug.cgi?id=7321 17870 REGRESSION: style tag in body causes two head elements to appear in the DOM 17871 17872 * khtml/html/htmlparser.cpp: Handle the head node like form and map nodes. 17873 (WebCore::HTMLParser::parseToken): 17874 (WebCore::HTMLParser::headCreateErrorCheck): 17875 17876 2006-02-27 Eric Seidel <eseidel (a] apple.com> 17877 17878 Reviewed by darin. 17879 17880 Add stub to make DRT link. 17881 Make WebCore copy libxml.dll into build directory when building. 17882 17883 * WebCore.vcproj/WebCore/build-generated-files.sh: 17884 * platform/win/TemporaryLinkStubs.cpp: 17885 (WebCore::TextEncoding::fromUnicode): 17886 17887 2006-02-27 Darin Adler <darin (a] apple.com> 17888 17889 Reviewed by Eric. 17890 17891 - fix regression in layout tests 17892 17893 * dom/dom_elementimpl.cpp: (WebCore::StyledElementImpl::addCSSLength): 17894 Fix some code that was not properly truncating. I broke it in my 17895 string change this morning. 17896 17897 2006-02-27 Maciej Stachowiak <mjs (a] apple.com> 17898 17899 Rubber stamped by Eric. 17900 17901 - add stubs for FrameWin overrides of pure virtual Frame methods 17902 17903 * platform/win/TemporaryLinkStubs.cpp: 17904 (WebCore::FrameWin::respondToChangedContents): 17905 (WebCore::FrameWin::unfocusWindow): 17906 (WebCore::FrameWin::locationbarVisible): 17907 (WebCore::FrameWin::respondToChangedSelection): 17908 (WebCore::FrameWin::clearUndoRedoOperations): 17909 (WebCore::FrameWin::issueRedoCommand): 17910 (WebCore::FrameWin::canRedo): 17911 (WebCore::FrameWin::restoreDocumentState): 17912 (WebCore::FrameWin::canUndo): 17913 (WebCore::FrameWin::overrideMediaType): 17914 (WebCore::FrameWin::saveDocumentState): 17915 (WebCore::FrameWin::print): 17916 (WebCore::FrameWin::issueCutCommand): 17917 (WebCore::FrameWin::issueCopyCommand): 17918 (WebCore::FrameWin::partClearedInBegin): 17919 (WebCore::FrameWin::issueUndoCommand): 17920 (WebCore::FrameWin::clearRecordedFormValues): 17921 (WebCore::FrameWin::issuePasteCommand): 17922 (WebCore::FrameWin::markedTextRange): 17923 (WebCore::FrameWin::shouldChangeSelection): 17924 (WebCore::FrameWin::scheduleClose): 17925 (WebCore::FrameWin::menubarVisible): 17926 (WebCore::FrameWin::personalbarVisible): 17927 (WebCore::FrameWin::createEmptyDocument): 17928 (WebCore::FrameWin::lastEventIsMouseUp): 17929 (WebCore::FrameWin::statusbarVisible): 17930 (WebCore::FrameWin::toolbarVisible): 17931 (WebCore::FrameWin::issueTransposeCommand): 17932 (WebCore::FrameWin::userAgent): 17933 (WebCore::FrameWin::canPaste): 17934 (WebCore::FrameWin::incomingReferrer): 17935 (WebCore::FrameWin::canGoBackOrForward): 17936 (WebCore::FrameWin::issuePasteAndMatchStyleCommand): 17937 (WebCore::FrameWin::handledOnloadEvents): 17938 (WebCore::FrameWin::generateFrameName): 17939 17940 2006-02-27 Eric Seidel <eseidel (a] apple.com> 17941 17942 Reviewed by mjs. 17943 17944 Add constructor and destructor. 17945 17946 * bridge/win/FrameWin.cpp: 17947 (WebCore::FrameWin::FrameWin): 17948 (WebCore::FrameWin::~FrameWin): 17949 17950 2006-02-27 Maciej Stachowiak <mjs (a] apple.com> 17951 17952 Rubber stamped by Eric (sorta). 17953 17954 - add return values where needed 17955 17956 * platform/win/TemporaryLinkStubs.cpp: 17957 (KWQServeRequest): 17958 (KWQServeSynchronousRequest): 17959 17960 2006-02-27 Eric Seidel <eseidel (a] apple.com> 17961 17962 Reviewed by mjs. 17963 17964 Add a couple more stubs to make Win32 link. 17965 17966 * platform/win/TemporaryLinkStubs.cpp: 17967 (KWQServeSynchronousRequest): 17968 (WebCore::FrameView::topLevelWidget): 17969 17970 2006-02-27 Eric Seidel <eseidel (a] apple.com> 17971 17972 Reviewed by mjs. 17973 17974 Move mac-specific logging logic up into WebCore (from JavaScriptCore). 17975 Remove KWQ prefixes from default log channels. 17976 http://bugs.webkit.org/show_bug.cgi?id=7503 17977 17978 * bridge/mac/WebCorePageBridge.mm: 17979 (initializeLogChannel): 17980 (initializeLoggingChannelsIfNecessary): 17981 (-[WebCorePageBridge init]): 17982 * page/Frame.h: 17983 * platform/Logging.cpp: 17984 * platform/Logging.h: 17985 17986 2006-02-27 Darin Adler <darin (a] apple.com> 17987 17988 Reviewed by Maciej. 17989 17990 - fix <rdar://problem/4104575> hang due to slow saveDocumentState method 17991 17992 * bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge saveDocumentState]): 17993 Change code that iterates a QStringList with indices to use iterator instead. 17994 17995 2006-02-27 Maciej Stachowiak <mjs (a] apple.com> 17996 17997 Reviewed by Eric. 17998 17999 - portable version of QString::utf8 18000 18001 * platform/QString.cpp: 18002 (QString::utf8): moved here, rewritten to use TextCodec 18003 * platform/mac/QStringMac.mm: 18004 (QString::utf8): removed from here 18005 18006 2006-02-27 Eric Seidel <eseidel (a] apple.com> 18007 18008 Rubber-stamped by mjs. 18009 18010 Fix FrameWin.h to use consistant line endings. 18011 Fix TemporaryLinkStubs to better match style guidelines. 18012 18013 * bridge/win/FrameWin.h: 18014 (WebCore::Win): 18015 * platform/win/TemporaryLinkStubs.cpp: 18016 (QLineEdit::selectAll): 18017 (QPainter::save): 18018 (Widget::enableFlushDrawing): 18019 (QPainter::drawHighlightForText): 18020 (QFont::setPrinterFont): 18021 (QTextEdit::textWithHardLineBreaks): 18022 (Widget::mapFromGlobal): 18023 (QPainter::addClip): 18024 (QLineEdit::cursorPosition): 18025 (QPainter::setPen): 18026 (QPainter::selectedTextBackgroundColor): 18027 (QPainter::fontMetrics): 18028 (Widget::show): 18029 (QFont::setItalic): 18030 (QSlider::setValue): 18031 (QLineEdit::addSearchResult): 18032 (KWQFileButton::click): 18033 (QLineEdit::setWritingDirection): 18034 (QPainter::drawFocusRing): 18035 (KWQFileButton::sizeForCharacterWidth): 18036 (QTextEdit::sizeWithColumnsAndRows): 18037 (QComboBox::clear): 18038 (QPainter::misspellingLineThickness): 18039 (QComboBox::setFrameGeometry): 18040 (QLineEdit::maxLength): 18041 (Widget::isEnabled): 18042 (KWQServeRequest): 18043 (QTextEdit::setText): 18044 (Widget::paint): 18045 (QPainter::addRoundedRectClip): 18046 (FrameView::viewportToGlobal): 18047 (QTextEdit::selectionEnd): 18048 (QFont::determinePitch): 18049 (QTextEdit::setScrollBarModes): 18050 (QPainter::drawEllipse): 18051 (QTextEdit::setReadOnly): 18052 (QListBox::appendItem): 18053 (QLineEdit::setPlaceholderString): 18054 (Cursor::Cursor): 18055 (Widget::focusPolicy): 18056 (ScrollView::removeChild): 18057 (QTextEdit::selectAll): 18058 (QPainter::fillRect): 18059 (QPainter::endTransparencyLayer): 18060 (QFont::QFont): 18061 (ScrollView::addChild): 18062 (QTextEdit::setDisabled): 18063 (QScrollBar::scroll): 18064 (Widget::~Widget): 18065 (QPainter::xForm): 18066 (QListBox::sizeForNumberOfLines): 18067 (ScrollView::resizeContents): 18068 (QLineEdit::selectionStart): 18069 (QLineEdit::QLineEdit): 18070 (FrameView::updateBorder): 18071 (QLineEdit::hasSelectedText): 18072 (QScrollBar::QScrollBar): 18073 (QListBox::doneAppendingItems): 18074 (QTextEdit::QTextEdit): 18075 (ScrollView::inWindow): 18076 (QScrollBar::setValue): 18077 (QFont::setFirstFamily): 18078 (QTextEdit::hasSelectedText): 18079 (QTextEdit::selectionStart): 18080 (QFont::setWeight): 18081 (ScrollView::scrollXOffset): 18082 (QListBox::isSelected): 18083 (QLineEdit::setReadOnly): 18084 (QPainter::drawLineForText): 18085 (QPainter::QPainter): 18086 (QComboBox::~QComboBox): 18087 (QComboBox::focusPolicy): 18088 (QPainter::drawImageAtPoint): 18089 (QPainter::clearShadow): 18090 (QTextEdit::setLineHeight): 18091 (QScrollBar::setKnobProportion): 18092 (KWQFileButton::KWQFileButton): 18093 (QFontMetrics::boundingRect): 18094 (QTextEdit::setSelectionStart): 18095 (QPainter::beginTransparencyLayer): 18096 (QFontMetrics::setFont): 18097 (QComboBox::setFont): 18098 (Widget::frameGeometry): 18099 (QListBox::setSelected): 18100 (QPainter::addFocusRingRect): 18101 (QTextEdit::setCursorPosition): 18102 (QPainter::restore): 18103 (QFontMetrics::width): 18104 (Widget::setEnabled): 18105 (QTextEdit::setSelectionEnd): 18106 (QComboBox::populate): 18107 (ScrollView::setStaticBackground): 18108 (QPainter::font): 18109 (QTextEdit::setAlignment): 18110 (QLineEdit::setCursorPosition): 18111 (QPainter::drawText): 18112 (QPainter::pen): 18113 (KJavaAppletWidget::KJavaAppletWidget): 18114 (QFontMetrics::descent): 18115 (QListBox::QListBox): 18116 (QFontMetrics::ascent): 18117 (QLineEdit::selectedText): 18118 (Widget::setIsSelected): 18119 (QLineEdit::text): 18120 (Widget::unlockDrawingFocus): 18121 (QLineEdit::setLiveSearch): 18122 (QPainter::paintingDisabled): 18123 (QComboBox::QComboBox): 18124 (QPainter::drawConvexPolygon): 18125 (Widget::setFont): 18126 (QSlider::setMaxValue): 18127 (Widget::lockDrawingFocus): 18128 (QPainter::drawLine): 18129 (QPainter::setBrush): 18130 (QTextEdit::setSelectionRange): 18131 (ScrollView::scrollPointRecursively): 18132 (QLineEdit::sizeForCharacterWidth): 18133 (Cursor::~Cursor): 18134 (QFontMetrics::selectionRectForText): 18135 (ScrollView::suppressScrollBars): 18136 (QFontMetrics::checkSelectionPoint): 18137 (QTextEdit::getCursorPosition): 18138 (FrameView::isFrameView): 18139 (QScrollBar::setSteps): 18140 (QLineEdit::setMaxLength): 18141 (Widget::setCursor): 18142 (QLineEdit::setAutoSaveName): 18143 (QComboBox::baselinePosition): 18144 (QComboBox::appendItem): 18145 (QPainter::setShadow): 18146 (QTextEdit::setWritingDirection): 18147 (Widget::setDrawingAlpha): 18148 (QSlider::QSlider): 18149 (ScrollView::setVScrollBarMode): 18150 (QPainter::drawScaledAndTiledImage): 18151 (ScrollView::scrollYOffset): 18152 (QPainter::drawImage): 18153 (QComboBox::setCurrentItem): 18154 (QFontMetrics::height): 18155 (QComboBox::setWritingDirection): 18156 (ScrollView::setScrollBarsMode): 18157 (QComboBox::sizeHint): 18158 (QPainter::drawRect): 18159 (QFont::setPixelSize): 18160 (Widget::setFrameGeometry): 18161 (QLineEdit::setSelection): 18162 (QLineEdit::setMaxResults): 18163 (QListBox::clear): 18164 (QLineEdit::edited): 18165 (QPainter::drawTiledImage): 18166 (QPainter::clearFocusRing): 18167 (QFont::operator==): 18168 (Widget::Widget): 18169 (QTextEdit::text): 18170 (QPainter::drawImageInRect): 18171 (QPainter::setFont): 18172 (Widget::disableFlushDrawing): 18173 (QPainter::initFocusRing): 18174 (QSlider::setMinValue): 18175 (QTextEdit::setWordWrap): 18176 (QPainter::drawLineForMisspelling): 18177 (QLineEdit::setText): 18178 (QSlider::value): 18179 (QListBox::setSelectionMode): 18180 (KWQFileButton::setFilename): 18181 (QFontMetrics::QFontMetrics): 18182 (QFontMetrics::lineSpacing): 18183 (QLineEdit::setEdited): 18184 (QComboBox::frameGeometry): 18185 (QListBox::setWritingDirection): 18186 (QLineEdit::setAlignment): 18187 (ScrollView::updateContents): 18188 (QFontMetrics::floatWidth): 18189 (ScrollView::setHScrollBarMode): 18190 (KWQFileButton::focusPolicy): 18191 (QListBox::setFont): 18192 (QLineEdit::checksDescendantsForFocus): 18193 (KWQFileButton::baselinePosition): 18194 (QSlider::~QSlider): 18195 (KWQFileButton::setFrameGeometry): 18196 (QListBox::~QListBox): 18197 (KWQFileButton::frameGeometry): 18198 (QTextEdit::setFont): 18199 (QLineEdit::setFont): 18200 (KWQFileButton::~KWQFileButton): 18201 (QTextEdit::focusPolicy): 18202 (QSlider::focusPolicy): 18203 (QSlider::setFont): 18204 (QListBox::setEnabled): 18205 (QListBox::checksDescendantsForFocus): 18206 (QListBox::focusPolicy): 18207 (QLineEdit::baselinePosition): 18208 (QSlider::sizeHint): 18209 (QLineEdit::~QLineEdit): 18210 (QTextEdit::~QTextEdit): 18211 (QTextEdit::checksDescendantsForFocus): 18212 (QLineEdit::focusPolicy): 18213 (QScrollBar::~QScrollBar): 18214 (Path::operator=): 18215 (QLineEdit::setColors): 18216 (QTextEdit::setColors): 18217 (searchableIndexIntroduction): 18218 (KWQKCookieJar::setCookie): 18219 (KWQKCookieJar::cookie): 18220 (WebCore::screenRect): 18221 (WebCore::Widget::clearFocus): 18222 (WebCore::historyContains): 18223 (KWQFindNextSentenceFromIndex): 18224 (KWQFindSentenceBoundary): 18225 (KWQFindNextWordFromIndex): 18226 (KWQFindWordBoundary): 18227 (submitButtonDefaultLabel): 18228 (inputElementAltText): 18229 (resetButtonDefaultLabel): 18230 (KWQKCookieJar::cookieEnabled): 18231 (WebCore::Widget::setFocus): 18232 (WebCore::QPainter::fillRect): 18233 (WebCore::QPainter::~QPainter): 18234 (WebCore::ScrollView::viewportToContents): 18235 (WebCore::TransferJob::kill): 18236 (WebCore::TransferJob::addMetaData): 18237 (WebCore::TransferJob::queryMetaData): 18238 (WebCore::TransferJob::error): 18239 (WebCore::TransferJob::errorText): 18240 (WebCore::TransferJob::isErrorPage): 18241 (WebCore::TransferJob::TransferJob): 18242 (WebCore::Widget::hide): 18243 (KLocale::language): 18244 (PlugInInfoStore::createPluginInfoForPluginAtIndex): 18245 (WebCore::screenDepth): 18246 (QFont::italic): 18247 (QFontMetrics::operator=): 18248 (QFontMetrics::xHeight): 18249 (WebCore::usableScreenRect): 18250 (QFont::operator=): 18251 (Widget::setActiveWindow): 18252 (KWQCheckIfReloading): 18253 (WebCore::ScrollView::contentsX): 18254 (WebCore::ScrollView::contentsY): 18255 (WebCore::ScrollView::contentsHeight): 18256 (WebCore::ScrollView::contentsWidth): 18257 (WebCore::ScrollView::visibleHeight): 18258 (WebCore::ScrollView::visibleWidth): 18259 (WebCore::ScrollView::hScrollBarMode): 18260 (WebCore::ScrollView::vScrollBarMode): 18261 (KWQCheckCacheObjectStatus): 18262 18263 2006-02-27 Justin Garcia <justin.garcia (a] apple.com> 18264 18265 Reviewed by darin 18266 18267 <http://bugs.webkit.org/show_bug.cgi?id=6844> 18268 elementAtPoint returns the list when the point is over a list marker 18269 18270 Consider the case of outside list markers in nodeAtPoint. Had to pull 18271 the code out of RenderListMarker::paint that computed the position/size 18272 of the list marker. 18273 18274 Added: 18275 * fast/events/onclick-list-marker.html 18276 18277 * rendering/render_list.cpp: 18278 (RenderListItem::nodeAtPoint): 18279 (RenderListItem::getAbsoluteRepaintRect): 18280 (RenderListMarker::paint): 18281 (RenderListMarker::nodeAtPoint): 18282 (RenderListMarker::getRelativeMarkerRect): 18283 * rendering/render_list.h: 18284 * rendering/render_object.h: 18285 18286 2006-02-27 Eric Seidel <eseidel (a] apple.com> 18287 18288 Reviewed by timo. 18289 18290 Fix xcode project after previous KWQLogging move. 18291 18292 * WebCore.xcodeproj/project.pbxproj: 18293 * platform/Logging.h: 18294 18295 2006-02-27 Eric Seidel <eseidel (a] apple.com> 18296 18297 Reviewed by timo. 18298 18299 Move KWQLogging to platform and rename as Logging.*, fix headers. 18300 This will break the mac build, which I will fix on my next commit. 18301 18302 * WebCore.vcproj/WebCore/WebCore.vcproj: 18303 * dom/DocumentImpl.cpp: 18304 * dom/dom_position.cpp: 18305 * editing/DeleteSelectionCommand.cpp: 18306 * editing/InsertLineBreakCommand.cpp: 18307 * editing/InsertParagraphSeparatorCommand.cpp: 18308 * editing/InsertTextCommand.cpp: 18309 * editing/VisiblePosition.cpp: 18310 * editing/markup.cpp: 18311 * khtml/ecma/kjs_window.cpp: 18312 * kwq/KWQLogging.h: Removed. 18313 * kwq/KWQLogging.m: Removed. 18314 * kwq/KWQRegExp.cpp: 18315 * kwq/KWQTextStream.cpp: 18316 * platform/Logging.cpp: Added. 18317 * platform/Logging.h: Added. 18318 * platform/QString.cpp: 18319 * platform/win/TemporaryLinkStubs.cpp: 18320 (WebCore::ScrollView::vScrollBarMode): 18321 (WebCore::theme): 18322 18323 2006-02-27 Eric Seidel <eseidel (a] apple.com> 18324 18325 Reviewed by hyatt. 18326 18327 Fix a bunch more link errors in the win32 build, mostly by adding stubs. 18328 18329 * WebCore.vcproj/WebCore/WebCore.vcproj: add JSXMLHttpRequest and PlugInInfoStore 18330 * WebCore.vcproj/WebCore/build-generated-files.sh: update for JSXMLHttpRequest 18331 * khtml/ecma/JSXMLHttpRequest.cpp: 18332 (KJS::JSXMLHttpRequest::getValueProperty): fix switch to compile 18333 * platform/PlugInInfoStore.h: 18334 * platform/mac/PlugInInfoStoreMac.mm: 18335 * platform/win/TemporaryLinkStubs.cpp: add a bunch of stubs. 18336 (WebCore::TransferJob::errorText): 18337 (WebCore::TransferJob::isErrorPage): 18338 (WebCore::Widget::hide): 18339 (PlugInInfoStore::createPluginInfoForPluginAtIndex): 18340 (PlugInInfoStore::pluginCount): 18341 (WebCore::refreshPlugins): 18342 (QFont::QFont): 18343 (QFont::~QFont): 18344 (QFont::italic): 18345 (QFont::weight): 18346 (QFontMetrics::QFontMetrics): 18347 (QFontMetrics::~QFontMetrics): 18348 (QFontMetrics::xHeight): 18349 (Widget::setActiveWindow): 18350 (WebCore::ScrollView::contentsX): 18351 (WebCore::ScrollView::contentsY): 18352 (WebCore::ScrollView::contentsHeight): 18353 (WebCore::ScrollView::contentsWidth): 18354 (WebCore::ScrollView::visibleHeight): 18355 (WebCore::ScrollView::visibleWidth): 18356 (WebCore::ScrollView::hScrollBarMode): 18357 (WebCore::ScrollView::vScrollBarMode): 18358 18359 2006-02-27 Eric Seidel <eseidel (a] apple.com> 18360 18361 Reviewed by timo. 18362 18363 Add missing include to fix build. 18364 18365 * platform/win/TemporaryLinkStubs.cpp: 18366 18367 2006-02-27 Eric Seidel <eseidel (a] apple.com> 18368 18369 Reviewed by ggaren. 18370 18371 Move KConfig to platform/PlugInInfoStore and add test. 18372 http://bugs.webkit.org/show_bug.cgi?id=7498 18373 18374 Test: plugins/plugin-javascript-access.html 18375 18376 * ForwardingHeaders/kconfig.h: Removed. 18377 * WebCore.xcodeproj/project.pbxproj: 18378 * khtml/ecma/kjs_navigator.cpp: 18379 (KJS::PluginBase::PluginBase): 18380 * khtml/ecma/kjs_window.cpp: 18381 * kwq/KWQKConfigBase.h: Removed. 18382 * kwq/KWQKConfigBase.mm: Removed. 18383 * platform/PlugInInfoStore.h: Added. 18384 * platform/mac/PlugInInfoStoreMac.mm: Added. 18385 (WebCore::PlugInInfoStore::createPluginInfoForPluginAtIndex): 18386 (WebCore::PlugInInfoStore::pluginCount): 18387 (WebCore::refreshPlugins): 18388 18389 2006-02-27 Darin Adler <darin (a] apple.com> 18390 18391 Reviewed by Eric. 18392 18393 * platform/win/TemporaryLinkStubs.cpp: Added more stubs. 18394 18395 2006-02-27 Eric Seidel <eseidel (a] apple.com> 18396 18397 Reviewed by darin. 18398 18399 Reworked KConfig and plugin architecture to be much more sane. 18400 This is part one. Once this lands, I'll move it under platform with a better name. 18401 18402 Darin had several great suggested further improvements as part of: 18403 http://bugs.webkit.org/show_bug.cgi?id=7451 18404 I'll make some of those when I move this to platform. 18405 18406 No layout test possible (no way to control which plugins DRT sees). 18407 18408 * khtml/ecma/kjs_navigator.cpp: 18409 (KJS::PluginBase::PluginBase): 18410 (KJS::PluginBase::~PluginBase): 18411 (KJS::PluginBase::refresh): 18412 (KJS::Plugins::getValueProperty): 18413 (KJS::Plugins::nameGetter): 18414 (KJS::Plugins::getOwnPropertySlot): 18415 (KJS::MimeTypes::getValueProperty): 18416 (KJS::MimeTypes::nameGetter): 18417 (KJS::MimeTypes::getOwnPropertySlot): 18418 (KJS::Plugin::getValueProperty): 18419 (KJS::Plugin::nameGetter): 18420 (KJS::Plugin::getOwnPropertySlot): 18421 * khtml/ecma/kjs_navigator.h: 18422 * khtml/ecma/kjs_window.cpp: 18423 * kwq/KWQKConfigBase.h: 18424 (WebCore::PluginInfoStore::PluginInfoStore): 18425 * kwq/KWQKConfigBase.mm: 18426 (WebCore::PluginInfoStore::createPluginInfoForPluginAtIndex): 18427 (WebCore::PluginInfoStore::pluginCount): 18428 (WebCore::refreshPlugins): 18429 18430 2006-02-27 Eric Seidel <eseidel (a] apple.com> 18431 18432 Reviewed by darin. 18433 18434 Build fix: cast to unsigned from size_t. 18435 18436 * platform/StreamingTextDecoder.cpp: 18437 18438 2006-02-27 Maciej Stachowiak <mjs (a] apple.com> 18439 18440 Reviewed by Darin. 18441 18442 - add Selection.cpp to win32 build 18443 http://bugs.webkit.org/show_bug.cgi?id=7490 18444 18445 * WebCore.vcproj/WebCore/WebCore.vcproj: 18446 18447 2006-02-27 Maciej Stachowiak <mjs (a] apple.com> 18448 18449 - use proper header for std::min. 18450 18451 * platform/StreamingTextDecoder.cpp: 18452 18453 2006-02-27 Maciej Stachowiak <mjs (a] apple.com> 18454 18455 Reviewed by Darin. 18456 18457 - add new TextEncoding stuff to win32 build 18458 http://bugs.webkit.org/show_bug.cgi?id=7491 18459 18460 * WebCore.vcproj/WebCore/WebCore.vcproj: 18461 * WebCore.vcproj/WebCore/build-generated-files.sh: 18462 * platform/StreamingTextDecoder.cpp: 18463 (WebCore::StreamingTextDecoder::convertUTF16): 18464 * platform/TextEncoding.cpp: 18465 18466 2006-02-27 Darin Adler <darin (a] apple.com> 18467 18468 - try to fix Windows build 18469 18470 * WebCore.vcproj/WebCore/WebCore.vcproj: Removed rendering/font.* and added platform/Font.*. 18471 18472 2006-02-27 Darin Adler <darin (a] apple.com> 18473 18474 * css/csshelper.cpp: (WebCore::parseURL): Actually, the second version was fine. Rolling 18475 back to that; apologies for the churn. 18476 18477 2006-02-27 Darin Adler <darin (a] apple.com> 18478 18479 * css/csshelper.cpp: (WebCore::parseURL): Third time's the charm. 18480 18481 2006-02-27 Darin Adler <darin (a] apple.com> 18482 18483 * css/csshelper.cpp: (WebCore::parseURL): Oops! Checked in fixed version of this file. 18484 18485 2006-02-27 Darin Adler <darin (a] apple.com> 18486 18487 Reviewed by Maciej. 18488 18489 - http://bugs.webkit.org/show_bug.cgi?id=7486 18490 a first step in improving String/StringImpl API -- use "s" and "l" less 18491 18492 * css/csshelper.cpp: (WebCore::parseURL): Use a local buffer rather than 18493 manipulating the characters directly inside a StringImpl buffer. 18494 18495 * css/cssstyleselector.cpp: (WebCore::parseUASheet): Copy the data to parse 18496 it rather than going out of our way to hack StringImpl to not copy the data. 18497 It would be better not to copy, but this is one-time work. 18498 18499 * dom/DOMImplementationImpl.cpp: (WebCore::DOMImplementationImpl::createDocument): 18500 * dom/dom2_viewsimpl.cpp: (DOM::AbstractViewImpl::getMatchedCSSRules): 18501 * dom/dom_elementimpl.cpp: (WebCore::StyledElementImpl::addCSSLength): 18502 * dom/dom_xmlimpl.cpp: (WebCore::EntityImpl::toString): 18503 * editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::deleteInsignificantText): 18504 * khtml/html/htmlparser.cpp: (WebCore::HTMLParser::handleError): 18505 * platform/AtomicString.cpp: 18506 (WebCore::CStringTranslator::equal): 18507 (WebCore::QCharBufferTranslator::equal): 18508 (WebCore::AtomicString::add): 18509 * platform/StringImpl.h: 18510 (WebCore::StringImpl::unicode): Added. 18511 (KXMLCore::CaseInsensitiveHash::hash): 18512 (KXMLCore::CaseInsensitiveHash::equal): 18513 * rendering/InlineTextBox.cpp: (khtml::InlineTextBox::selectionStartEnd): 18514 * rendering/RenderBlock.cpp: (WebCore::RenderBlock::updateFirstLetter): 18515 * rendering/RenderText.cpp: 18516 (WebCore::getCharacterBreakIterator): 18517 (WebCore::RenderText::RenderText): 18518 (WebCore::RenderText::atLineWrap): 18519 (WebCore::RenderText::allAscii): 18520 (WebCore::RenderText::widthFromCache): 18521 (WebCore::RenderText::trimmedMinMaxWidth): 18522 (WebCore::RenderText::containsOnlyWhitespace): 18523 (WebCore::RenderText::setSelectionState): 18524 (WebCore::RenderText::setTextWithOffset): 18525 (WebCore::RenderText::setText): 18526 (WebCore::RenderText::width): 18527 (WebCore::RenderText::selectionRect): 18528 (WebCore::RenderText::caretMaxOffset): 18529 * rendering/RenderTextFragment.cpp: 18530 (khtml::RenderTextFragment::RenderTextFragment): 18531 (khtml::RenderTextFragment::originalString): 18532 Use length() instead of l, unicode() instead of s, and (*x)[] instead of x->s[]. 18533 18534 * editing/visible_units.cpp: 18535 (WebCore::startOfParagraph): Use const. 18536 (WebCore::endOfParagraph): Ditto. 18537 18538 2006-02-27 Maciej Stachowiak <mjs (a] apple.com> 18539 18540 - fix problem with a prototype that broke win32 build 18541 18542 * platform/StreamingTextDecoder.h: 18543 (WebCore::StreamingTextDecoder::convert): 18544 18545 2006-02-27 Maciej Stachowiak <mjs (a] apple.com> 18546 18547 - fix debug build (broken by my last commit) 18548 18549 * platform/StreamingTextDecoder.cpp: 18550 (WebCore::StreamingTextDecoder::createICUConverter): 18551 (WebCore::StreamingTextDecoder::convertUsingICU): 18552 18553 2006-02-26 Maciej Stachowiak <mjs (a] apple.com> 18554 18555 Reviewed by Darin. 18556 18557 - platformize KWQTextCodec 18558 http://bugs.webkit.org/show_bug.cgi?id=7487 18559 18560 I renamed QTextCodec to TextEncoding and QTextDecoder to 18561 StreamingTextDecoder. I also made a bunch of other changes to make 18562 the API more sensible. 18563 18564 * ForwardingHeaders/qtextcodec.h: Removed. 18565 * WebCore.xcodeproj/project.pbxproj: 18566 * bridge/mac/MacFrame.mm: 18567 * bridge/mac/WebCoreFrameBridge.mm: 18568 (-[WebCoreFrameBridge URLWithAttributeString:]): 18569 (-[WebCoreFrameBridge textEncoding]): 18570 (+[WebCoreFrameBridge stringWithData:textEncoding:]): 18571 (+[WebCoreFrameBridge stringWithData:textEncodingName:]): 18572 * dom/DocumentImpl.cpp: 18573 (WebCore::DocumentImpl::completeURL): 18574 * khtml/ecma/kjs_dom.cpp: 18575 (KJS::DOMDocument::getValueProperty): 18576 (KJS::DOMDocument::putValueProperty): 18577 * khtml/html/FormDataList.cpp: 18578 (DOM::FormDataList::FormDataList): 18579 (DOM::FormDataList::appendString): 18580 * khtml/html/FormDataList.h: 18581 * khtml/html/HTMLFormElementImpl.cpp: 18582 (WebCore::HTMLFormElementImpl::HTMLFormElementImpl): 18583 (WebCore::HTMLFormElementImpl::formData): 18584 * khtml/html/htmltokenizer.cpp: 18585 * khtml/misc/decoder.cpp: 18586 (Decoder::Decoder): 18587 (Decoder::setEncodingName): 18588 (Decoder::encodingName): 18589 (Decoder::decode): 18590 * khtml/misc/decoder.h: 18591 (khtml::Decoder::): 18592 (khtml::Decoder::visuallyOrdered): 18593 (khtml::Decoder::encoding): 18594 * khtml/xsl/xslt_processorimpl.cpp: 18595 (DOM::XSLTProcessorImpl::createDocumentFromSource): 18596 * kwq/KWQCharsets.cpp: Removed. 18597 * kwq/KWQCharsets.h: Removed. 18598 * kwq/KWQTextCodec.cpp: Removed. 18599 * kwq/KWQTextCodec.h: Removed. 18600 * kwq/WebCoreTextDecoder.h: 18601 * kwq/WebCoreTextDecoder.mm: 18602 * kwq/can-convert.mm: Removed. 18603 * kwq/character-sets.txt: Removed. 18604 * kwq/mac-encodings.txt: Removed. 18605 * kwq/make-charset-table.pl: Removed. 18606 * loader/CachedCSSStyleSheet.cpp: 18607 (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet): 18608 (WebCore::CachedCSSStyleSheet::setCharset): 18609 (WebCore::CachedCSSStyleSheet::data): 18610 * loader/CachedCSSStyleSheet.h: 18611 * loader/CachedScript.cpp: 18612 (WebCore::CachedScript::CachedScript): 18613 (WebCore::CachedScript::setCharset): 18614 (WebCore::CachedScript::data): 18615 * loader/CachedScript.h: 18616 * loader/CachedXSLStyleSheet.cpp: 18617 (WebCore::CachedXSLStyleSheet::setCharset): 18618 * page/Frame.cpp: 18619 (WebCore::Frame::write): 18620 (WebCore::Frame::gotoAnchor): 18621 (WebCore::Frame::encoding): 18622 (WebCore::Frame::backslashAsCurrencySymbol): 18623 * platform/CharsetNames.cpp: Added. 18624 (KXMLCore::): 18625 (WebCore::EncodingHash::equal): 18626 (WebCore::EncodingHash::hash): 18627 (WebCore::buildDictionaries): 18628 (WebCore::textEncodingIDFromCharsetName): 18629 (WebCore::charsetNameFromTextEncodingID): 18630 * platform/CharsetNames.h: Added. 18631 * platform/KURL.cpp: 18632 (KURL::KURL): 18633 (KURL::decode_string): 18634 (encodeRelativeString): 18635 * platform/KURL.h: 18636 * platform/QString.cpp: 18637 (QString::fromUtf8): 18638 * platform/StreamingTextDecoder.cpp: Added. 18639 (WebCore::StreamingTextDecoder::StreamingTextDecoder): 18640 (WebCore::StreamingTextDecoder::convertLatin1): 18641 (WebCore::StreamingTextDecoder::~StreamingTextDecoder): 18642 (WebCore::StreamingTextDecoder::convertUTF16): 18643 (WebCore::effectiveEncoding): 18644 (WebCore::StreamingTextDecoder::createICUConverter): 18645 (WebCore::unwanted): 18646 (WebCore::StreamingTextDecoder::appendOmittingUnwanted): 18647 (WebCore::StreamingTextDecoder::convertUsingICU): 18648 (WebCore::StreamingTextDecoder::convert): 18649 (WebCore::StreamingTextDecoder::toUnicode): 18650 * platform/StreamingTextDecoder.h: Added. 18651 (WebCore::StreamingTextDecoder::convert): 18652 * platform/TextEncoding.cpp: Added. 18653 (WebCore::TextEncoding::TextEncoding): 18654 (WebCore::TextEncoding::name): 18655 (WebCore::effectiveEncoding): 18656 (WebCore::TextEncoding::backslashAsCurrencySymbol): 18657 (WebCore::TextEncoding::toUnicode): 18658 * platform/TextEncoding.h: Added. 18659 (WebCore::): 18660 (WebCore::TextEncoding::): 18661 (WebCore::TextEncoding::TextEncoding): 18662 (WebCore::TextEncoding::isValid): 18663 (WebCore::TextEncoding::usesVisualOrdering): 18664 (WebCore::TextEncoding::isJapanese): 18665 (WebCore::TextEncoding::encodingID): 18666 (WebCore::TextEncoding::flags): 18667 (WebCore::operator==): 18668 (WebCore::operator!=): 18669 * platform/character-sets.txt: Added. 18670 * platform/mac/ExtraCFEncodings.h: Added. 18671 * platform/mac/QStringMac.mm: 18672 * platform/mac/TextEncodingMac.cpp: Added. 18673 (WebCore::effectiveEncoding): 18674 (WebCore::TextEncoding::fromUnicode): 18675 * platform/mac/can-convert.mm: Added. 18676 * platform/mac/mac-encodings.txt: Added. 18677 * platform/make-charset-table.pl: Added. 18678 * platform/win/win-encodings.txt: Added. 18679 * rendering/render_object.cpp: 18680 (WebCore::RenderObject::backslashAsCurrencySymbol): 18681 * xml/xmlhttprequest.cpp: 18682 (WebCore::XMLHttpRequest::send): 18683 (WebCore::XMLHttpRequest::slotData): 18684 18685 2006-02-27 Darin Adler <darin (a] apple.com> 18686 18687 - fix Windows build 18688 18689 * platform/win/TemporaryLinkStubs.cpp: Change KIO::TransferJob to WebCore::TransferJob. 18690 18691 2006-02-26 Darin Adler <darin (a] apple.com> 18692 18693 Reviewed by Maciej. 18694 18695 - merged Job and TransferJob into TransferJob and moved it to WebCore namespace 18696 - changed TransferJob to use a TransferJobClient object instead of signals 18697 18698 * ForwardingHeaders/kio/job.h: Changed to point to "KWQKJobClasses.h". 18699 * kwq/KWQKJob.h: Removed. 18700 * kwq/TransferJobClient.h: Added. 18701 18702 * WebCore.vcproj/WebCore/WebCore.vcproj: Updated for file changes. 18703 * WebCore.xcodeproj/project.pbxproj: Ditto. 18704 18705 * dom/xml_tokenizer.cpp: (WebCore::openFunc): 18706 * khtml/xsl/xslt_processorimpl.cpp: (DOM::docLoaderFunc): 18707 Use "new TransferJob" instead of "KIO::get" and "KIO::http_post". 18708 18709 * kwq/KWQKJobClasses.h: Eliminate Job. Add a TransferJobClient* parameter to 18710 TransferJob. Eliminate the deliverAllData parameter to TransferJob constructor. 18711 Remove the signals from TransferJob. 18712 * kwq/KWQKJobClasses.mm: 18713 (WebCore::TransferJobPrivate::TransferJobPrivate): Store a client pointer. 18714 (WebCore::TransferJob::TransferJob): Store a client pointer, remove the 18715 deliverAllData boolean. 18716 (WebCore::TransferJob::receivedResponse): Added. Replaces the old emitReceivedResponse 18717 function; uses client instead of a signal. 18718 (WebCore::TransferJob::client): Added. 18719 18720 * kwq/KWQLoader.h: Switched things to mention the WebCore namespace. 18721 Changed KIO::TransferJob to WebCore::TransferJob. 18722 * kwq/KWQLoader.mm: Ditto. 18723 18724 * kwq/KWQObject.h: 18725 * kwq/KWQObject.cpp: Removed isKHTMLLoader. 18726 18727 * kwq/KWQResourceLoader.h: Changed KIO::TransferJob to WebCore::TransferJob. 18728 * kwq/KWQResourceLoader.mm: 18729 (-[KWQResourceLoader receivedResponse:]): Call receivedResponse function on 18730 the job instead of emitReceivedResponse. 18731 (-[KWQResourceLoader redirectedToURL:]): Call receivedRedirect function on the 18732 client directly instead of emitRedirection on the job. 18733 (-[KWQResourceLoader addData:]): Call receivedData function on the 18734 client directly instead of emitData on the job. 18735 (-[KWQResourceLoader finishJobAndHandle:]): Call receivedAllData function on the 18736 client directly instead of emitResult on the job. Also fixed a potential memory leak 18737 where the handle was not released if the job was 0. 18738 18739 * kwq/KWQSignal.h: 18740 * kwq/KWQSignal.cpp: 18741 * kwq/KWQSlot.h: 18742 * kwq/KWQSlot.cpp: 18743 Removed the job-related signals and slots. 18744 18745 * loader/CachedObject.h: Removed unneeded declaration of TransferJob. 18746 18747 * loader/loader.h: 18748 * loader/loader.cpp: 18749 (WebCore::Loader::servePendingRequests): Use "new TransferJob" instead of "KIO::get". 18750 Also don't connect signals. 18751 (WebCore::Loader::receivedAllData): New name for slotFinished. 18752 (WebCore::Loader::receivedResponse): New name for slotReceivedResponse. 18753 (WebCore::Loader::receivedData): New name for slotData. 18754 (WebCore::Loader::cancelRequests): Changed KIO::Job to TransferJob. 18755 (WebCore::Loader::jobForRequest): Ditto. 18756 18757 * page/Frame.h: 18758 * page/Frame.cpp: 18759 (WebCore::Frame::didOpenURL): Use "new TransferJob" instead of "KIO::get" and 18760 "KIO::http_post". Also don't connect signals. 18761 (WebCore::Frame::receivedAllData): Renamed from slotFinished. Also slightly 18762 cleaned up the logic. 18763 (WebCore::Frame::receivedRedirect): Renamed from slotRedirection. 18764 * page/FramePrivate.h: Changed KIO::TransferJob to WebCore::TransferJob. 18765 18766 * xml/xmlhttprequest.h: 18767 * xml/xmlhttprequest.cpp: 18768 (WebCore::XMLHttpRequest::XMLHttpRequest): Eliminate XMLHttpRequestQObject. 18769 (WebCore::XMLHttpRequest::send): Use "new TransferJob" instead of 18770 "KIO::get" and "KIO::http_post". Also don't connect signals. 18771 (WebCore::XMLHttpRequest::processSyncLoadResults): Change to call the functions 18772 by their new names (names changed to use with TransferJobClient). 18773 (WebCore::XMLHttpRequest::receivedAllData): Renamed from slotFinished. 18774 (WebCore::XMLHttpRequest::receivedRedirect): Renamed from slotRedirection. 18775 (WebCore::XMLHttpRequest::receivedData): Renamed from slotData. 18776 18777 2006-02-26 Darin Adler <darin (a] apple.com> 18778 18779 - try again after seeing errors from buildbot 18780 18781 * loader/CachedCSSStyleSheet.cpp: 18782 (WebCore::CachedCSSStyleSheet::checkNotify): 18783 * loader/CachedImage.cpp: 18784 (WebCore::CachedImage::data): 18785 Add __APPLE__ ifdefs to two more uses of response. 18786 18787 2006-02-26 Darin Adler <darin (a] apple.com> 18788 18789 - try again after seeing errors from buildbot 18790 18791 * loader/CachedObject.cpp: (WebCore::CachedObject::~CachedObject): 18792 * loader/CachedObject.h: (WebCore::CachedObject::CachedObject): 18793 * loader/loader.cpp: 18794 Add __APPLE__ ifdefs to calls to setResponse and setAllData. 18795 18796 * platform/win/TemporaryLinkStubs.cpp: Add missing includes. 18797 18798 2006-02-26 Darin Adler <darin (a] apple.com> 18799 18800 Reviewed by Maciej. 18801 18802 - more Win32 link fixes 18803 18804 * loader/CachedObject.h: Put some Mac-specific stuff inside 18805 __APPLE__ ifdefs. 18806 * platform/win/TemporaryLinkStubs.cpp: Added more stubs. 18807 18808 2006-02-26 Darin Adler <darin (a] apple.com> 18809 18810 - try again after seeing errors from buildbot 18811 18812 * platform/win/TemporaryLinkStubs.cpp: Added more includes. 18813 18814 2006-02-26 Darin Adler <darin (a] apple.com> 18815 18816 - try again after seeing errors from buildbot 18817 18818 * platform/win/TemporaryLinkStubs.cpp: Added more includes. 18819 18820 2006-02-26 Darin Adler <darin (a] apple.com> 18821 18822 Reviewed by Maciej. 18823 18824 - work toward getting the Win32 build to link 18825 18826 * WebCore.vcproj/WebCore/WebCore.vcproj: Added KWQObject.cpp. 18827 * platform/win/TemporaryLinkStubs.cpp: Added more stubs. 18828 18829 2006-02-24 Antti Koivisto <koivisto (a] iki.fi> 18830 18831 Reviewed by Hyatt. 18832 18833 - fix http://bugs.webkit.org/show_bug.cgi?id=7440 18834 Floats not positioned correctly 18835 18836 Test: fast/block/float/multiple-float-positioning.html 18837 18838 * rendering/RenderBlock.cpp: 18839 (WebCore::RenderBlock::positionNewFloats): Correct iteration of the float list 18840 18841 2006-02-24 Graham Dennis <Graham.Dennis (a] gmail.com> 18842 18843 <http://bugs.webkit.org/show_bug.cgi?id=6933> 18844 Selection extends beyond focus ring for some contentEditable divs 18845 18846 Reviewed by justin 18847 18848 * rendering/RenderBlock.cpp: 18849 (WebCore::RenderBlock::isSelectionRoot): Have root editable elements paint their 18850 own selection gaps. 18851 18852 2006-02-24 Darin Adler <darin (a] apple.com> 18853 18854 Reviewed by Maciej. 18855 18856 - fix <rdar://problem/4456287> REGRESSION: assertion failure at mypage.apple.com 18857 in WebCore::TimerBase::nextFireInterval() const + 100 (Timer.cpp:188) 18858 18859 Test: fast/dom/Window/redirect-with-timer.html 18860 18861 * platform/Timer.h: Made isActive no longer inline. Added inHeap function. 18862 * platform/Timer.cpp: Changed assertions to use inHeap function for clarity. 18863 (WebCore::TimerBase::isActive): Return true for timers that are ready to fire. 18864 They have a next fire time of 0, but they should still be considered active. 18865 (WebCore::TimerBase::checkConsistency): Correct the consistency check. The new 18866 rule is that timers with a next fire time of 0 are not in the heap, and all other 18867 timers are. 18868 18869 2006-02-24 Graham Dennis <Graham.Dennis (a] gmail.com> 18870 18871 <http://bugs.webkit.org/show_bug.cgi?id=7245> 18872 caret does not display at the end of some lines in contenteditable divs 18873 18874 Reviewed by justin 18875 18876 * khtml/html/HTMLElementImpl.cpp: 18877 (WebCore::HTMLElementImpl::setContentEditable): 18878 * page/Frame.cpp: 18879 (WebCore::Frame::applyEditingStyleToElement): 18880 (WebCore::Frame::removeEditingStyleFromElement): 18881 18882 2006-02-24 Eric Seidel <eseidel (a] apple.com> 18883 18884 Reviewed by mjs. 18885 18886 Move dom_qname to QualifiedName and dom_atomicstringlist to AtomicStringList. 18887 18888 * WebCore+SVG/KDOMHeaders.h: 18889 * WebCore.vcproj/WebCore/WebCore.vcproj: 18890 * WebCore.xcodeproj/project.pbxproj: 18891 * css/css_base.h: 18892 * dom/AtomicStringList.h: Added. 18893 (WebCore::AtomicStringList::AtomicStringList): 18894 * dom/QualifiedName.cpp: Added. 18895 * dom/QualifiedName.h: Added. 18896 * dom/dom_atomicstringlist.h: Removed. 18897 * dom/dom_elementimpl.h: 18898 * dom/dom_qname.cpp: Removed. 18899 * dom/dom_qname.h: Removed. 18900 * editing/RemoveNodeAttributeCommand.h: 18901 * editing/SetNodeAttributeCommand.h: 18902 * khtml/html/htmlnames.h: 18903 * khtml/html/htmltokenizer.h: 18904 * ksvg2/scripts/make_names.pl: update for new headers 18905 18906 2006-02-24 Eric Seidel <eseidel (a] apple.com> 18907 18908 Reviewed by beth. 18909 18910 Made a few methods on frame pure virtual. 18911 Added a bunch of stub functions for win32 linking. 18912 18913 * bridge/mac/MacFrame.h: 18914 * bridge/mac/MacFrame.mm: 18915 (WebCore::MacFrame::print): 18916 (WebCore::MacFrame::canUndo): 18917 (WebCore::MacFrame::canRedo): 18918 (WebCore::MacFrame::canPaste): 18919 * bridge/win/FrameWin.h: 18920 * page/Frame.h: 18921 * platform/win/TemporaryLinkStubs.cpp: 18922 (QTextEdit::sizeWithColumnsAndRows): 18923 (QLineEdit::maxLength): 18924 (QPainter::drawEllipse): 18925 (QTextEdit::setLineHeight): 18926 (QPainter::beginTransparencyLayer): 18927 (QLineEdit::selectedText): 18928 (Widget::setIsSelected): 18929 (QPainter::paintingDisabled): 18930 (QFontMetrics::selectionRectForText): 18931 (QTextEdit::getCursorPosition): 18932 (QSlider::QSlider): 18933 (WebCore::crossCursor): 18934 (WebCore::handCursor): 18935 (WebCore::moveCursor): 18936 (WebCore::iBeamCursor): 18937 (WebCore::waitCursor): 18938 (WebCore::helpCursor): 18939 (WebCore::eastResizeCursor): 18940 (WebCore::northResizeCursor): 18941 (WebCore::northEastResizeCursor): 18942 (WebCore::northWestResizeCursor): 18943 (WebCore::southResizeCursor): 18944 (WebCore::southEastResizeCursor): 18945 (WebCore::southWestResizeCursor): 18946 (WebCore::westResizeCursor): 18947 18948 2006-02-24 Sam Weinig <sam.weinig (a] gmail.com> 18949 18950 Reviewed by Hyatt, tweaked and landed by ggaren. 18951 18952 - fix http://bugs.webkit.org/show_bug.cgi?id=5146 18953 max-height/max-width not resizing images with correct aspect ratio 18954 18955 This patch is a port and adaptation of Allan Sandfeld Jensen's (carewolf) 18956 patch of http://bugs.kde.org/show_bug.cgi?id=120107 with the needed 18957 modifications to suit the Webcore tree. Makes images respect min/max 18958 sizes and their intrinsic aspect ratios at the same time according to 18959 CSS 2.1 (http://www.w3.org/TR/CSS21/visudet.html#min-max-widths). 18960 18961 Test: fast/replaced/maxheight-percent.html 18962 Test: fast/replaced/maxheight-pxs.html 18963 Test: fast/replaced/maxwidth-percent.html 18964 Test: fast/replaced/maxwidth-pxs.html 18965 Test: fast/replaced/minheight-percent.html 18966 Test: fast/replaced/minheight-pxs.html 18967 Test: fast/replaced/minwidth-percent.html 18968 Test: fast/replaced/minwidth-pxs.html 18969 18970 * rendering/render_box.cpp: 18971 (WebCore::RenderBox::calcReplacedWidth): 18972 (WebCore::RenderBox::calcReplacedWidthUsing): 18973 (WebCore::RenderBox::calcReplacedHeight): 18974 (WebCore::RenderBox::calcReplacedHeightUsing): Calculate percent heights correctly 18975 * rendering/render_image.cpp: Respect aspect ratios and calculate max/min 18976 (WebCore::RenderImage::calcReplacedWidth): 18977 (WebCore::RenderImage::calcReplacedHeight): 18978 (WebCore::RenderImage::calcAspectRatioWidth): Added 18979 (WebCore::RenderImage::calcAspectRatioHeight): Added 18980 (WebCore::RenderImage::calcMinMaxWidth): Added 18981 * rendering/render_image.h: 18982 18983 2006-02-24 Vicki Murley <vicki (a] apple.com> 18984 18985 - add missing resources for manual-tests/scrolling-nestedframesets.html 18986 18987 * manual-tests/resources/testframe-link_text.html: Added. 18988 * manual-tests/resources/testframeset.html: Added. 18989 18990 2006-02-24 Vicki Murley <vicki (a] apple.com> 18991 18992 - test case for <rdar://problem/4394910> calling Javascript window.close() does not trigger onbeforeunload event 18993 18994 * manual-tests/onbeforeunload-close_with_javascript.html: Added. 18995 18996 2006-02-24 Eric Seidel <eseidel (a] apple.com> 18997 18998 Reviewed by mjs. 18999 19000 Add Path stubs for Win32 build. 19001 19002 * WebCore.vcproj/WebCore/WebCore.vcproj: 19003 * platform/win/TemporaryLinkStubs.cpp: 19004 (Path::Path): 19005 (Path::~Path): 19006 (Path::operator=): 19007 (Path::contains): 19008 (Path::translate): 19009 (Path::boundingRect): 19010 19011 2006-02-24 David Hyatt <hyatt (a] apple.com> 19012 19013 In preparation for the elimination of QFont and QFontMetrics, rename methods on RenderStyle. htmlFont() becomes simply 19014 font(). The old font() method turns into qfont(). Also added a helper for obtaining the fontDescription() directly from 19015 the RenderStyle (without first obtaining the htmlFont()). 19016 19017 Reviewed by darin 19018 19019 * WebCore.xcodeproj/project.pbxproj: 19020 * bindings/objc/DOM.mm: 19021 (-[DOMElement _font]): 19022 * bridge/mac/MacFrame.mm: 19023 (WebCore::MacFrame::attributedString): 19024 (WebCore::MacFrame::fontForSelection): 19025 (WebCore::MacFrame::fontAttributesForSelectionStart): 19026 * css/css_computedstyle.cpp: 19027 (WebCore::CSSComputedStyleDeclarationImpl::getPropertyCSSValue): 19028 * css/css_valueimpl.cpp: 19029 (WebCore::CSSPrimitiveValueImpl::computeLengthFloat): 19030 * css/cssstyleselector.cpp: 19031 (WebCore::CSSStyleSelector::styleForElement): 19032 (WebCore::CSSStyleSelector::pseudoStyleForElement): 19033 (WebCore::CSSStyleSelector::applyProperty): 19034 (WebCore::CSSStyleSelector::checkForTextSizeAdjust): 19035 (WebCore::CSSStyleSelector::checkForGenericFamilyChange): 19036 * dom/DocumentImpl.cpp: 19037 (WebCore::DocumentImpl::recalcStyle): 19038 * editing/visible_text.cpp: 19039 (khtml::TextIterator::exitNode): 19040 * ksvg2/svg/SVGLengthImpl.cpp: 19041 (SVGLengthImpl::updateValue): 19042 * kwq/KWQAccObject.mm: 19043 (AXAttributeStringSetStyle): 19044 * rendering/InlineTextBox.cpp: 19045 (khtml::InlineTextBox::paint): 19046 (khtml::InlineTextBox::offsetForPosition): 19047 * rendering/RenderText.cpp: 19048 (WebCore::RenderText::shouldUseMonospaceCache): 19049 (WebCore::RenderText::font): 19050 (WebCore::RenderText::width): 19051 (WebCore::RenderText::htmlFont): 19052 * rendering/bidi.cpp: 19053 (khtml::RenderBlock::tabWidth): 19054 (khtml::RenderBlock::checkLinesForTextOverflow): 19055 * rendering/render_br.cpp: 19056 (WebCore::RenderBR::lineHeight): 19057 * rendering/render_flexbox.cpp: 19058 (khtml::RenderFlexibleBox::layoutVerticalBox): 19059 * rendering/render_flow.cpp: 19060 (WebCore::RenderFlow::lineHeight): 19061 * rendering/render_form.cpp: 19062 (WebCore::RenderFormElement::setStyle): 19063 (WebCore::RenderFormElement::addIntrinsicMarginsIfAllowed): 19064 * rendering/render_image.cpp: 19065 (WebCore::RenderImage::paint): 19066 * rendering/render_line.cpp: 19067 (WebCore::InlineFlowBox::paintDecorations): 19068 (WebCore::EllipsisBox::paint): 19069 * rendering/render_list.cpp: 19070 (RenderListItem::getAbsoluteRepaintRect): 19071 (RenderListMarker::paint): 19072 * rendering/render_object.cpp: 19073 (WebCore::RenderObject::lineHeight): 19074 * rendering/render_object.h: 19075 (WebCore::RenderObject::font): 19076 * rendering/render_replaced.cpp: 19077 (WebCore::RenderWidget::setStyle): 19078 * rendering/render_style.h: 19079 (khtml::RenderStyle::font): 19080 (khtml::RenderStyle::fontDescription): 19081 (khtml::RenderStyle::qfont): 19082 * rendering/render_theme_mac.mm: 19083 (WebCore::RenderThemeMac::setFontFromControlSize): 19084 19085 2006-02-24 Maciej Stachowiak <mjs (a] apple.com> 19086 19087 Reviewed by Eric. 19088 19089 - add link stubs for symbols only referenced from the link stubs file 19090 19091 * platform/win/TemporaryLinkStubs.cpp: 19092 (KWQFileButton::focusPolicy): 19093 (QLineEdit::checksDescendantsForFocus): 19094 (KWQFileButton::baselinePosition): 19095 (QSlider::~QSlider): 19096 (QListBox::~QListBox): 19097 (KWQFileButton::frameGeometry): 19098 (KWQFileButton::~KWQFileButton): 19099 (QTextEdit::focusPolicy): 19100 (QSlider::focusPolicy): 19101 (QListBox::setEnabled): 19102 (QListBox::checksDescendantsForFocus): 19103 (QListBox::focusPolicy): 19104 (QLineEdit::baselinePosition): 19105 (QSlider::sizeHint): 19106 (QLineEdit::~QLineEdit): 19107 (QTextEdit::~QTextEdit): 19108 (QTextEdit::checksDescendantsForFocus): 19109 (QLineEdit::focusPolicy): 19110 (QScrollBar::~QScrollBar): 19111 19112 2006-02-24 Maciej Stachowiak <mjs (a] apple.com> 19113 19114 Rubber stamped by Eric. 19115 19116 - fix up font.h inclues to be Font.h to fix build. 19117 19118 * css/css_computedstyle.cpp: 19119 * css/css_valueimpl.cpp: 19120 * platform/Font.cpp: 19121 * rendering/render_style.h: 19122 19123 2006-02-24 Eric Seidel <eseidel (a] apple.com> 19124 19125 Reviewed by mjs. 19126 19127 Fix mac build by changing constants to an enum. 19128 19129 * khtml/dom/dom2_events.h: 19130 (DOM::KeyboardEvent::): 19131 19132 2006-02-24 David Hyatt <hyatt (a] apple.com> 19133 19134 Move rendering/font to platform/Font. 19135 19136 Reviewed by mjs 19137 19138 * WebCore.xcodeproj/project.pbxproj: 19139 * css/cssstyleselector.cpp: 19140 * platform/Font.cpp: Added. 19141 * platform/Font.h: Added. 19142 * rendering/font.cpp: Removed. 19143 * rendering/font.h: Removed. 19144 * rendering/render_theme_mac.mm: 19145 19146 2006-02-24 Eric Seidel <eseidel (a] apple.com> 19147 19148 Reviewed by mjs. 19149 19150 Remove delcarations causing duplicate symbols on win32. 19151 19152 * khtml/dom/dom2_events.cpp: 19153 19154 2006-02-24 Eric Seidel <eseidel (a] apple.com> 19155 19156 * bridge/win/FrameWin.cpp: fix line endings 19157 19158 2006-02-24 Eric Seidel <eseidel (a] apple.com> 19159 19160 Reviewed by beth. 19161 19162 Removed WebCore:: prefixes added using namespace WebCore, fixes win32 build. 19163 19164 * platform/win/TemporaryLinkStubs.cpp: 19165 (QPainter::save): 19166 (Widget::enableFlushDrawing): 19167 (QPainter::drawHighlightForText): 19168 (QTextEdit::textWithHardLineBreaks): 19169 (QPainter::setPen): 19170 (QPainter::selectedTextBackgroundColor): 19171 (QPainter::fontMetrics): 19172 (Widget::show): 19173 (QLineEdit::setWritingDirection): 19174 (KWQFileButton::sizeForCharacterWidth): 19175 (QTextEdit::sizeWithColumnsAndRows): 19176 (iBeamCursor): 19177 (QPainter::misspellingLineThickness): 19178 (westResizeCursor): 19179 (Widget::isEnabled): 19180 (northWestResizeCursor): 19181 (QPainter::drawEllipse): 19182 (southWestResizeCursor): 19183 (Widget::focusPolicy): 19184 (waitCursor): 19185 (QPainter::endTransparencyLayer): 19186 (ScrollView::addChild): 19187 (Widget::~Widget): 19188 (QListBox::sizeForNumberOfLines): 19189 (FrameView::updateBorder): 19190 (QPainter::drawLineForText): 19191 (QPainter::QPainter): 19192 (QComboBox::focusPolicy): 19193 (QPainter::drawImageAtPoint): 19194 (QPainter::clearShadow): 19195 (eastResizeCursor): 19196 (QFontMetrics::boundingRect): 19197 (QPainter::beginTransparencyLayer): 19198 (northEastResizeCursor): 19199 (Widget::frameGeometry): 19200 (QPainter::addFocusRingRect): 19201 (QPainter::restore): 19202 (Widget::setEnabled): 19203 (QPainter::font): 19204 (QPainter::pen): 19205 (crossCursor): 19206 (Widget::setIsSelected): 19207 (handCursor): 19208 (QLineEdit::text): 19209 (Widget::unlockDrawingFocus): 19210 (QPainter::paintingDisabled): 19211 (northResizeCursor): 19212 (Widget::lockDrawingFocus): 19213 (QPainter::drawLine): 19214 (QPainter::setBrush): 19215 (QPainter::drawText): 19216 (QLineEdit::sizeForCharacterWidth): 19217 (Cursor::~Cursor): 19218 (QFontMetrics::selectionRectForText): 19219 (southResizeCursor): 19220 (moveCursor): 19221 (FrameView::isFrameView): 19222 (helpCursor): 19223 (QTextEdit::setWritingDirection): 19224 (Widget::setDrawingAlpha): 19225 (southEastResizeCursor): 19226 (QPainter::drawScaledAndTiledImage): 19227 (QPainter::drawImage): 19228 (QComboBox::setWritingDirection): 19229 (QComboBox::sizeHint): 19230 (QPainter::drawRect): 19231 (QPainter::drawTiledImage): 19232 (QPainter::clearFocusRing): 19233 (Widget::Widget): 19234 (QTextEdit::text): 19235 (QPainter::drawImageInRect): 19236 (Widget::disableFlushDrawing): 19237 (QPainter::initFocusRing): 19238 (QPainter::drawLineForMisspelling): 19239 (QComboBox::frameGeometry): 19240 (QListBox::setWritingDirection): 19241 (ScrollView::updateContents): 19242 19243 2006-02-24 Darin Adler <darin (a] apple.com> 19244 19245 Reviewed by Hyatt. 19246 19247 - moved QScrollView from kwq to platform directory 19248 19249 * kwq/KWQScrollView.h: Removed. 19250 * kwq/KWQScrollView.mm: Removed. 19251 19252 * platform/ScrollBarMode.h: Added. Just the enum for scroll bar mode. 19253 * platform/ScrollView.h: Added. The rest of the former QScrollView. 19254 * platform/mac/ScrollViewMac.mm: Added. 19255 19256 * WebCore.xcodeproj/project.pbxproj: Updated. 19257 * WebCore.vcproj/WebCore/WebCore.vcproj: Ditto. 19258 * platform/win/TemporaryLinkStubs.cpp: Updated. 19259 19260 * bridge/mac/MacFrame.mm: (WebCore::MacFrame::createFrame): 19261 * khtml/html/html_baseimpl.cpp: 19262 (WebCore::HTMLFrameElementImpl::init): 19263 (WebCore::HTMLFrameElementImpl::parseMappedAttribute): 19264 * page/Frame.cpp: (WebCore::Frame::scrollbarsVisible): 19265 Changed scrolling constants to use new names. 19266 19267 * khtml/ecma/kjs_html.cpp: (KJS::HTMLElement::bodySetter): 19268 Use FrameView instead of QScrollView for a local variable. 19269 19270 * khtml/html/html_baseimpl.h: Use ScrollBarMode instead of 19271 QScrollView::ScrollBarMode. 19272 19273 * kwq/KWQListBox.h: Use WebCore::ScrollView instead of 19274 QScrollView and WebCore::ScrollBarMode instead of QScrollView::ScrollBarMode. 19275 * kwq/KWQTextEdit.h: Ditto. 19276 * kwq/KWQTextEdit.mm: 19277 (QTextEdit::setScrollBarModes): Ditto. 19278 (QTextEdit::focusPolicy): Ditto. 19279 19280 * page/FrameView.h: 19281 * page/FrameView.cpp: 19282 (WebCore::FrameViewPrivate::FrameViewPrivate): Use ScrollBarMode 19283 instead of QScrollView::ScrollBarMode. 19284 (WebCore::FrameView::FrameView): Remove mention of QScrollView. 19285 (WebCore::FrameView::resetScrollBars): Rename QScrollView to ScrollView. 19286 (WebCore::FrameView::applyOverflowToViewport): Use newly-named constants. 19287 (WebCore::FrameView::layout): Ditto. 19288 (WebCore::FrameView::setScrollBarsMode): Rename QScrollView to ScrollView. 19289 (WebCore::FrameView::setVScrollBarMode): Ditto. 19290 (WebCore::FrameView::setHScrollBarMode): Ditto. 19291 (WebCore::FrameView::restoreScrollBar): Ditto. 19292 19293 * platform/mac/MouseEventMac.mm: (WebCore::positionForEvent): Fixed comment. 19294 * platform/mac/WheelEventMac.mm: (WebCore::positionForEvent): Ditto. 19295 * platform/mac/WidgetMac.mm: (WebCore::Widget::getOuterView): Ditto. 19296 19297 * rendering/render_form.cpp: (WebCore::RenderTextArea::setStyle): 19298 Use ScrollBarMode instead of QScrollView::ScrollBarMode, and new constants. 19299 * rendering/render_frames.cpp: 19300 (WebCore::RenderFrameSet::userResize): Changed to use an IntRect to pass to 19301 updateContents so we can remove the overload. 19302 (WebCore::RenderPart::updateWidgetPosition): Remove unnecessary of QScrollView. 19303 19304 * rendering/render_layer.cpp: 19305 (WebCore::RenderLayer::scrollRectToVisible): Use FrameView instead of QScrollView. 19306 (WebCore::RenderLayer::setHasHorizontalScrollbar): Ditto. 19307 (WebCore::RenderLayer::setHasVerticalScrollbar): Ditto. 19308 19309 2006-02-24 Eric Seidel <eseidel (a] apple.com> 19310 19311 Reviewed by anders. 19312 19313 Fix the win32 build. 19314 19315 * page/Frame.cpp: 19316 (WebCore::Frame::adjustPageHeight): 19317 (WebCore::Frame::forceLayoutWithPageWidthRange): 19318 19319 2006-02-23 David Hyatt <hyatt (a] apple.com> 19320 19321 Rename FontDef to FontDescription and move it into the platform directory. 19322 19323 Reviewed by darin 19324 19325 * WebCore.xcodeproj/project.pbxproj: 19326 * bridge/mac/MacFrame.mm: 19327 (WebCore::MacFrame::attributedString): 19328 * css/css_computedstyle.cpp: 19329 (WebCore::CSSComputedStyleDeclarationImpl::getPropertyCSSValue): 19330 * css/css_valueimpl.cpp: 19331 (WebCore::CSSPrimitiveValueImpl::computeLengthFloat): 19332 * css/cssstyleselector.cpp: 19333 (WebCore::CSSStyleSelector::applyProperty): 19334 (WebCore::CSSStyleSelector::checkForTextSizeAdjust): 19335 (WebCore::CSSStyleSelector::checkForGenericFamilyChange): 19336 (WebCore::CSSStyleSelector::setFontSize): 19337 * css/cssstyleselector.h: 19338 * dom/DocumentImpl.cpp: 19339 (WebCore::DocumentImpl::recalcStyle): 19340 * editing/visible_text.cpp: 19341 (khtml::TextIterator::exitNode): 19342 * platform/FontDescription.h: Added. 19343 (WebCore::FontDescription::): 19344 (WebCore::FontDescription::FontDescription): 19345 (WebCore::FontDescription::operator!=): 19346 (WebCore::FontDescription::family): 19347 (WebCore::FontDescription::firstFamily): 19348 (WebCore::FontDescription::specifiedSize): 19349 (WebCore::FontDescription::computedSize): 19350 (WebCore::FontDescription::italic): 19351 (WebCore::FontDescription::computedPixelSize): 19352 (WebCore::FontDescription::smallCaps): 19353 (WebCore::FontDescription::isAbsoluteSize): 19354 (WebCore::FontDescription::weight): 19355 (WebCore::FontDescription::genericFamily): 19356 (WebCore::FontDescription::usePrinterFont): 19357 (WebCore::FontDescription::setFamily): 19358 (WebCore::FontDescription::setComputedSize): 19359 (WebCore::FontDescription::setSpecifiedSize): 19360 (WebCore::FontDescription::setItalic): 19361 (WebCore::FontDescription::setSmallCaps): 19362 (WebCore::FontDescription::setIsAbsoluteSize): 19363 (WebCore::FontDescription::setWeight): 19364 (WebCore::FontDescription::setGenericFamily): 19365 (WebCore::FontDescription::setUsePrinterFont): 19366 (WebCore::FontDescription::operator==): 19367 * rendering/RenderText.cpp: 19368 (WebCore::RenderText::widthFromCache): 19369 (WebCore::RenderText::trimmedMinMaxWidth): 19370 * rendering/bidi.cpp: 19371 (khtml::RenderBlock::computeHorizontalPositionsForLine): 19372 * rendering/font.cpp: 19373 (khtml::Font::selectionRectForText): 19374 (khtml::Font::drawHighlightForText): 19375 (khtml::Font::drawText): 19376 (khtml::Font::update): 19377 * rendering/font.h: 19378 (WebCore::Font::Font): 19379 (WebCore::Font::operator==): 19380 (WebCore::Font::fontDescription): 19381 (WebCore::Font::isSmallCaps): 19382 (WebCore::Font::wordSpacing): 19383 (WebCore::Font::floatWidth): 19384 (WebCore::Font::checkSelectionPoint): 19385 (WebCore::Font::width): 19386 * rendering/render_line.cpp: 19387 (WebCore::InlineFlowBox::placeBoxesHorizontally): 19388 * rendering/render_list.cpp: 19389 (RenderListItem::getAbsoluteRepaintRect): 19390 * rendering/render_style.h: 19391 (khtml::RenderStyle::wordSpacing): 19392 (khtml::RenderStyle::letterSpacing): 19393 (khtml::RenderStyle::setFontDescription): 19394 (khtml::RenderStyle::setWordSpacing): 19395 (khtml::RenderStyle::setLetterSpacing): 19396 * rendering/render_theme_mac.mm: 19397 (WebCore::RenderThemeMac::setFontFromControlSize): 19398 19399 2006-02-23 Maciej Stachowiak <mjs (a] apple.com> 19400 19401 - fix build by making some pointless changes to files that Xcode doesn't 19402 rebuild otherwise 19403 19404 * bindings/js/JSDOMCore.cpp: 19405 * bindings/js/JSDOMEvents.cpp: 19406 * dom/Element.idl: 19407 * dom/WheelEvent.idl: 19408 19409 - add -Y 3 flag to linking; this makes the linker say what files reference 19410 unresolved symbols 19411 19412 * WebCore.xcodeproj/project.pbxproj: 19413 19414 2006-02-23 Darin Adler <darin (a] apple.com> 19415 19416 - try to fix Windows build 19417 19418 * platform/win/TemporaryLinkStubs.cpp: Removed childX/Y stubs. 19419 19420 2006-02-23 Darin Adler <darin (a] apple.com> 19421 19422 - try to fix Windows build 19423 19424 * platform/win/TemporaryLinkStubs.cpp: Removed QPalette-related stubs. 19425 19426 - remove unused forwarding headers 19427 19428 * ForwardingHeaders/kurl.h: Removed. 19429 * ForwardingHeaders/qlist.h: Removed. 19430 * ForwardingHeaders/qregion.h: Removed. 19431 * ForwardingHeaders/qsortedlist.h: Removed. 19432 19433 2006-02-23 Darin Adler <darin (a] apple.com> 19434 19435 Reviewed by Maciej. 19436 19437 - removed QPalette, QRegion, QPrinter 19438 - added Path to replace QRegion 19439 - removed unused QScrollView functions 19440 19441 * ForwardingHeaders/qpalette.h: Removed. 19442 * kwq/KWQPalette.h: Removed. 19443 * kwq/KWQPalette.mm: Removed. 19444 * kwq/KWQPrinter.h: Removed. 19445 * kwq/KWQRegion.cpp: Removed. 19446 * kwq/KWQRegion.h: Removed. 19447 19448 * platform/Path.h: Added. Replaces QRegion. 19449 * platform/cg: Added. 19450 * platform/cg/PathCG.cpp: Added. 19451 19452 * WebCore.vcproj/WebCore/WebCore.vcproj: Updated for file changes. 19453 * WebCore.xcodeproj/project.pbxproj: Ditto. 19454 19455 * bridge/mac/MacFrame.mm: Removed use of KWQPrinter.h. 19456 (WebCore::MacFrame::khtmlMouseMoveEvent): Removed use of viewport(). 19457 * bridge/mac/WebCoreFrameBridge.mm: Removed use of KWQPrinter.h. 19458 * khtml/html/html_imageimpl.cpp: 19459 (WebCore::HTMLAreaElementImpl::getRect): Replaced QRegion with Path. 19460 (WebCore::HTMLAreaElementImpl::getRegion): Ditto. 19461 * khtml/html/html_imageimpl.h: Ditto. 19462 * kwq/KWQPainter.mm: Removed use of QRegion. 19463 * page/Frame.cpp: (WebCore::Frame::~Frame): Removed use of viewport(). 19464 * page/FrameView.cpp: 19465 (WebCore::FrameView::FrameView): Ditto. 19466 (WebCore::FrameView::viewportMouseMoveEvent): Ditto. 19467 * rendering/render_frames.cpp: (WebCore::RenderFrameSet::userResize): Ditto. 19468 * rendering/render_layer.cpp: (WebCore::RenderLayer::scrollRectToVisible): Ditto. 19469 19470 * kwq/KWQScrollView.h: Removed viewport(), hasVerticalScrollBar(), 19471 hasHorizontalScrollBar(), childX(), childY(). 19472 * kwq/KWQScrollView.mm: Ditto. 19473 19474 * rendering/render_box.cpp: (WebCore::RenderBox::paintBackgroundExtended): 19475 Removed use of QPalette that always yields white. 19476 * rendering/render_canvas.cpp: (WebCore::RenderCanvas::paintBoxDecorations): 19477 Ditto. 19478 19479 * platform/Widget.h: 19480 * platform/mac/WidgetMac.mm: Removed palette() and setPalette(). 19481 19482 * kwq/KWQLineEdit.h: Replaced setPalette with setColors. 19483 * kwq/KWQLineEdit.mm: (QLineEdit::setColors): Replaced setPalette. 19484 * kwq/KWQTextEdit.h: Ditto. 19485 * kwq/KWQTextEdit.mm: (QTextEdit::setColors): Ditto. 19486 19487 * rendering/render_form.cpp: 19488 (WebCore::RenderFormElement::updateFromElement): Removed call to setPalette. 19489 (WebCore::RenderLineEdit::updateFromElement): Added call to setColors. 19490 (WebCore::RenderTextArea::updateFromElement): Ditto. 19491 19492 * rendering/render_replaced.cpp: (WebCore::RenderWidget::paint): 19493 Removed use of childX and childY functions. 19494 19495 2006-02-23 Maciej Stachowiak <mjs (a] apple.com> 19496 19497 Reviewed by Darin. 19498 19499 - add KURL to windows build and fix its compile issues 19500 http://bugs.webkit.org/show_bug.cgi?id=7439 19501 19502 * WebCore.vcproj/WebCore/WebCore.vcproj: 19503 * platform/KURL.cpp: 19504 19505 2006-02-23 Maciej Stachowiak <mjs (a] apple.com> 19506 19507 - fix build (header name changed) 19508 19509 * platform/mac/KURLMac.mm: 19510 19511 2006-02-23 Maciej Stachowiak <mjs (a] apple.com> 19512 19513 Reviewed by Eric. 19514 19515 - add temporary stubs that call abort() for functions only called from render and editing code 19516 http://bugs.webkit.org/show_bug.cgi?id=7429 19517 19518 This gets rid of a couple hundred link errors. 19519 19520 * WebCore.vcproj/WebCore/WebCore.vcproj: 19521 * kwq/KWQFontMetrics.h: 19522 * kwq/KWQSignal.h: 19523 (KWQSignal::KWQSignal): 19524 * platform/win/TemporaryLinkStubs.cpp: Added. 19525 (notImplemented): 19526 (QLineEdit::selectAll): 19527 (WebCore::QPainter::save): 19528 (WebCore::Widget::enableFlushDrawing): 19529 (WebCore::QPainter::drawHighlightForText): 19530 (QFont::setPrinterFont): 19531 (QTextEdit::textWithHardLineBreaks): 19532 (QLineEdit::cursorPosition): 19533 (WebCore::QPainter::setPen): 19534 (WebCore::QPainter::selectedTextBackgroundColor): 19535 (WebCore::QPainter::fontMetrics): 19536 (WebCore::Widget::show): 19537 (QFont::setItalic): 19538 (QSlider::setValue): 19539 (QLineEdit::addSearchResult): 19540 (KWQFileButton::click): 19541 (QLineEdit::setWritingDirection): 19542 (KWQFileButton::sizeForCharacterWidth): 19543 (QTextEdit::sizeWithColumnsAndRows): 19544 (WebCore::iBeamCursor): 19545 (QComboBox::clear): 19546 (WebCore::QPainter::misspellingLineThickness): 19547 (QLineEdit::maxLength): 19548 (WebCore::westResizeCursor): 19549 (WebCore::Widget::isEnabled): 19550 (WebCore::northWestResizeCursor): 19551 (QTextEdit::selectionEnd): 19552 (QFont::determinePitch): 19553 (QTextEdit::setScrollBarModes): 19554 (WebCore::QPainter::drawEllipse): 19555 (WebCore::southWestResizeCursor): 19556 (QTextEdit::setReadOnly): 19557 (QListBox::appendItem): 19558 (WebCore::Widget::focusPolicy): 19559 (QTextEdit::selectAll): 19560 (WebCore::waitCursor): 19561 (WebCore::QPainter::endTransparencyLayer): 19562 (QScrollView::addChild): 19563 (QTextEdit::setDisabled): 19564 (QScrollBar::scroll): 19565 (WebCore::Widget::~Widget): 19566 (QListBox::sizeForNumberOfLines): 19567 (QScrollView::resizeContents): 19568 (QLineEdit::selectionStart): 19569 (QLineEdit::QLineEdit): 19570 (WebCore::FrameView::updateBorder): 19571 (QLineEdit::hasSelectedText): 19572 (QListBox::doneAppendingItems): 19573 (QScrollView::inWindow): 19574 (QScrollBar::setValue): 19575 (QTextEdit::hasSelectedText): 19576 (QTextEdit::selectionStart): 19577 (QFont::setWeight): 19578 (QScrollView::scrollXOffset): 19579 (QListBox::isSelected): 19580 (QLineEdit::setReadOnly): 19581 (WebCore::QPainter::drawLineForText): 19582 (QObject::disconnect): 19583 (WebCore::QPainter::QPainter): 19584 (QComboBox::~QComboBox): 19585 (QComboBox::focusPolicy): 19586 (WebCore::QPainter::drawImageAtPoint): 19587 (WebCore::QPainter::clearShadow): 19588 (QTextEdit::setLineHeight): 19589 (QMouseEvent::QMouseEvent): 19590 (WebCore::eastResizeCursor): 19591 (QScrollBar::setKnobProportion): 19592 (QFontMetrics::boundingRect): 19593 (QTextEdit::setSelectionStart): 19594 (WebCore::QPainter::beginTransparencyLayer): 19595 (WebCore::northEastResizeCursor): 19596 (WebCore::Widget::frameGeometry): 19597 (QListBox::setSelected): 19598 (WebCore::QPainter::addFocusRingRect): 19599 (QTextEdit::setCursorPosition): 19600 (WebCore::QPainter::restore): 19601 (QFontMetrics::width): 19602 (WebCore::Widget::setEnabled): 19603 (QTextEdit::setSelectionEnd): 19604 (QComboBox::populate): 19605 (QScrollView::setStaticBackground): 19606 (WebCore::QPainter::font): 19607 (QTextEdit::setAlignment): 19608 (QLineEdit::setCursorPosition): 19609 (WebCore::Widget::palette): 19610 (WebCore::QPainter::pen): 19611 (QFontMetrics::descent): 19612 (QListBox::QListBox): 19613 (QFontMetrics::ascent): 19614 (QLineEdit::selectedText): 19615 (WebCore::crossCursor): 19616 (WebCore::Widget::setIsSelected): 19617 (WebCore::handCursor): 19618 (QLineEdit::text): 19619 (WebCore::Widget::unlockDrawingFocus): 19620 (QLineEdit::setLiveSearch): 19621 (WebCore::QPainter::paintingDisabled): 19622 (WebCore::northResizeCursor): 19623 (QComboBox::QComboBox): 19624 (QSlider::setMaxValue): 19625 (WebCore::Widget::lockDrawingFocus): 19626 (WebCore::QPainter::drawLine): 19627 (WebCore::QPainter::setBrush): 19628 (QTextEdit::setSelectionRange): 19629 (WebCore::QPainter::drawText): 19630 (QScrollView::scrollPointRecursively): 19631 (QLineEdit::sizeForCharacterWidth): 19632 (WebCore::Cursor::~Cursor): 19633 (QFontMetrics::selectionRectForText): 19634 (WebCore::southResizeCursor): 19635 (QScrollView::suppressScrollBars): 19636 (QFontMetrics::checkSelectionPoint): 19637 (QTextEdit::getCursorPosition): 19638 (WebCore::moveCursor): 19639 (WebCore::FrameView::isFrameView): 19640 (QScrollBar::setSteps): 19641 (QLineEdit::setMaxLength): 19642 (QComboBox::baselinePosition): 19643 (QComboBox::appendItem): 19644 (WebCore::helpCursor): 19645 (QTextEdit::setWritingDirection): 19646 (WebCore::Widget::setDrawingAlpha): 19647 (QSlider::QSlider): 19648 (WebCore::southEastResizeCursor): 19649 (QScrollView::setVScrollBarMode): 19650 (WebCore::QPainter::drawScaledAndTiledImage): 19651 (QScrollView::scrollYOffset): 19652 (WebCore::QPainter::drawImage): 19653 (QComboBox::setCurrentItem): 19654 (QFontMetrics::height): 19655 (QComboBox::setWritingDirection): 19656 (QScrollView::setScrollBarsMode): 19657 (QComboBox::sizeHint): 19658 (WebCore::QPainter::drawRect): 19659 (QFont::setPixelSize): 19660 (QLineEdit::setSelection): 19661 (QLineEdit::setMaxResults): 19662 (QListBox::clear): 19663 (QLineEdit::edited): 19664 (WebCore::QPainter::drawTiledImage): 19665 (WebCore::QPainter::clearFocusRing): 19666 (WebCore::Widget::Widget): 19667 (QTextEdit::text): 19668 (WebCore::QPainter::drawImageInRect): 19669 (WebCore::Widget::disableFlushDrawing): 19670 (WebCore::QPainter::initFocusRing): 19671 (QSlider::setMinValue): 19672 (QTextEdit::setWordWrap): 19673 (WebCore::QPainter::drawLineForMisspelling): 19674 (QSlider::value): 19675 (QListBox::setSelectionMode): 19676 (QFontMetrics::lineSpacing): 19677 (QLineEdit::setEdited): 19678 (QComboBox::frameGeometry): 19679 (QListBox::setWritingDirection): 19680 (QLineEdit::setAlignment): 19681 (QScrollView::updateContents): 19682 (QFontMetrics::floatWidth): 19683 (QScrollView::setHScrollBarMode): 19684 19685 2006-02-23 Maciej Stachowiak <mjs (a] apple.com> 19686 19687 Reviewed by Eric. 19688 19689 - Move KURL from kwq to platform, make portable 19690 http://bugs.webkit.org/show_bug.cgi?id=7437 19691 19692 * WebCore.xcodeproj/project.pbxproj: 19693 * css/css_ruleimpl.cpp: 19694 * css/cssparser.cpp: 19695 * css/cssstyleselector.cpp: 19696 * dom/DocumentImpl.h: 19697 * khtml/html/html_baseimpl.cpp: 19698 * khtml/html/html_documentimpl.cpp: 19699 * khtml/html/html_headimpl.cpp: 19700 * khtml/xbl/xbl_binding.cpp: 19701 * ksvg2/svg/SVGDocumentImpl.cpp: 19702 * kwq/KWQTextCodec.cpp: 19703 (QTextCodec::codecForName): 19704 (QTextCodec::utf8Codec): 19705 (QTextCodec::codecForNameEightBitOnly): 19706 (QTextCodec::codecForLocale): 19707 (QTextCodec::name): 19708 (QTextCodec::makeDecoder): 19709 * kwq/KWQTextCodec.h: 19710 * loader/CachedObject.cpp: 19711 * loader/DocLoader.cpp: 19712 * page/Frame.h: 19713 * platform/KURL.cpp: Added. 19714 (KURL::decode_string): 19715 (encodeRelativeString): 19716 * platform/KURL.h: Added. 19717 * platform/mac/KURLMac.mm: Added. 19718 (KURL::getNSURL): 19719 * xml/xmlhttprequest.h: 19720 19721 2006-02-23 Darin Adler <darin (a] apple.com> 19722 19723 Reviewed by John Sullivan. 19724 19725 - moved QMouseEvent, QKeyEvent, QWheelEvent, and "Foundation extras" 19726 from kwq to platform directory 19727 - moved history function from kwq to bridge directory 19728 - eliminated QEvent, MousePressEvent, MouseDoubleClickEvent, MouseMoveEvent, 19729 MoveReleaseEvent, and DrawContents classes 19730 - merged NodeImpl::MouseEvent and the MouseEvent from khtml_events.h into 19731 a single class in the page directory 19732 - broke khtmllayout.h out into a file for the Length structure in the css 19733 directory and a file for the GapRects structure in the rendering directory 19734 - redid the Length structure to work more portably by not relying on bitfield 19735 layout and improve the names to no longer explicitly mention "width" 19736 - reduced use of QGuardedPtr and other uses of the QObject "destroyed" signal 19737 19738 * ForwardingHeaders/kparts: Removed. 19739 * ForwardingHeaders/qevent.h: Removed. 19740 * khtml/khtml_events.cpp: Removed. 19741 * khtml/khtml_events.h: Removed. 19742 * khtml/misc/khtmllayout.h: Removed. 19743 * kwq/KWQEvent.h: Removed. 19744 * kwq/KWQEvent.mm: Removed. 19745 * kwq/KWQFoundationExtras.h: Removed. 19746 * kwq/KWQKHistoryProvider.mm: Removed. 19747 * kwq/KWQKPartsHistoryProvider.h: Removed. 19748 19749 * bridge/History.h: Added. 19750 * bridge/mac/HistoryMac.mm: Added. 19751 * css/Length.h: Added. 19752 * page/MouseEventWithHitTestResults.h: Added. 19753 * platform/KeyEvent.h: Added. 19754 * platform/MouseEvent.h: Added. 19755 * platform/WheelEvent.h: Added. 19756 * platform/mac/FoundationExtras.h: Added. 19757 * platform/mac/KeyEventMac.mm: Added. 19758 * platform/mac/MouseEventMac.mm: Added. 19759 * platform/mac/WheelEventMac.mm: Added. 19760 * rendering/GapRects.h: Added. 19761 19762 * WebCore.xcodeproj/project.pbxproj: Updated for above changes. 19763 * WebCore.vcproj/WebCore/WebCore.vcproj: Updated for above changes. 19764 19765 * bridge/mac/MacFrame.h: Removed unused parameters from urlSelected functions. 19766 Replaced MouseEvent, MousePressEvent, MouseMoveEvent, and MouseReleaseEvent 19767 with MouseEventWithHitTestResults. 19768 * bridge/mac/MacFrame.mm: 19769 (WebCore::MacFrame::urlSelected): Removed unused parameters. 19770 (WebCore::MacFrame::wheelEvent): Changed to use WheelEvent. 19771 (WebCore::MacFrame::keyEvent): Changed to use KeyEvent. 19772 (WebCore::MacFrame::khtmlMousePressEvent): Changed parameter type. 19773 (WebCore::MacFrame::khtmlMouseMoveEvent): Ditto. 19774 (WebCore::MacFrame::khtmlMouseReleaseEvent): Ditto. 19775 (WebCore::MacFrame::passSubframeEventToSubframe): Ditto. 19776 (WebCore::MacFrame::mouseDown): Changed to use MouseEvent. 19777 (WebCore::MacFrame::mouseDragged): Ditto. 19778 (WebCore::MacFrame::mouseUp): Ditto. 19779 (WebCore::MacFrame::mouseMoved): Ditto. 19780 (WebCore::MacFrame::sendContextMenuEvent): Ditto. 19781 19782 * css/csshelper.h: Removed a bunch of unused declarations. 19783 19784 * dom/DocumentImpl.h: 19785 * dom/DocumentImpl.cpp: 19786 (WebCore::DocumentImpl::prepareMouseEvent): Changed to take a MouseEvent 19787 and return a MouseEventWithHitTestResults. 19788 (WebCore::DocumentImpl::defaultEventHandler): Changed to use KeyEvent. 19789 19790 * dom/NodeImpl.h: Removed NodeImpl::MouseEvent and NodeImpl::MouseEventType. 19791 * dom/NodeImpl.cpp: 19792 (WebCore::NodeImpl::dispatchMouseEvent): Changed to always get the type and 19793 detail values from the caller, never from the event. Changed to use MouseEvent. 19794 (WebCore::NodeImpl::dispatchKeyEvent): Changed to use KeyEvent. 19795 (WebCore::NodeImpl::dispatchWheelEvent): Changed to use WheelEvent. 19796 19797 * dom/dom2_eventsimpl.h: 19798 * dom/dom2_eventsimpl.cpp: 19799 (WebCore::KeyboardEventImpl::KeyboardEventImpl): Changed to use KeyEvent. 19800 (WebCore::KeyboardEventImpl::charCode): Ditto. 19801 19802 * dom/dom_elementimpl.h: Removed unused mouseEventHandler function. 19803 19804 * khtml/ecma/domparser.h: Use RefPtr instead of QGuardedPtr to hold the reference 19805 to the document. 19806 19807 * khtml/ecma/kjs_proxy.h: (WebCore::KJSProxyImpl::haveInterpreter): Added. For 19808 use in the Frame destructor so we can get an existing KJS::Window object without 19809 creating a new interpreter and window object. 19810 19811 * khtml/ecma/kjs_window.h: Merged WindowQObject into Window. Changed all the 19812 guarded pointers to Frame to use plain old pointers that are cleared by the 19813 Frame explicitly (by the function disconnectFrame). Made the pointers to all 19814 the sub-objects of KJS::Window be mutable so we don't have to const_cast in 19815 the functions to get (and lazily create) them. 19816 * khtml/ecma/kjs_window.cpp: 19817 (KJS::DOMWindowTimer::DOMWindowTimer): Use Window* instead of WindowQObject*. 19818 (KJS::History::disconnectFrame): Added. Clears m_frame. 19819 (KJS::FrameArray::disconnectFrame): Added. Clears m_frame. 19820 (KJS::Window::Window): Removed code to create a WindowQObject. 19821 (KJS::Window::~Window): Removed code to delete a WindowQObject. 19822 (KJS::Window::location): Remove now-unneeded const_cast. 19823 (KJS::Window::selection): Ditto. 19824 (KJS::Window::locationbar): Ditto. 19825 (KJS::Window::menubar): Ditto. 19826 (KJS::Window::personalbar): Ditto. 19827 (KJS::Window::statusbar): Ditto. 19828 (KJS::Window::toolbar): Ditto. 19829 (KJS::Window::scrollbars): Ditto. 19830 (KJS::Window::getValueProperty): Update since m_frame is now a raw pointer. 19831 (KJS::Window::getOwnPropertySlot): Ditto. 19832 (KJS::Window::toBoolean): Ditto. 19833 (KJS::Window::scheduleClose): Remove assert that WindowQObject* is not null. 19834 (KJS::Window::isSafeScript): Update since m_frame is now a raw pointer. 19835 (KJS::Window::clear): Remove code to delete a WindowQObject. Added a call 19836 to clearAllTimeouts instead. 19837 (KJS::Window::clearAllTimeouts): Added. Does equivalent of the WindowQObject 19838 destructor. 19839 (KJS::Window::installTimeout): Moved to Window from WindowQObject. 19840 (KJS::Window::pauseTimeouts): Ditto. 19841 (KJS::Window::resumeTimeouts): Ditto. 19842 (KJS::Window::clearTimeout): Ditto. 19843 (KJS::Window::timerFired): Ditto. 19844 (KJS::Window::disconnectFrame): Added. Sets all the frame pointers to 0. 19845 (KJS::FrameArray::getOwnPropertySlot): Update since m_frame is now a raw pointer. 19846 (KJS::Location::getOwnPropertySlot): Ditto. 19847 (KJS::Location::put): Ditto. 19848 (KJS::Selection::getOwnPropertySlot): Ditto. 19849 (KJS::BarInfo::getOwnPropertySlot): Ditto. 19850 19851 * khtml/html/html_baseimpl.h: Forward-declare Length instead of including khtmllayout.h. 19852 * khtml/html/html_imageimpl.h: Ditto. 19853 19854 * khtml/html/html_inlineimpl.cpp: (WebCore::HTMLAnchorElementImpl::defaultEventHandler): 19855 Changed to use KeyEvent and removed the code to extract the button and state from the 19856 DOM even to pass to urlSelected. 19857 * ksvg2/svg/SVGAElementImpl.cpp: (SVGAElementImpl::defaultEventHandler): Ditto. 19858 19859 * khtml/html/htmltokenizer.cpp: (WebCore::HTMLTokenizer::timerFired): Change to use 19860 a RefPtr instead of a QGuardedPtr. 19861 19862 * khtml/misc/helper.h: 19863 * khtml/misc/helper.cpp: Removed printpainter and setPrintPainter. 19864 19865 * ksvg2/svg/SVGDocumentImpl.h: 19866 * ksvg2/svg/SVGDocumentImpl.cpp: (WebCore::SVGDocumentImpl::dispatchKeyEvent): 19867 Change to use KeyEvent. 19868 19869 * kwq/KWQComboBox.mm: 19870 (-[KWQPopUpButton becomeFirstResponder]): 19871 (-[KWQPopUpButton resignFirstResponder]): 19872 * kwq/KWQFileButton.mm: 19873 (KWQFileButton::focusChanged): 19874 * kwq/KWQListBox.mm: 19875 (-[KWQTableView becomeFirstResponder]): 19876 (-[KWQTableView resignFirstResponder]): 19877 * kwq/KWQSlider.mm: 19878 (-[KWQSlider becomeFirstResponder]): 19879 (-[KWQSlider resignFirstResponder]): 19880 * kwq/KWQTextArea.mm: 19881 (-[KWQTextAreaTextView becomeFirstResponder]): 19882 (-[KWQTextAreaTextView resignFirstResponder]): 19883 * kwq/KWQTextField.mm: 19884 (-[KWQTextFieldController setHasFocus:]): 19885 Updated to use new eventFilterFocusIn/Out instead of the general purpose 19886 eventFilter function. This allows us to remove QEvent and the focus events. 19887 19888 * kwq/KWQNamespace.h: Removed ButtonState. 19889 19890 * kwq/KWQObject.h: 19891 * kwq/KWQObject.cpp: Replaced eventFilter function with eventFilterFocusIn and 19892 eventFilterFocusOut, allowing us to remove QEvent. Removed event function. 19893 19894 * kwq/KWQSlot.cpp: 19895 (KWQSlot::KWQSlot): Removed the parentDestroyed slot. 19896 (KWQSlot::call): Ditto. 19897 19898 * page/Frame.h: 19899 * page/Frame.cpp: 19900 (WebCore::UserStyleSheetLoader::UserStyleSheetLoader): Renamed from 19901 PartStyleSheetLoader. Removed a lot of unneeded null checks. Use a 19902 raw Frame pointer instead of a QGuardedPtr, and count on the Frame 19903 to delete us when it's being deleted. 19904 (WebCore::UserStyleSheetLoader::~UserStyleSheetLoader): No longer 19905 a virtual function. This is not a polymorphic class. 19906 (WebCore::UserStyleSheetLoader::setStyleSheet): Remove code to delete 19907 ourselves -- that's now the frame's responsibility. 19908 (WebCore::Frame::~Frame): Call disconnectFrame on the KJS::Window and 19909 delete m_userStyleSheetLoader. 19910 (WebCore::Frame::changeLocation): Update since urlSelected no longer takes 19911 button and state parameters. 19912 (WebCore::Frame::setUserStyleSheet): Delete existing loader to stop a load 19913 in progress before starting a new load. Store reference to loader. 19914 (WebCore::Frame::urlSelected): Remove button and state parameters and unused 19915 local variable hasTarget. 19916 (WebCore::Frame::selectClosestWordFromMouseEvent): Change from QMouseEvent 19917 to MouseEvent. 19918 (WebCore::Frame::handleMousePressEventDoubleClick): Change from MousePressEvent 19919 to MouseEventWithHitTestResults. 19920 (WebCore::Frame::handleMousePressEventTripleClick): Ditto. 19921 (WebCore::Frame::handleMousePressEventSingleClick): Ditto. 19922 (WebCore::Frame::khtmlMousePressEvent): Ditto. 19923 (WebCore::Frame::handleMouseMoveEventSelection): Change from MouseMoveEvent 19924 to MouseEventWithHitTestResults. 19925 (WebCore::Frame::khtmlMouseMoveEvent): Ditto. 19926 (WebCore::Frame::khtmlMouseReleaseEvent): Change from MouseReleaseEvent 19927 to MouseEventWithHitTestResults. 19928 (WebCore::Frame::khtmlMouseDoubleClickEvent): Change from 19929 MouseReleaseDoubleClickEvent to MouseEventWithHitTestResults. 19930 (WebCore::Frame::passWidgetMouseDownEventToWidget): Change from 19931 NodeImpl::MouseEvent to MouseEventWithHitTestResults. 19932 19933 * page/FramePrivate.h: Added m_userStyleSheetLoader. 19934 19935 * page/FrameView.h: 19936 * page/FrameView.cpp: 19937 (WebCore::FrameView::viewportMousePressEvent): Change from QMouseEvent to 19938 MouseEvent and from NodeImpl::MouseEvent to MouseEventWithHitTestResults. 19939 (WebCore::FrameView::viewportMouseDoubleClickEvent): Ditto. 19940 (WebCore::selectCursor): Ditto. 19941 (WebCore::FrameView::viewportMouseMoveEvent): Ditto. 19942 (WebCore::FrameView::viewportMouseReleaseEvent): Ditto. 19943 (WebCore::FrameView::keyPressEvent): Change from QKeyEvent to KeyEvent. 19944 (WebCore::FrameView::dispatchMouseEvent): Change from QMouseEvent to 19945 MouseEvent and from NodeImpl::MouseEvent to MouseEventWithHitTestResults. 19946 (WebCore::FrameView::viewportWheelEvent): Change from QWheelEvent to 19947 WheelEvent. 19948 (WebCore::FrameView::hoverTimerFired): Update for change to prepareMouseEvent 19949 parameters. 19950 19951 * platform/Widget.h: 19952 * platform/Widget.cpp: Removed event function. 19953 19954 * rendering/render_form.h: Removed LineEditWidget, ComboBoxWidget, TextAreaWidget. 19955 * rendering/render_form.cpp: 19956 (WebCore::RenderFormElement::slotClicked): Changed from QMouseEvent to MouseEvent. 19957 (WebCore::RenderFormElement::addIntrinsicMarginsIfAllowed): Updated for changes 19958 to the Length class. 19959 (WebCore::RenderSelect::setWidgetWritingDirection): Updated for removal of 19960 ComboBoxWidget. 19961 (WebCore::RenderSelect::slotSelected): Ditto. 19962 (WebCore::RenderSelect::createComboBox): Ditto. 19963 19964 * rendering/render_replaced.h: 19965 * rendering/render_replaced.cpp: 19966 (WebCore::RenderWidget::destroy): Updated since removeEventFilter no longer takes 19967 a parameter. 19968 (WebCore::RenderWidget::setQWidget): Ditto. 19969 (WebCore::RenderWidget::eventFilterFocusIn): Added. Replaces eventFilter. 19970 (WebCore::RenderWidget::eventFilterFocusOut): Ditto. 19971 19972 * css/css_computedstyle.cpp: 19973 (WebCore::valueForLength): 19974 (WebCore::CSSComputedStyleDeclarationImpl::getPropertyCSSValue): 19975 * css/cssstyleselector.cpp: 19976 (WebCore::checkPseudoState): 19977 (WebCore::CSSStyleSelector::applyProperty): 19978 (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize): 19979 * khtml/html/html_imageimpl.cpp: 19980 (WebCore::HTMLAreaElementImpl::getRegion): 19981 * rendering/RenderBlock.cpp: 19982 (WebCore::RenderBlock::MarginInfo::MarginInfo): 19983 (WebCore::RenderBlock::isSelfCollapsingBlock): 19984 (WebCore::RenderBlock::layoutBlock): 19985 (WebCore::RenderBlock::determineHorizontalPosition): 19986 (WebCore::RenderBlock::leftRelOffset): 19987 (WebCore::RenderBlock::rightRelOffset): 19988 (WebCore::RenderBlock::calcMinMaxWidth): 19989 (WebCore::getBPMWidth): 19990 (WebCore::RenderBlock::calcInlineMinMaxWidth): 19991 (WebCore::RenderBlock::calcBlockMinMaxWidth): 19992 * rendering/RenderTable.cpp: 19993 (WebCore::RenderTable::calcWidth): 19994 (WebCore::RenderTable::layout): 19995 * rendering/RenderTableCell.cpp: 19996 (WebCore::RenderTableCell::calcMinMaxWidth): 19997 * rendering/RenderTableSection.cpp: 19998 (WebCore::RenderTableSection::addChild): 19999 (WebCore::RenderTableSection::addCell): 20000 (WebCore::RenderTableSection::calcRowHeight): 20001 (WebCore::RenderTableSection::layoutRows): 20002 * rendering/RenderText.h: 20003 (khtml::RenderText::marginLeft): 20004 (khtml::RenderText::marginRight): 20005 * rendering/bidi.cpp: 20006 (khtml::getBPMWidth): 20007 * rendering/render_applet.cpp: 20008 (WebCore::RenderApplet::createWidgetIfNecessary): 20009 * rendering/render_box.cpp: 20010 (WebCore::RenderBox::paintBackgroundExtended): 20011 (WebCore::RenderBox::getClipRect): 20012 (WebCore::RenderBox::relativePositionOffset): 20013 (WebCore::RenderBox::calcWidth): 20014 (WebCore::RenderBox::calcWidthUsing): 20015 (WebCore::RenderBox::sizesToIntrinsicWidth): 20016 (WebCore::RenderBox::calcHorizontalMargins): 20017 (WebCore::RenderBox::calcHeight): 20018 (WebCore::RenderBox::calcHeightUsing): 20019 (WebCore::RenderBox::calcPercentageHeight): 20020 (WebCore::RenderBox::calcReplacedWidth): 20021 (WebCore::RenderBox::calcReplacedWidthUsing): 20022 (WebCore::RenderBox::calcReplacedHeight): 20023 (WebCore::RenderBox::calcReplacedHeightUsing): 20024 (WebCore::RenderBox::availableHeightUsing): 20025 (WebCore::RenderBox::calcVerticalMargins): 20026 (WebCore::RenderBox::calcAbsoluteHorizontal): 20027 (WebCore::RenderBox::calcAbsoluteHorizontalValues): 20028 (WebCore::RenderBox::calcAbsoluteVertical): 20029 (WebCore::RenderBox::calcAbsoluteVerticalValues): 20030 * rendering/render_br.cpp: 20031 (WebCore::RenderBR::lineHeight): 20032 * rendering/render_flexbox.cpp: 20033 (khtml::RenderFlexibleBox::calcHorizontalMinMaxWidth): 20034 (khtml::RenderFlexibleBox::calcVerticalMinMaxWidth): 20035 (khtml::RenderFlexibleBox::calcMinMaxWidth): 20036 (khtml::RenderFlexibleBox::allowedChildFlex): 20037 * rendering/render_flow.cpp: 20038 (WebCore::RenderFlow::lineHeight): 20039 * rendering/render_frames.cpp: 20040 (WebCore::RenderFrameSet::layout): 20041 * rendering/render_image.cpp: 20042 (WebCore::RenderImage::isWidthSpecified): 20043 (WebCore::RenderImage::isHeightSpecified): 20044 * rendering/render_layer.cpp: 20045 (WebCore::Marquee::direction): 20046 (WebCore::Marquee::start): 20047 (WebCore::Marquee::updateMarqueeStyle): 20048 (WebCore::Marquee::timerFired): 20049 * rendering/render_line.cpp: 20050 (WebCore::InlineFlowBox::marginLeft): 20051 (WebCore::InlineFlowBox::marginRight): 20052 * rendering/render_object.cpp: 20053 (WebCore::RenderObject::mustRepaintBackgroundOrBorder): 20054 (WebCore::RenderObject::paintBorderImage): 20055 (WebCore::RenderObject::paddingTop): 20056 (WebCore::RenderObject::paddingBottom): 20057 (WebCore::RenderObject::paddingLeft): 20058 (WebCore::RenderObject::paddingRight): 20059 (WebCore::RenderObject::getVerticalPosition): 20060 (WebCore::RenderObject::lineHeight): 20061 (WebCore::RenderObject::addDashboardRegions): 20062 * rendering/render_style.h: 20063 * rendering/render_theme_mac.mm: 20064 (WebCore::RenderThemeMac::addIntrinsicMargins): 20065 * rendering/table_layout.cpp: 20066 (WebCore::FixedTableLayout::calcWidthArray): 20067 (WebCore::FixedTableLayout::calcMinMaxWidth): 20068 (WebCore::FixedTableLayout::layout): 20069 (WebCore::AutoTableLayout::recalcColumn): 20070 (WebCore::AutoTableLayout::fullRecalc): 20071 (WebCore::AutoTableLayout::calcMinMaxWidth): 20072 (WebCore::AutoTableLayout::calcEffectiveWidth): 20073 (WebCore::AutoTableLayout::layout): 20074 (WebCore::AutoTableLayout::calcPercentages): 20075 Updated for changes to the Length class. 20076 Also removed a check of the printpainter global, never used in WebCore. 20077 20078 * bindings/objc/DOM.mm: 20079 * bindings/objc/DOMCSS.mm: 20080 * bindings/objc/DOMHTML.mm: 20081 * bridge/mac/WebCoreFrameBridge.mm: 20082 * css/csshelper.cpp: 20083 * editing/SelectionController.cpp: 20084 * khtml/ecma/kjs_html.h: 20085 * kwq/KWQAccObject.mm: 20086 * kwq/KWQAccObjectCache.mm: 20087 * kwq/KWQClipboard.mm: 20088 * kwq/KWQFont.mm: 20089 * kwq/KWQFontMetrics.mm: 20090 * kwq/KWQKJobClasses.mm: 20091 * kwq/KWQKURL.mm: 20092 * kwq/KWQLoader.mm: 20093 * kwq/KWQPageState.mm: 20094 * kwq/KWQPainter.mm: 20095 * kwq/WebCoreSettings.mm: 20096 * platform/StringImpl.cpp: 20097 * platform/mac/CursorMac.mm: 20098 * platform/mac/WidgetMac.mm: 20099 * rendering/RenderBlock.h: 20100 * rendering/render_canvas.cpp: 20101 * rendering/render_line.h: 20102 * rendering/render_style.cpp: 20103 * rendering/table_layout.h: 20104 Updated includes. 20105 20106 * bindings/js/JSDOMCore.cpp: Touched, because I got strange failures if this 20107 didn't rebuild. 20108 * bindings/js/JSDOMEvents.cpp: Ditto. 20109 20110 2006-02-23 Eric Seidel <eseidel (a] apple.com> 20111 20112 Reviewed by darin. 20113 20114 Fix linking of static constructed globals on win32. 20115 20116 * WebCore.vcproj/WebCore/WebCore.vcproj: 20117 * config.h: 20118 * dom/EventNames.cpp: 20119 (WebCore::EventNames::init): 20120 * dom/EventNames.h: 20121 * dom/dom_qname.cpp: 20122 (WebCore::QualifiedName::init): 20123 * dom/dom_qname.h: 20124 * khtml/html/htmlnames.cpp: 20125 (WebCore::HTMLNames::init): 20126 * khtml/html/htmlnames.h: 20127 * platform/AtomicString.cpp: 20128 (WebCore::AtomicString::init): 20129 * platform/StaticConstructors.h: Added. 20130 20131 2006-02-23 Vicki Murley <vicki (a] apple.com> 20132 20133 Reviewed by Tim Omernick. 20134 20135 - fix <rdar://problem/4394910> calling Javascript window.close() does not trigger onbeforeunload event 20136 20137 Check shouldClose() before actually scheduling a close. 20138 20139 shouldClose() checks for the onbeforeunload handler, displays the onbeforeunload dialog, and returns a 20140 result based on whether the user clicks "OK" or "Cancel". In cases where the window is closed with cmd-w 20141 or by clicking the red globe, shouldClose() is checked in the windowShouldClose delegate method. Since 20142 windowShouldClose isn't invoked when a window is closed with Javascript, it makes sense to add a check 20143 for shouldClose() in scheduleClose(), returning early when appropriate before the chain of events that 20144 closes a window even gets started. 20145 20146 * bridge/mac/MacFrame.mm: 20147 (WebCore::MacFrame::scheduleClose): add a check for shouldClose() 20148 20149 2006-02-23 Vicki Murley <vicki (a] apple.com> 20150 20151 Reviewed by Hyatt. 20152 20153 - fix <rdar://problem/4456004> onbeforeunload should cancel, and 20154 <rdar://problem/4453579> REGRESSION (TOT): onbeforeunload is broken (7421) 20155 20156 * bridge/mac/MacFrame.mm: 20157 (WebCore::MacFrame::shouldClose): Onbeforeunload is a non-bubbling window 20158 event, so we should be using handleWindowEvent rather than dispatching a 20159 generic event on the body. It seems this only worked before because of incorrect 20160 code in other parts of the tree. 20161 * dom/dom2_eventsimpl.cpp: 20162 (WebCore::BeforeUnloadEventImpl::BeforeUnloadEventImpl): for this constructor, 20163 pass true for the cancel parameter 20164 20165 2006-02-22 Eric Seidel <eseidel (a] apple.com> 20166 20167 Reviewed by darin. 20168 20169 Adding stub FrameWin class to expose link errors. 20170 20171 * WebCore.vcproj/WebCore/WebCore.vcproj: 20172 * bridge/win/FrameWin.cpp: Added. 20173 * bridge/win/FrameWin.h: Added. 20174 (WebCore::Win): 20175 20176 2006-02-22 Maciej Stachowiak <mjs (a] apple.com> 20177 20178 Reviewed by Geoff. 20179 20180 - move QStringList to platform, make it portable 20181 20182 * ForwardingHeaders/qstringlist.h: Removed. 20183 * WebCore.vcproj/WebCore/WebCore.vcproj: 20184 * WebCore.xcodeproj/project.pbxproj: 20185 * dom/DocumentImpl.h: 20186 * kcanvas/KCanvasFilters.h: 20187 * khtml/xbl/xbl_protohandler.cpp: 20188 * ksvg2/svg/SVGColorImpl.cpp: 20189 * ksvg2/svg/SVGComponentTransferFunctionElementImpl.cpp: 20190 * ksvg2/svg/SVGDOMImplementationImpl.h: 20191 * ksvg2/svg/SVGFEBlendElementImpl.cpp: 20192 * ksvg2/svg/SVGFEColorMatrixElementImpl.cpp: 20193 * ksvg2/svg/SVGFEComponentTransferElementImpl.cpp: 20194 * ksvg2/svg/SVGFECompositeElementImpl.cpp: 20195 * ksvg2/svg/SVGFEDiffuseLightingElementImpl.cpp: 20196 * ksvg2/svg/SVGFEDisplacementMapElementImpl.cpp: 20197 * ksvg2/svg/SVGFEFloodElementImpl.cpp: 20198 * ksvg2/svg/SVGFEGaussianBlurElementImpl.cpp: 20199 * ksvg2/svg/SVGFELightElementImpl.cpp: 20200 * ksvg2/svg/SVGFEMergeElementImpl.cpp: 20201 * ksvg2/svg/SVGFEOffsetElementImpl.cpp: 20202 * ksvg2/svg/SVGFESpecularLightingElementImpl.cpp: 20203 * ksvg2/svg/SVGFETileElementImpl.cpp: 20204 * ksvg2/svg/SVGFETurbulenceElementImpl.cpp: 20205 * ksvg2/svg/SVGFitToViewBoxImpl.cpp: 20206 * ksvg2/svg/SVGLengthListImpl.cpp: 20207 * ksvg2/svg/SVGNumberListImpl.cpp: 20208 * ksvg2/svg/SVGPreserveAspectRatioImpl.cpp: 20209 * ksvg2/svg/SVGStringListImpl.cpp: 20210 * ksvg2/svg/SVGStyledTransformableElementImpl.cpp: 20211 * ksvg2/svg/SVGTransformableImpl.cpp: 20212 * kwq/KWQClipboard.mm: 20213 * kwq/KWQKConfigBase.mm: 20214 * kwq/KWQKHTMLSettings.h: 20215 * kwq/KWQKLocale.h: 20216 * kwq/KWQKSSLKeyGen.h: 20217 * kwq/KWQStringList.h: Removed. 20218 * kwq/KWQStringList.mm: Removed. 20219 * loader/DocLoader.h: 20220 * page/Frame.h: 20221 * platform/QStringList.cpp: Added. 20222 (QStringList::split): 20223 (QStringList::pop_front): 20224 * platform/QStringList.h: Added. 20225 * platform/mac/QStringListMac.mm: Added. 20226 (QStringList::getNSArray): 20227 20228 2006-02-21 Adele Peterson <adele (a] apple.com> 20229 20230 Reviewed by Hyatt. 20231 20232 Tests: 20233 * fast/forms/input-baseline.html 20234 * fast/inline-block/contenteditable-baseline.html 20235 20236 - Fixed http://bugs.webkit.org/show_bug.cgi?id=7330 20237 baselinePosition is wrong for new text field when empty 20238 20239 * rendering/RenderBlock.cpp: (WebCore::RenderBlock::getBaselineOfLastLineBox): 20240 If we're dealing with an empty contenteditable block, then we've added height to the block to make room for the caret, 20241 and there are no children to give us the baseline. Instead, compute the baseline for the block itself, and factor in the border and the padding. 20242 20243 2006-02-21 Vicki Murley <vicki (a] apple.com> 20244 20245 Reviewed by Adele. 20246 20247 - fix http://bugs.webkit.org/show_bug.cgi?id=7363 20248 REGRESSION (r12872): Repro crash when clicking the Quick Reply box in Gmail 20249 20250 Add a nil check for the renderer, and refetch the renderer for the old focus node 20251 after dispatching the event. 20252 20253 * dom/DocumentImpl.cpp: 20254 (WebCore::DocumentImpl::setFocusNode): 20255 20256 2006-02-21 Maciej Stachowiak <mjs (a] apple.com> 20257 20258 Rubber Stamped by Hyatt. 20259 20260 - renamed STATIC, FIXED, RELATIVE, ABSOLUTE to StaticPosition, FixedPosition, etc 20261 20262 This avoids conflicting with win32 headers. 20263 20264 * css/css_computedstyle.cpp: 20265 (WebCore::CSSComputedStyleDeclarationImpl::getPropertyCSSValue): 20266 * css/cssstyleselector.cpp: 20267 (WebCore::CSSStyleSelector::adjustRenderStyle): 20268 (WebCore::CSSStyleSelector::applyProperty): 20269 * editing/htmlediting.cpp: 20270 (WebCore::isSpecialElement): 20271 * rendering/RenderBlock.cpp: 20272 (WebCore::RenderBlock::updateFirstLetter): 20273 * rendering/render_box.cpp: 20274 (WebCore::RenderBox::setStyle): 20275 (WebCore::RenderBox::absolutePosition): 20276 (WebCore::RenderBox::computeAbsoluteRepaintRect): 20277 * rendering/render_flow.cpp: 20278 (WebCore::RenderFlow::getAbsoluteRepaintRect): 20279 * rendering/render_layer.cpp: 20280 (WebCore::RenderLayer::convertToLayerCoords): 20281 (WebCore::RenderLayer::calculateClipRects): 20282 (WebCore::RenderLayer::calculateRects): 20283 * rendering/render_object.cpp: 20284 (WebCore::RenderObject::markContainingBlocksForLayout): 20285 (WebCore::RenderObject::containingBlock): 20286 (WebCore::RenderObject::setStyle): 20287 (WebCore::RenderObject::container): 20288 * rendering/render_style.cpp: 20289 (WebCore::RenderStyle::diff): 20290 * rendering/render_style.h: 20291 (khtml::): 20292 (khtml::RenderStyle::initialPosition): 20293 20294 2006-02-21 Maciej Stachowiak <mjs (a] apple.com> 20295 20296 Rubber Stamped by Hyatt. 20297 20298 - remove KWQSignalStubs.cpp from project. 20299 20300 * WebCore.vcproj/WebCore/WebCore.vcproj: 20301 20302 2006-02-21 Maciej Stachowiak <mjs (a] apple.com> 20303 20304 Platform build fix, not reviewed. 20305 20306 - undef min and max, and include <algorithm> so std::min works 20307 20308 * rendering/font.h: 20309 20310 2006-02-20 Maciej Stachowiak <mjs (a] apple.com> 20311 20312 Reviewed by Geoff and Darin. 20313 20314 Patch from Maks Orlovich, based on work by David Faure, hand-applied and 20315 significantly reworked by me. 20316 20317 - Patch: give internal function names (KJS merge) 20318 http://bugs.webkit.org/show_bug.cgi?id=6279 20319 20320 * khtml/ecma/kjs_binding.h: 20321 * khtml/ecma/kjs_html.cpp: 20322 (KJS::HTMLElementFunction::HTMLElementFunction): 20323 * kwq/WebCoreScriptDebugger.mm: 20324 (-[WebCoreScriptCallFrame functionName]): 20325 20326 2006-02-20 Darin Adler <darin (a] apple.com> 20327 20328 Reviewed by Eric. 20329 20330 - fix http://bugs.webkit.org/show_bug.cgi?id=7331 20331 CSS parser leaks when parsing incorrect CSS 20332 20333 * css/css_base.h: 20334 (WebCore::CSSSelector::append): Replaced recursive implementation 20335 with an iterative one. 20336 (WebCore::StyleBaseImpl::StyleBaseImpl): Changed to be a Shared, not 20337 a TreeShared; parents now ref children as needed. This change was 20338 vital to fix the storage leaks. Also removed unused multiLength bool. 20339 (WebCore::StyleBaseImpl::parent): Added. Needed now that there's no 20340 TreeShared base class. 20341 (WebCore::StyleBaseImpl::setParent): Ditto. 20342 (WebCore::StyleBaseImpl::insertedIntoParent): Added. Hook for 20343 notification when added to a parent -- used by import style rules. 20344 (WebCore::StyleListImpl::StyleListImpl): Changed to use a Vector instead 20345 of a QPtrList for children. Slower for dynamic insert and remove for the 20346 DOM API, faster and more efficient for everything else. 20347 * css/css_base.cpp: 20348 (WebCore::StyleListImpl::append): Now calls insertedIntoParent 20349 and uses Vector. 20350 (WebCore::StyleListImpl::insert): Added. Calls insertedIntoParent. 20351 (WebCore::StyleListImpl::remove): Added. 20352 20353 * css/css_grammar.y: Removed obsolete "don't inline" stuff. Changed all 20354 code that creates new objects to use new functions on CSSParser. For 20355 CSSSelector, ValueList, Function, and Value, this means using new 20356 functions with a "floating" concept, but for reference-counted classes 20357 this just means asking the CSSParser to create the object instead of 20358 calling new. Remove all explicit "delete", which is now handled by the 20359 parser instead, which works when the Bison-generated parser fails too, 20360 not just when it hits error rules in the grammar. 20361 20362 * css/css_ruleimpl.h: 20363 * css/css_ruleimpl.cpp: 20364 (WebCore::CSSImportRuleImpl::CSSImportRuleImpl): Remove call to init() 20365 which kicks off style sheet loading. We now do that when we are added to 20366 our parent instead of construction time. Also removed unused constructor. 20367 (WebCore::CSSImportRuleImpl::insertedIntoParent): Replaced init() with this 20368 function that does much the same thing at a different time. Changed code 20369 that sets m_loading to do it in a simple way that doesn't need a big comment. 20370 (WebCore::CSSMediaRuleImpl::insertRule): Use RefPtr. 20371 20372 * css/css_stylesheetimpl.cpp: 20373 (StyleSheetImpl::StyleSheetImpl): Pass 0 for parent explicitly since the 20374 empty constructor was removed in the other patch. 20375 (CSSStyleSheetImpl::CSSStyleSheetImpl): Remove code to set up m_lstChildren; 20376 that's now handled by the base class. 20377 (CSSStyleSheetImpl::insertRule): Use length() instead of m_listChildren->count() 20378 and insert instead of m_lstChildren->insert. Also use RefPtr for the result of 20379 parseRule. 20380 (CSSStyleSheetImpl::addRule): Use length() instead of m_lstChildren->count(). 20381 (CSSStyleSheetImpl::deleteRule): Use length() instead of checking the result of 20382 take() for 0. Use remove() instead of m_lstChildren->take(). 20383 (CSSStyleSheetImpl::parseString): Use setStrictParsing instead of going at the 20384 strictParsing data member directly. 20385 (CSSStyleSheetImpl::isLoading): Use length() and item() instead of 20386 m_lstChildren->first() and m_lstChildren->next(). 20387 20388 * css/css_valueimpl.h: Add an include of QPtrList now that it's not used in 20389 any included file. Also added a constructor for CSSValueImpl, now that StyleBaseImpl 20390 has no empty constructor. 20391 * css/css_valueimpl.cpp: 20392 (WebCore::CSSMutableStyleDeclarationImpl::setProperty): Use useStrictParsing() 20393 instead of looking at the strictParsing data member directly. 20394 (WebCore::CSSMutableStyleDeclarationImpl::parseDeclaration): Ditto. 20395 (WebCore::CSSMutableStyleDeclarationImpl::setLengthProperty): Ditto. 20396 (WebCore::CSSMutableStyleDeclarationImpl::setCssText): Ditto. 20397 20398 * css/cssparser.h: 20399 (WebCore::ValueList): Changed to use a Vector and an index rather 20400 than using a QPtrList. 20401 (WebCore::CSSParser): Changed parseRule to return a PassRefPtr, removed the 20402 createStyleDeclaration function since that's now handled by createStyleRule, 20403 made clearProperties be private, and added a suite of functions to create the 20404 objects formerly made with "new" in the Bison grammar. Also put the Units enum 20405 here in the header, and added an operator so they can be or'ed together while 20406 staying with the enum type so we can use Units instead of int for a function arg. 20407 * css/cssparser.cpp: 20408 (WebCore::ValueList::~ValueList): Changed to use Vector. 20409 (WebCore::CSSParser::CSSParser): Removed initializer for rule now that it's a RefPtr. 20410 (WebCore::CSSParser::~CSSParser): Added code to delete all the items in the sets that 20411 track floating objects. Also removed an unneeded check before callling clearProperties. 20412 (WebCore::CSSParser::parseSheet): Removed "delete rule" since rule is now a RefPtr. 20413 (WebCore::CSSParser::parseRule): Changed code to use rule.release() since rule is now 20414 a RefPtr and this function now returns a PassRefPtr. 20415 (WebCore::CSSParser::parseValue): Removed "delete rule" since rule is now a RefPtr. 20416 (WebCore::CSSParser::parseColor): Ditto. 20417 (WebCore::CSSParser::parseDeclaration): Ditto. 20418 (WebCore::CSSParser::validUnit): Made this a static class member instead of a local 20419 function so it can be used by the SVG parser code. Also updated to use the new ValueList 20420 class that uses Vector. 20421 (WebCore::CSSParser::parse4Values): Updated to new ValueList. 20422 (WebCore::CSSParser::parseContent): Ditto. 20423 (WebCore::skipCommaInDashboardRegion): Ditto. 20424 (WebCore::CSSParser::parseDashboardRegions): Ditto. 20425 (WebCore::CSSParser::parseShape): Ditto. 20426 (WebCore::CSSParser::parseColorFromValue): Ditto. 20427 (WebCore::BorderImageParseContext::commitBorderImage): Ditto. 20428 (WebCore::CSSParser::createFloatingSelector): Added. Puts selector into floating set. 20429 (WebCore::CSSParser::sinkFloatingSelector): Added. Removes from floating set. 20430 (WebCore::CSSParser::createFloatingValueList): Added. Puts list into floating set. 20431 (WebCore::CSSParser::sinkFloatingValueList): Added. Removes from floating set. 20432 (WebCore::CSSParser::createFloatingFunction): Added. Puts function into floating set. 20433 (WebCore::CSSParser::sinkFloatingFunction): Added. Removes from floating set. 20434 (WebCore::CSSParser::sinkFloatingValue): Added. Removes function from floating set if 20435 value contains a function pointer. 20436 (WebCore::CSSParser::createMediaList): Added. Puts list in a vector of RefPtrs kept 20437 by the parser, so the object won't end up floating. 20438 (WebCore::CSSParser::createImportRule): Ditto. 20439 (WebCore::CSSParser::createMediaRule): Ditto. 20440 (WebCore::CSSParser::createRuleList): Ditto. 20441 (WebCore::CSSParser::createStyleRule): Ditto. The properties come from the parser's 20442 global state instead of from a parameter. 20443 20444 * khtml/xsl/xsl_stylesheetimpl.h: 20445 * khtml/xsl/xsl_stylesheetimpl.cpp: 20446 (WebCore::XSLStyleSheetImpl::XSLStyleSheetImpl): Initialize the new m_stylesheetDocTaken 20447 bool to false. Also remove code to set up m_lstChildren since the base class takes care 20448 of that now. 20449 (WebCore::XSLStyleSheetImpl::~XSLStyleSheetImpl): Only call xmlFreeDoc if the document 20450 was not taken by libxslt. We used to leak XSLStyleSheetImpl objects, which is why we 20451 didn't notice this before; we'll try to double free without this change. 20452 (WebCore::XSLStyleSheetImpl::isLoading): Use length() and item() instead of 20453 m_lstChildren->first() and m_lstChildren->next(). 20454 (WebCore::XSLStyleSheetImpl::clearDocuments): Ditto. 20455 (WebCore::XSLStyleSheetImpl::parseString): Only call xmlFreeDoc if the document was not 20456 taken by libxslt. Also set m_stylesheetDocTaken for the new document. 20457 (WebCore::XSLStyleSheetImpl::loadChildSheet): Use RefPtr and append instead of 20458 m_lstChildren->append. 20459 (WebCore::XSLStyleSheetImpl::compileStyleSheet): Set m_stylesheetDocTaken to true if 20460 xsltParseStylesheetDoc is successful, since the stylesheet then owns the document. 20461 (WebCore::XSLStyleSheetImpl::locateStylesheetSubResource): Use length() and item() 20462 instead of m_lstChildren->first() and m_lstChildren->next(). 20463 (WebCore::XSLStyleSheetImpl::markAsProcessed): Set m_stylesheetDocTaken, since when 20464 this is called, the document is returned to libxslt which then attaches it to a 20465 stylesheet or parent document. 20466 20467 * ksvg2/css/KSVGCSSParser.cpp: Changed to compile as separate 20468 file instead of being included in cssparser.cpp. 20469 (WebCore::CSSParser::parseSVGPaint): Take out unnecessary check 20470 of number of args. Everything works fine without that check, and 20471 otherwise I'd have to change it for the change in data structure. 20472 (WebCore::CSSParser::parseSVGColor): Ditto. 20473 * WebCore.xcodeproj/project.pbxproj: Added KSVGCSSParser.cpp. 20474 20475 - fixed another leak found by run-webkit-leaks --leaks 20476 20477 * kwq/KWQLoader.mm: (KWQServeRequest): Delete the job if we can't do the I/O, because 20478 the caller is passing ownership to us. 20479 20480 - updated other code to use new Vector insert and remove 20481 20482 * khtml/html/HTMLFormElementImpl.cpp: 20483 (WebCore::removeFromVector): Changed to use Vector's remove. 20484 (WebCore::HTMLFormElementImpl::registerFormElement): Changed to use Vector's insert. 20485 20486 2006-02-20 Darin Adler <darin (a] apple.com> 20487 20488 Collaborated with Graham Dennis <Graham.Dennis (a] gmail.com> on this. 20489 20490 - fix http://bugs.webkit.org/show_bug.cgi?id=6831 20491 contentEditable outline darkens as caret moves 20492 20493 Test: editing/selection/move-by-character-6.html 20494 20495 The trick was to draw the focus ring clipped to a list of rectangles instead 20496 of clipped to exactly one. 20497 20498 * kwq/KWQPainter.h: Move Color parameter from initFocusRing to drawFocusRing. 20499 * kwq/KWQPainter.mm: 20500 (WebCore::QPainterPrivate::QPainterPrivate): Change focusRingPath from 20501 an NSBezierPath to a CGMutablePathRef. 20502 (WebCore::QPainterPrivate::~QPainterPrivate): Ditto. 20503 (WebCore::QPainter::initFocusRing): Removed color parameter, and made a 20504 CGPath instead of an NSBezierPath. 20505 (WebCore::QPainter::addFocusRingRect): CGPath instead of NSBezierPath. 20506 (WebCore::QPainter::drawFocusRing): Added color parameter, and changed to 20507 use new bridge method to draw the focus ring. 20508 (WebCore::QPainter::clearFocusRing): CGPath instead of NSBezierPath. 20509 20510 * kwq/WebCoreGraphicsBridge.h: 20511 * kwq/WebCoreGraphicsBridge.m: 20512 (-[WebCoreGraphicsBridge drawFocusRingWithPath:radius:color:]): 20513 Replaced setFocusRingStyle: method with this one. 20514 20515 * rendering/render_flow.cpp: (WebCore::RenderFlow::paintFocusRing): 20516 * rendering/render_object.cpp: (WebCore::RenderObject::paintOutline): 20517 Pass color to drawFocusRing instead of initFocusRing. 20518 20519 - fixed message on exit from the other patch I just landed 20520 20521 * platform/mac/CursorMac.mm: 20522 (WebCore::leakNamedCursor): Renamed and made this leak intentionally. 20523 20524 2006-02-20 Darin Adler <darin (a] apple.com> 20525 20526 Reviewed by Hyatt. 20527 20528 - moved Cursor into the platform directory from KWQ 20529 - removed a lot of other unneeded stuff from KWQ 20530 20531 * platform/Cursor.h: Added. 20532 * platform/mac/CursorMac.mm: Added. 20533 * platform/mac/CursorWin.cpp: Added. 20534 20535 * kwq/KWQBuffer.cpp: Removed. 20536 * kwq/KWQBuffer.h: Removed. 20537 * kwq/KWQCursor.h: Removed. 20538 * kwq/KWQCursor.mm: Removed. 20539 * kwq/KWQIODevice.h: Removed. 20540 * kwq/KWQKCursor.h: Removed. 20541 * kwq/KWQKCursor.mm: Removed. 20542 * kwq/KWQKDebug.h: Removed. 20543 * kwq/KWQSignalStubs.cpp: Removed. 20544 20545 * ForwardingHeaders/kcursor.h: Removed. 20546 * ForwardingHeaders/kdebug.h: Removed. 20547 * ForwardingHeaders/qbuffer.h: Removed. 20548 20549 * kwq/KWQEvent.h: Removed unused constants and types QCustomEvent, 20550 QFocusEvent, QHideEvent, QShowEvent, QContextMenuEvent, and QResizeEvent. 20551 20552 * kwq/KWQLoader.h: Removed KWQLoader class since signals are no longer needed. 20553 * kwq/KWQLoader.mm: Ditto. 20554 20555 * kwq/KWQNamespace.h: Removed DontClip, ShowPrefix, WordBreak, LayoutDirection, 20556 LeftToRight, RightToLeft, RasterOp, CopyROP, OrROP, and XorROP. 20557 20558 * kwq/KWQObject.h: Removed blockSignals, sender, _signalsBlocked, _sender, 20559 and KWQObjectSenderScope. 20560 * kwq/KWQObject.cpp: 20561 (QObject::QObject): Removed _signalsBlocked. 20562 (QObject::connect): Removed special-case signals to not complain about. 20563 All of them were either unused, converted to non-signal functions, or in one 20564 case (slotScrollBarMoved) turned into a FIXME. 20565 20566 * kwq/KWQPainter.h: Removed rasterOp and setRasterOp. 20567 * kwq/KWQPainter.mm: Ditto. 20568 20569 * kwq/KWQSignal.h: 20570 * kwq/KWQSignal.cpp: (KWQSignal::disconnect): Removed special cases for 20571 various signals; all are now using plain function calls instead. 20572 20573 * kwq/KWQSlot.h: 20574 * kwq/KWQSlot.cpp: Removed slots that are no longer needed because they 20575 are using plain function calls instead of signals. 20576 20577 * WebCore.vcproj/WebCore/WebCore.vcproj: 20578 * WebCore.xcodeproj/project.pbxproj: 20579 Updated for changed files. 20580 20581 * bridge/mac/FrameViewMac.mm: Moved the contents of KWQKHTMLView.cpp in here. 20582 * bridge/mac/KWQKHTMLView.cpp: Removed. 20583 20584 * bridge/mac/MacFrame.h: Removed signals, changed setStatusBarText to take 20585 String instead of QString. 20586 * bridge/mac/MacFrame.mm: 20587 (WebCore::MacFrame::MacFrame): Removed signals. 20588 (WebCore::MacFrame::setStatusBarText): Changed parameter type. 20589 (WebCore::MacFrame::openURLFromPageCache): Removed parameter from started function. 20590 (WebCore::MacFrame::khtmlMouseMoveEvent): Changed from QCursor() to pointerCursor(). 20591 20592 * dom/DocumentImpl.h: 20593 * dom/DocumentImpl.cpp: 20594 (WebCore::DocumentImpl::DocumentImpl): Removed signals. 20595 (WebCore::DocumentImpl::implicitOpen): Ditto. 20596 (WebCore::DocumentImpl::determineParseMode): Removed a use of kdDebug. 20597 (WebCore::DocumentImpl::finishedParsing): Added. Does a setParsing(false) and then 20598 calls finishedParsing on the frame. Replaces the old finishedParsing signal. 20599 20600 * dom/xml_tokenizer.h: 20601 * dom/xml_tokenizer.cpp: Removed the finishedParsing signal since it's not just 20602 a function on the document. 20603 (WebCore::XMLTokenizer::finish): Call the function instead of emitting the signal. 20604 20605 * khtml/html/htmlparser.h: 20606 * khtml/html/htmlparser.cpp: Moved the parser inside the WebCore namespace. 20607 20608 * khtml/html/htmltokenizer.h: 20609 * khtml/html/htmltokenizer.cpp: (WebCore::HTMLTokenizer::end): Updated 20610 to call finishedParsing function on document rather than emitting a signal. 20611 20612 * kwq/KWQComboBox.mm: 20613 (-[KWQPopUpButton becomeFirstResponder]): Use QEvent instead of QFocusEvent. 20614 (-[KWQPopUpButton resignFirstResponder]): Ditto. 20615 * kwq/KWQFileButton.mm: (KWQFileButton::focusChanged): Ditto. 20616 * kwq/KWQListBox.mm: 20617 (-[KWQTableView becomeFirstResponder]): Ditto. 20618 (-[KWQTableView resignFirstResponder]): Ditto. 20619 * kwq/KWQSlider.mm: 20620 (-[KWQSlider becomeFirstResponder]): Ditto. 20621 (-[KWQSlider resignFirstResponder]): Ditto. 20622 * kwq/KWQTextArea.mm: 20623 (-[KWQTextAreaTextView becomeFirstResponder]): Ditto. 20624 (-[KWQTextAreaTextView resignFirstResponder]): Ditto. 20625 * kwq/KWQTextField.mm: 20626 (-[KWQTextFieldController setHasFocus:]): Ditto. 20627 20628 * kwq/KWQTextStream.h: Removed the mode parameter from the QTextStream constructor. 20629 Removed the QTextIStream and QTextOStream classes. 20630 * kwq/KWQTextStream.cpp: (QTextStream::QTextStream): Removed the mode parameter. 20631 20632 * loader/CachedCSSStyleSheet.h: Changed to take a ByteArray instead of a QBuffer. 20633 * loader/CachedCSSStyleSheet.cpp: (WebCore::CachedCSSStyleSheet::data): Ditto. 20634 * loader/CachedImage.h: Ditto. 20635 * loader/CachedImage.cpp: (WebCore::CachedImage::data): Ditto. 20636 * loader/CachedObject.h: Ditto. 20637 * loader/CachedScript.h: Ditto. 20638 * loader/CachedScript.cpp: (WebCore::CachedScript::data): Ditto. 20639 * loader/CachedXBLDocument.h: Ditto. 20640 * loader/CachedXBLDocument.cpp: (WebCore::CachedXBLDocument::data): Ditto. 20641 * loader/CachedXSLStyleSheet.h: 20642 * loader/CachedXSLStyleSheet.cpp: (WebCore::CachedXSLStyleSheet::data): Ditto. 20643 20644 * loader/DocLoader.cpp: (WebCore::DocLoader::setLoadInProgress): Added a call 20645 to loadDone on the frame. Replaces the requestFailed and requestDone signals. 20646 20647 * loader/DocLoader.h: Removed include of <qbuffer.h>. 20648 20649 * loader/Request.h: 20650 * loader/Request.cpp: Updated to use ByteArray instead of QBuffer. 20651 20652 * loader/loader.h: Removed unused signals. 20653 * loader/loader.cpp: 20654 (WebCore::Loader::Loader): Removed use of KWQLoader. 20655 (WebCore::Loader::~Loader): Ditto. 20656 (WebCore::Loader::load): Removed code to emit unused requestStarted signal. 20657 (WebCore::Loader::slotFinished): Removed code to emit requestFailed and 20658 requestDone signals, now handled by DocLoader::setLoadInProgress(false). 20659 (WebCore::Loader::slotReceivedResponse): Use ByteArray instead of QBuffer. 20660 (WebCore::Loader::slotData): Ditto. 20661 20662 * page/Frame.h: Removed setURLCursor, urlCursor, slotRestoreData, slotIncZoom, 20663 slotDecZoom, slotLoadImages, slotPartRemoved, slotActiveFrameChanged, 20664 slotChildURLRequest, slotShowDocument, slotAutoScroll, slotPrintFrame, slotSelectAll, 20665 slotProgressUpdate, slotJobPercent, slotJobSpeed.connectChild, disconnectChild, 20666 and changed a number of others from slots to plain old functions. 20667 * page/Frame.cpp: 20668 (WebCore::Frame::Frame): Don't connect to loader signals. 20669 (WebCore::Frame::~Frame): Don't disconnect from loader signals. 20670 (WebCore::Frame::didOpenURL): Call started function instead of emitting 20671 started signal. Don't connect to speed and percent signals (which never 20672 existed in WebCore anyway). 20673 (WebCore::Frame::stopLoading): Call finishedParsing function instead of 20674 calling slotFinishedParsing. 20675 (WebCore::Frame::executeScript): Removed redundant checks and let 20676 submitFormAgain do the checking. 20677 (WebCore::Frame::clear): Removed code to disconnect from finishedParsing 20678 signal; we now use a function. Also removed loop that calls disconnectChild, 20679 becase again we use functions now instead of signals. 20680 (WebCore::Frame::setDocument): Remove code to disconnect and connect to the 20681 finishedParsing signal. 20682 (WebCore::Frame::begin): Remove code to connect to the finishedParsing signal. 20683 (WebCore::Frame::finishedParsing): Moved code that does setParsing(false) into 20684 the document class. Also renamed from slotFinishedParsing. 20685 (WebCore::Frame::loadDone): Renamed from slotLoaderRequestDone. 20686 (WebCore::Frame::checkCompleted): Changed to call the completed function instead 20687 of emitting one of the two completed signals. 20688 (WebCore::Frame::loadSubframe): Removed call to connectChild because we now use 20689 functions instead of signals. Also change the call to completed to pass false 20690 instead of true. 20691 (WebCore::Frame::submitFormAgain): Change function around so we are less likely 20692 to leak if something strange happens inside submitForm. 20693 (WebCore::Frame::submitForm): Remove code to connect signal. We now call 20694 submitFormAgain from inside the completed function. 20695 (WebCore::Frame::parentCompleted): Renamed from slotParentCompleted. No longer 20696 a slot, now called from completed. 20697 (WebCore::Frame::childCompleted): Renamed from slotChildCompleted. 20698 (WebCore::Frame::setJSStatusBarText): Removed "emit" from function call. Changed 20699 to use String instead of QString. 20700 (WebCore::Frame::setJSDefaultStatusBarText): Ditto. 20701 (WebCore::Frame::sendResizeEvent): Changed to send DOM event directly instead of 20702 creating a QResizeEvent to send along to the FrameView. 20703 (WebCore::Frame::scrollToAnchor): Changed to not pass a parameter to the started 20704 function, which no longer takes one. 20705 (WebCore::Frame::frameDetached): Removed code that calls disconnectChild, since 20706 we no longer use signals. 20707 (WebCore::Frame::completed): Added. Calls childCompleted, parentCompleted, and 20708 submitFormAgain. 20709 (WebCore::Frame::setStatusBarText): Added. 20710 (WebCore::Frame::started): Added. Sets the complete flag to false for the frame 20711 and all its ancestors, which is what slotChildStarted did recursively. 20712 20713 * page/FramePrivate.h: Removed m_activeFrame and changed m_kjsStatusBarText and 20714 m_kjsDefaultStatusBarText to String from QString. 20715 20716 * page/FrameView.h: Removed resizeEvent, focusInEvent, focusOutEvent, and 20717 slotPaletteChanged. Changed cleared from a signal to a private function and 20718 slotScrollBarMoved to a private function named scrollBarMoved. 20719 * page/FrameView.cpp: 20720 (WebCore::FrameView::FrameView): Removed connect call here that was connecting 20721 a signal that's nonexistent in WebCore; we'll want to rig it up later. 20722 (WebCore::FrameView::~FrameView): Added a call to setQWidget(0) here to replace 20723 something that was done with a signal before. 20724 (WebCore::FrameView::clear): Call cleared as a function rather than a signal. 20725 (WebCore::selectCursor): Changed to use Cursor instead of QCursor. 20726 (WebCore::FrameView::scrollBarMoved): Renamed this function, which is never called. 20727 Added a FIXME about calling it. 20728 (WebCore::FrameView::cleared): Added. Calls viewCleared on the owner part, which 20729 used to be done with a signal. 20730 20731 * platform/Widget.h: Changed to Cursor from QCursor. 20732 * platform/mac/WidgetMac.mm: (WebCore::Widget::setCursor): Ditto. 20733 20734 * rendering/render_frames.h: 20735 * rendering/render_frames.cpp: 20736 (WebCore::RenderFrameSet::userResize): Removed cursor-setting code here. We might 20737 want to use resize cursors for frames again, but it was mostly disabled anyway and 20738 it's not clear which cursors to use. 20739 (WebCore::RenderPart::setWidget): Removed code to connect to the cleared signal. 20740 Instead, FrameView takes care of it directly. 20741 (WebCore::RenderPart::viewCleared): Renamed from slotViewCleared. 20742 (WebCore::RenderFrame::viewCleared): Ditto. 20743 (WebCore::RenderPartObject::viewCleared): Ditto. 20744 20745 * rendering/render_image.cpp: 20746 (WebCore::RenderImage::imageChanged): Removed use of WordBreak, which doesn't exist 20747 in WebCore text rendering. 20748 (WebCore::RenderImage::paint): Ditto. 20749 20750 * rendering/render_list.cpp: (RenderListMarker::paint): Removed use of DontClip, which 20751 doesn't exist in WebCore text rendering. Also removed incorrect use of references to 20752 temporaries for the ". " and " ." strings. 20753 20754 * rendering/render_object.cpp: 20755 (WebCore::RenderObject::drawBorder): Removed call to setRasterOp since it is a no-op 20756 in WebCore's painter. Added a FIXME. 20757 (WebCore::RenderObject::information): Remove mode parameter to QTextStream. 20758 20759 * rendering/render_replaced.h: Removed slotWidgetDestructed, made setQWidget public, 20760 * rendering/render_replaced.cpp: 20761 (WebCore::RenderWidget::setQWidget): Removed code to connect slotWidgetDestructed to 20762 the destroyed signal. Instead FrameView calls setQWidget(0) on us. 20763 (WebCore::RenderWidget::eventFilter): Removed use of QFocusEvent::reason, which is 20764 never "popup" in WebCore. 20765 20766 * WebCore+SVG/kdom.h: 20767 * css/css_stylesheetimpl.cpp: 20768 * css/css_valueimpl.cpp: 20769 * css/cssparser.cpp: 20770 * kcanvas/KCanvasCreator.cpp: 20771 * kcanvas/KCanvasResources.cpp: 20772 * kcanvas/RenderPath.cpp: 20773 * khtml/ecma/xmlserializer.cpp: 20774 * khtml/html/html_baseimpl.cpp: 20775 * khtml/xsl/xsl_stylesheetimpl.cpp: 20776 * ksvg2/svg/SVGPathSegLinetoImpl.cpp: 20777 * ksvg2/svg/SVGStyledTransformableElementImpl.cpp: 20778 * ksvg2/svg/SVGTransformImpl.cpp: 20779 * platform/StringImpl.cpp: 20780 * rendering/RenderBlock.cpp: 20781 * rendering/render_box.cpp: 20782 * rendering/render_canvas.cpp: 20783 * rendering/render_flow.cpp: 20784 * rendering/render_form.cpp: 20785 * rendering/render_layer.cpp: 20786 * rendering/render_style.cpp: 20787 Removed includes of <kdebug.h>. 20788 20789 * css/css_base.cpp: (CSSSelector::selectorText): 20790 * khtml/ecma/kjs_binding.cpp: 20791 (KJS::ScriptInterpreter::wasRunByUserGesture): 20792 * khtml/ecma/kjs_css.cpp: 20793 (KJS::DOMCSSRule::putValueProperty): 20794 * khtml/ecma/kjs_dom.cpp: 20795 (KJS::DOMNode::getValueProperty): 20796 (KJS::DOMNode::putValueProperty): 20797 (KJS::DOMDocument::getValueProperty): 20798 * khtml/ecma/kjs_events.cpp: 20799 (KJS::DOMEvent::getValueProperty): 20800 (KJS::DOMUIEvent::getValueProperty): 20801 (KJS::DOMMouseEvent::getValueProperty): 20802 (KJS::DOMKeyboardEvent::getValueProperty): 20803 (KJS::Clipboard::getValueProperty): 20804 (KJS::Clipboard::putValueProperty): 20805 * khtml/ecma/kjs_html.cpp: 20806 (KJS::HTMLDocument::getValueProperty): 20807 (KJS::KJS::HTMLDocument::putValueProperty): 20808 (KJS::HTMLElement::anchorGetter): 20809 (KJS::HTMLElement::areaGetter): 20810 (KJS::KJS::HTMLElementFunction::callAsFunction): 20811 * khtml/ecma/kjs_navigator.cpp: 20812 (KJS::Navigator::getValueProperty): 20813 * khtml/ecma/kjs_traversal.cpp: 20814 (KJS::DOMNodeIterator::getValueProperty): 20815 (KJS::DOMTreeWalker::getValueProperty): 20816 * khtml/ecma/kjs_window.cpp: 20817 (KJS::Screen::getValueProperty): 20818 (KJS::Window::scheduleClose): 20819 (KJS::Window::isSafeScript): 20820 (KJS::Window::clear): 20821 (KJS::LocationFunc::callAsFunction): 20822 (KJS::History::getValueProperty): 20823 * ksvg2/svg/SVGAnimateColorElementImpl.cpp: 20824 (SVGAnimateColorElementImpl::handleTimerEvent): 20825 * ksvg2/svg/SVGAnimateElementImpl.cpp: 20826 (SVGAnimateElementImpl::handleTimerEvent): 20827 * ksvg2/svg/SVGAnimateTransformElementImpl.cpp: 20828 (SVGAnimateTransformElementImpl::handleTimerEvent): 20829 * ksvg2/svg/SVGAnimationElementImpl.cpp: 20830 (SVGAnimationElementImpl::parseMappedAttribute): 20831 * ksvg2/svg/SVGCursorElementImpl.cpp: 20832 * ksvg2/svg/SVGDocumentImpl.cpp: 20833 (WebCore::SVGDocumentImpl::finishedParsing): 20834 * ksvg2/svg/SVGLengthImpl.cpp: 20835 (SVGLengthImpl::updateValueInSpecifiedUnits): 20836 Removed use of kdWarning, kdDebug, etc. 20837 20838 2006-02-20 Maciej Stachowiak <mjs (a] apple.com> 20839 20840 Reviewed by Darin. 20841 20842 - port QString to win32 20843 20844 * WebCore.vcproj/WebCore/WebCore.vcproj: 20845 * platform/QString.cpp: 20846 (strncasecmp): 20847 (QString::mid): 20848 (freeHandle): 20849 20850 2006-02-20 Eric Seidel <eseidel (a] apple.com> 20851 20852 Reviewed by darin. 20853 20854 <rdar://problem/4449442> GMAIL: XMLHttpRequest does not correctly report "Interactive" state on receipt of load data 20855 Also cleaned up spacing a little. 20856 20857 No layout test possible (local loads are non incremental). 20858 20859 * xml/xmlhttprequest.cpp: 20860 (WebCore::XMLHttpRequest::changeState): 20861 (WebCore::XMLHttpRequest::slotData): 20862 20863 2006-02-20 Darin Adler <darin (a] apple.com> 20864 20865 Reviewed by Maciej. 20866 20867 - fix http://bugs.webkit.org/show_bug.cgi?id=7318 20868 REGRESSION: Timer bug causes gif animation and (html and JS) page forwarding to fail 20869 20870 Timers were stopping firing after a while. 20871 20872 My testing makes this look like a CFRunLoopTimer bug, and it would be nice to reproduce 20873 this with a standalone test and report it to the CF team, but in the mean time, change 20874 to create a new timer each time instead of reusing the existing timer. 20875 20876 * platform/mac/SharedTimerMac.cpp: 20877 (WebCore::setSharedTimerFiredFunction): Added an assertion. 20878 (WebCore::setSharedTimerFireTime): Destroy the existing timer and create a new one every time. 20879 Also create a non-repeating timer rather than a repeating timer. 20880 (WebCore::stopSharedTimer): Destroy the existing timer rather than setting its fire date 20881 far into the future. 20882 20883 2006-02-19 Darin Adler <darin (a] apple.com> 20884 20885 Reviewed by Maciej. 20886 20887 - cut out a little unneeded bridge code 20888 20889 * bridge/mac/WebCoreFrameBridge.h: Removed frame name from createWindowWithURL: method 20890 and changed it to return a page bridge. Also made createModalDialogWithURL: method 20891 return a page bridge. Removed the mainFrame and webView methods. 20892 * bridge/mac/WebCoreFrameBridge.mm: 20893 (-[WebCoreFrameBridge nextFrameWithWrap:]): Use page to get to main frame. 20894 (-[WebCoreFrameBridge setFrameNamespace:]): Ditto. 20895 (-[WebCoreFrameBridge frameNamespace]): Ditto. 20896 (-[WebCoreFrameBridge _shouldAllowAccessFrom:]): Ditto. 20897 (-[WebCoreFrameBridge _frameInAnyWindowNamed:sourceFrame:]): Ditto. 20898 (-[WebCoreFrameBridge findFrameNamed:]): Ditto. 20899 (-[WebCoreFrameBridge installInFrame:]): Ditto. 20900 20901 * bridge/mac/WebCorePageBridge.h: Added outerView method to replace webView method 20902 on the frame bridge. 20903 20904 * bridge/mac/BrowserExtensionMac.mm: (WebCore::BrowserExtensionMac::createNewWindow): 20905 Update to use a page bridge instead of frame bridge. 20906 20907 2006-02-19 Maciej Stachowiak <mjs (a] apple.com> 20908 20909 Rubber-stamped by Anders. 20910 20911 - renamed ERROR to LOG_ERROR because some operating systems define ERROR in a system header 20912 20913 * bridge/mac/MacFrame.mm: 20914 (WebCore::MacFrame::passMouseDownEventToWidget): 20915 * bridge/mac/WebCoreFrameBridge.mm: 20916 (aeDescFromJSValue): 20917 (-[WebCoreFrameBridge computePageRectsWithPrintWidthScaleFactor:printHeight:]): 20918 * css/css_computedstyle.cpp: 20919 (WebCore::CSSComputedStyleDeclarationImpl::getPropertyCSSValue): 20920 * editing/Selection.cpp: 20921 (WebCore::Selection::toRange): 20922 * kcanvas/device/quartz/KCanvasFilterQuartz.mm: 20923 (WebCore::KCanvasFEBlendQuartz::getCIFilter): 20924 (WebCore::KCanvasFEColorMatrixQuartz::getCIFilter): 20925 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm: 20926 (WebCore::KRenderingDeviceQuartz::createResource): 20927 * khtml/xsl/xslt_processorimpl.cpp: 20928 (DOM::parseErrorFunc): 20929 * kwq/KWQFontMetrics.mm: 20930 (QFontMetrics::ascent): 20931 (QFontMetrics::descent): 20932 (QFontMetrics::lineSpacing): 20933 (QFontMetrics::xHeight): 20934 (QFontMetrics::width): 20935 (QFontMetrics::floatWidth): 20936 (QFontMetrics::checkSelectionPoint): 20937 * kwq/KWQKConfigBase.mm: 20938 (KConfig::readEntry): 20939 (KConfig::readNumEntry): 20940 (KConfig::readUnsignedNumEntry): 20941 * kwq/KWQLineEdit.mm: 20942 (KWQNSTextAlignmentForAlignmentFlags): 20943 * kwq/KWQObject.cpp: 20944 (QObject::connect): 20945 * kwq/KWQPainter.mm: 20946 (WebCore::QPainter::restore): 20947 (WebCore::QPainter::drawFocusRing): 20948 * kwq/KWQRegExp.cpp: 20949 (QRegExp::KWQRegExpPrivate::compile): 20950 (QRegExp::match): 20951 * kwq/KWQSignal.cpp: 20952 (KWQSignal::connect): 20953 (KWQSignal::disconnect): 20954 * kwq/KWQSlot.cpp: 20955 (KWQSlot::KWQSlot): 20956 * kwq/KWQTextCodec.cpp: 20957 (KWQTextDecoder::createICUConverter): 20958 (KWQTextDecoder::convertUsingICU): 20959 * kwq/WebCoreTextRendererFactory.mm: 20960 (-[WebCoreTextRendererFactory fontWithFamilies:traits:size:]): 20961 (-[WebCoreTextRendererFactory isFontFixedPitch:]): 20962 (-[WebCoreTextRendererFactory rendererWithFont:]): 20963 * page/Frame.cpp: 20964 (WebCore::Frame::paint): 20965 20966 2006-02-17 Maciej Stachowiak <mjs (a] apple.com> 20967 20968 Reviewed by Dave Hyatt. 20969 20970 - fix win32 build 20971 20972 * css/css_grammar.y: 20973 * khtml/html/html_objectimpl.cpp: #ifdef out all bindings code 20974 (WebCore::HTMLAppletElementImpl::~HTMLAppletElementImpl): 20975 (WebCore::HTMLAppletElementImpl::detach): 20976 (WebCore::HTMLEmbedElementImpl::~HTMLEmbedElementImpl): 20977 (WebCore::HTMLEmbedElementImpl::detach): 20978 (WebCore::HTMLObjectElementImpl::~HTMLObjectElementImpl): 20979 (WebCore::HTMLObjectElementImpl::detach): 20980 * khtml/html/html_objectimpl.h: 20981 20982 2006-02-18 Alexander Kellett <lypanov (a] kde.org> 20983 20984 Reviewed by Maciej. 20985 20986 - Fix http://bugs.webkit.org/show_bug.cgi?id=7199. 20987 20988 Testcase: 20989 svg/custom/text-gradient-no-content.svg 20990 20991 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm: 20992 (WebCore::KRenderingPaintServerGradientQuartz::teardown): 20993 20994 2006-02-18 David Harrison <harrison (a] apple.com> 20995 20996 Reviewed by John. 20997 20998 <rdar://problem/4448212> _accessibilityTableCell please remove this. 20999 21000 Remove override of a defamed AX method. 21001 21002 * kwq/KWQListBox.mm: 21003 Dump _accessibilityTableCell. 21004 21005 2006-02-17 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 21006 21007 Test: fast/css/ex-after-font-variant.html 21008 21009 Reviewed by Darin. 21010 21011 - fix http://bugs.webkit.org/show_bug.cgi?id=4227 21012 The ex unit doesn't work for font-variant: small-caps 21013 21014 * css/cssstyleselector.cpp: 21015 (WebCore::CSSStyleSelector::applyDeclarations): Added CSS_PROP_FONT_VARIANT to the properties 21016 that need to be applied first, since it dirties the font. 21017 21018 2006-02-17 Adele Peterson <adele (a] apple.com> 21019 21020 Reviewed by Beth. 21021 21022 Adding isEdited/setEdited hooks so onChange will fire for the new text fields. 21023 21024 * rendering/RenderTextField.cpp: 21025 (WebCore::m_dirty): 21026 (WebCore::RenderTextField::updateFromElement): setEdited to false when value attribute has changed. 21027 (WebCore::RenderTextField::subtreeHasChanged): setEdited to true when anonymous editable div has changed. 21028 * rendering/RenderTextField.h: 21029 (WebCore::RenderTextField::isEdited): 21030 (WebCore::RenderTextField::setEdited): 21031 (WebCore::RenderTextField::isTextField): 21032 21033 2006-02-17 Vicki Murley <vicki (a] apple.com> 21034 21035 Reviewed by Justin. 21036 21037 Get rid of handleFocusOut on text fields and textareas - move this functionality to the place 21038 where we resign focus on the previous node in setFocusNode. Add isTextField on RenderObject 21039 as one way to distinguish from contenteditable elements - Win IE does not fire onChange for 21040 contenteditable elements, so we won't either. Also, expose the dirty bit variables previously 21041 checked in handleFocusOut methods in isEdited() and setEdited(). 21042 21043 Fixes the following bugs: 21044 <rdar://problem/4315673> REGRESSION (1.2.2 - 1.3): onChange and onFocus events firing order differs for mouse click and tab (7227) 21045 <rdar://problem/4447009> for text fields, onChange should fire before onBlur to match Win IE 21046 21047 Test case is on the way. 21048 21049 * dom/DocumentImpl.cpp: 21050 (WebCore::DocumentImpl::setFocusNode): For textareas and text fields, fire a change event 21051 on the node that is resigning focus. Make sure the blur event fires after the change event - 4447009. 21052 * rendering/render_form.cpp: 21053 (WebCore::RenderLineEdit::slotReturnPressed): Replace call to handleFocusOut with equivalent code. 21054 (WebCore::RenderLineEdit::isEdited): Added. 21055 (WebCore::RenderLineEdit::setEdited): Added. 21056 (WebCore::RenderTextArea::setEdited): Added. 21057 * rendering/render_form.h: 21058 (WebCore::RenderLineEdit::isTextField): Added. 21059 (WebCore::RenderTextArea::isTextArea): Make this non-virtual. 21060 (WebCore::RenderTextArea::isEdited): Added. 21061 * rendering/render_object.h: 21062 (WebCore::RenderObject::isEdited): Added. 21063 (WebCore::RenderObject::setEdited): Added. 21064 (WebCore::RenderObject::isTextField): Added. 21065 * rendering/render_replaced.h: Remove handleFocusOut(). 21066 * rendering/render_replaced.cpp: Ditto. 21067 (WebCore::RenderWidget::eventFilter): Remove call to handleFocusOut(). Safe to do here, 21068 since we call setFocusNode immediately beforehand. 21069 21070 2006-02-17 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 21071 21072 Test: fast/parser/nofoo-tags-inside-paragraph.html 21073 21074 Reviewed by Anders Carlsson. 21075 21076 - fix http://bugs.webkit.org/show_bug.cgi?id=7265 21077 REGRESSION: noscript, noframes, nolayer, noembed tags insert break inside paragraph tag 21078 21079 * khtml/html/htmlparser.cpp: 21080 (HTMLParser::isInline): Treat noframes, nolayer, noembed and skipped noscript 21081 as inline elements. 21082 21083 2006-02-17 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 21084 21085 Reviewed by Hyatt. 21086 21087 - fix http://bugs.webkit.org/show_bug.cgi?id=7235 21088 Pure CSS Tooltips method renders wrong and creates artifacts 21089 21090 * manual-tests/bugzilla-7235.html: Added. 21091 * rendering/render_box.cpp: 21092 (WebCore::RenderBox::absolutePosition): Copied in here the logic for positioning 21093 relative to a relpositioned inline from RenderLayer::updateLayerPosition. 21094 (WebCore::RenderBox::computeAbsoluteRepaintRect): Ditto. 21095 21096 2006-02-17 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 21097 21098 Test: fast/css/universal-hover-quirk.html 21099 21100 Reviewed by Maciej. 21101 21102 - fix http://bugs.webkit.org/show_bug.cgi?id=7218 21103 Text underlined on mouse over 21104 21105 * css/cssstyleselector.cpp: 21106 (WebCore::CSSStyleSelector::checkOneSelector): Prevent *:hover and *:active 21107 from matching anything in quirks mode. 21108 21109 2006-02-17 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 21110 21111 Test: fast/text/whitespace/pre-wrap-spaces-after-newline.html 21112 21113 Reviewed by Dave Hyatt. 21114 21115 - fix http://bugs.webkit.org/show_bug.cgi?id=7216 21116 white-space: pre-wrap collapses leading whitespace following a newline 21117 21118 * rendering/bidi.cpp: 21119 (khtml::RenderBlock::bidiReorderLine): Use previousLineBrokeCleanly instead of 21120 resetBidiAtEnd now that the former is always correct. 21121 (khtml::RenderBlock::layoutInlineChildren): Use new skipTrailingNewline flag. 21122 (khtml::RenderBlock::findNextLineBreak): Set previousLineBrokeCleanly for line breaks 21123 caused by newlines as well. Added skipTrailingNewline flag. 21124 21125 2006-02-16 Tim Omernick <timo (a] apple.com> 21126 21127 Reviewed by Adele. 21128 21129 <rdar://problem/4193286> enabledPlugin returns a non-NULL object even when plugins are 21130 disabled (4140) 21131 21132 * khtml/ecma/kjs_navigator.cpp: 21133 (KJS::MimeType::getValueProperty): 21134 Only return a Plugin object for the "enabledPlugin" property if plugins are enabled. This 21135 matches what other browsers do. 21136 21137 2006-02-16 Darin Adler <darin (a] apple.com> 21138 21139 Reviewed by Eric and Justin. 21140 21141 - fix http://bugs.webkit.org/show_bug.cgi?id=7310 21142 fix leaks by using RefPtr more 21143 21144 * bindings/objc/DOM.mm: 21145 (-[DOMDocument adoptNode:]): 21146 (-[DOMDocument createElement:]): 21147 (-[DOMDocument createDocumentFragment]): 21148 (-[DOMDocument createTextNode:]): 21149 (-[DOMDocument createComment:]): 21150 (-[DOMDocument createCDATASection:]): 21151 (-[DOMDocument createProcessingInstruction::]): 21152 (-[DOMDocument createEntityReference:]): 21153 (-[DOMDocument importNode::]): 21154 (-[DOMDocument createElementNS::]): 21155 (-[DOMDocument createRange]): 21156 (-[DOMDocument createCSSStyleDeclaration]): 21157 (-[DOMDocument createNodeIterator::::]): 21158 (-[DOMDocument createTreeWalker::::]): 21159 * bindings/objc/DOMCSS.mm: 21160 (-[DOMCSSStyleDeclaration getPropertyCSSValue:]): 21161 * bindings/objc/DOMEvents.mm: 21162 (-[DOMDocument createEvent:]): 21163 * bridge/mac/MacFrame.h: 21164 * bridge/mac/MacFrame.mm: 21165 (WebCore::MacFrame::MacFrame): 21166 (WebCore::MacFrame::freeClipboard): 21167 (WebCore::MacFrame::setView): 21168 (WebCore::MacFrame::wheelEvent): 21169 (WebCore::MacFrame::openURLFromPageCache): 21170 (WebCore::MacFrame::mouseDownViewIfStillGood): 21171 (WebCore::MacFrame::khtmlMouseMoveEvent): 21172 (WebCore::MacFrame::dispatchCPPEvent): 21173 (WebCore::MacFrame::mouseDown): 21174 (WebCore::MacFrame::mouseDragged): 21175 (WebCore::MacFrame::mouseUp): 21176 (WebCore::MacFrame::mouseMoved): 21177 (WebCore::MacFrame::sendContextMenuEvent): 21178 (WebCore::MacFrame::dispatchDragSrcEvent): 21179 * bridge/mac/WebCoreFrameBridge.mm: 21180 (-[WebCoreFrameBridge convertToDOMRange:]): 21181 (-[WebCoreFrameBridge convertNSRangeToDOMRange:]): 21182 (-[WebCoreFrameBridge selectNSRange:]): 21183 (-[WebCoreFrameBridge smartDeleteRangeForProposedRange:]): 21184 (-[WebCoreFrameBridge typingStyle]): 21185 (-[WebCoreFrameBridge dragOperationForDraggingInfo:]): 21186 (-[WebCoreFrameBridge dragExitedWithDraggingInfo:]): 21187 (-[WebCoreFrameBridge concludeDragForDraggingInfo:]): 21188 * css/css_computedstyle.cpp: 21189 (WebCore::CSSComputedStyleDeclarationImpl::CSSComputedStyleDeclarationImpl): 21190 (WebCore::CSSComputedStyleDeclarationImpl::cssText): 21191 (WebCore::CSSComputedStyleDeclarationImpl::setCssText): 21192 (WebCore::CSSComputedStyleDeclarationImpl::getPropertyCSSValue): 21193 (WebCore::CSSComputedStyleDeclarationImpl::getPropertyValue): 21194 (WebCore::CSSComputedStyleDeclarationImpl::removeProperty): 21195 (WebCore::CSSComputedStyleDeclarationImpl::setProperty): 21196 (WebCore::CSSComputedStyleDeclarationImpl::item): 21197 (WebCore::CSSComputedStyleDeclarationImpl::copyInheritableProperties): 21198 (WebCore::CSSComputedStyleDeclarationImpl::copy): 21199 (WebCore::CSSComputedStyleDeclarationImpl::makeMutable): 21200 * css/css_computedstyle.h: 21201 * css/css_grammar.y: 21202 * css/css_ruleimpl.cpp: 21203 (WebCore::CSSStyleRuleImpl::~CSSStyleRuleImpl): 21204 (WebCore::CSSStyleRuleImpl::setDeclaration): 21205 * css/css_ruleimpl.h: 21206 (DOM::CSSStyleRuleImpl::style): 21207 (DOM::CSSStyleRuleImpl::declaration): 21208 * css/css_valueimpl.cpp: 21209 (WebCore::propertyID): 21210 (WebCore::quoteStringIfNeeded): 21211 (WebCore::CSSStyleDeclarationImpl::getPropertyCSSValue): 21212 (WebCore::CSSStyleDeclarationImpl::getPropertyValue): 21213 (WebCore::CSSStyleDeclarationImpl::getPropertyPriority): 21214 (WebCore::CSSStyleDeclarationImpl::getPropertyShorthand): 21215 (WebCore::CSSStyleDeclarationImpl::isPropertyImplicit): 21216 (WebCore::CSSStyleDeclarationImpl::setProperty): 21217 (WebCore::CSSStyleDeclarationImpl::removeProperty): 21218 (WebCore::CSSStyleDeclarationImpl::isPropertyName): 21219 (WebCore::CSSMutableStyleDeclarationImpl::getPropertyValue): 21220 (WebCore::CSSMutableStyleDeclarationImpl::get4Values): 21221 (WebCore::CSSMutableStyleDeclarationImpl::getShortHandValue): 21222 (WebCore::CSSMutableStyleDeclarationImpl::getPropertyCSSValue): 21223 (WebCore::CSSMutableStyleDeclarationImpl::removeProperty): 21224 (WebCore::CSSMutableStyleDeclarationImpl::setProperty): 21225 (WebCore::CSSMutableStyleDeclarationImpl::setStringProperty): 21226 (WebCore::CSSMutableStyleDeclarationImpl::setImageProperty): 21227 (WebCore::CSSMutableStyleDeclarationImpl::parseDeclaration): 21228 (WebCore::CSSMutableStyleDeclarationImpl::setLengthProperty): 21229 (WebCore::CSSMutableStyleDeclarationImpl::item): 21230 (WebCore::CSSMutableStyleDeclarationImpl::cssText): 21231 (WebCore::CSSMutableStyleDeclarationImpl::setCssText): 21232 (WebCore::CSSMutableStyleDeclarationImpl::copyBlockProperties): 21233 (WebCore::CSSStyleDeclarationImpl::copyPropertiesInSet): 21234 (WebCore::CSSMutableStyleDeclarationImpl::removePropertiesInSet): 21235 (WebCore::CSSMutableStyleDeclarationImpl::makeMutable): 21236 (WebCore::CSSMutableStyleDeclarationImpl::copy): 21237 (WebCore::CSSInheritedValueImpl::cssText): 21238 (WebCore::CSSInitialValueImpl::cssText): 21239 (WebCore::CSSValueListImpl::append): 21240 (WebCore::CSSValueListImpl::cssText): 21241 (WebCore::CSSPrimitiveValueImpl::CSSPrimitiveValueImpl): 21242 (WebCore::CSSPrimitiveValueImpl::cleanup): 21243 (WebCore::CSSPrimitiveValueImpl::setStringValue): 21244 (WebCore::CSSPrimitiveValueImpl::getStringValue): 21245 (WebCore::CSSPrimitiveValueImpl::parseString): 21246 (WebCore::CSSPrimitiveValueImpl::cssText): 21247 (WebCore::CSSImageValueImpl::CSSImageValueImpl): 21248 (WebCore::CSSBorderImageValueImpl::CSSBorderImageValueImpl): 21249 (WebCore::CSSBorderImageValueImpl::cssText): 21250 (WebCore::FontFamilyValueImpl::FontFamilyValueImpl): 21251 (WebCore::FontFamilyValueImpl::cssText): 21252 (WebCore::FontValueImpl::cssText): 21253 (WebCore::ShadowValueImpl::ShadowValueImpl): 21254 (WebCore::ShadowValueImpl::cssText): 21255 (WebCore::CSSProperty::cssText): 21256 * css/css_valueimpl.h: 21257 (WebCore::CSSValueImpl::setCssText): 21258 (WebCore::CSSValueListImpl::item): 21259 (WebCore::CSSPrimitiveValueImpl::getFloatValue): 21260 (WebCore::CSSPrimitiveValueImpl::getCounterValue): 21261 (WebCore::CSSPrimitiveValueImpl::getRectValue): 21262 (WebCore::CSSPrimitiveValueImpl::getRGBColorValue): 21263 (WebCore::CSSPrimitiveValueImpl::getPairValue): 21264 (WebCore::CSSPrimitiveValueImpl::getDashboardRegionValue): 21265 (WebCore::CSSPrimitiveValueImpl::): 21266 (WebCore::CSSQuirkPrimitiveValueImpl::CSSQuirkPrimitiveValueImpl): 21267 (WebCore::CounterImpl::identifier): 21268 (WebCore::CounterImpl::listStyle): 21269 (WebCore::CounterImpl::separator): 21270 (WebCore::RectImpl::top): 21271 (WebCore::RectImpl::right): 21272 (WebCore::RectImpl::bottom): 21273 (WebCore::RectImpl::left): 21274 (WebCore::RectImpl::setTop): 21275 (WebCore::RectImpl::setRight): 21276 (WebCore::RectImpl::setBottom): 21277 (WebCore::RectImpl::setLeft): 21278 (WebCore::PairImpl::first): 21279 (WebCore::PairImpl::second): 21280 (WebCore::PairImpl::setFirst): 21281 (WebCore::PairImpl::setSecond): 21282 (WebCore::DashboardRegionImpl::DashboardRegionImpl): 21283 (WebCore::FontFamilyValueImpl::fontName): 21284 (WebCore::CSSProperty::CSSProperty): 21285 (WebCore::CSSProperty::value): 21286 (WebCore::CSSMutableStyleDeclarationImpl::setNode): 21287 (WebCore::CSSMutableStyleDeclarationImpl::setProperty): 21288 (WebCore::CSSMutableStyleDeclarationImpl::removeProperty): 21289 * css/cssparser.cpp: 21290 (CSSParser::createStyleDeclaration): 21291 (CSSParser::parseDashboardRegions): 21292 * css/cssparser.h: 21293 (WebCore::Value::): 21294 (WebCore::qString): 21295 (WebCore::domString): 21296 (WebCore::atomicString): 21297 (WebCore::ValueList::current): 21298 (WebCore::ValueList::next): 21299 (WebCore::CSSParser::current): 21300 * css/cssstyleselector.cpp: 21301 (WebCore::CSSStyleSelector::applyProperty): 21302 * dom/DOMImplementationImpl.cpp: 21303 (DOM::DOMImplementationImpl::createDocument): 21304 (DOM::DOMImplementationImpl::instance): 21305 * dom/DOMImplementationImpl.h: 21306 * dom/DocumentImpl.cpp: 21307 (WebCore::DocumentImpl::DocumentImpl): 21308 (WebCore::DocumentImpl::~DocumentImpl): 21309 (WebCore::DocumentImpl::setDocType): 21310 (WebCore::DocumentImpl::createElement): 21311 (WebCore::DocumentImpl::createDocumentFragment): 21312 (WebCore::DocumentImpl::createTextNode): 21313 (WebCore::DocumentImpl::createComment): 21314 (WebCore::DocumentImpl::createCDATASection): 21315 (WebCore::DocumentImpl::createProcessingInstruction): 21316 (WebCore::DocumentImpl::createEntityReference): 21317 (WebCore::DocumentImpl::createEditingTextNode): 21318 (WebCore::DocumentImpl::createCSSStyleDeclaration): 21319 (WebCore::DocumentImpl::importNode): 21320 (WebCore::DocumentImpl::adoptNode): 21321 (WebCore::DocumentImpl::createElementNS): 21322 (WebCore::DocumentImpl::setTitle): 21323 (WebCore::DocumentImpl::createRange): 21324 (WebCore::DocumentImpl::createNodeIterator): 21325 (WebCore::DocumentImpl::createTreeWalker): 21326 (WebCore::DocumentImpl::setStyleSheet): 21327 (WebCore::DocumentImpl::setHoverNode): 21328 (WebCore::DocumentImpl::setActiveNode): 21329 (WebCore::DocumentImpl::setFocusNode): 21330 (WebCore::DocumentImpl::defaultView): 21331 (WebCore::DocumentImpl::createEvent): 21332 (WebCore::DocumentImpl::setHTMLWindowEventListener): 21333 (WebCore::DocumentImpl::addWindowEventListener): 21334 (WebCore::DocumentImpl::createHTMLEventListener): 21335 (WebCore::DocumentImpl::images): 21336 (WebCore::DocumentImpl::applets): 21337 (WebCore::DocumentImpl::embeds): 21338 (WebCore::DocumentImpl::objects): 21339 (WebCore::DocumentImpl::links): 21340 (WebCore::DocumentImpl::forms): 21341 (WebCore::DocumentImpl::anchors): 21342 (WebCore::DocumentImpl::all): 21343 (WebCore::DocumentImpl::windowNamedItems): 21344 (WebCore::DocumentImpl::documentNamedItems): 21345 (WebCore::DocumentImpl::getElementsByName): 21346 * dom/DocumentImpl.h: 21347 (WebCore::DocumentImpl::realDocType): 21348 (WebCore::DocumentImpl::createAttribute): 21349 (WebCore::DocumentImpl::title): 21350 (WebCore::DocumentImpl::styleSelector): 21351 (WebCore::DocumentImpl::setRestoreState): 21352 (WebCore::DocumentImpl::restoreState): 21353 (WebCore::DocumentImpl::view): 21354 (WebCore::DocumentImpl::docLoader): 21355 (WebCore::DocumentImpl::tokenizer): 21356 (WebCore::DocumentImpl::focusNode): 21357 (WebCore::DocumentImpl::hoverNode): 21358 (WebCore::DocumentImpl::activeNode): 21359 (WebCore::DocumentImpl::policyBaseURL): 21360 (WebCore::DocumentImpl::setPolicyBaseURL): 21361 (WebCore::DocumentImpl::): 21362 (WebCore::DocumentImpl::transformSourceDocument): 21363 (WebCore::DocumentImpl::domTreeVersion): 21364 (WebCore::DocumentImpl::decoder): 21365 * dom/NodeListImpl.cpp: 21366 (DOM::NodeListImpl::NodeListImpl): 21367 (DOM::NodeListImpl::~NodeListImpl): 21368 (DOM::NodeListImpl::recursiveLength): 21369 (DOM::NodeListImpl::recursiveItem): 21370 (DOM::NodeListImpl::itemById): 21371 * dom/NodeListImpl.h: 21372 * dom/dom2_eventsimpl.cpp: 21373 (WebCore::RegisteredEventListener::RegisteredEventListener): 21374 * dom/dom2_eventsimpl.h: 21375 (WebCore::operator!=): 21376 * dom/dom2_traversalimpl.cpp: 21377 (DOM::TraversalImpl::TraversalImpl): 21378 (DOM::NodeIteratorImpl::NodeIteratorImpl): 21379 (DOM::TreeWalkerImpl::TreeWalkerImpl): 21380 * dom/dom2_traversalimpl.h: 21381 (WebCore::TraversalImpl::root): 21382 (WebCore::TraversalImpl::filter): 21383 (WebCore::NodeIteratorImpl::referenceNode): 21384 (WebCore::NodeIteratorImpl::setPointerBeforeReferenceNode): 21385 (WebCore::NodeIteratorImpl::setDetached): 21386 (WebCore::NodeIteratorImpl::document): 21387 (WebCore::TreeWalkerImpl::currentNode): 21388 * dom/dom_position.cpp: 21389 (WebCore::Position::computedStyle): 21390 * dom/dom_position.h: 21391 * dom/xml_tokenizer.cpp: 21392 (WebCore::XMLTokenizer::insertErrorMessageBlock): 21393 * editing/ApplyStyleCommand.cpp: 21394 (WebCore::createFontElement): 21395 (WebCore::createStyleSpanElement): 21396 (WebCore::ApplyStyleCommand::ApplyStyleCommand): 21397 (WebCore::ApplyStyleCommand::updateStartEnd): 21398 (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange): 21399 (WebCore::ApplyStyleCommand::extractTextDecorationStyle): 21400 (WebCore::ApplyStyleCommand::extractAndNegateTextDecorationStyle): 21401 (WebCore::ApplyStyleCommand::applyTextDecorationStyle): 21402 (WebCore::ApplyStyleCommand::removeInlineStyle): 21403 (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded): 21404 (WebCore::ApplyStyleCommand::computedFontSize): 21405 * editing/ApplyStyleCommand.h: 21406 (WebCore::ApplyStyleCommand::style): 21407 * editing/EditCommand.cpp: 21408 (WebCore::EditCommandPtr::setTypingStyle): 21409 (WebCore::EditCommand::setTypingStyle): 21410 (WebCore::EditCommand::styleAtPosition): 21411 * editing/EditCommand.h: 21412 (WebCore::EditCommand::document): 21413 (WebCore::EditCommand::typingStyle): 21414 * editing/InsertLineBreakCommand.cpp: 21415 (WebCore::InsertLineBreakCommand::InsertLineBreakCommand): 21416 (WebCore::InsertLineBreakCommand::doApply): 21417 * editing/InsertTextCommand.cpp: 21418 (WebCore::InsertTextCommand::prepareForTextInsertion): 21419 * editing/ReplaceSelectionCommand.cpp: 21420 (WebCore::computeAndStoreNodeDesiredStyle): 21421 (WebCore::NodeDesiredStyle::NodeDesiredStyle): 21422 (WebCore::ReplaceSelectionCommand::doApply): 21423 * editing/ReplaceSelectionCommand.h: 21424 (WebCore::NodeDesiredStyle::node): 21425 (WebCore::NodeDesiredStyle::style): 21426 (WebCore::ReplacementFragment::root): 21427 * editing/WrapContentsInDummySpanCommand.cpp: 21428 (WebCore::WrapContentsInDummySpanCommand::doApply): 21429 * editing/htmlediting.cpp: 21430 (WebCore::createDefaultParagraphElement): 21431 (WebCore::createBreakElement): 21432 * editing/markup.cpp: 21433 (WebCore::createFragmentFromMarkup): 21434 (WebCore::createParagraphContentsFromString): 21435 * editing/visible_text.cpp: 21436 (khtml::TextIterator::rangeFromLocationAndLength): 21437 * editing/visible_text.h: 21438 (WebCore::isCollapsibleWhitespace): 21439 (WebCore::WordAwareIterator::range): 21440 * khtml/ecma/kjs_css.cpp: 21441 (KJS::DOMCSSStyleDeclaration::cssPropertyGetter): 21442 (KJS::DOMCSSStyleDeclarationProtoFunc::callAsFunction): 21443 * khtml/ecma/kjs_dom.cpp: 21444 (KJS::DOMDocumentProtoFunc::callAsFunction): 21445 * khtml/ecma/kjs_html.cpp: 21446 (KJS::KJS::HTMLSelectCollection::put): 21447 (KJS::OptionConstructorImp::construct): 21448 * khtml/html/HTMLElementImpl.cpp: 21449 (WebCore::HTMLElementImpl::createContextualFragment): 21450 (WebCore::HTMLElementImpl::setInnerHTML): 21451 (WebCore::HTMLElementImpl::setOuterHTML): 21452 (WebCore::HTMLElementImpl::setOuterText): 21453 * khtml/html/HTMLElementImpl.h: 21454 * khtml/html/HTMLNameCollectionImpl.cpp: 21455 (WebCore::HTMLNameCollectionImpl::HTMLNameCollectionImpl): 21456 (WebCore::HTMLNameCollectionImpl::traverseNextItem): 21457 * khtml/html/HTMLNameCollectionImpl.h: 21458 * khtml/html/html_documentimpl.cpp: 21459 (WebCore::HTMLDocumentImpl::createElement): 21460 * khtml/html/html_documentimpl.h: 21461 (WebCore::HTMLDocumentImpl::collectionInfo): 21462 * khtml/html/htmlfactory.cpp: 21463 (DOM::htmlConstructor): 21464 (DOM::headConstructor): 21465 (DOM::bodyConstructor): 21466 (DOM::baseConstructor): 21467 (DOM::linkConstructor): 21468 (DOM::metaConstructor): 21469 (DOM::styleConstructor): 21470 (DOM::titleConstructor): 21471 (DOM::frameConstructor): 21472 (DOM::framesetConstructor): 21473 (DOM::iframeConstructor): 21474 (DOM::formConstructor): 21475 (DOM::buttonConstructor): 21476 (DOM::inputConstructor): 21477 (DOM::isindexConstructor): 21478 (DOM::fieldsetConstructor): 21479 (DOM::labelConstructor): 21480 (DOM::legendConstructor): 21481 (DOM::optgroupConstructor): 21482 (DOM::optionConstructor): 21483 (DOM::selectConstructor): 21484 (DOM::textareaConstructor): 21485 (DOM::dlConstructor): 21486 (DOM::ulConstructor): 21487 (DOM::olConstructor): 21488 (DOM::dirConstructor): 21489 (DOM::menuConstructor): 21490 (DOM::liConstructor): 21491 (DOM::blockquoteConstructor): 21492 (DOM::divConstructor): 21493 (DOM::headingConstructor): 21494 (DOM::hrConstructor): 21495 (DOM::paragraphConstructor): 21496 (DOM::preConstructor): 21497 (DOM::basefontConstructor): 21498 (DOM::fontConstructor): 21499 (DOM::modConstructor): 21500 (DOM::anchorConstructor): 21501 (DOM::imageConstructor): 21502 (DOM::mapConstructor): 21503 (DOM::areaConstructor): 21504 (DOM::canvasConstructor): 21505 (DOM::appletConstructor): 21506 (DOM::embedConstructor): 21507 (DOM::objectConstructor): 21508 (DOM::paramConstructor): 21509 (DOM::scriptConstructor): 21510 (DOM::tableConstructor): 21511 (DOM::tableCaptionConstructor): 21512 (DOM::tableColConstructor): 21513 (DOM::tableRowConstructor): 21514 (DOM::tableCellConstructor): 21515 (DOM::tableSectionConstructor): 21516 (DOM::brConstructor): 21517 (DOM::quoteConstructor): 21518 (DOM::marqueeConstructor): 21519 (DOM::HTMLElementFactory::createHTMLElement): 21520 * khtml/html/htmlfactory.h: 21521 * khtml/html/htmlparser.cpp: 21522 (HTMLParser::parseToken): 21523 (HTMLParser::textCreateErrorCheck): 21524 (HTMLParser::commentCreateErrorCheck): 21525 (HTMLParser::headCreateErrorCheck): 21526 (HTMLParser::bodyCreateErrorCheck): 21527 (HTMLParser::framesetCreateErrorCheck): 21528 (HTMLParser::iframeCreateErrorCheck): 21529 (HTMLParser::formCreateErrorCheck): 21530 (HTMLParser::isindexCreateErrorCheck): 21531 (HTMLParser::selectCreateErrorCheck): 21532 (HTMLParser::ddCreateErrorCheck): 21533 (HTMLParser::dtCreateErrorCheck): 21534 (HTMLParser::nestedCreateErrorCheck): 21535 (HTMLParser::nestedStyleCreateErrorCheck): 21536 (HTMLParser::tableCellCreateErrorCheck): 21537 (HTMLParser::tableSectionCreateErrorCheck): 21538 (HTMLParser::noembedCreateErrorCheck): 21539 (HTMLParser::noframesCreateErrorCheck): 21540 (HTMLParser::noscriptCreateErrorCheck): 21541 (HTMLParser::mapCreateErrorCheck): 21542 (HTMLParser::getNode): 21543 * khtml/html/htmlparser.h: 21544 * khtml/html/htmltokenizer.cpp: 21545 (WebCore::HTMLTokenizer::parseTag): 21546 (WebCore::HTMLTokenizer::processToken): 21547 * khtml/html/htmltokenizer.h: 21548 * ksvg2/misc/SVGDocumentExtensions.cpp: 21549 (WebCore::SVGDocumentExtensions::createSVGEventListener): 21550 * ksvg2/misc/SVGDocumentExtensions.h: 21551 * ksvg2/svg/SVGDOMImplementationImpl.cpp: 21552 (SVGDOMImplementationImpl::createDocumentType): 21553 (SVGDOMImplementationImpl::createDocument): 21554 (SVGDOMImplementationImpl::createCSSStyleSheet): 21555 * ksvg2/svg/SVGDOMImplementationImpl.h: 21556 * ksvg2/svg/SVGDocumentImpl.cpp: 21557 (WebCore::SVGDocumentImpl::createElement): 21558 (WebCore::SVGDocumentImpl::dispatchZoomEvent): 21559 (WebCore::SVGDocumentImpl::dispatchKeyEvent): 21560 (WebCore::SVGDocumentImpl::dispatchUIEvent): 21561 (WebCore::SVGDocumentImpl::dispatchMouseEvent): 21562 * ksvg2/svg/SVGDocumentImpl.h: 21563 * ksvg2/svg/SVGElementImpl.cpp: 21564 (WebCore::SVGElementImpl::addSVGEventListener): 21565 * ksvg2/svg/SVGSVGElementImpl.cpp: 21566 (WebCore::SVGSVGElementImpl::addSVGWindowEventListner): 21567 * page/Frame.cpp: 21568 (WebCore::Frame::view): 21569 (WebCore::Frame::begin): 21570 (WebCore::Frame::computeAndSetTypingStyle): 21571 (WebCore::Frame::selectionHasStyle): 21572 (WebCore::Frame::selectionStartHasStyle): 21573 (WebCore::Frame::selectionStartStylePropertyValue): 21574 (WebCore::Frame::selectionComputedStyle): 21575 (WebCore::Frame::forceLayout): 21576 (WebCore::Frame::sendResizeEvent): 21577 (WebCore::Frame::sendScrollEvent): 21578 (WebCore::Frame::clearTimers): 21579 (WebCore::Frame::styleForSelectionStart): 21580 * page/FramePrivate.h: 21581 * page/FrameTree.h: 21582 (WebCore::FrameTree::name): 21583 21584 2006-02-16 David Harrison <harrison (a] apple.com> 21585 21586 Reviewed by Darin. 21587 21588 Test: 21589 * manual-tests/mail-attachments.html: Added. 21590 Automated test not currently possible because widgets do not actually draw when not in a window. 21591 Geoff and Justin are fixing that and will add this test. 21592 21593 * rendering/render_frames.cpp: 21594 (WebCore::RenderPartObject::updateWidget): 21595 Fix unique param check when processing object tag attributes. 21596 21597 2006-02-16 Adele Peterson <adele (a] apple.com> 21598 21599 Reviewed by Darin. 21600 21601 - Fixed http://bugs.webkit.org/show_bug.cgi?id=7113 21602 Typing in editable overflow:hidden div doesn't scroll 21603 21604 * bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge ensureSelectionVisible]): 21605 Changed scrollRectToVisible call so that it will align to the edge instead of trying to center the selection. 21606 Centering looks funny when it happens after typing, deleting, moving the cursor, etc. 21607 * rendering/render_layer.cpp: (WebCore::RenderLayer::scrollRectToVisible): 21608 Use scrollWidth() and scrollHeight() functions instead of m_scrollWidth and m_scrollHeight. 21609 These functions will cause the correct scroll dimensions to be calculated for overflow:hidden layers. 21610 Also subtracted scrollbar width and height when calculating the layer bounds. This was causing scroll problems in overflow:scroll. 21611 I also did some cleanup to use xPos() and yPos() instead of m_x and m_y, and to use scrollYOffset() instead of m_scrollY. 21612 21613 2006-02-16 Adele Peterson <adele (a] apple.com> 21614 21615 Reviewed by Darin. 21616 21617 - Fixed http://bugs.webkit.org/show_bug.cgi?id=6812 21618 Missing focus ring on new text fields 21619 21620 Tests: 21621 * fast/forms/input-appearance-focus.html: Updated. 21622 21623 * rendering/render_object.cpp: (WebCore::RenderObject::paintOutline): 21624 call supportsFocusRing instead of checking the appearance. 21625 * rendering/render_theme.cpp: (khtml::RenderTheme::supportsFocusRing): Added. 21626 Checks appearance. Theme will draw focus ring if there's an appearance, but not for the new text fields. 21627 * rendering/render_theme.h: 21628 21629 2006-02-16 Darin Adler <darin (a] apple.com> 21630 21631 Reviewed by Hyatt. 21632 21633 - eliminate QFrame and QObject::inherits, fix some strange stuff 21634 in RenderCanvas that showed up when I tested that change 21635 21636 * kwq/KWQFrame.h: Removed. 21637 * kwq/KWQFrame.mm: Removed. 21638 21639 * bridge/mac/FrameViewMac.mm: Added. 21640 21641 * WebCore.xcodeproj/project.pbxproj: Updated for adds and removes. 21642 * WebCore.vcproj/WebCore/WebCore.vcproj: Updated for removes. 21643 21644 * bridge/mac/WebCoreFrameBridge.mm: 21645 (-[WebCoreFrameBridge RenderObject::nodeInfoAtPoint:]): 21646 * khtml/ecma/kjs_window.cpp: 21647 (KJS::FrameArray::indexGetter): 21648 (KJS::FrameArray::nameGetter): 21649 * kwq/KWQAccObject.mm: 21650 (-[KWQAccObject doAXTextMarkerForPosition:]): 21651 * kwq/KWQRenderTreeDebug.cpp: 21652 (write): 21653 * page/Frame.cpp: 21654 (WebCore::isFrameElement): 21655 * page/FramePrivate.h: 21656 (WebCore::FramePrivate::FramePrivate): 21657 Change QObject::inherits callers to call the "is" functions directly. 21658 21659 * kwq/KWQObject.h: 21660 * kwq/KWQObject.cpp: Removed QObject::inherits, QObject::isQFrame, 21661 and QObject::isQScrollView. 21662 21663 * kwq/KWQScrollView.h: Inherit from Widget instead of QFrame. 21664 Remove isQScrollView. 21665 * kwq/KWQScrollView.mm: Remove isQScrollView. 21666 21667 * page/FrameView.h: 21668 * page/FrameView.cpp: Changed underMouse and clickNode to be RefPtr. 21669 Added m_hasBorder. 21670 (WebCore::FrameViewPrivate::FrameViewPrivate): 21671 (WebCore::FrameViewPrivate::~FrameViewPrivate): 21672 (WebCore::FrameViewPrivate::reset): 21673 (WebCore::FrameView::layout): 21674 (WebCore::FrameView::viewportMousePressEvent): 21675 (WebCore::FrameView::invalidateClick): 21676 (WebCore::FrameView::viewportMouseReleaseEvent): 21677 (WebCore::FrameView::keyPressEvent): 21678 (WebCore::FrameView::dispatchDragEvent): Use RefPtr for MouseEventImpl. 21679 (WebCore::FrameView::nodeUnderMouse): 21680 (WebCore::FrameView::dispatchMouseEvent): 21681 (WebCore::FrameView::setHasBorder): Added. 21682 (WebCore::FrameView::hasBorder): Added. 21683 (WebCore::FrameView::borderWidth): Added. 21684 21685 * rendering/render_canvas.h: Eliminated unneeded setWidth/Height overrides. 21686 Eliminated viewportWidth(), viewportHeight(), m_rootWidth, m_rootHeight, 21687 m_viewportWidth, and m_viewportHeight. 21688 * rendering/render_canvas.cpp: 21689 (RenderCanvas::calcHeight): Remove unneeded code to set height when there's 21690 no view. 21691 (RenderCanvas::calcWidth): Fix code to set width to visibleWidth(). Removed 21692 incorrect old width setting, and removed unneeded code to set width when 21693 there's no view. Also removed incorrect margin-setting code. 21694 (RenderCanvas::layout): Removed incorrect code to set width and height. 21695 Instead letting calcWidth and calcHeight do the job. 21696 (RenderCanvas::repaintViewRectangle): Use new FrameView::hasBorder instead 21697 of QFrame::frameStyle. 21698 (RenderCanvas::viewRect): Removed unneeded "root width" feature for a canvas 21699 without a view. 21700 21701 * rendering/render_frames.cpp: 21702 (WebCore::RenderFrame::slotViewCleared): Use new setHasBorder. 21703 (WebCore::RenderPartObject::slotViewCleared): Ditto. 21704 21705 2006-02-17 Eric Seidel <eseidel (a] apple.com> 21706 21707 Reviewed by justing. 21708 21709 Close several age-old leaks in xslt code. 21710 Tests already were catching these. 21711 21712 * khtml/xsl/xsl_stylesheetimpl.cpp: 21713 (WebCore::XSLStyleSheetImpl::loadChildSheets): 21714 (WebCore::XSLStyleSheetImpl::locateStylesheetSubResource): 21715 * khtml/xsl/xslt_processorimpl.cpp: 21716 (WebCore::docLoaderFunc): 21717 21718 2006-02-16 Tim Omernick <timo (a] apple.com> 21719 21720 Reviewed by Geoff. 21721 21722 <rdar://problem/4428609> Flash Player 8.0.22 can crash Safari (and WebKit apps) 21723 with javascript disabled (7015) 21724 21725 Added a test case, manual-tests/NPN_Invoke. This is a skeleton of a Netscape 21726 plugin which uses NPN_Invoke() to call the window.alert() JavaScript function. 21727 21728 * bridge/mac/MacFrame.mm: 21729 (WebCore::MacFrame::windowScriptNPObject): 21730 Removed the check Darin added to return 0 when JavaScript is disabled. 21731 This method cannot return 0, because plugins are not guaranteed to check 21732 for that. 21733 Removed my old fix for Radar 4428609 (7015) in favor of a better solution. 21734 Instead of creating a "dummy" JSObject to represent the window script object 21735 when JavaScript is disabled, we use the new JavaScriptCore bindings API to 21736 create a "no script" NPObject. This solution is better because it does not 21737 cause entry into any JavaScript interpreter code. 21738 21739 * manual-tests/NPN_Invoke: Added. 21740 * manual-tests/NPN_Invoke/English.lproj: Added. 21741 * manual-tests/NPN_Invoke/English.lproj/Localized.r: Added. 21742 * manual-tests/NPN_Invoke/Info.plist: Added. 21743 * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj: Added. 21744 * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj/project.pbxproj: Added. 21745 * manual-tests/NPN_Invoke/main.c: Added. 21746 * manual-tests/NPN_Invoke/test.html: Added. 21747 21748 2006-02-16 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 21749 21750 Reviewed by Darin, landed by ap. 21751 21752 - fix http://bugs.webkit.org/show_bug.cgi?id=7274 21753 Assertion failure in TimerBase::checkHeapIndex() (Timer.cpp:199) !timerHeap->isEmpty() 21754 21755 * platform/Timer.cpp: 21756 (WebCore::TimerBase::stop): Call setNextFireTime(0) unconditionally to make sure the timer 21757 is removed from timersReadyToFire so that fireTimers doesn't try to fire a deleted timer. 21758 21759 2006-02-15 Geoffrey Garen <ggaren (a] apple.com> 21760 21761 Reviewed by Maciej, Eric. 21762 21763 - WebCore half of fix for <rdar://problem/4176077> CrashTracer: 6569 21764 crashes in DashboardClient at com.apple.JavaScriptCore: 21765 KJS::Bindings::ObjcFallbackObjectImp::type() 21766 21767 WebCore and JavaScriptCore weren't sharing Instance objects very 21768 nicely. I made them use RefPtrs, and sent them to bed without dessert. 21769 21770 * khtml/html/html_objectimpl.cpp: 21771 (WebCore::HTMLAppletElementImpl::HTMLAppletElementImpl): Made 21772 appletInstance a RefPtr 21773 (WebCore::HTMLAppletElementImpl::getAppletInstance): 21774 (WebCore::HTMLAppletElementImpl::detach): 21775 (WebCore::HTMLEmbedElementImpl::HTMLEmbedElementImpl): Made 21776 embedInstance a RefPtr 21777 (WebCore::HTMLEmbedElementImpl::getEmbedInstance): 21778 (WebCore::HTMLEmbedElementImpl::detach): 21779 (WebCore::HTMLObjectElementImpl::HTMLObjectElementImpl): Made 21780 objectInstance a RefPtr 21781 (WebCore::HTMLObjectElementImpl::getObjectInstance): 21782 (WebCore::HTMLObjectElementImpl::detach): 21783 * bindings/js/JSDOMCore.cpp: 21784 * khtml/ecma/kjs_dom.cpp: 21785 (KJS::getRuntimeObject): 21786 * khtml/html/html_objectimpl.h: 21787 21788 2006-02-15 Geoffrey Garen <ggaren (a] apple.com> 21789 21790 Reviewed by Eric. 21791 21792 - Fixed http://bugs.webkit.org/show_bug.cgi?id=4674 21793 LEAK: WheelEventImpl leaked when mousewheel used 21794 21795 No test case because it requires manual mouse wheeling. 21796 21797 * dom/NodeImpl.cpp: 21798 (WebCore::NodeImpl::dispatchWheelEvent): Use a RefPtr instead of just 21799 leaking the WheelEventImpl. 21800 21801 2006-02-15 Dave Hyatt <hyatt (a] apple.com> 21802 21803 Make FontFamily compile on Win32 (just needed a few more 21804 __APPLE__ ifdefs). 21805 21806 Clean up the frameBufferAtIndex method of the image decoders 21807 on Win32. 21808 21809 * WebCore.vcproj/WebCore/WebCore.vcproj: 21810 * kwq/KWQFont.h: 21811 * platform/FontFamily.cpp: 21812 (WebCore::FontFamily::FontFamily): 21813 * platform/cairo/ImageSourceCairo.cpp: 21814 (WebCore::ImageSource::createFrameAtIndex): 21815 (WebCore::ImageSource::frameDurationAtIndex): 21816 (WebCore::ImageSource::frameHasAlphaAtIndex): 21817 * platform/image-decoders/ImageDecoder.h: 21818 * platform/image-decoders/gif/GIFImageDecoder.cpp: 21819 (WebCore::GIFImageDecoder::frameBufferAtIndex): 21820 * platform/image-decoders/gif/GIFImageDecoder.h: 21821 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: 21822 (WebCore::JPEGImageDecoder::frameBufferAtIndex): 21823 * platform/image-decoders/jpeg/JPEGImageDecoder.h: 21824 * platform/image-decoders/png/PNGImageDecoder.cpp: 21825 (WebCore::PNGImageDecoder::frameBufferAtIndex): 21826 * platform/image-decoders/png/PNGImageDecoder.h: 21827 21828 2006-02-15 David Hyatt <hyatt (a] apple.com> 21829 21830 Make KWQFontFamily portable. Split it out into a cross-platform core and the Mac-specific version. 21831 Move it to platform and rename it to FontFamily (and FontFamilyMac). 21832 21833 Reviewed by eric 21834 21835 * WebCore.xcodeproj/project.pbxproj: 21836 * css/cssstyleselector.cpp: 21837 (WebCore::CSSStyleSelector::applyProperty): 21838 * kwq/KWQFont.h: 21839 (QFont::firstFamily): 21840 * kwq/KWQFont.mm: 21841 (QFont::setFirstFamily): 21842 * kwq/KWQFontFamily.h: Removed. 21843 * kwq/KWQFontFamily.mm: Removed. 21844 * platform/FontFamily.cpp: Added. 21845 (WebCore::FontFamily::FontFamily): 21846 (WebCore::FontFamily::~FontFamily): 21847 (WebCore::FontFamily::operator=): 21848 (WebCore::FontFamily::setFamily): 21849 (WebCore::FontFamily::operator==): 21850 * platform/FontFamily.h: Added. 21851 (WebCore::FontFamily::family): 21852 (WebCore::FontFamily::familyIsEmpty): 21853 (WebCore::FontFamily::next): 21854 (WebCore::FontFamily::appendFamily): 21855 (WebCore::FontFamily::operator!=): 21856 (WebCore::FontFamily::ref): 21857 (WebCore::FontFamily::deref): 21858 * platform/mac/FontFamilyMac.mm: Added. 21859 (WebCore::retainDOMStringImpl): 21860 (WebCore::releaseDOMStringImpl): 21861 (WebCore::): 21862 (WebCore::FontFamily::getNSFamily): 21863 * rendering/font.h: 21864 (khtml::FontDef::firstFamily): 21865 21866 2006-02-15 Oliver Hunt <ojh16 (a] student.canterbury.ac.nz> 21867 21868 Reviewed by eseidel. Landed by eseidel. 21869 21870 Implemented feDisplacementMap. 21871 http://bugs.webkit.org/show_bug.cgi?id=5862 21872 21873 Test: svg/custom/feDisplacementMap-01.svg 21874 21875 * WebCore.xcodeproj/project.pbxproj: added files. 21876 * kcanvas/KCanvasFilters.cpp: 21877 (WebCore::KCanvasFEDisplacementMap::externalRepresentation): 21878 * kcanvas/KCanvasFilters.h: 21879 (WebCore::KCanvasFEDisplacementMap::KCanvasFEDisplacementMap): 21880 (WebCore::KCanvasFEDisplacementMap::xChannelSelector): 21881 (WebCore::KCanvasFEDisplacementMap::setXChannelSelector): 21882 (WebCore::KCanvasFEDisplacementMap::yChannelSelector): 21883 (WebCore::KCanvasFEDisplacementMap::setYChannelSelector): 21884 (WebCore::KCanvasFEDisplacementMap::scale): 21885 (WebCore::KCanvasFEDisplacementMap::setScale): 21886 * kcanvas/device/quartz/KCanvasFilterQuartz.h: 21887 * kcanvas/device/quartz/KCanvasFilterQuartz.mm: 21888 (WebCore::getVectorForChannel): 21889 (WebCore::KCanvasFEDisplacementMapQuartz::getCIFilter): 21890 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm: 21891 (WebCore::KRenderingDeviceQuartz::createFilterEffect): 21892 * kcanvas/device/quartz/filters/WKDisplacementMapFilter.cikernel: Added. 21893 * kcanvas/device/quartz/filters/WKDisplacementMapFilter.h: Added. 21894 * kcanvas/device/quartz/filters/WKDisplacementMapFilter.m: Added. 21895 (+[WKDisplacementMapFilter initialize]): 21896 (+[WKDisplacementMapFilter filterWithName:]): 21897 (-[WKDisplacementMapFilter init]): 21898 (-[WKDisplacementMapFilter outputImage]): 21899 * ksvg2/svg/SVGFEDisplacementMapElementImpl.cpp: Added. 21900 (SVGFEDisplacementMapElementImpl::SVGFEDisplacementMapElementImpl): 21901 (SVGFEDisplacementMapElementImpl::~SVGFEDisplacementMapElementImpl): 21902 (SVGFEDisplacementMapElementImpl::in1): 21903 (SVGFEDisplacementMapElementImpl::in2): 21904 (SVGFEDisplacementMapElementImpl::xChannelSelector): 21905 (SVGFEDisplacementMapElementImpl::yChannelSelector): 21906 (SVGFEDisplacementMapElementImpl::scale): 21907 (SVGFEDisplacementMapElementImpl::stringToChannel): 21908 (SVGFEDisplacementMapElementImpl::parseMappedAttribute): 21909 (SVGFEDisplacementMapElementImpl::filterEffect): 21910 * ksvg2/svg/SVGFEDisplacementMapElementImpl.h: Added. 21911 * ksvg2/svg/svgtags.in: 21912 21913 2006-02-15 Eric Seidel <eseidel (a] apple.com> 21914 21915 Reviewed by darin. 21916 21917 Commit change forgotten after editing directory move. 21918 21919 * editing/markup.cpp: 21920 (khtml::startMarkup): add support for serializing DOCTYPEs in xml 21921 21922 2006-02-15 Alexey Proskuryakov <ap (a] nypop.com> 21923 21924 Reviewed by Maciej. 21925 21926 - fix http://bugs.webkit.org/show_bug.cgi?id=6452 21927 KURL::appendEscapingBadChars() doesn't know about %u-escaping. 21928 21929 Test case: fast/encoding/percent-escaping.html 21930 21931 * kwq/KWQKURL.mm: (appendEscapingBadChars): 21932 Rather than adding support for %u, remove the existing 21933 "do what I mean" escaping of percent characters that do not 21934 look like a result of prior escaping. 21935 21936 2006-02-14 Eric Seidel <eseidel (a] apple.com> 21937 21938 Fix build failure from last minute edit. 21939 21940 * khtml/xsl/xsl_stylesheetimpl.cpp: 21941 (WebCore::XSLStyleSheetImpl::parseString): 21942 21943 2006-02-14 Eric Seidel <eseidel (a] apple.com> 21944 21945 Reviewed by darin. 21946 21947 Add incremental parsing support to XMLTokenizer. 21948 This patch also does a few other little things: 21949 - removes (unused) onHold support from Tokenizer 21950 - adds serialization of DOCTYPEs for xml documents 21951 - fixes xslt support to no longer depend on synchronous parsing 21952 - fixes css styling for pages where xsl recursion is blocked 21953 http://bugs.webkit.org/show_bug.cgi?id=6057 21954 21955 * dom/DocumentImpl.cpp: 21956 (WebCore::DocumentImpl::DocumentImpl): 21957 (WebCore::DocumentImpl::createProcessingInstruction): 21958 (WebCore::DocumentImpl::open): 21959 (WebCore::DocumentImpl::recalcStyleSelector): 21960 * dom/dom_xmlimpl.cpp: 21961 (WebCore::ProcessingInstructionImpl::checkStyleSheet): 21962 * dom/xml_tokenizer.cpp: 21963 (WebCore::XMLTokenizer::XMLTokenizer): 21964 (WebCore::XMLTokenizer::write): 21965 (WebCore::XMLTokenizer::startElementNs): 21966 (WebCore::XMLTokenizer::error): 21967 (WebCore::XMLTokenizer::initializeParserContext): 21968 (WebCore::XMLTokenizer::finish): 21969 (WebCore::xmlDocPtrForString): 21970 (WebCore::parseAttributes): 21971 * dom/xml_tokenizer.h: 21972 * khtml/editing/markup.cpp: 21973 (khtml::startMarkup): DOCTYPE serialization 21974 * khtml/html/htmltokenizer.cpp: 21975 (WebCore::HTMLTokenizer::HTMLTokenizer): removed onHold 21976 (WebCore::HTMLTokenizer::reset): removed onHold 21977 (WebCore::HTMLTokenizer::begin): removed onHold 21978 (WebCore::HTMLTokenizer::write): removed onHold 21979 (WebCore::HTMLTokenizer::finish): removed onHold 21980 * khtml/html/htmltokenizer.h: removed onHold support 21981 * khtml/xsl/xsl_stylesheetimpl.cpp: 21982 (WebCore::XSLStyleSheetImpl::XSLStyleSheetImpl): 21983 (WebCore::XSLStyleSheetImpl::~XSLStyleSheetImpl): 21984 (WebCore::XSLStyleSheetImpl::document): 21985 (WebCore::XSLStyleSheetImpl::setDocument): 21986 (WebCore::XSLStyleSheetImpl::parseString): 21987 (WebCore::XSLStyleSheetImpl::loadChildSheets): 21988 (WebCore::XSLStyleSheetImpl::compileStyleSheet): 21989 (WebCore::XSLStyleSheetImpl::locateStylesheetSubResource): 21990 * khtml/xsl/xsl_stylesheetimpl.h: moved functions to .cpp file 21991 21992 2006-02-14 Adele Peterson <adele (a] apple.com> 21993 21994 Reviewed by Maciej. 21995 21996 http://bugs.webkit.org/show_bug.cgi?id=6815 21997 Calculate correct width for new text fields 21998 21999 Tests: 22000 fast/forms/input-appearance-width.html 22001 fast/forms/input-appearance-minWidth.html 22002 22003 * rendering/RenderTextField.cpp: 22004 (WebCore::RenderTextField::createDivStyle): Remove fixed width for text field. 22005 (WebCore::RenderTextField::calcMinMaxWidth): Added. This calls RenderBlock::calcMinMaxWidth and 22006 then uses the size attribute to determine what the maxWidth should be. 22007 * rendering/RenderTextField.h: Added calcMinMaxWidth. 22008 * rendering/render_theme_mac.h: Added adjustTextFieldStyle. 22009 * rendering/render_theme_mac.mm: 22010 (WebCore::RenderThemeMac::adjustRepaintRect): Remove inflation of rect. This is no longer necessary. 22011 (WebCore::RenderThemeMac::paintTextField): ditto. 22012 (WebCore::RenderThemeMac::setTextFieldCellState): change true to YES. 22013 (WebCore::RenderThemeMac::adjustTextFieldStyle): Added. This is the temporary home of the code to set the 22014 right padding and margins. When we flip the switch, this will go in html4.css. 22015 22016 2006-02-14 John Sullivan <sullivan (a] apple.com> 22017 22018 Reviewed by Tim Hatcher. 22019 22020 removed -[DOMHTMLSelectElement _optionLabels], formerly used only by Safari, now unused. 22021 22022 * bindings/objc/DOMHTML.mm: 22023 * bindings/objc/DOMPrivate.h: 22024 22025 2006-02-14 Timothy Hatcher <timothy (a] apple.com> 22026 22027 Reviewed by Justin. 22028 22029 Fixed <rdar://problem/4415050> STD: WebCore build steps use echo -n, which will change 22030 behavior due to POSIX version of sh 22031 22032 * WebCore.xcodeproj/project.pbxproj: removed the use of echo -n, replaced with printf "" 22033 22034 2006-02-14 Darin Adler <darin (a] apple.com> 22035 22036 Rubber-stamped by Eric. 22037 22038 - moved editing sources from khtml/editing to editing, and renamed files with single classes 22039 22040 * WebCore.xcodeproj/project.pbxproj: Added new, removed old. 22041 * WebCore.vcproj/WebCore/WebCore.vcproj: Ditto. 22042 22043 * bridge/mac/MacFrame.mm: 22044 * bridge/mac/WebCoreFrameBridge.mm: 22045 * dom/DocumentImpl.cpp: 22046 * dom/dom2_rangeimpl.cpp: 22047 * dom/dom_position.cpp: 22048 * khtml/khtml_events.cpp: 22049 * kwq/KWQAccObject.mm: 22050 * kwq/KWQAccObjectCache.h: 22051 * kwq/KWQEditCommand.mm: 22052 * page/Frame.cpp: 22053 * page/FramePrivate.h: 22054 * rendering/RenderBlock.cpp: 22055 * rendering/RenderContainer.cpp: 22056 * rendering/RenderText.cpp: 22057 * rendering/render_br.cpp: 22058 * rendering/render_inline.cpp: 22059 * rendering/render_object.cpp: 22060 * rendering/render_replaced.cpp: 22061 Fixed up includes. 22062 22063 * editing: Added. 22064 * editing/AppendNodeCommand.cpp: Added. 22065 * editing/AppendNodeCommand.h: Added. 22066 * editing/ApplyStyleCommand.cpp: Added. 22067 * editing/ApplyStyleCommand.h: Added. 22068 * editing/BreakBlockquoteCommand.cpp: Added. 22069 * editing/BreakBlockquoteCommand.h: Added. 22070 * editing/CompositeEditCommand.cpp: Added. 22071 * editing/CompositeEditCommand.h: Added. 22072 * editing/DeleteFromTextNodeCommand.cpp: Added. 22073 * editing/DeleteFromTextNodeCommand.h: Added. 22074 * editing/DeleteSelectionCommand.cpp: Added. 22075 * editing/DeleteSelectionCommand.h: Added. 22076 * editing/EditCommand.cpp: Added. 22077 * editing/EditCommand.h: Added. 22078 * editing/InsertIntoTextNodeCommand.cpp: Added. 22079 * editing/InsertIntoTextNodeCommand.h: Added. 22080 * editing/InsertLineBreakCommand.cpp: Added. 22081 * editing/InsertLineBreakCommand.h: Added. 22082 * editing/InsertNodeBeforeCommand.cpp: Added. 22083 * editing/InsertNodeBeforeCommand.h: Added. 22084 * editing/InsertParagraphSeparatorCommand.cpp: Added. 22085 * editing/InsertParagraphSeparatorCommand.h: Added. 22086 * editing/InsertTextCommand.cpp: Added. 22087 * editing/InsertTextCommand.h: Added. 22088 * editing/JoinTextNodesCommand.cpp: Added. 22089 * editing/JoinTextNodesCommand.h: Added. 22090 * editing/MergeIdenticalElementsCommand.cpp: Added. 22091 * editing/MergeIdenticalElementsCommand.h: Added. 22092 * editing/MoveSelectionCommand.cpp: Added. 22093 * editing/MoveSelectionCommand.h: Added. 22094 * editing/RebalanceWhitespaceCommand.cpp: Added. 22095 * editing/RebalanceWhitespaceCommand.h: Added. 22096 * editing/RemoveCSSPropertyCommand.cpp: Added. 22097 * editing/RemoveCSSPropertyCommand.h: Added. 22098 * editing/RemoveNodeAttributeCommand.cpp: Added. 22099 * editing/RemoveNodeAttributeCommand.h: Added. 22100 * editing/RemoveNodeCommand.cpp: Added. 22101 * editing/RemoveNodeCommand.h: Added. 22102 * editing/RemoveNodePreservingChildrenCommand.cpp: Added. 22103 * editing/RemoveNodePreservingChildrenCommand.h: Added. 22104 * editing/ReplaceSelectionCommand.cpp: Added. 22105 * editing/ReplaceSelectionCommand.h: Added. 22106 * editing/Selection.cpp: 22107 * editing/SelectionController.cpp: 22108 * editing/SetNodeAttributeCommand.cpp: Added. 22109 * editing/SetNodeAttributeCommand.h: Added. 22110 * editing/SplitElementCommand.cpp: Added. 22111 * editing/SplitElementCommand.h: Added. 22112 * editing/SplitTextNodeCommand.cpp: Added. 22113 * editing/SplitTextNodeCommand.h: Added. 22114 * editing/SplitTextNodeContainingElementCommand.cpp: Added. 22115 * editing/SplitTextNodeContainingElementCommand.h: Added. 22116 * editing/TypingCommand.cpp: Added. 22117 * editing/TypingCommand.h: Added. 22118 * editing/VisiblePosition.cpp: Added. 22119 * editing/VisiblePosition.h: Added. 22120 * editing/VisibleRange.cpp: Added. 22121 * editing/VisibleRange.h: Added. 22122 * editing/WrapContentsInDummySpanCommand.cpp: Added. 22123 * editing/WrapContentsInDummySpanCommand.h: Added. 22124 * editing/append_node_command.cpp: Removed. 22125 * editing/append_node_command.h: Removed. 22126 * editing/apply_style_command.cpp: Removed. 22127 * editing/apply_style_command.h: Removed. 22128 * editing/break_blockquote_command.cpp: Removed. 22129 * editing/break_blockquote_command.h: Removed. 22130 * editing/composite_edit_command.cpp: Removed. 22131 * editing/composite_edit_command.h: Removed. 22132 * editing/delete_from_text_node_command.cpp: Removed. 22133 * editing/delete_from_text_node_command.h: Removed. 22134 * editing/delete_selection_command.cpp: Removed. 22135 * editing/delete_selection_command.h: Removed. 22136 * editing/edit_command.cpp: Removed. 22137 * editing/edit_command.h: Removed. 22138 * editing/htmlediting.cpp: 22139 * editing/insert_into_text_node_command.cpp: Removed. 22140 * editing/insert_into_text_node_command.h: Removed. 22141 * editing/insert_line_break_command.cpp: Removed. 22142 * editing/insert_line_break_command.h: Removed. 22143 * editing/insert_node_before_command.cpp: Removed. 22144 * editing/insert_node_before_command.h: Removed. 22145 * editing/insert_paragraph_separator_command.cpp: Removed. 22146 * editing/insert_paragraph_separator_command.h: Removed. 22147 * editing/insert_text_command.cpp: Removed. 22148 * editing/insert_text_command.h: Removed. 22149 * editing/join_text_nodes_command.cpp: Removed. 22150 * editing/join_text_nodes_command.h: Removed. 22151 * editing/jsediting.cpp: 22152 * editing/markup.cpp: 22153 * editing/merge_identical_elements_command.cpp: Removed. 22154 * editing/merge_identical_elements_command.h: Removed. 22155 * editing/move_selection_command.cpp: Removed. 22156 * editing/move_selection_command.h: Removed. 22157 * editing/rebalance_whitespace_command.cpp: Removed. 22158 * editing/rebalance_whitespace_command.h: Removed. 22159 * editing/remove_css_property_command.cpp: Removed. 22160 * editing/remove_css_property_command.h: Removed. 22161 * editing/remove_node_attribute_command.cpp: Removed. 22162 * editing/remove_node_attribute_command.h: Removed. 22163 * editing/remove_node_command.cpp: Removed. 22164 * editing/remove_node_command.h: Removed. 22165 * editing/remove_node_preserving_children_command.cpp: Removed. 22166 * editing/remove_node_preserving_children_command.h: Removed. 22167 * editing/replace_selection_command.cpp: Removed. 22168 * editing/replace_selection_command.h: Removed. 22169 * editing/set_node_attribute_command.cpp: Removed. 22170 * editing/set_node_attribute_command.h: Removed. 22171 * editing/split_element_command.cpp: Removed. 22172 * editing/split_element_command.h: Removed. 22173 * editing/split_text_node_command.cpp: Removed. 22174 * editing/split_text_node_command.h: Removed. 22175 * editing/split_text_node_containing_element.cpp: Removed. 22176 * editing/split_text_node_containing_element_command.h: Removed. 22177 * editing/typing_command.cpp: Removed. 22178 * editing/typing_command.h: Removed. 22179 * editing/visible_position.cpp: Removed. 22180 * editing/visible_position.h: Removed. 22181 * editing/visible_range.cpp: Removed. 22182 * editing/visible_range.h: Removed. 22183 * editing/visible_units.cpp: 22184 * editing/wrap_contents_in_dummy_span_command.cpp: Removed. 22185 * editing/wrap_contents_in_dummy_span_command.h: Removed. 22186 22187 * khtml/editing: Removed. 22188 * khtml/editing/Selection.cpp: Removed. 22189 * khtml/editing/Selection.h: Removed. 22190 * khtml/editing/SelectionController.cpp: Removed. 22191 * khtml/editing/SelectionController.h: Removed. 22192 * khtml/editing/append_node_command.cpp: Removed. 22193 * khtml/editing/append_node_command.h: Removed. 22194 * khtml/editing/apply_style_command.cpp: Removed. 22195 * khtml/editing/apply_style_command.h: Removed. 22196 * khtml/editing/break_blockquote_command.cpp: Removed. 22197 * khtml/editing/break_blockquote_command.h: Removed. 22198 * khtml/editing/composite_edit_command.cpp: Removed. 22199 * khtml/editing/composite_edit_command.h: Removed. 22200 * khtml/editing/delete_from_text_node_command.cpp: Removed. 22201 * khtml/editing/delete_from_text_node_command.h: Removed. 22202 * khtml/editing/delete_selection_command.cpp: Removed. 22203 * khtml/editing/delete_selection_command.h: Removed. 22204 * khtml/editing/edit_actions.h: Removed. 22205 * khtml/editing/edit_command.cpp: Removed. 22206 * khtml/editing/edit_command.h: Removed. 22207 * khtml/editing/html_interchange.cpp: Removed. 22208 * khtml/editing/html_interchange.h: Removed. 22209 * khtml/editing/htmlediting.cpp: Removed. 22210 * khtml/editing/htmlediting.h: Removed. 22211 * khtml/editing/insert_into_text_node_command.cpp: Removed. 22212 * khtml/editing/insert_into_text_node_command.h: Removed. 22213 * khtml/editing/insert_line_break_command.cpp: Removed. 22214 * khtml/editing/insert_line_break_command.h: Removed. 22215 * khtml/editing/insert_node_before_command.cpp: Removed. 22216 * khtml/editing/insert_node_before_command.h: Removed. 22217 * khtml/editing/insert_paragraph_separator_command.cpp: Removed. 22218 * khtml/editing/insert_paragraph_separator_command.h: Removed. 22219 * khtml/editing/insert_text_command.cpp: Removed. 22220 * khtml/editing/insert_text_command.h: Removed. 22221 * khtml/editing/join_text_nodes_command.cpp: Removed. 22222 * khtml/editing/join_text_nodes_command.h: Removed. 22223 * khtml/editing/jsediting.cpp: Removed. 22224 * khtml/editing/jsediting.h: Removed. 22225 * khtml/editing/markup.cpp: Removed. 22226 * khtml/editing/markup.h: Removed. 22227 * khtml/editing/merge_identical_elements_command.cpp: Removed. 22228 * khtml/editing/merge_identical_elements_command.h: Removed. 22229 * khtml/editing/move_selection_command.cpp: Removed. 22230 * khtml/editing/move_selection_command.h: Removed. 22231 * khtml/editing/rebalance_whitespace_command.cpp: Removed. 22232 * khtml/editing/rebalance_whitespace_command.h: Removed. 22233 * khtml/editing/remove_css_property_command.cpp: Removed. 22234 * khtml/editing/remove_css_property_command.h: Removed. 22235 * khtml/editing/remove_node_attribute_command.cpp: Removed. 22236 * khtml/editing/remove_node_attribute_command.h: Removed. 22237 * khtml/editing/remove_node_command.cpp: Removed. 22238 * khtml/editing/remove_node_command.h: Removed. 22239 * khtml/editing/remove_node_preserving_children_command.cpp: Removed. 22240 * khtml/editing/remove_node_preserving_children_command.h: Removed. 22241 * khtml/editing/replace_selection_command.cpp: Removed. 22242 * khtml/editing/replace_selection_command.h: Removed. 22243 * khtml/editing/set_node_attribute_command.cpp: Removed. 22244 * khtml/editing/set_node_attribute_command.h: Removed. 22245 * khtml/editing/split_element_command.cpp: Removed. 22246 * khtml/editing/split_element_command.h: Removed. 22247 * khtml/editing/split_text_node_command.cpp: Removed. 22248 * khtml/editing/split_text_node_command.h: Removed. 22249 * khtml/editing/split_text_node_containing_element.cpp: Removed. 22250 * khtml/editing/split_text_node_containing_element_command.h: Removed. 22251 * khtml/editing/text_affinity.h: Removed. 22252 * khtml/editing/text_granularity.h: Removed. 22253 * khtml/editing/typing_command.cpp: Removed. 22254 * khtml/editing/typing_command.h: Removed. 22255 * khtml/editing/visible_position.cpp: Removed. 22256 * khtml/editing/visible_position.h: Removed. 22257 * khtml/editing/visible_range.cpp: Removed. 22258 * khtml/editing/visible_range.h: Removed. 22259 * khtml/editing/visible_text.cpp: Removed. 22260 * khtml/editing/visible_text.h: Removed. 22261 * khtml/editing/visible_units.cpp: Removed. 22262 * khtml/editing/visible_units.h: Removed. 22263 * khtml/editing/wrap_contents_in_dummy_span_command.cpp: Removed. 22264 * khtml/editing/wrap_contents_in_dummy_span_command.h: Removed. 22265 22266 2006-02-14 John Sullivan <sullivan (a] apple.com> 22267 22268 Reviewed by Adele Peterson. 22269 22270 - fixed http://bugs.webkit.org/show_bug.cgi?id=7255 22271 label attribute in option elements is ignored 22272 22273 Test cases: 22274 * dom/html/level2/html/HTMLOptionElement_label01.html 22275 * dom/html/level2/html/HTMLOptionElement_label02.html 22276 * dom/html/level2/html/HTMLOptionElement_label03.html 22277 22278 * rendering/render_form.cpp: 22279 (WebCore::RenderSelect::updateFromElement): 22280 use label attribute, if present, when setting text on the widget. 22281 22282 2006-02-14 Vicki Murley <vicki (a] apple.com> 22283 22284 Reviewed by Maciej. 22285 22286 Change formatting in this file to match the style guidelines. No spaces after 22287 opening parentheses or before closing parentheses. 22288 22289 * dom/DocumentImpl.cpp: 22290 (WebCore::DocumentImpl::createDocumentFragment): 22291 (WebCore::DocumentImpl::recalcStyle): 22292 (WebCore::DocumentImpl::attach): 22293 (WebCore::DocumentImpl::detach): 22294 (WebCore::DocumentImpl::open): 22295 (WebCore::DocumentImpl::write): 22296 (WebCore::DocumentImpl::writeln): 22297 (WebCore::DocumentImpl::setUserStyleSheet): 22298 (WebCore::DocumentImpl::determineParseMode): 22299 (WebCore::DocumentImpl::processHttpEquiv): 22300 (WebCore::DocumentImpl::childAllowed): 22301 (WebCore::DocumentImpl::childTypeAllowed): 22302 (WebCore::DocumentImpl::recalcStyleSelector): 22303 (WebCore::DocumentImpl::dispatchImageLoadEventsNow): 22304 (WebCore::DocumentImpl::domain): 22305 (WebCore::DocumentImpl::setDomain): 22306 (WebCore::DocumentImpl::parseQualifiedName): 22307 (WebCore::DocumentImpl::addMarker): 22308 (WebCore::DocumentImpl::removeMarkers): 22309 22310 2006-02-14 John Sullivan <sullivan (a] apple.com> 22311 22312 Reviewed by Tim Hatcher. 22313 22314 Some cleanup from the previous checkin, inspired by Darin's comments 22315 22316 * bridge/mac/MacFrame.h: 22317 * bridge/mac/MacFrame.mm: 22318 moved highlightAllMatchesForString out of here 22319 22320 * bridge/mac/WebCoreFrameBridge.mm: 22321 (-[WebCoreFrameBridge highlightAllMatchesForString:caseSensitive:]): 22322 now converts NSString to QString here, rather than in Frame/MacFrame 22323 22324 * dom/DocumentMarker.h: Added. 22325 (WebCore::DocumentMarker::): 22326 (WebCore::DocumentMarker::operator == ): 22327 (WebCore::DocumentMarker::operator != ): 22328 moved this struct to its own header file 22329 22330 * dom/DocumentImpl.h: 22331 moved DocumentMarker out; now includes DocumentMarker.h 22332 22333 * page/Frame.h: 22334 * page/Frame.cpp: 22335 (WebCore::Frame::highlightAllMatchesForString): 22336 moved here from MacFrame.[h,mm]. I thought this used other code from 22337 MacFrame.mm but it doesn't. 22338 22339 * rendering/InlineTextBox.h: 22340 removed unnecesssary variable names; use DocumentMarker::MarkerType in signature 22341 of paintAllMarkersOfType 22342 * rendering/InlineTextBox.cpp: 22343 (khtml::InlineTextBox::paintTextMatchMarker): 22344 better name for a variable, fixed bad indent 22345 (khtml::InlineTextBox::paintAllMarkersOfType): 22346 rewrote loop to bail out early if past end, for clarity; 22347 use DocumentMarker::MarkerType in signature 22348 22349 * WebCore.xcodeproj/project.pbxproj: 22350 updated for new file 22351 22352 2006-02-13 John Sullivan <sullivan (a] apple.com> 22353 22354 Reviewed by Tim Omernick. 22355 22356 Support for highlighting multiple text matches. 22357 22358 * dom/DocumentImpl.h: 22359 (WebCore::DocumentMarker::): 22360 Added new marker type TextMatch 22361 22362 * bridge/mac/WebCoreFrameBridge.h: 22363 * bridge/mac/WebCoreFrameBridge.mm: 22364 (-[WebCoreFrameBridge highlightAllMatchesForString:caseSensitive:]): 22365 new method, calls through to MacFrame implementation 22366 (-[WebCoreFrameBridge clearHighlightedMatches]): 22367 new method, removes all markers of type TextMatch 22368 22369 * bridge/mac/MacFrame.h: 22370 * bridge/mac/MacFrame.mm: 22371 (WebCore::MacFrame::highlightAllMatchesForString): 22372 new method, adds a document marker for each range that matches the given string 22373 22374 * rendering/InlineTextBox.h: 22375 * rendering/InlineTextBox.cpp: 22376 (khtml::InlineTextBox::paint): 22377 Moved DocumentMarker loop into separate method paintAllMarkersOfType. We now call 22378 that method twice, once for spelling markers (after drawing text) and once for 22379 text match markers (before drawing text) 22380 (khtml::InlineTextBox::paintTextMatchMarker): 22381 new method, paints a color behind a text match marker 22382 (khtml::InlineTextBox::paintSpellingMarker): 22383 renamed from paintMarker 22384 (khtml::InlineTextBox::paintAllMarkersOfType): 22385 new method, loops through all DocumentMarkers of a particular type and calls the 22386 appropriate painting method for each one 22387 22388 2006-02-13 Darin Adler <darin (a] apple.com> 22389 22390 Reviewed by Maciej. 22391 22392 - move pointer from frame to page here from WebKit 22393 22394 * WebCore.xcodeproj/project.pbxproj: Added PageMac.h. 22395 22396 * bridge/mac/PageMac.h: Added. 22397 22398 * bridge/mac/MacFrame.h: Added a page parameter to the constructor. 22399 * bridge/mac/MacFrame.mm: 22400 (WebCore::MacFrame::MacFrame): Pass the page and renderer to the Frame constructor. 22401 Moved the call to Cache::init up into Frame, and got rid of the call to Frame::init 22402 since that's now handled by the constructor. Also put the code to create the 22403 browser extension object here. 22404 (WebCore::MacFrame::submitForm): Update for new method name. 22405 (WebCore::MacFrame::createFrame): Ditto. 22406 (WebCore::MacFrame::sendContextMenuEvent): Update since m_doc is a RefPtr. 22407 22408 * bridge/mac/WebCoreFrameBridge.h: Changed parameters on init methods. Renamed 22409 the part method to impl. Added a page method. 22410 * bridge/mac/WebCoreFrameBridge.mm: 22411 (frameHasSelection): Change use of part method to impl. 22412 (-[WebCoreFrameBridge appendChild:]): Use m_frame directly instead of calling part method. 22413 (-[WebCoreFrameBridge removeChild:]): Ditto. 22414 (-[WebCoreFrameBridge initMainFrameWithPage:]): Added. Now does the first-time initialization 22415 only here and create a frame for a main frame. 22416 (-[WebCoreFrameBridge initSubframeWithRenderer:]): Added. Doesn't do the first-time initialization 22417 and creates a frame for a subframe. 22418 (-[WebCoreFrameBridge page]): Added. 22419 (-[WebCoreFrameBridge setOpener:]): Change to use impl method instead of part. 22420 (-[WebCoreFrameBridge executionContextForView:]): Ditto. 22421 (-[WebCoreFrameBridge impl]): Added. 22422 22423 * bridge/mac/WebCorePageBridge.h: Removed init method and added setMainFrame: method and impl method. 22424 * bridge/mac/WebCorePageBridge.mm: 22425 (-[WebCorePageBridge init]): Changed to create a PageMac. 22426 (-[WebCorePageBridge setMainFrame:]): Added. 22427 (-[WebCorePageBridge impl]): Added. 22428 22429 * bridge/mac/BrowserExtensionMac.mm: 22430 (WebCore::BrowserExtensionMac::createNewWindow): 22431 * kwq/KWQAccObject.mm: 22432 (-[KWQAccObject rendererForView:]): 22433 * kwq/KWQComboBox.mm: 22434 (-[KWQPopUpButtonCell trackMouse:inRect:ofView:untilMouseUp:]): 22435 * kwq/KWQFileButton.mm: 22436 (KWQFileButton::focusPolicy): 22437 * kwq/KWQSlider.mm: 22438 (QSlider::focusPolicy): 22439 * kwq/KWQTextArea.mm: 22440 (-[KWQTextAreaTextView _isResizableByUser]): 22441 (-[KWQTextAreaTextView _trackResizeFromMouseDown:]): 22442 Change methods to get from bridge back to objects to be named "impl". 22443 The old one was named "part". 22444 22445 * page/Frame.h: Added Page and RenderPart parameter to constructor. 22446 Added a page function. Removed the createBrowserExtension function. 22447 * page/Frame.cpp: 22448 (WebCore::parentFromOwnerRenderer): Added. Helper for constructor. 22449 (WebCore::Frame::Frame): Moved all the code from init into here. Also change 22450 to set the parent right from the start. 22451 (WebCore::Frame::stopLoading): Change since m_doc is now a RefPtr. 22452 (WebCore::Frame::clear): Ditto. 22453 (WebCore::Frame::document): Ditto. 22454 (WebCore::Frame::setDocument): Ditto. 22455 (WebCore::Frame::begin): Ditto. 22456 (WebCore::Frame::gotoAnchor): Ditto. 22457 (WebCore::Frame::typingStyle): Change since m_typingStyle is now a RefPtr. 22458 (WebCore::Frame::setTypingStyle): Ditto. 22459 (WebCore::Frame::clearTypingStyle): Ditto. 22460 (WebCore::Frame::isFrameSet): Change since m_doc is now a RefPtr. 22461 (WebCore::Frame::page): Added. 22462 22463 * page/FramePrivate.h: Changed initialization to use member-initialization 22464 syntax. Removed unused m_frames. Changed m_doc and m_typingStyle to use 22465 RefPtr. Added an m_frame. 22466 22467 * page/Page.h: Made destructor virtual so we could have a Mac derived class. 22468 Added a setMainFrame function and removed the mainFrame parameter from the constructor. 22469 * page/Page.cpp: 22470 (WebCore::Page::Page): Removed the mainFrame parameter. 22471 (WebCore::Page::setMainFrame): Added. 22472 22473 2006-02-13 David Harrison <harrison (a] apple.com> 22474 22475 Reviewed by Justin. 22476 22477 - merge VisiblePosition:isCandidate() into Position::inRenderedContent() 22478 These functions were answering the same question in different ways! We 22479 only need one implementation. 22480 22481 * khtml/editing/visible_position.cpp: 22482 (khtml::VisiblePosition::init): 22483 (khtml::VisiblePosition::previousVisiblePosition): 22484 (khtml::VisiblePosition::nextVisiblePosition): 22485 (khtml::VisiblePosition::deepEquivalent): 22486 * khtml/editing/visible_position.h: 22487 * dom/dom_position.cpp: 22488 (DOM::hasRenderedChildrenWithHeight): 22489 (DOM::Position::inRenderedContent): 22490 22491 22492 - improved table deletion. 22493 Fixes: delete back by word from just after table did not delete the table 22494 delete forward by char or word did not delete the table 22495 deleting back to a table and again did not delete the table 22496 22497 * khtml/editing/htmlediting.cpp: 22498 (WebCore::isFirstVisiblePositionAfterTableElement): 22499 simpler implementation 22500 (WebCore::positionBeforePrecedingTableElement): 22501 simpler implementation 22502 (WebCore::isFirstVisiblePositionBeforeTableElement): 22503 new 22504 (WebCore::positionAfterFollowingTableElement): 22505 new 22506 * khtml/editing/htmlediting.h: 22507 * khtml/editing/SelectionController.cpp: 22508 (WebCore::SelectionController::modifyExtendingRightForward): 22509 select following table if granularity is char or word 22510 (WebCore::SelectionController::modifyExtendingLeftBackward): 22511 select preceding table if granularity is char or word 22512 * khtml/editing/typing_command.cpp: 22513 (khtml::TypingCommand::deleteKeyPressed): 22514 simpler implementation, and let other deleteKeyPressed do boundary checking 22515 (khtml::TypingCommand::forwardDeleteKeyPressed): 22516 simpler implementation, and let other forwardDeleteKeyPressed do boundary checking 22517 (khtml::TypingCommand::insertText): 22518 standard formatting 22519 (khtml::TypingCommand::insertLineBreak): 22520 standard formatting 22521 (khtml::TypingCommand::insertParagraphSeparatorInQuotedContent): 22522 standard formatting 22523 (khtml::TypingCommand::insertParagraphSeparator): 22524 standard formatting 22525 (khtml::TypingCommand::insertTextRunWithoutNewlines): 22526 standard formatting 22527 (khtml::TypingCommand::deleteKeyPressed): 22528 use SelectionController to extend selection, to get all the selection 22529 logic incl. table selection and editable/noneditable boundary checks 22530 (khtml::TypingCommand::forwardDeleteKeyPressed): 22531 use SelectionController to extend selection, to get all the selection 22532 logic incl. table selection and editable/noneditable boundary checks 22533 22534 2006-02-13 David Hyatt <hyatt (a] apple.com> 22535 22536 Fix for bug 5605, XSLT fails to import to arbitrary depth. Make sure m_embedded is initialized to false 22537 in the XSLTStyleSheetImpl constructor. 22538 22539 Reviewed by timo 22540 22541 Adding xslt-import-depth.xml to fast/xsl 22542 22543 * khtml/xsl/xsl_stylesheetimpl.cpp: 22544 (DOM::XSLStyleSheetImpl::XSLStyleSheetImpl): 22545 22546 2006-02-13 Dave Hyatt <hyatt (a] apple.com> 22547 22548 Fix Win32 bustage in WebCore. 22549 22550 Reviewed by darin 22551 22552 * WebCore.vcproj/WebCore/WebCore.vcproj: 22553 * platform/Timer.cpp: 22554 (WebCore::operator==): 22555 (WebCore::operator!=): 22556 (WebCore::TimerBase::heapPop): 22557 22558 HUGE_VAL can be used on both Windows and Mac, so replace 1e500 with 22559 that. 22560 22561 Add == and != operators for the TimerHeapIterator. 22562 22563 * platform/image-decoders/png/PNGImageDecoder.cpp: 22564 (WebCore::PNGImageDecoder::rowAvailable): 22565 22566 Fix my bustage in the PNG decoder where I left off a stray 22567 parenthesis. 22568 22569 * platform/win/SharedTimerWin.cpp: 22570 (WebCore::timerFired): 22571 (WebCore::setSharedTimerFireTime): 22572 (WebCore::stopSharedTimer): 22573 22574 KillTimer should take 2 arguments. Add some missing includes. 22575 22576 2006-02-12 Alexander Kellett <lypanov (a] kde.org> 22577 22578 Reviewed by eseidel. 22579 22580 Fix http://bugs.webkit.org/show_bug.cgi?id=7207. 22581 22582 No testcases as this is not possible to reproduce via anything 22583 other than manual interaction. 22584 22585 * kcanvas/device/quartz/KCanvasFilterQuartz.mm: 22586 (WebCore::KCanvasFilterQuartz::getCIFilterStack): 22587 22588 2006-02-13 Darin Adler <darin (a] apple.com> 22589 22590 Reviewed by Hyatt. 22591 22592 - moved QWidget to platform directory, renamed to Widget, 22593 split into cross-platform and platform-specific parts, 22594 removed some of the unused bits 22595 22596 * ForwardingHeaders/qwidget.h: Removed. 22597 * kwq/KWQWidget.h: Removed. 22598 * kwq/KWQWidget.mm: Removed. 22599 22600 * WebCore.vcproj/WebCore/WebCore.vcproj: Update for file removals and adds. 22601 * WebCore.xcodeproj/project.pbxproj: Ditto. 22602 22603 * platform/Widget.h: Moved code here, fixed it up. 22604 * platform/Widget.cpp: Ditto. 22605 * platform/mac/WidgetMac.mm: Added. 22606 22607 * bindings/objc/DOMHTML.mm: 22608 (viewForElement): 22609 * bridge/mac/KWQKHTMLView.cpp: 22610 (WebCore::FrameView::topLevelWidget): 22611 * bridge/mac/MacFrame.h: 22612 * bridge/mac/MacFrame.mm: 22613 (WebCore::MacFrame::createPlugin): 22614 (WebCore::MacFrame::nextKeyViewInFrame): 22615 (WebCore::MacFrame::nextKeyViewForWidget): 22616 (WebCore::MacFrame::currentEventIsMouseDownInWidget): 22617 (WebCore::MacFrame::bridgeForWidget): 22618 (WebCore::MacFrame::passMouseDownEventToWidget): 22619 (WebCore::MacFrame::passSubframeEventToSubframe): 22620 (WebCore::MacFrame::passWheelEventToChildWidget): 22621 (WebCore::MacFrame::getAppletInstanceForWidget): 22622 (WebCore::MacFrame::getEmbedInstanceForWidget): 22623 (WebCore::MacFrame::getObjectInstanceForWidget): 22624 * bridge/mac/WebCoreFrameBridge.mm: 22625 (-[WebCoreFrameBridge createFrameViewWithNSView:marginWidth:marginHeight:]): 22626 (-[WebCoreFrameBridge copyRenderNode:copier:]): 22627 (-[WebCoreFrameBridge elementForView:]): 22628 (-[WebCoreFrameBridge RenderObject::nodeInfoAtPoint:]): 22629 * dom/DocumentImpl.cpp: 22630 (WebCore::widgetForNode): 22631 (WebCore::DocumentImpl::setFocusNode): 22632 * khtml/ecma/kjs_window.cpp: 22633 (KJS::Screen::getValueProperty): 22634 (KJS::WindowFunc::callAsFunction): 22635 * khtml/html/HTMLGenericFormElementImpl.cpp: 22636 (WebCore::HTMLGenericFormElementImpl::isKeyboardFocusable): 22637 (WebCore::HTMLGenericFormElementImpl::isMouseFocusable): 22638 * khtml/html/html_objectimpl.cpp: 22639 (WebCore::HTMLEmbedElementImpl::getEmbedInstance): 22640 (WebCore::HTMLObjectElementImpl::getObjectInstance): 22641 * kwq/KWQAccObject.mm: 22642 (-[KWQAccObject addChildrenToArray:]): 22643 (-[KWQAccObject attachmentView]): 22644 (-[KWQAccObject doAXTextMarkerForPosition:]): 22645 * kwq/KWQComboBox.h: 22646 * kwq/KWQComboBox.mm: 22647 (QComboBox::frameGeometry): 22648 (QComboBox::setFrameGeometry): 22649 (QComboBox::setFont): 22650 (QComboBox::focusPolicy): 22651 (-[KWQPopUpButtonCell widget]): 22652 (-[KWQPopUpButton widget]): 22653 (-[KWQPopUpButton mouseDown:]): 22654 (-[KWQPopUpButton becomeFirstResponder]): 22655 (-[KWQPopUpButton resignFirstResponder]): 22656 (-[KWQPopUpButton nextKeyView]): 22657 (-[KWQPopUpButton previousKeyView]): 22658 * kwq/KWQFileButton.h: 22659 * kwq/KWQFileButton.mm: 22660 (KWQFileButton::focusPolicy): 22661 * kwq/KWQFrame.h: 22662 * kwq/KWQKCursor.h: 22663 * kwq/KWQKJavaAppletWidget.h: 22664 * kwq/KWQKJavaAppletWidget.mm: 22665 (KJavaAppletWidget::KJavaAppletWidget): 22666 * kwq/KWQLineEdit.h: 22667 * kwq/KWQLineEdit.mm: 22668 (QLineEdit::setFont): 22669 (QLineEdit::setPalette): 22670 (QLineEdit::focusPolicy): 22671 * kwq/KWQListBox.h: 22672 * kwq/KWQListBox.mm: 22673 (QListBox::QListBox): 22674 (QListBox::focusPolicy): 22675 (QListBox::setFont): 22676 (-[KWQListBoxScrollView widget]): 22677 (-[KWQListBoxScrollView becomeFirstResponder]): 22678 (-[KWQTableView mouseDown:]): 22679 (-[KWQTableView widget]): 22680 * kwq/KWQPainter.h: 22681 * kwq/KWQRenderTreeDebug.cpp: 22682 (write): 22683 * kwq/KWQScrollBar.h: 22684 * kwq/KWQScrollBar.mm: 22685 (-[KWQScrollBar widget]): 22686 (-[KWQScrollBar mouseDown:]): 22687 (QScrollBar::QScrollBar): 22688 (QScrollBar::~QScrollBar): 22689 * kwq/KWQScrollView.h: 22690 (QScrollView::QScrollView): 22691 * kwq/KWQScrollView.mm: 22692 (QScrollView::viewport): 22693 (QScrollView::childX): 22694 (QScrollView::childY): 22695 (QScrollView::addChild): 22696 (QScrollView::removeChild): 22697 * kwq/KWQSlider.h: 22698 * kwq/KWQSlider.mm: 22699 (-[KWQSlider mouseDown:]): 22700 (-[KWQSlider widget]): 22701 (QSlider::setFont): 22702 (QSlider::focusPolicy): 22703 * kwq/KWQTextArea.mm: 22704 (-[KWQTextAreaTextView widget]): 22705 * kwq/KWQTextEdit.h: 22706 * kwq/KWQTextEdit.mm: 22707 (QTextEdit::QTextEdit): 22708 (QTextEdit::setFont): 22709 (QTextEdit::focusPolicy): 22710 (QTextEdit::setPalette): 22711 * kwq/KWQTextField.mm: 22712 (-[KWQTextFieldController widget]): 22713 (-[KWQTextFieldController textView:shouldHandleEvent:]): 22714 (-[KWQTextFieldController textView:didHandleEvent:]): 22715 (-[KWQTextField widget]): 22716 (-[KWQTextField nextKeyView]): 22717 (-[KWQTextField previousKeyView]): 22718 (-[KWQSecureTextField widget]): 22719 (-[KWQSecureTextField nextKeyView]): 22720 (-[KWQSecureTextField previousKeyView]): 22721 (-[KWQSearchField widget]): 22722 (-[KWQSearchField nextKeyView]): 22723 (-[KWQSearchField previousKeyView]): 22724 * kwq/KWQView.h: 22725 * kwq/KWQWindowWidget.h: 22726 * kwq/KWQWindowWidget.mm: 22727 (KWQWindowWidget::topLevelWidget): 22728 * page/Frame.cpp: 22729 (WebCore::isFrameElement): 22730 (WebCore::Frame::frameForWidget): 22731 (WebCore::Frame::nodeForWidget): 22732 (WebCore::Frame::setDocumentFocus): 22733 (WebCore::Frame::clearDocumentFocus): 22734 (WebCore::Frame::passWidgetMouseDownEventToWidget): 22735 * page/Frame.h: 22736 * page/FrameView.cpp: 22737 (WebCore::FrameView::FrameView): 22738 (WebCore::FrameView::init): 22739 * page/FrameView.h: 22740 * page/Plugin.h: 22741 (WebCore::Plugin::Plugin): 22742 (WebCore::Plugin::view): 22743 * platform/Screen.h: 22744 * platform/mac/ScreenMac.mm: 22745 (WebCore::screen): 22746 (WebCore::screenDepth): 22747 (WebCore::screenRect): 22748 (WebCore::usableScreenRect): 22749 * rendering/render_applet.cpp: 22750 (WebCore::RenderApplet::layout): 22751 * rendering/render_form.cpp: 22752 (WebCore::ComboBoxWidget::ComboBoxWidget): 22753 (WebCore::RenderSelect::createListBox): 22754 * rendering/render_form.h: 22755 * rendering/render_frames.cpp: 22756 (WebCore::RenderPart::setWidget): 22757 * rendering/render_frames.h: 22758 * rendering/render_object.cpp: 22759 * rendering/render_replaced.cpp: 22760 (WebCore::RenderWidget::resizeWidget): 22761 (WebCore::RenderWidget::setQWidget): 22762 * rendering/render_replaced.h: 22763 (WebCore::RenderWidget::widget): 22764 Change name from QWidget to Widget, a few other changes to get compiling. 22765 22766 === WebCore-521.7 === 22767 22768 2006-02-12 Darin Adler <darin (a] apple.com> 22769 22770 Reviewed by Hyatt. 22771 22772 - fix http://bugs.webkit.org/show_bug.cgi?id=7206 22773 REGRESSION: PDF "images" no longer render within HTML pages 22774 22775 Test: fast/replaced/page-as-image.html 22776 22777 * platform/Image.cpp: (WebCore::Image::setNativeData): 22778 Return false in the case where the PDF document has not been created yet. 22779 22780 2006-02-12 Darin Adler <darin (a] apple.com> 22781 22782 Reviewed by Maciej. 22783 22784 - http://bugs.webkit.org/show_bug.cgi?id=7209 22785 reimplement Timer so it uses only a single timer from the underlying OS 22786 22787 * WebCore.vcproj/WebCore/WebCore.vcproj: Removed old files, added new. 22788 * WebCore.xcodeproj/project.pbxproj: Ditto. 22789 22790 * platform/Timer.h: Updated for new timer implementation. 22791 * platform/Timer.cpp: Added. Platform-independent implementation of timers 22792 in terms of a single shared timer. Uses a heap to implement a priority queue 22793 so we know which timer to fire first. 22794 22795 * platform/SharedTimer.h: Added. 22796 * platform/mac/SharedTimerMac.cpp: Added. 22797 * platform/win/SharedTimerWin.cpp: Added. 22798 22799 * platform/mac/TimerMac.cpp: Removed. 22800 * platform/win/TimerWin.cpp: Removed. 22801 22802 2006-02-12 Eric Seidel <eseidel (a] apple.com> 22803 22804 Reviewed by mjs. 22805 22806 * loader/CachedXSLStyleSheet.cpp: removed duplicate copy of xbl code. 22807 22808 2006-02-12 Maciej Stachowiak <mjs (a] apple.com> 22809 22810 Unreviewed build fix. 22811 22812 - fix build 22813 22814 * bindings/scripts/CodeGeneratorJS.pm: Update for splitting of the 22815 dom_textimpl.h header. 22816 22817 2006-02-11 Maciej Stachowiak <mjs (a] apple.com> 22818 22819 Reviewed by Darin. 22820 22821 - rename FrameTreeNode to FrameTree and treeNode() to tree() 22822 http://bugs.webkit.org/show_bug.cgi?id=7210 22823 22824 This may be slightly less accurate, but reads better. 22825 22826 * WebCore.xcodeproj/project.pbxproj: 22827 * bridge/mac/BrowserExtensionMac.mm: 22828 (WebCore::BrowserExtensionMac::createNewWindow): 22829 * bridge/mac/MacFrame.mm: 22830 (WebCore::MacFrame::submitForm): 22831 (WebCore::MacFrame::nextKeyViewInFrameHierarchy): 22832 * bridge/mac/WebCoreFrameBridge.mm: 22833 (-[WebCoreFrameBridge firstChild]): 22834 (-[WebCoreFrameBridge lastChild]): 22835 (-[WebCoreFrameBridge childCount]): 22836 (-[WebCoreFrameBridge previousSibling]): 22837 (-[WebCoreFrameBridge nextSibling]): 22838 (-[WebCoreFrameBridge appendChild:]): 22839 (-[WebCoreFrameBridge removeChild:]): 22840 (-[WebCoreFrameBridge setParent:]): 22841 (-[WebCoreFrameBridge parent]): 22842 (-[WebCoreFrameBridge setName:]): 22843 (-[WebCoreFrameBridge name]): 22844 * dom/DocumentImpl.cpp: 22845 (WebCore::DocumentImpl::parentDocument): 22846 * khtml/ecma/kjs_window.cpp: 22847 (KJS::Window::getValueProperty): 22848 (KJS::Window::put): 22849 (KJS::Window::isSafeScript): 22850 (KJS::WindowFunc::callAsFunction): 22851 * khtml/html/html_baseimpl.cpp: 22852 (WebCore::HTMLFrameElementImpl::isURLAllowed): 22853 * khtml/html/html_headimpl.cpp: 22854 (WebCore::HTMLLinkElementImpl::process): 22855 * page/Frame.cpp: 22856 (WebCore::Frame::stopLoading): 22857 (WebCore::Frame::clear): 22858 (WebCore::Frame::stopAnimations): 22859 (WebCore::Frame::checkCompleted): 22860 (WebCore::Frame::checkEmitLoadEvent): 22861 (WebCore::Frame::slotChildCompleted): 22862 (WebCore::Frame::findFrame): 22863 (WebCore::Frame::setZoomFactor): 22864 (WebCore::Frame::frameNames): 22865 (WebCore::Frame::frames): 22866 (WebCore::Frame::childFrameNamed): 22867 (WebCore::Frame::incrementFrameCount): 22868 (WebCore::Frame::decrementFrameCount): 22869 (WebCore::Frame::topLevelFrameCount): 22870 (WebCore::Frame::selectFrameElementInParentIfFullySelected): 22871 (WebCore::Frame::userGestureHint): 22872 (WebCore::Frame::canCachePage): 22873 (WebCore::Frame::updatePolicyBaseURL): 22874 (WebCore::Frame::setPolicyBaseURL): 22875 (WebCore::Frame::tree): 22876 (WebCore::Frame::frameDetached): 22877 (WebCore::Frame::updateBaseURLForEmptyDocument): 22878 * page/Frame.h: 22879 * page/FramePrivate.h: 22880 * page/FrameTree.cpp: Added. 22881 (WebCore::FrameTree::~FrameTree): 22882 (WebCore::FrameTree::setName): 22883 (WebCore::FrameTree::appendChild): 22884 (WebCore::FrameTree::removeChild): 22885 * page/FrameTree.h: Added. 22886 (WebCore::FrameTree::FrameTree): 22887 * page/FrameTreeNode.cpp: Removed. 22888 * page/FrameTreeNode.h: Removed. 22889 * rendering/render_frames.cpp: 22890 (WebCore::isURLAllowed): 22891 22892 2006-02-12 Dave Hyatt <hyatt (a] apple.com> 22893 22894 Fix for bug 7182, animated GIFs don't clear previous animation 22895 frames. This checkin fixes the decoders in our tree (used on 22896 Win32 only). It does not address the problem with ImageIO 22897 on Mac (which has the same bug). This has been filed separately 22898 as Radar bug #4442031. 22899 22900 Reviewed by mjs 22901 22902 * platform/image-decoders/ImageDecoder.h: 22903 (WebCore::RGBA32Buffer::rect): 22904 (WebCore::RGBA32Buffer::setRect): 22905 (WebCore::RGBA32Buffer::ensureHeight): 22906 * platform/image-decoders/gif/GIFImageDecoder.cpp: 22907 (WebCore::GIFImageDecoder::initFrameBuffer): 22908 * platform/image-decoders/png/PNGImageDecoder.cpp: 22909 (WebCore::PNGImageDecoder::rowAvailable): 22910 22911 2006-02-11 Geoffrey Garen <ggaren (a] apple.com> 22912 22913 - Fixed bad free resulting from 0 legnth StringImpl 22914 22915 No test case because currently this bug only has the effect of a bad 22916 free on exit(). 22917 22918 * platform/StringImpl.cpp: 22919 (WebCore::StringImpl::StringImpl): Factored varied approaches to 22920 initialization into two common routines: initWithChar and 22921 initWithQChar. The common rule is: if we're not going to allocate 22922 a string, make sure to set s to 0 so fastFree doesn't try to free it 22923 later. For speed, initWithQChar uses memcpy() -- that's the only 22924 difference between the two. 22925 (WebCore::StringImpl::initWithChar): 22926 (WebCore::StringImpl::initWithQChar): 22927 * platform/StringImpl.h: 22928 22929 2006-02-11 Maciej Stachowiak <mjs (a] apple.com> 22930 22931 Rubber stamped by Eric. 22932 22933 - split dom_textimpl.{h,cpp} by class. 22934 22935 * WebCore.xcodeproj/project.pbxproj: 22936 * bindings/objc/DOM.mm: 22937 * bridge/mac/MacFrame.mm: 22938 * dom/CDATASectionImpl.cpp: Added. 22939 * dom/CDATASectionImpl.h: Added. 22940 * dom/CharacterDataImpl.cpp: Added. 22941 * dom/CharacterDataImpl.h: Added. 22942 * dom/CommentImpl.cpp: Added. 22943 * dom/CommentImpl.h: Added. 22944 * dom/DocumentImpl.cpp: 22945 * dom/EditingTextImpl.cpp: Added. 22946 * dom/EditingTextImpl.h: Added. 22947 * dom/NodeImpl.cpp: 22948 * dom/TextImpl.cpp: Added. 22949 * dom/TextImpl.h: Added. 22950 * dom/dom2_rangeimpl.cpp: 22951 * dom/dom_elementimpl.cpp: 22952 * dom/dom_textimpl.cpp: Removed. 22953 * dom/dom_textimpl.h: Removed. 22954 * dom/xml_tokenizer.cpp: 22955 * khtml/ecma/kjs_dom.cpp: 22956 * khtml/ecma/kjs_html.cpp: 22957 * khtml/editing/SelectionController.cpp: 22958 * khtml/editing/apply_style_command.cpp: 22959 * khtml/editing/break_blockquote_command.cpp: 22960 * khtml/editing/composite_edit_command.cpp: 22961 * khtml/editing/delete_from_text_node_command.cpp: 22962 * khtml/editing/delete_selection_command.cpp: 22963 * khtml/editing/htmlediting.cpp: 22964 * khtml/editing/insert_into_text_node_command.cpp: 22965 * khtml/editing/insert_line_break_command.cpp: 22966 * khtml/editing/insert_paragraph_separator_command.cpp: 22967 * khtml/editing/insert_text_command.cpp: 22968 * khtml/editing/join_text_nodes_command.cpp: 22969 * khtml/editing/markup.cpp: 22970 * khtml/editing/rebalance_whitespace_command.cpp: 22971 * khtml/editing/replace_selection_command.cpp: 22972 * khtml/editing/split_text_node_command.cpp: 22973 * khtml/editing/split_text_node_containing_element.cpp: 22974 * khtml/editing/visible_position.cpp: 22975 * khtml/html/HTMLElementImpl.cpp: 22976 * khtml/html/HTMLKeygenElementImpl.cpp: 22977 * khtml/html/HTMLOptionElementImpl.cpp: 22978 * khtml/html/HTMLTextAreaElementImpl.cpp: 22979 * khtml/html/html_headimpl.cpp: 22980 * khtml/html/html_objectimpl.cpp: 22981 * khtml/html/htmlparser.cpp: 22982 * khtml/xsl/xslt_processorimpl.cpp: 22983 * page/Frame.cpp: 22984 * rendering/RenderText.h: 22985 * rendering/render_frames.cpp: 22986 22987 2006-02-11 Alexander Kellett <lypanov (a] kde.org> 22988 22989 Reviewed by eseidel. 22990 22991 - Fixing http://bugs.webkit.org/show_bug.cgi?id=6942 22992 Implement support for "em" and "ex" relative lengths. 22993 22994 - Layout tests changes: 22995 Fixed: svg/W3C-SVG-1.1/coords-units-03-b.svg 22996 New: svg/custom/coords-relative-units-transforms.svg 22997 22998 * ksvg2/svg/SVGLengthImpl.cpp: 22999 (SVGLengthImpl::SVGLengthImpl): 23000 (SVGLengthImpl::value): 23001 (SVGLengthImpl::updateValue): 23002 (SVGLengthImpl::updateValueInSpecifiedUnits): 23003 * ksvg2/svg/SVGLengthImpl.h: 23004 23005 2006-02-11 Darin Adler <darin (a] apple.com> 23006 23007 Rubber-stamped by Eric. 23008 23009 - renamed all the platform/mac files to have a Mac suffix 23010 (Hyatt and I discussed this change recently) 23011 23012 * WebCore.xcodeproj/project.pbxproj: 23013 * platform/mac/Color.mm: Removed. 23014 * platform/mac/ColorMac.mm: Added. 23015 * platform/mac/FloatPoint.mm: Removed. 23016 * platform/mac/FloatPointMac.mm: Added. 23017 * platform/mac/FloatRect.mm: Removed. 23018 * platform/mac/FloatRectMac.mm: Added. 23019 * platform/mac/FloatSize.mm: Removed. 23020 * platform/mac/FloatSizeMac.mm: Added. 23021 * platform/mac/Image.mm: Removed. 23022 * platform/mac/ImageMac.mm: Added. 23023 * platform/mac/ImageSource.cpp: Removed. 23024 * platform/mac/ImageSourceMac.cpp: Added. 23025 * platform/mac/IntPoint.mm: Removed. 23026 * platform/mac/IntPointMac.mm: Added. 23027 * platform/mac/IntRect.mm: Removed. 23028 * platform/mac/IntRectMac.mm: Added. 23029 * platform/mac/IntSize.mm: Removed. 23030 * platform/mac/IntSizeMac.mm: Added. 23031 * platform/mac/QString.mm: Removed. 23032 * platform/mac/QStringMac.mm: Added. 23033 * platform/mac/Screen.mm: Removed. 23034 * platform/mac/ScreenMac.mm: Added. 23035 * platform/mac/SystemTime.cpp: Removed. 23036 * platform/mac/SystemTimeMac.cpp: Added. 23037 * platform/mac/Timer.cpp: Removed. 23038 * platform/mac/TimerMac.cpp: Added. 23039 23040 2006-02-11 Eric Seidel <eseidel (a] apple.com> 23041 23042 Rubber-stamped by darin. 23043 23044 Push kcanvas into WebCore namespace. 23045 Fix KSVG2 to use WebCore namespace. 23046 Remove all uses of khtml:: and KDOM:: from SVG code. 23047 23048 Too many files changed to bother showing here. 23049 23050 2006-02-11 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 23051 23052 Test: fast/table/edge-offsets.html 23053 23054 Reviewed by Hyatt. 23055 23056 - fix http://bugs.webkit.org/show_bug.cgi?id=7054 23057 Vertical scroll bars do not appear or do not scroll completely 23058 23059 * rendering/RenderTableSection.cpp: 23060 (WebCore::RenderTableSection::lowestPosition): Override the superclass implementation 23061 to return the lowest of all the cells' lowest positions and the section's. 23062 (WebCore::RenderTableSection::rightmostPosition): Ditto for rightmost. 23063 (WebCore::RenderTableSection::leftmostPosition): Ditto for leftmost. 23064 * rendering/RenderTableSection.h: 23065 23066 2006-02-11 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 23067 23068 No test until we figure out how to make one. 23069 23070 Reviewed by Darin. 23071 23072 - fix http://bugs.webkit.org/show_bug.cgi?id=7189 23073 XSLT result parsing stops prematurely 23074 23075 * khtml/xsl/xslt_processorimpl.cpp: 23076 (DOM::XSLTProcessorImpl::createDocumentFromSource): Removed the call to setParsing(false) from here 23077 since it stopped parsing prematurely. Now the frame will call it when the tokenizer is finished. 23078 * page/Frame.cpp: 23079 (WebCore::Frame::clear): Disconnect the finishedParsing signal handler from the document. 23080 (WebCore::Frame::setDocument): Disconnect the signal handler from the old document and 23081 connect it to the new document. 23082 23083 2006-02-11 Mitz Pettel <opendarwin.org (a] mitzpettel.com> 23084 23085 Reviewed by Hyatt. 23086 23087 - fix http://bugs.webkit.org/show_bug.cgi?id=6821 23088 Fix for 5983 will not always update hover correctly. 23089 23090 * khtml/xml/DocumentImpl.cpp: 23091 (WebCore::DocumentImpl::hoveredNodeDetached): Added this method. Moved the hover logic from 23092 NodeImpl::detach here, modified to use the DOM tree instead of hoverAncestor, 23093 to handle the case that the hover node is a text node, and to schedule an update 23094 of hover state. 23095 (WebCore::DocumentImpl::activeChainNodeDetached): Added this method to trim the 23096 active chain above the node being detached. 23097 * khtml/xml/DocumentImpl.h: 23098 * khtml/xml/NodeImpl.cpp: 23099 (WebCore::NodeImpl::detach): Moved most of the hover logic out of here into 23100 DocumentImpl. Reset m_active and m_inActiveChain and call activeChainNodeDetached 23101 when detaching an active node. 23102 * manual-tests/bugzilla-6821.html: Added. 23103 * page/FrameView.cpp: 23104 (WebCore::FrameViewPrivate::FrameViewPrivate): Added hover-state update timer. 23105 (WebCore::FrameViewPrivate::reset): 23106 (WebCore::FrameView::~FrameView): 23107 (WebCore::FrameView::viewportMouseMoveEvent): 23108 (WebCore::FrameView::hoverTimerFired): Call DocumentImpl::prepareMouseEvent 23109 when the timer fires to cause hover state to update. 23110 (WebCore::FrameView::scheduleHoverStateUpdate): Added. 23111 * page/FrameView.h: 23112 23113 2006-02-11 Alexey Proskuryakov <ap (a] nypop.com> 23114 23115 Reviewed by Darin. 23116 23117 - fix http://bugs.webkit.org/show_bug.cgi?id=3400 23118 setting the .src of an iframe to the same value does not reload page 23119 23120 Test cases: 23121 * fast/frames/frame-set-same-location.html 23122 * fast/frames/frame-set-same-src.html 23123 * fast/frames/iframe-set-same-location.html 23124 * fast/frames/iframe-set-same-src.html 23125 23126 * khtml/html/html_baseimpl.cpp: 23127 (WebCore::HTMLFrameElementImpl::setLocation): 23128 Remove the check for the new URL being different from the current one. 23129 Moved updateForNewURL() code into setLocation(). 23130 * khtml/html/html_baseimpl.h: 23131 23132 2006-02-10 Eric Seidel <eseidel (a] apple.com> 23133 23134 Reviewed by hyatt. 23135 23136 Adding support for external entity declarations in XSLT. 23137 http://bugs.webkit.org/show_bug.cgi?id=7184 23138 <rdar://problem/4271696> support external DTD references in XSLT 23139 23140 * dom/xml_tokenizer.cpp: 23141 (WebCore::OffsetBuffer::OffsetBuffer): new support class 23142 (WebCore::OffsetBuffer::readOutBytes): read method 23143 (WebCore::shouldAllowExternalLoad): for preventing common urls 23144 (WebCore::openFunc): now does a synchronous data load 23145 (WebCore::readFunc): returns data from the offset buffer 23146 (WebCore::closeFunc): deletes offset buffer 23147 (WebCore::setLoaderForLibXMLCallbacks): helper function 23148 (WebCore::createQStringParser): cleanup 23149 (WebCore::XMLTokenizer::finish): 23150 * dom/xml_tokenizer.h: 23151 * khtml/xsl/xsl_stylesheetimpl.cpp: 23152 (WebCore::XSLStyleSheetImpl::parseString): 23153 * khtml/xsl/xsl_stylesheetimpl.h: 23154 23155 2006-02-10 Beth Dakin <bdakin (a] apple.com> 23156 23157 Reviewed by Hyatt 23158 23159 Fix for <rdar://problem/4149655> Frequently reported crash, repro 23160 at lastminute.se in khtml::RenderBlock::createLineBoxes 23161 23162 Some crazy combination of an anonymous table, an inline form, and 23163 generated content caused table objects to be added to a flow and 23164 then split. This is very bad. Once the crash was fixed, there were 23165 still some rendering issues that this patch also fixes. We needed 23166 to make sure we only special case forms for non-CSS tables so that 23167 the form and generated content render as expected. 23168 23169 * rendering/RenderContainer.cpp: 23170 (WebCore::RenderContainer::appendChildNode): Assert that if we are 23171 a block flow, our child cannot be a table object. 23172 (WebCore::RenderContainer::insertChildNode): Same. 23173 * rendering/RenderTable.cpp: 23174 (WebCore::RenderTable::addChild): Only special-case forms if we are 23175 not a CSS table. 23176 * rendering/RenderTableRow.cpp: 23177 (WebCore::RenderTableRow::addChild): Same. 23178 * rendering/RenderTableSection.cpp: 23179 (WebCore::RenderTableSection::addChild): Same. 23180 * rendering/render_inline.cpp: 23181 (WebCore::RenderInline::addChildToFlow): Here is the crash fix. Check to make sure our containing block is a block flow. 23182 23183 2006-02-10 Darin Adler <darin (a] apple.com> 23184 23185 - fixed the build, this time for sure 23186 23187 * bindings/js/JSDOMCore.cpp: Touch this file, since the project doesn't get 23188 the dependencies right. 23189 * bindings/js/JSDOMEvents.cpp: Ditto. 23190 23191 * bridge/mac/WebCoreFrameBridge.mm: (aeDescFromJSValue): Fix an uninitialized 23192 variable warning and also tightened the code for Boolean, String, and Number 23193 up a bit. 23194 23195 2006-02-10 Geoffrey Garen <ggaren (a] apple.com> 23196 23197 Reviewed by eric. 23198 23199 - Fixed build. 23200 23201 * bridge/mac/WebCoreFrameBridge.mm: 23202 * khtml/ecma/kjs_binding.h: 23203 (KJS::DOMFunction::toPrimitive): 23204 * khtml/ecma/kjs_dom.cpp: 23205 (KJS::DOMNode::toPrimitive): 23206 (KJS::DOMNodeList::toPrimitive): 23207 * khtml/ecma/kjs_dom.h: 23208 * khtml/ecma/kjs_window.cpp: 23209 (KJS::Location::toPrimitive): 23210 (KJS::Selection::toPrimitive): 23211 * khtml/ecma/kjs_window.h: 23212 23213 2006-02-09 Darin Adler <darin (a] apple.com> 23214 23215 Reviewed by Hyatt. 23216 23217 - <rdar://problem/4430614> RenderThemeMac crashes under GC 23218 23219 * rendering/render_theme_mac.mm: 23220 (WebCore::RenderThemeMac::RenderThemeMac): Initialize all the pointers. 23221 (WebCore::RenderThemeMac::setCheckboxCellState): Use KWQRetainNSRelease so 23222 we can retain a pointer to an ObjC object in a C++ class. 23223 (WebCore::RenderThemeMac::setRadioCellState): Ditto. 23224 (WebCore::RenderThemeMac::setButtonCellState): Ditto. 23225 (WebCore::RenderThemeMac::setTextFieldCellState): Ditto. 23226 23227 * kwq/KWQResourceLoader.h: Remove unneeded forward declaration. 23228 23229 2006-02-09 Darin Adler <darin (a] apple.com> 23230 23231 Reviewed by Eric and Geoff. 23232 23233 - changed basic DOM mutation calls to assert that "this" 23234 is not floating, then added more uses of RefPtr to prevent the 23235 assertion from firing (at least during my testing and layout tests) 23236 23237 - removed use of PassRefPtr as the type of a local variable; after talking 23238 with Maciej and Eric, this type of use is now "deprecated" 23239 23240 * bindings/js/JSDOMCore.cpp: Touched this file to get things to build. 23241 23242 * bindings/objc/DOM.mm: 23243 (-[DOMRange extractContents]): 23244 (-[DOMRange cloneContents]): 23245 (-[DOMRange cloneRange]): 23246 * khtml/ecma/kjs_range.cpp: 23247 (KJS::DOMRange::getValueProperty): 23248 (KJS::DOMRangeProtoFunc::callAsFunction): 23249 * khtml/editing/Selection.cpp: 23250 (WebCore::Selection::toRange): 23251 * bridge/mac/WebCoreFrameBridge.mm: 23252 (-[WebCoreFrameBridge documentFragmentWithMarkupString:baseURLString:]): 23253 * dom/ContainerNodeImpl.cpp: 23254 (WebCore::ContainerNodeImpl::insertBefore): 23255 (WebCore::ContainerNodeImpl::replaceChild): 23256 (WebCore::ContainerNodeImpl::removeChild): 23257 (WebCore::ContainerNodeImpl::appendChild): 23258 * dom/DocPtr.h: Removed uses of NULL and unused deprecated functions. 23259 * dom/dom2_rangeimpl.h: 23260 * dom/dom2_rangeimpl.cpp: 23261 (WebCore::RangeImpl::RangeImpl): 23262 (WebCore::RangeImpl::startContainer): 23263 (WebCore::RangeImpl::endContainer): 23264 (WebCore::