Fix https://bugs.webkit.org/show_bug.cgi?id=20639.
[WebKit-https.git] / WebCore / ChangeLog
1 2008-09-04  Mark Rowe  <mrowe@apple.com>
2
3         Reviewed by Eric Seidel.
4
5         Fix https://bugs.webkit.org/show_bug.cgi?id=20639.
6         Bug 20639: ENABLE_DASHBOARD_SUPPORT does not need to be a FEATURE_DEFINE
7
8         * Configurations/WebCore.xcconfig: Remove ENABLE_DASHBOARD_SUPPORT from FEATURE_DEFINES.
9         * DerivedSources.make: Revert to checking for ENABLE_DASHBOARD_SUPPORT rather than looking
10         for ENABLE_DASHBOARD_SUPPORT in FEATURE_DEFINES.
11
12 2008-09-04  Mark Rowe  <mrowe@apple.com>
13
14         Mac build fix.
15
16         * config.h: Only check the value of HAVE_CONFIG_H if it is defined.
17
18 2008-09-04  Eric Seidel  <eric@webkit.org>
19
20         Build fix only, no review.
21
22         * dom/XMLTokenizer.cpp: Fix the Chromium merge build by adding a missing header (the Mac files must include it somewhere).
23
24 2008-09-04  Marco Barisione  <marco.barisione@collabora.co.uk>
25
26         Reviewed by Eric Seidel.
27
28         http://bugs.webkit.org/show_bug.cgi?id=20380
29         [GTK][AUTOTOOLS] Include autotoolsconfig.h from config.h
30
31         * config.h: Include the configuration header generated by autotools if
32         available.
33
34 2008-09-04  Dan Bernstein  <mitz@apple.com>
35
36         Rubber-stamped by Dave Hyatt.
37
38         - rename CachedResource::allReferencesRemoved() to allClientsRemoved()
39
40         * loader/CachedFont.cpp:
41         (WebCore::CachedFont::allClientsRemoved):
42         * loader/CachedFont.h:
43         * loader/CachedImage.cpp:
44         (WebCore::CachedImage::allClientsRemoved):
45         * loader/CachedImage.h:
46         * loader/CachedResource.cpp:
47         (WebCore::CachedResource::removeClient):
48         * loader/CachedResource.h:
49         (WebCore::CachedResource::allClientsRemoved):
50
51 2008-09-04  Adam Roben  <aroben@apple.com>
52
53         Windows build fix after r36071
54
55         We were getting these errors:
56
57         error C2356: initialization segment must not change during translation
58         unit
59
60         This was happening because multiple files #included by
61         DerivedSources.cpp were themselves #including StaticConstructors.h. I
62         fixed the error by adding header guards to StaticConstructors.h so its
63         contents will only be included once.
64
65         But it's also not a good idea for StaticConstructors.h to end up in
66         DerivedSources.cpp, since it ends up "polluting" all the source files
67         we have in there. So I removed all the files that include
68         StaticConstructors.h and added some preprocessor directives to
69         DerivedSources.cpp to catch this error in the future.
70
71         * DerivedSources.cpp: Removed the *Names.cpp files, which include
72         StaticConstructors.h, and added some preprocessor directives to make
73         sure we don't end up accidentally including StaticConstructors.h in
74         the future.
75         * WebCore.vcproj/WebCore.vcproj: Added the *Names.cpp files.
76         * platform/StaticConstructors.h: Added header guards.
77
78 2008-09-04  Adam Roben  <aroben@apple.com>
79
80         Windows build fix
81
82         * platform/graphics/win/FontPlatformData.h: Added a missing #include
83         of PassRefPtr.h, and corrected the capitalization of RefCounted.h.
84         * platform/text/PlatformString.h: Added a missing #include of
85         PassRefPtr.h.
86
87 2008-09-04  Tor Arne Vestbø  <tavestbo@trolltech.com>
88
89         Reviewed by Simon.
90
91         Fix the QtWebKit build to match changes in r36016
92
93         * WebCore.pro:
94         * bridge/qt/qt_instance.cpp:
95         (KJS::Bindings::QtInstance::getRuntimeObject):
96         * bridge/qt/qt_runtime.cpp:
97         (KJS::Bindings::convertQVariantToValue):
98         (KJS::Bindings::QtConnectionObject::execute):
99
100 2008-09-04  Tor Arne Vestbø  <tavestbo@trolltech.com>
101
102         Reviewed by Simon.
103
104         Re-enable support for user stylesheets in QtWebKit
105         
106         QtWebKit now follows the FRAME_LOADS_USER_STYLESHEET
107         code path, which allows us to keep API support for
108         loading user style sheets from remote URLs.
109         
110         As part of the change UserStyleSheetLoader.cpp/h was
111         moved from WebCore/loader/mac to WebCore/loader.
112
113         * WebCore.pro:
114         * WebCore.xcodeproj/project.pbxproj:
115         * dom/Document.h:
116         * loader/UserStyleSheetLoader.cpp: Renamed from WebCore/loader/mac/UserStyleSheetLoader.cpp.
117         (UserStyleSheetLoader::UserStyleSheetLoader):
118         (UserStyleSheetLoader::~UserStyleSheetLoader):
119         * loader/UserStyleSheetLoader.h: Renamed from WebCore/loader/mac/UserStyleSheetLoader.h.
120         * page/qt/FrameQt.cpp:
121         (WebCore::Frame::setUserStyleSheetLocation):
122         (WebCore::Frame::setUserStyleSheet):
123
124 2008-09-04  Alp Toker  <alp@nuanti.com>
125
126         Reviewed by Eric.
127
128         Remove left-over QT and CAIRO platform checks.
129
130         * html/CanvasRenderingContext2D.cpp:
131
132 2008-09-04  Eric Seidel  <eric@webkit.org>
133
134         Reviewed by Mark Rowe.
135
136         Fix leak of TextMetrics due to over-ref as see on buildbot.
137
138         * html/TextMetrics.h: use adoptRef since RefCounted starts @ refcount 1 instead of 0 now.
139
140 2008-09-04  Dan Bernstein  <mitz@apple.com>
141
142         Reviewed by Dave Hyatt.
143
144         - fix https://bugs.webkit.org/show_bug.cgi?id=19717
145           <rdar://problem/6026832> REGRESSION (r31876): menu items render horizontally at the Economist
146
147         * rendering/RenderBlock.cpp:
148         (WebCore::RenderBlock::layoutOnlyPositionedObjects): In the
149         positioned movement only case, call
150         tryLayoutDoingPositionedMovementOnly() and fall back on doing a full
151         layout if that fails.
152         (WebCore::RenderBlock::layoutPositionedObjects): Ditto.
153         * rendering/RenderBox.h:
154         (WebCore::RenderBox::tryLayoutDoingPositionedMovementOnly): Renamed
155         layoutDoingPositionedMovementOnly to this, and made this function
156         check if the width changed. If it did, return, leaving the object
157         dirty. The caller can then call layout(). The width can change even
158         in the "positioned movement only" case if the object is shrink-to-fit
159         and the available width constraint is met. (This was the case in the
160         bug).
161         * rendering/RenderObject.h:
162         (WebCore::RenderObject::tryLayoutDoingPositionedMovementOnly):
163         Renamed layoutDoingPositionedMovementOnly() to this.
164
165 2008-09-03  Eric Seidel  <eric@webkit.org>
166
167         No review, build fix only.
168
169         Attempt to fix the Qt build.
170
171         * WebCore.pro: add page/animation to include path
172
173 2008-09-03  Mark Rowe  <mrowe@apple.com>
174
175         Mac build fix.  Correctly detect whether dashboard support is enabled.
176
177         * DerivedSources.make:
178
179 2008-09-03  Eric Seidel  <eric@webkit.org>
180
181         Reviewed by Sam.
182
183         Clean up Platform.h and add PLATFORM(CHROMIUM), PLATFORM(SKIA) and USE(V8_BINDINGS)
184
185         * Configurations/WebCore.xcconfig: add missing ENABLE_*
186         * config.h: add rules for V8_BINDINGS
187
188 2008-09-03  Eric Seidel  <eric@webkit.org>
189
190         Reviewed by Sam.
191
192         https://bugs.webkit.org/show_bug.cgi?id=20620
193
194         Add #if USE(JSC) around KJS dependencies
195         Remove !USE(JAVASCRIPTCORE_BINDINGS) support for 3 reasons:
196         1. Most platforms have it on anyway
197         2. V8 is going to want to share some of that code
198         3. Those platforms which want it off, should have a separate file instead of an #ifdef in our .cpp
199
200         * bindings/js/JSPluginElementFunctions.cpp: remove !USE(JAVASCRIPTCORE_BINDINGS) support
201         * config.h: change JAVASCRIPTCORE_BINDINGS to JSC and add USE(V8)
202         * html/HTMLAppletElement.cpp: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
203         * html/HTMLAppletElement.h: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
204         * html/HTMLEmbedElement.cpp: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
205         * html/HTMLEmbedElement.h: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
206         * html/HTMLObjectElement.cpp: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
207         * html/HTMLObjectElement.h: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
208         * html/HTMLPlugInElement.cpp: replace USE(JAVASCRIPTCORE_BINDINGS) with USE(JSC) where needed
209         * html/HTMLPlugInElement.h: replace USE(JAVASCRIPTCORE_BINDINGS) with USE(JSC) where needed
210         * platform/text/AtomicString.cpp: add USE(JSC)
211         * platform/text/AtomicString.h: add USE(JSC)
212         * platform/text/PlatformString.h: add USE(JSC)
213         * platform/text/String.cpp: add USE(JSC)
214         * platform/text/StringImpl.cpp: add USE(JSC)
215         * platform/text/StringImpl.h: add USE(JSC)
216
217 2008-09-03  Dean McNamee  <deanm@chromium.org>
218
219         Reviewed by Darin Adler.
220
221         Fix https://bugs.webkit.org/show_bug.cgi?id=20511
222         Bug 20511: Remove static initializers on Windows
223
224         Avoid static initializers on Windows by forcing Visual C++ to put
225         all static initializers in a code segment that is never executed.
226
227         * config.h:
228         * css/MediaFeatureNames.cpp:
229         * dom/EventNames.cpp:
230         * dom/QualifiedName.cpp:
231         * dom/make_names.pl:
232         * platform/StaticConstructors.h:
233         * platform/text/AtomicString.cpp:
234
235 2008-09-03  Dirk Schulze  <vbs85@gmx.de>
236
237         Reviewed by Dave Hyatt.
238
239         Make FontCairo draw TextStroke and TextFill separately.
240
241         [CAIRO] draw TextFill and TextStroke separately.
242         [https://bugs.webkit.org/show_bug.cgi?id=20631]
243
244         * platform/graphics/cairo/FontCairo.cpp:
245         (WebCore::Font::drawGlyphs):
246
247 2008-09-03  Peter Kasting  <zerodpx@gmail.com>
248
249         Reviewed by Dave Hyatt.
250
251         https://bugs.webkit.org/show_bug.cgi?id=19663
252         Account for paint and timer lag when animating images.  Also pretend
253         that images whose animations were paused (by becoming invisible)
254         continued to animate, by "catching up" to the correct frame when they're
255         shown again.
256
257         * platform/graphics/BitmapImage.cpp:
258         (WebCore::BitmapImage::BitmapImage):
259         (WebCore::BitmapImage::startAnimation):
260         (WebCore::BitmapImage::advanceAnimation):
261         (WebCore::BitmapImage::internalAdvanceAnimation):
262         (WebCore::BitmapImage::notifyObserverAndTrimDecodedData):
263         * platform/graphics/BitmapImage.h:
264         * platform/graphics/cairo/ImageCairo.cpp:
265         (WebCore::BitmapImage::draw):
266         * platform/graphics/cg/ImageCG.cpp:
267         (WebCore::BitmapImage::draw):
268         * platform/graphics/qt/ImageQt.cpp:
269         (WebCore::BitmapImage::draw):
270         * platform/graphics/wx/ImageWx.cpp:
271         (WebCore::BitmapImage::draw):
272
273 2008-09-03  Kevin McCullough  <kmccullough@apple.com>
274
275         Reviewed by Tim.
276
277         Remove the rest of the "zombie" code from the profiler.
278         - There is no longer a need for the ProfilerClient callback mechanism.
279
280         * page/Console.cpp: 
281         (WebCore::Console::Console):
282         (WebCore::Console::profile):
283         (WebCore::Console::profileEnd): Move the variables from the header to
284         here since we don't have to wait for a callback to use them.
285         * page/Console.h:
286         * page/InspectorController.cpp:
287         (WebCore::InspectorController::startUserInitiatedProfiling):
288         (WebCore::InspectorController::stopUserInitiatedProfiling):
289         * page/InspectorController.h:
290
291 2008-09-03  Ada Chan  <adachan@apple.com>
292
293         Windows build fix.
294
295         * WebCore.vcproj/WebCore.vcproj: Added JSWebKitCSSKeyframeRule.cpp and JSWebKitCSSKeyframesRule.cpp to the project.
296
297 2008-09-01  Dean Jackson  <dino@apple.com>
298
299         Reviewed by Dave Hyatt.
300
301         https://bugs.webkit.org/show_bug.cgi?id=20594
302         Add DOM interfaces for WebKitCSSKeyframeRule
303         and WebKitCSSKeyframesRule.
304
305         TEST: LayoutTests/css3/keyframes-rule.html
306
307         * css/WebKitCSSKeyframeRule.idl: Added
308         * css/WebKitCSSKeyframesRule.idl: Added
309
310         * bindings/js/JSCSSRuleCustom.cpp:
311         (WebCore::toJS):
312             Add return of new JS Keyframe rules
313         * bindings/objc/DOMInternal.h:
314             Include new internal header
315
316         * DerivedSources.make:
317         * GNUmakefile.am:
318         * WebCore.pro:
319         * WebCore.vcproj/WebCore.vcproj:
320         * WebCore.xcodeproj/project.pbxproj:
321         * WebCoreSources.bkl:
322             Build configs for new files
323
324 2008-09-03  Adam Roben  <aroben@apple.com>
325
326         Windows build fix
327
328         * DerivedSources.cpp: Add JSTextMetrics.cpp to fix the build.
329         * WebCore.vcproj/WebCore.vcproj: Add JSTextMetrics.h for
330         convenience/consistency.
331
332 2008-09-03  Adele Peterson  <adele@apple.com>
333
334         Build fix.
335
336         * WebCore.vcproj/WebCore.vcproj:
337
338 2008-09-03  David Hyatt  <hyatt@apple.com>
339
340         Fix for bug 18203, right floats should be allowed to overflow past the left border edge.
341
342         Reviewed by Darin (ages ago)
343
344         Added fast/block/float/clamped-right-float.html
345
346         * rendering/RenderBlock.cpp:
347         (WebCore::RenderBlock::positionNewFloats):
348
349 2008-09-02  David Hyatt  <hyatt@apple.com>
350
351         Add support for canvas text drawing APIs.
352
353         Reviewed by olliej
354
355         Tests added as fast/canvas/canvas-text-*.html
356
357         * DerivedSources.make:
358         * WebCore.xcodeproj/project.pbxproj:
359         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
360         (WebCore::JSCanvasRenderingContext2D::fillText):
361         (WebCore::JSCanvasRenderingContext2D::strokeText):
362         * css/CSSStyleSelector.cpp:
363         (WebCore::CSSStyleSelector::initForStyleResolve):
364         (WebCore::CSSStyleSelector::applyPropertyToStyle):
365         * css/CSSStyleSelector.h:
366         * html/CanvasRenderingContext2D.cpp:
367         (WebCore::CanvasRenderingContext2D::State::State):
368         (WebCore::CanvasRenderingContext2D::font):
369         (WebCore::CanvasRenderingContext2D::setFont):
370         (WebCore::CanvasRenderingContext2D::textAlign):
371         (WebCore::CanvasRenderingContext2D::setTextAlign):
372         (WebCore::CanvasRenderingContext2D::textBaseline):
373         (WebCore::CanvasRenderingContext2D::setTextBaseline):
374         (WebCore::CanvasRenderingContext2D::fillText):
375         (WebCore::CanvasRenderingContext2D::strokeText):
376         (WebCore::CanvasRenderingContext2D::measureText):
377         (WebCore::CanvasRenderingContext2D::drawTextInternal):
378         (WebCore::CanvasRenderingContext2D::accessFont):
379         * html/CanvasRenderingContext2D.h:
380         * html/CanvasRenderingContext2D.idl:
381         * html/TextMetrics.h: Added.
382         (WebCore::TextMetrics::create):
383         (WebCore::TextMetrics::width):
384         (WebCore::TextMetrics::setWidth):
385         (WebCore::TextMetrics::TextMetrics):
386         * html/TextMetrics.idl: Added.
387         * platform/graphics/Font.cpp:
388         (WebCore::Font::lineGap):
389         * platform/graphics/Font.h:
390         * platform/graphics/GraphicsContext.cpp:
391         (WebCore::GraphicsContext::drawBidiText):
392         * platform/graphics/GraphicsContext.h:
393         * platform/graphics/GraphicsTypes.cpp:
394         (WebCore::textAlignName):
395         (WebCore::parseTextAlign):
396         (WebCore::textBaselineName):
397         (WebCore::parseTextBaseline):
398         * platform/graphics/GraphicsTypes.h:
399         (WebCore::):
400
401 2008-09-03  John Sullivan  <sullivan@apple.com>
402
403         Fixed <rdar://problem/6193022> <rdar://problem/6193022> Crash occurs at WebCore::AnimationBase::propertiesEqual () after certain steps
404
405         Fixed by Darin, reviewed by me
406
407         * page/animation/AnimationBase.cpp:
408         (WebCore::AnimationBase::propertiesEqual):
409         added ensurePropertyMap() to this static function
410         (WebCore::AnimationBase::getPropertyAtIndex):
411         ditto
412         (WebCore::AnimationBase::getNumProperties):
413         ditto
414
415 2008-09-03  Kevin McCullough  <kmccullough@apple.com>
416
417         Reviewed by Darin and Tim.
418
419         Remove most of the "zombie" mode from the profiler.  Next we will need
420         to remove the client callback mechanism in profiles.
421         - These changes are a result of changes to JSCore.
422
423         * manual-tests/inspector/profiler-test-nested-start-and-stop-profiler.html:
424         * page/Console.cpp:
425         (WebCore::retrieveLastCaller):
426         (WebCore::Console::profileEnd):
427         * page/InspectorController.cpp:
428         (WebCore::InspectorController::stopUserInitiatedProfiling):
429
430 2008-09-03  Adele Peterson  <adele@apple.com>
431
432         Reviewed by Darin Adler.
433
434         Test: fast/forms/search-display-none-cancel-button.html
435
436         Allow display:none to work on a search field's cancel button.  Prepare for adding more style-ability for the results button too.
437
438         * css/html4.css: Set display:inline-block for these buttons.  Now they can be overridden by a web author.
439
440         * rendering/RenderTextControl.cpp:
441         (WebCore::RenderTextControl::setStyle): Add nil checks for the button renderers.
442         (WebCore::RenderTextControl::createResultsButtonStyle): Don't set the display explicitly.  This is now done in html4.css.
443         (WebCore::RenderTextControl::createCancelButtonStyle): ditto.
444         (WebCore::RenderTextControl::createSubtreeIfNeeded):
445         Reorganize this code so our complicated way of adding shadow nodes is abstracted out into the TextControlInnerElement class.
446         (WebCore::RenderTextControl::updateFromElement): Added nil checks for the button renderers.
447         (WebCore::RenderTextControl::subtreeHasChanged): ditto.
448         (WebCore::RenderTextControl::calcHeight): ditto.
449         (WebCore::RenderTextControl::nodeAtPoint): ditto.
450         (WebCore::RenderTextControl::layout): ditto.
451         (WebCore::RenderTextControl::calcPrefWidths): ditto.
452         (WebCore::RenderTextControl::clientPaddingLeft): ditto.
453         (WebCore::RenderTextControl::clientPaddingRight): ditto.
454
455         * rendering/TextControlInnerElements.cpp:
456         (WebCore::RenderTextControlInnerBlock::RenderTextControlInnerBlock): Moved from RenderTextControl.cpp.
457         (WebCore::RenderTextControlInnerBlock::nodeAtPoint): ditto.
458         (WebCore::TextControlInnerElement::attachInnerElement): Added.
459          This does all the separate steps of attaching a shadow node that used to be repeated in RenderTextControl::createSubtreeIfNeeded for each element.
460         (WebCore::TextControlInnerTextElement::createRenderer): Added.  Creates a RenderTextControlInnerBlock.
461         * rendering/TextControlInnerElements.h:
462
463 2008-08-28  Alexey Proskuryakov  <ap@webkit.org>
464
465         Reviewed by Maciej.
466
467         Elminate SQLiteAuthorizer class.
468
469         * WebCore.xcodeproj/project.pbxproj:
470         * WebCore.vcproj/WebCore.vcproj:
471         * GNUmakefile.am
472         Removed SQLiteAuthorizer.h.
473
474         * platform/sql/SQLiteAuthorizer.cpp:
475         * platform/sql/SQLiteAuthorizer.h: Removed.
476         * platform/sql/SQLiteDatabase.cpp:
477         (WebCore::SQLiteDatabase::authorizerFunction):
478         (WebCore::SQLiteDatabase::setAuthorizer):
479         * platform/sql/SQLiteDatabase.h:
480         * storage/DatabaseAuthorizer.h:
481         (WebCore::DatabaseAuthorizer::create):
482         (WebCore::DatabaseAuthorizer::createView):
483         (WebCore::DatabaseAuthorizer::createTempView):
484         (WebCore::DatabaseAuthorizer::dropView):
485         (WebCore::DatabaseAuthorizer::dropTempView):
486         (WebCore::DatabaseAuthorizer::allowSelect):
487         (WebCore::DatabaseAuthorizer::allowReindex):
488         Merge SQLiteAuthorizer and DatabaseAuthorizer, as keeping them separate serves no purpose.
489
490 2008-09-03  Dirk Schulze  <vbs85@gmx.de>
491
492         Reviewed by Mark Rowe.
493
494         WebKitGtk build fix.
495
496         * GNUmakefile.am:
497         * page/animation/AnimationController.h:
498
499 2008-09-02  Robert Blaut  <webkit@blaut.biz>
500
501         Reviewed by Geoff Garen.
502
503         Fix for <https://bugs.webkit.org/show_bug.cgi?id=16913>
504         Misplaced elements should not close DL lists.
505
506         Test: fast/invalid/test-case-tr-th-td-should-not-close-dl-list.html
507
508         * html/HTMLParser.cpp:
509         (WebCore::HTMLParser::handleError):
510
511 2008-09-02  Glenn Wilson  <wilsong@gmail.com>
512
513         Reviewed by Darin Adler.
514
515         Fix for <https://bugs.webkit.org/show_bug.cgi?id=15360>
516         Bug 15360: color:#{predefined colorName} is treated as colorName in Safari
517
518         We would inappropriately interpret and apply an invalid CSS "color" property
519         when the value is a predefined color preceded by a '#' symbol.  For example,
520         style="color:#gray;" would apply the color gray when it should not.
521
522         In the bison template, "hexcolor" was defined as both "HEX maybe_space" OR "IDENT maybe_space".
523         This caused identifiers not fitting the appropriate hex format but preceded by a '#' to be 
524         interpreted as a valid color (CSSPrimitiveValue::CSS_PARSER_HEXCOLOR), when it was really just
525         an ignorable token.
526
527         To correct this, "IDENT maybe_space" was removed from "hexcolor" and added under "term" as
528         '#' IDENT maybe_space, which is then processed as a CSSPrimitiveValue::CSS_STRING instead of
529         CSSPrimitiveValue::CSS_PARSER_HEXCOLOR.
530
531         Test: css1/color_and_background/invalid_color.html
532
533         * css/CSSGrammar.y:
534
535 2008-09-02  Mihnea Ovidenie  <mihnea@adobe.com>
536
537         Reviewed by Darin Adler.
538
539         Fix for https://bugs.webkit.org/show_bug.cgi?id=19964
540         Bug 19964: Divide by zero crash in RenderBox::calculateBackgroundSize with 0,0 bmp background image
541
542         Add a check to RenderBox::repaintLayerRectsForImage to make sure the current layer image can be rendered.
543
544         Test: css3/khtml-background-size-0x0-bmp.html
545
546         * rendering/RenderBox.cpp:
547         (WebCore::RenderBox::repaintLayerRectsForImage):
548
549 2008-09-02  Glenn Wilson  <wilsong@gmail.com>
550
551         Reviewed by Eric Seidel.
552
553         Fix https://bugs.webkit.org/show_bug.cgi?id=20397
554         Bug 20397: Invalid webkit-border-bottom-left-radius property causes crash
555
556         The function checkForOrphanedUnits() would change the length of a list whose size was
557         was already determined before the call to checkForOrphanedUnits was made.  Later in
558         the caller, the old size was being used for boundary management.
559
560         This has been fixed by moving the call to checkForOrphanedUnits() earlier in the
561         calling function, before the size of the list is determined.
562
563         Test: fast/css/orphaned_units_crash.html
564
565         * css/CSSParser.cpp:
566         (WebCore::CSSParser::parseValue):  Moved call to checkForOrphanedUnits() earlier in the function.
567
568 2008-09-02  Dirk Schulze  <vbs85@gmx.de>
569
570         Reviewed by Darin Adler.
571
572         Fallback on invalid fill or stroke styles in Canvas was
573         transparent black. Changed it to last valid style.
574
575         Canvas fillStyle() and strokeStyle() needs fallback
576         https://bugs.webkit.org/show_bug.cgi?id=20474
577
578         Tests: fast/canvas/canvas-invalid-fillstyle.html
579                fast/canvas/canvas-invalid-strokestyle.html
580
581         * html/CanvasStyle.cpp:
582         (WebCore::CanvasStyle::applyStrokeColor):
583         (WebCore::CanvasStyle::applyFillColor):
584
585 2008-09-02  Dirk Schulze  <vbs85@gmx.de>
586
587         Reviewed by Darin Adler.
588
589         Fix https://bugs.webkit.org/show_bug.cgi?id=20468
590         Updated drawImage() in canvas to match the current specification.
591
592         Test: fast/canvas/drawImage-with-negative-source-destination.html
593
594         * html/CanvasRenderingContext2D.cpp:
595         (WebCore::normalizeRect):
596         (WebCore::CanvasRenderingContext2D::drawImage):
597
598 2008-08-26  Mark Rowe  <mrowe@apple.com>
599
600         Reviewed by Darin Adler.
601
602         <rdar://problem/5768210> Switch back to the system version of SQLite
603
604         Use the system version of SQLite when it is new enough to provide the functionality
605         that WebCore requires.
606
607         * Configurations/Base.xcconfig:
608         * Configurations/DebugRelease.xcconfig:
609         * Configurations/WebCore.xcconfig:
610
611 2008-09-02  Dan Bernstein  <mitz@apple.com>
612
613         - build fix
614
615         * page/animation/AnimationBase.h:
616
617 2008-09-02  Chris Marrin  <cmarrin@apple.com>
618
619         Reviewed by Dave Hyatt.
620
621         AnimationController.cpp should be split into separate files
622         https://bugs.webkit.org/show_bug.cgi?id=20604
623         
624         Note: All makefiles, except WebCore.xcodeproj have been changed without testing, upon
625         recommendation of Dave Hyatt.
626
627         * GNUmakefile.am:
628         * WebCore.pro:
629         * WebCore.vcproj/WebCore.vcproj:
630         * WebCore.xcodeproj/project.pbxproj:
631         * WebCoreSources.bkl:
632             Build files.
633         
634         * page/AnimationController.cpp: Removed.
635         * page/AnimationController.h: Removed.
636         * page/animation: Added.
637         * page/animation/AnimationBase.cpp: Added.
638         * page/animation/AnimationBase.h: Added.
639         * page/animation/AnimationController.cpp: Copied from WebCore/page/AnimationController.cpp.
640         * page/animation/AnimationController.h: Copied from WebCore/page/AnimationController.h.
641         * page/animation/CompositeAnimation.cpp: Added.
642         * page/animation/CompositeAnimation.h: Added.
643         * page/animation/ImplicitAnimation.cpp: Added.
644         * page/animation/ImplicitAnimation.h: Added.
645         * page/animation/KeyframeAnimation.cpp: Added.
646         * page/animation/KeyframeAnimation.h: Added.
647
648 2008-09-02  Dan Bernstein  <mitz@apple.com>
649
650         - release build fix
651
652         * platform/graphics/cg/GraphicsContextCG.cpp:
653         (WebCore::calculateDrawingMode):
654
655 2008-09-02  Timothy Hatcher  <timothy@apple.com>
656
657         Make console functions log the correct resource URL and
658         line number for where the call originated.
659
660         https://bugs.webkit.org/show_bug.cgi?id=17234
661         <rdar://problem/5732837>
662
663         Reviewed by Kevin McCullough.
664
665         Test: manual-tests/inspector/console-call-line-numbers.html
666
667         * bindings/js/JSConsoleCustom.cpp:
668         (WebCore::JSConsole::count): Call the impl.
669         (WebCore::JSConsole::timeEnd): Ditto.
670         * manual-tests/inspector/console-call-line-numbers.html: Added.
671         * manual-tests/inspector/resources/script-console-calls.js: Added.
672         * page/Console.cpp:
673         (WebCore::retrieveLastCaller): Helper to get the URL and line.
674         (WebCore::Console::error): Call retrieveLastCaller to get the URL and
675         line number to pass to addMessageToConsole.
676         (WebCore::Console::info): Ditto.
677         (WebCore::Console::log): Ditto.
678         (WebCore::Console::assertCondition): Ditto.
679         (WebCore::Console::count): Ditto.
680         (WebCore::Console::timeEnd): Ditto.
681         (WebCore::Console::warn): Ditto.
682         * page/Console.h:
683         * page/Console.idl: Make count and timeEnd custom.
684
685 2008-09-02  Timothy Hatcher  <timothy@apple.com>
686
687         Removed IDL files from WebCore's framework resources.
688
689         * WebCore.xcodeproj/project.pbxproj:
690
691 2008-09-02  Dan Bernstein  <mitz@apple.com>
692
693         Reviewed by Dave Hyatt.
694
695         - <rdar://problem/5681647> pages at http://www.stendmarsofa.com/ are so slow to calculate style it seems like a hang
696
697         * html/HTMLParser.cpp:
698         (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): Added a
699         cap on the number of consecutive identical residual style tags to
700         reopen.
701         (WebCore::HTMLParser::popBlock): Ditto.
702
703 2008-09-02  Alexey Proskuryakov  <ap@webkit.org>
704
705         Reviewed by Adam Roben.
706
707         A little database quota management cleanup.
708
709         * storage/OriginQuotaManager.cpp:
710         (WebCore::OriginQuotaManager::OriginQuotaManager):
711         (WebCore::OriginQuotaManager::lock):
712         (WebCore::OriginQuotaManager::unlock):
713         (WebCore::OriginQuotaManager::trackOrigin):
714         (WebCore::OriginQuotaManager::tracksOrigin):
715         (WebCore::OriginQuotaManager::addDatabase):
716         (WebCore::OriginQuotaManager::removeDatabase):
717         (WebCore::OriginQuotaManager::removeOrigin):
718         (WebCore::OriginQuotaManager::markDatabase):
719         (WebCore::OriginQuotaManager::diskUsage):
720         * storage/OriginQuotaManager.h:
721         Changed to assert that a lock is taken more directly and reliably. Removed comments about
722         main/background threads, as this is likely to stop being true with synchronous Database calls
723         being made on worker threads.
724
725         * storage/OriginUsageRecord.cpp:
726         (WebCore::OriginUsageRecord::OriginUsageRecord):
727         (WebCore::OriginUsageRecord::addDatabase):
728         (WebCore::OriginUsageRecord::removeDatabase):
729         (WebCore::OriginUsageRecord::markDatabase):
730         (WebCore::OriginUsageRecord::diskUsage):
731         * storage/OriginUsageRecord.h:
732         (WebCore::OriginUsageRecord::DatabaseEntry::DatabaseEntry):
733         Don't use a magic value for unknown. It is totally unnecessary for DatabaseEntry, and
734         can be replaced with a single boolean for OriginUsageRecord.
735         Added assertions for string parameters being unshared.
736
737
738 2008-09-01  Adam Barth  <abarth@webkit.org>
739
740         Reviewed by Sam Weinig.
741
742         https://bugs.webkit.org/show_bug.cgi?id=19760
743
744         Make granting LoadLocalResources conditional on a policy.
745
746         * WebCore.base.exp:
747         * dom/Document.cpp:
748         (WebCore::Document::initSecurityContext):
749         * loader/FrameLoader.cpp:
750         (WebCore::FrameLoader::setLocalLoadPolicy):
751         (WebCore::FrameLoader::restrictAccessToLocal):
752         * loader/FrameLoader.h:
753         (WebCore::FrameLoader::):
754         * platform/SecurityOrigin.cpp:
755         (WebCore::SecurityOrigin::grantLoadLocalResources):
756         * platform/SecurityOrigin.h:
757
758 2008-09-01  Dean Jackson  <dino@apple.com>
759
760         Reviewed by Sam Weinig.
761
762         https://bugs.webkit.org/show_bug.cgi?id=20571
763         Make sure Window object can assign Animation/Transition event
764         listeners via attributes.
765
766         Also added a bunch of transition event tests, although
767         only transition-end-event-window is directly relevant to this patch.
768
769         (WebCore::JSDOMWindowBase::put):
770
771         Tests: transitions/transition-end-event-all-properties.html
772                transitions/transition-end-event-attributes.html
773                transitions/transition-end-event-container.html
774                transitions/transition-end-event-left.html
775                transitions/transition-end-event-multiple-01.html
776                transitions/transition-end-event-multiple-02.html
777                transitions/transition-end-event-multiple-03.html
778                transitions/transition-end-event-multiple-04.html
779                transitions/transition-end-event-nested.html
780                transitions/transition-end-event-transform.html
781                transitions/transition-end-event-window.html
782
783 2008-09-01  Dean Jackson  <dino@apple.com>
784
785         Reviewed by Sam Weinig
786
787         Code styling cleanup.
788
789         * bindings/js/JSDOMWindowBase.cpp:
790         (WebCore::JSDOMWindowBase::getValueProperty):
791         (WebCore::JSDOMWindowBase::put):
792
793 2008-09-01  Geoffrey Garen  <ggaren@apple.com>
794
795         Reviewed by Darin Adler.
796
797         First cut at inline caching for access to vanilla JavaScript properties.
798
799         Updated for JavaScriptCore changes. Mostly mechanical addition of StructureIDs
800         to WebCore classes, and PutPropertySlot& arguments to put functions.
801
802         (WebCore::JSCSSStyleDeclaration::customPut): Be sure to play nice with
803         inline caching for global properties, so global assignment can be optimized.
804
805         * ForwardingHeaders/kjs/StructureID.h: Added.
806         * bindings/js/JSDOMBinding.h:
807         (WebCore::DOMObject::DOMObject):
808         * bindings/js/JSDOMWindowBase.cpp:
809         (WebCore::JSDOMWindowBase::put):
810         * bindings/js/JSDOMWindowBase.h:
811         * bindings/js/JSDOMWindowCustom.h:
812         (WebCore::JSDOMWindow::customPut):
813         * bindings/js/JSDOMWindowShell.cpp:
814         (WebCore::JSDOMWindowShell::JSDOMWindowShell):
815         (WebCore::JSDOMWindowShell::put):
816         * bindings/js/JSDOMWindowShell.h:
817         * bindings/js/JSEventTargetBase.h:
818         (WebCore::JSEventTargetBase::put):
819         * bindings/js/JSEventTargetNode.h:
820         (WebCore::JSEventTargetNode::put):
821         * bindings/js/JSHTMLAppletElementCustom.cpp:
822         (WebCore::JSHTMLAppletElement::customPut):
823         * bindings/js/JSHTMLEmbedElementCustom.cpp:
824         (WebCore::JSHTMLEmbedElement::customPut):
825         * bindings/js/JSHTMLInputElementBase.cpp:
826         (WebCore::JSHTMLInputElementBase::put):
827         * bindings/js/JSHTMLInputElementBase.h:
828         * bindings/js/JSHTMLObjectElementCustom.cpp:
829         (WebCore::JSHTMLObjectElement::customPut):
830         * bindings/js/JSHistoryCustom.cpp:
831         (WebCore::JSHistory::customPut):
832         * bindings/js/JSInspectedObjectWrapper.cpp:
833         (WebCore::JSInspectedObjectWrapper::wrap):
834         (WebCore::JSInspectedObjectWrapper::JSInspectedObjectWrapper):
835         * bindings/js/JSInspectedObjectWrapper.h:
836         * bindings/js/JSInspectorCallbackWrapper.cpp:
837         (WebCore::JSInspectorCallbackWrapper::wrap):
838         (WebCore::JSInspectorCallbackWrapper::JSInspectorCallbackWrapper):
839         * bindings/js/JSInspectorCallbackWrapper.h:
840         * bindings/js/JSLocationCustom.cpp:
841         (WebCore::JSLocation::customPut):
842         * bindings/js/JSPluginElementFunctions.cpp:
843         (WebCore::runtimeObjectCustomPut):
844         * bindings/js/JSPluginElementFunctions.h:
845         * bindings/js/JSQuarantinedObjectWrapper.cpp:
846         (WebCore::JSQuarantinedObjectWrapper::JSQuarantinedObjectWrapper):
847         (WebCore::JSQuarantinedObjectWrapper::put):
848         * bindings/js/JSQuarantinedObjectWrapper.h:
849         * bindings/js/JSStorageCustom.cpp:
850         (WebCore::JSStorage::customPut):
851         * bindings/objc/WebScriptObject.mm:
852         (-[WebScriptObject setValue:forKey:]):
853         * bindings/scripts/CodeGeneratorJS.pm:
854         * bridge/NP_jsobject.cpp:
855         (_NPN_SetProperty):
856         * bridge/jni/jni_jsobject.mm:
857         (JavaJSObject::setMember):
858         * bridge/objc/objc_class.mm:
859         (KJS::Bindings::ObjcClass::fallbackObject):
860         * bridge/objc/objc_runtime.h:
861         * bridge/objc/objc_runtime.mm:
862         (ObjcFallbackObjectImp::ObjcFallbackObjectImp):
863         (ObjcFallbackObjectImp::put):
864         * bridge/runtime.cpp:
865         (KJS::Bindings::Instance::createRuntimeObject):
866         * bridge/runtime_array.cpp:
867         (RuntimeArray::put):
868         * bridge/runtime_array.h:
869         * bridge/runtime_object.cpp:
870         (RuntimeObjectImp::RuntimeObjectImp):
871         (RuntimeObjectImp::put):
872         * bridge/runtime_object.h:
873
874 2008-09-01  Dirk Schulze  <vbs85@gmx.de>
875
876         Reviewed by Eric Seidel.
877
878         Fixed border-radius for Cairo.
879
880         * platform/graphics/cairo/GraphicsContextCairo.cpp:
881         (WebCore::GraphicsContext::strokeArc):
882
883 2008-09-01  Dirk Schulze  <vbs85@gmx.de>
884
885         Reviewed by Eric Seidel.
886
887         Added canvas's globalAlpha to cairo.
888
889         * platform/graphics/GraphicsContext.h:
890         * platform/graphics/cairo/GraphicsContextCairo.cpp:
891         (WebCore::GraphicsContext::fillPath):
892         (WebCore::GraphicsContext::strokePath):
893         (WebCore::GraphicsContext::setAlpha):
894         (WebCore::GraphicsContext::getAlpha):
895         * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
896         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
897         * platform/graphics/cairo/ImageCairo.cpp:
898         (WebCore::BitmapImage::draw):
899
900 2008-08-31  Simon Hausmann  <hausmann@webkit.org>
901
902         Unreviewed Qt build fix.
903
904         * WebCore.pro: Add TextControlInnerElements.cpp to SOURCES instead of
905         the .h file
906
907 2008-08-30  Darin Adler  <darin@apple.com>
908
909         Reviewed by Maciej.
910
911         - adopt some new JavaScriptCore functions where appropriate
912
913         * bindings/js/JSDOMWindowBase.cpp:
914         (WebCore::windowProtoFuncAToB): Adopted jsEmptyString.
915         (WebCore::windowProtoFuncBToA): Ditto.
916         * bindings/js/JSEventListener.cpp:
917         (WebCore::JSLazyEventListener::eventParameterName): Adopted
918         jsNontrivialString.
919         * bindings/js/JSSVGLazyEventListener.cpp:
920         (WebCore::JSSVGLazyEventListener::eventParameterName): Ditto.
921
922 2008-08-29  Brady Eidson  <beidson@apple.com>
923
924         Reviewed by Anders' rubberstamp
925
926         Style cleanup to match MediaTokenizer::writeRawData()
927
928         * loader/PluginDocument.cpp:
929         (WebCore::PluginTokenizer::writeRawData):
930
931 2008-08-29  Brady Eidson  <beidson@apple.com>
932
933         Reviewed by Anders
934
935         Fix regression I introducted in 35946
936         Already covered by media/video-click-dlbclick-standalone.html
937
938         * loader/MediaDocument.cpp:
939         (WebCore::MediaTokenizer::createDocumentStructure): Don't cancel the load here - too early!
940         (WebCore::MediaTokenizer::writeRawData): Call finish() here so onload() can be called.  Also add
941           an ASSERT signifying that this method should only be called once, to more closely follow the
942           PluginDocument case.
943
944 2008-08-29  Beth Dakin  <bdakin@apple.com>
945
946         Reviewed by Sam Weinig.
947
948         Fix for <rdar://problem/6181588>
949
950         This patch makes hit testing take into account the new concept of a 
951         disconnected frame, in which some of the content may not be 
952         visible. The current hit testing mechanism starts at a target frame 
953         and drills down for a HitTestResult. In some cases, drilling down 
954         will find a non-visible result. When this happens, we need to try 
955         again, starting at a higher level -- namely, starting at the main 
956         frame.
957
958         * editing/Editor.cpp:
959         (WebCore::Editor::insideVisibleArea): New function that tests if a 
960         point is inside the visible area for a disconnected frame.
961         * editing/Editor.h:
962         * page/EventHandler.cpp:
963         (WebCore::EventHandler::hitTestResultAtPoint):
964
965 2008-08-29  Adele Peterson  <adele@apple.com>
966
967         Reviewed by Adam Roben. 
968
969         Rename HTMLTextFieldInnerElement.h/.cpp to TextControlInnerElements.h/.cpp
970
971         * GNUmakefile.am:
972         * WebCore.pro:
973         * WebCore.vcproj/WebCore.vcproj:
974         * WebCore.xcodeproj/project.pbxproj:
975         * WebCoreSources.bkl:
976         * html/HTMLTextFieldInnerElement.cpp: Removed.
977         * html/HTMLTextFieldInnerElement.h: Removed.
978         * rendering/RenderTextControl.cpp:
979         (WebCore::RenderTextControl::createSubtreeIfNeeded):
980         * rendering/RenderTextControl.h:
981         * rendering/TextControlInnerElements.cpp: Copied from html/HTMLTextFieldInnerElement.cpp.
982         (WebCore::TextControlInnerElement::TextControlInnerElement):
983         (WebCore::TextControlInnerTextElement::TextControlInnerTextElement):
984         (WebCore::TextControlInnerTextElement::defaultEventHandler):
985         (WebCore::SearchFieldResultsButtonElement::SearchFieldResultsButtonElement):
986         (WebCore::SearchFieldResultsButtonElement::defaultEventHandler):
987         (WebCore::SearchFieldCancelButtonElement::SearchFieldCancelButtonElement):
988         (WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
989         * rendering/TextControlInnerElements.h: Copied from html/HTMLTextFieldInnerElement.h.
990
991 2008-08-29  Eric Seidel  <eric@webkit.org>
992
993         Rubber-stamped by aroben.
994
995         Add GraphicsContext.h include to GraphcisContextPrivate.h
996
997         GraphicsContextPrivate uses StrokeStyle which is defined
998         in GraphicsContext.h but it doesn't include that header.
999         CoreGraphics build doesn't fail here due to the order
1000         it happens to include files.
1001
1002         * platform/graphics/GraphicsContextPrivate.h:
1003
1004 2008-08-29  Eric Seidel  <eric@webkit.org>
1005
1006         Reviewed by hyatt.
1007
1008         Fix GeneratedImage to respect Image's refcounting
1009         Fixing potential crashers (future if not current)
1010         https://bugs.webkit.org/show_bug.cgi?id=20567
1011         
1012         I don't know if it's possible to make the current code
1013         crash, thus I've not made a test.
1014
1015         * css/CSSGradientValue.cpp:
1016         (WebCore::CSSGradientValue::image):
1017         * css/CSSImageGeneratorValue.cpp:
1018         (WebCore::CSSImageGeneratorValue::removeClient):
1019         (WebCore::CSSImageGeneratorValue::getImage):
1020         * css/CSSImageGeneratorValue.h:
1021         * platform/graphics/GeneratedImage.h:
1022         (WebCore::GeneratedImage::GeneratedImage):
1023         * rendering/style/RenderStyle.cpp:
1024         (WebCore::RenderStyle::setContent):
1025         * rendering/style/RenderStyle.h:
1026
1027 2008-08-29  Eric Carlson  <eric.carlson@apple.com>
1028
1029         Reviewed by Adele.
1030
1031         Fix for <rdar://problem/6093767>
1032         https://bugs.webkit.org/show_bug.cgi?id=20526
1033
1034         Don't allow video to render until unsupported track types have been disabled.
1035
1036         * platform/graphics/win/QTMovieWin.cpp:
1037         (QTMovieWinPrivate::task):
1038         (QTMovieWinPrivate::drawingComplete):
1039         (QTMovieWinPrivate::clearGWorld):
1040
1041 2008-08-29  Eric Carlson  <eric.carlson@apple.com>
1042
1043         Reviewed by Adele.
1044
1045         Fix for https://bugs.webkit.org/show_bug.cgi?id=20525
1046         <rdar://problem/6169301>
1047         
1048         Return the size of the movie data instead of 1000.
1049         
1050         Test: media/progress-event-total.html
1051
1052         * platform/graphics/win/QTMovieWin.cpp:
1053         (QTMovieWin::dataSize):
1054
1055 2008-08-29  Holger Hans Peter Freyther  <zecke@selfish.org>
1056
1057         Reviewed by Eric Seidel.
1058
1059         [janitor/qt] Start replacing port specific getters with the generic native getter
1060         To get the native presentation of an image we currently have platform
1061         specific #ifdef's and a generic getter using NativeImagePtr. This patch
1062         extends this to the ImageBuffer and updates the Qt platform to get rid
1063         of the special #ifdefs.
1064
1065         https://bugs.webkit.org/attachment.cgi?id=22861
1066
1067         * platform/graphics/BitmapImage.h:
1068         * platform/graphics/Image.h:
1069         * platform/graphics/qt/ImageQt.cpp:
1070         * platform/graphics/qt/StillImageQt.cpp:
1071         * platform/graphics/qt/StillImageQt.h:
1072         * platform/qt/ClipboardQt.cpp:
1073         (WebCore::ClipboardQt::createDragImage):
1074         (WebCore::ClipboardQt::declareAndWriteDragImage):
1075         * platform/qt/CursorQt.cpp:
1076         * platform/qt/PasteboardQt.cpp:
1077         (WebCore::Pasteboard::writeImage):
1078
1079 2008-08-29  Holger Hans Peter Freyther  <zecke@selfish.org>
1080
1081         Reviewed by Simon.
1082
1083         [svg/qt] Stop crashing... when no RenderPath/RenderObject is given...
1084
1085         * svg/graphics/qt/SVGPaintServerQt.cpp:
1086         (WebCore::SVGPaintServer::renderPath):
1087         * svg/graphics/qt/SVGPaintServerSolidQt.cpp:
1088         (WebCore::SVGPaintServerSolid::setup):
1089
1090 2008-08-29  Holger Hans Peter Freyther  <zecke@selfish.org>
1091
1092         Reviewed by Simon.
1093
1094         [network/qt] Implement defering of loading ResourceHandle's
1095         This is needed otherwise we end in an ASSERT in the MainResourceLoader. The
1096         implementation is simply not forwarding anything to the
1097         ResourceHandleClient until we are allowed to. This might lead to a deadlock
1098         in Qt as we do not empty the QNetworkReply input buffer and wait until we
1099         are allowed to read. If that happens we are forced to buffer the data
1100         within QNetworkReplyHandler, for now this is not done.
1101
1102         Manual test:
1103         - Open http://acid3.acidtests.org
1104         - Wait for the test to complete
1105         - Click on the Reference Rendering link
1106         - Be fast and see the results of acid3
1107         => assert
1108
1109         * platform/network/qt/QNetworkReplyHandler.cpp:
1110         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
1111         (WebCore::QNetworkReplyHandler::setLoadMode):
1112         (WebCore::QNetworkReplyHandler::finish):
1113         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
1114         (WebCore::QNetworkReplyHandler::forwardData):
1115         (WebCore::QNetworkReplyHandler::start):
1116         (WebCore::QNetworkReplyHandler::resetState):
1117         (WebCore::QNetworkReplyHandler::sendQueuedItems):
1118         * platform/network/qt/QNetworkReplyHandler.h:
1119         (WebCore::QNetworkReplyHandler::):
1120         * platform/network/qt/ResourceHandleQt.cpp:
1121         (WebCore::ResourceHandle::start):
1122         (WebCore::ResourceHandle::loadResourceSynchronously):
1123         (WebCore::ResourceHandle::setDefersLoading):
1124
1125 2008-08-29  Simon Hausmann  <hausmann@webkit.org>
1126
1127         Reviewed by Holger.
1128
1129         Don't crash when drawing patterns with the HTML canvas. Patterns
1130         remain unimplemented but at least they don't crash anymore. This is
1131         done by changing the PlatformPatternPtr to be a brush for the Qt
1132         platform.
1133
1134         * platform/graphics/Pattern.h:
1135         * platform/graphics/qt/GraphicsContextQt.cpp:
1136         (WebCore::GraphicsContext::fillPath):
1137         (WebCore::GraphicsContext::strokePath):
1138         (WebCore::GraphicsContext::fillRect):
1139         * platform/graphics/qt/PatternQt.cpp:
1140         (WebCore::Pattern::createPlatformPattern):
1141
1142 2008-08-29  Simon Hausmann  <hausmann@webkit.org>
1143
1144         Fix the Qt build, fontSelector() is not used by the Qt port yet
1145         and we just return 0 in Font::fontSelector().
1146
1147         * platform/graphics/Font.h:
1148
1149 2008-08-28  Alp Toker  <alp@nuanti.com>
1150
1151         GTK+ dist/build fix. List newly added header files.
1152
1153         * GNUmakefile.am:
1154
1155 2008-08-28  Simon Fraser  <simon.fraser@apple.com>
1156
1157         Reviewed by Dave Hyatt
1158
1159         Various WebKitCSSTransformValue-related fixes
1160         https://bugs.webkit.org/show_bug.cgi?id=20562
1161
1162         Test: css3/transform-value-types.html
1163
1164         * bindings/js/JSCSSValueCustom.cpp:
1165         (WebCore::toJS):
1166         * css/CSSValue.h:
1167         * css/WebKitCSSTransformValue.cpp:
1168         (WebCore::WebKitCSSTransformValue::cssText):
1169         * css/WebKitCSSTransformValue.h:
1170         (WebCore::WebKitCSSTransformValue::):
1171         * css/WebKitCSSTransformValue.idl:
1172
1173 2008-08-28  Dan Bernstein  <mitz@apple.com>
1174
1175         Reviewed by Steve Falkenburg.
1176
1177         - do not let the "last chance" WM_TIMER trigger WebCore timers when they should be deferred
1178
1179         * platform/win/SharedTimerWin.cpp:
1180         (WebCore::TimerWindowWndProc):
1181
1182 2008-08-28  David Hyatt  <hyatt@apple.com>
1183
1184         RenderStyle cleanup.
1185
1186         Break out StyleImage, StyleGeneratedImage, StyleCachedImage and NinePieceImage into separate files.
1187
1188         Reviewed by Adam
1189
1190         * css/CSSImageGeneratorValue.cpp:
1191         * css/CSSImageValue.cpp:
1192         * css/CSSStyleSelector.cpp:
1193         * rendering/RenderImageGeneratedContent.cpp:
1194         * rendering/style/NinePieceImage.cpp: Added.
1195         * rendering/style/NinePieceImage.h: Added.
1196         * rendering/style/RenderStyle.cpp:
1197         (WebCore::FillLayer::operator==):
1198         (WebCore::FillLayer::containsImage):
1199         (WebCore::StyleInheritedData::operator==):
1200         (WebCore::RenderStyle::contentDataEquivalent):
1201         * rendering/style/RenderStyle.h:
1202         * rendering/style/StyleCachedImage.cpp: Added.
1203         * rendering/style/StyleCachedImage.h: Added.
1204         * rendering/style/StyleGeneratedImage.cpp: Added.
1205         * rendering/style/StyleGeneratedImage.h: Added.
1206         * rendering/style/StyleImage.h: Added.
1207
1208 2008-08-28  Simon Fraser  <simon.fraser@apple.com>
1209
1210         Reviewed by Dave Hyatt
1211
1212         Make all the 'isFoo()' methods on CSSValue const,
1213         and fix the subclasses.
1214         
1215         https://bugs.webkit.org/show_bug.cgi?id=20561
1216         
1217         * css/CSSTimingFunctionValue.h:
1218         * css/CSSValue.h:
1219         (WebCore::CSSValue::isFontValue):
1220         (WebCore::CSSValue::isImageGeneratorValue):
1221         (WebCore::CSSValue::isImageValue):
1222         (WebCore::CSSValue::isImplicitInitialValue):
1223         * css/CSSValueList.h:
1224         * css/FontValue.h:
1225
1226 2008-08-28  David Hyatt  <hyatt@apple.com>
1227
1228         The great RenderStyle cleanup begins!
1229
1230         Move LengthBox and LengthSize out of RenderStyle and into Length.
1231
1232         Reviewed by Adam
1233
1234         * rendering/Length.h:
1235         (WebCore::):
1236         (WebCore::Length::Length):
1237         (WebCore::Length::operator==):
1238         (WebCore::Length::operator!=):
1239         (WebCore::Length::value):
1240         (WebCore::Length::rawValue):
1241         (WebCore::Length::percent):
1242         (WebCore::Length::type):
1243         (WebCore::Length::quirk):
1244         (WebCore::Length::setValue):
1245         (WebCore::Length::setRawValue):
1246         (WebCore::Length::calcValue):
1247         (WebCore::Length::calcMinValue):
1248         (WebCore::Length::calcFloatValue):
1249         (WebCore::Length::isUndefined):
1250         (WebCore::Length::isZero):
1251         (WebCore::Length::isPositive):
1252         (WebCore::Length::isNegative):
1253         (WebCore::Length::isAuto):
1254         (WebCore::Length::isRelative):
1255         (WebCore::Length::isPercent):
1256         (WebCore::Length::isFixed):
1257         (WebCore::Length::isStatic):
1258         (WebCore::Length::isIntrinsicOrAuto):
1259         (WebCore::Length::blend):
1260         (WebCore::LengthBox::LengthBox):
1261         (WebCore::LengthBox::operator=):
1262         (WebCore::LengthBox::operator==):
1263         (WebCore::LengthBox::operator!=):
1264         (WebCore::LengthBox::nonZero):
1265         (WebCore::LengthSize::LengthSize):
1266         * rendering/style/RenderStyle.h:
1267
1268 2008-08-28  David Hyatt  <hyatt@apple.com>
1269
1270         Reviewed by Darin
1271
1272         https://bugs.webkit.org/show_bug.cgi?id=18091
1273
1274         font-size should be animatable using -webkit-transition.
1275
1276         * page/AnimationController.cpp:
1277         (WebCore::AnimationControllerPrivate::ensurePropertyMap):
1278         * rendering/style/RenderStyle.h:
1279         (WebCore::RenderStyle::setFontSize):
1280
1281 2008-08-28  Brad Garcia  <bgarcia@google.com>
1282
1283         Reviewed by Dan Bernstein.
1284
1285         https://bugs.webkit.org/show_bug.cgi?id=20549
1286         Correctly determine when cursor is over a resizable border within
1287         a nested frameset.
1288
1289         * rendering/RenderFrameSet.cpp:
1290         (WebCore::RenderFrameSet::canResizeRow):
1291         (WebCore::RenderFrameSet::canResizeColumn):
1292
1293 2008-08-28  Simon Fraser  <simon.fraser@apple.com>
1294
1295         Reviewed by Eric Seidel
1296
1297         Add RuleTypes to CSSRule.idl for keyframes and keyframe rules.
1298         https://bugs.webkit.org/show_bug.cgi?id=20552
1299
1300         Test: animations/animation-css-rule-types.html
1301
1302         * css/CSSRule.idl:
1303
1304 2008-08-28  Anders Carlsson  <andersca@apple.com>
1305
1306         Reviewed by Kevin and Darin.
1307
1308         <rdar://problem/6182541>
1309         https://bugs.webkit.org/show_bug.cgi?id=20202
1310         Missing http status line from the http headers.
1311         
1312         Add a status line to the header string.
1313         
1314         * plugins/PluginStream.cpp:
1315         (WebCore::PluginStream::startStream):
1316
1317 2008-08-28  Holger Hans Peter Freyther  <zecke@selfish.org>
1318
1319         Rubber-stamped by Darin Adler.
1320
1321         https://bugs.webkit.org/show_bug.cgi?id=17261
1322
1323         Make it possible to theme the default Url icon and enable this for
1324         the Qt port. To have a minimal usage of #ifdef in the code the setting
1325         of the icon was moved to a new method which comes in two flavors.
1326
1327         * loader/icon/IconDatabase.cpp:
1328         (WebCore::loadDefaultIconRecord): Load or set the default icon
1329         (WebCore::IconDatabase::defaultIcon):
1330
1331 2008-08-28  Holger Hans Peter Freyther <zecke@selfish.org>
1332
1333         Unreviewed compile fix
1334
1335         * platform/graphics/qt/GraphicsContextQt.cpp: Remove redefinitions
1336
1337 2008-08-28  Adam Roben  <aroben@apple.com>
1338
1339         Windows (and others?) build fix
1340
1341         * page/Chrome.cpp: Added a missing #include.
1342         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer): Fixed typo.
1343
1344 2008-08-27  Eric Seidel  <eric@webkit.org>
1345
1346         Reviewed by Oliver Hunt.
1347
1348         Qt and Cairo support from krit (and blind stab @ wx compile support)
1349         https://bugs.webkit.org/show_bug.cgi?id=20373
1350
1351         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1352         (WebCore::GraphicsContext::fillPath):
1353         (WebCore::GraphicsContext::strokePath):
1354         (WebCore::GraphicsContext::drawPath):
1355         (WebCore::GraphicsContext::fillRect):
1356         (WebCore::GraphicsContext::setPlatformFillColor):
1357         (WebCore::GraphicsContext::setPlatformStrokeColor):
1358         (WebCore::GraphicsContext::setPlatformStrokeStyle):
1359         (WebCore::GraphicsContext::strokeRect):
1360         (WebCore::GraphicsContext::setImageInterpolationQuality):
1361         (WebCore::GraphicsContext::imageInterpolationQuality):
1362         (WebCore::GraphicsContext::setPlatformFillPattern):
1363         (WebCore::GraphicsContext::setPlatformStrokePattern):
1364         (WebCore::GraphicsContext::setPlatformFillGradient):
1365         (WebCore::GraphicsContext::setPlatformStrokeGradient):
1366         * platform/graphics/qt/GraphicsContextQt.cpp:
1367         (WebCore::GraphicsContext::fillPath):
1368         (WebCore::GraphicsContext::strokePath):
1369         (WebCore::GraphicsContext::fillRect):
1370         (WebCore::GraphicsContext::strokeRect):
1371         (WebCore::GraphicsContext::clipToImageBuffer):
1372         (WebCore::GraphicsContext::setPlatformFillPattern):
1373         (WebCore::GraphicsContext::setPlatformStrokePattern):
1374         (WebCore::GraphicsContext::setPlatformFillGradient):
1375         (WebCore::GraphicsContext::setPlatformStrokeGradient):
1376         (WebCore::GraphicsContext::setImageInterpolationQuality):
1377         (WebCore::GraphicsContext::imageInterpolationQuality):
1378         * platform/graphics/wx/GraphicsContextWx.cpp:
1379         (WebCore::GraphicsContext::clipToImageBuffer):
1380         (WebCore::GraphicsContext::setImageInterpolationQuality):
1381         (WebCore::GraphicsContext::imageInterpolationQuality):
1382         (WebCore::GraphicsContext::fillPath):
1383         (WebCore::GraphicsContext::strokePath):
1384         (WebCore::GraphicsContext::drawPath):
1385         (WebCore::GraphicsContext::fillRect):
1386         (WebCore::GraphicsContext::setPlatformFillPattern):
1387         (WebCore::GraphicsContext::setPlatformStrokePattern):
1388         (WebCore::GraphicsContext::setPlatformFillGradient):
1389
1390 2008-08-27  Eric Seidel  <eric@webkit.org>
1391
1392         Reviewed by Oliver Hunt.
1393
1394         Add stroke/fill Gradient and Pattern support to GraphicsContext and update <canvas> to use it.
1395         https://bugs.webkit.org/show_bug.cgi?id=20373
1396
1397         Changed pattern() to canvasPattern() on CanvasStyle to match canvasGradient()
1398         
1399         Made Generator (aka Gradient) RefCounted so that GraphicsContext didn't
1400         have to store large Gradient objects in the GraphicsContextState
1401         
1402         Made Pattern RefCounted for the same reason.
1403         
1404         Many updates to GraphicsContext to support easier drawing with
1405         Patterns and Gradients.
1406
1407         * WebCore.xcodeproj/project.pbxproj: Add pre-existing GraphicsContextPrivate.h
1408         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
1409         (WebCore::toJS):
1410         * css/CSSGradientValue.cpp:
1411         (WebCore::CSSGradientValue::createGradient):
1412         * css/CSSGradientValue.h:
1413         * html/CanvasGradient.cpp:
1414         (WebCore::CanvasGradient::CanvasGradient):
1415         * html/CanvasGradient.h:
1416         (WebCore::CanvasGradient::gradient):
1417         (WebCore::CanvasGradient::addColorStop):
1418         (WebCore::CanvasGradient::getColor):
1419         * html/CanvasPattern.cpp:
1420         * html/CanvasPattern.h:
1421         (WebCore::CanvasPattern::pattern):
1422         (WebCore::CanvasPattern::originClean):
1423         * html/CanvasRenderingContext2D.cpp:
1424         (WebCore::CanvasRenderingContext2D::State::State):
1425         (WebCore::CanvasRenderingContext2D::setStrokeStyle):
1426         (WebCore::CanvasRenderingContext2D::setFillStyle):
1427         (WebCore::CanvasRenderingContext2D::fill):
1428         (WebCore::CanvasRenderingContext2D::stroke):
1429         (WebCore::CanvasRenderingContext2D::fillRect):
1430         (WebCore::CanvasRenderingContext2D::strokeRect):
1431         * html/CanvasRenderingContext2D.h:
1432         * html/CanvasStyle.cpp:
1433         (WebCore::CanvasStyle::applyStrokeColor):
1434         (WebCore::CanvasStyle::applyFillColor):
1435         * html/CanvasStyle.h:
1436         * platform/graphics/GeneratedImage.h:
1437         (WebCore::GeneratedImage::GeneratedImage):
1438         * platform/graphics/Generator.h:
1439         * platform/graphics/Gradient.h:
1440         (WebCore::Gradient::create):
1441         * platform/graphics/GraphicsContext.cpp:
1442         (WebCore::GraphicsContext::fillRule):
1443         (WebCore::GraphicsContext::setFillRule):
1444         (WebCore::GraphicsContext::setStrokePattern):
1445         (WebCore::GraphicsContext::setFillPattern):
1446         (WebCore::GraphicsContext::setStrokeGradient):
1447         (WebCore::GraphicsContext::setFillGradient):
1448         * platform/graphics/GraphicsContext.h:
1449         * platform/graphics/GraphicsContextPrivate.h:
1450         (WebCore::):
1451         (WebCore::GraphicsContextState::GraphicsContextState):
1452         * platform/graphics/GraphicsTypes.h:
1453         * platform/graphics/Path.h:
1454         * platform/graphics/Pattern.h:
1455         (WebCore::Pattern::create):
1456         (WebCore::Pattern::tileImage):
1457         * platform/graphics/cg/GraphicsContextCG.cpp:
1458         (WebCore::GraphicsContext::drawRect):
1459         (WebCore::GraphicsContext::drawEllipse):
1460         (WebCore::GraphicsContext::drawConvexPolygon):
1461         (WebCore::calculateDrawingMode):
1462         (WebCore::GraphicsContext::drawPath):
1463         (WebCore::fillPathWithFillRule):
1464         (WebCore::GraphicsContext::fillPath):
1465         (WebCore::GraphicsContext::strokePath):
1466         (WebCore::GraphicsContext::fillRect):
1467         (WebCore::GraphicsContext::fillRoundedRect):
1468         (WebCore::GraphicsContext::setPlatformStrokePattern):
1469         (WebCore::GraphicsContext::setPlatformFillPattern):
1470         (WebCore::GraphicsContext::setPlatformStrokeGradient):
1471         (WebCore::GraphicsContext::setPlatformFillGradient):
1472
1473 2008-08-20  Eric Seidel  <eric@webkit.org>
1474
1475         Reviewed by Darin and Alexey.
1476
1477         Close a leak of PausedTimeouts if the JavaScriptDebugServer was destroyed
1478         with timeouts paused.
1479         https://bugs.webkit.org/show_bug.cgi?id=20469
1480         
1481         I attempted to clean up the memory management of PausedTimeouts, I'm not
1482         sure the solution I came up with is "cleaner", but it's in some ways
1483         "safer", since it no longer uses raw pointers and manual new/delete.
1484         
1485         This also now prevents CachedPage from needlessly creating Window
1486         objects when caching pages which didn't already have one. :)
1487         
1488         I also made Chrome.cpp no longer depend on the JavaScript bindings
1489         (aka JSDOMWindowBase.h), since there was no real reason for it to.
1490
1491         * bindings/js/JSDOMWindowBase.cpp:
1492         (WebCore::JSDOMWindowBase::pauseTimeouts):
1493         (WebCore::JSDOMWindowBase::resumeTimeouts):
1494         * bindings/js/JSDOMWindowBase.h:
1495         * bindings/js/ScriptController.cpp:
1496         (WebCore::ScriptController::pauseTimeouts):
1497         (WebCore::ScriptController::resumeTimeouts):
1498         * bindings/js/ScriptController.h:
1499         * history/CachedPage.cpp:
1500         (WebCore::CachedPage::CachedPage):
1501         (WebCore::CachedPage::restore):
1502         * page/Chrome.cpp:
1503         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
1504         (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
1505         * page/JavaScriptDebugServer.cpp:
1506         (WebCore::JavaScriptDebugServer::~JavaScriptDebugServer):
1507         (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
1508
1509 2008-08-27  Holger Hans Peter Freyther <zecke@selfish.org>
1510
1511         Unreviewed compile fix
1512
1513         Add the stub for the Qt port.
1514
1515         * WebCore.pro:
1516         * page/qt/AccessibilityObjectQt.cpp: Added.
1517         (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
1518
1519 2008-08-27  Alp Toker  <alp@nuanti.com>
1520
1521         Reviewed by Eric.
1522
1523         https://bugs.webkit.org/show_bug.cgi?id=20551
1524         [GTK] search popup crash
1525
1526         * platform/gtk/SearchPopupMenuGtk.cpp:
1527         (WebCore::SearchPopupMenu::enabled):
1528         Fix a search popup crasher by disabling the history popup since we
1529         don't support this feature yet in the GTK+ port.
1530
1531 2008-08-27  Alp Toker  <alp@nuanti.com>
1532
1533         Reviewed by Eric.
1534
1535         https://bugs.webkit.org/show_bug.cgi?id=20551
1536         [GTK] curl crashers
1537
1538         * platform/network/curl/ResourceHandleManager.cpp:
1539         (WebCore::ResourceHandleManager::startScheduledJobs):
1540         Remove the resource handle from the pending list before starting the
1541         job, not afterwards. Fixes crashers in the test suite.
1542
1543         Test: fast/dom/clientWidthAfterDocumentIsRemoved.html
1544         Test: fast/encoding/char-encoding.html
1545
1546 2008-08-27  Dirk Schulze  <vbs85@gmx.de>
1547
1548         Reviewed by eseidel.
1549
1550         Fix canvas drawImage to support composite operations.
1551         Composite had no effect on canvas elements like these:
1552         http://philip.html5.org/tests/canvas/suite/tests/index.2d.composite.canvas.html
1553
1554         [CAIRO] Canvas composite don't work on canvas-elements.
1555         https://bugs.webkit.org/show_bug.cgi?id=20548
1556
1557         * html/CanvasRenderingContext2D.cpp:
1558         (WebCore::CanvasRenderingContext2D::drawImage): pass the current composite operator to the drawImage call
1559
1560 2008-08-27  Mario Bensi  <mbensi@pleyo.com>
1561
1562         Reviewed by Eric Seidel.
1563         
1564         Fix the data content of an image with a base64.
1565
1566         * platform/network/curl/ResourceHandleManager.cpp:
1567         (WebCore::parseDataUrl): Remove the String and use only the data
1568         Vector because the data.latin1().data() convert the data content and
1569         the image test ( https://bugs.webkit.org/attachment.cgi?id=21726 ) is
1570         not drawn correctly.
1571
1572 2008-08-27  Antti Koivisto  <antti@apple.com>
1573
1574         Reviewed by Eric Seidel.
1575
1576         Crash after OK in dialog box and reloading page in secure mode
1577         https://bugs.webkit.org/show_bug.cgi?id=20493
1578         
1579         The new run loop spawned by a modal dialog causes a timer in the loader to run 
1580         synchronously inside didFinishLoading() deleting "this" object.
1581         
1582         Defer all WebCore timers when a modal dialog is up. They are not
1583         safe to execute.
1584
1585         * page/Chrome.cpp:
1586         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
1587         (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
1588
1589 2008-08-27  Chris Marrin  <cmarrin@apple.com>
1590
1591         Reviewed by Dave Hyatt
1592
1593         Memory leaks when animating transforms
1594         https://bugs.webkit.org/show_bug.cgi?id=20532
1595
1596         * rendering/style/RenderStyle.cpp:
1597         (WebCore::ScaleTransformOperation::blend):
1598         (WebCore::RotateTransformOperation::blend):
1599         (WebCore::SkewTransformOperation::blend):
1600         (WebCore::TranslateTransformOperation::blend):
1601         (WebCore::MatrixTransformOperation::blend):
1602         * rendering/style/RenderStyle.h:
1603
1604 2008-08-27  Timothy Hatcher  <timothy@apple.com>
1605
1606         Add support for support for -webkit-appearance: default-button on the Mac platform.
1607
1608         <rdar://problem/6173530>
1609
1610         Reviewed by Dave Hyatt.
1611
1612         * WebCore.base.exp: Export new symbols.
1613         * platform/mac/WebCoreSystemInterface.h: Add wkAdvanceDefaultButtonPulseAnimation.
1614         * platform/mac/WebCoreSystemInterface.mm: Ditto.
1615         * rendering/RenderButton.cpp:
1616         (WebCore::RenderButton::RenderButton): Remove #if PLATFORM(WIN).
1617         (WebCore::RenderButton::setStyle): Ditto.
1618         * rendering/RenderButton.h: Ditto.
1619         * rendering/RenderThemeMac.mm:
1620         (WebCore::RenderThemeMac::adjustRepaintRect): Add a case for DefaultButtonAppearance.
1621         (WebCore::RenderThemeMac::setButtonCellState): Set the key equivalent to the return
1622         key if the button is default, otherwise reset the key equivalent.
1623         (WebCore::RenderThemeMac::paintButton): If the button is default call setDefaultButtonCell:
1624         on the window, then wkAdvanceDefaultButtonPulseAnimation before painting. Restore
1625         the window's previous default button cell when finished.
1626
1627 2008-08-26  David Hyatt  <hyatt@apple.com>
1628
1629         First cut at making form controls on OS X respect full page zoom.  There are lots of bugs.
1630
1631         Reviewed by weinig
1632
1633         Added fast/forms/zoomed-controls.html
1634
1635         * css/CSSStyleSelector.cpp:
1636         (WebCore::addIntrinsicMargins):
1637         * rendering/RenderSlider.cpp:
1638         (WebCore::RenderSlider::calcPrefWidths):
1639         * rendering/RenderThemeMac.h:
1640         * rendering/RenderThemeMac.mm:
1641         (WebCore::RenderThemeMac::adjustRepaintRect):
1642         (WebCore::RenderThemeMac::inflateRect):
1643         (WebCore::RenderThemeMac::baselinePosition):
1644         (WebCore::RenderThemeMac::setControlSize):
1645         (WebCore::RenderThemeMac::sizeForFont):
1646         (WebCore::RenderThemeMac::sizeForSystemFont):
1647         (WebCore::RenderThemeMac::setFontFromControlSize):
1648         (WebCore::RenderThemeMac::paintCheckbox):
1649         (WebCore::RenderThemeMac::setCheckboxCellState):
1650         (WebCore::RenderThemeMac::paintRadio):
1651         (WebCore::RenderThemeMac::setRadioCellState):
1652         (WebCore::RenderThemeMac::setButtonPaddingFromControlSize):
1653         (WebCore::RenderThemeMac::adjustButtonStyle):
1654         (WebCore::RenderThemeMac::setButtonCellState):
1655         (WebCore::RenderThemeMac::paintButton):
1656         (WebCore::RenderThemeMac::paintMenuList):
1657         (WebCore::RenderThemeMac::paintMenuListButton):
1658         (WebCore::RenderThemeMac::popupInternalPaddingLeft):
1659         (WebCore::RenderThemeMac::popupInternalPaddingRight):
1660         (WebCore::RenderThemeMac::popupInternalPaddingTop):
1661         (WebCore::RenderThemeMac::popupInternalPaddingBottom):
1662         (WebCore::RenderThemeMac::setPopupButtonCellState):
1663         (WebCore::RenderThemeMac::paintSliderTrack):
1664         (WebCore::RenderThemeMac::paintSliderThumb):
1665         (WebCore::RenderThemeMac::adjustSliderThumbSize):
1666         (WebCore::RenderThemeMac::paintSearchField):
1667         (WebCore::RenderThemeMac::adjustSearchFieldStyle):
1668         (WebCore::RenderThemeMac::paintSearchFieldCancelButton):
1669         (WebCore::RenderThemeMac::paintSearchFieldResultsButton):
1670
1671 2008-08-27  Brady Eidson  <beidson@apple.com>
1672
1673         Reviewed by Anders
1674
1675         <rdar://problem/6134133> - Crash when loading large movie as a standalone document
1676
1677         We hand off these loads to Quicktime which manages and spools the data itself, but we also continued
1678         to load and buffer the data for the movie in WebCore.  With large media files, this results in blowing
1679         away the virtual address space and a crash.
1680
1681         * loader/EmptyClients.h:
1682         (WebCore::EmptyFrameLoaderClient::pluginWillHandleLoadError):
1683         * loader/FrameLoaderClient.h:  Added client method to get platform specific error for
1684           "plugin will handle load"
1685
1686         * loader/MediaDocument.cpp:
1687         (WebCore::MediaTokenizer::createDocumentStructure): Tell the MainResourceLoader to not buffer data,
1688           and cancel the WebCore-managed load
1689         (WebCore::MediaTokenizer::writeRawData):
1690         (WebCore::MediaTokenizer::finish):
1691
1692 2008-08-26  Simon Fraser  <simon.fraser@apple.com>
1693
1694         Reviewed by Eric Seidel
1695
1696         Linear timing functions should have control points 0, 0, 1, 1.
1697         https://bugs.webkit.org/show_bug.cgi?id=20535
1698
1699         * css/CSSStyleSelector.cpp:
1700         (WebCore::CSSStyleSelector::mapAnimationTimingFunction):
1701         * rendering/style/RenderStyle.h:
1702
1703 2008-08-27  Adam Roben  <aroben@apple.com>
1704
1705         Windows build fix
1706
1707         * WebCore.vcproj/WebCore.vcproj: Fix file extension.
1708
1709 2008-08-26  Chris Fleizach  <cfleizach@apple.com>
1710
1711         Reviewed by Beth Dakin.
1712
1713         <rdar://problem/6069462> REGRESSION: webkit is returning flash objects as AXUnknown
1714
1715         Added platform-specific accessibilityIgnoreAttachment, which allows the platform
1716         to determine if an attachment is ignored through accessibility. Added equivalent
1717         methods in Gtk, Win and Mac
1718
1719         Test: accessibility/plugin.html
1720
1721         * GNUmakefile.am:
1722         * WebCore.vcproj/WebCore.vcproj:
1723         * WebCore.xcodeproj/project.pbxproj:
1724         * page/AccessibilityObject.h:
1725         * page/AccessibilityRenderObject.cpp:
1726         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
1727         * page/gtk/AccessibilityObjectAtk.cpp: Added.
1728         (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
1729         * page/mac/AccessibilityObjectMac.mm: Added.
1730         (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
1731         * page/mac/AccessibilityObjectWrapper.h:
1732         * page/win/AccessibilityObjectWin.cpp: Added.
1733         (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
1734
1735 2008-08-26  Chris Fleizach  <cfleizach@apple.com>
1736
1737         Reviewed by Beth Dakin.
1738
1739         <rdar://problem/5817770> can't bring up contextual menu for embedded objects in WebText
1740
1741         * page/mac/AccessibilityObjectWrapper.mm:
1742         (-[AccessibilityObjectWrapper accessibilityPerformShowMenuAction]):
1743         (-[AccessibilityObjectWrapper accessibilityShowContextMenu]):
1744
1745 2008-08-26  Chris Fleizach  <cfleizach@apple.com>
1746
1747         Reviewed by Darin Adler.
1748
1749         <rdar://problem/6176924> CrashTracer: [USER] 4 crashes in Safari at com.apple.WebCore: WebCore::RenderTableSection::numColumns
1750
1751         Tests: accessibility/table-notbody.html
1752
1753         * page/AccessibilityTable.cpp:
1754         (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
1755
1756 2008-08-26  Sam Weinig  <sam@webkit.org>
1757
1758         Reviewed by Beth Dakin.
1759
1760         Fix typo.
1761
1762         * dom/DOMCoreException.h:
1763
1764 2008-08-26  Sam Weinig  <sam@webkit.org>
1765
1766         Reviewed by Oliver Hunt.
1767
1768         Fix https://bugs.webkit.org/show_bug.cgi?id=20479
1769         <rdar://problem/6167660>
1770         Take image redirects into account when tainting the canvas.
1771
1772         Test: http/tests/security/canvas-remote-read-redirect-to-remote-image.html
1773
1774         * html/CanvasRenderingContext2D.cpp:
1775         (WebCore::CanvasRenderingContext2D::drawImage):
1776         (WebCore::CanvasRenderingContext2D::drawImageFromRect):
1777
1778 2008-08-26  Sam Weinig  <sam@webkit.org>
1779
1780         Reviewed by Darin Adler.
1781
1782         Change canvas tainting logic to ask the image if it contains
1783         any resources outside of its own origin. Since there is no 
1784         way to determine if SVG images contain any resources outside its
1785         origin, we always assume it does.
1786
1787         * html/CanvasRenderingContext2D.cpp:
1788         (WebCore::CanvasRenderingContext2D::drawImage):
1789         (WebCore::CanvasRenderingContext2D::drawImageFromRect):
1790         * platform/graphics/BitmapImage.h:
1791         (WebCore::BitmapImage::hasSingleSecurityOrigin):
1792         * platform/graphics/GeneratedImage.h:
1793         (WebCore::GeneratedImage::hasSingleSecurityOrigin):
1794         * platform/graphics/Image.h:
1795         (WebCore::Image::hasSingleSecurityOrigin):
1796         * platform/graphics/cg/PDFDocumentImage.h:
1797         (WebCore::PDFDocumentImage::hasSingleSecurityOrigin):
1798         * svg/graphics/SVGImage.h:
1799
1800 2008-08-26  Maxime Britto  <britto@apple.com>
1801
1802         Reviewed by Adele.
1803
1804         <rdar://6159244> Pan-scrolling does not work on particular sites (starmagazine.com, nytimes.com)
1805         This patch fixes the issues and modify the behavior of the panscroll by allowing it to jump to a parent layer when it reaches the end of its scrollable area.
1806         This is matching the behavior of the mouse wheel when trying to scroll in a smaller layer of the page (div, textarea, ...) and when we reach the edge and keep scrolling then the whole page scrolls.
1807
1808         * page/EventHandler.cpp:
1809         (WebCore::EventHandler::updateAutoscrollRenderer): if we switch to the parent layer to do the scroll we want to change the renderer for the panning
1810         * page/EventHandler.h:
1811         * rendering/RenderLayer.cpp:
1812         (WebCore::RenderLayer::panScrollFromPoint): now calls the scrollByRecursively method when it has computed the xDelta and yDelta
1813         (WebCore::RenderLayer::scrollByRecursively): try to scroll the current layer by the xDelta and yDelta provided, if it can't it ask its parent layer to do so.
1814         * rendering/RenderLayer.h:
1815         * rendering/RenderObject.cpp:
1816         (WebCore::RenderObject::canBeProgramaticallyScrolled): a RenderObject must have a RenderLayer to be programatically scrolled
1817         (WebCore::RenderObject::autoscroll): No need to check for the layer anymore since we verify it's present in the upmentionned method
1818         (WebCore::RenderObject::panScroll): No need to check for the layer anymore too.
1819
1820 2008-08-25  Julien Chaffraix  <jchaffraix@webkit.org>
1821
1822         Reviewed by Darin.
1823
1824         Bug 20247: setAttributeNode() does not work when attribute name has a capital letter in it
1825         https://bugs.webkit.org/show_bug.cgi?id=20247
1826
1827         <rdar://problem/6118218>
1828
1829         Add a boolean parameter to getAttributeItem to choose between case sensitive and case insensitive
1830         check. This keeps the behaviour for setAttribute / hasAttribute (case sensitive) and getAttribute
1831         (case insensitive for HTML elements).
1832
1833         Test: fast/dom/Element/getAttribute-check-case-sensitivity.html
1834
1835         * dom/Element.cpp:
1836         (WebCore::Element::getAttribute):
1837         * dom/NamedAttrMap.cpp:
1838         (WebCore::NamedAttrMap::getNamedItem):
1839         (WebCore::NamedAttrMap::getAttributeItem):
1840         * dom/NamedAttrMap.h:
1841
1842 2008-08-25  Sam Weinig  <sam@webkit.org>
1843
1844         Reviewed by Oliver Hunt.
1845
1846         Fix for https://bugs.webkit.org/show_bug.cgi?id=20514
1847         <rdar://problem/6174096>
1848         Treat SVG images as dirty when drawing to a canvas.
1849
1850         Test: http/tests/security/canvas-remote-read-svg-image.html
1851
1852         * html/CanvasRenderingContext2D.cpp:
1853         (WebCore::CanvasRenderingContext2D::drawImage):
1854         (WebCore::CanvasRenderingContext2D::drawImageFromRect):
1855         * platform/graphics/Image.h:
1856         (WebCore::Image::isSVGImage):
1857         * svg/graphics/SVGImage.h:
1858         (WebCore::SVGImage::isSVGImage):
1859
1860 2008-08-25  Sam Weinig  <sam@webkit.org>
1861
1862         Reviewed by Mark Rowe.
1863
1864         Fix https://bugs.webkit.org/show_bug.cgi?id=20377
1865         Leak in XMLHttpRequest.
1866
1867         * xml/XMLHttpRequest.cpp:
1868         (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight):
1869
1870 2008-08-25  Brady Eidson  <beidson@apple.com>
1871
1872         Reviewed by Anders
1873
1874         Speculative fix for <rdar://problem/6173217>
1875
1876         Moves the "clearArchivedResources()" call to exactly where it used to be in the old version of WebArchive code.
1877         Also, adds a null check for m_documentLoader since DocumentLoader::stopLoading() can end up clearing it, rendering
1878         the first null check invalid.
1879
1880         * loader/FrameLoader.cpp:
1881         (WebCore::FrameLoader::stopAllLoaders):
1882
1883
1884 2008-08-25  Kevin McCullough  <kmccullough@apple.com>
1885
1886         Reviewed by Tim.
1887
1888         <rdar://problem/6157711> Heavy/Tree view selector is not grayed out if
1889         there is no profile, can cause crash
1890
1891         * page/inspector/ProfilesPanel.js:
1892
1893 2008-08-25  Dean Jackson  <dino@apple.com>
1894
1895         Reviewed by Dave Hyatt
1896
1897         Make sure 'inherit' is handled by transition property.
1898         https://bugs.webkit.org/show_bug.cgi?id=20513
1899
1900         Test: transitions/inherit.html
1901         Test: transitions/inherit-other-props.html
1902
1903         * css/CSSStyleSelector.cpp:
1904           fix macro to check existence of list before getting size
1905
1906 2008-08-25  Anders Carlsson  <andersca@apple.com>
1907
1908         Reviewed by Mark.
1909
1910         <rdar://problem/6149787> crash @ com.apple.JavaScriptCore: WTF::callOnMainThread + 37.
1911         
1912         Initialize threading in the call to WebCoreObjCFinalizeOnMainThread. We currently assume 
1913         (safely) that any class that needs finalization on the main thread will also need to be deallocated
1914         on the main thread, and calling initializeThreading from WebCoreObjCFinalizeOnMainThread instead of
1915         calling it from WebCoreObjCScheduleDeallocateOnMainThread seems safer.
1916
1917         * platform/mac/WebCoreObjCExtras.c:
1918         (WebCoreObjCFinalizeOnMainThread):
1919
1920 2008-08-25  Antti Koivisto  <antti@apple.com>
1921
1922         Reviewed by Dan Bernstein.
1923
1924         Rename CachedResource::referenced() to CachedResource::hasClients() to
1925         match previous ref() -> addClient() rename.
1926
1927         * loader/Cache.cpp:
1928         (WebCore::Cache::pruneLiveResources):
1929         (WebCore::Cache::pruneDeadResources):
1930         (WebCore::Cache::remove):
1931         (WebCore::Cache::getStatistics):
1932         (WebCore::Cache::dumpLRULists):
1933         * loader/CachedResource.cpp:
1934         (WebCore::CachedResource::addClient):
1935         (WebCore::CachedResource::removeClient):
1936         (WebCore::CachedResource::setDecodedSize):
1937         (WebCore::CachedResource::setEncodedSize):
1938         * loader/CachedResource.h:
1939         (WebCore::CachedResource::hasClients):
1940         (WebCore::CachedResource::canDelete):
1941
1942 2008-08-25  Anthony Ricaud  <rik24d@gmail.com>
1943
1944         Add a missing Inspector localized string for "other".
1945
1946         https://bugs.webkit.org/show_bug.cgi?id=20509
1947
1948         Reviewed by Tim Hatcher.
1949
1950         * English.lproj/localizedStrings.js:
1951
1952 2008-08-22  Kevin McCullough  <kmccullough@apple.com>
1953
1954         Reviewed by Geoff, Mark and Tim.
1955
1956         <rdar://problem/6150623> JSProfiler: It would be nice if the profiles
1957         in the console said what file and line number they came from
1958         - Lay the foundation for getting line numbers and other data from the
1959         JavaScript engine.
1960
1961         * ForwardingHeaders/VM: Added.
1962         * ForwardingHeaders/VM/Machine.h: Added.
1963         * page/Console.cpp: Gather the line number and file information when 
1964         profileEnd has been called, but don't use it until didFinishProfiling is
1965         called.  We won't need to wait once we remove the profiler "zombie" mode
1966         which this patch helps pave the foundation for.
1967         (WebCore::Console::Console):
1968         (WebCore::Console::profileEnd):
1969         (WebCore::Console::finishedProfiling):
1970         * page/Console.h:
1971         * page/InspectorController.cpp: Modify calls to
1972         addProfileMessageToConsole to satisfy the new arguments it takes.
1973         (WebCore::InspectorController::finishedProfiling):
1974         (WebCore::InspectorController::addProfile):
1975         (WebCore::InspectorController::addProfileMessageToConsole):
1976         (WebCore::InspectorController::finishedProfiling):
1977         * page/InspectorController.h:
1978
1979 2008-08-25  Holger Hans Peter Freyther  <zecke@selfish.org>
1980
1981         Reviewed by Simon.
1982
1983         [inspector] Update the WebKit.qrc Qt resources file
1984         Catchup with the changes in the directory.
1985
1986         * page/inspector/WebKit.qrc:
1987
1988 2008-08-25  Dirk Schulze  <vbs85@gmx.de>
1989
1990         Reviewed by Simon.
1991
1992         Transformed the radian to degree, to get rotate()
1993         in canvas work as expected.
1994
1995         [Qt] Canvas.rotate() doesn't work
1996         https://bugs.webkit.org/show_bug.cgi?id=20496
1997
1998         * platform/graphics/qt/GraphicsContextQt.cpp:
1999         (WebCore::GraphicsContext::rotate):
2000
2001 2008-08-24  Steve Falkenburg  <sfalken@apple.com>
2002
2003         Add a "last chance" WM_TIMER to the Windows shared timer.
2004         
2005         The last chance timer fires every 5 seconds to run any lost WM_TIMER based timers.
2006         Failure to fire a timer is fatal to the cross-platform Timer code, since it won't re-schedule
2007         timers if a timer with an earlier expiration is already pending. This results in no timers
2008         firing from that point on.
2009         
2010         We lose WM_TIMER messages occasionally (in the neighborhood of 1 per hour) probably due to a
2011         buggy window message hook.
2012         
2013         This timer will start when the first WM_TIMER is scheduled, and will
2014         fire every 5 seconds thereafter, causing any lost timers to be fired.
2015         
2016         Found this via one of its symptoms: leaking WebFrames. The fix prevents timers from stalling
2017         and prevents the WebFrame leak.
2018         
2019         Reviewed by Darin Adler, Geoff Garen.
2020
2021         * platform/win/SharedTimerWin.cpp:
2022         (WebCore::):
2023         (WebCore::TimerWindowWndProc):
2024         (WebCore::setSharedTimerFireTime):
2025
2026 2008-08-24  Dan Bernstein  <mitz@apple.com>
2027
2028         Reviewed by Darin Adler.
2029
2030         - fix <rdar://problem/6065547> REGRESSION (r34879): "Subject" in unread emails in Yahoo mail is not shown in bold
2031
2032         Test: fast/css/font-property-priority.html
2033
2034         * css/CSSParser.cpp:
2035         (WebCore::CSSParser::parseValue): Changed to pass the 'important' flag
2036         to the font-property-parsing functions.
2037         (WebCore::CSSParser::parseFontStyle): Added an 'important' argument and
2038         changed to use it rather than the m_important member.
2039         (WebCore::CSSParser::parseFontVariant): Ditto.
2040         (WebCore::CSSParser::parseFontWeight): Ditto.
2041         * css/CSSParser.h:
2042
2043 2008-08-24  Timothy Hatcher  <timothy@apple.com>
2044
2045         Fixes a bug where the Inspector's UI would not animate or
2046         fully function because JavaScript timeouts, intervals and
2047         CSS animation timers where not firing while paused at a
2048         a breakpoint in the inspected page.
2049
2050         https://bugs.webkit.org/show_bug.cgi?id=20042
2051
2052         Reviewed by Darin Adler.
2053
2054         Test: manual-tests/inspector/forzen-ui-while-paused.html
2055
2056         * page/JavaScriptDebugServer.cpp:
2057         (WebCore::JavaScriptDebugServer::pauseIfNeeded):
2058         Add a call to TimerBase::fireTimersInNestedEventLoop before
2059         spinning the EventLoop.
2060
2061 2008-08-24  Rob Buis  <buis@kde.org>
2062
2063         Reviewed by Sam Weinig.
2064
2065         https://bugs.webkit.org/show_bug.cgi?id=20324
2066         A change in SVG Glyph wont show up
2067
2068         Invalidate the glyph cache when the d attribute is set.
2069
2070         Test: svg/custom/glyph-setting-d-attribute.svg
2071
2072         * svg/SVGGlyphElement.cpp:
2073         (WebCore::SVGGlyphElement::invalidateGlyphCache):
2074         (WebCore::SVGGlyphElement::parseMappedAttribute):
2075         (WebCore::SVGGlyphElement::insertedIntoDocument):
2076         (WebCore::SVGGlyphElement::removedFromDocument):
2077         * svg/SVGGlyphElement.h:
2078
2079 2008-08-24  Dan Bernstein  <mitz@apple.com>
2080
2081         Reviewed by Sam Weinig.
2082
2083         - fix https://bugs.webkit.org/show_bug.cgi?id=13864
2084           <rdar://problem/5451470> REGRESSION: Uninitialized value in RenderBlock::calcInlinePrefWidths()
2085
2086         * rendering/RenderText.cpp:
2087         (WebCore::RenderText::trimmedPrefWidths): Moved the assignment to
2088         beginWS and endWS before the early return to ensure that they are
2089         initialized in that case.
2090
2091 2008-08-23  Cameron Zwarich  <cwzwarich@uwaterloo.ca>
2092
2093         Rubber-stamped by Mark Rowe.
2094
2095         Remove modelines.
2096
2097         * WebCore.pro:
2098         * bridge/testbindings.cpp:
2099         * dom/DocPtr.h:
2100         * loader/SubstituteData.h:
2101         * page/Chrome.cpp:
2102         * page/Chrome.h:
2103         * page/ChromeClient.h:
2104         * page/Frame.h:
2105         * page/FrameLoadRequest.h:
2106         * page/FrameTree.cpp:
2107         * page/FrameTree.h:
2108         * page/Page.h:
2109         * page/mac/ChromeMac.mm:
2110         * platform/network/HTTPHeaderMap.h:
2111         * platform/network/ResourceErrorBase.cpp:
2112         * platform/network/ResourceErrorBase.h:
2113         * platform/network/ResourceHandleInternal.h:
2114         * platform/network/ResourceRequestBase.cpp:
2115         * platform/network/ResourceRequestBase.h:
2116         * platform/network/ResourceResponseBase.cpp:
2117         * platform/network/ResourceResponseBase.h:
2118         * platform/network/cf/ResourceError.h:
2119         * platform/network/cf/ResourceRequest.h:
2120         * platform/network/cf/ResourceRequestCFNet.h:
2121         * platform/network/cf/ResourceResponse.h:
2122         * platform/network/cf/ResourceResponseCFNet.h:
2123         * platform/network/curl/ResourceError.h:
2124         * platform/network/curl/ResourceRequest.h:
2125         * platform/network/curl/ResourceResponse.h:
2126         * platform/network/mac/ResourceError.h:
2127         * platform/network/mac/ResourceErrorMac.mm:
2128         * platform/network/mac/ResourceRequest.h:
2129         * platform/network/mac/ResourceRequestMac.mm:
2130         * platform/network/mac/ResourceResponse.h:
2131         * platform/network/mac/ResourceResponseMac.mm:
2132         * platform/network/qt/ResourceError.h:
2133         * platform/network/qt/ResourceRequest.h:
2134         * platform/network/qt/ResourceResponse.h:
2135         * platform/network/soup/CookieJarSoup.cpp:
2136         * platform/network/soup/ResourceError.h:
2137         * platform/network/soup/ResourceRequest.h:
2138         * platform/network/soup/ResourceResponse.h:
2139
2140 2008-08-23  Dan Bernstein  <mitz@apple.com>
2141
2142         Reviewed by Dave Hyatt.
2143
2144         - fix <rdar://problem/6065143> Reflowed image in first line of table doesn't affect baseline
2145
2146         Test: fast/table/vertical-align-baseline.html
2147
2148         * rendering/RenderTable.cpp:
2149         (WebCore::RenderTable::getBaselineOfFirstLineBox): Added. Returns the
2150         baseline of the first table row, if there is one, -1 otherwise.
2151         * rendering/RenderTable.h:
2152         * rendering/RenderTableCell.cpp:
2153         (WebCore::RenderTableCell::baselinePosition): Changed to follow the
2154         CSS2.1 definition of the baseline of a table cell.
2155         * rendering/RenderTableSection.cpp:
2156         (WebCore::RenderTableSection::getBaselineOfFirstLineBox): Added. Returns
2157         the baseline of the first row in the section.
2158         * rendering/RenderTableSection.h:
2159
2160 2008-08-18  Jon Honeycutt  <jhoneycutt@apple.com>
2161
2162         Add SPI to make a Windows WebView transparent.
2163
2164         Reviewed by Dan Bernstein.
2165
2166         * platform/graphics/GraphicsContext.h: Add a parameter, hasAlpha, that
2167         determines whether the created context has an alpha channel.
2168         * platform/graphics/win/GraphicsContextCGWin.cpp:
2169         (WebCore::CGContextWithHDC):
2170
2171 2008-08-22  Timothy Hatcher  <timothy@apple.com>
2172
2173         Rolls out r35834 because it caused a regression in the Inspector's
2174         Console where some expressions always threw a syntax error.
2175
2176         https://bugs.webkit.org/show_bug.cgi?id=20487
2177
2178         * page/inspector/Console.js:
2179         (Console.prototype._evalInInspectedWindow): Removes parenthesis
2180         around the expression.
2181
2182 2008-08-22  Timothy Hatcher  <timothy@apple.com>
2183
2184         Makes getStyleProperty return a value for the overflow property
2185         when overflow-x and overflow-y are equal.
2186
2187         https://bugs.webkit.org/show_bug.cgi?id=20485
2188
2189         Reviewed by Dan Bernstein.
2190
2191         Test: fast/css/overflow-property.html
2192
2193         * css/CSSMutableStyleDeclaration.cpp:
2194         (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
2195
2196 2008-08-22  Timothy Hatcher  <timothy@apple.com>
2197
2198         Fixes a bug where while editing in the Inspector the
2199         sidebar scroll position would jump to the top.
2200
2201         https://bugs.webkit.org/show_bug.cgi?id=20484
2202
2203         Reviewed by Darin Adler.
2204
2205         * page/inspector/treeoutline.js:
2206         (TreeOutline._removeChildren): Remove the offsetTop call that
2207         was forcing a layout, since layout causes scroll positions
2208         to be clamped to the new scrollHeight/Width. Layout will happen
2209         normally when needed.
2210
2211 2008-08-22  Kevin Ollivier  <kevino@theolliviers.com>
2212
2213         wx build fix. Add AccessibilityTable sources.
2214
2215         * WebCoreSources.bkl:
2216
2217 2008-08-21  Dan Bernstein  <mitz@apple.com>
2218
2219         Reviewed by Jon Honeycutt and Alexey Proskuryakov.
2220
2221         - fix <rdar://problem/6162701> WebKit should correct Geeza Pro's font metrics
2222
2223         Test: platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment.html
2224
2225         * platform/graphics/mac/SimpleFontDataMac.mm:
2226         (WebCore::SimpleFontData::platformInit): Add 8% to Geeza Pro's reported
2227         ascent and 100% to its reported descent.
2228
2229 2008-08-21  Kalle Vahlman  <kalle.vahlman@movial.com>
2230
2231         Reviewed by Darin Adler.
2232
2233         https://bugs.webkit.org/show_bug.cgi?id=20267
2234         [GTK] Crash on some pages due to a plugin
2235
2236         Fix handling of badly formatted and empty plugin mime descriptions
2237
2238         * plugins/gtk/PluginPackageGtk.cpp:
2239         (WebCore::PluginPackage::fetchInfo):
2240
2241 2008-08-21  Kevin Watters  <kevinwatters@gmail.com>
2242
2243         Reviewed by Darin Adler.
2244
2245         Follow other ports (and IE) in ImageSourceWx.cpp never to return an
2246         animated GIF frame duration of less than 50ms.
2247
2248         * platform/graphics/wx/ImageSourceWx.cpp:
2249         (WebCore::ImageSource::frameDurationAtIndex):
2250
2251 2008-08-21  Maxime Britto  <britto@apple.com>
2252
2253         Reviewed by Kevin McCullough.
2254
2255         Test: fast/events/autoscroll-nonscrollable-iframe-in-scrollable-div.html
2256         https://bugs.webkit.org/show_bug.cgi?id=20451
2257    
2258         rdar://problem/6166435 Inspector doesn't auto scroll when selecting text (20451)
2259         When we climb up the rendering tree looking for a scrollable renderer, we need to be able to jump outside of an iframe.
2260         This way we can see if what is embedding the iframe can be scrolled even if the iframe content can't.
2261
2262         * page/EventHandler.cpp:
2263         (WebCore::EventHandler::handleMouseDraggedEvent): when we reach the document node and it can't be scrolled we set the next parent as the document's owner element if it exists.
2264
2265         (WebCore::EventHandler::handleMousePressEvent): ditto
2266
2267 2008-08-21  Anthony Ricaud  <rik24d@gmail.com>
2268
2269         Small optimization for when the dividers in the Inspector's
2270         Resources panel are updated.
2271
2272         Reviewed by Tim Hatcher.
2273
2274         * page/inspector/ResourcesPanel.js:
2275         (WebInsector.ResourcesPanel.prototype._updateGraphDividersIfNeeded):
2276         Combind a for loop and clone the divider element.
2277
2278 2008-08-21  Chris Marrin  <cmarrin@apple.com>
2279
2280         Allow 0 (without units) for Time eg. duration
2281         Fix for https://bugs.webkit.org/show_bug.cgi?id=20467
2282
2283         Reviewed by Dave Hyatt.
2284
2285         Test: css1/units/zero-duration-without-units.html
2286
2287         * css/CSSParser.cpp:
2288         (WebCore::CSSParser::validUnit):
2289
2290 2008-08-21  Timothy Hatcher  <timothy@apple.com>
2291
2292         Make deleting all text while editing a DOM attribute in
2293         the Inspector delete the attribute. This also fixes
2294         an exception that would happen before.
2295
2296         https://bugs.webkit.org/show_bug.cgi?id=20472
2297
2298         Reviewed by Kevin McCullough.
2299
2300         * page/inspector/ElementsPanel.js:
2301         (WebInspector.DOMNodeTreeElement.prototype._attributeEditingCommitted):
2302         Don't check for hasAttributes on the parseElement, continuing
2303         through the function will correctly remove the attribute.
2304         If the parseElement is null, call _editingCancelled not
2305         editingCancelled, this fixes an exception.
2306
2307 2008-08-21  Timothy Hatcher  <timothy@apple.com>
2308
2309         Update the Inspector's Metrics pane when editing in
2310         the Styles pane. This makes sure the metrics shown
2311         always match what the Styles pane shows.
2312
2313         https://bugs.webkit.org/show_bug.cgi?id=20470
2314
2315         Reviewed by Kevin McCullough.
2316
2317         * page/inspector/ElementsPanel.js:
2318         (WebInspector.ElementsPanel): Add event listeners for
2319         the "style edited" and "style property toggled" events,
2320         so the Metrics pane is updated.
2321         (WebInspector.ElementsPanel.prototype._stylesPaneEdited):
2322         Update the Metrics pane.
2323         * page/inspector/StylesSidebarPane.js:
2324         (WebInspector.StylePropertyTreeElement.prototype.toggleEnabled):
2325         Dispatch the "style property toggled" event.
2326         (WebInspector.StylePropertyTreeElement.prototype.editingCancelled):
2327         Dispatch the "style edited" event when the CSS text is restored.
2328         (WebInspector.StylePropertyTreeElement.prototype.applyStyleText):
2329         Dispatch the "style edited" event.
2330
2331 2008-08-21  Timothy Hatcher  <timothy@apple.com>
2332
2333         Make the Inspector's Metrics sidebar pane editable.
2334
2335         https://bugs.webkit.org/show_bug.cgi?id=17218
2336         rdar://problem/5732818
2337
2338         Reviewed by Kevin McCullough.
2339
2340         * page/inspector/ElementsPanel.js:
2341         (WebInspector.ElementsPanel): Add an event listener for
2342         the "metrics edited" event, so the Styles pane is updated.
2343         * page/inspector/MetricsSidebarPane.js:
2344         (WebInspector.MetricsSidebarPane.prototype.update): Remember the node
2345         so future updates work. Add a double click event listener for the
2346         metric values to start editing.
2347         (WebInspector.MetricsSidebarPane.prototype.startEditing):
2348         Call WebInspector.startEditing with some context.
2349         (WebInspector.MetricsSidebarPane.prototype.editingCancelled):
2350         (WebInspector.MetricsSidebarPane.prototype.editingCommitted):
2351         Set the user input on the elements inline style. Fire the
2352         "metrics edited" event.
2353
2354 2008-08-21  Steve Falkenburg  <sfalken@apple.com>
2355
2356         Fix a race condition in Windows timer code.
2357         Timer function could end up being called with a 0 timer, leading to a Windows exception.
2358         
2359         Don't post a timer message if one is already pending.
2360         
2361         Reviewed by Ada Chan.
2362
2363         * platform/win/SharedTimerWin.cpp:
2364         (WebCore::TimerWindowWndProc):
2365         (WebCore::clearTimer):
2366         (WebCore::queueTimerProc):
2367         (WebCore::setSharedTimerFireTime):
2368
2369 2008-08-21  Anthony Ricaud  <rik24d@gmail.com>
2370
2371         After trying to add the expression, try again with quotes for
2372         easier edition.
2373
2374         https://bugs.webkit.org/show_bug.cgi?id=20466
2375
2376         Reviewed by Tim Hatcher.
2377
2378         * page/inspector/ObjectPropertiesSection.js: Added an
2379         evaluateExpression function.
2380
2381 2008-08-21  Anthony Ricaud  <rik24d@gmail.com>
2382
2383         Perform Inspector searches on search event to clear results when
2384         clicking the cross to empty it. Delete the lastQuery when the field
2385         is emptied in order to perform the search if exactly the same query
2386         is entered next.
2387
2388         https://bugs.webkit.org/show_bug.cgi?id=20462
2389
2390         Reviewed by Tim Hatcher.
2391
2392         * page/inspector/inspector.js:
2393
2394 2008-08-21  Marco Barisione  <marco.barisione@collabora.co.uk>
2395
2396         Reviewed by Mark Rowe.
2397
2398         http://bugs.webkit.org/show_bug.cgi?id=19656
2399         [SOUP] The gio code should call didFail() instead of
2400         didFinishLoading() in case of error
2401
2402         In case of error call didFail() instead of didReceiveResponse() and
2403         didFinishLoading().
2404
2405         * platform/network/soup/ResourceHandleSoup.cpp:
2406         (WebCore::networkErrorForFile):
2407         (WebCore::readCallback):
2408         (WebCore::openCallback):
2409         (WebCore::queryInfoCallback):
2410
2411 2008-08-20  Mark Rowe  <mrowe@apple.com>
2412
2413         Reviewed by Jon Honeycutt.
2414
2415         Fix build failure.
2416
2417         * bridge/c/c_instance.cpp:
2418         (KJS::Bindings::CInstance::getPropertyNames): Declare count as uint32_t rather than unsigned
2419         as that is what NPEnumerationFunctionPtr is declared as accepting.
2420
2421 2008-08-20  Mark Rowe  <mrowe@apple.com>
2422
2423         Reviewed by Dan Bernstein.
2424
2425         Build fix.  Handle kCGInterpolationMedium in switch statements if it is available.
2426
2427         * platform/graphics/GraphicsContext.h:
2428         (WebCore::):
2429         * platform/graphics/cg/GraphicsContextCG.cpp:
2430         (WebCore::GraphicsContext::setImageInterpolationQuality):
2431         (WebCore::GraphicsContext::imageInterpolationQuality):
2432
2433 2008-08-20  Dan Bernstein  <mitz@apple.com>
2434
2435         Rubber-stamped by John Sullivan.
2436
2437         - rename shouldUpdateWhileHidden to shouldUpdateWhileOffscreen and
2438           rename related methods and variables accordingly.
2439
2440         * WebCore.base.exp:
2441         * page/FrameView.cpp:
2442         (WebCore::FrameViewPrivate::FrameViewPrivate):
2443         (WebCore::FrameView::shouldUpdateWhileOffscreen):
2444         (WebCore::FrameView::setShouldUpdateWhileOffscreen):
2445         * page/FrameView.h:
2446         * platform/ScrollView.h:
2447         * platform/mac/ScrollViewMac.mm:
2448         (WebCore::ScrollView::updateContents):
2449
2450 2008-08-20  Brady Eidson  <beidson@apple.com>
2451
2452         Reviewed by Mitzpettel
2453
2454         <rdar://problem/6163636> - Many images broken in Mail
2455
2456         This can be traced back to the preload scanner.  With that change, CachedResources are created a lot 
2457         sooner than before and confuse the WebArchive machinery.  
2458
2459         When referencing WebArchive subresources directly through the WebKit API it is appropriate to ignore 
2460         such CachedResources since they are placeholders and have not been submitted to the ResourceLoadDelegate 
2461         machinery and nothing is known about where the data will eventually come from.
2462
2463         * loader/DocumentLoader.cpp:
2464         (WebCore::DocumentLoader::subresource):  Ignore a CachedResource if its preloadResult is 
2465           CachedResource::PreloadReferenced.
2466
2467 2008-08-20  Holger Hans Peter Freyther  <zecke@selfish.org>
2468
2469         Unreviewed compile fix
2470
2471         Catch up with the JSValue::type elimination.
2472
2473         * bridge/qt/qt_instance.cpp:
2474         (KJS::Bindings::QtRuntimeObjectImp::construct):
2475         (KJS::Bindings::QtInstance::defaultValue):
2476         * bridge/qt/qt_runtime.cpp:
2477         (KJS::Bindings::QtRuntimeConnectionMethod::call):
2478
2479 2008-08-20  Chris Teague  <chris.teague@gmail.com>
2480
2481         Reviewed by Mark Rowe.
2482
2483         Fix https://bugs.webkit.org/show_bug.cgi?id=20449
2484         Bug 20449: Build fails if LOW_BANDWIDTH_DISPLAY is defined
2485
2486         * ChangeLog:
2487         * loader/FrameLoader.cpp:
2488         (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
2489
2490 2008-08-20  Simon Fraser  <simon.fraser@apple.com>
2491
2492         Reviewed by Dave Hyatt
2493
2494         getComputedStyle() for webkitTransform should return a transform
2495         that does not have the transform origin baked into it.
2496         https://bugs.webkit.org/show_bug.cgi?id=20464
2497         
2498         Test: fast/css/getComputedStyle-transform.html
2499
2500         * css/CSSComputedStyleDeclaration.cpp:
2501         (WebCore::computedTransform):
2502         * rendering/style/RenderStyle.cpp:
2503         (WebCore::RenderStyle::applyTransform):
2504         * rendering/style/RenderStyle.h:
2505
2506 2008-08-20  Josh Aas  <joshmoz@gmail.com>
2507
2508         Reviewed and landed by Anders.
2509
2510         <rdar://problem/6163636> 
2511         rename NPCocoaEvent's "event" struct to "data" (20446)
2512         
2513         * bridge/npapi.h:
2514         (_NPCocoaEvent::):
2515
2516 2008-08-20  Beth Dakin  <bdakin@apple.com>
2517
2518         Reviewed by Darin.
2519
2520         Fix for <rdar://problem/6145626> 
2521         This patch fixes a number of remaining problems getting 
2522         disconnected frames to work correctly with markAllMatchesForText() 
2523         and findString(). Details inline. 
2524
2525         This was a static helper function in Frame, but this patch requires 
2526         the same functionality in Editor, so I just added it as a function 
2527         on Node.
2528         * dom/Node.cpp:
2529         (WebCore::Node::isInShadowTree):
2530         * dom/Node.h:
2531
2532         * editing/Editor.cpp:
2533         (WebCore::Editor::insideVisibleArea): Returns false if 
2534         excludeFromTextSearch() is true.
2535
2536         In a normal (non-disconnected) frame, findString returns a range of 
2537         the document node if the text is not found in the frame. I changed 
2538         firstVisibleRange and lastVisibleRange to match that behavior when 
2539         the text is not found
2540         (WebCore::Editor::firstVisibleRange):
2541         (WebCore::Editor::lastVisibleRange):
2542
2543         Here are the bulk of the changes in the patch. A lot of text was 
2544         not being found in disconnected frames because I failed to account 
2545         for all of the possible problems associated with shadow trees. That 
2546         is fixed here.
2547         (WebCore::Editor::nextVisibleRange):
2548         * editing/Editor.h:
2549
2550         excludeFromTextSearch() is new. It allows a WebKit client to mark a 
2551         frame as not-text-searchable through SPI. 
2552         * WebCore.base.exp:
2553         * page/Frame.cpp:
2554         (WebCore::Frame::excludeFromTextSearch):
2555         (WebCore::Frame::setExcludeFromTextSearch):
2556         (WebCore::FramePrivate::FramePrivate):
2557         * page/Frame.h:
2558         * page/FramePrivate.h:
2559
2560         (WebCore::Frame::findString):
2561         (WebCore::Frame::markAllMatchesForText):  I kept running into an 
2562         assertion failure in paining code because of the forced paint on 
2563         empty visible rects.
2564
2565 2008-08-20  Timothy Hatcher  <timothy@apple.com>
2566
2567         Adds a positon box to the Inspector's Metrics sidebar
2568         pane. When an element is not statically positioned, there
2569         is now a position box that show top, right, bottom and
2570         left computed values.
2571
2572         Reviewed by Kevin McCullough.
2573
2574         * English.lproj/localizedStrings.js: Updated the strings.
2575         * page/inspector/MetricsSidebarPane.js:
2576         (WebInspector.MetricsSidebarPane.prototype.update):
2577         Renamed the boxPartValue function to createBoxPartElement
2578         and made it create the entire element. Made it understand
2579         how to get position style properties. Don't use the figure dash
2580         when 0px is used for positions, since the 0 is meaningful there.
2581         Instead use the figure dash when a position is auto.
2582         * page/inspector/inspector.css: Added a new rule for position.
2583
2584 2008-08-20  Chris Fleizach  <cfleizach@apple.com>
2585
2586         Reviewed by Beth Dakin
2587
2588         Qt build fix
2589
2590         * WebCore.pro:
2591
2592 2008-08-20  Dan Bernstein  <mitz@apple.com>
2593
2594         Reviewed by Anders Carlsson.
2595
2596         - avoid using a deprecated NSScroller method on Leopard
2597
2598         * platform/mac/PlatformScrollBarMac.mm:
2599         (WebCore::PlatformScrollbar::updateThumbPosition):
2600         (WebCore::PlatformScrollbar::updateThumbProportion):
2601
2602 2008-08-20  Jan Michael Alonzo  <jmalonzo@webkit.org>
2603
2604         Reviewed by Oliver Hunt.
2605
2606         Gtk build fix
2607
2608         * GNUmakefile.am:
2609         * page/AccessibilityTable.cpp: Change nil to 0
2610         (WebCore::AccessibilityTable::cellForColumnAndRow):
2611
2612 2008-08-19  Alexey Proskuryakov  <ap@webkit.org>
2613
2614         Reviewed by Geoff Garen.
2615
2616         Bring back shared JSGlobalData and implicit locking, because too many clients rely on it.
2617
2618         * ForwardingHeaders/kjs/JSLock.h: Added.
2619         * WebCore.vcproj/WebCore.vcproj:
2620         * bindings/js/GCController.cpp:
2621         (WebCore::collect):
2622         (WebCore::GCController::gcTimerFired):
2623         (WebCore::GCController::garbageCollectNow):
2624         * bindings/js/JSCustomSQLStatementCallback.cpp:
2625         (WebCore::JSCustomSQLStatementCallback::handleEvent):
2626         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
2627         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
2628         * bindings/js/JSCustomSQLTransactionCallback.cpp:
2629         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
2630         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
2631         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
2632         * bindings/js/JSCustomVoidCallback.cpp:
2633         (WebCore::JSCustomVoidCallback::handleEvent):
2634         * bindings/js/JSCustomXPathNSResolver.cpp:
2635         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
2636         * bindings/js/JSDOMWindowBase.cpp:
2637         (WebCore::DOMWindowTimer::~DOMWindowTimer):
2638         (WebCore::JSDOMWindowBase::clear):
2639         (WebCore::JSDOMWindowBase::timerFired):
2640         * bindings/js/JSEventCustom.cpp:
2641         (WebCore::toJS):
2642         * bindings/js/JSEventListener.cpp:
2643         (WebCore::JSAbstractEventListener::handleEvent):
2644         * bindings/js/JSNSResolver.cpp:
2645         (WebCore::JSNSResolver::lookupNamespaceURI):
2646         * bindings/js/JSNodeFilterCondition.cpp:
2647         (WebCore::JSNodeFilterCondition::acceptNode):
2648         * bindings/js/ScheduledAction.cpp:
2649         (WebCore::ScheduledAction::execute):
2650         * bindings/js/ScriptController.cpp:
2651         (WebCore::ScriptController::evaluate):
2652         (WebCore::ScriptController::clearWindowShell):
2653         (WebCore::ScriptController::createHTMLEventHandler):
2654         (WebCore::ScriptController::createSVGEventHandler):
2655         (WebCore::ScriptController::initScript):
2656         (WebCore::ScriptController::updateDocument):
2657         (WebCore::ScriptController::bindingRootObject):
2658         (WebCore::ScriptController::windowScriptNPObject):
2659         (WebCore::ScriptController::createScriptObjectForPluginElement):
2660         (WebCore::ScriptController::clearScriptObjects):
2661         * bindings/js/ScriptControllerMac.mm:
2662         (WebCore::ScriptController::windowScriptObject):
2663         * bindings/objc/WebScriptObject.mm:
2664         (_didExecute):
2665         (-[WebScriptObject callWebScriptMethod:withArguments:]):
2666         (-[WebScriptObject evaluateWebScript:]):
2667         (-[WebScriptObject setValue:forKey:]):
2668         (-[WebScriptObject valueForKey:]):
2669         (-[WebScriptObject removeWebScriptKey:]):
2670         (-[WebScriptObject stringRepresentation]):
2671         (-[WebScriptObject webScriptValueAtIndex:]):
2672         (-[WebScriptObject setWebScriptValueAtIndex:value:]):
2673         (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
2674         * bridge/NP_jsobject.cpp:
2675         (_NPN_InvokeDefault):
2676         (_NPN_Invoke):
2677         (_NPN_Evaluate):
2678         (_NPN_GetProperty):
2679         (_NPN_SetProperty):
2680         (_NPN_RemoveProperty):
2681         (_NPN_HasProperty):
2682         (_NPN_HasMethod):
2683         (_NPN_Enumerate):
2684         * bridge/c/c_class.cpp:
2685         (KJS::Bindings::CClass::~CClass):
2686         (KJS::Bindings::CClass::methodsNamed):
2687         (KJS::Bindings::CClass::fieldNamed):
2688         * bridge/c/c_instance.cpp:
2689         (KJS::Bindings::CInstance::invokeMethod):
2690         (KJS::Bindings::CInstance::invokeDefaultMethod):
2691         (KJS::Bindings::CInstance::getPropertyNames):
2692         * bridge/c/c_runtime.cpp:
2693         (KJS::Bindings::CField::valueFromInstance):
2694         (KJS::Bindings::CField::setValueToInstance):
2695         * bridge/c/c_utility.cpp:
2696         (KJS::Bindings::convertValueToNPVariant):
2697         (KJS::Bindings::convertNPVariantToValue):
2698         * bridge/jni/jni_class.cpp:
2699         (JavaClass::JavaClass):
2700         (JavaClass::~JavaClass):
2701         * bridge/jni/jni_instance.cpp:
2702         (JavaInstance::stringValue):
2703         * bridge/jni/jni_jsobject.mm:
2704         (JavaJSObject::call):
2705         (JavaJSObject::eval):
2706         (JavaJSObject::getMember):
2707         (JavaJSObject::setMember):
2708         (JavaJSObject::removeMember):
2709         (JavaJSObject::getSlot):
2710         (JavaJSObject::setSlot):
2711         (JavaJSObject::toString):
2712         (JavaJSObject::convertValueToJObject):
2713         (JavaJSObject::convertJObjectToValue):
2714         * bridge/jni/jni_objc.mm:
2715         (KJS::Bindings::dispatchJNICall):
2716         * bridge/jni/jni_runtime.cpp:
2717         (appendClassName):
2718         (JavaMethod::signature):
2719         * bridge/jni/jni_runtime.h:
2720         (KJS::Bindings::JavaString::JavaString):
2721         (KJS::Bindings::JavaString::_commonInit):
2722         (KJS::Bindings::JavaString::~JavaString):
2723         (KJS::Bindings::JavaString::UTF8String):
2724         * bridge/jni/jni_utility.cpp:
2725         (KJS::Bindings::convertValueToJValue):
2726         * bridge/npruntime.cpp:
2727         (_NPN_GetStringIdentifier):
2728         * bridge/objc/objc_instance.mm:
2729         (ObjcInstance::moveGlobalExceptionToExecState):
2730         (ObjcInstance::invokeMethod):
2731         (ObjcInstance::invokeDefaultMethod):
2732         (ObjcInstance::setValueOfUndefinedField):
2733         (ObjcInstance::getValueOfUndefinedField):
2734         * bridge/objc/objc_runtime.mm:
2735         (ObjcField::valueFromInstance):
2736         (ObjcField::setValueToInstance):
2737         * bridge/objc/objc_utility.mm:
2738         (KJS::Bindings::convertValueToObjcValue):
2739         (KJS::Bindings::convertNSStringToString):
2740         (KJS::Bindings::convertObjcValueToValue):
2741         * bridge/qt/qt_instance.cpp:
2742         (KJS::Bindings::QtRuntimeObjectImp::removeFromCache):
2743         (KJS::Bindings::QtInstance::~QtInstance):
2744         (KJS::Bindings::QtInstance::getQtInstance):
2745         (KJS::Bindings::QtInstance::getRuntimeObject):
2746         * bridge/qt/qt_runtime.cpp:
2747         (KJS::Bindings::convertValueToQVariant):
2748         (KJS::Bindings::convertQVariantToValue):
2749         (KJS::Bindings::QtRuntimeMetaMethod::call):
2750         (KJS::Bindings::QtRuntimeConnectionMethod::call):
2751         (KJS::Bindings::QtConnectionObject::QtConnectionObject):
2752         (KJS::Bindings::QtConnectionObject::execute):
2753         * bridge/runtime.cpp:
2754         (KJS::Bindings::Instance::createRuntimeObject):
2755         * bridge/testbindings.cpp:
2756         (main):
2757         * bridge/testbindings.mm:
2758         (main):
2759         * bridge/testqtbindings.cpp:
2760         (main):
2761         * dom/Document.cpp:
2762         (WebCore::Document::~Document):
2763         * dom/Node.cpp:
2764         (WebCore::Node::setDocument):
2765         * history/CachedPage.cpp:
2766         (WebCore::CachedPage::CachedPage):
2767         (WebCore::CachedPage::restore):
2768         (WebCore::CachedPage::clear):
2769         * loader/FrameLoader.cpp:
2770         (WebCore::getString):
2771         * page/InspectorController.cpp:
2772         (WebCore::ConsoleMessage::ConsoleMessage):
2773         (WebCore::XMLHttpRequestResource::XMLHttpRequestResource):
2774         (WebCore::XMLHttpRequestResource::~XMLHttpRequestResource):
2775         (WebCore::getResourceDocumentNode):
2776         (WebCore::search):
2777         (WebCore::inspectedWindow):
2778         (WebCore::wrapCallback):
2779         (WebCore::currentCallFrame):
2780         (WebCore::profiles):
2781         (WebCore::InspectorController::focusNode):
2782         (WebCore::InspectorController::inspectedWindowScriptObjectCleared):
2783         (WebCore::InspectorController::addDatabaseScriptResource):
2784         (WebCore::InspectorController::addScriptProfile):
2785         * page/JavaScriptCallFrame.cpp:
2786         (WebCore::JavaScriptCallFrame::evaluate):
2787         * page/JavaScriptProfileNode.cpp:
2788         (WebCore::getTotalTime):
2789         (WebCore::getSelfTime):
2790         (WebCore::getTotalPercent):
2791         (WebCore::getSelfPercent):
2792         (WebCore::getNumberOfCalls):
2793         (WebCore::getChildren):
2794         (WebCore::getVisible):
2795         * page/Page.cpp:
2796         * page/mac/FrameMac.mm:
2797         * plugins/PluginView.cpp:
2798         (WebCore::PluginView::start):
2799         (WebCore::getString):
2800         (WebCore::PluginView::performRequest):
2801         (WebCore::PluginView::bindingInstance):
2802         * plugins/gtk/PluginViewGtk.cpp:
2803         (WebCore::PluginView::paint):
2804         (WebCore::PluginView::handleKeyboardEvent):
2805         (WebCore::PluginView::handleMouseEvent):
2806         (WebCore::PluginView::setNPWindowRect):
2807         (WebCore::PluginView::stop):
2808         (WebCore::PluginView::init):
2809         * plugins/qt/PluginViewQt.cpp:
2810         (WebCore::PluginView::setNPWindowRect):
2811         (WebCore::PluginView::stop):
2812         (WebCore::PluginView::init):
2813         * plugins/win/PluginViewWin.cpp:
2814         (WebCore::PluginView::dispatchNPEvent):
2815         (WebCore::PluginView::handleKeyboardEvent):
2816         (WebCore::PluginView::handleMouseEvent):
2817         (WebCore::PluginView::setNPWindowRect):
2818         (WebCore::PluginView::stop):
2819         * xml/XMLHttpRequest.cpp:
2820         (WebCore::XMLHttpRequest::clearResponse):
2821         (WebCore::XMLHttpRequest::didFinishLoading):
2822         (WebCore::XMLHttpRequest::didReceiveData):
2823
2824 2008-08-19  Eric Seidel  <eric@webkit.org>
2825
2826         Reviewed by Geoff Garen.
2827
2828         Add the beginnings of Skia graphics support to WebCore
2829         as I try to begin the long process of un-forking the changes
2830         needed to WebCore to make Andriod's WebCore build.
2831
2832         I'll follow this up with actual *Skia.cpp files in a separate patch.
2833
2834         * platform/graphics/AffineTransform.h:
2835         * platform/graphics/FloatPoint.h:
2836         * platform/graphics/FloatRect.h:
2837         * platform/graphics/Gradient.h:
2838         * platform/graphics/GraphicsContext.h:
2839         * platform/graphics/Image.h:
2840         * platform/graphics/ImageBuffer.h:
2841         * platform/graphics/ImageSource.h:
2842         * platform/graphics/IntPoint.h:
2843         * platform/graphics/IntRect.h:
2844         * platform/graphics/Path.h:
2845         * platform/graphics/Pattern.h:
2846         * svg/graphics/SVGPaintServerPattern.h:
2847         * svg/graphics/SVGPaintServerSolid.h:
2848
2849 2008-08-19  Steve Falkenburg  <sfalken@apple.com>
2850
2851         Fix Windows build more.
2852
2853         * WebCore.vcproj/WebCore.vcproj:
2854
2855 2008-08-19  Steve Falkenburg  <sfalken@apple.com>
2856
2857         Fix Windows build.
2858
2859         * page/AccessibilityRenderObject.cpp:
2860         (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
2861
2862 2008-08-19  Chris Fleizach  <cfleizach@apple.com>
2863
2864         Reviewed by Beth Dakin.
2865
2866         <rdar://problem/4003764> Expose tables as AXTables
2867  
2868         Tests: accessibility/table-attributes.html
2869                accessibility/table-cell-spans.html
2870                accessibility/table-cells.html
2871                accessibility/table-detection.html
2872                accessibility/table-sections.html
2873                accessibility/table-with-rules.html
2874
2875         * WebCore.xcodeproj/project.pbxproj:
2876         * page/AXObjectCache.cpp:
2877         (WebCore::AXObjectCache::get):
2878         * page/AccessibilityObject.h:
2879         (WebCore::):
2880         (WebCore::AccessibilityObject::isDataTable):
2881         (WebCore::AccessibilityObject::isTableRow):
2882         (WebCore::AccessibilityObject::isTableColumn):
2883         (WebCore::AccessibilityObject::isTableCell):
2884         * page/AccessibilityRenderObject.cpp:
2885         (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
2886         * page/AccessibilityTable.cpp: Added.
2887         (WebCore::AccessibilityTable::AccessibilityTable):
2888         (WebCore::AccessibilityTable::~AccessibilityTable):
2889         (WebCore::AccessibilityTable::create):
2890         (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
2891         (WebCore::AccessibilityTable::clearChildren):
2892         (WebCore::AccessibilityTable::addChildren):
2893         (WebCore::AccessibilityTable::headerContainer):
2894         (WebCore::AccessibilityTable::columns):
2895         (WebCore::AccessibilityTable::rows):
2896         (WebCore::AccessibilityTable::rowHeaders):
2897         (WebCore::AccessibilityTable::columnHeaders):
2898         (WebCore::AccessibilityTable::cells):
2899         (WebCore::AccessibilityTable::columnCount):
2900         (WebCore::AccessibilityTable::rowCount):
2901         (WebCore::AccessibilityTable::cellForColumnAndRow):
2902         (WebCore::AccessibilityTable::roleValue):
2903         (WebCore::AccessibilityTable::accessibilityIsIgnored):
2904         (WebCore::AccessibilityTable::title):
2905         (WebCore::AccessibilityTable::isDataTable):
2906         * page/AccessibilityTable.h: Added.
2907         * page/AccessibilityTableCell.cpp: Added.
2908         (WebCore::AccessibilityTableCell::AccessibilityTableCell):
2909         (WebCore::AccessibilityTableCell::~AccessibilityTableCell):
2910         (WebCore::AccessibilityTableCell::create):
2911         (WebCore::AccessibilityTableCell::accessibilityIsIgnored):
2912         (WebCore::AccessibilityTableCell::rowIndexRange):
2913         (WebCore::AccessibilityTableCell::columnIndexRange):
2914         * page/AccessibilityTableCell.h: Added.
2915         (WebCore::AccessibilityTableCell::isTableCell):
2916         (WebCore::AccessibilityTableCell::roleValue):
2917         * page/AccessibilityTableColumn.cpp: Added.
2918         (WebCore::AccessibilityTableColumn::AccessibilityTableColumn):
2919         (WebCore::AccessibilityTableColumn::~AccessibilityTableColumn):
2920         (WebCore::AccessibilityTableColumn::create):
2921         (WebCore::AccessibilityTableColumn::setParentTable):
2922         (WebCore::AccessibilityTableColumn::elementRect):
2923         (WebCore::AccessibilityTableColumn::size):
2924         (WebCore::AccessibilityTableColumn::children):
2925         (WebCore::AccessibilityTableColumn::headerObject):
2926         (WebCore::AccessibilityTableColumn::headerObjectForSection):
2927         (WebCore::AccessibilityTableColumn::addChildren):
2928         * page/AccessibilityTableColumn.h: Added.
2929         (WebCore::AccessibilityTableColumn::parentObject):
2930         (WebCore::AccessibilityTableColumn::roleValue):
2931         (WebCore::AccessibilityTableColumn::accessibilityIsIgnored):
2932         (WebCore::AccessibilityTableColumn::isTableColumn):
2933         (WebCore::AccessibilityTableColumn::setColumnIndex):
2934         (WebCore::AccessibilityTableColumn::columnIndex):
2935         * page/AccessibilityTableHeaderContainer.cpp: Added.
2936         (WebCore::AccessibilityTableHeaderContainer::AccessibilityTableHeaderContainer):
2937         (WebCore::AccessibilityTableHeaderContainer::~AccessibilityTableHeaderContainer):
2938         (WebCore::AccessibilityTableHeaderContainer::create):
2939         (WebCore::AccessibilityTableHeaderContainer::children):
2940         (WebCore::AccessibilityTableHeaderContainer::elementRect):
2941         (WebCore::AccessibilityTableHeaderContainer::size):
2942         (WebCore::AccessibilityTableHeaderContainer::addChildren):
2943         * page/AccessibilityTableHeaderContainer.h: Added.
2944         (WebCore::AccessibilityTableHeaderContainer::roleValue):
2945         (WebCore::AccessibilityTableHeaderContainer::setParentTable):
2946         (WebCore::AccessibilityTableHeaderContainer::parentObject):
2947         (WebCore::AccessibilityTableHeaderContainer::accessibilityIsIgnored):
2948         * page/AccessibilityTableRow.cpp: Added.
2949         (WebCore::AccessibilityTableRow::AccessibilityTableRow):
2950         (WebCore::AccessibilityTableRow::~AccessibilityTableRow):
2951         (WebCore::AccessibilityTableRow::create):
2952         (WebCore::AccessibilityTableRow::accessibilityIsIgnored):
2953         (WebCore::AccessibilityTableRow::headerObject):
2954         * page/AccessibilityTableRow.h: Added.
2955         (WebCore::AccessibilityTableRow::isTableRow):
2956         (WebCore::AccessibilityTableRow::roleValue):
2957         (WebCore::AccessibilityTableRow::setRowIndex):
2958         (WebCore::AccessibilityTableRow::rowIndex):
2959         * page/mac/AccessibilityObjectWrapper.mm:
2960         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
2961         (RoleEntry::):
2962         (-[AccessibilityObjectWrapper roleDescription]):
2963         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
2964         (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
2965         (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
2966
2967 2008-08-19  Steve Falkenburg  <sfalken@apple.com>
2968
2969         Build fix.
2970         Add buildfailed support to stop builds early (preventing inaccurate error messages).
2971         Add missing post-build rule to Release.
2972
2973         * WebCore.vcproj/QTMovieWin.vcproj:
2974
2975 2008-08-19  Keishi Hattori  <casey.hattori@gmail.com>
2976
2977         Added support for console.count in the inspector.
2978
2979         Reviewed by Geoff Garen.
2980
2981         * page/Console.cpp:
2982         (WebCore::Console::count):
2983         * page/Console.h:
2984         * page/Console.idl: Added console.count.
2985         * page/InspectorController.cpp:
2986         (WebCore::InspectorController::didCommitLoad): Clears m_counts.
2987         (WebCore::InspectorController::count): Updates the count number
2988         sing "title@source:line" as the identifier, and adds a
2989         message to the console.
2990         * page/InspectorController.h: Added m_counts.
2991
2992 2008-08-19  Keishi Hattori  <casey.hattori@gmail.com>
2993
2994         Clear console.time timers when changing page.
2995
2996         Reviewed by Geoff Garen.
2997
2998         * page/InspectorController.cpp:
2999         (WebCore::InspectorController::didCommitLoad):
3000
3001 2008-08-19  Eric Carlson  <eric.carlson@apple.com>
3002
3003         Reviewed by Adele.
3004
3005         Fix for <rdar://problem/6154695> Full-page movies flicker while playing
3006         https://bugs.webkit.org/show_bug.cgi?id=20404
3007
3008         Ignore setVisible() when visibility doesn't change.
3009
3010         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
3011         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
3012         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
3013         (WebCore::MediaPlayerPrivate::setVisible):
3014
3015 2008-08-19  Timothy Hatcher  <timothy@apple.com>
3016
3017         Fixes a bug in the Profile view where switching sort order, then
3018         switching from heavy to tree mode would show the tree in the
3019         previous sort order.
3020
3021         https://bugs.webkit.org/show_bug.cgi?id=20441
3022
3023         Reviewed by Kevin McCullough.
3024
3025         * page/inspector/ProfileView.js:
3026         (WebInspector.ProfileView.prototype._changeView): Call _sortProfile
3027         on the next profile before assigning it to this.profile.
3028         (WebInspector.ProfileView.prototype._sortData): Call _sortProfile.
3029         (WebInspector.ProfileView.prototype._sortProfile): Moves from
3030         _sortData and takes a profile argument. If the profile passed in
3031         matches the this.profile, then call refresh.
3032
3033 2008-08-18  Timothy Hatcher  <timothy@apple.com>
3034
3035         Changed the default sort order now that heavy view is the default.
3036         Also fixes a bug where the heavy profile was not sorted at first.
3037
3038         https://bugs.webkit.org/show_bug.cgi?id=20440
3039
3040         Reviewed by Kevin McCullough.
3041
3042         * page/inspector/ProfileView.js:
3043         (WebInspector.ProfileView): Changed the default sort column. Also assign
3044         heavyProfile to profile, so the sortSelfTimeDescending call happens
3045         on the heavy profile before assigning to this.profile.
3046
3047 2008-08-18  Timothy Hatcher  <timothy@apple.com>
3048
3049         Add support for editing DOM properties and scope variables by double
3050         clicking a property to enter edit mode.
3051
3052         https://bugs.webkit.org/show_bug.cgi?id=20415
3053
3054         Reviewed by Kevin McCullough.
3055
3056         * page/inspector/ObjectPropertiesSection.js:
3057         (WebInspector.ObjectPropertiesSection): Set editable to true by default.
3058         (WebInspector.ObjectPropertiesSection.prototype.onpopulate):
3059         Factored out code into update, and calls update.
3060         (WebInspector.ObjectPropertiesSection.prototype.update): Moved from onpopulate.
3061         Call removeChildren since this method can be called multiple times now.
3062         (WebInspector.ObjectPropertyTreeElement): Pass an empty title, the title
3063         gets made later in onattach.
3064         (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate): Don't return early
3065         if shouldRefreshChildren is true. Call removeChildren since this method can be
3066         called multiple times now.
3067         (WebInspector.ObjectPropertyTreeElement.prototype.ondblclick): Call startEditing.
3068         (WebInspector.ObjectPropertyTreeElement.prototype.onattach): Call update.
3069         (WebInspector.ObjectPropertyTreeElement.prototype.update): Update the title for
3070         this element (code moved from the constructor.)
3071         (WebInspector.ObjectPropertyTreeElement.prototype.updateSiblings): Recreate all
3072         sibling property elements.
3073         (WebInspector.ObjectPropertyTreeElement.prototype.startEditing): Call
3074         WebInspector.startEditing after rememebring some context.
3075         (WebInspector.ObjectPropertyTreeElement.prototype.editingEnded): Reset the scrollLeft
3076         for the list element, since it might have scrolled during editing.
3077         (WebInspector.ObjectPropertyTreeElement.prototype.editingCancelled): Call editingEnded
3078         then restore the state from the context. Then call update to restore the title.
3079         (WebInspector.ObjectPropertyTreeElement.prototype.editingCommitted): Call editingCancelled
3080         if the user input and the previous input are the same. Call editingEnded, then call applyExpression
3081         to commit the user input.
3082         (WebInspector.ObjectPropertyTreeElement.prototype.applyExpression): Evaluates the input expression
3083         and stores the result on the object for the property name of this element. If the expression is
3084         empty, delete the property and remove the tree element.
3085         * page/inspector/ScopeChainSidebarPane.js:
3086         (WebInspector.ScopeChainSidebarPane.prototype.update): Set the editInSelectedCallFrameWhenPaused
3087         property on each ObjectPropertiesSection.
3088         (WebInspector.ScopeVariableTreeElement.prototype.onattach): Call ObjectPropertyTreeElement's onattach
3089         since it is now implemented.
3090         * page/inspector/ScriptsPanel.js:
3091         (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame): Added an updateInterface argument
3092         that defaults to true if omitted. It specifies whether to call update on the scope chain.
3093         * page/inspector/inspector.css: New styles.
3094         * page/inspector/treeoutline.js:
3095         (TreeElement.prototype._attach): Fixed an exception that fired when handling the shouldRefreshChildren
3096         change. The nextSibling would exist but have a _listItemNode that didn't match the new parent.
3097
3098 2008-08-18  Timothy Hatcher  <timothy@apple.com>
3099
3100         Surround the expression to be evaluated in parenthesis so the
3101         result of the eval is the result of the whole expression not
3102         the last potential sub-expression. So evaluating {x: 123}
3103         will show the Object not 123.
3104
3105         https://bugs.webkit.org/show_bug.cgi?id=20428
3106
3107         Reviewed by Kevin McCullough.
3108
3109         * page/inspector/Console.js:
3110         (Console.prototype._evalInInspectedWindow): Add parenthesis
3111         around the expression. And add couple comments.
3112
3113 2008-08-19 Kevin McCullough <kmccullough@apple.com>
3114
3115         Reviewed by Geoff.
3116
3117         -Implement a page() function to extract a common code pattern.
3118
3119         * WebCore.xcodeproj/project.pbxproj:
3120         * page/Console.cpp:
3121         (WebCore::Console::addMessage):
3122         (WebCore::Console::error):
3123         (WebCore::Console::info):
3124         (WebCore::Console::log):
3125         (WebCore::Console::dir):
3126         (WebCore::Console::assertCondition):
3127         (WebCore::Console::time):
3128         (WebCore::Console::timeEnd):
3129         (WebCore::Console::group):
3130         (WebCore::Console::groupEnd):
3131         (WebCore::Console::finishedProfiling):
3132         (WebCore::Console::warn):
3133         (WebCore::Console::framePage):
3134         * page/Console.h:
3135
3136 2008-08-12  Darin Adler  <darin@apple.com>
3137
3138         Reviewed by Geoff.
3139
3140         - eliminate JSValue::type()
3141
3142         * bridge/c/c_instance.cpp:
3143         (KJS::Bindings::CInstance::defaultValue): Take PreferredPrimitiveType
3144         argument instead of JSType argument. Removed unneeded code to handle
3145         boolean, since that's never passed.
3146         * bridge/c/c_instance.h: Ditto.
3147
3148         * bridge/c/c_utility.cpp:
3149         (KJS::Bindings::convertValueToNPVariant): Use JSValue::is functions
3150         instead of JSValue::type(). Removed unneeded code to handle
3151         "unspecified".
3152
3153         * bridge/jni/jni_instance.cpp:
3154         (JavaInstance::defaultValue): Take PreferredPrimitiveType argument
3155         instead of JSType argument. Removed unneeded code to handle boolean.
3156         * bridge/jni/jni_instance.h: Ditto.
3157
3158         * bridge/jni/jni_jsobject.mm:
3159         (JavaJSObject::convertValueToJObject): Use JSValue::is functions
3160         instead of JSValue::type().
3161
3162         * bridge/objc/objc_instance.h: Take PreferredPrimitiveType argument
3163         instead of JSType argument. Removed unused argument.
3164         * bridge/objc/objc_instance.mm:
3165         (ObjcInstance::getValueOfUndefinedField): Removed unused argument.
3166         (ObjcInstance::defaultValue): Take PreferredPrimitiveType argument
3167         instead of JSType argument. Removed unneeded code to handle boolean
3168         and another dead code path for unknown types.
3169
3170         * bridge/objc/objc_runtime.h: Take PreferredPrimitiveType argument
3171         instead of JSType argument. Removed override of type() that caused
3172         the fallback object to return "UndefinedType" when there is no
3173         invokeUndefinedMethodFromWebScript:withArguments: method defined.
3174         That didn't accomplish much, since most checks for undefined don't
3175         ever call type().
3176         * bridge/objc/objc_runtime.mm:
3177         (ObjcFallbackObjectImp::defaultValue): Ditto.
3178
3179         * bridge/qt/qt_instance.cpp:
3180         (KJS::Bindings::QtInstance::defaultValue): Take PreferredPrimitiveType
3181         argument instead of JSType argument. Removed unneeded code to handle
3182         boolean.
3183         * bridge/qt/qt_instance.h: Ditto.
3184
3185         * bridge/runtime.h:
3186         (KJS::Bindings::Instance::getValueOfUndefinedField): Removed
3187         unsed argument.
3188         * bridge/runtime_object.cpp:
3189         (RuntimeObjectImp::defaultValue): Take PreferredPrimitiveType
3190         argument instead of JSType argument.
3191         * bridge/runtime_object.h: Ditto.
3192
3193 2008-08-18  Maxime Britto  <britto@apple.com>
3194
3195         Reviewed by Adele.
3196
3197         <rdar://6157207> Mouse pointer does not change when new window is opened after pan-scrolling original window
3198         Related to the discussion from rdar://6102511 , we should disable every key event (except for the esc key which stops the panning).
3199         We shouldn't be able to create another window while we are in pan scrolling.
3200         Other browsers behaviors :
3201           FF3 : Most of the keys are disabled, there is no way to create another window while in panscroll mode
3202           IE7 : Keys are not disabled but stops immediately the panning.
3203         This patch matches FF3 behavior by disabling every key but the esc key.
3204
3205         * page/EventHandler.cpp:
3206         (WebCore::EventHandler::stopAutoscrollTimer): Change the cursor back to the regular arrow cursor when the pannning is stopped.
3207         (WebCore::EventHandler::keyEvent): When a key event is received while in panning or autoscroll we swallow the event early.
3208
3209 2008-08-18  Dan Bernstein  <mitz@apple.com>
3210
3211         Reviewed by Dave Hyatt.
3212
3213         - fix <rdar://problem/5862634> REGRESSION (3.1.1): In iChat, inline image not resizable past current size after another IM is received
3214
3215         Test: fast/replaced/max-width-percent.html
3216
3217         Added an includeMaxWidth boolean to RenderBox::calcReplaedWidth().
3218         When false, max-width is not factored into the
3219         calculation.
3220         Changed RenderReplaced and subclasses' calcPrefWidths() to call
3221         calcReplacedWidth(false) and then apply max-width only if it has a
3222         fixed, positive value.
3223
3224         * rendering/RenderBox.cpp:
3225         (WebCore::RenderBox::calcReplacedWidth):
3226         * rendering/RenderBox.h:
3227         * rendering/RenderImage.cpp:
3228         (WebCore::RenderImage::calcReplacedWidth):
3229         (WebCore::RenderImage::calcPrefWidths): 
3230         * rendering/RenderImage.h:
3231         * rendering/RenderReplaced.cpp:
3232         (WebCore::RenderReplaced::calcPrefWidths):
3233         * rendering/RenderSVGRoot.cpp:
3234         (WebCore::RenderSVGRoot::calcPrefWidths):
3235         * rendering/RenderVideo.cpp:
3236         (WebCore::RenderVideo::calcReplacedWidth):
3237         (WebCore::RenderVideo::calcPrefWidths):
3238         * rendering/RenderVideo.h:
3239
3240 2008-08-18  Daniel Macks  <dmacks@netspace.org>
3241
3242         Reviewed by Mark Rowe.
3243
3244         https://bugs.webkit.org/show_bug.cgi?id=20410
3245         More portable/self-documenting replacement for SIZE_MAX.
3246
3247         * platform/network/curl/FormDataStreamCurl.cpp:
3248         (WebCore::FormDataStream::read):
3249
3250 2008-08-18  Simon Fraser  <simon.fraser@apple.com>
3251
3252         Reviewed by Dave Hyatt
3253
3254         Need to make sure we have an Animation in the AnimationList
3255         before setting the initial value.
3256         https://bugs.webkit.org/show_bug.cgi?id=20408
3257
3258         Test: fast/css/transition_shorthand_parsing.html
3259
3260         * css/CSSStyleSelector.cpp:
3261
3262 2008-08-18  Kevin McCullough  <kmccullough@apple.com>
3263
3264         Reviewed by Tim.
3265
3266         <rdar://problem/6150593> JSProfiler: Empty profiles disappear when there
3267         is another profile.
3268
3269         * page/inspector/ProfilesPanel.js:
3270
3271 2008-08-18  Kevin McCullough  <kmccullough@apple.com>
3272
3273         Reviewed by Geoff.
3274
3275         <rdar://problem/6150642> REGRESSION: Closing the Web Inspector clears
3276         all console messages
3277
3278         * page/inspector/Console.js:
3279
3280 2008-08-18  Dirk Schulze  <vbs85@gmx.de>
3281
3282         Reviewed by Eric Seidel.
3283
3284         Fixed Canvas for Cairo. Stroke and fill colors didn't work after
3285         the canvas clean up.
3286
3287         https://bugs.webkit.org/show_bug.cgi?id=20405
3288
3289         * html/CanvasRenderingContext2D.cpp:
3290         (WebCore::CanvasRenderingContext2D::fill):
3291         (WebCore::CanvasRenderingContext2D::stroke):
3292         (WebCore::CanvasRenderingContext2D::fillRect):
3293
3294 2008-08-17  Timothy Hatcher  <timothy@apple.com>
3295
3296         Complete in scope variables in the Console when paused.
3297
3298         https://bugs.webkit.org/show_bug.cgi?id=19115
3299
3300         Reviewed by Geoffrey Garen.
3301
3302         * page/inspector/Console.js:
3303         (WebInspector.Console.prototype.completions): If the expressionString
3304         is null or empty and the debugger is paused, call variablesInScopeForSelectedCallFrame
3305         to get an object that declares all the in scope variables. That way
3306         "top level" expressions are completed.
3307         * page/inspector/ScriptsPanel.js:
3308         (WebInspector.ScriptsPanel.prototype.variablesInScopeForSelectedCallFrame):
3309         Return an object that has all the variables that are in scope for the
3310         selected call frame. The value of each property is just true.
3311         The return object is useful for quick lookups or auto completion.
3312
3313 2008-08-17  Cameron Zwarich  <cwzwarich@uwaterloo.ca>
3314
3315         Not reviewed.
3316
3317         Speculative Qt build fix.
3318
3319         * bridge/qt/qt_runtime.cpp:
3320         (KJS::Bindings::convertValueToQVariant):
3321         (KJS::Bindings::QtRuntimeMethod::QtRuntimeMethod):
3322
3323 2008-08-17  Geoffrey Garen  <ggaren@apple.com>
3324
3325         Reviewed by Cameron Zwarich.
3326         
3327         Updated project files to XCode 3.1.
3328
3329         * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj/project.pbxproj:
3330
3331 2008-08-17  Geoffrey Garen  <ggaren@apple.com>
3332
3333         Reviewed by Cameron Zwarich.
3334
3335         Made room for a free word in JSCell.
3336         
3337         Changed JSDOMWindowBase to store its auxiliary data in a subclass of
3338         JSGlobalData, so the two could share a pointer.
3339         
3340         Added a bunch of ASSERTs, to help catch over-sized objects.
3341
3342 2008-08-15  Mark Rowe  <mrowe@apple.com>
3343
3344         Reviewed by Dan Bernstein.
3345
3346         Disable dead code stripping in debug builds.
3347
3348         * Configurations/Base.xcconfig:
3349         * WebCore.xcodeproj/project.pbxproj:
3350
3351 2008-08-15  Mark Rowe  <mrowe@apple.com>
3352
3353         Rubber-stamped by Geoff Garen.
3354
3355         <rdar://problem/6139914> Please include a _debug version of JavaScriptCore framework
3356
3357         * Configurations/Base.xcconfig: Factor out the debug-only settings so that they can shared
3358         between the Debug configuration and debug Production variant.
3359         * WebCore.xcodeproj/project.pbxproj: Enable the debug variant.
3360
3361 2008-08-15  Antti Koivisto  <antti@apple.com>
3362
3363         Reviewed by Anders.
3364
3365         Don't start preloading body resources before the head is complete. This prevents
3366         body preloads from slowing down initial display when there is limited amount
3367         of bandwidth available.
3368         
3369         Works by queuing up found body preloads to DocLoader and only issuing them
3370         after document has rendering.
3371         
3372         With bandwidth capped to 300kbit/s this speeds up cnn.com initial display by ~25% or 5s
3373         without affecting complete load time.
3374
3375         * html/PreloadScanner.cpp:
3376         (WebCore::PreloadScanner::PreloadScanner):
3377         (WebCore::PreloadScanner::scanningBody):
3378         (WebCore::PreloadScanner::emitTag):
3379         (WebCore::PreloadScanner::emitCSSRule):
3380         * html/PreloadScanner.h:
3381         * loader/DocLoader.cpp:
3382         (WebCore::DocLoader::preload):
3383         (WebCore::DocLoader::checkForPendingPreloads):
3384         (WebCore::DocLoader::requestPreload):
3385         * loader/DocLoader.h:
3386         * loader/loader.cpp:
3387         (WebCore::Loader::Host::didFinishLoading):
3388         (WebCore::Loader::Host::didFail):
3389
3390 2008-08-15  Ada Chan  <adachan@apple.com>
3391
3392         Use item's computed style if the render style is 0 before falling back to the <select>'s style.
3393         This way style set on an <hr> within a <select> will be honored.
3394
3395         Reviewed by Dave Hyatt and Dan Bernstein.
3396
3397         * rendering/RenderMenuList.cpp:
3398         (WebCore::RenderMenuList::itemStyle):
3399
3400 2008-08-15  Antti Koivisto  <antti@apple.com>
3401
3402         Reviewed by Oliver.
3403
3404         Some loader performance tweaks:
3405         - Make stylesheets highest priority instead of scripts. We block script execution on stylesheets.
3406           Especially if a stylesheet @imports other stylesheets it is important to get them to the front of the queue 
3407           to not delay rendering.
3408         - Issue the first resource load for a host immediately even if the resource is low priority. TCP connection setup
3409           can take long time when latency is high so it is good to get started early.
3410         - When the document is fully parsed and stylesheets have been loaded there is no need to keep managing the
3411           load queues. Issue remaining loads to the network layer.
3412
3413         * loader/loader.cpp:
3414         (WebCore::Loader::determinePriority):
3415         (WebCore::Loader::load):
3416         (WebCore::Loader::Host::servePendingRequests):
3417         * loader/loader.h:
3418
3419 2008-08-15  Timothy Hatcher  <timothy@apple.com>
3420
3421         Detach the script debugger when the Web Inspector's window closes.
3422         This has always been the intended design, but never fully implemented.
3423
3424         https://bugs.webkit.org/show_bug.cgi?id=20402
3425
3426         Reviewed by Adam Roben.
3427
3428         * page/InspectorController.cpp:
3429         (WebCore::InspectorController::setWindowVisible): Call stopDebugging()
3430         if the window is no longer visible.
3431
3432 2008-08-15  Håvard Wall  <hwall@trolltech.com>
3433
3434         Reviewed by Simon.
3435
3436         Fixes:    compile with QT_NO_CONTEXTMENU
3437
3438         * platform/qt/PlatformMouseEventQt.cpp:
3439         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
3440         * platform/qt/PlatformScrollBarQt.cpp:
3441         (WebCore::PlatformScrollbar::handleMouseMoveEvent):
3442         (WebCore::PlatformScrollbar::handleContextMenuEvent):
3443
3444 2008-08-15  Håvard Wall  <hwall@trolltech.com>
3445
3446         Reviewed by Simon.
3447
3448         Fixes: compile with QT_NO_WHEELEVENT
3449
3450         * platform/qt/WheelEventQt.cpp:
3451         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
3452
3453 2008-08-15  Keishi Hattori  <casey.hattori@gmail.com>
3454
3455         Fixed Bug 20210: Console groups are incorrect when closing and reopening the Inspector
3456
3457         https://bugs.webkit.org/show_bug.cgi?id=20210
3458
3459         Reviewed by Tim Hatcher.
3460
3461         * page/Console.cpp:
3462         (WebCore::Console::group):
3463         (WebCore::Console::groupEnd):
3464         * page/Console.h:
3465         (WebCore::): Removed GroupTitleMessageLevel. Added StartGroupMessaageLevel and EndGroupMessageLevel.
3466         * page/InspectorController.cpp:
3467         (WebCore::InspectorController::startGroup): Increments group level by
3468         one and adds console message with StartGroupMessaageLevel.
3469         (WebCore::InspectorController::endGroup): Decrements group level by one
3470         and adds console message with EndGroupMessaageLevel.
3471         * page/InspectorController.h:
3472         * page/inspector/Console.js:
3473         (WebInspector.Console.prototype.addMessage): Creates new ConsoleGroup
3474         if the message is StartGroupMessaageLevel.
3475         (WebInspector.ConsoleMessage.prototype.toMessageElement):
3476         (WebInspector.ConsoleGroup.prototype.addMessage):
3477         * page/inspector/inspector.js:
3478
3479 2008-08-15  Keishi Hattori  <casey.hattori@gmail.com>
3480
3481         Adds support for console.dir to the Inspector
3482
3483         https://bugs.webkit.org/show_bug.cgi?id=19155
3484
3485         Reviewed by Tim Hatcher.
3486
3487         * bindings/js/JSConsoleCustom.cpp:
3488         (WebCore::JSConsole::dir):
3489         * page/Console.cpp:
3490         (WebCore::Console::dir):
3491         * page/Console.h: Added ObjectMessageLevel.
3492         * page/Console.idl: Added console.dir.
3493         * page/inspector/Console.js:
3494         (WebInspector.ConsoleMessage.prototypet.toMessageElement): Creates an
3495         ObjectPropertiesSection if the MessageLevel is Object.
3496         * page/inspector/ObjectPropertiesSection.js: "in" operator can't be
3497         used on primitive data types.
3498         * page/inspector/inspector.css:
3499
3500 2008-08-15  Keishi Hattori  <casey.hattori@gmail.com>
3501
3502         Adds support for clear() in the Inspector console.
3503
3504         https://bugs.webkit.org/show_bug.cgi?id=19873
3505
3506         Reviewed by Tim Hatcher.
3507
3508         * page/inspector/Console.js:
3509
3510 2008-08-15  Anthony Ricaud  <rik24d@gmail.com>
3511
3512         Cmd-F on Mac or Ctrl-F on other platforms now focus the search field.
3513
3514         Platform distinction and modifier key matching adjusted
3515         by Daniel Jalkut <jalkut@red-sweater.com>
3516
3517         Bug 16313: text search (find) keybindings should work in the Web Inspector
3518         https://bugs.webkit.org/show_bug.cgi?id=16313
3519
3520         Reviewed by Tim Hatcher.
3521
3522         * page/inspector/inspector.js: Added a case for the F key
3523
3524 2008-08-15  Keishi Hattori  <casey.hattori@gmail.com>
3525
3526         Fix for error when the string doesn't contain a webkit-profile link.
3527
3528         https://bugs.webkit.org/show_bug.cgi?id=20399
3529
3530         Reviewed by Tim Hatcher.
3531
3532         * page/inspector/inspector.js:
3533
3534 2008-08-15  Timothy Hatcher  <timothy@apple.com>
3535
3536         Fixes two bugs where JavaScript could be executed from the page
3537         while the debugger is paused.
3538
3539         The first issue was JSLazyEventListener not checking the paused
3540         state before parsing the code.
3541
3542         The second issue was with the PageGroup version of
3543         JavaScriptDebugServer::setJavaScriptPaused always passing false
3544         to the Page version of JavaScriptDebugServer::setJavaScriptPaused,
3545         and not the paused argument.
3546
3547         https://bugs.webkit.org/show_bug.cgi?id=20284
3548
3549         Reviewed by Adam Roben.
3550
3551         * bindings/js/JSEventListener.cpp:
3552         (WebCore::JSLazyEventListener::parseCode): Check the paused
3553         state of the ScriptController. Return early if paused.
3554         * manual-tests/inspector/debugger-execution-while-paused.html: Added.
3555         * page/JavaScriptDebugServer.cpp:
3556         (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
3557         Pass the paused argument to the Page version of setJavaScriptPaused.
3558
3559 2008-08-15  Alexey Proskuryakov  <ap@webkit.org>
3560
3561         Reviewed by Geoff Garen.
3562
3563         JSStringRef is created context-free, but can get linked to one via an identifier table,
3564         breaking an implicit API contract.
3565
3566         * page/InspectorController.cpp:
3567         (WebCore::jsStringRef):
3568         (WebCore::InspectorController::didParseSource):
3569         (WebCore::InspectorController::failedToParseSource):
3570         * page/JavaScriptProfile.cpp:
3571         (WebCore::getTitleCallback):
3572         Updated for JavaScriptCore changes.
3573
3574 2008-08-14  Kevin Ollivier  <kevino@theolliviers.com>
3575
3576         wx !USE(WXGC) build fix. This is necessary until we find a way to replace GDI with
3577         an alternative that performs reasonably well. (GDI+ is too slow in many cases.)
3578
3579         * platform/graphics/AffineTransform.h:
3580
3581 2008-08-14  Eric Carlson  <eric.carlson@apple.com>
3582
3583         Reviewed by Adele.
3584
3585         Fix for https://bugs.webkit.org/show_bug.cgi?id=20388
3586         <video> elements on Windows never becomes visible when a page is restored from the cache
3587
3588         Always pass "set" calls down to MediaPlayerPrivate instead of only when the
3589         value is different from the cached value. Let the implementation decide when
3590         to avoid work because nothing has changed.
3591
3592         * platform/graphics/MediaPlayer.cpp:
3593         (WebCore::MediaPlayer::setVolume):
3594         (WebCore::MediaPlayer::setRate):
3595         (WebCore::MediaPlayer::setRect):
3596         (WebCore::MediaPlayer::setVisible):
3597
3598 2008-08-14  Keishi Hattori  <casey.hattori@gmail.com>
3599
3600         Make Firebug command line API respect predefined variables.
3601
3602         https://bugs.webkit.org/show_bug.cgi?id=20385
3603
3604         Reviewed by Tim Hatcher.
3605
3606         * page/inspector/Console.js:
3607
3608 2008-08-14  Sam Weinig  <sam@webkit.org>
3609
3610         Reviewed by Geoffrey Garen and Timothy Hatcher.
3611
3612         Allow programatically setting the HTMLTokenizers time delay and chunk size
3613         which are used for determining how aggressively we yield.
3614
3615         * WebCore.base.exp:
3616         * html/HTMLTokenizer.cpp:
3617         (WebCore::HTMLTokenizer::begin):
3618         (WebCore::HTMLTokenizer::continueProcessing):
3619         * html/HTMLTokenizer.h:
3620         * page/Page.cpp:
3621         (WebCore::Page::Page):
3622         (WebCore::Page::setCustomHTMLTokenizerTimeDelay):
3623         (WebCore::Page::setCustomHTMLTokenizerChunkSize):
3624         * page/Page.h:
3625         (WebCore::Page::hasCustomHTMLTokenizerTimeDelay):
3626         (WebCore::Page::customHTMLTokenizerTimeDelay):
3627         (WebCore::Page::hasCustomHTMLTokenizerChunkSize):
3628         (WebCore::P