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