2007-10-18 Eric Seidel <eric@webkit.org>
[WebKit-https.git] / WebCore / ChangeLog
1 2007-10-18  Eric Seidel  <eric@webkit.org>
2
3         Reviewed by Maciej.
4
5         Fix crashers in SVGViewSpec::parseViewSpec
6         http://bugs.webkit.org/show_bug.cgi?id=15504
7
8         Test is blocked by bug 15503, landed as:
9         * svg/dom/viewspec-parser.html-disabled
10
11         * bindings/scripts/CodeGeneratorObjC.pm: support classes where all parents are interfaces
12         * ksvg2/svg/SVGViewSpec.cpp:
13         (WebCore::SVGViewSpec::parseViewSpec):
14         * ksvg2/svg/SVGViewSpec.idl: Added.
15
16 2007-10-17  Rob Buis  <buis@kde.org>
17
18         Reviewed by Darin, Adam, and Maciej.
19
20         http://bugs.webkit.org/show_bug.cgi?id=12988
21         First element (in document order) is not returned when other duplicate ID-ed elements were created first
22
23         Reset the element id cache when an id is added and there is a duplicate for that id.
24
25         * dom/Document.cpp:
26         (WebCore::Document::addElementById):
27
28 2007-10-17  Mark Rowe  <mrowe@apple.com>
29
30         Mac build fix.
31
32         * Configurations/WebCore.xcconfig:  Make it possible to include CoreGraphics header files.
33
34 2007-10-17  Adam Roben  <aroben@apple.com>
35
36         Fix an ASSERT on launch on Windows
37
38         Fix dictated to me by Brady.
39
40         * loader/icon/IconDatabase.cpp:
41         (WebCore::IconDatabase::syncThreadMainLoop): Make sure we hold
42         m_syncLock before going into the loop.
43
44 2007-10-17  Adam Roben  <aroben@apple.com>
45
46         Windows build fix
47
48         Reviewed by NOBODY.
49
50         * platform/graphics/AffineTransform.h: Don't #include
51         ApplicationServices.h.
52         * platform/graphics/cg/GraphicsContextCG.cpp: Add an #include that's
53         needed now that we're not #including ApplicationServices.h.
54
55 2007-10-17  Mark Rowe  <mrowe@apple.com>
56
57         Gtk build fix.  Move non-pthread stubs from Threading.h to ThreadingNone.cpp to prevent
58         multiple-definition link errors.
59
60         * WebCore.pro:
61         * platform/Threading.h:
62         * platform/ThreadingNone.cpp: Added.
63         (WebCore::createThread):
64         (WebCore::waitForThreadCompletion):
65         (WebCore::detachThread):
66         (WebCore::Mutex::Mutex):
67         (WebCore::Mutex::~Mutex):
68         (WebCore::Mutex::lock):
69         (WebCore::Mutex::tryLock):
70         (WebCore::Mutex::unlock):
71         (WebCore::ThreadCondition::ThreadCondition):
72
73 2007-10-17  Anders Carlsson  <andersca@apple.com>
74
75         Reviewed by Oliver.
76
77         * WebCore.xcodeproj/project.pbxproj:
78         * WebCore.vcproj/WebCore.vcproj:
79         
80         * config.h:
81         #define USE_PTHREADS on Windows.
82         
83         * loader/icon/IconDatabase.cpp:
84         (WebCore::IconDatabase::getOrCreateIconRecord):
85         (WebCore::IconDatabase::getOrCreatePageURLRecord):
86         Update for mutex changes.
87         
88         * platform/Threading.h:
89         (WebCore::):
90         (WebCore::ThreadSafeShared::ThreadSafeShared):
91         (WebCore::ThreadSafeShared::ref):
92         (WebCore::ThreadSafeShared::deref):
93         (WebCore::ThreadSafeShared::hasOneRef):
94         (WebCore::ThreadSafeShared::refCount):
95         (WebCore::ThreadSafeShared::isThreadSafe):
96         Add a new Shared base class that uses a mutex to manage its refcount.
97         
98         (WebCore::createThread):
99         (WebCore::waitForThreadCompletion):
100         (WebCore::detachThread):
101         New functions for thread creation.
102         
103         (WebCore::Mutex::Mutex):
104         (WebCore::Mutex::~Mutex):
105         (WebCore::Mutex::lock):
106         (WebCore::Mutex::tryLock):
107         (WebCore::Mutex::unlock):
108         Move the definitions to ThreadingPthreads.cpp
109         
110         (WebCore::ThreadCondition::ThreadCondition):
111         (WebCore::ThreadCondition::~ThreadCondition):
112         (WebCore::ThreadCondition::wait):
113         (WebCore::ThreadCondition::signal):
114         (WebCore::ThreadCondition::broadcast):
115         Move the definitions to ThreadingPthreads.cpp
116         
117         * platform/pthreads: Added.
118         * platform/pthreads/ThreadingPthreads.cpp: Added.
119         Add pthread specific implementation of the thread creation functions, Mutex and ThreadCondition.
120
121 2007-10-17  David Hyatt  <hyatt@apple.com>
122
123         Add support for creating a layer when a transform is in effect.  Add support to RenderStyle for
124         handing back a computed AffineTransform.
125
126         Reviewed by Mitz Pettel
127
128         * css/CSSStyleSelector.cpp:
129         (WebCore::CSSStyleSelector::adjustRenderStyle):
130         * rendering/RenderBox.cpp:
131         (WebCore::RenderBox::setStyle):
132         * rendering/RenderObject.cpp:
133         (WebCore::RenderObject::RenderObject):
134         (WebCore::RenderObject::requiresLayer):
135         (WebCore::RenderObject::setStyle):
136         * rendering/RenderObject.h:
137         (WebCore::RenderObject::hasTransform):
138         (WebCore::RenderObject::setHasTransform):
139         * rendering/RenderStyle.cpp:
140         (WebCore::RenderStyle::applyTransform):
141         * rendering/RenderStyle.h:
142         (WebCore::RenderStyle::hasTransform):
143         * rendering/RenderTableCell.cpp:
144         (WebCore::RenderTableCell::requiresLayer):
145         * rendering/RenderTableRow.h:
146         (WebCore::RenderTableRow::requiresLayer):
147
148 2007-10-17  David Hyatt  <hyatt@apple.com>
149
150         Add support for mapping of the transform CSS property into RenderStyles.  Everything is now ready for the front
151         end to use.
152
153         Reviewed by Mitz Pettel
154
155         * WebCore.xcodeproj/project.pbxproj:
156         * css/CSSStyleSelector.cpp:
157         (WebCore::CSSStyleSelector::applyProperty):
158         * css/CSSTransformValue.h:
159         (WebCore::CSSTransformValue::type):
160         (WebCore::CSSTransformValue::values):
161         * platform/graphics/AffineTransform.cpp:
162         (WebCore::AffineTransform::skew):
163         * platform/graphics/AffineTransform.h:
164         * rendering/RenderStyle.cpp:
165         (WebCore::StyleTransformData::StyleTransformData):
166         (WebCore::StyleTransformData::operator==):
167         (WebCore::StyleTransformData::transformDataEquivalent):
168         * rendering/RenderStyle.h:
169         (WebCore::TransformOperation::~TransformOperation):
170         (WebCore::TransformOperation::operator!=):
171         (WebCore::TransformOperation::isScaleOperation):
172         (WebCore::TransformOperation::isRotateOperation):
173         (WebCore::TransformOperation::isSkewOperation):
174         (WebCore::TransformOperation::isTranslateOperation):
175         (WebCore::TransformOperation::isMatrixOperation):
176         (WebCore::ScaleTransformOperation::ScaleTransformOperation):
177         (WebCore::ScaleTransformOperation::isScaleOperation):
178         (WebCore::ScaleTransformOperation::operator==):
179         (WebCore::ScaleTransformOperation::apply):
180         (WebCore::RotateTransformOperation::RotateTransformOperation):
181         (WebCore::RotateTransformOperation::isRotateOperation):
182         (WebCore::RotateTransformOperation::operator==):
183         (WebCore::RotateTransformOperation::apply):
184         (WebCore::SkewTransformOperation::SkewTransformOperation):
185         (WebCore::SkewTransformOperation::isSkewOperation):
186         (WebCore::SkewTransformOperation::operator==):
187         (WebCore::SkewTransformOperation::apply):
188         (WebCore::TranslateTransformOperation::TranslateTransformOperation):
189         (WebCore::TranslateTransformOperation::isTranslateOperation):
190         (WebCore::TranslateTransformOperation::operator==):
191         (WebCore::TranslateTransformOperation::apply):
192         (WebCore::MatrixTransformOperation::MatrixTransformOperation):
193         (WebCore::MatrixTransformOperation::isMatrixOperation):
194         (WebCore::MatrixTransformOperation::operator==):
195         (WebCore::MatrixTransformOperation::apply):
196         (WebCore::StyleTransformData::operator!=):
197         (WebCore::RenderStyle::transform):
198         (WebCore::RenderStyle::setTransform):
199         (WebCore::RenderStyle::initialTransform):
200
201 2007-10-17  Adam Roben  <aroben@apple.com>
202
203         * page/Frame.cpp: I had to touch this file when fixing the Windows
204         build. Checking it in in case it helps others, too.
205
206 2007-10-17  Eric Seidel  <eric@webkit.org>
207
208         Reviewed by Mark Rowe.
209         
210         Remove a couple more uses of svg_dynamic_cast.
211
212         No functional changes, no tests.
213
214         * ksvg2/svg/SVGPatternElement.cpp:
215         (WebCore::SVGPatternElement::buildPattern):
216
217 2007-10-17  Mark Rowe  <mrowe@apple.com>
218
219         Reviewed by Eric and Geoff.
220
221         <rdar://problem/5453743> Repro ASSERT in CachedResource::setEncodedSize() loading image in background tab
222         http://bugs.webkit.org/show_bug.cgi?id=15191
223
224         * loader/DocLoader.cpp:
225         (WebCore::DocLoader::setAutoLoadImages): Don't start a load if the CachedImage is already loading.
226
227 2007-10-17  Justin Garcia  <justin.garcia@apple.com>
228
229         Reviewed by Harrison.
230         
231         <rdar://problem/5481523> 
232         GoogleDocs: Safari hangs when indenting a particular table twice
233         
234         Fixed by fixing problems with the selection preservation done by IndentOutdentCommand.
235         It is now more difficult to create selections that cause hangs.  Those are covered by:
236         <rdar://problem/5543472>
237
238         * editing/IndentOutdentCommand.cpp:
239         (WebCore::indexForVisiblePosition): Compute indices from the first VisiblePosition
240         in the document, instead of the first Position.
241         Use rangeCompliantEquivalents when creating the Range that we pass to rangeLength.
242         Tell TextIterator::rangeLength that we're doing selection preservation, so that it
243         will emit characters between all VisiblePositions.
244         (WebCore::IndentOutdentCommand::indentRegion): Fixed a bug where the range and location
245         passed to rangeFromLocationAndLength were reversed.
246         Tell rangeFromLocationAndLength that we're doing doing selection preservation, as
247         above.
248         * editing/TextIterator.cpp:
249         (WebCore::CharacterIterator::CharacterIterator): 
250         (WebCore::TextIterator::rangeLength): Rename emitSpacesForReplacedElements
251         to forSelectionPreservation, to match the name of the boolean inside TextIterator and
252         to match its meaning after r25522.
253         (WebCore::TextIterator::rangeFromLocationAndLength): Ditto.
254
255 2007-10-16  Darin Adler  <darin@apple.com>
256
257         Reviewed by Mitz.
258
259         - fix http://bugs.webkit.org/show_bug.cgi?id=15536
260           need to cache missing glyph so we're not slow on pages that show missing glyphs
261
262         - <rdar://problem/5404359> UI thread stall (>60sec) in MLANG running stress test
263           (related to font data caching)
264
265         * platform/Font.cpp: (WebCore::Font::glyphDataForCharacter): Check for a null value
266         for fontData rather than for glyph to detect non-cached entries in the glyph data.
267
268         * platform/gtk/GlyphPageTreeNodeGtk.cpp: (WebCore::GlyphPage::fill):
269         * platform/mac/GlyphPageTreeNodeMac.cpp: (WebCore::GlyphPage::fill):
270         * platform/win/GlyphPageTreeNodeWin.cpp: (WebCore::GlyphPage::fill):
271         Set fontData to 0 for missing glyph entries. Also fixed the Windows and GTK versions
272         to return the proper value for haveGlyphs.
273
274 2007-10-16  Mark Rowe  <mrowe@apple.com>
275
276         Gtk build fix.  Replace use of assert with ASSERT_NOT_REACHED.
277
278         * platform/gtk/FontCacheGtk.cpp:
279         (WebCore::FontCache::platformInit):
280
281 2007-10-16  Darin Adler  <darin@apple.com>
282
283         Reviewed by Adam.
284
285         - fix http://bugs.webkit.org/show_bug.cgi?id=15534
286           WebScriptObject.h has some formatting and editorial mistakes
287
288         * bindings/objc/WebScriptObject.h: Fix wording and formatting.
289
290 2007-10-16  Darin Adler  <darin@apple.com>
291
292         - try to fix the Qt build
293
294         * config.h: Don't use DisallowCType.h, since it's incompatible with some C++ headers
295         that are used in some Qt-specific source files.
296
297 2007-10-16  Darin Adler  <darin@apple.com>
298
299         Reviewed by Adele.
300
301         - fix http://bugs.webkit.org/show_bug.cgi?id=15525
302           transpose (control-T) should do the last two characters on a line if at end of line
303         - remove unused CommandByName class
304         - move transpose command implementation here from Mac OS X WebKit
305
306         * editing/Editor.h:
307         * editing/Editor.cpp:
308         (WebCore::execTranspose): Added.
309         (WebCore::Editor::transpose): Added. This has the transpose implementation from
310         WebCoreFrameBridge and WebHTMLView, translated into WebCore-style C++ and with
311         a special case for the end of a paragraph.
312
313         * page/Frame.h: Removed unused command() function member.
314         * page/FramePrivate.h: Removed unused m_command data member.
315         * page/Frame.cpp: Ditto.
316
317         * page/mac/WebCoreFrameBridge.h: Removed rangeOfCharactersAroundCaret method.
318         * page/mac/WebCoreFrameBridge.mm: Ditto.
319
320         * WebCore.pro: Removed CommandByName.h/cpp.
321         * WebCore.vcproj/WebCore.vcproj: Ditto.
322         * WebCore.xcodeproj/project.pbxproj: Ditto.
323
324         * editing/CommandByName.cpp: Removed.
325         * editing/CommandByName.h: Removed.
326
327 2007-10-16  Darin Adler  <darin@apple.com>
328
329         Reviewed by Maciej and Geoff (and looked over by Eric).
330
331         - http://bugs.webkit.org/show_bug.cgi?id=15519
332           eliminate use of <ctype.h> for processing ASCII
333
334         * ForwardingHeaders/wtf/ASCIICType.h: Added.
335         * ForwardingHeaders/wtf/DisallowCType.h: Added.
336
337         * WebCorePrefix.h: Get rid of inclusion of <ctype.h>.
338         * config.h: Include DisallowCType.h.
339
340         * css/CSSParser.cpp:
341         (WebCore::ParseString::lower):
342         * css/CSSPrimitiveValue.cpp:
343         (WebCore::isCSSTokenizerIdentifier):
344         * css/CSSStyleDeclaration.cpp:
345         (WebCore::propertyID):
346         * html/HTMLSelectElement.cpp:
347         (WebCore::stripLeadingWhiteSpace):
348         * html/HTMLTokenizer.cpp:
349         (WebCore::tagMatch):
350         * loader/FTPDirectoryParser.cpp:
351         (WebCore::parseOneFTPLine):
352         * loader/TextResourceDecoder.cpp:
353         (WebCore::TextResourceDecoder::checkForHeadCharset):
354         * platform/DeprecatedCString.cpp:
355         (WebCore::DeprecatedCString::lower):
356         (WebCore::DeprecatedCString::upper):
357         (WebCore::DeprecatedCString::find):
358         (WebCore::DeprecatedCString::contains):
359         * platform/DeprecatedString.cpp:
360         (WebCore::equalCaseInsensitive):
361         (WebCore::isCharacterAllowedInBase):
362         (WebCore::DeprecatedString::find):
363         (WebCore::DeprecatedString::contains):
364         (WebCore::toIntegralType):
365         * platform/DeprecatedString.h:
366         (WebCore::DeprecatedChar::isSpace):
367         (WebCore::DeprecatedChar::lower):
368         (WebCore::DeprecatedChar::upper):
369         * platform/KURL.cpp:
370         (WebCore::KURL::parse):
371         * platform/StringImpl.cpp:
372         (WebCore::isSpace):
373         (WebCore::StringImpl::containsOnlyWhitespace):
374         (WebCore::StringImpl::isLower):
375         (WebCore::StringImpl::lower):
376         (WebCore::StringImpl::find):
377         (WebCore::StringImpl::reverseFind):
378         (WebCore::equalIgnoringCase):
379         * platform/TextEncodingRegistry.cpp:
380         (WebCore::TextEncodingNameHash::equal):
381         (WebCore::TextEncodingNameHash::hash):
382         (WebCore::atomicCanonicalTextEncodingName):
383         * platform/mac/KeyEventMac.mm:
384         (WebCore::keyIdentifierForKeyEvent):
385         * platform/win/KeyEventWin.cpp:
386         (WebCore::keyIdentifierForWindowsKeyCode):
387         * platform/win/PopupMenuWin.cpp:
388         (WebCore::isASCIIPrintable):
389         (WebCore::PopupWndProc):
390         * plugins/win/PluginViewWin.cpp:
391         (WebCore::capitalizeRFC822HeaderFieldName):
392         * rendering/RenderText.cpp:
393         (WebCore::RenderText::widthFromCache):
394         Use ASCIICType.h functions instead of ctype.h ones.
395
396 2007-10-16  Mitz Pettel  <mitz@webkit.org>
397
398         Reviewed by Dave Hyatt.
399
400         - fix http://bugs.webkit.org/show_bug.cgi?id=15296
401           REGRESSION (r19716-r19719): width not specified for <marquee> tag is causing the alignment issue.
402
403         Test: fast/block/float/marquee-shrink-to-avoid-floats.html
404
405         * rendering/RenderObject.cpp:
406         (WebCore::RenderObject::shrinkToAvoidFloats): Changed to return 'true' for <marquee>s with auto width.
407
408 2007-10-16  Beth Dakin  <bdakin@apple.com>
409
410         Reviewed by Darin.
411
412         Fix for <rdar://problem/5517118> REGRESSION: 9A570 - Safari renders 
413         Amazon seller page way too small
414
415         The font size at Amazon was way too small because the calls to 
416         getComputedStyle and getPropertyValue did not cause the div to 
417         attach because there was a pending stylesheet. The fix is to call 
418         updateLayoutIgnorePendingStylesheets() instead of just 
419         updateLayout().
420
421         * css/CSSComputedStyleDeclaration.cpp:
422         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
423
424 2007-10-16  David Hyatt  <hyatt@apple.com>
425
426         Get transform-origin(x/y) mapped into the front end RenderStyle.  Adds a new StyleTransformData struct that
427         holds transform-origin (and that will also eventually hold the parsed transform operations as well).
428
429         Reviewed by Beth
430
431         * css/CSSStyleSelector.cpp:
432         (WebCore::CSSStyleSelector::applyProperty):
433         * rendering/RenderStyle.cpp:
434         (WebCore::StyleTransformData::StyleTransformData):
435         (WebCore::StyleTransformData::operator==):
436         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
437         (WebCore::StyleRareNonInheritedData::operator==):
438         (WebCore::RenderStyle::RenderStyle):
439         (WebCore::RenderStyle::diff):
440         * rendering/RenderStyle.h:
441         (WebCore::StyleTransformData::operator!=):
442         (WebCore::RenderStyle::transformOriginX):
443         (WebCore::RenderStyle::transformOriginY):
444         (WebCore::RenderStyle::setTransformOriginX):
445         (WebCore::RenderStyle::setTransformOriginY):
446         (WebCore::RenderStyle::initialTransformOriginX):
447         (WebCore::RenderStyle::initialTransformOriginY):
448
449 2007-10-16  Adele Peterson  <adele@apple.com>
450
451         Reviewed by Alice.
452
453         Fix for <rdar://problem/5538793> REGRESSION: Failing layout test: fast/forms/select-change-listbox-to-popup.html (due to landing feature branch)
454
455         * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::parseMappedAttribute):  When switching between types of select elements, call setRecalcListItems
456           since recalcListItems updates the default selection in different ways for the different controls. 
457
458 2007-10-16  Alice Liu  <alice.liu@apple.com>
459
460         rubber-stamped by Darin.
461
462         flipping my previous fix around so that mac is special-cased instead of win.
463
464         * dom/Document.cpp:
465         (WebCore::Document::defaultEventHandler):
466
467 2007-10-16  David Hyatt  <hyatt@apple.com>
468
469         Clean up transform parsing.  Fix a crash, ditch the extra parse context class, and use RefPtr/PassRefPtr more
470         to simplify the code.
471
472         Reviewed by aroben
473
474         * css/CSSParser.cpp:
475         (WebCore::CSSParser::parseValue):
476         (WebCore::CSSParser::parseTransform):
477         * css/CSSParser.h:
478
479 2007-10-16  Alice Liu  <alice.liu@apple.com>
480
481         Reviewed by Adele.
482
483         fixed <rdar://5085596> Accesskeys don't work
484         
485         * dom/Document.cpp:
486         (WebCore::Document::defaultEventHandler):
487         accesskey modifier is platform-depedent.
488
489 2007-10-15  Mark Rowe  <mrowe@apple.com>
490
491         Reviewed by John.
492
493         <rdar://problem/5494040> Reproducible assertion failure in WebCore::IconDatabase::iconForPageURL
494
495         A race condition between icon database import and Safari asking for an icon for the empty URL
496         was resulting in a PageURLRecord being created for a URL that can never be retained.  By enforcing
497         that PageURLRecord's cannot be created for the empty URL we can prevent the assertion from failing.
498
499         * loader/icon/IconDatabase.cpp:
500         (WebCore::IconDatabase::iconForPageURL):
501         (WebCore::IconDatabase::getOrCreatePageURLRecord): Bail out early if the URL is empty.
502         (WebCore::IconDatabase::performURLImport): Don't create the PageURLRecord if the URL is empty.
503
504 2007-10-15  Jon Honeycutt  <jhoneycutt@apple.com>
505
506         Reviewed by Ollie.
507
508         Use OwnPtr for m_deliveryData, and fix a bug where we were memmove()ing
509         over m_deliveryData instead of its data buffer
510
511         * plugins/win/PluginStreamWin.cpp:
512         (WebCore::PluginStreamWin::~PluginStreamWin): Don't delete
513         m_deliveryData
514         (WebCore::PluginStreamWin::deliverData): Fix memmove() call
515         (WebCore::PluginStreamWin::didReceiveData): Assign using OwnPtr::set()
516         * plugins/win/PluginStreamWin.h: Use OwnPtr
517
518 2007-10-15  Steve Falkenburg  <sfalken@apple.com>
519
520         Reviewed by Oliver.
521
522         Add missing null check.
523
524         * platform/network/cf/AuthenticationCF.cpp:
525         (WebCore::core):
526
527 2007-10-15  Mark Rowe  <mrowe@apple.com>
528
529         Fix the no-SVG build again.  Add new transform CSS properties to the switch statements.
530
531         * css/CSSComputedStyleDeclaration.cpp:
532         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
533         * css/CSSStyleSelector.cpp:
534         (WebCore::CSSStyleSelector::applyProperty):
535
536 2007-10-15  Darin Adler  <darin@apple.com>
537
538         Reviewed by Mitz.
539
540         - http://bugs.webkit.org/show_bug.cgi?id=15518
541           Remove the unused attemptFontSubstitution feature and do some
542           cleanup of glyphDataForCharacter.
543
544         * platform/Font.h:
545         * platform/Font.cpp:
546         (WebCore::WidthIterator::advance): Eliminated uneeded attemptFontSubstitution
547         and cluster parameters to the glyphDataForCharacter function.
548         (WebCore::Font::glyphDataForCharacter): Removed the cluster parameter and
549         attemptFontSubstitution parameter. Removed the isUpper check before calling
550         toUpper in the small caps code path. Split up the inner loop into separate
551         copies for non-small-caps and small caps. Broke out the system fallback
552         page handling so it's not inside the loop. Changed system fallback so it uses
553         the character and breaks it up into UTF-16 as needed, instead of using a
554         passed-in "character cluster".
555
556         * platform/TextStyle.h:
557         (WebCore::TextStyle::TextStyle): Removed attemptFontSubstitution.
558         (WebCore::TextStyle::applyWordRounding): Ditto.
559
560 2007-10-15  Jon Honeycutt  <jhoneycutt@apple.com>
561
562         Reviewed by Ollie.
563
564         Remove an operator precedence warning on Windows
565
566         * editing/markup.cpp:
567         (WebCore::escapeContentText): Use (a) | (b)
568         (WebCore::appendEscapedContent): Use (a) | (b)
569
570 2007-10-15  Kevin McCullough  <kmccullough@apple.com>
571
572         Reviewed by Darin.
573
574         - <rdar://problem/5238818> window.resizeTo doesn't restrict the resized window to the size of the screen
575         - Now we take the doc into account when resizing.
576         - Also I found an issue where we would resize to outside the window, because
577           the resize would be smaller than the window size but the location of the
578           window would make the resize go off-screen. Now we move the window back into the screen.
579
580         * bindings/js/kjs_window.cpp:
581         (KJS::adjustWindowRect):
582         (KJS::WindowFunc::callAsFunction):
583
584 2007-10-15  Jon Honeycutt  <jhoneycutt@apple.com>
585
586         Reviewed by Anders.
587
588         <rdar://5510700> Repro crash loading embedded Windows Media Player
589         content
590
591         Anders noticed that the older Windows Media Player plugin (npdsplay.dll)
592         will crash if it receives its resource requests out of order, whereas we
593         were immediately fulfilling untargeted, non-JavaScript requests and
594         scheduling targeted or JavaScript resource requests. Implement his
595         suggested fix, which is to schedule PluginRequests for all resource
596         requests 
597
598         * plugins/win/PluginViewWin.cpp:
599         (WebCore::getString):
600         (WebCore::PluginViewWin::performRequest): If this non-JavaScript request
601         has no target, create a stream for it
602         (WebCore::PluginViewWin::load): Schedule PluginRequests for all resource
603         requests
604
605 2007-10-15  Mark Rowe  <mrowe@apple.com>
606
607         Gtk and Qt build fix.  Add new .cpp file to project.
608
609         * WebCore.pro:
610
611 2007-10-15  John Sullivan  <sullivan@apple.com>
612
613         * platform/mac/FontDataMac.mm:
614         D'oh! Added missing #import to fix build
615
616 2007-10-15  John Sullivan  <sullivan@apple.com>
617
618         Reviewed by Geoff
619
620         * platform/mac/FontDataMac.mm:
621         (WebCore::FontData::smallCapsFontData):
622         replace NS_DURING/NS_HANDLER with WebCore-style BEGIN/END_BLOCK_OBJC_EXCEPTIONS
623
624 2007-10-15  David Hyatt  <hyatt@apple.com>
625
626         The CSS WG has been discussing the concept of rotation.  In the latest draft specification, two properties
627         have been introduced: rotation and rotation-point.  I believe these properties should be generalized to
628         allow for arbitrary transformations (e.g., translation, skew, rotate, scale).
629
630         This patch adds support for the back-end parsing of two new CSS properties: transform and transform-origin.
631         They are directly analogous to the properties specified by the CSS WG, except that they are designed to allow
632         for arbitrary affine transforms rather than just rotation.
633
634         Reviewed by Beth Dakin
635
636         * WebCore.xcodeproj/project.pbxproj:
637         * WebCore.vcproj/WebCore.vcproj:
638         * css/CSSComputedStyleDeclaration.cpp:
639         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
640         * css/CSSParser.cpp:
641         (WebCore::CSSParser::parseValue):
642         (WebCore::TransformParseContext:::m_list):
643         (WebCore::TransformParseContext::list):
644         (WebCore::TransformParseContext::failed):
645         (WebCore::TransformParseContext::addValue):
646         (WebCore::TransformOperationInfo::TransformOperationInfo):
647         (WebCore::TransformOperationInfo::type):
648         (WebCore::TransformOperationInfo::argCount):
649         (WebCore::TransformOperationInfo::unit):
650         (WebCore::TransformOperationInfo::unknown):
651         (WebCore::TransformOperationInfo::hasCorrectArgCount):
652         (WebCore::CSSParser::parseTransform):
653         (WebCore::CSSParser::parseTransformOrigin):
654         * css/CSSParser.h:
655         * css/CSSPropertyNames.in:
656         * css/CSSTransformValue.cpp: Added.
657         (WebCore::CSSTransformValue::CSSTransformValue):
658         (WebCore::CSSTransformValue::~CSSTransformValue):
659         (WebCore::CSSTransformValue::addValue):
660         (WebCore::CSSTransformValue::cssText):
661         * css/CSSTransformValue.h: Added.
662         (WebCore::CSSTransformValue::):
663
664 2007-10-15  Mark Rowe  <mrowe@apple.com>
665
666         Reviewed by Oliver.
667
668         Fix the no-SVG build.
669
670         * DerivedSources.make: Use the correct file as input to generate CSSPropertyNames.h.
671         * rendering/RenderObject.cpp:
672         (WebCore::objectIsRelayoutBoundary):
673
674 2007-10-15  Darin Adler  <darin@apple.com>
675
676         Reviewed by Sam.
677
678         - fix http://bugs.webkit.org/show_bug.cgi?id=15520
679           alert(undefined) should say "undefined" in the alert
680
681         Test: fast/dom/Window/alert-undefined.html
682
683         * page/DOMWindow.idl: Remove ConvertUndefinedOrNullToNullString from alert, confirm, and prompt.
684         It turns out that the default behavior is what the other browsers do (browsers tested: IE 7,
685         Firefox 2).
686
687 2007-10-15  Adele Peterson  <adele@apple.com>
688
689         Reviewed by Darin.
690
691         Fix for http://bugs.webkit.org/show_bug.cgi?id=15252
692         <rdar://problem/5498184> REGRESSION: <select multiple> doesn't scroll to top when old options are removed and new ones are added, leaving listbox empty-looking
693
694         * rendering/RenderListBox.cpp: (WebCore::RenderListBox::calcHeight): If the scrollbar is disabled, make sure the scroll offset gets reset to 0.  In general,
695           we don't want to unnecessarily adjust the scroll offset, but in this case, there won't be an obvious way for the user to adjust the scroller position once it's disabled.
696
697 2007-10-15  Jon Honeycutt  <jhoneycutt@apple.com>
698
699         Reviewed by Maciej.
700
701         Return a more appropriate error from NPN_RequestRange, which is
702         currently unimplemented
703
704         * plugins/win/npapi.cpp: return NPERR_STREAM_NOT_SEEKABLE 
705         (NPN_RequestRead):
706
707 2007-10-15  Jon Honeycutt  <jhoneycutt@apple.com>
708
709         Reviewed by Maciej.
710
711         Add a missing function pointer to the m_browserFuncs structure
712
713         * plugins/win/PluginPackageWin.cpp:
714         (WebCore::PluginPackageWin::load):
715
716 2007-10-15  Simon Hausmann  <hausmann@kde.org>
717
718         Reviewed by Lars.
719
720         Fix the compilation of the Font code in the Qt port by adding the necessary stubs to support downloadable fonts through the @font-face rules.
721
722         * WebCore.pro:
723         * loader/CachedFont.cpp:
724         * platform/qt/FontCacheQt.cpp: Removed.
725         * platform/qt/FontCustomPlatformData.cpp: Removed.
726         * platform/qt/FontCustomPlatformData.h: Removed.
727         * platform/qt/FontDataQt.cpp: Removed.
728         * platform/qt/FontPlatformData.h: Removed.
729         * platform/qt/FontQt.cpp:
730         * platform/qt/GlyphPageTreeNodeQt.cpp: Removed.
731
732 2007-10-15  Simon Hausmann  <hausmann@kde.org>
733
734         Reviewed by Lars.
735
736         Adapt to the latest API changes in the SVG API/Code.
737
738         * platform/graphics/svg/qt/RenderPathQt.cpp:
739         (WebCore::RenderPath::strokeContains):
740         (WebCore::getPathStroke):
741         * platform/graphics/svg/qt/SVGPaintServerQt.cpp:
742         (WebCore::SVGPaintServer::setPenProperties):
743         * platform/graphics/svg/qt/SVGResourceMaskerQt.cpp:
744
745 2007-10-14  Nikolas Zimmermann  <zimmermann@kde.org>
746
747         Reviewed by Eric.
748
749         Fix bad abstraction in ImageBuffer class.
750         While the class itself is platform-aware and thus it's location in platform/graphics
751         is fine, it contains the "renderSubtreeToImage" method which operates on RenderObject.
752
753         As it's SVG specific I decided to move this method into SVGRenderSupport, to avoid
754         implicit platform/ <-> rendering/ dependencies.
755
756         * WebCore.pro:
757         * WebCore.vcproj/WebCore.vcproj:
758         * WebCore.xcodeproj/project.pbxproj:
759         * ksvg2/svg/SVGMaskElement.cpp:
760         (WebCore::SVGMaskElement::drawMaskerContent):
761         * ksvg2/svg/SVGPatternElement.cpp:
762         (WebCore::SVGPatternElement::buildPattern):
763         * platform/graphics/ImageBuffer.cpp: Removed.
764         * platform/graphics/ImageBuffer.h:
765         (WebCore::ImageBuffer::size):
766         * platform/graphics/svg/SVGImage.cpp:
767         (WebCore::SVGImage::nativeImageForCurrentFrame):
768         * rendering/SVGRenderSupport.cpp:
769         (WebCore::renderSubtreeToImage):
770         * rendering/SVGRenderSupport.h:
771
772 2007-10-14  Peter Kasting  <zerodpx@gmail.com>
773
774         Reviewed by Maciej.
775
776         http://bugs.webkit.org/show_bug.cgi?id=15210
777         Draw the image outline even for broken images.
778
779         * rendering/RenderImage.cpp:
780         (WebCore::RenderImage::paint):
781
782 2007-10-14  Kevin Ollivier  <kevino@theolliviers.com>
783
784         Reviewed by Adam.
785
786         Add support for MSVC7, and fix cases where PLATFORM(WIN) should
787         be PLATFORM(WIN_OS) for other ports building on Windows.
788
789         * dom/XMLTokenizer.cpp:
790         * page/FrameTree.cpp:
791         * platform/StaticConstructors.h:
792         * platform/String.cpp:
793
794 2007-10-14  Maxime Britto  <mbritto@pleyo.com>
795
796         Reviewed by Mitz.
797
798         Fix an error in the goBackOrForward() function : confusion between forwardListCount and backListCount.
799         http://bugs.webkit.org/show_bug.cgi?id=15212
800
801         * loader/FrameLoader.cpp:
802         (WebCore::FrameLoader::goBackOrForward):
803
804 2007-10-14  Mitz Pettel  <mitz@webkit.org>
805
806         Reviewed by Darin.
807
808         - fix http://bugs.webkit.org/show_bug.cgi?id=15181
809           text-transform: uppercase not working in input (submit, reset, button) elements
810           <rdar://problem/5474647>
811
812         Test: fast/forms/button-text-transform.html
813
814         Text transformations require access to the original text. The button's inner
815         text was an anonymous RenderText, meaning it did not have a node to retrieve
816         the original text from. The patch fixes this by changing the inner text into a
817         RenderTextFragment, which stores its own original text.
818
819         * rendering/RenderButton.cpp:
820         (WebCore::RenderButton::setText):
821         * rendering/RenderButton.h:
822
823 2007-10-14  Eric Seidel  <eric@webkit.org>
824
825         Reviewed by Maciej.
826
827         REGRESSION: Javascript bug in getElementsByName
828         http://bugs.webkit.org/show_bug.cgi?id=15274
829
830         Test: fast/dom/getelementbyname-invalidation.html
831
832         * dom/NameNodeList.h: remove empty rootNodeChildrenChanged override
833
834 2007-10-14  Mitz Pettel  <mitz@webkit.org>
835
836         Reviewed by Maciej.
837
838         - http://bugs.webkit.org/show_bug.cgi?id=15303
839           Remove now-redundant code to restore dialog arguments after clear
840
841         This patch reverts the kjs_window.* parts of r25576 because following
842         r25783, window properties, including dialog arguments, are not cleared
843         when the newly created modal dialog transitions to the document.
844
845         * bindings/js/kjs_window.cpp:
846         (KJS::WindowPrivate::WindowPrivate):
847         (KJS::createWindow):
848         (KJS::showModalDialog):
849         (KJS::Window::clear):
850         (KJS::WindowFunc::callAsFunction):
851         (KJS::Window::setReturnValueSlot):
852         * bindings/js/kjs_window.h:
853
854 2007-10-14  Mitz Pettel  <mitz@webkit.org>
855
856         Reviewed by Dave Hyatt.
857
858         - fix http://bugs.webkit.org/show_bug.cgi?id=15309
859           <rdar://problem/5512020> Crash due to infinite recursion in RenderTable::addChild
860
861         Test: fast/table/generated-caption.html
862
863         * rendering/RenderTable.cpp:
864         (WebCore::RenderTable::addChild): Changed to make sure that the child is
865         not added into generated after content. Also made adding a child before
866         a table caption work correctly instead of adding the child after the caption.
867
868 2007-10-14  Peter Kasting  <zerodpx@gmail.com>
869
870         Reviewed by Maciej.
871
872         http://bugs.webkit.org/show_bug.cgi?id=15141
873         Feed GIF reader data from the point in the stream it expects.  Also,
874         mirror the reader's failure state up to the wrapping decoder.
875
876         * platform/image-decoders/gif/GIFImageReader.cpp:
877         (GIFImageReader::read):
878
879 2007-10-14  Peter Kasting  <zerodpx@gmail.com>
880
881         Reviewed by Maciej.
882
883         http://bugs.webkit.org/show_bug.cgi?id=15142
884         Return correct frame count in GIFImageDecoder::frameBufferAtIndex(),
885         even if more data has arrived since the last decoding pass.
886
887         * platform/image-decoders/gif/GIFImageDecoder.cpp:
888         (WebCore::GIFImageDecoder::frameBufferAtIndex):
889
890 == Rolled over to ChangeLog-2007-10-14 ==