~ubuntu-branches/ubuntu/raring/qtwebkit-source/raring-proposed

« back to all changes in this revision

Viewing changes to Source/WebCore/ChangeLog-2006-05-10

  • Committer: Package Import Robot
  • Author(s): Jonathan Riddell
  • Date: 2013-02-18 14:24:18 UTC
  • Revision ID: package-import@ubuntu.com-20130218142418-eon0jmjg3nj438uy
Tags: upstream-2.3
ImportĀ upstreamĀ versionĀ 2.3

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
2006-05-10  Matt Gough  <matt@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@apple.com>
 
1357
 
 
1358
        - fix the Windows build
 
1359
 
 
1360
        * platform/win/FontWin.cpp: (WebCore::getFontData):
 
1361
 
 
1362
2006-05-05  Darin Adler  <darin@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@apple.com>
 
2743
 
 
2744
        * WebCore.vcproj/WebCore/WebCore.vcproj: Fix break from last checkin.
 
2745
 
 
2746
2006-04-27  Geoffrey Garen  <ggaren@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@apple.com>
 
3526
 
 
3527
        * doc: Added.
 
3528
 
 
3529
2006-04-22  Maciej Stachowiak  <mjs@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@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@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@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@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@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@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@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@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@apple.com>
 
3730
 
 
3731
        - And again.
 
3732
 
 
3733
        * WebCore.vcproj/WebCore/WebCore.vcproj:
 
3734
 
 
3735
2006-04-21  Geoffrey Garen  <ggaren@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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 &nbsp 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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@apple.com>
 
8280
 
 
8281
        - fixed windows build
 
8282
 
 
8283
        * platform/win/TemporaryLinkStubs.cpp:
 
8284
        (Widget::unlockDrawingFocus):
 
8285
 
 
8286
2006-03-31  Eric Seidel  <eseidel@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@apple.com>
 
9860
 
 
9861
        Based on a patch by Michael Emmel <mike.emmel@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@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@apple.com>
 
9883
 
 
9884
        Based on a patch by Michael Emmel <mike.emmel@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@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@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@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@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@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@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@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@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@apple.com>
 
9992
 
 
9993
        * dom/Element.cpp: fix include case, fixing build.
 
9994
 
 
9995
2006-03-25  Mitz Pettel  <opendarwin.org@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@apple.com>
 
10521
 
 
10522
        Reviewed by Eric.
 
10523
        
 
10524
        * generate-derived-sources: Suppress warning.
 
10525
 
 
10526
2006-03-22  Maciej Stachowiak  <mjs@apple.com>
 
10527
 
 
10528
        * generate-derived-sources: Added svn:executable property.
 
10529
 
 
10530
2006-03-22  Maciej Stachowiak  <mjs@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@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@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@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@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@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@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@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@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@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@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@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@spsu.edu> <bjoern.graf@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@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@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@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@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@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@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@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@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@apple.com>
 
11114
 
 
11115
        * ksvg2/css/SVGCSSParser.h: Removed unused file.
 
11116
 
 
11117
2006-03-20  Eric Seidel  <eseidel@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@apple.com>
 
16787
 
 
16788
        * WebCore.xcodeproj/project.pbxproj: update GraphicsContext.cpp path to fix build
 
16789
 
 
16790
2006-03-01  Eric Seidel  <eseidel@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@apple.com>
 
18390
 
 
18391
        Reviewed by Eric.
 
18392
 
 
18393
        * platform/win/TemporaryLinkStubs.cpp: Added more stubs.
 
18394
 
 
18395
2006-02-27  Eric Seidel  <eseidel@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@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@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@apple.com>
 
18448
 
 
18449
        - use proper header for std::min.
 
18450
 
 
18451
        * platform/StreamingTextDecoder.cpp:
 
18452
 
 
18453
2006-02-27  Maciej Stachowiak  <mjs@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@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@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@apple.com>
 
18478
 
 
18479
        * css/csshelper.cpp: (WebCore::parseURL): Third time's the charm.
 
18480
 
 
18481
2006-02-27  Darin Adler  <darin@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@apple.com>
 
19155
 
 
19156
        * bridge/win/FrameWin.cpp: fix line endings
 
19157
 
 
19158
2006-02-24  Eric Seidel  <eseidel@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@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@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@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@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@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@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@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@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@apple.com>
 
19506
 
 
19507
        - fix build (header name changed)
 
19508
 
 
19509
        * platform/mac/KURLMac.mm:
 
19510
 
 
19511
2006-02-23  Maciej Stachowiak  <mjs@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@apple.com>
 
20487
 
 
20488
        Collaborated with Graham Dennis <Graham.Dennis@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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::RangeImpl::commonAncestorContainer):
 
23265
        (WebCore::RangeImpl::setStart):
 
23266
        (WebCore::RangeImpl::setEnd):
 
23267
        (WebCore::RangeImpl::collapse):
 
23268
        (WebCore::RangeImpl::compareBoundaryPoints):
 
23269
        (WebCore::RangeImpl::boundaryPointsValid):
 
23270
        (WebCore::RangeImpl::processContents):
 
23271
        (WebCore::RangeImpl::extractContents):
 
23272
        (WebCore::RangeImpl::cloneContents):
 
23273
        (WebCore::RangeImpl::insertNode):
 
23274
        (WebCore::RangeImpl::createContextualFragment):
 
23275
        (WebCore::RangeImpl::detach):
 
23276
        (WebCore::RangeImpl::cloneRange):
 
23277
        (WebCore::RangeImpl::selectNodeContents):
 
23278
        (WebCore::RangeImpl::surroundContents):
 
23279
        (WebCore::RangeImpl::containedByReadOnly):
 
23280
        (WebCore::RangeImpl::startPosition):
 
23281
        (WebCore::RangeImpl::endPosition):
 
23282
        (WebCore::RangeImpl::startNode):
 
23283
        (WebCore::RangeImpl::editingStartPosition):
 
23284
        (WebCore::rangeOfContents):
 
23285
        * dom/dom_elementimpl.h:
 
23286
        * dom/dom_elementimpl.cpp:
 
23287
        (WebCore::AttrImpl::AttrImpl):
 
23288
        (WebCore::AttrImpl::~AttrImpl):
 
23289
        (WebCore::AttrImpl::setValue):
 
23290
        (WebCore::AttrImpl::childTypeAllowed):
 
23291
        (WebCore::AttrImpl::childrenChanged):
 
23292
        (WebCore::ElementImpl::removeAttributeNode):
 
23293
        (WebCore::NamedAttrMapImpl::clearAttributes):
 
23294
        (WebCore::CSSMappedAttributeDeclarationImpl::~CSSMappedAttributeDeclarationImpl):
 
23295
        (WebCore::MappedAttributeImpl::clone):
 
23296
        * dom/DocumentFragmentImpl.cpp:
 
23297
        (DOM::DocumentFragmentImpl::cloneNode):
 
23298
        * dom/dom_xmlimpl.cpp:
 
23299
        (WebCore::EntityReferenceImpl::cloneNode):
 
23300
        (WebCore::ProcessingInstructionImpl::ProcessingInstructionImpl):
 
23301
        (WebCore::ProcessingInstructionImpl::checkStyleSheet):
 
23302
        (WebCore::ProcessingInstructionImpl::setStyleSheet):
 
23303
        * dom/dom_position.cpp:
 
23304
        * khtml/editing/break_blockquote_command.cpp:
 
23305
        (WebCore::BreakBlockquoteCommand::doApply):
 
23306
        * khtml/editing/composite_edit_command.cpp:
 
23307
        (WebCore::CompositeEditCommand::appendBlockPlaceholder):
 
23308
        (WebCore::CompositeEditCommand::insertBlockPlaceholder):
 
23309
        (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
 
23310
        (WebCore::createBlockPlaceholderElement):
 
23311
        * khtml/editing/delete_selection_command.cpp:
 
23312
        (WebCore::DeleteSelectionCommand::insertPlaceholderForAncestorBlockContent):
 
23313
        (WebCore::DeleteSelectionCommand::moveNodesAfterNode):
 
23314
        * khtml/editing/html_interchange.cpp:
 
23315
        * khtml/editing/htmlediting.cpp:
 
23316
        (WebCore::rebalanceWhitespaceInTextNode):
 
23317
        (WebCore::nonBreakingSpaceString):
 
23318
        (WebCore::createDefaultParagraphElement):
 
23319
        (WebCore::createBreakElement):
 
23320
        (WebCore::createTabSpanElement):
 
23321
        * khtml/editing/insert_line_break_command.cpp:
 
23322
        (khtml::InsertLineBreakCommand::doApply):
 
23323
        * khtml/editing/insert_paragraph_separator_command.cpp:
 
23324
        (WebCore::InsertParagraphSeparatorCommand::doApply):
 
23325
        * khtml/editing/insert_paragraph_separator_command.h:
 
23326
        * khtml/editing/insert_text_command.cpp:
 
23327
        (khtml::InsertTextCommand::insertTab):
 
23328
        * khtml/editing/markup.cpp:
 
23329
        (khtml::createFragmentFromMarkup):
 
23330
        (khtml::createParagraphContentsFromString):
 
23331
        (khtml::createFragmentFromText):
 
23332
        (khtml::createFragmentFromNodeList):
 
23333
        * khtml/editing/rebalance_whitespace_command.cpp:
 
23334
        * khtml/editing/replace_selection_command.cpp:
 
23335
        (WebCore::ReplacementFragment::ReplacementFragment):
 
23336
        (WebCore::ReplacementFragment::insertFragmentForTestRendering):
 
23337
        (WebCore::ReplaceSelectionCommand::doApply):
 
23338
        * khtml/editing/visible_text.cpp:
 
23339
        (khtml::CharacterIterator::range):
 
23340
        (khtml::findPlainText):
 
23341
        * khtml/html/HTMLElementImpl.cpp:
 
23342
        (WebCore::HTMLElementImpl::cloneNode):
 
23343
        * khtml/html/htmlparser.cpp:
 
23344
        (HTMLParser::handleResidualStyleCloseTagAcrossBlocks):
 
23345
        * ksvg2/svg/SVGTransformableImpl.cpp:
 
23346
        (SVGTransformableImpl::parseTransformAttribute):
 
23347
        * ksvg2/svg/SVGUseElementImpl.cpp:
 
23348
        (SVGUseElementImpl::closeRenderer):
 
23349
 
 
23350
2006-02-09  Alexander Kellett  <lypanov@kde.org>
 
23351
 
 
23352
        Reviewed and landed by Maciej. 
 
23353
        
 
23354
        Factor out common parts of Linear/Radial GradientQuartz 
 
23355
        up into KRenderingPaintServerGradientQuartz.
 
23356
 
 
23357
        Cleanup only, no layout tests needed or affected.
 
23358
 
 
23359
        * kcanvas/device/KRenderingPaintServer.h:
 
23360
        * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
 
23361
        (KRenderingPaintServerGradientQuartz::updateQuartzGradientCache):
 
23362
        (KRenderingPaintServerGradientQuartz::draw):
 
23363
        (KRenderingPaintServerGradientQuartz::setup):
 
23364
        (KRenderingPaintServerGradientQuartz::renderPath):
 
23365
        (KRenderingPaintServerGradientQuartz::teardown):
 
23366
        * kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
 
23367
        (KRenderingPaintServerLinearGradientQuartz::draw):
 
23368
        (KRenderingPaintServerLinearGradientQuartz::setup):
 
23369
        (KRenderingPaintServerLinearGradientQuartz::teardown):
 
23370
        (KRenderingPaintServerLinearGradientQuartz::renderPath):
 
23371
        (KRenderingPaintServerRadialGradientQuartz::draw):
 
23372
        (KRenderingPaintServerRadialGradientQuartz::setup):
 
23373
        (KRenderingPaintServerRadialGradientQuartz::teardown):
 
23374
        (KRenderingPaintServerRadialGradientQuartz::renderPath):
 
23375
 
 
23376
2006-02-09  Maciej Stachowiak  <mjs@apple.com>
 
23377
 
 
23378
        Reviewed by Hyatt.
 
23379
 
 
23380
        - various Frame cleanup:
 
23381
        
 
23382
        Make Frame-related classes Noncopyable.
 
23383
        Remove nearly all of Frame's friends.
 
23384
        Remove some unused stuff.
 
23385
        Remove unneeded class forward declarations from Frame.h
 
23386
 
 
23387
        * page/Frame.cpp:
 
23388
        * page/Frame.h:
 
23389
        * page/FrameTreeNode.h:
 
23390
        (WebCore::FrameTreeNode::FrameTreeNode):
 
23391
        (WebCore::FrameTreeNode::name):
 
23392
        (WebCore::FrameTreeNode::parent):
 
23393
        (WebCore::FrameTreeNode::setParent):
 
23394
        (WebCore::FrameTreeNode::nextSibling):
 
23395
        (WebCore::FrameTreeNode::previousSibling):
 
23396
        (WebCore::FrameTreeNode::firstChild):
 
23397
        (WebCore::FrameTreeNode::lastChild):
 
23398
        (WebCore::FrameTreeNode::childCount):
 
23399
        * page/FrameView.cpp:
 
23400
        (WebCore::FrameView::viewportMouseMoveEvent):
 
23401
        * page/Page.h:
 
23402
        (WebCore::Page::mainFrame):
 
23403
        * page/Plugin.h:
 
23404
        (WebCore::Plugin::Plugin):
 
23405
        (WebCore::Plugin::view):
 
23406
 
 
23407
2006-02-09  Dave Hyatt <hyatt@apple.com
 
23408
 
 
23409
        Minor image cleanup.  Move some variables that all the
 
23410
        image decoders have in common up into the base class.
 
23411
 
 
23412
        Stub out the boring parts of the JPEG decoder also, so that
 
23413
        the patch that does the decoding will be all meat. :)
 
23414
 
 
23415
        Reviewed by mjs
 
23416
 
 
23417
        * WebCore.vcproj/WebCore/WebCore.vcproj:
 
23418
        * platform/image-decoders/ImageDecoder.h:
 
23419
        (WebCore::ImageDecoder::m_failed):
 
23420
        (WebCore::ImageDecoder::size):
 
23421
        (WebCore::ImageDecoder::failed):
 
23422
        (WebCore::ImageDecoder::setFailed):
 
23423
        * platform/image-decoders/gif/GIFImageDecoder.cpp:
 
23424
        (WebCore::GIFImageDecoder::GIFImageDecoder):
 
23425
        (WebCore::GIFImageDecoder::~GIFImageDecoder):
 
23426
        (WebCore::GIFImageDecoder::setData):
 
23427
        (WebCore::GIFImageDecoder::isSizeAvailable):
 
23428
        (WebCore::GIFImageDecoder::repetitionCount):
 
23429
        (WebCore::GIFImageDecoder::frameBufferAtIndex):
 
23430
        (WebCore::GIFImageDecoder::decode):
 
23431
        (WebCore::GIFImageDecoder::decodingHalted):
 
23432
        (WebCore::GIFImageDecoder::haveDecodedRow):
 
23433
        (WebCore::GIFImageDecoder::gifComplete):
 
23434
        * platform/image-decoders/gif/GIFImageDecoder.h:
 
23435
        * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: Added.
 
23436
        (WebCore::JPEGImageReader::JPEGImageReader):
 
23437
        (WebCore::JPEGImageReader::~JPEGImageReader):
 
23438
        (WebCore::JPEGImageReader::close):
 
23439
        (WebCore::JPEGImageReader::decode):
 
23440
        (WebCore::JPEGImageDecoder::JPEGImageDecoder):
 
23441
        (WebCore::JPEGImageDecoder::~JPEGImageDecoder):
 
23442
        (WebCore::JPEGImageDecoder::setData):
 
23443
        (WebCore::JPEGImageDecoder::isSizeAvailable):
 
23444
        (WebCore::JPEGImageDecoder::frameBufferAtIndex):
 
23445
        (WebCore::JPEGImageDecoder::decode):
 
23446
        * platform/image-decoders/jpeg/JPEGImageDecoder.h:
 
23447
        * platform/image-decoders/png/PNGImageDecoder.cpp:
 
23448
        (WebCore::PNGImageDecoder::PNGImageDecoder):
 
23449
        * platform/image-decoders/png/PNGImageDecoder.h:
 
23450
 
 
23451
2006-02-09  Maciej Stachowiak  <mjs@apple.com>
 
23452
 
 
23453
        Rubber-stamped by Hyatt.
 
23454
        
 
23455
        - moved khtml/xml to dom
 
23456
 
 
23457
        * dom: moved from khtml/xml
 
23458
        * WebCore.xcodeproj/project.pbxproj: Updated for new file locations.
 
23459
        * WebCore+SVG/KDOMHeaders.h: Updated for new header locations.
 
23460
        * dom/dom2_rangeimpl.cpp: ditto
 
23461
        * dom/dom2_traversalimpl.cpp: ditto
 
23462
        * dom/dom_textimpl.cpp: ditto
 
23463
        * dom/dom_xmlimpl.cpp: ditto
 
23464
        * khtml/dom/dom2_events.cpp: ditto
 
23465
        * khtml/ecma/kjs_binding.cpp: ditto
 
23466
        * khtml/ecma/kjs_dom.cpp: ditto
 
23467
        * khtml/ecma/kjs_events.cpp: ditto
 
23468
        * khtml/ecma/kjs_html.cpp: ditto
 
23469
        * khtml/ecma/kjs_range.cpp: ditto
 
23470
        * khtml/ecma/kjs_views.cpp: ditto
 
23471
        * khtml/editing/Selection.cpp: ditto
 
23472
        * khtml/editing/SelectionController.cpp: ditto
 
23473
        * khtml/editing/delete_from_text_node_command.cpp: ditto
 
23474
        * khtml/editing/edit_command.cpp: ditto
 
23475
        * khtml/editing/insert_into_text_node_command.cpp: ditto
 
23476
        * khtml/editing/insert_line_break_command.cpp: ditto
 
23477
        * khtml/editing/insert_paragraph_separator_command.cpp: ditto
 
23478
        * khtml/editing/insert_text_command.cpp: ditto
 
23479
        * khtml/editing/join_text_nodes_command.cpp: ditto
 
23480
        * khtml/editing/markup.cpp: ditto
 
23481
        * khtml/editing/merge_identical_elements_command.cpp: ditto
 
23482
        * khtml/editing/rebalance_whitespace_command.cpp: ditto
 
23483
        * khtml/editing/remove_node_attribute_command.cpp: ditto
 
23484
        * khtml/editing/set_node_attribute_command.cpp: ditto
 
23485
        * khtml/editing/split_element_command.cpp: ditto
 
23486
        * khtml/editing/split_text_node_command.cpp: ditto
 
23487
        * khtml/editing/split_text_node_containing_element.cpp: ditto
 
23488
        * khtml/editing/visible_position.cpp: ditto
 
23489
        * khtml/editing/visible_position.h: ditto
 
23490
        * khtml/editing/visible_text.cpp: ditto
 
23491
        * khtml/editing/visible_text.h: ditto
 
23492
        * khtml/editing/visible_units.cpp: ditto
 
23493
        * khtml/editing/wrap_contents_in_dummy_span_command.cpp: ditto
 
23494
        * khtml/html/HTMLElementImpl.h: ditto
 
23495
        * khtml/html/html_documentimpl.cpp: ditto
 
23496
        * khtml/html/html_headimpl.cpp: ditto
 
23497
        * khtml/xbl/xbl_binding_manager.cpp: ditto
 
23498
        * khtml/xbl/xbl_tokenizer.cpp: ditto
 
23499
        * khtml/xbl/xbl_tokenizer.h: ditto
 
23500
        * ksvg2/svg/SVGAElementImpl.cpp: ditto
 
23501
        * rendering/InlineTextBox.cpp: ditto
 
23502
        * rendering/RenderContainer.cpp: ditto
 
23503
        * rendering/RenderText.h: ditto
 
23504
        * rendering/RenderTextField.cpp: ditto
 
23505
        * rendering/render_frames.cpp: ditto
 
23506
        * rendering/render_layer.cpp: ditto
 
23507
 
 
23508
2006-02-08  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
23509
 
 
23510
        Test: fast/block/positioning/window-height-change.html
 
23511
 
 
23512
        Reviewed by Hyatt.
 
23513
        
 
23514
        - fix http://bugs.webkit.org/show_bug.cgi?id=5813
 
23515
          positioned blocks don't update when resizing the window vertically
 
23516
 
 
23517
        * rendering/RenderBlock.cpp:
 
23518
        (WebCore::RenderBlock::layoutBlock): Always relayout positioned children of
 
23519
        the root, since their positions may depend on the viewport's height which
 
23520
        may have changed.
 
23521
        * rendering/render_flexbox.cpp:
 
23522
        (khtml::RenderFlexibleBox::layoutBlock): Ditto.
 
23523
 
 
23524
2006-02-08  Dave Hyatt <hyatt@apple.com>
 
23525
 
 
23526
        Add support for tiling of backgrounds using Cairo.
 
23527
 
 
23528
        Reviewed by darin
 
23529
 
 
23530
        * Image Viewer/ImageView.cpp:
 
23531
        * platform/cairo/ImageCairo.cpp:
 
23532
        (WebCore::Image::tileInRect):
 
23533
 
 
23534
2006-02-08  Boris Daljevic  <boris@backbase.com>
 
23535
 
 
23536
        Reviewed and tweaked by Darin.
 
23537
 
 
23538
        - fix http://bugs.webkit.org/show_bug.cgi?id=6648
 
23539
          Safari strips namespace prefix when using setAttribute(), but should treat it as part of name
 
23540
 
 
23541
        Test: fast/dom/Element/setAttribute-with-colon.html
 
23542
 
 
23543
        * khtml/xml/dom_elementimpl.h: (ElementImpl::setAttribute): Removed body
 
23544
        * khtml/xml/dom_elementimpl.cpp: (ElementImpl::setAttribute): Changed code so that
 
23545
        attribute is not parsed into prefix and local name.
 
23546
 
 
23547
2006-02-08  Justin Garcia  <justin.garcia@apple.com>
 
23548
 
 
23549
        Original patch by Graham Dennis, reviewed by me
 
23550
        Changes made by me, reviewed by thatcher
 
23551
 
 
23552
        <http://bugs.webkit.org/show_bug.cgi?id=3982>
 
23553
        webViewDidBeginEditing, webViewDidEndEditing notification methods not called on delegate
 
23554
 
 
23555
        * bridge/mac/MacFrame.h:
 
23556
        * bridge/mac/MacFrame.mm:
 
23557
        (WebCore::MacFrame::didBeginEditing):
 
23558
        (WebCore::MacFrame::didEndEditing):
 
23559
        * bridge/mac/WebCoreFrameBridge.h:
 
23560
        * khtml/xml/DocumentImpl.cpp:
 
23561
        (WebCore::DocumentImpl::didBeginEditing):
 
23562
        (WebCore::DocumentImpl::didEndEditing):
 
23563
        (WebCore::DocumentImpl::setFocusNode):
 
23564
        * khtml/xml/DocumentImpl.h:
 
23565
        * khtml/xml/dom_elementimpl.cpp:
 
23566
        (WebCore::ElementImpl::focus):
 
23567
        * page/Frame.h:
 
23568
        (WebCore::Frame::didBeginEditing):
 
23569
        (WebCore::Frame::didEndEditing):
 
23570
 
 
23571
2006-02-08  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
23572
 
 
23573
        Test: fast/block/positioning/relayout-on-position-change.html
 
23574
 
 
23575
        Reviewed by Hyatt.
 
23576
 
 
23577
        - fix http://bugs.webkit.org/show_bug.cgi?id=7095
 
23578
          Removing positioning from an element does not relayout properly
 
23579
 
 
23580
        * rendering/render_object.cpp:
 
23581
        (WebCore::RenderObject::setStyle): The second call to setNeedsLayoutAndMinMaxRecalc
 
23582
        did not mark containing blocks for relayout based on the new position value since
 
23583
        the object itself was already marked as needing layout. Changed the first call to
 
23584
        only mark the containing blocks (based on the old position value) and not the
 
23585
        object itself.
 
23586
 
 
23587
2006-02-08  Maciej Stachowiak  <mjs@apple.com>
 
23588
 
 
23589
        Reviewed by Eric.
 
23590
 
 
23591
        RenderPath refactoring:
 
23592
        
 
23593
        - Rename the files to RenderPath
 
23594
        - Push the portable code from KCanvasItemQuartz down to RenderPath
 
23595
        - Move most of the unportable code from KCanvasItemQuartz to KCanvasPathQuartz
 
23596
        
 
23597
        The only thing left in KCanvasItemQuartz is marker support. That should be factored to separate
 
23598
        iterating the path elements (KCanvasPathQuartz needs to provide that) and drawing the markers
 
23599
        (which should be done in portable code).
 
23600
 
 
23601
        * ForwardingHeaders/kcanvas/RenderPath.h: Removed.
 
23602
        * WebCore.xcodeproj/project.pbxproj:
 
23603
        * kcanvas/KCanvasItem.cpp: Removed.
 
23604
        * kcanvas/KCanvasItem.h: Removed.
 
23605
        * kcanvas/KCanvasPath.h:
 
23606
        * kcanvas/RenderPath.cpp: Added.
 
23607
        (RenderPath::mapAbsolutePointToLocal):
 
23608
        (RenderPath::fillContains):
 
23609
        (RenderPath::strokeContains):
 
23610
        (RenderPath::strokeBBox):
 
23611
        (RenderPath::relativeBBox):
 
23612
        (RenderPath::setPath):
 
23613
        (RenderPath::layout):
 
23614
        (RenderPath::getAbsoluteRepaintRect):
 
23615
        (RenderPath::requiresLayer):
 
23616
        (RenderPath::lineHeight):
 
23617
        (RenderPath::baselinePosition):
 
23618
        (RenderPath::paint):
 
23619
        (RenderPath::nodeAtPoint):
 
23620
        * kcanvas/RenderPath.h: Added.
 
23621
        * kcanvas/device/quartz/KCanvasItemQuartz.h:
 
23622
        * kcanvas/device/quartz/KCanvasItemQuartz.mm:
 
23623
        * kcanvas/device/quartz/KCanvasPathQuartz.h:
 
23624
        * kcanvas/device/quartz/KCanvasPathQuartz.mm:
 
23625
        (KCanvasPathQuartz::boundingBox):
 
23626
        (scratchContext):
 
23627
        (KCanvasPathQuartz::strokeBoundingBox):
 
23628
        (pathContainsPoint):
 
23629
        (KCanvasPathQuartz::containsPoint):
 
23630
        (KCanvasPathQuartz::strokeContainsPoint):
 
23631
        * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
 
23632
        (KRenderingDeviceQuartz::createItem):
 
23633
        * kcanvas/device/quartz/QuartzSupport.h:
 
23634
        * kcanvas/device/quartz/QuartzSupport.mm:
 
23635
        (applyStrokeStyleToContext):
 
23636
        * ksvg2/svg/SVGStyledElementImpl.cpp:
 
23637
        (SVGStyledElementImpl::updateCanvasItem):
 
23638
        (SVGStyledElementImpl::pushAttributeContext):
 
23639
        * ksvg2/svg/SVGStyledLocatableElementImpl.cpp:
 
23640
        * ksvg2/svg/SVGStyledTransformableElementImpl.cpp:
 
23641
        * kwq/KWQRenderTreeDebug.cpp:
 
23642
 
 
23643
2006-02-08  Adele Peterson  <adele@apple.com>
 
23644
 
 
23645
        Fix broken layout tests.
 
23646
 
 
23647
        * khtml/xml/NodeImpl.cpp:
 
23648
        (WebCore::NodeImpl::dispatchGenericEvent): iterator is null, so we have to reset it to the first node in the chain.
 
23649
 
 
23650
2006-02-08  Adele Peterson  <adele@apple.com>
 
23651
 
 
23652
        Reviewed by Maciej.
 
23653
 
 
23654
        - Fixed <rdar://problem/4325160> 
 
23655
          REGRESSION(416.12-420+): window events not stopped by stopPropagation (affects macnn forums)
 
23656
 
 
23657
        Tests:
 
23658
        * fast/events/window-events-bubble.html
 
23659
        * fast/events/window-events-bubble2.html
 
23660
        * fast/events/window-events-capture.html
 
23661
 
 
23662
        * khtml/xml/DocumentImpl.cpp:
 
23663
        (WebCore::DocumentImpl::handleWindowEvent): Added to send events directly to the window.  This code used to be in defaultEventHandler, but that wasn't sending them at the right time.
 
23664
        (WebCore::DocumentImpl::defaultEventHandler): Moved code to send window events to handleWindowEvent.
 
23665
        * khtml/xml/DocumentImpl.h: Added handleWindowEvent.
 
23666
        * khtml/xml/NodeImpl.cpp:
 
23667
        (WebCore::NodeImpl::dispatchGenericEvent): fire window events in capture and bubble phases.
 
23668
        (WebCore::NodeImpl::dispatchWindowEvent): call handleWindowEvent.
 
23669
 
 
23670
2006-02-08  Anders Carlsson  <andersca@mac.com>
 
23671
 
 
23672
        Rubber stamped by Maciej.
 
23673
 
 
23674
        Move JSCore.cpp to bindings/js/JSDOMCore.cpp and
 
23675
        rename JSEvents.cpp to JSDOMEvents.cpp
 
23676
        
 
23677
        * JSCore.cpp: Removed.
 
23678
        * WebCore.vcproj/WebCore/WebCore.vcproj:
 
23679
        * WebCore.xcodeproj/project.pbxproj:
 
23680
        * bindings/js/JSDOMCore.cpp: Added.
 
23681
        * bindings/js/JSDOMEvents.cpp: Added.
 
23682
        * bindings/js/JSEvents.cpp: Removed.
 
23683
 
 
23684
2006-02-08  Anders Carlsson  <andersca@mac.com>
 
23685
 
 
23686
        Reviewed by Maciej.
 
23687
 
 
23688
        - http://bugs.webkit.org/show_bug.cgi?id=7108
 
23689
        Autogenerate most of Element
 
23690
        
 
23691
        * JSCore.cpp:
 
23692
        Add JSElement.cpp.
 
23693
        
 
23694
        * bindings/scripts/CodeGeneratorJS.pm:
 
23695
        Handle a bunch of new types.
 
23696
        
 
23697
        * khtml/ecma/kjs_dom.cpp:
 
23698
        (KJS::DOMElement::getValueProperty):
 
23699
        (KJS::DOMElementProtoFunc::callAsFunction):
 
23700
        Remove code that is autogenerated now.
 
23701
        
 
23702
        (KJS::getDOMNode):
 
23703
        Create a JSElement instead of a DOMElement.
 
23704
        
 
23705
        (KJS::getDOMNodeList):
 
23706
        Take a PassRefPtr like some of the other get methods.
 
23707
        
 
23708
        * khtml/ecma/kjs_dom.h:        
 
23709
        (KJS::DOMElement::):
 
23710
        Remove the now unused enums.
 
23711
        
 
23712
        * khtml/ecma/kjs_html.cpp:
 
23713
        (KJS::):
 
23714
        (KJS::HTMLElement::HTMLElement):
 
23715
        (KJS::HTMLElement::getOwnPropertySlot):
 
23716
        (KJS::KJS::HTMLElement::toString):
 
23717
        (KJS::KJS::HTMLElement::put):
 
23718
        * khtml/ecma/kjs_html.h:
 
23719
        Have HTMLElement inherit from JSElement.
 
23720
 
 
23721
        * khtml/xml/Element.idl: Added.
 
23722
 
 
23723
2006-02-08  Dave Hyatt <hyatt@apple.com>
 
23724
 
 
23725
        Make the Cairo image surface only reflect the portion of
 
23726
        the image that has been decoded so far.   That way we don't
 
23727
        have to zero fill our RGBA32 buffers, and we avoid painting
 
23728
        the empty portion.
 
23729
 
 
23730
        Reviewed by timo
 
23731
 
 
23732
        * Viewer/ImageView.cpp:
 
23733
        * WebCore.vcproj/WebCore/WebCore.vcproj:
 
23734
        * platform/cairo/ImageSourceCairo.cpp:
 
23735
        (WebCore::createDecoder):
 
23736
        (WebCore::ImageSource::createFrameAtIndex):
 
23737
        * platform/image-decoders/ImageDecoder.h:
 
23738
        (WebCore::RGBA32Buffer::RGBA32Buffer):
 
23739
        (WebCore::RGBA32Buffer::height):
 
23740
        (WebCore::RGBA32Buffer::ensureHeight):
 
23741
        (WebCore::RGBA32Buffer::setStatus):
 
23742
        (WebCore::RGBA32Buffer::setDuration):
 
23743
        (WebCore::RGBA32Buffer::setIncludeInNextFrame):
 
23744
        * platform/image-decoders/gif/GIFImageDecoder.cpp:
 
23745
        (WebCore::GIFImageDecoder::haveDecodedRow):
 
23746
        (WebCore::GIFImageDecoder::frameComplete):
 
23747
        * platform/image-decoders/png/PNGImageDecoder.cpp:
 
23748
        (WebCore::PNGImageDecoder::rowAvailable):
 
23749
        (WebCore::PNGImageDecoder::pngComplete):
 
23750
 
 
23751
2006-02-08  Dave Hyatt <hyatt@apple.com>
 
23752
 
 
23753
        Implement support for PNGs on Win32.  Includes support for
 
23754
        interlacing and transparency.
 
23755
 
 
23756
        Also optimized the GIF loop that sets the RGBA values to
 
23757
        increment the pointer through the loop instead of doing multiplies
 
23758
        and adds from the base every time.
 
23759
 
 
23760
        Reviewed by mjs
 
23761
 
 
23762
        * platform/image-decoders/ImageDecoder.h:
 
23763
        (WebCore::RGBA32Buffer::setRGBA):
 
23764
        * platform/image-decoders/gif/GIFImageDecoder.cpp:
 
23765
        (WebCore::GIFImageDecoder::haveDecodedRow):
 
23766
        * platform/image-decoders/png/PNGImageDecoder.cpp:
 
23767
        (WebCore::PNGImageReader::PNGImageReader):
 
23768
        (WebCore::PNGImageReader::~PNGImageReader):
 
23769
        (WebCore::PNGImageReader::close):
 
23770
        (WebCore::PNGImageReader::decode):
 
23771
        (WebCore::PNGImageReader::decodingSizeOnly):
 
23772
        (WebCore::PNGImageReader::pngPtr):
 
23773
        (WebCore::PNGImageReader::infoPtr):
 
23774
        (WebCore::PNGImageReader::interlaceBuffer):
 
23775
        (WebCore::PNGImageReader::hasAlpha):
 
23776
        (WebCore::PNGImageReader::setReadOffset):
 
23777
        (WebCore::PNGImageReader::setHasAlpha):
 
23778
        (WebCore::PNGImageReader::createInterlaceBuffer):
 
23779
        (WebCore::PNGImageDecoder::PNGImageDecoder):
 
23780
        (WebCore::PNGImageDecoder::~PNGImageDecoder):
 
23781
        (WebCore::PNGImageDecoder::setData):
 
23782
        (WebCore::PNGImageDecoder::isSizeAvailable):
 
23783
        (WebCore::PNGImageDecoder::frameBufferAtIndex):
 
23784
        (WebCore::PNGImageDecoder::decode):
 
23785
        (WebCore::decodingFailed):
 
23786
        (WebCore::decodingWarning):
 
23787
        (WebCore::headerAvailable):
 
23788
        (WebCore::PNGImageDecoder::headerAvailable):
 
23789
        (WebCore::rowAvailable):
 
23790
        (WebCore::PNGImageDecoder::rowAvailable):
 
23791
        (WebCore::pngComplete):
 
23792
        (WebCore::PNGImageDecoder::pngComplete):
 
23793
        * platform/image-decoders/png/PNGImageDecoder.h:
 
23794
        (WebCore::PNGImageDecoder::setFailed):
 
23795
        (WebCore::PNGImageDecoder::reader):
 
23796
        (WebCore::PNGImageDecoder::decodingFailed):
 
23797
        * platform/image-decoders/png/mozpngconf.h:
 
23798
 
 
23799
2006-02-07  Maciej Stachowiak  <mjs@apple.com>
 
23800
 
 
23801
        Rubber stamped by Hyatt.
 
23802
 
 
23803
        - move kwq/KWQString.mm to platform/QString.cpp, split out nonportable parts, speculative
 
23804
        port of one remaining nonportable bit to windows.
 
23805
 
 
23806
        * ForwardingHeaders/qstring.h:
 
23807
        * WebCore+SVG/KDOMSettings.h:
 
23808
        * WebCore+SVG/kdom.h:
 
23809
        * WebCore.xcodeproj/project.pbxproj:
 
23810
        * css/cssparser.h:
 
23811
        * css/cssstyleselector.cpp:
 
23812
        * kcanvas/KCanvasResources.h:
 
23813
        * kcanvas/KCanvasTreeDebug.h:
 
23814
        * khtml/ecma/kjs_window.h:
 
23815
        * khtml/editing/html_interchange.cpp:
 
23816
        * khtml/editing/visible_position.h:
 
23817
        * khtml/editing/visible_text.h:
 
23818
        * khtml/editing/visible_units.cpp:
 
23819
        * khtml/html/FormDataList.h:
 
23820
        * khtml/html/html_objectimpl.cpp:
 
23821
        * khtml/html/htmltokenizer.h:
 
23822
        * khtml/misc/decoder.h:
 
23823
        * khtml/misc/formdata.h:
 
23824
        * khtml/xbl/xbl_protohandler.cpp:
 
23825
        * khtml/xml/dom_position.cpp:
 
23826
        * khtml/xsl/xslt_processorimpl.h:
 
23827
        * ksvg2/svg/SVGHelper.h:
 
23828
        * ksvg2/svg/SVGPreserveAspectRatioImpl.cpp:
 
23829
        * ksvg2/svg/SVGStyleElementImpl.cpp:
 
23830
        * ksvg2/svg/SVGURIReferenceImpl.h:
 
23831
        * ksvg2/svg/svgpathparser.cpp:
 
23832
        * kwq/KWQAccObjectCache.mm:
 
23833
        * kwq/KWQBuffer.h:
 
23834
        * kwq/KWQEvent.h:
 
23835
        * kwq/KWQFont.mm:
 
23836
        * kwq/KWQFontFamily.h:
 
23837
        * kwq/KWQFontMetrics.h:
 
23838
        * kwq/KWQKConfigBase.h:
 
23839
        * kwq/KWQKDebug.h:
 
23840
        * kwq/KWQKHTMLSettings.h:
 
23841
        * kwq/KWQKJobClasses.h:
 
23842
        * kwq/KWQKJobClasses.mm:
 
23843
        * kwq/KWQKLocale.mm:
 
23844
        * kwq/KWQKSSLKeyGen.mm:
 
23845
        * kwq/KWQKURL.h:
 
23846
        * kwq/KWQLineEdit.h:
 
23847
        * kwq/KWQRegExp.h:
 
23848
        * kwq/KWQRenderTreeDebug.h:
 
23849
        * kwq/KWQString.h: Removed.
 
23850
        * kwq/KWQString.mm: Removed.
 
23851
        * kwq/KWQStringList.h:
 
23852
        * kwq/KWQTextCodec.h:
 
23853
        * kwq/KWQTextStream.h:
 
23854
        * kwq/KWQTextUtilities.mm:
 
23855
        * kwq/WebCoreScriptDebugger.mm:
 
23856
        * loader/Cache.h:
 
23857
        * platform/Color.cpp:
 
23858
        * platform/Color.h:
 
23859
        * platform/QString.cpp: Added.
 
23860
        (allocateHandle):
 
23861
        (KWQStringData::KWQStringData):
 
23862
        (QString::QString):
 
23863
        (QString::insert):
 
23864
        (QString::detach):
 
23865
        (QString::remove):
 
23866
        (QString::setLength):
 
23867
        (QString::fill):
 
23868
        (initializeHandleNodeBlock):
 
23869
        (allocateNode):
 
23870
        (freeHandle):
 
23871
        * platform/QString.h: Added.
 
23872
        * platform/SegmentedString.h:
 
23873
        * platform/StringImpl.h:
 
23874
        * platform/mac/Image.mm:
 
23875
        * platform/mac/QString.mm: Added.
 
23876
        (QString::setBufferFromCFString):
 
23877
        (QString::fromCFString):
 
23878
        (QString::fromNSString):
 
23879
        (QString::getNSString):
 
23880
        (QString::utf8):
 
23881
        (QString::fromUtf8):
 
23882
        * rendering/bidi.h:
 
23883
        * rendering/break_lines.cpp:
 
23884
 
 
23885
2006-02-07  Maciej Stachowiak  <mjs@apple.com>
 
23886
 
 
23887
        Reviewed by Adele.
 
23888
 
 
23889
        - remove all remains of old-style frame tree, ChildFrame, ObjectContents and FrameList are all gone
 
23890
 
 
23891
        * WebCore.xcodeproj/project.pbxproj:
 
23892
        * bridge/BrowserExtension.h:
 
23893
        * bridge/mac/BrowserExtensionMac.h:
 
23894
        * bridge/mac/BrowserExtensionMac.mm:
 
23895
        (WebCore::BrowserExtensionMac::createNewWindow):
 
23896
        * khtml/ecma/kjs_window.cpp:
 
23897
        (KJS::createNewWindow):
 
23898
        (KJS::Window::indexGetter):
 
23899
        (KJS::Window::getOwnPropertySlot):
 
23900
        (KJS::WindowFunc::callAsFunction):
 
23901
        (KJS::FrameArray::getValueProperty):
 
23902
        (KJS::FrameArray::indexGetter):
 
23903
        (KJS::FrameArray::nameGetter):
 
23904
        (KJS::FrameArray::getOwnPropertySlot):
 
23905
        * kwq/KWQFrame.mm:
 
23906
        (QFrame::setFrameStyle):
 
23907
        * page/Frame.cpp:
 
23908
        (WebCore::Frame::Frame):
 
23909
        (WebCore::Frame::stopLoading):
 
23910
        (WebCore::Frame::clear):
 
23911
        (WebCore::Frame::stopAnimations):
 
23912
        (WebCore::Frame::checkCompleted):
 
23913
        (WebCore::Frame::checkEmitLoadEvent):
 
23914
        (WebCore::Frame::requestFrame):
 
23915
        (WebCore::Frame::requestObject):
 
23916
        (WebCore::Frame::loadSubframe):
 
23917
        (WebCore::Frame::findFrame):
 
23918
        (WebCore::Frame::frameExists):
 
23919
        (WebCore::Frame::setZoomFactor):
 
23920
        (WebCore::Frame::frameNames):
 
23921
        (WebCore::Frame::frames):
 
23922
        (WebCore::Frame::childFrameNamed):
 
23923
        (WebCore::Frame::slotPartRemoved):
 
23924
        (WebCore::Frame::connectChild):
 
23925
        (WebCore::Frame::disconnectChild):
 
23926
        (WebCore::Frame::canCachePage):
 
23927
        (WebCore::Frame::setPolicyBaseURL):
 
23928
        (WebCore::Frame::treeNode):
 
23929
        (WebCore::Frame::frameDetached):
 
23930
        * page/Frame.h:
 
23931
        * page/FramePrivate.h:
 
23932
        * page/FrameTreeNode.h:
 
23933
        (WebCore::FrameTreeNode::name):
 
23934
        (WebCore::FrameTreeNode::parent):
 
23935
        (WebCore::FrameTreeNode::nextSibling):
 
23936
        (WebCore::FrameTreeNode::previousSibling):
 
23937
        (WebCore::FrameTreeNode::firstChild):
 
23938
        (WebCore::FrameTreeNode::lastChild):
 
23939
        (WebCore::FrameTreeNode::childCount):
 
23940
        * page/ObjectContents.h: Removed.
 
23941
        * page/Plugin.h:
 
23942
        (WebCore::Plugin::view):
 
23943
 
 
23944
2006-02-07  Adele Peterson  <adele@apple.com>
 
23945
 
 
23946
        Reviewed by Maciej.
 
23947
 
 
23948
        - Fixed <rdar://problem/3727939> Safari strips \0 characters from HTML tags making them valid 
 
23949
 
 
23950
        Test: fast/encoding/decoder-allow-null-chars.html
 
23951
 
 
23952
        * kwq/KWQTextCodec.cpp:
 
23953
        (KWQTextDecoder::convertLatin1): Removed stripping of null characters
 
23954
        (unwanted): ditto.
 
23955
 
 
23956
2006-02-07  David Hyatt <hyatt@apple.com>
 
23957
 
 
23958
        Land the skeleton of a PNG decoder for Win32.
 
23959
 
 
23960
        Reviewed by Eric
 
23961
 
 
23962
        * WebCore.vcproj/WebCore/WebCore.vcproj:
 
23963
        * platform/cairo/ImageSourceCairo.cpp:
 
23964
        (WebCore::createDecoder):
 
23965
        * platform/image-decoders/png/PNGImageDecoder.cpp: Added.
 
23966
        (WebCore::PNGImageDecoderPrivate::PNGImageDecoderPrivate):
 
23967
        (WebCore::PNGImageDecoderPrivate::~PNGImageDecoderPrivate):
 
23968
        (WebCore::PNGImageDecoderPrivate::decode):
 
23969
        (WebCore::PNGImageDecoder::PNGImageDecoder):
 
23970
        (WebCore::PNGImageDecoder::~PNGImageDecoder):
 
23971
        (WebCore::PNGImageDecoder::setData):
 
23972
        (WebCore::PNGImageDecoder::isSizeAvailable):
 
23973
        (WebCore::PNGImageDecoder::size):
 
23974
        (WebCore::PNGImageDecoder::frameBufferAtIndex):
 
23975
        (WebCore::PNGImageDecoder::decode):
 
23976
        * platform/image-decoders/png/PNGImageDecoder.h: Added.
 
23977
 
 
23978
2006-02-07  Eric Seidel  <eseidel@apple.com>
 
23979
 
 
23980
        Reviewed by hyatt.
 
23981
 
 
23982
        Removed ImageSubset, making ImageViewer link directly to WebCore.
 
23983
 
 
23984
        * Viewer.vcproj:
 
23985
        * WebCore.vcproj/ImageSubset: Removed.
 
23986
        * WebCore.vcproj/ImageSubset/ImageSubset.vcproj: Removed.
 
23987
        * WebCore.vcproj/WebCore.sln:
 
23988
        * WebCore.vcproj/WebCore/WebCore.vcproj:
 
23989
 
 
23990
2006-02-07  Geoffrey Garen  <ggaren@apple.com>
 
23991
 
 
23992
        Reviewed by darin.
 
23993
 
 
23994
        - Fixed <rdar://problem/4425269> REGRESSION: wrong size pop-up when 
 
23995
        downloading attachment at webmail.mac.com (6882)
 
23996
 
 
23997
        The bug was that the feature string parser didn't always initialize the
 
23998
        *Set variables, so WebCore assumed a height was set when it wasn't,
 
23999
        and used a garbage height variable.
 
24000
 
 
24001
        While there, I fixed two other bugs: (1) The parser wasn't chewing up 
 
24002
        as many characters as I thought it was. (Chewing up extra characters 
 
24003
        is necessary to match Win IE.) (2) We considered \t and \f to be 
 
24004
        whitespace, but Win IE doesn't.
 
24005
 
 
24006
        * manual-tests/window-open-features-parsing.html: Added these cases,
 
24007
        fixed up comments.
 
24008
 
 
24009
        * bridge/BrowserExtension.h: Cleaned up declaration order a bit.
 
24010
        * khtml/ecma/kjs_window.cpp:
 
24011
        (KJS::isSeparator): New function, tells you if a character is a
 
24012
        separator
 
24013
        (KJS::parseWindowFeatures): Always initialize *Set to false. Drive
 
24014
        parsing based on invalid characters ('separators') rather than valid 
 
24015
        ones, to match Win IE.
 
24016
 
 
24017
2006-02-07  Alexey Proskuryakov  <ap@nypop.com>
 
24018
 
 
24019
        Reviewed by Timothy.
 
24020
 
 
24021
        Convert JavaScript objects to appropriate AppleScript types, instead of only strings
 
24022
        http://bugs.webkit.org/show_bug.cgi?id=7012
 
24023
 
 
24024
        Tests: fast/AppleScript/*
 
24025
 
 
24026
        * bridge/mac/WebCoreFrameBridge.h:
 
24027
        * bridge/mac/WebCoreFrameBridge.mm:
 
24028
        (aeDescFromJSValue):
 
24029
        (-[WebCoreFrameBridge aeDescByEvaluatingJavaScriptFromString:]):
 
24030
 
 
24031
2006-02-07  Dave Hyatt <hyatt@apple.com>
 
24032
 
 
24033
        Rename ImageDecoderPlugin to ImageDecoder.  Rename
 
24034
        GIFReader to GIFImageReder.  Rename GIFDecoderPlugin to
 
24035
        GIFImageDecoder.
 
24036
 
 
24037
        Reviewed by mjs
 
24038
 
 
24039
        * WebCore.vcproj/WebCore/WebCore.vcproj:
 
24040
        * platform/cairo/ImageSourceCairo.cpp:
 
24041
        (WebCore::createDecoder):
 
24042
        (WebCore::ImageSource::setData):
 
24043
        * platform/image-decoders/ImageDecoder.h: Added.
 
24044
        (WebCore::ImageDecoder::~ImageDecoder):
 
24045
        * platform/image-decoders/ImageDecoderPlugin.h: Removed.
 
24046
        * platform/image-decoders/gif/GIFDecoderPlugin.cpp: Removed.
 
24047
        * platform/image-decoders/gif/GIFDecoderPlugin.h: Removed.
 
24048
        * platform/image-decoders/gif/GIFImageDecoder.cpp: Added.
 
24049
        (WebCore::GIFImageDecoderPrivate::GIFImageDecoderPrivate):
 
24050
        (WebCore::GIFImageDecoderPrivate::~GIFImageDecoderPrivate):
 
24051
        (WebCore::GIFImageDecoderPrivate::decode):
 
24052
        (WebCore::GIFImageDecoder::GIFImageDecoder):
 
24053
        (WebCore::GIFImageDecoder::~GIFImageDecoder):
 
24054
        (WebCore::GIFImageDecoder::setData):
 
24055
        (WebCore::GIFImageDecoder::isSizeAvailable):
 
24056
        (WebCore::GIFImageDecoder::size):
 
24057
        (WebCore::GIFImageDecoder::frameCount):
 
24058
        (WebCore::GIFImageDecoder::repetitionCount):
 
24059
        (WebCore::GIFImageDecoder::frameBufferAtIndex):
 
24060
        (WebCore::GIFImageDecoder::decode):
 
24061
        (WebCore::GIFImageDecoder::sizeNowAvailable):
 
24062
        (WebCore::GIFImageDecoder::decodingHalted):
 
24063
        (WebCore::GIFImageDecoder::haveDecodedRow):
 
24064
        (WebCore::GIFImageDecoder::frameComplete):
 
24065
        (WebCore::GIFImageDecoder::gifComplete):
 
24066
        * platform/image-decoders/gif/GIFImageDecoder.h: Added.
 
24067
        * platform/image-decoders/gif/GIFImageReader.cpp: Added.
 
24068
        (GIFImageReader::output_row):
 
24069
        (GIFImageReader::do_lzw):
 
24070
        (GIFImageReader::read):
 
24071
        * platform/image-decoders/gif/GIFImageReader.h: Added.
 
24072
        (GIFImageReader::GIFImageReader):
 
24073
        (GIFImageReader::~GIFImageReader):
 
24074
        * platform/image-decoders/gif/GIFReader.cpp: Removed.
 
24075
        * platform/image-decoders/gif/GIFReader.h: Removed.
 
24076
 
 
24077
2006-02-07  David Hyatt  <hyatt@apple.com>
 
24078
 
 
24079
        Rename ImageDecoder to ImageSource.
 
24080
 
 
24081
        Reviewed by mjs
 
24082
 
 
24083
        * WebCore.xcodeproj/project.pbxproj:
 
24084
        * platform/Image.cpp:
 
24085
        (WebCore::Image::cacheFrame):
 
24086
        (WebCore::Image::size):
 
24087
        (WebCore::Image::setNativeData):
 
24088
        (WebCore::Image::frameCount):
 
24089
        (WebCore::Image::isSizeAvailable):
 
24090
        * platform/Image.h:
 
24091
        * platform/ImageDecoder.h: Removed.
 
24092
        * platform/ImageSource.h: Added.
 
24093
        * platform/cairo/ImageCairo.cpp:
 
24094
        (WebCore::Image::drawInRect):
 
24095
        * platform/cairo/ImageDecoderCairo.cpp: Removed.
 
24096
        * platform/cairo/ImageSourceCairo.cpp: Added.
 
24097
        (WebCore::createDecoderPlugin):
 
24098
        (WebCore::ImageSource::ImageSource):
 
24099
        (WebCore::ImageSource::~ImageSource):
 
24100
        (WebCore::ImageSource::initialized):
 
24101
        (WebCore::ImageSource::setData):
 
24102
        (WebCore::ImageSource::isSizeAvailable):
 
24103
        (WebCore::ImageSource::size):
 
24104
        (WebCore::ImageSource::repetitionCount):
 
24105
        (WebCore::ImageSource::frameCount):
 
24106
        (WebCore::ImageSource::createFrameAtIndex):
 
24107
        (WebCore::ImageSource::frameDurationAtIndex):
 
24108
        * platform/mac/Image.mm:
 
24109
        (WebCore::Image::drawInRect):
 
24110
        * platform/mac/ImageData.mm: Removed.
 
24111
        * platform/mac/ImageDecoder.cpp: Removed.
 
24112
        * platform/mac/ImageSource.cpp: Added.
 
24113
        (WebCore::ImageSource::ImageSource):
 
24114
        (WebCore::ImageSource::~ImageSource):
 
24115
        (WebCore::ImageSource::initialized):
 
24116
        (WebCore::ImageSource::setData):
 
24117
        (WebCore::ImageSource::isSizeAvailable):
 
24118
        (WebCore::ImageSource::size):
 
24119
        (WebCore::ImageSource::repetitionCount):
 
24120
        (WebCore::ImageSource::frameCount):
 
24121
        (WebCore::ImageSource::createFrameAtIndex):
 
24122
        (WebCore::ImageSource::frameDurationAtIndex):
 
24123
 
 
24124
2006-02-07  David Hyatt  <hyatt@apple.com>
 
24125
 
 
24126
        Combine ImageData and Image (the result ends up in Image).
 
24127
 
 
24128
        Reviewed by mjs
 
24129
 
 
24130
        * WebCore.xcodeproj/project.pbxproj:
 
24131
        * bindings/objc/DOM.mm:
 
24132
        (-[DOMElement _image]):
 
24133
        (-[DOMElement _imageTIFFRepresentation]):
 
24134
        * bridge/mac/MacFrame.mm:
 
24135
        (WebCore::MacFrame::fileWrapperForElement):
 
24136
        * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
 
24137
        (KCanvasFEImageQuartz::getCIFilter):
 
24138
        * khtml/ecma/kjs_html.cpp:
 
24139
        (KJS::KJS::Context2DFunction::callAsFunction):
 
24140
        (KJS::drawPattern):
 
24141
        (KJS::_rh):
 
24142
        (KJS::ImagePattern::createPattern):
 
24143
        * kwq/KWQClipboard.mm:
 
24144
        (WebCore::KWQClipboard::dragNSImage):
 
24145
        * kwq/KWQCursor.h:
 
24146
        * kwq/KWQCursor.mm:
 
24147
        (WebCore::createCustomCursor):
 
24148
        (WebCore::QCursor::QCursor):
 
24149
        * kwq/KWQPainter.h:
 
24150
        * kwq/KWQPainter.mm:
 
24151
        (WebCore::QPainter::drawImageAtPoint):
 
24152
        (WebCore::QPainter::drawImageInRect):
 
24153
        (WebCore::QPainter::drawImage):
 
24154
        (WebCore::QPainter::drawFloatImage):
 
24155
        (WebCore::QPainter::drawTiledImage):
 
24156
        (WebCore::QPainter::drawScaledAndTiledImage):
 
24157
        * loader/CachedImage.cpp:
 
24158
        (WebCore::CachedImage::image):
 
24159
        * loader/CachedImage.h:
 
24160
        * page/FrameView.cpp:
 
24161
        (WebCore::selectCursor):
 
24162
        * platform/Image.cpp:
 
24163
        (WebCore::Image::Image):
 
24164
        (WebCore::Image::~Image):
 
24165
        (WebCore::Image::invalidateData):
 
24166
        (WebCore::Image::cacheFrame):
 
24167
        (WebCore::Image::isNull):
 
24168
        (WebCore::Image::size):
 
24169
        (WebCore::Image::setData):
 
24170
        (WebCore::Image::setNativeData):
 
24171
        (WebCore::Image::frameCount):
 
24172
        (WebCore::Image::isSizeAvailable):
 
24173
        (WebCore::Image::frameAtIndex):
 
24174
        (WebCore::Image::frameDurationAtIndex):
 
24175
        (WebCore::Image::shouldAnimate):
 
24176
        (WebCore::Image::startAnimation):
 
24177
        (WebCore::Image::stopAnimation):
 
24178
        (WebCore::Image::resetAnimation):
 
24179
        (WebCore::Image::advanceAnimation):
 
24180
        (WebCore::Image::rect):
 
24181
        * platform/Image.h:
 
24182
        (KXMLCore::):
 
24183
        (WebCore::FrameData::m_duration):
 
24184
        (WebCore::FrameData::~FrameData):
 
24185
        (WebCore::Image::currentFrame):
 
24186
        (WebCore::Image::animationObserver):
 
24187
        (WebCore::Image::setIsPDF):
 
24188
        * platform/ImageData.cpp: Removed.
 
24189
        * platform/ImageData.h: Removed.
 
24190
        * platform/cairo/ImageCairo.cpp:
 
24191
        (WebCore::FrameData::clear):
 
24192
        (WebCore::Image::initNativeData):
 
24193
        (WebCore::Image::destroyNativeData):
 
24194
        (WebCore::Image::invalidateNativeData):
 
24195
        (WebCore::Image::drawInRect):
 
24196
        (WebCore::Image::tileInRect):
 
24197
        (WebCore::Image::scaleAndTileInRect):
 
24198
        * platform/mac/Image.mm:
 
24199
        (WebCore::FrameData::clear):
 
24200
        (WebCore::Image::initNativeData):
 
24201
        (WebCore::Image::destroyNativeData):
 
24202
        (WebCore::Image::invalidateNativeData):
 
24203
        (WebCore::Image::loadResource):
 
24204
        (WebCore::Image::supportsType):
 
24205
        (WebCore::Image::checkForSolidColor):
 
24206
        (WebCore::Image::getTIFFRepresentation):
 
24207
        (WebCore::Image::getNSImage):
 
24208
        (WebCore::Image::getCGImageRef):
 
24209
        (WebCore::Image::drawInRect):
 
24210
        (WebCore::drawPattern):
 
24211
        (WebCore::Image::tileInRect):
 
24212
        (WebCore::Image::scaleAndTileInRect):
 
24213
        * rendering/render_image.cpp:
 
24214
        (WebCore::RenderImage::imageChanged):
 
24215
        (WebCore::RenderImage::resetAnimation):
 
24216
        (WebCore::RenderImage::paint):
 
24217
        (WebCore::RenderImage::nullImage):
 
24218
        * rendering/render_image.h:
 
24219
        (WebCore::RenderImage::image):
 
24220
        * rendering/render_list.cpp:
 
24221
        (RenderListItem::getAbsoluteRepaintRect):
 
24222
        (RenderListMarker::paint):
 
24223
        (RenderListMarker::calcMinMaxWidth):
 
24224
        * rendering/render_object.cpp:
 
24225
        (WebCore::RenderObject::paintBorderImage):
 
24226
 
 
24227
2006-02-06  Maciej Stachowiak  <mjs@apple.com>
 
24228
 
 
24229
        Reviewed by Eric.
 
24230
 
 
24231
        - fixed "remove frame, renderer and completed flag from ChildFrame, make Frame track these"
 
24232
        http://bugs.webkit.org/show_bug.cgi?id=7125
 
24233
        
 
24234
        - fixed "onload event never called for iframe element with emtpy or about:blank src"
 
24235
        http://bugs.webkit.org/show_bug.cgi?id=3609
 
24236
        
 
24237
        * bridge/mac/MacFrame.h:
 
24238
        * bridge/mac/MacFrame.mm:
 
24239
        (WebCore::MacFrame::MacFrame): pass along renderer
 
24240
        (WebCore::MacFrame::nextKeyViewInFrameHierarchy): get owner element in newfangled way
 
24241
        * bridge/mac/WebCoreFrameBridge.h:
 
24242
        * bridge/mac/WebCoreFrameBridge.mm:
 
24243
        (-[WebCoreFrameBridge removeChild:]): don't mess with renderer
 
24244
        (-[WebCoreFrameBridge init]): call new designated initializer
 
24245
        (-[WebCoreFrameBridge initWithRenderer:]): new designated initializer
 
24246
        (-[WebCoreFrameBridge dealloc]): don't mess with renderer
 
24247
        (-[WebCoreFrameBridge finalize]): ditto
 
24248
        (-[WebCoreFrameBridge installInFrame:]): ditto
 
24249
        * page/Frame.cpp:
 
24250
        (WebCore::FrameList::find): get name from frame not ChildFrame
 
24251
        (WebCore::Frame::init): take renderer parameter
 
24252
        (WebCore::Frame::clear): clear m_plugins, not m_objects
 
24253
        (WebCore::Frame::childBegin): updated comment
 
24254
        (WebCore::Frame::stop): add check-completed for documentless case here
 
24255
        (WebCore::Frame::checkCompleted): don't track separate completed flag
 
24256
        in ChildFrame, use the sub Frame object's own
 
24257
        (WebCore::Frame::checkEmitLoadEvent): ditto
 
24258
        (WebCore::Frame::requestFrame): don't store renderer and name in ChildFrame,
 
24259
        instead pass them along
 
24260
        (WebCore::Frame::requestObject): ditto above
 
24261
        (WebCore::Frame::loadPlugin): expect renderer parameter
 
24262
        (WebCore::Frame::loadSubframe): expect renderer and name parameters
 
24263
        (WebCore::Frame::slotChildStarted): don't mess with ChildFrame
 
24264
        (WebCore::Frame::slotChildCompleted): ditto
 
24265
        (WebCore::Frame::childFrame): don't check m_objects
 
24266
        (WebCore::Frame::frameExists): fix spacing, remove obsolete check and comment
 
24267
        (WebCore::Frame::frameNames): get name from frame
 
24268
        (WebCore::Frame::ownerElement): simplify a lot since the Frame knows its owner
 
24269
        renderer now
 
24270
        (WebCore::Frame::ownerRenderer): added
 
24271
        (WebCore::Frame::canCachePage): check m_plugins not m_objects
 
24272
        * page/Frame.h:
 
24273
        * page/FramePrivate.h:
 
24274
        (WebCore::ChildFrame): Remove constructor, most fields.
 
24275
        (WebCore::FramePrivate::FramePrivate): Pass ownerRenderer
 
24276
        * rendering/render_frames.cpp:
 
24277
        (WebCore::RenderPartObject::updateWidget): Make sure to pass name attr
 
24278
        to requestObject.
 
24279
 
 
24280
2006-02-06  Adele Peterson  <adele@apple.com>
 
24281
 
 
24282
        Reviewed by Maciej.
 
24283
 
 
24284
        - fix http://bugs.webkit.org/show_bug.cgi?id=6944
 
24285
          REGRESSION: crash when loading page w/ <link> that has a DOMSubtreeModified event listener
 
24286
 
 
24287
        Test: fast/events/event-listener-on-link.html
 
24288
 
 
24289
        * khtml/xml/dom_elementimpl.h: Added createAttrImplIfNeeded, removed allocateImpl, 
 
24290
         changed AttrImpl contructor to remove createTextChild bool, added createTextChild method, 
 
24291
         changed getAttributeNode, getAttributeNodeNS, getNamedItem, getNamedItemNS, and item to return PassRefPtrs.
 
24292
        (DOM::ElementImpl::getAttributeNode):
 
24293
        * khtml/xml/dom_elementimpl.cpp:
 
24294
        (WebCore::AttributeImpl::createAttrImplIfNeeded): New method to replace allocateImpl.  
 
24295
         This will use a RefPtr for the AttrImpl, check for an existing AttrImpl, create one if there isn't one,
 
24296
         and will call the new createTextChild.
 
24297
        (WebCore::AttrImpl::AttrImpl):  Moved creation of text child to new createTextChild method.  
 
24298
         If done in the constructor, the ref count is still 0, and the act of appending the text node 
 
24299
         could cause the AttrImpl to be destroyed.
 
24300
        (WebCore::AttrImpl::createTextChild): Moved code from AttrImpl contructor.  
 
24301
         Also, I've added an assert to make sure that any callers of this have ref'd the AttrImpl.
 
24302
        (WebCore::AttrImpl::cloneNode): Used RefPtr instead of PassRefPtr, and then called release() on it before returning.
 
24303
        (WebCore::ElementImpl::cloneNode): ditto.
 
24304
        (WebCore::ElementImpl::getAttributeNodeNS): Changed return type to PassRefPtr.
 
24305
        (WebCore::NamedAttrMapImpl::getNamedItemNS): ditto.
 
24306
        (WebCore::NamedAttrMapImpl::getNamedItem): ditto. Changed use of allocateImpl to createAttrImplIfNeeded
 
24307
        (WebCore::NamedAttrMapImpl::setNamedItem): ditto.
 
24308
        (WebCore::NamedAttrMapImpl::removeNamedItem): ditto.
 
24309
        (WebCore::NamedAttrMapImpl::item): ditto.
 
24310
        * khtml/xml/DocumentImpl.cpp:
 
24311
        (WebCore::DocumentImpl::createAttributeNS): Changed return type to PassRefPtr and removed bool from AttrImpl contructor call.
 
24312
        * khtml/xml/DocumentImpl.h: Now returns a PassRefPtr for createAttribute and createAttributeNS. 
 
24313
        (WebCore::DocumentImpl::createAttribute):
 
24314
        * khtml/xml/NamedNodeMapImpl.h: Now returns a PassRefPtr for getNamedItem, getNamedItemNS, and item.
 
24315
        (WebCore::NamedNodeMapImpl::getNamedItem):
 
24316
        * bindings/objc/DOM.mm:
 
24317
        (-[DOMNamedNodeMap getNamedItem:]): Call get() since the methods discussed above now return PassRefPtrs.
 
24318
        (-[DOMNamedNodeMap item:]): ditto.
 
24319
        (-[DOMNamedNodeMap getNamedItemNS::]): ditto.
 
24320
        (-[DOMDocument createAttribute:]): ditto.
 
24321
        (-[DOMDocument createAttributeNS::]): ditto.
 
24322
        (-[DOMElement getAttributeNode:]): ditto.
 
24323
        (-[DOMElement getAttributeNodeNS::]): ditto.
 
24324
 
 
24325
2006-02-06  Maciej Stachowiak  <mjs@apple.com>
 
24326
 
 
24327
        Reviewed by Darin.
 
24328
        
 
24329
        - fixed 7094: onfocus/onblur on non-form-controls bubble
 
24330
        http://bugs.webkit.org/show_bug.cgi?id=7094
 
24331
 
 
24332
        * khtml/html/HTMLElementImpl.cpp:
 
24333
        (WebCore::HTMLElementImpl::parseMappedAttribute): connect onfocus/onblur to
 
24334
        focus/blur, not DOMFocusIn/DOMFocusOut
 
24335
 
 
24336
2006-02-06  Eric Seidel  <eseidel@apple.com>
 
24337
 
 
24338
        Add svn:ignore properties for visual studio internals.
 
24339
 
 
24340
2006-02-06  Dave Hyatt <hyatt@apple.com>
 
24341
 
 
24342
        Commit the image viewer test app, and all the Win32 project
 
24343
        changes to build both it and Cairo.
 
24344
 
 
24345
        Reviewed by eric
 
24346
 
 
24347
        * Viewer: Added.
 
24348
        * Viewer.aps: Added.
 
24349
        * Viewer.cpp: Added.
 
24350
        * Viewer.h: Added.
 
24351
        * Viewer.ico: Added.
 
24352
        * Viewer.rc: Added.
 
24353
        * Viewer.reg: Added.
 
24354
        * Viewer.vcproj: Added.
 
24355
        * Viewer/ImageDocument.cpp: Added.
 
24356
        * Viewer/ImageDocument.h: Added.
 
24357
        * Viewer/ImageMainFrame.cpp: Added.
 
24358
        * Viewer/ImageMainFrame.h: Added.
 
24359
        * Viewer/ImageView.cpp: Added.
 
24360
        * Viewer/ImageView.h: Added.
 
24361
        * Viewer/Resource.h: Added.
 
24362
        * Viewer/res: Added.
 
24363
        * Viewer/res/ImageViewer.rc2: Added.
 
24364
        * Viewer/res/Toolbar.bmp: Added.
 
24365
        * Viewer/stdafx.cpp: Added.
 
24366
        * Viewer/stdafx.h: Added.
 
24367
        * ViewerDoc.ico: Added.
 
24368
        * WebCore.vcproj/WebCore.sln:
 
24369
        * WebCore.vcproj/WebCore/WebCore.vcproj:
 
24370
 
 
24371
2006-02-06  Dave Hyatt <hyatt@apple.com>
 
24372
 
 
24373
        Reviewed by darin
 
24374
 
 
24375
        * khtml/html/html_imageimpl.h:
 
24376
        (WebCore::HTMLImageElementImpl::compositeOperator):
 
24377
        * loader/CachedImage.cpp:
 
24378
        * platform/Array.h:
 
24379
        * platform/FloatSize.h:
 
24380
        * platform/Image.cpp:
 
24381
        (WebCore::Image::Image):
 
24382
        (WebCore::Image::compositeOperatorFromString):
 
24383
        * platform/Image.h:
 
24384
        * platform/ImageData.cpp:
 
24385
        (WebCore::FrameData::clear):
 
24386
        (WebCore::ImageData::ImageData):
 
24387
        (WebCore::ImageData::frameAtIndex):
 
24388
        * platform/ImageData.h:
 
24389
        * platform/ImageDecoder.h:
 
24390
        * platform/Timer.h:
 
24391
        * platform/cairo/.cvsignore: Added.
 
24392
        * platform/cairo/ImageCairo.cpp: Added.
 
24393
        (WebCore::Image::loadResource):
 
24394
        (WebCore::Image::supportsType):
 
24395
        (WebCore::graphicsContext):
 
24396
        (WebCore::setCompositingOperation):
 
24397
        (WebCore::Image::drawInRect):
 
24398
        (WebCore::Image::tileInRect):
 
24399
        (WebCore::Image::scaleAndTileInRect):
 
24400
        * platform/cairo/ImageDecoderCairo.cpp: Added.
 
24401
        (WebCore::createDecoderPlugin):
 
24402
        (WebCore::ImageDecoder::ImageDecoder):
 
24403
        (WebCore::ImageDecoder::~ImageDecoder):
 
24404
        (WebCore::ImageDecoder::initialized):
 
24405
        (WebCore::ImageDecoder::setData):
 
24406
        (WebCore::ImageDecoder::isSizeAvailable):
 
24407
        (WebCore::ImageDecoder::size):
 
24408
        (WebCore::ImageDecoder::repetitionCount):
 
24409
        (WebCore::ImageDecoder::frameCount):
 
24410
        (WebCore::ImageDecoder::createFrameAtIndex):
 
24411
        (WebCore::ImageDecoder::frameDurationAtIndex):
 
24412
        (WebCore::RGBA32Buffer::setDuration):
 
24413
        (WebCore::RGBA32Buffer::setIncludeInNextFrame):
 
24414
        (WebCore::RGBA32Buffer::bytes):
 
24415
        (WebCore::RGBA32Buffer::status):
 
24416
        (WebCore::RGBA32Buffer::duration):
 
24417
        (WebCore::RGBA32Buffer::includeInNextFrame):
 
24418
        (WebCore::RGBA32Buffer::setRGBA):
 
24419
        (WebCore::ImageDecoderPlugin::~ImageDecoderPlugin):
 
24420
        (WebCore::ImageDecoderPlugin::setData):
 
24421
        (WebCore::ImageDecoderPlugin::frameCount):
 
24422
        (WebCore::ImageDecoderPlugin::repetitionCount):
 
24423
        * platform/image-decoders/gif: Added.
 
24424
        * platform/image-decoders/gif/GIFDecoderPlugin.cpp: Added.
 
24425
        (WebCore::GIFDecoderPluginPrivate::GIFDecoderPluginPrivate):
 
24426
        (WebCore::GIFDecoderPluginPrivate::~GIFDecoderPluginPrivate):
 
24427
        (WebCore::GIFDecoderPluginPrivate::decode):
 
24428
        (WebCore::GIFDecoderPluginPrivate::frameCount):
 
24429
        (WebCore::GIFDecoderPluginPrivate::repetitionCount):
 
24430
        (WebCore::GIFDecoderPluginPrivate::setReadOffset):
 
24431
        (WebCore::GIFDecoderPluginPrivate::isTransparent):
 
24432
        (WebCore::GIFDecoderPluginPrivate::getColorMap):
 
24433
        (WebCore::GIFDecoderPluginPrivate::frameXOffset):
 
24434
        (WebCore::GIFDecoderPluginPrivate::frameYOffset):
 
24435
        (WebCore::GIFDecoderPluginPrivate::transparentPixel):
 
24436
        (WebCore::GIFDecoderPluginPrivate::duration):
 
24437
        (WebCore::GIFDecoderPlugin::GIFDecoderPlugin):
 
24438
        (WebCore::GIFDecoderPlugin::~GIFDecoderPlugin):
 
24439
        (WebCore::GIFDecoderPlugin::setData):
 
24440
        (WebCore::GIFDecoderPlugin::isSizeAvailable):
 
24441
        (WebCore::GIFDecoderPlugin::size):
 
24442
        (WebCore::GIFDecoderPlugin::frameCount):
 
24443
        (WebCore::GIFDecoderPlugin::repetitionCount):
 
24444
        (WebCore::GIFDecoderPlugin::frameBufferAtIndex):
 
24445
        (WebCore::GIFDecoderPlugin::decode):
 
24446
        (WebCore::GIFDecoderPlugin::sizeNowAvailable):
 
24447
        (WebCore::GIFDecoderPlugin::decodingHalted):
 
24448
        (WebCore::GIFDecoderPlugin::haveDecodedRow):
 
24449
        (WebCore::GIFDecoderPlugin::frameComplete):
 
24450
        (WebCore::GIFDecoderPlugin::gifComplete):
 
24451
        * platform/image-decoders/gif/GIFDecoderPlugin.h: Added.
 
24452
        (WebCore::GIFDecoderPlugin::frameDurationAtIndex):
 
24453
        (WebCore::GIFDecoderPlugin::):
 
24454
        * platform/image-decoders/gif/GIFReader.cpp: Added.
 
24455
        (GIFReader::output_row):
 
24456
        (GIFReader::do_lzw):
 
24457
        (GIFReader::read):
 
24458
        * platform/image-decoders/gif/GIFReader.h: Added.
 
24459
        (GIFFrameReader::GIFFrameReader):
 
24460
        (GIFFrameReader::~GIFFrameReader):
 
24461
        (GIFReader::GIFReader):
 
24462
        (GIFReader::~GIFReader):
 
24463
        (GIFReader::close):
 
24464
        * platform/win/ImageDecoderPlugin.h: Added.
 
24465
        (WebCore::RGBA32Buffer::):
 
24466
        (WebCore::RGBA32Buffer::RGBA32Buffer):
 
24467
        (WebCore::RGBA32Buffer::setStatus):
 
24468
        (WebCore::RGBA32Buffer::setDuration):
 
24469
        (WebCore::RGBA32Buffer::setIncludeInNextFrame):
 
24470
        (WebCore::RGBA32Buffer::bytes):
 
24471
        (WebCore::RGBA32Buffer::status):
 
24472
        (WebCore::RGBA32Buffer::duration):
 
24473
        (WebCore::RGBA32Buffer::includeInNextFrame):
 
24474
        (WebCore::RGBA32Buffer::setRGBA):
 
24475
        (WebCore::ImageDecoderPlugin::ImageDecoderPlugin):
 
24476
        (WebCore::ImageDecoderPlugin::~ImageDecoderPlugin):
 
24477
        (WebCore::ImageDecoderPlugin::setData):
 
24478
        (WebCore::ImageDecoderPlugin::isSizeAvailable):
 
24479
        (WebCore::ImageDecoderPlugin::size):
 
24480
        (WebCore::ImageDecoderPlugin::frameCount):
 
24481
        (WebCore::ImageDecoderPlugin::repetitionCount):
 
24482
        (WebCore::ImageDecoderPlugin::frameBufferAtIndex):
 
24483
        * platform/win/TimerWin.cpp: Added.
 
24484
        (WebCore::timerFired):
 
24485
        (WebCore::TimerBase::TimerBase):
 
24486
        (WebCore::TimerBase::~TimerBase):
 
24487
        (WebCore::TimerBase::start):
 
24488
        (WebCore::TimerBase::startRepeating):
 
24489
        (WebCore::TimerBase::startOneShot):
 
24490
        (WebCore::TimerBase::stop):
 
24491
        (WebCore::TimerBase::isActive):
 
24492
        (WebCore::TimerBase::nextFireInterval):
 
24493
        (WebCore::TimerBase::repeatInterval):
 
24494
        (WebCore::TimerBase::fire):
 
24495
        (WebCore::isDeferringTimers):
 
24496
        (WebCore::setDeferringTimers):
 
24497
 
 
24498
2006-02-06  Vicki Murley  <vicki@apple.com>
 
24499
 
 
24500
        Reviewed by Darin and Eric.
 
24501
 
 
24502
        - fix <rdar://problem/4414918> REGRESSION: images dragged into contenteditable area
 
24503
        end up outside of editable area (6525)
 
24504
 
 
24505
        * bridge/mac/WebCoreFrameBridge.mm:
 
24506
        (-[WebCoreFrameBridge RenderObject::nodeInfoAtPoint:]): Moved code from
 
24507
        elementAtPoint to this new method.  This method takes a point and returns a NodeInfo
 
24508
        for the deepest node at that point.
 
24509
        (-[WebCoreFrameBridge elementAtPoint:]): Use new nodeInfoAtPoint method.
 
24510
        (-[WebCoreFrameBridge _visiblePositionForPoint:]): Ditto.
 
24511
 
 
24512
2006-02-04  Darin Adler  <darin@apple.com>
 
24513
 
 
24514
        Reviewed by Adele.
 
24515
 
 
24516
        - fix http://bugs.webkit.org/show_bug.cgi?id=7071
 
24517
          REGRESSION: Jumping to an anchor identifier makes page scroll horizontally
 
24518
 
 
24519
        Test: fast/overflow/scroll-vertical-not-horizontal.html
 
24520
 
 
24521
        * rendering/render_layer.cpp: (WebCore::RenderLayer::getRectToExpose):
 
24522
        Fixed rectangle intersections so that the X and Y dimensions are independent,
 
24523
        to fix the bug. Also restructured the function a bit so it's even easier to
 
24524
        read and understand.
 
24525
 
 
24526
2006-02-06  David Harrison  <harrison@apple.com>
 
24527
 
 
24528
        Suggested by Darin.
 
24529
        
 
24530
        * khtml/html/HTMLElementImpl.cpp:
 
24531
        (WebCore::HTMLElementImpl::createContextualFragment):
 
24532
        - make nextChild a RefPtr to survive possible DOM changes
 
24533
 
 
24534
2006-02-06  Beth Dakin  <bdakin@apple.com>
 
24535
 
 
24536
        Reviewed by John and Adele
 
24537
 
 
24538
        Fix for <rdar://problem/4323167> REGRESSION (TOT): Crash in 
 
24539
        RenderTable::colToEffCol entering text into text input field
 
24540
 
 
24541
        Some of the autofill code assumes that the form's label is in a 
 
24542
        table cell, but this is not necessarily the case. This fix checks 
 
24543
        that the renderer is actually a table cell before treating it as 
 
24544
        such. 
 
24545
 
 
24546
        * bridge/mac/MacFrame.mm:
 
24547
        (WebCore::MacFrame::searchForLabelsAboveCell): Check if the 
 
24548
        renderer is a table cell.
 
24549
 
 
24550
2006-02-06  Darin Adler  <darin@apple.com>
 
24551
 
 
24552
        Reviewed by John.
 
24553
 
 
24554
        - fix <rdar://problem/4432562> REGRESSION (TOT):
 
24555
          Safari's "stop loading" active, "view source" inactive after page load [7058]
 
24556
          http://bugs.webkit.org/show_bug.cgi?id=7058
 
24557
 
 
24558
        * page/Frame.h: Make redirectionTimerFired virtual.
 
24559
        * bridge/mac/MacFrame.h: Override redirectionTimerFired.
 
24560
        * bridge/mac/MacFrame.mm: (WebCore::MacFrame::redirectionTimerFired):
 
24561
        Send the redirectionTimerCancelled callback here, even though it has
 
24562
        fired rather than being cancelled.
 
24563
 
 
24564
        * manual-tests/redirect.html: Added.
 
24565
        * manual-tests/redirection-target.html: Added.
 
24566
 
 
24567
2006-02-06  David Harrison  <harrison@apple.com>
 
24568
 
 
24569
        Reviewed by John.
 
24570
        
 
24571
        Fix TOT regression where Mail.app replies were getting truncated.
 
24572
        Was caused by 1/26/2006 checkin for http://bugs.webkit.org/show_bug.cgi?id=6754
 
24573
 
 
24574
        No layout test because this code cannot be reached via JS operations.
 
24575
        
 
24576
        * khtml/html/HTMLElementImpl.cpp:
 
24577
        (WebCore::HTMLElementImpl::createContextualFragment):
 
24578
        - restore code that sampled nextSibling() before node is removed
 
24579
        - also, add asserts that the DOM mutation methods yield a 0 exception code, so problems
 
24580
          can be caught closer to the cause.
 
24581
 
 
24582
2006-02-05  Anders Carlsson  <andersca@mac.com>
 
24583
 
 
24584
        Reviewed by Maciej.
 
24585
 
 
24586
        - http://bugs.webkit.org/show_bug.cgi?id=7091
 
24587
        Autogenerate even more.
 
24588
 
 
24589
        * JSCore.cpp:
 
24590
        Add new generated files.
 
24591
        
 
24592
        * bindings/scripts/CodeGeneratorJS.pm:
 
24593
        Add "IsIndex" extended attribute for parameters. Any parameter that is "unsigned long" 
 
24594
        and has this attribute will be checked to make sure that it's not < 0. If it is, an index size error
 
24595
        exception will be thrown.
 
24596
        
 
24597
        * khtml/ecma/kjs_dom.cpp:
 
24598
        (KJS::toAttr):
 
24599
        Use JSAttr::info.
 
24600
        
 
24601
        (KJS::getDOMNode):
 
24602
        Use new constructors.
 
24603
        
 
24604
        * khtml/ecma/kjs_dom.h:
 
24605
        Remove classes that are generated now.
 
24606
        
 
24607
        * khtml/xml/Attr.idl: Added.
 
24608
        * khtml/xml/CharacterData.idl: Added.
 
24609
        * khtml/xml/Entity.idl: Added.
 
24610
        * khtml/xml/Notation.idl: Added.
 
24611
        * khtml/xml/ProcessingInstruction.idl: Added.
 
24612
        * khtml/xml/Text.idl: Added.
 
24613
 
 
24614
2006-02-05  Maciej Stachowiak  <mjs@apple.com>
 
24615
 
 
24616
        Reviewed by Darin.
 
24617
        
 
24618
        Re-landed the following with more fixes so it does not break tests:
 
24619
 
 
24620
        - various event cleanup, including fixing of the load event for iframes
 
24621
        http://bugs.webkit.org/show_bug.cgi?id=7079
 
24622
        
 
24623
        Specific changes:
 
24624
        
 
24625
        - don't bother to nil-check the document, a node can never have a null document now
 
24626
        - move temp event forgetting from dispatchEvent to dispatchGenericEvent
 
24627
        - pass event down using RefPtr::release() to avoid ref thrashing
 
24628
        - support default handlers even for non-bubbling events (only on
 
24629
          target node) and skip calling default event handler explicitly in
 
24630
          callers
 
24631
        - dispatch a whole separate load event to a frame document's containing frame
 
24632
        - don't let propagationStopped prevent this new event
 
24633
        - remove bogus security check for iframe onload
 
24634
        - dispatch window events on the document, not the body, and also for non-html
 
24635
        - set onload, onunload, onbeforeunload from frameset tags on the window object
 
24636
        - don't restrict load/unload events to HTML
 
24637
        - send default handler to the dispatch object as previously
 
24638
 
 
24639
        * bridge/mac/MacFrame.mm:
 
24640
        (WebCore::MacFrame::shouldClose):
 
24641
        * khtml/html/html_baseimpl.cpp:
 
24642
        (WebCore::HTMLFrameElementImpl::parseMappedAttribute):
 
24643
        (WebCore::HTMLFrameSetElementImpl::parseMappedAttribute):
 
24644
        * khtml/xml/DocumentImpl.cpp:
 
24645
        (WebCore::DocumentImpl::implicitClose):
 
24646
        * khtml/xml/NodeImpl.cpp:
 
24647
        (WebCore::NodeImpl::dispatchEvent):
 
24648
        (WebCore::NodeImpl::dispatchGenericEvent):
 
24649
        (WebCore::NodeImpl::dispatchWindowEvent):
 
24650
        * khtml/xml/NodeImpl.h:
 
24651
        * page/Frame.cpp:
 
24652
        (WebCore::Frame::stopLoading):
 
24653
        (WebCore::Frame::setWindowHasFocus):
 
24654
 
 
24655
2006-02-05  Darin Adler  <darin@apple.com>
 
24656
 
 
24657
        Reviewed by Geoff.
 
24658
 
 
24659
        - fix <rdar://problem/4197997> -[DOMHTMLSelectElement options] always returns an empty list
 
24660
 
 
24661
        * khtml/html/HTMLOptionsCollectionImpl.h: Changed to be a subclass of HTMLCollectionImpl.
 
24662
        * khtml/html/HTMLOptionsCollectionImpl.cpp: Added.
 
24663
 
 
24664
        * WebCore.vcproj/WebCore/WebCore.vcproj: Added new source file.
 
24665
        * WebCore.xcodeproj/project.pbxproj: Ditto.
 
24666
 
 
24667
        * bindings/objc/DOMHTML.mm:
 
24668
        (-[DOMHTMLOptionsCollection setLength:]): Handle possible exception. 
 
24669
        (-[DOMHTMLSelectElement options]): Add get() since this is now a PassRefPtr.
 
24670
 
 
24671
        * khtml/ecma/kjs_html.cpp:
 
24672
        (KJS::HTMLElement::selectIndexGetter): Call options() instead of optionsHTMLCollection().
 
24673
        (KJS::HTMLElement::selectGetter): Ditto.
 
24674
        (KJS::KJS::HTMLElement::put): Ditto.
 
24675
        (KJS::HTMLElement::selectSetter): Ditto.
 
24676
        (KJS::KJS::HTMLSelectCollection::put): Ditto.
 
24677
 
 
24678
        * khtml/html/HTMLSelectElementImpl.h: Tweaked formatting. Eliminated m_options.
 
24679
        Changed m_minwidth and m_size to int instead of short. Removed optionsHTMLCollection().
 
24680
        Changed options() to return a PassRefPtr.
 
24681
        * khtml/html/HTMLSelectElementImpl.cpp:
 
24682
        (WebCore::HTMLSelectElementImpl::~HTMLSelectElementImpl): Get rid of code to drop m_options.
 
24683
        (WebCore::HTMLSelectElementImpl::remove): Remove unnecesssary RefPtr use, since that's
 
24684
        handled fine by removeChild.
 
24685
        (WebCore::HTMLSelectElementImpl::options): Change to create a new HTMLOptionsCollectionImpl
 
24686
        each time, like other collection calls. Maybe we should change this eventually to use a
 
24687
        HashMap so we can pass out the same collection over and over again, or could have a pointer
 
24688
        stored in the select element that's managed by the collection itself.
 
24689
 
 
24690
2006-02-05  Darin Adler  <darin@apple.com>
 
24691
 
 
24692
        Reviewed by Maciej.
 
24693
 
 
24694
        - fix http://bugs.webkit.org/show_bug.cgi?id=6908
 
24695
          REGRESSION: Replacing existing <option> shuffles it to the end of the list
 
24696
 
 
24697
        Test: fast/forms/select-replace-option.html
 
24698
 
 
24699
        * khtml/ecma/kjs_html.cpp: (KJS::KJS::HTMLSelectCollection::put):
 
24700
        Use optionsHTMLCollection, because options isn't really implemented yet.
 
24701
 
 
24702
2006-02-05  Darin Adler  <darin@apple.com>
 
24703
 
 
24704
        Reviewed by Maciej.
 
24705
 
 
24706
        - fix http://bugs.webkit.org/show_bug.cgi?id=6941
 
24707
          Assertion failure in MacFrame::bridgeForWidget() on manual-tests/textfield-onblur.html
 
24708
 
 
24709
        * kwq/KWQTextField.mm: (-[KWQTextFieldController setHasFocus:]):
 
24710
        Add check for nil in case the blur event causes the KWQLineEdit to be
 
24711
        destroyed.
 
24712
 
 
24713
2006-02-05  Darin Adler  <darin@apple.com>
 
24714
 
 
24715
        Reviewed by Maciej.
 
24716
 
 
24717
        - fix http://bugs.webkit.org/show_bug.cgi?id=6962
 
24718
          REGRESSION: www.usa.phillips.com crashes due to <param> with no name
 
24719
 
 
24720
        Test: fast/replaced/object-param-no-name.html
 
24721
 
 
24722
        * rendering/render_frames.cpp: (WebCore::RenderPartObject::updateWidget):
 
24723
        Check for empty name, and skip processing the name/value of that <param> element.
 
24724
 
 
24725
2006-02-05  Darin Adler  <darin@apple.com>
 
24726
 
 
24727
        - rolled out Maciej's event cleanup patch, which is causing problems
 
24728
 
 
24729
        I believe he has a fix, and he'll re-land the patch with the fix later.
 
24730
 
 
24731
        Original fix was <http://bugs.webkit.org/show_bug.cgi?id=7079>.
 
24732
        Problems described in <http://bugs.webkit.org/show_bug.cgi?id=7084>.
 
24733
 
 
24734
2006-02-05  Darin Adler  <darin@apple.com>
 
24735
 
 
24736
        * ksvg2/css/KSVGCSSParser.cpp: Remove config.h, since this is included by another
 
24737
        .cpp file -- oops!
 
24738
 
 
24739
2006-02-05  Darin Adler  <darin@apple.com>
 
24740
 
 
24741
        Discussed with Anders (didn't get real review).
 
24742
 
 
24743
        - fix build
 
24744
 
 
24745
        * WebCore+SVG/SVGNamesWrapper.cpp: Touch file, not getting rebuilt even though
 
24746
        it includes config.h which changed.
 
24747
        * WebCore+SVG/XLinkNamesWrapper.cpp: Ditto.
 
24748
 
 
24749
        * ksvg2/css/KSVGCSSParser.cpp: Added include of config.h.
 
24750
        * platform/mac/ImageDecoder.cpp: Ditto.
 
24751
 
 
24752
        * WebCore.vcproj/WebCore/WebCore.vcproj: Removed IntPoint.cpp and IntSize.cpp.
 
24753
        * WebCore.xcodeproj/project.pbxproj: Ditto.
 
24754
        * platform/IntPoint.cpp: Removed. Was empty.
 
24755
        * platform/IntSize.cpp: Removed. Was empty.
 
24756
 
 
24757
2006-02-05  Darin Adler  <darin@apple.com>
 
24758
 
 
24759
        Reviewed by Maciej.
 
24760
 
 
24761
        - fix http://bugs.webkit.org/show_bug.cgi?id=7048
 
24762
          Reproducible crash when onscroll handler deletes the layer or its object
 
24763
 
 
24764
        Test: onscroll-layer-self-destruct.html
 
24765
 
 
24766
        * rendering/render_layer.cpp: (WebCore::RenderLayer::scrollToOffset):
 
24767
        Don't send the scroll event until after we've done everything else we
 
24768
        need to do.
 
24769
 
 
24770
2006-02-05  Darin Adler  <darin@apple.com>
 
24771
 
 
24772
        Rubber stamped by Maciej.
 
24773
 
 
24774
        - renamed DOMString and DOMStringImpl to String and StringImpl, and moved into platform
 
24775
 
 
24776
        * config.h: Put in transitional defines so old code can still refer to the classes
 
24777
        as DOMString and DOMStringImpl.
 
24778
 
 
24779
        * platform/AtomicString.cpp: Added.
 
24780
        * platform/AtomicString.h: Added.
 
24781
        * platform/AtomicStringImpl.h: Added.
 
24782
        * platform/PlatformString.h: Added.
 
24783
        * platform/String.cpp: Added.
 
24784
        * platform/StringImpl.cpp: Added.
 
24785
        * platform/StringImpl.h: Added.
 
24786
        Moved files here and renamed them. PlatformString.h would be named String.h except
 
24787
        that conflicts with <string.h> on non-case-sensitive file systems.
 
24788
 
 
24789
        * khtml/xml/dom_atomicstring.cpp: Removed.
 
24790
        * khtml/xml/dom_atomicstring.h: Removed.
 
24791
        * khtml/xml/dom_stringimpl.cpp: Removed.
 
24792
        * khtml/xml/dom_stringimpl.h: Removed.
 
24793
        * khtml/dom/dom_string.cpp: Removed.
 
24794
        * khtml/dom/dom_string.h: Removed.
 
24795
 
 
24796
        * WebCore.xcodeproj/project.pbxproj: Updated for file adds and removes.
 
24797
        * WebCore.vcproj/WebCore/WebCore.vcproj: Ditto.
 
24798
 
 
24799
        * WebCore+SVG/KDOMHeaders.h:
 
24800
        * WebCore+SVG/Namespace.h:
 
24801
        * WebCore+SVG/kdom.h:
 
24802
        * bindings/objc/DOM.mm:
 
24803
        * bindings/objc/DOMCSS.mm:
 
24804
        * bindings/objc/DOMHTML.mm:
 
24805
        * bindings/objc/DOMInternal.mm:
 
24806
        * bridge/BrowserExtension.h:
 
24807
        * css/css_base.h:
 
24808
        * css/css_computedstyle.cpp:
 
24809
        * css/css_grammar.y:
 
24810
        * css/css_ruleimpl.h:
 
24811
        * css/css_stylesheetimpl.cpp:
 
24812
        * css/css_stylesheetimpl.h:
 
24813
        * css/css_valueimpl.cpp:
 
24814
        * css/csshelper.cpp:
 
24815
        * css/csshelper.h:
 
24816
        * css/cssparser.h:
 
24817
        * css/cssstyleselector.h:
 
24818
        * kcanvas/KCanvasTreeDebug.cpp:
 
24819
        * khtml/dom/dom2_events.h:
 
24820
        * khtml/ecma/JSXMLHttpRequest.cpp:
 
24821
        * khtml/ecma/kjs_html.cpp:
 
24822
        * khtml/ecma/kjs_window.cpp:
 
24823
        * khtml/editing/SelectionController.cpp:
 
24824
        * khtml/editing/apply_style_command.cpp:
 
24825
        * khtml/editing/delete_from_text_node_command.h:
 
24826
        * khtml/editing/insert_into_text_node_command.h:
 
24827
        * khtml/editing/jsediting.h:
 
24828
        * khtml/editing/rebalance_whitespace_command.h:
 
24829
        * khtml/editing/remove_css_property_command.h:
 
24830
        * khtml/editing/typing_command.h:
 
24831
        * khtml/html/FormDataList.h:
 
24832
        * khtml/html/HTMLNameCollectionImpl.h:
 
24833
        * khtml/html/html_baseimpl.cpp:
 
24834
        * khtml/html/html_objectimpl.cpp:
 
24835
        * khtml/khtml_events.h:
 
24836
        * khtml/xbl/xbl_binding.h:
 
24837
        * khtml/xbl/xbl_protobinding.h:
 
24838
        * khtml/xbl/xbl_protohandler.h:
 
24839
        * khtml/xbl/xbl_protoimplementation.h:
 
24840
        * khtml/xml/DOMImplementationImpl.cpp:
 
24841
        * khtml/xml/EventNames.h:
 
24842
        * khtml/xml/NameNodeListImpl.h:
 
24843
        * khtml/xml/NamedNodeMapImpl.h:
 
24844
        * khtml/xml/NodeImpl.cpp:
 
24845
        * khtml/xml/NodeImpl.h:
 
24846
        * khtml/xml/dom2_eventsimpl.h:
 
24847
        * khtml/xml/dom_atomicstringlist.h:
 
24848
        * khtml/xml/dom_elementimpl.h:
 
24849
        * khtml/xml/dom_qname.h:
 
24850
        * khtml/xml/dom_xmlimpl.cpp:
 
24851
        * khtml/xml/xml_tokenizer.h:
 
24852
        * khtml/xsl/xsl_stylesheetimpl.cpp:
 
24853
        * khtml/xsl/xslt_processorimpl.h:
 
24854
        * ksvg2/misc/KCanvasRenderingStyle.cpp:
 
24855
        * ksvg2/svg/SVGAngleImpl.h:
 
24856
        * ksvg2/svg/SVGAnimateColorElementImpl.cpp:
 
24857
        * ksvg2/svg/SVGAnimatedStringImpl.h:
 
24858
        * ksvg2/svg/SVGAnimationElementImpl.cpp:
 
24859
        * ksvg2/svg/SVGColorImpl.h:
 
24860
        * ksvg2/svg/SVGDOMImplementationImpl.cpp:
 
24861
        * ksvg2/svg/SVGElementImpl.cpp:
 
24862
        * ksvg2/svg/SVGFitToViewBoxImpl.cpp:
 
24863
        * ksvg2/svg/SVGLangSpaceImpl.cpp:
 
24864
        * ksvg2/svg/SVGLangSpaceImpl.h:
 
24865
        * ksvg2/svg/SVGLengthImpl.h:
 
24866
        * ksvg2/svg/SVGMarkerElementImpl.cpp:
 
24867
        * ksvg2/svg/SVGPaintImpl.h:
 
24868
        * ksvg2/svg/SVGPathSegImpl.h:
 
24869
        * ksvg2/svg/SVGPreserveAspectRatioImpl.cpp:
 
24870
        * ksvg2/svg/SVGSVGElementImpl.cpp:
 
24871
        * ksvg2/svg/SVGScriptElementImpl.cpp:
 
24872
        * ksvg2/svg/SVGStringListImpl.h:
 
24873
        * ksvg2/svg/SVGStylableImpl.h:
 
24874
        * ksvg2/svg/SVGStyleElementImpl.cpp:
 
24875
        * ksvg2/svg/SVGStyledElementImpl.cpp:
 
24876
        * ksvg2/svg/SVGSymbolElementImpl.cpp:
 
24877
        * ksvg2/svg/SVGViewElementImpl.cpp:
 
24878
        * kwq/KWQAccObject.mm:
 
24879
        * kwq/KWQFontFamily.h:
 
24880
        * kwq/KWQFontFamily.mm:
 
24881
        * kwq/KWQKJobClasses.h:
 
24882
        * kwq/KWQKJobClasses.mm:
 
24883
        * loader/Cache.h:
 
24884
        * loader/CachedObject.h:
 
24885
        * loader/CachedXBLDocument.h:
 
24886
        * loader/CachedXSLStyleSheet.h:
 
24887
        * loader/DocLoader.h:
 
24888
        * page/Frame.cpp:
 
24889
        * page/FrameTreeNode.h:
 
24890
        * platform/SegmentedString.h:
 
24891
        * rendering/render_image.h:
 
24892
        * rendering/render_style.cpp:
 
24893
        * xml/xmlhttprequest.cpp:
 
24894
        Updated all includes to use new filenames.
 
24895
 
 
24896
2006-02-05  Maciej Stachowiak  <mjs@apple.com>
 
24897
 
 
24898
        Reviewed by Darin.
 
24899
 
 
24900
        - various event cleanup, including fixing of the load event for iframes
 
24901
        http://bugs.webkit.org/show_bug.cgi?id=7079
 
24902
        
 
24903
        Specific changes:
 
24904
        
 
24905
        - don't bother to nil-check the document, a node can never have a null document now
 
24906
        - move temp event forgetting from dispatchEvent to dispatchGenericEvent
 
24907
        - pass event down using RefPtr::release() to avoid ref thrashing
 
24908
        - support default handlers even for non-bubbling events (only on
 
24909
          target node) and skip calling default event handler explicitly in
 
24910
          callers
 
24911
        - dispatch a whole separate load event to a frame document's containing frame
 
24912
        - don't let propagationStopped prevent this new event
 
24913
        - remove bogus security check for iframe onload
 
24914
 
 
24915
        * bridge/mac/MacFrame.mm:
 
24916
        (WebCore::MacFrame::shouldClose):
 
24917
        * khtml/xml/NodeImpl.cpp:
 
24918
        (WebCore::NodeImpl::dispatchEvent):
 
24919
        (WebCore::NodeImpl::dispatchGenericEvent):
 
24920
        (WebCore::NodeImpl::dispatchWindowEvent):
 
24921
        * khtml/xml/NodeImpl.h:
 
24922
 
 
24923
2006-02-05  Maciej Stachowiak  <mjs@apple.com>
 
24924
 
 
24925
        Reviewed and landed by Anders.
 
24926
 
 
24927
        * bindings/objc/DOM.mm:
 
24928
        (-[DOMNode replaceChild::]):
 
24929
        (KJS::DOMNodeProtoFunc::callAsFunction):
 
24930
        Return correct child. Fixes test case failures introduced by the fix to
 
24931
        http://bugs.webkit.org/show_bug.cgi?id=7076
 
24932
        
 
24933
2006-02-05  David Kilzer  <ddkilzer@kilzer.net>
 
24934
 
 
24935
        Reviewed by Darin, landed by ap (with a tweak suggested by Darin).
 
24936
 
 
24937
        - Fixed --no-svg build on http://build.webkit.org/.
 
24938
 
 
24939
        * kwq/KWQPainter.mm: Include "FloatRect.h".
 
24940
 
 
24941
2006-02-04  Maciej Stachowiak  <mjs@apple.com>
 
24942
 
 
24943
        Reviewed by Darin.
 
24944
 
 
24945
        - Just return bool from DOM child mutation methods instead of the node
 
24946
        http://bugs.webkit.org/show_bug.cgi?id=7076
 
24947
 
 
24948
        * bindings/objc/DOM.mm:
 
24949
        (-[DOMNode insertBefore::]):
 
24950
        (-[DOMNode replaceChild::]):
 
24951
        (-[DOMNode removeChild:]):
 
24952
        (-[DOMNode appendChild:]):
 
24953
        * khtml/ecma/kjs_dom.cpp:
 
24954
        (KJS::DOMNodeProtoFunc::callAsFunction):
 
24955
        * khtml/html/HTMLOptGroupElementImpl.cpp:
 
24956
        (WebCore::HTMLOptGroupElementImpl::insertBefore):
 
24957
        (WebCore::HTMLOptGroupElementImpl::replaceChild):
 
24958
        (WebCore::HTMLOptGroupElementImpl::removeChild):
 
24959
        (WebCore::HTMLOptGroupElementImpl::appendChild):
 
24960
        * khtml/html/HTMLOptGroupElementImpl.h:
 
24961
        * khtml/html/HTMLSelectElementImpl.cpp:
 
24962
        (WebCore::HTMLSelectElementImpl::insertBefore):
 
24963
        (WebCore::HTMLSelectElementImpl::replaceChild):
 
24964
        (WebCore::HTMLSelectElementImpl::removeChild):
 
24965
        (WebCore::HTMLSelectElementImpl::appendChild):
 
24966
        * khtml/html/HTMLSelectElementImpl.h:
 
24967
        * khtml/html/HTMLTextAreaElementImpl.cpp:
 
24968
        (WebCore::HTMLTextAreaElementImpl::setDefaultValue):
 
24969
        * khtml/html/html_tableimpl.cpp:
 
24970
        (WebCore::HTMLTableElementImpl::createTFoot):
 
24971
        * khtml/xml/ContainerNodeImpl.cpp:
 
24972
        (WebCore::ContainerNodeImpl::insertBefore):
 
24973
        (WebCore::ContainerNodeImpl::replaceChild):
 
24974
        (WebCore::ContainerNodeImpl::removeChild):
 
24975
        (WebCore::ContainerNodeImpl::appendChild):
 
24976
        * khtml/xml/ContainerNodeImpl.h:
 
24977
        * khtml/xml/NodeImpl.cpp:
 
24978
        (WebCore::NodeImpl::insertBefore):
 
24979
        (WebCore::NodeImpl::replaceChild):
 
24980
        (WebCore::NodeImpl::removeChild):
 
24981
        (WebCore::NodeImpl::appendChild):
 
24982
        * khtml/xml/NodeImpl.h:
 
24983
        * khtml/xml/xml_tokenizer.cpp:
 
24984
        (WebCore::XMLTokenizer::insertErrorMessageBlock):
 
24985
 
 
24986
2006-02-04  Maciej Stachowiak  <mjs@apple.com>
 
24987
 
 
24988
        - reverted CSS media queries patch, as it causes random crashes on the
 
24989
        layout tests with a debug build.
 
24990
        
 
24991
        * WebCore.xcodeproj/project.pbxproj:
 
24992
        * css/css_grammar.y:
 
24993
        * css/css_mediaqueryeval.cpp: Removed.
 
24994
        * css/css_mediaqueryeval.h: Removed.
 
24995
        * css/css_mediaqueryimpl.cpp: Removed.
 
24996
        * css/css_mediaqueryimpl.h: Removed.
 
24997
        * css/css_stylesheetimpl.cpp:
 
24998
        (MediaListImpl::MediaListImpl):
 
24999
        (MediaListImpl::contains):
 
25000
        (MediaListImpl::deleteMedium):
 
25001
        (MediaListImpl::mediaText):
 
25002
        (MediaListImpl::setMediaText):
 
25003
        * css/css_stylesheetimpl.h:
 
25004
        (DOM::MediaListImpl::length):
 
25005
        (DOM::MediaListImpl::item):
 
25006
        (DOM::MediaListImpl::appendMedium):
 
25007
        * css/css_valueimpl.h:
 
25008
        * css/csshelper.h:
 
25009
        * css/cssmediafeatures.in: Removed.
 
25010
        * css/cssparser.cpp:
 
25011
        * css/cssparser.h:
 
25012
        * css/cssstyleselector.cpp:
 
25013
        (WebCore::CSSStyleSelector::CSSStyleSelector):
 
25014
        (WebCore::CSSStyleSelector::init):
 
25015
        (WebCore::CSSStyleSelector::~CSSStyleSelector):
 
25016
        (WebCore::CSSStyleSelector::loadDefaultStyle):
 
25017
        (WebCore::CSSStyleSelector::styleForElement):
 
25018
        (WebCore::CSSStyleSelector::styleRulesForElement):
 
25019
        (WebCore::CSSRuleSet::addRulesFromSheet):
 
25020
        (WebCore::CSSStyleSelector::getColorFromPrimitiveValue):
 
25021
        * css/cssstyleselector.h:
 
25022
        * css/makemediafeatures: Removed.
 
25023
        * css/maketokenizer:
 
25024
        * css/tokenizer.flex:
 
25025
        * khtml/html/html_headimpl.cpp:
 
25026
        (WebCore::HTMLLinkElementImpl::process):
 
25027
        (WebCore::HTMLLinkElementImpl::setStyleSheet):
 
25028
        (WebCore::HTMLStyleElementImpl::childrenChanged):
 
25029
        * platform/Screen.h:
 
25030
        * platform/mac/Screen.mm:
 
25031
 
 
25032
2006-02-04  Andrew Wellington  <proton@wiretapped.net>
 
25033
 
 
25034
        Reviewed and tweaked by Darin.
 
25035
 
 
25036
        - fixed regressions caused by fix for bug 5776 earlier today
 
25037
 
 
25038
        * rendering/render_list.h: Remove m_value from RenderListMarker, add it to RenderListItem.
 
25039
        A few other tweaks, including getting rid of "friend" relationship.
 
25040
        * rendering/render_list.cpp:
 
25041
        (RenderListItem::RenderListItem): Initialize m_value.
 
25042
        (RenderListItem::setStyle): Restore old behavior of making no marker for LNONE case.
 
25043
        (RenderListItem::calcValue): Work on m_value, not m_marker->m_value.
 
25044
        (RenderListItem::resetValue): Reset m_value, even if there's no marker.
 
25045
        (RenderListMarker::RenderListMarker): Remove code to set up m_value.
 
25046
        (RenderListMarker::calcMinMaxWidth): Get marker value from list item.
 
25047
 
 
25048
        * rendering/RenderContainer.cpp: (updateListMarkerNumbers): Call resetValue by its new name.
 
25049
 
 
25050
2006-02-04  Maciej Stachowiak  <mjs@apple.com>
 
25051
 
 
25052
        Reviewed by Hyatt.
 
25053
 
 
25054
        - change JavaScript collector statistics calls to use HashCountedSet instead
 
25055
        of CFSet; other misc cleanup
 
25056
        http://bugs.webkit.org/show_bug.cgi?id=7072
 
25057
 
 
25058
        * kwq/WebCoreJavaScript.h:
 
25059
        * kwq/WebCoreJavaScript.mm:
 
25060
        (+[WebCoreJavaScript protectedObjectCount]): Renamed from referencedObjectCounts
 
25061
        (+[WebCoreJavaScript rootObjectTypeCounts]): Renamed from rootObjectClasses,
 
25062
        changed from NSSet to NSCountedSet.
 
25063
 
 
25064
2006-02-04  Maciej Stachowiak  <mjs@apple.com>
 
25065
 
 
25066
        Reviewed by Darin.
 
25067
 
 
25068
        - refactor and simplify code using ChildFrame in preparation for removing it
 
25069
        http://bugs.webkit.org/show_bug.cgi?id=7065
 
25070
 
 
25071
        * WebCore.xcodeproj/project.pbxproj: reordered slightly.
 
25072
        * bridge/mac/MacFrame.h:
 
25073
        * bridge/mac/MacFrame.mm:
 
25074
        (WebCore::MacFrame::createFrame): Don't take isObject parameter, just check tag name
 
25075
        * khtml/html/HTMLFormElementImpl.cpp:
 
25076
        (WebCore::HTMLFormElementImpl::prepareSubmit): remove obsolete hasOnlyLocalReferences check
 
25077
        * khtml/html/html_baseimpl.cpp:
 
25078
        (WebCore::HTMLFrameElementImpl::isURLAllowed): remove obsolete hasOnlyLocalReferences check
 
25079
        * loader/DocLoader.cpp:
 
25080
        (khtml::DocLoader::requestImage): remove obsolete hasOnlyLocalReferences check
 
25081
        (khtml::DocLoader::requestStyleSheet): remove obsolete hasOnlyLocalReferences check
 
25082
        (khtml::DocLoader::requestScript): remove obsolete hasOnlyLocalReferences check
 
25083
        (khtml::DocLoader::requestXSLStyleSheet): remove obsolete hasOnlyLocalReferences check
 
25084
        * page/Frame.cpp:
 
25085
        (WebCore::Frame::requestFrame): refactored and simplified
 
25086
        (WebCore::Frame::requestObject): ditto
 
25087
        (WebCore::Frame::shouldUsePlugin): ditto
 
25088
        (WebCore::Frame::loadPlugin): ditto
 
25089
        (WebCore::Frame::loadSubframe): ditto
 
25090
        (WebCore::Frame::frameNames): remove obsolete m_bPreloaded check
 
25091
        (WebCore::Frame::frames): ditto
 
25092
        (WebCore::Frame::connectChild): check isFrame, not child type
 
25093
        (WebCore::Frame::disconnectChild): ditto
 
25094
        (WebCore::Frame::handleFallbackContent): greatly simplify using onwerElement
 
25095
        (WebCore::Frame::updateBaseURLForEmptyDocument): use ownerElement, notChildFrame
 
25096
        (WebCore::Frame::onlyLocalReferences): removed
 
25097
        (WebCore::Frame::setOnlyLocalReferences): removed
 
25098
        * page/Frame.h:
 
25099
        * page/FramePrivate.h:
 
25100
        (WebCore::ChildFrame::ChildFrame): remove most fields.
 
25101
        * rendering/render_frames.cpp:
 
25102
        (WebCore::RenderPartObject::updateWidget): Remove redundant setting of base URL for child document
 
25103
        of iframe, Frame itself takes care of this already
 
25104
 
 
25105
2006-02-03  Andrew Wellington  <proton@wiretapped.net>
 
25106
 
 
25107
        Reviewed and tweaked by Darin.
 
25108
        
 
25109
        - fix http://bugs.webkit.org/show_bug.cgi?id=5776
 
25110
          Generated numbers of ordered lists (OL) are not calculated right
 
25111
  
 
25112
        Uses the DOM tree to calculate previous nodes and nest correctly
 
25113
 
 
25114
        Tests:
 
25115
        * fast/lists/olstart.html
 
25116
        * fast/lists/ol-display-types.html
 
25117
 
 
25118
        * khtml/html/html_listimpl.cpp:
 
25119
        (DOM::HTMLLIElementImpl::attach): remove calculation of start node value
 
25120
        * rendering/render_list.cpp:
 
25121
        (RenderListItem::setStyle): set up an m_marker even if the style is to
 
25122
        not display the marker, to get the numbering right
 
25123
        (enclosingList): gets the list enclosing the given node
 
25124
        (previousListItemElement): gets the previous element in the list
 
25125
        (RenderListItem::calcListValue): calculate the value correctly
 
25126
 
 
25127
2006-02-03  Geoffrey Garen  <ggaren@apple.com>
 
25128
 
 
25129
        Reviewed by beth.
 
25130
 
 
25131
        - Fixed <rdar://problem/4394868> window.open fails to parse 
 
25132
        "width=200px"
 
25133
 
 
25134
        Cause: QString::toInt() is too aggressive; it parses letters as numbers.
 
25135
        The fix is to switch to DOMString. It's all the rage these days,
 
25136
        and its toInt() behavior matches what we want.
 
25137
 
 
25138
        * manual-tests/window-open-features-parsing.html: Added "px" case to
 
25139
        giant evil string.
 
25140
 
 
25141
        * khtml/ecma/kjs_window.cpp:
 
25142
        (KJS::setWindowFeature):
 
25143
        (KJS::parseWindowFeatures):
 
25144
        (KJS::WindowFunc::callAsFunction):
 
25145
 
 
25146
2006-02-03  Kimmo Kinnunen  <kimmo.t.kinnunen@nokia.com>
 
25147
 
 
25148
        Reviewed by Dave Hyatt and Tim H.
 
25149
 
 
25150
        Bug 4127: WebCore doesn't support Media Queries (CSS3 module)
 
25151
        http://bugs.webkit.org/show_bug.cgi?id=4127
 
25152
 
 
25153
        http://www.w3.org/TR/css3-mediaqueries/
 
25154
 
 
25155
        * WebCore.xcodeproj/project.pbxproj:
 
25156
        * css/css_grammar.y:
 
25157
        * css/css_mediaqueryeval.cpp: Added.
 
25158
        (MediaQueryEvaluator):
 
25159
        (MediaQueryEvaluator::~MediaQueryEvaluator):
 
25160
        (MediaQueryEvaluator::mediaTypeMatch):
 
25161
        (applyRestrictor):
 
25162
        (MediaQueryEvaluator::eval):
 
25163
        (parseAspectRatio):
 
25164
        * css/css_mediaqueryeval.h: Added.
 
25165
        * css/css_mediaqueryimpl.cpp: Added.
 
25166
        (MediaQueryExpImpl::MediaQueryExpImpl):
 
25167
        (MediaQueryExpImpl::~MediaQueryExpImpl):
 
25168
        (MediaQueryExpImpl::mediaFeature):
 
25169
        (MediaQueryExpImpl::value):
 
25170
        (MediaQueryImpl::MediaQueryImpl):
 
25171
        (MediaQueryImpl::~MediaQueryImpl):
 
25172
        (MediaQueryImpl::restrictor):
 
25173
        (MediaQueryImpl::expressions):
 
25174
        (MediaQueryImpl::mediaType):
 
25175
        (MediaQueryImpl::operator==):
 
25176
        * css/css_mediaqueryimpl.h: Added.
 
25177
        (DOM::MediaQueryExpImpl::operator==):
 
25178
        (DOM::MediaQueryExpListImpl::MediaQueryExpListImpl):
 
25179
        (DOM::MediaQueryExpListImpl::append):
 
25180
        (DOM::MediaQueryExpListImpl::list):
 
25181
        (DOM::MediaQueryImpl::):
 
25182
        * css/css_stylesheetimpl.cpp:
 
25183
        (MediaListImpl::MediaListImpl):
 
25184
        (MediaListImpl::deleteMedium):
 
25185
        (mediaQueryAsDOMString):
 
25186
        (MediaListImpl::mediaText):
 
25187
        (MediaListImpl::setMediaText):
 
25188
        (MediaListImpl::item):
 
25189
        (MediaListImpl::appendMedium):
 
25190
        (MediaListImpl::appendMediaQuery):
 
25191
        * css/css_stylesheetimpl.h:
 
25192
        (DOM::MediaListImpl::length):
 
25193
        (DOM::MediaListImpl::mediaQueries):
 
25194
        * css/css_valueimpl.h:
 
25195
        * css/csshelper.h:
 
25196
        * css/cssmediafeatures.in: Added.
 
25197
        * css/cssparser.cpp:
 
25198
        (CSSParser::parseMediaQuery):
 
25199
        * css/cssparser.h:
 
25200
        * css/cssstyleselector.cpp:
 
25201
        (WebCore::CSSStyleSelector::CSSStyleSelector):
 
25202
        (WebCore::CSSStyleSelector::init):
 
25203
        (WebCore::CSSStyleSelector::~CSSStyleSelector):
 
25204
        (WebCore::CSSStyleSelector::loadDefaultStyle):
 
25205
        (WebCore::CSSStyleSelector::styleForElement):
 
25206
        (WebCore::CSSStyleSelector::styleRulesForElement):
 
25207
        (WebCore::CSSRuleSet::addRulesFromSheet):
 
25208
        (WebCore::CSSStyleSelector::defaultStyleForRoot):
 
25209
        * css/cssstyleselector.h:
 
25210
        * css/makemediafeatures: Added.
 
25211
        * css/maketokenizer:
 
25212
        * css/tokenizer.flex:
 
25213
        * khtml/html/html_headimpl.cpp:
 
25214
        (WebCore::HTMLLinkElementImpl::process):
 
25215
        (WebCore::HTMLLinkElementImpl::setStyleSheet):
 
25216
        (WebCore::HTMLStyleElementImpl::childrenChanged):
 
25217
        * platform/Screen.h:
 
25218
        * platform/mac/Screen.mm:
 
25219
        (WebCore::screenDepthPerComponent):
 
25220
        (WebCore::screenIsMonochrome):
 
25221
 
 
25222
2006-02-03  Timothy Hatcher  <timothy@apple.com>
 
25223
 
 
25224
        Reviewed by Justin.
 
25225
 
 
25226
        Renamed configuration names to Debug, Release and Production.
 
25227
 
 
25228
        * WebCore.xcodeproj/project.pbxproj:
 
25229
 
 
25230
2006-02-03  Beth Dakin  <bdakin@apple.com>
 
25231
 
 
25232
        Reviewed by Hyatt.
 
25233
 
 
25234
        No test cases added because this is an unreproducible crash.
 
25235
 
 
25236
        This is a speculative fix for <rdar://problem/4048026> 
 
25237
        CrashTracer: [BOUNCE BACK] 1219 crashes in Safari at 
 
25238
        com.apple.WebCore: KHTMLParser::popOneBlock + 36
 
25239
 
 
25240
        It seems possible that current could be nil when this function is 
 
25241
        called, so the speculative fix is to add a nil check.
 
25242
 
 
25243
        * khtml/html/htmlparser.cpp:
 
25244
        (HTMLParser::popOneBlock): Added nil check.
 
25245
 
 
25246
2006-02-03  David Hyatt  <hyatt@apple.com>
 
25247
 
 
25248
        Refactoring of the image classes to make them even more
 
25249
        portable.
 
25250
 
 
25251
        Reviewed by mjs
 
25252
 
 
25253
        * WebCore.xcodeproj/project.pbxproj:
 
25254
        * platform/Image.cpp:
 
25255
        (WebCore::m_animationObserver):
 
25256
        (WebCore::Image::Image):
 
25257
        (WebCore::Image::~Image):
 
25258
        (WebCore::Image::resetAnimation):
 
25259
        (WebCore::Image::setData):
 
25260
        (WebCore::Image::isNull):
 
25261
        (WebCore::Image::size):
 
25262
        (WebCore::Image::rect):
 
25263
        (WebCore::Image::width):
 
25264
        (WebCore::Image::height):
 
25265
        (WebCore::):
 
25266
        (WebCore::Image::compositeOperatorFromString):
 
25267
        * platform/ImageData.cpp: Added.
 
25268
        (WebCore::FrameData::clear):
 
25269
        (WebCore::ImageData::ImageData):
 
25270
        (WebCore::ImageData::~ImageData):
 
25271
        (WebCore::ImageData::invalidateData):
 
25272
        (WebCore::ImageData::cacheFrame):
 
25273
        (WebCore::ImageData::isNull):
 
25274
        (WebCore::ImageData::size):
 
25275
        (WebCore::ImageData::setData):
 
25276
        (WebCore::ImageData::setNativeData):
 
25277
        (WebCore::ImageData::frameCount):
 
25278
        (WebCore::ImageData::isSizeAvailable):
 
25279
        (WebCore::ImageData::frameAtIndex):
 
25280
        (WebCore::ImageData::frameDurationAtIndex):
 
25281
        (WebCore::ImageData::shouldAnimate):
 
25282
        (WebCore::ImageData::startAnimation):
 
25283
        (WebCore::ImageData::stopAnimation):
 
25284
        (WebCore::ImageData::resetAnimation):
 
25285
        (WebCore::ImageData::advanceAnimation):
 
25286
        * platform/ImageData.h: Added.
 
25287
        (KXMLCore::):
 
25288
        (WebCore::FrameData::m_duration):
 
25289
        (WebCore::FrameData::~FrameData):
 
25290
        (WebCore::ImageData::setIsPDF):
 
25291
        (WebCore::ImageData::currentFrame):
 
25292
        * platform/ImageDecoder.h:
 
25293
        * platform/mac/Image.mm:
 
25294
        (WebCore::Image::loadResource):
 
25295
        (WebCore::Image::supportsType):
 
25296
        (WebCore::Image::getCGImageRef):
 
25297
        (WebCore::Image::getNSImage):
 
25298
        (WebCore::Image::getTIFFRepresentation):
 
25299
        (WebCore::graphicsContext):
 
25300
        (WebCore::setCompositingOperation):
 
25301
        (WebCore::fillSolidColorInRect):
 
25302
        (WebCore::Image::drawInRect):
 
25303
        (WebCore::drawPattern):
 
25304
        (WebCore::Image::tileInRect):
 
25305
        (WebCore::Image::scaleAndTileInRect):
 
25306
        * platform/mac/ImageData.mm: Added.
 
25307
        (WebCore::setCompositingOperation):
 
25308
        (WebCore::ImageData::invalidateAppleSpecificData):
 
25309
        (WebCore::ImageData::checkForSolidColor):
 
25310
        (WebCore::ImageData::getTIFFRepresentation):
 
25311
        (WebCore::ImageData::getNSImage):
 
25312
        * platform/mac/PDFDocumentImage.h: Added.
 
25313
        * platform/mac/PDFDocumentImage.mm: Added.
 
25314
        (WebCore::releasePDFDocumentData):
 
25315
        (WebCore::PDFDocumentImage::PDFDocumentImage):
 
25316
        (WebCore::PDFDocumentImage::~PDFDocumentImage):
 
25317
        (WebCore::PDFDocumentImage::documentRef):
 
25318
        (WebCore::PDFDocumentImage::mediaBox):
 
25319
        (WebCore::PDFDocumentImage::bounds):
 
25320
        (WebCore::PDFDocumentImage::adjustCTM):
 
25321
        (WebCore::PDFDocumentImage::setCurrentPage):
 
25322
        (WebCore::PDFDocumentImage::currentPage):
 
25323
        (WebCore::PDFDocumentImage::pageCount):
 
25324
        (WebCore::PDFDocumentImage::draw):
 
25325
 
 
25326
2006-02-03  David Hyatt  <hyatt@apple.com>
 
25327
 
 
25328
        Make a new class called ImageDecoder that wraps a CGImageSource.
 
25329
        This paves the way for ImageData to become portable as well.
 
25330
 
 
25331
        Reviewed by mjs
 
25332
 
 
25333
        * WebCore.xcodeproj/project.pbxproj:
 
25334
        * platform/ImageDecoder.h: Added.
 
25335
        * platform/mac/Image.mm:
 
25336
        (WebCore::ImageData::~ImageData):
 
25337
        (WebCore::ImageData::invalidateData):
 
25338
        (WebCore::ImageData::cacheFrame):
 
25339
        (WebCore::ImageData::size):
 
25340
        (WebCore::ImageData::setCFData):
 
25341
        (WebCore::ImageData::frameCount):
 
25342
        (WebCore::ImageData::isSizeAvailable):
 
25343
        (WebCore::ImageData::drawInRect):
 
25344
        * platform/mac/ImageDecoder.cpp: Added.
 
25345
        (WebCore::ImageDecoder::ImageDecoder):
 
25346
        (WebCore::ImageDecoder::~ImageDecoder):
 
25347
        (WebCore::imageSourceOptions):
 
25348
        (WebCore::ImageDecoder::initialized):
 
25349
        (WebCore::ImageDecoder::setData):
 
25350
        (WebCore::ImageDecoder::isSizeAvailable):
 
25351
        (WebCore::ImageDecoder::size):
 
25352
        (WebCore::ImageDecoder::repetitionCount):
 
25353
        (WebCore::ImageDecoder::frameCount):
 
25354
        (WebCore::ImageDecoder::createFrameAtIndex):
 
25355
        (WebCore::ImageDecoder::frameDurationAtIndex):
 
25356
 
 
25357
2006-02-02  David Hyatt  <hyatt@apple.com>
 
25358
 
 
25359
        Move ImageAnimationObserver into its own file.
 
25360
 
 
25361
        Reviewed by mjs
 
25362
 
 
25363
        * WebCore.xcodeproj/project.pbxproj:
 
25364
        * loader/CachedImage.h:
 
25365
        * platform/Image.h:
 
25366
        * platform/ImageAnimationObserver.h: Added.
 
25367
        (WebCore::ImageAnimationObserver::~ImageAnimationObserver):
 
25368
        * platform/mac/Image.mm:
 
25369
 
 
25370
2006-02-02  Maciej Stachowiak  <mjs@apple.com>
 
25371
 
 
25372
        Reviewed by Adele.
 
25373
 
 
25374
        - remove all use of the ChildFrame from outside Frame.cpp, in preparation for removing it
 
25375
 
 
25376
        * bridge/mac/MacFrame.h:
 
25377
        * bridge/mac/MacFrame.mm:
 
25378
        (WebCore::MacFrame::frameDetached): Factor out the ChildFrame manipulations into a base
 
25379
        class method.
 
25380
        (WebCore::MacFrame::objectContentType): factored out from createPart, calls the bridge to
 
25381
        determine contents for an Object tag.
 
25382
        (WebCore::MacFrame::createPlugin): factor out code from createPart that makes a Plugin.
 
25383
        (WebCore::MacFrame::createFrame): ditto for code that makes a Frame.
 
25384
        (WebCore::MacFrame::createEmptyDocument): factored out part into the superclass
 
25385
        * khtml/xml/DocumentImpl.cpp:
 
25386
        (WebCore::DocumentImpl::ownerElement): Call new ownerElement method on Frame
 
25387
        instead of mucking at Frame internals.
 
25388
        * page/Frame.cpp:
 
25389
        (WebCore::Frame::createPart): Moved here from MacFrame, but some of the guts were
 
25390
        factored out.
 
25391
        (WebCore::Frame::ownerElement): New method, logic moved from DocumentImpl.
 
25392
        (WebCore::Frame::frameDetached): New virtual method, the part of this that
 
25393
        pokes at ChildFrame structures.
 
25394
        (WebCore::Frame::updateBaseURLForEmptyDocument): Helper that looks at the ChildFrame
 
25395
        array for the benefit of createEmptyDocument.
 
25396
        * page/Frame.h:
 
25397
        * page/Page.h: Fix up modeline.
 
25398
        * page/Plugin.h: Added.
 
25399
        (WebCore::Plugin::Plugin): Moved here from MacFrame.mm, since it is now used by Frame.
 
25400
        (WebCore::Plugin::view): ditto
 
25401
 
 
25402
2006-02-02  David Hyatt  <hyatt@apple.com>
 
25403
 
 
25404
        Avoid extra copies of all the decoded image bytes.
 
25405
 
 
25406
        Reviewed by mjs
 
25407
 
 
25408
        * platform/mac/Image.mm:
 
25409
        (WebCore::ImageData::setData):
 
25410
 
 
25411
2006-02-02  Justin Garcia  <justin.garcia@apple.com>
 
25412
 
 
25413
        Reviewed by darin, harrison
 
25414
        
 
25415
        <http://bugs.webkit.org/show_bug.cgi?id=6586>
 
25416
        REGRESSION: visible_text.cpp assertion failure in Mail.app
 
25417
 
 
25418
        Calling range() on a WordIterator destroyed its RangeImpl, use
 
25419
        RefPtr instead of PassRefPtr.
 
25420
        Turned on continuous spell checking to test the fix, found
 
25421
        a crasher caused by invalid positions created in
 
25422
        previousBoundary.
 
25423
 
 
25424
        Added layout test:
 
25425
        * editing/selection/end-of-document.html
 
25426
 
 
25427
        * khtml/editing/visible_text.h:
 
25428
        * khtml/editing/visible_units.cpp:
 
25429
        (khtml::previousBoundary):
 
25430
 
 
25431
2006-02-02  David Hyatt  <hyatt@apple.com>
 
25432
 
 
25433
        Vectorize Image.  Optimize so that we no longer throw away
 
25434
        all CGImageRefs.  Now we just throw away the last frame.
 
25435
 
 
25436
        Reviewed by mjs
 
25437
 
 
25438
        * platform/mac/Image.mm:
 
25439
        (WebCore::FrameData::m_duration):
 
25440
        (WebCore::FrameData::~FrameData):
 
25441
        (WebCore::FrameData::clear):
 
25442
        (WebCore::ImageData::invalidateData):
 
25443
        (WebCore::ImageData::cacheFrame):
 
25444
        (WebCore::ImageData::frameAtIndex):
 
25445
        (WebCore::ImageData::frameDurationAtIndex):
 
25446
 
 
25447
2006-01-31  Geoffrey Garen  <ggaren@apple.com>
 
25448
 
 
25449
        Reviewed by mjs.
 
25450
 
 
25451
        Cleaned up some stuff I came across when working with JS enabled/
 
25452
        disabled code:
 
25453
 
 
25454
        (1) Renamed initScript to initScriptIfNeeded, because that's what it
 
25455
            does
 
25456
        (2) Removed dead or otherwise irrelevent code
 
25457
        (3) Fixed up comments
 
25458
        (4) Removed NULL checks for interpreter() since it never returns NULL,
 
25459
            replaced with single assert().
 
25460
 
 
25461
        No test case because there's no change in behavior.
 
25462
 
 
25463
        * khtml/ecma/kjs_proxy.cpp:
 
25464
        (WebCore::KJSProxyImpl::evaluate): 1
 
25465
        (WebCore::KJSProxyImpl::createHTMLEventHandler): 1
 
25466
        (WebCore::KJSProxyImpl::createSVGEventHandler): 1
 
25467
        (WebCore::KJSProxyImpl::interpreter): 4
 
25468
        (WebCore::KJSProxyImpl::initScriptIfNeeded): 1
 
25469
        * khtml/ecma/kjs_proxy.h: 1
 
25470
        * page/Frame.cpp:
 
25471
        (Frame::didOpenURL): 2, 3
 
25472
        (Frame::stopLoading): 2
 
25473
        (Frame::jScriptEnabled): 2
 
25474
        (Frame::jScript): changed method call to data member access to match
 
25475
                          style of rest of class
 
25476
        (Frame::javaEnabled): 2
 
25477
        (Frame::pluginsEnabled): 2
 
25478
        (Frame::begin): 3
 
25479
        (Frame::userGestureHint): 4
 
25480
        (Frame::pauseTimeouts): collapsed a line
 
25481
        (Frame::resumeTimeouts): ditto
 
25482
        (Frame::saveInterpreterBuiltins): 4
 
25483
        (Frame::restoreInterpreterBuiltins): 4
 
25484
        * page/Frame.h: 2
 
25485
        * page/FramePrivate.h: 2
 
25486
        (FramePrivate::FramePrivate): 2
 
25487
 
 
25488
2006-02-02  David Hyatt  <hyatt@apple.com>
 
25489
 
 
25490
        Fix for PLT performance regression.  Make sure that the document's load event timer
 
25491
        isn't started again if it's already active.
 
25492
 
 
25493
        Reviewed by mjs
 
25494
 
 
25495
        * khtml/xml/DocumentImpl.cpp:
 
25496
        (WebCore::DocumentImpl::dispatchImageLoadEventSoon):
 
25497
 
 
25498
2006-02-02  Darin Adler  <darin@apple.com>
 
25499
 
 
25500
        Reviewed by Maciej.
 
25501
 
 
25502
        - fix http://bugs.webkit.org/show_bug.cgi?id=7000
 
25503
          REGRESSION: Scrolling is triggering onunload in TOT
 
25504
 
 
25505
        Tests:
 
25506
        - fast/events/onunload-body-property.html
 
25507
        - fast/events/onunload-window-property.html
 
25508
 
 
25509
        * khtml/ecma/kjs_dom.cpp:
 
25510
        (KJS::DOMNode::getValueProperty): Change onunload case to use unloadEvent, not scrollEvent.
 
25511
        (KJS::DOMNode::putValueProperty): Ditto.
 
25512
        * khtml/ecma/kjs_window.cpp:
 
25513
        (KJS::Window::getValueProperty): Ditto.
 
25514
        (KJS::Window::putValueProperty): Ditto.
 
25515
 
 
25516
2006-02-02  Darin Adler  <darin@apple.com>
 
25517
 
 
25518
        Reviewed by Hyatt.
 
25519
 
 
25520
        - fix http://bugs.webkit.org/show_bug.cgi?id=6998
 
25521
          setTimeout(0) tight loop uses almost all CPU (need 10ms minimum for timeout?)
 
25522
 
 
25523
        * khtml/ecma/kjs_window.cpp: (KJS::WindowQObject::installTimeout): When converting
 
25524
        the timeout number from an integer ms to a double seconds, use a 10 ms minimum.
 
25525
 
 
25526
2006-02-02  Darin Adler  <darin@apple.com>
 
25527
 
 
25528
        - added a FIXME about an incorrect change made to FloatRect
 
25529
          to fix the Win32 compile
 
25530
 
 
25531
        * platform/FloatRect.cpp: (WebCore::enclosingIntRect): Added FIXME
 
25532
        because this should do a ceil operation, not a round operation.
 
25533
 
 
25534
2006-02-02  David Hyatt  <hyatt@apple.com>
 
25535
 
 
25536
       Fix for bug 6957, rewrite image rendering in C++ and move it to
 
25537
       WebCore.  Animation now stops lazily and just uses the CachedObject
 
25538
       notification system to push updates so that rects no longer need to
 
25539
       be cached (or sets of animating renderers in specific views).
 
25540
       
 
25541
       Reviewed by darin
 
25542
 
 
25543
        * WebCore.exp:
 
25544
        * bindings/objc/DOM.mm:
 
25545
        (-[DOMElement _image]):
 
25546
        (-[DOMElement _imageTIFFRepresentation]):
 
25547
        * bindings/objc/DOMPrivate.h:
 
25548
        * bridge/mac/MacFrame.mm:
 
25549
        (WebCore::MacFrame::khtmlMouseMoveEvent):
 
25550
        (WebCore::MacFrame::fileWrapperForElement):
 
25551
        * bridge/mac/WebCoreFrameBridge.h:
 
25552
        * bridge/mac/WebCoreFrameBridge.mm:
 
25553
        (-[WebCoreFrameBridge elementAtPoint:]):
 
25554
        * kcanvas/RenderSVGImage.cpp:
 
25555
        (RenderSVGImage::imageChanged):
 
25556
        * kcanvas/RenderSVGImage.h:
 
25557
        * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
 
25558
        (KCanvasFEImageQuartz::getCIFilter):
 
25559
        * khtml/ecma/kjs_html.cpp:
 
25560
        (KJS::drawPattern):
 
25561
        * kwq/KWQClipboard.h:
 
25562
        (WebCore::KWQClipboard::setDragHasStarted):
 
25563
        * kwq/KWQClipboard.mm:
 
25564
        (WebCore::KWQClipboard::dragNSImage):
 
25565
        * kwq/KWQCursor.mm:
 
25566
        (WebCore::createCustomCursor):
 
25567
        * kwq/KWQPainter.h:
 
25568
        (WebCore::QPainter::):
 
25569
        * kwq/KWQPainter.mm:
 
25570
        (WebCore::QPainter::drawFloatImage):
 
25571
        (WebCore::QPainter::drawTiledImage):
 
25572
        (WebCore::QPainter::drawScaledAndTiledImage):
 
25573
        * kwq/KWQScrollView.h:
 
25574
        * kwq/KWQScrollView.mm:
 
25575
        (QScrollView::inWindow):
 
25576
        * kwq/WebCoreImageRendererFactory.h:
 
25577
        * kwq/WebCoreImageRendererFactory.m:
 
25578
        * loader/CachedImage.cpp:
 
25579
        (WebCore::CachedImage::ref):
 
25580
        (WebCore::CachedImage::imageRect):
 
25581
        (WebCore::CachedImage::notifyObservers):
 
25582
        (WebCore::CachedImage::data):
 
25583
        (WebCore::CachedImage::error):
 
25584
        (WebCore::CachedImage::shouldStopAnimation):
 
25585
        (WebCore::CachedImage::animationAdvanced):
 
25586
        * loader/CachedImage.h:
 
25587
        (WebCore::CachedImage::canRender):
 
25588
        * loader/CachedObjectClient.h:
 
25589
        (WebCore::CachedObjectClient::imageChanged):
 
25590
        (WebCore::CachedObjectClient::willRenderImage):
 
25591
        * platform/Image.h:
 
25592
        (WebCore::ImageAnimationObserver::~ImageAnimationObserver):
 
25593
        (WebCore::Image::animationObserver):
 
25594
        (WebCore::Image::):
 
25595
        * platform/mac/Image.mm:
 
25596
        (WebCore::releasePDFDocumentData):
 
25597
        (WebCore::PDFDocumentImage::PDFDocumentImage):
 
25598
        (WebCore::PDFDocumentImage::~PDFDocumentImage):
 
25599
        (WebCore::PDFDocumentImage::documentRef):
 
25600
        (WebCore::PDFDocumentImage::mediaBox):
 
25601
        (WebCore::PDFDocumentImage::bounds):
 
25602
        (WebCore::PDFDocumentImage::adjustCTM):
 
25603
        (WebCore::PDFDocumentImage::setCurrentPage):
 
25604
        (WebCore::PDFDocumentImage::currentPage):
 
25605
        (WebCore::PDFDocumentImage::pageCount):
 
25606
        (WebCore::PDFDocumentImage::draw):
 
25607
        (WebCore::ImageData::setIsPDF):
 
25608
        (WebCore::ImageData::currentFrame):
 
25609
        (WebCore::m_PDFDoc):
 
25610
        (WebCore::ImageData::~ImageData):
 
25611
        (WebCore::ImageData::invalidateData):
 
25612
        (WebCore::ImageData::cacheFrame):
 
25613
        (WebCore::ImageData::checkForSolidColor):
 
25614
        (WebCore::ImageData::isNull):
 
25615
        (WebCore::ImageData::size):
 
25616
        (WebCore::ImageData::setData):
 
25617
        (WebCore::ImageData::setCFData):
 
25618
        (WebCore::ImageData::imageSourceOptions):
 
25619
        (WebCore::ImageData::frameCount):
 
25620
        (WebCore::ImageData::isSizeAvailable):
 
25621
        (WebCore::ImageData::frameAtIndex):
 
25622
        (WebCore::ImageData::getTIFFRepresentation):
 
25623
        (WebCore::ImageData::getNSImage):
 
25624
        (WebCore::ImageData::frameDurationAtIndex):
 
25625
        (WebCore::ImageData::shouldAnimate):
 
25626
        (WebCore::ImageData::startAnimation):
 
25627
        (WebCore::ImageData::stopAnimation):
 
25628
        (WebCore::ImageData::resetAnimation):
 
25629
        (WebCore::ImageData::advanceAnimation):
 
25630
        (WebCore::ImageData::setCompositingOperation):
 
25631
        (WebCore::ImageData::fillSolidColorInRect):
 
25632
        (WebCore::ImageData::drawInRect):
 
25633
        (WebCore::drawPattern):
 
25634
        (WebCore::):
 
25635
        (WebCore::ImageData::tileInRect):
 
25636
        (WebCore::ImageData::scaleAndTileInRect):
 
25637
        (WebCore::Image::loadResource):
 
25638
        (WebCore::Image::supportsType):
 
25639
        (WebCore::m_animationObserver):
 
25640
        (WebCore::Image::Image):
 
25641
        (WebCore::Image::~Image):
 
25642
        (WebCore::Image::getCGImageRef):
 
25643
        (WebCore::Image::getNSImage):
 
25644
        (WebCore::Image::getTIFFRepresentation):
 
25645
        (WebCore::Image::resetAnimation):
 
25646
        (WebCore::Image::setData):
 
25647
        (WebCore::Image::isNull):
 
25648
        (WebCore::Image::size):
 
25649
        (WebCore::Image::rect):
 
25650
        (WebCore::graphicsContext):
 
25651
        (WebCore::Image::drawInRect):
 
25652
        (WebCore::Image::tileInRect):
 
25653
        (WebCore::Image::scaleAndTileInRect):
 
25654
        * rendering/render_box.cpp:
 
25655
        (WebCore::RenderBox::paintBackgroundExtended):
 
25656
        * rendering/render_image.cpp:
 
25657
        (WebCore::RenderImage::setCachedImage):
 
25658
        (WebCore::RenderImage::imageChanged):
 
25659
        * rendering/render_image.h:
 
25660
        * rendering/render_line.cpp:
 
25661
        (WebCore::InlineFlowBox::paintBackground):
 
25662
        (WebCore::InlineFlowBox::paintBackgroundAndBorder):
 
25663
        * rendering/render_list.cpp:
 
25664
        (RenderListMarker::imageChanged):
 
25665
        * rendering/render_list.h:
 
25666
        * rendering/render_object.cpp:
 
25667
        (WebCore::RenderObject::mustRepaintBackgroundOrBorder):
 
25668
        (WebCore::RenderObject::paintBorderImage):
 
25669
        (WebCore::RenderObject::paintBorder):
 
25670
        (WebCore::RenderObject::imageChanged):
 
25671
        (WebCore::RenderObject::willRenderImage):
 
25672
        * rendering/render_object.h:
 
25673
 
 
25674
2006-02-02  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
25675
 
 
25676
        Test: fast/block/positioning/height-change.html
 
25677
 
 
25678
        Reviewed by Hyatt.
 
25679
 
 
25680
        - fix http://bugs.webkit.org/show_bug.cgi?id=6881
 
25681
          Block with position:absolute bottom:0 doesn't always move when height
 
25682
          of containing block changes (affects Safari RSS)
 
25683
 
 
25684
        * rendering/RenderBlock.cpp:
 
25685
        (WebCore::RenderBlock::layoutBlock): Relayout positioned children if the
 
25686
        block's height changed during layout.
 
25687
        * rendering/render_flexbox.cpp:
 
25688
        (WebCore::RenderFlexibleBox::layoutBlock): Ditto.
 
25689
 
 
25690
2006-02-02  Maciej Stachowiak  <mjs@apple.com>
 
25691
 
 
25692
        Reviewed by Darin.
 
25693
 
 
25694
        - Move name and parent from Frame to FrameTreeNode
 
25695
        http://bugs.webkit.org/show_bug.cgi?id=6994
 
25696
 
 
25697
        * bridge/mac/BrowserExtensionMac.mm:
 
25698
        (WebCore::BrowserExtensionMac::createNewWindow):
 
25699
        * bridge/mac/MacFrame.h:
 
25700
        * bridge/mac/MacFrame.mm:
 
25701
        (WebCore::MacFrame::generateFrameName):
 
25702
        (WebCore::MacFrame::submitForm):
 
25703
        (WebCore::Frame::frameDetached):
 
25704
        (WebCore::MacFrame::nextKeyViewInFrameHierarchy):
 
25705
        (WebCore::MacFrame::createEmptyDocument):
 
25706
        * bridge/mac/WebCoreFrameBridge.mm:
 
25707
        (-[WebCoreFrameBridge setParent:]):
 
25708
        (-[WebCoreFrameBridge parent]):
 
25709
        (-[WebCoreFrameBridge setName:]):
 
25710
        (-[WebCoreFrameBridge name]):
 
25711
        * khtml/ecma/kjs_window.cpp:
 
25712
        (KJS::Window::getValueProperty):
 
25713
        (KJS::Window::put):
 
25714
        (KJS::Window::isSafeScript):
 
25715
        (KJS::WindowFunc::callAsFunction):
 
25716
        * khtml/html/html_baseimpl.cpp:
 
25717
        (WebCore::HTMLFrameElementImpl::isURLAllowed):
 
25718
        * khtml/html/html_headimpl.cpp:
 
25719
        (WebCore::HTMLLinkElementImpl::process):
 
25720
        * khtml/xml/DocumentImpl.cpp:
 
25721
        (WebCore::DocumentImpl::ownerElement):
 
25722
        (WebCore::DocumentImpl::parentDocument):
 
25723
        * page/Frame.cpp:
 
25724
        (WebCore::Frame::checkCompleted):
 
25725
        (WebCore::Frame::redirectionTimerFired):
 
25726
        (WebCore::Frame::requestFrameName):
 
25727
        (WebCore::Frame::slotChildCompleted):
 
25728
        (WebCore::Frame::incrementFrameCount):
 
25729
        (WebCore::Frame::decrementFrameCount):
 
25730
        (WebCore::Frame::topLevelFrameCount):
 
25731
        (WebCore::Frame::selectFrameElementInParentIfFullySelected):
 
25732
        (WebCore::Frame::handleFallbackContent):
 
25733
        (WebCore::Frame::userGestureHint):
 
25734
        (WebCore::Frame::canCachePage):
 
25735
        (WebCore::Frame::updatePolicyBaseURL):
 
25736
        * page/Frame.h:
 
25737
        * page/FramePrivate.h:
 
25738
        (WebCore::FramePrivate::FramePrivate):
 
25739
        * page/FrameTreeNode.cpp:
 
25740
        (WebCore::FrameTreeNode::setName):
 
25741
        (WebCore::FrameTreeNode::appendChild):
 
25742
        (WebCore::FrameTreeNode::removeChild):
 
25743
        * page/FrameTreeNode.h:
 
25744
        (WebCore::FrameTreeNode::FrameTreeNode):
 
25745
        (WebCore::FrameTreeNode::name):
 
25746
        (WebCore::FrameTreeNode::parent):
 
25747
        (WebCore::FrameTreeNode::setParent):
 
25748
        * rendering/render_frames.cpp:
 
25749
        (WebCore::isURLAllowed):
 
25750
 
 
25751
2006-02-01  Darin Adler  <darin@apple.com>
 
25752
 
 
25753
        Checking in without review because I *just* broke this with my last check-in.
 
25754
 
 
25755
        - fix http://bugs.webkit.org/show_bug.cgi?id=7018
 
25756
          REGRESSION: clearTimeout no longer works
 
25757
 
 
25758
        Test: fast/dom/Window/clear-timeout.html
 
25759
 
 
25760
        * khtml/ecma/kjs_window.cpp: (WindowQObject::clearTimeout): Fixed a
 
25761
        != that should have been a ==.
 
25762
 
 
25763
2006-02-01  Darin Adler  <darin@apple.com>
 
25764
 
 
25765
        Reviewed by Hyatt.
 
25766
 
 
25767
        - use Timer for everything, kill timer features of QObject, QTimer, QTimerEvent
 
25768
 
 
25769
        * ForwardingHeaders/kxmlcore/Noncopyable.h: Added.
 
25770
        * ForwardingHeaders/kxmlcore/OwnArrayPtr.h: Added.
 
25771
        * ForwardingHeaders/kxmlcore/OwnPtr.h: Added.
 
25772
        * ForwardingHeaders/qtimer.h: Removed.
 
25773
        * kwq/KWQTimer.cpp: Removed.
 
25774
        * kwq/KWQTimer.h: Removed.
 
25775
 
 
25776
        * kwq/KWQObject.h:
 
25777
        * kwq/KWQObject.cpp: Remove timer-related features.
 
25778
 
 
25779
        * kwq/KWQEvent.h: Remove QTimerEvent.
 
25780
 
 
25781
        * WebCore.xcodeproj/project.pbxproj: Updated for file changes.
 
25782
        * WebCore.vcproj/WebCore/WebCore.vcproj: Ditto.
 
25783
 
 
25784
        * platform/Timer.h: Change to use nextFireInterval rather than nextFireTime.
 
25785
        More convenient and also no need to define what the epoch is. Change TimerBase
 
25786
        to use a virtual function rather than a function pointer. Added setDeferringTimers
 
25787
        function to ensure timers don't fire while handling an event.
 
25788
        * platform/mac/Timer.cpp:
 
25789
        (WebCore::timerFired): Added deferral support.
 
25790
        (WebCore::fireDeferred): Added.
 
25791
        (WebCore::TimerBase::TimerBase): Simplify to remove function pointer.
 
25792
        (WebCore::TimerBase::~TimerBase): Put in here, no longer inline.
 
25793
        (WebCore::TimerBase::start): Change to use interval.
 
25794
        (WebCore::TimerBase::startRepeating): Change since we use interval now.
 
25795
        (WebCore::TimerBase::startOneShot): Ditto.
 
25796
        (WebCore::TimerBase::stop): Added deferral support.
 
25797
        (WebCore::TimerBase::nextFireInterval): Added.
 
25798
        (WebCore::TimerBase::fire): Added.
 
25799
        (WebCore::isDeferringTimers): Added.
 
25800
        (WebCore::setDeferringTimers): Added.
 
25801
 
 
25802
        * bridge/mac/MacFrame.mm:
 
25803
        (WebCore::MacFrame::startRedirectionTimer): Update for change to Timer class.
 
25804
        (WebCore::MacFrame::passMouseDownEventToWidget): Update to use setDeferringTimers
 
25805
        instead of QObject::setDefersTimers.
 
25806
 
 
25807
        * khtml/ecma/kjs_window.h:
 
25808
        * khtml/ecma/kjs_window.cpp:
 
25809
        (KJS::DOMWindowTimer): Added. Class for JavaScript "timeout".
 
25810
        (KJS::WindowQObject::parentDestroyed): Update to use DOMWindowTimer.
 
25811
        (KJS::WindowQObject::installTimeout): Ditto.
 
25812
        (KJS::WindowQObject::pauseTimeouts): Ditto.
 
25813
        (KJS::WindowQObject::resumeTimeouts): Ditto.
 
25814
        (KJS::WindowQObject::clearTimeout): Ditto.
 
25815
        (KJS::WindowQObject::timerFired): Ditto.
 
25816
        (KJS::DOMWindowTimer::fired): Added.
 
25817
 
 
25818
        * khtml/html/htmltokenizer.h:
 
25819
        * khtml/html/htmltokenizer.cpp:
 
25820
        (WebCore::HTMLTokenizer::HTMLTokenizer): Use Timer instead of timer ID.
 
25821
        (WebCore::HTMLTokenizer::reset): Ditto.
 
25822
        (WebCore::HTMLTokenizer::continueProcessing): Ditto.
 
25823
        (WebCore::HTMLTokenizer::write): Ditto.
 
25824
        (WebCore::HTMLTokenizer::stopParsing): Ditto.
 
25825
        (WebCore::HTMLTokenizer::processingData): Ditto.
 
25826
        (WebCore::HTMLTokenizer::timerFired): Ditto.
 
25827
        (WebCore::HTMLTokenizer::end): Ditto.
 
25828
        (WebCore::HTMLTokenizer::finish): Ditto.
 
25829
 
 
25830
        * khtml/xml/DocumentImpl.h:
 
25831
        * khtml/xml/DocumentImpl.cpp:
 
25832
        (WebCore::DocumentImpl::DocumentImpl): Updated for changes to use RefPtr
 
25833
        more cases, and not use it for m_svgExtensions.
 
25834
        (WebCore::DocumentImpl::~DocumentImpl): Delete m_svgExtensions instead of
 
25835
        just deref'ing it since it's no longer shared.
 
25836
        (WebCore::DocumentImpl::implementation): Update for RefPtr.
 
25837
        (WebCore::DocumentImpl::elementSheet): Ditto.
 
25838
        (WebCore::DocumentImpl::styleSheets): Ditto.
 
25839
        (WebCore::DocumentImpl::recalcStyleSelector): Ditto.
 
25840
        (WebCore::DocumentImpl::dispatchImageLoadEventSoon): Update to use new style timer.
 
25841
        (WebCore::DocumentImpl::removeImage): Ditto.
 
25842
        (WebCore::DocumentImpl::dispatchImageLoadEventsNow): Ditto.
 
25843
        (WebCore::DocumentImpl::imageLoadEventTimerFired): Ditto.
 
25844
        (WebCore::DocumentImpl::svgExtensions): Update for RefPtr.
 
25845
        (WebCore::DocumentImpl::accessSVGExtensions): Ditto.
 
25846
 
 
25847
        * ksvg2/misc/KSVGTimeScheduler.h:
 
25848
        (WebCore::TimeScheduler::document):
 
25849
        * ksvg2/misc/KSVGTimeScheduler.cpp:
 
25850
        (WebCore::SVGTimer::downcast):
 
25851
        (WebCore::SVGTimer::SVGTimer):
 
25852
        (WebCore::SVGTimer::start):
 
25853
        (WebCore::SVGTimer::calculateTimePercentage):
 
25854
        (WebCore::SVGTimer::notifyAll):
 
25855
        (WebCore::SVGTimer::addNotify):
 
25856
        (WebCore::SVGTimer::removeNotify):
 
25857
        (WebCore::TimeScheduler::TimeScheduler):
 
25858
        (WebCore::TimeScheduler::~TimeScheduler):
 
25859
        (WebCore::TimeScheduler::addTimer):
 
25860
        (WebCore::TimeScheduler::connectIntervalTimer):
 
25861
        (WebCore::TimeScheduler::disconnectIntervalTimer):
 
25862
        (WebCore::TimeScheduler::startAnimations):
 
25863
        (WebCore::TimeScheduler::toggleAnimations):
 
25864
        (WebCore::TimeScheduler::timerFired):
 
25865
        Rework to use new timer.
 
25866
 
 
25867
        * ksvg2/misc/SVGDocumentExtensions.h:
 
25868
        * ksvg2/misc/SVGDocumentExtensions.cpp:
 
25869
        Make SVGDocumentExtensions no longer be shared, be solely owned by the document.
 
25870
 
 
25871
        * ksvg2/svg/SVGDocumentImpl.cpp:
 
25872
        (WebCore::SVGDocumentImpl::createStyleSelector): Update for RefPtr use.
 
25873
 
 
25874
        * kwq/KWQSlot.cpp: Remove endLifeSupport and timerNotify slots.
 
25875
 
 
25876
        * page/Frame.h:
 
25877
        * page/Frame.cpp:
 
25878
        (WebCore::Frame::selectionLayoutChanged): Update to use new style timer.
 
25879
        (WebCore::Frame::caretBlinkTimerFired): Ditto.
 
25880
        * page/FramePrivate.h: (WebCore::FramePrivate::FramePrivate): Ditto.
 
25881
 
 
25882
        * page/FrameView.h:
 
25883
        * page/FrameView.cpp:
 
25884
        (WebCore::FrameViewPrivate::FrameViewPrivate): Update to use new style timer.
 
25885
        (WebCore::FrameView::clear): Ditto.
 
25886
        (WebCore::FrameView::layout): Ditto.
 
25887
        (WebCore::FrameView::layoutTimerFired): Ditto.
 
25888
        (WebCore::FrameView::scheduleRelayout): Ditto.
 
25889
        (WebCore::FrameView::layoutPending): Ditto.
 
25890
        (WebCore::FrameView::haveDelayedLayoutScheduled): Ditto.
 
25891
        (WebCore::FrameView::unscheduleRelayout): Ditto.
 
25892
 
 
25893
        * page/ObjectContents.h: Remove unneeded includes.
 
25894
 
 
25895
        * rendering/render_frames.cpp: Removed include of <qtimer.h>.
 
25896
 
 
25897
        * rendering/render_layer.h:
 
25898
        * rendering/render_layer.cpp:
 
25899
        (WebCore::Marquee::Marquee): Use new style timers.
 
25900
        (WebCore::Marquee::start): Ditto.
 
25901
        (WebCore::Marquee::suspend): Ditto.
 
25902
        (WebCore::Marquee::stop): Ditto.
 
25903
        (WebCore::Marquee::updateMarqueeStyle): Ditto.
 
25904
        (WebCore::Marquee::timerFired): Ditto.
 
25905
 
 
25906
2006-02-01  Darin Adler  <darin@apple.com>
 
25907
 
 
25908
        Reviewed by Beth.
 
25909
 
 
25910
        Fix for <rdar://problem/4424126> REGRESSION(412-420+): yellow 
 
25911
        highlight fails to follow cursor when mousing over star rating
 
25912
        (6232)
 
25913
 
 
25914
        Event coordinates cannot be calculated until there is a target. 
 
25915
        This patch restructures the code so that the coordinates are 
 
25916
        initialized when the mouse event is created but are not calculated
 
25917
        until the target is set.
 
25918
 
 
25919
        * khtml/xml/dom2_eventsimpl.cpp:
 
25920
        (WebCore::EventImpl::setTarget): Now calls receivedTarget() if the
 
25921
        target is not nil.
 
25922
        (WebCore::EventImpl::receivedTarget): virtual receivedTarget()
 
25923
        (WebCore::MouseRelatedEventImpl::MouseRelatedEventImpl): Call 
 
25924
        initCoordinates()
 
25925
        (WebCore::MouseRelatedEventImpl::initCoordinates): Formerly called 
 
25926
        computePositions(), this now only initializes the coordinates and 
 
25927
        lets receivedTarget() take care of the computations. 
 
25928
        (WebCore::MouseRelatedEventImpl::receivedTarget): Takes care of 
 
25929
        computing the coordinates.
 
25930
        (WebCore::MouseEventImpl::initMouseEvent): Call initCoordinates()
 
25931
        * khtml/xml/dom2_eventsimpl.h:
 
25932
        (WebCore::EventImpl::target): Fix spacing.
 
25933
        (WebCore::EventImpl::currentTarget): Same.
 
25934
        (WebCore::EventImpl::setCurrentTarget): Same.
 
25935
 
 
25936
2006-01-31  Maciej Stachowiak  <mjs@apple.com>
 
25937
 
 
25938
        Reviewed by Darin.
 
25939
 
 
25940
        - fixed REGRESSION: assertion failure mousing over DHTML menus at www.worldofwarcraft.com
 
25941
        http://bugs.webkit.org/show_bug.cgi?id=6931
 
25942
 
 
25943
        * rendering/render_layer.cpp:
 
25944
        (WebCore::RenderLayer::hitTestLayer): Iterate vectors in a way that won't break on empty ones.
 
25945
 
 
25946
2006-01-31  Adele Peterson  <adele@apple.com>
 
25947
 
 
25948
        Reviewed by Darin.
 
25949
 
 
25950
        http://bugs.webkit.org/show_bug.cgi?id=6862
 
25951
        Input's value doesn't get updated after typing in new text field
 
25952
 
 
25953
        Added test:
 
25954
        fast/forms/input-changing-value.html
 
25955
 
 
25956
        Added an event listener for a DOMCharacterDataModifiedEvent on the inner div.
 
25957
        When we get the event, then we update the input element's value field.
 
25958
 
 
25959
        There may be performance problems with this approach that we will have to
 
25960
        address before flipping the switch to use these new text fields.
 
25961
 
 
25962
        * rendering/RenderTextField.cpp:
 
25963
        (WebCore::InputMutationListener::handleEvent): calls subtreeHasChanged
 
25964
        (WebCore::m_mutationListener):
 
25965
        (WebCore::RenderTextField::~RenderTextField): remove the event listener.
 
25966
        (WebCore::RenderTextField::setStyle): Remove unnecessary setStyle on text node.  
 
25967
         It should inherit style from the div already.
 
25968
        (WebCore::RenderTextField::updateFromElement): add the event listener.
 
25969
        (WebCore::RenderTextField::subtreeHasChanged): updates the input element's value.
 
25970
        * rendering/RenderTextField.h:
 
25971
        (WebCore::InputMutationListener::InputMutationListener): Added.
 
25972
        (WebCore::InputMutationListener::renderTextField): Added.
 
25973
        (WebCore::InputMutationListener::setInputElement): Added.
 
25974
 
 
25975
2006-01-31  Antti Koivisto <koivisto@iki.fi>
 
25976
 
 
25977
        Reviewed by Dave Hyatt.
 
25978
        Landed by Timothy Hatcher.
 
25979
 
 
25980
        http://bugs.webkit.org/show_bug.cgi?id=4959
 
25981
        Bug 4959: inline style not terminated properly after <form>
 
25982
 
 
25983
        * khtml/html/htmlparser.cpp:
 
25984
        (HTMLParser::isResidualStyleTag): add <span> as residual style tag
 
25985
        (HTMLParser::isAffectedByResidualStyle): add <form> as tag affected by residual style
 
25986
 
 
25987
2006-01-31  Vicki Murley <vicki@apple.com>
 
25988
 
 
25989
        Reviewed by Geoff.
 
25990
 
 
25991
        - fix <rdar://problem/4426668> REGRESSION: sometimes URLs with named anchors in a
 
25992
        page don't jump to proper location in document (6916). Added test cases for this
 
25993
        fix and past link jumping bug fixes.
 
25994
 
 
25995
        * khtml/xml/ContainerNodeImpl.cpp:
 
25996
        (WebCore::ContainerNodeImpl::getUpperLeftCorner): Traverse up the parent node chain
 
25997
        until you find one that has a sibling.
 
25998
        * manual-tests/linkjump-1.html: Added a note here - the bug for this test case is
 
25999
        still broken in TOT.
 
26000
        * manual-tests/linkjump-2.html: Added. Renamed scrollToAnchor.html, to group it with the
 
26001
        rest of the link jumping tests.
 
26002
        * manual-tests/linkjump-3.html: Added. Test case for this bug, <rdar://problem/4426668>.
 
26003
        * manual-tests/linkjump-4.html: Added. Test case for past fix, <rdar://problem/4247537>.
 
26004
        * manual-tests/linkjump-5.html: Added. Test case for past fix, <rdar://problem/4256060>.
 
26005
        * manual-tests/scrollToAnchor.html: Removed.
 
26006
 
 
26007
2006-01-31  David Harrison  <harrison@apple.com>
 
26008
 
 
26009
        Reviewed by John.
 
26010
        <rdar://problem/4423922> TOT REGRESSION (r12358): first iframe in pair fails to copy
 
26011
 
 
26012
        Layout test added:
 
26013
        * editing/pasteboard/paste-empty-startcontainer.html
 
26014
        
 
26015
        * khtml/xml/dom2_rangeimpl.cpp:
 
26016
        (DOM::RangeImpl::startNode):
 
26017
        - use empty non-textual m_startContainer itself if m_startOffset is 0, rather then nextSibling()
 
26018
 
 
26019
2006-01-31  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
26020
 
 
26021
        Test: fast/forms/selected-index-assert.html.
 
26022
 
 
26023
        Reviewed by Adele.
 
26024
        
 
26025
        - fix http://bugs.webkit.org/show_bug.cgi?id=6942
 
26026
          Assertion failure in HTMLSelectElementImpl::selectedIndex (m_multiple)
 
26027
 
 
26028
        * khtml/html/HTMLSelectElementImpl.cpp:
 
26029
        (WebCore::HTMLSelectElementImpl::selectedIndex): Removed bogus assert.
 
26030
        -1 is the correct value to return if no option is selected.
 
26031
 
 
26032
2006-01-31  Beth Dakin  <bdakin@apple.com>
 
26033
 
 
26034
        Reviewed by Adele.
 
26035
 
 
26036
        Fixing build bustage. Removing include of khtml_factory.h since it 
 
26037
        has been removed.
 
26038
 
 
26039
        * rendering/font.cpp: No longer include khtml_factory.h
 
26040
 
 
26041
2006-01-31  David Kilzer  <ddkilzer@kilzer.net>
 
26042
 
 
26043
        Reviewed by Hyatt.
 
26044
 
 
26045
        - fix http://bugs.webkit.org/show_bug.cgi?id=6584
 
26046
          REGRESSION: button after unclosed button gives trouble
 
26047
 
 
26048
        * khtml/html/htmlparser.cpp: (HTMLParser::getNode):
 
26049
        Add buttonTag to error handling table to take care of unclosed tags.
 
26050
 
 
26051
2006-01-31  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
26052
 
 
26053
        Test: fast/parser/script-after-frameset-assert.html
 
26054
 
 
26055
        Reviewed by Darin.
 
26056
        
 
26057
        - fix http://bugs.webkit.org/show_bug.cgi?id=6959
 
26058
          REGRESSION: Assertion failure in HTMLTokenizer::parseTag (!scriptNode) on page with ignored scripts
 
26059
 
 
26060
        * khtml/html/htmltokenizer.cpp:
 
26061
        (WebCore::HTMLTokenizer::scriptHandler): Reset scriptNode to 0 if the
 
26062
        script is being skipped.
 
26063
 
 
26064
2006-01-31  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
26065
 
 
26066
        Reviewed by Darin.
 
26067
 
 
26068
        - fix http://bugs.webkit.org/show_bug.cgi?id=6960
 
26069
          REGRESSION: Assertion failure in table_layout.cpp:216 calcWidthArray()
 
26070
 
 
26071
        * rendering/table_layout.cpp: (WebCore::FixedTableLayout::calcWidthArray):
 
26072
        Remove the assertion.
 
26073
 
 
26074
2006-01-31  Anders Carlsson  <andersca@mac.com>
 
26075
 
 
26076
        Reviewed by John.
 
26077
 
 
26078
        - fix http://bugs.webkit.org/show_bug.cgi?id=6964
 
26079
        ImagePatterns are always rendered mirrored
 
26080
        
 
26081
        * khtml/ecma/kjs_html.cpp:
 
26082
        (KJS::ImagePattern::createPattern):
 
26083
        Don't mirror the x coordinate when creating the pattern.
 
26084
 
 
26085
2006-01-31  Darin Adler  <darin@apple.com>
 
26086
 
 
26087
        Reviewed by Hyatt.
 
26088
 
 
26089
        - added a Timer class
 
26090
        - used the Timer class for the redirection timer
 
26091
        - moved Frame, FrameView, MacFrame, and FrameNodeTree into WebCore namespace
 
26092
        - removed more KWQ
 
26093
 
 
26094
        * ForwardingHeaders/khtml_factory.h: Removed.
 
26095
        * kwq/KWQKHTMLFactory.cpp: Removed.
 
26096
        * kwq/KWQKHTMLFactory.h: Removed.
 
26097
 
 
26098
        * platform/Timer.h: Added.
 
26099
        * platform/mac/Timer.cpp: Added.
 
26100
 
 
26101
        * WebCore.vcproj/WebCore/WebCore.vcproj: Updated for added and removed files.
 
26102
        * WebCore.xcodeproj/project.pbxproj: Ditto.
 
26103
 
 
26104
        * page/Frame.h:
 
26105
        * page/Frame.cpp:
 
26106
        (WebCore::Frame::init): Remove code to set up slotRedirect.
 
26107
        (WebCore::Frame::checkCompleted): Call start/stopRedirectionTimer instead of using
 
26108
        the redirection timer directly.
 
26109
        (WebCore::Frame::scheduleRedirection): Ditto.
 
26110
        (WebCore::Frame::scheduleLocationChange): Ditto.
 
26111
        (WebCore::Frame::scheduleHistoryNavigation): Ditto.
 
26112
        (WebCore::Frame::cancelRedirection): Ditto.
 
26113
        (WebCore::Frame::redirectionTimerFired): Renamed from slotRedirect.
 
26114
        (WebCore::Frame::slotParentCompleted): More startRedirectionTimer.
 
26115
        (WebCore::Frame::startRedirectionTimer): Added. Virtual bottleneck to start the
 
26116
        redirection timer.
 
26117
        (WebCore::Frame::stopRedirectionTimer): Added. Virtual bottleneck to stop the
 
26118
        redirection timer.
 
26119
 
 
26120
        * page/FramePrivate.h: Changed m_redirectionTimer from a QTimer to a Timer.
 
26121
 
 
26122
        * bridge/mac/MacFrame.mm:
 
26123
        (WebCore::MacFrame::startRedirectionTimer): Added. Avoids the need for the QTimer
 
26124
        "monitor" feature that I had added a while back to implement the client-redirected
 
26125
        callback.
 
26126
        (WebCore::MacFrame::stopRedirectionTimer): Ditto.
 
26127
 
 
26128
        * kwq/KWQSlot.cpp: Removed slotRedirected.
 
26129
 
 
26130
        * ForwardingHeaders/ksvg2/KSVGPart.h: Removed using to put Frame into various
 
26131
        namespaces (all of which are WebCore now anyway).
 
26132
 
 
26133
        * bindings/objc/DOMInternal.mm:
 
26134
        * bridge/mac/BrowserExtensionMac.h:
 
26135
        * bridge/mac/KWQKHTMLView.cpp:
 
26136
        * bridge/mac/MacFrame.h:
 
26137
        * bridge/mac/WebCoreFrameBridge.h:
 
26138
        * bridge/mac/WebCoreFrameBridge.mm:
 
26139
        * bridge/mac/WebCorePageBridge.h:
 
26140
        * bridge/mac/WebCorePageBridge.mm:
 
26141
        * css/cssstyleselector.cpp:
 
26142
        * css/cssstyleselector.h:
 
26143
        * khtml/ecma/kjs_binding.cpp:
 
26144
        * khtml/ecma/kjs_binding.h:
 
26145
        * khtml/ecma/kjs_navigator.cpp:
 
26146
        * khtml/ecma/kjs_navigator.h:
 
26147
        * khtml/ecma/kjs_proxy.h:
 
26148
        * khtml/ecma/kjs_window.h:
 
26149
        * khtml/editing/SelectionController.h:
 
26150
        * khtml/editing/jsediting.h:
 
26151
        * khtml/html/html_baseimpl.h:
 
26152
        * khtml/html/html_documentimpl.cpp:
 
26153
        * khtml/html/html_documentimpl.h:
 
26154
        * khtml/html/html_headimpl.h:
 
26155
        * khtml/html/htmlparser.h:
 
26156
        * khtml/html/htmltokenizer.h:
 
26157
        * khtml/xml/DOMImplementationImpl.h:
 
26158
        * khtml/xml/DocumentImpl.h:
 
26159
        * khtml/xml/dom2_eventsimpl.h:
 
26160
        * khtml/xml/xml_tokenizer.h:
 
26161
        * khtml/xsl/xslt_processorimpl.h:
 
26162
        * ksvg2/svg/SVGDocumentImpl.cpp:
 
26163
        * kwq/KWQClipboard.h:
 
26164
        * kwq/KWQComboBox.mm:
 
26165
        * kwq/KWQFileButton.h:
 
26166
        * kwq/KWQFrame.mm:
 
26167
        * kwq/KWQKJavaAppletWidget.h:
 
26168
        * kwq/KWQListBox.mm:
 
26169
        * kwq/KWQSignalStubs.cpp:
 
26170
        * kwq/KWQSlider.mm:
 
26171
        * kwq/KWQTextField.mm:
 
26172
        * kwq/KWQWidget.mm:
 
26173
        * kwq/WebCoreSettings.mm:
 
26174
        * kwq/WebCoreTextRendererFactory.mm:
 
26175
        * loader/DocLoader.h:
 
26176
        * page/FrameTreeNode.cpp:
 
26177
        * page/FrameTreeNode.h:
 
26178
        * page/FrameView.cpp:
 
26179
        * page/FrameView.h:
 
26180
        * page/Page.cpp:
 
26181
        * page/Page.h:
 
26182
        * rendering/InlineTextBox.h:
 
26183
        * rendering/font.cpp:
 
26184
        * rendering/render_canvas.h:
 
26185
        * rendering/render_frames.h:
 
26186
        * rendering/render_object.h:
 
26187
        * rendering/render_replaced.h:
 
26188
        Updated for namespace and header changes.
 
26189
 
 
26190
2006-01-31  Anders Carlsson  <andersca@mac.com>
 
26191
 
 
26192
        Reviewed by Darin.
 
26193
 
 
26194
        The WebCore part of http://bugs.webkit.org/show_bug.cgi?id=6907
 
26195
        REGRESSION: United.com menus messed up due to document.all/MSIE sniff
 
26196
        
 
26197
        * khtml/ecma/kjs_html.h:
 
26198
        (KJS::HTMLAllCollection::masqueradeAsUndefined):
 
26199
        Update for name change.
 
26200
        
 
26201
2006-01-30  Geoffrey Garen  <ggaren@apple.com>
 
26202
 
 
26203
        Reviewed by mjs.
 
26204
 
 
26205
        - Speculative fix for <rdar://problem/4135845> Crash executing 
 
26206
        cross-frame script on timeout in KJS::ScheduledAction::execute
 
26207
 
 
26208
        If we ever get a reproducible case of 4135845, I'll add a test for it.
 
26209
 
 
26210
        This is a re-working of Maciej's fix for 3157014 (circa 2003!). Since
 
26211
        you can't reliably predict what the state of the page will be when
 
26212
        a timer fires, I've made the timer responsbile for making sure that
 
26213
        everything is OK to execute.
 
26214
 
 
26215
        I tested @ http://www.javascriptkit.com/script/cut3.shtml with various
 
26216
        combinations of reload, back, and regular navigations with JS enabled/
 
26217
        disabled to ensure that the previous crash didn't return. I also ran a 
 
26218
        leaks test and discovered some, but none unique to this patch. (See 
 
26219
        <rdar://problem/4427420> TOT REGRESSION: Leaks seen on page with 
 
26220
        JavaScript timer.)
 
26221
 
 
26222
        * khtml/ecma/kjs_window.cpp:
 
26223
        (KJS::ScheduledAction::execute): Return early if there's no window
 
26224
        object. (This happens when JavaScript is disabled.)
 
26225
        (KJS::Window::retrieveWindow): Reversed a backwards ASSERT, increased
 
26226
        prettiness. (The assert fired while I was testing. Not sure why we
 
26227
        haven't seen it before.)
 
26228
        * page/Frame.cpp:
 
26229
        (Frame::didOpenURL): Returned setting of JavaScript enabled/disabled
 
26230
        preference to its rightful place. This introduces a new behavior: now,
 
26231
        the unload event does not fire after you've disabled JavaScript. That 
 
26232
        seems like a good thing. (See <rdar://problem/4426506> Disabling 
 
26233
        JavaScript should immediately end JavaScript execution.)
 
26234
        (Frame::begin): Ditto.
 
26235
 
 
26236
2006-01-30  Geoffrey Garen  <ggaren@apple.com>
 
26237
 
 
26238
        Reviewed by Dave Harrison.
 
26239
 
 
26240
        - Fixed <rdar://problem/4378159> crash in KWQKHTMLPart::userGestureHint
 
26241
        from javascript enabled/disabled inconsistency when pasting webpage 
 
26242
        into email or blot
 
26243
 
 
26244
        * page/Frame.cpp:
 
26245
        (Frame::userGestureHint): Check root frame's jScript() for NULL instead
 
26246
        of checking inner frame's jScript().
 
26247
        
 
26248
        After init() has been called on a frame, but before begin() has been 
 
26249
        called, the frame can have JavaScript enabled when its parent doesn't.
 
26250
        (That seems wrong, so I've filed <rdar://problem/4426499> Child frame 
 
26251
        momentarily has JavaScript enabled even though parent frame doesn't.)
 
26252
        
 
26253
        Regardless, it's better programming practice to NULL check the actual 
 
26254
        pointer you're going to use, so that's what I've done here.
 
26255
 
 
26256
        * manual-tests/paste-crash.html: Added.
 
26257
        (No automated test because the crash depends on JavaScript being
 
26258
        disabled.)
 
26259
 
 
26260
2006-01-30  Beth Dakin  <bdakin@apple.com>
 
26261
 
 
26262
        Reviewed by Geoff
 
26263
 
 
26264
        Fix for <rdar://problem/4298052> Crash in KWQCheckIfReloading at 
 
26265
        http://www.inquisitorx.com/beta/
 
26266
 
 
26267
        It is possible for the DocLoader's frame to be nil when the 
 
26268
        DocLoader is not nil, so we need nil checks.
 
26269
 
 
26270
        * kwq/KWQLoader.mm:
 
26271
        (KWQServeRequest): Nil check.
 
26272
        (KWQServeSynchronousRequest): Same.
 
26273
        (KWQCheckIfReloading): Same.
 
26274
        (KWQCheckCacheObjectStatus): Same.
 
26275
        (KWQCacheObjectExpiresTime): Same.
 
26276
        * kwq/KWQPageState.mm: Same.
 
26277
 
 
26278
2006-01-30  Eric Seidel  <eseidel@apple.com>
 
26279
 
 
26280
        Add #import "KWQFontMetrics.h" to fix no-svg build.
 
26281
 
 
26282
        * kwq/KWQPainter.mm:
 
26283
 
 
26284
2006-01-30  Darin Adler  <darin@apple.com>
 
26285
 
 
26286
        Reviewed by Eric.
 
26287
 
 
26288
        - cleanup of Int/Float-Size/Point/Rect classes
 
26289
 
 
26290
        I did this as part of a redo of QMatrix, but I decided I should
 
26291
        land this part separately.
 
26292
 
 
26293
        Eliminated the concept of a null rect or point, which used to be
 
26294
        indicated by negative width and height.
 
26295
 
 
26296
        Changed right and bottom to to be, e.g., 2 for a rect at (0,0) 2x2.
 
26297
        The old code followed Qt's system that says right is 1 in those cases,
 
26298
        which is inappropriate for floating point, and old fashioned because
 
26299
        modern graphics systems use coordinates for lines between pixels, not
 
26300
        the pixels themselves.
 
26301
 
 
26302
        Other API improvements to the point, size, and rect classes. For example,
 
26303
        functions named with verbs now always modify the object itself.
 
26304
 
 
26305
        * rendering/render_theme_mac.mm: (RenderThemeMac::paintButton): Fixed
 
26306
        a bug where it said x() where it should say y().
 
26307
 
 
26308
        * bridge/mac/MacFrame.h:
 
26309
        * bridge/mac/MacFrame.mm:
 
26310
        * bridge/mac/WebCoreFrameBridge.mm:
 
26311
        * kcanvas/KCanvasContainer.cpp:
 
26312
        * kcanvas/KCanvasItem.cpp:
 
26313
        * kcanvas/RenderSVGImage.cpp:
 
26314
        * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
 
26315
        * kcanvas/device/quartz/KCanvasItemQuartz.mm:
 
26316
        * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
 
26317
        * khtml/ecma/kjs_dom.cpp:
 
26318
        * khtml/ecma/kjs_window.cpp:
 
26319
        * khtml/editing/SelectionController.cpp:
 
26320
        * khtml/html/html_inlineimpl.cpp:
 
26321
        * khtml/html/html_objectimpl.cpp:
 
26322
        * khtml/html/html_objectimpl.h:
 
26323
        * khtml/misc/khtmllayout.h:
 
26324
        * ksvg2/svg/SVGSVGElementImpl.cpp:
 
26325
        * kwq/KWQAccObject.mm:
 
26326
        * kwq/KWQComboBox.mm:
 
26327
        * kwq/KWQFileButton.mm:
 
26328
        * kwq/KWQFontMetrics.mm:
 
26329
        * kwq/KWQPainter.h:
 
26330
        * kwq/KWQPainter.mm:
 
26331
        * kwq/KWQRegion.cpp:
 
26332
        * kwq/KWQRenderTreeDebug.cpp:
 
26333
        * kwq/KWQScrollView.mm:
 
26334
        * kwq/KWQWMatrix.cpp:
 
26335
        * kwq/KWQWidget.h:
 
26336
        * kwq/KWQWidget.mm:
 
26337
        * kwq/KWQWindowWidget.mm:
 
26338
        * loader/CachedImage.cpp:
 
26339
        * page/Frame.cpp:
 
26340
        * page/FrameView.cpp:
 
26341
        * platform/FloatPoint.cpp:
 
26342
        * platform/FloatPoint.h:
 
26343
        * platform/FloatRect.cpp:
 
26344
        * platform/FloatRect.h:
 
26345
        * platform/FloatSize.cpp:
 
26346
        * platform/FloatSize.h:
 
26347
        * platform/Image.h:
 
26348
        * platform/IntPoint.cpp:
 
26349
        * platform/IntPoint.h:
 
26350
        * platform/IntPointArray.cpp:
 
26351
        * platform/IntPointArray.h:
 
26352
        * platform/IntRect.cpp:
 
26353
        * platform/IntRect.h:
 
26354
        * platform/IntSize.cpp:
 
26355
        * platform/IntSize.h:
 
26356
        * platform/mac/FloatPoint.mm:
 
26357
        * platform/mac/FloatRect.mm:
 
26358
        * platform/mac/FloatSize.mm:
 
26359
        * platform/mac/Image.mm:
 
26360
        * platform/mac/IntPoint.mm:
 
26361
        * platform/mac/IntRect.mm:
 
26362
        * platform/mac/IntSize.mm:
 
26363
        * platform/mac/Screen.mm:
 
26364
        * rendering/InlineTextBox.cpp:
 
26365
        * rendering/RenderBlock.cpp:
 
26366
        * rendering/RenderBlock.h:
 
26367
        * rendering/RenderTable.cpp:
 
26368
        * rendering/RenderTableCell.cpp:
 
26369
        * rendering/RenderText.cpp:
 
26370
        * rendering/render_box.cpp:
 
26371
        * rendering/render_canvas.cpp:
 
26372
        * rendering/render_canvasimage.cpp:
 
26373
        * rendering/render_flow.cpp:
 
26374
        * rendering/render_form.cpp:
 
26375
        * rendering/render_frames.cpp:
 
26376
        * rendering/render_layer.cpp:
 
26377
        * rendering/render_line.cpp:
 
26378
        * rendering/render_list.cpp:
 
26379
        * rendering/render_object.cpp:
 
26380
        * rendering/render_object.h:
 
26381
        * rendering/render_replaced.cpp:
 
26382
 
 
26383
2006-01-29  Maciej Stachowiak  <mjs@apple.com>
 
26384
 
 
26385
        Reviewed by Darin.
 
26386
 
 
26387
        - Remove QSortedList and QPtrList sorting support
 
26388
        http://bugs.webkit.org/show_bug.cgi?id=6929
 
26389
 
 
26390
        * WebCore.xcodeproj/project.pbxproj:
 
26391
        * kcanvas/device/KRenderingPaintServerGradient.cpp:
 
26392
        (operator<<): Implement for Vector<KCGradientStop>
 
26393
        (KRenderingPaintServerGradient::gradientStops): Use a Vector, not a subclass of
 
26394
        QPtrList that sorts on every insert
 
26395
        (compareStopOffset): Comparison function for sorting.
 
26396
        (KRenderingPaintServerGradient::setGradientStops): Add a version that takes a Vector which sorts,
 
26397
        and another which knows how to copy from another gradient paint server.
 
26398
        * kcanvas/device/KRenderingPaintServerGradient.h:
 
26399
        (makeGradientStop): Make a gradient stop pair.
 
26400
        * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
 
26401
        (KRenderingPaintServerGradientQuartz::~KRenderingPaintServerGradientQuartz): use delete
 
26402
        on stops cache
 
26403
        (KRenderingPaintServerGradientQuartz::updateQuartzGradientStopsCache): adapt to Vector
 
26404
        * kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
 
26405
        * khtml/editing/visible_text.cpp:
 
26406
        (khtml::compareBoxStart): Comparison function for sorting.
 
26407
        (khtml::TextIterator::handleTextNode): Use Vector and std::sort instead of QSortedList
 
26408
        for sorting. Keep current position as an index.
 
26409
        (khtml::TextIterator::handleTextBox): Adapt for Vector use.
 
26410
        * khtml/editing/visible_text.h:
 
26411
        * ksvg2/svg/SVGGradientElementImpl.cpp:
 
26412
        (SVGGradientElementImpl::rebuildStops): Use a Vector. Instead of modifying the existing one,
 
26413
        make a fresh one and assign it.
 
26414
        * ksvg2/svg/SVGLinearGradientElementImpl.cpp:
 
26415
        (SVGLinearGradientElementImpl::buildGradient): don't copy item by item, just assign directly.
 
26416
        * ksvg2/svg/SVGRadialGradientElementImpl.cpp:
 
26417
        (SVGRadialGradientElementImpl::buildGradient): ditto
 
26418
        * ksvg2/svg/SVGStopElementImpl.h:
 
26419
        * kwq/KWQListImpl.cpp:
 
26420
        * kwq/KWQPtrList.h:
 
26421
        (QPtrList::sort): Removed.
 
26422
        * kwq/KWQSortedList.h: Removed.
 
26423
        * rendering/InlineTextBox.h: Remove now unneeded operator< and operator=
 
26424
 
 
26425
2006-01-29  Darin Adler  <darin@apple.com>
 
26426
 
 
26427
        Reviewed by Maciej.
 
26428
 
 
26429
        - killed more KWQ, KWinModule and QVariant
 
26430
 
 
26431
        * ForwardingHeaders/kwinmodule.h: Removed.
 
26432
        * ForwardingHeaders/qvariant.h: Removed.
 
26433
 
 
26434
        * kwq/KWQKWinModule.h: Removed.
 
26435
        * kwq/KWQKWinModule.mm: Removed.
 
26436
        * kwq/KWQVariant.cpp: Removed.
 
26437
        * kwq/KWQVariant.h: Removed.
 
26438
 
 
26439
        * WebCore.vcproj/WebCore/WebCore.vcproj: Updated for removal.
 
26440
        * WebCore.xcodeproj/project.pbxproj: Ditto.
 
26441
 
 
26442
        * khtml/ecma/kjs_binding.h:
 
26443
        * khtml/ecma/kjs_binding.cpp: Remove QVariant stuff.
 
26444
 
 
26445
        * bridge/mac/WebCoreFrameBridge.mm:
 
26446
        (-[WebCoreFrameBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
 
26447
        * khtml/ecma/kjs_events.cpp: (KJS::JSAbstractEventListener::handleEvent):
 
26448
        * khtml/ecma/kjs_proxy.h:
 
26449
        * khtml/ecma/kjs_proxy.cpp: (WebCore::KJSProxyImpl::evaluate):
 
26450
        * page/Frame.h:
 
26451
        * page/Frame.cpp:
 
26452
        (getString):
 
26453
        (Frame::replaceContentsWithScriptResult):
 
26454
        (Frame::executeScript):
 
26455
        (Frame::executeScheduledScript):
 
26456
        (Frame::changeLocation):
 
26457
        (Frame::urlSelected):
 
26458
        (Frame::submitForm):
 
26459
        Changed to use JSValue instead of QVariant for result of executing JavaScript.
 
26460
 
 
26461
        * kwq/KWQObject.h: Removed a bunch of unneeded includes and forward declarations.
 
26462
 
 
26463
        * bridge/mac/MacFrame.mm:
 
26464
        * khtml/ecma/kjs_window.h:
 
26465
        * khtml/ecma/kjs_window.cpp:
 
26466
        * khtml/html/html_inlineimpl.cpp:
 
26467
        * khtml/html/htmltokenizer.cpp:
 
26468
        * khtml/xml/DocumentImpl.cpp:
 
26469
        * khtml/xml/NodeImpl.cpp:
 
26470
        * khtml/xml/dom2_eventsimpl.cpp:
 
26471
        * khtml/xml/xml_tokenizer.cpp:
 
26472
        * kwq/KWQComboBox.mm:
 
26473
        * kwq/KWQFileButton.mm:
 
26474
        * kwq/KWQListBox.mm:
 
26475
        * kwq/KWQObject.cpp:
 
26476
        * kwq/KWQSlider.mm:
 
26477
        * kwq/KWQTextArea.mm:
 
26478
        * kwq/KWQTextField.mm:
 
26479
        * loader/CachedImage.h:
 
26480
        * page/FrameView.h:
 
26481
        * page/FrameView.cpp:
 
26482
        * rendering/render_form.cpp:
 
26483
        Updated includes, since KWQObject.h now includes less.
 
26484
        Also updated callers to executeScript since one overload was removed.
 
26485
 
 
26486
2006-01-29  Eric Seidel <eseidel@apple.com>
 
26487
 
 
26488
        Reviewed by darin.
 
26489
 
 
26490
        Added back #include <qvaluelist.h> to fix WIN32 build.
 
26491
 
 
26492
        * rendering/render_style.h:
 
26493
 
 
26494
2006-01-29  Darin Adler  <darin@apple.com>
 
26495
 
 
26496
        Reviewed by Hyatt (drag image fix) and Maciej (the rest).
 
26497
 
 
26498
        - fixed just-introduced crash dragging images
 
26499
 
 
26500
        I don't know how to make a layout test for this.
 
26501
 
 
26502
        * kwq/KWQClipboard.mm: (WebCore::KWQClipboard::dragImage): Fixed crash on
 
26503
        dragging by initializing m_dragImage to 0.
 
26504
 
 
26505
        - http://bugs.webkit.org/show_bug.cgi?id=6923
 
26506
          remove more of KWQ, including the screen functions from QDesktopWidget
 
26507
 
 
26508
        * kwq/KWQApplication.h: Removed.
 
26509
        * kwq/KWQApplication.mm: Removed.
 
26510
        * kwq/KWQGlobal.cpp: Removed.
 
26511
        * kwq/KWQKPartsEvent.cpp: Removed.
 
26512
        * kwq/KWQKPartsEvent.h: Removed.
 
26513
        * kwq/KWQPair.h: Removed.
 
26514
        * kwq/KWQStyle.cpp: Removed.
 
26515
        * kwq/KWQStyle.h: Removed.
 
26516
 
 
26517
        * ForwardingHeaders/kparts/event.h: Removed.
 
26518
        * ForwardingHeaders/qapplication.h: Removed.
 
26519
        * ForwardingHeaders/qstyle.h: Removed.
 
26520
 
 
26521
        * WebCore.vcproj/WebCore/WebCore.vcproj: Updated for above changes.
 
26522
        * WebCore.xcodeproj/project.pbxproj: Ditto.
 
26523
 
 
26524
        * platform/Screen.h: Added. Replaces the desktop widget stuff in KWQApplication.mm.
 
26525
        * platform/mac/Screen.mm: Added.
 
26526
 
 
26527
        * kwq/KWQDef.h: Removed everything except for kMin and kMax from here.
 
26528
        We should port to std::min and std::max, and then we can get rid of this
 
26529
        header altogether.
 
26530
 
 
26531
        * kwq/KWQKCursor.h: Removed setAutoHideCursor.
 
26532
        * kwq/KWQKCursor.mm: Ditto.
 
26533
 
 
26534
        * kwq/KWQWidget.h: Removed style() and setStyle() functions.
 
26535
        * kwq/KWQWidget.mm: Ditto.
 
26536
 
 
26537
        * khtml/ecma/kjs_window.h:
 
26538
        * khtml/ecma/kjs_window.cpp:
 
26539
        (KJS::Screen::Screen): Store a pointer to the Frame.
 
26540
        (KJS::Screen::getValueProperty): Port to use the new Screen.h functions.
 
26541
        (KJS::showModalDialog): Ditto.
 
26542
        (KJS::Window::getValueProperty): Ditto.
 
26543
        (KJS::WindowFunc::callAsFunction): Ditto.
 
26544
 
 
26545
        * khtml/khtml_events.h:
 
26546
        * khtml/khtml_events.cpp: Removed much of the code here.
 
26547
        This can be cut down even more.
 
26548
 
 
26549
        * khtml/misc/khtmllayout.h: Removed unused stuff and updated for KWQ changes.
 
26550
 
 
26551
        * kwq/KWQCString.cpp:
 
26552
        * kwq/KWQKURL.mm:
 
26553
        * kwq/KWQPainter.mm:
 
26554
        * kwq/KWQRegExp.cpp:
 
26555
        * kwq/KWQRenderTreeDebug.cpp:
 
26556
        * kwq/KWQString.h:
 
26557
        * kwq/KWQString.mm:
 
26558
        * kwq/KWQTextCodec.cpp:
 
26559
        * WebCore+SVG/KDOMSettings.cpp:
 
26560
        * bridge/mac/MacFrame.mm:
 
26561
        * bridge/mac/WebCoreFrameBridge.mm:
 
26562
        * css/cssparser.cpp:
 
26563
        * kcanvas/KCanvasItem.cpp:
 
26564
        * khtml/ecma/kjs_navigator.cpp:
 
26565
        * khtml/html/HTMLSelectElementImpl.cpp:
 
26566
        * khtml/html/html_tableimpl.h:
 
26567
        * khtml/html/htmltokenizer.cpp:
 
26568
        * khtml/misc/decoder.cpp:
 
26569
        * ksvg2/css/KSVGCSSParser.cpp:
 
26570
        * ksvg2/css/SVGRenderStyle.h:
 
26571
        * page/Frame.h:
 
26572
        * page/Frame.cpp:
 
26573
        * page/FrameView.cpp:
 
26574
        * platform/IntPointArray.cpp:
 
26575
        * rendering/RenderBlock.cpp:
 
26576
        * rendering/RenderTable.cpp:
 
26577
        * rendering/bidi.cpp:
 
26578
        * rendering/bidi.h:
 
26579
        * rendering/render_form.cpp:
 
26580
        * rendering/render_object.cpp:
 
26581
        * rendering/render_object.h:
 
26582
        * rendering/render_replaced.cpp:
 
26583
        * rendering/render_style.h:
 
26584
        * rendering/table_layout.cpp:
 
26585
        Updated for above KWQ changes. Changed tabs to spaces.
 
26586
 
 
26587
2006-01-29  Eric Seidel <eseidel@apple.com>
 
26588
 
 
26589
        Reviewed by hyatt.
 
26590
 
 
26591
        Fix build for Win32.
 
26592
 
 
26593
        * WebCore.vcproj/WebCore/WebCore.vcproj:
 
26594
 
 
26595
2006-01-29  David Hyatt  <hyatt@apple.com>
 
26596
 
 
26597
        Fix for bug 6910, don't let Image be assignable or copiable.  It will soon represent  the actual
 
26598
        original Image (including the data) and as such must remain unique.
 
26599
 
 
26600
        Reviewed by darin
 
26601
 
 
26602
        * kcanvas/KCanvasFilters.cpp:
 
26603
        (KCanvasFEImage::~KCanvasFEImage):
 
26604
        (KCanvasFEImage::setCachedImage):
 
26605
        * kcanvas/KCanvasFilters.h:
 
26606
        (KCanvasFEImage::KCanvasFEImage):
 
26607
        (KCanvasFEImage::cachedImage):
 
26608
        * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
 
26609
        (KCanvasFEImageQuartz::getCIFilter):
 
26610
        * khtml/ecma/kjs_events.cpp:
 
26611
        (KJS::ClipboardProtoFunc::callAsFunction):
 
26612
        * khtml/ecma/kjs_html.cpp:
 
26613
        (KJS::KJS::Context2DFunction::callAsFunction):
 
26614
        (KJS::drawPattern):
 
26615
        (KJS::_rh):
 
26616
        (KJS::ImagePattern::~ImagePattern):
 
26617
        (KJS::ImagePattern::createPattern):
 
26618
        * khtml/ecma/kjs_html.h:
 
26619
        (KJS::ImagePattern::cachedImage):
 
26620
        * khtml/html/html_imageimpl.h:
 
26621
        (WebCore::HTMLImageElementImpl::cachedImage):
 
26622
        * khtml/xml/dom2_eventsimpl.h:
 
26623
        * ksvg2/svg/SVGCursorElementImpl.cpp:
 
26624
        (SVGCursorElementImpl::~SVGCursorElementImpl):
 
26625
        (SVGCursorElementImpl::parseMappedAttribute):
 
26626
        * ksvg2/svg/SVGCursorElementImpl.h:
 
26627
        (KSVG::SVGCursorElementImpl::cachedImage):
 
26628
        * ksvg2/svg/SVGFEImageElementImpl.cpp:
 
26629
        (SVGFEImageElementImpl::~SVGFEImageElementImpl):
 
26630
        (SVGFEImageElementImpl::parseMappedAttribute):
 
26631
        (SVGFEImageElementImpl::notifyFinished):
 
26632
        * kwq/KWQClipboard.h:
 
26633
        * kwq/KWQClipboard.mm:
 
26634
        (WebCore::KWQClipboard::dragImage):
 
26635
        (WebCore::KWQClipboard::setDragImage):
 
26636
        (WebCore::KWQClipboard::setDragImageElement):
 
26637
        (WebCore::KWQClipboard::imageChanged):
 
26638
        (WebCore::KWQClipboard::dragNSImage):
 
26639
        * platform/Image.h:
 
26640
 
 
26641
2006-01-29  Darin Adler  <darin@apple.com>
 
26642
 
 
26643
        Reviewed by Hyatt.
 
26644
 
 
26645
        - fix http://bugs.webkit.org/show_bug.cgi?id=6914
 
26646
          REGRESSION: fast/block/basic/014.html crashes Safari
 
26647
 
 
26648
        * rendering/render_image.h:
 
26649
        (WebCore::RenderImage::image): Return a null image when m_cachedImage is 0.
 
26650
        (WebCore::RenderImage::errorOccurred): Return false when m_cachedImage is 0.
 
26651
        * rendering/render_image.cpp: (WebCore::RenderImage::nullImage): Added.
 
26652
        Returns a global null image for use when we have no cached image.
 
26653
 
 
26654
        - fix http://bugs.webkit.org/show_bug.cgi?id=6919
 
26655
          REGRESSION: Background images don't paint when they are finished loading
 
26656
 
 
26657
        * rendering/render_object.h: Renamed the old setImage to imageChanged, the
 
26658
        new name for the same function.
 
26659
        * rendering/render_object.cpp: (WebCore::RenderObject::imageChanged): Ditto.
 
26660
        * rendering/render_list.cpp: (RenderListMarker::imageChanged): Changed the
 
26661
        call to parent to call the new imageChanged instead of the old setImage.
 
26662
 
 
26663
        - fixed something else that was causing some layout test crashes
 
26664
 
 
26665
        * kwq/KWQRenderTreeDebug.cpp: (externalRepresentation): Rearrange so we won't
 
26666
        ever dereference a null pointer here.
 
26667
 
 
26668
2006-01-29  Maciej Stachowiak  <mjs@apple.com>
 
26669
 
 
26670
        Reviewed by Darin.
 
26671
 
 
26672
        - replace QValueVector and QPtrVector use with Vector, and remove them.
 
26673
        http://bugs.webkit.org/show_bug.cgi?id=6909
 
26674
 
 
26675
        * ForwardingHeaders/q3valuevector.h: Removed.
 
26676
        * ForwardingHeaders/qptrvector.h: Removed.
 
26677
        * ForwardingHeaders/qvector.h: Removed.
 
26678
        * WebCore+SVG/KDOMSettings.cpp:
 
26679
        (KDOMSettings::init):
 
26680
        (KDOMSettings::isAdFiltered):
 
26681
        * WebCore.xcodeproj/project.pbxproj:
 
26682
        * bridge/mac/WebCoreFrameBridge.mm:
 
26683
        (-[WebCoreFrameBridge elementWithName:inForm:]):
 
26684
        (-[WebCoreFrameBridge controlsInForm:]):
 
26685
        * css/cssstyleselector.h:
 
26686
        * khtml/html/HTMLCollectionImpl.cpp:
 
26687
        (WebCore::HTMLCollectionImpl::updateNameCache):
 
26688
        (WebCore::HTMLCollectionImpl::namedItems):
 
26689
        * khtml/html/HTMLCollectionImpl.h:
 
26690
        * khtml/html/HTMLFormCollectionImpl.cpp:
 
26691
        (WebCore::HTMLFormCollectionImpl::HTMLFormCollectionImpl):
 
26692
        (WebCore::HTMLFormCollectionImpl::calcLength):
 
26693
        (WebCore::HTMLFormCollectionImpl::item):
 
26694
        (WebCore::HTMLFormCollectionImpl::getNamedFormItem):
 
26695
        (WebCore::HTMLFormCollectionImpl::updateNameCache):
 
26696
        * khtml/html/HTMLFormElementImpl.cpp:
 
26697
        (WebCore::HTMLFormElementImpl::~HTMLFormElementImpl):
 
26698
        (WebCore::HTMLFormElementImpl::length):
 
26699
        (WebCore::HTMLFormElementImpl::submitClick):
 
26700
        (WebCore::HTMLFormElementImpl::formData):
 
26701
        (WebCore::HTMLFormElementImpl::submit):
 
26702
        (WebCore::HTMLFormElementImpl::reset):
 
26703
        (WebCore::insertIntoVector):
 
26704
        (WebCore::removeFromVector):
 
26705
        (WebCore::HTMLFormElementImpl::formElementIndex):
 
26706
        (WebCore::HTMLFormElementImpl::registerImgElement):
 
26707
        * khtml/html/HTMLFormElementImpl.h:
 
26708
        * ksvg2/svg/SVGTextElementImpl.cpp:
 
26709
        * kwq/KWQComboBox.h:
 
26710
        * kwq/KWQListBox.h:
 
26711
        * kwq/KWQPtrVector.h: Removed.
 
26712
        * kwq/KWQRenderTreeDebug.cpp:
 
26713
        (writeLayers):
 
26714
        * kwq/KWQValueVector.h: Removed.
 
26715
        * kwq/KWQVectorImpl.cpp: Removed.
 
26716
        * kwq/KWQVectorImpl.h: Removed.
 
26717
        * loader/loader.cpp:
 
26718
        (WebCore::Loader::cancelRequests):
 
26719
        * rendering/render_layer.cpp:
 
26720
        (WebCore::RenderLayer::paintLayer):
 
26721
        (WebCore::RenderLayer::hitTestLayer):
 
26722
        (WebCore::compareZIndex):
 
26723
        (WebCore::RenderLayer::updateZOrderLists):
 
26724
        (WebCore::RenderLayer::collectLayers):
 
26725
        * rendering/render_layer.h:
 
26726
        (khtml::RenderLayer::posZOrderList):
 
26727
        (khtml::RenderLayer::negZOrderList):
 
26728
 
 
26729
2006-01-29  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
26730
 
 
26731
        Test: fast/table/border-collapsing/rtl-border-collapsing.html
 
26732
 
 
26733
        Reviewed by Darin.
 
26734
 
 
26735
        - fix http://bugs.webkit.org/show_bug.cgi?id=6888
 
26736
          Collapsed borders appear on the wrong side or on the wrong cell in RTL tables
 
26737
 
 
26738
        * rendering/RenderTable.cpp:
 
26739
        (WebCore::RenderTable::cellBefore): Renamed cellLeft to this.
 
26740
        (WebCore::RenderTable::cellAfter): Renamed cellRight to this.
 
26741
        * rendering/RenderTable.h:
 
26742
        * rendering/RenderTableCell.cpp:
 
26743
        (WebCore::RenderTableCell::collapsedLeftBorder): Added the RTL case.
 
26744
        (WebCore::RenderTableCell::collapsedRightBorder): Ditto.
 
26745
        (WebCore::RenderTableCell::borderLeft):
 
26746
        (WebCore::RenderTableCell::borderRight):
 
26747
        (WebCore::RenderTableCell::collectBorders):
 
26748
        (WebCore::RenderTableCell::paintCollapsedBorder):
 
26749
        * rendering/RenderTableCell.h:
 
26750
 
 
26751
2006-01-29  Darin Adler  <darin@apple.com>
 
26752
 
 
26753
        Reviewed by Maciej.
 
26754
 
 
26755
        - fix http://bugs.webkit.org/show_bug.cgi?id=6550
 
26756
          REGRESSION: window.open('myurl', '_self') fails to load myurl in current window
 
26757
 
 
26758
        Tests:
 
26759
        * fast/dom/Window/window-open-parent-no-parent.html: Added.
 
26760
        * fast/dom/Window/window-open-parent.html: Added.
 
26761
        * fast/dom/Window/window-open-self.html: Added.
 
26762
        * fast/dom/Window/window-open-top.html: Added.
 
26763
 
 
26764
        * khtml/ecma/kjs_window.cpp: (KJS::WindowFunc::callAsFunction):
 
26765
        Fix check for special frame names. These special frame names are supposed
 
26766
        to always be unaffected by pop-up blocking. But the code instead was
 
26767
        saying that the special frame names are always blocked. Oops!
 
26768
 
 
26769
2006-01-29  Darin Adler  <darin@apple.com>
 
26770
 
 
26771
        Suggested by Alexey.
 
26772
 
 
26773
        - fixed something Alexey noticed in the new exception names
 
26774
 
 
26775
        Test: fast/dom/Range/range-exceptions.html
 
26776
 
 
26777
        * khtml/ecma/kjs_binding.cpp: Added 0 to fix an off-by-one error for the
 
26778
        names of the two DOM range exceptions.
 
26779
 
 
26780
2006-01-29  David Harrison  <harrison@apple.com>
 
26781
 
 
26782
        Reviewed by John.
 
26783
 
 
26784
        Fix two problems with editing around empty list items:
 
26785
        1) Arrowing up or down to an empty list item skipped the list item
 
26786
        2) Deleting the content of a list item made it so you could never get the cursor inside the empty item
 
26787
 
 
26788
        Added tests:
 
26789
        * selection/move-by-line-002.html
 
26790
        * deleting/delete-listitem-002.html
 
26791
        
 
26792
        * khtml/editing/composite_edit_command.cpp:
 
26793
        (WebCore::CompositeEditCommand::addBlockPlaceholderIfNeeded):
 
26794
        - special check for empty list item because list marker assures non-zero height()
 
26795
        
 
26796
        * khtml/xml/dom_position.cpp:
 
26797
        (DOM::Position::inRenderedContent):
 
26798
        - fix check wrt BRs because text box is not required
 
26799
        
 
26800
        * rendering/bidi.cpp:
 
26801
        (khtml::RenderBlock::constructLine):
 
26802
        - make sure that br by itself in a list item gets a text-style box
 
26803
        
 
26804
        (khtml::RenderBlock::findNextLineBreak):
 
26805
        - make sure that br by itself in a list item gets a box at all
 
26806
 
 
26807
2006-01-29  Eric Seidel  <eseidel@apple.com>
 
26808
 
 
26809
        Reviewed by hyatt & darin.
 
26810
 
 
26811
        There are a few small, but intertwined fixes in this patch:
 
26812
 
 
26813
        Remaining fixes for SVGTetris:
 
26814
        http://bugs.webkit.org/show_bug.cgi?id=6889
 
26815
 
 
26816
        Testing blocked by: http://bugs.webkit.org/show_bug.cgi?id=6905
 
26817
 
 
26818
        Fix for CDF support:
 
26819
        http://bugs.webkit.org/show_bug.cgi?id=6025
 
26820
 
 
26821
        Updated test: svg/custom/simpleCDF.xml
 
26822
 
 
26823
        Fix for filter updating:
 
26824
        http://bugs.webkit.org/show_bug.cgi?id=6849
 
26825
 
 
26826
        Testing blocked by: http://bugs.webkit.org/show_bug.cgi?id=6904
 
26827
 
 
26828
        Also, as a side effect of 6849, fixed double-apply of filters, improving:
 
26829
        http://bugs.webkit.org/show_bug.cgi?id=6713
 
26830
 
 
26831
        Results updated for most tests, pixel results improved for filter tests.
 
26832
 
 
26833
        * kcanvas/KCanvasFilters.cpp:
 
26834
        (KCanvasFilter::filterBBoxForItemBBox): moved into baseclass
 
26835
        * kcanvas/KCanvasFilters.h:
 
26836
        * kcanvas/RenderSVGImage.cpp:
 
26837
        (RenderSVGImage::paint): use relativeBBox
 
26838
        (RenderSVGImage::relativeBBox): added
 
26839
        (RenderSVGImage::imageChanged): added
 
26840
        (RenderSVGImage::getAbsoluteRepaintRect): fixed
 
26841
        * kcanvas/RenderSVGImage.h:
 
26842
        (KSVG::RenderSVGImage::imageChanged): added.
 
26843
        * kcanvas/device/quartz/KCanvasFilterQuartz.h:
 
26844
        * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
 
26845
        (KCanvasFilterQuartz::applyFilter): use new baseclass method
 
26846
        (KCanvasFEFloodQuartz::getCIFilter): fixed.
 
26847
        * kcanvas/device/quartz/KCanvasItemQuartz.h:
 
26848
        * kcanvas/device/quartz/KCanvasItemQuartz.mm:
 
26849
        (KCanvasItemQuartz::layout): update width/height
 
26850
        (KCanvasItemQuartz::getAbsoluteRepaintRect): fixed.
 
26851
        (KCanvasItemQuartz::requiresLayer): moved to .cpp
 
26852
        (KCanvasItemQuartz::lineHeight): added.
 
26853
        (KCanvasItemQuartz::baselinePosition): added.
 
26854
        * kcanvas/device/quartz/KCanvasResourcesQuartz.h:
 
26855
        * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
 
26856
        (KCanvasContainerQuartz::canHaveChildren): moved to .cpp
 
26857
        (KCanvasContainerQuartz::requiresLayer): moved to .cpp
 
26858
        (KCanvasContainerQuartz::lineHeight): added.
 
26859
        (KCanvasContainerQuartz::baselinePosition): added.
 
26860
        (KCanvasContainerQuartz::paint): fixed.
 
26861
        (KCanvasContainerQuartz::viewportTransform): fixed.
 
26862
        (KCanvasContainerQuartz::getAbsoluteRepaintRect): fixed.
 
26863
        (KCanvasContainerQuartz::absoluteTransform): fixed.
 
26864
        * rendering/render_object.cpp:
 
26865
        (WebCore::RenderObject::absoluteTransform): fixed apply order.
 
26866
 
 
26867
2006-01-29  Eric Seidel  <eseidel@apple.com>
 
26868
 
 
26869
        Reviewed by hyatt.
 
26870
 
 
26871
        First set of fixes for SVG Tetris:
 
26872
        http://bugs.webkit.org/show_bug.cgi?id=6889
 
26873
 
 
26874
        Tests:
 
26875
        * svg/custom/viewport-update.svg
 
26876
        Key press test not yet possible:
 
26877
        http://bugs.webkit.org/show_bug.cgi?id=6906
 
26878
 
 
26879
        * bridge/mac/MacFrame.mm:
 
26880
        (MacFrame::keyEvent): pass key events to things other than HTML
 
26881
        * ksvg2/svg/SVGSVGElementImpl.cpp:
 
26882
        (WebCore::SVGSVGElementImpl::parseMappedAttribute): update viewport
 
26883
 
 
26884
2006-01-29  Eric Seidel  <eseidel@apple.com>
 
26885
 
 
26886
        Reviewed by mjs.
 
26887
 
 
26888
        Fix SVG layout tests crash due to Vector change.
 
26889
 
 
26890
        * kcanvas/device/KRenderingDevice.cpp:
 
26891
        (KRenderingDevice::currentContext): check isEmpty, return 0
 
26892
 
 
26893
2006-01-28  Eric Seidel  <eseidel@apple.com>
 
26894
 
 
26895
        Reviewed by mjs.
 
26896
 
 
26897
        Remove bogus IntRect operator.
 
26898
 
 
26899
        * platform/FloatRect.h:
 
26900
 
 
26901
2006-01-28  David Hyatt  <hyatt@apple.com>
 
26902
 
 
26903
        Cleanup of RenderImage.  Eliminate unneeded members and methods.
 
26904
 
 
26905
        Reviewed by darin
 
26906
 
 
26907
        * bridge/mac/WebCoreFrameBridge.mm:
 
26908
        (-[WebCoreFrameBridge elementAtPoint:]):
 
26909
        * khtml/ecma/kjs_html.cpp:
 
26910
        (KJS::KJS::Context2DFunction::callAsFunction):
 
26911
        (KJS::drawPattern):
 
26912
        * khtml/html/HTMLInputElementImpl.cpp:
 
26913
        (WebCore::HTMLInputElementImpl::attach):
 
26914
        * khtml/html/html_imageimpl.cpp:
 
26915
        (WebCore::HTMLImageLoader::notifyFinished):
 
26916
        (WebCore::HTMLImageElementImpl::attach):
 
26917
        * khtml/html/html_imageimpl.h:
 
26918
        (WebCore::HTMLImageElementImpl::compositeOperator):
 
26919
        * khtml/html/html_objectimpl.cpp:
 
26920
        (WebCore::HTMLObjectElementImpl::attach):
 
26921
        * ksvg2/svg/SVGImageElementImpl.cpp:
 
26922
        (SVGImageElementImpl::attach):
 
26923
        * kwq/KWQPainter.h:
 
26924
        * kwq/KWQPainter.mm:
 
26925
        (WebCore::QPainter::drawImageAtPoint):
 
26926
        (WebCore::QPainter::drawImageInRect):
 
26927
        (WebCore::QPainter::drawImage):
 
26928
        (WebCore::QPainter::drawFloatImage):
 
26929
        (WebCore::QPainter::drawTiledImage):
 
26930
        (WebCore::QPainter::drawScaledAndTiledImage):
 
26931
        * kwq/WebCoreImageRenderer.h:
 
26932
        * loader/CachedImage.cpp:
 
26933
        (WebCore::CachedImage::ref):
 
26934
        (WebCore::CachedImage::notifyObservers):
 
26935
        (WebCore::CachedImage::data):
 
26936
        (WebCore::CachedImage::error):
 
26937
        * loader/CachedImage.h:
 
26938
        * loader/CachedObjectClient.h:
 
26939
        (WebCore::CachedObjectClient::imageChanged):
 
26940
        * platform/Image.h:
 
26941
        (WebCore::Image::):
 
26942
        * platform/mac/Image.mm:
 
26943
        (WebCore::Image::Image):
 
26944
        (WebCore::Image::resetAnimation):
 
26945
        (WebCore::Image::operator=):
 
26946
        (WebCore::Image::stopAnimations):
 
26947
        (WebCore::):
 
26948
        (WebCore::Image::compositeOperatorFromString):
 
26949
        * rendering/render_box.cpp:
 
26950
        (WebCore::RenderBox::paintBackgroundExtended):
 
26951
        * rendering/render_canvasimage.cpp:
 
26952
        (WebCore::RenderCanvasImage::paint):
 
26953
        * rendering/render_image.cpp:
 
26954
        (WebCore::RenderImage::RenderImage):
 
26955
        (WebCore::RenderImage::~RenderImage):
 
26956
        (WebCore::RenderImage::setContentObject):
 
26957
        (WebCore::RenderImage::setCachedImage):
 
26958
        (WebCore::RenderImage::imageChanged):
 
26959
        (WebCore::RenderImage::resetAnimation):
 
26960
        (WebCore::RenderImage::paint):
 
26961
        (WebCore::RenderImage::layout):
 
26962
        (WebCore::RenderImage::updateAltText):
 
26963
        (WebCore::RenderImage::calcReplacedWidth):
 
26964
        (WebCore::RenderImage::calcReplacedHeight):
 
26965
        * rendering/render_image.h:
 
26966
        (WebCore::RenderImage::cachedImage):
 
26967
        (WebCore::RenderImage::image):
 
26968
        (WebCore::RenderImage::errorOccurred):
 
26969
        * rendering/render_list.cpp:
 
26970
        (RenderListMarker::paint):
 
26971
        (RenderListMarker::imageChanged):
 
26972
        * rendering/render_list.h:
 
26973
        * rendering/render_object.cpp:
 
26974
        (WebCore::RenderObject::paintBorderImage):
 
26975
        (WebCore::RenderObject::setImage):
 
26976
        * rendering/render_object.h:
 
26977
 
 
26978
2006-01-28  Darin Adler  <darin@apple.com>
 
26979
 
 
26980
        Reviewed by Eric.
 
26981
 
 
26982
        - fix http://bugs.webkit.org/show_bug.cgi?id=6711
 
26983
          crash if an event is dispatched to a listener that uses handleEvent
 
26984
 
 
26985
        Test: fast/events/dispatch-to-handle-event.html
 
26986
 
 
26987
        * khtml/ecma/kjs_events.cpp: (KJS::JSAbstractEventListener::handleEvent):
 
26988
        Remove boolean that is always false, and correct the one place that was
 
26989
        checking it to check the correct pointer instead.
 
26990
 
 
26991
2006-01-28  Maciej Stachowiak  <mjs@apple.com>
 
26992
 
 
26993
        Reviewed by Darin.
 
26994
 
 
26995
        - remove QPtrStack, replace with Vector or traverseNextNode as appropriate
 
26996
 
 
26997
        * WebCore.xcodeproj/project.pbxproj:
 
26998
        * kcanvas/device/KRenderingDevice.cpp:
 
26999
        (KRenderingDevice::currentContext):
 
27000
        (KRenderingDevice::popContext):
 
27001
        (KRenderingDevice::pushContext):
 
27002
        * kcanvas/device/KRenderingDevice.h:
 
27003
        * khtml/html/html_documentimpl.cpp:
 
27004
        * khtml/xml/DocumentImpl.cpp:
 
27005
        * khtml/xml/xml_tokenizer.cpp:
 
27006
        (WebCore::XMLTokenizer::XMLTokenizer):
 
27007
        * kwq/KWQAccObject.mm:
 
27008
        (-[KWQAccObject addChildrenToArray:]):
 
27009
        * kwq/KWQPainter.mm:
 
27010
        (WebCore::QPainter::save):
 
27011
        (WebCore::QPainter::restore):
 
27012
        * kwq/KWQPtrStack.h: Removed.
 
27013
        * ForwardingHeaders/qptrstack.h: Removed.
 
27014
        * ForwardingHeaders/q3ptrstack.h: Removed.
 
27015
 
 
27016
2006-01-28  Maciej Stachowiak  <mjs@apple.com>
 
27017
 
 
27018
        - added missing forwarding header to fix build.
 
27019
        
 
27020
        * ForwardingHeaders/kxmlcore/Vector.h: Added.
 
27021
 
 
27022
2006-01-28  Darin Adler  <darin@apple.com>
 
27023
 
 
27024
        * khtml/ecma/kjs_binding.cpp: (KJS::setDOMException): Removed extra parameter
 
27025
        to fix the build.
 
27026
 
 
27027
2006-01-28  Maciej Stachowiak  <mjs@apple.com>
 
27028
 
 
27029
        Reviewed by Darin.
 
27030
 
 
27031
        - converted KWQKURL to use Vector
 
27032
        http://bugs.webkit.org/show_bug.cgi?id=6900
 
27033
 
 
27034
        Use Vector in place of Array, and in place of the custom stack
 
27035
        buffers with overflow.
 
27036
        
 
27037
        * kwq/KWQKURL.mm:
 
27038
        (KURL::KURL):
 
27039
        (KURL::decode_string):
 
27040
        (KURL::parse):
 
27041
        (KURL::encode_string):
 
27042
        (findHostnamesInMailToURL):
 
27043
        (encodeHostnames):
 
27044
 
 
27045
2006-01-28  Darin Adler  <darin@apple.com>
 
27046
 
 
27047
        Reviewed by Maciej.
 
27048
 
 
27049
        - http://bugs.webkit.org/show_bug.cgi?id=6895
 
27050
          include exception names in JavaScript form of DOM exception
 
27051
 
 
27052
        * khtml/ecma/kjs_binding.cpp: (KJS::setDOMException): Include the name of the
 
27053
        exception in the error message.
 
27054
 
 
27055
2006-01-28  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
27056
 
 
27057
        Test: fast/table/add-before-anonymous-child.html
 
27058
 
 
27059
        Reviewed by Darin.
 
27060
 
 
27061
        - fix http://bugs.webkit.org/show_bug.cgi?id=5868
 
27062
          Crash on HP.com with ToT and Safari 2.0.2 in khtml::RenderContainer::detach()
 
27063
 
 
27064
        * rendering/RenderTableRow.cpp:
 
27065
        (WebCore::RenderTableRow::addChild): If beforeChild is inside an anonymous
 
27066
        cell, insert into the cell.
 
27067
        * rendering/RenderTableSection.cpp:
 
27068
        (WebCore::RenderTableSection::addChild): Changed comment.
 
27069
 
 
27070
2006-01-28  David Hyatt  <hyatt@apple.com>
 
27071
 
 
27072
        Eliminate the mask() method on Image.  It's unused.
 
27073
 
 
27074
        * platform/Image.h:
 
27075
        * platform/mac/Image.mm:
 
27076
 
 
27077
2006-01-28  David Hyatt  <hyatt@apple.com>
 
27078
 
 
27079
        Clean up the Image class.  Eliminate the MIME type member variable.
 
27080
        Eliminate an unused constructor.  Fix the constructor to take
 
27081
        a QString rather than an NSString so that it's portable.  Rename
 
27082
        the receivedData method to decode.  Move canRenderImageType into
 
27083
        the Image class as a static method.
 
27084
 
 
27085
        Reviewed by mjs
 
27086
 
 
27087
        * khtml/html/html_objectimpl.cpp:
 
27088
        (WebCore::HTMLObjectElementImpl::isImageType):
 
27089
        * kwq/KWQLoader.h:
 
27090
        * kwq/KWQLoader.mm:
 
27091
        (KWQResponseMIMEType):
 
27092
        * loader/CachedImage.cpp:
 
27093
        (WebCore::CachedImage::data):
 
27094
        * platform/Image.h:
 
27095
        * platform/mac/Image.mm:
 
27096
        (WebCore::Image::supportsType):
 
27097
        (WebCore::Image::Image):
 
27098
        (WebCore::Image::~Image):
 
27099
        (WebCore::Image::decode):
 
27100
        (WebCore::Image::operator=):
 
27101
 
 
27102
2006-01-28  Alexander Kellett  <lypanov@kde.org>
 
27103
 
 
27104
        Reviewed by eseidel.
 
27105
 
 
27106
        SourceAlpha does not display until window is redrawn (resized)
 
27107
        http://bugs.webkit.org/show_bug.cgi?id=6375
 
27108
 
 
27109
        Test: svg/custom/filter-source-alpha.svg
 
27110
 
 
27111
        * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
 
27112
        (KCanvasFilterQuartz::inputImage):
 
27113
 
 
27114
2006-01-28  David Hyatt  <hyatt@apple.com>
 
27115
 
 
27116
        Fix CachedImage.h/.cpp up.  Lots of cleanup.  Eliminated
 
27117
        unused code and cleaned up method and member names.
 
27118
 
 
27119
        Reviewed by darin
 
27120
 
 
27121
        * WebCore.xcodeproj/project.pbxproj:
 
27122
        * khtml/html/html_imageimpl.cpp:
 
27123
        (WebCore::HTMLImageElementImpl::width):
 
27124
        (WebCore::HTMLImageElementImpl::height):
 
27125
        * loader/CachedImage.cpp:
 
27126
        (WebCore::CachedImage::CachedImage):
 
27127
        (WebCore::CachedImage::ref):
 
27128
        (WebCore::CachedImage::deref):
 
27129
        (WebCore::CachedImage::image):
 
27130
        (WebCore::CachedImage::imageSize):
 
27131
        (WebCore::CachedImage::decodedRect):
 
27132
        (WebCore::CachedImage::notifyObservers):
 
27133
        (WebCore::CachedImage::clear):
 
27134
        (WebCore::CachedImage::data):
 
27135
        (WebCore::CachedImage::error):
 
27136
        (WebCore::CachedImage::checkNotify):
 
27137
        * loader/CachedImage.h:
 
27138
        (WebCore::CachedImage::isDecoded):
 
27139
        (WebCore::CachedImage::isErrorImage):
 
27140
        (WebCore::CachedImage::schedule):
 
27141
        (WebCore::CachedImage::isImage):
 
27142
        * loader/CachedImageCallback.cpp: Removed.
 
27143
        * loader/CachedImageCallback.h: Removed.
 
27144
        * loader/loader.cpp:
 
27145
        (WebCore::Loader::servePendingRequests):
 
27146
        (WebCore::Loader::slotFinished):
 
27147
        * platform/Image.h:
 
27148
        * platform/mac/Image.mm:
 
27149
        (WebCore::Image::receivedData):
 
27150
        * rendering/render_box.cpp:
 
27151
        (WebCore::RenderBox::paintBackgroundExtended):
 
27152
        * rendering/render_image.cpp:
 
27153
        (WebCore::RenderImage::setImage):
 
27154
        (WebCore::RenderImage::paint):
 
27155
        * rendering/render_line.cpp:
 
27156
        (WebCore::InlineFlowBox::paintBackground):
 
27157
        (WebCore::InlineFlowBox::paintBackgroundAndBorder):
 
27158
        * rendering/render_list.cpp:
 
27159
        (RenderListMarker::setImage):
 
27160
        * rendering/render_object.cpp:
 
27161
        (WebCore::RenderObject::mustRepaintBackgroundOrBorder):
 
27162
        (WebCore::RenderObject::paintBorder):
 
27163
        (WebCore::RenderObject::setImage):
 
27164
 
 
27165
2006-01-27  Maciej Stachowiak  <mjs@apple.com>
 
27166
 
 
27167
        Reviewed by Geoff.
 
27168
 
 
27169
        - GC after destroying the very last frame to avoid node leak false positives
 
27170
        http://bugs.webkit.org/show_bug.cgi?id=6884
 
27171
 
 
27172
        * ForwardingHeaders/JSLock.h: added
 
27173
        * page/Page.cpp:
 
27174
        (Page::~Page): In debug mode, when destroying the last page,
 
27175
        0 out m_mainFrame to destroy the very last frame and then garbage collect,
 
27176
        so a GC happens at a time when the stack won't have references into the JS
 
27177
        heap for the conservative GC to catch.
 
27178
 
 
27179
2006-01-27  Maciej Stachowiak  <mjs@apple.com>
 
27180
 
 
27181
        Reviewed by Eric.
 
27182
 
 
27183
        - remove nearly all the substance of ObjectContents and put it on Frame
 
27184
        http://bugs.webkit.org/show_bug.cgi?id=6885
 
27185
 
 
27186
        * ForwardingHeaders/kjs/JSLock.h: Added.
 
27187
        * bridge/mac/MacFrame.mm:
 
27188
        (Plugin::Plugin): renamed from KWQPluginPart, make it able to store a view.
 
27189
        (Plugin::view): And return the QWidget* view.
 
27190
        (MacFrame::createPart): Use Plugin instead of KWQPluginPart, avoid setWidget.
 
27191
        (MacFrame::setView): Don't use m_url directly so much, and use through d-> if
 
27192
        needed.
 
27193
        (MacFrame::userAgent): ditto
 
27194
        (MacFrame::openURLFromPageCache): ditto
 
27195
        * kwq/KWQObject.cpp:
 
27196
        (QObject::inherits): Removed case for ObjectContents, which is not long for this
 
27197
        world.
 
27198
        * kwq/KWQObject.h:
 
27199
        * page/Frame.cpp:
 
27200
        (Frame::init): Don't pass parent() to FramePrivate, we can't possibly have one
 
27201
        yet.
 
27202
        (Frame::restoreURL): d->m_url, not m_url
 
27203
        (Frame::didOpenURL): ditto
 
27204
        (Frame::executeScript): ditto
 
27205
        (Frame::receivedFirstData): ditto
 
27206
        (Frame::begin): ditto
 
27207
        (Frame::gotoAnchor): ditto
 
27208
        (Frame::requestObject): ditto, plus only use Frame methods when we really have a Frame.
 
27209
        (Frame::processObjectRequest): ditto, also get view() not widget().
 
27210
        (Frame::childFrame): remove excess spaces and pointless assert.
 
27211
        (Frame::parentFrame): just call parent() (could probably remove this).
 
27212
        (Frame::reparseConfiguration): d->m_url not m_url
 
27213
        (Frame::canCachePage): ditto
 
27214
        (Frame::updatePolicyBaseURL): ditto
 
27215
        (Frame::scrollToAnchor): ditto
 
27216
        (Frame::setName): set in FramePrivate
 
27217
        (Frame::name): get from FramePrivate
 
27218
        (Frame::setParent): similarly
 
27219
        (Frame::parent): similarly
 
27220
        (Frame::url): similarly
 
27221
        * page/Frame.h:
 
27222
        * page/FramePrivate.h:
 
27223
        (FramePrivate::FramePrivate): Added m_parent, m_name and m_url.
 
27224
        * page/FrameView.cpp:
 
27225
        (FrameView::viewportMousePressEvent): Call frame directly instead of
 
27226
        sending through QApplication.
 
27227
        (FrameView::viewportMouseDoubleClickEvent): ditto
 
27228
        (FrameView::viewportMouseMoveEvent): ditto
 
27229
        (FrameView::viewportMouseReleaseEvent): ditto
 
27230
        * page/ObjectContents.h:
 
27231
        (ObjectContents::ObjectContents): Removed url, setParent, parent, name,
 
27232
        setName, openURL, closeURL, widget, setWidget, event and customEvent methods,
 
27233
        and corresponding fields. Add pure virtual view() method.
 
27234
 
 
27235
2006-01-27  Darin Adler  <darin@apple.com>
 
27236
 
 
27237
        Reviewed by Adele.
 
27238
 
 
27239
        - fix http://bugs.webkit.org/show_bug.cgi?id=6075
 
27240
          REGRESSION: event.relatedTarget not working, breaks menus at www.ati.com
 
27241
 
 
27242
        Test: fast/events/related-target.html
 
27243
 
 
27244
        * khtml/xml/NodeImpl.h:
 
27245
        * khtml/xml/NodeImpl.cpp: (WebCore::NodeImpl::dispatchMouseEvent): Added a
 
27246
        relatedTarget parameter to a couple overloads.
 
27247
 
 
27248
        * page/FrameView.cpp:
 
27249
        (FrameView::viewportMouseMoveEvent): Moved code to set prevMouseX/Y out of here
 
27250
        and into dispatchMouseEvent, because it now handles mouseout and mouseover events,
 
27251
        and that's what these globals are used for. This fixes DumpRenderTree to work
 
27252
        properly with mouseout and mouseover (because it delivers only mouse down and up,
 
27253
        no mouse move events).
 
27254
        (FrameView::dispatchMouseEvent): Passed in the "other" node as the related target
 
27255
        for mouseout and mouseover events. Also set prevMouseX/Y.
 
27256
 
 
27257
2006-01-27  David Hyatt  <hyatt@apple.com>
 
27258
 
 
27259
        Fix for 6867.  Rename QPixmap to Image and move it to platform/.
 
27260
        Eliminate QPaintDevice and QPaintDeviceMetrics completely, since
 
27261
        they aren't necessary.
 
27262
 
 
27263
        Reviewed by anders
 
27264
 
 
27265
        * ForwardingHeaders/q3paintdevicemetrics.h: Removed.
 
27266
        * ForwardingHeaders/qpaintdevice.h: Removed.
 
27267
        * ForwardingHeaders/qpaintdevicemetrics.h: Removed.
 
27268
        * ForwardingHeaders/qpixmap.h: Removed.
 
27269
        * WebCore.xcodeproj/project.pbxproj:
 
27270
        * bridge/mac/MacFrame.mm:
 
27271
        (MacFrame::fileWrapperForElement):
 
27272
        * bridge/mac/WebCoreFrameBridge.mm:
 
27273
        (-[WebCoreFrameBridge reapplyStylesForDeviceType:]):
 
27274
        (nowPrinting):
 
27275
        (-[WebCoreFrameBridge elementAtPoint:]):
 
27276
        * css/css_valueimpl.cpp:
 
27277
        (WebCore::CSSPrimitiveValueImpl::computeLength):
 
27278
        (WebCore::CSSPrimitiveValueImpl::computeLengthFloat):
 
27279
        * css/css_valueimpl.h:
 
27280
        * css/csshelper.cpp:
 
27281
        * css/cssstyleselector.cpp:
 
27282
        (WebCore::CSSStyleSelector::CSSStyleSelector):
 
27283
        (WebCore::CSSStyleSelector::init):
 
27284
        (WebCore::CSSStyleSelector::initForStyleResolve):
 
27285
        (WebCore::CSSStyleSelector::styleForElement):
 
27286
        (WebCore::CSSStyleSelector::pseudoStyleForElement):
 
27287
        (WebCore::convertToLength):
 
27288
        (WebCore::CSSStyleSelector::applyProperty):
 
27289
        (WebCore::CSSStyleSelector::mapBackgroundXPosition):
 
27290
        (WebCore::CSSStyleSelector::mapBackgroundYPosition):
 
27291
        * css/cssstyleselector.h:
 
27292
        * kcanvas/KCanvasFilters.h:
 
27293
        (KCanvasFEImage::image):
 
27294
        (KCanvasFEImage::setImage):
 
27295
        * kcanvas/KCanvasImage.h:
 
27296
        * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
 
27297
        (KCanvasFEImageQuartz::getCIFilter):
 
27298
        * kcanvas/device/quartz/KCanvasResourcesQuartz.h:
 
27299
        (KCanvasImageQuartz::init):
 
27300
        * khtml/ecma/kjs_events.cpp:
 
27301
        (KJS::ClipboardProtoFunc::callAsFunction):
 
27302
        * khtml/ecma/kjs_html.cpp:
 
27303
        (KJS::KJS::Context2DFunction::callAsFunction):
 
27304
        (KJS::drawPattern):
 
27305
        (KJS::_rh):
 
27306
        (KJS::ImagePattern::createPattern):
 
27307
        * khtml/ecma/kjs_html.h:
 
27308
        (KJS::ImagePattern::image):
 
27309
        * khtml/ecma/kjs_window.cpp:
 
27310
        (KJS::Screen::getValueProperty):
 
27311
        * khtml/editing/SelectionController.h:
 
27312
        * khtml/html/html_imageimpl.h:
 
27313
        (WebCore::HTMLImageElementImpl::image):
 
27314
        * khtml/misc/helper.h:
 
27315
        * khtml/xml/DocumentImpl.cpp:
 
27316
        (WebCore::DocumentImpl::DocumentImpl):
 
27317
        (WebCore::DocumentImpl::~DocumentImpl):
 
27318
        (WebCore::DocumentImpl::recalcStyle):
 
27319
        (WebCore::DocumentImpl::attach):
 
27320
        (WebCore::DocumentImpl::detach):
 
27321
        * khtml/xml/DocumentImpl.h:
 
27322
        (WebCore::DocumentImpl::printing):
 
27323
        (WebCore::DocumentImpl::setPrinting):
 
27324
        * khtml/xml/dom2_eventsimpl.h:
 
27325
        * ksvg2/css/SVGCSSStyleSelector.cpp:
 
27326
        * ksvg2/misc/KCanvasRenderingStyle.cpp:
 
27327
        (WebCore::KSVGPainterFactory::cssPrimitiveToLength):
 
27328
        (WebCore::KSVGPainterFactory::strokePainter):
 
27329
        * ksvg2/svg/SVGCursorElementImpl.cpp:
 
27330
        (SVGCursorElementImpl::notifyFinished):
 
27331
        * ksvg2/svg/SVGCursorElementImpl.h:
 
27332
        (KSVG::SVGCursorElementImpl::image):
 
27333
        * ksvg2/svg/SVGDocumentImpl.cpp:
 
27334
        (SVGDocumentImpl::SVGDocumentImpl):
 
27335
        * ksvg2/svg/SVGFEImageElementImpl.cpp:
 
27336
        (SVGFEImageElementImpl::notifyFinished):
 
27337
        * ksvg2/svg/SVGMaskElementImpl.cpp:
 
27338
        (KSVG::SVGMaskElementImpl::drawMaskerContent):
 
27339
        * ksvg2/svg/SVGSVGElementImpl.cpp:
 
27340
        * kwq/KWQApplication.h:
 
27341
        * kwq/KWQApplication.mm:
 
27342
        (QDesktopWidget::screenDepth):
 
27343
        * kwq/KWQClipboard.h:
 
27344
        * kwq/KWQClipboard.mm:
 
27345
        (WebCore::KWQClipboard::dragImage):
 
27346
        (WebCore::KWQClipboard::setDragImage):
 
27347
        (WebCore::KWQClipboard::setDragImageElement):
 
27348
        * kwq/KWQComboBox.mm:
 
27349
        * kwq/KWQCursor.h:
 
27350
        * kwq/KWQCursor.mm:
 
27351
        (WebCore::createCustomCursor):
 
27352
        (WebCore::QCursor::QCursor):
 
27353
        * kwq/KWQKPartsEvent.h:
 
27354
        * kwq/KWQObject.h:
 
27355
        * kwq/KWQPaintDevice.h: Removed.
 
27356
        * kwq/KWQPaintDeviceMetrics.h: Removed.
 
27357
        * kwq/KWQPaintDeviceMetrics.mm: Removed.
 
27358
        * kwq/KWQPainter.h:
 
27359
        (WebCore::QPainter::printing):
 
27360
        * kwq/KWQPainter.mm:
 
27361
        (WebCore::QPainter::drawImage):
 
27362
        (WebCore::QPainter::drawFloatImage):
 
27363
        (WebCore::QPainter::drawTiledImage):
 
27364
        (WebCore::QPainter::drawScaledAndTiledImage):
 
27365
        * kwq/KWQPixmap.h: Removed.
 
27366
        * kwq/KWQPixmap.mm: Removed.
 
27367
        * kwq/KWQPrinter.h:
 
27368
        (QPrinter::QPrinter):
 
27369
        * kwq/KWQWidget.h:
 
27370
        * loader/Cache.cpp:
 
27371
        (khtml::Cache::init):
 
27372
        (khtml::Cache::clear):
 
27373
        (khtml::Cache::requestImage):
 
27374
        (khtml::Cache::getStatistics):
 
27375
        * loader/Cache.h:
 
27376
        * loader/CachedImage.cpp:
 
27377
        (WebCore::CachedImage::CachedImage):
 
27378
        (WebCore::CachedImage::ref):
 
27379
        (WebCore::CachedImage::tiled_image):
 
27380
        (WebCore::CachedImage::image):
 
27381
        (WebCore::CachedImage::image_size):
 
27382
        (WebCore::CachedImage::do_notify):
 
27383
        (WebCore::CachedImage::data):
 
27384
        (WebCore::CachedImage::error):
 
27385
        * loader/CachedImage.h:
 
27386
        * loader/CachedImageCallback.cpp:
 
27387
        (WebCore::CachedImageCallback::notifyUpdate):
 
27388
        (WebCore::CachedImageCallback::notifyFinished):
 
27389
        (WebCore::CachedImageCallback::handleError):
 
27390
        * loader/CachedObject.h:
 
27391
        (WebCore::CachedObject::):
 
27392
        * loader/CachedObjectClient.h:
 
27393
        (WebCore::CachedObjectClient::setImage):
 
27394
        * loader/DocLoader.cpp:
 
27395
        (khtml::DocLoader::setAutoloadImages):
 
27396
        (khtml::DocLoader::setShowAnimations):
 
27397
        * loader/loader.cpp:
 
27398
        (WebCore::Loader::servePendingRequests):
 
27399
        (WebCore::Loader::slotFinished):
 
27400
        * page/Frame.cpp:
 
27401
        (Frame::paint):
 
27402
        * page/Frame.h:
 
27403
        * page/FrameView.cpp:
 
27404
        (selectCursor):
 
27405
        * page/FrameView.h:
 
27406
        * platform/Image.h: Added.
 
27407
        * platform/mac/Image.mm: Added.
 
27408
        (WebCore::Image::loadResource):
 
27409
        (WebCore::Image::Image):
 
27410
        (WebCore::Image::~Image):
 
27411
        (WebCore::Image::imageRef):
 
27412
        (WebCore::Image::resetAnimation):
 
27413
        (WebCore::Image::setAnimationRect):
 
27414
        (-[WebImageCallback initWithCallback:WebCore::]):
 
27415
        (WebCore::Image::shouldUseThreadedDecoding):
 
27416
        (WebCore::Image::receivedData):
 
27417
        (WebCore::Image::mask):
 
27418
        (WebCore::Image::isNull):
 
27419
        (WebCore::Image::size):
 
27420
        (WebCore::Image::rect):
 
27421
        (WebCore::Image::width):
 
27422
        (WebCore::Image::height):
 
27423
        (WebCore::Image::resize):
 
27424
        (WebCore::Image::operator=):
 
27425
        (WebCore::Image::increaseUseCount):
 
27426
        (WebCore::Image::decreaseUseCount):
 
27427
        (WebCore::Image::stopAnimations):
 
27428
        (WebCore::Image::flushRasterCache):
 
27429
        * rendering/InlineTextBox.cpp:
 
27430
        (khtml::InlineTextBox::paint):
 
27431
        * rendering/InlineTextBox.h:
 
27432
        * rendering/RenderBlock.cpp:
 
27433
        (WebCore::RenderBlock::paintChildren):
 
27434
        (WebCore::RenderBlock::paintObject):
 
27435
        * rendering/RenderText.h:
 
27436
        * rendering/font.cpp:
 
27437
        (khtml::Font::update):
 
27438
        * rendering/font.h:
 
27439
        * rendering/render_box.cpp:
 
27440
        (WebCore::RenderBox::paintBackgroundExtended):
 
27441
        * rendering/render_canvasimage.cpp:
 
27442
        (WebCore::RenderCanvasImage::paint):
 
27443
        * rendering/render_flow.cpp:
 
27444
        (RenderFlow::paintLines):
 
27445
        * rendering/render_image.cpp:
 
27446
        (WebCore::RenderImage::RenderImage):
 
27447
        (WebCore::RenderImage::~RenderImage):
 
27448
        (WebCore::RenderImage::setContentObject):
 
27449
        (WebCore::RenderImage::setImage):
 
27450
        (WebCore::RenderImage::paint):
 
27451
        (WebCore::RenderImage::layout):
 
27452
        (WebCore::RenderImage::calcReplacedWidth):
 
27453
        (WebCore::RenderImage::calcReplacedHeight):
 
27454
        * rendering/render_image.h:
 
27455
        (WebCore::RenderImage::image):
 
27456
        (WebCore::RenderImage::getImage):
 
27457
        * rendering/render_line.cpp:
 
27458
        (WebCore::InlineFlowBox::paintBackground):
 
27459
        (WebCore::InlineFlowBox::paintBackgroundAndBorder):
 
27460
        * rendering/render_list.cpp:
 
27461
        (RenderListItem::getAbsoluteRepaintRect):
 
27462
        (RenderListMarker::paint):
 
27463
        (RenderListMarker::setImage):
 
27464
        (RenderListMarker::calcMinMaxWidth):
 
27465
        * rendering/render_list.h:
 
27466
        * rendering/render_object.cpp:
 
27467
        (WebCore::RenderObject::mustRepaintBackgroundOrBorder):
 
27468
        (WebCore::RenderObject::paintBorderImage):
 
27469
        (WebCore::RenderObject::paintBorder):
 
27470
        (WebCore::RenderObject::setImage):
 
27471
        * rendering/render_object.h:
 
27472
        * rendering/render_replaced.cpp:
 
27473
        (WebCore::RenderWidget::paint):
 
27474
        * rendering/render_replaced.h:
 
27475
        * rendering/render_theme_mac.mm:
 
27476
        (khtml::RenderThemeMac::setFontFromControlSize):
 
27477
 
 
27478
2006-01-27  Darin Adler  <darin@apple.com>
 
27479
 
 
27480
        Reviewed by Maciej.
 
27481
 
 
27482
        - fix another part of http://bugs.webkit.org/show_bug.cgi?id=6731
 
27483
          REGRESSION: change event fires at load time for checked items
 
27484
 
 
27485
        Revised test: fast/forms/radio-button-no-change-event.html
 
27486
 
 
27487
        * khtml/html/HTMLInputElementImpl.cpp: (WebCore::HTMLInputElementImpl::setChecked):
 
27488
        Don't send a change event for a radio button getting unchecked (matches Gecko at least).
 
27489
 
 
27490
2006-01-26  Eric Seidel  <eseidel@apple.com>
 
27491
 
 
27492
        Reviewed by mjs.
 
27493
 
 
27494
        Leak fixes in SVG code.
 
27495
        http://bugs.webkit.org/show_bug.cgi?id=6588
 
27496
 
 
27497
        * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
 
27498
        (teardownShadingWithStyle): delete image and context when through.
 
27499
        (KRenderingPaintServerGradientQuartz::KRenderingPaintServerGradientQuartz): zero out cached mask
 
27500
        (KRenderingPaintServerGradientQuartz::~KRenderingPaintServerGradientQuartz): destroy cached mask image.
 
27501
        (KRenderingPaintServerLinearGradientQuartz::setup): delete mask before making new
 
27502
        (KRenderingPaintServerRadialGradientQuartz::setup): delete mask before making new
 
27503
        * ksvg2/misc/KCanvasRenderingStyle.cpp:
 
27504
        (WebCore::sharedSolidPaintServer): forgot "static" keyword
 
27505
        * ksvg2/svg/SVGPolyElementImpl.cpp:
 
27506
        (SVGPolyElementImpl::notifyAttributeChange): use RefPtr
 
27507
 
 
27508
2006-01-26  Maciej Stachowiak  <mjs@apple.com>
 
27509
 
 
27510
        Reviewed by Eric.
 
27511
 
 
27512
        - various leaks on "fast" LayoutTests
 
27513
        
 
27514
        http://bugs.webkit.org/show_bug.cgi?id=6819
 
27515
        http://bugs.webkit.org/show_bug.cgi?id=6823
 
27516
        http://bugs.webkit.org/show_bug.cgi?id=6824
 
27517
        
 
27518
        It turns out these all had the same cause.
 
27519
        
 
27520
        * page/Frame.cpp:
 
27521
        (Frame::clear): If we have a document, make sure to cancel parsing,
 
27522
        in case it has a tokenizer and parser that are keeping it alive. Use
 
27523
        cancelParsing to avoid possibly accidentally firing the onload handler.
 
27524
        * khtml/xml/DocumentImpl.cpp:
 
27525
        (WebCore::DocumentImpl::cancelParsing): Factored out of implicitOpen.
 
27526
        (WebCore::DocumentImpl::implicitOpen): Call cancelParsing now.
 
27527
        * khtml/xml/DocumentImpl.h:
 
27528
 
 
27529
2006-01-26  Beth Dakin  <bdakin@apple.com>
 
27530
 
 
27531
        Reviewed by Hyatt.
 
27532
 
 
27533
        Fix for <rdar://problem/4256504> khtml::RenderBlock::skipWhitespace 
 
27534
        crashes upon interaction with radio buttons.
 
27535
 
 
27536
        The old code held an assumption that positioned elements would 
 
27537
        always have line boxes. This is not necessarily the case, so this 
 
27538
        patch makes sure that the lines are dirtied appropriately.
 
27539
 
 
27540
        * rendering/RenderContainer.cpp:
 
27541
        (WebCore::RenderContainer::removeChildNode): Call 
 
27542
        dirtyLinesFromChangedChild() if oldChild is positioned and has
 
27543
        inline children.
 
27544
        (WebCore::RenderContainer::insertChildNode): Only check the the 
 
27545
        child is not floating; it can be positioned.
 
27546
 
 
27547
2006-01-26  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
27548
 
 
27549
        Test: fast/dom/HTMLImageElement/image-without-renderer-width.html
 
27550
 
 
27551
        Reviewed and landed by Anders.
 
27552
 
 
27553
        - fix http://bugs.webkit.org/show_bug.cgi?id=6841
 
27554
          REGRESSION: WebKit (Thursday, January 26, 2006) crash in HTMLImageElementImpl::width()
 
27555
 
 
27556
        * khtml/html/html_imageimpl.cpp:
 
27557
        (WebCore::HTMLImageElementImpl::width): Return the image's dimensions only if it isn't
 
27558
        null, but even if it hasn't finished loading.
 
27559
        (WebCore::HTMLImageElementImpl::height): Ditto.
 
27560
 
 
27561
2006-01-26  Adele Peterson  <adele@apple.com>
 
27562
 
 
27563
        Reviewed by Hyatt and Vicki.
 
27564
 
 
27565
        Fix for broken layout tests.
 
27566
 
 
27567
        * khtml/html/HTMLInputElementImpl.cpp: (WebCore::HTMLInputElementImpl::focus): 
 
27568
 
 
27569
2006-01-26  Anders Carlsson  <andersca@mac.com>
 
27570
 
 
27571
        Reviewed by Eric.
 
27572
 
 
27573
        - http://bugs.webkit.org/show_bug.cgi?id=6845
 
27574
        Autogenerate more classes
 
27575
        
 
27576
        This makes DocumentType and DOMImplementation autogenerated.
 
27577
        
 
27578
        * JSCore.cpp: Added.
 
27579
        
 
27580
        * WebCore.xcodeproj/project.pbxproj:
 
27581
        Add JSCore.cpp
 
27582
        
 
27583
        * bindings/scripts/CodeGeneratorJS.pm:
 
27584
        Add attributes for controlling how null values should be converted
 
27585
        to and from DOMString objects.
 
27586
        
 
27587
        * bindings/scripts/IDLParser.pm:
 
27588
        * bindings/scripts/IDLStructure.pm:
 
27589
        Remove the extended attributes hash on attribute objects and
 
27590
        use the one on the signature.
 
27591
 
 
27592
        * khtml/ecma/kjs_dom.cpp:
 
27593
        (KJS::DOMNodeProtoFunc::callAsFunction):
 
27594
        For isSupported, just convert the version argument to an empty string if
 
27595
        null is passed in. The reason for this change is that the autogenerated
 
27596
        binding for DOMImplementation::hasFeature does the same thing. This also makes
 
27597
        us behave like Mozilla and Opera.
 
27598
        
 
27599
        (KJS::toDocumentType):
 
27600
        (KJS::getDOMNode):
 
27601
        Use JSDocumentType.
 
27602
        
 
27603
        (KJS::getDOMDOMImplementation):
 
27604
        Use JSDOMImplementation.
 
27605
        
 
27606
        * khtml/ecma/kjs_dom.h:
 
27607
        Remove DOMDOMImplementation and DOMDocumentType
 
27608
        
 
27609
        * khtml/xml/DOMImplementation.idl: Added.
 
27610
        * khtml/xml/DocumentType.idl: Added.
 
27611
 
 
27612
2006-01-26  Alexander Kellett  <lypanov@kde.org>
 
27613
 
 
27614
        Reviewed by eseidel.  Landed by eseidel.
 
27615
 
 
27616
        <text> elements with a scale on a parent <g> breaks nodeAtPoint
 
27617
        Fix http://bugs.webkit.org/show_bug.cgi?id=6843
 
27618
        
 
27619
        Test: svg/custom/text-hit-test.svg
 
27620
 
 
27621
        * kcanvas/RenderSVGText.cpp:
 
27622
        (RenderSVGText::nodeAtPoint):
 
27623
 
 
27624
2006-01-26  Maciej Stachowiak  <mjs@apple.com>
 
27625
 
 
27626
        Reviewed by Geoff.
 
27627
 
 
27628
        - fixed a couple hundred node leaks on the traversal layout tests
 
27629
        http://bugs.webkit.org/show_bug.cgi?id=6828
 
27630
 
 
27631
        There were three basic problems here, any one of which was enough
 
27632
        to cause the leak.
 
27633
        
 
27634
        1) If the filter function for a NodeFilter, NodeIterator or TreeWalker
 
27635
        had that object in scope, it would cause a GC reference cycle. I fixed
 
27636
        this by making these JS functions get marked by the corresponding JS object,
 
27637
        as for XMLHttpRequest.
 
27638
        
 
27639
        2) The TraversalImpl class that's a base class for NodeIteratorImpl and 
 
27640
        TreeWalkerImpl did not have a virtual destructor, leading the Shared
 
27641
        template to call the base class destructor on deref.
 
27642
        
 
27643
        3) ref/deref on the document were mismatched, I fixed all that sort of nonsense
 
27644
        by using RefPtr instead of manual ref/deref.
 
27645
        
 
27646
        * khtml/dom/dom2_traversal.h:
 
27647
        (DOM::NodeFilterCondition::mark): Add no-op virtual mark method, JS subclass
 
27648
        will do something useful here.
 
27649
        * khtml/ecma/kjs_traversal.cpp:
 
27650
        (KJS::DOMNodeIterator::mark): Mark the DOM-level filter.
 
27651
        (KJS::DOMNodeFilter::mark): ditto
 
27652
        (KJS::DOMTreeWalker::mark): ditto
 
27653
        (KJS::JSNodeFilterCondition::JSNodeFilterCondition): reformatted.
 
27654
        (KJS::JSNodeFilterCondition::mark): Mark the filter function.
 
27655
        * khtml/ecma/kjs_traversal.h:
 
27656
        * khtml/xml/dom2_traversalimpl.cpp:
 
27657
        (DOM::NodeFilterImpl::NodeFilterImpl): diligently applied RefPtr
 
27658
        (DOM::TraversalImpl::TraversalImpl): ditto
 
27659
        (DOM::TraversalImpl::~TraversalImpl): ditto
 
27660
        (DOM::NodeIteratorImpl::NodeIteratorImpl): ditto
 
27661
        (DOM::NodeIteratorImpl::~NodeIteratorImpl): ditto
 
27662
        (DOM::NodeIteratorImpl::setReferenceNode): ditto
 
27663
        (DOM::TreeWalkerImpl::TreeWalkerImpl): ditto
 
27664
        (DOM::TreeWalkerImpl::setCurrentNode): ditto
 
27665
        * khtml/xml/dom2_traversalimpl.h:
 
27666
        (DOM::NodeFilterImpl::mark): call mark() on the codition
 
27667
        (DOM::TraversalImpl::root): Use .get()
 
27668
        (DOM::TraversalImpl::filter): ditto
 
27669
        (DOM::NodeIteratorImpl::referenceNode): ditto
 
27670
        (DOM::NodeIteratorImpl::document): ditto
 
27671
        (DOM::TreeWalkerImpl::currentNode): ditto
 
27672
 
 
27673
2006-01-26  Maciej Stachowiak  <mjs@apple.com>
 
27674
 
 
27675
        Reviewed by Geoff.
 
27676
 
 
27677
        - fixed ~40 DOM nodes leaked when running any two of the outerHTML DOM tests (actually just a false positive)
 
27678
        http://bugs.webkit.org/show_bug.cgi?id=6822
 
27679
 
 
27680
        * kwq/KWQPageState.mm:
 
27681
        (-[KWQPageState clear]): Garbage collect after deleting a bunch of
 
27682
        stuff that holds onto JS objects. This should avoid false positive leaks
 
27683
        and is good in any case since page state deallocation is already deferred.
 
27684
 
 
27685
2006-01-26  Adele Peterson  <adele@apple.com>
 
27686
 
 
27687
        Reviewed by Vicki.
 
27688
 
 
27689
        - fix for <rdar://problem/4422624> REGRESSION: crash loading webmail.mac.com
 
27690
 
 
27691
        Test added:
 
27692
        fast/forms/input-no-renderer.html
 
27693
 
 
27694
        * khtml/html/HTMLInputElementImpl.cpp:
 
27695
        (WebCore::HTMLInputElementImpl::focus): Nil check for renderer.
 
27696
 
 
27697
2006-01-26  David Harrison  <harrison@apple.com>
 
27698
 
 
27699
        Reviewed by Timothy.
 
27700
 
 
27701
        - fix http://bugs.webkit.org/show_bug.cgi?id=6835
 
27702
          REGRESSION: WebKit crashes when loading a script on Wikipedia
 
27703
 
 
27704
        Test added:
 
27705
        editing/deleting/delete-listitem-001.html
 
27706
        
 
27707
        * rendering/render_list.cpp:
 
27708
        (RenderListItem::setStyle):
 
27709
        (RenderListItem::resetMarkerValue):
 
27710
        (RenderListItem::getAbsoluteRepaintRect):
 
27711
        (RenderListMarker::paint):
 
27712
 
 
27713
2006-01-26  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
27714
 
 
27715
        Reviewed by Darin, landed by ap.
 
27716
        
 
27717
        - fix http://bugs.webkit.org/show_bug.cgi?id=6388
 
27718
          REGRESSION: Incomplete repaint when dragging the map on Google maps
 
27719
 
 
27720
        * manual-tests/bugzilla-6388.html: Added.
 
27721
        * rendering/render_layer.cpp:
 
27722
        (WebCore::RenderLayer::computeRepaintRects): Cache the object's absolute position
 
27723
        before update.
 
27724
        (WebCore::RenderLayer::updateLayerPositions): Use the cached position to determine if
 
27725
        the object moved. If it did, do a full repaint.
 
27726
        * rendering/render_layer.h:
 
27727
 
 
27728
2006-01-26  Eric Seidel  <eseidel@apple.com>
 
27729
 
 
27730
        Fixes xcode project to better notice when generated files change.
 
27731
        Also fixes failing test cases on build slaves.
 
27732
 
 
27733
        * WebCore.xcodeproj/project.pbxproj:
 
27734
 
 
27735
2006-01-26  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
27736
 
 
27737
        Reviewed by Darin, committed by ap.
 
27738
        
 
27739
        - fix http://bugs.webkit.org/show_bug.cgi?id=6278
 
27740
          REGRESSION: Incomplete repaint when table cell width changes during layout
 
27741
 
 
27742
        * manual-tests/bugzilla-6278.html: Added.
 
27743
        * rendering/RenderTableSection.cpp:
 
27744
        (WebCore::RenderTableSection::setCellWidths): If during layout a cell changes from
 
27745
        not needing layout to needing layout, call repaintObjectsBeforeLayout on it.
 
27746
 
 
27747
2006-01-26  Eric Seidel  <eseidel@apple.com>
 
27748
 
 
27749
        Reviewed by mjs.
 
27750
 
 
27751
        SVG shows up blank in WebKit+SVG
 
27752
        http://bugs.webkit.org/show_bug.cgi?id=6620
 
27753
        
 
27754
        Test: svg/custom/viewport-no-width-height.svg
 
27755
 
 
27756
        * css/svg.css: default to width/height 100% for <svg>
 
27757
 
 
27758
2006-01-26  Anders Carlsson  <andersca@mac.com>
 
27759
 
 
27760
        Reviewed by Darin.
 
27761
 
 
27762
        http://bugs.webkit.org/show_bug.cgi?id=6805
 
27763
        Support constants in IDL files
 
27764
 
 
27765
        * bindings/scripts/CodeGeneratorJS.pm:
 
27766
        If an interface has constants, generate a constructor
 
27767
        object and add the constants as properties. Also add a
 
27768
        getConstructor method to the interface object.
 
27769
        
 
27770
        * bindings/scripts/CodeGenerator.pm:
 
27771
        * bindings/scripts/generate-bindings.pl:
 
27772
        Add a --force-generation flag to force regeneration of files
 
27773
        even though nothing has changed.
 
27774
        
 
27775
        * khtml/ecma/kjs_events.cpp:
 
27776
        * khtml/ecma/kjs_events.h:
 
27777
        Remove MutationEventConstructor and DOMMutationEvent,
 
27778
        those are autogenerated now.
 
27779
        
 
27780
        * bindings/js/JSEvents.cpp:
 
27781
        Include JSMutationEvent.cpp
 
27782
 
 
27783
        * khtml/ecma/kjs_window.cpp:        
 
27784
        (KJS::Window::getValueProperty):
 
27785
        * khtml/ecma/kjs_window.h:
 
27786
        (KJS::Window::):
 
27787
        Add MutationEvent property.
 
27788
        
 
27789
        * khtml/xml/MutationEvent.idl: Added.
 
27790
 
 
27791
2006-01-25  Alexander Kellett  <lypanov@kde.org>
 
27792
 
 
27793
        Reviewed by eseidel.  Landed by eseidel
 
27794
 
 
27795
        Percentage values for width, height are not rendered correctly.
 
27796
        http://bugs.webkit.org/show_bug.cgi?id=5331
 
27797
        
 
27798
        Tests:
 
27799
        * svg/custom/percentage-rect.svg
 
27800
        * svg/custom/percentage-rect2.svg
 
27801
 
 
27802
        Create items for even empty paths to prevent an empty render tree.
 
27803
        Calculate the viewport element on the fly rather than caching it,
 
27804
        unless there is no context from which to calculate it. Call 
 
27805
        notifyAttributeChange() on layout to fix usage of viewport
 
27806
        percentages for lengths. Remove portion of code which appears to 
 
27807
        do nothing but worsen the situation.
 
27808
 
 
27809
        * kcanvas/device/quartz/KCanvasItemQuartz.h:
 
27810
        * kcanvas/device/quartz/KCanvasItemQuartz.mm:
 
27811
        (KCanvasItemQuartz::layout):
 
27812
        * ksvg2/svg/SVGLengthImpl.cpp:
 
27813
        (SVGLengthImpl::value):
 
27814
        * ksvg2/svg/SVGStyledElementImpl.cpp:
 
27815
        (SVGStyledElementImpl::createRenderer):
 
27816
 
 
27817
2006-01-26  Eric Seidel  <eseidel@apple.com>
 
27818
 
 
27819
        Reviewed by hyatt.
 
27820
 
 
27821
        Disable <animateTransform> to stop layout test crashes.
 
27822
        http://bugs.webkit.org/show_bug.cgi?id=6780
 
27823
 
 
27824
        * ksvg2/misc/KSVGTimeScheduler.cpp: hack out animateTransform.
 
27825
 
 
27826
2006-01-26  Eric Seidel  <eseidel@apple.com>
 
27827
 
 
27828
        Reviewed by mjs.
 
27829
 
 
27830
        Deploy RefPtr throughout more of WebCore
 
27831
        http://bugs.webkit.org/show_bug.cgi?id=6754
 
27832
 
 
27833
        * bridge/mac/MacFrame.mm:
 
27834
        (MacFrame::shouldClose): no need to call .get()
 
27835
        * khtml/html/HTMLElementImpl.cpp:
 
27836
        (WebCore::HTMLElementImpl::createContextualFragment):
 
27837
        * khtml/html/HTMLSelectElementImpl.cpp:
 
27838
        (WebCore::HTMLSelectElementImpl::remove):
 
27839
        * khtml/html/HTMLTextAreaElementImpl.cpp:
 
27840
        (WebCore::HTMLTextAreaElementImpl::setDefaultValue):
 
27841
        * khtml/html/html_baseimpl.cpp:
 
27842
        (WebCore::HTMLBodyElementImpl::HTMLBodyElementImpl):
 
27843
        (WebCore::HTMLBodyElementImpl::~HTMLBodyElementImpl):
 
27844
        (WebCore::HTMLBodyElementImpl::createLinkDecl):
 
27845
        (WebCore::HTMLBodyElementImpl::parseMappedAttribute):
 
27846
        * khtml/html/html_baseimpl.h:
 
27847
        * khtml/html/html_headimpl.cpp:
 
27848
        (WebCore::HTMLLinkElementImpl::HTMLLinkElementImpl):
 
27849
        (WebCore::HTMLLinkElementImpl::~HTMLLinkElementImpl):
 
27850
        (WebCore::HTMLLinkElementImpl::process):
 
27851
        (WebCore::HTMLLinkElementImpl::setStyleSheet):
 
27852
        (WebCore::HTMLLinkElementImpl::isLoading):
 
27853
        (WebCore::HTMLStyleElementImpl::HTMLStyleElementImpl):
 
27854
        (WebCore::HTMLStyleElementImpl::childrenChanged):
 
27855
        (WebCore::HTMLStyleElementImpl::isLoading):
 
27856
        * khtml/html/html_headimpl.h:
 
27857
        (DOM::HTMLLinkElementImpl::sheet):
 
27858
        (DOM::HTMLStyleElementImpl::sheet):
 
27859
        * khtml/html/html_tableimpl.cpp:
 
27860
        (WebCore::HTMLTableElementImpl::parseMappedAttribute):
 
27861
        (WebCore::HTMLTableSectionElementImpl::insertRow):
 
27862
        (WebCore::HTMLTableSectionElementImpl::deleteRow):
 
27863
        (WebCore::HTMLTableRowElementImpl::deleteCell):
 
27864
        * khtml/xml/NodeImpl.cpp:
 
27865
        (WebCore::NodeImpl::dispatchEvent):
 
27866
        (WebCore::NodeImpl::dispatchGenericEvent):
 
27867
        (WebCore::NodeImpl::dispatchWindowEvent):
 
27868
        (WebCore::NodeImpl::dispatchMouseEvent):
 
27869
        (WebCore::NodeImpl::dispatchKeyEvent):
 
27870
        (WebCore::NodeImpl::createRendererIfNeeded):
 
27871
        * khtml/xml/NodeImpl.h:
 
27872
        * khtml/xml/dom_elementimpl.cpp:
 
27873
        (WebCore::MappedAttributeImpl::clone):
 
27874
        (WebCore::StyledElementImpl::StyledElementImpl):
 
27875
        (WebCore::StyledElementImpl::createInlineStyleDecl):
 
27876
        (WebCore::StyledElementImpl::destroyInlineStyleDecl):
 
27877
        (WebCore::StyledElementImpl::getInlineStyleDecl):
 
27878
        * khtml/xml/dom_elementimpl.h:
 
27879
        (DOM::MappedAttributeImpl::MappedAttributeImpl):
 
27880
        (DOM::MappedAttributeImpl::style):
 
27881
        (DOM::MappedAttributeImpl::decl):
 
27882
        (DOM::MappedAttributeImpl::setDecl):
 
27883
        (DOM::StyledElementImpl::inlineStyleDecl):
 
27884
        * khtml/xml/dom_position.cpp:
 
27885
        (DOM::Position::Position):
 
27886
        (DOM::Position::clear):
 
27887
        * khtml/xml/dom_position.h:
 
27888
        (DOM::Position::node):
 
27889
 
 
27890
2006-01-25  Maciej Stachowiak  <mjs@apple.com>
 
27891
 
 
27892
        Reviewed by Dave Hyatt.
 
27893
        
 
27894
        - garbage collect a bit later when destroying Frame (fixes node leak false positives)
 
27895
        http://bugs.webkit.org/show_bug.cgi?id=6818       
 
27896
 
 
27897
        * khtml/ecma/kjs_proxy.cpp:
 
27898
        (WebCore::KJSProxyImpl::~KJSProxyImpl): Garbage collect after destroying
 
27899
        the script interpreter.
 
27900
        * page/Frame.cpp:
 
27901
        (Frame::clear): Add a boolean parameter to indicate whether properties
 
27902
        of the window object should also be cleared (defaults to true).
 
27903
        (Frame::~Frame): Call clear(false) instead of clear()
 
27904
        * page/Frame.h:
 
27905
 
 
27906
2006-01-25  Maciej Stachowiak  <mjs@apple.com>
 
27907
 
 
27908
        Reviewed by Darin.
 
27909
 
 
27910
        - Turn on NodeImpl leak counter for debug builds
 
27911
        http://bugs.webkit.org/show_bug.cgi?id=6808
 
27912
 
 
27913
        * khtml/xml/NodeImpl.cpp:
 
27914
        (WebCore::NodeImplCounter::~NodeImplCounter): Uncomment node
 
27915
        counter now tit won't give a lot of false positives.
 
27916
 
 
27917
2006-01-25  Maciej Stachowiak  <mjs@apple.com>
 
27918
 
 
27919
        Reviewed by Dave Hyatt.
 
27920
        
 
27921
        - fixed "Whole DOM tree can leak if Document is hover/active/focus node on quit"
 
27922
        http://bugs.webkit.org/show_bug.cgi?id=6809
 
27923
        
 
27924
        This fixes 175 reproducible node leaks in the editing layout tests.
 
27925
        
 
27926
        * khtml/xml/DocumentImpl.cpp:
 
27927
        (WebCore::DocumentImpl::detach): Clear hover, focus and active nodes. It doesn't
 
27928
        make sense to have these without a view anyway, and if any of them is the document
 
27929
        it can cause a leak of the whole DOM.
 
27930
 
 
27931
2006-01-25  Adele Peterson  <adele@apple.com>
 
27932
 
 
27933
        Reviewed by Maciej.
 
27934
 
 
27935
        http://bugs.webkit.org/show_bug.cgi?id=6816
 
27936
        Crash in dispatchMouseEvent - Missing nil check
 
27937
 
 
27938
        No test added because I was not able to reproduce the crash reliably. 
 
27939
 
 
27940
        * page/FrameView.cpp: (FrameView::dispatchMouseEvent):
 
27941
 
 
27942
2006-01-25  Justin Garcia  <justin.garcia@apple.com>
 
27943
 
 
27944
        Reviewed by mjs
 
27945
        
 
27946
        <http://bugs.webkit.org/show_bug.cgi?id=6644>
 
27947
        TinyMCE: Undo operation crashes Safari
 
27948
        <rdar://problem/4343068>
 
27949
        Some shouldChangeSelection calls are nonsensical
 
27950
 
 
27951
        Notify the SelectionController of node removals,
 
27952
        and blow away the selection when end points are removed.
 
27953
 
 
27954
        Tests added:
 
27955
        * editing/selection/remove-node-1.html
 
27956
        * editing/selection/remove-node-2.html
 
27957
        
 
27958
        * khtml/editing/SelectionController.cpp:
 
27959
        (WebCore::MutationListener::handleEvent):
 
27960
        (WebCore::SelectionController::SelectionController):
 
27961
        (WebCore::SelectionController::~SelectionController):
 
27962
        (WebCore::SelectionController::operator=):
 
27963
        (WebCore::SelectionController::moveTo):
 
27964
        (WebCore::SelectionController::setSelection):
 
27965
        (WebCore::SelectionController::nodeWillBeRemoved):
 
27966
        (WebCore::SelectionController::clear):
 
27967
        (WebCore::SelectionController::setBase):
 
27968
        (WebCore::SelectionController::setExtent):
 
27969
        * khtml/editing/SelectionController.h:
 
27970
        (WebCore::MutationListener::MutationListener):
 
27971
        (WebCore::MutationListener::selectionController):
 
27972
        (WebCore::MutationListener::setSelectionController):
 
27973
        * rendering/RenderContainer.cpp:
 
27974
        (WebCore::RenderContainer::removeChildNode):
 
27975
        * rendering/render_flow.cpp:
 
27976
        (RenderFlow::destroy):
 
27977
 
 
27978
2006-01-25  Adele Peterson  <adele@apple.com>
 
27979
 
 
27980
        Reviewed by Hyatt.
 
27981
 
 
27982
        This change lets us display an aqua appearance for the new text fields.
 
27983
 
 
27984
        Updated results for:
 
27985
        * fast/forms/input-appearance-focus.html
 
27986
 
 
27987
        * rendering/RenderTextField.cpp: (WebCore::RenderTextField::createDivStyle): 
 
27988
          remove styling of the div, since RenderTheme handles that now.
 
27989
        * rendering/render_theme.cpp:
 
27990
        (khtml::RenderTheme::adjustStyle): call adjustTextFieldStyle.
 
27991
        (khtml::RenderTheme::paint): call paintTextField.
 
27992
        (khtml::RenderTheme::adjustTextFieldStyle): added FIXME to turn off appearance later.
 
27993
        * rendering/render_theme.h: added adjustTextFieldStyle, paintTextField
 
27994
        * rendering/render_theme_mac.h: added paintTextField, setTextFieldState, and NSTextFieldCell.
 
27995
        * rendering/render_theme_mac.mm:
 
27996
        (khtml::): Added static textFieldMargins.
 
27997
        (khtml::RenderThemeMac::adjustRepaintRect): update text field state and size.
 
27998
        (khtml::RenderThemeMac::paintTextField): Added. Paints the NSTextFieldCell
 
27999
        (khtml::RenderThemeMac::setTextFieldCellState): Initialize NSTextFieldCell, and update enabled state.
 
28000
 
 
28001
2006-01-25  David Hyatt  <hyatt@apple.com>
 
28002
 
 
28003
        Rename QBrush to Brush and move it to platform/.  Remove unused QPoint/Size/RectF forwarding
 
28004
        headers.
 
28005
 
 
28006
        * ForwardingHeaders/QPointF: Removed.
 
28007
        * ForwardingHeaders/QRectF: Removed.
 
28008
        * ForwardingHeaders/QSizeF: Removed.
 
28009
        * WebCore.xcodeproj/project.pbxproj:
 
28010
        * khtml/editing/SelectionController.cpp:
 
28011
        (WebCore::SelectionController::paintCaret):
 
28012
        * kwq/KWQBrush.h: Removed.
 
28013
        * kwq/KWQNamespace.h:
 
28014
        * kwq/KWQObject.h:
 
28015
        * kwq/KWQPainter.h:
 
28016
        * kwq/KWQPainter.mm:
 
28017
        (QPainter::setBrush):
 
28018
        (QPainter::brush):
 
28019
        (QPainter::drawRect):
 
28020
        (QPainter::drawEllipse):
 
28021
        (QPainter::drawConvexPolygon):
 
28022
        (QPainter::fillRect):
 
28023
        * kwq/KWQPalette.h:
 
28024
        (QColorGroup::brush):
 
28025
        * platform/Brush.h: Added.
 
28026
        (WebCore::Brush::):
 
28027
        (WebCore::Brush::Brush::Brush):
 
28028
        (WebCore::Brush::operator==):
 
28029
        (WebCore::Brush::operator!=):
 
28030
        * rendering/RenderBlock.cpp:
 
28031
        (WebCore::RenderBlock::fillHorizontalSelectionGap):
 
28032
        (WebCore::RenderBlock::fillVerticalSelectionGap):
 
28033
        (WebCore::RenderBlock::fillLeftSelectionGap):
 
28034
        (WebCore::RenderBlock::fillRightSelectionGap):
 
28035
        * rendering/render_box.cpp:
 
28036
        (WebCore::RenderBox::outlineBox):
 
28037
        * rendering/render_canvasimage.cpp:
 
28038
        (WebCore::RenderCanvasImage::paint):
 
28039
        * rendering/render_image.cpp:
 
28040
        (WebCore::RenderImage::paint):
 
28041
        * rendering/render_list.cpp:
 
28042
        (RenderListMarker::paint):
 
28043
        * rendering/render_replaced.cpp:
 
28044
        (WebCore::RenderWidget::paint):
 
28045
 
 
28046
2006-01-25  Anders Carlsson  <andersca@mac.com>
 
28047
 
 
28048
        Reviewed by Timothy Hatcher.
 
28049
 
 
28050
        http://bugs.webkit.org/show_bug.cgi?id=6807
 
28051
        generate-bindings.pl should not use find command
 
28052
        
 
28053
        * bindings/scripts/generate-bindings.pl:
 
28054
        Use opendir and readdir instead of find.
 
28055
 
 
28056
2006-01-25  David Hyatt <hyatt@apple.com
 
28057
 
 
28058
        Fix Win32 build bustage. Make the autogeneration from .idl work
 
28059
        just like it does on Mac.  Also update the project to account for
 
28060
        the move of QPen.
 
28061
 
 
28062
        * WebCore.vcproj/WebCore/WebCore.vcproj:
 
28063
        * WebCore.vcproj/WebCore/build-generated-files.sh:
 
28064
        * bindings/scripts/generate-bindings.pl:
 
28065
 
 
28066
2006-01-25  David Hyatt  <hyatt@apple.com>
 
28067
 
 
28068
        Rename QPen to Pen and move it to the platform/ directory.
 
28069
 
 
28070
        * ForwardingHeaders/qpen.h: Removed.
 
28071
        * WebCore.xcodeproj/project.pbxproj:
 
28072
        * kwq/KWQNamespace.h:
 
28073
        (Qt::):
 
28074
        * kwq/KWQPainter.h:
 
28075
        * kwq/KWQPainter.mm:
 
28076
        (QPainter::pen):
 
28077
        (QPainter::setPen):
 
28078
        (QPainter::drawRect):
 
28079
        (QPainter::drawLine):
 
28080
        (QPainter::drawEllipse):
 
28081
        (QPainter::drawArc):
 
28082
        (QPainter::drawConvexPolygon):
 
28083
        * kwq/KWQPen.cpp: Removed.
 
28084
        * kwq/KWQPen.h: Removed.
 
28085
        * platform/Pen.cpp: Added.
 
28086
        (WebCore::Pen::Pen):
 
28087
        (WebCore::Pen::color):
 
28088
        (WebCore::Pen::width):
 
28089
        (WebCore::Pen::style):
 
28090
        (WebCore::Pen::setColor):
 
28091
        (WebCore::Pen::setWidth):
 
28092
        (WebCore::Pen::setStyle):
 
28093
        (WebCore::Pen::operator==):
 
28094
        (WebCore::Pen::operator!=):
 
28095
        * platform/Pen.h: Added.
 
28096
        (WebCore::Pen::):
 
28097
        * rendering/InlineTextBox.cpp:
 
28098
        (khtml::InlineTextBox::paintMarkedTextUnderline):
 
28099
        * rendering/RenderTableCell.cpp:
 
28100
        (WebCore::outlineBox):
 
28101
        * rendering/RenderText.cpp:
 
28102
        * rendering/render_box.cpp:
 
28103
        (WebCore::RenderBox::outlineBox):
 
28104
        * rendering/render_frames.cpp:
 
28105
        (WebCore::RenderFrameSet::userResize):
 
28106
        * rendering/render_image.cpp:
 
28107
        * rendering/render_line.cpp:
 
28108
        * rendering/render_list.cpp:
 
28109
        * rendering/render_object.cpp:
 
28110
        (WebCore::RenderObject::drawBorder):
 
28111
 
 
28112
2006-01-25  Timothy Hatcher  <timothy@apple.com>
 
28113
 
 
28114
        Move off of -[NSFont widthOfString:] since it is now deprecated.
 
28115
        Use the NSStringDrawing -[NSString sizeWithAttributes:] API.
 
28116
 
 
28117
        * bridge/mac/MacFrame.mm:
 
28118
        (MacFrame::attributedString):
 
28119
        * kwq/KWQTextArea.mm:
 
28120
        (-[KWQTextAreaTextView sizeWithColumns:rows:]):
 
28121
 
 
28122
2006-01-24  Tim Omernick  <timo@apple.com>
 
28123
 
 
28124
        Reviewed by Dave Harrison.
 
28125
 
 
28126
        <rdar://problem/4339024>
 
28127
        <http://bugs.webkit.org/show_bug.cgi?id=6785> "Fix for possible leak of applet, object, or embed
 
28128
        (and plugin view)"
 
28129
        
 
28130
        No test cases added.  This is a fix for a leak which is difficult to trigger under normal page load
 
28131
        circumstances, because it requires that the host application modify an <embed> using the Objective C
 
28132
        API.
 
28133
 
 
28134
        * khtml/html/html_objectimpl.cpp:
 
28135
        (WebCore::HTMLAppletElementImpl::~HTMLAppletElementImpl):
 
28136
        Assert that appletInstance has been deleted by detach().
 
28137
        (WebCore::HTMLAppletElementImpl::detach):
 
28138
        Delete appletInstance, because it references the widget owned by the renderer we're about to destroy.
 
28139
        It is assumed elsewhere (getRuntimeObject(), kjs_dom.cpp) that the instance is owned by the applet
 
28140
        element.  Therefore, it is required that the element destroy the instance in its tear-down phase.
 
28141
        (WebCore::HTMLEmbedElementImpl::~HTMLEmbedElementImpl):
 
28142
        Assert that embedInstance has been deleted by detach().
 
28143
        (WebCore::HTMLEmbedElementImpl::detach):
 
28144
        Delete embedInstance, same reason.  This is the one that fixes <rdar://problem/4339024>.
 
28145
        (WebCore::HTMLObjectElementImpl::~HTMLObjectElementImpl):
 
28146
        Assert that objectInstance has been deleted by detach().
 
28147
        (WebCore::HTMLObjectElementImpl::detach):
 
28148
        Delete embedInstance, same reason.
 
28149
        * khtml/html/html_objectimpl.h:
 
28150
        Declared HTMLAppletElementImpl::detach() and HTMLEmbedElementImpl::detach().
 
28151
 
 
28152
2006-01-24  Anders Carlsson  <andersca@mac.com>
 
28153
 
 
28154
        Reviewed by Darin.
 
28155
 
 
28156
        - http://bugs.webkit.org/show_bug.cgi?id=5975
 
28157
        WebCore needs to use KDOM-like DOM binding autogeneration
 
28158
        
 
28159
        This is a first cut at an autogeneration framework based on 
 
28160
        what KDOM uses, but with some changes to be able to move
 
28161
        gradually to using autogenerated files. Currently only Javascript
 
28162
        is supported, but ObjC support could be added by writing a new code
 
28163
        generator package.
 
28164
        
 
28165
        * WebCore.xcodeproj/project.pbxproj:
 
28166
        Call generate-bindings.pl
 
28167
 
 
28168
        * bindings/js/JSEvents.cpp: Added.
 
28169
        New file which #includes all generated files in the event module
 
28170
        (Just JSWheelEvent.cpp for now)
 
28171
        
 
28172
        * khtml/xml/WheelEvent.idl: Added.
 
28173
        
 
28174
        * bindings/scripts: Added.
 
28175
        * bindings/scripts/CodeGenerator.pm: Added.
 
28176
        * bindings/scripts/CodeGeneratorJS.pm: Added.
 
28177
        * bindings/scripts/IDLParser.pm: Added.
 
28178
        * bindings/scripts/IDLStructure.pm: Added.
 
28179
        * bindings/scripts/generate-bindings.pl: Added.
 
28180
        
 
28181
        * khtml/ecma/kjs_events.cpp:
 
28182
        Remove DOMWheelEvent class.
 
28183
        
 
28184
        (KJS::getDOMEvent):
 
28185
        Use JSWheelEvent here.
 
28186
        
 
28187
        * khtml/ecma/kjs_events.h:
 
28188
        Remove DOMWheelEvent class.
 
28189
 
 
28190
2006-01-25  David Harrison  <harrison@apple.com>
 
28191
 
 
28192
        Reviewed by Justin.
 
28193
 
 
28194
        <rdar://problem/3907635> copy/paste of list item text moves list item up one <LI>
 
28195
        <rdar://problem/3907647> Enhance list editing: return inserts <li></li>
 
28196
        <rdar://problem/4060158> deleting selection within table deletes more than intended
 
28197
        <rdar://problem/4061232> Deleting a list can delete unselected content
 
28198
        <rdar://problem/4062212> after pasting in contents of web.apple.com, typing before start adds to table instead of before table
 
28199
        <rdar://problem/4064437> After copy/paste from bugweb cannot go back to entering text at left side of page
 
28200
        <rdar://problem/4259845> Table editing in design mode is broken
 
28201
        <rdar://problem/4287667> Insertion point goes before table instead of inside first cell
 
28202
        <rdar://problem/4345749> Editing HTML - Enter at end of <LI> inserts uneditable blank <LI>
 
28203
        <rdar://problem/4345794> HTML editing: Enter at end of last <LI> does not add new <LI>
 
28204
        <rdar://problem/4345825> HTML Editing: editing first <LI> element removes first <LI> and more
 
28205
        <rdar://problem/4345835> HTML editing: editing last <LI> removes everything within <BODY>
 
28206
        <rdar://problem/4345879> HTML editing: editing first <TD> moves data out of table
 
28207
 
 
28208
        ...also added showTree() static functions because switch to gcc 4.0 makes calling instance methods unreliable
 
28209
 
 
28210
        - numerous small changes to handle empty list items
 
28211
        - fix numeric list marker updating when adding/deleting list items
 
28212
        - start to decompose "special element" handling, replacing it with appropriate handling of the different
 
28213
          kinds of special elements in various situations, rather than giving a blanket treatment.  I will do more
 
28214
          of this in subsequent checkins.
 
28215
        - numerous small editing/selection changes to handle VisiblePosition at table offset childNodeCount()
 
28216
        - simplify and fix equivalentRangeCompliantPosition, rename it to rangeCompliantEquivalent and make it static
 
28217
        - some minor reformatting to current standards
 
28218
        - the comments in the list below are for changes not covered by the above comments
 
28219
        
 
28220
        * khtml/editing/Selection.cpp:
 
28221
        (WebCore::Selection::toRange):
 
28222
        (WebCore::Selection::validate):
 
28223
        * khtml/editing/SelectionController.cpp:
 
28224
        (WebCore::SelectionController::modifyExtendingLeftBackward):
 
28225
        - character selection backward from after table selects the table
 
28226
        (WebCore::showTree):
 
28227
        * khtml/editing/composite_edit_command.cpp:
 
28228
        (WebCore::CompositeEditCommand::removeFullySelectedNode):
 
28229
        - make sure empty cell has some height
 
28230
        (WebCore::CompositeEditCommand::positionOutsideTabSpan):
 
28231
        - check for !isTabSpanTextNode() to make calling this function easier
 
28232
        (WebCore::CompositeEditCommand::addBlockPlaceholderIfNeeded):
 
28233
        * khtml/editing/delete_selection_command.cpp:
 
28234
        (WebCore::positionBeforePossibleContainingSpecialElement):
 
28235
        (WebCore::positionAfterPossibleContainingSpecialElement):
 
28236
        (WebCore::DeleteSelectionCommand::initializeStartEnd):
 
28237
        - new.  more consistent handling of special element boundaries.
 
28238
        (WebCore::DeleteSelectionCommand::initializePositionData):
 
28239
        (WebCore::DeleteSelectionCommand::handleGeneralDelete):
 
28240
        - handle childless block (e.g. empty table cell)
 
28241
        - allow merging across list items
 
28242
        (WebCore::DeleteSelectionCommand::moveNodesAfterNode):
 
28243
        - use new isEmpty() method for renderers, to handle empty list items
 
28244
        * khtml/editing/delete_selection_command.h:
 
28245
        * khtml/editing/htmlediting.cpp:
 
28246
        (WebCore::isAtomicNode):
 
28247
        (WebCore::editingIgnoresContent):
 
28248
        - new.  smarter check than isReplaced()
 
28249
        (WebCore::rangeCompliantEquivalent):
 
28250
        (WebCore::maxDeepOffset):
 
28251
        (WebCore::isFirstVisiblePositionInSpecialElement):
 
28252
        (WebCore::positionBeforeContainingSpecialElement):
 
28253
        (WebCore::isLastVisiblePositionInSpecialElement):
 
28254
        (WebCore::positionAfterContainingSpecialElement):
 
28255
        (WebCore::positionOutsideContainingSpecialElement):
 
28256
        (WebCore::positionBeforeNode):
 
28257
        (WebCore::positionAfterNode):
 
28258
        (WebCore::isListElement):
 
28259
        (WebCore::isTableElement):
 
28260
        (WebCore::isFirstVisiblePositionAfterTableElement):
 
28261
        (WebCore::positionBeforePrecedingTableElement):
 
28262
        (WebCore::positionAvoidingSpecialElementBoundary):
 
28263
        * khtml/editing/htmlediting.h:
 
28264
        * khtml/editing/insert_line_break_command.cpp:
 
28265
        (khtml::InsertLineBreakCommand::doApply):
 
28266
        * khtml/editing/insert_paragraph_separator_command.cpp:
 
28267
        (khtml::InsertParagraphSeparatorCommand::doApply):
 
28268
        * khtml/editing/insert_text_command.cpp:
 
28269
        (khtml::InsertTextCommand::prepareForTextInsertion):
 
28270
        (khtml::InsertTextCommand::input):
 
28271
        * khtml/editing/replace_selection_command.cpp:
 
28272
        (WebCore::isMailPasteAsQuotationNode):
 
28273
        (WebCore::ReplacementFragment::countRenderedBlocks):
 
28274
        (WebCore::ReplaceSelectionCommand::doApply):
 
28275
        - allow for fact that fragments have no VisiblePositions
 
28276
        * khtml/editing/visible_position.cpp:
 
28277
        (khtml::VisiblePosition::isCandidate):
 
28278
        (khtml::showTree):
 
28279
        (khtml::makeRange):
 
28280
        (khtml::setStart):
 
28281
        (khtml::setEnd):
 
28282
        * khtml/editing/visible_position.h:
 
28283
        * khtml/editing/visible_units.cpp:
 
28284
        (khtml::previousBoundary):
 
28285
        (khtml::nextBoundary):
 
28286
        (khtml::startOfLine):
 
28287
        - allow for fact that renderers for list markers and other generated content
 
28288
          have no corresponding NodeImpl.
 
28289
        (khtml::endOfLine):
 
28290
        - ditto
 
28291
        (khtml::nextLinePosition):
 
28292
        (khtml::startOfParagraph):
 
28293
        (khtml::endOfParagraph):
 
28294
        * khtml/xml/ContainerNodeImpl.cpp:
 
28295
        (WebCore::ContainerNodeImpl::getUpperLeftCorner):
 
28296
        (WebCore::ContainerNodeImpl::childNode):
 
28297
        * khtml/xml/ContainerNodeImpl.h:
 
28298
        * khtml/xml/NodeImpl.cpp:
 
28299
        (WebCore::NodeImpl::childNode):
 
28300
        (WebCore::NodeImpl::traversePreviousNode):
 
28301
        (WebCore::NodeImpl::nextEditable):
 
28302
        (WebCore::showTree):
 
28303
        * khtml/xml/NodeImpl.h:
 
28304
        * khtml/xml/dom_position.cpp:
 
28305
        (DOM::Position::upstream):
 
28306
        (DOM::Position::downstream):
 
28307
        (DOM::Position::inRenderedContent):
 
28308
        (DOM::showTree):
 
28309
        * khtml/xml/dom_position.h:
 
28310
        * rendering/render_canvas.cpp:
 
28311
        (RenderCanvas::selectionRect):
 
28312
        * rendering/render_list.cpp:
 
28313
        (RenderListItem::calcListValue):
 
28314
        (RenderListItem::isEmpty):
 
28315
        (getParentOfFirstLineBox):
 
28316
        (RenderListItem::resetMarkerValue):
 
28317
        (RenderListItem::updateMarkerLocation):
 
28318
        * rendering/render_list.h:
 
28319
        (khtml::RenderListMarker::isListMarker):
 
28320
        * rendering/render_object.cpp:
 
28321
        (WebCore::RenderObject::nextRenderer):
 
28322
        (WebCore::RenderObject::previousRenderer):
 
28323
        (WebCore::showTree):
 
28324
        * rendering/render_object.h:
 
28325
        (WebCore::RenderObject::getBaselineOfLastLineBox):
 
28326
        (WebCore::RenderObject::isEmpty):
 
28327
 
 
28328
2006-01-25  Timothy Hatcher  <timothy@apple.com>
 
28329
 
 
28330
        Build fix, -[NSFont defaultLineHeightForFont] is deprecated.
 
28331
        We need to use -[NSLayoutManager defaultLineHeightForFont:] instead.
 
28332
 
 
28333
        * kwq/KWQLineEdit.mm:
 
28334
        (QLineEdit::sizeForCharacterWidth):
 
28335
        (QLineEdit::baselinePosition):
 
28336
 
 
28337
2006-01-24  Darin Adler  <darin@apple.com>
 
28338
 
 
28339
        Reviewed by Adele.
 
28340
 
 
28341
        - fix http://bugs.webkit.org/show_bug.cgi?id=6731
 
28342
          REGRESSION: change event fires at load time for checked items
 
28343
 
 
28344
        Test: fast/forms/radio-button-no-change-event.html
 
28345
 
 
28346
        * khtml/html/HTMLInputElementImpl.cpp: (WebCore::HTMLInputElementImpl::setChecked):
 
28347
        One of many possible fixes: Don't send the event if the element is not yet in
 
28348
        a document (as in when parsing the initial attributes).
 
28349
 
 
28350
2006-01-24  Adele Peterson  <adele@apple.com>
 
28351
 
 
28352
        Reviewed by Hyatt.
 
28353
 
 
28354
        This change will allow the new text field elements to get focus, and to respond to the focus and blur events.
 
28355
 
 
28356
        Added: fast/forms/input-appearance-focus.html
 
28357
 
 
28358
        * khtml/html/HTMLElementImpl.cpp: (WebCore::HTMLElementImpl::isFocusable): 
 
28359
          Removed recently added code that allowed editable elements with no parent to be focusable.  
 
28360
          We don't need to do this now that we try to focus the input element, instead of the inner div.
 
28361
        * khtml/html/HTMLGenericFormElementImpl.cpp: (WebCore::HTMLGenericFormElementImpl::isMouseFocusable): Added case to for text fields.
 
28362
        * khtml/html/HTMLInputElementImpl.cpp:
 
28363
        (WebCore::HTMLInputElementImpl::focus): Added. Selects contents of text field.
 
28364
        (WebCore::HTMLInputElementImpl::setSelectionStart): Added break; in switch statement.
 
28365
        (WebCore::HTMLInputElementImpl::setSelectionEnd): ditto.
 
28366
        (WebCore::HTMLInputElementImpl::select): ditto.
 
28367
        (WebCore::HTMLInputElementImpl::setSelectionRange): ditto.
 
28368
        * khtml/html/HTMLInputElementImpl.h: Added focus()
 
28369
        * khtml/xml/dom_elementimpl.h: Made focus() virtual.
 
28370
        * page/Frame.cpp: (Frame::setFocusNodeIfNeeded):
 
28371
          Walk up the Render Tree instead of the DOM tree when trying to find a node to focus.  
 
28372
          This will let us choose the input node instead of one of the nodes in the shadow tree.
 
28373
        * page/FrameView.cpp: (FrameView::dispatchMouseEvent): ditto.
 
28374
        * rendering/RenderContainer.cpp: (WebCore::RenderContainer::destroyLeftoverChildren): Corrected misspelling. 
 
28375
        * rendering/RenderTextField.cpp:
 
28376
        (WebCore::RenderTextField::select): Implemented.  Select contents of inner div.
 
28377
        * rendering/RenderTextField.h:
 
28378
        (WebCore::RenderTextField::renderName): Changed order.
 
28379
        (WebCore::RenderTextField::removeLeftoverAnonymousBoxes): ditto.
 
28380
 
 
28381
2006-01-24  Darin Adler  <darin@apple.com>
 
28382
 
 
28383
        Reviewed by Eric.
 
28384
 
 
28385
        - fix http://bugs.webkit.org/show_bug.cgi?id=6782
 
28386
          REGRESSION: replaceChild broken when node to replace is first (TinyMCE test app broken)
 
28387
 
 
28388
        - fix http://bugs.webkit.org/show_bug.cgi?id=6784
 
28389
          REGRESSION: 25 layout tests failing (basic DOM operations)
 
28390
 
 
28391
        Test: fast/dom/replace-first-child.html
 
28392
 
 
28393
        * khtml/xml/ContainerNodeImpl.cpp:
 
28394
        (WebCore::ContainerNodeImpl::insertBefore): Change one place that hands off ownership of
 
28395
        as PassRefPtr that causes us to almost always return 0. Fix test that would screw up when
 
28396
        both "prev" and "refChild->previousSibling()" were 0.
 
28397
        (WebCore::ContainerNodeImpl::appendChild): Changed a nearly-identical place handing off
 
28398
        ownership as above.
 
28399
 
 
28400
2006-01-24  Maciej Stachowiak  <mjs@apple.com>
 
28401
 
 
28402
        Reviewed by Dave Hyatt.
 
28403
        
 
28404
        - fixed crash if a node is removed from the DOM before being reparented due to residual style
 
28405
        http://bugs.webkit.org/show_bug.cgi?id=6778
 
28406
 
 
28407
        * khtml/html/htmlparser.cpp:
 
28408
        (HTMLParser::handleResidualStyleCloseTagAcrossBlocks): If the
 
28409
        block has been removed from the document, then do not remove it
 
28410
        from its parent or add it to its new location. This prevents the
 
28411
        crash and matches Mozilla.
 
28412
 
 
28413
2006-01-24  Darin Adler  <darin@apple.com>
 
28414
 
 
28415
        Reviewed by John Sullivan.
 
28416
 
 
28417
        - http://bugs.webkit.org/show_bug.cgi?id=6750
 
28418
          replace QDateTime with a simpler platform abstraction
 
28419
 
 
28420
        * ForwardingHeaders/qdatetime.h: Removed.
 
28421
        * kwq/KWQDateTime.cpp: Removed.
 
28422
        * kwq/KWQDateTime.h: Removed.
 
28423
 
 
28424
        * platform/SystemTime.h: Added.
 
28425
        * platform/mac/SystemTime.cpp: (WebCore::currentTime): Added.
 
28426
        * platform/win: Added.
 
28427
        * platform/win/SystemTime.cpp: (WebCore::currentTime): Added.
 
28428
 
 
28429
        * WebCore.vcproj/WebCore/WebCore.vcproj: Added new files, removed old.
 
28430
        * WebCore.xcodeproj/project.pbxproj: Ditto.
 
28431
 
 
28432
        * css/css_base.h: Removed include of <qdatetime.h>.
 
28433
        * css/cssstyleselector.cpp: Ditto.
 
28434
 
 
28435
        * khtml/html/htmltokenizer.h:
 
28436
        * khtml/html/htmltokenizer.cpp: Convert tabs to spaces.
 
28437
        (WebCore::HTMLTokenizer::continueProcessing): Change parameter from QTime to double.
 
28438
        Use currentTime() instead of QTime::elapsed().
 
28439
        (WebCore::HTMLTokenizer::write): Use currentTime() instead of QTime::elapsed().
 
28440
 
 
28441
        * config.h: Added HAVE_FUNC_USLEEP for now, not sure this is really a
 
28442
        good way to handle this.
 
28443
        * khtml/xml/ContainerNodeImpl.cpp: (WebCore::ContainerNodeImpl::setActive):
 
28444
        Use currentTime() instead of QTime::elapsed(). Use HAVE_FUNC_USLEEP for the if.
 
28445
 
 
28446
        * khtml/xml/DocumentImpl.h:
 
28447
        * khtml/xml/DocumentImpl.cpp:
 
28448
        (WebCore::DocumentImpl::DocumentImpl): Use currentTime() instead of QTime::elapsed().
 
28449
        (WebCore::DocumentImpl::implicitClose): Ditto.
 
28450
        (WebCore::DocumentImpl::minimumLayoutDelay): Ditto.
 
28451
        (WebCore::DocumentImpl::elapsedTime): Ditto.
 
28452
 
 
28453
        * khtml/xml/dom2_eventsimpl.cpp: (WebCore::EventImpl::EventImpl): Use currentTime()
 
28454
        instead of local function called currentTimeStamp().
 
28455
 
 
28456
        * khtml/xml/xml_tokenizer.h: Removed declaration of class QTime.
 
28457
 
 
28458
        * ksvg2/misc/KSVGTimeScheduler.h:
 
28459
        * ksvg2/misc/KSVGTimeScheduler.cpp:
 
28460
        (KSVG::TimeScheduler::TimeScheduler): Use currentTime instead of QTime::elapsed.
 
28461
        (KSVG::TimeScheduler::startAnimations): Ditto.
 
28462
        (KSVG::TimeScheduler::toggleAnimations): Ditto.
 
28463
        (KSVG::TimeScheduler::elapsed): Ditto.
 
28464
 
 
28465
        * page/Frame.cpp: (Frame::clear): Removed unused m_parsetime.
 
28466
        * page/FramePrivate.h: Ditto.
 
28467
 
 
28468
2006-01-24  David Hyatt  <hyatt@apple.com>
 
28469
 
 
28470
        Fix for bug 6781, convert QColor to Color (and QRgb to RGBA32).  r=maciej.
 
28471
 
 
28472
        * ForwardingHeaders/qcolor.h: Removed.
 
28473
        * WebCore+SVG/KDOMSettings.h:
 
28474
        * WebCore+SVG/RGBColorImpl.cpp:
 
28475
        (RGBColorImpl::RGBColorImpl):
 
28476
        (RGBColorImpl::red):
 
28477
        (RGBColorImpl::green):
 
28478
        (RGBColorImpl::blue):
 
28479
        * WebCore+SVG/RGBColorImpl.h:
 
28480
        * WebCore.xcodeproj/project.pbxproj:
 
28481
        * bindings/objc/DOMCSS.mm:
 
28482
        (getWrapperForRGB):
 
28483
        (setWrapperForRGB):
 
28484
        (removeWrapperForRGB):
 
28485
        (-[DOMRGBColor dealloc]):
 
28486
        (-[DOMRGBColor finalize]):
 
28487
        (-[DOMRGBColor red]):
 
28488
        (-[DOMRGBColor green]):
 
28489
        (-[DOMRGBColor blue]):
 
28490
        (-[DOMRGBColor _initWithRGB:]):
 
28491
        (+[DOMRGBColor _RGBColorWithRGB:]):
 
28492
        (-[DOMRGBColor alpha]):
 
28493
        (-[DOMRGBColor _color]):
 
28494
        * bridge/mac/MacFrame.mm:
 
28495
        (MacFrame::attributedString):
 
28496
        (MacFrame::fontAttributesForSelectionStart):
 
28497
        (MacFrame::bodyBackgroundColor):
 
28498
        (convertAttributesToUnderlines):
 
28499
        * css/css_valueimpl.cpp:
 
28500
        (WebCore::CSSPrimitiveValueImpl::CSSPrimitiveValueImpl):
 
28501
        (WebCore::CSSPrimitiveValueImpl::cssText):
 
28502
        * css/csshelper.h:
 
28503
        * css/cssparser.cpp:
 
28504
        (CSSParser::parseColor):
 
28505
        (CSSParser::parseColorFromValue):
 
28506
        * css/cssparser.h:
 
28507
        * css/cssstyleselector.cpp:
 
28508
        (WebCore::CSSStyleSelector::canShareStyleWithElement):
 
28509
        (WebCore::):
 
28510
        (WebCore::colorForCSSValue):
 
28511
        (WebCore::CSSStyleSelector::applyProperty):
 
28512
        (WebCore::CSSStyleSelector::getColorFromPrimitiveValue):
 
28513
        * css/cssstyleselector.h:
 
28514
        * kcanvas/KCanvasFilters.h:
 
28515
        (KCanvasFEDiffuseLighting::lightingColor):
 
28516
        (KCanvasFEDiffuseLighting::setLightingColor):
 
28517
        (KCanvasFEFlood::floodColor):
 
28518
        (KCanvasFEFlood::setFloodColor):
 
28519
        (KCanvasFESpecularLighting::lightingColor):
 
28520
        (KCanvasFESpecularLighting::setLightingColor):
 
28521
        * kcanvas/KCanvasTreeDebug.cpp:
 
28522
        (operator<<):
 
28523
        * kcanvas/KCanvasTreeDebug.h:
 
28524
        * kcanvas/device/KRenderingDevice.h:
 
28525
        * kcanvas/device/KRenderingPaintServerGradient.cpp:
 
28526
        (KCSortedGradientStopList::addStop):
 
28527
        * kcanvas/device/KRenderingPaintServerGradient.h:
 
28528
        * kcanvas/device/KRenderingPaintServerSolid.cpp:
 
28529
        (KRenderingPaintServerSolid::color):
 
28530
        (KRenderingPaintServerSolid::setColor):
 
28531
        * kcanvas/device/KRenderingPaintServerSolid.h:
 
28532
        * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
 
28533
        (ciColor):
 
28534
        * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
 
28535
        (setupShadingWithStyle):
 
28536
        * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
 
28537
        (KRenderingPaintServerPatternQuartz::setup):
 
28538
        * khtml/ecma/kjs_css.h:
 
28539
        * khtml/ecma/kjs_html.cpp:
 
28540
        (KJS::KJS::Context2DFunction::callAsFunction):
 
28541
        (KJS::colorRefFromValue):
 
28542
        (KJS::colorFromValue):
 
28543
        (KJS::Context2D::putValueProperty):
 
28544
        (KJS::GradientFunction::callAsFunction):
 
28545
        * khtml/ecma/kjs_html.h:
 
28546
        * khtml/editing/apply_style_command.cpp:
 
28547
        (WebCore::StyleChange::checkForLegacyHTMLStyleChange):
 
28548
        * khtml/html/html_baseimpl.cpp:
 
28549
        (WebCore::HTMLBodyElementImpl::parseMappedAttribute):
 
28550
        * khtml/misc/helper.h:
 
28551
        * khtml/xml/DocumentImpl.cpp:
 
28552
        (WebCore::DocumentImpl::DocumentImpl):
 
28553
        (WebCore::DocumentImpl::resetLinkColor):
 
28554
        (WebCore::DocumentImpl::resetVisitedLinkColor):
 
28555
        * khtml/xml/DocumentImpl.h:
 
28556
        (WebCore::DocumentImpl::setTextColor):
 
28557
        (WebCore::DocumentImpl::textColor):
 
28558
        (WebCore::DocumentImpl::linkColor):
 
28559
        (WebCore::DocumentImpl::visitedLinkColor):
 
28560
        (WebCore::DocumentImpl::activeLinkColor):
 
28561
        (WebCore::DocumentImpl::setLinkColor):
 
28562
        (WebCore::DocumentImpl::setVisitedLinkColor):
 
28563
        (WebCore::DocumentImpl::setActiveLinkColor):
 
28564
        * ksvg2/css/SVGCSSStyleSelector.cpp:
 
28565
        (KDOM::CSSStyleSelector::applySVGProperty):
 
28566
        * ksvg2/css/SVGRenderStyle.h:
 
28567
        * ksvg2/css/SVGRenderStyleDefs.h:
 
28568
        * ksvg2/misc/KCanvasRenderingStyle.cpp:
 
28569
        (WebCore::KSVGPainterFactory::fillPaintServer):
 
28570
        * ksvg2/misc/KSVGTimeScheduler.cpp:
 
28571
        (KSVG::SVGTimer::notifyAll):
 
28572
        * ksvg2/svg/SVGAnimateColorElementImpl.cpp:
 
28573
        (SVGAnimateColorElementImpl::handleTimerEvent):
 
28574
        (SVGAnimateColorElementImpl::clampColor):
 
28575
        (SVGAnimateColorElementImpl::color):
 
28576
        (SVGAnimateColorElementImpl::initialColor):
 
28577
        * ksvg2/svg/SVGAnimateColorElementImpl.h:
 
28578
        * ksvg2/svg/SVGAnimateElementImpl.cpp:
 
28579
        (SVGAnimateElementImpl::handleTimerEvent):
 
28580
        * ksvg2/svg/SVGColorImpl.cpp:
 
28581
        (SVGColorImpl::setRGBColor):
 
28582
        (SVGColorImpl::color):
 
28583
        * ksvg2/svg/SVGColorImpl.h:
 
28584
        * ksvg2/svg/SVGGradientElementImpl.cpp:
 
28585
        (SVGGradientElementImpl::rebuildStops):
 
28586
        * kwq/KWQAccObject.mm:
 
28587
        (AXAttributeStringSetStyle):
 
28588
        * kwq/KWQBrush.h:
 
28589
        (QBrush::QBrush::QBrush):
 
28590
        (QBrush::color):
 
28591
        (QBrush::setColor):
 
28592
        * kwq/KWQColor.h: Removed.
 
28593
        * kwq/KWQColor.mm: Removed.
 
28594
        * kwq/KWQColorData.gperf: Removed.
 
28595
        * kwq/KWQKConfigBase.h:
 
28596
        * kwq/KWQKConfigBase.mm:
 
28597
        (KConfig::readColorEntry):
 
28598
        * kwq/KWQLineEdit.mm:
 
28599
        (QLineEdit::setPalette):
 
28600
        * kwq/KWQNamespace.h:
 
28601
        (Qt::):
 
28602
        * kwq/KWQObject.h:
 
28603
        * kwq/KWQPainter.h:
 
28604
        * kwq/KWQPainter.mm:
 
28605
        (QPainter::setPen):
 
28606
        (QPainter::setBrush):
 
28607
        (QPainter::drawText):
 
28608
        (QPainter::drawHighlightForText):
 
28609
        (QPainter::selectedTextBackgroundColor):
 
28610
        (_fillRectXX):
 
28611
        (QPainter::setShadow):
 
28612
        (QPainter::initFocusRing):
 
28613
        * kwq/KWQPalette.h:
 
28614
        (QColorGroup::QColorGroup):
 
28615
        (QColorGroup::color):
 
28616
        (QColorGroup::setColor):
 
28617
        (QColorGroup::background):
 
28618
        (QColorGroup::foreground):
 
28619
        (QColorGroup::base):
 
28620
        (QPalette::QPalette):
 
28621
        (QPalette::background):
 
28622
        (QPalette::foreground):
 
28623
        * kwq/KWQPen.cpp:
 
28624
        (QPen::QPen):
 
28625
        (QPen::color):
 
28626
        (QPen::setColor):
 
28627
        * kwq/KWQPen.h:
 
28628
        * kwq/KWQRenderTreeDebug.cpp:
 
28629
        (operator<<):
 
28630
        * kwq/KWQTextEdit.mm:
 
28631
        (QTextEdit::setPalette):
 
28632
        * loader/CachedImage.cpp:
 
28633
        (WebCore::CachedImage::tiled_pixmap):
 
28634
        * loader/CachedImage.h:
 
28635
        * page/Frame.cpp:
 
28636
        (Frame::paint):
 
28637
        * page/Frame.h:
 
28638
        (MarkedTextUnderline::MarkedTextUnderline):
 
28639
        * platform/Color.cpp: Added.
 
28640
        (WebCore::makeRGB):
 
28641
        (WebCore::makeRGBA):
 
28642
        (WebCore::parseHexColor):
 
28643
        (WebCore::Color::Color):
 
28644
        (WebCore::Color::name):
 
28645
        (WebCore::Color::setNamedColor):
 
28646
        (WebCore::Color::hsv):
 
28647
        (WebCore::Color::setHsv):
 
28648
        (WebCore::Color::light):
 
28649
        (WebCore::Color::dark):
 
28650
        (WebCore::Color::getRgbaF):
 
28651
        * platform/Color.h: Added.
 
28652
        (WebCore::Color::Color):
 
28653
        (WebCore::Color::rgb):
 
28654
        (WebCore::Color::setRgb):
 
28655
        (WebCore::operator==):
 
28656
        (WebCore::operator!=):
 
28657
        * platform/ColorData.gperf: Added.
 
28658
        * rendering/InlineTextBox.cpp:
 
28659
        (khtml::simpleDifferenceBetweenColors):
 
28660
        (khtml::correctedTextColor):
 
28661
        (khtml::InlineTextBox::paint):
 
28662
        (khtml::InlineTextBox::paintSelection):
 
28663
        (khtml::InlineTextBox::paintMarkedTextBackground):
 
28664
        (khtml::InlineTextBox::paintDecoration):
 
28665
        * rendering/RenderTable.h:
 
28666
        (WebCore::RenderTable::bgColor):
 
28667
        * rendering/RenderTableCell.cpp:
 
28668
        (WebCore::outlineBox):
 
28669
        (WebCore::RenderTableCell::paintBoxDecorations):
 
28670
        * rendering/font.cpp:
 
28671
        (khtml::Font::drawHighlightForText):
 
28672
        (khtml::Font::drawText):
 
28673
        * rendering/font.h:
 
28674
        * rendering/render_box.cpp:
 
28675
        (WebCore::RenderBox::paintRootBoxDecorations):
 
28676
        (WebCore::RenderBox::paintBackgrounds):
 
28677
        (WebCore::RenderBox::paintBackground):
 
28678
        (WebCore::RenderBox::paintBackgroundExtended):
 
28679
        (WebCore::RenderBox::outlineBox):
 
28680
        * rendering/render_box.h:
 
28681
        * rendering/render_flow.cpp:
 
28682
        (RenderFlow::paintFocusRing):
 
28683
        (RenderFlow::paintOutlineForLine):
 
28684
        * rendering/render_form.cpp:
 
28685
        (RenderFieldset::paintBorderMinusLegend):
 
28686
        * rendering/render_frames.cpp:
 
28687
        (WebCore::RenderFrameSet::userResize):
 
28688
        * rendering/render_image.cpp:
 
28689
        (WebCore::RenderImage::paint):
 
28690
        * rendering/render_layer.h:
 
28691
        * rendering/render_line.cpp:
 
28692
        (WebCore::InlineFlowBox::paintBackgrounds):
 
28693
        (WebCore::InlineFlowBox::paintBackground):
 
28694
        (WebCore::InlineFlowBox::paintBackgroundAndBorder):
 
28695
        (WebCore::InlineFlowBox::paintDecorations):
 
28696
        (WebCore::EllipsisBox::paint):
 
28697
        * rendering/render_line.h:
 
28698
        * rendering/render_list.cpp:
 
28699
        (RenderListMarker::paint):
 
28700
        * rendering/render_object.cpp:
 
28701
        (WebCore::RenderObject::drawBorder):
 
28702
        (WebCore::RenderObject::paintBorder):
 
28703
        (WebCore::RenderObject::paintOutline):
 
28704
        (WebCore::RenderObject::selectionColor):
 
28705
        (WebCore::RenderObject::getTextDecorationColors):
 
28706
        * rendering/render_object.h:
 
28707
        (WebCore::RenderObject::paintBackgroundExtended):
 
28708
        * rendering/render_replaced.cpp:
 
28709
        (WebCore::RenderReplaced::selectionColor):
 
28710
        * rendering/render_replaced.h:
 
28711
        * rendering/render_style.h:
 
28712
        (khtml::BorderValue::isTransparent):
 
28713
        (khtml::CollapsedBorderValue::color):
 
28714
        (khtml::RenderStyle::hasBackground):
 
28715
        (khtml::RenderStyle::borderLeftColor):
 
28716
        (khtml::RenderStyle::borderRightColor):
 
28717
        (khtml::RenderStyle::borderTopColor):
 
28718
        (khtml::RenderStyle::borderBottomColor):
 
28719
        (khtml::RenderStyle::outlineColor):
 
28720
        (khtml::RenderStyle::color):
 
28721
        (khtml::RenderStyle::backgroundColor):
 
28722
        (khtml::RenderStyle::setBackgroundColor):
 
28723
        (khtml::RenderStyle::setBorderLeftColor):
 
28724
        (khtml::RenderStyle::setBorderRightColor):
 
28725
        (khtml::RenderStyle::setBorderTopColor):
 
28726
        (khtml::RenderStyle::setBorderBottomColor):
 
28727
        (khtml::RenderStyle::setOutlineColor):
 
28728
        (khtml::RenderStyle::setColor):
 
28729
        (khtml::RenderStyle::initialColor):
 
28730
        * rendering/render_theme.cpp:
 
28731
        (khtml::RenderTheme::isControlStyled):
 
28732
        * rendering/render_theme.h:
 
28733
 
 
28734
2006-01-24  Darin Adler  <darin@apple.com>
 
28735
 
 
28736
        Reviewed by John and Anders.
 
28737
 
 
28738
        - fix http://bugs.webkit.org/show_bug.cgi?id=6732
 
28739
          REGRESSION: Repro crash at Google Maps
 
28740
 
 
28741
        * khtml/ecma/JSXMLHttpRequest.cpp:
 
28742
        (KJS::JSXMLHttpRequest::getValueProperty): Clean up a bit, using PassRefPtr where appropriate.
 
28743
        (KJS::JSXMLHttpRequest::mark): Remove get calls now that getter functions don't return PassRefPtr.
 
28744
        (KJS::JSXMLHttpRequest::JSXMLHttpRequest): Put the object into the DOM objects map.
 
28745
        (KJS::JSXMLHttpRequest::~JSXMLHttpRequest): Remove the object from the DOM objects map. Also clear
 
28746
        out both listeners so the implementation object isn't left with dangling pointers (since we won't
 
28747
        be around to mark those objects any more).
 
28748
        (KJS::JSXMLHttpRequestProtoFunc::callAsFunction): Tightened up the code a bit.
 
28749
 
 
28750
        * xml/xmlhttprequest.h:
 
28751
        * xml/xmlhttprequest.cpp:
 
28752
        (WebCore::XMLHttpRequest::getResponseXML): Change to return just a plain old pointer. Remove
 
28753
        the unnecessary typeIsXML boolean.
 
28754
        (WebCore::XMLHttpRequest::onReadyStateChangeListener): Change to return just a plain old pointer.
 
28755
        Update for name changes.
 
28756
        (WebCore::XMLHttpRequest::setOnReadyStateChangeListener): Ditto.
 
28757
        (WebCore::XMLHttpRequest::onLoadListener): Ditto.
 
28758
        (WebCore::XMLHttpRequest::setOnLoadListener): Ditto.
 
28759
        (WebCore::XMLHttpRequest::send): Protect the DOM wrapper if any as well as ourselves while
 
28760
        the load is in progress.
 
28761
        (WebCore::XMLHttpRequest::abort): Unprotect to balance out the above.
 
28762
        (WebCore::XMLHttpRequest::slotFinished): Ditto.
 
28763
 
 
28764
        * khtml/ecma/JSXMLHttpRequest.h: Just formatting changes.
 
28765
 
 
28766
2006-01-24  Darin Adler  <darin@apple.com>
 
28767
 
 
28768
        Reviewed by Justin.
 
28769
 
 
28770
        - fix http://bugs.webkit.org/show_bug.cgi?id=6753
 
28771
          REGRESSION (r12282-12292): Crash loading TinyMCE test app
 
28772
 
 
28773
        * khtml/xml/ContainerNodeImpl.h: Remove some internals that don't need
 
28774
        to be member functions.
 
28775
        * khtml/xml/ContainerNodeImpl.cpp:
 
28776
        (WebCore::ContainerNodeImpl::insertBefore): Improved algorithm to keep
 
28777
        refs to more things so that we don't end up with a dangling pointer (fixes
 
28778
        the crash) and so that we do not crash if someone modifies the tree inside
 
28779
        a DOM mutation event handler (theoretical only at this point, needs test
 
28780
        cases).
 
28781
        (WebCore::ContainerNodeImpl::replaceChild): Ditto.
 
28782
        (WebCore::willRemoveChild): Changed from member function to free function.
 
28783
        (WebCore::ContainerNodeImpl::removeChild): Fix potential problem if the
 
28784
        mutation event handler moves the node into a different parent.
 
28785
        (WebCore::ContainerNodeImpl::appendChild): Made changes like those in
 
28786
        insertBefore above.
 
28787
        (WebCore::dispatchChildInsertionEvents): Changed from member function to
 
28788
        free function. Tightened up handling of some edge cases.
 
28789
        (WebCore::dispatchChildRemovalEvents): Ditto.
 
28790
 
 
28791
2006-01-24  Darin Adler  <darin@apple.com>
 
28792
 
 
28793
        Reviewed by John Sullivan.
 
28794
 
 
28795
        - fix http://bugs.webkit.org/show_bug.cgi?id=6696
 
28796
          REGRESSION: JavaScript window.opener set incorrectly
 
28797
 
 
28798
        * khtml/ecma/kjs_window.cpp: (KJS::WindowFunc::callAsFunction):
 
28799
        Fix local variable "frame" that was shadowing another local variable
 
28800
        named "frame" by naming the one for the new frame "newFrame".
 
28801
 
 
28802
2006-01-24  Maciej Stachowiak  <mjs@apple.com>
 
28803
 
 
28804
        - fix build
 
28805
 
 
28806
        * ksvg2/scripts/make_names.pl: Update script to generate code that
 
28807
        works with the new HashMap.
 
28808
 
 
28809
2006-01-23  Darin Adler  <darin@apple.com>
 
28810
 
 
28811
        Reviewed by Eric.
 
28812
 
 
28813
        - fixed a storage leak found by running run-webkit-tests fast --leak
 
28814
 
 
28815
        * khtml/xml/dom_xmlimpl.cpp:
 
28816
        (ProcessingInstructionImpl::checkStyleSheet): Removed bogus deref call,
 
28817
        since the RefPtr handles it for us. Also deployed PassRefPtr in one place.
 
28818
        (ProcessingInstructionImpl::setStyleSheet): Removed more bogus ref/deref calls.
 
28819
 
 
28820
2006-01-23  Maciej Stachowiak  <mjs@apple.com>
 
28821
 
 
28822
        Rubber stamped by Eric.
 
28823
 
 
28824
        - Made some functions return const AtomicString& instead of
 
28825
        AtomicString because they could. 
 
28826
        
 
28827
        Result of Darin's and Eric's comments on the last patch.
 
28828
 
 
28829
        * khtml/html/HTMLGenericFormElementImpl.cpp:
 
28830
        (WebCore::HTMLGenericFormElementImpl::name):
 
28831
        * khtml/html/HTMLGenericFormElementImpl.h:
 
28832
        * khtml/html/HTMLInputElementImpl.cpp:
 
28833
        (WebCore::HTMLInputElementImpl::name):
 
28834
        * khtml/html/HTMLInputElementImpl.h:
 
28835
 
 
28836
2006-01-23  Maciej Stachowiak  <mjs@apple.com>
 
28837
 
 
28838
        Reviewed by Eric.
 
28839
 
 
28840
        - renamed PointerHash to PtrHash
 
28841
        - made PtrHash the default hash function for int and pointer types that aren't further specialized
 
28842
        - added an AtomicStringImpl class to make it easier and more typesafe to identity hash atomic strings
 
28843
        - did appropriate consequent cleanup (very few places now need to declare a hash function)
 
28844
        http://bugs.webkit.org/show_bug.cgi?id=6752
 
28845
        
 
28846
        * bindings/objc/DOM.mm:
 
28847
        * bridge/mac/WebCoreFrameBridge.mm:
 
28848
        (-[WebCoreFrameBridge elementWithName:inForm:]):
 
28849
        * css/cssstyleselector.cpp:
 
28850
        (WebCore::CSSRuleSet::getIDRules):
 
28851
        (WebCore::CSSRuleSet::getClassRules):
 
28852
        (WebCore::CSSRuleSet::getTagRules):
 
28853
        (WebCore::CSSRuleSet::addToRuleSet):
 
28854
        * khtml/dom/dom_string.h:
 
28855
        (KXMLCore::):
 
28856
        * khtml/ecma/kjs_binding.cpp:
 
28857
        (KJS::UString::UString):
 
28858
        * khtml/ecma/kjs_dom.cpp:
 
28859
        (KJS::DOMNode::mark):
 
28860
        * khtml/ecma/kjs_html.cpp:
 
28861
        (KJS::KJS::HTMLElement::classInfo):
 
28862
        (KJS::HTMLElement::accessors):
 
28863
        (KJS::HTMLElement::selectSetter):
 
28864
        (KJS::HTMLElement::inputSetter):
 
28865
        (KJS::HTMLElement::textAreaSetter):
 
28866
        (KJS::HTMLElement::buttonSetter):
 
28867
        * khtml/ecma/kjs_window.h:
 
28868
        * khtml/editing/apply_style_command.cpp:
 
28869
        (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
 
28870
        * khtml/html/HTMLCollectionImpl.h:
 
28871
        * khtml/html/HTMLElementImpl.cpp:
 
28872
        (WebCore::HTMLElementImpl::isRecognizedTagName):
 
28873
        (WebCore::inlineTagList):
 
28874
        (WebCore::blockTagList):
 
28875
        * khtml/html/HTMLFormCollectionImpl.cpp:
 
28876
        (WebCore::HTMLFormCollectionImpl::updateNameCache):
 
28877
        * khtml/html/HTMLGenericFormElementImpl.cpp:
 
28878
        (WebCore::HTMLGenericFormElementImpl::name):
 
28879
        (WebCore::HTMLGenericFormElementImpl::setName):
 
28880
        * khtml/html/HTMLGenericFormElementImpl.h:
 
28881
        * khtml/html/HTMLInputElementImpl.cpp:
 
28882
        (WebCore::HTMLInputElementImpl::name):
 
28883
        * khtml/html/HTMLInputElementImpl.h:
 
28884
        * khtml/html/htmlfactory.cpp:
 
28885
        (DOM::HTMLElementFactory::createHTMLElement):
 
28886
        * khtml/html/htmlparser.cpp:
 
28887
        (HTMLParser::isHeaderTag):
 
28888
        (HTMLParser::isResidualStyleTag):
 
28889
        (HTMLParser::isAffectedByResidualStyle):
 
28890
        * khtml/xml/DocumentImpl.cpp:
 
28891
        (WebCore::DocumentImpl::checkedRadioButtonForGroup):
 
28892
        (WebCore::DocumentImpl::removeRadioButtonGroup):
 
28893
        * khtml/xml/DocumentImpl.h:
 
28894
        * khtml/xml/NodeImpl.h:
 
28895
        * khtml/xml/dom_atomicstring.h:
 
28896
        (DOM::AtomicString::AtomicString):
 
28897
        (DOM::AtomicString::impl):
 
28898
        (KXMLCore::):
 
28899
        * khtml/xml/dom_stringimpl.cpp:
 
28900
        (DOM::equal):
 
28901
        * khtml/xml/dom_stringimpl.h:
 
28902
        (KXMLCore::):
 
28903
        * khtml/xml/xml_tokenizer.h:
 
28904
        * ksvg2/misc/KSVGTimeScheduler.cpp:
 
28905
        (KSVG::SVGTimer::notifyAll):
 
28906
        * kwq/KWQKJobClasses.h:
 
28907
        * kwq/KWQObject.cpp:
 
28908
        * loader/CachedObject.h:
 
28909
        * loader/CachedObjectClientWalker.h:
 
28910
        * loader/loader.h:
 
28911
        * page/Frame.cpp:
 
28912
        (Frame::endAllLifeSupport):
 
28913
        * rendering/render_canvas.cpp:
 
28914
        (RenderCanvas::selectionRect):
 
28915
        (RenderCanvas::setSelection):
 
28916
        * rendering/render_canvas.h:
 
28917
        * rendering/render_object.h:
 
28918
        * xml/xmlhttprequest.h:
 
28919
 
 
28920
2006-01-23 Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
28921
 
 
28922
        Reviewed by Darin.
 
28923
 
 
28924
        - fix http://bugs.webkit.org/show_bug.cgi?id=6733
 
28925
          REGRESSION: html input doesn't honor change to value
 
28926
 
 
28927
        * rendering/render_form.cpp: (RenderLineEdit::slotTextChanged): Made newText a
 
28928
        DOMString. Assigning the empty DOMString to a QString and back to a DOMString
 
28929
        resulted in a null string, which should be avoided here.
 
28930
 
 
28931
        * khtml/dom/dom_string.cpp: (DOM::DOMString::qstring): Don't turn an empty
 
28932
        DOMString into a null QString; make an empty QString instead.
 
28933
 
 
28934
2006-01-23  Darin Adler  <darin@apple.com>
 
28935
 
 
28936
        Reviewed by Maciej.
 
28937
 
 
28938
        - fix http://bugs.webkit.org/show_bug.cgi?id=6385
 
28939
          REGRESSION: Unnamed frames return a generated name as window.frameElement.name
 
28940
 
 
28941
        Test: fast/frames/frame-element-name.html
 
28942
 
 
28943
        * khtml/ecma/kjs_html.cpp: (KJS::HTMLElement::getOwnPropertySlot):
 
28944
        Remove the quirk where frame and iframe elements reflect all the
 
28945
        properties of the window inside the frame. Testing indicates that
 
28946
        no other browser does this -- not sure why we were doing it.
 
28947
 
 
28948
2006-01-23  Maciej Stachowiak  <mjs@apple.com>
 
28949
 
 
28950
        Rubber stamped by Tim Hatcher.
 
28951
        
 
28952
        - renamed insert() operation on HashSet, HashCountedSet and HashTable to add()
 
28953
        for consistency with HashMap
 
28954
 
 
28955
        * bridge/mac/MacFrame.mm:
 
28956
        (MacFrame::didTellBridgeAboutLoad):
 
28957
        * khtml/ecma/kjs_dom.cpp:
 
28958
        (KJS::DOMNode::mark):
 
28959
        * khtml/html/HTMLElementImpl.cpp:
 
28960
        (WebCore::HTMLElementImpl::isRecognizedTagName):
 
28961
        (WebCore::inlineTagList):
 
28962
        (WebCore::blockTagList):
 
28963
        * khtml/html/HTMLFormCollectionImpl.cpp:
 
28964
        (WebCore::HTMLFormCollectionImpl::updateNameCache):
 
28965
        * khtml/html/htmlparser.cpp:
 
28966
        (HTMLParser::isHeaderTag):
 
28967
        (HTMLParser::isResidualStyleTag):
 
28968
        (HTMLParser::isAffectedByResidualStyle):
 
28969
        * khtml/xml/DocumentImpl.cpp:
 
28970
        (WebCore::DocumentImpl::addElementById):
 
28971
        (WebCore::DocumentImpl::registerDisconnectedNodeWithEventListeners):
 
28972
        * khtml/xml/NodeImpl.cpp:
 
28973
        (WebCore::NodeImpl::registerNodeList):
 
28974
        * khtml/xml/dom_atomicstring.cpp:
 
28975
        (DOM::AtomicString::add):
 
28976
        * khtml/xml/dom_qname.cpp:
 
28977
        (DOM::QualifiedName::QualifiedName):
 
28978
        * loader/CachedObject.cpp:
 
28979
        (WebCore::CachedObject::ref):
 
28980
        * page/Frame.cpp:
 
28981
        (Frame::keepAlive):
 
28982
        * rendering/render_canvas.cpp:
 
28983
        (RenderCanvas::addWidget):
 
28984
        * rendering/render_frames.cpp:
 
28985
        (WebCore::RenderPartObject::updateWidget):
 
28986
        * rendering/render_line.cpp:
 
28987
        (WebCore::InlineFlowBox::paint):
 
28988
        * xml/xmlhttprequest.cpp:
 
28989
        (WebCore::XMLHttpRequest::addToRequestsByDocument):
 
28990
 
 
28991
2006-01-23  Justin Garcia  <justin.garcia@apple.com>
 
28992
 
 
28993
        Reviewed by thatcher
 
28994
        
 
28995
        Turned on -O2 for B&I build.
 
28996
 
 
28997
        * WebCore.xcodeproj/project.pbxproj:
 
28998
 
 
28999
2006-01-23  Darin Adler  <darin@apple.com>
 
29000
 
 
29001
        Reviewed by John Sullivan.
 
29002
 
 
29003
        - fix http://bugs.webkit.org/show_bug.cgi?id=6617
 
29004
          REGRESSION: Crash in cloneChildNodes when clicking element
 
29005
 
 
29006
        Test: fast/dom/clone-node-form-elements-with-attr.html
 
29007
 
 
29008
        Changed cloneNode and some other functions to return PassRefPtr.
 
29009
        Also made m_render private and changed its name to m_renderer.
 
29010
 
 
29011
        * bindings/objc/DOM.mm: (-[DOMNode cloneNode:]): Add call to get() needed
 
29012
        now that cloneNode returns a PassRefPtr.
 
29013
 
 
29014
        * khtml/editing/break_blockquote_command.cpp:
 
29015
        (WebCore::BreakBlockquoteCommand::doApply):
 
29016
        * khtml/editing/insert_paragraph_separator_command.cpp:
 
29017
        (khtml::InsertParagraphSeparatorCommand::doApply):
 
29018
        * khtml/editing/split_element_command.cpp:
 
29019
        (khtml::SplitElementCommand::doApply):
 
29020
        * khtml/html/htmlparser.cpp:
 
29021
        (HTMLParser::handleResidualStyleCloseTagAcrossBlocks):
 
29022
        (HTMLParser::reopenResidualStyleTags):
 
29023
        * khtml/xml/dom2_rangeimpl.cpp: (DOM::RangeImpl::processContents):
 
29024
        * ksvg2/svg/SVGUseElementImpl.cpp: (SVGUseElementImpl::closeRenderer):
 
29025
        Use RefPtr and PassRefPtr as appropriate, since the result of cloneNode
 
29026
        is now a referenced object in a PassRefPtr rather than a floating one and
 
29027
        so needs to be kept referenced until used.
 
29028
 
 
29029
        * khtml/html/HTMLElementImpl.h:
 
29030
        * khtml/html/HTMLElementImpl.cpp:
 
29031
        (WebCore::HTMLElementImpl::cloneNode): Changed to return a PassRefPtr.
 
29032
        (WebCore::HTMLElementImpl::children): Ditto.
 
29033
        * khtml/xml/DocumentFragmentImpl.h:
 
29034
        * khtml/xml/DocumentFragmentImpl.cpp:
 
29035
        (DOM::DocumentFragmentImpl::cloneNode): Changed to return a PassRefPtr.
 
29036
        * khtml/xml/DocumentImpl.h:
 
29037
        * khtml/xml/DocumentTypeImpl.h:
 
29038
        * khtml/xml/DocumentTypeImpl.cpp:
 
29039
        (DOM::DocumentTypeImpl::cloneNode): Changed to return a PassRefPtr.
 
29040
        * khtml/xml/NamedNodeMapImpl.h:
 
29041
        (WebCore::NamedNodeMapImpl::getNamedItem): Changed to return PassRefPtr.
 
29042
        (WebCore::NamedNodeMapImpl::removeNamedItem): Ditto.
 
29043
        (WebCore::NamedNodeMapImpl::setNamedItemNS): Ditto.
 
29044
 
 
29045
        * khtml/html/HTMLGenericFormElementImpl.cpp:
 
29046
        (WebCore::HTMLGenericFormElementImpl::attach): Use renderer() instead of
 
29047
        getting at m_render directly.
 
29048
        (WebCore::HTMLGenericFormElementImpl::recalcStyle): Ditto.
 
29049
        (WebCore::HTMLGenericFormElementImpl::isFocusable): Ditto.
 
29050
        (WebCore::HTMLGenericFormElementImpl::isKeyboardFocusable): Ditto.
 
29051
        (WebCore::HTMLGenericFormElementImpl::isMouseFocusable): Ditto.
 
29052
        * khtml/html/HTMLInputElementImpl.cpp:
 
29053
        (WebCore::HTMLInputElementImpl::selectionStart): Ditto.
 
29054
        (WebCore::HTMLInputElementImpl::selectionEnd): Ditto.
 
29055
        (WebCore::HTMLInputElementImpl::setSelectionStart): Ditto.
 
29056
        (WebCore::HTMLInputElementImpl::setSelectionEnd): Ditto.
 
29057
        (WebCore::HTMLInputElementImpl::select): Ditto.
 
29058
        (WebCore::HTMLInputElementImpl::setSelectionRange): Ditto.
 
29059
        (WebCore::HTMLInputElementImpl::parseMappedAttribute): Ditto.
 
29060
        (WebCore::HTMLInputElementImpl::setValue): Ditto.
 
29061
        (WebCore::HTMLInputElementImpl::defaultEventHandler): Ditto.
 
29062
        * khtml/html/HTMLSelectElementImpl.cpp:
 
29063
        (WebCore::HTMLSelectElementImpl::recalcStyle): Ditto.
 
29064
        (WebCore::HTMLSelectElementImpl::setRecalcListItems): Ditto.
 
29065
        (WebCore::HTMLSelectElementImpl::reset): Ditto.
 
29066
        (WebCore::HTMLSelectElementImpl::notifyOptionSelected): Ditto.
 
29067
        (WebCore::HTMLSelectElementImpl::defaultEventHandler): Ditto.
 
29068
        * khtml/html/HTMLTextAreaElementImpl.cpp:
 
29069
        (WebCore::HTMLTextAreaElementImpl::selectionStart): Ditto.
 
29070
        (WebCore::HTMLTextAreaElementImpl::selectionEnd): Ditto.
 
29071
        (WebCore::HTMLTextAreaElementImpl::setSelectionStart): Ditto.
 
29072
        (WebCore::HTMLTextAreaElementImpl::setSelectionEnd): Ditto.
 
29073
        (WebCore::HTMLTextAreaElementImpl::select): Ditto.
 
29074
        (WebCore::HTMLTextAreaElementImpl::setSelectionRange): Ditto.
 
29075
        (WebCore::HTMLTextAreaElementImpl::updateValue): Ditto.
 
29076
        (WebCore::HTMLTextAreaElementImpl::setValue): Ditto.
 
29077
        * khtml/html/html_baseimpl.cpp:
 
29078
        (WebCore::HTMLFrameElementImpl::updateForNewURL): Ditto.
 
29079
        (WebCore::HTMLFrameElementImpl::openURL): Ditto.
 
29080
        (WebCore::HTMLFrameElementImpl::attach): Ditto.
 
29081
        (WebCore::HTMLFrameElementImpl::close): Ditto.
 
29082
        (WebCore::HTMLFrameElementImpl::willRemove): Ditto.
 
29083
        (WebCore::HTMLFrameElementImpl::isFocusable): Ditto.
 
29084
        (WebCore::HTMLFrameElementImpl::setFocus): Ditto.
 
29085
        (WebCore::HTMLFrameElementImpl::frameWidth): Ditto.
 
29086
        (WebCore::HTMLFrameElementImpl::frameHeight): Ditto.
 
29087
        (WebCore::HTMLFrameSetElementImpl::defaultEventHandler): Ditto.
 
29088
        (WebCore::HTMLFrameSetElementImpl::recalcStyle): Ditto.
 
29089
        (WebCore::HTMLIFrameElementImpl::attach): Ditto.
 
29090
        (WebCore::HTMLIFrameElementImpl::recalcStyle): Ditto.
 
29091
        * khtml/html/html_imageimpl.cpp:
 
29092
        (WebCore::HTMLImageElementImpl::parseMappedAttribute): Ditto.
 
29093
        (WebCore::HTMLImageElementImpl::width): Ditto.
 
29094
        (WebCore::HTMLImageElementImpl::height): Ditto.
 
29095
        * khtml/html/html_inlineimpl.cpp:
 
29096
        (WebCore::HTMLAnchorElementImpl::isFocusable): Ditto.
 
29097
        * khtml/html/html_listimpl.cpp:
 
29098
        (DOM::HTMLLIElementImpl::parseMappedAttribute): Ditto.
 
29099
        (DOM::HTMLLIElementImpl::attach): Ditto.
 
29100
        * khtml/html/html_objectimpl.cpp:
 
29101
        (WebCore::HTMLAppletElementImpl::getAppletInstance): Ditto.
 
29102
        (WebCore::HTMLAppletElementImpl::closeRenderer): Ditto.
 
29103
        (WebCore::HTMLEmbedElementImpl::getEmbedInstance): Ditto.
 
29104
        (WebCore::HTMLEmbedElementImpl::attach): Ditto.
 
29105
        (WebCore::HTMLObjectElementImpl::getObjectInstance): Ditto.
 
29106
        (WebCore::HTMLObjectElementImpl::parseMappedAttribute): Ditto.
 
29107
        (WebCore::HTMLObjectElementImpl::attach): Ditto.
 
29108
        (WebCore::HTMLObjectElementImpl::detach): Ditto.
 
29109
        (WebCore::HTMLObjectElementImpl::recalcStyle): Ditto.
 
29110
        * khtml/html/html_tableimpl.cpp:
 
29111
        (WebCore::HTMLTableElementImpl::parseMappedAttribute): Ditto.
 
29112
        (WebCore::HTMLTableElementImpl::attach): Ditto.
 
29113
        * khtml/xml/ContainerNodeImpl.cpp:
 
29114
        (WebCore::ContainerNodeImpl::getUpperLeftCorner): Ditto.
 
29115
        (WebCore::ContainerNodeImpl::getLowerRightCorner): Ditto.
 
29116
        (WebCore::ContainerNodeImpl::setActive): Ditto.
 
29117
        (WebCore::ContainerNodeImpl::setHovered): Ditto.
 
29118
        * khtml/xml/DocumentImpl.cpp:
 
29119
        (WebCore::DocumentImpl::~DocumentImpl): Ditto.
 
29120
        (WebCore::DocumentImpl::elementFromPoint): Ditto.
 
29121
        (WebCore::DocumentImpl::recalcStyle): Ditto.
 
29122
        (WebCore::DocumentImpl::attach): Ditto.
 
29123
        (WebCore::DocumentImpl::restoreRenderer): Ditto.
 
29124
        (WebCore::DocumentImpl::detach): Ditto.
 
29125
        (WebCore::DocumentImpl::setVisuallyOrdered): Ditto.
 
29126
        (WebCore::DocumentImpl::updateSelection): Ditto.
 
29127
        (WebCore::DocumentImpl::prepareMouseEvent): Ditto.
 
29128
        (WebCore::DocumentImpl::cloneNode): Changed to return PassRefPtr.
 
29129
        (WebCore::DocumentImpl::recalcStyleSelector): Use renderer() instead
 
29130
        of getting at m_render directly.
 
29131
        (WebCore::DocumentImpl::setInPageCache): Ditto.
 
29132
 
 
29133
        * khtml/xml/NodeImpl.h:
 
29134
        * khtml/xml/NodeImpl.cpp:
 
29135
        (WebCore::NodeImpl::NodeImpl): Changed m_render to m_renderer.
 
29136
        (WebCore::NodeImpl::~NodeImpl): Changed use of m_render to renderer().
 
29137
        (WebCore::NodeImpl::getRect): Ditto.
 
29138
        (WebCore::NodeImpl::attach): Ditto.
 
29139
        (WebCore::NodeImpl::detach): Ditto.
 
29140
        (WebCore::NodeImpl::createRendererIfNeeded): Ditto.
 
29141
        (WebCore::NodeImpl::getElementsByTagName): Changed to return PassRefPtr.
 
29142
        (WebCore::NodeImpl::getElementsByTagNameNS): Ditto.
 
29143
 
 
29144
        * khtml/xml/dom_elementimpl.h:
 
29145
        * khtml/xml/dom_elementimpl.cpp:
 
29146
        (WebCore::AttrImpl::cloneNode): Changed to return PassRefPtr.
 
29147
        (WebCore::ElementImpl::cloneNode): Ditto.
 
29148
        (WebCore::ElementImpl::scrollIntoView): Use renderer() instead of m_render.
 
29149
        (WebCore::ElementImpl::scrollIntoViewIfNeeded): Ditto.
 
29150
        (WebCore::ElementImpl::recalcStyle): Ditto.
 
29151
        (WebCore::ElementImpl::setAttributeNode): Changed to return PassRefPtr.
 
29152
        (WebCore::ElementImpl::removeAttributeNode): Ditto.
 
29153
        (WebCore::NamedAttrMapImpl::removeNamedItemNS): Ditto.
 
29154
        (WebCore::NamedAttrMapImpl::setNamedItem): Ditto.
 
29155
        (WebCore::NamedAttrMapImpl::removeNamedItem): Ditto.
 
29156
        (DOM::ElementImpl::setAttributeNodeNS): Ditto.
 
29157
 
 
29158
        * khtml/xml/dom_textimpl.h:
 
29159
        * khtml/xml/dom_textimpl.cpp:
 
29160
        (CharacterDataImpl::setData): Changed use of m_render to renderer().
 
29161
        (CharacterDataImpl::appendData): Ditto.
 
29162
        (CharacterDataImpl::insertData): Ditto.
 
29163
        (CharacterDataImpl::deleteData): Ditto.
 
29164
        (CharacterDataImpl::replaceData): Ditto.
 
29165
        (CommentImpl::cloneNode): Changed to return PassRefPtr.
 
29166
        (TextImpl::splitText): Changed use of m_render to renderer().
 
29167
        (TextImpl::cloneNode): Changed to return PassRefPtr.
 
29168
        (TextImpl::recalcStyle): Changed use of m_render to renderer().
 
29169
        (CDATASectionImpl::cloneNode): Changed to return PassRefPtr.
 
29170
 
 
29171
        * khtml/xml/dom_xmlimpl.h:
 
29172
        * khtml/xml/dom_xmlimpl.cpp:
 
29173
        (DOM::EntityImpl::cloneNode): Changed to return PassRefPtr.
 
29174
        (DOM::EntityReferenceImpl::cloneNode): Ditto.
 
29175
        (DOM::NotationImpl::cloneNode): Ditto.
 
29176
        (DOM::ProcessingInstructionImpl::cloneNode): Ditto.
 
29177
 
 
29178
        - removed unused code
 
29179
 
 
29180
        * khtml/html/html_documentimpl.cpp: Removed unused slotHistoryChanged function.
 
29181
        * khtml/html/html_documentimpl.h: Ditto.
 
29182
        * kwq/KWQObject.cpp: (QObject::connect): Removed special case for
 
29183
        slotHistoryChanged, no longer used.
 
29184
 
 
29185
        - fixed storage leak
 
29186
 
 
29187
        * bridge/mac/MacFrame.mm: (MacFrame::~MacFrame): Delete window widget.
 
29188
 
 
29189
2006-01-23  Anders Carlsson  <andersca@mac.com>
 
29190
 
 
29191
        Forgot to add this as part of 
 
29192
        http://bugs.webkit.org/show_bug.cgi?id=3869
 
29193
        
 
29194
        * manual-tests/resources/webkit-background.png: Added.
 
29195
 
 
29196
2006-01-22  Darin Adler  <darin@apple.com>
 
29197
 
 
29198
        - fix layout tests
 
29199
 
 
29200
        * rendering/RenderTable.cpp: (WebCore::RenderTable::addChild): Added
 
29201
        missing code to set wrapInAnonymousSection false in the case where
 
29202
        adding a footer.
 
29203
 
 
29204
2006-01-22  Maciej Stachowiak  <mjs@apple.com>
 
29205
 
 
29206
        Reviewed by Darin.
 
29207
        
 
29208
        - Set up Page class and invert Frame / WebCoreFrameBridge ownership
 
29209
        http://bugs.webkit.org/show_bug.cgi?id=6577
 
29210
 
 
29211
        * bridge/mac/MacFrame.h:
 
29212
        * bridge/mac/MacFrame.mm:
 
29213
        (MacFrame::MacFrame): Initialize _bridge
 
29214
        (MacFrame::~MacFrame): Clear the bridge's frame pointer and release it.
 
29215
        (Frame::frameDetached): Reverse order of removing from old-style frames
 
29216
        array and calling frameDetached.
 
29217
        (MacFrame::createPart): Don't ref the part when creating it, since the child
 
29218
        bridge is no longer going to own a ref.
 
29219
        (MacFrame::setBridge): KWQRetain / KWQRelease since we know own the bridge.
 
29220
        (MacFrame::detachFromView): New method; clear out the view.
 
29221
        * bridge/mac/WebCoreFrameBridge.h:
 
29222
        * bridge/mac/WebCoreFrameBridge.mm:
 
29223
        (Bridge): Helper method to get a WebCoreFrameBridge from a Frame.
 
29224
        (-[WebCoreFrameBridge firstChild]): Call through Frame.
 
29225
        (-[WebCoreFrameBridge lastChild]): ditto
 
29226
        (-[WebCoreFrameBridge childCount]): ditto
 
29227
        (-[WebCoreFrameBridge previousSibling]): ditto
 
29228
        (-[WebCoreFrameBridge nextSibling]): ditto
 
29229
        (-[WebCoreFrameBridge isDescendantOfFrame:]): No need to cast parent
 
29230
        pointer.
 
29231
        (-[WebCoreFrameBridge appendChild:]): Call through Frame.
 
29232
        (-[WebCoreFrameBridge _clearRenderPart]): New helper method to free
 
29233
        the renderPart when removing a child.
 
29234
        (-[WebCoreFrameBridge removeChild:]): Clear child's render part
 
29235
        and call through to Frame.
 
29236
        (-[WebCoreFrameBridge dealloc]): Remove unneeded m_frame-related code.
 
29237
        (-[WebCoreFrameBridge finalize]): ditto
 
29238
        (-[WebCoreFrameBridge clearFrame]): New helper method, needed now that
 
29239
        bridge can outlive frame.
 
29240
        (-[WebCoreFrameBridge handleFallbackContent]): Make safe against a null
 
29241
        frame.
 
29242
        (-[WebCoreFrameBridge removeFromFrame]): ditto
 
29243
        * bridge/mac/WebCorePageBridge.h:
 
29244
        * bridge/mac/WebCorePageBridge.mm:
 
29245
        (-[WebCorePageBridge initWithMainFrame:]): Create a Page instance.
 
29246
        (-[WebCorePageBridge dealloc]): Delete the Page.
 
29247
        (-[WebCorePageBridge mainFrame]): Get the main frame from the Page.
 
29248
        * khtml/ecma/kjs_binding.cpp:
 
29249
        (KJS::ScriptInterpreter::globalExec): Override; keep frame alive, then
 
29250
        call superclass.
 
29251
        * khtml/ecma/kjs_binding.h:
 
29252
        * khtml/ecma/kjs_proxy.cpp:
 
29253
        (KJSProxyImpl::clear): Don't pass exec to window.
 
29254
        (KJSProxyImpl::interpreter): Don't do keepAlive.
 
29255
        * khtml/ecma/kjs_window.cpp:
 
29256
        (KJS::Window::isSafeScript): If the active part's document is gone, use the frame's
 
29257
        URL for security check purposes.
 
29258
        (KJS::Window::clear): Don't take an ExecState parameter any more - it
 
29259
        wasn't used.
 
29260
        * khtml/ecma/kjs_window.h:
 
29261
        * khtml/xml/DocumentImpl.cpp:
 
29262
        (WebCore::DocumentImpl::implicitOpen): If we've got a tokenizer, delete
 
29263
        it before closing - you don't ever want to fire an onload handler because of
 
29264
        an open.
 
29265
        * page/Frame.cpp:
 
29266
        (Frame::init): Pass `this' to FramePrivate constructor.
 
29267
        (FrameCounter::~FrameCounter): Added debug counting of leftover
 
29268
        Frame objects on exit.
 
29269
        (Frame::Frame): Moved out-of-line. Increment debug counter.
 
29270
        (Frame::~Frame): Assert that there is no life support going, either at the
 
29271
        start or end of this method. Decrement frame counter.
 
29272
        (Frame::stopLoading): tweaked for the fact that ChildFrame::m_frame is now
 
29273
        a RefPtr.
 
29274
        (Frame::clear): ditto
 
29275
        (Frame::stop): ditto
 
29276
        (Frame::stopAnimations): ditto
 
29277
        (Frame::checkEmitLoadEvent): ditto
 
29278
        (Frame::processObjectRequest): ditto
 
29279
        (Frame::childFrame): ditto
 
29280
        (Frame::findFrame): ditto
 
29281
        (Frame::setZoomFactor): ditto
 
29282
        (Frame::frames): ditto
 
29283
        (Frame::connectChild): ditto
 
29284
        (Frame::disconnectChild): ditto
 
29285
        (Frame::endAllLifeSupport): Method that, in debug mode, will clear
 
29286
        all life suppor timers so the Frame exit counter works.
 
29287
        (Frame::keepAlive): In debug mode, add proper support for
 
29288
        endAllLifeSupport
 
29289
        (Frame::slotEndLifeSupport): ditto
 
29290
        (Frame::setPolicyBaseURL): Update for the fact that ChildFrame::m_frame is now
 
29291
        a RefPtr.
 
29292
        (Frame::treeNode): New helper method, get the FrameTreeNode class that implements
 
29293
        frame tree traversal.
 
29294
        (Frame::nextSibling): Simple wrapper that calls through to treeNode().
 
29295
        (Frame::previousSibling): ditto
 
29296
        (Frame::firstChild): ditto
 
29297
        (Frame::lastChild): ditto
 
29298
        (Frame::childCount): ditto
 
29299
        (Frame::appendChild): ditto
 
29300
        (Frame::removeChild): ditto
 
29301
        (Frame::detachFromView): no-op, just a virtual base for the MAcFrame method.
 
29302
        * page/Frame.h:
 
29303
        * page/FramePrivate.h:
 
29304
        (FramePrivate::FramePrivate): Add FrameTreeNode member.
 
29305
        * page/FrameTreeNode.cpp: Added.
 
29306
        (FrameTreeNode::~FrameTreeNode): detach all children from their view
 
29307
        (FrameTreeNode::appendChild): implemented
 
29308
        (FrameTreeNode::removeChild): implemented - make sure to detach child
 
29309
        from its view.
 
29310
        * page/FrameTreeNode.h: Added.
 
29311
        (FrameTreeNode::FrameTreeNode): New; initialize fields tht need it.
 
29312
        (FrameTreeNode::nextSibling): Trivial inline.
 
29313
        (FrameTreeNode::previousSibling): ditto
 
29314
        (FrameTreeNode::firstChild): ditto
 
29315
        (FrameTreeNode::lastChild): ditto
 
29316
        (FrameTreeNode::childCount): ditto
 
29317
        * page/Page.cpp: Added.
 
29318
        (Page::Page): Initialize mainFrame and bump pageCount appropriately.
 
29319
        (Page::~Page): Detach main frame from view, handle ending life support
 
29320
        when last frame is destroyed.
 
29321
        * page/Page.h: Added.
 
29322
        (Page::mainFrame): Trivial inline.
 
29323
        * WebCore.xcodeproj/project.pbxproj: Add new files.
 
29324
 
 
29325
2006-01-22  Darin Adler  <darin@apple.com>
 
29326
 
 
29327
        * Info.plist: Updated Apple copyright date. Need to update others
 
29328
        too at some point.
 
29329
 
 
29330
        * WebCore-svg.exp: Removed unused empty file.
 
29331
 
 
29332
2006-01-22  Eric Seidel  <eseidel@apple.com>
 
29333
 
 
29334
        Reviewed by darin.
 
29335
 
 
29336
        Make <animateColor> work again (broke during DOM merger).
 
29337
        http://bugs.webkit.org/show_bug.cgi?id=5964
 
29338
        
 
29339
        No layout test possible.
 
29340
 
 
29341
        * WebCore.xcodeproj/project.pbxproj:
 
29342
        * kcanvas/device/quartz/KCanvasItemQuartz.h:
 
29343
        * kcanvas/device/quartz/KCanvasItemQuartz.mm:
 
29344
        (KCanvasItemQuartz::getAbsoluteRepaintRect): moved to .cpp file
 
29345
        * khtml/xml/DocumentImpl.cpp:
 
29346
        (WebCore::DocumentImpl::implicitClose): start svg animations
 
29347
        (WebCore::DocumentImpl::svgExtensions): svg document extensions
 
29348
        (WebCore::DocumentImpl::accessSVGExtensions): svg doc extensions
 
29349
        * khtml/xml/DocumentImpl.h:
 
29350
        * ksvg2/css/SVGCSSStyleSelector.cpp:
 
29351
        (KDOM::CSSStyleSelector::applySVGProperty):
 
29352
        * ksvg2/svg/SVGAElementImpl.cpp:
 
29353
        (SVGAElementImpl::defaultEventHandler): cleanup
 
29354
        * ksvg2/svg/SVGAnimateColorElementImpl.cpp:
 
29355
        (SVGAnimateColorElementImpl::handleTimerEvent): update css lookup
 
29356
        * ksvg2/svg/SVGAnimateElementImpl.cpp:
 
29357
        (SVGAnimateElementImpl::handleTimerEvent): fix css property lookup
 
29358
        * ksvg2/svg/SVGAnimateTransformElementImpl.cpp:
 
29359
        (SVGAnimateTransformElementImpl::handleTimerEvent):
 
29360
        * ksvg2/svg/SVGAnimationElementImpl.cpp:
 
29361
        (SVGAnimationElementImpl::closeRenderer): use doc extensions
 
29362
        (SVGAnimationElementImpl::targetAttribute): fix css properties
 
29363
        (SVGAnimationElementImpl::setTargetAttribute): fix css properties
 
29364
        * ksvg2/svg/SVGDocumentImpl.cpp:
 
29365
        (SVGDocumentImpl::svgView): remove unnecessary static cast
 
29366
        (SVGDocumentImpl::executeScripts):
 
29367
        * ksvg2/svg/SVGDocumentImpl.h:
 
29368
        * ksvg2/svg/SVGElementImpl.cpp:
 
29369
        (WebCore::SVGElementImpl::addSVGEventListener): helper function
 
29370
        (WebCore::SVGElementImpl::parseMappedAttribute): use helper
 
29371
        * ksvg2/svg/SVGElementImpl.h:
 
29372
        * ksvg2/svg/SVGGElementImpl.cpp:
 
29373
        * ksvg2/svg/SVGGElementImpl.h:
 
29374
        * ksvg2/svg/SVGSVGElementImpl.cpp:
 
29375
        (WebCore::SVGSVGElementImpl::SVGSVGElementImpl):
 
29376
        (WebCore::SVGSVGElementImpl::~SVGSVGElementImpl):
 
29377
        (WebCore::SVGSVGElementImpl::addSVGWindowEventListner): helper
 
29378
        (WebCore::SVGSVGElementImpl::parseMappedAttribute): use helper
 
29379
        * ksvg2/svg/SVGSVGElementImpl.h:
 
29380
        * ksvg2/svg/SVGSetElementImpl.cpp:
 
29381
        (SVGSetElementImpl::handleTimerEvent): use doc extensions
 
29382
        * ksvg2/svg/SVGStyledElementImpl.h:
 
29383
        * page/Frame.cpp:
 
29384
        (Frame::pauseTimeouts): pause svg animation
 
29385
        (Frame::resumeTimeouts): resume svg animation
 
29386
        * rendering/render_canvas.h:
 
29387
 
 
29388
2006-01-22  Darin Adler  <darin@apple.com>
 
29389
 
 
29390
        - fix deployment builds
 
29391
 
 
29392
        * rendering/RenderTable.cpp: (WebCore::RenderTable::addChild): Init bool.
 
29393
 
 
29394
2006-01-22  Darin Adler  <darin@apple.com>
 
29395
 
 
29396
        Reviewed by Maciej.
 
29397
 
 
29398
        - fix http://bugs.webkit.org/show_bug.cgi?id=5731
 
29399
          Form element as display table-cell hangs Safari (will eventually crash)
 
29400
 
 
29401
        Test: fast/table/form-with-table-style.html
 
29402
 
 
29403
        Hang was caused by the fact that RenderContainer has code to wrap table
 
29404
        styled elements in appropriate anonymous table elements, but the table
 
29405
        elements themselves have a special case for form elements that causes them
 
29406
        to call through, which led to infinite recursion as RenderContainer kept
 
29407
        making new tables which kept calling through to RenderContainer::addChild.
 
29408
 
 
29409
        * rendering/RenderTable.cpp:
 
29410
        (WebCore::RenderTable::addChild): Improved logic about wrapping children
 
29411
        in anonymous table sections in the following ways: (1) Do wrap a form
 
29412
        properly it has a table display style (such as table-cell or table-row).
 
29413
        (2) When an item has a particular display style, check that it has the
 
29414
        right type of render object before casting it to that type. Also
 
29415
        restructured the code a little to make it slightly more readable.
 
29416
        (WebCore::RenderTable::layout): Added a FIXME about forms that have a
 
29417
        display style that makes it a table section, since they will be skipped
 
29418
        here in the loop to lay children out.
 
29419
        (WebCore::RenderTable::recalcSections): Added checks similar to the ones
 
29420
        in addChild above.
 
29421
 
 
29422
        * rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::addChild):
 
29423
        Moved form tag logic inside render object type check so that a table row
 
29424
        that happens to be a form element won't be affected by the special form
 
29425
        tag logic. Also added an explicit check for the table-cell style so we
 
29426
        will wrap it in a row rather than just putting the form at this level.
 
29427
 
 
29428
        * rendering/RenderTableRow.h: Removed removeChildNode and dump functions
 
29429
        that just called through to the base class.
 
29430
        * rendering/RenderTableRow.cpp: (WebCore::RenderTableRow::addChild):
 
29431
        Moved form tag logic inside render object type check so that a table cell
 
29432
        that happens to be a form element won't be affected by the special form
 
29433
        tag logic. Removed unnecessary null check of section() at end of function.
 
29434
 
 
29435
        * rendering/RenderTableCol.h: Removed addChild because all it did was
 
29436
        assert (incorrectly) and then call through to the base class. Changed
 
29437
        _span to be m_span.
 
29438
        * rendering/RenderTableCol.cpp: Removed addChild function. Updated for
 
29439
        change in name of m_span field.
 
29440
 
 
29441
2006-01-22  Darin Adler  <darin@apple.com>
 
29442
 
 
29443
        Reviewed by Maciej.
 
29444
 
 
29445
        - fix http://bugs.webkit.org/show_bug.cgi?id=3518
 
29446
          REGRESSION (312-412): mojibake left behind when scrolling a clipped <select>
 
29447
 
 
29448
        * kwq/KWQListBox.mm: (QListBox::QListBox): Call setCopiesOnScroll:NO.
 
29449
        * kwq/KWQTextArea.mm: (-[KWQTextArea initWithFrame:]): Ditto.
 
29450
 
 
29451
2006-01-22  David Kilzer  <ddkilzer@kilzer.net>
 
29452
 
 
29453
        Reviewed by Maciej.
 
29454
 
 
29455
        - fix for http://bugs.webkit.org/show_bug.cgi?id=5656
 
29456
        REGRESSION: Buttons on Yahoo! Mail misplaced in ToT
 
29457
        <rdar://problem/4404335>
 
29458
        Tests whether white-space mode on buttons is inheritied and not forced.
 
29459
        Originally broken in Subversion revision r10909.
 
29460
 
 
29461
        * css/html4.css: Remove default white-space value for <button> tag to
 
29462
        allow it to be inherited.
 
29463
        * rendering/render_theme_mac.mm:
 
29464
        (khtml::RenderThemeMac::adjustButtonStyle): Fix misleading comment.
 
29465
 
 
29466
        * css/UserAgentStyleSheets.cpp: Touched this file to make the rebuild
 
29467
        of html4.css work (shouldn't have to do this).
 
29468
 
 
29469
2006-01-22  Darin Adler  <darin@apple.com>
 
29470
 
 
29471
        * css/make-css-file-arrays.pl: Fix typo that was resulting in a bunch
 
29472
        of whitespace that was supposed to go into a derived source file going
 
29473
        to the console instead.
 
29474
 
 
29475
2006-01-22  Eric Seidel  <eseidel@apple.com>
 
29476
 
 
29477
        Reviewed by darin.
 
29478
 
 
29479
        SVG needs to support "evt" instead of "event" in event handlers.
 
29480
        http://bugs.webkit.org/show_bug.cgi?id=5874
 
29481
        
 
29482
        Test: svg/custom/evt-onload.svg
 
29483
 
 
29484
        * WebCore.xcodeproj/project.pbxproj: added new classes
 
29485
        * khtml/ecma/kjs_events.cpp:
 
29486
        * khtml/ecma/kjs_events.h:
 
29487
        * khtml/ecma/kjs_proxy.cpp:
 
29488
        (WebCore::KJSProxyImpl::createHTMLEventHandler): simplified
 
29489
        (WebCore::KJSProxyImpl::createSVGEventHandler): new
 
29490
        * khtml/ecma/kjs_proxy.h:
 
29491
        * khtml/ecma/kjs_window.cpp:
 
29492
        * khtml/ecma/kjs_window.h:
 
29493
        * khtml/xml/DocumentImpl.cpp:
 
29494
        (WebCore::DocumentImpl::createHTMLEventListener): simplified
 
29495
        (WebCore::DocumentImpl::createSVGEventListener): new
 
29496
        * khtml/xml/DocumentImpl.h:
 
29497
        * khtml/xml/NodeImpl.cpp:
 
29498
        (WebCore::NodeImpl::dispatchEvent): use RefPtr
 
29499
        * ksvg2/events/JSSVGLazyEventListener.cpp: Added.
 
29500
        (WebCore::JSSVGLazyEventListener::JSSVGLazyEventListener): added.
 
29501
        (WebCore::JSSVGLazyEventListener::eventParameterName): added.
 
29502
        * ksvg2/events/JSSVGLazyEventListener.h: Added.
 
29503
        * ksvg2/svg/SVGElementImpl.cpp:
 
29504
        (SVGElementImpl::parseMappedAttribute): use new SVG event handler
 
29505
        * ksvg2/svg/SVGSVGElementImpl.cpp:
 
29506
        (SVGSVGElementImpl::parseMappedAttribute): use new SVG event handler
 
29507
        * page/Frame.cpp: updated KJSProxyImpl namespace
 
29508
        * page/Frame.h: updated KJSProxyImpl namespace
 
29509
        * page/FramePrivate.h: updated KJSProxyImpl namespace
 
29510
 
 
29511
2006-01-22  Darin Adler  <darin@apple.com>
 
29512
 
 
29513
       Reviewed by Maciej.
 
29514
 
 
29515
       - fix http://bugs.webkit.org/show_bug.cgi?id=3508
 
29516
         REGRESSION (125-412): problem with negative margin-top and position: absolute (vre.aitg.com)
 
29517
         <rdar://problem/4093277> REGRESSION (125-312): layout problem at vre.aitg.com (3508)
 
29518
 
 
29519
       Test: fast/css/position-negative-top-margin.html
 
29520
 
 
29521
       * rendering/RenderBlock.cpp: (WebCore::RenderBlock::adjustPositionedBlock):
 
29522
       Fixed two different problems that contributed to the bug: (1) Added a call to calcVerticalMargins
 
29523
       otherwise the margin will always be 0. (2) Corrected logic for the negative margin case, which
 
29524
       was comparing a negative margin-top to a number representing the absolute value of the margin.
 
29525
 
 
29526
2006-01-22  Alexey Proskuryakov  <ap@nypop.com>
 
29527
 
 
29528
        Reviewed by Darin.
 
29529
 
 
29530
       - fix http://bugs.webkit.org/show_bug.cgi?id=3702
 
29531
         Web page is laid out incorrectly after printing with print-specific style sheet.
 
29532
         <rdar://problem/3706259> Web page distorts after printing with print-specific style sheet (3702)
 
29533
 
 
29534
        Also replaced tabs with spaces in the changed files.
 
29535
 
 
29536
        Test cases: 
 
29537
        * fast/table/append-cells.html
 
29538
        * fast/table/append-cells2.html
 
29539
        * fast/table/remove-td-display-none.html
 
29540
 
 
29541
        * rendering/RenderTable.cpp:
 
29542
        (WebCore::RenderTable::recalcSections): Shrink columns and columnPos to the
 
29543
          actual number of columns.
 
29544
 
 
29545
        * rendering/RenderTableSection.cpp:
 
29546
        (WebCore::RenderTableSection::numColumns): New function.
 
29547
        (WebCore::RenderTableSection::dump): Use gridRows instead of grid.size() for row count,
 
29548
          preventing crashes.
 
29549
 
 
29550
        * rendering/RenderTableSection.h: Added numColumns() and a comment about cCol/cRow.
 
29551
 
 
29552
2006-01-22  Darin Adler  <darin@apple.com>
 
29553
 
 
29554
        Reviewed by Anders.
 
29555
 
 
29556
        - http://bugs.webkit.org/show_bug.cgi?id=6705
 
29557
          use PassRefPtr in more of the basic DOM operations
 
29558
 
 
29559
        Once we do the same with cloneNode, I believe we'll fix one of our P1 bugs,
 
29560
        but cloneNode was a little too much to do without doing this first pass.
 
29561
 
 
29562
        * khtml/xml/NodeImpl.cpp:
 
29563
        (WebCore::NodeImpl::childNodes): Updated for parameter changes.
 
29564
        (WebCore::NodeImpl::insertBefore): Ditto.
 
29565
        (WebCore::NodeImpl::replaceChild): Ditto.
 
29566
        (WebCore::NodeImpl::removeChild): Ditto.
 
29567
        (WebCore::NodeImpl::appendChild): Ditto.
 
29568
        (WebCore::NodeImpl::addChild): Ditto.
 
29569
        (WebCore::NodeImpl::addEventListener): Ditto.
 
29570
        (WebCore::NodeImpl::setHTMLEventListener): Ditto.
 
29571
        (WebCore::NodeImpl::isDefaultNamespace): Updated for changed name of ancestorElement.
 
29572
        (WebCore::NodeImpl::lookupPrefix): Ditto.
 
29573
        (WebCore::NodeImpl::lookupNamespaceURI): Ditto.
 
29574
        (WebCore::NodeImpl::lookupNamespacePrefix): Ditto.
 
29575
        (WebCore::NodeImpl::ancestorElement): Changed name from getAncestorElement.
 
29576
        * khtml/xml/NodeImpl.h: Changed most functions where it makes sense to take and return
 
29577
        PassRefPtr instead of raw pointers. Even non-obvious cases like appendChild, where the
 
29578
        return value has to be PassRefPtr only because it might be removed when the JavaScript
 
29579
        triggered by the DOM mutation event runs (normally, there's no need to return an "owning"
 
29580
        pointer because the tree now owns the newly-inserted node). Made the ancestorElement
 
29581
        function private.
 
29582
 
 
29583
        * khtml/xml/ContainerNodeImpl.cpp:
 
29584
        (WebCore::ContainerNodeImpl::ContainerNodeImpl): Updated for changes from
 
29585
        _first to m_firstChild and _last to m_lastChild.
 
29586
        (WebCore::ContainerNodeImpl::removeAllChildren): Ditto.
 
29587
        (WebCore::ContainerNodeImpl::firstChild): Ditto.
 
29588
        (WebCore::ContainerNodeImpl::lastChild): Ditto.
 
29589
        (WebCore::ContainerNodeImpl::insertBefore): Updated for parameter changes.
 
29590
        (WebCore::ContainerNodeImpl::replaceChild): Ditto.
 
29591
        (WebCore::ContainerNodeImpl::willRemove): Updated for m_lastChild.
 
29592
        (WebCore::ContainerNodeImpl::removeChild): Updated for parameter changes.
 
29593
        (WebCore::ContainerNodeImpl::removeChildren): Updated for m_first/lastChild.
 
29594
        (WebCore::ContainerNodeImpl::appendChild): Updated for parameter changes.
 
29595
        (WebCore::ContainerNodeImpl::hasChildNodes): Updated for m_firstChild.
 
29596
        (WebCore::ContainerNodeImpl::addChild): Updated for parameter changes.
 
29597
        (WebCore::ContainerNodeImpl::attach): Updated for m_firstChild.
 
29598
        (WebCore::ContainerNodeImpl::detach): Ditto.
 
29599
        (WebCore::ContainerNodeImpl::insertedIntoDocument): Ditto.
 
29600
        (WebCore::ContainerNodeImpl::removedFromDocument): Ditto.
 
29601
        (WebCore::ContainerNodeImpl::insertedIntoTree): Ditto.
 
29602
        (WebCore::ContainerNodeImpl::removedFromTree): Ditto.
 
29603
        * khtml/xml/ContainerNodeImpl.h: Removed unused checkSameDocument and checkIsChild.
 
29604
        Made more things private, updated parameters for NodeImpl functions.
 
29605
 
 
29606
        * khtml/html/HTMLSelectElementImpl.cpp:
 
29607
        (DOM::HTMLSelectElementImpl::insertBefore): Ditto.
 
29608
        (DOM::HTMLSelectElementImpl::replaceChild): Ditto.
 
29609
        (DOM::HTMLSelectElementImpl::removeChild): Ditto.
 
29610
        (DOM::HTMLSelectElementImpl::appendChild): Ditto.
 
29611
        (DOM::HTMLSelectElementImpl::addChild): Ditto.
 
29612
        * khtml/html/HTMLSelectElementImpl.h: Ditto.
 
29613
 
 
29614
        * khtml/html/HTMLOptGroupElementImpl.cpp:
 
29615
        (WebCore::HTMLOptGroupElementImpl::insertBefore): Updated for parameter type change.
 
29616
        Also changed to look at return value, not exception code, to check for success.
 
29617
        (WebCore::HTMLOptGroupElementImpl::replaceChild): Ditto.
 
29618
        (WebCore::HTMLOptGroupElementImpl::removeChild): Ditto.
 
29619
        (WebCore::HTMLOptGroupElementImpl::appendChild): Ditto.
 
29620
        (WebCore::HTMLOptGroupElementImpl::addChild): Ditto.
 
29621
        * khtml/html/HTMLOptGroupElementImpl.h: Ditto.
 
29622
 
 
29623
        * WebCore+SVG/kdom.h: Renamed enum from ExceptionCode to ExceptionCodes
 
29624
        to avoid conflict with a typedef ExceptionCode I added.
 
29625
 
 
29626
        * bindings/objc/DOM.mm:
 
29627
        (-[DOMNode insertBefore::]): Added get() call since return value is a PassRefPtr.
 
29628
        (-[DOMNode replaceChild::]): Ditto.
 
29629
        (-[DOMNode removeChild:]): Ditto.
 
29630
        (-[DOMNode appendChild:]): Ditto.
 
29631
 
 
29632
        * khtml/ecma/kjs_dom.h: Changed getDOMNode to take PassRefPtr.
 
29633
        * khtml/ecma/kjs_dom.cpp: (KJS::getDOMNode): Changed to take PassRefPtr.
 
29634
 
 
29635
        * khtml/html/HTMLElementImpl.cpp: Added dom2_events.h include, now needed.
 
29636
        Re-sorted includes.
 
29637
        * ksvg2/svg/SVGElementImpl.cpp: Ditto.
 
29638
 
 
29639
        * khtml/html/html_documentimpl.cpp: (WebCore::HTMLDocumentImpl::documentElement):
 
29640
        Changed access to now-private data member _first to equivalent inline function
 
29641
        fastFirstChild().
 
29642
        * khtml/xml/DocumentImpl.cpp: (WebCore::DocumentImpl::recalcStyle): Ditto.
 
29643
        * khtml/xml/dom_elementimpl.cpp: (WebCore::ElementImpl::recalcStyle): Ditto.
 
29644
 
 
29645
        * khtml/html/html_tableimpl.cpp:
 
29646
        (WebCore::HTMLTableElementImpl::setCaption): Updated to work with new replaceChild
 
29647
        that returns PassRefPtr.
 
29648
        (WebCore::HTMLTableElementImpl::setTHead): Ditto.
 
29649
        (WebCore::HTMLTableElementImpl::setTFoot): Ditto.
 
29650
        (WebCore::HTMLTableElementImpl::setTBody): Ditto.
 
29651
        (WebCore::HTMLTableElementImpl::addChild): Updated for parameter type change.
 
29652
        (WebCore::HTMLTableSectionElementImpl::addChild): Ditto.
 
29653
        (WebCore::HTMLTableRowElementImpl::addChild): Ditto.
 
29654
        * khtml/html/html_tableimpl.h: Ditto.
 
29655
 
 
29656
        * khtml/html/htmlparser.cpp: (HTMLParser::handleResidualStyleCloseTagAcrossBlocks):
 
29657
        Removed an unneeded explicit call to removeChild. appendChild already takes care of
 
29658
        removing the child from its own location. This avoids the fact that removeChild was
 
29659
        removing the parent, the only thing keeping the node alive. This is sort of the
 
29660
        "flip side" of our removeChild leaks -- code that depended on the behavior that
 
29661
        caused the leaks.
 
29662
 
 
29663
        * khtml/xml/xml_tokenizer.cpp: (WebCore::XMLTokenizer::startElementNs):
 
29664
        Removed unneeded isHTMLElement() calls from before the "qualified name" change.
 
29665
 
 
29666
2006-01-22  Eric Seidel  <eseidel@apple.com>
 
29667
 
 
29668
        Rubber-stamped by anders.
 
29669
 
 
29670
        Remove WebCore-no-SVG target and wrap files in #if SVG_SUPPORT
 
29671
        http://bugs.webkit.org/show_bug.cgi?id=6633
 
29672
 
 
29673
2006-01-22  Alexey Proskuryakov  <ap@nypop.com>
 
29674
 
 
29675
        Reviewed by Maciej.
 
29676
 
 
29677
        - http://bugs.webkit.org/show_bug.cgi?id=6642
 
29678
          Split XMLHttpRequest class into JS binding and implementation
 
29679
 
 
29680
        * WebCore.xcodeproj/project.pbxproj: Adjusted for moved and renamed files.
 
29681
        New group "xml" to match directory structure.
 
29682
        * xml: Added.
 
29683
        * khtml/ecma/JSXMLHttpRequest.cpp: Added.
 
29684
        * khtml/ecma/JSXMLHttpRequest.h: Added.
 
29685
        * khtml/ecma/xmlhttprequest.cpp: Removed.
 
29686
        * khtml/ecma/xmlhttprequest.h: Removed.
 
29687
        * xml/xmlhttprequest.cpp: Added.
 
29688
        * xml/xmlhttprequest.h: Added.
 
29689
        * khtml/ecma/kjs_binding.cpp:
 
29690
        (KJS::jsStringOrUndefined): Moved from kjs_events.cpp.
 
29691
        * khtml/ecma/kjs_binding.h: Added prototype for jsStringOrUndefined().
 
29692
        * khtml/ecma/kjs_events.cpp: Removed jsStringOrUndefined().
 
29693
        * khtml/ecma/kjs_window.cpp: 
 
29694
        (KJS::Window::getValueProperty): Use new class name for JSXMLHttpRequest.
 
29695
        * kwq/KWQSlot.cpp: XMLHttpRequestQObject is now in WebCore, not KJS.
 
29696
        * page/Frame.cpp:
 
29697
        (Frame::stopLoading): XMLHttpRequest is now in WebCore, not KJS.
 
29698
 
 
29699
2006-01-22  Alexander Kellett  <lypanov@kde.org>
 
29700
 
 
29701
        Reviewed by eseidel.  Landed by eseidel.
 
29702
 
 
29703
        Add support for custom fill/strokes on text.
 
29704
        http://bugs.webkit.org/show_bug.cgi?id=6448
 
29705
        
 
29706
        40+ layout tests already cover this.
 
29707
 
 
29708
        * kcanvas/RenderSVGText.cpp:
 
29709
        (RenderSVGText::paint): use new painter setup/teardown infrastructure
 
29710
        * kcanvas/device/KRenderingPaintServer.h:
 
29711
        (KRenderingPaintServer::KRenderingPaintServer):
 
29712
        (KRenderingPaintServer::setup):
 
29713
        (KRenderingPaintServer::render):
 
29714
        (KRenderingPaintServer::teardown):
 
29715
        (KRenderingPaintServer::isPaintingText):
 
29716
        (KRenderingPaintServer::setPaintingText):
 
29717
        * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
 
29718
        (setupShadingWithStyle):
 
29719
        (renderShadingWithStyle):
 
29720
        (teardownShadingWithStyle):
 
29721
        (KRenderingPaintServerLinearGradientQuartz::draw):
 
29722
        (KRenderingPaintServerLinearGradientQuartz::setup):
 
29723
        (KRenderingPaintServerLinearGradientQuartz::render):
 
29724
        (KRenderingPaintServerLinearGradientQuartz::teardown):
 
29725
        (KRenderingPaintServerRadialGradientQuartz::draw):
 
29726
        (KRenderingPaintServerRadialGradientQuartz::setup):
 
29727
        (KRenderingPaintServerRadialGradientQuartz::render):
 
29728
        (KRenderingPaintServerRadialGradientQuartz::teardown):
 
29729
        * kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
 
29730
        (KRenderingPaintServerPatternQuartz::KRenderingPaintServerPatternQuartz):
 
29731
        * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
 
29732
        (KRenderingPaintServerQuartzHelper::strokePath):
 
29733
        (KRenderingPaintServerQuartzHelper::clipToStrokePath):
 
29734
        (KRenderingPaintServerQuartzHelper::fillPath):
 
29735
        (KRenderingPaintServerQuartzHelper::clipToFillPath):
 
29736
        (KRenderingPaintServerSolidQuartz::draw):
 
29737
        (KRenderingPaintServerSolidQuartz::setup):
 
29738
        (KRenderingPaintServerSolidQuartz::render):
 
29739
        (KRenderingPaintServerSolidQuartz::teardown):
 
29740
        (KRenderingPaintServerPatternQuartz::draw):
 
29741
        (KRenderingPaintServerPatternQuartz::setup):
 
29742
        (KRenderingPaintServerPatternQuartz::render):
 
29743
        (KRenderingPaintServerPatternQuartz::teardown):
 
29744
        * kcanvas/device/quartz/QuartzSupport.h: fix prototype
 
29745
        * kcanvas/device/quartz/QuartzSupport.mm:
 
29746
        (applyStrokeStyleToContext):
 
29747
        * ksvg2/misc/KCanvasRenderingStyle.cpp:
 
29748
        (KSVGPainterFactory::fillPaintServer):
 
29749
        (KSVGPainterFactory::strokePaintServer):
 
29750
        (KSVGPainterFactory::cssPrimitiveToLength):
 
29751
        (KSVGPainterFactory::strokePainter):
 
29752
        (KSVGPainterFactory::fillPainter):
 
29753
        * ksvg2/misc/KCanvasRenderingStyle.h:
 
29754
 
 
29755
2006-01-21  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
29756
 
 
29757
        Reviewed by Darin.
 
29758
        
 
29759
        - fix http://bugs.webkit.org/show_bug.cgi?id=3509
 
29760
          REGRESSION(125-412) Portion of nested table is not painted correctly on cafepress site
 
29761
          <rdar://problem/4039615> REGRESSION(125-188) Portion of nested table is not painted correctly on cafepress site
 
29762
 
 
29763
        * manual-tests/bugzilla-3509.html: Added.
 
29764
        * rendering/RenderBlock.cpp:
 
29765
        (WebCore::RenderBlock::layoutBlockChildren): Force repaint if the child didn't move but
 
29766
        didn't repaint correctly during layout because it was not at its final position then.
 
29767
 
 
29768
2006-01-21  Anders Carlsson  <andersca@mac.com>
 
29769
 
 
29770
        Reviewed by Darin.
 
29771
 
 
29772
        http://bugs.webkit.org/show_bug.cgi?id=3869
 
29773
        Should use HTML Image element instead of JS Image object
 
29774
        <rdar://problem/3852987> JavaScript image.complete property never returns true (3869)
 
29775
 
 
29776
        * khtml/ecma/kjs_events.cpp:
 
29777
        (KJS::ClipboardProtoFunc::callAsFunction):
 
29778
        Don't check Image object. Instead, if the element passed in
 
29779
        is an image element which isn't in any document, use its pixmap.
 
29780
        
 
29781
        * khtml/ecma/kjs_html.cpp:
 
29782
        (KJS::HTMLElement::imageGetter):
 
29783
        Add complete.
 
29784
        
 
29785
        (KJS::ImageConstructorImp::construct):
 
29786
        Take a QPixmap instead of an Image.
 
29787
        
 
29788
        (KJS::KJS::Context2DFunction::callAsFunction):
 
29789
        Remove usage of Image and use HTMLImageElementImpl instead.
 
29790
 
 
29791
        * khtml/ecma/kjs_html.h:
 
29792
        Remove Image class.
 
29793
        
 
29794
        (KJS::HTMLElement::):
 
29795
        Add ImgComplete.
 
29796
        
 
29797
        * khtml/html/html_imageimpl.cpp:
 
29798
        (WebCore::HTMLImageElementImpl::width):
 
29799
        (WebCore::HTMLImageElementImpl::height):
 
29800
        If the element has no renderer but its image size is known
 
29801
        return that instead.
 
29802
        
 
29803
        (WebCore::HTMLImageElementImpl::complete):
 
29804
        New function, returns true if an image has finished loading.
 
29805
        
 
29806
        * khtml/html/html_imageimpl.h:
 
29807
        Add complete.
 
29808
        
 
29809
        * manual-tests/drag-image.html: Added.
 
29810
 
 
29811
2006-01-21  Anders Carlsson  <andersca@mac.com>
 
29812
 
 
29813
        Reviewed by Darin.
 
29814
 
 
29815
        - fixes http://bugs.webkit.org/show_bug.cgi?id=6691
 
29816
        TinyMCE: strikethrough unimplemented
 
29817
        
 
29818
        * khtml/editing/jsediting.cpp:
 
29819
        Add support for the "Strikethrough" command.
 
29820
        
 
29821
2006-01-21  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
29822
 
 
29823
        Test: fast/dynamic/hovered-detach.html
 
29824
 
 
29825
        Reviewed by Darin.
 
29826
 
 
29827
        - fix http://bugs.webkit.org/show_bug.cgi?id=5983
 
29828
          REGRESSION: onmouseover-powered navbar at MacNN renders incorrectly
 
29829
          <rdar://problem/4403730> REGRESSION: onmouseover powered navbar renders incorrectly at macnn.com (5983)
 
29830
 
 
29831
        * khtml/xml/NodeImpl.cpp:
 
29832
        (WebCore::NodeImpl::detach): Set m_hovered to false and set the document's
 
29833
        hoverNode to an hovered ancestor that still has a renderer.
 
29834
        * rendering/render_layer.cpp: Changed static method hoverAncestor() into a
 
29835
        RenderObject instance method.
 
29836
        (WebCore::commonAncestor):
 
29837
        (WebCore::RenderLayer::updateHoverActiveState):
 
29838
        * rendering/render_object.cpp: Ditto.
 
29839
        (WebCore::RenderObject::hoverAncestor)
 
29840
        * rendering/render_object.h: Ditto.
 
29841
 
 
29842
2006-01-20  David Hyatt  <hyatt@apple.com>
 
29843
 
 
29844
        Fix for bug 6666, pseudo-element rules incorrectly displayed
 
29845
        in Web Inspector.
 
29846
        
 
29847
        Reviewed by darin
 
29848
 
 
29849
        Added fast/inspector/matchedrules.html as test case.
 
29850
 
 
29851
        * css/cssstyleselector.cpp:
 
29852
        (WebCore::CSSStyleSelector::matchRulesForList):
 
29853
 
 
29854
2006-01-20  Timothy Hatcher  <timothy@apple.com>
 
29855
 
 
29856
        Reviewed by John.
 
29857
 
 
29858
        Removes code that is no longer needed with the new Web Inspector.
 
29859
 
 
29860
        * bridge/mac/WebCoreFrameBridge.h: removes the WebCoreDOMTreeCopier protocol.
 
29861
        * bridge/mac/WebCoreFrameBridge.mm: removes copyDOMNode:copier:
 
29862
 
 
29863
2006-01-21  Anders Carlsson  <andersca@mac.com>
 
29864
 
 
29865
        Reviewed by David Hyatt.
 
29866
 
 
29867
        Rename Frame::xmlDocImpl => Frame::document and
 
29868
        Frame::replaceDocImpl => Frame::setDocument
 
29869
        
 
29870
        * bridge/mac/MacFrame.mm:
 
29871
        (MacFrame::findString):
 
29872
        (MacFrame::advanceToNextMisspelling):
 
29873
        (MacFrame::nextKeyViewInFrame):
 
29874
        (MacFrame::nextKeyViewInFrameHierarchy):
 
29875
        (MacFrame::keyEvent):
 
29876
        (MacFrame::dispatchCPPEvent):
 
29877
        (MacFrame::setDisplaysWithFocusAttributes):
 
29878
        (MacFrame::bodyBackgroundColor):
 
29879
        (MacFrame::markMisspellings):
 
29880
        (MacFrame::respondToChangedSelection):
 
29881
        (MacFrame::setMarkedTextRange):
 
29882
        (MacFrame::dashboardRegionsDictionary):
 
29883
        (MacFrame::shouldClose):
 
29884
        * bridge/mac/WebCoreFrameBridge.mm:
 
29885
        (updateRenderingForBindings):
 
29886
        (frameHasSelection):
 
29887
        (-[WebCoreFrameBridge addData:]):
 
29888
        (-[WebCoreFrameBridge didNotOpenURL:pageCache:]):
 
29889
        (-[WebCoreFrameBridge saveDocumentState]):
 
29890
        (-[WebCoreFrameBridge restoreDocumentState]):
 
29891
        (-[WebCoreFrameBridge saveDocumentToPageCache]):
 
29892
        (-[WebCoreFrameBridge _documentTypeString]):
 
29893
        (-[WebCoreFrameBridge deselectAll]):
 
29894
        (-[WebCoreFrameBridge reapplyStylesForDeviceType:]):
 
29895
        (nowPrinting):
 
29896
        (-[WebCoreFrameBridge _setupRootForPrinting:]):
 
29897
        (-[WebCoreFrameBridge computePageRectsWithPrintWidthScaleFactor:printHeight:]):
 
29898
        (-[WebCoreFrameBridge copyDOMTree:]):
 
29899
        (-[WebCoreFrameBridge URLWithAttributeString:]):
 
29900
        (-[WebCoreFrameBridge unmarkAllMisspellings]):
 
29901
        (-[WebCoreFrameBridge nextKeyView]):
 
29902
        (-[WebCoreFrameBridge previousKeyView]):
 
29903
        (-[WebCoreFrameBridge nextKeyViewInsideWebFrameViews]):
 
29904
        (-[WebCoreFrameBridge previousKeyViewInsideWebFrameViews]):
 
29905
        (-[WebCoreFrameBridge DOMDocument]):
 
29906
        (-[WebCoreFrameBridge baseURL]):
 
29907
        (-[WebCoreFrameBridge domain]):
 
29908
        (-[WebCoreFrameBridge numPendingOrLoadingRequests]):
 
29909
        (-[WebCoreFrameBridge doneProcessingData]):
 
29910
        (-[WebCoreFrameBridge selectionColor]):
 
29911
        (-[WebCoreFrameBridge accessibilityTree]):
 
29912
        (-[WebCoreFrameBridge setSelectedDOMRange:affinity:closeTyping:]):
 
29913
        (-[WebCoreFrameBridge convertToNSRange:]):
 
29914
        (-[WebCoreFrameBridge convertToDOMRange:]):
 
29915
        (-[WebCoreFrameBridge replaceMarkedTextWithText:]):
 
29916
        (-[WebCoreFrameBridge smartDeleteRangeForProposedRange:]):
 
29917
        (-[WebCoreFrameBridge documentFragmentWithMarkupString:baseURLString:]):
 
29918
        (-[WebCoreFrameBridge documentFragmentWithText:]):
 
29919
        (-[WebCoreFrameBridge documentFragmentWithNodesAsParagraphs:]):
 
29920
        (-[WebCoreFrameBridge replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
 
29921
        (-[WebCoreFrameBridge insertLineBreak]):
 
29922
        (-[WebCoreFrameBridge insertParagraphSeparator]):
 
29923
        (-[WebCoreFrameBridge insertParagraphSeparatorInQuotedContent]):
 
29924
        (-[WebCoreFrameBridge insertText:selectInsertedText:]):
 
29925
        (-[WebCoreFrameBridge moveSelectionToDragCaret:smartMove:]):
 
29926
        (-[WebCoreFrameBridge deleteSelectionWithSmartDelete:]):
 
29927
        (-[WebCoreFrameBridge deleteKeyPressedWithSmartDelete:]):
 
29928
        (-[WebCoreFrameBridge forwardDeleteKeyPressedWithSmartDelete:]):
 
29929
        * khtml/ecma/kjs_html.cpp:
 
29930
        (KJS::KJS::HTMLDocument::putValueProperty):
 
29931
        * khtml/ecma/kjs_window.cpp:
 
29932
        (KJS::createNewWindow):
 
29933
        (KJS::Window::getValueProperty):
 
29934
        (KJS::Window::namedItemGetter):
 
29935
        (KJS::Window::getOwnPropertySlot):
 
29936
        (KJS::Window::put):
 
29937
        (KJS::Window::isSafeScript):
 
29938
        (KJS::Window::setListener):
 
29939
        (KJS::Window::getListener):
 
29940
        (KJS::WindowFunc::callAsFunction):
 
29941
        (KJS::Window::updateLayout):
 
29942
        (KJS::ScheduledAction::execute):
 
29943
        (KJS::Location::put):
 
29944
        (KJS::LocationFunc::callAsFunction):
 
29945
        * khtml/ecma/xmlhttprequest.cpp:
 
29946
        (KJS::XMLHttpRequestProtoFunc::callAsFunction):
 
29947
        * khtml/editing/jsediting.cpp:
 
29948
        * khtml/html/html_baseimpl.cpp:
 
29949
        (WebCore::HTMLFrameElementImpl::contentDocument):
 
29950
        * khtml/html/htmltokenizer.cpp:
 
29951
        (WebCore::HTMLTokenizer::scriptExecution):
 
29952
        * khtml/xml/DocumentImpl.cpp:
 
29953
        (WebCore::DocumentImpl::parentDocument):
 
29954
        * khtml/xsl/xslt_processorimpl.cpp:
 
29955
        (DOM::XSLTProcessorImpl::createDocumentFromSource):
 
29956
        * kwq/KWQAccObject.mm:
 
29957
        (-[KWQAccObject textUnderElement]):
 
29958
        (-[KWQAccObject doAXTextMarkerForPosition:]):
 
29959
        (-[KWQAccObject rendererForView:]):
 
29960
        * kwq/KWQKJavaAppletWidget.mm:
 
29961
        (KJavaAppletWidget::KJavaAppletWidget):
 
29962
        * page/Frame.cpp:
 
29963
        (Frame::document):
 
29964
        (Frame::setDocument):
 
29965
        (Frame::setFocusNodeIfNeeded):
 
29966
        (Frame::isPointInsideSelection):
 
29967
        (Frame::computeAndSetTypingStyle):
 
29968
        (Frame::applyStyle):
 
29969
        (Frame::applyParagraphStyle):
 
29970
        (Frame::selectionComputedStyle):
 
29971
        (Frame::selectFrameElementInParentIfFullySelected):
 
29972
        (Frame::renderer):
 
29973
        (Frame::scrollOverflow):
 
29974
        (Frame::paint):
 
29975
        (Frame::adjustPageHeight):
 
29976
        (Frame::updatePolicyBaseURL):
 
29977
        (Frame::setPolicyBaseURL):
 
29978
        (Frame::forceLayoutWithPageWidthRange):
 
29979
        (Frame::sendScrollEvent):
 
29980
        (Frame::clearTimers):
 
29981
        (Frame::styleForSelectionStart):
 
29982
        (Frame::setSelectionFromNone):
 
29983
        (Frame::setWindowHasFocus):
 
29984
        (Frame::backslashAsCurrencySymbol):
 
29985
        * page/Frame.h:
 
29986
        * page/FrameView.cpp:
 
29987
        (FrameView::~FrameView):
 
29988
        (FrameView::clear):
 
29989
        (FrameView::resizeEvent):
 
29990
        (FrameView::adjustViewSize):
 
29991
        (FrameView::layout):
 
29992
        (FrameView::updateDashboardRegions):
 
29993
        (FrameView::viewportMousePressEvent):
 
29994
        (FrameView::viewportMouseDoubleClickEvent):
 
29995
        (FrameView::viewportMouseMoveEvent):
 
29996
        (FrameView::viewportMouseReleaseEvent):
 
29997
        (FrameView::keyPressEvent):
 
29998
        (FrameView::dispatchDragEvent):
 
29999
        (FrameView::updateDragAndDrop):
 
30000
        (FrameView::focusNextPrevNode):
 
30001
        (FrameView::dispatchMouseEvent):
 
30002
        (FrameView::viewportWheelEvent):
 
30003
        (FrameView::timerEvent):
 
30004
        (FrameView::scheduleRelayout):
 
30005
        (FrameView::unscheduleRelayout):
 
30006
        * rendering/render_frames.cpp:
 
30007
        (WebCore::RenderPartObject::updateWidget):
 
30008
 
 
30009
2006-01-20  Chris Petersen  <cpetersen@apple.com>
 
30010
 
 
30011
        Reviewed by eseidel.
 
30012
 
 
30013
        Build fix.
 
30014
 
 
30015
        * khtml/xml/DocumentImpl.cpp:
 
30016
 
 
30017
2006-01-20  Eric Seidel  <eseidel@apple.com>
 
30018
 
 
30019
        Reviewed by beth.
 
30020
 
 
30021
        Unbreak build (partial commit of animation patch)
 
30022
 
 
30023
        * khtml/xml/DocumentImpl.cpp:
 
30024
        (WebCore::DocumentImpl::implicitClose):
 
30025
        * khtml/xml/DocumentImpl.h:
 
30026
 
 
30027
2006-01-20  Eric Seidel  <eseidel@apple.com>
 
30028
 
 
30029
        Reviewed by beth.
 
30030
 
 
30031
        Missed the kcanvas directory in my previous commit.
 
30032
        http://bugs.webkit.org/show_bug.cgi?id=6683
 
30033
 
 
30034
        * kcanvas/KCanvasContainer.h:
 
30035
        * kcanvas/RenderForeignObject.h:
 
30036
        * kcanvas/RenderSVGText.h:
 
30037
 
 
30038
2006-01-20  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
30039
 
 
30040
        Test: fast/overflow/image-selection-highlight.html
 
30041
 
 
30042
        Reviewed by Darin, committed by Adele.
 
30043
        
 
30044
        - fix http://bugs.webkit.org/show_bug.cgi?id=6673
 
30045
          Selection highlight doesn't scroll along with an image contained in an overflow:scroll block
 
30046
 
 
30047
        * rendering/render_replaced.cpp:
 
30048
        (WebCore::RenderReplaced::selectionRect): Subtract the containing block's scroll offset.
 
30049
 
 
30050
2006-01-19  Eric Seidel  <eseidel@apple.com>
 
30051
 
 
30052
        Reviewed by beth.
 
30053
 
 
30054
        Break classes in render_table out into separate files.
 
30055
        Move render_block to RenderBlock.
 
30056
        Move render_container to RenderContainer.
 
30057
        http://bugs.webkit.org/show_bug.cgi?id=6683
 
30058
 
 
30059
        * WebCore.xcodeproj/project.pbxproj:
 
30060
        * bridge/mac/MacFrame.mm:
 
30061
        * kcanvas/KCanvasContainer.h:
 
30062
        * kcanvas/RenderForeignObject.h:
 
30063
        * kcanvas/RenderSVGText.h:
 
30064
        * khtml/editing/visible_units.cpp:
 
30065
        * khtml/html/html_tableimpl.cpp:
 
30066
        (WebCore::HTMLTableElementImpl::insertRow):
 
30067
        * khtml/xml/dom2_rangeimpl.cpp:
 
30068
        * khtml/xml/dom_position.cpp:
 
30069
        * kwq/KWQRenderTreeDebug.cpp:
 
30070
        * page/Frame.cpp:
 
30071
        * rendering/InlineTextBox.cpp:
 
30072
        * rendering/RenderBlock.cpp: Added.
 
30073
        * rendering/RenderBlock.h: Added.
 
30074
        * rendering/RenderContainer.cpp: Added.
 
30075
        (WebCore::RenderContainer::addChild):
 
30076
        * rendering/RenderContainer.h: Added.
 
30077
        * rendering/RenderTable.cpp: Added.
 
30078
        (WebCore::RenderTable::RenderTable):
 
30079
        (WebCore::RenderTable::updateFirstLetter):
 
30080
        * rendering/RenderTable.h: Added.
 
30081
        * rendering/RenderTableCell.cpp: Added.
 
30082
        (WebCore::RenderTableCell::RenderTableCell):
 
30083
        (WebCore::RenderTableCell::updateFromElement):
 
30084
        * rendering/RenderTableCell.h: Added.
 
30085
        * rendering/RenderTableCol.cpp: Added.
 
30086
        (WebCore::RenderTableCol::RenderTableCol):
 
30087
        (WebCore::RenderTableCol::updateFromElement):
 
30088
        * rendering/RenderTableCol.h: Added.
 
30089
        * rendering/RenderTableRow.cpp: Added.
 
30090
        (WebCore::RenderTableRow::RenderTableRow):
 
30091
        * rendering/RenderTableRow.h: Added.
 
30092
        * rendering/RenderTableSection.cpp: Added.
 
30093
        (WebCore::RenderTableSection::RenderTableSection):
 
30094
        * rendering/RenderTableSection.h: Added.
 
30095
        * rendering/RenderText.cpp:
 
30096
        * rendering/bidi.cpp:
 
30097
        * rendering/render_block.cpp: Removed.
 
30098
        * rendering/render_block.h: Removed.
 
30099
        * rendering/render_box.cpp:
 
30100
        * rendering/render_canvas.h:
 
30101
        * rendering/render_container.cpp: Removed.
 
30102
        * rendering/render_container.h: Removed.
 
30103
        * rendering/render_flexbox.h:
 
30104
        * rendering/render_flow.cpp:
 
30105
        * rendering/render_flow.h:
 
30106
        * rendering/render_form.h:
 
30107
        * rendering/render_frames.h:
 
30108
        * rendering/render_inline.cpp:
 
30109
        * rendering/render_inline.h:
 
30110
        * rendering/render_line.cpp:
 
30111
        * rendering/render_list.h:
 
30112
        * rendering/render_object.cpp:
 
30113
        * rendering/render_replaced.h:
 
30114
        * rendering/render_table.cpp: Removed.
 
30115
        * rendering/render_table.h: Removed.
 
30116
        * rendering/table_layout.cpp:
 
30117
 
 
30118
2006-01-19  Eric Seidel  <eseidel@apple.com>
 
30119
 
 
30120
        Reviewed by darin.
 
30121
 
 
30122
        <embed> and <object> tags show up blank when going back/forward.
 
30123
        http://bugs.webkit.org/show_bug.cgi?id=6679
 
30124
 
 
30125
        No test currently possible.
 
30126
 
 
30127
        * page/Frame.cpp:
 
30128
        (Frame::canCachePage):
 
30129
 
 
30130
2006-01-19  Eric Seidel  <eseidel@apple.com>
 
30131
 
 
30132
        Reviewed by darin.
 
30133
 
 
30134
        Split html_miscimpl.* into separate files and move html_elementimpl
 
30135
        http://bugs.webkit.org/show_bug.cgi?id=6670
 
30136
 
 
30137
        * WebCore.xcodeproj/project.pbxproj:
 
30138
        * bindings/objc/DOM.mm:
 
30139
        * bindings/objc/DOMHTML.mm:
 
30140
        * bridge/mac/WebCoreFrameBridge.mm:
 
30141
        * css/css_valueimpl.cpp:
 
30142
        * css/cssstyleselector.cpp:
 
30143
        (WebCore::CSSStyleSelector::applyProperty):
 
30144
        * khtml/ecma/kjs_dom.cpp:
 
30145
        * khtml/ecma/kjs_html.cpp:
 
30146
        * khtml/editing/apply_style_command.cpp:
 
30147
        * khtml/editing/markup.cpp:
 
30148
        * khtml/editing/replace_selection_command.cpp:
 
30149
        * khtml/html/HTMLBaseFontElementImpl.cpp: Added.
 
30150
        * khtml/html/HTMLBaseFontElementImpl.h: Added.
 
30151
        * khtml/html/HTMLButtonElementImpl.cpp:
 
30152
        * khtml/html/HTMLCollectionImpl.cpp: Added.
 
30153
        (WebCore::HTMLCollectionImpl::traverseNextItem):
 
30154
        * khtml/html/HTMLCollectionImpl.h: Added.
 
30155
        * khtml/html/HTMLElementImpl.cpp: Added.
 
30156
        * khtml/html/HTMLElementImpl.h: Added.
 
30157
        * khtml/html/HTMLFieldSetElementImpl.cpp:
 
30158
        * khtml/html/HTMLFormCollectionImpl.cpp: Added.
 
30159
        * khtml/html/HTMLFormCollectionImpl.h: Added.
 
30160
        * khtml/html/HTMLFormElementImpl.cpp:
 
30161
        * khtml/html/HTMLFormElementImpl.h:
 
30162
        * khtml/html/HTMLGenericFormElementImpl.cpp:
 
30163
        * khtml/html/HTMLGenericFormElementImpl.h:
 
30164
        * khtml/html/HTMLInputElementImpl.cpp:
 
30165
        * khtml/html/HTMLIsIndexElementImpl.cpp:
 
30166
        * khtml/html/HTMLLabelElementImpl.h:
 
30167
        * khtml/html/HTMLLegendElementImpl.cpp:
 
30168
        * khtml/html/HTMLNameCollectionImpl.cpp: Added.
 
30169
        * khtml/html/HTMLNameCollectionImpl.h: Added.
 
30170
        * khtml/html/HTMLOptGroupElementImpl.cpp:
 
30171
        * khtml/html/HTMLOptGroupElementImpl.h:
 
30172
        * khtml/html/HTMLOptionElementImpl.h:
 
30173
        * khtml/html/HTMLSelectElementImpl.cpp:
 
30174
        * khtml/html/HTMLTextAreaElementImpl.cpp:
 
30175
        * khtml/html/html_baseimpl.cpp:
 
30176
        * khtml/html/html_baseimpl.h:
 
30177
        * khtml/html/html_blockimpl.cpp:
 
30178
        * khtml/html/html_blockimpl.h:
 
30179
        * khtml/html/html_canvasimpl.cpp:
 
30180
        * khtml/html/html_documentimpl.cpp:
 
30181
        * khtml/html/html_documentimpl.h:
 
30182
        * khtml/html/html_elementimpl.cpp: Removed.
 
30183
        * khtml/html/html_elementimpl.h: Removed.
 
30184
        * khtml/html/html_headimpl.cpp:
 
30185
        (WebCore::HTMLLinkElementImpl::setStyleSheet):
 
30186
        (WebCore::HTMLLinkElementImpl::isLoading):
 
30187
        * khtml/html/html_headimpl.h:
 
30188
        * khtml/html/html_imageimpl.cpp:
 
30189
        * khtml/html/html_inlineimpl.cpp:
 
30190
        * khtml/html/html_inlineimpl.h:
 
30191
        * khtml/html/html_listimpl.h:
 
30192
        * khtml/html/html_miscimpl.cpp: Removed.
 
30193
        * khtml/html/html_miscimpl.h: Removed.
 
30194
        * khtml/html/html_objectimpl.cpp:
 
30195
        * khtml/html/html_tableimpl.h:
 
30196
        * khtml/html/htmlfactory.cpp:
 
30197
        * khtml/html/htmlparser.cpp:
 
30198
        * khtml/html/htmltokenizer.cpp:
 
30199
        (WebCore::HTMLTokenizer::scriptHandler):
 
30200
        (WebCore::HTMLTokenizer::scriptExecution):
 
30201
        * khtml/xml/DocumentImpl.cpp:
 
30202
        * khtml/xml/dom2_rangeimpl.cpp:
 
30203
        * khtml/xml/dom_elementimpl.cpp:
 
30204
        * kwq/KWQAccObject.mm:
 
30205
        * loader/loader.cpp:
 
30206
        * page/Frame.cpp:
 
30207
        (Frame::restoreURL):
 
30208
        (Frame::stopLoading):
 
30209
        (Frame::receivedFirstData):
 
30210
        (Frame::gotoAnchor):
 
30211
        (Frame::requestObject):
 
30212
        (Frame::processObjectRequest):
 
30213
        (Frame::submitForm):
 
30214
        (Frame::slotParentCompleted):
 
30215
        (Frame::findFrame):
 
30216
        (Frame::executeScript):
 
30217
        * page/FrameView.cpp:
 
30218
        (FrameView::useSlowRepaints):
 
30219
        * rendering/render_applet.cpp:
 
30220
        * rendering/render_applet.h:
 
30221
        * rendering/render_box.cpp:
 
30222
        (WebCore::RenderBox::contentWidth):
 
30223
        (WebCore::RenderBox::paintRootBoxDecorations):
 
30224
        (WebCore::RenderBox::paintBoxDecorations):
 
30225
        (WebCore::RenderBox::getClipRect):
 
30226
        (WebCore::RenderBox::calcWidth):
 
30227
        (WebCore::RenderBox::calcHeight):
 
30228
        * rendering/render_canvasimage.cpp:
 
30229
        * rendering/render_canvasimage.h:
 
30230
        * rendering/render_frames.cpp:
 
30231
        * rendering/render_image.cpp:
 
30232
        * rendering/render_image.h:
 
30233
        * rendering/render_layer.cpp:
 
30234
 
 
30235
2006-01-19  Anders Carlsson  <andersca@mac.com>
 
30236
 
 
30237
        Reviewed by Darin.
 
30238
 
 
30239
        - fix http://bugs.webkit.org/show_bug.cgi?id=6653
 
30240
        CSSStyleDeclaration returns empty string when trying to access shorthand 
 
30241
        properties using JS accessors.
 
30242
        
 
30243
        * khtml/ecma/kjs_css.cpp:
 
30244
        (KJS::DOMCSSStyleDeclaration::cssPropertyGetter):
 
30245
        if getCSSPropertyValue returns 0 (which is true for shorthand properties), 
 
30246
        try getPropertyValue instead.
 
30247
 
 
30248
2006-01-19  Adele Peterson  <adele@apple.com>
 
30249
 
 
30250
        Reviewed by Hyatt and Darin.
 
30251
 
 
30252
        http://bugs.webkit.org/show_bug.cgi?id=6665
 
30253
        Implement NSView-less version of <input type="text">
 
30254
        
 
30255
        Initial implementation of new and improved text fields.  
 
30256
        This will only be turned on if an input element has khtml-appearance: textfield.
 
30257
 
 
30258
        * WebCore.xcodeproj/project.pbxproj: Added RenderTextField.h and RenderTextField.cpp
 
30259
        * css/cssvalues.in: Fixed omitted button-bevel value.  
 
30260
          This was causing an off-by-one error when getting khtml-appearance value.
 
30261
        * khtml/html/HTMLInputElementImpl.cpp: Added checks for khtml-appearance to decide 
 
30262
          when to use RenderTextField instead of RenderLineEdit.
 
30263
        (DOM::HTMLInputElementImpl::selectionStart):
 
30264
        (DOM::HTMLInputElementImpl::selectionEnd):
 
30265
        (DOM::HTMLInputElementImpl::setSelectionStart):
 
30266
        (DOM::HTMLInputElementImpl::setSelectionEnd):
 
30267
        (DOM::HTMLInputElementImpl::select):
 
30268
        (DOM::HTMLInputElementImpl::setSelectionRange):
 
30269
        (DOM::HTMLInputElementImpl::createRenderer):
 
30270
        (DOM::HTMLInputElementImpl::defaultEventHandler):
 
30271
        * khtml/html/HTMLInputElementImpl.h:
 
30272
        * khtml/html/html_elementimpl.cpp:
 
30273
        (HTMLElementImpl::isFocusable): Also allow editable elements with no parent to be focusable.
 
30274
        * khtml/xml/NodeImpl.h:
 
30275
        (WebCore::NodeImpl::setAttached): Added to set m_attached without having to call attach().
 
30276
        * rendering/RenderTextField.cpp: Added.
 
30277
        (khtml:::RenderBlock):
 
30278
        (khtml::RenderTextField::~RenderTextField):
 
30279
        (khtml::RenderTextField::addChild):
 
30280
        (khtml::RenderTextField::removeChild):
 
30281
        (khtml::RenderTextField::setStyle):
 
30282
        (khtml::RenderTextField::getDivStyle):
 
30283
        (khtml::RenderTextField::updateFromElement):
 
30284
        (khtml::RenderTextField::selectionStart):
 
30285
        (khtml::RenderTextField::selectionEnd):
 
30286
        (khtml::RenderTextField::setSelectionStart):
 
30287
        (khtml::RenderTextField::setSelectionEnd):
 
30288
        (khtml::RenderTextField::select):
 
30289
        (khtml::RenderTextField::setSelectionRange):
 
30290
        * rendering/RenderTextField.h: Added.
 
30291
        (khtml::RenderTextField::removeLeftoverAnonymousBoxes):
 
30292
        (khtml::RenderTextField::renderName):
 
30293
        * rendering/render_container.cpp:
 
30294
        (RenderContainer::destroy): use renamed destroyLeftoverChildren.
 
30295
        (RenderContainer::destroyLeftoverChildren): renamed from destroyLeftoverAnonymousChildren.
 
30296
        * rendering/render_container.h:
 
30297
        * rendering/render_flow.cpp:
 
30298
        (RenderFlow::destroy): use renamed destroyLeftoverChildren.
 
30299
 
 
30300
2006-01-18  Darin Adler  <darin@apple.com>
 
30301
 
 
30302
        Reviewed by Hyatt.
 
30303
 
 
30304
        - removed all use of QMap
 
30305
 
 
30306
        * ForwardingHeaders/qmap.h: Removed.
 
30307
        * WebCore.xcodeproj/project.pbxproj: Removed KWQMap.h, KWQMapImpl.h, KWQMapImpl.cpp.
 
30308
        * kwq/KWQMap.h: Removed.
 
30309
        * kwq/KWQMapImpl.cpp: Removed.
 
30310
        * kwq/KWQMapImpl.h: Removed.
 
30311
 
 
30312
        * bridge/BrowserExtension.h: (WebCore::URLArgs::metaData): Converted from QMap of QString
 
30313
        to HashMap of DOMString.
 
30314
        * bridge/mac/BrowserExtensionMac.mm: Ditto.
 
30315
        * bridge/mac/MacFrame.mm:
 
30316
        (MacFrame::openURLRequest): Ditto.
 
30317
        (MacFrame::urlSelected): Ditto.
 
30318
        (MacFrame::createPart): Ditto.
 
30319
        * khtml/ecma/kjs_window.cpp:
 
30320
        (KJS::parseModalDialogFeatures): Ditto.
 
30321
        (KJS::boolFeature): Ditto.
 
30322
        (KJS::intFeature): Ditto.
 
30323
        (KJS::createNewWindow): Ditto.
 
30324
        (KJS::showModalDialog): Ditto.
 
30325
        (KJS::WindowFunc::callAsFunction): Ditto.
 
30326
        * khtml/html/html_objectimpl.cpp: (WebCore::HTMLAppletElementImpl::createRenderer): Ditto.
 
30327
        * khtml/xml/dom_xmlimpl.cpp: (DOM::ProcessingInstructionImpl::checkStyleSheet): Ditto.
 
30328
        * khtml/xml/xml_tokenizer.cpp:
 
30329
        (WebCore::toString): Added. Converts to DOMString instead of QString.
 
30330
        (WebCore::attributesStartElementNsHandler): Converted from QMap of QString to HashMap of DOMString.
 
30331
        (WebCore::parseAttributes): Ditto.
 
30332
        * khtml/xml/xml_tokenizer.h: (WebCore::Tokenizer::setTransformSource): Ditto.
 
30333
        * ksvg2/misc/KSVGTimeScheduler.cpp: (KSVG::SVGTimer::notifyAll): Ditto.
 
30334
        * kwq/KWQKJavaAppletWidget.h: Ditto.
 
30335
        * kwq/KWQKJavaAppletWidget.mm: (KJavaAppletWidget::KJavaAppletWidget): Ditto.
 
30336
        * kwq/KWQKJobClasses.h: Ditto.
 
30337
        * kwq/KWQKJobClasses.mm: (KIO::TransferJob::addMetaData): Ditto.
 
30338
        * page/Frame.cpp:
 
30339
        (Frame::didOpenURL): Ditto.
 
30340
        (Frame::changeLocation): Ditto.
 
30341
        (Frame::mark): Ditto.
 
30342
        (Frame::setMark): Ditto.
 
30343
        (Frame::urlSelected): Ditto.
 
30344
        (Frame::requestObject): Ditto.
 
30345
        (Frame::processObjectRequest): Ditto.
 
30346
        (Frame::submitForm): Ditto.
 
30347
        * rendering/render_applet.cpp:
 
30348
        (WebCore::RenderApplet::RenderApplet): Ditto.
 
30349
        (WebCore::RenderApplet::createWidgetIfNecessary): Ditto.
 
30350
        (WebCore::RenderApplet::layout): Ditto.
 
30351
        * rendering/render_applet.h:
 
30352
        (WebCore::RenderApplet::renderName): Ditto.
 
30353
        (WebCore::RenderApplet::element): Ditto.
 
30354
        (WebCore::RenderEmptyApplet::renderName): Ditto.
 
30355
 
 
30356
        * khtml/dom/dom_string.h:
 
30357
        (WebCore::DOMString::createCFString): Added. Not yet implemented or used.
 
30358
        (WebCore::DOMString::operator NSString*): Updated to call through to DOMStringImpl.
 
30359
        Added hash functions and hash traits so you can use DOMString in hash tables.
 
30360
        * khtml/xml/dom_stringimpl.h: Added conversion to and from CFStringRef/NSString.
 
30361
        * khtml/xml/dom_stringimpl.cpp: Took out an excess "DOM::".
 
30362
 
 
30363
        * bindings/objc/DOMInternal.mm: (DOMStringImpl::operator NSString *): Moved from DOMString
 
30364
        to DOMStringImpl.
 
30365
 
 
30366
        - changed the mark from a SelectionController to a Selection
 
30367
          (maybe it can be a Position instead?)
 
30368
 
 
30369
        * page/Frame.h: Changed mark() and setMark() to use a Selection.
 
30370
        * page/FramePrivate.h: Changed mark to a Selection.
 
30371
 
 
30372
        * bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge setMarkDOMRange:]):
 
30373
        Updated for change from SelectionController to Selection.
 
30374
 
 
30375
        - removed extraneous includes
 
30376
 
 
30377
        * kwq/KWQKHTMLSettings.h: Removed include of "KWQMap.h".
 
30378
        * kwq/KWQKIOGlobal.h: Ditto.
 
30379
 
 
30380
        * khtml/editing/htmlediting.h: Removed extraneous includes and namespace prefixes.
 
30381
 
 
30382
        * khtml/html/html_canvasimpl.h: Removed extraneous includes and moved into the
 
30383
        WebCore namespace.
 
30384
        * khtml/html/html_canvasimpl.cpp: Ditto.
 
30385
        * khtml/html/htmltokenizer.cpp: Ditto.
 
30386
        * khtml/html/htmltokenizer.h: Ditto.
 
30387
        * khtml/xml/DocumentImpl.cpp: Ditto.
 
30388
        * kwq/KWQEditCommand.mm: Ditto.
 
30389
        * rendering/render_canvasimage.h: Ditto.
 
30390
        * rendering/render_image.h: Ditto.
 
30391
 
 
30392
        * khtml/editing/composite_edit_command.cpp: Updated includes because of ones
 
30393
        that were removed from headers.
 
30394
        * khtml/editing/htmlediting.cpp: Ditto.
 
30395
        * khtml/editing/jsediting.cpp: Ditto.
 
30396
        * khtml/editing/replace_selection_command.cpp: Ditto.
 
30397
        * rendering/render_canvasimage.cpp: Ditto.
 
30398
        * rendering/render_image.cpp: Ditto.
 
30399
 
 
30400
        * loader/loader.cpp: (WebCore::Loader::servePendingRequests): Removed code to add the
 
30401
        cache control string, since that was hardcoded to empty string anyway.
 
30402
 
 
30403
2006-01-19  Eric Seidel  <eseidel@apple.com>
 
30404
 
 
30405
        Reviewed by darin & anders.
 
30406
 
 
30407
        Fix opacity crasher for <text> and <image>.
 
30408
        http://bugs.webkit.org/show_bug.cgi?id=6668
 
30409
        Even though the crash is fixed, opacity still doesn't work.
 
30410
        http://bugs.webkit.org/show_bug.cgi?id=6669
 
30411
        
 
30412
        Test: svg/custom/text-image-opacity.svg
 
30413
 
 
30414
        * kcanvas/RenderSVGImage.cpp:
 
30415
        (RenderSVGImage::paint):
 
30416
        * kcanvas/RenderSVGText.cpp:
 
30417
        (RenderSVGText::paint):
 
30418
 
 
30419
2006-01-19  Eric Seidel  <eseidel@apple.com>
 
30420
 
 
30421
        Reviewed by darin.
 
30422
 
 
30423
        Remove CFDictionary usage from KWQObject.*
 
30424
        http://bugs.webkit.org/show_bug.cgi?id=6468
 
30425
 
 
30426
        * kwq/KWQObject.cpp:
 
30427
        (KWQObjectTimer::KWQObjectTimer):
 
30428
        (QObject::restartTimer):
 
30429
        (QObject::timerIntervals):
 
30430
        (KWQObjectTimer::deleteTimer):
 
30431
        (QObject::killTimer):
 
30432
        (QObject::killTimers):
 
30433
        (sendDeferredTimerEvent):
 
30434
 
 
30435
2006-01-18  David Hyatt <hyatt@apple.com
 
30436
 
 
30437
        Fix for bug 6657, remove all uses of MacFrame from cross-platform
 
30438
        code.  Also remove uses of BrowserExtensionMac (and make the
 
30439
        frame responsible for instantiation of the appropriate
 
30440
        platform-specific object).
 
30441
 
 
30442
        Also #ifdef out all the Dashboard code in the engine for non-Apple
 
30443
        platforms.
 
30444
 
 
30445
        Reviewed by anders
 
30446
 
 
30447
        * ForwardingHeaders/khtml_ext.h: Removed.
 
30448
        * ForwardingHeaders/kparts/browserextension.h: Removed.
 
30449
        * WebCore.vcproj/WebCore/WebCore.vcproj:
 
30450
        * bridge/BrowserExtension.h: Added.
 
30451
        (WebCore::BrowserExtension::BrowserExtension):
 
30452
        * bridge/mac/BrowserExtensionMac.h: Added.
 
30453
        * bridge/mac/BrowserExtensionMac.mm: Added.
 
30454
        * bridge/mac/KWQKHTMLPartBrowserExtension.h: Removed.
 
30455
        * bridge/mac/KWQKHTMLPartBrowserExtension.mm: Removed.
 
30456
        * bridge/mac/KWQKPartsBrowserExtension.h: Removed.
 
30457
        * bridge/mac/MacFrame.h:
 
30458
        (MacFrame::createBrowserExtension):
 
30459
        (MacFrame::markedTextRange):
 
30460
        * css/css_computedstyle.cpp:
 
30461
        (DOM::):
 
30462
        (DOM::CSSComputedStyleDeclarationImpl::getPropertyCSSValue):
 
30463
        * css/css_valueimpl.cpp:
 
30464
        (WebCore::CSSPrimitiveValueImpl::cleanup):
 
30465
        (WebCore::CSSPrimitiveValueImpl::cssText):
 
30466
        * css/css_valueimpl.h:
 
30467
        (DOM::CSSPrimitiveValueImpl::):
 
30468
        * css/cssparser.cpp:
 
30469
        (CSSParser::parseValue):
 
30470
        * css/cssparser.h:
 
30471
        * css/cssstyleselector.cpp:
 
30472
        (WebCore::CSSStyleSelector::applyProperty):
 
30473
        * khtml/ecma/kjs_events.cpp:
 
30474
        (KJS::JSAbstractEventListener::handleEvent):
 
30475
        * khtml/ecma/kjs_navigator.cpp:
 
30476
        (KJS::Navigator::getValueProperty):
 
30477
        * khtml/ecma/kjs_proxy.cpp:
 
30478
        (KJSProxyImpl::evaluate):
 
30479
        (KJSProxyImpl::initScript):
 
30480
        * khtml/ecma/kjs_window.cpp:
 
30481
        (KJS::canShowModalDialog):
 
30482
        (KJS::canShowModalDialogNow):
 
30483
        (KJS::showModalDialog):
 
30484
        (KJS::Window::getValueProperty):
 
30485
        (KJS::Window::scheduleClose):
 
30486
        (KJS::Window::isSafeScript):
 
30487
        (KJS::parseWindowFeatures):
 
30488
        (KJS::constrainToVisible):
 
30489
        (KJS::WindowFunc::callAsFunction):
 
30490
        (KJS::ScheduledAction::execute):
 
30491
        (KJS::BarInfo::getValueProperty):
 
30492
        (KJS::History::getValueProperty):
 
30493
        * khtml/editing/jsediting.cpp:
 
30494
        * khtml/editing/typing_command.cpp:
 
30495
        (khtml::TypingCommand::markMisspellingsAfterTyping):
 
30496
        * khtml/html/HTMLFormElementImpl.cpp:
 
30497
        (DOM::HTMLFormElementImpl::formData):
 
30498
        (DOM::HTMLFormElementImpl::submit):
 
30499
        * khtml/html/html_objectimpl.cpp:
 
30500
        (DOM::HTMLAppletElementImpl::getAppletInstance):
 
30501
        (DOM::HTMLEmbedElementImpl::getEmbedInstance):
 
30502
        (DOM::HTMLObjectElementImpl::getObjectInstance):
 
30503
        * khtml/xml/DocumentImpl.cpp:
 
30504
        (DocumentImpl::DocumentImpl):
 
30505
        (DocumentImpl::updateTitle):
 
30506
        (DocumentImpl::implicitClose):
 
30507
        (DocumentImpl::referrer):
 
30508
        * khtml/xml/DocumentImpl.h:
 
30509
        * khtml/xml/dom_elementimpl.cpp:
 
30510
        (WebCore::ElementImpl::focus):
 
30511
        * page/Frame.cpp:
 
30512
        (Frame::init):
 
30513
        (Frame::didOpenURL):
 
30514
        (Frame::browserExtension):
 
30515
        (Frame::begin):
 
30516
        (Frame::scheduleHistoryNavigation):
 
30517
        (Frame::changeLocation):
 
30518
        (Frame::setSelection):
 
30519
        (Frame::urlSelected):
 
30520
        (Frame::requestFrameName):
 
30521
        (Frame::requestObject):
 
30522
        (Frame::processObjectRequest):
 
30523
        (Frame::submitForm):
 
30524
        (Frame::slotChildCompleted):
 
30525
        (Frame::shouldChangeSelection):
 
30526
        (Frame::appliedEditing):
 
30527
        (Frame::unappliedEditing):
 
30528
        (Frame::reappliedEditing):
 
30529
        (Frame::copyToPasteboard):
 
30530
        (Frame::cutToPasteboard):
 
30531
        (Frame::pasteFromPasteboard):
 
30532
        (Frame::pasteAndMatchStyle):
 
30533
        (Frame::transpose):
 
30534
        (Frame::redo):
 
30535
        (Frame::undo):
 
30536
        (Frame::paint):
 
30537
        * page/Frame.h:
 
30538
        * page/FramePrivate.h:
 
30539
        * page/FrameView.cpp:
 
30540
        (KHTMLView::layout):
 
30541
        (KHTMLView::updateDashboardRegions):
 
30542
        (KHTMLView::viewportMousePressEvent):
 
30543
        (KHTMLView::viewportMouseDoubleClickEvent):
 
30544
        (KHTMLView::viewportMouseMoveEvent):
 
30545
        (KHTMLView::viewportMouseReleaseEvent):
 
30546
        (KHTMLView::mediaType):
 
30547
        (KHTMLView::viewportWheelEvent):
 
30548
        * page/FrameView.h:
 
30549
        * rendering/InlineTextBox.cpp:
 
30550
        (khtml::InlineTextBox::paint):
 
30551
        * rendering/render_form.cpp:
 
30552
        * rendering/render_layer.cpp:
 
30553
        (khtml::RenderLayer::scrollToOffset):
 
30554
        (khtml::RenderLayer::updateScrollInfoAfterLayout):
 
30555
        * rendering/render_object.cpp:
 
30556
        (WebCore::RenderObject::setStyle):
 
30557
        * rendering/render_replaced.cpp:
 
30558
 
 
30559
2006-01-18  Darin Adler  <darin@apple.com>
 
30560
 
 
30561
        Reviewed by Hyatt.
 
30562
 
 
30563
        - change KWQList to use qsort instead of CFArraySort
 
30564
 
 
30565
        * kwq/KWQListImpl.cpp:
 
30566
        (compareFuncWrapper): Wrapper that uses global variables to overcome the lack
 
30567
        of a "data" pointer in qsort. Could have used qsort_r but that would be less portable.
 
30568
        (KWQListImpl::sort): Use qsort instead of CFArraySortValues.
 
30569
 
 
30570
2006-01-18  Darin Adler  <darin@apple.com>
 
30571
 
 
30572
        Reviewed by Beth.
 
30573
 
 
30574
        - changed the three signal/slot related files from ObjC++ to C++ files
 
30575
 
 
30576
        * WebCore.xcodeproj/project.pbxproj:
 
30577
        * kwq/KWQSignal.cpp: Added.
 
30578
        * kwq/KWQSignal.mm: Removed.
 
30579
        * kwq/KWQSignalStubs.cpp: Added.
 
30580
        * kwq/KWQSignalStubs.mm: Removed.
 
30581
        * kwq/KWQSlot.cpp: Added.
 
30582
        * kwq/KWQSlot.mm: Removed.
 
30583
 
 
30584
2006-01-18  David Hyatt <hyatt@apple.com>
 
30585
        
 
30586
        Make Win32 build again.  Update the scripts and deal
 
30587
        with all the recent file moves.
 
30588
 
 
30589
        Reviewed by xenon
 
30590
 
 
30591
        * WebCore.vcproj/WebCore/WebCore.vcproj:
 
30592
        * WebCore.vcproj/WebCore/build-generated-files.sh:
 
30593
        * rendering/render_container.cpp:
 
30594
        * rendering/render_object.cpp:
 
30595
 
 
30596
2006-01-18  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
30597
 
 
30598
        Test: fast/overflow/overflow-rtl-inline-scrollbar.html
 
30599
 
 
30600
        Reviewed by Hyatt.
 
30601
        
 
30602
        - fix http://bugs.webkit.org/show_bug.cgi?id=6618
 
30603
          Inline in RTL block with overflow:auto and left border makes scroll bar appear
 
30604
        
 
30605
        Inline flows were always returning 0 for leftmostPosition(). Their real leftmost
 
30606
        edges are determined by their inline boxes, which
 
30607
        RenderBlock::leftmostPosition already takes into account.
 
30608
 
 
30609
        * khtml/rendering/render_flow.cpp:
 
30610
        (RenderFlow::lowestPosition): Don't descend into inline flows.
 
30611
        (RenderFlow::rightmostPosition): Ditto.
 
30612
        (RenderFlow::leftmostPosition): Ditto.
 
30613
 
 
30614
2006-01-18  Anders Carlsson  <andersca@mac.com>
 
30615
 
 
30616
        Fix build.
 
30617
        
 
30618
        * khtml/ecma/kjs_navigator.cpp:
 
30619
        * page/FrameView.cpp:
 
30620
        Remove kstandarddirs.h includes.
 
30621
        
 
30622
2006-01-18  Darin Adler  <darin@apple.com>
 
30623
 
 
30624
        Reviewed by Hyatt.
 
30625
 
 
30626
        - fix http://bugs.webkit.org/show_bug.cgi?id=6646
 
30627
          compile CSS sources in instead of reading them from disk
 
30628
 
 
30629
        * css/make-css-file-arrays.pl: Added. Used to generate C array forms of the ".css" files.
 
30630
        * css/UserAgentStyleSheets.cpp: Added. Used to indirectly compile the generated file.
 
30631
 
 
30632
        * WebCore.xcodeproj/project.pbxproj: Added new source files. Added a build phase to
 
30633
        invoke the make-css-file-arrays.pl script. Removed the .css files, which no longer need
 
30634
        to be installed as part of the final package.
 
30635
 
 
30636
        * WebCore.vcproj/WebCore/WebCore.vcproj: Added new files.
 
30637
        * WebCore.vcproj/WebCore/build-generated-files.sh: Added make-css-file-arrays.pl script
 
30638
        section; not tested.
 
30639
 
 
30640
        * css/cssstyleselector.cpp: (WebCore::parseUASheet): Removed code to read user agent
 
30641
        sheets from disk. Replaced with code that gets them from compiled-in arrays instead.
 
30642
        Uses a pretty lame DOMString hack that could be reworked some day.
 
30643
        (WebCore::CSSStyleSelector::loadDefaultStyle): Change to load from arrays intead of disk.
 
30644
 
 
30645
        * css/html4.css: Added missing license header, tweaked format a bit.
 
30646
        * css/quirks.css: Added missing license header, tweaked format.
 
30647
        * css/svg.css: Moved from ksvg2/css directory.
 
30648
        * ksvg2/css/svg.css: Moved to top level css directory.
 
30649
 
 
30650
        * page/Frame.cpp: Removed includes of qfile.h and kstandarddirs.h.
 
30651
 
 
30652
        * ForwardingHeaders/kstandarddirs.h: Removed.
 
30653
        * ForwardingHeaders/qfile.h: Removed.
 
30654
        * kwq/KWQFile.h: Removed.
 
30655
        * kwq/KWQFile.mm: Removed.
 
30656
        * kwq/KWQKStandardDirs.h: Removed.
 
30657
        * kwq/KWQKStandardDirs.mm: Removed.
 
30658
 
 
30659
2006-01-17  Alexander Kellett  <lypanov@kde.org>
 
30660
 
 
30661
        Reviewed by Maciej.
 
30662
 
 
30663
        - Remove the now-unused KRenderingPaintServerImage[Quartz].
 
30664
 
 
30665
        * WebCore.xcodeproj/project.pbxproj:
 
30666
        * kcanvas/KCanvasTreeDebug.cpp:
 
30667
        * kcanvas/device/KRenderingPaintServer.h:
 
30668
        * kcanvas/device/KRenderingPaintServerImage.cpp: Removed.
 
30669
        * kcanvas/device/KRenderingPaintServerImage.h: Removed.
 
30670
        * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
 
30671
        * kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
 
30672
        * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
 
30673
        * ksvg2/svg/SVGFEImageElementImpl.cpp:
 
30674
        * kwq/KWQPainter.mm:
 
30675
 
 
30676
2006-01-17  Darin Adler  <darin@apple.com>
 
30677
 
 
30678
        Reviewed by John Sullivan.
 
30679
 
 
30680
        - fix http://bugs.webkit.org/show_bug.cgi?id=6377
 
30681
          <rdar://problem/4400315> All XML crashes in TOT with JavaScript disabled (6377)
 
30682
 
 
30683
        * bridge/mac/MacFrame.mm:
 
30684
        (MacFrame::bindingRootObject): Assert that this is only called when JavaScript is enabled.
 
30685
        (MacFrame::windowScriptObject): Return 0 if JavaScript is disabled.
 
30686
        (MacFrame::windowScriptNPObject): Ditto.
 
30687
        (MacFrame::partClearedInBegin): Don't call the "window script object available" call if
 
30688
        JavaScript is disabled.
 
30689
 
 
30690
2006-01-17  Justin Garcia  <justin.garcia@apple.com>
 
30691
 
 
30692
        Reviewed by darin
 
30693
        
 
30694
        <http://bugs.webkit.org/show_bug.cgi?id=6632>
 
30695
        REGRESSION: Selection includes spaces that it shouldn't
 
30696
        <rdar://problem/4407845> 
 
30697
        REGRESSION (TOT): blank space before found text selected at http://www.schepers.cc/comiclinks.html
 
30698
        
 
30699
        Layout test added:
 
30700
        * editing/selection/after-line-wrap.html
 
30701
 
 
30702
        * khtml/editing/visible_position.cpp:
 
30703
        (khtml::VisiblePosition::previous): Don't stop at the first candidate,
 
30704
        it may be visually equivalent to the original position.
 
30705
        * khtml/xml/dom_position.cpp:
 
30706
        (DOM::Position::upstream): Don't move to a position on a different line.
 
30707
        (DOM::Position::downstream): Ditto.
 
30708
 
 
30709
2006-01-17  Justin Garcia  <justin.garcia@apple.com>
 
30710
 
 
30711
        Reviewed by eric.
 
30712
        
 
30713
        Deployment builds now use -O2
 
30714
 
 
30715
        * WebCore.xcodeproj/project.pbxproj:
 
30716
        * khtml/html/htmltokenizer.cpp: Turned off inlining to fix
 
30717
        link error.
 
30718
 
 
30719
2006-01-17  David Hyatt  <hyatt@apple.com>
 
30720
       
 
30721
        Move khtml/rendering to WebCore/rendering.
 
30722
 
 
30723
        * WebCore.xcodeproj/project.pbxproj:
 
30724
        * khtml/rendering: Removed.
 
30725
        * khtml/rendering/DataRef.h: Removed.
 
30726
        * khtml/rendering/InlineTextBox.cpp: Removed.
 
30727
        * khtml/rendering/InlineTextBox.h: Removed.
 
30728
        * khtml/rendering/RenderText.cpp: Removed.
 
30729
        * khtml/rendering/RenderText.h: Removed.
 
30730
        * khtml/rendering/RenderTextFragment.cpp: Removed.
 
30731
        * khtml/rendering/RenderTextFragment.h: Removed.
 
30732
        * khtml/rendering/bidi.cpp: Removed.
 
30733
        * khtml/rendering/bidi.h: Removed.
 
30734
        * khtml/rendering/break_lines.cpp: Removed.
 
30735
        * khtml/rendering/break_lines.h: Removed.
 
30736
        * khtml/rendering/font.cpp: Removed.
 
30737
        * khtml/rendering/font.h: Removed.
 
30738
        * khtml/rendering/render_applet.cpp: Removed.
 
30739
        * khtml/rendering/render_applet.h: Removed.
 
30740
        * khtml/rendering/render_arena.cpp: Removed.
 
30741
        * khtml/rendering/render_arena.h: Removed.
 
30742
        * khtml/rendering/render_block.cpp: Removed.
 
30743
        * khtml/rendering/render_block.h: Removed.
 
30744
        * khtml/rendering/render_box.cpp: Removed.
 
30745
        * khtml/rendering/render_box.h: Removed.
 
30746
        * khtml/rendering/render_br.cpp: Removed.
 
30747
        * khtml/rendering/render_br.h: Removed.
 
30748
        * khtml/rendering/render_button.cpp: Removed.
 
30749
        * khtml/rendering/render_button.h: Removed.
 
30750
        * khtml/rendering/render_canvas.cpp: Removed.
 
30751
        * khtml/rendering/render_canvas.h: Removed.
 
30752
        * khtml/rendering/render_canvasimage.cpp: Removed.
 
30753
        * khtml/rendering/render_canvasimage.h: Removed.
 
30754
        * khtml/rendering/render_container.cpp: Removed.
 
30755
        * khtml/rendering/render_container.h: Removed.
 
30756
        * khtml/rendering/render_flexbox.cpp: Removed.
 
30757
        * khtml/rendering/render_flexbox.h: Removed.
 
30758
        * khtml/rendering/render_flow.cpp: Removed.
 
30759
        * khtml/rendering/render_flow.h: Removed.
 
30760
        * khtml/rendering/render_form.cpp: Removed.
 
30761
        * khtml/rendering/render_form.h: Removed.
 
30762
        * khtml/rendering/render_frames.cpp: Removed.
 
30763
        * khtml/rendering/render_frames.h: Removed.
 
30764
        * khtml/rendering/render_image.cpp: Removed.
 
30765
        * khtml/rendering/render_image.h: Removed.
 
30766
        * khtml/rendering/render_inline.cpp: Removed.
 
30767
        * khtml/rendering/render_inline.h: Removed.
 
30768
        * khtml/rendering/render_layer.cpp: Removed.
 
30769
        * khtml/rendering/render_layer.h: Removed.
 
30770
        * khtml/rendering/render_line.cpp: Removed.
 
30771
        * khtml/rendering/render_line.h: Removed.
 
30772
        * khtml/rendering/render_list.cpp: Removed.
 
30773
        * khtml/rendering/render_list.h: Removed.
 
30774
        * khtml/rendering/render_object.cpp: Removed.
 
30775
        * khtml/rendering/render_object.h: Removed.
 
30776
        * khtml/rendering/render_replaced.cpp: Removed.
 
30777
        * khtml/rendering/render_replaced.h: Removed.
 
30778
        * khtml/rendering/render_style.cpp: Removed.
 
30779
        * khtml/rendering/render_style.h: Removed.
 
30780
        * khtml/rendering/render_table.cpp: Removed.
 
30781
        * khtml/rendering/render_table.h: Removed.
 
30782
        * khtml/rendering/render_theme.cpp: Removed.
 
30783
        * khtml/rendering/render_theme.h: Removed.
 
30784
        * khtml/rendering/render_theme_mac.h: Removed.
 
30785
        * khtml/rendering/render_theme_mac.mm: Removed.
 
30786
        * khtml/rendering/table_layout.cpp: Removed.
 
30787
        * khtml/rendering/table_layout.h: Removed.
 
30788
        * rendering: Added.
 
30789
        * rendering/DataRef.h: Added.
 
30790
        * rendering/InlineTextBox.cpp: Added.
 
30791
        * rendering/InlineTextBox.h: Added.
 
30792
        * rendering/RenderText.cpp: Added.
 
30793
        * rendering/RenderText.h: Added.
 
30794
        * rendering/RenderTextFragment.cpp: Added.
 
30795
        * rendering/RenderTextFragment.h: Added.
 
30796
        * rendering/bidi.cpp: Added.
 
30797
        * rendering/bidi.h: Added.
 
30798
        * rendering/break_lines.cpp: Added.
 
30799
        * rendering/break_lines.h: Added.
 
30800
        * rendering/font.cpp: Added.
 
30801
        * rendering/font.h: Added.
 
30802
        * rendering/render_applet.cpp: Added.
 
30803
        * rendering/render_applet.h: Added.
 
30804
        * rendering/render_arena.cpp: Added.
 
30805
        * rendering/render_arena.h: Added.
 
30806
        * rendering/render_block.cpp: Added.
 
30807
        * rendering/render_block.h: Added.
 
30808
        * rendering/render_box.cpp: Added.
 
30809
        * rendering/render_box.h: Added.
 
30810
        * rendering/render_br.cpp: Added.
 
30811
        * rendering/render_br.h: Added.
 
30812
        * rendering/render_button.cpp: Added.
 
30813
        * rendering/render_button.h: Added.
 
30814
        * rendering/render_canvas.cpp: Added.
 
30815
        * rendering/render_canvas.h: Added.
 
30816
        * rendering/render_canvasimage.cpp: Added.
 
30817
        * rendering/render_canvasimage.h: Added.
 
30818
        * rendering/render_container.cpp: Added.
 
30819
        * rendering/render_container.h: Added.
 
30820
        * rendering/render_flexbox.cpp: Added.
 
30821
        * rendering/render_flexbox.h: Added.
 
30822
        * rendering/render_flow.cpp: Added.
 
30823
        * rendering/render_flow.h: Added.
 
30824
        * rendering/render_form.cpp: Added.
 
30825
        * rendering/render_form.h: Added.
 
30826
        * rendering/render_frames.cpp: Added.
 
30827
        * rendering/render_frames.h: Added.
 
30828
        * rendering/render_image.cpp: Added.
 
30829
        * rendering/render_image.h: Added.
 
30830
        * rendering/render_inline.cpp: Added.
 
30831
        * rendering/render_inline.h: Added.
 
30832
        * rendering/render_layer.cpp: Added.
 
30833
        * rendering/render_layer.h: Added.
 
30834
        * rendering/render_line.cpp: Added.
 
30835
        * rendering/render_line.h: Added.
 
30836
        * rendering/render_list.cpp: Added.
 
30837
        * rendering/render_list.h: Added.
 
30838
        * rendering/render_object.cpp: Added.
 
30839
        * rendering/render_object.h: Added.
 
30840
        * rendering/render_replaced.cpp: Added.
 
30841
        * rendering/render_replaced.h: Added.
 
30842
        * rendering/render_style.cpp: Added.
 
30843
        * rendering/render_style.h: Added.
 
30844
        * rendering/render_table.cpp: Added.
 
30845
        * rendering/render_table.h: Added.
 
30846
        * rendering/render_theme.cpp: Added.
 
30847
        * rendering/render_theme.h: Added.
 
30848
        * rendering/render_theme_mac.h: Added.
 
30849
        * rendering/render_theme_mac.mm: Added.
 
30850
        * rendering/table_layout.cpp: Added.
 
30851
        * rendering/table_layout.h: Added.
 
30852
 
 
30853
2006-01-17  David Hyatt  <hyatt@apple.com>
 
30854
 
 
30855
        Land support for a style method on DOMAttr from JS that will
 
30856
        allow the Web Inspector to include presentational attributes
 
30857
        in the style list.
 
30858
        
 
30859
        Reviewed by xenon
 
30860
 
 
30861
        * khtml/ecma/kjs_dom.cpp:
 
30862
        (KJS::DOMAttr::getValueProperty):
 
30863
        * khtml/ecma/kjs_dom.h:
 
30864
        (KJS::DOMAttr::):
 
30865
 
 
30866
2006-01-17  Beth Dakin  <bdakin@apple.com>
 
30867
 
 
30868
        Reviewed by Hyatt and Darin
 
30869
 
 
30870
        Fix for <rdar://problem/4405836> REGRESSION: crash at webmail.aol.com 
 
30871
        when deleting mail in khtml::RenderTableCell::collapsedBottomBorder() const 
 
30872
        + 232
 
30873
 
 
30874
        RenderTableCell::collapsedBottomBorder() gets nextCell by calling 
 
30875
        table()->cellBelow(this). In the case of the crash, cellBelow() returns 
 
30876
        a pointer to a table cell that was already destroyed. cellBelow() thinks 
 
30877
        that the pointer is still good because the grid of cells has not been updated 
 
30878
        because all of this code is called through the hitTest and the hitTest does 
 
30879
        not update the layout. The fix that I have is simply it have the hitTest call 
 
30880
        updateLayout(). This is the only change in behavior. The rest of the patch 
 
30881
        preserves behavior for simulated clicks. fast/events/stopPropagation-submit 
 
30882
        caught this problem that arose from calling updateLayout() in the hitTest; 
 
30883
        we should always have an x and y position of 0 for simulated clicks. This 
 
30884
        preserves that behavior by keeping track of whether a click is simulated or not.
 
30885
 
 
30886
        * khtml/html/HTMLInputElementImpl.cpp:
 
30887
        (DOM::HTMLInputElementImpl::defaultEventHandler): If the click is simulated, 
 
30888
        set xPos and yPos to 0.
 
30889
        * khtml/html/html_elementimpl.cpp:
 
30890
        (HTMLElementImpl::setContentEditable): Fix spacing.
 
30891
        (HTMLElementImpl::click): It isn't necessary to check if there is a renderer.
 
30892
        * khtml/rendering/render_layer.cpp:
 
30893
        (khtml::RenderLayer::hitTest): Call updateLayout().
 
30894
        * khtml/xml/NodeImpl.cpp:
 
30895
        (WebCore::NodeImpl::dispatchSimulatedMouseEvent): Set isSimulated to true.
 
30896
        (WebCore::NodeImpl::dispatchMouseEvent): Keep track of isSimulated.
 
30897
        * khtml/xml/NodeImpl.h: Same.
 
30898
        * khtml/xml/dom2_eventsimpl.cpp:
 
30899
        (DOM::MouseRelatedEventImpl::MouseRelatedEventImpl): Add isSimulated to
 
30900
        MouseRelatedEventImpl().
 
30901
        (DOM::MouseRelatedEventImpl::computePositions): Only change the offsets if 
 
30902
        it's not simulated.
 
30903
        (DOM::MouseEventImpl::MouseEventImpl): Add isSimulated to MouseEventImpl()
 
30904
        * khtml/xml/dom2_eventsimpl.h: 
 
30905
        (DOM::MouseRelatedEventImpl::isSimulated): Declarations of isSimulated
 
30906
        (DOM::MouseEventImpl::isSimulated): Same.
 
30907
 
 
30908
2006-01-17  Duncan Wilcox  <duncan@mclink.it>
 
30909
 
 
30910
        Reviewed by Darin, landed by ap.
 
30911
 
 
30912
        - fix http://bugs.webkit.org/show_bug.cgi?id=6609
 
30913
          Use Selection instead of SelectionController where possible
 
30914
 
 
30915
        This patch replaces the use of SelectionController with Selection in the edit commands.
 
30916
 
 
30917
        It also cleans up the relationship between Selection and SelectionController: 
 
30918
        SelectionController used to need to be friend to Selection to call validate() 
 
30919
        on it, now validation is enforced on every update of Selection.
 
30920
 
 
30921
        * khtml/editing/Selection.cpp:
 
30922
        (WebCore::Selection::Selection):
 
30923
        (WebCore::Selection::expandUsingGranularity):
 
30924
        (WebCore::Selection::validate):
 
30925
        * khtml/editing/Selection.h:
 
30926
        (WebCore::Selection::setExtent):
 
30927
        (WebCore::Selection::granularity):
 
30928
        (WebCore::operator==):
 
30929
        * khtml/editing/SelectionController.cpp:
 
30930
        (WebCore::SelectionController::SelectionController):
 
30931
        (WebCore::SelectionController::moveTo):
 
30932
        (WebCore::SelectionController::expandUsingGranularity):
 
30933
        (WebCore::SelectionController::clear):
 
30934
        (WebCore::SelectionController::setBase):
 
30935
        (WebCore::SelectionController::setExtent):
 
30936
        * khtml/editing/SelectionController.h:
 
30937
        (WebCore::SelectionController::selection):
 
30938
        * khtml/editing/apply_style_command.cpp:
 
30939
        (WebCore::ApplyStyleCommand::updateStartEnd):
 
30940
        (WebCore::ApplyStyleCommand::doApply):
 
30941
        * khtml/editing/break_blockquote_command.cpp:
 
30942
        (khtml::BreakBlockquoteCommand::doApply):
 
30943
        * khtml/editing/composite_edit_command.cpp:
 
30944
        (WebCore::CompositeEditCommand::deleteSelection):
 
30945
        (WebCore::CompositeEditCommand::rebalanceWhitespace):
 
30946
        * khtml/editing/composite_edit_command.h:
 
30947
        * khtml/editing/delete_selection_command.cpp:
 
30948
        (WebCore::DeleteSelectionCommand::DeleteSelectionCommand):
 
30949
        (WebCore::DeleteSelectionCommand::calculateTypingStyleAfterDelete):
 
30950
        (WebCore::DeleteSelectionCommand::clearTransientState):
 
30951
        (WebCore::DeleteSelectionCommand::doApply):
 
30952
        * khtml/editing/delete_selection_command.h:
 
30953
        * khtml/editing/edit_command.cpp:
 
30954
        (WebCore::EditCommandPtr::startingSelection):
 
30955
        (WebCore::EditCommandPtr::endingSelection):
 
30956
        (WebCore::EditCommandPtr::setStartingSelection):
 
30957
        (WebCore::EditCommandPtr::setEndingSelection):
 
30958
        (WebCore::EditCommand::EditCommand):
 
30959
        (WebCore::EditCommand::setStartingSelection):
 
30960
        (WebCore::EditCommand::setEndingSelection):
 
30961
        * khtml/editing/edit_command.h:
 
30962
        (WebCore::EditCommand::startingSelection):
 
30963
        (WebCore::EditCommand::endingSelection):
 
30964
        * khtml/editing/insert_line_break_command.cpp:
 
30965
        (khtml::InsertLineBreakCommand::doApply):
 
30966
        * khtml/editing/insert_paragraph_separator_command.cpp:
 
30967
        (khtml::InsertParagraphSeparatorCommand::doApply):
 
30968
        * khtml/editing/insert_text_command.cpp:
 
30969
        (khtml::InsertTextCommand::input):
 
30970
        * khtml/editing/move_selection_command.cpp:
 
30971
        (khtml::MoveSelectionCommand::doApply):
 
30972
        * khtml/editing/replace_selection_command.cpp:
 
30973
        (khtml::ReplaceSelectionCommand::doApply):
 
30974
        (khtml::ReplaceSelectionCommand::completeHTMLReplacement):
 
30975
        * khtml/editing/typing_command.cpp:
 
30976
        (khtml::TypingCommand::deleteKeyPressed):
 
30977
        (khtml::TypingCommand::forwardDeleteKeyPressed):
 
30978
        * page/Frame.cpp:
 
30979
        (Frame::appliedEditing):
 
30980
        (Frame::unappliedEditing):
 
30981
        (Frame::reappliedEditing):
 
30982
        * page/Frame.h:
 
30983
 
 
30984
2006-01-17  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
30985
 
 
30986
        Test: fast/dom/generic-form-element-assert.html
 
30987
 
 
30988
        Reviewed and reworked by Darin.
 
30989
        
 
30990
        - fix http://bugs.webkit.org/show_bug.cgi?id=5926
 
30991
          Assertion failure in HTMLGenericFormElementImpl::removedFromTree
 
30992
 
 
30993
        * khtml/html/HTMLGenericFormElementImpl.cpp: Tweaked formatting and namespaces
 
30994
        a bit. Removed unneeded includes.
 
30995
        (WebCore::findRoot): Added helper function.
 
30996
        (WebCore::HTMLGenericFormElementImpl::removedFromTree): Rewrote to do the check
 
30997
        in a simpler way, since the two separate cases amounted to the same check.
 
30998
 
 
30999
2006-01-17  Mark Rowe  <opendarwin.org@bdash.net.nz>
 
31000
 
 
31001
        Reviewed by eseidel.  Landed by eseidel.
 
31002
 
 
31003
        Fix second part of WebCore-no-SVG fails to build.
 
31004
        http://bugs.webkit.org/show_bug.cgi?id=6607
 
31005
 
 
31006
        * WebCore.xcodeproj/project.pbxproj:
 
31007
        Mark three headers as private rather than project in the WebCore-no-SVG target.
 
31008
 
 
31009
2006-01-17  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
31010
 
 
31011
        Reviewed by hyatt
 
31012
 
 
31013
        * kwq/KWQVectorImpl.cpp:
 
31014
        (KWQVectorImpl::append): Assign the new item to index m_count, not m_size.
 
31015
 
 
31016
2006-01-17  Mark Rowe  <opendarwin.org@bdash.net.nz>
 
31017
 
 
31018
        Reviewed by eseidel.  Landed by eseidel.
 
31019
 
 
31020
        WebCore-no-SVG fails to build.
 
31021
        http://bugs.webkit.org/show_bug.cgi?id=6607
 
31022
 
 
31023
        * WebCore.xcodeproj/project.pbxproj:
 
31024
        Fix build of WebCore-no-SVG target.  Removes SVG specific files and adds new
 
31025
        files omitted from the target.
 
31026
 
 
31027
2006-01-16  David Hyatt  <hyatt@apple.com>
 
31028
 
 
31029
        (1) Fix build bustage by properly marking the moved Obj-C
 
31030
        bindings files as private.
 
31031
        (2) Move khtml/css to WebCore/css.
 
31032
        (3) Eliminate the kdom/css forwarding headers.
 
31033
 
 
31034
        * ForwardingHeaders/kdom/css: Removed.
 
31035
        * ForwardingHeaders/kdom/css/CSSPrimitiveValueImpl.h: Removed.
 
31036
        * ForwardingHeaders/kdom/css/CSSStyleDeclarationImpl.h: Removed.
 
31037
        * ForwardingHeaders/kdom/css/CSSStyleRuleImpl.h: Removed.
 
31038
        * ForwardingHeaders/kdom/css/CSSStyleSelector.h: Removed.
 
31039
        * ForwardingHeaders/kdom/css/CSSStyleSheetImpl.h: Removed.
 
31040
        * ForwardingHeaders/kdom/css/CSSValueImpl.h: Removed.
 
31041
        * ForwardingHeaders/kdom/css/CSSValueListImpl.h: Removed.
 
31042
        * ForwardingHeaders/kdom/css/KDOMCSSParser.h: Removed.
 
31043
        * ForwardingHeaders/kdom/css/MediaListImpl.h: Removed.
 
31044
        * ForwardingHeaders/kdom/css/RGBColorImpl.h: Removed.
 
31045
        * ForwardingHeaders/kdom/css/RenderStyle.h: Removed.
 
31046
        * ForwardingHeaders/kdom/css/StyleSheetListImpl.h: Removed.
 
31047
        * WebCore+SVG/RGBColorImpl.cpp:
 
31048
        * WebCore.xcodeproj/project.pbxproj:
 
31049
        * css: Added.
 
31050
        * css/css_base.cpp: Added.
 
31051
        * css/css_base.h: Added.
 
31052
        * css/css_computedstyle.cpp: Added.
 
31053
        * css/css_computedstyle.h: Added.
 
31054
        * css/css_grammar.y: Added.
 
31055
        * css/css_ruleimpl.cpp: Added.
 
31056
        * css/css_ruleimpl.h: Added.
 
31057
        * css/css_stylesheetimpl.cpp: Added.
 
31058
        * css/css_stylesheetimpl.h: Added.
 
31059
        * css/css_valueimpl.cpp: Added.
 
31060
        * css/css_valueimpl.h: Added.
 
31061
        * css/csshelper.cpp: Added.
 
31062
        * css/csshelper.h: Added.
 
31063
        * css/cssparser.cpp: Added.
 
31064
        * css/cssparser.h: Added.
 
31065
        * css/cssproperties.in: Added.
 
31066
        * css/cssstyleselector.cpp: Added.
 
31067
        * css/cssstyleselector.h: Added.
 
31068
        * css/cssvalues.in: Added.
 
31069
        * css/html4.css: Added.
 
31070
        * css/makeprop: Added.
 
31071
        * css/maketokenizer: Added.
 
31072
        * css/makevalues: Added.
 
31073
        * css/quirks.css: Added.
 
31074
        * css/tokenizer.flex: Added.
 
31075
        * khtml/css: Removed.
 
31076
        * khtml/css/css_base.cpp: Removed.
 
31077
        * khtml/css/css_base.h: Removed.
 
31078
        * khtml/css/css_computedstyle.cpp: Removed.
 
31079
        * khtml/css/css_computedstyle.h: Removed.
 
31080
        * khtml/css/css_grammar.y: Removed.
 
31081
        * khtml/css/css_ruleimpl.cpp: Removed.
 
31082
        * khtml/css/css_ruleimpl.h: Removed.
 
31083
        * khtml/css/css_stylesheetimpl.cpp: Removed.
 
31084
        * khtml/css/css_stylesheetimpl.h: Removed.
 
31085
        * khtml/css/css_valueimpl.cpp: Removed.
 
31086
        * khtml/css/css_valueimpl.h: Removed.
 
31087
        * khtml/css/csshelper.cpp: Removed.
 
31088
        * khtml/css/csshelper.h: Removed.
 
31089
        * khtml/css/cssparser.cpp: Removed.
 
31090
        * khtml/css/cssparser.h: Removed.
 
31091
        * khtml/css/cssproperties.in: Removed.
 
31092
        * khtml/css/cssstyleselector.cpp: Removed.
 
31093
        * khtml/css/cssstyleselector.h: Removed.
 
31094
        * khtml/css/cssvalues.in: Removed.
 
31095
        * khtml/css/html4.css: Removed.
 
31096
        * khtml/css/makeprop: Removed.
 
31097
        * khtml/css/maketokenizer: Removed.
 
31098
        * khtml/css/makevalues: Removed.
 
31099
        * khtml/css/quirks.css: Removed.
 
31100
        * khtml/css/tokenizer.flex: Removed.
 
31101
        * ksvg2/css/SVGCSSStyleSelector.cpp:
 
31102
        * ksvg2/ecma/Ecma.cpp:
 
31103
        * ksvg2/misc/KCanvasRenderingStyle.cpp:
 
31104
        * ksvg2/misc/KCanvasRenderingStyle.h:
 
31105
        * ksvg2/svg/SVGAnimationElementImpl.cpp:
 
31106
        * ksvg2/svg/SVGClipPathElementImpl.cpp:
 
31107
        * ksvg2/svg/SVGColorImpl.cpp:
 
31108
        * ksvg2/svg/SVGColorImpl.h:
 
31109
        * ksvg2/svg/SVGDOMImplementationImpl.cpp:
 
31110
        * ksvg2/svg/SVGDocumentImpl.cpp:
 
31111
        * ksvg2/svg/SVGElementImpl.cpp:
 
31112
        * ksvg2/svg/SVGGradientElementImpl.cpp:
 
31113
        * ksvg2/svg/SVGMaskElementImpl.cpp:
 
31114
        * ksvg2/svg/SVGStyleElementImpl.cpp:
 
31115
        * ksvg2/svg/SVGStyledElementImpl.h:
 
31116
        * ksvg2/svg/SVGTextElementImpl.cpp:
 
31117
 
 
31118
2006-01-16  David Hyatt  <hyatt@apple.com>
 
31119
 
 
31120
        Move the Objective-C dom bindings from kwq to bindings/objc.
 
31121
 
 
31122
        Reviewed by eseidel
 
31123
 
 
31124
        * WebCore.xcodeproj/project.pbxproj:
 
31125
        * bindings: Added.
 
31126
        * bindings/js: Added.
 
31127
        * bindings/objc: Added.
 
31128
        * bindings/objc/DOM.h: Added.
 
31129
        * bindings/objc/DOM.mm: Added.
 
31130
        * bindings/objc/DOMCSS.h: Added.
 
31131
        * bindings/objc/DOMCSS.mm: Added.
 
31132
        * bindings/objc/DOMCore.h: Added.
 
31133
        * bindings/objc/DOMEvents.h: Added.
 
31134
        * bindings/objc/DOMEvents.mm: Added.
 
31135
        * bindings/objc/DOMEventsInternal.h: Added.
 
31136
        * bindings/objc/DOMExtensions.h: Added.
 
31137
        * bindings/objc/DOMHTML.h: Added.
 
31138
        * bindings/objc/DOMHTML.mm: Added.
 
31139
        * bindings/objc/DOMHTMLInternal.h: Added.
 
31140
        * bindings/objc/DOMInternal.h: Added.
 
31141
        * bindings/objc/DOMInternal.mm: Added.
 
31142
        * bindings/objc/DOMPrivate.h: Added.
 
31143
        * bindings/objc/DOMRange.h: Added.
 
31144
        * bindings/objc/DOMStylesheets.h: Added.
 
31145
        * bindings/objc/DOMTraversal.h: Added.
 
31146
        * bindings/objc/DOMUtility.mm: Added.
 
31147
        * bindings/objc/DOMViews.h: Added.
 
31148
        * bindings/objc/DOMViews.mm: Added.
 
31149
        * bindings/objc/DOMViewsInternal.h: Added.
 
31150
        * kwq/DOM-CSS.mm: Removed.
 
31151
        * kwq/DOM.h: Removed.
 
31152
        * kwq/DOM.mm: Removed.
 
31153
        * kwq/DOMCSS.h: Removed.
 
31154
        * kwq/DOMCore.h: Removed.
 
31155
        * kwq/DOMEvents.h: Removed.
 
31156
        * kwq/DOMEvents.mm: Removed.
 
31157
        * kwq/DOMEventsInternal.h: Removed.
 
31158
        * kwq/DOMExtensions.h: Removed.
 
31159
        * kwq/DOMHTML.h: Removed.
 
31160
        * kwq/DOMHTML.mm: Removed.
 
31161
        * kwq/DOMHTMLInternal.h: Removed.
 
31162
        * kwq/DOMInternal.h: Removed.
 
31163
        * kwq/DOMInternal.mm: Removed.
 
31164
        * kwq/DOMPrivate.h: Removed.
 
31165
        * kwq/DOMRange.h: Removed.
 
31166
        * kwq/DOMStylesheets.h: Removed.
 
31167
        * kwq/DOMTraversal.h: Removed.
 
31168
        * kwq/DOMUtility.mm: Removed.
 
31169
        * kwq/DOMViews.h: Removed.
 
31170
        * kwq/DOMViews.mm: Removed.
 
31171
        * kwq/DOMViewsInternal.h: Removed.
 
31172
 
 
31173
2006-01-16  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
31174
 
 
31175
        Reviewed by Hyatt, landed by ap.
 
31176
 
 
31177
        - fix http://bugs.webkit.org/show_bug.cgi?id=6473
 
31178
          REGRESSION: Serious painting problems on new iLife and iWorks pages
 
31179
 
 
31180
        * khtml/css/css_grammar.y:
 
31181
        (DOM::getPropertyID): Undo the mapping of -moz-opacity and -moz-border-radius to
 
31182
        opacity and border-radius, respectively.
 
31183
        * khtml/rendering/render_box.cpp:
 
31184
        (RenderBox::setStyle): Set the object's layer to 0 before removing the layer,
 
31185
        to allow child layers to update their positions correctly.
 
31186
        * khtml/rendering/render_layer.cpp:
 
31187
        (khtml::RenderLayer::removeOnlyThisLayer): Update the positions of all children
 
31188
        of the layer being removed.
 
31189
        * manual-tests/bugzilla-6473.html: Added.
 
31190
 
 
31191
2006-01-16  Mark Rowe  <opendarwin.org@bdash.net.nz>
 
31192
 
 
31193
        Reviewed by Darin, landed by ap.
 
31194
 
 
31195
        Fix typo in CSSPrimitiveValueImpl::setStringValue.
 
31196
 
 
31197
        * khtml/css/css_valueimpl.cpp:
 
31198
        (DOM::CSSPrimitiveValueImpl::setStringValue): Change >> to > and fix formatting.
 
31199
 
 
31200
2006-01-16  Alexey Proskuryakov  <ap@nypop.com>
 
31201
 
 
31202
        Reviewed by Justin.
 
31203
 
 
31204
        - fix http://bugs.webkit.org/show_bug.cgi?id=5401
 
31205
          [WebCoreBridge firstRectForDOMRange:] works incorrectly for the first character after a line wrap
 
31206
 
 
31207
        Test: editing/input/wrapped-line-char-rect.html
 
31208
 
 
31209
        * bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge firstRectForDOMRange:]):
 
31210
         Use DOWNSTREAM affinity for the range start
 
31211
 
 
31212
2006-01-16  Justin Garcia  <justin.garcia@apple.com>
 
31213
 
 
31214
        Reviewed by darin
 
31215
        
 
31216
        <http://bugs.webkit.org/show_bug.cgi?id=5127>
 
31217
        REGRESSION: problems making selection with left edge at right edge of image
 
31218
        <rdar://problem/4364427>
 
31219
        triple-click includes first item on next line (www.apple.com, but I think I've seen it elsewhere)
 
31220
        
 
31221
        Don't paint the selection tint on replaced elements
 
31222
        if the selections starts at the end or ends at the start.
 
31223
 
 
31224
        * khtml/rendering/render_image.cpp:
 
31225
        (RenderImage::paint):
 
31226
        * khtml/rendering/render_replaced.cpp:
 
31227
        (WebCore::RenderReplaced::isSelected):
 
31228
        (WebCore::RenderWidget::paint):
 
31229
        * khtml/rendering/render_replaced.h:
 
31230
 
 
31231
2006-01-16  Tim Omernick  <timo@apple.com>
 
31232
 
 
31233
        Reviewed by John Sullivan.
 
31234
 
 
31235
        WebCore part of <rdar://problem/4211707> NPAPI ref count behavior differs with Mozilla
 
31236
 
 
31237
        * bridge/mac/MacFrame.mm:
 
31238
        (MacFrame::setView):
 
31239
        Call _NPN_DeallocateObject() instead of _NPN_ReleaseObject() so that we don't leak if a plugin fails to release
 
31240
        the window script object properly.
 
31241
        Our old NPN_GetValue() did not properly retain the returned window script object.  Because of this, many plugins
 
31242
        have WebKit-specific workarounds to not release said window script object.  Forcibly deallocating it here
 
31243
        should prevent any such issues.  This shouldn't cause any problems for plugins, since they should already be
 
31244
        stopped and destroyed at this point.
 
31245
        This also fixes a preexisting leak of the window script NPObject -- it was never actually being freed!
 
31246
 
 
31247
2006-01-16  Darin Adler  <darin@apple.com>
 
31248
 
 
31249
        - actually removed QPtrDict itself
 
31250
 
 
31251
        * ForwardingHeaders/qptrdict.h: Removed.
 
31252
        * WebCore.xcodeproj/project.pbxproj: Removed KWQPtrDict* files.
 
31253
        * kwq/KWQPtrDict.h: Removed.
 
31254
        * kwq/KWQPtrDictImpl.cpp: Removed.
 
31255
        * kwq/KWQPtrDictImpl.h: Removed.
 
31256
 
 
31257
2006-01-16  Darin Adler  <darin@apple.com>
 
31258
 
 
31259
        Reviewed by John Sullivan.
 
31260
 
 
31261
        - removed all uses of QPtrDict, most uses of QMap
 
31262
 
 
31263
        * khtml/ecma/kjs_dom.cpp: Converted tabs to spaces.
 
31264
        (KJS::DOMNode::mark): Switched from QPtrDict to HashSet.
 
31265
        * khtml/ecma/kjs_events.cpp: Converted tabs to spaces.
 
31266
        (KJS::JSUnprotectedEventListener::JSUnprotectedEventListener): Use HashMap.
 
31267
        (KJS::JSEventListener::JSEventListener): Use HashMap.
 
31268
        (KJS::JSLazyEventListener::parseCode): Use HashMap.
 
31269
        * khtml/ecma/kjs_html.cpp: Convert tabs to spaces.
 
31270
        (KJS::KJS::HTMLElement::classInfo): Use HashMap.
 
31271
        * khtml/ecma/kjs_window.cpp: Convert tabs to spaces.
 
31272
        (KJS::Window::~Window): Use HashMap.
 
31273
        (KJS::Window::getJSEventListener): Ditto.
 
31274
        (KJS::Window::getJSUnprotectedEventListener): Ditto.
 
31275
        (KJS::WindowQObject::parentDestroyed): Ditto.
 
31276
        (KJS::WindowQObject::installTimeout): Ditto.
 
31277
        (KJS::WindowQObject::pauseTimeouts): Ditto.
 
31278
        (KJS::WindowQObject::resumeTimeouts): Ditto.
 
31279
        (KJS::WindowQObject::clearTimeout): Ditto.
 
31280
        (KJS::WindowQObject::timerEvent): Ditto.
 
31281
        * khtml/ecma/kjs_window.h: Use HashMap.
 
31282
        * khtml/ecma/xmlhttprequest.cpp: Convert tabs to spaces.
 
31283
        (KJS::XMLHttpRequest::requestsByDocument): Use HashMap/Set.
 
31284
        (KJS::XMLHttpRequest::addToRequestsByDocument): Ditto.
 
31285
        (KJS::XMLHttpRequest::removeFromRequestsByDocument): Ditto.
 
31286
        (KJS::XMLHttpRequest::cancelRequests): Ditto.
 
31287
        * khtml/ecma/xmlhttprequest.h: Ditto.
 
31288
        * khtml/editing/apply_style_command.cpp:
 
31289
        (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange): Use HashMap.
 
31290
        * khtml/rendering/render_canvas.cpp:
 
31291
        (RenderCanvas::selectionRect): Use HashMap.
 
31292
        (RenderCanvas::setSelection): Ditto.
 
31293
        * khtml/rendering/render_flow.cpp: (RenderFlow::paintLines): Use HashSet.
 
31294
        * khtml/rendering/render_line.cpp: (khtml::InlineFlowBox::paint): Use HashSet.
 
31295
        * khtml/rendering/render_object.h: Used HashSet.
 
31296
        Converted tabs to spaces and did namespace changes too.
 
31297
        * khtml/xml/DocumentImpl.cpp:
 
31298
        (DocumentImpl::DocumentImpl): Use HashSet and HashMap.
 
31299
        (DocumentImpl::~DocumentImpl): Ditto.
 
31300
        (DocumentImpl::registerDisconnectedNodeWithEventListeners): Ditto.
 
31301
        (DocumentImpl::unregisterDisconnectedNodeWithEventListeners): Ditto.
 
31302
        (DocumentImpl::removeAllDisconnectedNodeEventListeners): Ditto.
 
31303
        (DocumentImpl::addImageMap): Ditto.
 
31304
        (DocumentImpl::removeImageMap): Ditto.
 
31305
        (DocumentImpl::getImageMap): Ditto.
 
31306
        (DocumentImpl::addMarker): Ditto.
 
31307
        (DocumentImpl::copyMarkers): Ditto.
 
31308
        (DocumentImpl::removeMarkers): Ditto.
 
31309
        (DocumentImpl::markersForNode): Ditto.
 
31310
        (DocumentImpl::shiftMarkers): Ditto.
 
31311
        (DocumentImpl::radioButtonChecked): Ditto.
 
31312
        (DocumentImpl::checkedRadioButtonForGroup): Ditto.
 
31313
        (DocumentImpl::removeRadioButtonGroup): Ditto.
 
31314
        * khtml/xml/DocumentImpl.h: Use HashSet and HashMap.
 
31315
        * khtml/xml/NodeImpl.cpp:
 
31316
        (WebCore::NodeImpl::registerNodeList): Use HashSet.
 
31317
        (WebCore::NodeImpl::unregisterNodeList): Ditto.
 
31318
        (WebCore::NodeImpl::notifyLocalNodeListsAttributeChanged): Ditto.
 
31319
        (WebCore::NodeImpl::notifyNodeListsAttributeChanged): Ditto.
 
31320
        (WebCore::NodeImpl::notifyLocalNodeListsChildrenChanged): Ditto.
 
31321
        (WebCore::NodeImpl::notifyNodeListsChildrenChanged): Ditto.
 
31322
        (WebCore::NodeImpl::getElementsByTagName): Moved here so we don't have
 
31323
        to include NodeListImpl.h in the header.
 
31324
        * khtml/xml/NodeImpl.h: Use HashSet. Reduced includes.
 
31325
        * khtml/xml/dom_elementimpl.cpp:
 
31326
        (WebCore::MappedAttributeKey): Added. Hash table key.
 
31327
        (WebCore::MappedAttributeKeyTraits): Added. Hash table key traits.
 
31328
        (WebCore::MappedAttributeHash): Added. Hash function.
 
31329
        (WebCore::StyledElementImpl::getMappedAttributeDecl): Use HashMap.
 
31330
        (WebCore::StyledElementImpl::setMappedAttributeDecl): Ditto.
 
31331
        (WebCore::StyledElementImpl::removeMappedAttributeDecl): Ditto.
 
31332
        (WebCore::MappedAttributeHash::hash): Added. Hash function.
 
31333
        * khtml/xml/dom_elementimpl.h: Use HashMap.
 
31334
 
 
31335
        * khtml/html/html_imageimpl.cpp:
 
31336
        (WebCore::HTMLMapElementImpl::parseMappedAttribute): Update m_name handling
 
31337
        to use AtomicString.
 
31338
        * khtml/html/html_imageimpl.h:
 
31339
        (WebCore::HTMLMapElementImpl::getName): Change to return const AtomicString&.
 
31340
 
 
31341
        * khtml/dom/dom_string.h: Added a default argument to substring, also
 
31342
        reduced includes and updated namespace.
 
31343
        * khtml/xml/dom_stringimpl.h: Ditto.
 
31344
 
 
31345
        * bridge/mac/WebCoreFrameBridge.mm: Switched to new WebCore namespace.
 
31346
        Updated includes for header changes.
 
31347
        * kcanvas/RenderForeignObject.cpp: Ditto.
 
31348
        * kcanvas/RenderForeignObject.h: Ditto.
 
31349
        * kcanvas/RenderSVGImage.h: Ditto.
 
31350
        * kcanvas/device/quartz/KCanvasResourcesQuartz.h: Ditto.
 
31351
        * khtml/css/css_ruleimpl.cpp: Ditto.
 
31352
        * khtml/css/css_valueimpl.h: Ditto.
 
31353
        * khtml/ecma/kjs_dom.h: Ditto.
 
31354
        * khtml/ecma/kjs_html.h: Ditto.
 
31355
        * khtml/editing/composite_edit_command.cpp: Ditto.
 
31356
        * khtml/editing/delete_selection_command.cpp: Ditto.
 
31357
        * khtml/html/html_tableimpl.cpp: Ditto.
 
31358
        * khtml/khtml_events.cpp: Ditto.
 
31359
        * khtml/rendering/RenderText.cpp: Ditto.
 
31360
        * khtml/rendering/render_block.cpp: Ditto.
 
31361
        * khtml/rendering/render_br.cpp: Ditto.
 
31362
        * khtml/rendering/render_inline.cpp: Ditto.
 
31363
        * khtml/rendering/render_object.cpp: Ditto.
 
31364
        * khtml/rendering/render_replaced.cpp: Ditto.
 
31365
        * khtml/xml/dom2_rangeimpl.cpp: Ditto.
 
31366
        * kwq/DOM.mm: Ditto.
 
31367
        * page/Frame.cpp: Ditto.
 
31368
 
 
31369
        * kcanvas/KCanvasResources.cpp: (KCanvasMarker::draw): Updated because a
 
31370
        constant moved into the WebCore namespace.
 
31371
        * kcanvas/RenderSVGText.cpp: (RenderSVGText::nodeAtPoint): Ditto.
 
31372
        * kcanvas/RenderSVGText.h: Ditto.
 
31373
        * kcanvas/device/quartz/KCanvasItemQuartz.h: Ditto.
 
31374
        * kcanvas/device/quartz/KCanvasItemQuartz.mm:
 
31375
        (KCanvasItemQuartz::paint): Ditto.
 
31376
        (KCanvasItemQuartz::nodeAtPoint): Ditto.
 
31377
        * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
 
31378
        (KCanvasContainerQuartz::paint): Ditto.
 
31379
 
 
31380
        * khtml/xbl/xbl_binding_manager.cpp: Removed include of qptrddict.h.
 
31381
        * khtml/xbl/xbl_binding_manager.h: Removed include of qptrddict.h.
 
31382
        * khtml/xbl/xbl_docimpl.h: Removed include of qptrddict.h.
 
31383
 
 
31384
        * khtml/xml/dom_xmlimpl.cpp: Changed to use RefPtr for strings.
 
31385
        * khtml/xml/dom_xmlimpl.h: Ditto.
 
31386
 
 
31387
        * ksvg2/css/SVGRenderStyle.h: Reduced includes a bit and added newly-needed ones.
 
31388
        * ksvg2/misc/KSVGTimeScheduler.cpp: Ditto.
 
31389
        * ksvg2/svg/SVGPointImpl.cpp: Ditto.
 
31390
 
 
31391
        * kwq/KWQNamespace.h: Removed QColor, QCursor, and redundant declaration of QRgb
 
31392
        (now in qcolor.h). Also converted tabs to spaces.
 
31393
 
 
31394
        * kwq/KWQPainter.h: Added newly-needed include.
 
31395
 
 
31396
        * kwq/KWQPtrVector.h: Added append function.
 
31397
        * kwq/KWQVectorImpl.cpp: (KWQVectorImpl::append): Added.
 
31398
        * kwq/KWQVectorImpl.h: Added append.
 
31399
 
 
31400
        * kwq/KWQRenderTreeDebug.cpp: Updated to no longer use transparentColor constant.
 
31401
 
 
31402
        * kwq/KWQWMatrix.cpp: Changed name to QMatrix to allow forward declarations.
 
31403
        * kwq/KWQWMatrix.h: Ditto.
 
31404
 
 
31405
        * loader/Cache.cpp: (khtml::Cache::clear): Use deleteAllValues for clearer code.
 
31406
 
 
31407
        * loader/CachedCSSStyleSheet.cpp: Reduced includes a lot, moving them from .h to .cpp.
 
31408
        * loader/CachedCSSStyleSheet.h: Ditto.
 
31409
        * loader/CachedImage.cpp: Ditto.
 
31410
        * loader/CachedImage.h: Ditto.
 
31411
        * loader/CachedImageCallback.cpp: Ditto.
 
31412
        * loader/CachedObject.cpp: Ditto.
 
31413
        * loader/CachedObject.h: Ditto.
 
31414
        * loader/CachedObjectClient.h: Ditto.
 
31415
        * loader/CachedObjectClientWalker.cpp: Ditto.
 
31416
        * loader/CachedObjectClientWalker.h: Ditto.
 
31417
        * loader/CachedScript.cpp: Ditto.
 
31418
        * loader/CachedScript.h: Ditto.
 
31419
        * loader/CachedXSLStyleSheet.cpp: Ditto.
 
31420
 
 
31421
        * loader/loader.cpp:
 
31422
        (WebCore::Loader::Loader): Changed to use HashMap.
 
31423
        (WebCore::Loader::~Loader): Ditto.
 
31424
        (WebCore::Loader::servePendingRequests): Ditto.
 
31425
        (WebCore::Loader::slotFinished): Ditto.
 
31426
        (WebCore::Loader::slotReceivedResponse): Ditto.
 
31427
        (WebCore::Loader::slotData): Ditto.
 
31428
        (WebCore::Loader::numRequests): Ditto.
 
31429
        (WebCore::Loader::cancelRequests): Ditto.
 
31430
        (WebCore::Loader::jobForRequest): Ditto.
 
31431
        * loader/loader.h: Ditto.
 
31432
 
 
31433
2006-01-16  Darin Adler  <darin@apple.com>
 
31434
 
 
31435
        * WebCore.xcodeproj/project.pbxproj: Move config.h in project file to match
 
31436
        where it is in the source tree.
 
31437
 
 
31438
2006-01-15  Timothy Hatcher  <timothy@apple.com>
 
31439
 
 
31440
        Reviewed by Darin.
 
31441
 
 
31442
        Support for the new DOM Inspector.
 
31443
 
 
31444
        * khtml/ecma/kjs_dom.cpp: exposes scrollIntoViewIfNeeded to JS
 
31445
        * khtml/ecma/kjs_dom.h:
 
31446
        * khtml/rendering/RenderText.cpp:
 
31447
        (RenderText::lineBoxRects): returns text run rects
 
31448
        * khtml/rendering/RenderText.h:
 
31449
        * khtml/rendering/render_container.cpp:
 
31450
        (RenderContainer::lineBoxRects): returns all child line box rects
 
31451
        * khtml/rendering/render_container.h:
 
31452
        * khtml/rendering/render_object.cpp:
 
31453
        (RenderObject::lineBoxRects): returns an empty list
 
31454
        * khtml/rendering/render_object.h:
 
31455
        * khtml/xml/dom_elementimpl.cpp:
 
31456
        (ElementImpl::scrollIntoViewIfNeeded): scrolls only if needed, bool decides to center to align to nearest edge
 
31457
        * khtml/xml/dom_elementimpl.h: Ditto
 
31458
        * kwq/DOM.mm:
 
31459
        (-[DOMNode boundingBox]): returns the bounding box for a node
 
31460
        (-[DOMNode lineBoxRects]): returns text runs for a node
 
31461
        * kwq/DOMCore.h: added missing @protocol DOMEventListener and @class DOMEvent
 
31462
        * kwq/DOMExtensions.h: removes methods that haven't been API reviewed
 
31463
        * kwq/DOMPrivate.h: new pending public API added for the Inspector
 
31464
 
 
31465
2006-01-15  Darin Adler  <darin@apple.com>
 
31466
 
 
31467
        Reviewed by Eric.
 
31468
 
 
31469
        - changed WebCore namespace change to work on Win32 as well as Mac OS X
 
31470
 
 
31471
        * WebCorePrefix.h: Removed things needed cross-platform.
 
31472
 
 
31473
        * config.h: Moved from khtml subdirectory. Added defines from
 
31474
        WebCorePrefix.h, and added a define that makes KSVG a synonym for WebCore.
 
31475
        * khtml/config.h: Removed.
 
31476
 
 
31477
        * khtml/css/css_grammar.y: Changed SVG functions to use function name rather
 
31478
        than namespace to avoid collision with the XML and HTML DOM. Changes tabs to spaces.
 
31479
        * khtml/css/css_valueimpl.cpp:
 
31480
        (WebCore::propertyID): Add SVG properties ot the ones understood here.
 
31481
        This allows us to set SVG properties from JavaScript.
 
31482
 
 
31483
        * ksvg2/scripts/cssmakeprops: Put functions inside the namespace to avoid compiler
 
31484
        warning, and renamed functions to include CSS and SVG.
 
31485
        * ksvg2/scripts/cssmakevalues: Ditto.
 
31486
 
 
31487
        * ksvg2/svg/SVGStyledElementImpl.cpp: (SVGStyledElementImpl::parseMappedAttribute):
 
31488
        Use property ID function by its new name.
 
31489
 
 
31490
        * ksvg2/ksvg.h: Renamed ExceptionCode to SVGExceptionCode.
 
31491
 
 
31492
        * khtml/ecma/XSLTProcessor.cpp: Moved "config.h" header up above the ifdef so that
 
31493
        the ifdef works.
 
31494
        * khtml/xbl/xbl_binding.cpp: Ditto.
 
31495
        * khtml/xbl/xbl_binding_manager.cpp: Ditto.
 
31496
        * khtml/xbl/xbl_docimpl.cpp: Ditto.
 
31497
        * khtml/xbl/xbl_protobinding.cpp: Ditto.
 
31498
        * khtml/xbl/xbl_tokenizer.cpp: Ditto.
 
31499
        * khtml/xsl/xsl_stylesheetimpl.cpp: Ditto.
 
31500
        * khtml/xsl/xslt_processorimpl.cpp: Ditto.
 
31501
        * loader/CachedXBLDocument.cpp: Ditto.
 
31502
 
 
31503
        * ksvg2/svg/SVGFELightElementImpl.h: Removed include of "config.h". That's supposed
 
31504
        to only be included by code files, not headers.
 
31505
 
 
31506
        * ksvg2/svg/SVGFEDistantLightElementImpl.cpp: Added missing include of "config.h".
 
31507
        Did a few other tweaks to the file.
 
31508
        * ksvg2/svg/SVGFEPointLightElementImpl.cpp: Ditto.
 
31509
        * ksvg2/svg/SVGFESpotLightElementImpl.cpp: Ditto.
 
31510
 
 
31511
2006-01-15  Eric Seidel  <eseidel@apple.com>
 
31512
 
 
31513
        Rubber-stamped by darin.
 
31514
 
 
31515
        Updated files w/ missing copyrights from Oliver.
 
31516
 
 
31517
        * kcanvas/device/quartz/filters/WKArithmeticFilter.cikernel:
 
31518
        * kcanvas/device/quartz/filters/WKDistantLightFilter.cikernel:
 
31519
        * kcanvas/device/quartz/filters/WKPointLightFilter.cikernel:
 
31520
        * kcanvas/device/quartz/filters/WKSpotLightFilter.cikernel:
 
31521
        * ksvg2/svg/SVGAnimatedColorImpl.cpp:
 
31522
        * ksvg2/svg/SVGAnimatedColorImpl.h:
 
31523
        * ksvg2/svg/SVGFEDiffuseLightingElementImpl.cpp:
 
31524
        * ksvg2/svg/SVGFEDiffuseLightingElementImpl.h:
 
31525
        * ksvg2/svg/SVGFEDistantLightElementImpl.cpp:
 
31526
        * ksvg2/svg/SVGFEDistantLightElementImpl.h:
 
31527
        * ksvg2/svg/SVGFELightElementImpl.cpp:
 
31528
        * ksvg2/svg/SVGFELightElementImpl.h:
 
31529
        * ksvg2/svg/SVGFEPointLightElementImpl.cpp:
 
31530
        * ksvg2/svg/SVGFEPointLightElementImpl.h:
 
31531
        * ksvg2/svg/SVGFESpecularLightingElementImpl.cpp:
 
31532
        * ksvg2/svg/SVGFESpecularLightingElementImpl.h:
 
31533
        * ksvg2/svg/SVGFESpotLightElementImpl.cpp:
 
31534
        * ksvg2/svg/SVGFESpotLightElementImpl.h:
 
31535
 
 
31536
2006-01-15  Duncan Wilcox  <duncan@mclink.it>
 
31537
 
 
31538
        Reviewed and tweaked a bit by Darin.
 
31539
 
 
31540
        Fix for <http://bugs.webkit.org/show_bug.cgi?id=6523>
 
31541
        "Extract data from SelectionController"
 
31542
 
 
31543
        This patch refactors the data portions of SelectionController into its
 
31544
        own class, "Selection".
 
31545
 
 
31546
        The extracted data are the base/extent/start/end positions and cursor
 
31547
        affinity. Also a couple cached values generated by validation are kept around
 
31548
        in the new class.
 
31549
 
 
31550
        This patch does away with all the different affinities
 
31551
        (start/end/base/extent) that were never implemented properly, since affinity
 
31552
        only makes sense when the selection is a caret (as per discussion with mjs and
 
31553
        darin on #webkit).
 
31554
 
 
31555
        No test cases added because this is a refactoring.
 
31556
 
 
31557
        * WebCore.xcodeproj/project.pbxproj:
 
31558
        * bridge/mac/MacFrame.mm:
 
31559
        (MacFrame::findString):
 
31560
        (MacFrame::advanceToNextMisspelling):
 
31561
        (MacFrame::baseWritingDirectionForSelectionStart):
 
31562
        (MacFrame::respondToChangedSelection):
 
31563
        * bridge/mac/WebCoreFrameBridge.mm:
 
31564
        (-[WebCoreFrameBridge selectionState]):
 
31565
        (-[WebCoreFrameBridge selectNSRange:]):
 
31566
        (-[WebCoreFrameBridge selectionAffinity]):
 
31567
        (-[WebCoreFrameBridge setMarkDOMRange:]):
 
31568
        (-[WebCoreFrameBridge ensureSelectionVisible]):
 
31569
        (-[WebCoreFrameBridge rangeOfCharactersAroundCaret]):
 
31570
        * khtml/editing/Selection.cpp: Added.
 
31571
        (khtml::Selection::Selection):
 
31572
        (khtml::Selection::clear):
 
31573
        (khtml::Selection::toRange):
 
31574
        (khtml::Selection::validate):
 
31575
        (khtml::Selection::adjustForEditableContent):
 
31576
        (khtml::Selection::debugPosition):
 
31577
        * khtml/editing/Selection.h: Added.
 
31578
        (khtml::Selection::):
 
31579
        (khtml::Selection::state):
 
31580
        (khtml::Selection::setAffinity):
 
31581
        (khtml::Selection::affinity):
 
31582
        (khtml::Selection::setBase):
 
31583
        (khtml::Selection::setExtent):
 
31584
        (khtml::Selection::setStart):
 
31585
        (khtml::Selection::setEnd):
 
31586
        (khtml::Selection::base):
 
31587
        (khtml::Selection::extent):
 
31588
        (khtml::Selection::start):
 
31589
        (khtml::Selection::end):
 
31590
        (khtml::Selection::isNone):
 
31591
        (khtml::Selection::isCaret):
 
31592
        (khtml::Selection::isRange):
 
31593
        (khtml::Selection::isCaretOrRange):
 
31594
        (khtml::Selection::isBaseFirst):
 
31595
        (khtml::operator==):
 
31596
        (khtml::operator!=):
 
31597
        * khtml/editing/SelectionController.cpp:
 
31598
        (khtml::SelectionController::SelectionController):
 
31599
        (khtml::SelectionController::operator=):
 
31600
        (khtml::SelectionController::moveTo):
 
31601
        (khtml::SelectionController::setModifyBias):
 
31602
        (khtml::SelectionController::modifyExtendingRightForward):
 
31603
        (khtml::SelectionController::modifyMovingRightForward):
 
31604
        (khtml::SelectionController::modifyExtendingLeftBackward):
 
31605
        (khtml::SelectionController::modifyMovingLeftBackward):
 
31606
        (khtml::SelectionController::modify):
 
31607
        (khtml::SelectionController::expandUsingGranularity):
 
31608
        (khtml::SelectionController::xPosForVerticalArrowNavigation):
 
31609
        (khtml::SelectionController::clear):
 
31610
        (khtml::SelectionController::setBase):
 
31611
        (khtml::SelectionController::setExtent):
 
31612
        (khtml::SelectionController::toString):
 
31613
        (khtml::SelectionController::getRangeAt):
 
31614
        (khtml::SelectionController::frame):
 
31615
        (khtml::SelectionController::collapseToEnd):
 
31616
        (khtml::SelectionController::collapseToStart):
 
31617
        (khtml::SelectionController::layout):
 
31618
        (khtml::SelectionController::caretRect):
 
31619
        (khtml::SelectionController::needsCaretRepaint):
 
31620
        (khtml::SelectionController::paintCaret):
 
31621
        (khtml::SelectionController::debugRenderer):
 
31622
        (khtml::SelectionController::formatForDebugger):
 
31623
        (khtml::SelectionController::showTree):
 
31624
        * khtml/editing/SelectionController.h:
 
31625
        (khtml::SelectionController::state):
 
31626
        (khtml::SelectionController::affinity):
 
31627
        (khtml::SelectionController::base):
 
31628
        (khtml::SelectionController::extent):
 
31629
        (khtml::SelectionController::start):
 
31630
        (khtml::SelectionController::end):
 
31631
        (khtml::SelectionController::isNone):
 
31632
        (khtml::SelectionController::isCaret):
 
31633
        (khtml::SelectionController::isRange):
 
31634
        (khtml::SelectionController::isCaretOrRange):
 
31635
        (khtml::SelectionController::toRange):
 
31636
        (khtml::SelectionController::baseNode):
 
31637
        (khtml::SelectionController::extentNode):
 
31638
        (khtml::SelectionController::baseOffset):
 
31639
        (khtml::SelectionController::extentOffset):
 
31640
        (khtml::SelectionController::anchorNode):
 
31641
        (khtml::SelectionController::anchorOffset):
 
31642
        (khtml::SelectionController::focusNode):
 
31643
        (khtml::SelectionController::focusOffset):
 
31644
        (khtml::operator==):
 
31645
        * khtml/editing/apply_style_command.cpp:
 
31646
        (khtml::ApplyStyleCommand::updateStartEnd):
 
31647
        * khtml/editing/break_blockquote_command.cpp:
 
31648
        (khtml::BreakBlockquoteCommand::doApply):
 
31649
        * khtml/editing/delete_selection_command.cpp:
 
31650
        (khtml::DeleteSelectionCommand::initializePositionData):
 
31651
        (khtml::DeleteSelectionCommand::handleGeneralDelete):
 
31652
        (khtml::DeleteSelectionCommand::doApply):
 
31653
        * khtml/editing/insert_line_break_command.cpp:
 
31654
        (khtml::InsertLineBreakCommand::doApply):
 
31655
        * khtml/editing/insert_paragraph_separator_command.cpp:
 
31656
        (khtml::InsertParagraphSeparatorCommand::doApply):
 
31657
        * khtml/editing/insert_text_command.cpp:
 
31658
        (khtml::InsertTextCommand::input):
 
31659
        * khtml/editing/move_selection_command.cpp:
 
31660
        (khtml::MoveSelectionCommand::doApply):
 
31661
        * khtml/editing/replace_selection_command.cpp:
 
31662
        (khtml::ReplaceSelectionCommand::doApply):
 
31663
        (khtml::ReplaceSelectionCommand::completeHTMLReplacement):
 
31664
        * khtml/editing/typing_command.cpp:
 
31665
        (khtml::TypingCommand::deleteKeyPressed):
 
31666
        (khtml::TypingCommand::forwardDeleteKeyPressed):
 
31667
        (khtml::TypingCommand::markMisspellingsAfterTyping):
 
31668
        * khtml/xml/DocumentImpl.cpp:
 
31669
        (DocumentImpl::updateSelection):
 
31670
        * kwq/KWQAccObject.mm:
 
31671
        (-[KWQAccObject accessibilityAttributeValue:]):
 
31672
        (-[KWQAccObject doAXTextMarkerRangeForLine:]):
 
31673
        * kwq/KWQRenderTreeDebug.cpp:
 
31674
        (writeSelection):
 
31675
        * page/Frame.cpp:
 
31676
        (Frame::selectContentsOfNode):
 
31677
        (Frame::shouldChangeSelection):
 
31678
        (Frame::computeAndSetTypingStyle):
 
31679
        (Frame::applyStyle):
 
31680
        (Frame::applyParagraphStyle):
 
31681
        (Frame::selectFrameElementInParentIfFullySelected):
 
31682
        (Frame::revealSelection):
 
31683
        (Frame::centerSelectionInVisibleArea):
 
31684
        (Frame::styleForSelectionStart):
 
31685
        
 
31686
        * <a few other files, including editing ones>: Added includes since Selection.h and
 
31687
        SelectionController.h now include fewer things.
 
31688
 
 
31689
2006-01-15  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
31690
 
 
31691
        Test: fast/text/whitespace/pre-wrap-overflow-selection.html
 
31692
        
 
31693
        Reviewed by Darin.
 
31694
 
 
31695
        - fix http://bugs.webkit.org/show_bug.cgi?id=5619
 
31696
          CSS2: pre-wrap has overflow/selection problems
 
31697
 
 
31698
        * khtml/rendering/InlineTextBox.cpp:
 
31699
        (khtml::InlineTextBox::selectionRect): Clip selection rect to the text box
 
31700
        (khtml::InlineTextBox::paintSelection): Clip selection painting to the text box.
 
31701
        * khtml/rendering/bidi.cpp: (khtml::RenderBlock::computeHorizontalPositionsForLine):
 
31702
        Remove code that re-added border width, since it is already included in availableWidth.
 
31703
 
 
31704
2006-01-15  Darin Adler  <darin@apple.com>
 
31705
 
 
31706
        Reviewed by Anders.
 
31707
 
 
31708
        - fix regression in duplicate ID layout test
 
31709
 
 
31710
        * khtml/xml/DocumentImpl.cpp:
 
31711
        (DocumentImpl::getElementById): Change to take AtomicString, so we can use
 
31712
        the string pointer as a hash key and not worry about ref'ing the pointer or
 
31713
        about object lifetime since the string will be stored for the lifetime of the
 
31714
        ID attribute. Also update for the counted set formerly named m_idCount to use
 
31715
        its new name, m_duplicateIds.
 
31716
        (DocumentImpl::addElementById): Ditto.
 
31717
        (DocumentImpl::removeElementById): Ditto.
 
31718
        (DocumentImpl::recalcStyleSelector): Pass a DOMStringImpl* (see below).
 
31719
        * khtml/xml/DocumentImpl.h: Change functions to take AtomicString.
 
31720
 
 
31721
        * kcanvas/KCanvasFilters.cpp: (getFilterById): Use AtomicString.
 
31722
        * kcanvas/KCanvasFilters.h: Ditto.
 
31723
        * kcanvas/KCanvasResources.cpp:
 
31724
        (getResourceById): Ditto.
 
31725
        (getMarkerById): Ditto.
 
31726
        (getClipperById): Ditto.
 
31727
        (getMaskerById): Ditto.
 
31728
        (getPaintServerById): Ditto.
 
31729
        * kcanvas/KCanvasResources.h: Ditto.
 
31730
        * khtml/ecma/kjs_window.cpp: (KJS::Window::getOwnPropertySlot): Ditto.
 
31731
        * khtml/html/HTMLLabelElementImpl.cpp:
 
31732
        (DOM::HTMLLabelElementImpl::formElement): Ditto.
 
31733
        * khtml/xml/NodeListImpl.cpp: (DOM::NodeListImpl::itemById): Ditto.
 
31734
        * khtml/xml/NodeListImpl.h: Ditto. Also removed unnecessary "virtual".
 
31735
 
 
31736
        * khtml/ecma/kjs_css.cpp:
 
31737
        (KJS::DOMStyleSheetList::nameGetter): Pass a DOMStringImpl*, which gets
 
31738
        converted to an AtomicString implicitly, rather than a DOMString, which
 
31739
        does not. (But that's a crazy rule -- we should change this around long term.)
 
31740
        (KJS::DOMStyleSheetList::getOwnPropertySlot): Ditto.
 
31741
        * khtml/ecma/kjs_dom.cpp:
 
31742
        (KJS::DOMNodeList::nameGetter): Ditto.
 
31743
        (KJS::DOMNodeList::getOwnPropertySlot): Ditto.
 
31744
        (KJS::DOMDocumentProtoFunc::callAsFunction): Ditto.
 
31745
 
 
31746
        - Merge khtml, DOM, and KDOM into one big namespace, WebCore.
 
31747
 
 
31748
        * WebCorePrefix.h: Use defined to map the old namespace names to WebCore.
 
31749
        Now that this is done in the prefix, we can start actually calling it by
 
31750
        that name, phase out the old names, then remove the defines.
 
31751
 
 
31752
        - other changes
 
31753
 
 
31754
        * khtml/xml/DocumentTypeImpl.cpp: Converted tabs to spaces.
 
31755
        * khtml/xml/dom2_eventsimpl.cpp: Ditto.
 
31756
 
 
31757
2006-01-15  Alexander Kellett  <lypanov@kde.org>
 
31758
 
 
31759
        Reviewed and landed by Anders.
 
31760
 
 
31761
        http://bugs.webkit.org/show_bug.cgi?id=6553
 
31762
        Remove KCanvasCommonArgs and pass around RenderPath objects instead.
 
31763
 
 
31764
        * WebCore.xcodeproj/project.pbxproj:
 
31765
        * kcanvas/KCanvasCreator.h:
 
31766
        * kcanvas/KCanvasItem.cpp:
 
31767
        * kcanvas/KCanvasItem.h:
 
31768
        * kcanvas/KCanvasTypes.h: Removed.
 
31769
        * kcanvas/device/KRenderingDevice.cpp:
 
31770
        * kcanvas/device/KRenderingDevice.h:
 
31771
        * kcanvas/device/KRenderingFillPainter.h:
 
31772
        * kcanvas/device/KRenderingPaintServer.h:
 
31773
        * kcanvas/device/KRenderingStrokePainter.h:
 
31774
        * kcanvas/device/quartz/KCanvasItemQuartz.mm:
 
31775
        (KCanvasItemQuartz::paint):
 
31776
        * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
 
31777
        * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
 
31778
        (drawShadingWithStyle):
 
31779
        (KRenderingPaintServerLinearGradientQuartz::draw):
 
31780
        (KRenderingPaintServerRadialGradientQuartz::draw):
 
31781
        * kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
 
31782
        * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
 
31783
        (KRenderingPaintServerSolidQuartz::draw):
 
31784
        (KRenderingPaintServerPatternQuartz::draw):
 
31785
        (KRenderingPaintServerImageQuartz::draw):
 
31786
        * ksvg2/misc/KCanvasRenderingStyle.cpp:
 
31787
        * ksvg2/svg/SVGPatternElementImpl.h:
 
31788
 
 
31789
2006-01-15  Darin Adler  <darin@apple.com>
 
31790
 
 
31791
        Reviewed by Hyatt.
 
31792
 
 
31793
        - fix http://bugs.webkit.org/show_bug.cgi?id=6528
 
31794
          remove all use of QDict from WebCore
 
31795
 
 
31796
        I ran performance tests and the change results in a slight improvement.
 
31797
 
 
31798
        * bridge/mac/MacFrame.h: Removed include of KWQDict.h. Changed didTellBridgeAboutLoad
 
31799
        and haveToldBridgeAboutLoad functions to take DOMString instead of QString. Changed
 
31800
        urlsBridgeKnowsAbout from a QDict to a HashMap.
 
31801
        * bridge/mac/MacFrame.mm:
 
31802
        (MacFrame::didTellBridgeAboutLoad): Updated to use QDict and DOMString.
 
31803
        (MacFrame::haveToldBridgeAboutLoad): Ditto.
 
31804
 
 
31805
        * khtml/editing/jsediting.h: Removed include of qdict.h.
 
31806
 
 
31807
        * khtml/rendering/render_frames.cpp: Removed include of qdict.h. Put file inside the
 
31808
        khtml namespace instead of just using the namespace. Changed tabs to spaces.
 
31809
        (khtml::RenderPartObject::updateWidget): Changed the local variable uniqueParamNames
 
31810
        to be a HashSet instead of a QDict.
 
31811
 
 
31812
        * khtml/xml/DocumentImpl.h: Removed include of qdict.h, changed m_elementsById, m_idCount,
 
31813
        and m_elementsByAccessKey to use HashMap and HashCountedSet instead of QDict.
 
31814
        * khtml/xml/DocumentImpl.cpp: Changed tabs to spaces.
 
31815
        (DocumentImpl::getElementById): Updated to use HashMap for m_elementsById and HashCountedSet
 
31816
        for m_idCount.
 
31817
        (DocumentImpl::addElementById): Ditto. Remove code to clear m_accessKeyDictValid,
 
31818
        since setDocumentChanged already takes care of that.
 
31819
        (DocumentImpl::removeElementById): Ditto.
 
31820
        (DocumentImpl::getElementByAccessKey): Updated to use HashMap for m_elementsByAccessKey.
 
31821
        (DocumentImpl::setDocumentChanged): Rearranged to do a couple fewer branches. Clear out
 
31822
        the m_elementsByAccessKey map when clearing m_accessKeyMapValid to avoid keeping stale
 
31823
        pointers around.
 
31824
 
 
31825
        * ksvg2/svg/SVGDocumentImpl.cpp: Removed include of q3dict.h.
 
31826
 
 
31827
        * WebCore.vcproj/WebCore/WebCore.vcproj: Removed obsolete QDict sources.
 
31828
        * WebCore.xcodeproj/project.pbxproj: Ditto.
 
31829
 
 
31830
        * ForwardingHeaders/q3dict.h: Removed.
 
31831
        * ForwardingHeaders/qdict.h: Removed.
 
31832
        * kwq/KWQDict.h: Removed.
 
31833
        * kwq/KWQDictImpl.cpp: Removed.
 
31834
        * kwq/KWQDictImpl.h: Removed.
 
31835
 
 
31836
        * WebCore+SVG/SVGNamesWrapper.cpp: Touched this file just so I could build again.
 
31837
 
 
31838
        * kwq/KWQKURL.h: Removed unused canonicalURL, _path, _user, _pass, and _host functions.
 
31839
        * kwq/KWQKURL.mm: Changed tabs to spaces, removed unused functions, replaced NULL with 0.
 
31840
 
 
31841
        * kwq/KWQLoader.mm: Changed tabs to spaces.
 
31842
        (KWQServeRequest): Removed QString conversion from call to didTellBridgeAboutLoad.
 
31843
        (KWQServeSynchronousRequest): Ditto.
 
31844
        (KWQCheckCacheObjectStatus): Ditto. Same for haveToldBridgeAboutLoad.
 
31845
 
 
31846
        * loader/Cache.h: Removed include of qdict.h. Changed declaration of the LRUList struct
 
31847
        to just be a forward declaration. Changed tabs to spaces. Removed the static data member
 
31848
        called "cache". Added a static member function called get. Renamed removeCacheEntry to remove.
 
31849
        * loader/Cache.cpp: Put file inside the khtml namespace instead of just using the
 
31850
        namespace. Changed tabs to spaces. Changed the main cache itself to a HashMap and
 
31851
        made it a static variable local to this file instead of a static data member of Cache
 
31852
        to hide its type from the header. Also made the LRUList type private to this file.
 
31853
        (khtml::Cache::init): Create a HashMap instead of a QDict.
 
31854
        (khtml::Cache::clear): To replace the use of setAutoDelete, write a loop to delete all the
 
31855
        items in the cache map.
 
31856
        (khtml::Cache::requestImage): Change code to use HashMap functions instead of QDict.
 
31857
        (khtml::Cache::requestStyleSheet): Ditto.
 
31858
        (khtml::Cache::preloadStyleSheet): Ditto.
 
31859
        (khtml::Cache::requestScript): Ditto.
 
31860
        (khtml::Cache::preloadScript): Ditto.
 
31861
        (khtml::Cache::requestXSLStyleSheet): Ditto.
 
31862
        (khtml::Cache::requestXBLDocument): Ditto.
 
31863
        (khtml::Cache::removeCacheEntry): Ditto.
 
31864
        (khtml::Cache::FastLog2): Fixed this for 64-bit compiles.
 
31865
        (khtml::Cache::getStatistics): Ditto.
 
31866
        (khtml::Cache::flushAll): Ditto.
 
31867
        (khtml::Cache::get): Added. Function used by the loader.
 
31868
 
 
31869
        * loader/CachedObject.h: Removed include of qdict.h.
 
31870
 
 
31871
        * loader/DocLoader.h: Removed include of qdict.h.
 
31872
        * loader/DocLoader.cpp: (khtml::DocLoader::needReload): Changed to use new get function of
 
31873
        Cache instead of getting at the map directly. Also changed call to removeCacheEntry
 
31874
        to remove because it was renamed.
 
31875
 
 
31876
        * loader/CachedImage.cpp: (khtml::CachedImage::data): Changed call to removeCacheEntry
 
31877
        to remove because it was renamed.
 
31878
        * loader/CachedImageCallback.cpp: (khtml::CachedImageCallback::handleError): Ditto.
 
31879
        * loader/loader.cpp:
 
31880
        (khtml::Loader::slotFinished): Ditto.
 
31881
        (khtml::Loader::cancelRequests): Ditto.
 
31882
 
 
31883
2006-01-15  Alexander Kellett  <lypanov@kde.org>
 
31884
 
 
31885
        Reviewed by eseidel.  Landed by eseidel.
 
31886
 
 
31887
        <mask> inside <defs> crashes Safari.
 
31888
        http://bugs.webkit.org/show_bug.cgi?id=6548
 
31889
        
 
31890
        Test: svg/custom/mask-inside-defs.svg
 
31891
 
 
31892
        * ksvg2/svg/SVGMaskElementImpl.cpp:
 
31893
        (KSVG::SVGMaskElementImpl::drawMaskerContent):
 
31894
 
 
31895
2006-01-15  Eric Seidel  <eseidel@apple.com>
 
31896
 
 
31897
        Reviewed by mjs.
 
31898
 
 
31899
        Add basic <tspan> support using RenderInline.
 
31900
        http://bugs.webkit.org/show_bug.cgi?id=6428
 
31901
        Also fix <text transform=""> while we're at it.
 
31902
        http://bugs.webkit.org/show_bug.cgi?id=6552
 
31903
        
 
31904
        Covered by several existing tests.
 
31905
 
 
31906
        * ksvg2/svg/SVGGradientElementImpl.cpp:
 
31907
        (SVGGradientElementImpl::parseMappedAttribute): code cleanup
 
31908
        * ksvg2/svg/SVGPatternElementImpl.cpp:
 
31909
        (SVGPatternElementImpl::parseMappedAttribute): code cleanup
 
31910
        * ksvg2/svg/SVGStyledTransformableElementImpl.cpp:
 
31911
        (SVGStyledTransformableElementImpl::parseMappedAttribute): cleanup
 
31912
        * ksvg2/svg/SVGTSpanElementImpl.cpp:
 
31913
        (SVGTSpanElementImpl::childShouldCreateRenderer): added.
 
31914
        (SVGTSpanElementImpl::createRenderer): added.
 
31915
        * ksvg2/svg/SVGTSpanElementImpl.h:
 
31916
        (KSVG::SVGTSpanElementImpl::rendererIsNeeded): added.
 
31917
        * ksvg2/svg/SVGTextElementImpl.cpp:
 
31918
        (SVGTextElementImpl::transform): added.
 
31919
        (SVGTextElementImpl::localMatrix): added.
 
31920
        (SVGTextElementImpl::parseMappedAttribute): support transform.
 
31921
        (SVGTextElementImpl::updateLocalTransform): added.
 
31922
        (SVGTextElementImpl::attach): added.
 
31923
        (SVGTextElementImpl::childShouldCreateRenderer): allow tspan.
 
31924
        * ksvg2/svg/SVGTextElementImpl.h:
 
31925
        * ksvg2/svg/SVGTransformableImpl.cpp:
 
31926
        (SVGTransformableImpl::parseTransformAttribute): code cleanup.
 
31927
        * ksvg2/svg/SVGTransformableImpl.h:
 
31928
 
 
31929
2006-01-14  David Hyatt  <hyatt@apple.com>
 
31930
 
 
31931
        Move arena.cpp/.h out of khtml/misc and into platform/Arena.cpp/h.  Also removed another unused
 
31932
        header, khtmldata.h.
 
31933
 
 
31934
        * WebCore.xcodeproj/project.pbxproj:
 
31935
        * khtml/misc/arena.cpp: Removed.
 
31936
        * khtml/misc/arena.h: Removed.
 
31937
        * khtml/misc/khtmldata.h: Removed.
 
31938
        * khtml/rendering/render_arena.h:
 
31939
        * platform/Arena.cpp: Added.
 
31940
        * platform/Arena.h: Added.
 
31941
 
 
31942
2006-01-14  David Hyatt  <hyatt@apple.com>
 
31943
 
 
31944
        Rename TokenizerString to SegmentedString and place it in the platform directory.
 
31945
 
 
31946
        * WebCore.xcodeproj/project.pbxproj:
 
31947
        * khtml/html/htmltokenizer.cpp:
 
31948
        (khtml::HTMLTokenizer::processListing):
 
31949
        (khtml::HTMLTokenizer::parseSpecial):
 
31950
        (khtml::HTMLTokenizer::scriptHandler):
 
31951
        (khtml::HTMLTokenizer::scriptExecution):
 
31952
        (khtml::HTMLTokenizer::parseComment):
 
31953
        (khtml::HTMLTokenizer::parseServer):
 
31954
        (khtml::HTMLTokenizer::parseProcessingInstruction):
 
31955
        (khtml::HTMLTokenizer::parseText):
 
31956
        (khtml::HTMLTokenizer::parseEntity):
 
31957
        (khtml::HTMLTokenizer::parseTag):
 
31958
        (khtml::HTMLTokenizer::write):
 
31959
        (khtml::HTMLTokenizer::timerEvent):
 
31960
        (khtml::HTMLTokenizer::notifyFinished):
 
31961
        (khtml::HTMLTokenizer::setSrc):
 
31962
        * khtml/html/htmltokenizer.h:
 
31963
        * khtml/misc/stringit.cpp: Removed.
 
31964
        * khtml/misc/stringit.h: Removed.
 
31965
        * khtml/xml/xml_tokenizer.cpp:
 
31966
        (khtml::XMLTokenizer::write):
 
31967
        * khtml/xml/xml_tokenizer.h:
 
31968
        * platform/SegmentedString.cpp: Added.
 
31969
        (WebCore::SegmentedString::length):
 
31970
        (WebCore::SegmentedString::clear):
 
31971
        (WebCore::SegmentedString::append):
 
31972
        (WebCore::SegmentedString::prepend):
 
31973
        (WebCore::SegmentedString::advanceSubstring):
 
31974
        (WebCore::SegmentedString::toString):
 
31975
        * platform/SegmentedString.h: Added.
 
31976
        (WebCore::SegmentedSubstring::SegmentedSubstring):
 
31977
        (WebCore::SegmentedString::SegmentedString):
 
31978
 
 
31979
2006-01-14  Maciej Stachowiak  <mjs@apple.com>
 
31980
 
 
31981
        Reviewed by Eric.
 
31982
 
 
31983
        - added bridging infrastructure for Page class
 
31984
        
 
31985
        The Page class itself is coming very soon.
 
31986
 
 
31987
        * WebCore.exp: Export WebCorePageBridge.
 
31988
        * WebCore.xcodeproj/project.pbxproj: Add new files.
 
31989
        * bridge/mac/WebCorePageBridge.h: Added.
 
31990
        * bridge/mac/WebCorePageBridge.mm: Added.
 
31991
        (-[WebCorePageBridge initWithMainFrame:]): Added new class, obvious
 
31992
        (-[WebCorePageBridge dealloc]): ditto
 
31993
        (-[WebCorePageBridge mainFrame]): ditto
 
31994
        * bridge/mac/WebCoreFrameBridge.mm:
 
31995
        (-[WebCoreFrameBridge init]): Fixed style a bit.
 
31996
 
 
31997
2006-01-14  David Hyatt  <hyatt@apple.com>
 
31998
 
 
31999
        Win32 finds more khtml namespace issues with the movement
 
32000
        of Shared that gcc missed.
 
32001
 
 
32002
        * WebCore.vcproj/WebCore/WebCore.vcproj:
 
32003
        * khtml/xml/dom2_rangeimpl.cpp:
 
32004
        (DOM::RangeImpl::text):
 
32005
        * khtml/xml/dom_position.cpp:
 
32006
 
 
32007
2006-01-14  David Hyatt  <hyatt@apple.com>
 
32008
 
 
32009
        Move shared.h from khtml/misc into the platform directory and move it into the WebCore namespace.
 
32010
 
 
32011
        Reviewed by eseidel
 
32012
 
 
32013
        * ForwardingHeaders/kdom/Shared.h: Removed.
 
32014
        * WebCore+SVG/DOMList.h:
 
32015
        * WebCore+SVG/KDOMHeaders.h:
 
32016
        * WebCore+SVG/RGBColorImpl.h:
 
32017
        * WebCore.xcodeproj/project.pbxproj:
 
32018
        * bridge/mac/WebCoreFrameBridge.mm:
 
32019
        * kcanvas/KCanvasPath.h:
 
32020
        * khtml/css/css_base.h:
 
32021
        * khtml/css/css_ruleimpl.h:
 
32022
        * khtml/css/css_stylesheetimpl.h:
 
32023
        * khtml/css/css_valueimpl.h:
 
32024
        * khtml/dom/dom2_events.h:
 
32025
        * khtml/dom/dom2_traversal.h:
 
32026
        * khtml/ecma/kjs_dom.h:
 
32027
        * khtml/ecma/kjs_window.cpp:
 
32028
        * khtml/ecma/xmlserializer.cpp:
 
32029
        (KJS::XMLSerializerProtoFunc::callAsFunction):
 
32030
        * khtml/editing/SelectionController.h:
 
32031
        * khtml/editing/edit_command.h:
 
32032
        * khtml/editing/htmlediting.h:
 
32033
        * khtml/editing/visible_position.h:
 
32034
        * khtml/html/HTMLOptionsCollectionImpl.h:
 
32035
        * khtml/html/html_miscimpl.h:
 
32036
        * khtml/misc/shared.h: Removed.
 
32037
        * khtml/rendering/render_line.h:
 
32038
        * khtml/rendering/render_style.h:
 
32039
        * khtml/xml/DOMImplementationImpl.h:
 
32040
        * khtml/xml/DocumentImpl.h:
 
32041
        * khtml/xml/NamedNodeMapImpl.h:
 
32042
        * khtml/xml/NodeImpl.h:
 
32043
        * khtml/xml/NodeListImpl.h:
 
32044
        * khtml/xml/dom2_eventsimpl.h:
 
32045
        * khtml/xml/dom2_rangeimpl.h:
 
32046
        * khtml/xml/dom2_traversalimpl.h:
 
32047
        * khtml/xml/dom2_viewsimpl.h:
 
32048
        * khtml/xml/dom_elementimpl.h:
 
32049
        * khtml/xml/dom_qname.h:
 
32050
        * khtml/xml/dom_stringimpl.h:
 
32051
        * khtml/xsl/xslt_processorimpl.h:
 
32052
        * ksvg2/css/SVGRenderStyle.cpp:
 
32053
        (SVGRenderStyle::SVGRenderStyle):
 
32054
        * ksvg2/css/SVGRenderStyle.h:
 
32055
        * ksvg2/css/SVGRenderStyleDefs.cpp:
 
32056
        (StyleFillData::StyleFillData):
 
32057
        (StyleStrokeData::StyleStrokeData):
 
32058
        (StyleStopData::StyleStopData):
 
32059
        (StyleClipData::StyleClipData):
 
32060
        (StyleMaskData::StyleMaskData):
 
32061
        (StyleMarkerData::StyleMarkerData):
 
32062
        (StyleMiscData::StyleMiscData):
 
32063
        * ksvg2/css/SVGRenderStyleDefs.h:
 
32064
        * ksvg2/svg/SVGAngleImpl.cpp:
 
32065
        (SVGAngleImpl::SVGAngleImpl):
 
32066
        * ksvg2/svg/SVGAngleImpl.h:
 
32067
        * ksvg2/svg/SVGAnimatedBooleanImpl.cpp:
 
32068
        (SVGAnimatedBooleanImpl::SVGAnimatedBooleanImpl):
 
32069
        * ksvg2/svg/SVGAnimatedBooleanImpl.h:
 
32070
        * ksvg2/svg/SVGAnimatedEnumerationImpl.cpp:
 
32071
        (SVGAnimatedEnumerationImpl::SVGAnimatedEnumerationImpl):
 
32072
        * ksvg2/svg/SVGAnimatedEnumerationImpl.h:
 
32073
        * ksvg2/svg/SVGAnimatedIntegerImpl.cpp:
 
32074
        (SVGAnimatedIntegerImpl::SVGAnimatedIntegerImpl):
 
32075
        * ksvg2/svg/SVGAnimatedIntegerImpl.h:
 
32076
        * ksvg2/svg/SVGAnimatedLengthListImpl.h:
 
32077
        * ksvg2/svg/SVGAnimatedNumberImpl.cpp:
 
32078
        (SVGAnimatedNumberImpl::SVGAnimatedNumberImpl):
 
32079
        * ksvg2/svg/SVGAnimatedNumberImpl.h:
 
32080
        * ksvg2/svg/SVGAnimatedNumberListImpl.h:
 
32081
        * ksvg2/svg/SVGAnimatedPreserveAspectRatioImpl.h:
 
32082
        * ksvg2/svg/SVGAnimatedTemplate.h:
 
32083
        (KSVG::SVGAnimatedTemplate::SVGAnimatedTemplate):
 
32084
        * ksvg2/svg/SVGAnimatedTransformListImpl.h:
 
32085
        * ksvg2/svg/SVGDocumentImpl.cpp:
 
32086
        * ksvg2/svg/SVGLengthImpl.cpp:
 
32087
        (SVGLengthImpl::SVGLengthImpl):
 
32088
        * ksvg2/svg/SVGLengthImpl.h:
 
32089
        * ksvg2/svg/SVGMatrixImpl.cpp:
 
32090
        (SVGMatrixImpl::SVGMatrixImpl):
 
32091
        * ksvg2/svg/SVGMatrixImpl.h:
 
32092
        * ksvg2/svg/SVGNumberImpl.cpp:
 
32093
        (SVGNumberImpl::SVGNumberImpl):
 
32094
        * ksvg2/svg/SVGNumberImpl.h:
 
32095
        * ksvg2/svg/SVGPathSegImpl.cpp:
 
32096
        (SVGPathSegImpl::SVGPathSegImpl):
 
32097
        * ksvg2/svg/SVGPathSegImpl.h:
 
32098
        * ksvg2/svg/SVGPointImpl.cpp:
 
32099
        (SVGPointImpl::SVGPointImpl):
 
32100
        * ksvg2/svg/SVGPointImpl.h:
 
32101
        * ksvg2/svg/SVGPreserveAspectRatioImpl.cpp:
 
32102
        (SVGPreserveAspectRatioImpl::SVGPreserveAspectRatioImpl):
 
32103
        * ksvg2/svg/SVGPreserveAspectRatioImpl.h:
 
32104
        * ksvg2/svg/SVGRectImpl.cpp:
 
32105
        (SVGRectImpl::SVGRectImpl):
 
32106
        * ksvg2/svg/SVGRectImpl.h:
 
32107
        * ksvg2/svg/SVGTransformImpl.cpp:
 
32108
        (SVGTransformImpl::SVGTransformImpl):
 
32109
        * ksvg2/svg/SVGTransformImpl.h:
 
32110
        * kwq/DOM-CSS.mm:
 
32111
        * kwq/KWQFontMetrics.mm:
 
32112
        * kwq/KWQMapImpl.cpp:
 
32113
        * kwq/KWQRegExp.cpp:
 
32114
        * kwq/KWQValueListImpl.cpp:
 
32115
        (KWQValueListImpl::KWQValueListPrivate::KWQValueListPrivate):
 
32116
        * kwq/KWQVariant.cpp:
 
32117
        * platform/ArrayImpl.h:
 
32118
        * platform/Shared.h: Added.
 
32119
 
 
32120
2006-01-14  Eric Seidel  <eseidel@apple.com>
 
32121
 
 
32122
        Reviewed by darin.
 
32123
 
 
32124
        Implement basic <foreignObject> support:
 
32125
        http://bugs.webkit.org/show_bug.cgi?id=5974
 
32126
        Also fixed <image> to support clip, filter and mask
 
32127
        Updated <text> to support hit testing and clip, filter, mask
 
32128
        
 
32129
        Tests:
 
32130
        * svg/custom/image-with-transform-clip-filter.svg
 
32131
        * svg/custom/foreign-object-skew.svg
 
32132
 
 
32133
        * WebCore.xcodeproj/project.pbxproj: added files.
 
32134
        * kcanvas/RenderForeignObject.cpp: Added.
 
32135
        (RenderForeignObject::RenderForeignObject):
 
32136
        (RenderForeignObject::translationForAttributes):
 
32137
        (RenderForeignObject::paint):
 
32138
        (RenderForeignObject::nodeAtPoint):
 
32139
        * kcanvas/RenderForeignObject.h: Added.
 
32140
        (RenderForeignObject::renderName): added.
 
32141
        (RenderForeignObject::localTransform): added.
 
32142
        (RenderForeignObject::setLocalTransform): added.
 
32143
        * kcanvas/RenderSVGImage.cpp:
 
32144
        (RenderSVGImage::paint): added filter, clip mask support
 
32145
        * kcanvas/RenderSVGImage.h:
 
32146
        (KSVG::RenderSVGImage::localTransform): added.
 
32147
        (KSVG::RenderSVGImage::setLocalTransform): added.
 
32148
        * kcanvas/RenderSVGText.cpp:
 
32149
        (RenderSVGText::translationTopToBaseline): return qmatrix
 
32150
        (RenderSVGText::translationForAttributes): return qmatrix
 
32151
        (RenderSVGText::paint): added filter, clip, mask support
 
32152
        (RenderSVGText::nodeAtPoint): added.
 
32153
        * kcanvas/RenderSVGText.h:
 
32154
        (RenderSVGText::localTransform): added.
 
32155
        (RenderSVGText::setLocalTransform): added.
 
32156
        * khtml/rendering/render_object.h:
 
32157
        (khtml::RenderObject::setLocalTransform): added assert(0)
 
32158
        * ksvg2/css/svg.css: added foreignObject display: block
 
32159
        * ksvg2/svg/SVGForeignObjectElementImpl.cpp: Added.
 
32160
        (KSVG::SVGForeignObjectElementImpl::SVGForeignObjectElementImpl):
 
32161
        (KSVG::SVGForeignObjectElementImpl::~SVGForeignObjectElementImpl):
 
32162
        (KSVG::SVGForeignObjectElementImpl::x):
 
32163
        (KSVG::SVGForeignObjectElementImpl::y):
 
32164
        (KSVG::SVGForeignObjectElementImpl::width):
 
32165
        (KSVG::SVGForeignObjectElementImpl::height):
 
32166
        (KSVG::SVGForeignObjectElementImpl::parseMappedAttribute):
 
32167
        (KSVG::SVGForeignObjectElementImpl::createRenderer):
 
32168
        (KSVG::SVGForeignObjectElementImpl::childShouldCreateRenderer):
 
32169
        * ksvg2/svg/SVGForeignObjectElementImpl.h: Added.
 
32170
        (KSVG::SVGForeignObjectElementImpl::isValid): added
 
32171
        (KSVG::SVGForeignObjectElementImpl::rendererIsNeeded): added
 
32172
        * ksvg2/svg/SVGImageElementImpl.cpp:
 
32173
        (SVGImageElementImpl::attach): fixed static_cast
 
32174
        * ksvg2/svg/SVGLocatableImpl.cpp:
 
32175
        (SVGLocatableImpl::nearestViewportElement): foreignObject support
 
32176
        (SVGLocatableImpl::farthestViewportElement): foreignObject support
 
32177
        * ksvg2/svg/svgtags.in: added foreignObject
 
32178
        * kwq/KWQWMatrix.cpp:
 
32179
        (QWMatrix::isInvertible): fixed
 
32180
 
 
32181
2006-01-14  Eric Seidel  <eseidel@apple.com>
 
32182
 
 
32183
        Fix build break. (oops!)
 
32184
 
 
32185
        * khtml/xml/xml_tokenizer.cpp:
 
32186
        (khtml::XMLTokenizer::XMLTokenizer):
 
32187
 
 
32188
2006-01-14  Eric Seidel  <eseidel@apple.com>
 
32189
 
 
32190
        Reviewed by mjs.
 
32191
 
 
32192
        Initialize m_isXHTMLDocument(false) properly.
 
32193
        No tests possible, random failure only.
 
32194
 
 
32195
        * khtml/xml/xml_tokenizer.cpp:
 
32196
        (khtml::XMLTokenizer::XMLTokenizer):
 
32197
 
 
32198
2006-01-15  Alexander Kellett  <lypanov@kde.org>
 
32199
 
 
32200
        Reviewed by eseidel.  Landed by eseidel.
 
32201
 
 
32202
        Add support for svg css property writing-mode.
 
32203
        
 
32204
        No tests possible.
 
32205
        
 
32206
        * ksvg2/css/SVGCSSStyleSelector.cpp:
 
32207
        (KDOM::CSSStyleSelector::applySVGProperty):
 
32208
        * ksvg2/css/SVGRenderStyle.h:
 
32209
        (KSVG::SVGRenderStyle::InheritedFlags::):
 
32210
        (KSVG::SVGRenderStyle::setBitDefaults):
 
32211
        * ksvg2/css/SVGRenderStyleDefs.h:
 
32212
        (KSVG::):
 
32213
 
 
32214
2006-01-14  Alexander Kellett  <lypanov@kde.org>
 
32215
 
 
32216
        Reviewed by eseidel.  Landed by eseidel.
 
32217
 
 
32218
        Refactor out cases of KCanvasRenderingStyle used as an instance to
 
32219
        store the current style. Temporarily unify the data passing via 
 
32220
        KCanvasCommonArgs.
 
32221
        
 
32222
        No tests needed, no functional change.
 
32223
 
 
32224
        * kcanvas/KCanvasItem.cpp: Removing override of setStyle used to hook
 
32225
        into KCanvasRenderingStyle::updateStyle.
 
32226
        (RenderPath::commonArgs): 
 
32227
        * kcanvas/KCanvasItem.h:
 
32228
        * kcanvas/KCanvasTreeDebug.cpp:
 
32229
        (writeStyle):
 
32230
        * kcanvas/KCanvasTypes.h:
 
32231
        * kcanvas/device/KRenderingDevice.cpp:
 
32232
        (KCanvasCommonArgs::KCanvasCommonArgs):
 
32233
        (KCanvasCommonArgs::renderStyle):
 
32234
        (KCanvasCommonArgs::setRenderStyle):
 
32235
        (KCanvasCommonArgs::renderPath):
 
32236
        (KCanvasCommonArgs::setRenderPath):
 
32237
        * kcanvas/device/quartz/KCanvasItemQuartz.mm:
 
32238
        (KCanvasItemQuartz::paint):
 
32239
        (KCanvasItemQuartz::bboxForPath):
 
32240
        (KCanvasItemQuartz::hitsPath):
 
32241
        * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
 
32242
        (drawShadingWithStyle):
 
32243
        (KRenderingPaintServerLinearGradientQuartz::draw):
 
32244
        (KRenderingPaintServerRadialGradientQuartz::draw):
 
32245
        * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
 
32246
        (KRenderingPaintServerSolidQuartz::draw):
 
32247
        (KRenderingPaintServerPatternQuartz::draw):
 
32248
        * kcanvas/device/quartz/QuartzSupport.h:
 
32249
        * kcanvas/device/quartz/QuartzSupport.mm:
 
32250
        (applyStrokeStyleToContext):
 
32251
        * ksvg2/misc/KCanvasRenderingStyle.cpp: Remove overrideFillPaintServer
 
32252
        and overrideStrokePaintServer hacks and make most other methods
 
32253
        static, remove most instance variables.
 
32254
        (KCanvasRenderingStyle::KCanvasRenderingStyle):
 
32255
        (KCanvasRenderingStyle::isFilled):
 
32256
        (KCanvasRenderingStyle::fillPaintServer):
 
32257
        (KCanvasRenderingStyle::isStroked):
 
32258
        (KCanvasRenderingStyle::strokePaintServer):
 
32259
        (KCanvasRenderingStyle::strokePainter): Merged stroke logic in from
 
32260
        updateStyle.
 
32261
        (KCanvasRenderingStyle::fillPainter): Merged fill logic in from
 
32262
        updateStyle.
 
32263
        * ksvg2/misc/KCanvasRenderingStyle.h:
 
32264
 
 
32265
2006-01-14  David Hyatt  <hyatt@apple.com>
 
32266
 
 
32267
        Move loader_client.h to CachedObjectClient.h.
 
32268
 
 
32269
        * WebCore.xcodeproj/project.pbxproj:
 
32270
        * khtml/css/css_ruleimpl.h:
 
32271
        * khtml/css/css_valueimpl.h:
 
32272
        * khtml/ecma/kjs_html.h:
 
32273
        * khtml/html/html_documentimpl.h:
 
32274
        * khtml/html/html_headimpl.h:
 
32275
        * khtml/html/htmltokenizer.h:
 
32276
        * khtml/rendering/render_object.h:
 
32277
        * khtml/xbl/xbl_binding.h:
 
32278
        * khtml/xml/dom_xmlimpl.h:
 
32279
        * khtml/xsl/xsl_stylesheetimpl.h:
 
32280
        * loader/CachedObject.h:
 
32281
        * loader/CachedObjectClient.h: Added.
 
32282
        * loader/CachedObjectClientWalker.h:
 
32283
        * loader/loader_client.h: Removed.
 
32284
 
 
32285
2006-01-14  Anders Carlsson  <andersca@mac.com>
 
32286
 
 
32287
        Reviewed by Eric and Hyatt.
 
32288
 
 
32289
        - http://bugs.webkit.org/show_bug.cgi?id=6544
 
32290
        Remove unused headers.
 
32291
 
 
32292
        * ForwardingHeaders/kglobalsettings.h: Removed.
 
32293
        * ForwardingHeaders/kimageio.h: Removed.
 
32294
        * ForwardingHeaders/qasyncio.h: Removed.
 
32295
        * ForwardingHeaders/qstylesheet.h: Removed.
 
32296
        * kwq/KWQAsyncIO.h: Removed.
 
32297
        * kwq/KWQKGlobalSettings.h: Removed.
 
32298
        * kwq/KWQKImageIO.h: Removed.
 
32299
        * kwq/KWQStyleSheet.h: Removed.
 
32300
        
 
32301
        * WebCore.xcodeproj/project.pbxproj:
 
32302
        * khtml/ecma/kjs_window.cpp:
 
32303
        * khtml/html/html_documentimpl.cpp:
 
32304
        * khtml/xml/DocumentImpl.cpp:
 
32305
        (DocumentImpl::recalcStyle):        
 
32306
        * loader/CachedImageCallback.cpp:
 
32307
        * loader/CachedObject.cpp:
 
32308
        * page/Frame.cpp:
 
32309
        * page/FrameView.cpp:
 
32310
        (KHTMLView::KHTMLView):
 
32311
        Remove header inclusions
 
32312
        
 
32313
2006-01-14  David Hyatt  <hyatt@apple.com>
 
32314
 
 
32315
        Shift the loader-related files out of the khtml/misc directory and into a new loader directory.
 
32316
        Remove the use of paths when including files from misc.
 
32317
 
 
32318
        * WebCore+SVG/KDOMHeaders.h:
 
32319
        * WebCore.xcodeproj/project.pbxproj:
 
32320
        * kcanvas/KCanvasPath.h:
 
32321
        * khtml/css/css_base.h:
 
32322
        * khtml/css/css_ruleimpl.cpp:
 
32323
        * khtml/css/css_ruleimpl.h:
 
32324
        * khtml/css/css_stylesheetimpl.cpp:
 
32325
        * khtml/css/css_valueimpl.h:
 
32326
        * khtml/css/csshelper.cpp:
 
32327
        * khtml/css/cssparser.cpp:
 
32328
        * khtml/css/cssstyleselector.cpp:
 
32329
        * khtml/dom/dom2_events.h:
 
32330
        * khtml/dom/dom2_traversal.h:
 
32331
        * khtml/ecma/kjs_dom.h:
 
32332
        * khtml/ecma/kjs_html.h:
 
32333
        * khtml/ecma/kjs_window.cpp:
 
32334
        * khtml/editing/SelectionController.h:
 
32335
        * khtml/editing/edit_command.h:
 
32336
        * khtml/editing/visible_position.h:
 
32337
        * khtml/editing/visible_units.cpp:
 
32338
        * khtml/html/HTMLOptionsCollectionImpl.h:
 
32339
        * khtml/html/html_baseimpl.cpp:
 
32340
        * khtml/html/html_baseimpl.h:
 
32341
        * khtml/html/html_canvasimpl.h:
 
32342
        * khtml/html/html_documentimpl.h:
 
32343
        * khtml/html/html_headimpl.cpp:
 
32344
        * khtml/html/html_headimpl.h:
 
32345
        * khtml/html/html_imageimpl.h:
 
32346
        * khtml/html/html_miscimpl.h:
 
32347
        * khtml/html/htmltokenizer.h:
 
32348
        * khtml/misc/Cache.cpp: Removed.
 
32349
        * khtml/misc/Cache.h: Removed.
 
32350
        * khtml/misc/CachedCSSStyleSheet.cpp: Removed.
 
32351
        * khtml/misc/CachedCSSStyleSheet.h: Removed.
 
32352
        * khtml/misc/CachedImage.cpp: Removed.
 
32353
        * khtml/misc/CachedImage.h: Removed.
 
32354
        * khtml/misc/CachedImageCallback.cpp: Removed.
 
32355
        * khtml/misc/CachedImageCallback.h: Removed.
 
32356
        * khtml/misc/CachedObject.cpp: Removed.
 
32357
        * khtml/misc/CachedObject.h: Removed.
 
32358
        * khtml/misc/CachedObjectClientWalker.cpp: Removed.
 
32359
        * khtml/misc/CachedObjectClientWalker.h: Removed.
 
32360
        * khtml/misc/CachedScript.cpp: Removed.
 
32361
        * khtml/misc/CachedScript.h: Removed.
 
32362
        * khtml/misc/CachedXBLDocument.cpp: Removed.
 
32363
        * khtml/misc/CachedXBLDocument.h: Removed.
 
32364
        * khtml/misc/CachedXSLStyleSheet.cpp: Removed.
 
32365
        * khtml/misc/CachedXSLStyleSheet.h: Removed.
 
32366
        * khtml/misc/DocLoader.cpp: Removed.
 
32367
        * khtml/misc/DocLoader.h: Removed.
 
32368
        * khtml/misc/Request.cpp: Removed.
 
32369
        * khtml/misc/Request.h: Removed.
 
32370
        * khtml/misc/loader.cpp: Removed.
 
32371
        * khtml/misc/loader.h: Removed.
 
32372
        * khtml/misc/loader_client.h: Removed.
 
32373
        * khtml/rendering/render_box.h:
 
32374
        * khtml/rendering/render_canvasimage.cpp:
 
32375
        * khtml/rendering/render_form.cpp:
 
32376
        * khtml/rendering/render_image.cpp:
 
32377
        * khtml/rendering/render_line.h:
 
32378
        * khtml/rendering/render_list.cpp:
 
32379
        * khtml/rendering/render_object.h:
 
32380
        * khtml/rendering/render_style.h:
 
32381
        * khtml/rendering/render_table.h:
 
32382
        * khtml/rendering/table_layout.h:
 
32383
        * khtml/xbl/xbl_binding.cpp:
 
32384
        * khtml/xbl/xbl_binding.h:
 
32385
        * khtml/xml/DOMImplementationImpl.h:
 
32386
        * khtml/xml/DocumentImpl.cpp:
 
32387
        * khtml/xml/DocumentImpl.h:
 
32388
        * khtml/xml/dom2_eventsimpl.h:
 
32389
        * khtml/xml/dom2_rangeimpl.h:
 
32390
        * khtml/xml/dom2_traversalimpl.h:
 
32391
        * khtml/xml/dom2_viewsimpl.h:
 
32392
        * khtml/xml/dom_elementimpl.h:
 
32393
        * khtml/xml/dom_nodeimpl.h:
 
32394
        * khtml/xml/dom_stringimpl.h:
 
32395
        * khtml/xml/dom_xmlimpl.h:
 
32396
        * khtml/xml/xml_tokenizer.h:
 
32397
        * khtml/xsl/xsl_stylesheetimpl.cpp:
 
32398
        * khtml/xsl/xslt_processorimpl.h:
 
32399
        * kwq/KWQFontMetrics.mm:
 
32400
        * kwq/KWQMapImpl.cpp:
 
32401
        * kwq/KWQRegExp.cpp:
 
32402
        * kwq/KWQValueListImpl.cpp:
 
32403
        * kwq/KWQVariant.cpp:
 
32404
        * loader: Added.
 
32405
        * loader/Cache.cpp: Added.
 
32406
        * loader/Cache.h: Added.
 
32407
        * loader/CachedCSSStyleSheet.cpp: Added.
 
32408
        * loader/CachedCSSStyleSheet.h: Added.
 
32409
        * loader/CachedImage.cpp: Added.
 
32410
        * loader/CachedImage.h: Added.
 
32411
        * loader/CachedImageCallback.cpp: Added.
 
32412
        * loader/CachedImageCallback.h: Added.
 
32413
        * loader/CachedObject.cpp: Added.
 
32414
        * loader/CachedObject.h: Added.
 
32415
        * loader/CachedObjectClientWalker.cpp: Added.
 
32416
        * loader/CachedObjectClientWalker.h: Added.
 
32417
        * loader/CachedScript.cpp: Added.
 
32418
        * loader/CachedScript.h: Added.
 
32419
        * loader/CachedXBLDocument.cpp: Added.
 
32420
        * loader/CachedXBLDocument.h: Added.
 
32421
        * loader/CachedXSLStyleSheet.cpp: Added.
 
32422
        * loader/CachedXSLStyleSheet.h: Added.
 
32423
        * loader/DocLoader.cpp: Added.
 
32424
        * loader/DocLoader.h: Added.
 
32425
        * loader/Request.cpp: Added.
 
32426
        * loader/Request.h: Added.
 
32427
        * loader/loader.cpp: Added.
 
32428
        * loader/loader.h: Added.
 
32429
        * loader/loader_client.h: Added.
 
32430
        * page/Frame.cpp:
 
32431
        * page/FramePrivate.h:
 
32432
        * page/FrameView.cpp:
 
32433
 
 
32434
2006-01-14  Eric Seidel  <eseidel@apple.com>
 
32435
 
 
32436
        Reviewed by hyatt
 
32437
 
 
32438
        break classes in dom_nodeimpl.* into separate files (one per class)
 
32439
        http://bugs.webkit.org/show_bug.cgi?id=6543
 
32440
 
 
32441
        * ForwardingHeaders/kdom/core/NodeImpl.h: Removed.
 
32442
        * WebCore.xcodeproj/project.pbxproj:
 
32443
        * bridge/mac/MacFrame.h:
 
32444
        * bridge/mac/WebCoreFrameBridge.mm:
 
32445
        * khtml/css/css_base.h:
 
32446
        * khtml/css/css_stylesheetimpl.cpp:
 
32447
        * khtml/css/css_valueimpl.cpp:
 
32448
        * khtml/css/css_valueimpl.h:
 
32449
        * khtml/ecma/kjs_binding.cpp:
 
32450
        * khtml/ecma/kjs_dom.cpp:
 
32451
        * khtml/ecma/kjs_dom.h:
 
32452
        * khtml/ecma/kjs_events.cpp:
 
32453
        * khtml/ecma/kjs_html.cpp:
 
32454
        * khtml/ecma/kjs_traversal.cpp:
 
32455
        * khtml/editing/SelectionController.cpp:
 
32456
        * khtml/editing/append_node_command.cpp:
 
32457
        * khtml/editing/htmlediting.cpp:
 
32458
        * khtml/editing/htmlediting.h:
 
32459
        * khtml/editing/insert_node_before_command.cpp:
 
32460
        * khtml/editing/remove_node_attribute_command.h:
 
32461
        * khtml/editing/remove_node_command.cpp:
 
32462
        * khtml/editing/remove_node_preserving_children_command.cpp:
 
32463
        * khtml/editing/set_node_attribute_command.h:
 
32464
        * khtml/editing/visible_position.cpp:
 
32465
        * khtml/editing/visible_text.cpp:
 
32466
        * khtml/html/HTMLOptionElementImpl.cpp:
 
32467
        * khtml/html/html_headimpl.cpp:
 
32468
        * khtml/html/htmlparser.cpp:
 
32469
        * khtml/khtml_events.cpp:
 
32470
        * khtml/rendering/render_block.cpp:
 
32471
        * khtml/rendering/render_box.cpp:
 
32472
        * khtml/rendering/render_flow.cpp:
 
32473
        * khtml/rendering/render_frames.h:
 
32474
        * khtml/rendering/render_line.cpp:
 
32475
        * khtml/rendering/render_object.h:
 
32476
        * khtml/xml/ChildNodeListImpl.cpp: Added.
 
32477
        * khtml/xml/ChildNodeListImpl.h: Added.
 
32478
        * khtml/xml/ContainerNodeImpl.cpp: Added.
 
32479
        (DOM::ContainerNodeImpl::removeAllChildren):
 
32480
        (DOM::ContainerNodeImpl::checkSameDocument):
 
32481
        (DOM::ContainerNodeImpl::getRect):
 
32482
        (DOM::ContainerNodeImpl::dispatchChildRemovalEvents):
 
32483
        * khtml/xml/ContainerNodeImpl.h: Added.
 
32484
        * khtml/xml/DocumentFragmentImpl.cpp:
 
32485
        * khtml/xml/DocumentFragmentImpl.h:
 
32486
        * khtml/xml/DocumentImpl.cpp:
 
32487
        * khtml/xml/DocumentImpl.h:
 
32488
        (DOM::DocumentImpl::setTextColor):
 
32489
        * khtml/xml/DocumentTypeImpl.cpp:
 
32490
        * khtml/xml/DocumentTypeImpl.h:
 
32491
        * khtml/xml/NameNodeListImpl.cpp: Added.
 
32492
        * khtml/xml/NameNodeListImpl.h: Added.
 
32493
        * khtml/xml/NamedNodeMapImpl.h: Added.
 
32494
        (DOM::NamedNodeMapImpl::NamedNodeMapImpl):
 
32495
        (DOM::NamedNodeMapImpl::~NamedNodeMapImpl):
 
32496
        * khtml/xml/NodeImpl.cpp: Added.
 
32497
        (DOM::TagNodeListImpl::TagNodeListImpl):
 
32498
        (DOM::TagNodeListImpl::length):
 
32499
        (DOM::TagNodeListImpl::item):
 
32500
        (DOM::TagNodeListImpl::nodeMatches):
 
32501
        (DOM::NodeImpl::getRect):
 
32502
        * khtml/xml/NodeImpl.h: Added.
 
32503
        * khtml/xml/NodeListImpl.cpp: Added.
 
32504
        * khtml/xml/NodeListImpl.h: Added.
 
32505
        * khtml/xml/dom2_eventsimpl.h:
 
32506
        * khtml/xml/dom_elementimpl.h:
 
32507
        * khtml/xml/dom_nodeimpl.cpp: Removed.
 
32508
        * khtml/xml/dom_nodeimpl.h: Removed.
 
32509
        * khtml/xml/dom_position.cpp:
 
32510
        * khtml/xml/dom_textimpl.h:
 
32511
        * khtml/xml/dom_xmlimpl.cpp:
 
32512
        * khtml/xml/dom_xmlimpl.h:
 
32513
        * khtml/xml/xml_tokenizer.cpp:
 
32514
        * khtml/xsl/xsl_stylesheetimpl.cpp:
 
32515
        * khtml/xsl/xslt_processorimpl.h:
 
32516
        * ksvg2/svg/SVGURIReferenceImpl.cpp:
 
32517
        * kwq/DOM.mm:
 
32518
        * kwq/DOMHTML.mm:
 
32519
        * kwq/DOMUtility.mm:
 
32520
        * kwq/KWQClipboard.h:
 
32521
        * page/FrameView.cpp:
 
32522
 
 
32523
2006-01-14  David Hyatt  <hyatt@apple.com>
 
32524
 
 
32525
        Convert QMemArray to Array.  QByteArray becomes ByteArray.
 
32526
        KWQArrayImpl becomes ArrayImpl.
 
32527
 
 
32528
        Reviewed by anders
 
32529
 
 
32530
        * ForwardingHeaders/qmemarray.h: Removed.
 
32531
        * WebCore.xcodeproj/project.pbxproj:
 
32532
        * khtml/css/cssstyleselector.h:
 
32533
        * khtml/ecma/xmlhttprequest.cpp:
 
32534
        (KJS::XMLHttpRequest::send):
 
32535
        (KJS::XMLHttpRequest::processSyncLoadResults):
 
32536
        * khtml/ecma/xmlhttprequest.h:
 
32537
        * khtml/html/HTMLOptionElementImpl.cpp:
 
32538
        (DOM::HTMLOptionElementImpl::index):
 
32539
        * khtml/html/HTMLSelectElementImpl.cpp:
 
32540
        (DOM::HTMLSelectElementImpl::selectedIndex):
 
32541
        (DOM::HTMLSelectElementImpl::setSelectedIndex):
 
32542
        (DOM::HTMLSelectElementImpl::length):
 
32543
        (DOM::HTMLSelectElementImpl::remove):
 
32544
        (DOM::HTMLSelectElementImpl::value):
 
32545
        (DOM::HTMLSelectElementImpl::setValue):
 
32546
        (DOM::HTMLSelectElementImpl::state):
 
32547
        (DOM::HTMLSelectElementImpl::restoreState):
 
32548
        (DOM::HTMLSelectElementImpl::appendFormData):
 
32549
        (DOM::HTMLSelectElementImpl::optionToListIndex):
 
32550
        (DOM::HTMLSelectElementImpl::listToOptionIndex):
 
32551
        (DOM::HTMLSelectElementImpl::reset):
 
32552
        (DOM::HTMLSelectElementImpl::notifyOptionSelected):
 
32553
        * khtml/html/HTMLSelectElementImpl.h:
 
32554
        (DOM::HTMLSelectElementImpl::listItems):
 
32555
        * khtml/misc/formdata.cpp:
 
32556
        (khtml::FormData::flatten):
 
32557
        (khtml::FormData::flattenToString):
 
32558
        * khtml/misc/formdata.h:
 
32559
        (khtml::FormDataElement::FormDataElement):
 
32560
        * khtml/rendering/bidi.cpp:
 
32561
        (khtml::RenderBlock::layoutInlineChildren):
 
32562
        * khtml/rendering/render_form.cpp:
 
32563
        (RenderSelect::updateFromElement):
 
32564
        (RenderSelect::layout):
 
32565
        (RenderSelect::slotSelected):
 
32566
        (RenderSelect::slotSelectionChanged):
 
32567
        (RenderSelect::updateSelection):
 
32568
        * khtml/rendering/render_table.cpp:
 
32569
        (RenderTableSection::addCell):
 
32570
        (RenderTableSection::setCellWidths):
 
32571
        * khtml/rendering/render_table.h:
 
32572
        * khtml/rendering/table_layout.cpp:
 
32573
        (FixedTableLayout::layout):
 
32574
        * khtml/rendering/table_layout.h:
 
32575
        * khtml/xsl/xslt_processorimpl.cpp:
 
32576
        (DOM::docLoaderFunc):
 
32577
        * kwq/KWQArrayImpl.cpp: Removed.
 
32578
        * kwq/KWQArrayImpl.h: Removed.
 
32579
        * kwq/KWQBuffer.cpp:
 
32580
        (QBuffer::setBuffer):
 
32581
        * kwq/KWQBuffer.h:
 
32582
        (QBuffer::QBuffer):
 
32583
        (QBuffer::buffer):
 
32584
        * kwq/KWQCString.cpp:
 
32585
        (QCString::QCString):
 
32586
        (QCString::resize):
 
32587
        (QCString::append):
 
32588
        * kwq/KWQCString.h:
 
32589
        * kwq/KWQKURL.mm:
 
32590
        (findHostnamesInMailToURL):
 
32591
        (encodeHostnames):
 
32592
        * kwq/KWQLoader.h:
 
32593
        * kwq/KWQLoader.mm:
 
32594
        (KWQServeSynchronousRequest):
 
32595
        * kwq/KWQMemArray.h: Removed.
 
32596
        * kwq/KWQPixmap.h:
 
32597
        * kwq/KWQPixmap.mm:
 
32598
        (QPixmap::QPixmap):
 
32599
        (QPixmap::receivedData):
 
32600
        * kwq/KWQString.h:
 
32601
        * kwq/KWQString.mm:
 
32602
        (QString::QString):
 
32603
        * kwq/KWQTextCodec.cpp:
 
32604
        (QTextCodec::toUnicode):
 
32605
        * kwq/KWQTextCodec.h:
 
32606
        * kwq/KWQTextStream.cpp:
 
32607
        (QTextStream::QTextStream):
 
32608
        * kwq/KWQTextStream.h:
 
32609
        * page/Frame.h:
 
32610
        * platform/Array.h: Added.
 
32611
        (WebCore::Array::Array):
 
32612
        (WebCore::Array::duplicate):
 
32613
        (WebCore::Array::assign):
 
32614
        (WebCore::Array::operator==):
 
32615
        (WebCore::Array::operator!=):
 
32616
        * platform/ArrayImpl.cpp: Added.
 
32617
        (WebCore::ArrayImpl::ArrayPrivate::ArrayPrivate):
 
32618
        (WebCore::ArrayImpl::ArrayPrivate::~ArrayPrivate):
 
32619
        (WebCore::ArrayImpl::ArrayImpl):
 
32620
        (WebCore::ArrayImpl::~ArrayImpl):
 
32621
        (WebCore::ArrayImpl::operator=):
 
32622
        (WebCore::ArrayImpl::data):
 
32623
        (WebCore::ArrayImpl::resize):
 
32624
        (WebCore::ArrayImpl::duplicate):
 
32625
        (WebCore::ArrayImpl::detach):
 
32626
        (WebCore::ArrayImpl::fill):
 
32627
        (WebCore::ArrayImpl::operator==):
 
32628
        * platform/ArrayImpl.h: Added.
 
32629
        (WebCore::ArrayImpl::size):
 
32630
        * platform/IntPointArray.cpp:
 
32631
        (IntPointArray::setPoint):
 
32632
        * platform/IntPointArray.h:
 
32633
        (WebCore::IntPointArray::IntPointArray):
 
32634
 
 
32635
2006-01-14  David Hyatt  <hyatt@apple.com>
 
32636
 
 
32637
        Convert QRect/QRectF -> IntRect/FloatRect.  Same drill as point
 
32638
        and size.
 
32639
 
 
32640
        Reviewed by mjs
 
32641
 
 
32642
        * ForwardingHeaders/qrect.h: Removed.
 
32643
        * WebCore.xcodeproj/project.pbxproj:
 
32644
        * bridge/mac/MacFrame.mm:
 
32645
        (MacFrame::snapshotDragImage):
 
32646
        (MacFrame::setDisplaysWithFocusAttributes):
 
32647
        * bridge/mac/WebCoreFrameBridge.mm:
 
32648
        (-[WebCoreFrameBridge drawRect:withPainter:]):
 
32649
        (-[WebCoreFrameBridge firstRectForDOMRange:]):
 
32650
        (-[WebCoreFrameBridge ensureSelectionVisible]):
 
32651
        * kcanvas/KCanvasContainer.cpp:
 
32652
        (KCanvasContainer::relativeBBox):
 
32653
        (KCanvasContainer::getAspectRatio):
 
32654
        * kcanvas/KCanvasContainer.h:
 
32655
        * kcanvas/KCanvasFilters.cpp:
 
32656
        (KCanvasFilterEffect::subRegion):
 
32657
        (KCanvasFilterEffect::setSubRegion):
 
32658
        * kcanvas/KCanvasFilters.h:
 
32659
        (KCanvasFilter::filterRect):
 
32660
        (KCanvasFilter::setFilterRect):
 
32661
        * kcanvas/KCanvasItem.cpp:
 
32662
        (RenderPath::relativeBBox):
 
32663
        * kcanvas/KCanvasItem.h:
 
32664
        * kcanvas/KCanvasResources.cpp:
 
32665
        (KCanvasMarker::draw):
 
32666
        * kcanvas/KCanvasResources.h:
 
32667
        * kcanvas/KCanvasTreeDebug.cpp:
 
32668
        (operator<<):
 
32669
        * kcanvas/KCanvasTreeDebug.h:
 
32670
        * kcanvas/RenderSVGImage.cpp:
 
32671
        (RenderSVGImage::paint):
 
32672
        * kcanvas/device/KRenderingDevice.h:
 
32673
        * kcanvas/device/KRenderingPaintServerPattern.cpp:
 
32674
        (KRenderingPaintServerPattern::setBbox):
 
32675
        (KRenderingPaintServerPattern::bbox):
 
32676
        * kcanvas/device/KRenderingPaintServerPattern.h:
 
32677
        * kcanvas/device/quartz/KCanvasFilterQuartz.h:
 
32678
        * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
 
32679
        (KCanvasFilterQuartz::prepareFilter):
 
32680
        (KCanvasFilterQuartz::applyFilter):
 
32681
        * kcanvas/device/quartz/KCanvasItemQuartz.h:
 
32682
        (KCanvasItemQuartz::getAbsoluteRepaintRect):
 
32683
        * kcanvas/device/quartz/KCanvasItemQuartz.mm:
 
32684
        (drawMarkerWithData):
 
32685
        (KCanvasItemQuartz::drawMarkersIfNeeded):
 
32686
        (KCanvasItemQuartz::bboxForPath):
 
32687
        * kcanvas/device/quartz/KCanvasMaskerQuartz.h:
 
32688
        * kcanvas/device/quartz/KCanvasMaskerQuartz.mm:
 
32689
        (KCanvasMaskerQuartz::applyMask):
 
32690
        * kcanvas/device/quartz/KCanvasResourcesQuartz.h:
 
32691
        (KCanvasContainerQuartz::getAbsoluteRepaintRect):
 
32692
        * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
 
32693
        (KCanvasContainerQuartz::layout):
 
32694
        (KCanvasContainerQuartz::paint):
 
32695
        (KCanvasContainerQuartz::setViewport):
 
32696
        (KCanvasContainerQuartz::viewport):
 
32697
        (KCanvasContainerQuartz::setViewBox):
 
32698
        (KCanvasContainerQuartz::viewBox):
 
32699
        (KCanvasContainerQuartz::absoluteTransform):
 
32700
        (KCanvasClipperQuartz::applyClip):
 
32701
        * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
 
32702
        * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
 
32703
        (KRenderingDeviceContextQuartz::mapFromVisual):
 
32704
        (KRenderingDeviceContextQuartz::mapToVisual):
 
32705
        * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
 
32706
        (KRenderingPaintServerImageQuartz::draw):
 
32707
        * kcanvas/device/quartz/QuartzSupport.h:
 
32708
        * khtml/ecma/kjs_window.cpp:
 
32709
        (KJS::Screen::getValueProperty):
 
32710
        (KJS::showModalDialog):
 
32711
        (KJS::Window::getValueProperty):
 
32712
        (KJS::constrainToVisible):
 
32713
        (KJS::WindowFunc::callAsFunction):
 
32714
        * khtml/editing/SelectionController.cpp:
 
32715
        (khtml::caretY):
 
32716
        (khtml::SelectionController::layout):
 
32717
        (khtml::SelectionController::caretRect):
 
32718
        (khtml::SelectionController::caretRepaintRect):
 
32719
        (khtml::SelectionController::paintCaret):
 
32720
        * khtml/editing/SelectionController.h:
 
32721
        * khtml/html/html_imageimpl.cpp:
 
32722
        (DOM::HTMLAreaElementImpl::getRect):
 
32723
        * khtml/html/html_imageimpl.h:
 
32724
        * khtml/html/html_inlineimpl.cpp:
 
32725
        (DOM::HTMLAnchorElementImpl::isFocusable):
 
32726
        * khtml/misc/CachedImage.cpp:
 
32727
        (khtml::CachedImage::valid_rect):
 
32728
        (khtml::CachedImage::do_notify):
 
32729
        (khtml::CachedImage::error):
 
32730
        * khtml/misc/CachedImage.h:
 
32731
        * khtml/misc/khtmllayout.h:
 
32732
        (khtml::GapRects::left):
 
32733
        (khtml::GapRects::center):
 
32734
        (khtml::GapRects::right):
 
32735
        (khtml::GapRects::uniteLeft):
 
32736
        (khtml::GapRects::uniteCenter):
 
32737
        (khtml::GapRects::uniteRight):
 
32738
        (khtml::GapRects::operator IntRect):
 
32739
        * khtml/misc/loader_client.h:
 
32740
        (khtml::CachedObjectClient::setPixmap):
 
32741
        * khtml/rendering/InlineTextBox.cpp:
 
32742
        (khtml::InlineTextBox::selectionRect):
 
32743
        (khtml::InlineTextBox::nodeAtPoint):
 
32744
        * khtml/rendering/InlineTextBox.h:
 
32745
        * khtml/rendering/RenderText.cpp:
 
32746
        (khtml::RenderText::absoluteRects):
 
32747
        (khtml::RenderText::caretRect):
 
32748
        (khtml::RenderText::getAbsoluteRepaintRect):
 
32749
        (khtml::RenderText::selectionRect):
 
32750
        * khtml/rendering/RenderText.h:
 
32751
        * khtml/rendering/bidi.cpp:
 
32752
        (khtml::RenderBlock::layoutInlineChildren):
 
32753
        * khtml/rendering/font.cpp:
 
32754
        (khtml::Font::selectionRectForText):
 
32755
        * khtml/rendering/font.h:
 
32756
        * khtml/rendering/render_block.cpp:
 
32757
        (khtml::RenderBlock::overflowRect):
 
32758
        (khtml::RenderBlock::layoutBlock):
 
32759
        (khtml::RenderBlock::getAbsoluteRepaintRectIncludingFloats):
 
32760
        (khtml::RenderBlock::paint):
 
32761
        (khtml::RenderBlock::fillHorizontalSelectionGap):
 
32762
        (khtml::RenderBlock::fillVerticalSelectionGap):
 
32763
        (khtml::RenderBlock::fillLeftSelectionGap):
 
32764
        (khtml::RenderBlock::fillRightSelectionGap):
 
32765
        (khtml::RenderBlock::floatRect):
 
32766
        (khtml::RenderBlock::isPointInScrollbar):
 
32767
        (khtml::RenderBlock::nodeAtPoint):
 
32768
        * khtml/rendering/render_block.h:
 
32769
        (khtml::RenderBlock::selectionRect):
 
32770
        * khtml/rendering/render_box.cpp:
 
32771
        (RenderBox::nodeAtPoint):
 
32772
        (RenderBox::paintBoxDecorations):
 
32773
        (RenderBox::paintBackgroundExtended):
 
32774
        (RenderBox::getOverflowClipRect):
 
32775
        (RenderBox::getClipRect):
 
32776
        (RenderBox::getAbsoluteRepaintRect):
 
32777
        (RenderBox::computeAbsoluteRepaintRect):
 
32778
        (RenderBox::caretRect):
 
32779
        * khtml/rendering/render_box.h:
 
32780
        (khtml::RenderBox::borderBox):
 
32781
        * khtml/rendering/render_br.cpp:
 
32782
        (khtml::RenderBR::caretRect):
 
32783
        * khtml/rendering/render_br.h:
 
32784
        (khtml::RenderBR::selectionRect):
 
32785
        * khtml/rendering/render_button.cpp:
 
32786
        (khtml::RenderButton::paintObject):
 
32787
        * khtml/rendering/render_canvas.cpp:
 
32788
        (RenderCanvas::repaintViewRectangle):
 
32789
        (RenderCanvas::getAbsoluteRepaintRect):
 
32790
        (RenderCanvas::computeAbsoluteRepaintRect):
 
32791
        (RenderCanvas::absoluteRects):
 
32792
        (RenderCanvas::selectionRect):
 
32793
        (RenderCanvas::viewRect):
 
32794
        * khtml/rendering/render_canvas.h:
 
32795
        (khtml::RenderCanvas::printRect):
 
32796
        (khtml::RenderCanvas::setPrintRect):
 
32797
        * khtml/rendering/render_canvasimage.cpp:
 
32798
        (RenderCanvasImage::paint):
 
32799
        (RenderCanvasImage::layout):
 
32800
        * khtml/rendering/render_flexbox.cpp:
 
32801
        (khtml::RenderFlexibleBox::layoutBlock):
 
32802
        * khtml/rendering/render_flow.cpp:
 
32803
        (RenderFlow::getAbsoluteRepaintRect):
 
32804
        (RenderFlow::caretRect):
 
32805
        (RenderFlow::paintOutlines):
 
32806
        (RenderFlow::paintOutlineForLine):
 
32807
        * khtml/rendering/render_flow.h:
 
32808
        * khtml/rendering/render_frames.cpp:
 
32809
        (RenderFrameSet::userResize):
 
32810
        (RenderPart::updateWidgetPosition):
 
32811
        * khtml/rendering/render_image.cpp:
 
32812
        (RenderImage::setImage):
 
32813
        (RenderImage::setPixmap):
 
32814
        (RenderImage::paint):
 
32815
        (RenderImage::layout):
 
32816
        * khtml/rendering/render_image.h:
 
32817
        * khtml/rendering/render_inline.cpp:
 
32818
        (RenderInline::absoluteRects):
 
32819
        * khtml/rendering/render_inline.h:
 
32820
        * khtml/rendering/render_layer.cpp:
 
32821
        (khtml::RenderLayer::updateLayerPositions):
 
32822
        (khtml::RenderLayer::scrollRectToVisible):
 
32823
        (khtml::RenderLayer::getRectToExpose):
 
32824
        (khtml::RenderLayer::positionScrollbars):
 
32825
        (khtml::RenderLayer::updateScrollInfoAfterLayout):
 
32826
        (khtml::RenderLayer::paintScrollbars):
 
32827
        (khtml::RenderLayer::paint):
 
32828
        (khtml::setClip):
 
32829
        (khtml::restoreClip):
 
32830
        (khtml::RenderLayer::paintLayer):
 
32831
        (khtml::RenderLayer::hitTest):
 
32832
        (khtml::RenderLayer::hitTestLayer):
 
32833
        (khtml::RenderLayer::calculateClipRects):
 
32834
        (khtml::RenderLayer::calculateRects):
 
32835
        (khtml::mustExamineRenderer):
 
32836
        (khtml::RenderLayer::intersectsDamageRect):
 
32837
        (khtml::RenderLayer::containsPoint):
 
32838
        * khtml/rendering/render_layer.h:
 
32839
        (khtml::ClipRects::m_refCnt):
 
32840
        (khtml::ClipRects::overflowClipRect):
 
32841
        (khtml::ClipRects::fixedClipRect):
 
32842
        (khtml::ClipRects::posClipRect):
 
32843
        (khtml::RenderLayer::repaintRect):
 
32844
        * khtml/rendering/render_line.cpp:
 
32845
        (khtml::InlineBox::canAccommodateEllipsis):
 
32846
        (khtml::InlineFlowBox::nodeAtPoint):
 
32847
        (khtml::InlineFlowBox::paintBackground):
 
32848
        (khtml::InlineFlowBox::paintBackgroundAndBorder):
 
32849
        (khtml::EllipsisBox::nodeAtPoint):
 
32850
        * khtml/rendering/render_list.cpp:
 
32851
        (RenderListItem::getAbsoluteRepaintRect):
 
32852
        (RenderListMarker::setPixmap):
 
32853
        * khtml/rendering/render_list.h:
 
32854
        * khtml/rendering/render_object.cpp:
 
32855
        (RenderObject::paintBorderImage):
 
32856
        (RenderObject::paintBorder):
 
32857
        (RenderObject::absoluteRects):
 
32858
        (RenderObject::absoluteBoundingBoxRect):
 
32859
        (RenderObject::addAbsoluteRectForLayer):
 
32860
        (RenderObject::paintingRootRect):
 
32861
        (RenderObject::repaintRectangle):
 
32862
        (RenderObject::repaintAfterLayoutIfNeeded):
 
32863
        (RenderObject::getAbsoluteRepaintRectWithOutline):
 
32864
        (RenderObject::getAbsoluteRepaintRect):
 
32865
        (RenderObject::getAbsoluteRepaintRectIncludingFloats):
 
32866
        (RenderObject::computeAbsoluteRepaintRect):
 
32867
        (RenderObject::viewRect):
 
32868
        (RenderObject::caretRect):
 
32869
        (RenderObject::addDashboardRegions):
 
32870
        (RenderObject::setPixmap):
 
32871
        * khtml/rendering/render_object.h:
 
32872
        (khtml::RenderObject::getOverflowClipRect):
 
32873
        (khtml::RenderObject::getClipRect):
 
32874
        (khtml::RenderObject::relativeBBox):
 
32875
        (khtml::RenderObject::PaintInfo::PaintInfo):
 
32876
        (khtml::RenderObject::RepaintInfo::m_repaintRect):
 
32877
        (khtml::RenderObject::borderBox):
 
32878
        (khtml::RenderObject::overflowRect):
 
32879
        (khtml::RenderObject::floatRect):
 
32880
        (khtml::RenderObject::selectionRect):
 
32881
        (khtml::RenderObject::SelectionInfo::rect):
 
32882
        * khtml/rendering/render_replaced.cpp:
 
32883
        (RenderReplaced::selectionRect):
 
32884
        (RenderWidget::paint):
 
32885
        (RenderWidget::updateWidgetPosition):
 
32886
        * khtml/rendering/render_replaced.h:
 
32887
        * khtml/rendering/render_table.cpp:
 
32888
        (RenderTable::layout):
 
32889
        (RenderTableRow::getAbsoluteRepaintRect):
 
32890
        (RenderTableCell::computeAbsoluteRepaintRect):
 
32891
        (RenderTableCell::getAbsoluteRepaintRect):
 
32892
        (RenderTableCell::paintBoxDecorations):
 
32893
        * khtml/rendering/render_table.h:
 
32894
        * khtml/rendering/render_theme.cpp:
 
32895
        (khtml::RenderTheme::paint):
 
32896
        * khtml/rendering/render_theme.h:
 
32897
        (khtml::RenderTheme::adjustRepaintRect):
 
32898
        * khtml/rendering/render_theme_mac.h:
 
32899
        * khtml/rendering/render_theme_mac.mm:
 
32900
        (khtml::RenderThemeMac::adjustRepaintRect):
 
32901
        (khtml::RenderThemeMac::inflateRect):
 
32902
        (khtml::RenderThemeMac::paintCheckbox):
 
32903
        (khtml::RenderThemeMac::setCheckboxCellState):
 
32904
        (khtml::RenderThemeMac::paintRadio):
 
32905
        (khtml::RenderThemeMac::setRadioCellState):
 
32906
        (khtml::RenderThemeMac::setButtonCellState):
 
32907
        (khtml::RenderThemeMac::paintButton):
 
32908
        * khtml/xml/dom_elementimpl.cpp:
 
32909
        (ElementImpl::scrollIntoView):
 
32910
        * khtml/xml/dom_nodeimpl.cpp:
 
32911
        (DOM::NodeImpl::getRect):
 
32912
        (DOM::ContainerNodeImpl::getRect):
 
32913
        * khtml/xml/dom_nodeimpl.h:
 
32914
        * ksvg2/css/SVGRenderStyle.h:
 
32915
        * ksvg2/svg/SVGFilterElementImpl.cpp:
 
32916
        (SVGFilterElementImpl::canvasResource):
 
32917
        * ksvg2/svg/SVGFilterPrimitiveStandardAttributesImpl.cpp:
 
32918
        (SVGFilterPrimitiveStandardAttributesImpl::setStandardAttributes):
 
32919
        * ksvg2/svg/SVGLengthImpl.cpp:
 
32920
        (SVGLengthImpl::value):
 
32921
        * ksvg2/svg/SVGLocatableImpl.cpp:
 
32922
        (SVGLocatableImpl::getBBox):
 
32923
        * ksvg2/svg/SVGMaskElementImpl.cpp:
 
32924
        (KSVG::SVGMaskElementImpl::drawMaskerContent):
 
32925
        * ksvg2/svg/SVGPatternElementImpl.cpp:
 
32926
        (SVGPatternElementImpl::drawPatternContentIntoTile):
 
32927
        * ksvg2/svg/SVGSVGElementImpl.cpp:
 
32928
        (SVGSVGElementImpl::checkIntersection):
 
32929
        (SVGSVGElementImpl::checkEnclosure):
 
32930
        (SVGSVGElementImpl::createRenderer):
 
32931
        * kwq/KWQAccObject.mm:
 
32932
        (boundingBoxRect):
 
32933
        (-[KWQAccObject position]):
 
32934
        (-[KWQAccObject size]):
 
32935
        (-[KWQAccObject doAXBoundsForTextMarkerRange:]):
 
32936
        * kwq/KWQApplication.h:
 
32937
        * kwq/KWQApplication.mm:
 
32938
        (QDesktopWidget::screenGeometry):
 
32939
        (QDesktopWidget::availableGeometry):
 
32940
        * kwq/KWQComboBox.h:
 
32941
        * kwq/KWQComboBox.mm:
 
32942
        (QComboBox::frameGeometry):
 
32943
        (QComboBox::setFrameGeometry):
 
32944
        * kwq/KWQFileButton.h:
 
32945
        * kwq/KWQFileButton.mm:
 
32946
        (KWQFileButton::frameGeometry):
 
32947
        (KWQFileButton::setFrameGeometry):
 
32948
        * kwq/KWQFontMetrics.h:
 
32949
        * kwq/KWQFontMetrics.mm:
 
32950
        (QFontMetrics::selectionRectForText):
 
32951
        (QFontMetrics::boundingRect):
 
32952
        * kwq/KWQKWinModule.h:
 
32953
        * kwq/KWQKWinModule.mm:
 
32954
        (KWinModule::workArea):
 
32955
        * kwq/KWQObject.h:
 
32956
        * kwq/KWQPainter.h:
 
32957
        * kwq/KWQPainter.mm:
 
32958
        (QPainter::xForm):
 
32959
        (QPainter::drawPixmap):
 
32960
        (QPainter::fillRect):
 
32961
        (QPainter::addClip):
 
32962
        (QPainter::addRoundedRectClip):
 
32963
        * kwq/KWQPixmap.h:
 
32964
        * kwq/KWQPixmap.mm:
 
32965
        (QPixmap::setAnimationRect):
 
32966
        (QPixmap::rect):
 
32967
        * kwq/KWQRect.h: Removed.
 
32968
        * kwq/KWQRect.mm: Removed.
 
32969
        * kwq/KWQRectF.h: Removed.
 
32970
        * kwq/KWQRectF.mm: Removed.
 
32971
        * kwq/KWQRegion.cpp:
 
32972
        (QRegion::QRegion):
 
32973
        (QRegion::boundingRect):
 
32974
        * kwq/KWQRegion.h:
 
32975
        * kwq/KWQRenderTreeDebug.cpp:
 
32976
        (operator<<):
 
32977
        (write):
 
32978
        (writeLayers):
 
32979
        (externalRepresentation):
 
32980
        * kwq/KWQScrollView.h:
 
32981
        * kwq/KWQScrollView.mm:
 
32982
        (QScrollView::updateContents):
 
32983
        * kwq/KWQWMatrix.cpp:
 
32984
        (QWMatrix::mapRect):
 
32985
        * kwq/KWQWMatrix.h:
 
32986
        * kwq/KWQWidget.h:
 
32987
        * kwq/KWQWidget.mm:
 
32988
        (QWidget::resize):
 
32989
        (QWidget::move):
 
32990
        (QWidget::frameGeometry):
 
32991
        (QWidget::setFrameGeometry):
 
32992
        (QWidget::paint):
 
32993
        * kwq/KWQWindowWidget.h:
 
32994
        * kwq/KWQWindowWidget.mm:
 
32995
        (KWQWindowWidget::frameGeometry):
 
32996
        (KWQWindowWidget::setFrameGeometry):
 
32997
        * page/Frame.cpp:
 
32998
        (Frame::gotoAnchor):
 
32999
        (Frame::paintCaret):
 
33000
        (Frame::paintDragCaret):
 
33001
        (Frame::selectionRect):
 
33002
        (Frame::revealSelection):
 
33003
        (Frame::paint):
 
33004
        (Frame::adjustPageHeight):
 
33005
        (Frame::centerSelectionInVisibleArea):
 
33006
        * page/Frame.h:
 
33007
        * page/FrameView.cpp:
 
33008
        (KHTMLView::addRepaintInfo):
 
33009
        (KHTMLView::scrollTo):
 
33010
        (KHTMLView::focusNextPrevNode):
 
33011
        (KHTMLView::repaintRectangle):
 
33012
        * page/FrameView.h:
 
33013
        * platform/FloatRect.cpp: Added.
 
33014
        (WebCore::FloatRect::FloatRect):
 
33015
        (WebCore::FloatRect::isNull):
 
33016
        (WebCore::FloatRect::isValid):
 
33017
        (WebCore::FloatRect::isEmpty):
 
33018
        (WebCore::FloatRect::right):
 
33019
        (WebCore::FloatRect::bottom):
 
33020
        (WebCore::FloatRect::topLeft):
 
33021
        (WebCore::FloatRect::topRight):
 
33022
        (WebCore::FloatRect::bottomRight):
 
33023
        (WebCore::FloatRect::bottomLeft):
 
33024
        (WebCore::FloatRect::size):
 
33025
        (WebCore::FloatRect::unite):
 
33026
        (WebCore::FloatRect::normalize):
 
33027
        (WebCore::FloatRect::intersects):
 
33028
        (WebCore::FloatRect::intersect):
 
33029
        (WebCore::FloatRect::inflate):
 
33030
        (WebCore::operator==):
 
33031
        (WebCore::operator!=):
 
33032
        * platform/FloatRect.h: Added.
 
33033
        (WebCore::FloatRect::contains):
 
33034
        (WebCore::FloatRect::operator&):
 
33035
        (WebCore::enclosingIntRect):
 
33036
        * platform/IntPointArray.cpp:
 
33037
        (IntPointArray::IntPointArray):
 
33038
        (IntPointArray::boundingRect):
 
33039
        * platform/IntPointArray.h:
 
33040
        * platform/IntRect.cpp: Added.
 
33041
        (WebCore::IntRect::IntRect):
 
33042
        (WebCore::IntRect::isNull):
 
33043
        (WebCore::IntRect::isValid):
 
33044
        (WebCore::IntRect::isEmpty):
 
33045
        (WebCore::IntRect::right):
 
33046
        (WebCore::IntRect::bottom):
 
33047
        (WebCore::IntRect::topLeft):
 
33048
        (WebCore::IntRect::topRight):
 
33049
        (WebCore::IntRect::bottomRight):
 
33050
        (WebCore::IntRect::bottomLeft):
 
33051
        (WebCore::IntRect::size):
 
33052
        (WebCore::IntRect::unite):
 
33053
        (WebCore::IntRect::normalize):
 
33054
        (WebCore::IntRect::intersects):
 
33055
        (WebCore::IntRect::intersect):
 
33056
        (WebCore::IntRect::inflate):
 
33057
        (WebCore::operator==):
 
33058
        (WebCore::operator!=):
 
33059
        * platform/IntRect.h: Added.
 
33060
        (WebCore::IntRect::contains):
 
33061
        (WebCore::IntRect::operator&):
 
33062
        * platform/mac/FloatRect.mm: Added.
 
33063
        (WebCore::FloatRect::FloatRect):
 
33064
        (WebCore::FloatRect::operator NSRect):
 
33065
        (WebCore::FloatRect::operator CGRect):
 
33066
        * platform/mac/IntRect.mm: Added.
 
33067
        (WebCore::IntRect::IntRect):
 
33068
        (WebCore::IntRect::operator NSRect):
 
33069
        (WebCore::IntRect::operator CGRect):
 
33070
 
 
33071
2006-01-13  David Hyatt  <hyatt@apple.com>
 
33072
 
 
33073
        Convert QPointF to FloatPoint and move it to the platform
 
33074
        directory.
 
33075
 
 
33076
        * WebCore.xcodeproj/project.pbxproj:
 
33077
        * kcanvas/KCanvasContainer.cpp:
 
33078
        (KCanvasContainer::fillContains):
 
33079
        (KCanvasContainer::strokeContains):
 
33080
        * kcanvas/KCanvasContainer.h:
 
33081
        * kcanvas/KCanvasFilters.h:
 
33082
        (KCanvasFEConvolveMatrix::kernelUnitLength):
 
33083
        (KCanvasFEConvolveMatrix::setKernelUnitLength):
 
33084
        * kcanvas/KCanvasItem.cpp:
 
33085
        (RenderPath::fillContains):
 
33086
        (RenderPath::strokeContains):
 
33087
        * kcanvas/KCanvasItem.h:
 
33088
        * kcanvas/KCanvasTreeDebug.cpp:
 
33089
        (operator<<):
 
33090
        * kcanvas/KCanvasTreeDebug.h:
 
33091
        * kcanvas/device/KRenderingPaintServerGradient.cpp:
 
33092
        (KRenderingPaintServerLinearGradient::gradientStart):
 
33093
        (KRenderingPaintServerLinearGradient::setGradientStart):
 
33094
        (KRenderingPaintServerLinearGradient::gradientEnd):
 
33095
        (KRenderingPaintServerLinearGradient::setGradientEnd):
 
33096
        (KRenderingPaintServerRadialGradient::gradientCenter):
 
33097
        (KRenderingPaintServerRadialGradient::setGradientCenter):
 
33098
        (KRenderingPaintServerRadialGradient::gradientFocal):
 
33099
        (KRenderingPaintServerRadialGradient::setGradientFocal):
 
33100
        * kcanvas/device/KRenderingPaintServerGradient.h:
 
33101
        * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
 
33102
        (ciVector):
 
33103
        * kcanvas/device/quartz/KCanvasItemQuartz.h:
 
33104
        * kcanvas/device/quartz/KCanvasItemQuartz.mm:
 
33105
        (KCanvasItemQuartz::nodeAtPoint):
 
33106
        (KCanvasItemQuartz::hitsPath):
 
33107
        * ksvg2/svg/SVGLinearGradientElementImpl.cpp:
 
33108
        (SVGLinearGradientElementImpl::buildGradient):
 
33109
        * ksvg2/svg/SVGRadialGradientElementImpl.cpp:
 
33110
        (SVGRadialGradientElementImpl::buildGradient):
 
33111
        * kwq/KWQPointF.h: Removed.
 
33112
        * kwq/KWQPointF.mm: Removed.
 
33113
        * kwq/KWQRectF.h:
 
33114
        (QRectF::contains):
 
33115
        * kwq/KWQRectF.mm:
 
33116
        (QRectF::QRectF):
 
33117
        (QRectF::topLeft):
 
33118
        (QRectF::topRight):
 
33119
        (QRectF::bottomRight):
 
33120
        (QRectF::bottomLeft):
 
33121
        * platform/FloatPoint.cpp: Added.
 
33122
        (WebCore::FloatPoint::FloatPoint):
 
33123
        (WebCore::yCoord):
 
33124
        (WebCore::operator+):
 
33125
        (WebCore::operator-):
 
33126
        (WebCore::operator*):
 
33127
        * platform/FloatPoint.h: Added.
 
33128
        (WebCore::FloatPoint::operator -=):
 
33129
        * platform/mac/FloatPoint.mm: Added.
 
33130
        (WebCore::FloatPoint::FloatPoint):
 
33131
        (WebCore::FloatPoint::operator NSPoint):
 
33132
        (WebCore::FloatPoint::operator CGPoint):
 
33133
 
 
33134
2006-01-13  David Hyatt  <hyatt@apple.com>
 
33135
 
 
33136
        Convert QPoint and QPointArray to IntPoint and IntPointArray.
 
33137
        Factor out the Objective-C-specific logic into a .mm file
 
33138
        for IntPoint.
 
33139
        
 
33140
        * ForwardingHeaders/qpoint.h: Removed.
 
33141
        * ForwardingHeaders/qpointarray.h: Removed.
 
33142
        * WebCore.xcodeproj/project.pbxproj:
 
33143
        * bridge/mac/KWQKHTMLView.cpp:
 
33144
        (KHTMLView::viewportToGlobal):
 
33145
        * bridge/mac/KWQKPartsBrowserExtension.h:
 
33146
        * bridge/mac/MacFrame.h:
 
33147
        * bridge/mac/MacFrame.mm:
 
33148
        (MacFrame::khtmlMouseMoveEvent):
 
33149
        (MacFrame::dragSourceMovedTo):
 
33150
        (MacFrame::dragSourceEndedAt):
 
33151
        (MacFrame::dispatchDragSrcEvent):
 
33152
        * bridge/mac/WebCoreFrameBridge.mm:
 
33153
        (-[WebCoreFrameBridge elementAtPoint:]):
 
33154
        (-[WebCoreFrameBridge dragOperationForDraggingInfo:]):
 
33155
        (-[WebCoreFrameBridge dragExitedWithDraggingInfo:]):
 
33156
        (-[WebCoreFrameBridge concludeDragForDraggingInfo:]):
 
33157
        (-[WebCoreFrameBridge dragSourceMovedTo:]):
 
33158
        (-[WebCoreFrameBridge dragSourceEndedAt:operation:]):
 
33159
        * kcanvas/KCanvasItem.h:
 
33160
        * kcanvas/KCanvasTreeDebug.cpp:
 
33161
        (operator<<):
 
33162
        * kcanvas/KCanvasTreeDebug.h:
 
33163
        * kcanvas/device/KRenderingPaintServerGradient.cpp:
 
33164
        * kcanvas/device/KRenderingPaintServerPattern.h:
 
33165
        * khtml/ecma/kjs_events.cpp:
 
33166
        (KJS::ClipboardProtoFunc::callAsFunction):
 
33167
        * khtml/ecma/kjs_window.cpp:
 
33168
        (KJS::WindowFunc::callAsFunction):
 
33169
        * khtml/editing/SelectionController.cpp:
 
33170
        (khtml::SelectionController::layout):
 
33171
        (khtml::SelectionController::caretRect):
 
33172
        * khtml/editing/SelectionController.h:
 
33173
        * khtml/html/html_canvasimpl.cpp:
 
33174
        * khtml/html/html_imageimpl.cpp:
 
33175
        (DOM::HTMLAreaElementImpl::mapMouseEvent):
 
33176
        (DOM::HTMLAreaElementImpl::getRegion):
 
33177
        * khtml/rendering/render_image.cpp:
 
33178
        (RenderImage::paint):
 
33179
        * khtml/rendering/render_list.cpp:
 
33180
        (RenderListMarker::paint):
 
33181
        * khtml/rendering/render_object.cpp:
 
33182
        (RenderObject::drawBorder):
 
33183
        * khtml/xml/dom2_eventsimpl.h:
 
33184
        * ksvg2/svg/SVGPointImpl.cpp:
 
33185
        (SVGPointImpl::SVGPointImpl):
 
33186
        * ksvg2/svg/SVGPointImpl.h:
 
33187
        * ksvg2/svg/SVGSVGElementImpl.cpp:
 
33188
        (SVGSVGElementImpl::createSVGPoint):
 
33189
        * ksvg2/svg/SVGSVGElementImpl.h:
 
33190
        * kwq/KWQClipboard.h:
 
33191
        * kwq/KWQClipboard.mm:
 
33192
        (KWQClipboard::dragLocation):
 
33193
        (KWQClipboard::setDragImage):
 
33194
        (KWQClipboard::setDragImageElement):
 
33195
        * kwq/KWQCursor.h:
 
33196
        * kwq/KWQEvent.h:
 
33197
        (QMouseEvent::pos):
 
33198
        (QWheelEvent::QWheelEvent):
 
33199
        (QWheelEvent::pos):
 
33200
        (QWheelEvent::globalPos):
 
33201
        * kwq/KWQEvent.mm:
 
33202
        (positionForEvent):
 
33203
        (globalPositionForEvent):
 
33204
        * kwq/KWQPainter.h:
 
33205
        * kwq/KWQPainter.mm:
 
33206
        (QPainter::drawConvexPolygon):
 
33207
        (QPainter::drawPixmap):
 
33208
        * kwq/KWQPixmap.mm:
 
33209
        (QPixmap::rect):
 
33210
        * kwq/KWQPoint.mm: Removed.
 
33211
        * kwq/KWQPointArray.cpp: Removed.
 
33212
        * kwq/KWQPointArray.h: Removed.
 
33213
        * kwq/KWQPointF.h:
 
33214
        * kwq/KWQPointF.mm:
 
33215
        (yCoord):
 
33216
        * kwq/KWQRect.h:
 
33217
        (QRect::moveTopLeft):
 
33218
        (QRect::contains):
 
33219
        * kwq/KWQRect.mm:
 
33220
        (QRect::QRect):
 
33221
        (QRect::topLeft):
 
33222
        (QRect::topRight):
 
33223
        (QRect::bottomRight):
 
33224
        (QRect::bottomLeft):
 
33225
        * kwq/KWQRegion.cpp:
 
33226
        (QRegion::QRegion):
 
33227
        (QRegion::contains):
 
33228
        * kwq/KWQRegion.h:
 
33229
        * kwq/KWQScrollView.h:
 
33230
        * kwq/KWQScrollView.mm:
 
33231
        (QScrollView::contentsToViewport):
 
33232
        * kwq/KWQWidget.h:
 
33233
        * kwq/KWQWidget.mm:
 
33234
        (QWidget::pos):
 
33235
        (QWidget::move):
 
33236
        (QWidget::mapFromGlobal):
 
33237
        * kwq/KWQWindowWidget.h:
 
33238
        * kwq/KWQWindowWidget.mm:
 
33239
        (KWQWindowWidget::mapFromGlobal):
 
33240
        (KWQWindowWidget::viewportToGlobal):
 
33241
        * page/Frame.h:
 
33242
        * page/FramePrivate.h:
 
33243
        * page/FrameView.cpp:
 
33244
        (KHTMLView::dispatchDragEvent):
 
33245
        (KHTMLView::updateDragAndDrop):
 
33246
        (KHTMLView::cancelDragAndDrop):
 
33247
        (KHTMLView::performDragAndDrop):
 
33248
        * page/FrameView.h:
 
33249
        * platform/IntPoint.cpp: Added.
 
33250
        (WebCore::IntPoint::IntPoint):
 
33251
        (WebCore::operator+):
 
33252
        (WebCore::operator-):
 
33253
        (WebCore::operator*):
 
33254
        * platform/IntPoint.h: Added.
 
33255
        (WebCore::IntPoint::x):
 
33256
        (WebCore::IntPoint::y):
 
33257
        (WebCore::IntPoint::setX):
 
33258
        (WebCore::IntPoint::setY):
 
33259
        (WebCore::IntPoint::isNull):
 
33260
        (WebCore::IntPoint::operator -=):
 
33261
        * platform/IntPointArray.cpp: Added.
 
33262
        (IntPointArray::IntPointArray):
 
33263
        (IntPointArray::copy):
 
33264
        (IntPointArray::boundingRect):
 
33265
        (IntPointArray::point):
 
33266
        (IntPointArray::setPoint):
 
33267
        (IntPointArray::setPoints):
 
33268
        * platform/IntPointArray.h: Added.
 
33269
        (WebCore::IntPointArray::IntPointArray):
 
33270
 
 
33271
2006-01-13  David Hyatt  <hyatt@apple.com>
 
33272
        
 
33273
        Convert QSizeF to FloatSize and move it to the platform
 
33274
        directory.
 
33275
        
 
33276
        * WebCore.xcodeproj/project.pbxproj:
 
33277
        * kcanvas/KCanvasFilters.h:
 
33278
        (KCanvasFEConvolveMatrix::kernelSize):
 
33279
        (KCanvasFEConvolveMatrix::setKernelSize):
 
33280
        (KCanvasFEConvolveMatrix::targetOffset):
 
33281
        (KCanvasFEConvolveMatrix::setTargetOffset):
 
33282
        * kcanvas/KCanvasTreeDebug.cpp:
 
33283
        (operator<<):
 
33284
        * kcanvas/KCanvasTreeDebug.h:
 
33285
        * kwq/KWQRectF.h:
 
33286
        * kwq/KWQRectF.mm:
 
33287
        (QRectF::QRectF):
 
33288
        (QRectF::size):
 
33289
        * kwq/KWQSizeF.h: Removed.
 
33290
        * kwq/KWQSizeF.mm: Removed.
 
33291
        * platform/FloatSize.cpp: Added.
 
33292
        (FloatSize::FloatSize):
 
33293
        (FloatSize::isValid):
 
33294
        (FloatSize::expandedTo):
 
33295
        (operator+):
 
33296
        (operator==):
 
33297
        (operator!=):
 
33298
        * platform/FloatSize.h: Added.
 
33299
        * platform/mac/FloatSize.mm: Added.
 
33300
        (FloatSize::FloatSize):
 
33301
        (FloatSize::operator NSSize):
 
33302
        (FloatSize::operator CGSize):
 
33303
 
 
33304
2006-01-13  David Hyatt  <hyatt@apple.com>
 
33305
 
 
33306
        Fix build bustage from QSize -> IntSize change.
 
33307
        
 
33308
        Reviewed by darin
 
33309
 
 
33310
        * kwq/KWQObject.h:
 
33311
        * kwq/KWQSizeF.h:
 
33312
 
 
33313
2006-01-13  David Hyatt  <hyatt@apple.com>
 
33314
 
 
33315
        Eliminate QSize and add the new class IntSize in the
 
33316
        platform subdirectory.  Factor out the Objective-C portion
 
33317
        of IntSize into a platform-specific IntSize.mm that resides
 
33318
        in the mac subdirectory.
 
33319
 
 
33320
        Win32 can just compile IntSize.cpp and doesn't need any
 
33321
        platform-specific extension here.
 
33322
        
 
33323
        Reviewed by darin
 
33324
 
 
33325
        * WebCore.xcodeproj/project.pbxproj:
 
33326
        * kcanvas/KCanvasImage.h:
 
33327
        * kcanvas/device/quartz/KCanvasResourcesQuartz.h:
 
33328
        (KCanvasImageQuartz::init):
 
33329
        (KCanvasImageQuartz::size):
 
33330
        * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
 
33331
        (KRenderingDeviceQuartz::contextForImage):
 
33332
        * khtml/css/cssstyleselector.cpp:
 
33333
        (khtml::CSSStyleSelector::applyProperty):
 
33334
        * khtml/ecma/kjs_html.cpp:
 
33335
        (KJS::Image::getValueProperty):
 
33336
        * khtml/ecma/kjs_window.cpp:
 
33337
        (KJS::WindowFunc::callAsFunction):
 
33338
        * khtml/misc/CachedImage.cpp:
 
33339
        (khtml::CachedImage::pixmap_size):
 
33340
        (khtml::CachedImage::data):
 
33341
        * khtml/misc/CachedImage.h:
 
33342
        * khtml/misc/CachedImageCallback.cpp:
 
33343
        (khtml::CachedImageCallback::notifyUpdate):
 
33344
        (khtml::CachedImageCallback::notifyFinished):
 
33345
        * khtml/rendering/render_applet.cpp:
 
33346
        (RenderApplet::createWidgetIfNecessary):
 
33347
        * khtml/rendering/render_form.cpp:
 
33348
        (RenderLineEdit::calcMinMaxWidth):
 
33349
        (RenderFileButton::calcMinMaxWidth):
 
33350
        (RenderSelect::layout):
 
33351
        (RenderTextArea::calcMinMaxWidth):
 
33352
        (RenderSlider::calcMinMaxWidth):
 
33353
        * khtml/rendering/render_image.cpp:
 
33354
        (RenderImage::paint):
 
33355
        * khtml/rendering/render_object.cpp:
 
33356
        (RenderObject::paintBorder):
 
33357
        * khtml/rendering/render_style.h:
 
33358
        (khtml::RenderStyle::borderTopLeftRadius):
 
33359
        (khtml::RenderStyle::borderTopRightRadius):
 
33360
        (khtml::RenderStyle::borderBottomLeftRadius):
 
33361
        (khtml::RenderStyle::borderBottomRightRadius):
 
33362
        (khtml::RenderStyle::setBorderTopLeftRadius):
 
33363
        (khtml::RenderStyle::setBorderTopRightRadius):
 
33364
        (khtml::RenderStyle::setBorderBottomLeftRadius):
 
33365
        (khtml::RenderStyle::setBorderBottomRightRadius):
 
33366
        (khtml::RenderStyle::setBorderRadius):
 
33367
        (khtml::RenderStyle::initialBorderRadius):
 
33368
        * khtml/rendering/render_theme_mac.h:
 
33369
        * khtml/rendering/render_theme_mac.mm:
 
33370
        (khtml::RenderThemeMac::inflateRect):
 
33371
        (khtml::RenderThemeMac::setControlSize):
 
33372
        (khtml::RenderThemeMac::sizeForFont):
 
33373
        (khtml::RenderThemeMac::setSizeFromFont):
 
33374
        (khtml::RenderThemeMac::checkboxSizes):
 
33375
        (khtml::RenderThemeMac::setCheckboxCellState):
 
33376
        (khtml::RenderThemeMac::radioSizes):
 
33377
        (khtml::RenderThemeMac::setRadioCellState):
 
33378
        (khtml::RenderThemeMac::buttonSizes):
 
33379
        (khtml::RenderThemeMac::setButtonCellState):
 
33380
        (khtml::RenderThemeMac::paintButton):
 
33381
        * ksvg2/svg/SVGMaskElementImpl.cpp:
 
33382
        (KSVG::SVGMaskElementImpl::attributeChanged):
 
33383
        (KSVG::SVGMaskElementImpl::drawMaskerContent):
 
33384
        * ksvg2/svg/SVGPatternElementImpl.cpp:
 
33385
        (SVGPatternElementImpl::drawPatternContentIntoTile):
 
33386
        (SVGPatternElementImpl::notifyAttributeChange):
 
33387
        * ksvg2/svg/SVGPatternElementImpl.h:
 
33388
        * kwq/KWQComboBox.h:
 
33389
        * kwq/KWQComboBox.mm:
 
33390
        (QComboBox::sizeHint):
 
33391
        * kwq/KWQFileButton.h:
 
33392
        * kwq/KWQFileButton.mm:
 
33393
        (KWQFileButton::sizeForCharacterWidth):
 
33394
        * kwq/KWQFontMetrics.h:
 
33395
        * kwq/KWQFontMetrics.mm:
 
33396
        (QFontMetrics::size):
 
33397
        * kwq/KWQKJavaAppletWidget.h:
 
33398
        * kwq/KWQKJavaAppletWidget.mm:
 
33399
        (KJavaAppletWidget::KJavaAppletWidget):
 
33400
        * kwq/KWQLineEdit.h:
 
33401
        * kwq/KWQLineEdit.mm:
 
33402
        (QLineEdit::sizeForCharacterWidth):
 
33403
        * kwq/KWQListBox.h:
 
33404
        * kwq/KWQListBox.mm:
 
33405
        (QListBox::sizeForNumberOfLines):
 
33406
        * kwq/KWQObject.h:
 
33407
        * kwq/KWQPainter.h:
 
33408
        * kwq/KWQPainter.mm:
 
33409
        (QPainter::addRoundedRectClip):
 
33410
        * kwq/KWQPixmap.h:
 
33411
        * kwq/KWQPixmap.mm:
 
33412
        (QPixmap::QPixmap):
 
33413
        (QPixmap::size):
 
33414
        (QPixmap::resize):
 
33415
        * kwq/KWQRect.h:
 
33416
        * kwq/KWQRect.mm:
 
33417
        (QRect::QRect):
 
33418
        (QRect::size):
 
33419
        * kwq/KWQSize.h: Removed.
 
33420
        * kwq/KWQSize.mm: Removed.
 
33421
        * kwq/KWQSizeF.h:
 
33422
        * kwq/KWQSizeF.mm:
 
33423
        (QSizeF::QSizeF):
 
33424
        * kwq/KWQSlider.h:
 
33425
        * kwq/KWQSlider.mm:
 
33426
        (QSlider::sizeHint):
 
33427
        * kwq/KWQStyle.cpp:
 
33428
        (QStyle::sizeFromContents):
 
33429
        * kwq/KWQStyle.h:
 
33430
        * kwq/KWQTextEdit.h:
 
33431
        * kwq/KWQTextEdit.mm:
 
33432
        (QTextEdit::sizeWithColumnsAndRows):
 
33433
        * kwq/KWQWidget.h:
 
33434
        * kwq/KWQWidget.mm:
 
33435
        (QWidget::sizeHint):
 
33436
        (QWidget::size):
 
33437
        (QWidget::resize):
 
33438
        * kwq/KWQWindowWidget.h:
 
33439
        * kwq/KWQWindowWidget.mm:
 
33440
        (KWQWindowWidget::sizeHint):
 
33441
        * platform: Added.
 
33442
        * platform/IntSize.cpp: Added.
 
33443
        (WebCore::IntSize::IntSize):
 
33444
        (WebCore::IntSize::isValid):
 
33445
        (WebCore::IntSize::expandedTo):
 
33446
        (WebCore::operator+):
 
33447
        (WebCore::operator==):
 
33448
        (WebCore::operator!=):
 
33449
        * platform/IntSize.h: Added.
 
33450
        * platform/mac: Added.
 
33451
        * platform/mac/IntSize.mm: Added.
 
33452
        (WebCore::IntSize::IntSize):
 
33453
        (WebCore::IntSize::operator NSSize):
 
33454
        (WebCore::IntSize::operator CGSize):
 
33455
 
 
33456
2006-01-13  Maks Orlovich <maksim@kde.org>
 
33457
 
 
33458
        Reviewed, redone a bit, and landed by Darin (help from Eric too).
 
33459
 
 
33460
        - fix http://bugs.webkit.org/show_bug.cgi?id=4586
 
33461
          rowIndex calculation doesn't consider head to come before body.
 
33462
 
 
33463
        Test: fast/table/rowindex.html
 
33464
 
 
33465
        * khtml/html/html_tableimpl.cpp: (DOM::HTMLTableRowElementImpl::rowIndex):
 
33466
        Change algorithm so the rows are numbered in this order: (a) all rows in the
 
33467
        table header section, (b) all rows in all table body sections, (c) all rows
 
33468
        in the table footer section. Rows in extra table header or footer sections
 
33469
        don't get row numbers (rowIndex returns -1). This matches Firefox.
 
33470
 
 
33471
2006-01-13  Mark Rowe  <opendarwin.org@bdash.net.nz>
 
33472
 
 
33473
        Reviewed, tweaked, and landed by Darin.
 
33474
 
 
33475
        - fix http://bugs.webkit.org/show_bug.cgi?id=6509
 
33476
          content property with supported value followed by currently unsupported open-quote displays duplicated content
 
33477
 
 
33478
        Test: fast/css-generated-content/no-openclose-quote.html
 
33479
 
 
33480
        * khtml/css/cssparser.cpp: (CSSParser::parseContent): Make sure parsedValue
 
33481
        is always initialized to 0 (in particular for the CSS_IDENT case which is
 
33482
        currently unimplemented).
 
33483
 
 
33484
2006-01-13  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
33485
 
 
33486
        Reviewed and landed by Darin.
 
33487
        
 
33488
        - fix http://bugs.webkit.org/show_bug.cgi?id=6418
 
33489
          Incorrect scrollbar when using overflow:auto and word-wrap:break-word; in some cases
 
33490
        
 
33491
        Test: fast/text/basic/015.html
 
33492
 
 
33493
        * khtml/rendering/bidi.cpp:
 
33494
        (khtml::RenderBlock::findNextLineBreak):
 
33495
        Avoid inconsistent width measurement when breaking in the middle of a
 
33496
        word is allowed. Eliminate the relaxation by 1 of the width overflow
 
33497
        check that was supposed to compensate for the inconsistency but didn't
 
33498
        always work, and on the other hand sometimes resulted in allowing text
 
33499
        to overflow its container by one pixel.
 
33500
        Also applied start and end width correctly in the break-words case.
 
33501
 
 
33502
2006-01-12  Maciej Stachowiak  <mjs@apple.com>
 
33503
 
 
33504
        Rubber stamped by Eric.
 
33505
 
 
33506
        - rename WebCoreBridge to WebCoreFrameBridge
 
33507
 
 
33508
        * WebCore.exp:
 
33509
        * WebCore.xcodeproj/project.pbxproj:
 
33510
        * bridge/mac/KWQKHTMLPartBrowserExtension.mm:
 
33511
        (KHTMLPartBrowserExtension::createNewWindow):
 
33512
        * bridge/mac/MacFrame.h:
 
33513
        (MacFrame::bridge):
 
33514
        * bridge/mac/MacFrame.mm:
 
33515
        (MacFrame::submitForm):
 
33516
        (MacFrame::createPart):
 
33517
        (MacFrame::bridgeForWidget):
 
33518
        (MacFrame::documentViewForNode):
 
33519
        (MacFrame::setBridge):
 
33520
        * bridge/mac/WebCoreBridge.h: Removed.
 
33521
        * bridge/mac/WebCoreBridge.mm: Removed.
 
33522
        * bridge/mac/WebCoreFrameBridge.h: Added.
 
33523
        * bridge/mac/WebCoreFrameBridge.mm: Added.
 
33524
        (-[WebCoreFrameBridge executionContextForView:]):
 
33525
        (frameHasSelection):
 
33526
        (-[WebCoreFrameBridge firstChild]):
 
33527
        (-[WebCoreFrameBridge lastChild]):
 
33528
        (-[WebCoreFrameBridge previousSibling]):
 
33529
        (-[WebCoreFrameBridge nextSibling]):
 
33530
        (-[WebCoreFrameBridge isDescendantOfFrame:]):
 
33531
        (-[WebCoreFrameBridge traverseNextFrameStayWithin:]):
 
33532
        (-[WebCoreFrameBridge appendChild:]):
 
33533
        (-[WebCoreFrameBridge removeChild:]):
 
33534
        (-[WebCoreFrameBridge childFrameNamed:]):
 
33535
        (-[WebCoreFrameBridge _deepLastChildFrame]):
 
33536
        (-[WebCoreFrameBridge nextFrameWithWrap:]):
 
33537
        (-[WebCoreFrameBridge previousFrameWithWrap:]):
 
33538
        (-[WebCoreFrameBridge _shouldAllowAccessFrom:]):
 
33539
        (-[WebCoreFrameBridge _descendantFrameNamed:sourceFrame:]):
 
33540
        (-[WebCoreFrameBridge _frameInAnyWindowNamed:sourceFrame:]):
 
33541
        (-[WebCoreFrameBridge findFrameNamed:]):
 
33542
        (+[WebCoreFrameBridge bridgeForDOMDocument:]):
 
33543
        (-[WebCoreFrameBridge setParent:]):
 
33544
        (-[WebCoreFrameBridge parent]):
 
33545
        (nowPrinting):
 
33546
        (-[WebCoreFrameBridge opener]):
 
33547
        (-[WebCoreFrameBridge setOpener:]):
 
33548
        (+[WebCoreFrameBridge stringWithData:textEncodingName:]):
 
33549
        * kwq/KWQAccObject.mm:
 
33550
        (-[KWQAccObject rendererForView:]):
 
33551
        * kwq/KWQComboBox.mm:
 
33552
        (-[KWQPopUpButtonCell trackMouse:inRect:ofView:untilMouseUp:]):
 
33553
        * kwq/KWQFileButton.mm:
 
33554
        (KWQFileButton::focusPolicy):
 
33555
        * kwq/KWQFrame.mm:
 
33556
        * kwq/KWQKJavaAppletWidget.mm:
 
33557
        * kwq/KWQLineEdit.mm:
 
33558
        * kwq/KWQListBox.mm:
 
33559
        (-[KWQTableView keyDown:]):
 
33560
        (-[KWQTableView keyUp:]):
 
33561
        * kwq/KWQLoader.mm:
 
33562
        (KWQServeRequest):
 
33563
        (KWQServeSynchronousRequest):
 
33564
        (KWQCheckCacheObjectStatus):
 
33565
        (KWQCacheObjectExpiresTime):
 
33566
        * kwq/KWQSlider.mm:
 
33567
        (QSlider::focusPolicy):
 
33568
        * kwq/KWQTextArea.mm:
 
33569
        (-[KWQTextAreaTextView textDidChange:]):
 
33570
        (-[KWQTextAreaTextView _trackResizeFromMouseDown:]):
 
33571
        (-[KWQTextAreaTextView keyDown:]):
 
33572
        (-[KWQTextAreaTextView keyUp:]):
 
33573
        * kwq/KWQTextField.mm:
 
33574
        (-[KWQTextFieldController controlTextDidBeginEditing:]):
 
33575
        (-[KWQTextFieldController controlTextDidEndEditing:]):
 
33576
        (-[KWQTextFieldController controlTextDidChange:]):
 
33577
        (-[KWQTextFieldController control:textView:doCommandBySelector:]):
 
33578
        (-[KWQTextFieldController textView:shouldHandleEvent:]):
 
33579
        * kwq/KWQWidget.mm:
 
33580
        (QWidget::setFocus):
 
33581
        * kwq/KWQWindowWidget.h:
 
33582
        * kwq/KWQWindowWidget.mm:
 
33583
        (KWQWindowWidget::KWQWindowWidget):
 
33584
        * kwq/WebCoreFrameNamespaces.h:
 
33585
        * kwq/WebCoreFrameNamespaces.m:
 
33586
        (+[WebCoreFrameNamespaces addFrame:toNamespace:]):
 
33587
        * kwq/WebCoreFrameView.h:
 
33588
        * kwq/WebCoreSettings.mm:
 
33589
        * kwq/WebCoreTextRendererFactory.mm:
 
33590
        * kwq/WebCoreViewFactory.h:
 
33591
 
 
33592
2006-01-13  Darin Adler  <darin@apple.com>
 
33593
 
 
33594
        - Replaced tabs with spaces in source files that had less than 10 lines with tabs.
 
33595
        - Set allow-tabs Subversion property in source files that have more than 10 lines with tabs.
 
33596
 
 
33597
2006-01-13  Eric Seidel  <eseidel@apple.com>
 
33598
 
 
33599
        Reviewed by mjs.
 
33600
 
 
33601
        Remove CG dependencies from kcanvas/device/quartz
 
33602
        http://bugs.webkit.org/show_bug.cgi?id=6521
 
33603
        Adding file omitted from last commit.
 
33604
 
 
33605
        * kcanvas/RenderSVGImage.cpp:
 
33606
        (RenderSVGImage::paint): removed cg calls
 
33607
 
 
33608
2006-01-13  Eric Seidel  <eseidel@apple.com>
 
33609
 
 
33610
        Reviewed by mjs.
 
33611
 
 
33612
        Remove CG dependencies from kcanvas/device/quartz
 
33613
        http://bugs.webkit.org/show_bug.cgi?id=6521
 
33614
 
 
33615
        * kcanvas/KCanvasFilters.h:
 
33616
        * kcanvas/KCanvasResources.h:
 
33617
        * kcanvas/device/KRenderingDevice.h:
 
33618
        * kcanvas/device/quartz/KCanvasFilterQuartz.h:
 
33619
        * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
 
33620
        (KCanvasFilterQuartz::prepareFilter): removed parameter
 
33621
        (KCanvasFilterQuartz::applyFilter): removed parameter
 
33622
        * kcanvas/device/quartz/KCanvasItemQuartz.h:
 
33623
        * kcanvas/device/quartz/KCanvasItemQuartz.mm:
 
33624
        (KCanvasItemQuartz::drawMarkersIfNeeded): removed cg call
 
33625
        (KCanvasItemQuartz::paint): removed cg calls
 
33626
        (getSharedContext): spacing
 
33627
        * kcanvas/device/quartz/KCanvasMaskerQuartz.h:
 
33628
        * kcanvas/device/quartz/KCanvasMaskerQuartz.mm:
 
33629
        (KCanvasMaskerQuartz::applyMask): removed parameter
 
33630
        * kcanvas/device/quartz/KCanvasResourcesQuartz.h:
 
33631
        (KCanvasClipperQuartz::KCanvasClipperQuartz):
 
33632
        (KCanvasImageQuartz::KCanvasImageQuartz):
 
33633
        * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
 
33634
        (KCanvasContainerQuartz::paint): removed CG calls
 
33635
        (KCanvasClipperQuartz::applyClip): removed parameter
 
33636
        (KCanvasImageQuartz::~KCanvasImageQuartz):
 
33637
        (KCanvasImageQuartz::cgLayer): spacing
 
33638
        (KCanvasImageQuartz::setCGLayer): spacing
 
33639
        * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
 
33640
        * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
 
33641
        (KRenderingDeviceContextQuartz::clearPath): added.
 
33642
        (KRenderingDeviceContextQuartz::addPath): added.
 
33643
        (KRenderingDeviceQuartz::quartzContext): spacing
 
33644
 
 
33645
2006-01-13  Darin Adler  <darin@apple.com>
 
33646
 
 
33647
        Reviewed by Hyatt.
 
33648
 
 
33649
        - fix http://bugs.webkit.org/show_bug.cgi?id=6508
 
33650
          retire APPLE_CHANGES
 
33651
 
 
33652
        * WebCore.vcproj/WebCore/WebCore.vcproj: Don't set APPLE_CHANGES or
 
33653
        HAVE_CONFIG_H any more.
 
33654
 
 
33655
        * WebCore.xcodeproj/project.pbxproj: Don't set APPLE_CHANGES or
 
33656
        KHTML_NO_CPLUSPLUS_DOM any more.
 
33657
 
 
33658
        * kcanvas/KCanvasFilters.h:
 
33659
        Use __APPLE__ instead of APPLE_CHANGES.
 
33660
 
 
33661
        * bridge/mac/MacFrame.mm: (MacFrame::respondToChangedContents):
 
33662
        * kcanvas/KCanvasTreeDebug.cpp:
 
33663
        * ksvg2/svg/SVGAElementImpl.cpp: (SVGAElementImpl::defaultEventHandler):
 
33664
        * ksvg2/svg/SVGElementImpl.h: (KSVG::svg_dynamic_cast):
 
33665
        * ksvg2/svg/SVGScriptElementImpl.cpp: (SVGScriptElementImpl::executeScript):
 
33666
        * page/Frame.cpp: (Frame::paint):
 
33667
        Make some APPLE_CHANGES code unconditional.
 
33668
 
 
33669
        * WebCore+SVG/kdom.h:
 
33670
        * ksvg2/ecma/Ecma.cpp: (Ecma::setupDocument):
 
33671
        * ksvg2/svg/SVGCursorElementImpl.cpp:
 
33672
        * ksvg2/svg/SVGImageElementImpl.cpp:
 
33673
        Remove some !APPLE_CHANGES code.
 
33674
 
 
33675
        * ksvg2/svg/SVGDocumentImpl.h:
 
33676
        Remove some unneeded APPLE_CHANGES code.
 
33677
 
 
33678
        * khtml/rendering/render_flexbox.cpp: (khtml::RenderFlexibleBox::layoutVerticalBox):
 
33679
        Remove a misleading mention of APPLE_CHANGES in a comment.
 
33680
 
 
33681
        Also changed tabs to spaces in files I am committing.
 
33682
 
 
33683
2006-01-12  David Hyatt <hyatt@apple.com>
 
33684
 
 
33685
        Get the misc directory compiling on Win32.
 
33686
 
 
33687
        * ForwardingHeaders/kio/jobclasses.h:
 
33688
        * ForwardingHeaders/qasyncio.h:
 
33689
        * WebCore.vcproj/WebCore/WebCore.vcproj:
 
33690
        * khtml/misc/CachedImage.cpp:
 
33691
        (khtml::CachedImage::data):
 
33692
        * khtml/misc/decoder.cpp:
 
33693
        (KanjiCode::):
 
33694
 
 
33695
2006-01-12  David Hyatt <hyatt@apple.com>
 
33696
 
 
33697
        Make the ecma directory compile on Win32.
 
33698
 
 
33699
        * ForwardingHeaders/kconfig.h:
 
33700
        * ForwardingHeaders/kwinmodule.h:
 
33701
        * ForwardingHeaders/qguardedptr.h:
 
33702
        * ForwardingHeaders/qstylesheet.h:
 
33703
        * WebCore.vcproj/WebCore/WebCore.vcproj:
 
33704
        * WebCore.vcproj/WebCore/build-generated-files.sh:
 
33705
        * khtml/ecma/XSLTProcessor.cpp:
 
33706
        * khtml/ecma/kjs_binding.cpp:
 
33707
        (KJS::ScriptInterpreter::createLanguageInstanceForValue):
 
33708
        * khtml/ecma/kjs_css.h:
 
33709
        * khtml/ecma/kjs_dom.cpp:
 
33710
        (KJS::getRuntimeObject):
 
33711
        * khtml/ecma/kjs_html.cpp:
 
33712
        (KJS::KJS::Context2DFunction::callAsFunction):
 
33713
        (KJS::Context2D::setShadow):
 
33714
        (KJS::Context2D::updateFillImagePattern):
 
33715
        (KJS::Context2D::updateStrokeImagePattern):
 
33716
        (KJS::Context2D::putValueProperty):
 
33717
        (KJS::Gradient::commonInit):
 
33718
        (KJS::Gradient::~Gradient):
 
33719
        (KJS::_rh):
 
33720
        * khtml/ecma/kjs_html.h:
 
33721
        * khtml/ecma/kjs_window.cpp:
 
33722
        (KJS::intFeature):
 
33723
 
 
33724
2006-01-12  Maciej Stachowiak  <mjs@apple.com>
 
33725
 
 
33726
        Reviewed by Dave Hyatt.
 
33727
 
 
33728
        - removed leftover files from form split, fix remaining include of the header.
 
33729
 
 
33730
        * khtml/html/html_formimpl.cpp: Removed.
 
33731
        * khtml/html/html_formimpl.h: Removed.
 
33732
        * page/Frame.cpp:
 
33733
 
 
33734
2006-01-12  David Hyatt <hyatt@apple.com>
 
33735
 
 
33736
        Make the editing directory compile on Win32.
 
33737
 
 
33738
        * WebCore.vcproj/WebCore/WebCore.vcproj:
 
33739
        * khtml/editing/jsediting.cpp:
 
33740
 
 
33741
2006-01-12  David Hyatt <hyatt@apple.com>
 
33742
 
 
33743
        Get the HTML, XML, and Rendering directories compiling on
 
33744
        Win32.  Add the bash script for generated files as well.
 
33745
 
 
33746
        * ForwardingHeaders/kio/job.h:
 
33747
        * ForwardingHeaders/ksslkeygen.h:
 
33748
        * ForwardingHeaders/qpoint.h:
 
33749
        * ForwardingHeaders/qpointarray.h:
 
33750
        * ForwardingHeaders/qtextstream.h:
 
33751
        * WebCore.vcproj/WebCore/WebCore.vcproj:
 
33752
        * khtml/html/HTMLSelectElementImpl.cpp:
 
33753
        (DOM::HTMLSelectElementImpl::state):
 
33754
        * khtml/html/html_canvasimpl.cpp:
 
33755
        (HTMLCanvasElementImpl::createRenderer):
 
33756
        * khtml/html/html_imageimpl.h:
 
33757
        (DOM::):
 
33758
        * khtml/rendering/render_object.h:
 
33759
        * khtml/xml/DocumentImpl.cpp:
 
33760
        (DocumentImpl::detach):
 
33761
        (DocumentImpl::getAccObjectCache):
 
33762
        (DocumentImpl::updateSelection):
 
33763
        (DocumentImpl::implicitClose):
 
33764
        (DocumentImpl::setFocusNode):
 
33765
        * kwq/KWQAccObjectCache.h:
 
33766
        * kwq/KWQKJobClasses.h:
 
33767
 
 
33768
2006-01-12  Anders Carlsson  <andersca@mac.com>
 
33769
 
 
33770
        Reviewed by Darin.
 
33771
 
 
33772
        - fix http://bugs.webkit.org/show_bug.cgi?id=5153
 
33773
        deleteRule and insertRule do not work
 
33774
        
 
33775
        This also makes updating the disabled flag on style sheets work.
 
33776
        It also adds the IE-only removeRule which is the counterpart to
 
33777
        the already existing addRule.
 
33778
        
 
33779
        * khtml/css/css_stylesheetimpl.cpp:
 
33780
        (CSSStyleSheetImpl::insertRule):
 
33781
        (CSSStyleSheetImpl::deleteRule):
 
33782
        Call styleSheetChanged()
 
33783
        
 
33784
        (CSSStyleSheetImpl::styleSheetChanged):
 
33785
        Call DocumentImpl::updateStyleSelector()
 
33786
        
 
33787
        * khtml/css/css_stylesheetimpl.h:        
 
33788
        (DOM::StyleSheetImpl::setDisabled):
 
33789
        Call styleSheetChanged();
 
33790
        
 
33791
        (DOM::StyleSheetImpl::styleSheetChanged):
 
33792
        New function.
 
33793
        
 
33794
        (DOM::CSSStyleSheetImpl::removeRule):
 
33795
        New IE extension function, simply calls deleteRule.
 
33796
        
 
33797
        * khtml/css/cssstyleselector.cpp:
 
33798
        (khtml::CSSStyleSelector::CSSStyleSelector):
 
33799
        Ignore disabled style sheets.
 
33800
        
 
33801
        * khtml/ecma/kjs_css.cpp:
 
33802
        (KJS::DOMCSSStyleSheetProtoFunc::callAsFunction):
 
33803
        * khtml/ecma/kjs_css.h:
 
33804
        (KJS::DOMCSSStyleSheet::):
 
33805
        Add removeRule.
 
33806
 
 
33807
2006-01-12  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
33808
 
 
33809
        Reviewed and landed by Darin.
 
33810
        
 
33811
        Test: fast/css/rtl-ordering.html
 
33812
        
 
33813
        - fix http://bugs.webkit.org/show_bug.cgi?id=6334
 
33814
          REGRESSION: <input type="button"> text is reversed on "visual Hebrew" pages
 
33815
 
 
33816
        * khtml/css/cssparser.cpp: (CSSParser::parseValue): Parse the new -khtml-rtl-ordering property.
 
33817
        * khtml/css/cssproperties.in: Added -khtml-rtl-ordering property.
 
33818
        * khtml/css/cssstyleselector.cpp: (CSSStyleSelector::applyProperty): Apply the new property.
 
33819
        * khtml/css/cssvalues.in: Added "logical" and "visual" values for the -khtml-rtl-ordering property.
 
33820
        * khtml/css/html4.css: Force logical ordering in input-buttons.
 
33821
        * khtml/css/makeprop: Fixed maximum property length computation.
 
33822
        * khtml/rendering/render_style.h: Added initial value for visuallyOrdered.
 
33823
        * ksvg2/scripts/cssmakeprops: Ensure no overlap between KHTML and SVG CSS properties.
 
33824
        * ksvg2/scripts/cssmakevalues: Ensure no overlap between KHTML and SVG CSS values.
 
33825
 
 
33826
2006-01-12  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
33827
 
 
33828
        Reviewed and landed by Darin.
 
33829
 
 
33830
        - fix http://bugs.webkit.org/show_bug.cgi?id=6219
 
33831
          Perf regression: -[NSImage initWithData:] called repeatedly while
 
33832
          moving the cursor over an image
 
33833
 
 
33834
        * khtml/rendering/render_image.h: (khtml::RenderImage::pixmap):
 
33835
        Return a const QPixmap&.
 
33836
        * kwq/WebCoreBridge.mm: (-[WebCoreBridge elementAtPoint:]):
 
33837
        Avoid copying the QPixmap and its renderer.
 
33838
 
 
33839
2006-01-12  Justin Haygood  <justin@xiondigital.net>
 
33840
 
 
33841
        Reviewed, tweaked, and landed by Darin.
 
33842
 
 
33843
        - fix http://bugs.webkit.org/show_bug.cgi?id=6497
 
33844
          Use #include, not #import, in KWQ C++ files
 
33845
 
 
33846
        * bridge/mac/KWQKHTMLView.cpp:
 
33847
        * kcanvas/RenderSVGText.cpp:
 
33848
        * khtml/css/css_computedstyle.cpp:
 
33849
        * kwq/KWQArrayImpl.cpp:
 
33850
        * kwq/KWQBuffer.cpp:
 
33851
        * kwq/KWQCString.cpp:
 
33852
        * kwq/KWQCharsets.cpp:
 
33853
        * kwq/KWQDateTime.cpp:
 
33854
        * kwq/KWQDictImpl.cpp:
 
33855
        * kwq/KWQGuardedPtr.cpp:
 
33856
        * kwq/KWQKHTMLFactory.cpp:
 
33857
        * kwq/KWQKPartsEvent.cpp:
 
33858
        * kwq/KWQListImpl.cpp:
 
33859
        * kwq/KWQMapImpl.cpp:
 
33860
        * kwq/KWQObject.cpp:
 
33861
        * kwq/KWQPen.cpp:
 
33862
        * kwq/KWQPointArray.cpp:
 
33863
        * kwq/KWQPtrDictImpl.cpp:
 
33864
        * kwq/KWQRegion.cpp:
 
33865
        * kwq/KWQStyle.cpp:
 
33866
        * kwq/KWQTextCodec.cpp:
 
33867
        * kwq/KWQTextStream.cpp:
 
33868
        * kwq/KWQTimer.cpp:
 
33869
        * kwq/KWQValueListImpl.cpp:
 
33870
        * kwq/KWQVariant.cpp:
 
33871
        * kwq/KWQVectorImpl.cpp:
 
33872
        * kwq/KWQWMatrix.cpp:
 
33873
        Replaced #import with #include.
 
33874
 
 
33875
        * kwq/KWQRegExp.cpp: Replaced #import with #include.
 
33876
        Also changed <JavaScriptCore/pcre.h> to <pcre/pcre.h>.
 
33877
        * ForwardingHeaders/pcre: Added.
 
33878
        * ForwardingHeaders/pcre/pcre.h: Added.
 
33879
 
 
33880
2006-01-12  Eric Seidel  <eseidel@apple.com>
 
33881
 
 
33882
        Reviewed by anders & mjs.
 
33883
 
 
33884
        Split dom_docimpl.* out into separate files (one per class):
 
33885
        http://bugs.webkit.org/show_bug.cgi?id=6502
 
33886
 
 
33887
        * ForwardingHeaders/kdom/core/DOMImplementationImpl.h: Removed.
 
33888
        * ForwardingHeaders/kdom/core/DocumentImpl.h: Removed.
 
33889
        * ForwardingHeaders/kdom/core/DocumentTypeImpl.h: Removed.
 
33890
        * WebCore.xcodeproj/project.pbxproj:
 
33891
        * bridge/mac/WebCoreBridge.mm:
 
33892
        * kcanvas/KCanvasResources.cpp:
 
33893
        * kcanvas/RenderSVGText.h:
 
33894
        * khtml/css/css_base.cpp:
 
33895
        * khtml/css/css_computedstyle.cpp:
 
33896
        * khtml/css/css_ruleimpl.cpp:
 
33897
        * khtml/css/css_valueimpl.cpp:
 
33898
        * khtml/css/cssparser.cpp:
 
33899
        * khtml/css/parser.y:
 
33900
        * khtml/ecma/XSLTProcessor.cpp:
 
33901
        * khtml/ecma/domparser.cpp:
 
33902
        * khtml/ecma/kjs_css.cpp:
 
33903
        * khtml/ecma/kjs_dom.cpp:
 
33904
        * khtml/ecma/kjs_events.cpp:
 
33905
        * khtml/ecma/kjs_range.cpp:
 
33906
        * khtml/ecma/kjs_traversal.cpp:
 
33907
        * khtml/ecma/kjs_views.cpp:
 
33908
        * khtml/ecma/kjs_window.cpp:
 
33909
        * khtml/ecma/xmlhttprequest.cpp:
 
33910
        * khtml/ecma/xmlserializer.cpp:
 
33911
        * khtml/editing/SelectionController.cpp:
 
33912
        * khtml/editing/apply_style_command.cpp:
 
33913
        * khtml/editing/composite_edit_command.cpp:
 
33914
        * khtml/editing/delete_selection_command.cpp:
 
33915
        * khtml/editing/edit_command.cpp:
 
33916
        * khtml/editing/htmlediting.cpp:
 
33917
        * khtml/editing/insert_line_break_command.cpp:
 
33918
        * khtml/editing/insert_paragraph_separator_command.cpp:
 
33919
        * khtml/editing/insert_text_command.cpp:
 
33920
        * khtml/editing/join_text_nodes_command.cpp:
 
33921
        * khtml/editing/jsediting.cpp:
 
33922
        * khtml/editing/markup.cpp:
 
33923
        * khtml/editing/markup.h:
 
33924
        * khtml/editing/merge_identical_elements_command.cpp:
 
33925
        * khtml/editing/move_selection_command.cpp:
 
33926
        * khtml/editing/rebalance_whitespace_command.cpp:
 
33927
        * khtml/editing/replace_selection_command.cpp:
 
33928
        * khtml/editing/split_text_node_command.cpp:
 
33929
        * khtml/editing/typing_command.cpp:
 
33930
        * khtml/editing/visible_position.cpp:
 
33931
        * khtml/editing/visible_text.cpp:
 
33932
        * khtml/editing/visible_units.cpp:
 
33933
        * khtml/html/HTMLGenericFormElementImpl.cpp:
 
33934
        * khtml/html/HTMLInputElementImpl.cpp:
 
33935
        * khtml/html/HTMLKeygenElementImpl.cpp:
 
33936
        * khtml/html/HTMLLabelElementImpl.cpp:
 
33937
        * khtml/html/HTMLOptionElementImpl.cpp:
 
33938
        * khtml/html/HTMLSelectElementImpl.cpp:
 
33939
        * khtml/html/HTMLTextAreaElementImpl.cpp:
 
33940
        * khtml/html/html_documentimpl.cpp:
 
33941
        * khtml/html/html_documentimpl.h:
 
33942
        * khtml/html/html_listimpl.cpp:
 
33943
        * khtml/html/html_objectimpl.cpp:
 
33944
        * khtml/html/htmlfactory.cpp:
 
33945
        * khtml/html/htmlparser.cpp:
 
33946
        * khtml/html/htmltokenizer.cpp:
 
33947
        * khtml/misc/Cache.cpp:
 
33948
        * khtml/misc/DocLoader.cpp:
 
33949
        * khtml/rendering/InlineTextBox.cpp:
 
33950
        * khtml/rendering/bidi.cpp:
 
33951
        * khtml/rendering/render_applet.cpp:
 
33952
        * khtml/rendering/render_block.cpp:
 
33953
        * khtml/rendering/render_box.cpp:
 
33954
        * khtml/rendering/render_br.cpp:
 
33955
        * khtml/rendering/render_button.cpp:
 
33956
        * khtml/rendering/render_canvas.cpp:
 
33957
        * khtml/rendering/render_container.cpp:
 
33958
        * khtml/rendering/render_flow.cpp:
 
33959
        * khtml/rendering/render_form.cpp:
 
33960
        * khtml/rendering/render_frames.cpp:
 
33961
        * khtml/rendering/render_inline.cpp:
 
33962
        * khtml/rendering/render_layer.cpp:
 
33963
        * khtml/rendering/render_line.cpp:
 
33964
        * khtml/rendering/render_list.cpp:
 
33965
        * khtml/rendering/render_object.cpp:
 
33966
        * khtml/rendering/render_replaced.cpp:
 
33967
        * khtml/rendering/render_table.cpp:
 
33968
        * khtml/rendering/render_theme.cpp:
 
33969
        * khtml/rendering/render_theme_mac.mm:
 
33970
        * khtml/xml/DOMImplementationImpl.cpp: Added.
 
33971
        * khtml/xml/DOMImplementationImpl.h: Added.
 
33972
        * khtml/xml/DocumentFragmentImpl.cpp: Added.
 
33973
        * khtml/xml/DocumentFragmentImpl.h: Added.
 
33974
        * khtml/xml/DocumentImpl.cpp: Added.
 
33975
        (DocumentImpl::setDocType):
 
33976
        (DocumentImpl::getElementsByName):
 
33977
        * khtml/xml/DocumentImpl.h: Added.
 
33978
        * khtml/xml/DocumentTypeImpl.cpp: Added.
 
33979
        * khtml/xml/DocumentTypeImpl.h: Added.
 
33980
        * khtml/xml/dom2_eventsimpl.cpp:
 
33981
        * khtml/xml/dom2_rangeimpl.cpp:
 
33982
        * khtml/xml/dom2_traversalimpl.cpp:
 
33983
        * khtml/xml/dom2_viewsimpl.cpp:
 
33984
        * khtml/xml/dom_docimpl.cpp: Removed.
 
33985
        * khtml/xml/dom_docimpl.h: Removed.
 
33986
        * khtml/xml/dom_elementimpl.cpp:
 
33987
        * khtml/xml/dom_nodeimpl.cpp:
 
33988
        * khtml/xml/dom_textimpl.cpp:
 
33989
        * khtml/xml/dom_xmlimpl.cpp:
 
33990
        * khtml/xml/xml_tokenizer.cpp:
 
33991
        * khtml/xsl/xslt_processorimpl.cpp:
 
33992
        * ksvg2/misc/KCanvasRenderingStyle.cpp:
 
33993
        * ksvg2/misc/KSVGTimeScheduler.cpp:
 
33994
        * ksvg2/misc/SVGImageLoader.cpp:
 
33995
        * ksvg2/svg/SVGAElementImpl.cpp:
 
33996
        * ksvg2/svg/SVGAnimationElementImpl.cpp:
 
33997
        * ksvg2/svg/SVGClipPathElementImpl.cpp:
 
33998
        * ksvg2/svg/SVGCursorElementImpl.cpp:
 
33999
        * ksvg2/svg/SVGDOMImplementationImpl.cpp:
 
34000
        * ksvg2/svg/SVGDOMImplementationImpl.h:
 
34001
        * ksvg2/svg/SVGDocumentImpl.h:
 
34002
        * ksvg2/svg/SVGElementImpl.cpp:
 
34003
        * ksvg2/svg/SVGFEImageElementImpl.cpp:
 
34004
        * ksvg2/svg/SVGGradientElementImpl.cpp:
 
34005
        * ksvg2/svg/SVGHelper.cpp:
 
34006
        * ksvg2/svg/SVGPatternElementImpl.cpp:
 
34007
        * ksvg2/svg/SVGPolyElementImpl.cpp:
 
34008
        * ksvg2/svg/SVGSVGElementImpl.cpp:
 
34009
        * ksvg2/svg/SVGStopElementImpl.cpp:
 
34010
        * ksvg2/svg/SVGStyleElementImpl.cpp:
 
34011
        * ksvg2/svg/SVGStyledElementImpl.cpp:
 
34012
        * ksvg2/svg/SVGUseElementImpl.cpp:
 
34013
        * kwq/DOM-CSS.mm:
 
34014
        * kwq/DOM.mm:
 
34015
        * kwq/DOMEvents.mm:
 
34016
        * kwq/DOMHTML.mm:
 
34017
        * kwq/DOMInternal.mm:
 
34018
        * kwq/DOMViews.mm:
 
34019
        * kwq/KWQAccObject.mm:
 
34020
        * kwq/KWQAccObjectCache.mm:
 
34021
        * kwq/KWQKJavaAppletWidget.mm:
 
34022
        * kwq/KWQPageState.mm:
 
34023
        * kwq/KWQRenderTreeDebug.cpp:
 
34024
        * kwq/KWQSlot.mm:
 
34025
        * page/Frame.cpp:
 
34026
 
 
34027
2006-01-12  Maciej Stachowiak  <mjs@apple.com>
 
34028
 
 
34029
        Not reviewed.
 
34030
        
 
34031
        - fixed build breakage
 
34032
 
 
34033
        * ksvg2/misc/SVGImageLoader.cpp: Add dom_docimpl.h include
 
34034
 
 
34035
2006-01-12  Maciej Stachowiak  <mjs@apple.com>
 
34036
 
 
34037
        Reviewed by Eric.
 
34038
 
 
34039
        - remove dom_documentimpl.h include from other headers where possible,
 
34040
        move down to impl files instead, so less rebuilds when you touch it
 
34041
 
 
34042
        * bridge/mac/MacFrame.mm:
 
34043
        (MacFrame::openURLFromPageCache):
 
34044
        * kcanvas/KCanvasResources.cpp:
 
34045
        * khtml/css/css_computedstyle.cpp:
 
34046
        * khtml/editing/SelectionController.cpp:
 
34047
        (khtml::SelectionController::frame):
 
34048
        * khtml/editing/SelectionController.h:
 
34049
        * khtml/editing/composite_edit_command.cpp:
 
34050
        * khtml/editing/delete_selection_command.cpp:
 
34051
        * khtml/editing/jsediting.cpp:
 
34052
        * khtml/editing/jsediting.h:
 
34053
        * khtml/editing/markup.h:
 
34054
        * khtml/editing/visible_position.cpp:
 
34055
        * khtml/editing/visible_text.cpp:
 
34056
        * khtml/html/HTMLGenericFormElementImpl.cpp:
 
34057
        * khtml/html/HTMLInputElementImpl.cpp:
 
34058
        * khtml/html/HTMLLabelElementImpl.cpp:
 
34059
        * khtml/html/HTMLOptionElementImpl.cpp:
 
34060
        * khtml/html/HTMLSelectElementImpl.cpp:
 
34061
        * khtml/html/HTMLTextAreaElementImpl.cpp:
 
34062
        * khtml/html/htmltokenizer.h:
 
34063
        * khtml/rendering/InlineTextBox.cpp:
 
34064
        * khtml/rendering/bidi.cpp:
 
34065
        * khtml/rendering/render_br.cpp:
 
34066
        * khtml/rendering/render_button.cpp:
 
34067
        * khtml/rendering/render_object.cpp:
 
34068
        (RenderObject::documentBeingDestroyed):
 
34069
        * khtml/rendering/render_object.h:
 
34070
        * khtml/rendering/render_theme.cpp:
 
34071
        * khtml/rendering/render_theme_mac.mm:
 
34072
        * khtml/xbl/xbl_docimpl.h:
 
34073
        * khtml/xml/dom2_rangeimpl.cpp:
 
34074
        * ksvg2/svg/SVGAElementImpl.cpp:
 
34075
        * ksvg2/svg/SVGClipPathElementImpl.cpp:
 
34076
        * ksvg2/svg/SVGFEImageElementImpl.cpp:
 
34077
        * ksvg2/svg/SVGHelper.cpp:
 
34078
        * ksvg2/svg/SVGSVGElementImpl.cpp:
 
34079
        * ksvg2/svg/SVGUseElementImpl.cpp:
 
34080
        * kwq/KWQAccObjectCache.mm:
 
34081
        * kwq/KWQPageState.h:
 
34082
        * kwq/KWQPageState.mm:
 
34083
 
 
34084
2006-01-12  Anders Carlsson  <andersca@mac.com>
 
34085
 
 
34086
        Fix build
 
34087
 
 
34088
        * khtml/ecma/kjs_window.cpp:
 
34089
        Remove include.
 
34090
 
 
34091
2006-01-12  Anders Carlsson  <andersca@mac.com>
 
34092
 
 
34093
        Reviewed by Maciej
 
34094
 
 
34095
        http://bugs.webkit.org/show_bug.cgi?id=6501
 
34096
        - Merge KParts::BrowserInterface with KParts::BrowserExtension.
 
34097
        
 
34098
        * ForwardingHeaders/kparts/browserinterface.h: Removed.
 
34099
        * bridge/mac/KWQKPartsBrowserInterface.mm: Removed.
 
34100
        * kwq/KWQKPartsBrowserInterface.h: Removed.
 
34101
 
 
34102
        * WebCore.xcodeproj/project.pbxproj:
 
34103
        * bridge/mac/KWQKHTMLPartBrowserExtension.h:
 
34104
        * bridge/mac/KWQKHTMLPartBrowserExtension.mm:
 
34105
        (KHTMLPartBrowserExtension::KHTMLPartBrowserExtension):
 
34106
        (KHTMLPartBrowserExtension::getHistoryLength):
 
34107
        (KHTMLPartBrowserExtension::goBackOrForward):        
 
34108
        * bridge/mac/KWQKPartsBrowserExtension.h:
 
34109
        (KParts::BrowserExtension::BrowserExtension):
 
34110
        * khtml/ecma/kjs_window.cpp:
 
34111
        (KJS::History::getValueProperty):
 
34112
        * khtml/xml/xml_tokenizer.cpp:
 
34113
        * page/Frame.cpp:
 
34114
        (Frame::slotRedirect):
 
34115
        * page/FrameView.cpp:
 
34116
        Add getHistoryLength and goBackOrForward to BrowserExtension and
 
34117
        use them.
 
34118
 
 
34119
2006-01-12  Eric Seidel  <eseidel@apple.com>
 
34120
 
 
34121
        Build fix, files missing from previous <image> commit:
 
34122
        http://bugs.webkit.org/show_bug.cgi?id=5965 
 
34123
 
 
34124
        * kcanvas/RenderSVGImage.cpp: Added.
 
34125
        (RenderSVGImage::RenderSVGImage):
 
34126
        (RenderSVGImage::~RenderSVGImage):
 
34127
        (RenderSVGImage::paint):
 
34128
        (RenderSVGImage::translateForAttributes):
 
34129
        * kcanvas/RenderSVGImage.h: Added.
 
34130
        * ksvg2/misc/SVGImageLoader.cpp: Added.
 
34131
        (SVGImageLoader::SVGImageLoader):
 
34132
        (SVGImageLoader::~SVGImageLoader):
 
34133
        (SVGImageLoader::updateFromElement):
 
34134
        * ksvg2/misc/SVGImageLoader.h: Added.
 
34135
 
 
34136
2006-01-12  Anders Carlsson  <andersca@mac.com>
 
34137
 
 
34138
        Reviewed by Maciej.
 
34139
 
 
34140
        http://bugs.webkit.org/show_bug.cgi?id=6496
 
34141
        - Merge KParts::Part with KParts::ReadOnly part and rename it to
 
34142
        ObjectContents.
 
34143
        
 
34144
        * ForwardingHeaders/kparts/part.h: Removed.
 
34145
        * kwq/KWQKPartsPart.h: Removed.
 
34146
        * kwq/KWQKPartsPart.mm: Removed.
 
34147
        * kwq/KWQObject.cpp:
 
34148
        
 
34149
        page/ObjectContents.h: Added
 
34150
        (ObjectContents::ObjectContents):
 
34151
        (ObjectContents::url):
 
34152
        (ObjectContents::setName):
 
34153
        (ObjectContents::widget):
 
34154
        (ObjectContents::setWidget):
 
34155
        (ObjectContents::ref):
 
34156
        (ObjectContents::deref):
 
34157
        (ObjectContents::event):
 
34158
        (ObjectContents::customEvent):
 
34159
        (ObjectContents::isObjectContents):
 
34160
 
 
34161
        Renames:
 
34162
        
 
34163
        * WebCore.xcodeproj/project.pbxproj:
 
34164
        * bridge/mac/KWQKHTMLPartBrowserExtension.h:
 
34165
        * bridge/mac/KWQKHTMLPartBrowserExtension.mm:
 
34166
        (KHTMLPartBrowserExtension::createNewWindow):
 
34167
        * bridge/mac/KWQKPartsBrowserExtension.h:
 
34168
        * bridge/mac/MacFrame.h:
 
34169
        * bridge/mac/MacFrame.mm:
 
34170
        (MacFrame::createPart):
 
34171
        * bridge/mac/WebCoreBridge.mm:
 
34172
        (-[WebCoreBridge saveDocumentToPageCache]):
 
34173
        * khtml/ecma/kjs_events.cpp:
 
34174
        (KJS::JSLazyEventListener::parseCode):
 
34175
        * khtml/ecma/kjs_window.cpp:
 
34176
        (KJS::createNewWindow):
 
34177
        (KJS::Window::indexGetter):
 
34178
        (KJS::Window::getOwnPropertySlot):
 
34179
        (KJS::WindowFunc::callAsFunction):
 
34180
        (KJS::FrameArray::getValueProperty):
 
34181
        (KJS::FrameArray::indexGetter):
 
34182
        (KJS::FrameArray::nameGetter):
 
34183
        (KJS::FrameArray::getOwnPropertySlot):
 
34184
        (QObject::inherits):
 
34185
        (QObject::isObjectContents):
 
34186
        * kwq/KWQObject.h:
 
34187
        * page/Frame.cpp:
 
34188
        (Frame::stopLoading):
 
34189
        (Frame::stopAnimations):
 
34190
        (Frame::checkEmitLoadEvent):
 
34191
        (Frame::processObjectRequest):
 
34192
        (Frame::childFrame):
 
34193
        (Frame::findFrame):
 
34194
        (Frame::setZoomFactor):
 
34195
        (Frame::frames):
 
34196
        (Frame::customEvent):
 
34197
        (Frame::slotPartRemoved):
 
34198
        (Frame::connectChild):
 
34199
        (Frame::disconnectChild):
 
34200
        (Frame::setPolicyBaseURL):
 
34201
        (Frame::setName):
 
34202
        * page/Frame.h:
 
34203
        (Frame::Frame):
 
34204
        * page/FramePrivate.h:
 
34205
 
 
34206
2006-01-12  Alexander Kellett  <lypanov@kde.org>
 
34207
 
 
34208
        Reviewed by eseidel.  Landed by eseidel.
 
34209
 
 
34210
        Refactor HTMLImageLoader to make subclassing possible. Implement
 
34211
        RenderSVGText-style RenderImage subclass. Use this to reimplement
 
34212
        SVGImageElementImpl.
 
34213
 
 
34214
        As a side effect, this should fix:
 
34215
        http://bugs.webkit.org/show_bug.cgi?id=5965
 
34216
        
 
34217
        Already covered by several existing tests.
 
34218
        Re-enabled disabled image tests.
 
34219
 
 
34220
        * WebCore.xcodeproj/project.pbxproj:
 
34221
        * kcanvas/RenderSVGImage.cpp: Added.
 
34222
        (RenderSVGImage::RenderSVGImage):
 
34223
        (~RenderSVGImage::RenderSVGImage):
 
34224
        (RenderSVGImage::paint):
 
34225
        (RenderSVGImage::translateForAttributes):
 
34226
        * kcanvas/RenderSVGImage.h: Added.
 
34227
        * khtml/html/html_imageimpl.cpp:
 
34228
        (DOM::HTMLImageLoader::setLoadingImage): trivial method extraction
 
34229
        (DOM::HTMLImageLoader::updateFromElement): make virtual
 
34230
        * khtml/html/html_imageimpl.h:
 
34231
        (DOM::):
 
34232
        * ksvg2/misc/SVGImageLoader.cpp: Added.
 
34233
        (SVGImageLoader::SVGImageLoader):
 
34234
        (~SVGImageLoader:SVGImageLoader):
 
34235
        (SVGImageLoader::updateFromElement):
 
34236
        * ksvg2/misc/SVGImageLoader.h: Added.
 
34237
        * ksvg2/svg/SVGImageElementImpl.cpp:
 
34238
        (SVGImageElementImpl::SVGImageElementImpl):
 
34239
        (SVGImageElementImpl::parseMappedAttribute):
 
34240
        (SVGImageElementImpl::createRenderer):
 
34241
        (SVGImageElementImpl::attach):
 
34242
        * ksvg2/svg/SVGImageElementImpl.h:
 
34243
 
 
34244
2006-01-11  David Hyatt  <hyatt@apple.com>
 
34245
 
 
34246
        Changes to get the XML directory nearly compiling on Win32.
 
34247
        Down to just the gperf of cssvalues.in and a need to replace
 
34248
        usleep.
 
34249
 
 
34250
        Reviewed by darin
 
34251
 
 
34252
        * WebCore.vcproj/WebCore/WebCore.vcproj:
 
34253
        * khtml/config.h:
 
34254
        * khtml/xml/dom_stringimpl.cpp:
 
34255
        (DOM::DOMStringImpl::toCoordsArray):
 
34256
        * khtml/xml/xml_tokenizer.cpp:
 
34257
        (khtml::XMLTokenizer::error):
 
34258
 
 
34259
2006-01-11  Justin Garcia  <justin.garcia@apple.com>
 
34260
 
 
34261
        Replaced two asserts that I accidently removed in
 
34262
        the build bustage fix.
 
34263
 
 
34264
        * page/Frame.cpp:
 
34265
        (Frame::revealSelection):
 
34266
        (Frame::centerSelectionInVisibleArea):
 
34267
 
 
34268
2006-01-11  Justin Garcia  <justin.garcia@apple.com>
 
34269
 
 
34270
        Reviewed by kevin
 
34271
 
 
34272
        The removal of Frame::clearSelection() broke a layout 
 
34273
        test. clearSelection did setSelection(SelectionController()), which
 
34274
        is not the same as selection().clear().  setSelection() notifies
 
34275
        the editing delegate of a selection change.  This is non obvious
 
34276
        and should be fixed.  Filed:
 
34277
        <http://bugs.webkit.org/show_bug.cgi?id=6498>
 
34278
        SelectionController's setters should notify delegates of selection changes
 
34279
 
 
34280
        * bridge/mac/WebCoreBridge.mm:
 
34281
        (-[WebCoreBridge deselectText]):
 
34282
        * khtml/editing/jsediting.cpp:
 
34283
        * khtml/xml/dom_docimpl.cpp:
 
34284
        (DocumentImpl::clearSelectionIfNeeded):
 
34285
 
 
34286
2006-01-11  Justin Garcia  <justin.garcia@apple.com>
 
34287
 
 
34288
        Reviewed by darin
 
34289
        
 
34290
        <http://bugs.webkit.org/show_bug.cgi?id=5870>
 
34291
        Double-clicking on an SVG dies in HTML editing code
 
34292
        <rdar://problem/4393815>
 
34293
        Assertion failure: result != *this (khtml::VisiblePosition::previous())
 
34294
        + build bustage fix from previous checkin
 
34295
 
 
34296
        Tests added (+ expected results):
 
34297
        * editing/selection/iframe.html: Added.
 
34298
        * editing/selection/inline-table.html: Added.
 
34299
        * editing/selection/select-box.html: Added.
 
34300
        
 
34301
        Test results changed (change looks funny but is correct):
 
34302
        * editing/inserting/editing-empty-divs.html
 
34303
        
 
34304
        Account for replaced elements with children in isCandidate and maxDeepOffset
 
34305
        Stop at candidates in VisiblePosition::deepEquivalent, descending will
 
34306
        yield positions that aren't visually equivalent.
 
34307
        Fixed a caret painting regression (removed downstreamDeepEquivalent)
 
34308
        Moved isAtomicNode and maxDeepOffset out of NodeImpl
 
34309
        Removed redundant code
 
34310
        
 
34311
        Todo: 
 
34312
        Move more editing functions out of NodeImpl
 
34313
        Improve the selection of VP candidates to fix 6476
 
34314
 
 
34315
        * khtml/editing/SelectionController.cpp:
 
34316
        (khtml::SelectionController::SelectionController):
 
34317
        (khtml::SelectionController::xPosForVerticalArrowNavigation):
 
34318
        (khtml::SelectionController::getRangeAt):
 
34319
        (khtml::SelectionController::layout):
 
34320
        (khtml::SelectionController::adjustForEditableContent):
 
34321
        * khtml/editing/apply_style_command.cpp:
 
34322
        (khtml::ApplyStyleCommand::mergeStartWithPreviousIfIdentical):
 
34323
        (khtml::ApplyStyleCommand::mergeEndWithNextIfIdentical):
 
34324
        * khtml/editing/delete_selection_command.cpp:
 
34325
        (khtml::DeleteSelectionCommand::handleSpecialCaseBRDelete):
 
34326
        (khtml::DeleteSelectionCommand::handleGeneralDelete):
 
34327
        * khtml/editing/htmlediting.cpp:
 
34328
        (khtml::isAtomicNode):
 
34329
        (khtml::maxDeepOffset):
 
34330
        (khtml::isLastVisiblePositionInSpecialElement):
 
34331
        (khtml::positionAfterContainingSpecialElement):
 
34332
        * khtml/editing/htmlediting.h:
 
34333
        * khtml/editing/insert_line_break_command.cpp:
 
34334
        (khtml::InsertLineBreakCommand::doApply):
 
34335
        * khtml/editing/replace_selection_command.cpp:
 
34336
        (khtml::ReplaceSelectionCommand::fixupNodeStyles):
 
34337
        (khtml::ReplaceSelectionCommand::doApply):
 
34338
        * khtml/editing/visible_position.cpp:
 
34339
        (khtml::VisiblePosition::previousVisiblePosition):
 
34340
        (khtml::VisiblePosition::isCandidate):
 
34341
        (khtml::VisiblePosition::deepEquivalent):
 
34342
        (khtml::VisiblePosition::character):
 
34343
        (khtml::makeRange):
 
34344
        (khtml::setStart):
 
34345
        (khtml::setEnd):
 
34346
        (khtml::enclosingBlockFlowElement):
 
34347
        (khtml::isFirstVisiblePositionInNode):
 
34348
        (khtml::isLastVisiblePositionInNode):
 
34349
        * khtml/editing/visible_position.h:
 
34350
        (khtml::VisiblePosition::setAffinity):
 
34351
        * khtml/editing/visible_units.cpp:
 
34352
        (khtml::previousLinePosition):
 
34353
        (khtml::nextLinePosition):
 
34354
        * khtml/xml/dom2_rangeimpl.cpp:
 
34355
        (DOM::RangeImpl::editingStartPosition):
 
34356
        * khtml/xml/dom_nodeimpl.cpp:
 
34357
        (DOM::NodeImpl::previousNodeConsideringAtomicNodes):
 
34358
        (DOM::NodeImpl::nextNodeConsideringAtomicNodes):
 
34359
        (DOM::NodeImpl::previousLeafNode):
 
34360
        (DOM::NodeImpl::nextLeafNode):
 
34361
        (DOM::NodeImpl::isBlockFlowOrBlockTable):
 
34362
        (DOM::NodeImpl::enclosingBlockFlowOrTableElement):
 
34363
        * khtml/xml/dom_nodeimpl.h:
 
34364
        * khtml/xml/dom_position.cpp:
 
34365
        (DOM::Position::previous):
 
34366
        (DOM::Position::next):
 
34367
        (DOM::Position::atEnd):
 
34368
        (DOM::isStreamer):
 
34369
        (DOM::Position::upstream):
 
34370
        (DOM::Position::downstream):
 
34371
        * khtml/xml/dom_position.h:
 
34372
        * kwq/KWQAccObject.mm:
 
34373
        (-[KWQAccObject doAXUIElementForTextMarker:]):
 
34374
        * page/Frame.cpp:
 
34375
        (Frame::selectContentsOfNode):
 
34376
        
 
34377
2006-01-11  Maciej Stachowiak  <mjs@apple.com>
 
34378
 
 
34379
        Reviewed by Darin.
 
34380
 
 
34381
        - remove some selection-related methods on Frame that are just simple wrappers
 
34382
        of Selection methods.
 
34383
 
 
34384
        * bridge/mac/MacFrame.mm:
 
34385
        (MacFrame::findString):
 
34386
        (MacFrame::advanceToNextMisspelling):
 
34387
        * bridge/mac/WebCoreBridge.mm:
 
34388
        (-[WebCoreBridge deselectText]):
 
34389
        (-[WebCoreBridge selectedAttributedString]):
 
34390
        (-[WebCoreBridge attributedStringFrom:startOffset:to:endOffset:]):
 
34391
        * khtml/editing/jsediting.cpp:
 
34392
        * khtml/xml/dom_docimpl.cpp:
 
34393
        (DocumentImpl::clearSelectionIfNeeded):
 
34394
        * page/Frame.cpp:
 
34395
        (Frame::selection):
 
34396
        (Frame::currentForm):
 
34397
        (Frame::revealSelection):
 
34398
        (Frame::centerSelectionInVisibleArea):
 
34399
        * page/Frame.h:
 
34400
        * page/FrameView.cpp:
 
34401
        (KHTMLView::clear):
 
34402
 
 
34403
2006-01-11  Maciej Stachowiak  <mjs@apple.com>
 
34404
 
 
34405
        Reviewed by Darin.
 
34406
 
 
34407
        - reduce the number of files that rebuild when you touch Frame.h
 
34408
 
 
34409
        * ForwardingHeaders/ksvg2/KSVGView.h:
 
34410
        * WebCore.xcodeproj/project.pbxproj:
 
34411
        * bridge/mac/MacFrame.mm:
 
34412
        (convertAttributesToUnderlines):
 
34413
        * khtml/ecma/kjs_window.cpp:
 
34414
        * khtml/editing/htmlediting.cpp:
 
34415
        * khtml/editing/typing_command.cpp:
 
34416
        * khtml/html/HTMLKeygenElementImpl.cpp:
 
34417
        (DOM::HTMLKeygenElementImpl::appendFormData):
 
34418
        * khtml/html/html_imageimpl.cpp:
 
34419
        * khtml/rendering/InlineTextBox.cpp:
 
34420
        (khtml::InlineTextBox::paint):
 
34421
        (khtml::InlineTextBox::paintMarkedTextUnderline):
 
34422
        * khtml/rendering/InlineTextBox.h:
 
34423
        * khtml/rendering/render_layer.cpp:
 
34424
        * khtml/xml/dom_docimpl.cpp:
 
34425
        * kwq/KWQAccObject.mm:
 
34426
        (-[KWQAccObject value]):
 
34427
        * kwq/KWQFileButton.h:
 
34428
        * kwq/KWQLineEdit.mm:
 
34429
        * kwq/KWQRenderTreeDebug.cpp:
 
34430
        (write):
 
34431
        * page/Frame.cpp:
 
34432
        (Frame::markedTextUnderlines):
 
34433
        * page/Frame.h:
 
34434
        (MarkedTextUnderline::MarkedTextUnderline):
 
34435
 
 
34436
2006-01-11  Anders Carlsson  <andersca@mac.com>
 
34437
 
 
34438
        Build fix.
 
34439
        
 
34440
        * ForwardingHeaders/ksvg2/KSVGView.h:
 
34441
        Rename KHTMLView to FrameView and include FrameView.h
 
34442
 
 
34443
2006-01-11  Maciej Stachowiak  <mjs@apple.com>
 
34444
 
 
34445
        Reviewed by Anders.
 
34446
 
 
34447
        - renamed KHTMLPartPrivate to FramePrivate and KHTMLView to FrameView
 
34448
        http://bugs.webkit.org/show_bug.cgi?id=6490
 
34449
 
 
34450
        (also corresponding header renames, remove headers where not
 
34451
        needed, and a few substantive changes to allow more header removal)
 
34452
 
 
34453
        * khtml/xml/dom_docimpl.h: moved m_selectedStylesheetSet here from
 
34454
        KHTMLPartPrivate, since this was the only class using it.
 
34455
        * khtml/xml/dom_docimpl.cpp:
 
34456
        (DocumentImpl::processHttpEquiv): ditto
 
34457
        (DocumentImpl::selectedStylesheetSet): ditto
 
34458
        (DocumentImpl::setSelectedStylesheetSet): ditto
 
34459
        (DocumentImpl::recalcStyleSelector): ditto
 
34460
        * khtml/ecma/kjs_dom.cpp:
 
34461
        (KJS::DOMDocument::getValueProperty): Use new isCompleted method
 
34462
        on Frame instead of accessing private field directly.
 
34463
        (KJS::getDOMDocumentNode): remove gratuitous use of view()
 
34464
        
 
34465
        Just the renames:
 
34466
        
 
34467
        * WebCore.xcodeproj/project.pbxproj:
 
34468
        * bridge/mac/KWQKHTMLView.cpp:
 
34469
        * bridge/mac/MacFrame.h:
 
34470
        * bridge/mac/MacFrame.mm:
 
34471
        * bridge/mac/WebCoreBridge.mm:
 
34472
        * khtml/css/cssstyleselector.cpp:
 
34473
        * khtml/ecma/kjs_html.cpp:
 
34474
        * khtml/ecma/kjs_traversal.cpp:
 
34475
        * khtml/ecma/kjs_window.cpp:
 
34476
        * khtml/ecma/xmlhttprequest.cpp:
 
34477
        * khtml/editing/SelectionController.cpp:
 
34478
        * khtml/editing/htmlediting.cpp:
 
34479
        * khtml/html/html_baseimpl.cpp:
 
34480
        * khtml/html/html_canvasimpl.cpp:
 
34481
        * khtml/html/html_documentimpl.cpp:
 
34482
        * khtml/html/html_elementimpl.cpp:
 
34483
        * khtml/html/html_headimpl.cpp:
 
34484
        * khtml/html/html_imageimpl.cpp:
 
34485
        * khtml/html/html_inlineimpl.cpp:
 
34486
        (DOM::HTMLAnchorElementImpl::defaultEventHandler):
 
34487
        * khtml/html/html_objectimpl.cpp:
 
34488
        * khtml/html/html_tableimpl.cpp:
 
34489
        * khtml/html/htmlparser.cpp:
 
34490
        * khtml/html/htmltokenizer.cpp:
 
34491
        * khtml/rendering/bidi.cpp:
 
34492
        * khtml/rendering/render_applet.cpp:
 
34493
        * khtml/rendering/render_block.cpp:
 
34494
        * khtml/rendering/render_box.cpp:
 
34495
        * khtml/rendering/render_canvas.cpp:
 
34496
        * khtml/rendering/render_flow.cpp:
 
34497
        * khtml/rendering/render_form.cpp:
 
34498
        * khtml/rendering/render_frames.cpp:
 
34499
        * khtml/rendering/render_layer.cpp:
 
34500
        * khtml/rendering/render_line.cpp:
 
34501
        * khtml/rendering/render_object.cpp:
 
34502
        * khtml/rendering/render_replaced.cpp:
 
34503
        * khtml/rendering/render_table.cpp:
 
34504
        * khtml/rendering/render_theme_mac.mm:
 
34505
        * khtml/xml/dom2_eventsimpl.cpp:
 
34506
        * khtml/xml/dom_elementimpl.cpp:
 
34507
        * khtml/xml/dom_nodeimpl.cpp:
 
34508
        * khtml/xml/xml_tokenizer.cpp:
 
34509
        * khtml/xsl/xslt_processorimpl.cpp:
 
34510
        * kwq/KWQAccObject.mm:
 
34511
        * kwq/KWQFrame.mm:
 
34512
        * kwq/KWQKJavaAppletWidget.mm:
 
34513
        * kwq/KWQPageState.mm:
 
34514
        * kwq/KWQRenderTreeDebug.cpp:
 
34515
        * kwq/KWQSignalStubs.mm:
 
34516
        * kwq/KWQWidget.mm:
 
34517
        * page/Frame.cpp:
 
34518
        (Frame::init):
 
34519
        (Frame::submitForm):
 
34520
        (Frame::isComplete):
 
34521
        * page/Frame.h:
 
34522
        * page/FramePrivate.h: Added.
 
34523
        (FramePrivate::FramePrivate):
 
34524
        (FramePrivate::~FramePrivate):
 
34525
        * page/FrameView.cpp: Added.
 
34526
        * page/FrameView.h: Added.
 
34527
        * page/khtmlpart_p.h: Removed.
 
34528
        * page/khtmlview.cpp: Removed.
 
34529
        * page/khtmlview.h: Removed.
 
34530
 
 
34531
2006-01-10  Maciej Stachowiak  <mjs@apple.com>
 
34532
 
 
34533
        Reviewed by Darin.
 
34534
 
 
34535
        - moved files related to the Frame class and the forthcoming Page class
 
34536
        to WebCore/page
 
34537
        
 
34538
        - moved files related to the MacFrame class and other bridging-related classes
 
34539
        to WebCore/bridge/mac
 
34540
 
 
34541
        * ForwardingHeaders/ksvg2/KSVGPart.h:
 
34542
        * ForwardingHeaders/ksvg2/KSVGView.h:
 
34543
        * WebCore.xcodeproj/project.pbxproj:
 
34544
        * bridge: Added.
 
34545
        * bridge/mac: Added.
 
34546
        * bridge/mac/KWQKHTMLPartBrowserExtension.h: Added.
 
34547
        * bridge/mac/KWQKHTMLPartBrowserExtension.mm: Added.
 
34548
        * bridge/mac/KWQKHTMLView.cpp: Added.
 
34549
        * bridge/mac/KWQKPartsBrowserExtension.h: Added.
 
34550
        * bridge/mac/KWQKPartsBrowserInterface.mm: Added.
 
34551
        * bridge/mac/MacFrame.h: Added.
 
34552
        * bridge/mac/MacFrame.mm: Added.
 
34553
        * bridge/mac/WebCoreBridge.h: Added.
 
34554
        * bridge/mac/WebCoreBridge.mm: Added.
 
34555
        * khtml/Frame.cpp: Removed.
 
34556
        * khtml/Frame.h: Removed.
 
34557
        * khtml/khtmlpart_p.h: Removed.
 
34558
        * khtml/khtmlview.cpp: Removed.
 
34559
        * khtml/khtmlview.h: Removed.
 
34560
        * kwq/KWQKHTMLPartBrowserExtension.h: Removed.
 
34561
        * kwq/KWQKHTMLPartBrowserExtension.mm: Removed.
 
34562
        * kwq/KWQKHTMLView.cpp: Removed.
 
34563
        * kwq/KWQKPartsBrowserExtension.h: Removed.
 
34564
        * kwq/KWQKPartsBrowserInterface.mm: Removed.
 
34565
        * kwq/MacFrame.h: Removed.
 
34566
        * kwq/MacFrame.mm: Removed.
 
34567
        * kwq/WebCoreBridge.h: Removed.
 
34568
        * kwq/WebCoreBridge.mm: Removed.
 
34569
        * page: Added.
 
34570
        * page/Frame.cpp: Added.
 
34571
        * page/Frame.h: Added.
 
34572
        * page/khtmlpart_p.h: Added.
 
34573
        * page/khtmlview.cpp: Added.
 
34574
        * page/khtmlview.h: Added.
 
34575
 
 
34576
2006-01-10  David Hyatt  <hyatt@apple.com>
 
34577
 
 
34578
        #if Win32 the KWQMemArray overloads, since they're working around
 
34579
        a Windows compiler bug.
 
34580
        
 
34581
        * kwq/KWQMemArray.h:
 
34582
 
 
34583
2006-01-10  David Hyatt  <hyatt@apple.com>
 
34584
 
 
34585
        Fix the broken ifdef in KWQString.h
 
34586
 
 
34587
        * kwq/KWQString.h:
 
34588
 
 
34589
2006-01-10  hyatt@apple.com
 
34590
 
 
34591
        Fix for bugzilla bug 6458, get rendering dir of WebCore
 
34592
        compiling on Windows.
 
34593
        
 
34594
        Reviewed by darin
 
34595
 
 
34596
        * ForwardingHeaders/QRectF:
 
34597
        * ForwardingHeaders/java/kjavaappletwidget.h:
 
34598
        * ForwardingHeaders/kcursor.h:
 
34599
        * ForwardingHeaders/kdebug.h:
 
34600
        * ForwardingHeaders/kglobalsettings.h:
 
34601
        * ForwardingHeaders/khtml_ext.h:
 
34602
        * ForwardingHeaders/khtml_factory.h:
 
34603
        * ForwardingHeaders/khtml_settings.h:
 
34604
        * ForwardingHeaders/kio/global.h:
 
34605
        * ForwardingHeaders/klocale.h:
 
34606
        * ForwardingHeaders/kparts/browserextension.h:
 
34607
        * ForwardingHeaders/kparts/event.h:
 
34608
        * ForwardingHeaders/kparts/part.h:
 
34609
        * ForwardingHeaders/kurl.h:
 
34610
        * ForwardingHeaders/qapplication.h:
 
34611
        * ForwardingHeaders/qbuffer.h:
 
34612
        * ForwardingHeaders/qcolor.h:
 
34613
        * ForwardingHeaders/qdatetime.h:
 
34614
        * ForwardingHeaders/qdict.h:
 
34615
        * ForwardingHeaders/qevent.h:
 
34616
        * ForwardingHeaders/qfont.h:
 
34617
        * ForwardingHeaders/qfontmetrics.h:
 
34618
        * ForwardingHeaders/qlist.h:
 
34619
        * ForwardingHeaders/qmap.h:
 
34620
        * ForwardingHeaders/qmemarray.h:
 
34621
        * ForwardingHeaders/qobject.h:
 
34622
        * ForwardingHeaders/qpaintdevicemetrics.h:
 
34623
        * ForwardingHeaders/qpainter.h:
 
34624
        * ForwardingHeaders/qpalette.h:
 
34625
        * ForwardingHeaders/qpen.h:
 
34626
        * ForwardingHeaders/qpixmap.h:
 
34627
        * ForwardingHeaders/qptrdict.h:
 
34628
        * ForwardingHeaders/qptrlist.h:
 
34629
        * ForwardingHeaders/qptrqueue.h:
 
34630
        * ForwardingHeaders/qptrstack.h:
 
34631
        * ForwardingHeaders/qptrvector.h:
 
34632
        * ForwardingHeaders/qrect.h:
 
34633
        * ForwardingHeaders/qregexp.h:
 
34634
        * ForwardingHeaders/qregion.h:
 
34635
        * ForwardingHeaders/qscrollbar.h:
 
34636
        * ForwardingHeaders/qscrollview.h:
 
34637
        * ForwardingHeaders/qsortedlist.h:
 
34638
        * ForwardingHeaders/qstring.h:
 
34639
        * ForwardingHeaders/qstringlist.h:
 
34640
        * ForwardingHeaders/qstyle.h:
 
34641
        * ForwardingHeaders/qtextcodec.h:
 
34642
        * ForwardingHeaders/qtextedit.h:
 
34643
        * ForwardingHeaders/qtimer.h:
 
34644
        * ForwardingHeaders/qvaluelist.h:
 
34645
        * ForwardingHeaders/qvariant.h:
 
34646
        * ForwardingHeaders/qwidget.h:
 
34647
        * ForwardingHeaders/qwmatrix.h:
 
34648
        * khtml/config.h:
 
34649
        * khtml/css/css_ruleimpl.h:
 
34650
        * khtml/ecma/kjs_binding.h:
 
34651
        * khtml/html/html_objectimpl.h:
 
34652
        * khtml/rendering/RenderText.cpp:
 
34653
        * khtml/rendering/bidi.cpp:
 
34654
        * khtml/rendering/break_lines.cpp:
 
34655
        (khtml::nextBreakablePosition):
 
34656
        * khtml/rendering/font.h:
 
34657
        (khtml::Font::width):
 
34658
        * khtml/rendering/render_arena.cpp:
 
34659
        * khtml/rendering/render_canvasimage.cpp:
 
34660
        * khtml/rendering/render_canvasimage.h:
 
34661
        * khtml/rendering/render_container.cpp:
 
34662
        (RenderContainer::removeChildNode):
 
34663
        (RenderContainer::appendChildNode):
 
34664
        (RenderContainer::insertChildNode):
 
34665
        * khtml/rendering/render_image.cpp:
 
34666
        (RenderImage::paint):
 
34667
        * khtml/rendering/render_object.cpp:
 
34668
        (RenderObject::remove):
 
34669
        * khtml/xml/dom_elementimpl.h:
 
34670
        (DOM::ElementImpl::mouseEventHandler):
 
34671
        * khtml/xml/dom_nodeimpl.cpp:
 
34672
        (DOM::NodeImpl::dispatchEvent):
 
34673
        * khtml/xml/dom_stringimpl.cpp:
 
34674
        (DOM::DOMStringImpl::endsWith):
 
34675
        * kwq/KWQAccObjectCache.h:
 
34676
        * kwq/KWQArrayImpl.h:
 
34677
        (KWQArrayImpl::size):
 
34678
        * kwq/KWQCharsets.h:
 
34679
        * kwq/KWQDateTime.h:
 
34680
        (CFAbsoluteTimeGetCurrent):
 
34681
        * kwq/KWQDef.h:
 
34682
        * kwq/KWQFontFamily.h:
 
34683
        * kwq/KWQKPartsPart.h:
 
34684
        * kwq/KWQKURL.h:
 
34685
        * kwq/KWQLogging.h:
 
34686
        * kwq/KWQMapImpl.h:
 
34687
        * kwq/KWQMemArray.h:
 
34688
        (QMemArray::operator[]):
 
34689
        * kwq/KWQPainter.h:
 
34690
        * kwq/KWQPixmap.h:
 
34691
        * kwq/KWQPixmap.mm:
 
34692
        * kwq/KWQPtrDictImpl.h:
 
34693
        * kwq/KWQRegExp.h:
 
34694
        * kwq/KWQString.h:
 
34695
        * kwq/KWQTextCodec.h:
 
34696
        * kwq/KWQTimer.h:
 
34697
        (QTimer::QTimer):
 
34698
        (QTimer::isActive):
 
34699
        * kwq/KWQValueListImpl.h:
 
34700
        * kwq/KWQVariant.h:
 
34701
        * kwq/KWQWMatrix.h:
 
34702
        * kwq/MacFrame.h:
 
34703
 
 
34704
2006-01-10  Eric Seidel  <eseidel@apple.com>
 
34705
 
 
34706
        No review needed, build (linking deployment) fix only.
 
34707
 
 
34708
        * kwq/MacFrame.h: remove bogus KHTMLView *view() const delcaration
 
34709
 
 
34710
2006-01-10  Eric Seidel  <eseidel@apple.com>
 
34711
 
 
34712
        Roll out local changes committed by accident w/ Mitz's patch.
 
34713
 
 
34714
        * kwq/KWQAccObjectCache.h:
 
34715
        * kwq/KWQAccObjectCache.mm:
 
34716
        (KWQAccObjectCache::KWQAccObjectCache):
 
34717
        (KWQAccObjectCache::~KWQAccObjectCache):
 
34718
        (KWQAccObjectCache::accObject):
 
34719
        (KWQAccObjectCache::setAccObject):
 
34720
        (KWQAccObjectCache::removeAccObject):
 
34721
        (KWQAccObjectCache::getAccObjectID):
 
34722
        (KWQAccObjectCache::removeAccObjectID):
 
34723
        (KWQAccObjectCache::textMarkerForVisiblePosition):
 
34724
        (KWQAccObjectCache::visiblePositionForTextMarker):
 
34725
        (KWQAccObjectCache::childrenChanged):
 
34726
        * kwq/KWQObject.cpp:
 
34727
        (QObject::restartTimer):
 
34728
        (QObject::timerIntervals):
 
34729
        (deleteTimer):
 
34730
        (QObject::killTimer):
 
34731
        (deleteOneTimer):
 
34732
        (QObject::killTimers):
 
34733
        (sendDeferredTimerEvent):
 
34734
 
 
34735
2006-01-10  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
34736
 
 
34737
        No tests possible, no functionality changes.
 
34738
 
 
34739
        Reviewed by darin.  Committed by eseidel.
 
34740
        
 
34741
        - fix http://bugs.webkit.org/show_bug.cgi?id=6410
 
34742
          Performance regression in text relayout due to bad BidiContext
 
34743
          equality testing
 
34744
 
 
34745
        * khtml/rendering/bidi.cpp:
 
34746
        (khtml::operator==): Return true if BidiContexts match and both
 
34747
        don't have a parent.
 
34748
 
 
34749
2006-01-10  Eric Seidel  <eseidel@apple.com>
 
34750
 
 
34751
        Removed broken links in project file, no review need.
 
34752
 
 
34753
        * WebCore.xcodeproj/project.pbxproj:
 
34754
 
 
34755
2006-01-09  Maciej Stachowiak  <mjs@apple.com>
 
34756
 
 
34757
        Reviewed by Eric.
 
34758
 
 
34759
        - move C++-only methods down from Frame to MacFrame
 
34760
 
 
34761
        * WebCore.xcodeproj/project.pbxproj:
 
34762
        * khtml/Frame.cpp:
 
34763
        (Frame::init):
 
34764
        (Frame::setSettings):
 
34765
        (Frame::provisionalLoadStarted):
 
34766
        (Frame::userGestureHint):
 
34767
        (Frame::renderer):
 
34768
        (Frame::selectionRect):
 
34769
        (Frame::isFrameSet):
 
34770
        (Frame::openURL):
 
34771
        (Frame::didNotOpenURL):
 
34772
        (Frame::selectionStart):
 
34773
        (scanForForm):
 
34774
        (Frame::currentForm):
 
34775
        (Frame::setEncoding):
 
34776
        (Frame::addData):
 
34777
        (Frame::revealSelection):
 
34778
        (Frame::scrollOverflow):
 
34779
        (Frame::paint):
 
34780
        (Frame::adjustPageHeight):
 
34781
        (Frame::pauseTimeouts):
 
34782
        (Frame::resumeTimeouts):
 
34783
        (Frame::canCachePage):
 
34784
        (Frame::saveWindowProperties):
 
34785
        (Frame::saveLocationProperties):
 
34786
        (Frame::restoreWindowProperties):
 
34787
        (Frame::restoreLocationProperties):
 
34788
        (Frame::saveInterpreterBuiltins):
 
34789
        (Frame::restoreInterpreterBuiltins):
 
34790
        (Frame::frameForWidget):
 
34791
        (Frame::frameForNode):
 
34792
        (Frame::nodeForWidget):
 
34793
        (Frame::setDocumentFocus):
 
34794
        (Frame::clearDocumentFocus):
 
34795
        (Frame::mutableInstances):
 
34796
        (Frame::updatePolicyBaseURL):
 
34797
        (Frame::setPolicyBaseURL):
 
34798
        (Frame::forceLayout):
 
34799
        (Frame::forceLayoutWithPageWidthRange):
 
34800
        (Frame::sendResizeEvent):
 
34801
        (Frame::sendScrollEvent):
 
34802
        (Frame::scrollbarsVisible):
 
34803
        (Frame::addMetaData):
 
34804
        (Frame::scrollToAnchor):
 
34805
        (Frame::closeURL):
 
34806
        (Frame::canMouseDownStartSelect):
 
34807
        (Frame::khtmlMouseDoubleClickEvent):
 
34808
        (Frame::passWidgetMouseDownEventToWidget):
 
34809
        (Frame::clearTimers):
 
34810
        (Frame::centerSelectionInVisibleArea):
 
34811
        (Frame::styleForSelectionStart):
 
34812
        (Frame::selectionStartOffset):
 
34813
        (Frame::selectionEndOffset):
 
34814
        (Frame::selectionEnd):
 
34815
        (Frame::setMediaType):
 
34816
        (Frame::setSelectionFromNone):
 
34817
        (Frame::displaysWithFocusAttributes):
 
34818
        (Frame::setWindowHasFocus):
 
34819
        (Frame::backslashAsCurrencySymbol):
 
34820
        (Frame::setName):
 
34821
        (Frame::markedTextUsesUnderlines):
 
34822
        (Frame::markedTextUnderlines):
 
34823
        (Frame::prepareForUserAction):
 
34824
        (Frame::isFrame):
 
34825
        (Frame::mousePressNode):
 
34826
        * khtml/Frame.h:
 
34827
        (Frame::instances):
 
34828
        (Frame::MarkedTextUnderline::MarkedTextUnderline):
 
34829
        * kwq/MacFrame.cpp: Removed.
 
34830
        * kwq/MacFrame.h:
 
34831
        (MacFrame::markedTextRange):
 
34832
        * kwq/MacFrame.mm: - humped a bunch of stuff down to Frame
 
34833
        * kwq/WebCoreSettings.mm:
 
34834
        (-[WebCoreSettings _updateAllViews]): use Mac calls
 
34835
        * kwq/WebCoreTextRendererFactory.mm:
 
34836
        (-[WebCoreTextRendererFactory clearCaches]): ditto
 
34837
 
 
34838
2006-01-10  Eric Seidel  <eseidel@apple.com>
 
34839
 
 
34840
        Rubber-stamped by mjs.
 
34841
 
 
34842
        Split html_formimpl.{cpp,h} into multiple files (one per class)
 
34843
        http://bugs.webkit.org/show_bug.cgi?id=6461
 
34844
 
 
34845
        * WebCore.xcodeproj/project.pbxproj: added files
 
34846
        * khtml/ecma/kjs_html.cpp: updated includes
 
34847
        * khtml/html/FormDataList.h: Added.
 
34848
        * khtml/html/FormDataList.cpp: Added.
 
34849
        * khtml/html/HTMLButtonElementImpl.cpp: Added.
 
34850
        * khtml/html/HTMLButtonElementImpl.h: Added.
 
34851
        * khtml/html/HTMLFieldSetElementImpl.cpp: Added.
 
34852
        * khtml/html/HTMLFieldSetElementImpl.h: Added.
 
34853
        * khtml/html/HTMLFormElementImpl.cpp: Added.
 
34854
        * khtml/html/HTMLFormElementImpl.h: Added.
 
34855
        * khtml/html/HTMLGenericFormElementImpl.cpp: Added.
 
34856
        * khtml/html/HTMLGenericFormElementImpl.h: Added.
 
34857
        * khtml/html/HTMLInputElementImpl.cpp: Added.
 
34858
        * khtml/html/HTMLInputElementImpl.h: Added.
 
34859
        * khtml/html/HTMLIsIndexElementImpl.cpp: Added.
 
34860
        * khtml/html/HTMLIsIndexElementImpl.h: Added.
 
34861
        * khtml/html/HTMLKeygenElementImpl.cpp: Added.
 
34862
        * khtml/html/HTMLKeygenElementImpl.h: Added.
 
34863
        * khtml/html/HTMLLabelElementImpl.cpp: Added.
 
34864
        * khtml/html/HTMLLabelElementImpl.h: Added.
 
34865
        * khtml/html/HTMLLegendElementImpl.cpp: Added.
 
34866
        * khtml/html/HTMLLegendElementImpl.h: Added.
 
34867
        * khtml/html/HTMLOptGroupElementImpl.cpp: Added.
 
34868
        * khtml/html/HTMLOptGroupElementImpl.h: Added.
 
34869
        * khtml/html/HTMLOptionElementImpl.cpp: Added.
 
34870
        * khtml/html/HTMLOptionElementImpl.h: Added.
 
34871
        * khtml/html/HTMLOptionsCollectionImpl.h: Added.
 
34872
        * khtml/html/HTMLSelectElementImpl.cpp: Added.
 
34873
        * khtml/html/HTMLSelectElementImpl.h: Added.
 
34874
        * khtml/html/HTMLTextAreaElementImpl.cpp: Added.
 
34875
        * khtml/html/HTMLTextAreaElementImpl.h: Added.
 
34876
        * khtml/html/html_documentimpl.cpp: updated includes
 
34877
        * khtml/html/html_imageimpl.cpp: updated includes
 
34878
        * khtml/html/html_miscimpl.cpp: updated includes
 
34879
        * khtml/html/html_objectimpl.cpp: updated includes
 
34880
        * khtml/html/htmlfactory.cpp: updated includes
 
34881
        * khtml/html/htmlparser.cpp: updated includes
 
34882
        * khtml/khtmlview.cpp: updated includes
 
34883
        * khtml/rendering/render_block.cpp: updated includes
 
34884
        * khtml/rendering/render_button.cpp: updated includes
 
34885
        * khtml/rendering/render_canvasimage.cpp: updated includes
 
34886
        * khtml/rendering/render_flow.cpp: updated includes
 
34887
        * khtml/rendering/render_form.cpp: updated includes
 
34888
        * khtml/rendering/render_form.h: updated includes
 
34889
        * khtml/rendering/render_image.cpp: updated includes
 
34890
        * khtml/rendering/render_line.cpp: updated includes
 
34891
        * khtml/rendering/render_theme.cpp: updated includes
 
34892
        * khtml/xml/dom_docimpl.cpp: updated includes
 
34893
        * kwq/DOMHTML.mm: updated includes
 
34894
        * kwq/KWQAccObject.mm: updated includes
 
34895
        * kwq/MacFrame.mm: updated includes
 
34896
        * kwq/WebCoreBridge.mm: updated includes
 
34897
 
 
34898
2006-01-09  Alexey Proskuryakov  <ap@nypop.com>
 
34899
 
 
34900
        Reviewed by Darin.
 
34901
 
 
34902
        - fix http://bugs.webkit.org/show_bug.cgi?id=6446
 
34903
          Allow surrogate pairs in numeric entities
 
34904
 
 
34905
        Test case: fast/parser/entity-surrogate-pairs.html
 
34906
 
 
34907
        * khtml/html/htmltokenizer.cpp:
 
34908
        (khtml::HTMLTokenizer::parseEntity): Don't check if we got a surrogate.
 
34909
 
 
34910
2006-01-09  Eric Seidel  <eseidel@apple.com>
 
34911
 
 
34912
        Reviewed by mjs.
 
34913
 
 
34914
        Further code removal (and build fix!)
 
34915
 
 
34916
        * khtml/Frame.cpp:
 
34917
        (Frame::init):
 
34918
        (Frame::~Frame):
 
34919
        (Frame::restoreURL):
 
34920
        (Frame::didOpenURL):
 
34921
        (Frame::baseURL):
 
34922
        (Frame::baseTarget):
 
34923
        * khtml/Frame.h:
 
34924
        (Frame::khtmlMouseDoubleClickEvent):
 
34925
        (Frame::khtmlDrawContentsEvent):
 
34926
        * kwq/KWQLoader.mm:
 
34927
        (KWQServeRequest):
 
34928
        * kwq/KWQSlot.mm:
 
34929
        (KWQSlot::KWQSlot):
 
34930
        (KWQSlot::call):
 
34931
 
 
34932
2006-01-09  Eric Seidel  <eseidel@apple.com>
 
34933
 
 
34934
        Reviewed by mjs.
 
34935
 
 
34936
        Remove unused code from Frame.
 
34937
 
 
34938
        * khtml/Frame.cpp:
 
34939
        (Frame::clear):
 
34940
        (Frame::receivedFirstData):
 
34941
        (Frame::checkCompleted):
 
34942
        (Frame::completeURL):
 
34943
        (Frame::khtmlMousePressEvent):
 
34944
        (Frame::handleMouseMoveEventSelection):
 
34945
        (Frame::khtmlMouseReleaseEvent):
 
34946
        * khtml/Frame.h:
 
34947
        * khtml/khtmlpart_p.h:
 
34948
        * khtml/khtmlview.cpp:
 
34949
        (KHTMLView::viewportWheelEvent):
 
34950
        (KHTMLView::focusOutEvent):
 
34951
 
 
34952
2006-01-09  Eric Seidel  <eseidel@apple.com>
 
34953
 
 
34954
        Reviewed by hyatt.
 
34955
 
 
34956
        Remove khtml-specific forwarding headers.
 
34957
 
 
34958
        * ForwardingHeaders/css: Removed.
 
34959
        * ForwardingHeaders/css/css_base.h: Removed.
 
34960
        * ForwardingHeaders/css/css_computedstyle.h: Removed.
 
34961
        * ForwardingHeaders/css/css_ruleimpl.h: Removed.
 
34962
        * ForwardingHeaders/css/css_stylesheetimpl.h: Removed.
 
34963
        * ForwardingHeaders/css/css_valueimpl.h: Removed.
 
34964
        * ForwardingHeaders/css/csshelper.h: Removed.
 
34965
        * ForwardingHeaders/css/cssparser.h: Removed.
 
34966
        * ForwardingHeaders/css/cssproperties.h: Removed.
 
34967
        * ForwardingHeaders/css/cssstyleselector.h: Removed.
 
34968
        * ForwardingHeaders/css/cssvalues.h: Removed.
 
34969
        * ForwardingHeaders/dom: Removed.
 
34970
        * ForwardingHeaders/dom/css_rule.h: Removed.
 
34971
        * ForwardingHeaders/dom/css_stylesheet.h: Removed.
 
34972
        * ForwardingHeaders/dom/css_value.h: Removed.
 
34973
        * ForwardingHeaders/dom/dom2_events.h: Removed.
 
34974
        * ForwardingHeaders/dom/dom2_range.h: Removed.
 
34975
        * ForwardingHeaders/dom/dom2_traversal.h: Removed.
 
34976
        * ForwardingHeaders/dom/dom_exception.h: Removed.
 
34977
        * ForwardingHeaders/dom/dom_node.h: Removed.
 
34978
        * ForwardingHeaders/dom/dom_string.h: Removed.
 
34979
        * ForwardingHeaders/ecma: Removed.
 
34980
        * ForwardingHeaders/ecma/kjs_binding.h: Removed.
 
34981
        * ForwardingHeaders/ecma/kjs_dom.h: Removed.
 
34982
        * ForwardingHeaders/ecma/kjs_proxy.h: Removed.
 
34983
        * ForwardingHeaders/editing: Removed.
 
34984
        * ForwardingHeaders/editing/SelectionController.h: Removed.
 
34985
        * ForwardingHeaders/editing/edit_actions.h: Removed.
 
34986
        * ForwardingHeaders/editing/html_interchange.h: Removed.
 
34987
        * ForwardingHeaders/editing/htmlediting.h: Removed.
 
34988
        * ForwardingHeaders/editing/jsediting.h: Removed.
 
34989
        * ForwardingHeaders/editing/markup.h: Removed.
 
34990
        * ForwardingHeaders/editing/text_affinity.h: Removed.
 
34991
        * ForwardingHeaders/editing/text_granularity.h: Removed.
 
34992
        * ForwardingHeaders/editing/visible_position.h: Removed.
 
34993
        * ForwardingHeaders/editing/visible_text.h: Removed.
 
34994
        * ForwardingHeaders/editing/visible_units.h: Removed.
 
34995
        * ForwardingHeaders/html: Removed.
 
34996
        * ForwardingHeaders/html/html_baseimpl.h: Removed.
 
34997
        * ForwardingHeaders/html/html_blockimpl.h: Removed.
 
34998
        * ForwardingHeaders/html/html_canvasimpl.h: Removed.
 
34999
        * ForwardingHeaders/html/html_documentimpl.h: Removed.
 
35000
        * ForwardingHeaders/html/html_elementimpl.h: Removed.
 
35001
        * ForwardingHeaders/html/html_formimpl.h: Removed.
 
35002
        * ForwardingHeaders/html/html_headimpl.h: Removed.
 
35003
        * ForwardingHeaders/html/html_imageimpl.h: Removed.
 
35004
        * ForwardingHeaders/html/html_inlineimpl.h: Removed.
 
35005
        * ForwardingHeaders/html/html_listimpl.h: Removed.
 
35006
        * ForwardingHeaders/html/html_miscimpl.h: Removed.
 
35007
        * ForwardingHeaders/html/html_objectimpl.h: Removed.
 
35008
        * ForwardingHeaders/html/html_tableimpl.h: Removed.
 
35009
        * ForwardingHeaders/html/htmlparser.h: Removed.
 
35010
        * ForwardingHeaders/html/htmltokenizer.h: Removed.
 
35011
        * ForwardingHeaders/misc: Removed.
 
35012
        * ForwardingHeaders/misc/decoder.h: Removed.
 
35013
        * ForwardingHeaders/misc/formdata.h: Removed.
 
35014
        * ForwardingHeaders/misc/helper.h: Removed.
 
35015
        * ForwardingHeaders/misc/khtmllayout.h: Removed.
 
35016
        * ForwardingHeaders/misc/loader.h: Removed.
 
35017
        * ForwardingHeaders/misc/loader_client.h: Removed.
 
35018
        * ForwardingHeaders/misc/shared.h: Removed.
 
35019
        * ForwardingHeaders/misc/stringit.h: Removed.
 
35020
        * ForwardingHeaders/rendering: Removed.
 
35021
        * ForwardingHeaders/rendering/font.h: Removed.
 
35022
        * ForwardingHeaders/rendering/render_applet.h: Removed.
 
35023
        * ForwardingHeaders/rendering/render_block.h: Removed.
 
35024
        * ForwardingHeaders/rendering/render_box.h: Removed.
 
35025
        * ForwardingHeaders/rendering/render_br.h: Removed.
 
35026
        * ForwardingHeaders/rendering/render_canvas.h: Removed.
 
35027
        * ForwardingHeaders/rendering/render_canvasimage.h: Removed.
 
35028
        * ForwardingHeaders/rendering/render_flow.h: Removed.
 
35029
        * ForwardingHeaders/rendering/render_form.h: Removed.
 
35030
        * ForwardingHeaders/rendering/render_frames.h: Removed.
 
35031
        * ForwardingHeaders/rendering/render_image.h: Removed.
 
35032
        * ForwardingHeaders/rendering/render_layer.h: Removed.
 
35033
        * ForwardingHeaders/rendering/render_line.h: Removed.
 
35034
        * ForwardingHeaders/rendering/render_list.h: Removed.
 
35035
        * ForwardingHeaders/rendering/render_object.h: Removed.
 
35036
        * ForwardingHeaders/rendering/render_replaced.h: Removed.
 
35037
        * ForwardingHeaders/rendering/render_style.h: Removed.
 
35038
        * ForwardingHeaders/rendering/render_table.h: Removed.
 
35039
        * ForwardingHeaders/rendering/table_layout.h: Removed.
 
35040
        * ForwardingHeaders/xbl: Removed.
 
35041
        * ForwardingHeaders/xbl/xbl_binding_manager.h: Removed.
 
35042
        * ForwardingHeaders/xml: Removed.
 
35043
        * ForwardingHeaders/xml/EventNames.h: Removed.
 
35044
        * ForwardingHeaders/xml/dom2_eventsimpl.h: Removed.
 
35045
        * ForwardingHeaders/xml/dom2_rangeimpl.h: Removed.
 
35046
        * ForwardingHeaders/xml/dom2_traversalimpl.h: Removed.
 
35047
        * ForwardingHeaders/xml/dom2_viewsimpl.h: Removed.
 
35048
        * ForwardingHeaders/xml/dom_atomicstring.h: Removed.
 
35049
        * ForwardingHeaders/xml/dom_docimpl.h: Removed.
 
35050
        * ForwardingHeaders/xml/dom_elementimpl.h: Removed.
 
35051
        * ForwardingHeaders/xml/dom_nodeimpl.h: Removed.
 
35052
        * ForwardingHeaders/xml/dom_position.h: Removed.
 
35053
        * ForwardingHeaders/xml/dom_stringimpl.h: Removed.
 
35054
        * ForwardingHeaders/xml/dom_textimpl.h: Removed.
 
35055
        * ForwardingHeaders/xml/dom_xmlimpl.h: Removed.
 
35056
        * ForwardingHeaders/xml/xml_tokenizer.h: Removed.
 
35057
        * WebCore.xcodeproj/project.pbxproj:
 
35058
        * khtml/css/css_valueimpl.cpp:
 
35059
        * khtml/css/cssstyleselector.cpp:
 
35060
        * khtml/editing/apply_style_command.cpp:
 
35061
        * khtml/editing/jsediting.cpp:
 
35062
        * khtml/editing/replace_selection_command.cpp:
 
35063
        * khtml/html/html_baseimpl.cpp:
 
35064
        * khtml/html/html_blockimpl.cpp:
 
35065
        * khtml/html/html_canvasimpl.cpp:
 
35066
        * khtml/html/html_documentimpl.cpp:
 
35067
        * khtml/html/html_elementimpl.cpp:
 
35068
        * khtml/html/html_formimpl.cpp:
 
35069
        * khtml/html/html_imageimpl.cpp:
 
35070
        * khtml/html/html_inlineimpl.cpp:
 
35071
        * khtml/html/html_listimpl.cpp:
 
35072
        * khtml/html/html_objectimpl.cpp:
 
35073
        * khtml/html/html_tableimpl.cpp:
 
35074
        * khtml/html/htmlparser.cpp:
 
35075
        * khtml/khtml_part.cpp:
 
35076
        * khtml/misc/decoder.cpp:
 
35077
        * khtml/rendering/render_frames.cpp:
 
35078
        * khtml/xml/dom_elementimpl.cpp:
 
35079
 
 
35080
2006-01-10  Anders Carlsson  <andersca@mac.com>
 
35081
 
 
35082
        Reviewed by Maciej.
 
35083
 
 
35084
        - renamed ChildFrame::m_frame to m_renderer and
 
35085
        ChildFrame::m_part to m_frame which makes more sense.
 
35086
        
 
35087
        This also fixes some bugs which were introduced in Maciej's
 
35088
        previous commit.
 
35089
        
 
35090
        * khtml/Frame.cpp:
 
35091
        (Frame::stopLoading):
 
35092
        (Frame::clear):
 
35093
        (Frame::stopAnimations):
 
35094
        (Frame::checkEmitLoadEvent):
 
35095
        (Frame::requestFrame):
 
35096
        (Frame::requestObject):
 
35097
        (Frame::processObjectRequest):
 
35098
        (Frame::childFrame):
 
35099
        (Frame::findFrame):
 
35100
        (Frame::frameExists):
 
35101
        (Frame::setZoomFactor):
 
35102
        (Frame::frames):
 
35103
        (Frame::childFrameNamed):
 
35104
        (Frame::connectChild):
 
35105
        (Frame::disconnectChild):
 
35106
        (Frame::handleFallbackContent):
 
35107
        * khtml/khtmlpart_p.h:
 
35108
        * khtml/xml/dom_docimpl.cpp:
 
35109
        (DocumentImpl::ownerElement):
 
35110
        * kwq/MacFrame.mm:
 
35111
        (Frame::frameDetached):
 
35112
        (MacFrame::createPart):
 
35113
        (MacFrame::nextKeyViewInFrameHierarchy):
 
35114
        (MacFrame::setPolicyBaseURL):
 
35115
 
 
35116
2006-01-09  Maciej Stachowiak  <mjs@apple.com>
 
35117
 
 
35118
        Reviewed by Darin.
 
35119
 
 
35120
        http://bugs.webkit.org/show_bug.cgi?id=6450
 
35121
        - renamed KHTMLPart to Frame (and KWQKHTMLPart to MacFrame for now)
 
35122
 
 
35123
        * ForwardingHeaders/ksvg2/KSVGPart.h:
 
35124
        * WebCore.xcodeproj/project.pbxproj:
 
35125
        * khtml/Frame.cpp: Added.
 
35126
        (khtml::PartStyleSheetLoader::PartStyleSheetLoader):
 
35127
        (khtml::PartStyleSheetLoader::setStyleSheet):
 
35128
        (Frame::Frame):
 
35129
        (Frame::init):
 
35130
        (Frame::~Frame):
 
35131
        (Frame::restoreURL):
 
35132
        (Frame::didOpenURL):
 
35133
        (Frame::didExplicitOpen):
 
35134
        (Frame::stopLoading):
 
35135
        (Frame::closeURL):
 
35136
        (Frame::browserExtension):
 
35137
        (Frame::view):
 
35138
        (Frame::setJScriptEnabled):
 
35139
        (Frame::jScriptEnabled):
 
35140
        (Frame::setMetaRefreshEnabled):
 
35141
        (Frame::metaRefreshEnabled):
 
35142
        (Frame::jScript):
 
35143
        (Frame::replaceContentsWithScriptResult):
 
35144
        (Frame::executeScript):
 
35145
        (Frame::scheduleScript):
 
35146
        (Frame::executeScheduledScript):
 
35147
        (Frame::setJavaEnabled):
 
35148
        (Frame::javaEnabled):
 
35149
        (Frame::setPluginsEnabled):
 
35150
        (Frame::pluginsEnabled):
 
35151
        (Frame::slotDebugDOMTree):
 
35152
        (Frame::slotDebugRenderTree):
 
35153
        (Frame::setAutoloadImages):
 
35154
        (Frame::autoloadImages):
 
35155
        (Frame::clear):
 
35156
        (Frame::openFile):
 
35157
        (Frame::xmlDocImpl):
 
35158
        (Frame::replaceDocImpl):
 
35159
        (Frame::receivedFirstData):
 
35160
        (Frame::slotFinished):
 
35161
        (Frame::childBegin):
 
35162
        (Frame::begin):
 
35163
        (Frame::write):
 
35164
        (Frame::end):
 
35165
        (Frame::endIfNotLoading):
 
35166
        (Frame::stop):
 
35167
        (Frame::stopAnimations):
 
35168
        (Frame::gotoAnchor):
 
35169
        (Frame::slotFinishedParsing):
 
35170
        (Frame::slotLoaderRequestStarted):
 
35171
        (Frame::slotLoaderRequestDone):
 
35172
        (Frame::checkCompleted):
 
35173
        (Frame::checkEmitLoadEvent):
 
35174
        (Frame::settings):
 
35175
        (Frame::baseURL):
 
35176
        (Frame::baseTarget):
 
35177
        (Frame::completeURL):
 
35178
        (Frame::scheduleRedirection):
 
35179
        (Frame::scheduleLocationChange):
 
35180
        (Frame::isScheduledLocationChangePending):
 
35181
        (Frame::scheduleHistoryNavigation):
 
35182
        (Frame::cancelRedirection):
 
35183
        (Frame::changeLocation):
 
35184
        (Frame::slotRedirect):
 
35185
        (Frame::slotRedirection):
 
35186
        (Frame::encoding):
 
35187
        (Frame::setUserStyleSheet):
 
35188
        (Frame::setStandardFont):
 
35189
        (Frame::setFixedFont):
 
35190
        (Frame::urlCursor):
 
35191
        (Frame::onlyLocalReferences):
 
35192
        (Frame::setOnlyLocalReferences):
 
35193
        (Frame::selectedText):
 
35194
        (Frame::hasSelection):
 
35195
        (Frame::selection):
 
35196
        (Frame::selectionGranularity):
 
35197
        (Frame::setSelectionGranularity):
 
35198
        (Frame::dragCaret):
 
35199
        (Frame::mark):
 
35200
        (Frame::setMark):
 
35201
        (Frame::setSelection):
 
35202
        (Frame::setDragCaret):
 
35203
        (Frame::clearSelection):
 
35204
        (Frame::invalidateSelection):
 
35205
        (Frame::setCaretVisible):
 
35206
        (Frame::clearCaretRectIfNeeded):
 
35207
        (isFrameElement):
 
35208
        (Frame::setFocusNodeIfNeeded):
 
35209
        (Frame::selectionLayoutChanged):
 
35210
        (Frame::setXPosForVerticalArrowNavigation):
 
35211
        (Frame::xPosForVerticalArrowNavigation):
 
35212
        (Frame::timerEvent):
 
35213
        (Frame::paintCaret):
 
35214
        (Frame::paintDragCaret):
 
35215
        (Frame::urlSelected):
 
35216
        (Frame::requestFrame):
 
35217
        (Frame::requestFrameName):
 
35218
        (Frame::requestObject):
 
35219
        (Frame::processObjectRequest):
 
35220
        (Frame::submitFormAgain):
 
35221
        (Frame::submitForm):
 
35222
        (Frame::slotParentCompleted):
 
35223
        (Frame::slotChildStarted):
 
35224
        (Frame::slotChildCompleted):
 
35225
        (Frame::childFrame):
 
35226
        (Frame::findFrame):
 
35227
        (Frame::frameExists):
 
35228
        (Frame::parentFrame):
 
35229
        (Frame::zoomFactor):
 
35230
        (Frame::slotIncZoom):
 
35231
        (Frame::slotDecZoom):
 
35232
        (Frame::setZoomFactor):
 
35233
        (Frame::setJSStatusBarText):
 
35234
        (Frame::setJSDefaultStatusBarText):
 
35235
        (Frame::jsStatusBarText):
 
35236
        (Frame::jsDefaultStatusBarText):
 
35237
        (Frame::referrer):
 
35238
        (Frame::lastModified):
 
35239
        (Frame::reparseConfiguration):
 
35240
        (Frame::frameNames):
 
35241
        (Frame::frames):
 
35242
        (Frame::childFrameNamed):
 
35243
        (Frame::setDNDEnabled):
 
35244
        (Frame::dndEnabled):
 
35245
        (Frame::shouldDragAutoNode):
 
35246
        (Frame::customEvent):
 
35247
        (Frame::isPointInsideSelection):
 
35248
        (Frame::selectClosestWordFromMouseEvent):
 
35249
        (Frame::handleMousePressEventDoubleClick):
 
35250
        (Frame::handleMousePressEventTripleClick):
 
35251
        (Frame::handleMousePressEventSingleClick):
 
35252
        (Frame::khtmlMousePressEvent):
 
35253
        (Frame::khtmlMouseDoubleClickEvent):
 
35254
        (Frame::handleMouseMoveEventSelection):
 
35255
        (Frame::khtmlMouseMoveEvent):
 
35256
        (Frame::khtmlMouseReleaseEvent):
 
35257
        (Frame::khtmlDrawContentsEvent):
 
35258
        (Frame::startAutoScroll):
 
35259
        (Frame::stopAutoScroll):
 
35260
        (Frame::selectAll):
 
35261
        (Frame::selectContentsOfNode):
 
35262
        (Frame::shouldChangeSelection):
 
35263
        (Frame::shouldBeginEditing):
 
35264
        (Frame::shouldEndEditing):
 
35265
        (Frame::isContentEditable):
 
35266
        (Frame::lastEditCommand):
 
35267
        (Frame::appliedEditing):
 
35268
        (Frame::unappliedEditing):
 
35269
        (Frame::reappliedEditing):
 
35270
        (Frame::typingStyle):
 
35271
        (Frame::setTypingStyle):
 
35272
        (Frame::clearTypingStyle):
 
35273
        (Frame::slotPartRemoved):
 
35274
        (Frame::createHTMLEventListener):
 
35275
        (Frame::opener):
 
35276
        (Frame::setOpener):
 
35277
        (Frame::openedByJS):
 
35278
        (Frame::setOpenedByJS):
 
35279
        (Frame::preloadStyleSheet):
 
35280
        (Frame::preloadScript):
 
35281
        (Frame::restored):
 
35282
        (Frame::incrementFrameCount):
 
35283
        (Frame::decrementFrameCount):
 
35284
        (Frame::topLevelFrameCount):
 
35285
        (Frame::tabsToLinks):
 
35286
        (Frame::tabsToAllControls):
 
35287
        (Frame::copyToPasteboard):
 
35288
        (Frame::cutToPasteboard):
 
35289
        (Frame::pasteFromPasteboard):
 
35290
        (Frame::pasteAndMatchStyle):
 
35291
        (Frame::transpose):
 
35292
        (Frame::redo):
 
35293
        (Frame::undo):
 
35294
        (Frame::computeAndSetTypingStyle):
 
35295
        (Frame::applyStyle):
 
35296
        (Frame::applyParagraphStyle):
 
35297
        (updateState):
 
35298
        (Frame::selectionHasStyle):
 
35299
        (Frame::selectionStartHasStyle):
 
35300
        (Frame::selectionStartStylePropertyValue):
 
35301
        (Frame::selectionComputedStyle):
 
35302
        (Frame::applyEditingStyleToBodyElement):
 
35303
        (Frame::removeEditingStyleFromBodyElement):
 
35304
        (Frame::applyEditingStyleToElement):
 
35305
        (Frame::removeEditingStyleFromElement):
 
35306
        (Frame::isCharacterSmartReplaceExempt):
 
35307
        (Frame::connectChild):
 
35308
        (Frame::disconnectChild):
 
35309
        (Frame::keepAlive):
 
35310
        (Frame::slotEndLifeSupport):
 
35311
        (Frame::selectFrameElementInParentIfFullySelected):
 
35312
        (Frame::handleFallbackContent):
 
35313
        * khtml/Frame.h: Added.
 
35314
        * khtml/css/cssstyleselector.cpp:
 
35315
        (khtml::CSSStyleSelector::CSSStyleSelector):
 
35316
        (khtml::CSSStyleSelector::initForStyleResolve):
 
35317
        (khtml::CSSStyleSelector::checkOneSelector):
 
35318
        (khtml::CSSStyleSelector::applyProperty):
 
35319
        (khtml::CSSStyleSelector::getComputedSizeFromSpecifiedSize):
 
35320
        * khtml/css/cssstyleselector.h:
 
35321
        * khtml/ecma/kjs_binding.cpp:
 
35322
        (KJS::ScriptInterpreter::ScriptInterpreter):
 
35323
        (KJS::ScriptInterpreter::~ScriptInterpreter):
 
35324
        * khtml/ecma/kjs_binding.h:
 
35325
        (KJS::ScriptInterpreter::frame):
 
35326
        * khtml/ecma/kjs_dom.cpp:
 
35327
        (KJS::DOMDocument::getValueProperty):
 
35328
        (KJS::getDOMDocumentNode):
 
35329
        (KJS::checkNodeSecurity):
 
35330
        * khtml/ecma/kjs_events.cpp:
 
35331
        (KJS::JSAbstractEventListener::handleEvent):
 
35332
        (KJS::JSLazyEventListener::parseCode):
 
35333
        * khtml/ecma/kjs_html.cpp:
 
35334
        (KJS::KJS::HTMLDocFunction::callAsFunction):
 
35335
        (KJS::HTMLDocument::namedItemGetter):
 
35336
        (KJS::HTMLDocument::getValueProperty):
 
35337
        (KJS::KJS::HTMLDocument::putValueProperty):
 
35338
        (KJS::HTMLElement::framesetNameGetter):
 
35339
        (KJS::HTMLElement::frameWindowPropertyGetter):
 
35340
        (KJS::HTMLElement::getOwnPropertySlot):
 
35341
        (KJS::KJS::HTMLElement::implementsCall):
 
35342
        (KJS::Image::notifyFinished):
 
35343
        * khtml/ecma/kjs_navigator.cpp:
 
35344
        (KJS::Navigator::Navigator):
 
35345
        (KJS::Navigator::getValueProperty):
 
35346
        (KJS::NavigatorFunc::callAsFunction):
 
35347
        * khtml/ecma/kjs_navigator.h:
 
35348
        (KJS::Navigator::frame):
 
35349
        * khtml/ecma/kjs_proxy.cpp:
 
35350
        (KJSProxyImpl::KJSProxyImpl):
 
35351
        (KJSProxyImpl::evaluate):
 
35352
        (KJSProxyImpl::clear):
 
35353
        (KJSProxyImpl::createHTMLEventHandler):
 
35354
        (KJSProxyImpl::interpreter):
 
35355
        (KJSProxyImpl::initScript):
 
35356
        * khtml/ecma/kjs_proxy.h:
 
35357
        * khtml/ecma/kjs_traversal.cpp:
 
35358
        (KJS::JSNodeFilterCondition::acceptNode):
 
35359
        * khtml/ecma/kjs_window.cpp:
 
35360
        (KJS::History::History):
 
35361
        (KJS::FrameArray::FrameArray):
 
35362
        (KJS::Screen::getValueProperty):
 
35363
        (KJS::Window::Window):
 
35364
        (KJS::Window::interpreter):
 
35365
        (KJS::Window::retrieveWindow):
 
35366
        (KJS::Window::retrieve):
 
35367
        (KJS::Window::location):
 
35368
        (KJS::Window::selection):
 
35369
        (KJS::Window::locationbar):
 
35370
        (KJS::Window::menubar):
 
35371
        (KJS::Window::personalbar):
 
35372
        (KJS::Window::statusbar):
 
35373
        (KJS::Window::toolbar):
 
35374
        (KJS::Window::scrollbars):
 
35375
        (KJS::allowPopUp):
 
35376
        (KJS::createNewWindow):
 
35377
        (KJS::canShowModalDialog):
 
35378
        (KJS::canShowModalDialogNow):
 
35379
        (KJS::showModalDialog):
 
35380
        (KJS::Window::getValueProperty):
 
35381
        (KJS::Window::childFrameGetter):
 
35382
        (KJS::Window::namedFrameGetter):
 
35383
        (KJS::Window::indexGetter):
 
35384
        (KJS::Window::namedItemGetter):
 
35385
        (KJS::Window::getOwnPropertySlot):
 
35386
        (KJS::Window::put):
 
35387
        (KJS::Window::toBoolean):
 
35388
        (KJS::Window::scheduleClose):
 
35389
        (KJS::Window::isSafeScript):
 
35390
        (KJS::Window::setListener):
 
35391
        (KJS::Window::getListener):
 
35392
        (KJS::Window::setCurrentEvent):
 
35393
        (KJS::WindowFunc::callAsFunction):
 
35394
        (KJS::Window::updateLayout):
 
35395
        (KJS::ScheduledAction::execute):
 
35396
        (KJS::WindowQObject::WindowQObject):
 
35397
        (KJS::FrameArray::getValueProperty):
 
35398
        (KJS::FrameArray::indexGetter):
 
35399
        (KJS::FrameArray::nameGetter):
 
35400
        (KJS::FrameArray::getOwnPropertySlot):
 
35401
        (KJS::Location::Location):
 
35402
        (KJS::Location::getValueProperty):
 
35403
        (KJS::Location::getOwnPropertySlot):
 
35404
        (KJS::Location::put):
 
35405
        (KJS::Location::toString):
 
35406
        (KJS::LocationFunc::callAsFunction):
 
35407
        (KJS::Selection::Selection):
 
35408
        (KJS::Selection::getValueProperty):
 
35409
        (KJS::Selection::getOwnPropertySlot):
 
35410
        (KJS::Selection::toString):
 
35411
        (KJS::SelectionFunc::callAsFunction):
 
35412
        (KJS::BarInfo::BarInfo):
 
35413
        (KJS::BarInfo::getValueProperty):
 
35414
        (KJS::BarInfo::getOwnPropertySlot):
 
35415
        (KJS::History::getValueProperty):
 
35416
        (KJS::HistoryFunc::callAsFunction):
 
35417
        * khtml/ecma/kjs_window.h:
 
35418
        (KJS::Window::frame):
 
35419
        (KJS::Location::frame):
 
35420
        (KJS::Selection::frame):
 
35421
        (KJS::BarInfo::frame):
 
35422
        * khtml/ecma/xmlhttprequest.cpp:
 
35423
        (KJS::XMLHttpRequest::changeState):
 
35424
        (KJS::XMLHttpRequestProtoFunc::callAsFunction):
 
35425
        * khtml/editing/SelectionController.cpp:
 
35426
        (khtml::SelectionController::modify):
 
35427
        (khtml::SelectionController::xPosForVerticalArrowNavigation):
 
35428
        * khtml/editing/SelectionController.h:
 
35429
        (khtml::SelectionController::frame):
 
35430
        * khtml/editing/delete_selection_command.cpp:
 
35431
        (khtml::DeleteSelectionCommand::calculateTypingStyleAfterDelete):
 
35432
        * khtml/editing/edit_command.cpp:
 
35433
        (khtml::EditCommand::EditCommand):
 
35434
        (khtml::EditCommand::apply):
 
35435
        (khtml::EditCommand::unapply):
 
35436
        (khtml::EditCommand::reapply):
 
35437
        (khtml::EditCommand::styleAtPosition):
 
35438
        * khtml/editing/htmlediting.cpp:
 
35439
        * khtml/editing/insert_line_break_command.cpp:
 
35440
        (khtml::InsertLineBreakCommand::doApply):
 
35441
        * khtml/editing/insert_text_command.cpp:
 
35442
        (khtml::InsertTextCommand::input):
 
35443
        * khtml/editing/jsediting.cpp:
 
35444
        (DOM::JSEditor::execCommand):
 
35445
        (DOM::JSEditor::queryCommandEnabled):
 
35446
        (DOM::JSEditor::queryCommandIndeterm):
 
35447
        (DOM::JSEditor::queryCommandState):
 
35448
        (DOM::JSEditor::queryCommandValue):
 
35449
        * khtml/editing/jsediting.h:
 
35450
        * khtml/editing/replace_selection_command.cpp:
 
35451
        (khtml::ReplaceSelectionCommand::doApply):
 
35452
        * khtml/editing/text_granularity.h:
 
35453
        * khtml/editing/typing_command.cpp:
 
35454
        (khtml::TypingCommand::deleteKeyPressed):
 
35455
        (khtml::TypingCommand::forwardDeleteKeyPressed):
 
35456
        (khtml::TypingCommand::insertText):
 
35457
        (khtml::TypingCommand::insertLineBreak):
 
35458
        (khtml::TypingCommand::insertParagraphSeparatorInQuotedContent):
 
35459
        (khtml::TypingCommand::insertParagraphSeparator):
 
35460
        (khtml::TypingCommand::markMisspellingsAfterTyping):
 
35461
        (khtml::TypingCommand::typingAddedToOpenCommand):
 
35462
        (khtml::TypingCommand::insertTextRunWithoutNewlines):
 
35463
        * khtml/html/html_baseimpl.cpp:
 
35464
        (HTMLFrameElementImpl::isURLAllowed):
 
35465
        (HTMLFrameElementImpl::openURL):
 
35466
        (HTMLFrameElementImpl::attach):
 
35467
        (HTMLFrameElementImpl::close):
 
35468
        (HTMLFrameElementImpl::contentPart):
 
35469
        (HTMLFrameElementImpl::contentDocument):
 
35470
        (HTMLIFrameElementImpl::attach):
 
35471
        * khtml/html/html_baseimpl.h:
 
35472
        * khtml/html/html_canvasimpl.cpp:
 
35473
        * khtml/html/html_documentimpl.cpp:
 
35474
        (DOM::HTMLDocumentImpl::lastModified):
 
35475
        * khtml/html/html_elementimpl.cpp:
 
35476
        (HTMLElementImpl::isContentEditable):
 
35477
        (HTMLElementImpl::setContentEditable):
 
35478
        * khtml/html/html_formimpl.cpp:
 
35479
        (DOM::HTMLFormElementImpl::formData):
 
35480
        (DOM::HTMLFormElementImpl::prepareSubmit):
 
35481
        (DOM::HTMLFormElementImpl::submit):
 
35482
        (DOM::HTMLFormElementImpl::reset):
 
35483
        (DOM::HTMLGenericFormElementImpl::isKeyboardFocusable):
 
35484
        (DOM::HTMLKeygenElementImpl::appendFormData):
 
35485
        * khtml/html/html_headimpl.cpp:
 
35486
        (HTMLBaseElementImpl::process):
 
35487
        (HTMLLinkElementImpl::process):
 
35488
        (HTMLScriptElementImpl::parseMappedAttribute):
 
35489
        (HTMLScriptElementImpl::insertedIntoDocument):
 
35490
        (HTMLScriptElementImpl::evaluateScript):
 
35491
        * khtml/html/html_imageimpl.cpp:
 
35492
        * khtml/html/html_inlineimpl.cpp:
 
35493
        (DOM::HTMLAnchorElementImpl::isKeyboardFocusable):
 
35494
        (DOM::HTMLAnchorElementImpl::defaultEventHandler):
 
35495
        * khtml/html/html_objectimpl.cpp:
 
35496
        (DOM::HTMLAppletElementImpl::createRenderer):
 
35497
        (DOM::HTMLAppletElementImpl::getAppletInstance):
 
35498
        (DOM::HTMLEmbedElementImpl::getEmbedInstance):
 
35499
        (DOM::HTMLEmbedElementImpl::rendererIsNeeded):
 
35500
        (DOM::HTMLObjectElementImpl::getObjectInstance):
 
35501
        (DOM::HTMLObjectElementImpl::rendererIsNeeded):
 
35502
        * khtml/html/html_tableimpl.cpp:
 
35503
        * khtml/html/htmlparser.cpp:
 
35504
        (HTMLParser::noscriptCreateErrorCheck):
 
35505
        * khtml/html/htmltokenizer.cpp:
 
35506
        (khtml::HTMLTokenizer::scriptHandler):
 
35507
        (khtml::HTMLTokenizer::scriptExecution):
 
35508
        (khtml::HTMLTokenizer::parseTag):
 
35509
        (khtml::HTMLTokenizer::write):
 
35510
        (khtml::HTMLTokenizer::stopParsing):
 
35511
        (khtml::HTMLTokenizer::timerEvent):
 
35512
        (khtml::HTMLTokenizer::processToken):
 
35513
        * khtml/khtml_part.cpp: Removed.
 
35514
        * khtml/khtml_part.h: Removed.
 
35515
        * khtml/khtmlpart_p.h:
 
35516
        (KHTMLPartPrivate::KHTMLPartPrivate):
 
35517
        * khtml/khtmlview.cpp:
 
35518
        (KHTMLView::KHTMLView):
 
35519
        (KHTMLView::~KHTMLView):
 
35520
        (KHTMLView::clearPart):
 
35521
        (KHTMLView::clear):
 
35522
        (KHTMLView::resizeEvent):
 
35523
        (KHTMLView::adjustViewSize):
 
35524
        (KHTMLView::layout):
 
35525
        (KHTMLView::updateDashboardRegions):
 
35526
        (KHTMLView::viewportMousePressEvent):
 
35527
        (KHTMLView::viewportMouseDoubleClickEvent):
 
35528
        (selectCursor):
 
35529
        (KHTMLView::viewportMouseMoveEvent):
 
35530
        (KHTMLView::viewportMouseReleaseEvent):
 
35531
        (KHTMLView::keyPressEvent):
 
35532
        (KHTMLView::dispatchDragEvent):
 
35533
        (KHTMLView::updateDragAndDrop):
 
35534
        (KHTMLView::focusNextPrevNode):
 
35535
        (KHTMLView::mediaType):
 
35536
        (KHTMLView::dispatchMouseEvent):
 
35537
        (KHTMLView::viewportWheelEvent):
 
35538
        (KHTMLView::focusInEvent):
 
35539
        (KHTMLView::focusOutEvent):
 
35540
        (KHTMLView::timerEvent):
 
35541
        (KHTMLView::scheduleRelayout):
 
35542
        (KHTMLView::unscheduleRelayout):
 
35543
        * khtml/khtmlview.h:
 
35544
        (KHTMLView::frame):
 
35545
        * khtml/misc/CachedImageCallback.cpp:
 
35546
        (khtml::CachedImageCallback::notifyUpdate):
 
35547
        (khtml::CachedImageCallback::notifyFinished):
 
35548
        (khtml::CachedImageCallback::clear):
 
35549
        * khtml/misc/CachedObject.h:
 
35550
        * khtml/misc/DocLoader.cpp:
 
35551
        (khtml::DocLoader::DocLoader):
 
35552
        (khtml::DocLoader::requestImage):
 
35553
        (khtml::DocLoader::requestStyleSheet):
 
35554
        (khtml::DocLoader::requestScript):
 
35555
        (khtml::DocLoader::requestXSLStyleSheet):
 
35556
        (khtml::DocLoader::requestXBLDocument):
 
35557
        * khtml/misc/DocLoader.h:
 
35558
        (khtml::DocLoader::frame):
 
35559
        * khtml/misc/loader.cpp:
 
35560
        (khtml::Loader::slotReceivedResponse):
 
35561
        * khtml/rendering/InlineTextBox.cpp:
 
35562
        (khtml::InlineTextBox::paint):
 
35563
        (khtml::InlineTextBox::paintMarkedTextUnderline):
 
35564
        * khtml/rendering/InlineTextBox.h:
 
35565
        * khtml/rendering/render_applet.cpp:
 
35566
        (RenderApplet::createWidgetIfNecessary):
 
35567
        * khtml/rendering/render_block.cpp:
 
35568
        (khtml::RenderBlock::paintCaret):
 
35569
        * khtml/rendering/render_canvas.cpp:
 
35570
        * khtml/rendering/render_form.cpp:
 
35571
        (RenderFileButton::RenderFileButton):
 
35572
        * khtml/rendering/render_frames.cpp:
 
35573
        (isURLAllowed):
 
35574
        (RenderPartObject::updateWidget):
 
35575
        * khtml/rendering/render_layer.cpp:
 
35576
        * khtml/rendering/render_object.cpp:
 
35577
        (RenderObject::draggableNode):
 
35578
        * khtml/rendering/render_replaced.cpp:
 
35579
        (RenderWidget::eventFilter):
 
35580
        * khtml/xml/dom2_eventsimpl.h:
 
35581
        * khtml/xml/dom_docimpl.cpp:
 
35582
        (DocumentImpl::DocumentImpl):
 
35583
        (DocumentImpl::updateTitle):
 
35584
        (DocumentImpl::frame):
 
35585
        (DocumentImpl::recalcStyle):
 
35586
        (DocumentImpl::updateSelection):
 
35587
        (DocumentImpl::open):
 
35588
        (DocumentImpl::close):
 
35589
        (DocumentImpl::implicitClose):
 
35590
        (DocumentImpl::processHttpEquiv):
 
35591
        (DocumentImpl::selectedStylesheetSet):
 
35592
        (DocumentImpl::setSelectedStylesheetSet):
 
35593
        (DocumentImpl::recalcStyleSelector):
 
35594
        (DocumentImpl::relinquishesEditingFocus):
 
35595
        (DocumentImpl::acceptsEditingFocus):
 
35596
        (DocumentImpl::clearSelectionIfNeeded):
 
35597
        (DocumentImpl::createHTMLEventListener):
 
35598
        (DocumentImpl::ownerElement):
 
35599
        (DocumentImpl::referrer):
 
35600
        (DocumentImpl::parentDocument):
 
35601
        * khtml/xml/dom_docimpl.h:
 
35602
        * khtml/xml/dom_elementimpl.cpp:
 
35603
        (ElementImpl::focus):
 
35604
        * khtml/xml/dom_nodeimpl.cpp:
 
35605
        (DOM::NodeImpl::dispatchEvent):
 
35606
        * khtml/xml/dom_xmlimpl.cpp:
 
35607
        (DOM::ProcessingInstructionImpl::checkStyleSheet):
 
35608
        * khtml/xml/xml_tokenizer.cpp:
 
35609
        (khtml::XMLTokenizer::processingInstruction):
 
35610
        (khtml::XMLTokenizer::executeScripts):
 
35611
        (khtml::XMLTokenizer::notifyFinished):
 
35612
        * khtml/xsl/xslt_processorimpl.cpp:
 
35613
        (DOM::XSLTProcessorImpl::createDocumentFromSource):
 
35614
        * ksvg2/svg/SVGAElementImpl.cpp:
 
35615
        (SVGAElementImpl::defaultEventHandler):
 
35616
        * ksvg2/svg/SVGImageElementImpl.cpp:
 
35617
        (SVGImageElementImpl::notifyFinished):
 
35618
        * kwq/DOM.mm:
 
35619
        (-[DOMNode KJS::Bindings::]):
 
35620
        * kwq/DOMHTML.mm:
 
35621
        * kwq/DOMInternal.mm:
 
35622
        (-[WebScriptObject _initializeScriptDOMNodeImp]):
 
35623
        * kwq/KWQAccObject.mm:
 
35624
        (-[KWQAccObject textUnderElement]):
 
35625
        (-[KWQAccObject value]):
 
35626
        (-[KWQAccObject accessibilityPerformAction:]):
 
35627
        (-[KWQAccObject accessibilityAttributeValue:]):
 
35628
        (-[KWQAccObject doAXTextMarkerForPosition:]):
 
35629
        (-[KWQAccObject rendererForView:]):
 
35630
        (-[KWQAccObject doSetAXSelectedTextMarkerRange:]):
 
35631
        * kwq/KWQClipboard.h:
 
35632
        * kwq/KWQClipboard.mm:
 
35633
        (KWQClipboard::KWQClipboard):
 
35634
        (KWQClipboard::dragNSImage):
 
35635
        * kwq/KWQComboBox.mm:
 
35636
        (-[KWQPopUpButtonCell trackMouse:inRect:ofView:untilMouseUp:]):
 
35637
        (-[KWQPopUpButton becomeFirstResponder]):
 
35638
        (-[KWQPopUpButton resignFirstResponder]):
 
35639
        (-[KWQPopUpButton nextKeyView]):
 
35640
        (-[KWQPopUpButton previousKeyView]):
 
35641
        * kwq/KWQFileButton.h:
 
35642
        * kwq/KWQFileButton.mm:
 
35643
        (KWQFileButton::KWQFileButton):
 
35644
        (KWQFileButton::focusPolicy):
 
35645
        (KWQFileButton::focusChanged):
 
35646
        * kwq/KWQFrame.mm:
 
35647
        (QFrame::setFrameStyle):
 
35648
        * kwq/KWQKHTMLFactory.h:
 
35649
        * kwq/KWQKHTMLPart.cpp: Removed.
 
35650
        * kwq/KWQKHTMLPart.h: Removed.
 
35651
        * kwq/KWQKHTMLPart.mm: Removed.
 
35652
        * kwq/KWQKHTMLPartBrowserExtension.h:
 
35653
        * kwq/KWQKHTMLPartBrowserExtension.mm:
 
35654
        (KHTMLPartBrowserExtension::KHTMLPartBrowserExtension):
 
35655
        (KHTMLPartBrowserExtension::openURLRequest):
 
35656
        (KHTMLPartBrowserExtension::createNewWindow):
 
35657
        (KHTMLPartBrowserExtension::setIconURL):
 
35658
        (KHTMLPartBrowserExtension::setTypedIconURL):
 
35659
        (KHTMLPartBrowserExtension::canRunModal):
 
35660
        (KHTMLPartBrowserExtension::canRunModalNow):
 
35661
        (KHTMLPartBrowserExtension::runModal):
 
35662
        * kwq/KWQKHTMLView.cpp:
 
35663
        (KHTMLView::topLevelWidget):
 
35664
        * kwq/KWQKJavaAppletWidget.h:
 
35665
        * kwq/KWQKJavaAppletWidget.mm:
 
35666
        (KJavaAppletWidget::KJavaAppletWidget):
 
35667
        * kwq/KWQKPartsBrowserInterface.h:
 
35668
        (KParts::BrowserInterface::BrowserInterface):
 
35669
        * kwq/KWQKPartsBrowserInterface.mm:
 
35670
        (KParts::BrowserInterface::property):
 
35671
        (KParts::BrowserInterface::callMethod):
 
35672
        * kwq/KWQLineEdit.mm:
 
35673
        * kwq/KWQListBox.mm:
 
35674
        (-[KWQListBoxScrollView becomeFirstResponder]):
 
35675
        (-[KWQTableView keyDown:]):
 
35676
        (-[KWQTableView keyUp:]):
 
35677
        (-[KWQTableView becomeFirstResponder]):
 
35678
        (-[KWQTableView resignFirstResponder]):
 
35679
        (-[KWQTableView nextKeyView]):
 
35680
        (-[KWQTableView previousKeyView]):
 
35681
        * kwq/KWQLoader.mm:
 
35682
        (KWQServeRequest):
 
35683
        (KWQServeSynchronousRequest):
 
35684
        (KWQCheckIfReloading):
 
35685
        (KWQCheckCacheObjectStatus):
 
35686
        (KWQCacheObjectExpiresTime):
 
35687
        * kwq/KWQObject.cpp:
 
35688
        (QObject::inherits):
 
35689
        (QObject::isFrame):
 
35690
        * kwq/KWQObject.h:
 
35691
        * kwq/KWQPageState.mm:
 
35692
        (-[KWQPageState dealloc]):
 
35693
        (-[KWQPageState finalize]):
 
35694
        * kwq/KWQRegExp.cpp:
 
35695
        (QRegExp::KWQRegExpPrivate::compile):
 
35696
        * kwq/KWQRenderTreeDebug.cpp:
 
35697
        (write):
 
35698
        (writeSelection):
 
35699
        * kwq/KWQSlider.mm:
 
35700
        (-[KWQSlider becomeFirstResponder]):
 
35701
        (-[KWQSlider resignFirstResponder]):
 
35702
        (-[KWQSlider nextKeyView]):
 
35703
        (-[KWQSlider previousKeyView]):
 
35704
        (-[KWQSlider canBecomeKeyView]):
 
35705
        (QSlider::focusPolicy):
 
35706
        * kwq/KWQSlot.mm:
 
35707
        (KWQSlot::KWQSlot):
 
35708
        (KWQSlot::call):
 
35709
        * kwq/KWQTextArea.mm:
 
35710
        (-[KWQTextAreaTextView textDidChange:]):
 
35711
        (-[KWQTextAreaTextView _isResizableByUser]):
 
35712
        (-[KWQTextAreaTextView becomeFirstResponder]):
 
35713
        (-[KWQTextAreaTextView nextKeyView]):
 
35714
        (-[KWQTextAreaTextView previousKeyView]):
 
35715
        (-[KWQTextAreaTextView _trackResizeFromMouseDown:]):
 
35716
        (-[KWQTextAreaTextView drawRect:]):
 
35717
        (-[KWQTextAreaTextView insertTab:]):
 
35718
        (-[KWQTextAreaTextView insertBacktab:]):
 
35719
        (-[KWQTextAreaTextView resignFirstResponder]):
 
35720
        (-[KWQTextAreaTextView shouldDrawInsertionPoint]):
 
35721
        (-[KWQTextAreaTextView selectedTextAttributes]):
 
35722
        (-[KWQTextAreaTextView keyDown:]):
 
35723
        (-[KWQTextAreaTextView keyUp:]):
 
35724
        * kwq/KWQTextField.mm:
 
35725
        (-[KWQTextFieldController controlTextDidBeginEditing:]):
 
35726
        (-[KWQTextFieldController controlTextDidEndEditing:]):
 
35727
        (-[KWQTextFieldController controlTextDidChange:]):
 
35728
        (-[KWQTextFieldController control:textView:doCommandBySelector:]):
 
35729
        (-[KWQTextFieldController textView:shouldHandleEvent:]):
 
35730
        (-[KWQTextFieldController setHasFocus:]):
 
35731
        (-[KWQTextField nextKeyView]):
 
35732
        (-[KWQTextField previousKeyView]):
 
35733
        (-[KWQSecureTextField nextKeyView]):
 
35734
        (-[KWQSecureTextField previousKeyView]):
 
35735
        (-[KWQSearchField nextKeyView]):
 
35736
        (-[KWQSearchField previousKeyView]):
 
35737
        * kwq/KWQTimer.h:
 
35738
        * kwq/KWQWidget.mm:
 
35739
        (QWidget::setActiveWindow):
 
35740
        (QWidget::hasFocus):
 
35741
        (QWidget::setFocus):
 
35742
        (QWidget::clearFocus):
 
35743
        (QWidget::isVisible):
 
35744
        (QWidget::mapFromGlobal):
 
35745
        (QWidget::setIsSelected):
 
35746
        * kwq/MacFrame.cpp: Added.
 
35747
        (MacFrame::isFrameSet):
 
35748
        * kwq/MacFrame.h: Added.
 
35749
        (MacFrame::instances):
 
35750
        (Mac):
 
35751
        * kwq/MacFrame.mm: Added.
 
35752
        (Frame::completed):
 
35753
        (Frame::openURL):
 
35754
        (Frame::onURL):
 
35755
        (Frame::setStatusBarText):
 
35756
        (Frame::started):
 
35757
        (redirectionTimerMonitor):
 
35758
        (MacFrame::MacFrame):
 
35759
        (MacFrame::~MacFrame):
 
35760
        (MacFrame::freeClipboard):
 
35761
        (MacFrame::setSettings):
 
35762
        (MacFrame::generateFrameName):
 
35763
        (MacFrame::provisionalLoadStarted):
 
35764
        (MacFrame::userGestureHint):
 
35765
        (MacFrame::openURL):
 
35766
        (MacFrame::openURLRequest):
 
35767
        (MacFrame::didNotOpenURL):
 
35768
        (MacFrame::currentForm):
 
35769
        (MacFrame::searchForLabelsAboveCell):
 
35770
        (MacFrame::searchForLabelsBeforeElement):
 
35771
        (MacFrame::matchLabelsAgainstElement):
 
35772
        (MacFrame::findString):
 
35773
        (MacFrame::clearRecordedFormValues):
 
35774
        (MacFrame::recordFormValue):
 
35775
        (MacFrame::submitForm):
 
35776
        (MacFrame::setEncoding):
 
35777
        (MacFrame::addData):
 
35778
        (Frame::frameDetached):
 
35779
        (MacFrame::urlSelected):
 
35780
        (MacFrame::createPart):
 
35781
        (MacFrame::setView):
 
35782
        (MacFrame::view):
 
35783
        (MacFrame::setTitle):
 
35784
        (MacFrame::setStatusBarText):
 
35785
        (MacFrame::scheduleClose):
 
35786
        (MacFrame::unfocusWindow):
 
35787
        (MacFrame::revealSelection):
 
35788
        (MacFrame::advanceToNextMisspelling):
 
35789
        (MacFrame::scrollOverflow):
 
35790
        (MacFrame::wheelEvent):
 
35791
        (MacFrame::redirectionTimerStartedOrStopped):
 
35792
        (MacFrame::paint):
 
35793
        (MacFrame::adjustPageHeight):
 
35794
        (MacFrame::renderer):
 
35795
        (MacFrame::userAgent):
 
35796
        (MacFrame::mimeTypeForFileName):
 
35797
        (MacFrame::nextKeyViewInFrame):
 
35798
        (MacFrame::nextKeyViewInFrameHierarchy):
 
35799
        (MacFrame::nextKeyView):
 
35800
        (MacFrame::nextKeyViewForWidget):
 
35801
        (MacFrame::currentEventIsMouseDownInWidget):
 
35802
        (MacFrame::currentEventIsKeyboardOptionTab):
 
35803
        (MacFrame::handleKeyboardOptionTabInView):
 
35804
        (MacFrame::tabsToLinks):
 
35805
        (MacFrame::tabsToAllControls):
 
35806
        (MacFrame::executionContextForDOM):
 
35807
        (MacFrame::bindingRootObject):
 
35808
        (MacFrame::windowScriptObject):
 
35809
        (MacFrame::windowScriptNPObject):
 
35810
        (MacFrame::partClearedInBegin):
 
35811
        (MacFrame::pauseTimeouts):
 
35812
        (MacFrame::resumeTimeouts):
 
35813
        (MacFrame::canCachePage):
 
35814
        (MacFrame::saveWindowProperties):
 
35815
        (MacFrame::saveLocationProperties):
 
35816
        (MacFrame::restoreWindowProperties):
 
35817
        (MacFrame::restoreLocationProperties):
 
35818
        (MacFrame::saveInterpreterBuiltins):
 
35819
        (MacFrame::restoreInterpreterBuiltins):
 
35820
        (MacFrame::openURLFromPageCache):
 
35821
        (MacFrame::frameForWidget):
 
35822
        (MacFrame::bridgeForWidget):
 
35823
        (MacFrame::frameForNode):
 
35824
        (MacFrame::documentViewForNode):
 
35825
        (MacFrame::nodeForWidget):
 
35826
        (MacFrame::setDocumentFocus):
 
35827
        (MacFrame::clearDocumentFocus):
 
35828
        (MacFrame::saveDocumentState):
 
35829
        (MacFrame::restoreDocumentState):
 
35830
        (MacFrame::mutableInstances):
 
35831
        (MacFrame::updatePolicyBaseURL):
 
35832
        (MacFrame::setPolicyBaseURL):
 
35833
        (MacFrame::requestedURLString):
 
35834
        (MacFrame::incomingReferrer):
 
35835
        (MacFrame::forceLayout):
 
35836
        (MacFrame::forceLayoutWithPageWidthRange):
 
35837
        (MacFrame::sendResizeEvent):
 
35838
        (MacFrame::sendScrollEvent):
 
35839
        (MacFrame::runJavaScriptAlert):
 
35840
        (MacFrame::runJavaScriptConfirm):
 
35841
        (MacFrame::runJavaScriptPrompt):
 
35842
        (MacFrame::locationbarVisible):
 
35843
        (MacFrame::menubarVisible):
 
35844
        (MacFrame::personalbarVisible):
 
35845
        (MacFrame::scrollbarsVisible):
 
35846
        (MacFrame::statusbarVisible):
 
35847
        (MacFrame::toolbarVisible):
 
35848
        (MacFrame::addMessageToConsole):
 
35849
        (MacFrame::createEmptyDocument):
 
35850
        (MacFrame::addMetaData):
 
35851
        (MacFrame::keyEvent):
 
35852
        (MacFrame::scrollToAnchor):
 
35853
        (MacFrame::closeURL):
 
35854
        (MacFrame::canMouseDownStartSelect):
 
35855
        (MacFrame::khtmlMousePressEvent):
 
35856
        (MacFrame::khtmlMouseDoubleClickEvent):
 
35857
        (MacFrame::passWidgetMouseDownEventToWidget):
 
35858
        (MacFrame::lastEventIsMouseUp):
 
35859
        (MacFrame::mouseDownViewIfStillGood):
 
35860
        (MacFrame::dragHysteresisExceeded):
 
35861
        (MacFrame::dispatchDragSrcEvent):
 
35862
        (MacFrame::eventMayStartDrag):
 
35863
        (MacFrame::khtmlMouseMoveEvent):
 
35864
        (MacFrame::dragSourceMovedTo):
 
35865
        (MacFrame::dragSourceEndedAt):
 
35866
        (MacFrame::dispatchCPPEvent):
 
35867
        (MacFrame::mayCut):
 
35868
        (MacFrame::mayCopy):
 
35869
        (MacFrame::mayPaste):
 
35870
        (MacFrame::tryCut):
 
35871
        (MacFrame::tryCopy):
 
35872
        (MacFrame::tryPaste):
 
35873
        (MacFrame::khtmlMouseReleaseEvent):
 
35874
        (MacFrame::clearTimers):
 
35875
        (MacFrame::passSubframeEventToSubframe):
 
35876
        (MacFrame::passWheelEventToChildWidget):
 
35877
        (MacFrame::mouseDown):
 
35878
        (MacFrame::mouseDragged):
 
35879
        (MacFrame::mouseUp):
 
35880
        (MacFrame::sendFakeEventsAfterWidgetTracking):
 
35881
        (MacFrame::mouseMoved):
 
35882
        (MacFrame::shouldDragAutoNode):
 
35883
        (MacFrame::sendContextMenuEvent):
 
35884
        (MacFrame::fileWrapperForElement):
 
35885
        (MacFrame::attributedString):
 
35886
        (MacFrame::selectionRect):
 
35887
        (MacFrame::visibleSelectionRect):
 
35888
        (MacFrame::centerSelectionInVisibleArea):
 
35889
        (MacFrame::imageFromRect):
 
35890
        (MacFrame::selectionImage):
 
35891
        (MacFrame::snapshotDragImage):
 
35892
        (MacFrame::styleForSelectionStart):
 
35893
        (MacFrame::fontForSelection):
 
35894
        (MacFrame::fontAttributesForSelectionStart):
 
35895
        (MacFrame::baseWritingDirectionForSelectionStart):
 
35896
        (MacFrame::topLevelWidget):
 
35897
        (MacFrame::tokenizerProcessedData):
 
35898
        (MacFrame::selectionStartOffset):
 
35899
        (MacFrame::selectionEndOffset):
 
35900
        (MacFrame::selectionStart):
 
35901
        (MacFrame::selectionEnd):
 
35902
        (MacFrame::setBridge):
 
35903
        (MacFrame::overrideMediaType):
 
35904
        (MacFrame::setMediaType):
 
35905
        (MacFrame::setSelectionFromNone):
 
35906
        (MacFrame::setDisplaysWithFocusAttributes):
 
35907
        (MacFrame::displaysWithFocusAttributes):
 
35908
        (MacFrame::setWindowHasFocus):
 
35909
        (MacFrame::backslashAsCurrencySymbol):
 
35910
        (MacFrame::bodyBackgroundColor):
 
35911
        (MacFrame::keyboardUIMode):
 
35912
        (MacFrame::setName):
 
35913
        (MacFrame::didTellBridgeAboutLoad):
 
35914
        (MacFrame::haveToldBridgeAboutLoad):
 
35915
        (MacFrame::clear):
 
35916
        (Frame::print):
 
35917
        (MacFrame::getAppletInstanceForWidget):
 
35918
        (MacFrame::getEmbedInstanceForWidget):
 
35919
        (MacFrame::getObjectInstanceForWidget):
 
35920
        (MacFrame::addPluginRootObject):
 
35921
        (MacFrame::cleanupPluginRootObjects):
 
35922
        (MacFrame::registerCommandForUndoOrRedo):
 
35923
        (MacFrame::registerCommandForUndo):
 
35924
        (MacFrame::registerCommandForRedo):
 
35925
        (MacFrame::clearUndoRedoOperations):
 
35926
        (MacFrame::issueUndoCommand):
 
35927
        (MacFrame::issueRedoCommand):
 
35928
        (MacFrame::issueCutCommand):
 
35929
        (MacFrame::issueCopyCommand):
 
35930
        (MacFrame::issuePasteCommand):
 
35931
        (MacFrame::issuePasteAndMatchStyleCommand):
 
35932
        (MacFrame::issueTransposeCommand):
 
35933
        (Frame::canUndo):
 
35934
        (Frame::canRedo):
 
35935
        (Frame::canPaste):
 
35936
        (MacFrame::markMisspellingsInAdjacentWords):
 
35937
        (MacFrame::markMisspellings):
 
35938
        (MacFrame::respondToChangedSelection):
 
35939
        (MacFrame::shouldChangeSelection):
 
35940
        (MacFrame::respondToChangedContents):
 
35941
        (MacFrame::isContentEditable):
 
35942
        (MacFrame::shouldBeginEditing):
 
35943
        (MacFrame::shouldEndEditing):
 
35944
        (convertAttributesToUnderlines):
 
35945
        (MacFrame::setMarkedTextRange):
 
35946
        (MacFrame::markedTextUsesUnderlines):
 
35947
        (MacFrame::markedTextUnderlines):
 
35948
        (MacFrame::canGoBackOrForward):
 
35949
        (MacFrame::prepareForUserAction):
 
35950
        (MacFrame::didFirstLayout):
 
35951
        (MacFrame::dashboardRegionsDictionary):
 
35952
        (MacFrame::dashboardRegionsChanged):
 
35953
        (MacFrame::isCharacterSmartReplaceExempt):
 
35954
        (MacFrame::isFrame):
 
35955
        (MacFrame::mousePressNode):
 
35956
        (MacFrame::handledOnloadEvents):
 
35957
        (MacFrame::shouldClose):
 
35958
        * kwq/WebCoreBridge.h:
 
35959
        * kwq/WebCoreBridge.mm:
 
35960
        (updateRenderingForBindings):
 
35961
        (frameHasSelection):
 
35962
        (+[WebCoreBridge bridgeForDOMDocument:]):
 
35963
        (-[WebCoreBridge init]):
 
35964
        (-[WebCoreBridge initializeSettings:]):
 
35965
        (-[WebCoreBridge dealloc]):
 
35966
        (-[WebCoreBridge finalize]):
 
35967
        (-[WebCoreBridge part]):
 
35968
        (-[WebCoreBridge setParent:]):
 
35969
        (-[WebCoreBridge parent]):
 
35970
        (-[WebCoreBridge provisionalLoadStarted]):
 
35971
        (-[WebCoreBridge openURL:reload:contentType:refresh:lastModified:pageCache:]):
 
35972
        (-[WebCoreBridge setEncoding:userChosen:]):
 
35973
        (-[WebCoreBridge addData:]):
 
35974
        (-[WebCoreBridge closeURL]):
 
35975
        (-[WebCoreBridge stopLoading]):
 
35976
        (-[WebCoreBridge didNotOpenURL:pageCache:]):
 
35977
        (-[WebCoreBridge saveDocumentState]):
 
35978
        (-[WebCoreBridge restoreDocumentState]):
 
35979
        (-[WebCoreBridge scrollToAnchorWithURL:]):
 
35980
        (-[WebCoreBridge scrollOverflowInDirection:granularity:]):
 
35981
        (-[WebCoreBridge sendScrollWheelEvent:]):
 
35982
        (-[WebCoreBridge saveDocumentToPageCache]):
 
35983
        (-[WebCoreBridge canCachePage]):
 
35984
        (-[WebCoreBridge clear]):
 
35985
        (-[WebCoreBridge end]):
 
35986
        (-[WebCoreBridge stop]):
 
35987
        (-[WebCoreBridge handleFallbackContent]):
 
35988
        (-[WebCoreBridge createKHTMLViewWithNSView:marginWidth:marginHeight:]):
 
35989
        (-[WebCoreBridge scrollToAnchor:]):
 
35990
        (-[WebCoreBridge isSelectionEditable]):
 
35991
        (-[WebCoreBridge selectionState]):
 
35992
        (-[WebCoreBridge _documentTypeString]):
 
35993
        (-[WebCoreBridge selectedString]):
 
35994
        (-[WebCoreBridge stringForRange:]):
 
35995
        (-[WebCoreBridge selectAll]):
 
35996
        (-[WebCoreBridge deselectAll]):
 
35997
        (-[WebCoreBridge deselectText]):
 
35998
        (-[WebCoreBridge isFrameSet]):
 
35999
        (-[WebCoreBridge reapplyStylesForDeviceType:]):
 
36000
        (nowPrinting):
 
36001
        (-[WebCoreBridge _setupRootForPrinting:]):
 
36002
        (-[WebCoreBridge forceLayoutAdjustingViewSize:]):
 
36003
        (-[WebCoreBridge forceLayoutWithMinimumPageWidth:maximumPageWidth:adjustingViewSize:]):
 
36004
        (-[WebCoreBridge sendResizeEvent]):
 
36005
        (-[WebCoreBridge sendScrollEvent]):
 
36006
        (-[WebCoreBridge drawRect:withPainter:]):
 
36007
        (-[WebCoreBridge drawRect:]):
 
36008
        (-[WebCoreBridge computePageRectsWithPrintWidthScaleFactor:printHeight:]):
 
36009
        (-[WebCoreBridge adjustPageHeightNew:top:bottom:limit:]):
 
36010
        (-[WebCoreBridge copyDOMTree:]):
 
36011
        (-[WebCoreBridge copyRenderTree:]):
 
36012
        (-[WebCoreBridge removeFromFrame]):
 
36013
        (-[WebCoreBridge installInFrame:]):
 
36014
        (-[WebCoreBridge setActivationEventNumber:]):
 
36015
        (-[WebCoreBridge mouseDown:]):
 
36016
        (-[WebCoreBridge mouseDragged:]):
 
36017
        (-[WebCoreBridge mouseUp:]):
 
36018
        (-[WebCoreBridge mouseMoved:]):
 
36019
        (-[WebCoreBridge sendContextMenuEvent:]):
 
36020
        (-[WebCoreBridge currentForm]):
 
36021
        (-[WebCoreBridge searchForLabels:beforeElement:]):
 
36022
        (-[WebCoreBridge matchLabels:againstElement:]):
 
36023
        (-[WebCoreBridge elementAtPoint:]):
 
36024
        (-[WebCoreBridge URLWithAttributeString:]):
 
36025
        (-[WebCoreBridge searchFor:direction:caseSensitive:wrap:]):
 
36026
        (-[WebCoreBridge advanceToNextMisspelling]):
 
36027
        (-[WebCoreBridge advanceToNextMisspellingStartingJustBeforeSelection]):
 
36028
        (-[WebCoreBridge unmarkAllMisspellings]):
 
36029
        (-[WebCoreBridge setTextSizeMultiplier:]):
 
36030
        (-[WebCoreBridge textEncoding]):
 
36031
        (-[WebCoreBridge nextKeyView]):
 
36032
        (-[WebCoreBridge previousKeyView]):
 
36033
        (-[WebCoreBridge nextKeyViewInsideWebFrameViews]):
 
36034
        (-[WebCoreBridge previousKeyViewInsideWebFrameViews]):
 
36035
        (-[WebCoreBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
 
36036
        (-[WebCoreBridge windowScriptObject]):
 
36037
        (-[WebCoreBridge windowScriptNPObject]):
 
36038
        (-[WebCoreBridge DOMDocument]):
 
36039
        (-[WebCoreBridge selectedAttributedString]):
 
36040
        (-[WebCoreBridge attributedStringFrom:startOffset:to:endOffset:]):
 
36041
        (-[WebCoreBridge selectionRect]):
 
36042
        (-[WebCoreBridge visibleSelectionRect]):
 
36043
        (-[WebCoreBridge centerSelectionInVisibleArea]):
 
36044
        (-[WebCoreBridge selectionImage]):
 
36045
        (-[WebCoreBridge setName:]):
 
36046
        (-[WebCoreBridge name]):
 
36047
        (-[WebCoreBridge URL]):
 
36048
        (-[WebCoreBridge baseURL]):
 
36049
        (-[WebCoreBridge referrer]):
 
36050
        (-[WebCoreBridge domain]):
 
36051
        (-[WebCoreBridge opener]):
 
36052
        (-[WebCoreBridge setOpener:]):
 
36053
        (-[WebCoreBridge needsLayout]):
 
36054
        (-[WebCoreBridge setNeedsLayout]):
 
36055
        (-[WebCoreBridge interceptKeyEvent:toView:]):
 
36056
        (-[WebCoreBridge renderTreeAsExternalRepresentation]):
 
36057
        (-[WebCoreBridge setSelectionFromNone]):
 
36058
        (-[WebCoreBridge setDisplaysWithFocusAttributes:]):
 
36059
        (-[WebCoreBridge setWindowHasFocus:]):
 
36060
        (-[WebCoreBridge numPendingOrLoadingRequests]):
 
36061
        (-[WebCoreBridge doneProcessingData]):
 
36062
        (-[WebCoreBridge shouldClose]):
 
36063
        (-[WebCoreBridge bodyBackgroundColor]):
 
36064
        (-[WebCoreBridge selectionColor]):
 
36065
        (-[WebCoreBridge adjustViewSize]):
 
36066
        (-[WebCoreBridge accessibilityTree]):
 
36067
        (-[WebCoreBridge setDrawsBackground:]):
 
36068
        (-[WebCoreBridge rangeByExpandingSelectionWithGranularity:]):
 
36069
        (-[WebCoreBridge rangeByAlteringCurrentSelection:direction:granularity:]):
 
36070
        (-[WebCoreBridge alterCurrentSelection:direction:granularity:]):
 
36071
        (-[WebCoreBridge rangeByAlteringCurrentSelection:verticalDistance:]):
 
36072
        (-[WebCoreBridge alterCurrentSelection:verticalDistance:]):
 
36073
        (-[WebCoreBridge selectionGranularity]):
 
36074
        (-[WebCoreBridge setSelectedDOMRange:affinity:closeTyping:]):
 
36075
        (-[WebCoreBridge selectedDOMRange]):
 
36076
        (-[WebCoreBridge convertToNSRange:DOM::]):
 
36077
        (-[WebCoreBridge convertToDOMRange:]):
 
36078
        (-[WebCoreBridge selectNSRange:]):
 
36079
        (-[WebCoreBridge selectedNSRange]):
 
36080
        (-[WebCoreBridge selectionAffinity]):
 
36081
        (-[WebCoreBridge setMarkDOMRange:]):
 
36082
        (-[WebCoreBridge markDOMRange]):
 
36083
        (-[WebCoreBridge setMarkedTextDOMRange:customAttributes:ranges:]):
 
36084
        (-[WebCoreBridge markedTextDOMRange]):
 
36085
        (-[WebCoreBridge markedTextNSRange]):
 
36086
        (-[WebCoreBridge replaceMarkedTextWithText:]):
 
36087
        (-[WebCoreBridge smartDeleteRangeForProposedRange:]):
 
36088
        (-[WebCoreBridge smartInsertForString:replacingRange:beforeString:afterString:]):
 
36089
        (-[WebCoreBridge documentFragmentWithMarkupString:baseURLString:]):
 
36090
        (-[WebCoreBridge documentFragmentWithText:]):
 
36091
        (-[WebCoreBridge documentFragmentWithNodesAsParagraphs:]):
 
36092
        (-[WebCoreBridge replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
 
36093
        (-[WebCoreBridge insertLineBreak]):
 
36094
        (-[WebCoreBridge insertParagraphSeparator]):
 
36095
        (-[WebCoreBridge insertParagraphSeparatorInQuotedContent]):
 
36096
        (-[WebCoreBridge insertText:selectInsertedText:]):
 
36097
        (-[WebCoreBridge setSelectionToDragCaret]):
 
36098
        (-[WebCoreBridge moveSelectionToDragCaret:smartMove:]):
 
36099
        (-[WebCoreBridge _visiblePositionForPoint:]):
 
36100
        (-[WebCoreBridge moveDragCaretToPoint:]):
 
36101
        (-[WebCoreBridge removeDragCaret]):
 
36102
        (-[WebCoreBridge dragCaretDOMRange]):
 
36103
        (-[WebCoreBridge deleteSelectionWithSmartDelete:]):
 
36104
        (-[WebCoreBridge deleteKeyPressedWithSmartDelete:]):
 
36105
        (-[WebCoreBridge forwardDeleteKeyPressedWithSmartDelete:]):
 
36106
        (-[WebCoreBridge typingStyle]):
 
36107
        (-[WebCoreBridge setTypingStyle:withUndoAction:]):
 
36108
        (-[WebCoreBridge applyStyle:withUndoAction:]):
 
36109
        (-[WebCoreBridge applyParagraphStyle:withUndoAction:]):
 
36110
        (-[WebCoreBridge selectionStartHasStyle:]):
 
36111
        (-[WebCoreBridge selectionHasStyle:]):
 
36112
        (-[WebCoreBridge applyEditingStyleToBodyElement]):
 
36113
        (-[WebCoreBridge removeEditingStyleFromBodyElement]):
 
36114
        (-[WebCoreBridge applyEditingStyleToElement:]):
 
36115
        (-[WebCoreBridge removeEditingStyleFromElement:]):
 
36116
        (-[WebCoreBridge fontForSelection:]):
 
36117
        (-[WebCoreBridge fontAttributesForSelectionStart]):
 
36118
        (-[WebCoreBridge baseWritingDirectionForSelectionStart]):
 
36119
        (-[WebCoreBridge ensureSelectionVisible]):
 
36120
        (-[WebCoreBridge eventMayStartDrag:]):
 
36121
        (-[WebCoreBridge dragOperationForDraggingInfo:]):
 
36122
        (-[WebCoreBridge dragExitedWithDraggingInfo:]):
 
36123
        (-[WebCoreBridge concludeDragForDraggingInfo:]):
 
36124
        (-[WebCoreBridge dragSourceMovedTo:]):
 
36125
        (-[WebCoreBridge dragSourceEndedAt:operation:]):
 
36126
        (-[WebCoreBridge mayDHTMLCut]):
 
36127
        (-[WebCoreBridge mayDHTMLCopy]):
 
36128
        (-[WebCoreBridge mayDHTMLPaste]):
 
36129
        (-[WebCoreBridge tryDHTMLCut]):
 
36130
        (-[WebCoreBridge tryDHTMLCopy]):
 
36131
        (-[WebCoreBridge tryDHTMLPaste]):
 
36132
        (-[WebCoreBridge rangeOfCharactersAroundCaret]):
 
36133
        (-[WebCoreBridge dashboardRegions]):
 
36134
        (-[WebCoreBridge executionContextForView:]):
 
36135
        * kwq/WebCoreSettings.mm:
 
36136
        (-[WebCoreSettings _updateAllViews]):
 
36137
        * kwq/WebCoreTextRendererFactory.mm:
 
36138
        (-[WebCoreTextRendererFactory clearCaches]):
 
36139
 
 
36140
2006-01-09  Darin Adler  <darin@apple.com>
 
36141
 
 
36142
        * Makefile.am: Removed.
 
36143
 
 
36144
2006-01-09  John Sullivan  <sullivan@apple.com>
 
36145
 
 
36146
        * khtml/misc/decoder.cpp:
 
36147
        removed #include of recently-removed kcharsets.h to fix build
 
36148
 
 
36149
2006-01-08  Alexander Kellett  <lypanov@kde.org>
 
36150
 
 
36151
        Reviewed by eseidel.  Committed by eseidel.
 
36152
 
 
36153
        First set of refactors to fix
 
36154
        http://bugs.webkit.org/show_bug.cgi?id=5748.
 
36155
 
 
36156
        Refactors to delay paintserver creation until usage and thereby
 
36157
        simplify much code in the process. Causes several changes in rendertree 
 
36158
        output all of which are improvements rather than regressions.
 
36159
 
 
36160
        * kcanvas/KCanvasItem.cpp: setupForDraw() logic moved to KCanvasItemQuartz
 
36161
        * kcanvas/KCanvasItem.h:
 
36162
        * kcanvas/KCanvasResources.cpp:
 
36163
        (KCanvasResource::addClient): const-ify
 
36164
        * kcanvas/KCanvasResources.h:
 
36165
        * kcanvas/KCanvasTreeDebug.cpp:
 
36166
        (writeStyle): minor refactor/inline - keeps most output the same after
 
36167
        patch, some minor const'ifications
 
36168
        * kcanvas/device/KRenderingFillPainter.cpp:
 
36169
        setter
 
36170
        (KRenderingFillPainter::Private::Private):
 
36171
        * kcanvas/device/KRenderingFillPainter.h: refactor out paintserver and
 
36172
        draw()
 
36173
        * kcanvas/device/KRenderingStrokePainter.cpp: refactor out paintserver
 
36174
        and draw()
 
36175
        (KRenderingStrokePainter::Private::Private):
 
36176
        * kcanvas/device/KRenderingStrokePainter.h:
 
36177
        * kcanvas/device/quartz/KCanvasItemQuartz.mm:
 
36178
        (KCanvasItemQuartz::paint):
 
36179
        (KCanvasItemQuartz::hitsPath):
 
36180
        * ksvg2/misc/KCanvasRenderingStyle.cpp:
 
36181
        (KCanvasRenderingStyle::KCanvasRenderingStyle):
 
36182
        (KCanvasRenderingStyle::~KCanvasRenderingStyle):
 
36183
        (KCanvasRenderingStyle::overrideFillPaintServer):
 
36184
        (KCanvasRenderingStyle::isFilled):
 
36185
        (KCanvasRenderingStyle::fillPaintServer):
 
36186
        (KCanvasRenderingStyle::overrideStrokePaintServer):
 
36187
        (KCanvasRenderingStyle::isStroked):
 
36188
        (KCanvasRenderingStyle::strokePaintServer):
 
36189
        (KCanvasRenderingStyle::updateStyle): remove paintserver constructions
 
36190
        from update notification and instead create on usage, removing
 
36191
        disable.*Painter() methods
 
36192
        * ksvg2/misc/KCanvasRenderingStyle.h:
 
36193
        * ksvg2/svg/SVGImageElementImpl.cpp:
 
36194
        (SVGImageElementImpl::notifyFinished): use paintserver override logic
 
36195
 
 
36196
2006-01-09  Alexey Proskuryakov  <ap@nypop.com>
 
36197
 
 
36198
        Fix broken build (CachedObject.cpp was still including kcharsets.h).
 
36199
        Proposed and reviewed by Eric Seidel.
 
36200
 
 
36201
2006-01-09  Eric Seidel  <eseidel@apple.com>
 
36202
 
 
36203
        Reviewed by mjs.
 
36204
 
 
36205
        Remove more unused code from kwq.
 
36206
 
 
36207
        * ForwardingHeaders/dcopclient.h: Removed.
 
36208
        * ForwardingHeaders/kaction.h: Removed.
 
36209
        * ForwardingHeaders/kcharsets.h: Removed.
 
36210
        * ForwardingHeaders/kcombobox.h: Removed.
 
36211
        * ForwardingHeaders/klineedit.h: Removed.
 
36212
        * ForwardingHeaders/klistbox.h: Removed.
 
36213
        * ForwardingHeaders/kwin.h: Removed.
 
36214
        * ForwardingHeaders/qcombobox.h: Added.
 
36215
        * ForwardingHeaders/qlineedit.h: Added.
 
36216
        * WebCore.xcodeproj/project.pbxproj: remove files.
 
36217
        * khtml/css/csshelper.cpp:
 
36218
        * khtml/css/cssstyleselector.cpp:
 
36219
        * khtml/ecma/kjs_window.cpp:
 
36220
        (KJS::Window::getValueProperty):
 
36221
        * khtml/html/html_documentimpl.cpp:
 
36222
        * khtml/html/html_formimpl.cpp:
 
36223
        (DOM::HTMLOptionElementImpl::index):
 
36224
        (DOM::HTMLOptionElementImpl::setIndex):
 
36225
        * khtml/html/htmltokenizer.cpp:
 
36226
        * khtml/html/htmltokenizer.h:
 
36227
        * khtml/khtml_part.cpp:
 
36228
        * khtml/khtmlpart_p.h:
 
36229
        * khtml/rendering/render_form.cpp:
 
36230
        (RenderLineEdit::RenderLineEdit):
 
36231
        (RenderLineEdit::setStyle):
 
36232
        (RenderLineEdit::updateFromElement):
 
36233
        (RenderLineEdit::selectionStart):
 
36234
        (RenderLineEdit::selectionEnd):
 
36235
        (RenderLineEdit::setSelectionStart):
 
36236
        (RenderLineEdit::setSelectionEnd):
 
36237
        (RenderLineEdit::select):
 
36238
        (RenderLineEdit::setSelectionRange):
 
36239
        (ComboBoxWidget::ComboBoxWidget):
 
36240
        (ComboBoxWidget::event):
 
36241
        (ComboBoxWidget::eventFilter):
 
36242
        (RenderSelect::setWidgetWritingDirection):
 
36243
        (RenderSelect::updateFromElement):
 
36244
        (RenderSelect::layout):
 
36245
        (RenderSelect::slotSelectionChanged):
 
36246
        (RenderSelect::createListBox):
 
36247
        (RenderSelect::updateSelection):
 
36248
        (RenderTextArea::RenderTextArea):
 
36249
        * khtml/rendering/render_form.h:
 
36250
        (khtml::RenderLineEdit::widget):
 
36251
        * kwq/KWQDCOPClient.h: Removed.
 
36252
        * kwq/KWQKCharsets.cpp: Removed.
 
36253
        * kwq/KWQKCharsets.h: Removed.
 
36254
        * kwq/KWQKComboBox.h: Removed.
 
36255
        * kwq/KWQKKAction.h: Removed.
 
36256
        * kwq/KWQKLineEdit.h: Removed.
 
36257
        * kwq/KWQKListBox.h: Removed.
 
36258
        * kwq/KWQKWin.cpp: Removed.
 
36259
        * kwq/KWQKWin.h: Removed.
 
36260
        * kwq/KWQWidget.h:
 
36261
        * kwq/KWQWidget.mm:
 
36262
 
 
36263
2006-01-09  Eric Seidel  <eseidel@apple.com>
 
36264
 
 
36265
        Reviewed by mjs.
 
36266
 
 
36267
        Removing more unused parts of KWQ.
 
36268
 
 
36269
        * ForwardingHeaders/java/kjavaappletcontext.h: Removed.
 
36270
        * ForwardingHeaders/khtml_find.h: Removed.
 
36271
        * ForwardingHeaders/qimage.h: Removed.
 
36272
        * ForwardingHeaders/rendering/break_lines.h: Removed.
 
36273
        * ForwardingHeaders/rendering/render_text.h: Removed.
 
36274
        * ForwardingHeaders/xbl/xbl_docimpl.h: Removed.
 
36275
        * WebCore.xcodeproj/project.pbxproj:
 
36276
        * khtml/html/html_canvasimpl.cpp:
 
36277
        * khtml/html/html_imageimpl.cpp:
 
36278
        * khtml/html/html_objectimpl.cpp:
 
36279
        * khtml/html/html_objectimpl.h:
 
36280
        * khtml/khtml_part.cpp:
 
36281
        (KHTMLPart::init):
 
36282
        (KHTMLPart::~KHTMLPart):
 
36283
        (KHTMLPart::clear):
 
36284
        * khtml/khtml_part.h:
 
36285
        * khtml/khtmlpart_p.h:
 
36286
        (KHTMLPartPrivate::KHTMLPartPrivate):
 
36287
        (KHTMLPartPrivate::~KHTMLPartPrivate):
 
36288
        * khtml/rendering/render_applet.cpp:
 
36289
        (RenderApplet::RenderApplet):
 
36290
        (RenderApplet::createWidgetIfNecessary):
 
36291
        * khtml/rendering/render_applet.h:
 
36292
        * ksvg2/svg/SVGFEImageElementImpl.cpp:
 
36293
        * ksvg2/svg/SVGImageElementImpl.cpp:
 
36294
        * kwq/DOMHTML.mm:
 
36295
        * kwq/KWQDummyView.h: Removed.
 
36296
        * kwq/KWQDummyView.m: Removed.
 
36297
        * kwq/KWQImage.h: Removed.
 
36298
        * kwq/KWQKHTMLFind.h: Removed.
 
36299
        * kwq/KWQKHTMLPart.mm:
 
36300
        * kwq/KWQKHTMLPartBrowserExtension.h:
 
36301
        * kwq/KWQKJavaAppletContext.h: Removed.
 
36302
        * kwq/KWQKJavaAppletWidget.h:
 
36303
        * kwq/KWQKJavaAppletWidget.mm:
 
36304
        (KJavaAppletWidget::KJavaAppletWidget):
 
36305
        * kwq/KWQKPartsBrowserExtension.h:
 
36306
        * kwq/KWQObject.h:
 
36307
        * kwq/KWQRegion.h:
 
36308
 
 
36309
2006-01-09  Eric Seidel  <eseidel@apple.com>
 
36310
 
 
36311
        Rubber stamped by mjs.
 
36312
 
 
36313
        Broke out loader.{h,cpp} into multiple files, one per class.
 
36314
        This patch also updates all files which previously included
 
36315
        loader.h to only include the necessary renamed headers.
 
36316
        http://bugs.webkit.org/show_bug.cgi?id=6444
 
36317
 
 
36318
        * ForwardingHeaders/kdom/cache/KDOMCachedDocument.h: Removed.
 
36319
        * ForwardingHeaders/kdom/cache/KDOMCachedImage.h: updated include
 
36320
        * ForwardingHeaders/kdom/cache/KDOMCachedObject.h: updated include
 
36321
        * ForwardingHeaders/kdom/cache/KDOMCachedScript.h: updated include
 
36322
        * WebCore.xcodeproj/project.pbxproj: added files
 
36323
        * khtml/css/css_computedstyle.cpp: updated includes
 
36324
        * khtml/css/css_ruleimpl.cpp: updated includes
 
36325
        * khtml/css/css_stylesheetimpl.h: updated includes
 
36326
        * khtml/css/css_valueimpl.cpp: updated includes
 
36327
        * khtml/css/cssstyleselector.cpp: updated includes
 
36328
        * khtml/ecma/kjs_events.cpp: updated includes
 
36329
        * khtml/ecma/kjs_html.cpp: updated includes
 
36330
        * khtml/ecma/xmlhttprequest.cpp: updated includes
 
36331
        * khtml/html/html_headimpl.cpp: updated includes
 
36332
        * khtml/html/html_imageimpl.cpp: updated includes
 
36333
        * khtml/html/html_imageimpl.h: updated includes
 
36334
        * khtml/html/htmltokenizer.cpp: updated includes
 
36335
        * khtml/khtml_part.cpp: updated includes
 
36336
        * khtml/khtmlview.cpp: updated includes
 
36337
        * khtml/misc/Cache.cpp: Added.
 
36338
        * khtml/misc/Cache.h: Added.
 
36339
        * khtml/misc/CachedCSSStyleSheet.cpp: Added.
 
36340
        * khtml/misc/CachedCSSStyleSheet.h: Added.
 
36341
        * khtml/misc/CachedImage.cpp: Added.
 
36342
        * khtml/misc/CachedImage.h: Added.
 
36343
        * khtml/misc/CachedImageCallback.cpp: Added.
 
36344
        * khtml/misc/CachedImageCallback.h: Added.
 
36345
        * khtml/misc/CachedObject.cpp: Added.
 
36346
        * khtml/misc/CachedObject.h: Added, fixed tabs -> spaces.
 
36347
        * khtml/misc/CachedObjectClientWalker.cpp: Added.
 
36348
        * khtml/misc/CachedObjectClientWalker.h: Added.
 
36349
        * khtml/misc/CachedScript.cpp: Added.
 
36350
        * khtml/misc/CachedScript.h: Added.
 
36351
        * khtml/misc/CachedXBLDocument.cpp: Added.
 
36352
        * khtml/misc/CachedXBLDocument.h: Added.
 
36353
        * khtml/misc/CachedXSLStyleSheet.cpp: Added.
 
36354
        * khtml/misc/CachedXSLStyleSheet.h: Added.
 
36355
        * khtml/misc/DocLoader.cpp: Added.
 
36356
        * khtml/misc/DocLoader.h: Added.
 
36357
        * khtml/misc/Request.cpp: Added.
 
36358
        * khtml/misc/Request.h: Added.
 
36359
        * khtml/misc/loader.cpp: updated includes
 
36360
        * khtml/misc/loader.h: updated includes
 
36361
        * khtml/misc/loader_client.h: updated includes
 
36362
        * khtml/rendering/render_box.cpp: updated includes
 
36363
        * khtml/rendering/render_line.cpp: updated includes
 
36364
        * khtml/rendering/render_list.cpp: updated includes
 
36365
        * khtml/rendering/render_object.cpp: updated includes
 
36366
        * khtml/xml/dom_docimpl.cpp: updated includes
 
36367
        * khtml/xml/dom_xmlimpl.cpp: updated includes
 
36368
        * khtml/xml/xml_tokenizer.cpp: updated includes
 
36369
        * khtml/xsl/xsl_stylesheetimpl.cpp: updated includes
 
36370
        * khtml/xsl/xsl_stylesheetimpl.h: updated includes
 
36371
        * khtml/xsl/xslt_processorimpl.cpp: updated includes
 
36372
        * ksvg2/svg/SVGCursorElementImpl.cpp: updated includes
 
36373
        * ksvg2/svg/SVGDocumentImpl.cpp: updated includes
 
36374
        * ksvg2/svg/SVGFEImageElementImpl.cpp: updated includes
 
36375
        * ksvg2/svg/SVGImageElementImpl.cpp: updated includes
 
36376
        * ksvg2/svg/SVGImageElementImpl.h: updated includes
 
36377
        * kwq/KWQKHTMLPart.mm: updated includes
 
36378
        * kwq/KWQLoader.mm: updated includes
 
36379
        * kwq/KWQPixmap.mm: updated includes
 
36380
        * kwq/KWQTextArea.mm: updated includes
 
36381
        * kwq/WebCoreBridge.mm: updated includes
 
36382
        * kwq/WebCoreCache.mm: updated includes
 
36383
 
 
36384
2006-01-09  Alexey Proskuryakov  <ap@nypop.com>
 
36385
 
 
36386
        Reviewed by Maciej.
 
36387
 
 
36388
        - fix http://bugs.webkit.org/show_bug.cgi?id=6402
 
36389
          Implement frameElement.width and frameElement.height
 
36390
 
 
36391
        Test case: fast/frames/frameElement-widthheight.html
 
36392
 
 
36393
        * khtml/ecma/kjs_html.cpp:
 
36394
        (KJS::HTMLElement::frameGetter):
 
36395
        * khtml/ecma/kjs_html.h:
 
36396
        Add FrameWidth, FrameHeight
 
36397
 
 
36398
        * khtml/html/html_baseimpl.cpp:
 
36399
        (HTMLFrameElementImpl::frameWidth):
 
36400
        (HTMLFrameElementImpl::frameHeight):
 
36401
        * khtml/html/html_baseimpl.h:
 
36402
        Add frameWidth, frameHeight
 
36403
 
 
36404
2006-01-09  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
36405
 
 
36406
        Reviewed by Maciej, landed by ap.
 
36407
        
 
36408
        Test: fast/replaced/inline-box-wrapper-handover.html
 
36409
        
 
36410
        - fix http://bugs.webkit.org/show_bug.cgi?id=6276
 
36411
          Image thumbnails are misplaced on forum.2ostrov.ru
 
36412
          
 
36413
        * khtml/rendering/render_line.cpp:
 
36414
        (khtml::InlineBox::deleteLine): Don't reset the inline box wrapper when
 
36415
        deleting an extracted box.
 
36416
 
 
36417
2006-01-08  Eric Seidel  <eseidel@apple.com>
 
36418
 
 
36419
        Reviewed by ggaren.
 
36420
 
 
36421
        Remove all mention of NSView from khtml.
 
36422
 
 
36423
        * khtml/html/html_objectimpl.cpp:
 
36424
        (DOM::HTMLAppletElementImpl::getAppletInstance): call w/ widget
 
36425
        (DOM::HTMLEmbedElementImpl::getEmbedInstance): call w/ widget
 
36426
        (DOM::HTMLObjectElementImpl::getObjectInstance): call w/ widget
 
36427
        * kwq/KWQKHTMLPart.h:
 
36428
        * kwq/KWQKHTMLPart.mm:
 
36429
        (KWQKHTMLPart::getAppletInstanceForWidget): renamed.
 
36430
        (KWQKHTMLPart::getEmbedInstanceForWidget): renamed.
 
36431
        (KWQKHTMLPart::getObjectInstanceForWidget): renamed.
 
36432
 
 
36433
2006-01-08  Eric Seidel  <eseidel@apple.com>
 
36434
 
 
36435
        Rubber stamped by ggaren.
 
36436
 
 
36437
        * ForwardingHeaders/qsortedlist.h: Added. (a khtml file was referencing KWQ directly.)
 
36438
        * WebCore.xcodeproj/project.pbxproj: added new files.
 
36439
        * khtml/editing/SelectionController.cpp: updated includes
 
36440
        * khtml/editing/composite_edit_command.cpp: updated includes
 
36441
        * khtml/editing/htmlediting.cpp: updated includes
 
36442
        * khtml/editing/markup.cpp: updated includes
 
36443
        * khtml/editing/visible_position.cpp: updated includes
 
36444
        * khtml/editing/visible_text.cpp: updated includes
 
36445
        * khtml/editing/visible_text.h: updated includes
 
36446
        * khtml/editing/visible_units.cpp: updated includes
 
36447
        * khtml/khtml_part.cpp: updated includes
 
36448
        * khtml/khtmlview.cpp: updated includes
 
36449
        * khtml/rendering/InlineTextBox.cpp: Split out from render_text
 
36450
        * khtml/rendering/InlineTextBox.h: Split out from render_text
 
36451
        * khtml/rendering/RenderText.cpp: Split out from render_text
 
36452
        (khtml::RenderText::position): removed DEBUG_LAYOUT
 
36453
        * khtml/rendering/RenderText.h: Split out from render_text
 
36454
        * khtml/rendering/RenderTextFragment.cpp: Split out from render_text
 
36455
        * khtml/rendering/RenderTextFragment.h: Split out from render_text
 
36456
        * khtml/rendering/bidi.cpp: updated includes
 
36457
        * khtml/rendering/render_block.cpp: updated includes
 
36458
        * khtml/rendering/render_br.cpp: updated includes
 
36459
        * khtml/rendering/render_br.h: updated includes
 
36460
        * khtml/rendering/render_button.cpp: updated includes
 
36461
        * khtml/rendering/render_container.cpp: updated includes
 
36462
        * khtml/rendering/render_flow.cpp: updated includes
 
36463
        * khtml/rendering/render_line.cpp: updated includes
 
36464
        * khtml/rendering/render_object.cpp: updated includes
 
36465
        * khtml/rendering/render_text.cpp: Removed.
 
36466
        * khtml/rendering/render_text.h: Removed.
 
36467
        * khtml/xml/dom_docimpl.cpp: updated includes
 
36468
        * khtml/xml/dom_nodeimpl.cpp: updated includes
 
36469
        * khtml/xml/dom_position.cpp: updated includes
 
36470
        * khtml/xml/dom_textimpl.cpp: updated includes
 
36471
        * kwq/KWQAccObject.mm: updated includes
 
36472
        * kwq/KWQKHTMLPart.mm: updated includes
 
36473
        * kwq/KWQRenderTreeDebug.cpp: updated includes
 
36474
 
 
36475
2006-01-08  Eric Seidel  <eseidel@apple.com>
 
36476
 
 
36477
        Reviewed by mjs & xenon.
 
36478
 
 
36479
        Renamed a few in kwq/ from .mm to .cpp
 
36480
 
 
36481
        * WebCore.xcodeproj/project.pbxproj: updated paths
 
36482
        * kwq/KWQDictImpl.cpp: Added.
 
36483
        * kwq/KWQDictImpl.mm: Removed.
 
36484
        * kwq/KWQKPartsEvent.cpp: Added.
 
36485
        * kwq/KWQKPartsEvent.mm: Removed.
 
36486
        * kwq/KWQListImpl.cpp: Added.
 
36487
        * kwq/KWQListImpl.mm: Removed.
 
36488
 
 
36489
2006-01-08  Eric Seidel  <eseidel@apple.com>
 
36490
 
 
36491
        Reviewed by mjs.
 
36492
 
 
36493
        Renamed several files in kwq/ from .mm to .cpp
 
36494
        Removed a few pieces of unused KWQ code.
 
36495
 
 
36496
        * WebCore.xcodeproj/project.pbxproj:
 
36497
        * khtml/html/htmltokenizer.cpp:
 
36498
        (khtml::HTMLTokenizer::continueProcessing): removed KWQUIEventTime
 
36499
        (khtml::HTMLTokenizer::write): removed KWQUIEventTime
 
36500
        * khtml/html/htmltokenizer.h:
 
36501
        * khtml/khtml_part.cpp:
 
36502
        (KHTMLPart::slotFinished): removed KWQUIEventTime
 
36503
        * khtml/misc/loader.cpp:
 
36504
        (CachedObject::finish): removed KWQUIEventTime
 
36505
        * khtml/xml/dom_docimpl.cpp:
 
36506
        (DocumentImpl::processHttpEquiv): removed KWQUIEventTime
 
36507
        * kwq/KWQArrayImpl.cpp: Added.
 
36508
        * kwq/KWQArrayImpl.mm: Removed.
 
36509
        * kwq/KWQBuffer.cpp: Added.
 
36510
        * kwq/KWQBuffer.mm: Removed.
 
36511
        * kwq/KWQCString.cpp: Added.
 
36512
        * kwq/KWQCString.mm: Removed.
 
36513
        * kwq/KWQCharsets.cpp: Added.
 
36514
        * kwq/KWQCharsets.mm: Removed.
 
36515
        * kwq/KWQCollection.h:
 
36516
        (QPtrCollection::~QPtrCollection): made inline
 
36517
        * kwq/KWQCollection.mm: Removed.
 
36518
        * kwq/KWQDateTime.cpp: Added, removed KWQUIEventTime
 
36519
        * kwq/KWQDateTime.h:
 
36520
        * kwq/KWQDateTime.mm: Removed.
 
36521
        * kwq/KWQGlobal.cpp: Added.
 
36522
        * kwq/KWQGlobal.mm: Removed.
 
36523
        * kwq/KWQGuardedPtr.cpp: Added.
 
36524
        * kwq/KWQGuardedPtr.mm: Removed.
 
36525
        * kwq/KWQKCharsets.cpp: Added.
 
36526
        * kwq/KWQKCharsets.mm: Removed.
 
36527
        * kwq/KWQKGlobalSettings.h:
 
36528
        (KGlobalSettings::generalFont): made inline
 
36529
        (KGlobalSettings::windowTitleFont): made inline
 
36530
        (KGlobalSettings::menuFont): made inline
 
36531
        (KGlobalSettings::contrast): made inline
 
36532
        * kwq/KWQKGlobalSettings.mm: Removed.
 
36533
        * kwq/KWQKHTMLFactory.cpp: Added.
 
36534
        * kwq/KWQKHTMLFactory.mm: Removed.
 
36535
        * kwq/KWQKHTMLView.cpp: Added.
 
36536
        * kwq/KWQKHTMLView.mm: Removed.
 
36537
        * kwq/KWQKJob.h:
 
36538
        * kwq/KWQKJob.mm: Removed.
 
36539
        * kwq/KWQKWin.cpp: Added.
 
36540
        * kwq/KWQKWin.mm: Removed.
 
36541
        * kwq/KWQMapImpl.cpp: Added.
 
36542
        * kwq/KWQMapImpl.mm: Removed.
 
36543
        * kwq/KWQObject.cpp: Added.
 
36544
        * kwq/KWQObject.mm: Removed.
 
36545
        * kwq/KWQPen.cpp: Added.
 
36546
        * kwq/KWQPen.mm: Removed.
 
36547
        * kwq/KWQPointArray.cpp: Added.
 
36548
        * kwq/KWQPointArray.mm: Removed.
 
36549
        * kwq/KWQPtrDictImpl.cpp: Added.
 
36550
        * kwq/KWQPtrDictImpl.mm: Removed.
 
36551
        * kwq/KWQRegExp.cpp: Added.
 
36552
        * kwq/KWQRegExp.mm: Removed.
 
36553
        * kwq/KWQRegion.cpp: Added.
 
36554
        * kwq/KWQRegion.mm: Removed.
 
36555
        * kwq/KWQStyle.cpp: Added.
 
36556
        * kwq/KWQStyle.mm: Removed.
 
36557
        * kwq/KWQTextCodec.cpp: Added.
 
36558
        * kwq/KWQTextCodec.mm: Removed.
 
36559
        * kwq/KWQTextStream.cpp: Added.
 
36560
        * kwq/KWQTextStream.mm: Removed.
 
36561
        * kwq/KWQTimer.cpp: Added.
 
36562
        * kwq/KWQTimer.mm: Removed.
 
36563
        * kwq/KWQValueListImpl.cpp: Added.
 
36564
        * kwq/KWQValueListImpl.mm: Removed.
 
36565
        * kwq/KWQVariant.cpp: Added.
 
36566
        * kwq/KWQVariant.mm: Removed.
 
36567
        * kwq/KWQVectorImpl.cpp: Added.
 
36568
        * kwq/KWQVectorImpl.mm: Removed.
 
36569
        * kwq/KWQWMatrix.cpp: Added.
 
36570
        * kwq/KWQWMatrix.mm: Removed.
 
36571
 
 
36572
2006-01-07  Maciej Stachowiak  <mjs@apple.com>
 
36573
 
 
36574
        Reviewed by Eric.
 
36575
 
 
36576
        - added basic SVG text support using CSS-based rendering
 
36577
        http://bugs.webkit.org/show_bug.cgi?id=4883
 
36578
 
 
36579
        Affects many test results in LayoutTests/svg.
 
36580
 
 
36581
        * kcanvas/RenderSVGText.cpp: Added. Simple subclass of RenderBlock for SVG text.
 
36582
        (RenderSVGText::RenderSVGText): just call superclass constructor.
 
36583
        (RenderSVGText::translateTopToBaseline): helper to account for the fact that
 
36584
        y coordinates for <text> give the baseline position, but the render tree expects
 
36585
        current y to be the top.
 
36586
        (RenderSVGText::translateForAttributes): translate to account for x and y
 
36587
        attributes.
 
36588
        (RenderSVGText::paint): Apply appropriate CTM transform and then just let
 
36589
        RenderBlock paint.
 
36590
        * kcanvas/RenderSVGText.h: Added.
 
36591
        (RenderSVGText::renderName):
 
36592
        * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
 
36593
        (KRenderingDeviceContextQuartz::nsGraphicsContext): We want the context flipped.
 
36594
        * ksvg2/css/svg.css: Give <svg:text> display: block
 
36595
        * ksvg2/svg/SVGTextElementImpl.cpp:
 
36596
        (SVGTextElementImpl::createRenderer): Create a RenderSVGText renderer.
 
36597
        (SVGTextElementImpl::childShouldCreateRenderer): Let child text nodes make
 
36598
        renderers, but nothing else (for now).
 
36599
        * ksvg2/svg/SVGTextElementImpl.h:
 
36600
        (KSVG::SVGTextElementImpl::rendererIsNeeded): It sure is! :-)
 
36601
        * WebCore.xcodeproj/project.pbxproj: Add new files.
 
36602
 
 
36603
2006-01-07  Eric Seidel  <eseidel@apple.com>
 
36604
 
 
36605
        Reviewed by mjs
 
36606
 
 
36607
        Removed old, unneeded code.
 
36608
 
 
36609
        * WebCore+SVG/DrawCanvasItem.h: Removed.
 
36610
        * WebCore+SVG/DrawCanvasItem.mm: Removed.
 
36611
        * WebCore+SVG/DrawCanvasItemPrivate.h: Removed.
 
36612
        * WebCore+SVG/DrawDocument.h: Removed.
 
36613
        * WebCore+SVG/DrawDocument.mm: Removed.
 
36614
        * WebCore+SVG/DrawDocumentPrivate.h: Removed.
 
36615
        * WebCore+SVG/DrawView.h: Removed.
 
36616
        * WebCore+SVG/DrawView.mm: Removed.
 
36617
        * WebCore+SVG/DrawViewPrivate.h: Removed.
 
36618
        * WebCore+SVG/NSSVGImageRep.h: Removed.
 
36619
        * WebCore+SVG/NSSVGImageRep.m: Removed.
 
36620
        * WebCore.xcodeproj/project.pbxproj: remove files
 
36621
 
 
36622
2006-01-07  Maciej Stachowiak  <mjs@apple.com>
 
36623
 
 
36624
        Reviewed by Eric.
 
36625
 
 
36626
        - fixed WebCore build
 
36627
        http://bugs.webkit.org/show_bug.cgi?id=6404
 
36628
 
 
36629
        * khtml/rendering/render_canvasimage.h: Remove unneeded extern declarations.
 
36630
 
 
36631
2006-01-07  Anders Carlsson  <andersca@mac.com>
 
36632
 
 
36633
        Reviewed by Maciej.
 
36634
 
 
36635
        - Fix http://bugs.webkit.org/show_bug.cgi?id=6373
 
36636
        REGRESSION: JavaScript hang when comparing large array to null
 
36637
        
 
36638
        * khtml/ecma/kjs_html.cpp:
 
36639
        Remove toPrimitive.
 
36640
        
 
36641
        * khtml/ecma/kjs_html.h:
 
36642
        (KJS::HTMLAllCollection::isEqualToNull):
 
36643
        Implement isEqualToNull and have it return true.
 
36644
 
 
36645
2006-01-06  Eric Seidel  <eseidel@apple.com>
 
36646
 
 
36647
        Reviewed by darin.
 
36648
 
 
36649
        <rdar://problem/4386652> Crash: SVG filter crash at w3schools.com
 
36650
 
 
36651
        * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
 
36652
        (KCanvasFEDiffuseLightingQuartz::getCIFilter): nil check
 
36653
        (KCanvasFESpecularLightingQuartz::getCIFilter): nil check
 
36654
 
 
36655
2006-01-06  Geoffrey Garen  <ggaren@apple.com>
 
36656
 
 
36657
        Patch by Mitz, reviwed by Darin, layout tested and landed by me.
 
36658
 
 
36659
        - Fixed http://bugs.webkit.org/show_bug.cgi?id=6382
 
36660
        REGRESSION: Repro crash when clicking link with target="_blank"
 
36661
 
 
36662
        * kwq/KWQKHTMLPart.mm:
 
36663
        (KWQKHTMLPart::setName):
 
36664
        * manual-tests/empty-link-target.html: Added.
 
36665
 
 
36666
2006-01-06  Alexey Proskuryakov  <ap@nypop.com>
 
36667
 
 
36668
        Reviewed by Darin.
 
36669
 
 
36670
        - fix http://bugs.webkit.org/show_bug.cgi?id=5291
 
36671
          FORM multipart/form-data with GET method issue
 
36672
 
 
36673
        Test cases: 
 
36674
        * fast/forms/form-get-multipart.html
 
36675
        * fast/forms/form-get-multipart2.html
 
36676
        * fast/forms/form-get-multipart3.html
 
36677
        * fast/forms/form-post-urlencoded.html
 
36678
 
 
36679
        * khtml/html/html_formimpl.cpp:
 
36680
        (DOM::HTMLFormElementImpl::submit):
 
36681
        Reset m_multipart to false if not posting.
 
36682
        (DOM::HTMLFormElementImpl::parseEnctype):
 
36683
        multipart/form-data doesn't imply POST method.
 
36684
 
 
36685
2006-01-06  Alexey Proskuryakov  <ap@nypop.com>
 
36686
 
 
36687
        Reviewed by Eric.
 
36688
 
 
36689
        - fix http://bugs.webkit.org/show_bug.cgi?id=5792
 
36690
          Crasher on rendering-shapes from SVG 1.0 testsuite
 
36691
 
 
36692
        Test case: fast/parser/entity-ignorable-whitespace.xhtml
 
36693
 
 
36694
        * khtml/xml/xml_tokenizer.cpp:
 
36695
        (khtml::XMLTokenizer::finish): install an ignorableWhitespace callback to
 
36696
        work around a libxml2 bug
 
36697
        (khtml::ignorableWhitespaceHandler): no-op
 
36698
 
 
36699
2006-01-06  Anders Carlsson  <andersca@mac.com>
 
36700
 
 
36701
        Reviewed by Eric.
 
36702
 
 
36703
        - fix http://bugs.webkit.org/show_bug.cgi?id=5142
 
36704
        parseXMLDocumentFragment can't parse fragments correctly
 
36705
        
 
36706
        * khtml/xml/xml_tokenizer.cpp:
 
36707
        (khtml::balancedStartElementNsHandler):
 
36708
        (khtml::balancedEndElementNsHandler):
 
36709
        (khtml::balancedCharactersHandler):
 
36710
        (khtml::balancedProcessingInstructionHandler):
 
36711
        (khtml::balancedCdataBlockHandler):
 
36712
        (khtml::balancedCommentHandler):
 
36713
        (khtml::balancedWarningHandler):
 
36714
        Add handlers.
 
36715
        
 
36716
        (khtml::parseXMLDocumentFragment):
 
36717
        Change back into using xmlParseBalancedChunkMemory. 
 
36718
 
 
36719
2006-01-06  Alexander Kellett  <lypanov@kde.org>
 
36720
 
 
36721
        Reviewed by eseidel.  Landed by eseidel.
 
36722
 
 
36723
        Basic support for <mask> tag.
 
36724
        http://bugs.webkit.org/show_bug.cgi?id=5969
 
36725
        Still missing attribute support for: maskUnits, maskContentUnits.
 
36726
        
 
36727
        Mask pixel tests do not work in DumpRenderTree due to:
 
36728
        http://bugs.webkit.org/show_bug.cgi?id=6327
 
36729
        Added test cases anyway.
 
36730
 
 
36731
        This also tickles a (known) gradient update issue:
 
36732
        http://bugs.webkit.org/show_bug.cgi?id=6052
 
36733
        
 
36734
        Test: svg/custom/grayscale-gradient-mask.svg
 
36735
 
 
36736
        * WebCore.xcodeproj/project.pbxproj: added Mask files
 
36737
        * kcanvas/KCanvasResources.cpp:
 
36738
        (KCanvasMasker::KCanvasMasker): added.
 
36739
        (KCanvasMasker::~KCanvasMasker): added.
 
36740
        (KCanvasMasker::setMask): added.
 
36741
        (KCanvasMasker::externalRepresentation): added.
 
36742
        (getMaskerById): added.
 
36743
        * kcanvas/KCanvasResources.h:
 
36744
        (KCanvasResource::isMasker): added.
 
36745
        (KCanvasMasker::isMasker): added.
 
36746
        (KCanvasMasker::mask): added.
 
36747
        * kcanvas/device/quartz/KCanvasItemQuartz.mm:
 
36748
        (KCanvasItemQuartz::paint): added mask support
 
36749
        * kcanvas/device/quartz/KCanvasMaskerQuartz.h: Added.
 
36750
        (KCanvasMaskerQuartz::KCanvasMaskerQuartz): added.
 
36751
        * kcanvas/device/quartz/KCanvasMaskerQuartz.mm: Added.
 
36752
        (applyLuminanceToAlphaFilter): added.
 
36753
        (applyExpandAlphatoGrayscaleFilter): added.
 
36754
        (transformImageIntoGrayscaleMask): added.
 
36755
        (KCanvasMaskerQuartz::applyMask): added.
 
36756
        * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
 
36757
        (KCanvasContainerQuartz::paint): added mask support.
 
36758
        * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
 
36759
        (KRenderingDeviceQuartz::createResource): added mask support.
 
36760
        * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
 
36761
        (KRenderingPaintServerRadialGradientQuartz::draw):
 
36762
        * kcanvas/device/quartz/QuartzSupport.h:
 
36763
        * kcanvas/device/quartz/QuartzSupport.mm:
 
36764
        (debugDumpCGImageToFile): added, debug only.
 
36765
        (debugDumpCGLayerToFile): added, debug only.
 
36766
        (debugDumpCIImageToFile): added, debug only.
 
36767
        * ksvg2/css/SVGCSSStyleSelector.cpp:
 
36768
        (KDOM::CSSStyleSelector::applySVGProperty): added mask support.
 
36769
        * ksvg2/css/SVGRenderStyle.cpp:
 
36770
        (SVGRenderStyle::SVGRenderStyle): added mask support.
 
36771
        (SVGRenderStyle::operator==): added mask support.
 
36772
        * ksvg2/css/SVGRenderStyle.h:
 
36773
        * ksvg2/css/SVGRenderStyleDefs.cpp:
 
36774
        (StyleMaskData::StyleMaskData): added mask support.
 
36775
        (StyleMaskData::operator==): added mask support.
 
36776
        * ksvg2/css/SVGRenderStyleDefs.h:
 
36777
        (KSVG::StyleMaskData::operator!=): added mask support.
 
36778
        * ksvg2/ecma/Ecma.cpp:
 
36779
        (Ecma::inheritedGetDOMNode): added mask support.
 
36780
        * ksvg2/svg/SVGMaskElementImpl.cpp: Added.
 
36781
        (KSVG::SVGMaskElementImpl::SVGMaskElementImpl): added.
 
36782
        (KSVG::SVGMaskElementImpl::~SVGMaskElementImpl): added.
 
36783
        (KSVG::SVGMaskElementImpl::x): added.
 
36784
        (KSVG::SVGMaskElementImpl::y): added.
 
36785
        (KSVG::SVGMaskElementImpl::width): added.
 
36786
        (KSVG::SVGMaskElementImpl::height): added.
 
36787
        (KSVG::SVGMaskElementImpl::attributeChanged): added.
 
36788
        (KSVG::SVGMaskElementImpl::childrenChanged): added.
 
36789
        (KSVG::SVGMaskElementImpl::parseMappedAttribute): added.
 
36790
        (KSVG::SVGMaskElementImpl::drawMaskerContent): added.
 
36791
        (KSVG::SVGMaskElementImpl::createRenderer): added.
 
36792
        (KSVG::SVGMaskElementImpl::canvasResource): added.
 
36793
        * ksvg2/svg/SVGMaskElementImpl.h: Added.
 
36794
        (KSVG::SVGMaskElementImpl::isValid): added.
 
36795
        (KSVG::SVGMaskElementImpl::rendererIsNeeded): added.
 
36796
        * ksvg2/svg/svgtags.in: added <mask> support.
 
36797
 
 
36798
2006-01-04  Maciej Stachowiak  <mjs@apple.com>
 
36799
 
 
36800
        Reviewed by Darin.
 
36801
 
 
36802
        - move frame management and finding code from WebKit to WebCore
 
36803
        http://bugs.webkit.org/show_bug.cgi?id=6368
 
36804
 
 
36805
        * WebCore.exp: export WebCoreFrameNamespace
 
36806
        * WebCore.xcodeproj/project.pbxproj: add new files
 
36807
        * kwq/KWQKHTMLPart.mm:
 
36808
        (KWQKHTMLPart::setName): Don't call to bridge any more, not needed
 
36809
        * kwq/WebCoreBridge.h:
 
36810
        * kwq/WebCoreBridge.mm:
 
36811
        (isCaseSensitiveEqual): helper function
 
36812
        (-[WebCoreBridge appendChild:]): remove excess braces
 
36813
        (-[WebCoreBridge childFrameNamed:]): moved here from WebFrame
 
36814
        (-[WebCoreBridge _deepLastChildFrame]): ditto
 
36815
        (-[WebCoreBridge nextFrameWithWrap:]): ditto
 
36816
        (-[WebCoreBridge previousFrameWithWrap:]): ditto
 
36817
        (-[WebCoreBridge setFrameNamespace:]): ditto
 
36818
        (-[WebCoreBridge frameNamespace]): ditto
 
36819
        (-[WebCoreBridge _shouldAllowAccessFrom:]): ditto
 
36820
        (-[WebCoreBridge _descendantFrameNamed:sourceFrame:]): ditto
 
36821
        (-[WebCoreBridge _frameInAnyWindowNamed:sourceFrame:]): ditto
 
36822
        (-[WebCoreBridge findFrameNamed:]): ditto
 
36823
        (-[WebCoreBridge setName:]): don't call KHTMLPart setName directly,
 
36824
        the kwq version is fine
 
36825
        (-[WebCoreBridge _addFramePathToString:]): moved from WebFrame
 
36826
        (-[WebCoreBridge generateFrameName]): ditto
 
36827
 
 
36828
2006-01-04  Anders Carlsson  <andersca@mac.com>
 
36829
 
 
36830
        Reviewed by Eric.
 
36831
 
 
36832
        Based on a patch by Eric.
 
36833
        
 
36834
        - fix http://bugs.webkit.org/show_bug.cgi?id=6180
 
36835
        "text" output in fragment produced by XSLTProccessor is wrong (has xhtml garbage)
 
36836
        
 
36837
        * khtml/xsl/xslt_processorimpl.cpp:
 
36838
        (DOM::xsltParamArrayFromParameterMap):
 
36839
        (DOM::freeXsltParamArray):
 
36840
        Use fastMalloc/fastFree.
 
36841
        
 
36842
        (DOM::createFragmentFromSource):
 
36843
        If the output is "text", just create a text node and add
 
36844
        it to the fragment.
 
36845
 
 
36846
2006-01-04  Geoffrey Garen  <ggaren@apple.com>
 
36847
 
 
36848
        Reviewed by darin.
 
36849
 
 
36850
        - Fixed http://bugs.webkit.org/show_bug.cgi?id=6311
 
36851
        document.plugins doesn't exist
 
36852
 
 
36853
        * khtml/ecma/kjs_html.cpp: Added 'plugins' as synonym for 'embeds'
 
36854
 
 
36855
2006-01-04  Geoffrey Garen  <ggaren@apple.com>
 
36856
 
 
36857
         Reviewed by darin.
 
36858
 
 
36859
         - Fixed <rdar://problem/4214080> document.embeds: embeds[0].Play() 
 
36860
         undefined at languageguide.org prevents audio playing on mouseover
 
36861
 
 
36862
         - Layout test: fast/dom/object-embed-plugin-scripting.html
 
36863
 
 
36864
         A common idiom the kids like to use these days for plugins is to nest 
 
36865
         an <embed> inside an <object>, and assume that IE will honor the first,
 
36866
         Mozilla the second. We happen to honor both, but the rules dictate that
 
36867
         only the outer <object> gets a plugin/renderer. (A plugin is a 
 
36868
        renderer.) This is a problem because sites ID us as Mozilla and 
 
36869
        therefore attempt to script their plugins through the <embed>, which 
 
36870
        has no plugin/renderer. The fix here is to have an <embed> return its 
 
36871
        parent node's plugin/renderer when queried, if and only if it has no 
 
36872
        renderer of its own and its parent node is an <object>. We may decide
 
36873
        to restrict this further in the future.
 
36874
 
 
36875
        One happy consequence of this patch is that all the apple.com Quicktime
 
36876
        websites we had previously broken with TOT are now fixed. 
 
36877
 
 
36878
        * khtml/html/html_objectimpl.cpp:
 
36879
        (DOM::HTMLEmbedElementImpl::getEmbedInstance): The "if (!r)" clause 
 
36880
        implements the logic I just described. The code below it I changed 
 
36881
        just for style, to match the style in getObjectInstance().
 
36882
 
 
36883
        (DOM::HTMLEmbedElementImpl::rendererIsNeeded): Assert that an <object>
 
36884
        parent has a renderer because we're going to use it later.
 
36885
 
 
36886
        (DOM::HTMLObjectElementImpl::rendererIsNeeded): Changed to match style 
 
36887
        of HTMLEmbedElementImpl counterpart.
 
36888
 
 
36889
2006-01-04  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
36890
 
 
36891
        Reviewed by Darin, landed by ap.
 
36892
        
 
36893
        - fix http://bugs.webkit.org/show_bug.cgi?id=6301
 
36894
          REGRESSION: Border repaint glitch
 
36895
 
 
36896
        * khtml/rendering/render_object.cpp:
 
36897
        (RenderObject::repaintAfterLayoutIfNeeded): Repaint parts of the
 
36898
        border that moved.
 
36899
        * manual-tests/border-repaint-glitch.html: Added.
 
36900
 
 
36901
2005-12-30  Kimmo Kinnunen  <kimmo.kinnunen@nokia.com>
 
36902
 
 
36903
        Reviewed by eseidel.  Landed by eseidel.
 
36904
 
 
36905
        Changed use of QRect to QRectF in the points where SVG can have
 
36906
        fractional numbers
 
36907
        http://bugs.webkit.org/show_bug.cgi?id=4462
 
36908
 
 
36909
        Added test cases:
 
36910
        * svg/custom/fractional-rects.svg: copy of rounded-rects.svg with
 
36911
        fractional coordinates.
 
36912
 
 
36913
        * WebCore.xcodeproj/project.pbxproj:
 
36914
        * kwq/KWQWMatrix.h:
 
36915
        * kwq/KWQWMatrix.mm:
 
36916
        (QWMatrix::mapRect): mapRect for QRectF
 
36917
        * kwq/KWQRectF.h:
 
36918
        * kwq/KWQRectF.mm:  Added. QRectF impl
 
36919
        * kwq/KWQSizeF.h:
 
36920
        * kwq/KWQSizeF.mm:  Added.QSizeF impl
 
36921
        * kwq/KWQPointF.h:
 
36922
        * kwq/KWQPointF.mm: Added. QPointF impl
 
36923
        * kcanvas/KCanvasContainer.cpp:
 
36924
        (KCanvasContainer::fillContains):
 
36925
        (KCanvasContainer::strokeContains):
 
36926
        (KCanvasContainer::relativeBBox):
 
36927
        (KCanvasContainer::getAspectRatio): QRect -> QRectF
 
36928
        * kcanvas/KCanvasContainer.h:
 
36929
        * kcanvas/KCanvasFilters.cpp:
 
36930
        (KCanvasFilterEffect::subRegion):
 
36931
        (KCanvasFilterEffect::setSubRegion): QRect -> QRectF
 
36932
        * kcanvas/KCanvasFilters.h:
 
36933
        (KCanvasFilter::filterRect):
 
36934
        (KCanvasFilter::setFilterRect): QRect -> QRectF
 
36935
        (KCanvasFEConvolveMatrix::kernelSize):
 
36936
        (KCanvasFEConvolveMatrix::setKernelSize):
 
36937
        (KCanvasFEConvolveMatrix::targetOffset):
 
36938
        (KCanvasFEConvolveMatrix::setTargetOffset): QSize -> QSizeF
 
36939
        * kcanvas/KCanvasItem.cpp:
 
36940
        (RenderPath::fillContains):
 
36941
        (RenderPath::strokeContains):
 
36942
        (RenderPath::relativeBBox): QRect -> QRectF
 
36943
        * kcanvas/KCanvasItem.h:
 
36944
        * kcanvas/KCanvasResources.cpp:
 
36945
        (KCanvasMarker::draw): QRect -> QRectF
 
36946
        * kcanvas/KCanvasResources.h:
 
36947
        * kcanvas/KCanvasTreeDebug.cpp:
 
36948
        (hasFractions): helper function
 
36949
        (operator<<): QSizeF operator, QRectF operator
 
36950
        * kcanvas/KCanvasTreeDebug.h:
 
36951
        * kcanvas/device/KRenderingPaintServerGradient.cpp:
 
36952
        (KRenderingPaintServerLinearGradient::gradientStart):
 
36953
        (KRenderingPaintServerLinearGradient::setGradientStart):
 
36954
        (KRenderingPaintServerLinearGradient::gradientEnd):
 
36955
        (KRenderingPaintServerLinearGradient::setGradientEnd):
 
36956
        (KRenderingPaintServerRadialGradient::gradientCenter):
 
36957
        (KRenderingPaintServerRadialGradient::setGradientCenter):
 
36958
        (KRenderingPaintServerRadialGradient::gradientFocal):
 
36959
        (KRenderingPaintServerRadialGradient::setGradientFocal): QPoint -> QPointF
 
36960
        * kcanvas/device/KRenderingPaintServerGradient.h:
 
36961
        * kcanvas/device/KRenderingPaintServerPattern.cpp:
 
36962
        (KRenderingPaintServerPattern::Private::Private): x, y, width, height -> QRectF
 
36963
        (KRenderingPaintServerPattern::setBbox): replaced get/set methods
 
36964
        (KRenderingPaintServerPattern::bbox): replaced get/set methods
 
36965
        (KRenderingPaintServerPattern::externalRepresentation):
 
36966
        * kcanvas/device/KRenderingPaintServerPattern.h:
 
36967
        * kcanvas/device/quartz/KCanvasFilterQuartz.h:
 
36968
        * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
 
36969
        (KCanvasFilterQuartz::prepareFilter):
 
36970
        (KCanvasFilterQuartz::applyFilter): QRect -> QRectF
 
36971
        * kcanvas/device/quartz/KCanvasItemQuartz.h:
 
36972
        (KCanvasItemQuartz::getAbsoluteRepaintRect): QRect -> QRectF
 
36973
        * kcanvas/device/quartz/KCanvasItemQuartz.mm:
 
36974
        (drawMarkerWithData):
 
36975
        (KCanvasItemQuartz::drawMarkersIfNeeded):
 
36976
        (KCanvasItemQuartz::paint): QRect -> QRectF
 
36977
        (KCanvasItemQuartz::nodeAtPoint): QPoint -> QPointF
 
36978
        (KCanvasItemQuartz::bboxForPath) :QRect -> QRectF
 
36979
        (KCanvasItemQuartz::hitsPath):
 
36980
        * kcanvas/device/quartz/KCanvasResourcesQuartz.h:
 
36981
        (KCanvasContainerQuartz::getAbsoluteRepaintRect): QRect -> QRectF
 
36982
        * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
 
36983
        (KRenderingPaintServerPatternQuartz::draw): QRect -> QRectF
 
36984
        * khtml/rendering/render_object.h:
 
36985
        (khtml::RenderObject::relativeBBox):QRect -> QRectF
 
36986
        * ksvg2/svg/SVGFilterElementImpl.cpp:
 
36987
        (SVGFilterElementImpl::canvasResource): QRect -> QRectF
 
36988
        * ksvg2/svg/SVGFilterPrimitiveStandardAttributesImpl.cpp:
 
36989
        (SVGFilterPrimitiveStandardAttributesImpl::setStandardAttributes):
 
36990
        * ksvg2/svg/SVGLengthImpl.cpp:
 
36991
        (SVGLengthImpl::value): QRect -> QRectF
 
36992
        * ksvg2/svg/SVGLinearGradientElementImpl.cpp:
 
36993
        (SVGLinearGradientElementImpl::buildGradient): QPoint -> QPointF, removed integer conversions
 
36994
        * ksvg2/svg/SVGLocatableImpl.cpp:
 
36995
        (SVGLocatableImpl::getBBox): Rect -> QRectF
 
36996
        * ksvg2/svg/SVGPatternElementImpl.cpp:
 
36997
        (SVGPatternElementImpl::drawPatternContentIntoTile): QRect -> QRectF
 
36998
        * ksvg2/svg/SVGRadialGradientElementImpl.cpp:
 
36999
        (SVGRadialGradientElementImpl::buildGradient): QPoint -> QPointF, removed integer conversions
 
37000
        * ksvg2/svg/SVGSVGElementImpl.cpp:
 
37001
        (SVGSVGElementImpl::checkIntersection): QRect -> QRectF, removed integer conversions
 
37002
        (SVGSVGElementImpl::checkEnclosure): QRect -> QRectF, removed integer conversions
 
37003
 
 
37004
2006-01-03  Maciej Stachowiak  <mjs@apple.com>
 
37005
 
 
37006
        Reviewed by Vicki.
 
37007
 
 
37008
        - moved frame traversal code across from bridge, also dropped the children
 
37009
        array
 
37010
 
 
37011
        * kwq/WebCoreBridge.h:
 
37012
        * kwq/WebCoreBridge.mm:
 
37013
        (-[WebCoreBridge firstChild]): Moved from WebBridge. Use new _firstChild
 
37014
        pointer.
 
37015
        (-[WebCoreBridge lastChild]): Moved from WebBridge. Use new _lastChild pointer.
 
37016
        (-[WebCoreBridge childCount]): Moved from WebBridge. Use _childCount variable.
 
37017
        (-[WebCoreBridge previousSibling]): Moved from WebBridge.
 
37018
        (-[WebCoreBridge nextSibling]): ditt
 
37019
        (-[WebCoreBridge isDescendantOfFrame:]): ditto
 
37020
        (-[WebCoreBridge traverseNextFrameStayWithin:]): ditto
 
37021
        (-[WebCoreBridge appendChild:]): Moved from WebBridge, maintain count and first/last
 
37022
        pointers.
 
37023
        (-[WebCoreBridge removeChild:]): Moved from WebBridge, maintain count and first/last
 
37024
        pointers.
 
37025
 
 
37026
2006-01-03  Justin Garcia  <justin.garcia@apple.com>
 
37027
 
 
37028
        Reviewed by harrison
 
37029
 
 
37030
        <http://bugs.webkit.org/show_bug.cgi?id=4609>
 
37031
        window.getSelection().toString() is undefined (range object 
 
37032
        returned from window.getSelection() is useless)
 
37033
 
 
37034
        toString was defined as a method on the JS Selection object, 
 
37035
        but it didn't return anything.
 
37036
 
 
37037
        Added layout test:
 
37038
        * editing/selection/toString.html
 
37039
 
 
37040
        * khtml/ecma/kjs_window.cpp:
 
37041
        (KJS::SelectionFunc::callAsFunction):
 
37042
 
 
37043
2006-01-03  Geoffrey Garen  <ggaren@apple.com>
 
37044
 
 
37045
        Reviewed by timo.
 
37046
 
 
37047
        - Fixed: http://bugs.webkit.org/show_bug.cgi?id=6318
 
37048
        REGRESSION: Repro crash in JS called from Flash on bdash.net.nz
 
37049
 
 
37050
        Since we clear all the plugin data structures in setView, we need to
 
37051
        clear the windowScriptObject as well. I had already done this in my
 
37052
        previous patch, but I didn't realize there are two windowScriptObjects 
 
37053
        -- one for Netscape PlugIns, and one for WebKit PlugIns.
 
37054
 
 
37055
        * kwq/KWQKHTMLPart.mm:
 
37056
        (KWQKHTMLPart::setView): Clear the Netscape PlugIn windowScriptObject
 
37057
        as well.
 
37058
 
 
37059
2006-01-03  Anders Carlsson  <andersca@mac.com>
 
37060
 
 
37061
        Reviewed by Eric.
 
37062
 
 
37063
        - fix http://bugs.webkit.org/show_bug.cgi?id=6358
 
37064
        JS objects missing "prototype" properties
 
37065
        
 
37066
        * khtml/ecma/XSLTProcessor.cpp:
 
37067
        (KJS::XSLTProcessorConstructorImp::XSLTProcessorConstructorImp):
 
37068
        * khtml/ecma/XSLTProcessor.h:
 
37069
        * khtml/ecma/domparser.cpp:
 
37070
        (KJS::DOMParserConstructorImp::DOMParserConstructorImp):
 
37071
        * khtml/ecma/xmlhttprequest.cpp:
 
37072
        (KJS::XMLHttpRequestConstructorImp::XMLHttpRequestConstructorImp):
 
37073
        * khtml/ecma/xmlserializer.cpp:
 
37074
        (KJS::XMLSerializerConstructorImp::XMLSerializerConstructorImp):
 
37075
        Add "prototype" property in constructors.
 
37076
 
 
37077
2006-01-03  Eric Seidel  <eseidel@apple.com>
 
37078
 
 
37079
        Reviewed by darin.
 
37080
 
 
37081
        REGRESSION: repro crash w/ invalid charset attribute on <script>
 
37082
        http://bugs.webkit.org/show_bug.cgi?id=6345
 
37083
        I also made some small spacing cleanup here.
 
37084
        I did *not* fix the usage in formData, as the move from KCharSet to
 
37085
        QTextCodec actually fixed a bug whereby if the first listed charset
 
37086
        in accept-charsets was invalid, we would assume latin1 instead of
 
37087
        checking for the next valid one before assuming system encoding.
 
37088
 
 
37089
        * khtml/html/html_formimpl.cpp:
 
37090
        (DOM::HTMLFormElementImpl::formData): cleanup
 
37091
        * khtml/misc/loader.cpp:
 
37092
        (CachedCSSStyleSheet::CachedCSSStyleSheet): null check
 
37093
        (CachedScript::CachedScript): cleanup
 
37094
        (CachedXSLStyleSheet::CachedXSLStyleSheet): null check
 
37095
        (CachedXBLDocument::CachedXBLDocument): cleanup
 
37096
 
 
37097
2006-01-03  Justin Garcia  <justin.garcia@apple.com>
 
37098
 
 
37099
        <http://bugs.webkit.org/show_bug.cgi?id=4904>
 
37100
        Bug with baseOffset and extentOffset in selections (for writely.com)
 
37101
        <rdar://problem/4259818>
 
37102
        selection object incorrect after double-clicking a word
 
37103
        
 
37104
        Reviewed by harrison
 
37105
 
 
37106
        Changed the Selection object's anchor/focus properties to match 
 
37107
        Mozilla's Selection object API, added getRangeAt and outlined the 
 
37108
        rest of the API.
 
37109
        Cleaned up the JS Selection object (to do less work in the DOM binding).
 
37110
        Added an updateLayout call to VisiblePosition::init and removed some 
 
37111
        updateLayout calls from other parts of the editing code.
 
37112
        
 
37113
        Added layout tests:
 
37114
        * editing/selection/getRangeAt.html
 
37115
        * editing/selection/anchor-focus1.html
 
37116
        * editing/selection/anchor-focus2.html
 
37117
        * editing/selection/anchor-focus3.html
 
37118
        Updated expected results:
 
37119
        * editing/selection/unrendered-001-expected.txt
 
37120
 
 
37121
        * khtml/ecma/kjs_window.cpp:
 
37122
        (KJS::Selection::getValueProperty):
 
37123
        (KJS::Selection::toString):
 
37124
        (KJS::SelectionFunc::callAsFunction):
 
37125
        * khtml/ecma/kjs_window.h:
 
37126
        (KJS::Selection::):
 
37127
        * khtml/editing/SelectionController.cpp:
 
37128
        (khtml::SelectionController::modify):
 
37129
        (khtml::SelectionController::type):
 
37130
        (khtml::SelectionController::toString):
 
37131
        (khtml::SelectionController::getRangeAt):
 
37132
        (khtml::SelectionController::setBaseAndExtent):
 
37133
        (khtml::SelectionController::setPosition):
 
37134
        (khtml::SelectionController::collapse):
 
37135
        (khtml::SelectionController::collapseToEnd):
 
37136
        (khtml::SelectionController::collapseToStart):
 
37137
        (khtml::SelectionController::empty):
 
37138
        (khtml::SelectionController::extend):
 
37139
        (khtml::SelectionController::validate):
 
37140
        * khtml/editing/SelectionController.h:
 
37141
        (khtml::SelectionController::part):
 
37142
        (khtml::SelectionController::baseNode):
 
37143
        (khtml::SelectionController::extentNode):
 
37144
        (khtml::SelectionController::baseOffset):
 
37145
        (khtml::SelectionController::extentOffset):
 
37146
        (khtml::SelectionController::anchorNode):
 
37147
        (khtml::SelectionController::anchorOffset):
 
37148
        (khtml::SelectionController::focusNode):
 
37149
        (khtml::SelectionController::focusOffset):
 
37150
        (khtml::SelectionController::isCollapsed):
 
37151
        * khtml/editing/visible_position.cpp:
 
37152
        (khtml::VisiblePosition::init):
 
37153
        (khtml::VisiblePosition::isCandidate):
 
37154
        * khtml/khtml_part.cpp:
 
37155
        (KHTMLPart::handleMousePressEventSingleClick):
 
37156
 
 
37157
2006-01-03  Anders Carlsson  <andersca@mac.com>
 
37158
 
 
37159
        Reviewed by Maciej.
 
37160
 
 
37161
        - fix http://bugs.webkit.org/show_bug.cgi?id=5378
 
37162
        createDocument fails with DOM Exception 5 when passed empty qname
 
37163
        
 
37164
        * khtml/ecma/kjs_dom.cpp:
 
37165
        (KJS::DOMDOMImplementationProtoFunc::callAsFunction):
 
37166
        When passing null to createDocument, pass a null DOMString, and not
 
37167
        a DOMString containing the text "null".
 
37168
        
 
37169
        * khtml/xml/dom_docimpl.cpp:
 
37170
        (DOMImplementationImpl::createDocument):
 
37171
        Only validate the qualifiedName if it's not null or empty. Also, do not
 
37172
        create the document element if the qualifiedName is null or empty.
 
37173
 
 
37174
2006-01-03  Eric Seidel  <eseidel@apple.com>
 
37175
 
 
37176
        Reviewed by darin.
 
37177
 
 
37178
        No functionality changes, no tests possible.
 
37179
 
 
37180
        khtml/editing should use RefPtr instead of manual ref/deref
 
37181
        http://bugs.webkit.org/show_bug.cgi?id=6109
 
37182
 
 
37183
        Results in a slight performance gain < 1% on the PLT.
 
37184
 
 
37185
        * khtml/editing/SelectionController.cpp:
 
37186
        (khtml::SelectionController::toRange):
 
37187
        * khtml/editing/SelectionController.h:
 
37188
        * khtml/editing/append_node_command.cpp:
 
37189
        (khtml::AppendNodeCommand::AppendNodeCommand):
 
37190
        (khtml::AppendNodeCommand::doApply):
 
37191
        (khtml::AppendNodeCommand::doUnapply):
 
37192
        * khtml/editing/append_node_command.h:
 
37193
        (khtml::AppendNodeCommand::~AppendNodeCommand):
 
37194
        (khtml::AppendNodeCommand::appendChild):
 
37195
        (khtml::AppendNodeCommand::parentNode):
 
37196
        * khtml/editing/apply_style_command.cpp:
 
37197
        (khtml::StyleChange::init):
 
37198
        (khtml::ApplyStyleCommand::removeInlineStyle):
 
37199
        * khtml/editing/apply_style_command.h:
 
37200
        * khtml/editing/composite_edit_command.cpp:
 
37201
        (khtml::CompositeEditCommand::deleteInsignificantText):
 
37202
        * khtml/editing/delete_from_text_node_command.cpp:
 
37203
        (khtml::DeleteFromTextNodeCommand::DeleteFromTextNodeCommand):
 
37204
        * khtml/editing/delete_from_text_node_command.h:
 
37205
        (khtml::DeleteFromTextNodeCommand::~DeleteFromTextNodeCommand):
 
37206
        (khtml::DeleteFromTextNodeCommand::node):
 
37207
        * khtml/editing/delete_selection_command.cpp:
 
37208
        (khtml::DeleteSelectionCommand::initializePositionData):
 
37209
        (khtml::DeleteSelectionCommand::saveTypingStyleState):
 
37210
        (khtml::DeleteSelectionCommand::handleGeneralDelete):
 
37211
        (khtml::DeleteSelectionCommand::calculateEndingPosition):
 
37212
        (khtml::DeleteSelectionCommand::calculateTypingStyleAfterDelete):
 
37213
        (khtml::DeleteSelectionCommand::clearTransientState):
 
37214
        * khtml/editing/delete_selection_command.h:
 
37215
        * khtml/editing/edit_command.cpp:
 
37216
        (khtml::EditCommand::EditCommand):
 
37217
        (khtml::EditCommand::~EditCommand):
 
37218
        (khtml::EditCommand::setTypingStyle):
 
37219
        (khtml::EditCommand::styleAtPosition):
 
37220
        * khtml/editing/edit_command.h:
 
37221
        (khtml::EditCommand::document):
 
37222
        (khtml::EditCommand::typingStyle):
 
37223
        * khtml/editing/insert_into_text_node_command.cpp:
 
37224
        (khtml::InsertIntoTextNodeCommand::InsertIntoTextNodeCommand):
 
37225
        * khtml/editing/insert_into_text_node_command.h:
 
37226
        (khtml::InsertIntoTextNodeCommand::~InsertIntoTextNodeCommand):
 
37227
        (khtml::InsertIntoTextNodeCommand::node):
 
37228
        * khtml/editing/insert_node_before_command.cpp:
 
37229
        (khtml::InsertNodeBeforeCommand::InsertNodeBeforeCommand):
 
37230
        (khtml::InsertNodeBeforeCommand::doApply):
 
37231
        (khtml::InsertNodeBeforeCommand::doUnapply):
 
37232
        * khtml/editing/insert_node_before_command.h:
 
37233
        (khtml::InsertNodeBeforeCommand::~InsertNodeBeforeCommand):
 
37234
        (khtml::InsertNodeBeforeCommand::insertChild):
 
37235
        (khtml::InsertNodeBeforeCommand::refChild):
 
37236
        * khtml/editing/insert_paragraph_separator_command.cpp:
 
37237
        (khtml::InsertParagraphSeparatorCommand::InsertParagraphSeparatorCommand):
 
37238
        (khtml::InsertParagraphSeparatorCommand::~InsertParagraphSeparatorCommand):
 
37239
        (khtml::InsertParagraphSeparatorCommand::calculateStyleBeforeInsertion):
 
37240
        (khtml::InsertParagraphSeparatorCommand::applyStyleAfterInsertion):
 
37241
        * khtml/editing/insert_paragraph_separator_command.h:
 
37242
        * khtml/editing/join_text_nodes_command.cpp:
 
37243
        (khtml::JoinTextNodesCommand::JoinTextNodesCommand):
 
37244
        (khtml::JoinTextNodesCommand::doApply):
 
37245
        (khtml::JoinTextNodesCommand::doUnapply):
 
37246
        * khtml/editing/join_text_nodes_command.h:
 
37247
        (khtml::JoinTextNodesCommand::~JoinTextNodesCommand):
 
37248
        (khtml::JoinTextNodesCommand::firstNode):
 
37249
        (khtml::JoinTextNodesCommand::secondNode):
 
37250
        * khtml/editing/jsediting.cpp:
 
37251
        * khtml/editing/markup.cpp:
 
37252
        (khtml::createMarkup):
 
37253
        (khtml::createFragmentFromMarkup):
 
37254
        (khtml::createFragmentFromText):
 
37255
        (khtml::createFragmentFromNodeList):
 
37256
        * khtml/editing/markup.h:
 
37257
        * khtml/editing/merge_identical_elements_command.cpp:
 
37258
        (khtml::MergeIdenticalElementsCommand::MergeIdenticalElementsCommand):
 
37259
        (khtml::MergeIdenticalElementsCommand::doApply):
 
37260
        (khtml::MergeIdenticalElementsCommand::doUnapply):
 
37261
        * khtml/editing/merge_identical_elements_command.h:
 
37262
        (khtml::MergeIdenticalElementsCommand::~MergeIdenticalElementsCommand):
 
37263
        * khtml/editing/move_selection_command.cpp:
 
37264
        (khtml::MoveSelectionCommand::MoveSelectionCommand):
 
37265
        (khtml::MoveSelectionCommand::~MoveSelectionCommand):
 
37266
        (khtml::MoveSelectionCommand::doApply):
 
37267
        * khtml/editing/move_selection_command.h:
 
37268
        * khtml/editing/rebalance_whitespace_command.cpp:
 
37269
        * khtml/editing/rebalance_whitespace_command.h:
 
37270
        (khtml::RebalanceWhitespaceCommand::~RebalanceWhitespaceCommand):
 
37271
        * khtml/editing/remove_css_property_command.cpp:
 
37272
        (khtml::RemoveCSSPropertyCommand::RemoveCSSPropertyCommand):
 
37273
        * khtml/editing/remove_css_property_command.h:
 
37274
        (khtml::RemoveCSSPropertyCommand::~RemoveCSSPropertyCommand):
 
37275
        (khtml::RemoveCSSPropertyCommand::styleDeclaration):
 
37276
        * khtml/editing/remove_node_attribute_command.cpp:
 
37277
        (khtml::RemoveNodeAttributeCommand::RemoveNodeAttributeCommand):
 
37278
        * khtml/editing/remove_node_attribute_command.h:
 
37279
        (khtml::RemoveNodeAttributeCommand::~RemoveNodeAttributeCommand):
 
37280
        (khtml::RemoveNodeAttributeCommand::element):
 
37281
        * khtml/editing/remove_node_command.cpp:
 
37282
        (khtml::RemoveNodeCommand::RemoveNodeCommand):
 
37283
        (khtml::RemoveNodeCommand::doApply):
 
37284
        (khtml::RemoveNodeCommand::doUnapply):
 
37285
        * khtml/editing/remove_node_command.h:
 
37286
        (khtml::RemoveNodeCommand::~RemoveNodeCommand):
 
37287
        (khtml::RemoveNodeCommand::node):
 
37288
        * khtml/editing/remove_node_preserving_children_command.cpp:
 
37289
        (khtml::RemoveNodePreservingChildrenCommand::RemoveNodePreservingChildrenCommand):
 
37290
        * khtml/editing/remove_node_preserving_children_command.h:
 
37291
        (khtml::RemoveNodePreservingChildrenCommand::~RemoveNodePreservingChildrenCommand):
 
37292
        (khtml::RemoveNodePreservingChildrenCommand::node):
 
37293
        * khtml/editing/replace_selection_command.cpp:
 
37294
        (khtml::ReplacementFragment::ReplacementFragment):
 
37295
        (khtml::ReplacementFragment::~ReplacementFragment):
 
37296
        (khtml::ReplacementFragment::enclosingBlock):
 
37297
        (khtml::ReplacementFragment::removeNodePreservingChildren):
 
37298
        (khtml::ReplacementFragment::removeNode):
 
37299
        (khtml::ReplacementFragment::insertFragmentForTestRendering):
 
37300
        (khtml::ReplacementFragment::restoreTestRenderingNodesToFragment):
 
37301
        (khtml::ReplaceSelectionCommand::fixupNodeStyles):
 
37302
        (khtml::computeAndStoreNodeDesiredStyle):
 
37303
        (khtml::NodeDesiredStyle::NodeDesiredStyle):
 
37304
        (khtml::ReplaceSelectionCommand::ReplaceSelectionCommand):
 
37305
        (khtml::ReplaceSelectionCommand::~ReplaceSelectionCommand):
 
37306
        (khtml::ReplaceSelectionCommand::doApply):
 
37307
        (khtml::ReplaceSelectionCommand::completeHTMLReplacement):
 
37308
        (khtml::ReplaceSelectionCommand::updateNodesInserted):
 
37309
        * khtml/editing/replace_selection_command.h:
 
37310
        (khtml::NodeDesiredStyle::node):
 
37311
        (khtml::NodeDesiredStyle::style):
 
37312
        (khtml::ReplacementFragment::root):
 
37313
        * khtml/editing/set_node_attribute_command.cpp:
 
37314
        (khtml::SetNodeAttributeCommand::SetNodeAttributeCommand):
 
37315
        * khtml/editing/set_node_attribute_command.h:
 
37316
        (khtml::SetNodeAttributeCommand::~SetNodeAttributeCommand):
 
37317
        (khtml::SetNodeAttributeCommand::element):
 
37318
        * khtml/editing/split_element_command.cpp:
 
37319
        (khtml::SplitElementCommand::SplitElementCommand):
 
37320
        (khtml::SplitElementCommand::doApply):
 
37321
        (khtml::SplitElementCommand::doUnapply):
 
37322
        * khtml/editing/split_element_command.h:
 
37323
        (khtml::SplitElementCommand::~SplitElementCommand):
 
37324
        * khtml/editing/split_text_node_command.cpp:
 
37325
        (khtml::SplitTextNodeCommand::SplitTextNodeCommand):
 
37326
        (khtml::SplitTextNodeCommand::doApply):
 
37327
        (khtml::SplitTextNodeCommand::doUnapply):
 
37328
        * khtml/editing/split_text_node_command.h:
 
37329
        (khtml::SplitTextNodeCommand::~SplitTextNodeCommand):
 
37330
        (khtml::SplitTextNodeCommand::node):
 
37331
        * khtml/editing/split_text_node_containing_element.cpp:
 
37332
        (khtml::SplitTextNodeContainingElementCommand::SplitTextNodeContainingElementCommand):
 
37333
        (khtml::SplitTextNodeContainingElementCommand::doApply):
 
37334
        * khtml/editing/split_text_node_containing_element_command.h:
 
37335
        (khtml::SplitTextNodeContainingElementCommand::~SplitTextNodeContainingElementCommand):
 
37336
        * khtml/editing/visible_position.cpp:
 
37337
        (khtml::makeRange):
 
37338
        * khtml/editing/visible_position.h:
 
37339
        * khtml/editing/visible_text.cpp:
 
37340
        (khtml::TextIterator::range):
 
37341
        (khtml::SimplifiedBackwardsTextIterator::range):
 
37342
        (khtml::CharacterIterator::range):
 
37343
        (khtml::findPlainText):
 
37344
        * khtml/editing/visible_text.h:
 
37345
        (khtml::WordAwareIterator::range):
 
37346
        * khtml/editing/wrap_contents_in_dummy_span_command.cpp:
 
37347
        (khtml::WrapContentsInDummySpanCommand::WrapContentsInDummySpanCommand):
 
37348
        (khtml::WrapContentsInDummySpanCommand::doApply):
 
37349
        (khtml::WrapContentsInDummySpanCommand::doUnapply):
 
37350
        * khtml/editing/wrap_contents_in_dummy_span_command.h:
 
37351
        (khtml::WrapContentsInDummySpanCommand::~WrapContentsInDummySpanCommand):
 
37352
        * kwq/DOMHTML.mm:
 
37353
        (-[DOMHTMLDocument _createDocumentFragmentWithMarkupString:baseURLString:]):
 
37354
        (-[DOMHTMLDocument _createDocumentFragmentWithText:]):
 
37355
        * kwq/WebCoreBridge.mm:
 
37356
        (-[WebCoreBridge documentFragmentWithMarkupString:baseURLString:]):
 
37357
        (-[WebCoreBridge documentFragmentWithText:]):
 
37358
        (-[WebCoreBridge documentFragmentWithNodesAsParagraphs:]):
 
37359
 
 
37360
2006-01-03  Anders Carlsson  <andersca@mac.com>
 
37361
 
 
37362
        Reviewed by Darin.
 
37363
 
 
37364
        - fix http://bugs.webkit.org/show_bug.cgi?id=5177
 
37365
        Javascript cloneNode(deep) does not clone form elements correctly
 
37366
 
 
37367
        * khtml/html/html_elementimpl.cpp:
 
37368
        (HTMLElementImpl::cloneNode):
 
37369
        Call copyNonAttributeProperties on the new node.
 
37370
        
 
37371
        * khtml/html/html_formimpl.cpp:
 
37372
        (DOM::HTMLInputElementImpl::copyNonAttributeProperties):
 
37373
        * khtml/html/html_formimpl.h:
 
37374
        Copy m_value, m_checked and m_indeterminate here.
 
37375
        
 
37376
        * khtml/xml/dom_docimpl.cpp:
 
37377
        (DocumentImpl::importNode):
 
37378
        Call copyNonAttributeProperties on the new node.
 
37379
        
 
37380
        * khtml/xml/dom_elementimpl.cpp:
 
37381
        (ElementImpl::cloneNode):
 
37382
        Call copyNonAttributeProperties on the new node.
 
37383
        
 
37384
        * khtml/xml/dom_elementimpl.h:
 
37385
        (DOM::ElementImpl::copyNonAttributeProperties):
 
37386
        Add function declaration.
 
37387
 
 
37388
2006-01-02  Maciej Stachowiak  <mjs@apple.com>
 
37389
 
 
37390
        Rubber stamped by Eric.
 
37391
 
 
37392
        - remove the no longer used QIntDict
 
37393
 
 
37394
        * kwq/KWQIntDict.h: Removed.
 
37395
 
 
37396
2006-01-03  Alexey Proskuryakov  <ap@nypop.com>
 
37397
 
 
37398
        Reviewed by Eric.
 
37399
 
 
37400
        - fix http://bugs.webkit.org/show_bug.cgi?id=5609
 
37401
          XSLT document() doesn't handle relative paths
 
37402
 
 
37403
        Test case: fast/xsl/xslt-relative-path.xml
 
37404
 
 
37405
        * khtml/xsl/xslt_processorimpl.cpp:
 
37406
        (DOM::docLoaderFunc): Renamed from stylesheetLoadFunc. Use base URL when constructing URLs.
 
37407
        (DOM::XSLTProcessorImpl::transformToString):
 
37408
 
 
37409
2006-01-02  Vicki Murley  <vicki@apple.com>
 
37410
 
 
37411
        Reviewed by Maciej.
 
37412
 
 
37413
        - fix for <rdar://problem/4389622> *Pan EU2* iframe swallows events for overlapping elements (part 2)
 
37414
 
 
37415
        We originally added a call to passSubframeEventToSubframe here to fix the hand cursor updating problem
 
37416
        reported in <rdar://problem/4316201> REGRESSION: cursor and text in status bar is not updated when 
 
37417
        mousing over links in a frame (5509). However, when we return early after passSubframeEventToSubframe,
 
37418
        we fail to fire onmouseout events.  Since the call to passSubframeEventToSubframe was originally added
 
37419
        to fix the hand cursor updating problem, remove the early return and make cursor updating conditional
 
37420
        on passSubframeEventToSubframe.
 
37421
 
 
37422
        * khtml/khtmlview.cpp:
 
37423
        (KHTMLView::viewportMouseMoveEvent):
 
37424
 
 
37425
2005-12-30  Darin Adler  <darin@apple.com>
 
37426
 
 
37427
        Reviewed by Maciej.
 
37428
 
 
37429
        - http://bugs.webkit.org/show_bug.cgi?id=4557
 
37430
          rename unusual strcmp and strcasecmp for DOMString family
 
37431
 
 
37432
        Added new functions named equal and equalIgnoringCase.
 
37433
 
 
37434
        * khtml/xml/dom_stringimpl.h: Changed the type of the length parameter to computeHash to unsigned
 
37435
        to match the rest of the interface. Added equal and equalIgnoringCase functions. Added a
 
37436
        version of the hash function that works on char* to CaseInsensitiveHash as preparation for an
 
37437
        atomic string change.
 
37438
        * khtml/xml/dom_stringimpl.cpp: Moved the QT_ALLOC_QCHAR_VEC and QT_DELETE_QCHAR_VEC macros
 
37439
        here, and changed them into inline functions.
 
37440
        (DOM::equal): Implemented.
 
37441
        (DOM::equalIgnoringCase): Implemented.
 
37442
        (DOM::DOMStringImpl::computeHash): Changed parameter type to unsigned to match other similar
 
37443
        functions.
 
37444
 
 
37445
        * khtml/dom/dom_string.h: Removed unnecessary friend declarations. Changed operator
 
37446
        overloads for == and != to call through inline to DOMStringImpl. Replaced strcasecmp
 
37447
        with equalIgnoringCase, overloaded for one more combination of parameters. Removed strcmp.
 
37448
        * khtml/dom/dom_string.cpp: Removed functions that are now implemented in DOMStringImpl*.
 
37449
 
 
37450
        * khtml/xml/dom_atomicstring.h: Removed a redundant const. Removed unnecessary
 
37451
        friend declarations. Removed AtomicString::equal. Filled out a larger set of == and
 
37452
        != operator implementations, mostly with inlines calling through to DOMStringImpl.
 
37453
        Renamed equalsIgnoreCase to equalIgnoringCase and filled out a larger set as above.
 
37454
        * khtml/xml/dom_atomicstring.cpp: Renamed AtomicString::equal to just ==.
 
37455
        Removed some implementation of == and equalsIgnoreCase that are replaced by inlines.
 
37456
 
 
37457
        * khtml/html/html_listimpl.cpp:
 
37458
        (DOM::HTMLOListElementImpl::parseMappedAttribute):
 
37459
        (DOM::HTMLLIElementImpl::parseMappedAttribute):
 
37460
        Use the "==" operator instead of strcmp.
 
37461
 
 
37462
        * khtml/css/cssstyleselector.cpp: (khtml::CSSStyleSelector::checkOneSelector):
 
37463
        Use equalIgnoringCase instead of equalsIgnoreCase.
 
37464
 
 
37465
        * khtml/rendering/render_form.cpp:
 
37466
        (RenderSlider::updateFromElement): Fixed bug where a temporary DOMString was put into
 
37467
        a const DOMString&. Changed some DOMString to AtomicString as appropriate, and also
 
37468
        used equalIgnoringCase instead of strcasecmp.
 
37469
        (RenderSlider::slotSliderValueChanged): More of the same.
 
37470
 
 
37471
        * khtml/xml/dom_docimpl.cpp: (DocumentImpl::processHttpEquiv): Replaced use of strcasecmp
 
37472
        with equalIgnoringCase. Added parentheses to fix incorrect operator precedence in one case
 
37473
        (&& binds tighter than ||) which fixes a crash when using a http-equiv pragma when there
 
37474
        is no part (not sure how to reproduce that).
 
37475
 
 
37476
        * khtml/khtml_part.cpp:
 
37477
        (updateState):
 
37478
        (KHTMLPart::selectionStartHasStyle):
 
37479
        * khtml/ecma/kjs_html.cpp: (KJS::KJS::HTMLDocument::putValueProperty):
 
37480
        * khtml/editing/apply_style_command.cpp:
 
37481
        (khtml::StyleChange::checkForLegacyHTMLStyleChange):
 
37482
        (khtml::StyleChange::currentlyHasStyle):
 
37483
        (khtml::hasTextDecorationProperty):
 
37484
        (khtml::ApplyStyleCommand::extractTextDecorationStyle):
 
37485
        (khtml::ApplyStyleCommand::extractAndNegateTextDecorationStyle):
 
37486
        * khtml/html/html_baseimpl.cpp:
 
37487
        (HTMLBodyElementImpl::parseMappedAttribute):
 
37488
        (HTMLFrameElementImpl::parseMappedAttribute):
 
37489
        * khtml/html/html_blockimpl.cpp:
 
37490
        (HTMLDivElementImpl::parseMappedAttribute):
 
37491
        (HTMLHRElementImpl::parseMappedAttribute):
 
37492
        (HTMLParagraphElementImpl::parseMappedAttribute):
 
37493
        (HTMLMarqueeElementImpl::parseMappedAttribute):
 
37494
        * khtml/html/html_elementimpl.cpp:
 
37495
        (HTMLElementImpl::parseMappedAttribute):
 
37496
        (HTMLElementImpl::addHTMLAlignment):
 
37497
        (HTMLElementImpl::setContentEditable):
 
37498
        * khtml/html/html_formimpl.cpp:
 
37499
        (DOM::HTMLFormElementImpl::parseMappedAttribute):
 
37500
        (DOM::HTMLButtonElementImpl::parseMappedAttribute):
 
37501
        (DOM::HTMLInputElementImpl::setInputType):
 
37502
        (DOM::HTMLInputElementImpl::parseMappedAttribute):
 
37503
        (DOM::HTMLKeygenElementImpl::appendFormData):
 
37504
        (DOM::HTMLTextAreaElementImpl::parseMappedAttribute):
 
37505
        * khtml/html/html_imageimpl.cpp: (DOM::HTMLAreaElementImpl::parseMappedAttribute):
 
37506
        * khtml/html/html_inlineimpl.cpp: (DOM::HTMLBRElementImpl::parseMappedAttribute):
 
37507
        * khtml/html/html_tableimpl.cpp: (DOM::HTMLTablePartElementImpl::parseMappedAttribute):
 
37508
        * khtml/html/htmlparser.cpp: (HTMLParser::handleError):
 
37509
        Use equalIgnoringCase instead of strcasecmp.
 
37510
 
 
37511
2005-12-30  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
37512
 
 
37513
        Reviewed by Darin, landed by ap.
 
37514
        
 
37515
        Test: fast/text/justified-text-rect.html
 
37516
        
 
37517
        - WebCore part of fix for
 
37518
          http://bugs.webkit.org/show_bug.cgi?id=5461
 
37519
          Text width measured incorrectly when text-align: justify
 
37520
 
 
37521
        * khtml/rendering/font.h:
 
37522
        * khtml/rendering/font.cpp:
 
37523
        (khtml::Font::selectionRectForText): Added.
 
37524
        * khtml/rendering/render_text.cpp:
 
37525
        (kthml::InlineTextBox::selectionRect): Use selectionRectForText. This
 
37526
        works for justified text as well, and avoids intermediate rounding which
 
37527
        resulted in selection rects narrower than AppKit's.
 
37528
        (khtml::InlineTextBox::positionForOffset): Use selectionRectForText,
 
37529
        which works for justified text as well.
 
37530
        * kwq/KWQFontMetrics.h:
 
37531
        * kwq/KWQFontMetrics.mm:
 
37532
        (QFontMetrics::selectionRectForText): Added.
 
37533
        * kwq/WebCoreTextRenderer.h:
 
37534
 
 
37535
2005-12-30  Alexey Proskuryakov  <ap@nypop.com>
 
37536
 
 
37537
        - Fix http://bugs.webkit.org/show_bug.cgi?id=6289
 
37538
        REGRESSION: firstCharacterForRange(0, 0) returns a 0x0 rect
 
37539
 
 
37540
        * khtml/editing/visible_text.cpp:
 
37541
        (khtml::TextIterator::rangeFromLocationAndLength):
 
37542
        Only special-case (0, 0) ranges for empty documents.
 
37543
 
 
37544
2005-12-30  Geoffrey Garen  <ggaren@apple.com>
 
37545
 
 
37546
        Added test case for <rdar://problem/4268278> Submitting a form in onUnload event
 
37547
        handler causes crash in -[WebDataSource(WebPrivate) _commitIfReady:]
 
37548
 
 
37549
        * manual-tests/onunload-form-submit-crash.html: Added.
 
37550
 
 
37551
2005-12-30  Anders Carlsson  <andersca@mac.com>
 
37552
 
 
37553
        Reviewed by Eric.
 
37554
 
 
37555
        - Fix http://bugs.webkit.org/show_bug.cgi?id=6297
 
37556
        XMLSerializer should use createMarkup.
 
37557
 
 
37558
        * khtml/ecma/xmlserializer.cpp:
 
37559
        (KJS::XMLSerializerProtoFunc::callAsFunction):
 
37560
        Use createMarkup instead of NodeImpl::toString.
 
37561
 
 
37562
        * khtml/editing/markup.cpp:
 
37563
        (khtml::startMarkup):
 
37564
        escape attribute values and ignore document fragment nodes.
 
37565
 
 
37566
2005-12-30  Eric Seidel  <eseidel@apple.com>
 
37567
 
 
37568
        Reviewed by mjs.
 
37569
 
 
37570
        No functional changes, thus no layout test.
 
37571
 
 
37572
        Just removes debug NSLog() calls from ksvg2/kcanvas.
 
37573
        http://bugs.webkit.org/show_bug.cgi?id=6299
 
37574
 
 
37575
        * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
 
37576
        (KCanvasFilterQuartz::prepareFilter):
 
37577
        (KCanvasFilterQuartz::applyFilter):
 
37578
        (KCanvasFilterQuartz::getCIFilterStack):
 
37579
        (KCanvasFilterQuartz::imageForName):
 
37580
        (KCanvasFEBlendQuartz::getCIFilter):
 
37581
        (KCanvasFEColorMatrixQuartz::getCIFilter):
 
37582
        (KCanvasFEGaussianBlurQuartz::getCIFilter):
 
37583
        * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
 
37584
        (KCanvasClipperQuartz::applyClip):
 
37585
        * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
 
37586
        (KRenderingDeviceContextQuartz::mapFromVisual):
 
37587
        (KRenderingDeviceContextQuartz::mapToVisual):
 
37588
        (KRenderingDeviceQuartz::createResource):
 
37589
        (KRenderingDeviceQuartz::createFilterEffect):
 
37590
        * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
 
37591
        (drawShadingWithStyle):
 
37592
        (KRenderingPaintServerGradientQuartz::updateQuartzGradientCache):
 
37593
        * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
 
37594
        (KRenderingPaintServerPatternQuartz::draw):
 
37595
        * ksvg2/svg/svgpathparser.cpp:
 
37596
        (SVGPathParser::parseSVG):
 
37597
 
 
37598
2005-12-29  Graham Dennis  <Graham.Dennis@gmail.com>
 
37599
 
 
37600
        Reviewed by Hyatt.
 
37601
 
 
37602
        - fix http://bugs.webkit.org/show_bug.cgi?id=3579
 
37603
          In-place style-switching is leaving junk behind, messing up styles
 
37604
 
 
37605
        * khtml/rendering/render_block.h: (khtml::RenderBlock::initMaxMarginValues):
 
37606
        Set all margin values in all cases.
 
37607
 
 
37608
2005-12-29  Eric Seidel  <eseidel@apple.com>
 
37609
 
 
37610
        Reviewed by mjs.
 
37611
 
 
37612
        XML documents with "html" in dtd name use XHTML entities when they shouldn't
 
37613
        http://bugs.webkit.org/show_bug.cgi?id=6290
 
37614
 
 
37615
        * khtml/xml/xml_tokenizer.cpp:
 
37616
        (khtml::externalSubsetHandler): check for exact xhtml types
 
37617
 
 
37618
2005-12-29  Eric Seidel  <eseidel@apple.com>
 
37619
 
 
37620
        Reviewed by mjs.
 
37621
 
 
37622
        Close leak in CollectionInfo due to HashMap migration
 
37623
        http://bugs.webkit.org/show_bug.cgi?id=6295
 
37624
 
 
37625
        * khtml/html/html_miscimpl.cpp:
 
37626
        (DOM::HTMLCollectionImpl::CollectionInfo::~CollectionInfo):
 
37627
        * khtml/html/html_miscimpl.h:
 
37628
 
 
37629
2005-12-29  Maciej Stachowiak  <mjs@apple.com>
 
37630
 
 
37631
        Reviewed by Eric.
 
37632
 
 
37633
        - finished frame traversal cleanup
 
37634
        http://bugs.webkit.org/show_bug.cgi?id=6293
 
37635
        
 
37636
        * kwq/WebCoreBridge.h: Removed childFrames method from WebCoreBridge protocol
 
37637
        since it is not actually used.
 
37638
 
 
37639
2005-12-29  Eric Seidel  <eseidel@apple.com>
 
37640
 
 
37641
        Reviewed by mjs.
 
37642
 
 
37643
        Leaks in XSLTProcessorImpl due to early exit in failure case
 
37644
        http://bugs.webkit.org/show_bug.cgi?id=6101
 
37645
 
 
37646
        * khtml/xsl/xslt_processorimpl.cpp:
 
37647
        (DOM::xmlDocPtrFromNode): add "shouldDelete" argument
 
37648
        (DOM::XSLTProcessorImpl::transformToString): delete new'd xmlDoc
 
37649
 
 
37650
2005-12-29  Eric Seidel  <eseidel@apple.com>
 
37651
 
 
37652
        File accidentally omitted from previous commit.
 
37653
 
 
37654
        Remove QDict from khtml/html
 
37655
        http://bugs.webkit.org/show_bug.cgi?id=6230
 
37656
 
 
37657
        * khtml/ecma/kjs_html.cpp:
 
37658
        (KJS::KJS::HTMLCollection::getNamedItems):
 
37659
 
 
37660
2005-12-29  Eric Seidel  <eseidel@apple.com>
 
37661
 
 
37662
        Reviewed by mjs.
 
37663
 
 
37664
        Remove QDict from khtml/html
 
37665
        http://bugs.webkit.org/show_bug.cgi?id=6230
 
37666
        Uses HashMap instead.
 
37667
 
 
37668
        * khtml/html/html_miscimpl.cpp:
 
37669
        (DOM::HTMLCollectionImpl::CollectionInfo::CollectionInfo):
 
37670
        (DOM::HTMLCollectionImpl::CollectionInfo::reset):
 
37671
        (DOM::HTMLCollectionImpl::namedItem):
 
37672
        (DOM::HTMLCollectionImpl::updateNameCache):
 
37673
        (DOM::HTMLCollectionImpl::namedItems):
 
37674
        (DOM::HTMLCollectionImpl::nextNamedItem):
 
37675
        (DOM::HTMLFormCollectionImpl::nextNamedItemInternal):
 
37676
        (DOM::HTMLFormCollectionImpl::updateNameCache):
 
37677
        * khtml/html/html_miscimpl.h:
 
37678
 
 
37679
2005-12-29  Eric Seidel  <eseidel@apple.com>
 
37680
 
 
37681
        Reviewed by mjs.
 
37682
 
 
37683
        DOMString/DOMStringImpl/AtomicString need enhancements before replacing QString
 
37684
        http://bugs.webkit.org/show_bug.cgi?id=6228
 
37685
        Added find(), contains(), startsWith() and endsWith() to DOMString
 
37686
        Uses the above functions throughout the code.
 
37687
        Small performance boost.
 
37688
 
 
37689
        * khtml/css/css_base.cpp:
 
37690
        (CSSSelector::print):
 
37691
        * khtml/css/css_ruleimpl.cpp:
 
37692
        (DOM::CSSImportRuleImpl::init):
 
37693
        * khtml/css/css_valueimpl.cpp:
 
37694
        (DOM::CSSStyleDeclarationImpl::setProperty):
 
37695
        * khtml/css/cssparser.cpp:
 
37696
        (CSSParser::parseValue):
 
37697
        (CSSParser::parseDeclaration):
 
37698
        (CSSParser::parseContent):
 
37699
        * khtml/css/cssstyleselector.cpp:
 
37700
        (khtml::CSSStyleSelector::CSSStyleSelector):
 
37701
        (khtml::CSSStyleSelector::setEncodedURL):
 
37702
        (khtml::parseUASheet):
 
37703
        (khtml::cleanpath):
 
37704
        (khtml::CSSStyleSelector::checkSelector):
 
37705
        (khtml::CSSStyleSelector::checkOneSelector):
 
37706
        (khtml::CSSRuleSet::addRulesFromSheet):
 
37707
        (khtml::CSSStyleSelector::applyProperty):
 
37708
        * khtml/dom/dom_string.cpp:
 
37709
        * khtml/dom/dom_string.h:
 
37710
        (DOM::DOMString::contains):
 
37711
        (DOM::DOMString::find):
 
37712
        (DOM::DOMString::startsWith):
 
37713
        (DOM::DOMString::endsWith):
 
37714
        * khtml/html/html_formimpl.cpp:
 
37715
        (DOM::HTMLFormElementImpl::parseEnctype):
 
37716
        * khtml/khtml_part.cpp:
 
37717
        (KHTMLPart::requestFrame):
 
37718
        (KHTMLPart::submitForm):
 
37719
        * khtml/misc/decoder.cpp:
 
37720
        (Decoder::decode):
 
37721
        * khtml/xml/dom_atomicstring.h:
 
37722
        (DOM::AtomicString::length):
 
37723
        (DOM::AtomicString::operator []):
 
37724
        (DOM::AtomicString::contains):
 
37725
        (DOM::AtomicString::find):
 
37726
        (DOM::AtomicString::startsWith):
 
37727
        (DOM::AtomicString::endsWith):
 
37728
        * khtml/xml/dom_docimpl.cpp:
 
37729
        (DocumentImpl::processHttpEquiv):
 
37730
        * khtml/xml/dom_stringimpl.cpp:
 
37731
        (DOM::equal):
 
37732
        (DOM::equalCaseInsensitive):
 
37733
        (DOM::DOMStringImpl::find):
 
37734
        (DOM::DOMStringImpl::endsWith):
 
37735
        * khtml/xml/dom_stringimpl.h:
 
37736
        (DOM::DOMStringImpl::startsWith):
 
37737
 
 
37738
2005-12-29  Rob Buis  <rwlbuis@xs4all.nl>
 
37739
 
 
37740
        Reviewed by eseidel.  Landed by eseidel.
 
37741
 
 
37742
        WebCore+SVG has some problems with rounded rectangles
 
37743
        http://bugs.webkit.org/show_bug.cgi?id=6157
 
37744
        
 
37745
        Test: svg/custom/rounded-rects.svg
 
37746
 
 
37747
        * ksvg2/svg/SVGRectElementImpl.cpp:
 
37748
        (SVGRectElementImpl::toPathData): fixed round rect calculations
 
37749
 
 
37750
2005-12-29  Mark Rowe  <opendarwin.org@bdash.net.nz>
 
37751
 
 
37752
        Reviewed by eseidel, ggaren, darin.
 
37753
        
 
37754
        - http://bugs.webkit.org/show_bug.cgi?id=4301
 
37755
        Support HTML entities on pages parsed as XHTML
 
37756
 
 
37757
        Added layout tests:
 
37758
        * fast/parser/entities-in-xhtml.xhtml
 
37759
 
 
37760
        * khtml/xml/xml_tokenizer.cpp:
 
37761
        (khtml::XMLTokenizer::setIsXHTMLDocument): Track whether the XML document is XHTML.
 
37762
        (khtml::XMLTokenizer::isXHTMLDocument): Ditto.
 
37763
        (khtml::externalSubsetHandler): Ditto.
 
37764
        (khtml::XMLTokenizer::finish): Ditto.
 
37765
        (khtml::getXHTMLEntity): Look up the HTML entity.
 
37766
        (khtml::getEntityHandler): Look up the HTML entity if this is an XHTML document.
 
37767
        * khtml/html/kentities.h: Added.
 
37768
        * khtml/html/kentities.gperf: changed entity to Entity
 
37769
 
 
37770
2005-12-29  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
37771
 
 
37772
        Reviewed by darin
 
37773
 
 
37774
        - WebCore part of fix for
 
37775
          http://bugs.webkit.org/show_bug.cgi?id=3922
 
37776
          Variable word/letter spacing and full justification not supported for
 
37777
          ATSUI-rendered text
 
37778
 
 
37779
        * khtml/rendering/font.h:
 
37780
        (khtml::Font::checkSelectionPoint): Make sure the complete run, used for
 
37781
        counting spaces and determining padding per space does not go beyond the
 
37782
        text box.
 
37783
 
 
37784
2005-12-28  Geoffrey Garen  <ggaren@apple.com>
 
37785
 
 
37786
        Reviewed by mjs.
 
37787
 
 
37788
        - Fixed <rdar://problem/4325722> crash in KJS::Bindings::dispatchJNICall
 
37789
        due to liveconnect call from Java after Java PlugInView has been 
 
37790
        deallocated @ www.binarybet.com
 
37791
        AKA
 
37792
        http://bugs.webkit.org/show_bug.cgi?id=5518
 
37793
 
 
37794
        We had code that checked for whether a call came from a live PlugIn,
 
37795
        but the live PlugIn dictionary would only get cleared when the 
 
37796
        KWQKHTMLPart was destroyed. Since a single part can service multiple
 
37797
        loads, the dictionary needs to clear after each one.
 
37798
 
 
37799
        No layout test because this bug is difficult to reproduce.
 
37800
 
 
37801
        * kwq/KWQKHTMLPart.mm:
 
37802
        (KWQKHTMLPart::~KWQKHTMLPart):
 
37803
        (1) Unrelated cleanup: Removed manual clearing of form values,
 
37804
        replaced with call to clearRecordedFormValues().
 
37805
        (2) Replaced PlugIn dictionary cleanup code and view deref call
 
37806
        with call to setView(0), since much of this code was duplicated in
 
37807
        setView, and the stuff that wasn't duplicated needed to be.
 
37808
 
 
37809
        (KWQKHTMLPart::setView):
 
37810
        (1) Removed some unnecessary braces.
 
37811
        (2) Added PlugIn dictionary cleanup code.
 
37812
        (3) New behavior: clear _bindingRoot and _windowScriptObject after
 
37813
        each view change. This is needed because after a call to
 
37814
        clenaupPluginRootObjects(), both objects have stale references.
 
37815
        (4) Changed a NULL to a 0.
 
37816
 
 
37817
        (KWQKHTMLPart::cleanupPluginRootObjects): Removed extra space.
 
37818
 
 
37819
2005-12-28  Anders Carlsson  <andersca@mac.com>
 
37820
 
 
37821
        Reviewed by Maciej.
 
37822
 
 
37823
        - Fix http://bugs.webkit.org/show_bug.cgi?id=6268
 
37824
        Add undetectable document.all
 
37825
        
 
37826
        * khtml/ecma/kjs_html.cpp:
 
37827
        (KJS::HTMLDocument::getValueProperty):
 
37828
        If "all" has been set to a new value, return the new value.
 
37829
        
 
37830
        (KJS::KJS::HTMLDocument::putValueProperty):
 
37831
        Allow "all" to be set to a new value.
 
37832
        
 
37833
        (KJS::HTMLAllCollection::toPrimitive):
 
37834
        Return jsNull() if the preferred type is NullType.
 
37835
        
 
37836
        (KJS::getAllHTMLCollection):
 
37837
        * khtml/ecma/kjs_html.h:
 
37838
        (KJS::HTMLAllCollection::HTMLAllCollection):
 
37839
        Add HTMLAllCollection, a subclass of HTMLCollection which should
 
37840
        be undetectable.
 
37841
        
 
37842
        (KJS::HTMLAllCollection::toBoolean):
 
37843
        Return false.
 
37844
 
 
37845
2005-12-28  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
37846
 
 
37847
        Reviewed by Eric, landed by ap.
 
37848
        
 
37849
        Test: fast/block/basic/text-indent-rtl.html
 
37850
 
 
37851
        - fix http://bugs.webkit.org/show_bug.cgi?id=6214
 
37852
          text-indent in RTL block does the opposite
 
37853
 
 
37854
        * khtml/rendering/render_block.cpp:
 
37855
        (khtml::RenderBlock::rightRelOffset): Subtract the indent instead of adding it.
 
37856
 
 
37857
2005-12-28  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
37858
 
 
37859
        Reviewed by Darin, landed by ap.
 
37860
 
 
37861
        Test: fast/dom/HTMLScriptElement/script-load-events.html
 
37862
 
 
37863
        - fix http://bugs.webkit.org/show_bug.cgi?id=5812
 
37864
          Generate load events for <script> elements
 
37865
 
 
37866
        * khtml/html/html_headimpl.cpp:
 
37867
        (HTMLScriptElementImpl::parseMappedAttribute): Parse the onload and onerror attributes.
 
37868
        (HTMLScriptElementImpl::closeRenderer): Call base class's implementation.
 
37869
        (HTMLScriptElementImpl::notifyFinished): Dispatch load and error events.
 
37870
        * khtml/html/htmlparser.h:
 
37871
        * khtml/html/htmlparser.cpp:
 
37872
        (HTMLParser::parseToken): Return the node that was inserted.
 
37873
        * khtml/html/htmltokenizer.h: Added scriptNode, a RefPtr to the node corresponding
 
37874
        to the current load request.
 
37875
        * khtml/html/htmltokenizer.cpp:
 
37876
        (HTMLTokenizer::scriptHandler): Reset scriptNode if a load request was not made.
 
37877
        (HTMLTokenizer::parseTag): Set scriptNode to the node created from the script tag.
 
37878
        (HTMLTokenizer::processToken): Return the node that was inserted.
 
37879
        (HTMLTokenizer::notifyFinished): Reset scriptNode and dispatch load and error events.
 
37880
        * khtml/misc/loader.h:
 
37881
        (CachedScript::errorOccurred): Added.
 
37882
        * khtml/misc/loader.cpp:
 
37883
        (CachedScript::CachedScript):
 
37884
        (CachedScript::error):
 
37885
 
 
37886
2005-12-28  Alexey Proskuryakov  <ap@nypop.com>
 
37887
 
 
37888
        Reviewed by Maciej.
 
37889
 
 
37890
        - fix http://bugs.webkit.org/show_bug.cgi?id=6246
 
37891
          TextIterator::rangeFromLocationAndLength() returns nil range for an 
 
37892
          empty document
 
37893
 
 
37894
        Test: editing/input/range-for-empty-document.html
 
37895
 
 
37896
        * khtml/editing/visible_text.cpp:
 
37897
        (khtml::TextIterator::rangeFromLocationAndLength):
 
37898
        Handle the case of an empty document and (0, 0) requested range.
 
37899
 
 
37900
2005-12-28  Anders Carlsson  <andersca@mac.com>
 
37901
 
 
37902
        Reviewed and landed by Geoff.
 
37903
 
 
37904
        - fix http://bugs.webkit.org/show_bug.cgi?id=6269
 
37905
        ToT memory corruption
 
37906
        
 
37907
        * khtml/rendering/render_text.cpp:
 
37908
        (khtml::RenderText::setText):
 
37909
        Remove deref().
 
37910
        
 
37911
2005-12-27  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
37912
 
 
37913
        Reviewed by Hyatt, landed by Darin.
 
37914
        
 
37915
        - fix http://bugs.webkit.org/show_bug.cgi?id=5699
 
37916
          REGRESSION: incomplete repaint
 
37917
 
 
37918
        * khtml/rendering/render_object.cpp:
 
37919
        (RenderObject::repaintAfterLayoutIfNeeded): Return false if only the
 
37920
        size changed and not everything was repainted.
 
37921
        * manual-tests/bugzilla-5699.html: Added.
 
37922
 
 
37923
2005-12-27  Sam Weinig  <sam.weinig@gmail.com>
 
37924
 
 
37925
        Reviewed by Maciej, landed by Darin.
 
37926
 
 
37927
        - fixed <http://bugs.webkit.org/show_bug.cgi?id=4101>
 
37928
        CSS Fibonacci spiral using 4 images doesn't render correctly
 
37929
 
 
37930
        Added layout tests:
 
37931
        * fast/replaced/absolute-image-sizing.html
 
37932
 
 
37933
        * khtml/rendering/render_box.cpp:
 
37934
        (RenderBox::calcAbsoluteHorizontalValues): Use calcReplacedWidth() instead of intrinsicWidth()
 
37935
        for replaced elements.
 
37936
        (RenderBox::calcAbsoluteVerticalValues): Same thing for height.
 
37937
 
 
37938
2005-12-27  Darin Adler  <darin@apple.com>
 
37939
 
 
37940
        Reviewed by Geoff and Eric.
 
37941
 
 
37942
        - http://bugs.webkit.org/show_bug.cgi?id=6198
 
37943
          use RefPtr a few places in RenderText and related classes
 
37944
 
 
37945
        * khtml/html/htmltokenizer.h: Use RefPtr for some data members in Token.
 
37946
        Also removed use of bitfields in Token, since there's no need to optimize storage here.
 
37947
        * khtml/html/htmlparser.cpp:
 
37948
        (HTMLParser::parseToken): Update for use of RefPtr in Token.
 
37949
        (HTMLParser::textCreateErrorCheck): Ditto.
 
37950
        (HTMLParser::commentCreateErrorCheck): Ditto.
 
37951
        (HTMLParser::handleIsindex): Ditto.
 
37952
        * khtml/html/htmltokenizer.cpp:
 
37953
        (khtml::Token::addAttribute): Ditto.
 
37954
        (khtml::HTMLTokenizer::processToken): Ditto.
 
37955
 
 
37956
        * khtml/rendering/render_text.h: Reduce the number of includes, change
 
37957
        SOFT_HYPHEN from a macro into a constant. Change originalString function
 
37958
        to return a PassRefPtr instead of a RefPtr. Make str and m_generatedContentStr
 
37959
        member be a RefPtr.
 
37960
        * khtml/rendering/render_text.cpp:
 
37961
        (khtml::RenderText::previousOffset): Update for use of RefPtr for str.
 
37962
        (khtml::RenderText::nextOffset): Ditto.
 
37963
        (khtml::RenderText::RenderText): Ditto.
 
37964
        (khtml::RenderText::originalString): Change to return PassRefPtr, even though
 
37965
        it's not necessary at this level (since it's a virtual function).
 
37966
        (khtml::RenderText::posOfChar): Update for use of RefPtr for str.
 
37967
        (khtml::RenderText::setText): Ditto.
 
37968
        (khtml::RenderTextFragment::RenderTextFragment): Ditto.
 
37969
        (khtml::RenderTextFragment::originalString): Change to return PassRefPtr.
 
37970
 
 
37971
        * khtml/html/html_inlineimpl.cpp: Re-sorted list of includes, added newly-needed ones.
 
37972
        * kwq/KWQRenderTreeDebug.cpp: Added new include needed since QPtrVector is no longer
 
37973
        included by render_text.h.
 
37974
 
 
37975
2005-12-27  Darin Adler  <darin@apple.com>
 
37976
 
 
37977
        Fix suggested by Mitz.
 
37978
 
 
37979
        - fix http://bugs.webkit.org/show_bug.cgi?id=6240
 
37980
          REGRESSION: scrollbars in overflows don't work
 
37981
 
 
37982
        * khtml/xml/dom2_eventsimpl.cpp: (DOM::MouseRelatedEventImpl::computePositions):
 
37983
        Remove the code to compute pageX/Y from clientX/Y, because clientX/Y are not passed
 
37984
        in correctly (in fact, what's passed in is pageX/Y)! I accidentally included part
 
37985
        of my fix for clientX/Y in the original patch.
 
37986
 
 
37987
2005-12-27  Maks Orlovich <maksim@kde.org>
 
37988
 
 
37989
        Reviewed and landed by Maciej.
 
37990
 
 
37991
        - fixed 4405: <button> not listed in form collections.
 
37992
        http://bugs.webkit.org/show_bug.cgi?id=4405
 
37993
 
 
37994
        Test: fast/forms/button-in-forms-collection.html
 
37995
 
 
37996
        * khtml/html/html_formimpl.h:
 
37997
        (DOM::HTMLButtonElementImpl::isEnumeratable): override to return true
 
37998
 
 
37999
2005-12-25  Maciej Stachowiak  <mjs@apple.com>
 
38000
 
 
38001
        Reviewed by Geoff.
 
38002
 
 
38003
        - Remove WebFrame's parent frame pointer, instead rely on WebCore's parent concept
 
38004
        http://bugs.webkit.org/show_bug.cgi?id=6241
 
38005
 
 
38006
        * kwq/WebCoreBridge.h:
 
38007
        * kwq/WebCoreBridge.mm:
 
38008
        (-[WebCoreBridge parent]): New method, relies on the KHTMLPart's
 
38009
        parent pointer.
 
38010
 
 
38011
2005-12-24  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
38012
 
 
38013
        Reviewed by eseidel.
 
38014
        
 
38015
        Test: fast/forms/domstring-replace-crash.html
 
38016
 
 
38017
        - fix http://bugs.webkit.org/show_bug.cgi?id=6236
 
38018
          REGRESSION: Crash in DOMString::replace() in ToT (12/24/05)
 
38019
 
 
38020
        * khtml/dom/dom_string.h:
 
38021
        (DOMString::replace): Added check for null m_impl.
 
38022
 
 
38023
2005-12-24  Maciej Stachowiak  <mjs@apple.com>
 
38024
 
 
38025
        Reviewed by Eric.
 
38026
 
 
38027
        - replaced QPtrDict for Accessors structs with HashMap (also renamed some
 
38028
        stray getSetInfo methods)
 
38029
        http://bugs.webkit.org/show_bug.cgi?id=6223
 
38030
 
 
38031
        * khtml/ecma/kjs_html.cpp:
 
38032
        (KJS::HTMLElement::accessors):
 
38033
        (KJS::HTMLElement::getValueProperty):
 
38034
        (KJS::HTMLElement::putValueProperty):
 
38035
        * khtml/ecma/kjs_html.h:
 
38036
 
 
38037
2005-12-24  Geoffrey Garen  <ggaren@apple.com>
 
38038
 
 
38039
        Reviewed by eric.
 
38040
 
 
38041
        http://bugs.webkit.org/show_bug.cgi?id=6231
 
38042
 
 
38043
        - Fixed assertion failure in QString::mid caused by my last checkin. 
 
38044
        parseWindowFeatures() sometimes called QString::mid() with a start 
 
38045
        index past the end of the string but a length of 0. There were two 
 
38046
        problems there. (1) parseWindowFeatures() shouldn't have gotten past 
 
38047
        the end of the string. (2) QString had range truncating code that was 
 
38048
        borked. So I fixed both.
 
38049
 
 
38050
        * khtml/ecma/kjs_window.cpp:
 
38051
        (KJS::parseWindowFeatures): One of the "past the end" tests was > 
 
38052
        instead of >=.
 
38053
        * kwq/KWQString.mm:
 
38054
        (QString::mid): Truncate length *before* deciding whether to return 
 
38055
        early. Also, compare start and data._length before computing 
 
38056
        data._length - start, because the error case we're trying to catch 
 
38057
        will almost certainly cause unsigned overflow.
 
38058
        * manual-tests/window-open-features-parsing.html: Added trailing ',' 
 
38059
        to uber-test to catch this failure, too.
 
38060
 
 
38061
2005-12-24  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
38062
 
 
38063
        Reviewed by Maciej.
 
38064
 
 
38065
        - fix http://bugs.webkit.org/show_bug.cgi?id=6221
 
38066
          REGRESSION: Password field is blank error for secure websites using
 
38067
          password field (ToT, 12/24/05)
 
38068
 
 
38069
        * khtml/kwq/KWQSlot.mm:
 
38070
        (KWQSlot::KWQSlot): Changed the parameter type of slotTextChanged to const DOMString &
 
38071
        * khtml/rendering/render_form.h:
 
38072
        * khtml/rendering/render_form.cpp:
 
38073
        (RenderLineEdit::RenderLineEdit): ditto.
 
38074
        (RenderLineEdit::slotTextChanged): ditto.
 
38075
        (RenderFileButton::RenderFileButton): ditto.
 
38076
        (RenderFileButton::slotTextChanged): ditto.
 
38077
 
 
38078
2005-12-22  Geoffrey Garen  <ggaren@apple.com>
 
38079
    
 
38080
        Reviewed by vicki (yay!), eric.
 
38081
 
 
38082
        - Fixed: <rdar://problem/4377597> parsing of window.open features strings needs to be more forgiving
 
38083
 
 
38084
        Manual test case: WebCore/manual-tests/window-open-features-parsing.html
 
38085
        Also fixed: WebCore/manual-tests/window-open-features.html, which had an incorrect URL in it.
 
38086
 
 
38087
        This patch is long. Luckily, it's also complicated.
 
38088
 
 
38089
        The main thing I've done is to change our parsing of the window.open 'features' argument to match Win IE.
 
38090
        This is important because we now implement the correct defaults for window.open, and resizing and
 
38091
        scrolling are turned off by default. So, if we parse the 'features' string incorrectly, we'll end
 
38092
        up with an annoying, incorrectly sized window that can't resize or scroll.
 
38093
 
 
38094
        To honor a long-standing request by Eric, I factored out the parsing into two new functions:
 
38095
        parseWindowFeatures and constrainToScreen. I also added support for "innerWidth" and "innerHeight,"
 
38096
        since they're just synonyms for "width" and "height."
 
38097
 
 
38098
        * khtml/ecma/kjs_window.cpp: removed "emit" statements, since emit is #defined as ""
 
38099
        (KJS::parseDialogFeatures): renamed from parseFeatures, since we now have a 'parseWindowFeatures'.
 
38100
        (KJS::showModalDialog): ditto on parseFeatures. Also added some missing initializations for WindowArgs data members.
 
38101
        (KJS::parseWindowFeatures): new function, all new functionality.
 
38102
        (KJS::constrainToScreen): new function, no new functionality -- just cut and pasted code that used to run as
 
38103
        part of our parsing routine.
 
38104
        (KJS::WindowFunc::callAsFunction):
 
38105
        (1) Factored out previous parsing code.
 
38106
        (2) Factored 17 lines of custom popup-blocking code into 3 lines that use pre-existing 'allowPopUp' function.
 
38107
            Gratuitous, but it cried out to me.
 
38108
        (3) Changed URL parsing to substitute "" for undefined *and* null values (we already did this for undefined),
 
38109
            to avoid trying to navigate to 'http://null'.
 
38110
        (4) Factore a multiline if () { if () {}} into an if ( && )
 
38111
        (4) Removed the main body of code from a giant 'else' block by inserting early returns for the exceptional cases.
 
38112
            This caused some things to show up in the diff even though they're just whitespace changes.
 
38113
            I didn't actually change any code past the line "if (!str.isEmpty() && activePart)"
 
38114
        * kwq/KWQKHTMLPartBrowserExtension.mm:
 
38115
        (KHTMLPartBrowserExtension::createNewWindow): Added code to set toolbars to visible if toolBarVisible is true *or*
 
38116
        locationBarVisible is true. The parser used to do this for us, but it's really the browser that's responsible for
 
38117
        saying that the toolbar and the locationbar are the same thing. Hopefully, we can add a setLocationBarVisible delegate
 
38118
        in the future so that other webkit clients can make their own UI decisions.
 
38119
        * kwq/KWQKPartsBrowserExtension.h: Added locationBarVisible data member to WindowArgs structure and renamed
 
38120
        toolBarsVisible to toolBarVisible (see above). Removed initialization code from WindowArgs structure because
 
38121
        this file is for platform-specific code, and what defaults to use for window arguments is purely engine stuff.
 
38122
 
 
38123
2005-12-23  Eric Seidel  <eseidel@apple.com>
 
38124
 
 
38125
        Reviewed by mjs.
 
38126
 
 
38127
        Remove many use of .qstring()
 
38128
        Convert several instances of QStrings to DOMStrings
 
38129
        Add DOMString::replace(QChar, QChar)
 
38130
        Remove (unused) KWQLabel, KWQKGlobal
 
38131
        Slight performance improvement.
 
38132
        Also fixed ChangeLog line endings from previous commit.
 
38133
        http://bugs.webkit.org/show_bug.cgi?id=6138
 
38134
 
 
38135
        No tests needed, no functionality changes.
 
38136
 
 
38137
        * ChangeLog: Fixed line endings
 
38138
        * ForwardingHeaders/kglobal.h: Removed.
 
38139
        * ForwardingHeaders/qlabel.h: Removed.
 
38140
        * WebCore.xcodeproj/project.pbxproj: removed KWQLabel
 
38141
        * khtml/css/css_base.cpp:
 
38142
        (CSSSelector::selectorText):
 
38143
        * khtml/css/css_stylesheetimpl.cpp:
 
38144
        (MediaListImpl::setMediaText):
 
38145
        * khtml/css/cssstyleselector.cpp:
 
38146
        (khtml::checkPseudoState):
 
38147
        * khtml/dom/dom_string.h:
 
38148
        (DOM::DOMString::replace):
 
38149
        * khtml/ecma/kjs_css.cpp:
 
38150
        (KJS::DOMCSSStyleDeclaration::put):
 
38151
        * khtml/ecma/kjs_dom.cpp:
 
38152
        (KJS::DOMNode::put):
 
38153
        (KJS::DOMAttr::put):
 
38154
        (KJS::DOMDocument::put):
 
38155
        * khtml/ecma/kjs_events.cpp:
 
38156
        (KJS::JSAbstractEventListener::handleEvent):
 
38157
        * khtml/ecma/kjs_html.cpp:
 
38158
        (KJS::KJS::HTMLDocument::put):
 
38159
        (KJS::KJS::HTMLElementFunction::callAsFunction):
 
38160
        (KJS::KJS::HTMLElement::put):
 
38161
        (KJS::KJS::Context2DFunction::callAsFunction):
 
38162
        (KJS::Context2D::putValueProperty):
 
38163
        * khtml/ecma/kjs_proxy.cpp:
 
38164
        (KJSProxyImpl::evaluate):
 
38165
        * khtml/ecma/kjs_window.cpp:
 
38166
        (KJS::Window::isSafeScript):
 
38167
        (KJS::WindowFunc::callAsFunction):
 
38168
        (KJS::ScheduledAction::execute):
 
38169
        * khtml/ecma/xmlhttprequest.cpp:
 
38170
        (KJS::XMLHttpRequest::send):
 
38171
        (KJS::XMLHttpRequestProtoFunc::callAsFunction):
 
38172
        * khtml/ecma/xmlhttprequest.h:
 
38173
        * khtml/editing/jsediting.cpp:
 
38174
        (DOM::JSEditor::queryCommandSupported):
 
38175
        * khtml/editing/markup.cpp:
 
38176
        (khtml::stringValueForRange):
 
38177
        (khtml::startMarkup):
 
38178
        * khtml/html/html_baseimpl.cpp:
 
38179
        (HTMLBodyElementImpl::parseMappedAttribute):
 
38180
        * khtml/html/html_elementimpl.cpp:
 
38181
        (HTMLElementImpl::addHTMLAlignment):
 
38182
        * khtml/html/html_formimpl.cpp:
 
38183
        (DOM::HTMLFormElementImpl::formData):
 
38184
        (DOM::HTMLInputElementImpl::appendFormData):
 
38185
        (DOM::HTMLTextAreaElementImpl::updateValue):
 
38186
        * khtml/html/html_headimpl.cpp:
 
38187
        (HTMLLinkElementImpl::parseMappedAttribute):
 
38188
        * khtml/html/html_imageimpl.cpp:
 
38189
        (DOM::HTMLImageElementImpl::parseMappedAttribute):
 
38190
        * khtml/html/html_objectimpl.cpp:
 
38191
        (DOM::HTMLObjectElementImpl::parseMappedAttribute):
 
38192
        (DOM::HTMLParamElementImpl::isURLAttribute):
 
38193
        * khtml/html/html_objectimpl.h:
 
38194
        * khtml/html/html_tableimpl.cpp:
 
38195
        (DOM::HTMLTableElementImpl::addChild):
 
38196
        (DOM::HTMLTableElementImpl::parseMappedAttribute):
 
38197
        (DOM::HTMLTablePartElementImpl::parseMappedAttribute):
 
38198
        (DOM::HTMLTableSectionElementImpl::addChild):
 
38199
        (DOM::HTMLTableRowElementImpl::addChild):
 
38200
        * khtml/html/htmltokenizer.cpp:
 
38201
        (khtml::HTMLTokenizer::parseTag):
 
38202
        * khtml/khtml_part.cpp:
 
38203
        (KHTMLPart::executeScript):
 
38204
        (KHTMLPart::checkEmitLoadEvent):
 
38205
        * khtml/misc/loader.cpp:
 
38206
        (CachedObject::finish):
 
38207
        (CachedCSSStyleSheet::checkNotify):
 
38208
        (CachedXSLStyleSheet::checkNotify):
 
38209
        (CachedXBLDocument::checkNotify):
 
38210
        (DocLoader::requestImage):
 
38211
        (DocLoader::requestStyleSheet):
 
38212
        (DocLoader::requestScript):
 
38213
        (Loader::servePendingRequests):
 
38214
        (Loader::cancelRequests):
 
38215
        * khtml/rendering/render_applet.cpp:
 
38216
        * khtml/rendering/render_block.cpp:
 
38217
        (khtml::RenderBlock::updateFirstLetter):
 
38218
        * khtml/rendering/render_box.cpp:
 
38219
        (RenderBox::~RenderBox):
 
38220
        * khtml/rendering/render_form.cpp:
 
38221
        (RenderFormElement::slotTextChanged):
 
38222
        (RenderLineEdit::updateFromElement):
 
38223
        (RenderTextArea::updateFromElement):
 
38224
        (RenderTextArea::text):
 
38225
        * khtml/rendering/render_form.h:
 
38226
        * khtml/rendering/render_frames.cpp:
 
38227
        (RenderPartObject::updateWidget):
 
38228
        * khtml/rendering/render_line.cpp:
 
38229
        (khtml::EllipsisBox::paint):
 
38230
        * khtml/rendering/render_list.cpp:
 
38231
        (RenderListItem::paint):
 
38232
        (RenderListMarker::paint):
 
38233
        * khtml/rendering/render_text.cpp:
 
38234
        (khtml::RenderText::RenderText):
 
38235
        (khtml::RenderText::position):
 
38236
        * khtml/xml/dom_docimpl.cpp:
 
38237
        (DOMImplementationImpl::hasFeature):
 
38238
        (DocumentImpl::getElementByAccessKey):
 
38239
        (DocumentImpl::recalcStyleSelector):
 
38240
        (DocumentImpl::defaultEventHandler):
 
38241
        * khtml/xml/dom_elementimpl.cpp:
 
38242
        (ElementImpl::recalcStyle):
 
38243
        * khtml/xml/dom_nodeimpl.cpp:
 
38244
        (DOM::NodeImpl::dump):
 
38245
        (DOM::appendAttributeDesc):
 
38246
        (DOM::NodeImpl::showNode):
 
38247
        * khtml/xml/dom_stringimpl.cpp:
 
38248
        (DOM::DOMStringImpl::lower):
 
38249
        * khtml/xml/xml_tokenizer.cpp:
 
38250
        (khtml::XMLTokenizer::executeScripts):
 
38251
        * khtml/xsl/xsl_stylesheetimpl.cpp:
 
38252
        (DOM::XSLStyleSheetImpl::loadChildSheets):
 
38253
        * kwq/KWQKHTMLPart.h:
 
38254
        * kwq/KWQKHTMLPart.mm:
 
38255
        (KWQKHTMLPart::documentViewForNode):
 
38256
        (KWQKHTMLPart::runJavaScriptAlert):
 
38257
        (KWQKHTMLPart::runJavaScriptConfirm):
 
38258
        (KWQKHTMLPart::runJavaScriptPrompt):
 
38259
        (KWQKHTMLPart::addMessageToConsole):
 
38260
        (KWQKHTMLPart::passWheelEventToChildWidget):
 
38261
        (KWQKHTMLPart::shouldDragAutoNode):
 
38262
        (KWQKHTMLPart::snapshotDragImage):
 
38263
        (convertAttributesToUnderlines):
 
38264
        (KWQKHTMLPart::setMarkedTextRange):
 
38265
        (KWQKHTMLPart::mousePressNode):
 
38266
        * kwq/KWQKGlobal.h: Removed.
 
38267
        * kwq/KWQKGlobal.mm: Removed.
 
38268
        * kwq/KWQLabel.h: Removed.
 
38269
        * kwq/KWQLabel.mm: Removed.
 
38270
        * kwq/KWQLineEdit.h:
 
38271
        * kwq/KWQLineEdit.mm:
 
38272
        (QLineEdit::setText):
 
38273
        (QLineEdit::text):
 
38274
        (QLineEdit::setAutoSaveName):
 
38275
        (QLineEdit::setPlaceholderString):
 
38276
        * kwq/KWQPainter.mm:
 
38277
        (QPainter::compositeOperatorFromString):
 
38278
        * kwq/KWQSignal.h:
 
38279
        * kwq/KWQSignal.mm:
 
38280
        (KWQSignal::call):
 
38281
        * kwq/KWQSlot.h:
 
38282
        * kwq/KWQSlot.mm:
 
38283
        (KWQSlot::call):
 
38284
        * kwq/KWQString.h:
 
38285
        * kwq/KWQString.mm:
 
38286
        * kwq/KWQTextEdit.h:
 
38287
        * kwq/KWQTextEdit.mm:
 
38288
        (QTextEdit::setText):
 
38289
        (QTextEdit::text):
 
38290
        (QTextEdit::textWithHardLineBreaks):
 
38291
        * ksvg2/scripts/cssmakeprops: removed kglobal.h
 
38292
        * ksvg2/scripts/cssmakevalues: removed kglobal.h
 
38293
 
 
38294
2005-12-23  Alexey Proskuryakov  <ap@nypop.com>
 
38295
 
 
38296
        Reviewed by Eric Seidel.
 
38297
 
 
38298
        - fix http://bugs.webkit.org/show_bug.cgi?id=5924
 
38299
          Zero-length responses to XMLHTTPRequest mishandled
 
38300
 
 
38301
        * khtml/ecma/xmlhttprequest.cpp (KJS::XMLHttpRequest::slotFinished):
 
38302
          Make sure to fetch response headers and set the state to Loaded, if
 
38303
          this hasn't been done already.
 
38304
 
 
38305
2005-12-23  Alexey Proskuryakov  <ap@nypop.com>
 
38306
 
 
38307
        Reviewed by Eric Seidel.
 
38308
 
 
38309
        - fix http://bugs.webkit.org/show_bug.cgi?id=3565
 
38310
          Posting data via XML HTTP Request doesnt work
 
38311
 
 
38312
        * khtml/ecma/xmlhttprequest.cpp:
 
38313
        (KJS::XMLHttpRequest::send): Set application/xml as a default Content-Type;
 
38314
          use a proper codec for request body if a charset is specified.
 
38315
        (KJS::XMLHttpRequest::getRequestHeader): Use getSpecificHeader.
 
38316
        (KJS::XMLHttpRequest::getResponseHeader): Ditto.
 
38317
        (KJS::XMLHttpRequest::getSpecificHeader): Factored out code from getResponseHeader.
 
38318
        (KJS::XMLHttpRequestProtoFunc::callAsFunction): Removed a FIXME (this is done in send() now).
 
38319
        * khtml/ecma/xmlhttprequest.h:
 
38320
 
 
38321
2005-12-22  Alexey Proskuryakov  <ap@nypop.com>
 
38322
 
 
38323
        Reviewed by Darin Adler.
 
38324
 
 
38325
        - fix http://bugs.webkit.org/show_bug.cgi?id=6118
 
38326
        Investigate not using the frameset charset as a default for frames
 
38327
 
 
38328
        * khtml/khtml_part.cpp (KHTMLPart::write):
 
38329
        Do not use the parent frame encoding as a default for sub-frames (revert
 
38330
        rdar://3100151). 
 
38331
 
 
38332
2005-12-22  Maciej Stachowiak  <mjs@apple.com>
 
38333
 
 
38334
        Reviewed by Eric.
 
38335
 
 
38336
        - made RefPtr<DOMStringImpl> usable as a hashtable key/value
 
38337
        - changed XSLTProcessorImpl to make use of this instead of a QDict.
 
38338
        - partially fixed broken param handling for xslt
 
38339
 
 
38340
        See LayoutTests for updated test case.
 
38341
 
 
38342
        * khtml/xml/dom_stringimpl.cpp:
 
38343
        * khtml/xml/dom_stringimpl.h:
 
38344
        (KXMLCore::): Set things up so you can use RefPtr<DOMStringImpl> as
 
38345
        a hashtable key (should already be usable as a value).
 
38346
        * khtml/xsl/xslt_processorimpl.cpp:
 
38347
        (DOM::xsltParamArrayFromParameterMap): Updated to use a HashMap of RefPtrs instead
 
38348
        of QDict. Also, fixed bugs that would have kept this from ever working at all.
 
38349
        (DOM::XSLTProcessorImpl::transformToString): ditto
 
38350
        (DOM::XSLTProcessorImpl::setParameter): ditto
 
38351
        (DOM::XSLTProcessorImpl::getParameter): ditto
 
38352
        (DOM::XSLTProcessorImpl::removeParameter): ditto
 
38353
        * khtml/xsl/xslt_processorimpl.h:
 
38354
 
 
38355
2005-12-21  Maciej Stachowiak  <mjs@apple.com>
 
38356
 
 
38357
        Reviewed by Darin.
 
38358
 
 
38359
        - update for new HashTranslator stuff
 
38360
 
 
38361
        * khtml/xml/dom_atomicstring.cpp:
 
38362
        (DOM::CStringTranslator::hash):
 
38363
        (DOM::CStringTranslator::equal):
 
38364
        (DOM::CStringTranslator::translate):
 
38365
        (DOM::AtomicString::equal):
 
38366
        (DOM::AtomicString::add):
 
38367
        (DOM::QCharBufferTranslator::hash):
 
38368
        (DOM::QCharBufferTranslator::equal):
 
38369
        (DOM::QCharBufferTranslator::translate):
 
38370
        * khtml/xml/dom_qname.cpp:
 
38371
        (DOM::QNameComponentsTranslator::hash):
 
38372
        (DOM::QNameComponentsTranslator::equal):
 
38373
        (DOM::QNameComponentsTranslator::translate):
 
38374
        (DOM::QualifiedName::QualifiedName):
 
38375
 
 
38376
2005-12-22  Adele Peterson  <adele@apple.com>
 
38377
 
 
38378
        Reviewed by Darin.
 
38379
 
 
38380
        Cleaned up a previous checkin by defining global const defaultForm.
 
38381
 
 
38382
        * khtml/xml/dom_docimpl.cpp:
 
38383
        (DocumentImpl::radioButtonChecked):
 
38384
        (DocumentImpl::checkedRadioButtonForGroup):
 
38385
        (DocumentImpl::removeRadioButtonGroup):
 
38386
 
 
38387
2005-12-22  Adele Peterson  <adele@apple.com>
 
38388
 
 
38389
        Reviewed by Tim Hatcher.
 
38390
 
 
38391
        Fixed <rdar://problem/4387433> Seed: Radio buttons behave incorrectly in Gmail settings
 
38392
 
 
38393
        * khtml/html/html_formimpl.cpp:
 
38394
        (DOM::HTMLFormElementImpl::registerFormElement): update radio button hash map when moving form elements around.
 
38395
        (DOM::HTMLGenericFormElementImpl::insertedIntoTree): ditto.
 
38396
        * khtml/html/html_formimpl.h:
 
38397
        (DOM::HTMLGenericFormElementImpl::isRadioButton): Added.
 
38398
        (DOM::HTMLInputElementImpl::isRadioButton): Added.
 
38399
        * khtml/xml/dom_docimpl.cpp:
 
38400
        (DocumentImpl::radioButtonChecked): 
 
38401
        Added comment explaining that we use 1 for the default form.  We can't use a null pointer as a key for the hash map.
 
38402
        (DocumentImpl::checkedRadioButtonForGroup): Added conversion of null form pointer to 1.
 
38403
        (DocumentImpl::removeRadioButtonGroup): ditto.
 
38404
 
 
38405
2005-12-22  Anders Carlsson  <andersca@mac.com>
 
38406
 
 
38407
        Reviewed by Eric.
 
38408
 
 
38409
        - fix http://bugs.webkit.org/show_bug.cgi?id=6196
 
38410
        Would like to be able to define prototypes in headers
 
38411
 
 
38412
        * khtml/ecma/XSLTProcessor.cpp:
 
38413
        * khtml/ecma/domparser.cpp:
 
38414
        * khtml/ecma/kjs_css.cpp:
 
38415
        * khtml/ecma/kjs_dom.cpp:
 
38416
        * khtml/ecma/kjs_events.cpp:
 
38417
        * khtml/ecma/kjs_html.cpp:
 
38418
        * khtml/ecma/kjs_range.cpp:
 
38419
        * khtml/ecma/kjs_traversal.cpp:
 
38420
        * khtml/ecma/kjs_views.cpp:
 
38421
        * khtml/ecma/xmlhttprequest.cpp:
 
38422
        * khtml/ecma/xmlserializer.cpp:
 
38423
        Update for changes to JSC.
 
38424
 
 
38425
2005-12-22  Darin Adler  <darin@apple.com>
 
38426
 
 
38427
        Reviewed by Geoff.
 
38428
 
 
38429
        - fix http://bugs.webkit.org/show_bug.cgi?id=6198
 
38430
          use RefPtr a few places in RenderText and related classes
 
38431
 
 
38432
        * khtml/html/htmlparser.cpp:
 
38433
        (HTMLParser::parseToken): Use get since text pointer is RefPtr now.
 
38434
        (HTMLParser::textCreateErrorCheck): Ditto.
 
38435
        (HTMLParser::commentCreateErrorCheck): Ditto.
 
38436
        (HTMLParser::handleIsindex): Get rid of explicit deref, no longer needed.
 
38437
 
 
38438
        * khtml/html/htmltokenizer.h: Make attrs and text fields of Token use
 
38439
        RefPtr. Also stop using bit fields for the flags in Token -- there's no
 
38440
        evidence this makes things faster.
 
38441
        * khtml/html/htmltokenizer.cpp:
 
38442
        (khtml::Token::addAttribute): Get rid of explicit ref, no longer needed.
 
38443
        (khtml::HTMLTokenizer::processToken): Ditto.
 
38444
 
 
38445
        * khtml/rendering/render_block.cpp: (khtml::RenderBlock::updateFirstLetter):
 
38446
        Use a PassRefPtr.
 
38447
 
 
38448
        * khtml/rendering/render_text.cpp:
 
38449
        (khtml::RenderText::previousOffset): Use get since str pointer is RefPtr now.
 
38450
        (khtml::RenderText::nextOffset): Ditto.
 
38451
        (khtml::RenderText::RenderText): Get rid of explicit ref, no longer needed.
 
38452
        Change to use initializer syntax instead of assignment.
 
38453
        (khtml::RenderText::setStyle): Use PassRefPtr.
 
38454
        (khtml::RenderText::originalString): Ditto.
 
38455
        (khtml::RenderText::setText): Get rid of explicit ref, no longer needed.
 
38456
        (khtml::RenderTextFragment::RenderTextFragment): Get rid of explicit ref,
 
38457
        no longer needed.
 
38458
        (khtml::RenderTextFragment::originalString): Use PassRefPtr.
 
38459
 
 
38460
        * khtml/rendering/render_text.h: Change SOFT_HYPEN to be a constant rather than
 
38461
        a preprocessor macro. Used PassRefPtr in a couple places. Made RenderText's str
 
38462
        and RenderTextFragment's m_generatedContentStr be RefPtr.
 
38463
 
 
38464
        * khtml/html/html_inlineimpl.cpp: Add a newly-needed include, sort them.
 
38465
        * kwq/KWQRenderTreeDebug.cpp: Add a newly-needed include.
 
38466
 
 
38467
2005-12-22  Darin Adler  <darin@apple.com>
 
38468
 
 
38469
        Reviewed by Eric.
 
38470
 
 
38471
        - fix http://bugs.webkit.org/show_bug.cgi?id=6193
 
38472
          remove some unused KWQ code
 
38473
 
 
38474
        * kcanvas/KCanvasCreator.cpp: (KCanvasCreator::self): Don't use static deleter for
 
38475
        two reasons: (1) We don't want any globals with constructors in any of our frameworks
 
38476
        because they slow down framework load time. (2) There's no need to destroy this object at
 
38477
        process termination time -- it's extra work with no benefit. Because of both these
 
38478
        reasons, our KStaticDeleter implementation was basically a no-op.
 
38479
        * ksvg2/svg/SVGDOMImplementationImpl.cpp: (SVGDOMImplementationImpl::self): Ditto.
 
38480
        * khtml/xml/dom_docimpl.cpp: (DocumentImpl::setDocumentChanged): Ditto.
 
38481
 
 
38482
        * khtml/html/html_canvasimpl.cpp: Removed include of kstringhandler.h.
 
38483
        * khtml/html/html_imageimpl.cpp: Ditto.
 
38484
 
 
38485
        * khtml/khtmlpart_p.h: Removed something that was in an "APPLE_CANGES" ifdef.
 
38486
 
 
38487
        * ForwardingHeaders/kstaticdeleter.h: Removed.
 
38488
        * ForwardingHeaders/kstringhandler.h: Removed.
 
38489
        * kwq/KWQKStaticDeleter.h: Removed.
 
38490
        * kwq/KWQKStringHandler.h: Removed.
 
38491
        * kwq/KWQKStringHandler.mm: Removed.
 
38492
 
 
38493
        * WebCore.xcodeproj/project.pbxproj: Removed files.
 
38494
 
 
38495
2005-12-22  Darin Adler  <darin@apple.com>
 
38496
 
 
38497
        Reviewed by Eric.
 
38498
 
 
38499
        - fix http://bugs.webkit.org/show_bug.cgi?id=6192
 
38500
          add support for non-standard &nsup; entity (implemented in other browsers)
 
38501
 
 
38502
        * khtml/html/kentities.gperf: Add "nsup" to table.
 
38503
        * khtml/html/htmltokenizer.cpp: Removed old workaround for inlining issue that no
 
38504
        longer seems to be necessary; also touches the file which is important because
 
38505
        Xcode doesn't seem to understand the dependency on kentities.gperf and the need
 
38506
        to recompile.
 
38507
 
 
38508
2005-12-22  Darin Adler  <darin@apple.com>
 
38509
 
 
38510
        Reviewed by Eric.
 
38511
 
 
38512
        - fix http://bugs.webkit.org/show_bug.cgi?id=6167
 
38513
          RenderStyle default constructor should initialize its members for speed
 
38514
 
 
38515
        * khtml/rendering/DataRef.h: (khtml::DataRef::operator=): Eliminate an extra
 
38516
        branch by doing ref before deref instead of == check.
 
38517
 
 
38518
        * khtml/rendering/render_style.cpp:
 
38519
        (khtml::initDefaultStyle): Added. Function to initialize the default style
 
38520
        for use in constructor.
 
38521
        (khtml::RenderStyle::RenderStyle): Changed constructor to initalize all the
 
38522
        members with constructor syntax instead of using assignment on all of them.
 
38523
        * khtml/rendering/render_style.h: Removed static data member _default --
 
38524
        it's now a file scope global instead.
 
38525
 
 
38526
2005-12-21  Darin Adler  <darin@apple.com>
 
38527
 
 
38528
        Reviewed by Justin.
 
38529
 
 
38530
        - fix http://bugs.webkit.org/show_bug.cgi?id=6142
 
38531
          intermittent failures in some paste tests
 
38532
 
 
38533
        * khtml/editing/apply_style_command.cpp:
 
38534
        (khtml::ApplyStyleCommand::applyBlockStyle): Call new updateLayout member function.
 
38535
        (khtml::ApplyStyleCommand::applyInlineStyle): Ditto.
 
38536
        (khtml::ApplyStyleCommand::pushDownTextDecorationStyleAtBoundaries): Ditto.
 
38537
        * khtml/editing/composite_edit_command.cpp:
 
38538
        (khtml::CompositeEditCommand::addBlockPlaceholderIfNeeded): Ditto.
 
38539
        (khtml::CompositeEditCommand::findBlockPlaceholder): Ditto.
 
38540
        (khtml::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary): Ditto.
 
38541
        * khtml/editing/delete_selection_command.cpp:
 
38542
        (khtml::DeleteSelectionCommand::fixupWhitespace): Ditto.
 
38543
        (khtml::DeleteSelectionCommand::moveNodesAfterNode): Ditto.
 
38544
        * khtml/editing/edit_command.cpp:
 
38545
        (khtml::EditCommand::apply): Ditto.
 
38546
        (khtml::EditCommand::unapply): Ditto.
 
38547
        (khtml::EditCommand::reapply): Ditto.
 
38548
        (khtml::EditCommand::updateLayout): Added. Calls updateLayoutIgnorePendingStylesheets
 
38549
        on the document.
 
38550
        * khtml/editing/edit_command.h: Added updateLayout member function.
 
38551
        * khtml/editing/insert_line_break_command.cpp:
 
38552
        (khtml::InsertLineBreakCommand::doApply): Call new updateLayout member function.
 
38553
        * khtml/editing/insert_paragraph_separator_command.cpp:
 
38554
        (khtml::InsertParagraphSeparatorCommand::doApply): Ditto.
 
38555
        * khtml/editing/jsediting.cpp:
 
38556
        (DOM::JSEditor::execCommand): Call updateLayoutIgnorePendingStylesheets instead of updateLayout.
 
38557
        (DOM::JSEditor::queryCommandEnabled): Ditto.
 
38558
        (DOM::JSEditor::queryCommandIndeterm): Ditto.
 
38559
        (DOM::JSEditor::queryCommandState): Ditto.
 
38560
        (DOM::JSEditor::queryCommandValue): Ditto.
 
38561
        * khtml/editing/markup.cpp: (khtml::createMarkup): Ditto.
 
38562
        * khtml/editing/replace_selection_command.cpp:
 
38563
        (khtml::ReplacementFragment::insertFragmentForTestRendering): Ditto.
 
38564
        (khtml::ReplaceSelectionCommand::fixupNodeStyles): Call new updateLayout member function.
 
38565
        (khtml::ReplacementFragment::computeStylesUsingTestRendering): Call
 
38566
        updateLayoutIgnorePendingStylesheets instead of updateLayout.
 
38567
        (khtml::ReplaceSelectionCommand::doApply): Call new updateLayout member function.
 
38568
        (khtml::ReplaceSelectionCommand::removeLinePlaceholderIfNeeded): Ditto.
 
38569
        (khtml::ReplaceSelectionCommand::completeHTMLReplacement): Ditto.
 
38570
        * khtml/editing/visible_units.cpp:
 
38571
        (khtml::previousLinePosition): Call updateLayoutIgnorePendingStylesheets instead of updateLayout.
 
38572
        (khtml::nextLinePosition): Ditto.
 
38573
        * khtml/html/html_elementimpl.cpp:
 
38574
        (HTMLElementImpl::innerText): Ditto.
 
38575
        * kwq/WebCoreBridge.mm:
 
38576
        (-[WebCoreBridge setSelectedDOMRange:affinity:closeTyping:]): Ditto.
 
38577
        (-[WebCoreBridge smartDeleteRangeForProposedRange:]): Ditto.
 
38578
 
 
38579
2005-12-21  Darin Adler  <darin@apple.com>
 
38580
 
 
38581
        Reviewed by Geoff.
 
38582
 
 
38583
        - fix http://bugs.webkit.org/show_bug.cgi?id=6177
 
38584
          move event code from JavaScript binding into DOM implementation
 
38585
 
 
38586
        * khtml/ecma/kjs_events.cpp:
 
38587
        (KJS::DOMMouseEvent::getValueProperty): Change everything to just call through instead of doing
 
38588
        the work here.
 
38589
        (KJS::DOMWheelEvent::getValueProperty): Ditto.
 
38590
 
 
38591
        * khtml/xml/dom2_eventsimpl.h:
 
38592
        (DOM::MouseRelatedEventImpl::offsetX):
 
38593
        (DOM::MouseRelatedEventImpl::offsetY):
 
38594
        * khtml/xml/dom2_eventsimpl.cpp:
 
38595
        (DOM::MouseRelatedEventImpl::MouseRelatedEventImpl): Initialize new m_pageX, m_pageY, m_layerX,
 
38596
        m_layerY, m_offsetX, and m_offsetY.
 
38597
        (DOM::MouseRelatedEventImpl::computePositions): Renamed from computeLayerPos since it handles
 
38598
        page position andoffset position too now.
 
38599
        (DOM::MouseRelatedEventImpl::pageX): Added. Not in header since it's virtual.
 
38600
        (DOM::MouseRelatedEventImpl::pageY): Ditto.
 
38601
        (DOM::MouseRelatedEventImpl::x): Added, with FIXME since it should change eventually.
 
38602
        (DOM::MouseRelatedEventImpl::y): Ditto.
 
38603
        (DOM::MouseEventImpl::initMouseEvent): Call computePositions instead of computeLayerPos.
 
38604
        (DOM::MouseEventImpl::toElement): Added.
 
38605
        (DOM::MouseEventImpl::fromElement): Added.
 
38606
 
 
38607
2005-12-21  Timothy Hatcher  <timothy@apple.com>
 
38608
 
 
38609
        * WebCore.xcodeproj/project.pbxproj:
 
38610
          Set tab width to 8, indent width to 4 and uses tabs to false per file.
 
38611
 
 
38612
2005-12-21  John Sullivan  <sullivan@apple.com>
 
38613
 
 
38614
        Reviewed by Tim Omernick and Darin Adler.
 
38615
        
 
38616
        - fixed HiDPI problem with forms auto-fill menu width
 
38617
 
 
38618
        No test cases added; this code is used for "chrome" only.
 
38619
 
 
38620
        * kwq/DOMHTML.mm:
 
38621
        (-[DOMHTMLInputElement _rectOnScreen]):
 
38622
        convert entire rect to window coordinates, not just origin
 
38623
 
 
38624
2005-12-21  David Harrison  <harrison@apple.com>
 
38625
 
 
38626
        Reviewed by Justin.
 
38627
 
 
38628
        <rdar://problem/4039777> Pasting particular snippet of HTML containing list items and a link creates too many list items
 
38629
        - Fixed paste crash by making calling RenderBox::deleteLineBoxWrapper() from RenderObject::remove(),
 
38630
        so that the connection is broken before the InlineBox's parent gets deleted.
 
38631
        - Fixed overzealous style changes when setting the style on a specific range of elements.  These specific
 
38632
        ranges are derived programmatically, e.g. as a part of pasting, so they must be respected exactly rather
 
38633
        than modified by converting the endpoints to VisiblePositions.
 
38634
        
 
38635
        Test cases coming soon.
 
38636
 
 
38637
        * khtml/editing/apply_style_command.cpp:
 
38638
        (khtml::ApplyStyleCommand::ApplyStyleCommand):
 
38639
        (khtml::ApplyStyleCommand::updateStartEnd):
 
38640
        (khtml::ApplyStyleCommand::startPosition):
 
38641
        (khtml::ApplyStyleCommand::endPosition):
 
38642
        (khtml::ApplyStyleCommand::applyBlockStyle):
 
38643
        (khtml::ApplyStyleCommand::applyRelativeFontStyleChange):
 
38644
        (khtml::ApplyStyleCommand::applyInlineStyle):
 
38645
        (khtml::ApplyStyleCommand::removeInlineStyle):
 
38646
        (khtml::ApplyStyleCommand::splitTextAtStartIfNeeded):
 
38647
        (khtml::ApplyStyleCommand::splitTextAtEndIfNeeded):
 
38648
        (khtml::ApplyStyleCommand::splitTextElementAtStartIfNeeded):
 
38649
        (khtml::ApplyStyleCommand::splitTextElementAtEndIfNeeded):
 
38650
        (khtml::ApplyStyleCommand::mergeStartWithPreviousIfIdentical):
 
38651
        (khtml::ApplyStyleCommand::mergeEndWithNextIfIdentical):
 
38652
        (khtml::ApplyStyleCommand::joinChildTextNodes):
 
38653
        * khtml/editing/apply_style_command.h:
 
38654
        * khtml/editing/composite_edit_command.cpp:
 
38655
        (khtml::CompositeEditCommand::applyStyle):
 
38656
        * khtml/editing/composite_edit_command.h:
 
38657
        * khtml/editing/insert_line_break_command.cpp:
 
38658
        (khtml::InsertLineBreakCommand::doApply):
 
38659
        * khtml/editing/replace_selection_command.cpp:
 
38660
        (khtml::ReplaceSelectionCommand::fixupNodeStyles):
 
38661
        (khtml::ReplaceSelectionCommand::completeHTMLReplacement):
 
38662
        * khtml/rendering/render_box.cpp:
 
38663
        (RenderBox::destroy):
 
38664
        (RenderBox::deleteLineBoxWrapper):
 
38665
        * khtml/rendering/render_box.h:
 
38666
        * khtml/rendering/render_list.cpp:
 
38667
        (RenderListMarker::~RenderListMarker):
 
38668
        (RenderListMarker::setStyle):
 
38669
        * khtml/rendering/render_object.cpp:
 
38670
        (RenderObject::remove):
 
38671
        * khtml/rendering/render_object.h:
 
38672
        * khtml/rendering/render_replaced.cpp:
 
38673
        (RenderWidget::destroy):
 
38674
 
 
38675
2005-12-20  Adele Peterson  <adele@apple.com>
 
38676
 
 
38677
        Reviewed by Darin.
 
38678
 
 
38679
        Fixed http://bugs.webkit.org/show_bug.cgi?id=5911
 
38680
        REGRESSION: Page scroll position jumps when clicking on word in editable div
 
38681
 
 
38682
        I moved the scrolling code out of setFocusNode, and consolidated some of the focus code to scroll when necessary.
 
38683
 
 
38684
        * khtml/html/html_formimpl.cpp: Removed HTMLButtonElementImpl::blur, HTMLButtonElementImpl::focus, HTMLInputElementImpl::blur, HTMLInputElementImpl::focus.  
 
38685
        New code in ElementImpl::focus will now handle these cases.  This allows tabbing through the elements to go through the same code path as calling focus() on an element.  
 
38686
        Before, focus() would scroll to reveal for any form elements that had a RenderWidget, but wouldn't scroll for anchor elements, or any of the new form elements.  
 
38687
        Now the behavior will be more consistent.
 
38688
        (DOM::HTMLLabelElementImpl::focus): calls ElementImpl::focus.
 
38689
        (DOM::HTMLLegendElementImpl::focus): ditto.
 
38690
        * khtml/html/html_formimpl.h:
 
38691
        * khtml/khtml_part.cpp:
 
38692
        (KHTMLPart::selectAll): calls new function selectContentsOfNode
 
38693
        (KHTMLPart::selectContentsOfNode): factored out code to selectAll for a particular node- which is useful for contenteditable elements.
 
38694
        * khtml/khtml_part.h: added selectContentsOfNode
 
38695
        * khtml/xml/dom_docimpl.cpp:
 
38696
        (DocumentImpl::setFocusNode): removed scrolling code.
 
38697
        * khtml/xml/dom_elementimpl.cpp:
 
38698
        (ElementImpl::focus): Calls updateLayout in case focus() is called before there's a renderer.
 
38699
        Makes a selection for editable elements (right now we select all, but this will change).
 
38700
        Doesn't scroll if the renderer is a RenderWidget, since that is handled when the view becomes first responder.  This will go away when we convert the rest of our form elements.
 
38701
        * kwq/KWQKHTMLPart.mm:
 
38702
        (KWQKHTMLPart::revealSelection): Made this more like centerSelectionInVisibleArea  where we get the right rectangle if the selection is a caret.
 
38703
        (KWQKHTMLPart::nextKeyViewInFrame): call ElementImpl::focus() for the node.  This will set the selection too, which used to be done here.
 
38704
 
 
38705
2005-12-20  Alexey Proskuryakov  <ap@nypop.com>
 
38706
 
 
38707
        Reviewed by justin
 
38708
        
 
38709
        <http://bugs.webkit.org/show_bug.cgi?id=4682>
 
38710
        -[WebHTMLView firstRectForCharacterRange:] is using _selectedRange instead of the given range if no marked text
 
38711
 
 
38712
        Added layout tests:
 
38713
        * editing/input/firstrectforcharacterrange-styled
 
38714
        * editing/input/firstrectforcharacterrange-plain
 
38715
 
 
38716
        * khtml/editing/visible_text.cpp:
 
38717
        (khtml::TextIterator::rangeFromLocationAndLength): 
 
38718
        Return null if the range isn't found, instead of a startless/endless 
 
38719
        range.  Set the end if the requested location+length is out of bounds.
 
38720
        * kwq/WebCoreBridge.mm:
 
38721
        (-[WebCoreBridge convertToDOMRange:]): Handle larged unsigned values 
 
38722
        before calling rangeWithLocationAndLength, which expects signed ints.
 
38723
 
 
38724
2005-12-20  Adele Peterson  <adele@apple.com>
 
38725
 
 
38726
        Reviewed by Darin.
 
38727
 
 
38728
        Fix for <rdar://problem/4387630> REGRESSION: <select> element's onClick event doesn't fire @ bugweb.apple.com
 
38729
 
 
38730
        * kwq/KWQKHTMLPart.mm:
 
38731
        (KWQKHTMLPart::passSubframeEventToSubframe): only pass mouse down for khtmlviews.
 
38732
 
 
38733
2005-12-20  Justin Garcia  <justin.garcia@apple.com>
 
38734
 
 
38735
        Reviewed by eric, thatcher
 
38736
        
 
38737
        <rdar://problem/4172984> KWQExceptions needs to use @try/@catch instead of relying on NSException.h internals
 
38738
        
 
38739
        Needed to undef try/catch because of 4333439.  Moved the 
 
38740
        declarations of variables that are returned from within a @try 
 
38741
        block outside the @try block (because of "might be clobbered by 
 
38742
        a longjmp or vfork" warnings).  Moved some return statements
 
38743
        inside the @try block to fix volatilization errors with gcc4.
 
38744
 
 
38745
        * WebCore.xcodeproj/project.pbxproj:
 
38746
        * WebCorePrefix.h:
 
38747
        * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
 
38748
        (KCanvasFEBlendQuartz::getCIFilter):
 
38749
        (KCanvasFEColorMatrixQuartz::getCIFilter):
 
38750
        (KCanvasFECompositeQuartz::getCIFilter):
 
38751
        (getPointLightVectors):
 
38752
        (getLightVectors):
 
38753
        (getNormalMap):
 
38754
        (KCanvasFEDiffuseLightingQuartz::getCIFilter):
 
38755
        (KCanvasFEFloodQuartz::getCIFilter):
 
38756
        (KCanvasFEImageQuartz::getCIFilter):
 
38757
        (KCanvasFEMergeQuartz::getCIFilter):
 
38758
        (KCanvasFESpecularLightingQuartz::getCIFilter):
 
38759
        * kwq/KWQExceptions.h:
 
38760
        * kwq/KWQExceptions.mm:
 
38761
        (KWQReportBlockedException):
 
38762
        * kwq/KWQFileButton.mm:
 
38763
        (KWQFileButton::sizeForCharacterWidth):
 
38764
        (KWQFileButton::frameGeometry):
 
38765
        * kwq/KWQKCursor.mm:
 
38766
        (+[NSCursor _WebCore_cursorWithName:hotSpot:_WebCore_cursorWithName:hotSpot:]):
 
38767
        * kwq/KWQKHTMLPart.mm:
 
38768
        (KWQKHTMLPart::createPart):
 
38769
        (KWQKHTMLPart::nextKeyView):
 
38770
        (KWQKHTMLPart::runJavaScriptPrompt):
 
38771
        (KWQKHTMLPart::keyEvent):
 
38772
        (KWQKHTMLPart::sendContextMenuEvent):
 
38773
        (KWQKHTMLPart::fileWrapperForElement):
 
38774
        (KWQKHTMLPart::attributedString):
 
38775
        (KWQKHTMLPart::imageFromRect):
 
38776
        * kwq/KWQKHTMLPartBrowserExtension.mm:
 
38777
        * kwq/KWQLineEdit.mm:
 
38778
        (QLineEdit::sizeForCharacterWidth):
 
38779
        * kwq/KWQListBox.mm:
 
38780
        (QListBox::sizeForNumberOfLines):
 
38781
        * kwq/KWQLoader.mm:
 
38782
        (KWQCheckCacheObjectStatus):
 
38783
        * kwq/KWQWidget.mm:
 
38784
        (QWidget::frameGeometry):
 
38785
        (QWidget::mapFromGlobal):
 
38786
 
 
38787
2005-12-20  David Harrison  <harrison@apple.com>
 
38788
 
 
38789
        <rdar://problem/4294417> Cannot un-italicize some text after triple clicking it
 
38790
 
 
38791
        Reviewed by Justin.
 
38792
 
 
38793
        * khtml/editing/apply_style_command.cpp:
 
38794
        (khtml::ApplyStyleCommand::addInlineStyleIfNeeded):
 
38795
        Removed check for tab span because ApplyStyleCommand::removeCSSStyle() already makes the same check.
 
38796
 
 
38797
2005-12-20  Justin Garcia  <justin.garcia@apple.com>
 
38798
 
 
38799
        <rdar://problem/4387270> editing/deleting/delete-3800834-fix failing
 
38800
        <http://bugs.webkit.org/show_bug.cgi?id=6160> REGRESSION: Crash when running editing/deleting/delete-3800834-fix.html
 
38801
        <http://bugs.webkit.org/show_bug.cgi?id=6161> REGRESSION: crash when pressing tab in editable WebHTMLView
 
38802
 
 
38803
        Reviewed by darin
 
38804
    
 
38805
        Some callers call setAttribute on a floating element.  So, using 
 
38806
        a RefPtr for the element inside addAttribute can destroy
 
38807
        it.
 
38808
 
 
38809
        * khtml/xml/dom_elementimpl.cpp:
 
38810
        (NamedAttrMapImpl::addAttribute):
 
38811
 
 
38812
2005-12-20  Maciej Stachowiak  <mjs@apple.com>
 
38813
 
 
38814
        Reviewed by Darin.
 
38815
 
 
38816
        - fixed leak in createAttributeMap
 
38817
        http://bugs.webkit.org/show_bug.cgi?id=6162
 
38818
 
 
38819
        * khtml/xml/dom_elementimpl.cpp:
 
38820
        (StyledElementImpl::createAttributeMap): the new attribute map
 
38821
        is going in a RefPtr, don't also ref it manually.
 
38822
 
 
38823
2005-12-20  Maciej Stachowiak  <mjs@apple.com>
 
38824
 
 
38825
        Reviewed by Darin.
 
38826
 
 
38827
        - change an assignment to a contructor declaration to build with PassRefPtr
 
38828
        leak fix changes
 
38829
 
 
38830
        * ksvg2/svg/SVGTransformableImpl.cpp:
 
38831
        (SVGTransformableImpl::parseTransformAttribute):
 
38832
 
 
38833
2005-12-20  Geoffrey Garen  <ggaren@apple.com>
 
38834
 
 
38835
        Reviewed by John.
 
38836
 
 
38837
        Fixed <rdar://problem/4310363> JavaScript window.open: Height is 1 
 
38838
        pixel short, and related bugs.
 
38839
 
 
38840
        There were a few bugs here.
 
38841
        (1) Our code took size arguments and applied them to the window's
 
38842
            content rect. That's incorrect. The Rhino book says the arguments 
 
38843
            should apply to the WebView. Other things that occupy the content 
 
38844
            rect include the tab bar, the status bar, and the 1 pixel border 
 
38845
            between brushed metal and document. All of these used to impinge 
 
38846
            on the web page's display area.
 
38847
 
 
38848
            The fix is to calculate sizing based on the WebView instead of
 
38849
            the content rect. This means that the webViewContentRect and 
 
38850
            setContentRect delegate methods are obsolete and no longer called
 
38851
            by any of our code. (setContentRect was never called in the 
 
38852
            first place.)
 
38853
 
 
38854
        (2) None of our sizing accounted for scaled resolutions.
 
38855
 
 
38856
            The fix is to ask the WebView to scale all coordintes for us.
 
38857
 
 
38858
        (3) Our code assumed that all window accoutrements were on by default.
 
38859
            Safari works that way, but other WebKit clients might not.
 
38860
 
 
38861
            The fix is always to explicitly set an on/off state.
 
38862
        
 
38863
        (a) To facilitate scaling, I added a new bridge method, webView, to 
 
38864
        access the webView.
 
38865
 
 
38866
        (b) For internal consistency, I changed ___Bars to ___bars in bridge 
 
38867
        methods, and ___bars to ___Bars in WinArgs data members. (Interestingly,
 
38868
        the different classes in our code are evenly divided on which format to 
 
38869
        use.)
 
38870
        
 
38871
        Added manual test:
 
38872
        * manual-tests/window-open-features.html: Added.
 
38873
        * manual-tests/resources/200x200.png: Added.
 
38874
        * manual-tests/resources/popup200x200.html: Added.
 
38875
 
 
38876
        * khtml/ecma/kjs_window.cpp:
 
38877
        (KJS::showModalDialog): see (b)
 
38878
        (KJS::WindowFunc::callAsFunction): see (b)
 
38879
        * kwq/KWQKHTMLPart.mm:
 
38880
        (KWQKHTMLPart::statusbarVisible): see (b)
 
38881
        * kwq/KWQKHTMLPartBrowserExtension.mm:
 
38882
        (KHTMLPartBrowserExtension::createNewWindow):
 
38883
        At the top of this method, I just did some formatting cleanup and
 
38884
        moved the 'referrer' variable closer to where it's used.
 
38885
        The changes in the middle of the method are (3), the bottom, (2).
 
38886
        * kwq/KWQKPartsBrowserExtension.h:
 
38887
        (KParts::WindowArgs::WindowArgs): see (b)
 
38888
        * kwq/WebCoreBridge.h: see (a)
 
38889
 
 
38890
2005-12-20  Eric Seidel  <eseidel@apple.com>
 
38891
 
 
38892
        Reviewed by mjs.
 
38893
 
 
38894
        Leaks when running SVG tests
 
38895
        http://bugs.webkit.org/show_bug.cgi?id=6156
 
38896
        No additional tests necessary, leaks already caught by other tests.
 
38897
 
 
38898
        * kcanvas/KCanvasFilters.cpp:
 
38899
        (KCanvasFEDiffuseLighting::setLightSource): takes ownership
 
38900
        (KCanvasFESpecularLighting::setLightSource): takes ownership
 
38901
        * kcanvas/KCanvasFilters.h:
 
38902
        (KCanvasFEDiffuseLighting::KCanvasFEDiffuseLighting): added
 
38903
        (KCanvasFEDiffuseLighting::~KCanvasFEDiffuseLighting): added
 
38904
        (KCanvasFEDiffuseLighting::lightSource): fixed spacing
 
38905
        (KCanvasFESpecularLighting::KCanvasFESpecularLighting): added
 
38906
        (KCanvasFESpecularLighting::~KCanvasFESpecularLighting): added
 
38907
        (KCanvasFESpecularLighting::lightSource): fixed spacing
 
38908
        * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
 
38909
        (KRenderingDeviceQuartz::stringForPath): added missing CFRelease
 
38910
 
 
38911
2005-12-20  Eric Seidel  <eseidel@apple.com>
 
38912
 
 
38913
        Reviewed by darin.
 
38914
 
 
38915
        Remove additional bit-rotted DEBUG* ifdefs from WebCore.
 
38916
        This removes PARSER_DEBUG, FORMS_DEBUG and CSS_STYLESHEET_DEBUG.
 
38917
        http://bugs.webkit.org/show_bug.cgi?id=5931
 
38918
        No tests possible, only removing dead code.
 
38919
 
 
38920
        * khtml/css/css_stylesheetimpl.cpp:
 
38921
        (CSSStyleSheetImpl::parseString):
 
38922
        (CSSStyleSheetImpl::isLoading):
 
38923
        * khtml/html/html_formimpl.cpp:
 
38924
        (DOM::HTMLFormElementImpl::formData):
 
38925
        (DOM::HTMLFormElementImpl::submit):
 
38926
        (DOM::HTMLFormElementImpl::reset):
 
38927
        (DOM::HTMLGenericFormElementImpl::getForm):
 
38928
        * khtml/html/htmlparser.cpp:
 
38929
        (HTMLParser::processCloseTag):
 
38930
        (HTMLParser::createHead):
 
38931
 
 
38932
2005-12-20  Eric Seidel  <eseidel@apple.com>
 
38933
 
 
38934
        Reviewed by darin.
 
38935
 
 
38936
        Move Decoder onto Shared<T> and clients onto RefPtr.
 
38937
        http://bugs.webkit.org/show_bug.cgi?id=6107
 
38938
        No test cases possible, no functional changes.
 
38939
 
 
38940
        * khtml/ecma/XSLTProcessor.cpp:
 
38941
        (KJS::XSLTProcessorProtoFunc::callAsFunction):
 
38942
        * khtml/ecma/xmlhttprequest.cpp:
 
38943
        (KJS::XMLHttpRequest::XMLHttpRequest):
 
38944
        (KJS::XMLHttpRequest::~XMLHttpRequest):
 
38945
        (KJS::XMLHttpRequest::changeState):
 
38946
        (KJS::XMLHttpRequest::abort):
 
38947
        (KJS::XMLHttpRequest::slotFinished):
 
38948
        (KJS::XMLHttpRequest::slotData):
 
38949
        * khtml/ecma/xmlhttprequest.h:
 
38950
        * khtml/khtml_part.cpp:
 
38951
        (KHTMLPart::clear):
 
38952
        (KHTMLPart::begin):
 
38953
        (KHTMLPart::write):
 
38954
        * khtml/khtmlpart_p.h:
 
38955
        (KHTMLPartPrivate::KHTMLPartPrivate):
 
38956
        * khtml/misc/decoder.cpp:
 
38957
        (Decoder::Decoder):
 
38958
        (Decoder::~Decoder):
 
38959
        * khtml/misc/decoder.h:
 
38960
        * khtml/misc/loader.h:
 
38961
        * khtml/xml/dom_docimpl.cpp:
 
38962
        (DocumentImpl::DocumentImpl):
 
38963
        (DocumentImpl::~DocumentImpl):
 
38964
        (DocumentImpl::prepareMouseEvent):
 
38965
        (DocumentImpl::setDecoder):
 
38966
        * khtml/xml/dom_docimpl.h:
 
38967
        (DOM::DocumentImpl::decoder):
 
38968
        * khtml/xsl/xslt_processorimpl.cpp:
 
38969
        (DOM::XSLTProcessorImpl::createDocumentFromSource):
 
38970
 
 
38971
2005-12-19  Darin Adler  <darin@apple.com>
 
38972
 
 
38973
        Reviewed by Maciej.
 
38974
 
 
38975
        - fix http://bugs.webkit.org/show_bug.cgi?id=6143
 
38976
          DOM::ElementImpl should use a RefPtr for the attribute map
 
38977
 
 
38978
        * khtml/xml/dom_elementimpl.cpp:
 
38979
        (ElementImpl::ElementImpl): Remove code to initialize the pointer; not needed since
 
38980
        RefPtr gets initialized to 0.
 
38981
        (ElementImpl::~ElementImpl): Remove code to deref the pointer; RefPtr handles that.
 
38982
        (ElementImpl::attributes): Add get() call to get raw pointer.
 
38983
        (ElementImpl::setAttributeMap): Remove code to deref the old map and set the new map.
 
38984
        But added code to clear the element pointer from the old map (missing in the old
 
38985
        version). Also added a FIXME.
 
38986
        (ElementImpl::createAttributeMap): Remove ref(); RefPtr handles that.
 
38987
        (NamedAttrMapImpl::addAttribute): Use a RefPtr to guarantee the element does not go
 
38988
        away in the middle of dispatching DOM events.
 
38989
        (StyledElementImpl::attributeChanged): Clean up code by using the inline function
 
38990
        mappedAttributes() instead of doing type casts.
 
38991
        (StyledElementImpl::parseMappedAttribute): Ditto.
 
38992
        (StyledElementImpl::getClassList): Ditto.
 
38993
 
 
38994
        * khtml/xml/dom_elementimpl.h: Make ElementImpl::namedAttrMap be a RefPtr instead
 
38995
        of raw pointer. Added an overload of StyledElementImpl::mappedAttributes for both
 
38996
        const and non-const.
 
38997
 
 
38998
        * khtml/xml/dom_nodeimpl.cpp: (DOM::NodeImpl::addChild): Use a RefPtr to ref/deref
 
38999
        the child so that it doesn't leak.
 
39000
 
 
39001
        * khtml/html/htmlparser.h: Changed isindex to use a RefPtr.
 
39002
        * khtml/html/htmlparser.cpp:
 
39003
        (HTMLParser::~HTMLParser): Removed now-unneeded ref.
 
39004
        (HTMLParser::isindexCreateErrorCheck): Remove now-unneeded deref/ref.
 
39005
        (HTMLParser::handleIsindex): Put isindex element into a RefPtr. This prevents a
 
39006
        crash that was otherwise happening during layout tests (caused indirectly by
 
39007
        the changes above).
 
39008
        (HTMLParser::startBody): Added call to get().
 
39009
 
 
39010
2005-12-19  Darin Adler  <darin@apple.com>
 
39011
 
 
39012
        Reviewed by Geoff Garen and Eric Seidel.
 
39013
 
 
39014
        - fix http://bugs.webkit.org/show_bug.cgi?id=4923
 
39015
          stop using <ostream> in WebCore, eliminating the <cmath> troubles it causes
 
39016
 
 
39017
        * ForwardingHeaders/kxmlcore/AlwaysInline.h: Added.
 
39018
        * WebCorePrefix.h: Removed the use of <ostream>.
 
39019
 
 
39020
        * kwq/KWQDef.h: Removed now-unused Q_INT64, Q_INT16, Q_UINT16, qRound, and _KWQ_IOSTREAM_.
 
39021
 
 
39022
        * kwq/KWQKHTMLPart.h: Removed some unneeded headers and added forward-declarations of classes
 
39023
        instead. Corrected some incorrect member function declarations.
 
39024
        * kwq/KWQKHTMLPart.mm: Added a now-needed header.
 
39025
 
 
39026
        * khtml/ecma/kjs_window.cpp: Removed the <cmath> workaround.
 
39027
        * khtml/rendering/bidi.cpp: Added include of AlwaysInline.h and removed a
 
39028
        lot of unnecessary includes.
 
39029
        * khtml/rendering/render_canvasimage.cpp: Removed the <cmath> workaround.
 
39030
        * khtml/rendering/render_image.cpp: Removed the <cmath> workaround.
 
39031
        * khtml/rendering/render_text.cpp: Added include of AlwaysInline.h and removed a
 
39032
        lot of unnecessary includes.
 
39033
 
 
39034
        * ksvg2/css/SVGCSSStyleSelector.cpp: (KDOM::CSSStyleSelector::applySVGProperty):
 
39035
        * ksvg2/svg/SVGAnimateColorElementImpl.cpp: (SVGAnimateColorElementImpl::calculateColor):
 
39036
        * ksvg2/svg/SVGAnimateTransformElementImpl.cpp: (SVGAnimateTransformElementImpl::handleTimerEvent):
 
39037
        * ksvg2/svg/SVGAnimationElementImpl.cpp: (SVGAnimationElementImpl::closeRenderer):
 
39038
        * ksvg2/svg/SVGLinearGradientElementImpl.cpp: (SVGLinearGradientElementImpl::buildGradient):
 
39039
        * ksvg2/svg/SVGPatternElementImpl.cpp: (SVGPatternElementImpl::notifyAttributeChange):
 
39040
        * ksvg2/svg/SVGRadialGradientElementImpl.cpp: (SVGRadialGradientElementImpl::buildGradient):
 
39041
        Replaced use of qRound with use of lroundf or lround as appropriate.
 
39042
 
 
39043
        * kwq/KWQCString.h:
 
39044
        * kwq/KWQCString.mm:
 
39045
        * kwq/KWQDateTime.h:
 
39046
        * kwq/KWQDateTime.mm:
 
39047
        * kwq/KWQMap.h:
 
39048
        * kwq/KWQMemArray.h:
 
39049
        * kwq/KWQPoint.mm:
 
39050
        * kwq/KWQPointArray.h:
 
39051
        * kwq/KWQPtrList.h:
 
39052
        * kwq/KWQPtrStack.h:
 
39053
        * kwq/KWQPtrVector.h:
 
39054
        * kwq/KWQRect.h:
 
39055
        * kwq/KWQRect.mm:
 
39056
        * kwq/KWQSize.h:
 
39057
        * kwq/KWQSize.mm:
 
39058
        * kwq/KWQValueList.h:
 
39059
        Removed _KWQ_IOSTREAM_ code that was used at one time for unit tests, but is now unneeded,
 
39060
        and requires <ostream>.
 
39061
 
 
39062
2005-12-19  Darin Adler  <darin@apple.com>
 
39063
 
 
39064
        Reviewed by Geoff Garen and John Sullivan.
 
39065
 
 
39066
        - fix http://bugs.webkit.org/show_bug.cgi?id=4312
 
39067
          XMLHttpRequest headers that have two CRLF sequences lead to Obj-C exception
 
39068
 
 
39069
        I found this by code inspection after examining a security report about
 
39070
        vulnerabilities in other browsers' XMLHttpRequest implementations.
 
39071
 
 
39072
        * kwq/KWQLoader.mm:
 
39073
        (+[NSDictionary _webcore_dictionaryWithHeaderString:_webcore_dictionaryWithHeaderString:]):
 
39074
        Check length of string before calling characterAtIndex:0 since it will fail for an empty string.
 
39075
 
 
39076
2005-12-19  Mitz Pettel  <opendarwin.org@mitzpettel.com>
 
39077
 
 
39078
        Reviewed by Beth
 
39079
 
 
39080
        - fix http://bugs.webkit.org/show_bug.cgi?id=6149
 
39081
          REGRESSION (WebCore-417.5): horizontal scrollbar in overflow with top
 
39082
          border doesn't receive mouse events
 
39083
 
 
39084
        * khtml/rendering/render_block.cpp:
 
39085
        (khtml::RenderBlock::isPointInScrollbar):
 
39086
        Removed borderTop() from horizontal scrollbar rect computation.
 
39087
        * manual-tests/scrollbar-hittest2.html: Added.
 
39088
 
 
39089
2005-12-19  Alexey Proskuryakov  <ap@nypop.com>
 
39090
 
 
39091
        Reviewed by Darin, committed by Adele.
 
39092
 
 
39093
        - fix http://bugs.webkit.org/show_bug.cgi?id=5744
 
39094
          XMLHttpRequest does not apply page encoding after assigning via innerHtml
 
39095
 
 
39096
        * khtml/ecma/xmlhttprequest.cpp:
 
39097
        (getMIMEType): A helper function to get MIME type from a Content-Type string.
 
39098
        (getCharset): A helper function to get charset from a Content-Type string.
 
39099
        (KJS::XMLHttpRequest::getValueProperty): Factored out responseIsXML().
 
39100
        (KJS::XMLHttpRequest::getResponseHeader): Return QString instead of JSValue
 
39101
          (to get rid of unnecessary JSLocks).
 
39102
        (KJS::XMLHttpRequest::responseIsXML): A new method that analyses Content-Type.
 
39103
        (KJS::XMLHttpRequest::slotData): Use a correct charset for responses, see bug for details.
 
39104
        (KJS::XMLHttpRequestProtoFunc::callAsFunction): Update for getResponseHeader() changes
 
39105
        * khtml/ecma/xmlhttprequest.h:
 
39106
 
 
39107
== Rolled over to ChangeLog-2005-12-19 ==