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