WebCore: Swedish search (and other languages as well) is broken while fixing Japanese...
[WebKit-https.git] / WebCore / ChangeLog
1 2009-10-21  Darin Adler  <darin@apple.com>
2
3         Swedish search (and other languages as well) is broken while fixing Japanese search
4         https://bugs.webkit.org/show_bug.cgi?id=30646
5
6         Rolled Japanese tailoring out that was done to fix
7         https://bugs.webkit.org/show_bug.cgi?id=30437 earlier.
8         It was overriding the locale-specific tailoring.
9         We'll land a fix once we figure out how to add the
10         Japanese tailoring without removing anything.
11
12         * editing/TextIterator.cpp: Rolled out r49924.
13
14 2009-10-21  Pavel Feldman  <pfeldman@chromium.org>
15
16         Not reviewed: chromium build fix - add missing image to gypi.
17
18         * WebCore.gypi:
19
20 2009-10-21  Brian Weinstein  <bweinstein@apple.com>
21
22         Reviewed by Eric Seidel.
23
24         Fixes part of <http://webkit.org/b/30522>.
25         Web Inspector: DOM Exceptions throughout the Inspector should be more human readable.
26
27         Expose the description attribute that is now a member of
28         ExceptionBase as of r49723, so when a user logs an exception, they
29         can see the description in the Web Inspector.
30
31         Test: fast/dom/dom-exception-description.html
32
33         * dom/DOMCoreException.idl:
34         * dom/EventException.idl:
35         * dom/RangeException.idl:
36         * svg/SVGException.idl:
37         * xml/XMLHttpRequestException.idl:
38         * xml/XPathException.idl:
39
40 2009-10-21  Brian Weinstein  <bweinstein@apple.com>
41
42         Reviewed by Timothy Hatcher.
43
44         Fixes <https://bugs.webkit.org/show_bug.cgi?id=30616>.
45         REGRESSION (r49036): Web Inspector: Summary graph no longer switching to size summary.
46         
47         Add a check to make sure a function we need to calculate percentages is
48         defined before we use it.
49
50         * inspector/front-end/ResourcesPanel.js:
51         (WebInspector.ResourcesPanel.prototype._updateGraphDividersIfNeeded):
52
53 2009-10-21  Keishi Hattori  <casey.hattori@gmail.com>
54
55         Reviewed by Timothy Hatcher.
56
57         REGRESSION: Clicking on nodes in the console should take you to the element in the DOM
58         https://bugs.webkit.org/show_bug.cgi?id=27231
59
60         * inspector/front-end/ConsoleView.js:
61         (WebInspector.ConsoleView.prototype._formatnode): Turns on ElementsTreeOutline.showInElementsPanelEnabled
62         * inspector/front-end/ElementsTreeOutline.js:
63         (WebInspector.ElementsTreeOutline): Added ElementsTreeOutline.showInElementsPanelEnabled
64         (WebInspector.ElementsTreeElement.prototype.onmousedown): Reveals the node in the Elements panel if 
65         treeOutline.showInElementsPanelEnabled is true.
66
67 2009-10-21  Jeremy Orlow  <jorlow@chromium.org>
68
69         Reviewed by Eric Seidel.
70
71         https://bugs.webkit.org/show_bug.cgi?id=30637
72         Fix a compiler warning in windows.
73
74         * loader/ResourceLoadNotifier.h:
75
76 2009-10-21  Dmitry Titov  <dimich@chromium.org>
77
78         Reviewed by Darin Adler.
79
80         Fix the crash when a node not in a document receives dispatchEvent.
81         https://bugs.webkit.org/show_bug.cgi?id=30611
82
83         Test: fast/events/dispatch-event-no-document.html
84
85         * dom/EventTarget.cpp: Check for scriptExecutionContext() at the moment of dispatchEvent; do nothing if no context.
86         (WebCore::EventTarget::dispatchEvent):
87
88 2009-10-21  Adam Langley  <agl@google.com>
89
90         Reviewed by Eric Seidel.
91
92         Chromium Linux: disable subpixel text on layers.
93
94         https://bugs.webkit.org/show_bug.cgi?id=30635
95         http://code.google.com/p/chromium/issues/detail?id=25365
96
97         With the addition of layers for drawing rounded corners in r49641,
98         subpixel text on rounded rectangles broke. This is because the layer
99         only contains a single alpha channel and this is insufficient to
100         compose subpixel text correctly.
101
102         On Windows, a large body of code in TransparencyWin.cpp exists to try
103         to deal with this. Even then, in some cases, it downgrades to
104         anti-aliased text. We need a fix for the grevious effects quickly thus
105         this patch disables subpixel text when rendering into a layer.
106
107         This would be covered by existing tests except that subpixel text is
108         disabled for pixel tests on Chromium Linux.
109
110         * platform/graphics/chromium/FontLinux.cpp:
111         (WebCore::isCanvasMultiLayered):
112         (WebCore::adjustTextRenderMode):
113         (WebCore::Font::drawGlyphs):
114         (WebCore::Font::drawComplexText):
115
116 2009-10-21  Kevin Ollivier  <kevino@theolliviers.com>
117
118         wxMac 10.4 build fix, make sure we specify the Sqlite3 dependency correctly as otherwise
119         it will use the sqlite3 system library rather than WebCoreSQLite3.
120
121         * wscript:
122
123 2009-10-21  Dan Bernstein  <mitz@apple.com>
124
125         Reviewed by Sam Weinig.
126
127         Fixed background-clip parsing regressions introduced in r46240.
128
129         Test: fast/css/background-clip-text.html
130
131         * css/CSSParser.cpp:
132         (WebCore::parseBackgroundClip): Added this helper method.
133         (WebCore::CSSParser::parseFillShorthand): Use parseBackgroundClip() to
134         reparse the value. The old code called parseFillProperty() again, which
135         didn’t work, because parseFillProperty() advances the value list.
136         (WebCore::CSSParser::parseFillProperty): Changed to use
137         parseBackgroundClip().
138         * css/CSSPrimitiveValueMappings.h:
139         (WebCore::CSSPrimitiveValue::operator EFillBox): Added a case for
140         CSSValueWebkitText.
141
142 2009-10-21  Alexander Pavlov  <apavlov@chromium.org>
143
144         Reviewed by Timothy Hatcher.
145
146         Enable creation of custom SidebarTreeElements for different ProfileTypes
147
148         ProfileTypes can now create sidebar tree elements of custom types.
149         https://bugs.webkit.org/show_bug.cgi?id=30520
150
151         * inspector/front-end/ProfileView.js:
152         (WebInspector.CPUProfileType.prototype.setRecordingProfile):
153         (WebInspector.CPUProfileType.prototype.createSidebarTreeElementForProfile):
154         (WebInspector.CPUProfileType.prototype.createView):
155         (WebInspector.CPUProfile.prototype.get head):
156         * inspector/front-end/ProfilesPanel.js:
157         (WebInspector.ProfileType.prototype.buttonClicked):
158         (WebInspector.ProfileType.prototype.viewForProfile):
159         (WebInspector.ProfileType.prototype.createView):
160         (WebInspector.ProfileType.prototype.createSidebarTreeElementForProfile):
161         (WebInspector.ProfilesPanel.prototype.addProfileHeader):
162         (WebInspector.ProfilesPanel.prototype.showProfile):
163
164 2009-10-20  Joseph Pecoraro  <joepeck@webkit.org>
165
166         Reviewed by Timothy Hatcher.
167
168         Web Inspector: Selectors in the Styles pane should trigger a search for that selector when clicked
169         https://bugs.webkit.org/show_bug.cgi?id=17126
170
171         * inspector/front-end/ElementsPanel.js:
172         (WebInspector.ElementsPanel.prototype.addNodesToSearchResult): only change focusedDOMNode on a manual search
173         * inspector/front-end/StylesSidebarPane.js:
174         (WebInspector.StylePropertiesSection.prototype._clickSelector): trigger a search
175         * inspector/front-end/ElementsTreeOutline.js:
176         (WebInspector.ElementsTreeElement.prototype._startEditing): correctly start editing attribute value instead of name
177
178 2009-10-20  Pavel Feldman  <pfeldman@chromium.org>
179
180         Reviewed by Timothy Hatcher.
181
182         Web Inspector: Fix DOM Agent leak.
183
184         https://bugs.webkit.org/show_bug.cgi?id=30615
185
186         * inspector/InspectorController.cpp:
187         (WebCore::InspectorController::~InspectorController):
188
189 2009-10-21  Girish Ramakrishnan  <girish@forwardbias.in>
190
191         Reviewed by Holger Freyther.
192
193         Plugins: Create manual tests for testing plugins
194         
195         Create two test files:
196         1. windowed.html - Test plugin in windowed mode.
197         2. windowless.html - Test plugin in windowless mode.
198
199         https://bugs.webkit.org/show_bug.cgi?id=30503
200
201         * manual-tests/plugins/windowed.html: Added.
202         * manual-tests/plugins/windowless.html: Added.
203
204 2009-10-21  Satoshi Nakagawa  <psychs@limechat.net>
205
206         Reviewed by Darin Adler.
207
208         Fixed Japanese text search problems.
209         Treat small kana letters and kana letters as different characters in search.
210         Do not ignore diacritic marks in search for Japanese texts.
211
212         https://bugs.webkit.org/show_bug.cgi?id=30437
213
214         Test: fast/text/international/japanese-kana-letters.html
215
216         * editing/TextIterator.cpp:
217         (WebCore::createCollator):
218         (WebCore::collator):
219         (WebCore::createSearcher):
220
221 2009-10-20  Eric Z. Ayers  <zundel@google.com>
222
223         Reviewed by Timothy Hatcher.
224
225         Changes TimelineItems to be created with raw timestamps as opposed
226         to a time relative to a start of session.  Normalized timestamps cause
227         problems when monitoring a browsing session across multiple page
228         transitions.
229
230         * inspector/InspectorTimelineAgent.cpp:
231         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
232         (WebCore::InspectorTimelineAgent::willDispatchDOMEvent):
233         (WebCore::InspectorTimelineAgent::willLayout):
234         (WebCore::InspectorTimelineAgent::willRecalculateStyle):
235         (WebCore::InspectorTimelineAgent::willPaint):
236         (WebCore::InspectorTimelineAgent::willWriteHTML):
237         (WebCore::InspectorTimelineAgent::reset):
238         (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
239         * inspector/InspectorTimelineAgent.h:
240
241 2009-10-20  Mark Rowe  <mrowe@apple.com>
242
243         Reviewed by Oliver Hunt.
244
245         Fix leak of WebSocketChannel by adopting the newly-created reference.
246
247         * websockets/WebSocketChannel.h:
248         (WebCore::WebSocketChannel::create):
249
250 2009-10-20  Jeremy Orlow  <jorlow@chromium.org>
251
252         Reviewed by Adam Barth.
253
254         DOM Storage runtime flag changes
255         https://bugs.webkit.org/show_bug.cgi?id=30602
256
257         Part 1/2.  Removing sessionStorageEnabled in next patch after the
258         Chromium side of the changes lands.
259
260         Revert my changes to Settings and instead implement DOM Storage enabling via
261         the methods agreed upon in https://bugs.webkit.org/show_bug.cgi?id=30240
262
263         This stuff was (intentionally) never exposed to web pages or DRT, so there's no
264         LayoutTest visible changes and thus no tests.
265
266         * bindings/v8/custom/V8CustomBinding.h:
267         * bindings/v8/custom/V8DOMWindowCustom.cpp:
268         (WebCore::ACCESSOR_RUNTIME_ENABLER):
269         * page/DOMWindow.idl:
270         * storage/Storage.cpp:
271         (WebCore::Storage::setLocalStorageAvailable):
272         (WebCore::Storage::localStorageAvailable):
273         (WebCore::Storage::setSessionStorageAvailable):
274         (WebCore::Storage::sessionStorageAvailable):
275         * storage/Storage.h:
276
277 2009-10-20  John Gregg  <johnnyg@google.com>
278
279         Reviewed by David Levin.
280
281         Need to turn off notifications properly at runtime
282         https://bugs.webkit.org/show_bug.cgi?id=30409
283
284         This code only affects chromium, and is all behind a compile time
285         flag current turned off, so no new tests.
286
287         * bindings/v8/custom/V8CustomBinding.h:
288         * bindings/v8/custom/V8DOMWindowCustom.cpp:
289         (WebCore::ACCESSOR_RUNTIME_ENABLER):
290         * bindings/v8/custom/V8WorkerContextCustom.cpp:
291         (WebCore::ACCESSOR_RUNTIME_ENABLER):
292         * notifications/NotificationCenter.cpp:
293         (WebCore::NotificationCenter::setIsAvailable):
294         (WebCore::NotificationCenter::isAvailable):
295         * notifications/NotificationCenter.h:
296         * page/DOMWindow.idl:
297         * workers/WorkerContext.idl:
298
299 2009-10-20  James Robinson  <jamesr@chromium.org>
300
301         Reviewed by Adam Barth.
302
303         Fixes RefPtr initialization in the V8 implementation of WebCore::ScriptString to use the ::create() idiom and
304         use adoptRef() properly.  I failed to read the RefPtr docs the first time through :(
305
306         No new tests, error was caught by valgrind on the Chromium builders.
307
308         * bindings/v8/ScriptString.h:
309         (WebCore::ScriptString::ScriptString):
310         (WebCore::ScriptString::operator=):
311         * bindings/v8/ScriptStringImpl.h:
312         (WebCore::ScriptStringImpl::create):
313
314 2009-10-20  Mikhail Naganov  <mnaganov@chromium.org>
315
316         Reviewed by Pavel Feldman.
317
318         Web Inspector: populate child nodes before sorting them.
319
320         https://bugs.webkit.org/show_bug.cgi?id=29673
321
322         * inspector/front-end/BottomUpProfileDataGridTree.js:
323         (WebInspector.BottomUpProfileDataGridNode): Swapped with BottomUpProfileDataGridTree to be consistent with TopDownProfileDataGridNode.
324         (WebInspector.BottomUpProfileDataGridNode.prototype._takePropertiesFromProfileDataGridNode):
325         (WebInspector.BottomUpProfileDataGridNode.prototype._keepOnlyChild):
326         (WebInspector.BottomUpProfileDataGridNode.prototype._exclude):
327         (WebInspector.BottomUpProfileDataGridNode.prototype._merge):
328         (WebInspector.BottomUpProfileDataGridNode.prototype._sharedPopulate):
329         (WebInspector.BottomUpProfileDataGridTree.prototype.exclude):
330         * inspector/front-end/ProfileDataGridTree.js:
331         (WebInspector.ProfileDataGridNode.prototype.sort): Added missing parentheses.
332         (WebInspector.ProfileDataGridNode.prototype.get _parent):
333         (WebInspector.ProfileDataGridNode.prototype._populate):
334         * inspector/front-end/TopDownProfileDataGridTree.js:
335         (WebInspector.TopDownProfileDataGridNode.prototype._sharedPopulate):
336
337 2009-10-20  Jens Alfke  <snej@chromium.org>
338
339         Reviewed by Eric Seidel.
340
341         Remove redundant String ref/deref calls in generated V8 bindings.
342         https://bugs.webkit.org/show_bug.cgi?id=30579
343
344         * bindings/v8/V8Binding.h:
345         (WebCore::toString): Fix return type of 'toString' to make it truly a no-op
346             instead of constructing/destructing a String.
347
348 2009-10-20  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
349
350         Reviewed by Xan Lopez.
351
352         https://bugs.webkit.org/show_bug.cgi?id=25411
353         [GTK] ATK accessible ancestry broken
354
355         Work around for the problem of bogus additional objects in the ancestry.
356         We now set the parent when we ref the child, then ask the Atk child if
357         it knows its parent. This solves the bulk of the cases. For those it
358         doesn't, fall back to the existing logic.
359
360         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
361         (webkit_accessible_get_parent):
362         (webkit_accessible_ref_child):
363
364 2009-10-20  Brian Weinstein  <bweinstein@apple.com>
365
366         Reviewed by Alice Liu.
367
368         Fixes <http://webkit.org/b/30421>.
369         Web Inpsector: Local Files can show up on Cookies List with Cookies from other Domain.
370
371         When a page like Google generates an about:blank, it shows up as a local file on
372         the list of Cookie domains, but has all of the cookies of Google. When we are adding
373         cookie domains to the inspector, we should only add the domain is the URL of the resource
374         is in the HTTP protocol family or a file URL.
375
376         * inspector/InspectorController.cpp:
377         (WebCore::InspectorController::populateScriptObjects):
378         (WebCore::InspectorController::didFinishLoading):
379
380 2009-10-20  Mark Mentovai  <mark@chromium.org>
381
382         Reviewed by Darin Fisher.
383
384         Use a version of libWebKitSystemInterface with global symbols marked
385         private_extern for Chromium Mac.
386
387         https://bugs.webkit.org/show_bug.cgi?id=30590
388
389         * WebCore.gyp/WebCore.gyp:
390         * WebCore.gyp/mac: Added.
391         * WebCore.gyp/mac/Empty.cpp: Added.
392         * WebCore.gyp/mac/adjust_visibility.sh: Added.
393
394 2009-10-20  Zoltan Horvath  <zoltan@webkit.org>
395
396         Reviewed by Eric Seidel.
397
398         Allow custom memory allocation control for WebCore's CSSProperty
399         https://bugs.webkit.org/show_bug.cgi?id=30564
400
401         Inherits CSSProperty class from FastAllocBase because it has been
402         instantiated by 'new' in WebCore/css/CSSParser.cpp:367.
403
404         * css/CSSProperty.h:
405
406 2009-10-20  Andrew Scherkus  <scherkus@chromium.org>
407
408         Reviewed by Eric Seidel.
409
410         Hide Chromium's media slider thumb if no source has been loaded.
411
412         https://bugs.webkit.org/show_bug.cgi?id=30529
413
414         Covered by existing layout tests, notably:
415             LayoutTests/media/controls-rendering.html
416             LayoutTests/media/unsupported-tracks.html
417             LayoutTests/media/video-src-none.html
418
419         * rendering/RenderMediaControlsChromium.cpp:
420         (WebCore::hasSource): Returns true if an HTMLMediaElement has a valid source set.
421         (WebCore::paintMediaMuteButton): Refactored to use hasSource().
422         (WebCore::paintMediaPlayButton): Ditto.
423         (WebCore::paintMediaSliderThumb): Add call to hasSource() to determine if we should paint the thumb.
424
425 2009-10-20  Nate Chapin  <japhet@chromium.org>
426
427         Reviewed by Adam Barth.
428
429         Added getter for FrameLoader:m_suppressOpenerInNewFrame.
430         This will allow Chromium to more intelligently detect
431         noreferrer links and therefore open them in a new process.
432
433         https://bugs.webkit.org/show_bug.cgi?id=30581
434
435         * loader/FrameLoader.h:
436         (WebCore::FrameLoader::suppressOpenerInNewFrame): Added.
437
438 2009-10-20  Zoltan Horvath  <zoltan@webkit.org>
439
440         Reviewed by Darin Adler.
441
442         Allow custom memory allocation control for WebCore's CSSParserFunction
443         https://bugs.webkit.org/show_bug.cgi?id=30563
444
445         Inherits CSSParserFunction struct from FastAllocBase because it has been
446         instantiated by 'new' in WebCore/css/CSSParser.cpp:4827.
447
448         * css/CSSProperty.h:
449
450 2009-10-20  Joseph Pecoraro  <joepeck@webkit.org>
451
452         Reviewed by Timothy Hatcher.
453
454         Web Inspector: Watched Expressions Buttons Do Not Match Inspector Styles
455         https://bugs.webkit.org/show_bug.cgi?id=30554
456
457         * inspector/front-end/inspector.css: added style to pane buttons
458
459 2009-10-20  Yury Semikhatsky  <yurys@chromium.org>
460
461         Reviewed by Pavel Feldman.
462
463         Set debug id for contexts of isolated worlds to distinguish them in debugger.
464
465         https://bugs.webkit.org/show_bug.cgi?id=30559
466
467         * bindings/v8/V8Proxy.cpp:
468         (WebCore::V8Proxy::evaluateInIsolatedWorld):
469         (WebCore::V8Proxy::evaluateInNewContext):
470         (WebCore::V8Proxy::setInjectedScriptContextDebugId):
471         * bindings/v8/V8Proxy.h:
472
473 2009-10-20  Andras Becsi  <becsi.andras@stud.u-szeged.hu>
474
475         Unreviewed buildfix.
476         [Qt] Add FEGaussianBlur.h and FEGaussianBlur.cpp which were refactored in r49778 to WebCore.pro.
477
478         * WebCore.pro:
479
480 2009-10-20  Fumitoshi Ukai  <ukai@chromium.org>
481
482         Reviewed by David Levin.
483
484         Set EnabledAtRuntime for WebSocket in DOMWindow
485         https://bugs.webkit.org/show_bug.cgi?id=29896
486
487         Supported by chromium/v8 only.
488         Add WebSocket::isAvailable()/setIsAvailable(bool) to control v8
489         bindings.
490         Remove Settings::experimentalWebSocketsEnabled() and
491         setExperimentalWebSocketsEnabled(bool).
492
493         * WebCore.base.exp:
494         * bindings/js/JSDOMWindowCustom.cpp:
495         (WebCore::JSDOMWindow::webSocket):
496         * bindings/v8/V8DOMWrapper.cpp:
497         (WebCore::V8DOMWrapper::getConstructor):
498         * bindings/v8/custom/V8CustomBinding.h:
499         * bindings/v8/custom/V8DOMWindowCustom.cpp:
500         (WebCore::ACCESSOR_RUNTIME_ENABLER):
501         * page/DOMWindow.idl:
502         * page/Settings.cpp:
503         (WebCore::Settings::Settings):
504         * page/Settings.h:
505         * websockets/WebSocket.cpp:
506         (WebCore::WebSocket::setIsAvailable):
507         (WebCore::WebSocket::isAvailable):
508         * websockets/WebSocket.h:
509
510 2009-10-19  Oliver Hunt  <oliver@apple.com>
511
512         Reviewed by Sam Weinig.
513
514         REGRESSION: Dromaeo DOM test is 14% slower
515         https://bugs.webkit.org/show_bug.cgi?id=30273
516
517         Whoops, make prototype bindings actually use the StructureFlags.
518
519         * bindings/scripts/CodeGeneratorJS.pm:
520
521 2009-10-19  James Robinson  <jamesr@chromium.org>
522
523         Reviewed by Adam Barth.
524
525         Better implementation of WebCore::ScriptString for the V8 bindings.
526
527         https://bugs.webkit.org/show_bug.cgi?id=29909
528
529         WebCore::ScriptString is used for XMLHttpRequest's responseText attribute which is
530         shared with JavaScript.  Thus, simply using a WebCore::String and copying the value
531         is pretty inefficient, especially since responseText is built up with a sequence of
532         operator+= calls.  JSC builds use a JSC::UString to share the buffer when possible,
533         this patch adopts a similar approach for V8.
534
535         No new tests, behavior is unchanged and covered by LayoutTests/http/tests/xmlhttprequest
536
537         * WebCore.gypi:
538         * bindings/v8/ScriptString.h:
539         (WebCore::ScriptString::ScriptString):
540         (WebCore::ScriptString::operator String):
541         (WebCore::ScriptString::isNull):
542         (WebCore::ScriptString::size):
543         (WebCore::ScriptString::operator=):
544         (WebCore::ScriptString::operator+=):
545         (WebCore::ScriptString::v8StringOrNull):
546         * bindings/v8/ScriptStringImpl.cpp: Added.
547         (WebCore::ScriptStringImpl::ScriptStringImpl):
548         (WebCore::ScriptStringImpl::~ScriptStringImpl):
549         (WebCore::ScriptStringImpl::toString):
550         (WebCore::ScriptStringImpl::isNull):
551         (WebCore::ScriptStringImpl::size):
552         (WebCore::ScriptStringImpl::append):
553         * bindings/v8/ScriptStringImpl.h: Added.
554         (WebCore::ScriptStringImpl::ScriptStringImpl):
555         (WebCore::ScriptStringImpl::v8StringHandle):
556         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
557         (WebCore::ACCESSOR_GETTER):
558
559 2009-10-19  Adam Barth  <abarth@webkit.org>
560
561         No review, rolling out r49837.
562         http://trac.webkit.org/changeset/49837
563
564         * page/Settings.cpp:
565         (WebCore::Settings::setStandardFontFamily):
566         (WebCore::Settings::setFixedFontFamily):
567         (WebCore::Settings::setSerifFontFamily):
568         (WebCore::Settings::setSansSerifFontFamily):
569         (WebCore::Settings::setCursiveFontFamily):
570         (WebCore::Settings::setFantasyFontFamily):
571         * page/Settings.h:
572         (WebCore::Settings::standardFontFamily):
573         (WebCore::Settings::fixedFontFamily):
574         (WebCore::Settings::serifFontFamily):
575         (WebCore::Settings::sansSerifFontFamily):
576         (WebCore::Settings::cursiveFontFamily):
577         (WebCore::Settings::fantasyFontFamily):
578         * platform/text/UScriptCode.h: Removed.
579
580 2009-10-19  Kwang Yul Seo  <skyul@company100.net>
581
582         Reviewed by Eric Seidel.
583
584         Check COMPILER(MSVC) instead of PLATFORM(WIN_OS) to avoid the use of vasprintf.
585         https://bugs.webkit.org/show_bug.cgi?id=30473
586
587         vasprintf is missing in MSVC. Use COMPILER(MSVC) guards instead of
588         PLALTFORM(WIN_OS) guards.
589
590         * dom/XMLTokenizerLibxml2.cpp:
591         (WebCore::XMLTokenizer::error):
592
593 2009-10-19  Jungshik Shin  <jshin@chromium.org>
594
595         Reviewed by Eric Seidel.
596
597         https://bugs.webkit.org/show_bug.cgi?id=20797
598
599         Make generic font family getters/setters accept an additional
600         argument (script code). It has a default value so that if an embedder
601         does not have/want a per-script font family setting, call-sites
602         don't have to be changed.
603         This is to prepare for fixing bug 10874 (font selection is not
604         language-dependent) and bug 18085.
605
606         There should be no change in layout and no new layout test
607         is added.
608
609         * WebCore.base.exp:
610         * page/Settings.cpp:
611         * page/Settings.h:
612         * platform/text/UScriptCode.h: Added. This is for ports that
613           do not use ICU. the part of ICU's common/unicode/uscript.h
614           that defines script code enum was copied. To keep enums compatible
615           with those in ICU, we don't generate the list out of Scripts.txt
616           of the Unicode Data base or CLDR's data.
617
618 2009-10-19  Evan Stade  <estade@chromium.org>
619
620         Reviewed by Darin Adler.
621
622         Clarify usage of SuddenTermination API. No code change.
623
624         * platform/SuddenTermination.h:
625
626 2009-10-19  Oliver Hunt  <oliver@apple.com>
627
628         Reviewed by Gavin Barraclough.
629
630         REGRESSION: Dromaeo DOM test is 14% slower
631         https://bugs.webkit.org/show_bug.cgi?id=30273
632
633         Make DOM bindings automatically inherit correct structure
634         flags rather than being needlessly conservative.  This is
635         done by making the bindings generator use the same model
636         for TypeInfo flags that we now use in JSC.
637
638         This gains us about 1% of this regression back.
639
640         * bindings/js/JSDOMBinding.h:
641         (WebCore::DOMObjectWithGlobalPointer::createStructure):
642         (WebCore::DOMConstructorObject::createStructure):
643         * bindings/js/JSDOMWindowShell.h:
644         (WebCore::JSDOMWindowShell::createStructure):
645         * bindings/js/JSHTMLAllCollection.h:
646         (WebCore::JSHTMLAllCollection::createStructure):
647         * bindings/js/JSQuarantinedObjectWrapper.h:
648         (WebCore::JSQuarantinedObjectWrapper::createStructure):
649         * bindings/scripts/CodeGeneratorJS.pm:
650         * bridge/objc/objc_runtime.h:
651         (JSC::Bindings::ObjcFallbackObjectImp::createStructure):
652         * bridge/runtime_array.h:
653         (JSC::RuntimeArray::createStructure):
654         * bridge/runtime_method.h:
655         (JSC::RuntimeMethod::createStructure):
656         * bridge/runtime_object.h:
657         (JSC::RuntimeObjectImp::createStructure):
658
659 2009-10-19  Robin Qiu  <robin.qiu@torchmobile.com.cn>
660
661         Reviewed by Nikolas Zimmermann.
662
663         Fixed a bug on nested SVG <use> elements.
664         https://bugs.webkit.org/show_bug.cgi?id=26117
665         When a <use> element refer to another <use> element which has
666         child/children, the instance tree built for this <use> element
667         is incorrect (more nodes than expected).
668
669         Test: svg/dom/use-on-use-with-child.svg
670
671         * svg/SVGUseElement.cpp:
672         (WebCore::SVGUseElement::buildInstanceTree):
673
674 2009-10-19  Oliver Hunt  <oliver@apple.com>
675
676         Small changes to fully invalidate and update the JavaScriptCallFrame.
677
678         <rdar://problem/7020755> JSDebugger crashes after reloading from a breakpoint
679         https://bugs.webkit.org/show_bug.cgi?id=27146
680
681         Reviewed by Timothy Hatcher.
682
683         * inspector/JavaScriptCallFrame.h:
684         (WebCore::JavaScriptCallFrame::invalidate):
685         (WebCore::JavaScriptCallFrame::update):
686
687 2009-10-19  Jeremy Orlow  <jorlow@chromium.org>
688
689         Reviewed by Dmitri Titov.
690
691         Remove "source" from storage events
692         https://bugs.webkit.org/show_bug.cgi?id=30536
693
694         Remove "source" from storage events per
695         http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2009-October/023703.html
696
697         This was removed because it makes it introduces synchronous access that can
698         cross the event loop boundry (since a storage event can fire from one process
699         and be handled in another).
700
701         * inspector/InspectorDOMStorageResource.cpp:
702         (WebCore::InspectorDOMStorageResource::handleEvent):
703         * storage/StorageEvent.cpp:
704         (WebCore::StorageEvent::create):
705         (WebCore::StorageEvent::StorageEvent):
706         (WebCore::StorageEvent::initStorageEvent):
707         * storage/StorageEvent.h:
708         (WebCore::StorageEvent::uri):
709         * storage/StorageEvent.idl:
710         * storage/StorageEventDispatcher.cpp:
711         (WebCore::StorageEventDispatcher::dispatch):
712
713 2009-10-19  Adam Barth  <abarth@webkit.org>
714
715         Reviewed by Eric Seidel.
716
717         Remove ResourceLoadNotifier::activeDocumentLoader
718         https://bugs.webkit.org/show_bug.cgi?id=30533
719
720         Removing this method from ResourceLoadNotifier better decouples the
721         notifier from FrameLoader.
722
723         * loader/FrameLoader.cpp:
724         (WebCore::FrameLoader::continueLoadAfterWillSubmitForm):
725         (WebCore::FrameLoader::requestFromDelegate):
726         * loader/ResourceLoadNotifier.cpp:
727         (WebCore::ResourceLoadNotifier::didReceiveResponse):
728         * loader/ResourceLoadNotifier.h:
729         * loader/ResourceLoader.cpp:
730         (WebCore::ResourceLoader::willSendRequest):
731
732 2009-10-19  Adam Barth  <abarth@webkit.org>
733
734         Reviewed by Eric Seidel.
735
736         Move sendRemainingDelegateMessages to ResourceLoadNotifier
737         https://bugs.webkit.org/show_bug.cgi?id=30531
738
739         This method is about notifying folks and doesn't interact with the rest
740         of FrameLoader.
741
742         * loader/FrameLoader.cpp:
743         (WebCore::FrameLoader::willLoadMediaElementURL):
744         (WebCore::FrameLoader::commitProvisionalLoad):
745         (WebCore::FrameLoader::loadResourceSynchronously):
746         (WebCore::FrameLoader::loadedResourceFromMemoryCache):
747         * loader/FrameLoader.h:
748         * loader/ResourceLoadNotifier.cpp:
749         (WebCore::ResourceLoadNotifier::sendRemainingDelegateMessages):
750         * loader/ResourceLoadNotifier.h:
751
752 2009-10-19  Adam Barth  <abarth@webkit.org>
753
754         Reviewed by Eric Seidel.
755
756         Bypass popup blocker using click event
757         https://bugs.webkit.org/show_bug.cgi?id=21501
758
759         Keep track of which events were generated by JavaScript and use that
760         inforation when figuring out if we're processing a user gesture.
761
762         Test: http/tests/security/popup-blocked-from-fake-event.html
763
764         * bindings/js/ScriptController.cpp:
765         (WebCore::ScriptController::processingUserGestureEvent):
766         * bindings/v8/ScriptController.cpp:
767         (WebCore::ScriptController::processingUserGesture):
768         * dom/Document.cpp:
769         (WebCore::Document::createEvent):
770         * dom/Event.cpp:
771         (WebCore::Event::Event):
772         * dom/Event.h:
773         (WebCore::Event::createdByDOM):
774         (WebCore::Event::setCreatedByDOM):
775
776 2009-10-19  Dumitru Daniliuc  <dumi@chromium.org>
777
778         Reviewed by Darin Adler.
779
780         Fixing a typo.
781
782         https://bugs.webkit.org/show_bug.cgi?id=30543
783
784         * platform/sql/SQLiteDatabase.h:
785
786 2009-10-19  Dmitry Titov  <dimich@chromium.org>
787
788         Reviewed by Darin Adler.
789
790         Manual Test for crash caused by JS accessing DOMWindow which is disconnected from the Frame.
791         https://bugs.webkit.org/show_bug.cgi?id=30544
792
793         * manual-tests/crash-on-accessing-domwindow-without-frame.html: Added.
794
795 2009-10-19  Simon Fraser  <simon.fraser@apple.com>
796
797         Reviewed by Darin Adler.
798
799         Flash at end of opacity/transform transition sometimes
800         https://bugs.webkit.org/show_bug.cgi?id=30501
801         
802         When a transition finishes, there window of time between when the animation is
803         removed, and the final style set on the GraphicsLayer. This caused the layer to revert
804         to its old appearance for one or two frames. To avoid this, we set the final
805         transform or opacity at the start of the transition; we know that the animation
806         will override the final value for as long as its running.
807         
808         No test because this is a very transient effect that can't be captured
809         in a test.
810
811         * rendering/RenderLayerBacking.cpp:
812         (WebCore::RenderLayerBacking::createGraphicsLayer):
813         (WebCore::RenderLayerBacking::updateLayerOpacity):
814         (WebCore::RenderLayerBacking::updateLayerTransform):
815         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
816         (WebCore::RenderLayerBacking::startTransition):
817         * rendering/RenderLayerBacking.h:
818
819 2009-10-19  Pavel Feldman  <pfeldman@chromium.org>
820
821         Reviewed by Timothy Hatcher.
822
823         Web Inspector: Add more stop characters into console completions.
824
825         https://bugs.webkit.org/show_bug.cgi?id=30477
826
827         * inspector/front-end/ConsoleView.js:
828         (WebInspector.ConsoleView.prototype.completions):
829         (WebInspector.ConsoleView.prototype._reportCompletions):
830
831 2009-10-19  Marshall Culpepper  <mculpepper@appcelerator.com>
832
833         Reviewed by Adam Roben.
834
835         implemented ClipboardWin::files()
836         https://bugs.webkit.org/show_bug.cgi?id=29666
837
838         * platform/win/ClipboardWin.cpp:
839         (WebCore::ClipboardWin::files):
840
841 2009-10-19  Nate Chapin  <japhet@chromium.org>
842
843         Reviewed by Alexey Proskuryakov.
844
845         Add support for link relations in HTMLAnchorElement and implement rel="noreferrer".
846
847         https://bugs.webkit.org/show_bug.cgi?id=28986
848
849         Tests: http/tests/navigation/no-referrer-reset.html
850                http/tests/navigation/no-referrer-same-window.html
851                http/tests/navigation/no-referrer-subframe.html
852                http/tests/navigation/no-referrer-target-blank.html
853
854         * WebCore.base.exp: Update FrameLoader::loadFrameRequest export symbol
855         * html/HTMLAnchorElement.cpp: Add support for link relations and implement noreferrer
856         (WebCore::HTMLAnchorElement::HTMLAnchorElement):
857         (WebCore::HTMLAnchorElement::defaultEventHandler):
858         (WebCore::HTMLAnchorElement::parseMappedAttribute):
859         (WebCore::HTMLAnchorElement::hasRel):
860         (WebCore::HTMLAnchorElement::setRel):
861         * html/HTMLAnchorElement.h: Add support for link relations and implement noreferrer
862         * loader/FrameLoader.cpp:
863         (WebCore::FrameLoader::FrameLoader):
864         (WebCore::FrameLoader::createWindow):
865         (WebCore::FrameLoader::changeLocation):
866         (WebCore::FrameLoader::urlSelected): Add parameter for referrer policy
867         (WebCore::FrameLoader::loadFrameRequest): Add parameter for referrer policy
868         (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy): Suppress opener if requested by ReferrerPolicy
869         * loader/FrameLoader.h: Update urlSelected and loadFrameRequest prototypes
870         * loader/FrameLoaderTypes.h: Add enum for referrer policy
871         * loader/RedirectScheduler.cpp:
872         (WebCore::RedirectScheduler::timerFired):
873         * page/ContextMenuController.cpp:
874         (WebCore::ContextMenuController::contextMenuItemSelected): Update call to urlSelected()
875         * svg/SVGAElement.cpp:
876         (WebCore::SVGAElement::defaultEventHandler): Update call to urlSelected()
877
878
879 2009-10-19  Alpha Lam  <hclam@chromium.org>
880
881         Reviewed by Dimitri Glazkov (dglazkov@chromium.org).
882
883         [v8] typeof(HTMLMediaElement) should return undefined if media
884         engine is not available
885         https://bugs.webkit.org/show_bug.cgi?id=30343
886
887         Check for availability of the media engine to disable
888         HTMLMediaElement, HTMLAudioElement, HTMLVideoElement, MediaError
889         in runtime.
890
891         Try runs and review in Chromium:
892         http://codereview.chromium.org/276011
893
894         Test: manual-tests/chromium/media-player-not-available.html
895
896         The above test can work work in Chromium. Testing procedures:
897         1. Remove all media support libraries in Chromium (e.g. ffmpeg libraries)
898         2. Open Chromium with above test page
899         3. Verify the test results according to the test page
900
901         * bindings/v8/custom/V8CustomBinding.h:
902         Declare enabler methods.
903         * bindings/v8/custom/V8DOMWindowCustom.cpp:
904         Report enabled only if media player is available.
905         * manual-tests/chromium/media-player-not-available.html: Added.
906         Manual test, following instruction in this test for procedures.
907         * page/DOMWindow.idl:
908         Mark HTMLMediaElement, HTMLAudioElement, HTMLVideElement, MediaError
909         as enabled at runtime.
910
911 2009-10-19  Kenneth Rohde Christiansen  <kenneth@webkit.org>
912
913         Reviewed by David Hyatt.
914
915         Refactor out some of the code in paint() into paintPanScrollIcon()
916         and paintScrollbars() in preparation of some Qt API changes.
917
918         * platform/ScrollView.cpp:
919         (WebCore::ScrollView::paint):
920         * platform/ScrollView.h:
921
922 2009-10-19  Kenneth Rohde Christiansen  <kenneth@webkit.org>
923
924         Reviewed by Adam Roben.
925
926         Make the local static panScrollIcon into a Image* instead
927         of a RefPtr<Image>.
928
929         * platform/ScrollView.cpp:
930         (WebCore::ScrollView::wheelEvent):
931
932 2009-10-19  Andrew Scherkus  <scherkus@chromium.org>
933
934         Reviewed by David Levin.
935
936         Forcefully set antialiasing for Chromium media controls.
937
938         https://bugs.webkit.org/show_bug.cgi?id=30521
939
940         Before it was nondeterministiacally being enabled based on the previous state of GraphicsContext.
941
942         Covered by existing layout tests.
943
944         * rendering/RenderMediaControlsChromium.cpp:
945         (WebCore::paintMediaSlider): Added setShouldAntialias(true).
946
947 2009-10-19  Jens Alfke  <jens@mooseyard.com>
948
949         Reviewed by Darin Adler.
950
951         Optimize string upper/lowercasing
952         https://bugs.webkit.org/show_bug.cgi?id=30261
953         
954         - Added AtomicString::upper() and lower()
955         - Further optimized StringImpl::lower()
956         - Removed StringImpl::isLower()
957         - Added QualifiedName::localNameUpper(), which is cached, thereby saving
958           thousands of upper() calls and string allocations.
959  
960          * dom/Element.cpp:
961          (WebCore::Element::setAttribute): Call AtomicString::lower()
962          * dom/QualifiedName.cpp:
963          (WebCore::QualifiedName::localNameUpper): New method
964          * dom/QualifiedName.h: Added localNameUpper() method
965          * dom/StyledElement.cpp:
966          (WebCore::StyledElement::parseMappedAttribute):  Call AtomicString::lower()
967          * html/HTMLDocument.cpp:
968          (WebCore::HTMLDocument::createElement): Call AtomicString::lower()
969          * html/HTMLElement.cpp:
970          (WebCore::HTMLElement::nodeName): Call localNameUpper()
971          * platform/text/AtomicString.cpp:
972          (WebCore::AtomicString::lower): New method
973          (WebCore::AtomicString::upper): New method
974          * platform/text/AtomicString.h: Added lower() and upper()
975          * platform/text/StringImpl.cpp: Removed isLower()
976          (WebCore::StringImpl::lower): Further optimization of initial loop
977          * platform/text/StringImpl.h: Removed isLower()
978  
979 2009-10-19  Nate Chapin  <japhet@chromium.org>
980
981         Reviewed by Adam Barth.
982
983         If a call to a plugin's invokeMethod, invokeDefault or construct
984         returns false, throw an exception into JS.        
985
986         https://bugs.webkit.org/show_bug.cgi?id=30239
987
988         Test: plugins/netscape-invoke-failure.html
989
990         * bindings/v8/V8NPObject.cpp: Check return values of invokeMethod, invokeDefault and construct.
991         (npObjectInvokeImpl):
992         * bridge/c/c_instance.cpp:
993         (JSC::Bindings::CInstance::invokeMethod): Check return value
994         (JSC::Bindings::CInstance::invokeDefaultMethod): Check return value
995         (JSC::Bindings::CInstance::invokeConstruct): Check return value
996
997 2009-10-16  Stephen White  <senorblanco@chromium.org>
998
999         Reviewed by Adam Barth.
1000
1001         Fix for chromium/skia canvas arc start/end positions, when the arc is
1002         >= 360 degrees.
1003         https://bugs.webkit.org/show_bug.cgi?id=30449
1004
1005         Covered by new test:
1006         LayoutTests/fast/canvas/arc360.html
1007
1008         * platform/graphics/skia/PathSkia.cpp:
1009         (WebCore::Path::addArc):
1010
1011 2009-10-19  Kent Tamura  <tkent@chromium.org>
1012
1013         Reviewed by Alexey Proskuryakov.
1014
1015         Fix uninitialized variable reference in Element::removeAttribute().
1016         https://bugs.webkit.org/show_bug.cgi?id=30502
1017
1018         * dom/Element.cpp:
1019         (WebCore::Element::removeAttribute):
1020
1021 2009-10-19  Eric Carlson  <eric.carlson@apple.com>
1022
1023         Reviewed by Simon Fraser.
1024
1025         https://bugs.webkit.org/show_bug.cgi?id=30463
1026         Remove HTML5 media element 'loadend' event
1027
1028         * dom/EventNames.h:
1029         * html/HTMLMediaElement.cpp:
1030         (WebCore::HTMLMediaElement::parseMappedAttribute): Remove 'loadend'.
1031         (WebCore::HTMLMediaElement::loadInternal): Ditto.
1032         (WebCore::HTMLMediaElement::noneSupported): Ditto.
1033         (WebCore::HTMLMediaElement::mediaEngineError): Ditto.
1034         (WebCore::HTMLMediaElement::setNetworkState): Ditto.
1035         (WebCore::HTMLMediaElement::userCancelledLoad): Ditto.
1036
1037 2009-10-19  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
1038
1039         Reviewed by Adam Barth.
1040
1041         [Qt] Remove deletion of outgoing FormData object when reply is finished.
1042         The buffers will be destroyed a bit later, when the QNetworkReply is deleted.
1043         Bug: https://bugs.webkit.org/show_bug.cgi?id=29551
1044
1045         * platform/network/qt/QNetworkReplyHandler.cpp:
1046         * platform/network/qt/QNetworkReplyHandler.h:
1047
1048 2009-10-19  Dimitri Glazkov  <dglazkov@chromium.org>
1049
1050         Reviewed by Darin Adler.
1051
1052         Fix hard-to-reproduce crash in HTMLTokenizer by avoiding a rare
1053         fastRealloc edge case.
1054         https://bugs.webkit.org/show_bug.cgi?id=29313
1055
1056         No test, the crash shows up occasionally in crash dumps, we weren't able
1057         to reproduce it locally.
1058
1059         * html/HTMLTokenizer.cpp:
1060         (WebCore::HTMLTokenizer::enlargeScriptBuffer): Added an early exit to
1061             avoid calling fastRealloc with the size of 0.
1062
1063 2009-10-19  Andrew Scherkus  <scherkus@chromium.org>
1064
1065         Reviewed by Eric Seidel.
1066
1067         Use fillRect() instead of drawRect() to fix Chromium media controls rendering.
1068
1069         https://bugs.webkit.org/show_bug.cgi?id=30371
1070
1071         Chromium Mac layout tests will need to be rebaselined.  Existing layout tests for Linux/Win still pass.
1072
1073         * rendering/RenderMediaControlsChromium.cpp:
1074         (WebCore::paintMediaSlider): Use fillRect() instead of drawRect().
1075
1076 2009-10-19  Dmitry Titov  <dimich@chromium.org>
1077
1078         Reviewed by Adam Barth.
1079
1080         Crash in DOMWindow::clearTimeout etc when DOMWindow is not connected to a frame.
1081         https://bugs.webkit.org/show_bug.cgi?id=29832
1082
1083         Need to make sure the script caches are reset when frame gets disconnected from still-alive DOMWindow.
1084         This will prevent JS from calling DOMWindow methods that can not be completed w/o the frame.
1085
1086         I am not sure it's possible to test this since the only file that repros the problem need ~10 seconds to cause crash.
1087
1088         * page/Frame.cpp:
1089         (WebCore::Frame::~Frame): Right after frame disconnects from DOMWindow, clear WindowShell.
1090
1091 2009-10-19  Csaba Osztrogonác  <ossy@webkit.org>
1092
1093         Unreviewed build warning fix.
1094         [Qt] Apply changes to WebCore.pro introduced in r49778
1095
1096         * WebCore.pro: Removed svg/graphics/filters/SVGFEGaussianBlur.h from HEADERS
1097
1098 2009-10-19  Dirk Schulze  <krit@webkit.org>
1099
1100         Reviewed by Darin Adler.
1101
1102         Move feGaussianBlur from WebCore/svg to WebCore/platform
1103         [https://bugs.webkit.org/show_bug.cgi?id=30495]
1104
1105         This patch moves SVGFRGaussianBlur from svg/graphics/filters
1106         to platform/graphics/filters/FEGaussianBlur. This is needed
1107         for shadow support on Qt and Cairo.
1108         No change in functionality, therfore no new test case needed.
1109
1110         * GNUmakefile.am:
1111         * WebCore.gypi:
1112         * WebCore.pro:
1113         * WebCore.vcproj/WebCore.vcproj:
1114         * WebCore.xcodeproj/project.pbxproj:
1115         * platform/graphics/filters/FEGaussianBlur.cpp: Added.
1116         * platform/graphics/filters/FEGaussianBlur.h: Added.
1117         * svg/SVGFEGaussianBlurElement.h:
1118         * svg/graphics/filters/SVGFEGaussianBlur.cpp: Removed.
1119         * svg/graphics/filters/SVGFEGaussianBlur.h: Removed.
1120
1121 2009-10-19  Yael Aharon  <yael.aharon@nokia.com>
1122
1123         Unreviewed.
1124
1125         Added reviewer name to r49574.
1126
1127 2009-10-19  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
1128
1129         Reviewed by Xan Lopez.
1130
1131         https://bugs.webkit.org/show_bug.cgi?id=30489
1132         [Gtk] The document frame/html container claims to be parentless
1133
1134         Work around for the parentless claim made by the accessible associated
1135         with the embedded WebView. When we identify this condition, get the
1136         widget's parent, and then get the AtkObject from that. Admittedly an ugly
1137         hack, but we'll need it for Yelp and other Gtk+/GNOME applications which
1138         plan to switch over to WebKit.
1139
1140         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1141         (webkit_accessible_get_parent):
1142
1143 2009-10-19  Benjamin Otte  <otte@gnome.org>
1144
1145         Reviewed by Jan Alonzo.
1146
1147         Handle duration queries properly
1148         https://bugs.webkit.org/show_bug.cgi?id=29999
1149
1150         Previously duration queries failed to handle unknown duration
1151         and didn't treat the returned duration as an unsigned.
1152
1153         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
1154         (WebCore::MediaPlayerPrivate::duration):
1155
1156 2009-10-19  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
1157
1158         Reviewed by Tor Arne Vestbø.
1159
1160         [Qt] Fix build on Windows.
1161
1162         * plugins/win/PluginViewWin.cpp:
1163         (windowHandleForPageClient):
1164
1165 2009-10-19  Girish Ramakrishnan  <girish@forwardbias.in>
1166
1167         Reviewed by Holger Freyther.
1168
1169         [Qt] Windowed Plugins: Don't crash when client is 0.
1170         
1171         Client is 0 when we use QWebPage without a QWebView or QGraphicsWebView.
1172         In addition, setFrameRect()/updatePluginWidget() is called even if the
1173         plugin was not succesfully loaded. updatePluginWidget() updates the
1174         window rect which is, in theory, useful to draw something that indicates
1175         that we didn't load successfully.
1176         
1177         So, a status check is added to setNPWindowIfNeeded.
1178
1179         https://bugs.webkit.org/show_bug.cgi?id=30380
1180
1181         * plugins/qt/PluginViewQt.cpp:
1182         (WebCore::PluginView::setNPWindowIfNeeded):
1183         (WebCore::PluginView::platformStart):
1184
1185 2009-10-19  Girish Ramakrishnan  <girish@forwardbias.in>
1186
1187         Reviewed by Holger Freyther.
1188
1189         [Qt] Windowed Plugins: Fix crash when QWebPage is deleted after QWebView.
1190         
1191         Fixes various sources of crashes:
1192         1. The PluginContainer is a child of QWebView. When the view gets deleted,
1193         the PluginView is not notified about the deletion of PluginContainer.
1194         2. QWebView destructor does not set client to 0.
1195         3. Sometimes pending paint events are sent after the plugin has died, so add
1196         a check in PluginView::setNPWindowIfNeeded.
1197
1198         https://bugs.webkit.org/show_bug.cgi?id=30354
1199
1200         * plugins/qt/PluginContainerQt.cpp:
1201         (PluginContainerQt::~PluginContainerQt):
1202         * plugins/qt/PluginViewQt.cpp:
1203         (WebCore::PluginView::setNPWindowIfNeeded):
1204
1205 2009-10-19  Jakob Truelsen  <antialize@gmail.com>
1206
1207         Reviewed by Adam Barth.
1208
1209         https://bugs.webkit.org/show_bug.cgi?id=29042
1210         Allow one to customize the minimal and maximal shrink factors used when printing.
1211
1212         * page/PrintContext.cpp:
1213         (WebCore::PrintContext::begin):
1214         * page/Settings.cpp:
1215         (WebCore::Settings::Settings):
1216         (WebCore::Settings::setPrintingMinimumShrinkFactor):
1217         (WebCore::Settings::setPrintingMaximumShrinkFactor):
1218         * page/Settings.h:
1219         (WebCore::Settings::printingMinimumShrinkFactor):
1220         (WebCore::Settings::printingMaximumShrinkFactor):
1221
1222 2009-10-18  Erik Arvidsson  <arv@chromium.org>
1223
1224         Reviewed by Adam Barth.
1225
1226         Fixes issue where doubleclicking a word could select following adjacent newlines.
1227         https://bugs.webkit.org/show_bug.cgi?id=30234
1228
1229         Tests: platform/mac/editing/selection/doubleclick-should-not-expand-across-lines.html
1230                platform/mac/editing/selection/script-tests/TEMPLATE.html
1231                platform/win/editing/selection/doubleclick-should-not-expand-across-lines.html
1232                platform/win/editing/selection/script-tests/TEMPLATE.html
1233
1234         * editing/VisibleSelection.cpp:
1235         (WebCore::VisibleSelection::appendTrailingWhitespace):
1236
1237 2009-10-18  Kevin Ollivier  <kevino@theolliviers.com>
1238
1239         CURL build fix, use proper header name.
1240
1241         * platform/network/curl/ResourceHandleManager.h:
1242
1243 2009-10-18  Pavel Feldman  <pfeldman@chromium.org>
1244
1245         Reviewed by Timothy Hatcher.
1246
1247         Web Inspector: Properties on Arrays and NodeLists are not logged correctly.
1248
1249         https://bugs.webkit.org/show_bug.cgi?id=30485
1250
1251         * inspector/front-end/ConsoleView.js:
1252         (WebInspector.ConsoleView.prototype._formatarray):
1253         (WebInspector.ConsoleView.prototype._printArray):
1254
1255 2009-10-18  Pavel Feldman  <pfeldman@chromium.org>
1256
1257         Not reviewed: touching WebCore so that it
1258         initiated inspector frontend deployment on Windows.
1259
1260         Web Inspector: frontend files are not deployed in Windows
1261         incremental build.
1262
1263         * inspector/InspectorDOMAgent.cpp:
1264         (WebCore::InspectorDOMAgent::unbind):
1265
1266 2009-10-18  Pavel Feldman  <pfeldman@chromium.org>
1267
1268         Reviewed by Timothy Hatcher.
1269
1270         Web Inspector: Title of dir(["test", "test2"]) should be Array
1271
1272         https://bugs.webkit.org/show_bug.cgi?id=30486
1273
1274         Test: inspector/console-tests.html
1275
1276         * inspector/front-end/InjectedScript.js:
1277
1278 2009-10-18  Dirk Schulze  <krit@webkit.org>
1279
1280         Reviewed by Nikolas Zimmermann.
1281
1282         REGRESSION: SVG Mask doesn't work for maskContentUnits="objectBoundingBox"
1283         [https://bugs.webkit.org/show_bug.cgi?id=30480]
1284
1285         Patch for SVGMaskElement landed in r49598 should correct the location of
1286         the mask image graphics context. It only corrects the location for userSpaceOnUse
1287         mode in maskContentUnits but breaks objectBoundingBoxMode.
1288         The maskDestRect shouldn't be moved. It is not responsible for the correct context
1289         postioin but for the correct position of the mask image.
1290         This patch calculates the context postion independently from the maskDestRect.
1291         It also uses lineareRGB color space for masking on CG now. This is the default
1292         color space for masking operations.
1293         We already have tests for both maskContentUnits modes.
1294
1295             *svg/W3C-SVG-1.1/masking-intro-01-f.svg
1296             *svg/custom/mask-with-default-value.svg
1297
1298         Some tests needed new pixel tests because of the new color space.
1299
1300         * svg/SVGMaskElement.cpp:
1301         (WebCore::SVGMaskElement::drawMaskerContent):
1302
1303 2009-10-18  Anton Muhin  <antonm@chromium.org>
1304
1305         Reviewed by Adam Barth.
1306
1307         Use v8::Integer::NewFromUnsigned when converting unsigneds into V8's numbers.
1308         That is notably faster for small numbers (most common case).
1309         https://bugs.webkit.org/show_bug.cgi?id=30493
1310
1311         * bindings/scripts/CodeGeneratorV8.pm:
1312
1313 2009-10-18  Jan Michael Alonzo  <jmalonzo@webkit.org>
1314
1315         Reviewed by Holger Freyther.
1316
1317         [GTK] Add MathML to the build system
1318         https://bugs.webkit.org/show_bug.cgi?id=30487
1319
1320         Add MathML sources if MathML support is enabled.
1321
1322         * GNUmakefile.am:
1323
1324 2009-10-18  Kevin Ollivier  <kevino@theolliviers.com>
1325
1326         Non-PCH build fix. Added missing header.
1327
1328         * bridge/runtime_root.h:
1329
1330 2009-10-18  Simon Fraser  <simon.fraser@apple.com>
1331
1332         Reviewed by Dan Bernstein.
1333
1334         Compositing layers not correctly updated after partial layout
1335         https://bugs.webkit.org/show_bug.cgi?id=30425
1336         
1337         When a partial layout happened, for example as the result of a postion-change-only
1338         layout, then some compositing layer positions were not correctly updated. To fix
1339         this, updateLayerPositions() now carries along a flag that is set at the rootmost
1340         layer being updated, and used to determine when we hit the first compositing layer
1341         in this update. RenderLayerBacking::updateAfterLayout() makes use of this information
1342         to do a full geometry update on that layer, which is thus the rootmost compositing
1343         layer that is being updated.
1344
1345         Test: compositing/geometry/partial-layout-update.html
1346
1347         * page/FrameView.cpp:
1348         (WebCore::FrameView::layout):
1349         * rendering/RenderLayer.cpp:
1350         (WebCore::RenderLayer::updateLayerPositions):
1351         (WebCore::RenderLayer::scrollToOffset):
1352         * rendering/RenderLayer.h:
1353         (WebCore::RenderLayer::):
1354         * rendering/RenderLayerBacking.cpp:
1355         (WebCore::RenderLayerBacking::updateAfterLayout):
1356         * rendering/RenderLayerBacking.h:
1357
1358 2009-09-13  Kevin Watters  <kevinwatters@gmail.com>
1359
1360         Reviewed by Kevin Ollivier.
1361
1362         Add support for proxies in CURL.
1363  
1364         https://bugs.webkit.org/show_bug.cgi?id=30446
1365
1366         * platform/network/curl/ResourceHandleManager.cpp:
1367         (WebCore::ResourceHandleManager::setProxyInfo):
1368         (WebCore::ResourceHandleManager::initializeHandle):
1369         * platform/network/curl/ResourceHandleManager.h:
1370         (WebCore::ResourceHandleManager::):
1371
1372 2009-10-18  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
1373
1374         Reviewed by Xan Lopez
1375
1376         https://bugs.webkit.org/show_bug.cgi?id=25901
1377         Use ATK_ROLE_SECTION for divTag and ATK_ROLE_LABEL for labelTag
1378
1379         Replaces the use of ATK_ROLE_PANEL with the expected accessible roles.
1380
1381         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1382         (webkit_accessible_get_role):
1383
1384 2009-10-17  Nikolas Zimmermann  <nzimmermann@rim.com>
1385
1386         Reviewed by George Staikos.
1387
1388         Cleanup SVGElement code, preparing for animVal support
1389         https://bugs.webkit.org/show_bug.cgi?id=30466
1390
1391         Add new SynchronizablePropertyController and move the code for SVG property <-> XML attribute synchronization
1392         from SVGElement. This is a further preparation for animVal support, where SynchronizablePropertyController will
1393         be used to control the start/end state of an animated property.
1394
1395         We're currently tracking animated properties that need synchronization, generalize this concept and use
1396         it to track their creation (bound to certain SVG*Element classes) as well as a flag determing the need
1397         of synchronization (no SVG DOM object wrappers, no synchronization needed).
1398
1399         No change in functionality, thus no tests.
1400
1401         * GNUmakefile.am: Add 'SynchronizablePropertyController.cpp/h' to build
1402         * WebCore.gypi: Ditto.
1403         * WebCore.pro: Ditto.
1404         * WebCore.vcproj/WebCore.vcproj: Ditto.
1405         * WebCore.xcodeproj/project.pbxproj: Ditto.
1406         * svg/SVGAllInOne.cpp: Ditto.
1407         * svg/SVGAnimatedProperty.h: Add registerProperty() function 
1408         (WebCore::::SVGAnimatedProperty): Call registerProperty() function  
1409         (WebCore::::registerProperty): Add new registerProperty() function, announcing new properties to SynchronizablePropertyController.
1410         * svg/SVGAnimatedTemplate.h: Use propertyController() method, to access the new functions moved from SVGElement.
1411         (WebCore::lookupOrCreateWrapper):
1412         * svg/SVGElement.cpp: Adapt to code moving to SynchronizablePropertyController.
1413         (WebCore::SVGElement::updateAnimatedSVGAttribute):
1414         * svg/SVGElement.h: Move handling SVG property synchronization to SynchronizablePropertyController.
1415         (WebCore::SVGElement::propertyController): Expose reference to SynchronizablePropertyController object.
1416         * svg/SVGViewSpec.cpp: Reorder initialization order of contextElement, leading to possible crashes.
1417         (WebCore::SVGViewSpec::SVGViewSpec):
1418         (WebCore::SVGViewSpec::viewTarget):
1419         * svg/SVGViewSpec.h: Ditto.
1420         (WebCore::SVGViewSpec::contextElement):
1421         * svg/SynchronizablePropertyController.cpp: Added.
1422         (WebCore::SynchronizablePropertyController::SynchronizablePropertyController):
1423         (WebCore::SynchronizablePropertyController::registerProperty):
1424         (WebCore::SynchronizablePropertyController::setPropertyNeedsSynchronization):
1425         (WebCore::SynchronizablePropertyController::synchronizeProperty):
1426         (WebCore::SynchronizablePropertyController::synchronizeAllProperties):
1427         (WebCore::SynchronizablePropertyController::startAnimation):
1428         (WebCore::SynchronizablePropertyController::stopAnimation):
1429         * svg/SynchronizablePropertyController.h: Added.
1430         (WebCore::SynchronizableProperty::SynchronizableProperty):
1431         (WebCore::SynchronizableProperty::isHashTableDeletedValue):
1432         (WebCore::SynchronizableProperty::operator==):
1433         (WebCore::SynchronizablePropertyHash::hash):
1434         (WebCore::SynchronizablePropertyHash::equal):
1435         (WebCore::SynchronizablePropertyHashTraits::constructDeletedValue):
1436         (WebCore::SynchronizablePropertyHashTraits::isDeletedValue):
1437
1438 2009-10-17  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
1439
1440         Reviewed by Xan Lopez.
1441
1442         https://bugs.webkit.org/show_bug.cgi?id=25413
1443         [GTK] Please expose the level of headings
1444
1445         Exposes the heading level as an attribute of the AtkObject.
1446
1447         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1448         (addAttributeToSet):
1449         (webkit_accessible_get_attributes):
1450         (webkit_accessible_class_init):
1451
1452 2009-10-17  Kwang Yul Seo  <skyul@company100.net>
1453
1454         Reviewed by Eric Seidel.
1455
1456         EventHandler::eventLoopHandleMouseDragged needs ENABLE(DRAG_SUPPORT) guards
1457         https://bugs.webkit.org/show_bug.cgi?id=30472
1458
1459         Put ENABLE(DRAG_SUPPORT) guards around EventHandler::eventLoopHandleMouseDragged
1460         in EventHandler.cpp. MSVC fails to compile when DRAG_SUPPORT not enabled.
1461
1462         * page/EventHandler.cpp:
1463
1464 2009-10-17  Alpha Lam  <hclam@chromium.org>
1465
1466         Reviewed by Eric Seidel.
1467
1468         [chromium] Video controls not zoomed / transformed correctly
1469         https://bugs.webkit.org/show_bug.cgi?id=30461
1470
1471         Draw the images in the controls scaled.
1472
1473         No new tests. With this change Chromium will pass the following tests:
1474         LayoutTests/media/video-controls-zoomed.html
1475         LayoutTests/media/video-controls-transformed.html
1476
1477         * rendering/RenderMediaControlsChromium.cpp:
1478         (WebCore::paintMediaButton):
1479         Pass along the target rect directly.
1480         (WebCore::RenderMediaControlsChromium::adjustMediaSliderThumbSize):
1481         Adjust the thumb slide applied with the scale factor.
1482
1483 2009-10-17  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
1484
1485         Unreviewed.
1486
1487         [Gtk] Build fix for WebKitGtk after r49723.
1488
1489         Add bindings/js/JSExceptionBase.* to the build.
1490
1491         * GNUmakefile.am:
1492
1493 2009-10-17  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
1494
1495         Unreviewed.
1496
1497         [Qt] Build fix for QtWebKit after r49723.
1498
1499         Add bindings/js/JSExceptionBase.cpp to the build.
1500
1501         * WebCore.pro:
1502
1503 2009-10-16  Steve Falkenburg  <sfalken@apple.com>
1504
1505         Reviewed by Dan Bernstein.
1506
1507         https://bugs.webkit.org/show_bug.cgi?id=30456
1508         Fixes for new Debug_All Windows build configuration.
1509
1510         * platform/network/cf/ResourceRequestCFNet.cpp:
1511         (WebCore::findCFNetworkModule): Ask for the correct library instead of guessing.
1512         * platform/win/ScrollbarThemeSafari.cpp: Use new DEBUG_ALL preprocessor define for library naming.
1513         * rendering/RenderMediaControls.cpp: Use new DEBUG_ALL preprocessor define for library naming.
1514         * rendering/RenderThemeSafari.cpp: Use new DEBUG_ALL preprocessor define for library naming.
1515
1516 2009-10-16  Jon Honeycutt  <jhoneycutt@apple.com>
1517
1518         Add SPI to determine whether a plug-in has ever been halted.
1519
1520         Part of <rdar://problem/7312158>.
1521
1522         Reviewed by Dan Bernstein.
1523
1524         * plugins/PluginView.cpp:
1525         (WebCore::PluginView::PluginView):
1526         Initialize m_hasBeenHalted.
1527
1528         * plugins/PluginView.h:
1529         (WebCore::PluginView::hasBeenHalted):
1530         Return m_hasBeenHalted.
1531
1532         * plugins/win/PluginViewWin.cpp:
1533         (WebCore::PluginView::halt):
1534         Set m_hasBeenHalted.
1535
1536 2009-10-16  Adam Barth  <abarth@webkit.org>
1537
1538         Reviewed by Alexey Proskuryakov.
1539
1540         @charset rule after the first byte causes the rest of css to be ignored
1541         https://bugs.webkit.org/show_bug.cgi?id=18265
1542
1543         Apparently we're supposed to tolerate whitespace before the charset
1544         rule so folks can write code like this:
1545
1546         <style>
1547         @charset "utf-8"
1548         ...
1549         </style>
1550
1551         I'm told this is one of the top compatability problems in China.
1552         Tests: fast/css/comment-before-charset-external.html
1553                fast/css/comment-before-charset.html
1554                fast/css/many-spaces-before-charset.html
1555                fast/css/space-before-charset-external.html
1556                fast/css/space-before-charset.html
1557
1558         * css/CSSGrammar.y:
1559
1560 2009-10-16  Brian Weinstein  <bweinstein@apple.com>
1561
1562         Reviewed by Darin Adler.
1563
1564         Fixes part of <http://webkit.org/b/30412>.
1565         Web Inspector should get human readable DOM Exceptions.
1566
1567         Add a description field to ExceptionBase, and call it through 
1568         reportException which allows the user/developer to get a more detailed
1569         and coherent error explanation through the Web Inspector.
1570
1571         This only applies to exceptions that come from a script on the page when
1572         it is run. DOM Exceptions that come from the code run in the console, or DOM
1573         exceptions that are caught and logged will come in a future patch.
1574
1575         Tests: inspector/uncaught-dom1-exception.html
1576                inspector/uncaught-dom3-exception.html
1577                inspector/uncaught-dom8-exception.html
1578
1579         * WebCore.gypi:
1580         * WebCore.vcproj/WebCore.vcproj:
1581         * WebCore.xcodeproj/project.pbxproj:
1582         * bindings/js/JSDOMBinding.cpp:
1583         (WebCore::reportException):
1584         * bindings/js/JSExceptionBase.cpp: Added.
1585         (WebCore::toExceptionBase):
1586         * bindings/js/JSExceptionBase.h: Added.
1587         * dom/ExceptionBase.cpp:
1588         (WebCore::ExceptionBase::ExceptionBase):
1589         * dom/ExceptionBase.h:
1590         (WebCore::ExceptionBase::description):
1591         * dom/ExceptionCode.cpp:
1592         (WebCore::):
1593         (WebCore::getExceptionCodeDescription):
1594         * dom/ExceptionCode.h:
1595
1596 2009-10-16  Geoffrey Garen  <ggaren@apple.com>
1597
1598         Build fix: forgot to check in this #include.
1599
1600         * bridge/runtime_root.h:
1601
1602 2009-10-16  Simon Fraser  <simon.fraser@apple.com>
1603
1604         Reviewed by Dan Bernstein.
1605
1606         Transform layer gets stuck with the wrong transform after an animation ends
1607         <rdar://problem/7311662>
1608
1609         Work around a CoreAnimation bug which causes an animated transform layer to
1610         end up with a stale transform.
1611         
1612         Test: compositing/animation/state-at-end-event-transform-layer.html
1613
1614         * platform/graphics/mac/GraphicsLayerCA.mm:
1615         (WebCore::bug7311367Workaround):
1616         (WebCore::GraphicsLayerCA::removeAnimationFromLayer):
1617
1618 2009-10-16  Simon Fraser  <simon.fraser@apple.com>
1619
1620         Reviewed by Dan Bernstein.
1621
1622         After running a transition with an end event listener, can't change the transform
1623         https://bugs.webkit.org/show_bug.cgi?id=30454
1624         
1625         Fix an issue where, if a document had any listener for webkitTransitionEnd or webkitAnimationEnd,
1626         the animations would not get cleaned up correctly, which broke subsequent changes of transform.
1627         
1628         Now, we always clean up the animations right after queuing up the end events.
1629
1630         Tests: animations/state-at-end-event.html
1631                transitions/move-after-transition.html
1632
1633         * page/animation/ImplicitAnimation.cpp:
1634         (WebCore::ImplicitAnimation::onAnimationEnd):
1635         * page/animation/KeyframeAnimation.cpp:
1636         (WebCore::KeyframeAnimation::onAnimationEnd):
1637
1638 2009-10-15  Joseph Pecoraro  <joepeck@webkit.org>
1639
1640         Reviewed by Timothy Hatcher.
1641
1642         Web Inspector: Handle the Enter Key in the Elements Tree Hierarchy
1643         https://bugs.webkit.org/show_bug.cgi?id=30428
1644
1645         TextNode => Edit Text Node
1646         Has Attributes => Edit First Attribute
1647         No Attributes => Start Editing New Attribute
1648
1649         * inspector/front-end/ElementsTreeOutline.js:
1650         (WebInspector.ElementsTreeOutline.prototype.handleKeyEvent): handle the "Enter" key
1651         (WebInspector.ElementsTreeElement.prototype.set hovered): only add new attribute button on nodes with attributes
1652         (WebInspector.ElementsTreeElement.prototype._addNewAttribute): prevent moving backwards where there are no attributes
1653         (WebInspector.ElementsTreeElement.prototype._startEditingFromEvent): renamed to be clearer
1654         (WebInspector.ElementsTreeElement.prototype._startEditing): transition to the appropriate edit state for a tree element
1655
1656 2009-10-16  Adam Barth  <abarth@webkit.org>
1657
1658         Reviewed by Eric Seidel.
1659
1660         Fix header indent style for FrameLoader and friends
1661         https://bugs.webkit.org/show_bug.cgi?id=30430
1662
1663         * loader/FrameLoader.h:
1664         (WebCore::FrameLoader::frame):
1665         (WebCore::FrameLoader::policyChecker):
1666         (WebCore::FrameLoader::history):
1667         (WebCore::FrameLoader::notifier):
1668         (WebCore::FrameLoader::isLoadingMainResource):
1669         (WebCore::FrameLoader::documentLoader):
1670         (WebCore::FrameLoader::policyDocumentLoader):
1671         (WebCore::FrameLoader::provisionalDocumentLoader):
1672         (WebCore::FrameLoader::state):
1673         (WebCore::FrameLoader::client):
1674         (WebCore::FrameLoader::url):
1675         (WebCore::FrameLoader::isLoadingFromCachedPage):
1676         (WebCore::FrameLoader::committingFirstRealLoad):
1677         (WebCore::FrameLoader::committedFirstRealDocumentLoad):
1678         (WebCore::FrameLoader::creatingInitialEmptyDocument):
1679         * loader/HistoryController.h:
1680         (WebCore::HistoryController::currentItem):
1681         (WebCore::HistoryController::provisionalItem):
1682         * loader/PolicyCallback.h:
1683         (WebCore::PolicyCallback::request):
1684         * loader/PolicyChecker.h:
1685         (WebCore::PolicyChecker::loadType):
1686         (WebCore::PolicyChecker::setLoadType):
1687         (WebCore::PolicyChecker::delegateIsDecidingNavigationPolicy):
1688         (WebCore::PolicyChecker::delegateIsHandlingUnimplementablePolicy):
1689         * loader/RedirectScheduler.h:
1690         * loader/ResourceLoadNotifier.h:
1691
1692 2009-10-16  Steve Falkenburg  <sfalken@apple.com>
1693
1694         Reviewed by Adam Roben.
1695
1696         Add a Debug_All configuration to build entire stack as debug.
1697         Change Debug_Internal to:
1698         - stop using _debug suffix for all WebKit/Safari binaries
1699         - not use _debug as a DLL naming suffix
1700         - use non-debug C runtime lib.
1701
1702         * WebCore.vcproj/QTMovieWin.vcproj: Add Debug_All configuration.
1703         * WebCore.vcproj/WebCore.make: Debug build in makefile should build Debug_All.
1704         * WebCore.vcproj/WebCore.sln: Add Debug_All configuration.
1705         * WebCore.vcproj/WebCore.submit.sln: Add Debug_All configuration.
1706         * WebCore.vcproj/WebCore.vcproj: Add Debug_All configuration.
1707         * WebCore.vcproj/WebCoreGenerated.vcproj: Renamed single configuration from "Release" to "all".
1708
1709 2009-10-16  Dimitri Glazkov  <dglazkov@chromium.org>
1710
1711         No review, rolling out r49693, because it broke Chromium build.
1712         http://trac.webkit.org/changeset/49693
1713
1714         * WebCore.gyp/WebCore.gyp:
1715         * WebCore.gypi:
1716
1717 2009-10-16  Andrew Scherkus  <scherkus@chromium.org>
1718
1719         Reviewed by Eric Carlson.
1720
1721         Updated media resource selection algorithm to reflect latest HTML 5 specification.
1722
1723         Noticable changes:
1724             -  Elements with no source should have their network state set to NETWORK_EMPTY as opposed to NETWORK_NO_SOURCE
1725             -  Empty string ("") is now considered a valid URL resolving to the current page and will be loaded
1726
1727         Tests: media/video-src-empty.html
1728                media/video-src-none.html
1729
1730         https://bugs.webkit.org/show_bug.cgi?id=30407
1731
1732         * html/HTMLMediaElement.cpp:
1733         (WebCore::HTMLMediaElement::selectMediaResource): Updated code and comments to match spec.
1734
1735 2009-10-16  Adam Barth  <abarth@webkit.org>
1736
1737         Reviewed by Eric Seidel.
1738
1739         Insecure plug-ins don't trigger mixed content
1740         https://bugs.webkit.org/show_bug.cgi?id=30431
1741
1742         Added the missing check.
1743
1744         Test: http/tests/security/mixedContent/insecure-plugin-in-iframe.html
1745
1746         * loader/FrameLoader.cpp:
1747         (WebCore::FrameLoader::loadPlugin):
1748
1749 2009-10-16  Andrew Scherkus  <scherkus@chromium.org>
1750
1751         Reviewed by Eric Carlson.
1752
1753         Set autobuffer to true and schedule load in V8 audio element constructor.
1754
1755         https://bugs.webkit.org/show_bug.cgi?id=30448
1756
1757         Covered by existing tests.
1758
1759         * bindings/v8/custom/V8HTMLAudioElementConstructor.cpp:
1760         (WebCore::CALLBACK_FUNC_DECL): Set autobuffer to true and schedule load.
1761
1762 2009-10-16  Andrew Scherkus  <scherkus@chromium.org>
1763
1764         Reviewed by Eric Seidel.
1765
1766         Remove FIXME in RenderMediaControlsChromium as bug was fixed upstream.
1767
1768         https://bugs.webkit.org/show_bug.cgi?id=30422
1769
1770         Covered by existing media layout tests.
1771
1772         * rendering/RenderMediaControlsChromium.cpp:
1773         (WebCore::paintMediaSlider): Removed round() and FIXME.
1774
1775 2009-10-16  Andrew Scherkus  <scherkus@chromium.org>
1776
1777         Reviewed by Eric Seidel.
1778
1779         Fix Chromium media controls to render a disabled play button when the element is unintialized.
1780
1781         https://bugs.webkit.org/show_bug.cgi?id=30410
1782
1783         Covered by existing layout tests.
1784
1785         * rendering/RenderMediaControlsChromium.cpp:
1786         (WebCore::paintMediaPlayButton): Include check for NETWORK_EMPTY to render disabled play button.
1787
1788 2009-10-16  Oliver Hunt  <oliver@apple.com>
1789
1790         Reviewed by Gavin Barraclough.
1791
1792         Make typeinfo flags default to false
1793         https://bugs.webkit.org/show_bug.cgi?id=30372
1794
1795         Last part -- replace HasDefaultGetPropertyNames with OverridesGetPropertyNames
1796         flag.
1797
1798         * bindings/js/JSDOMWindowShell.h:
1799         (WebCore::JSDOMWindowShell::createStructure):
1800         * bindings/js/JSHTMLAllCollection.h:
1801         (WebCore::JSHTMLAllCollection::createStructure):
1802         * bindings/js/JSQuarantinedObjectWrapper.h:
1803         (WebCore::JSQuarantinedObjectWrapper::createStructure):
1804         * bindings/scripts/CodeGeneratorJS.pm:
1805         * bridge/runtime_array.h:
1806         (JSC::RuntimeArray::createStructure):
1807         * bridge/runtime_object.h:
1808         (JSC::RuntimeObjectImp::createStructure):
1809
1810 2009-10-16  Steven Knight  <sgk@chromium.org>
1811
1812         Reviewed by David Levin.
1813
1814         https://bugs.webkit.org/show_bug.cgi?id=30447
1815         Handle long link lines by building .idl-generated bindings in a
1816         separate webcore_bindings library target.  Avoid Visual Studio
1817         dependency issues by building additional generated .cpp and .h files
1818         in a separate webcore_bindings_sources target.
1819
1820         Chrome should still build and test successfully.
1821
1822         * WebCore.gyp/WebCore.gyp:
1823         * WebCore.gypi:
1824
1825 2009-10-16  Simon Fraser  <simon.fraser@apple.com>
1826
1827         Reviewed by Eric Carlson.
1828
1829         Transform transitions that used to be accelerated are no longer so
1830         https://bugs.webkit.org/show_bug.cgi?id=30453
1831
1832         The change in r49633, to not run accelerated animations/transitions on layers that
1833         are not attached, broke accelerated transitions/animations in many cases where they start
1834         as soon as the page loads. This change reverts the code that tests for the GraphicsLayer being
1835         attached.
1836         
1837         No test, because it's not possible from a test to know whether a transition is accelerated or not.
1838
1839         * rendering/RenderLayerBacking.cpp:
1840         (WebCore::RenderLayerBacking::startAnimation):
1841         (WebCore::RenderLayerBacking::startTransition):
1842
1843 2009-10-16  Kevin Ollivier  <kevino@theolliviers.com>
1844
1845         wxMSW build fix, build the MSW source to get methods that use the MSW version of
1846         PlatformModuleVersion.
1847
1848         * wscript:
1849
1850 2009-10-16  Adam Barth  <abarth@webkit.org>
1851
1852         Unreviewed build fix.  Add back MIMETypeRegistryChromium with the right
1853         casing.
1854
1855         * platform/chromium/MIMETypeRegistryChromium.cpp: Added.
1856         (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
1857         (WebCore::MIMETypeRegistry::getPreferredExtensionForMIMEType):
1858         (WebCore::MIMETypeRegistry::getMIMETypeForPath):
1859         (WebCore::MIMETypeRegistry::isSupportedImageMIMEType):
1860         (WebCore::MIMETypeRegistry::isSupportedImageResourceMIMEType):
1861         (WebCore::MIMETypeRegistry::isSupportedImageMIMETypeForEncoding):
1862         (WebCore::MIMETypeRegistry::isSupportedJavaScriptMIMEType):
1863         (WebCore::MIMETypeRegistry::isSupportedNonImageMIMEType):
1864         (WebCore::MIMETypeRegistry::isSupportedMediaMIMEType):
1865         (WebCore::MIMETypeRegistry::isJavaAppletMIMEType):
1866         (WebCore::MIMETypeRegistry::getMediaMIMETypeForExtension):
1867         (WebCore::dummyHashSet):
1868         (WebCore::MIMETypeRegistry::getSupportedImageMIMETypes):
1869         (WebCore::MIMETypeRegistry::getSupportedImageResourceMIMETypes):
1870         (WebCore::MIMETypeRegistry::getSupportedImageMIMETypesForEncoding):
1871         (WebCore::MIMETypeRegistry::getSupportedNonImageMIMETypes):
1872         (WebCore::MIMETypeRegistry::getSupportedMediaMIMETypes):
1873
1874 2009-10-16  Adam Barth  <abarth@webkit.org>
1875
1876         Reviewed by Darin Adler.
1877
1878         MimeTypeRegistryChromium is mis-casen
1879         https://bugs.webkit.org/show_bug.cgi?id=30441
1880
1881         Change the case of MimeTypeRegistryChromium to match other platforms.
1882
1883         * WebCore.gypi:
1884         * platform/chromium/MIMETypeRegistryChromium.cpp: Copied from WebCore/platform/chromium/MimeTypeRegistryChromium.cpp.
1885         * platform/chromium/MimeTypeRegistryChromium.cpp: Removed.
1886
1887 2009-10-16  Dimitri Glazkov  <dglazkov@chromium.org>
1888
1889         Reviewed by Eric Seidel.
1890
1891         Change EmptyPluginHalterClient in SVGImage to be non-static, to
1892         match changes made http://trac.webkit.org/changeset/49385.
1893         https://bugs.webkit.org/show_bug.cgi?id=30403
1894
1895         Run the following layout test sequence:
1896           LayoutTests/svg/W3C-SVG-1.1/struct-image-01-t.svg
1897           LayoutTests/svg/W3C-SVG-1.1/struct-image-03-t.svg
1898           LayoutTests/svg/W3C-SVG-1.1/struct-image-04-t.svg
1899           LayoutTests/svg/W3C-SVG-1.1/struct-image-05-b.svg
1900           LayoutTests/svg/W3C-SVG-1.1/struct-image-06-t.svg
1901           LayoutTests/svg/W3C-SVG-1.1/struct-image-07-t.svg
1902           LayoutTests/svg/W3C-SVG-1.1/struct-image-08-t.svg
1903           LayoutTests/svg/W3C-SVG-1.1/struct-image-09-t.svg
1904           LayoutTests/svg/W3C-SVG-1.1/struct-image-10-t.svg
1905           LayoutTests/svg/carto.net/scrollbar.svg
1906           LayoutTests/svg/carto.net/selectionlist.svg
1907
1908         selectionlist.svg should not crash.
1909
1910         * svg/graphics/SVGImage.cpp:
1911         (WebCore::SVGImage::dataChanged): Made EmptyPluginHalterClient non-static.
1912
1913 2009-10-16  Victor Wang  <victorw@chromium.org>
1914
1915         Reviewed by David Levin.
1916
1917         Add beforeload event support to V8DOMWrapper
1918
1919         https://bugs.webkit.org/show_bug.cgi?id=30413
1920
1921         LayoutTests/fast/dom/beforeload/frame-before-load.html
1922
1923         * bindings/v8/V8DOMWrapper.cpp:
1924         (WebCore::V8DOMWrapper::convertEventToV8Object):
1925
1926 2009-10-16  Adam Barth  <abarth@webkit.org>
1927
1928         Reviewed by Darin Adler.
1929
1930         MimeTypeRegistryChromium is mis-casen
1931         https://bugs.webkit.org/show_bug.cgi?id=30441
1932
1933         Change the case of MimeTypeRegistryChromium to match other platforms.
1934
1935         * WebCore.gypi:
1936         * platform/chromium/MIMETypeRegistryChromium.cpp: Copied from WebCore/platform/chromium/MimeTypeRegistryChromium.cpp.
1937         * platform/chromium/MimeTypeRegistryChromium.cpp: Removed.
1938
1939 2009-10-16  Adam Barth  <abarth@webkit.org>
1940
1941         Reviewed by Mark Rowe.
1942
1943         Chrome doesn't set Content-Type for file upload when the file extension
1944         is not recognized
1945         https://bugs.webkit.org/show_bug.cgi?id=30433
1946
1947         Apparently, getMIMETypeForPath is supposed to return
1948         application/octet-stream when it doesn't have a better MIME type.
1949
1950         * platform/chromium/MimeTypeRegistryChromium.cpp:
1951         (WebCore::MIMETypeRegistry::getMIMETypeForPath):
1952
1953 2009-10-16  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
1954
1955         Pull out r49676 as it caused build breakges on Symbian
1956
1957         * plugins/symbian/PluginViewSymbian.cpp:
1958
1959 2009-10-16  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
1960
1961         Reviewed by Ariya Hidayat.
1962
1963         Crash fix when loading NPAPI plugins on Qt/Mac
1964
1965         There's no guarantee that the plist will be valid even if we
1966         ask the plugin to create it. Crash obverved with iGetter.
1967
1968         * plugins/mac/PluginPackageMac.cpp:
1969
1970 2009-10-15  Stephen White  <senorblanco@chromium.org>
1971
1972         Reviewed by David Levin.
1973
1974         Fix for Chromium/skia's implementation of canvas's isPointInPath().
1975         https://bugs.webkit.org/show_bug.cgi?id=30402
1976
1977         Covered by LayoutTests/fast/canvas/pointInPath.html.
1978
1979         * platform/graphics/skia/SkiaUtils.cpp:
1980         (WebCore::SkPathContainsPoint):
1981
1982 2009-10-15  Adam Barth  <abarth@webkit.org>
1983
1984         Reviewed by Darin Adler.
1985
1986         Factor ResourceLoadNotifier out of FrameLoader
1987         https://bugs.webkit.org/show_bug.cgi?id=30379
1988
1989         These methods have virtually no interaction with the rest of
1990         FrameLoader.
1991
1992         * GNUmakefile.am:
1993         * WebCore.gypi:
1994         * WebCore.pro:
1995         * WebCore.vcproj/WebCore.vcproj:
1996         * WebCore.xcodeproj/project.pbxproj:
1997         * WebCoreSources.bkl:
1998         * dom/Document.cpp:
1999         (WebCore::Document::resourceRetrievedByXMLHttpRequest):
2000         * loader/FrameLoader.cpp:
2001         (WebCore::FrameLoader::FrameLoader):
2002         (WebCore::FrameLoader::continueLoadAfterWillSubmitForm):
2003         (WebCore::ResourceLoadNotifier::ResourceLoadNotifier):
2004         (WebCore::ResourceLoadNotifier::activeDocumentLoader):
2005         (WebCore::ResourceLoadNotifier::assignIdentifierToInitialRequest):
2006         (WebCore::ResourceLoadNotifier::willSendRequest):
2007         (WebCore::ResourceLoadNotifier::didReceiveResponse):
2008         (WebCore::ResourceLoadNotifier::didReceiveData):
2009         (WebCore::ResourceLoadNotifier::didFailToLoad):
2010         (WebCore::ResourceLoadNotifier::didLoadResourceByXMLHttpRequest):
2011         (WebCore::FrameLoader::sendRemainingDelegateMessages):
2012         (WebCore::FrameLoader::requestFromDelegate):
2013         (WebCore::ResourceLoadNotifier::didFinishLoad):
2014         (WebCore::ResourceLoadNotifier::didReceiveAuthenticationChallenge):
2015         (WebCore::ResourceLoadNotifier::didCancelAuthenticationChallenge):
2016         (WebCore::ResourceLoadNotifier::dispatchAssignIdentifierToInitialRequest):
2017         (WebCore::ResourceLoadNotifier::dispatchWillSendRequest):
2018         (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse):
2019         (WebCore::ResourceLoadNotifier::dispatchDidReceiveContentLength):
2020         (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
2021         * loader/FrameLoader.h:
2022         (WebCore::FrameLoader::notifier):
2023         * loader/MainResourceLoader.cpp:
2024         (WebCore::MainResourceLoader::receivedError):
2025         * loader/ResourceLoadNotifier.cpp: Added.
2026         (WebCore::ResourceLoadNotifier::ResourceLoadNotifier):
2027         (WebCore::ResourceLoadNotifier::didReceiveAuthenticationChallenge):
2028         (WebCore::ResourceLoadNotifier::didCancelAuthenticationChallenge):
2029         (WebCore::ResourceLoadNotifier::assignIdentifierToInitialRequest):
2030         (WebCore::ResourceLoadNotifier::willSendRequest):
2031         (WebCore::ResourceLoadNotifier::didReceiveResponse):
2032         (WebCore::ResourceLoadNotifier::didReceiveData):
2033         (WebCore::ResourceLoadNotifier::didFinishLoad):
2034         (WebCore::ResourceLoadNotifier::didFailToLoad):
2035         (WebCore::ResourceLoadNotifier::didLoadResourceByXMLHttpRequest):
2036         (WebCore::ResourceLoadNotifier::dispatchAssignIdentifierToInitialRequest):
2037         (WebCore::ResourceLoadNotifier::dispatchWillSendRequest):
2038         (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse):
2039         (WebCore::ResourceLoadNotifier::dispatchDidReceiveContentLength):
2040         (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
2041         (WebCore::ResourceLoadNotifier::activeDocumentLoader):
2042         * loader/ResourceLoadNotifier.h: Added.
2043         * loader/ResourceLoader.cpp:
2044         (WebCore::ResourceLoader::willSendRequest):
2045         (WebCore::ResourceLoader::didReceiveResponse):
2046         (WebCore::ResourceLoader::didReceiveData):
2047         (WebCore::ResourceLoader::didFinishLoadingOnePart):
2048         (WebCore::ResourceLoader::didFail):
2049         (WebCore::ResourceLoader::didCancel):
2050         (WebCore::ResourceLoader::didReceiveAuthenticationChallenge):
2051         (WebCore::ResourceLoader::didCancelAuthenticationChallenge):
2052
2053 2009-10-15  Roland Steiner  <rolandsteiner@google.com>
2054
2055         Reviewed by Darin Fisher.
2056
2057         Bug 30427 -  Remove unneeded methods in ChromiumDataObject
2058         (https://bugs.webkit.org/show_bug.cgi?id=30427)
2059         
2060         Remove no longer needed methods from ChromiumDataObject.
2061
2062         No new tests (no functional change)
2063
2064         * platform/chromium/ChromiumDataObject.h:
2065
2066 2009-10-16  Yael Aharon  <yael.aharon@nokia.com>
2067
2068         Reviewed by Tor Arne Vestbø.
2069
2070         [Qt] Need a way to inform the application when a Netscape plugin is created or deleted
2071         https://bugs.webkit.org/show_bug.cgi?id=30179
2072
2073         Inform the application when a plugin is created or destroyed, but only if the 
2074         application registered for these notifications.
2075
2076         * plugins/symbian/PluginViewSymbian.cpp:
2077         (WebCore::PluginView::platformStart):
2078         (WebCore::PluginView::platformDestroy):
2079
2080 2009-10-16  Shu Chang  <Chang.Shu@nokia.com>
2081
2082         Reviewed by Eric Seidel.
2083
2084         Default language translation should be determined by locale settings,
2085         e.g., "en-US".
2086         https://bugs.webkit.org/show_bug.cgi?id=29653
2087
2088         Test: fast/js/navigator-language.html
2089
2090         * platform/qt/Localizations.cpp:
2091         (WebCore::defaultLanguage):
2092
2093 2009-10-16  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
2094
2095         Reviewed by Ariya Hidayat.
2096
2097         Crash fix when loading NPAPI plugins on Qt/Mac
2098
2099         There's no guarantee that the plist will be valid even if we
2100         ask the plugin to create it. Crash obverved with iGetter.
2101
2102         * plugins/mac/PluginPackageMac.cpp:
2103
2104 2009-10-15  Stephen White  <senorblanco@chromium.org>
2105
2106         Reviewed by David Levin.
2107
2108         Fix for Chromium/skia's implementation of canvas's isPointInPath().
2109         https://bugs.webkit.org/show_bug.cgi?id=30402
2110
2111         Covered by LayoutTests/fast/canvas/pointInPath.html.
2112
2113         * platform/graphics/skia/SkiaUtils.cpp:
2114         (WebCore::SkPathContainsPoint):
2115
2116 2009-10-15  Adam Barth  <abarth@webkit.org>
2117
2118         Reviewed by Darin Adler.
2119
2120         Factor ResourceLoadNotifier out of FrameLoader
2121         https://bugs.webkit.org/show_bug.cgi?id=30379
2122
2123         These methods have virtually no interaction with the rest of
2124         FrameLoader.
2125
2126         * GNUmakefile.am:
2127         * WebCore.gypi:
2128         * WebCore.pro:
2129         * WebCore.vcproj/WebCore.vcproj:
2130         * WebCore.xcodeproj/project.pbxproj:
2131         * WebCoreSources.bkl:
2132         * dom/Document.cpp:
2133         (WebCore::Document::resourceRetrievedByXMLHttpRequest):
2134         * loader/FrameLoader.cpp:
2135         (WebCore::FrameLoader::FrameLoader):
2136         (WebCore::FrameLoader::continueLoadAfterWillSubmitForm):
2137         (WebCore::ResourceLoadNotifier::ResourceLoadNotifier):
2138         (WebCore::ResourceLoadNotifier::activeDocumentLoader):
2139         (WebCore::ResourceLoadNotifier::assignIdentifierToInitialRequest):
2140         (WebCore::ResourceLoadNotifier::willSendRequest):
2141         (WebCore::ResourceLoadNotifier::didReceiveResponse):
2142         (WebCore::ResourceLoadNotifier::didReceiveData):
2143         (WebCore::ResourceLoadNotifier::didFailToLoad):
2144         (WebCore::ResourceLoadNotifier::didLoadResourceByXMLHttpRequest):
2145         (WebCore::FrameLoader::sendRemainingDelegateMessages):
2146         (WebCore::FrameLoader::requestFromDelegate):
2147         (WebCore::ResourceLoadNotifier::didFinishLoad):
2148         (WebCore::ResourceLoadNotifier::didReceiveAuthenticationChallenge):
2149         (WebCore::ResourceLoadNotifier::didCancelAuthenticationChallenge):
2150         (WebCore::ResourceLoadNotifier::dispatchAssignIdentifierToInitialRequest):
2151         (WebCore::ResourceLoadNotifier::dispatchWillSendRequest):
2152         (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse):
2153         (WebCore::ResourceLoadNotifier::dispatchDidReceiveContentLength):
2154         (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
2155         * loader/FrameLoader.h:
2156         (WebCore::FrameLoader::notifier):
2157         * loader/MainResourceLoader.cpp:
2158         (WebCore::MainResourceLoader::receivedError):
2159         * loader/ResourceLoadNotifier.cpp: Added.
2160         (WebCore::ResourceLoadNotifier::ResourceLoadNotifier):
2161         (WebCore::ResourceLoadNotifier::didReceiveAuthenticationChallenge):
2162         (WebCore::ResourceLoadNotifier::didCancelAuthenticationChallenge):
2163         (WebCore::ResourceLoadNotifier::assignIdentifierToInitialRequest):
2164         (WebCore::ResourceLoadNotifier::willSendRequest):
2165         (WebCore::ResourceLoadNotifier::didReceiveResponse):
2166         (WebCore::ResourceLoadNotifier::didReceiveData):
2167         (WebCore::ResourceLoadNotifier::didFinishLoad):
2168         (WebCore::ResourceLoadNotifier::didFailToLoad):
2169         (WebCore::ResourceLoadNotifier::didLoadResourceByXMLHttpRequest):
2170         (WebCore::ResourceLoadNotifier::dispatchAssignIdentifierToInitialRequest):
2171         (WebCore::ResourceLoadNotifier::dispatchWillSendRequest):
2172         (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse):
2173         (WebCore::ResourceLoadNotifier::dispatchDidReceiveContentLength):
2174         (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
2175         (WebCore::ResourceLoadNotifier::activeDocumentLoader):
2176         * loader/ResourceLoadNotifier.h: Added.
2177         * loader/ResourceLoader.cpp:
2178         (WebCore::ResourceLoader::willSendRequest):
2179         (WebCore::ResourceLoader::didReceiveResponse):
2180         (WebCore::ResourceLoader::didReceiveData):
2181         (WebCore::ResourceLoader::didFinishLoadingOnePart):
2182         (WebCore::ResourceLoader::didFail):
2183         (WebCore::ResourceLoader::didCancel):
2184         (WebCore::ResourceLoader::didReceiveAuthenticationChallenge):
2185         (WebCore::ResourceLoader::didCancelAuthenticationChallenge):
2186
2187 2009-10-15  Roland Steiner  <rolandsteiner@google.com>
2188
2189         Reviewed by Darin Fisher.
2190
2191         Bug 30427 -  Remove unneeded methods in ChromiumDataObject
2192         (https://bugs.webkit.org/show_bug.cgi?id=30427)
2193         
2194         Remove no longer needed methods from ChromiumDataObject.
2195
2196         No new tests (no functional change)
2197
2198         * platform/chromium/ChromiumDataObject.h:
2199
2200 2009-10-15  Daniel Bates  <dbates@webkit.org>
2201
2202         No review, rolling out r49644.
2203         http://trac.webkit.org/changeset/49644
2204         
2205         We need to think about this change some more. See bug #30418 
2206         for more details.
2207
2208         * page/XSSAuditor.cpp:
2209         (WebCore::XSSAuditor::canEvaluate):
2210         (WebCore::XSSAuditor::canEvaluateJavaScriptURL):
2211         (WebCore::XSSAuditor::canCreateInlineEventListener):
2212         (WebCore::XSSAuditor::canLoadExternalScriptFromSrc):
2213         (WebCore::XSSAuditor::canLoadObject):
2214         (WebCore::XSSAuditor::canSetBaseElementURL):
2215         (WebCore::XSSAuditor::findInRequest):
2216         * page/XSSAuditor.h:
2217
2218 2009-10-14  Jon Honeycutt  <jhoneycutt@apple.com>
2219
2220         Add SPI to determine whether a node is a halted plug-in.
2221
2222         Part of <rdar://problem/7273354> Halted plug-ins should restart on
2223         mouseover
2224
2225         https://bugs.webkit.org/show_bug.cgi?id=30151
2226
2227         Reviewed by Darin Adler.
2228
2229         * plugins/PluginView.cpp:
2230         (WebCore::PluginView::PluginView):
2231         Initialize m_isHalted.
2232
2233         * plugins/PluginView.h:
2234         (WebCore::PluginView::isHalted):
2235         Return m_isHalted.
2236
2237         * plugins/win/PluginViewWin.cpp:
2238         (WebCore::PluginView::halt):
2239         Set m_isHalted to true.
2240         (WebCore::PluginView::restart):
2241         clear m_isHalted.
2242
2243 2009-10-15  Zoltan Horvath  <zoltan@webkit.org>
2244
2245         Reviewed by Oliver Hunt.
2246
2247         [Qt] Build fix for QtWebKit after r49649.
2248
2249         Change JSC::HasNonDefaultMark to OverridesMarkChildren in createStructure function.
2250
2251         * bridge/qt/qt_runtime.h:
2252         (JSC::Bindings::QtRuntimeMethod::createStructure):
2253
2254 2009-10-15  Pavel Feldman  <pfeldman@chromium.org>
2255
2256         Not reviewed - build fix.
2257
2258         Web Inspector: add file missing in r49648
2259
2260         * inspector/front-end/TestController.js: Added.
2261         (WebInspector.TestController):
2262         (WebInspector.TestController.prototype.waitUntilDone):
2263         (WebInspector.TestController.prototype.notifyDone):
2264         (WebInspector.evaluateForTestInFrontend):
2265
2266 2009-10-15  Oliver Hunt  <oliver@apple.com>
2267
2268         Reviewed by Darin Adler.
2269
2270         Make typeinfo flags default to false
2271         https://bugs.webkit.org/show_bug.cgi?id=30372
2272
2273         Part 2 -- Reverse the TypeInfo HasDefaultMark flag to OverridesMarkChildren, etc
2274
2275         * bindings/js/JSDOMBinding.h:
2276         (WebCore::DOMObjectWithGlobalPointer::createStructure):
2277         (WebCore::DOMConstructorObject::createStructure):
2278         * bindings/js/JSDOMWindowShell.h:
2279         (WebCore::JSDOMWindowShell::createStructure):
2280         * bindings/js/JSHTMLAllCollection.h:
2281         (WebCore::JSHTMLAllCollection::createStructure):
2282         * bindings/js/JSQuarantinedObjectWrapper.h:
2283         (WebCore::JSQuarantinedObjectWrapper::createStructure):
2284         * bindings/scripts/CodeGeneratorJS.pm:
2285         * bridge/qt/qt_runtime.h:
2286         (JSC::Bindings::QtRuntimeMethod::createStructure):
2287         * bridge/runtime_method.h:
2288         (JSC::RuntimeMethod::createStructure):
2289
2290 2009-10-15  Pavel Feldman  <pfeldman@chromium.org>
2291
2292         Reviewed by Timothy Hatcher.
2293
2294         Web Inspector: introduce test controller with waitUntilDone
2295         on frontend side.
2296
2297         https://bugs.webkit.org/show_bug.cgi?id=30400
2298
2299         * WebCore.gypi:
2300         * WebCore.vcproj/WebCore.vcproj:
2301         * inspector/front-end/TestController.js: Added.
2302         (WebInspector.TestController):
2303         (WebInspector.TestController.prototype.waitUntilDone):
2304         (WebInspector.TestController.prototype.notifyDone):
2305         (WebInspector.evaluateForTestInFrontend):
2306         * inspector/front-end/WebKit.qrc:
2307         * inspector/front-end/inspector.html:
2308         * inspector/front-end/inspector.js:
2309
2310 2009-10-15  Daniel Bates  <dbates@webkit.org>
2311
2312         Reviewed by Adam Barth.
2313
2314         https://bugs.webkit.org/show_bug.cgi?id=27895
2315         
2316         Fixes an issue in which injecting an inline event handler whose value ends in a single-line
2317         JavaScript comment can bypass the XSSAuditor. Similarly fixes this issue with respect to
2318         the HTML Base element, HTML Object element, inline and external script tags, and
2319         JavaScript multi-line variants of all of these attacks.
2320
2321         Tests: http/tests/security/xssAuditor/base-href-comment.html
2322                http/tests/security/xssAuditor/iframe-javascript-url-comment.html
2323                http/tests/security/xssAuditor/img-onerror-HTML-comment.html
2324                http/tests/security/xssAuditor/img-onerror-comment.html
2325                http/tests/security/xssAuditor/object-tag-comment.html
2326                http/tests/security/xssAuditor/script-tag-comment-HTML-entity.html
2327                http/tests/security/xssAuditor/script-tag-comment.html
2328                http/tests/security/xssAuditor/script-tag-with-source-comment.html
2329
2330         * page/XSSAuditor.cpp: Added constant minAttackLength.
2331         (WebCore::XSSAuditor::canEvaluate):
2332         (WebCore::XSSAuditor::canEvaluateJavaScriptURL):
2333         (WebCore::XSSAuditor::canCreateInlineEventListener):
2334         (WebCore::XSSAuditor::canLoadExternalScriptFromSrc):
2335         (WebCore::XSSAuditor::canLoadObject):
2336         (WebCore::XSSAuditor::canSetBaseElementURL):
2337         (WebCore::XSSAuditor::findInRequest): Added parameter context. Only looks at up 
2338         to minAttackLength of script code plus context (if any).
2339         * page/XSSAuditor.h:
2340
2341 2009-10-08  Adam Langley  <agl@google.com>
2342
2343         Reviewed by Eric Seidel.
2344
2345         Currently, Skia clip paths are 1-bit. This patch makes our path
2346         clipping anti-aliased for non-canvas drawing.
2347
2348         http://code.google.com/p/chromium/issues/detail?id=5927
2349         https://bugs.webkit.org/show_bug.cgi?id=28820
2350         http://www.imperialviolet.org/2009/09/02/anti-aliased-clipping.html
2351
2352         Already covered by layout tests. New baselines will be needed in the
2353         Chromium tree.
2354
2355         (Reland. First landed in r49329, reverted in r49330 due to Windows
2356         build break)
2357
2358         * html/canvas/CanvasRenderingContext2D.cpp:
2359         (WebCore::CanvasRenderingContext2D::clip):
2360         * platform/graphics/GraphicsContext.h:
2361         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2362         (WebCore::GraphicsContext::canvasClip):
2363         * platform/graphics/cg/GraphicsContextCG.cpp:
2364         (WebCore::GraphicsContext::canvasClip):
2365         * platform/graphics/haiku/GraphicsContextHaiku.cpp:
2366         (WebCore::GraphicsContext::canvasClip):
2367         * platform/graphics/qt/GraphicsContextQt.cpp:
2368         (WebCore::GraphicsContext::canvasClip):
2369         * platform/graphics/skia/GraphicsContextSkia.cpp:
2370         (WebCore::GraphicsContext::addInnerRoundedRectClip):
2371         (WebCore::GraphicsContext::clip):
2372         (WebCore::GraphicsContext::canvasClip):
2373         (WebCore::GraphicsContext::clipPath):
2374         * platform/graphics/skia/PlatformContextSkia.cpp:
2375         (PlatformContextSkia::clipPathAntiAliased):
2376         (PlatformContextSkia::restore):
2377         (PlatformContextSkia::applyAntiAliasedClipPaths):
2378         * platform/graphics/skia/PlatformContextSkia.h:
2379         * platform/graphics/win/GraphicsContextWin.cpp:
2380         (WebCore::GraphicsContext::canvasClip):
2381         * platform/graphics/wince/GraphicsContextWince.cpp:
2382         (WebCore::GraphicsContext::canvasClip):
2383         * platform/graphics/wx/GraphicsContextWx.cpp:
2384         (WebCore::GraphicsContext::canvasClip):
2385
2386 2009-10-15  Eric Carlson  <eric.carlson@apple.com>
2387
2388         Reviewed by Simon Fraser.
2389
2390         <rdar://problem/7295738> No way to mute/unmute a movie in full screen video mode
2391
2392         * WebCore.Video.exp: Export muted and setMute.
2393
2394 2009-10-15  Simon Fraser  <simon.fraser@apple.com>
2395
2396         Reviewed by Dan Bernstein.
2397
2398         Transitions fail to run sometimes
2399         https://bugs.webkit.org/show_bug.cgi?id=26770
2400
2401         Fix an issue where we could attempt to start accelerated animations or transitions on
2402         GraphicsLayer that were not rooted (because of visibility:hidden), which would leave
2403         the AnimationController's m_waitingForResponse flag in a state that killed subsequent
2404         software transitions.
2405
2406         * page/animation/AnimationController.cpp:
2407         (WebCore::AnimationControllerPrivate::AnimationControllerPrivate):
2408         (WebCore::AnimationControllerPrivate::endAnimationUpdate):
2409         (WebCore::AnimationControllerPrivate::receivedStartTimeResponse):
2410         (WebCore::AnimationControllerPrivate::addToStartTimeResponseWaitList):
2411         (WebCore::AnimationControllerPrivate::startTimeResponse):
2412         * page/animation/AnimationControllerPrivate.h:
2413         Make some methods non-inline for ease of debugging (these are not hot methods).
2414         Rename m_waitingForAResponse to m_waitingForResponse.
2415         
2416         * platform/graphics/GraphicsLayer.h:
2417         * platform/graphics/GraphicsLayer.cpp:
2418         (WebCore::GraphicsLayer::hasAncestor):
2419         New method to report whether the receiver has the given layer as an ancestor. Used for checking
2420         whether a layer is rooted.
2421
2422         * rendering/RenderLayerBacking.cpp:
2423         (WebCore::RenderLayerBacking::startAnimation):
2424         (WebCore::RenderLayerBacking::startTransition):
2425         Don't try to start accelerated animations or transitions on non-rooted GraphicsLayers.
2426
2427 2009-10-15  Alexander Pavlov  <apavlov@chromium.org>
2428
2429         Reviewed by Pavel Feldman.
2430
2431         Refactor ProfilesPanel to support multiple profile types
2432
2433         Data describing different profile types are now stored in distinct objects.
2434         https://bugs.webkit.org/show_bug.cgi?id=30332
2435
2436         * WebCore.vcproj/WebCore.vcproj:
2437         * inspector/front-end/ProfileView.js:
2438         (WebInspector.CPUProfileView.profileCallback):
2439         (WebInspector.CPUProfileView):
2440         (WebInspector.CPUProfileView.prototype._sortData):
2441         (WebInspector.CPUProfileType):
2442         (WebInspector.CPUProfileType.prototype.get buttonTooltip):
2443         (WebInspector.CPUProfileType.prototype.get buttonStyle):
2444         (WebInspector.CPUProfileType.prototype.buttonClicked):
2445         (WebInspector.CPUProfileType.prototype.setRecordingProfile):
2446         (WebInspector.CPUProfile):
2447         (WebInspector.CPUProfile.prototype.get title):
2448         (WebInspector.CPUProfile.prototype.get uid):
2449         (WebInspector.CPUProfile.prototype.get head):
2450         (WebInspector.CPUProfile.prototype.createView):
2451         (WebInspector.CPUProfile.prototype.viewForProfile):
2452         * inspector/front-end/ProfilesPanel.js:
2453         (WebInspector.ProfileType):
2454         (WebInspector.ProfileType.prototype.get buttonTooltip):
2455         (WebInspector.ProfileType.prototype.get buttonStyle):
2456         (WebInspector.ProfileType.prototype.get buttonCaption):
2457         (WebInspector.ProfileType.prototype.get id):
2458         (WebInspector.ProfileType.prototype.get name):
2459         (WebInspector.ProfileType.prototype.buttonClicked):
2460         (WebInspector.ProfilesPanel):
2461         (WebInspector.ProfilesPanel.prototype.get statusBarItems.clickHandler):
2462         (WebInspector.ProfilesPanel.prototype.get statusBarItems):
2463         (WebInspector.ProfilesPanel.prototype.reset):
2464         (WebInspector.ProfilesPanel.prototype.registerProfileType):
2465         (WebInspector.ProfilesPanel.prototype._makeKey):
2466         (WebInspector.ProfilesPanel.prototype.addProfileHeader):
2467         (WebInspector.ProfilesPanel.prototype.showProfile):
2468         (WebInspector.ProfilesPanel.prototype.getProfileType):
2469         (WebInspector.ProfilesPanel.prototype.showProfileForURL):
2470         (WebInspector.ProfilesPanel.prototype.updateProfileTypeButtons):
2471         (WebInspector.ProfilesPanel.prototype.displayTitleForProfileLink):
2472         (WebInspector.ProfilesPanel.prototype.get searchableViews):
2473         (WebInspector.ProfilesPanel.prototype._updateInterface):
2474         * inspector/front-end/inspector.js:
2475         (WebInspector._createPanels):
2476         (WebInspector.documentClick.followLink):
2477         (WebInspector.documentClick):
2478         (WebInspector.addProfileHeader):
2479         (WebInspector.setRecordingProfile):
2480         (WebInspector.linkifyStringAsFragment):
2481         (WebInspector.showProfileForURL):
2482
2483 2009-10-15  Pavel Feldman  <pfeldman@chromium.org>
2484
2485         Reviewed by Timothy Hatcher.
2486
2487         Web Inspector: Enable inspector layout tests.
2488
2489         https://bugs.webkit.org/show_bug.cgi?id=30014
2490
2491         * inspector/InspectorController.cpp:
2492         (WebCore::InspectorController::evaluateForTestInFrontend):
2493
2494 2009-10-15  Philippe Normand  <pnormand@igalia.com>
2495
2496         Reviewed by Gustavo Noronha.
2497
2498         [GStreamer] READY state doesn't mean "enough data"
2499         https://bugs.webkit.org/show_bug.cgi?id=30003
2500
2501         STATE_READY means MediaPlayer::HaveNothing
2502
2503         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
2504         (WebCore::MediaPlayerPrivate::updateStates):
2505
2506 2009-10-15  Philippe Normand  <pnormand@igalia.com>
2507
2508         Reviewed by Gustavo Noronha.
2509
2510         https://bugs.webkit.org/show_bug.cgi?id=30002
2511
2512         implement cancelLoad
2513
2514         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
2515         (WebCore::MediaPlayerPrivate::cancelLoad):
2516
2517 2009-10-15  Sebastian Dröge  <sebastian.droege@collabora.co.uk>
2518
2519         Reviewed by Gustavo Noronha.
2520
2521         https://bugs.webkit.org/show_bug.cgi?id=30353
2522         
2523         Fix race condition, leading to a deadlock
2524
2525         * platform/graphics/gtk/VideoSinkGStreamer.cpp:
2526         (webkit_video_sink_timeout_func):
2527         (webkit_video_sink_render):
2528         (unlock_buffer_mutex):
2529         (webkit_video_sink_unlock):
2530         (webkit_video_sink_unlock_stop):
2531         (webkit_video_sink_stop):
2532         (webkit_video_sink_start):
2533         (webkit_video_sink_class_init):
2534         Fix race condition in unlock/render that would lead to deadlocks.
2535
2536 2009-10-15  Sebastian Dröge  <sebastian.droege@collabora.co.uk>
2537
2538         Reviewed by Gustavo Noronha.
2539
2540         https://bugs.webkit.org/show_bug.cgi?id=30374
2541         
2542         Check if caps are valid before parsing them
2543
2544         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
2545         (WebCore::MediaPlayerPrivate::duration):
2546         Check if caps are valid before parsing them in ::naturalSize().
2547         This prevents assertions if the natural size should be calculated
2548         before the video caps are negotiated.
2549
2550 2009-10-15  Philippe Normand  <pnormand@igalia.com>
2551
2552         Reviewed by Gustavo Noronha.
2553
2554         https://bugs.webkit.org/show_bug.cgi?id=30006
2555         [GStreamer] Unnecessary checks for Messages types in callbacks
2556
2557         refactored gst message callbacks into a single one
2558
2559         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
2560         (WebCore::mediaPlayerPrivateMessageCallback):
2561         (WebCore::do_gst_init):
2562         (WebCore::MediaPlayerPrivate::duration):
2563         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
2564
2565 2009-10-15  Shu Chang  <Chang.Shu@nokia.com>
2566
2567         Reviewed by Adele Peterson.
2568
2569         Anchor elements should be mouse focusable regardless isLink flag.
2570         https://bugs.webkit.org/show_bug.cgi?id=26856
2571
2572         * html/HTMLAnchorElement.cpp:
2573         * html/HTMLAnchorElement.h:
2574
2575 2009-10-15  Nikolas Zimmermann  <nzimmermann@rim.com>
2576
2577         Not reviewed. Sort XCode project file.
2578
2579         * WebCore.xcodeproj/project.pbxproj:
2580
2581 2009-10-15  Yury Semikhatsky  <yurys@chromium.org>
2582
2583         Reviewed by Dave Hyatt.
2584
2585         Return correct shorthand property name for 
2586         background-repeat-x, background-repeat-y, background-position-x,
2587         background-position-y, -webkit-mask-position-x, -webkit-mask-position-y,
2588         -webkit-mask-repeat-x, -webkit-mask-repeat-y.
2589
2590         https://bugs.webkit.org/show_bug.cgi?id=28972
2591
2592         Test: fast/backgrounds/repeat/background-repeat-shorthand.html
2593
2594         * css/CSSParser.cpp:
2595         (WebCore::CSSParser::parseValue):
2596
2597 2009-10-14  Mikhail Naganov  <mnaganov@chromium.org>
2598
2599         Reviewed by Pavel Feldman.
2600
2601         Web Inspector: Migrate profiles to the injected script-based schema.
2602
2603         https://bugs.webkit.org/show_bug.cgi?id=30328
2604
2605         * bindings/js/JSInspectorBackendCustom.cpp:
2606         * bindings/v8/custom/V8CustomBinding.h:
2607         * inspector/InspectorBackend.cpp:
2608         (WebCore::InspectorBackend::getProfileHeaders):
2609         (WebCore::InspectorBackend::getProfile):
2610         * inspector/InspectorBackend.h:
2611         * inspector/InspectorBackend.idl:
2612         * inspector/InspectorController.cpp:
2613         (WebCore::InspectorController::addProfile):
2614         (WebCore::InspectorController::getProfileHeaders):
2615         (WebCore::InspectorController::getProfile):
2616         (WebCore::InspectorController::createProfileHeader):
2617         * inspector/InspectorController.h:
2618         * inspector/InspectorFrontend.cpp:
2619         (WebCore::InspectorFrontend::addProfileHeader):
2620         (WebCore::InspectorFrontend::didGetProfileHeaders):
2621         (WebCore::InspectorFrontend::didGetProfile):
2622         * inspector/InspectorFrontend.h:
2623         * inspector/JavaScriptProfileNode.cpp:
2624         (WebCore::ProfileNodeClass):
2625         * inspector/front-end/ProfileView.js:
2626         (WebInspector.ProfileView.profileCallback):
2627         (WebInspector.ProfileView):
2628         (WebInspector.ProfileView.prototype._mouseDownInDataGrid):
2629         (WebInspector.ProfileView.prototype._assignParentsInProfile):
2630         * inspector/front-end/ProfilesPanel.js:
2631         (WebInspector.ProfilesPanel.prototype.addProfileHeader):
2632         * inspector/front-end/inspector.js:
2633         (WebInspector.addProfileHeader):
2634
2635 2009-10-14  Pavel Feldman  <pfeldman@chromium.org>
2636
2637         Reviewed by Timothy Hatcher.
2638
2639         Web Inspector: Create and update frontend script objects only when
2640         web inspector is visible.
2641
2642         https://bugs.webkit.org/show_bug.cgi?id=30376
2643
2644         * inspector/InspectorController.cpp:
2645         (WebCore::InspectorController::addConsoleMessage):
2646         (WebCore::InspectorController::populateScriptObjects):
2647         (WebCore::InspectorController::pruneResources):
2648         (WebCore::InspectorController::didCommitLoad):
2649         (WebCore::InspectorController::didLoadResourceFromMemoryCache):
2650         (WebCore::InspectorController::identifierForInitialRequest):
2651         (WebCore::InspectorController::mainResourceFiredDOMContentEvent):
2652         (WebCore::InspectorController::mainResourceFiredLoadEvent):
2653         (WebCore::InspectorController::willSendRequest):
2654         (WebCore::InspectorController::didReceiveResponse):
2655         (WebCore::InspectorController::didReceiveContentLength):
2656         (WebCore::InspectorController::didFinishLoading):
2657         (WebCore::InspectorController::didFailLoading):
2658         (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
2659         (WebCore::InspectorController::scriptImported):
2660         (WebCore::InspectorController::didOpenDatabase):
2661         (WebCore::InspectorController::didUseDOMStorage):
2662         (WebCore::InspectorController::evaluateForTestInFrontend):
2663
2664 2009-10-15  Joseph Pecoraro  <joepeck@webkit.org>
2665
2666         Fix Windows build.
2667
2668         * dom/Document.idl:
2669
2670 2009-10-14  Joseph Pecoraro  <joepeck@webkit.org>
2671
2672         Reviewed by Adam Barth.
2673
2674         [HTML5] Add document.head
2675         https://bugs.webkit.org/show_bug.cgi?id=30232
2676
2677         Test is fast/dom/document-head.html
2678
2679         * dom/Document.idl: added readonly attribute head
2680
2681 2009-10-14  Matt Mueller  <mattm@chromium.org>
2682
2683         Reviewed by Darin Adler.
2684
2685         Check FNonNeg after the unit switch to avoid valgrind uninitialised conditional reference in WebCore::CSSParser::validUnit.  See http://crbug.com/20939.
2686         https://bugs.webkit.org/show_bug.cgi?id=30347
2687         https://bugs.webkit.org/show_bug.cgi?id=22772
2688
2689         Covered by running LayoutTests/fast/css/invalid-percentage-property.html under valgrind.
2690
2691         * css/CSSParser.cpp:
2692         (WebCore::CSSParser::validUnit):
2693
2694 2009-10-14  Adam Barth  <abarth@webkit.org>
2695
2696         Reviewed by Sam Weinig.
2697
2698         Move scrolling code from FrameLoader to FrameView
2699         https://bugs.webkit.org/show_bug.cgi?id=30370
2700
2701         This code is about controlling the Frame's view, not about loading
2702         stuff into the frame.
2703
2704         * loader/FrameLoader.cpp:
2705         (WebCore::FrameLoader::finishedParsing):
2706         (WebCore::FrameLoader::scrollToAnchor):
2707         * page/FrameView.cpp:
2708         (WebCore::FrameView::scrollToFragment):
2709         (WebCore::FrameView::scrollToAnchor):
2710         * page/FrameView.h:
2711
2712 2009-10-14  Oliver Hunt  <oliver@apple.com>
2713
2714         Reviewed by Geoff Garen.
2715
2716         Make typeinfo flags default to false
2717         https://bugs.webkit.org/show_bug.cgi?id=30372
2718         
2719         Part 1. Reverse the HasStandardGetOwnPropertySlot flag.
2720
2721         * bindings/js/JSDOMBinding.h:
2722         (WebCore::DOMObjectWithGlobalPointer::createStructure):
2723         (WebCore::DOMConstructorObject::createStructure):
2724         * bindings/js/JSDOMWindowShell.h:
2725         (WebCore::JSDOMWindowShell::createStructure):
2726         * bindings/js/JSHTMLAllCollection.h:
2727         (WebCore::JSHTMLAllCollection::createStructure):
2728         * bindings/js/JSQuarantinedObjectWrapper.h:
2729         (WebCore::JSQuarantinedObjectWrapper::createStructure):
2730         * bindings/scripts/CodeGeneratorJS.pm:
2731         * bridge/objc/objc_runtime.h:
2732         (JSC::Bindings::ObjcFallbackObjectImp::createStructure):
2733         * bridge/runtime_array.h:
2734         (JSC::RuntimeArray::createStructure):
2735         * bridge/runtime_method.h:
2736         (JSC::RuntimeMethod::createStructure):
2737         * bridge/runtime_object.h:
2738         (JSC::RuntimeObjectImp::createStructure):
2739
2740 2009-10-14  Adam Barth  <abarth@webkit.org>
2741
2742         Reviewed by Darin Adler.
2743
2744         [XSSAuditor] Add an exception for local files
2745         https://bugs.webkit.org/show_bug.cgi?id=30352
2746
2747         Reduce XSS auditor false positives by always letting pages load scripts
2748         from their own host. We don't actually know of any false positives
2749         that this prevents, but it seems like a good idea.
2750
2751         One subtly is that we don't add this exception for scripts that have a
2752         query string because (1) URLs with query strings are more apt to
2753         confuse servers and (2) it is much less common to load scripts with a
2754         query string.
2755
2756         Tests: http/tests/security/xssAuditor/script-tag-with-source-same-host-with-query.html
2757                http/tests/security/xssAuditor/script-tag-with-source-same-host.html
2758
2759         * page/XSSAuditor.cpp:
2760         (WebCore::XSSAuditor::canLoadExternalScriptFromSrc):
2761
2762 2009-10-14  Nikolas Zimmermann  <nzimmermann@rim.com>
2763
2764         Reviewed by George Staikos.
2765
2766         Kill virtual contextElement() method spread all over SVG code
2767         https://bugs.webkit.org/show_bug.cgi?id=30183
2768
2769         Remove virtual contextElement() function from all SVG*Element classes, as all animated properties live in the
2770         SVG*Element classes now instead of the SVGFitToViewBox / SVGURIReference / SVGExternalResourcesRequired
2771         subclasses. This is a first step to working animVal support. More patches will follow that depend on this change.
2772
2773         Remove "This file is part of the KDE project" from several files, change my old mail adress wildfox -> zimmermann,
2774         and remove vim modelines on all files I touched. No change in functionality, thus no new tests.
2775
2776         * svg/SVGAElement.h: Remove virtual contextElement() method. Change OwnerType of ANIMATED_* macros to this class.
2777         * svg/SVGAltGlyphElement.h: Remove virtual contextElement() method.
2778         * svg/SVGAnimatedProperty.h:
2779         (WebCore::::synchronize):
2780         (WebCore::::startAnimation):
2781         (WebCore::::stopAnimation):
2782         * svg/SVGAnimationElement.h: Remove virtual contextElement() method. Change OwnerType of ANIMATED_* macros to this class.
2783         * svg/SVGCircleElement.h: Ditto.
2784         * svg/SVGClipPathElement.h: Ditto.
2785         * svg/SVGCursorElement.h: Ditto.
2786         * svg/SVGDefsElement.h: Ditto.
2787         * svg/SVGEllipseElement.h: Ditto.
2788         * svg/SVGExternalResourcesRequired.h: Remove pure-virtual contextElement() method.
2789         * svg/SVGFEImageElement.h: Remove virtual contextElement() method. Change OwnerType of ANIMATED_* macros to this class.
2790         * svg/SVGFELightElement.h: Remove virtual contextElement() method.
2791         * svg/SVGFEMergeNodeElement.h: Ditto.
2792         * svg/SVGFilterElement.h: Remove virtual contextElement() method. Change OwnerType of ANIMATED_* macros to this class.
2793         * svg/SVGFilterPrimitiveStandardAttributes.h: Remove virtual contextElement() method.
2794         * svg/SVGFitToViewBox.cpp:
2795         (WebCore::SVGFitToViewBox::parseViewBox): Add Document* parameter - we used to fetch the Document pointer from the context element.
2796         (WebCore::SVGFitToViewBox::parseMappedAttribute): Ditto.
2797         * svg/SVGFitToViewBox.h: Remove pure-virtual contextElement() method.
2798         * svg/SVGFontElement.h: Remove virtual contextElement() method. Change OwnerType of ANIMATED_* macros to this class.
2799         * svg/SVGForeignObjectElement.h: Ditto.
2800         * svg/SVGGElement.h: Ditto.
2801         * svg/SVGGradientElement.h: Ditto.
2802         * svg/SVGImageElement.h: Ditto.
2803         * svg/SVGLineElement.h: Ditto.
2804         * svg/SVGMPathElement.h: Ditto. Fix license indention.
2805         * svg/SVGMarkerElement.cpp:
2806         (WebCore::SVGMarkerElement::parseMappedAttribute): Pass document() to SVGFitToViewBox::parseMappedAttribute().
2807         * svg/SVGMarkerElement.h: Remove virtual contextElement() method. Change OwnerType of ANIMATED_* macros to this class.
2808         * svg/SVGMaskElement.h: Ditto.
2809         * svg/SVGPathElement.h: Ditto.
2810         * svg/SVGPatternElement.cpp:
2811         (WebCore::SVGPatternElement::parseMappedAttribute): Pass document() to SVGFitToViewBox::parseMappedAttribute().
2812         * svg/SVGPatternElement.h: Remove virtual contextElement() method. Change OwnerType of ANIMATED_* macros to this class.
2813         * svg/SVGPolyElement.cpp:
2814         (WebCore::SVGPolyElement::updateAnimatedSVGAttribute): synchronizeProperty<...>() has been renamed to PropertySynchronizer<...>::synchronize().
2815         * svg/SVGPolyElement.h: Remove virtual contextElement() method. Change OwnerType of ANIMATED_* macros to this class.
2816         * svg/SVGRectElement.h: Ditto.
2817         * svg/SVGSVGElement.cpp:
2818         (WebCore::SVGSVGElement::parseMappedAttribute): Pass document() to SVGFitToViewBox::parseMappedAttribute().
2819         * svg/SVGSVGElement.h: Remove virtual contextElement() method. Change OwnerType of ANIMATED_* macros to this class.
2820         * svg/SVGScriptElement.h: Ditto.
2821         * svg/SVGSwitchElement.h: Ditto.
2822         * svg/SVGSymbolElement.cpp:
2823         (WebCore::SVGSymbolElement::parseMappedAttribute): Pass document() to SVGFitToViewBox::parseMappedAttribute().
2824         * svg/SVGSymbolElement.h: Remove virtual contextElement() method. Change OwnerType of ANIMATED_* macros to this class.
2825         * svg/SVGTRefElement.h: Remove virtual contextElement() method.
2826         * svg/SVGTextContentElement.h: Remove virtual contextElement() method. Change OwnerType of ANIMATED_* macros to this class.
2827         * svg/SVGTextPathElement.h: Remove virtual contextElement() method.
2828         * svg/SVGUseElement.h: Remove virtual contextElement() method. Change OwnerType of ANIMATED_* macros to this class.
2829         * svg/SVGViewElement.cpp:
2830         (WebCore::SVGViewElement::parseMappedAttribute): Pass document() to SVGFitToViewBox::parseMappedAttribute().
2831         * svg/SVGViewElement.h: Remove virtual contextElement() method. Change OwnerType of ANIMATED_* macros to this class.
2832         * svg/SVGViewSpec.cpp:
2833         (WebCore::SVGViewSpec::setViewBoxString): Pass document() to SVGFitToViewBox::parseMappedAttribute().
2834         (WebCore::SVGViewSpec::parseViewSpec): Ditto.
2835         * svg/SVGViewSpec.h: Devirtualize contextElement() method, it's the only place where contextElement() remains needed.
2836
2837 2009-10-14  Dirk Schulze  <krit@webkit.org>
2838
2839         Reviewed by Nikolas Zimmermann.
2840
2841         SVG Masking with wrong offset
2842         [https://bugs.webkit.org/show_bug.cgi?id=30325]
2843
2844         SVGMaskElement moves the mask image graphics context to the wrong location.
2845         In objectBoundingBoxMode the maskDestRect gets translated. This transformation
2846         is not used in the later calculation. Fix by consistenly calculating the translation
2847         offsets from the final mask destination rect.
2848
2849         Test: svg/custom/mask-with-default-value.svg
2850
2851         * svg/SVGMaskElement.cpp:
2852         (WebCore::SVGMaskElement::drawMaskerContent):
2853
2854 2009-10-14  Kevin Decker  <kdecker@apple.com>
2855
2856         Rubberstamped by Jon Honeycutt.
2857         
2858         Export a few more showSubstituteImage() related methods.
2859         
2860         * WebCore.base.exp:
2861         * WebCore.xcodeproj/project.pbxproj:
2862
2863 2009-10-14  Evan Martin  <evan@chromium.org>
2864
2865         Reviewed by Darin Adler.
2866
2867         Stringify CSS units manually (without printf) to make the formatting
2868         locale-insensitive and obey CSS spec with respect to large values.
2869         
2870         https://bugs.webkit.org/show_bug.cgi?id=18994
2871
2872         * css/CSSPrimitiveValue.cpp:
2873         (WebCore::appendCSSDouble):
2874         (WebCore::formatWithUnits):
2875         (WebCore::CSSPrimitiveValue::cssText):
2876
2877 2009-10-14  Mark Seaborn  <mseaborn@google.com>
2878
2879         Reviewed by Darin Adler.
2880
2881         Check error return value in Perl build script
2882         https://bugs.webkit.org/show_bug.cgi?id=30316
2883
2884         * css/makevalues.pl: Die if gperf fails.
2885
2886 2009-10-14  Dirk Schulze  <krit@webkit.org>
2887
2888         Reviewed by Nikolas Zimmermann.
2889
2890         SVG wrong filterRegions for userSpaceOnUse and percentage values
2891         [https://bugs.webkit.org/show_bug.cgi?id=30330]
2892
2893         Some clean-up of the SVG filter calculation code. This clean-up
2894         also fixes the problem with percentage and userSpaceInUse mode.
2895
2896         Test: svg/filters/subRegion-in-userSpace.svg
2897
2898         * platform/graphics/filters/FilterEffect.cpp:
2899         (WebCore::FilterEffect::FilterEffect):
2900         * platform/graphics/filters/FilterEffect.h:
2901         * rendering/SVGRenderSupport.cpp:
2902         (WebCore::SVGRenderBase::filterBoundingBoxForRenderer):
2903         * svg/SVGFilterElement.cpp:
2904         (WebCore::SVGFilterElement::buildFilter):
2905         (WebCore::SVGFilterElement::canvasResource):
2906         * svg/SVGFilterElement.h:
2907         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
2908         (WebCore::SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
2909         * svg/graphics/SVGResourceFilter.cpp:
2910         (WebCore::SVGResourceFilter::SVGResourceFilter):
2911         (WebCore::SVGResourceFilter::~SVGResourceFilter):
2912         (WebCore::SVGResourceFilter::addFilterEffect):
2913         (WebCore::SVGResourceFilter::prepareFilter):
2914         * svg/graphics/SVGResourceFilter.h:
2915         (WebCore::SVGResourceFilter::create):
2916         * svg/graphics/filters/SVGFilter.cpp:
2917         (WebCore::SVGFilter::SVGFilter):
2918         (WebCore::SVGFilter::calculateEffectSubRegion):
2919         (WebCore::SVGFilter::create):
2920         * svg/graphics/filters/SVGFilter.h:
2921
2922 2009-10-14  Chris Marrin  <cmarrin@apple.com>
2923
2924         The last change fixed the problem, removing diagnostic printfs.
2925
2926         * platform/graphics/mac/GraphicsContext3DMac.cpp:
2927         (WebCore::GraphicsContext3D::GraphicsContext3D):
2928
2929 2009-10-14  Kevin Ollivier  <kevino@theolliviers.com>
2930
2931         CURL build fix for versions < 7.18.
2932
2933         * platform/network/curl/ResourceHandleCurl.cpp:
2934         (WebCore::ResourceHandle::setDefersLoading):
2935         * platform/network/curl/ResourceHandleManager.cpp:
2936         (WebCore::ResourceHandleManager::initializeHandle):
2937
2938 2009-10-14  Chris Marrin  <cmarrin@apple.com>
2939
2940         One more round of changes to figure out why the webgl 
2941         tests are crashing on the build bot. Here I am trying
2942         to see if we can create a software renderer. I am also
2943         printing the found pixel formats.
2944
2945         * platform/graphics/mac/GraphicsContext3DMac.cpp:
2946         (WebCore::GraphicsContext3D::GraphicsContext3D):
2947
2948 2009-10-14  Yael Aharon  <yael.aharon@nokia.com>
2949  
2950         Reviewed by Simon Hausmann.
2951  
2952         Enabling NPAPI plugin support on Qt Webkit for S60 platform
2953         https://bugs.webkit.org/show_bug.cgi?id=29302
2954
2955         Also implemented by Mahesh Kulkarni<mahesh.kulkarni@nokia.com>, 
2956         Rohini Ananth <rohini.ananth@nokia.com> and help from Norbert Lesr
2957         <norbert.leser@nokia.com>
2958          
2959         * WebCore.pro:
2960         Enabling ENABLE_NETSCAPE_PLUGIN_API for S60 and added S60 specific 
2961         new plugin files to be compiled under symbian: macro
2962
2963         * bridge/npapi.h:
2964         Added NPEvent and NPRegion definition for Symbian
2965
2966         * plugins/PluginPackage.h:
2967         Added S60 specific plugin interface and plugin loader variables
2968         * plugins/PluginPackage.cpp:
2969         (WebCore::PluginPackage::unload): Added !PLATFORM(SYMBIAN) macro.
2970         Default implementation to be used only for non-symbian platform
2971         * plugins/PluginDatabase.cpp:
2972         Macro !SYMBIAN checking
2973         * plugins/PluginView.h:
2974         Add Symbian to platforms that support setNPWindowIfNeeded
2975         * plugins/PluginView.cpp:
2976         (WebCore::PluginView::setFrameRect): Add Symbian to platforms that
2977         call setNPWindowRect from setFrameRect
2978          
2979         Added folder 'symbian' which contains implementation files for S60
2980         platform-specific NPAPI plugin functionality, under /plugins folder
2981         * plugins/symbian
2982         * plugins/symbian/npinterface.h:
2983         Plugin Interface to be implemented by S60 NPAPI plugins 
2984         * plugins/symbian/PluginContainerSymbian.h:
2985         * plugins/symbian/PluginContainerSymbian.cpp:
2986         * plugins/symbian/PluginDatabaseSymbian.cpp:
2987         * plugins/symbian/PluginViewSymbian.cpp:
2988         * plugins/symbian/PluginPackageSymbian.cpp:
2989
2990 2009-10-14  Chris Marrin  <cmarrin@apple.com>
2991
2992         More changes to figure out why the webgl tests are crashing on the build bot.
2993
2994         * platform/graphics/mac/GraphicsContext3DMac.cpp:
2995         (WebCore::GraphicsContext3D::GraphicsContext3D):
2996
2997 2009-10-14  Victor Wang  <victorw@chromium.org>
2998
2999         Reviewed by David Hyatt.
3000
3001         Round non-integer line height values.
3002
3003         Change webkit to rounding non-integer line height values
3004         instead of truncating them. This fixes a layout test
3005         failure on Windows and matches the calculation in IE and Firefox. 
3006
3007         https://bugs.webkit.org/show_bug.cgi?id=24434
3008
3009         Test: fast/css/line-height-rounding.html
3010               fast/forms/textarea-scrollbar-height.htm
3011
3012         * css/CSSComputedStyleDeclaration.cpp:
3013         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3014         * rendering/InlineFlowBox.cpp:
3015         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
3016         * rendering/RenderBR.cpp:
3017         (WebCore::RenderBR::lineHeight):
3018         * rendering/style/RenderStyle.h:
3019         (WebCore::InheritedFlags::computedLineHeight):
3020
3021 2009-10-13  Kelly Norton  <knorton@google.com>
3022
3023         Reviewed by Pavel Feldman.
3024
3025         Removes the persistent setting for InspectorTimelineAgent and renames timeline related
3026         interfaces to be more consistent with the JavaScript profiler.
3027
3028         * inspector/InspectorBackend.cpp:
3029         (WebCore::InspectorBackend::startTimelineProfiler):
3030         (WebCore::InspectorBackend::stopTimelineProfiler):
3031         (WebCore::InspectorBackend::timelineProfilerEnabled):
3032         * inspector/InspectorBackend.h:
3033         * inspector/InspectorBackend.idl:
3034         * inspector/InspectorController.cpp:
3035         (WebCore::InspectorController::setFrontendProxyObject):
3036         (WebCore::InspectorController::startTimelineProfiler):
3037         (WebCore::InspectorController::stopTimelineProfiler):
3038         (WebCore::InspectorController::timelineProfilerEnabled):
3039         * inspector/InspectorController.h:
3040         * inspector/InspectorFrontend.cpp:
3041         (WebCore::InspectorFrontend::timelineProfilerWasStarted):
3042         (WebCore::InspectorFrontend::timelineProfilerWasStopped):
3043         * inspector/InspectorFrontend.h:
3044         * inspector/front-end/TimelineAgent.js:
3045         (WebInspector.timelineProfilerWasStarted):
3046         (WebInspector.timelineProfilerWasStopped):
3047
3048 2009-10-01  Yong Li  <yong.li@torchmobile.com>
3049
3050         Reviewed by Adele Peterson.
3051
3052         Fix crash when loading invalid image data
3053         https://bugs.webkit.org/show_bug.cgi?id=29980
3054
3055         * rendering/RenderImage.cpp:
3056         (WebCore::RenderImage::setImageSizeForAltText):
3057
3058 2009-10-09  Stephen White  <senorblanco@chromium.org>
3059
3060         Reviewed by Eric Seidel.
3061
3062         Fix for NULL ptr deref in canvas's toDataURL().
3063         https://bugs.webkit.org/show_bug.cgi?id=30254
3064
3065         Test: fast/canvas/canvas-toDataURL-crash.html
3066
3067         * html/HTMLCanvasElement.cpp:
3068         (WebCore::HTMLCanvasElement::toDataURL):
3069
3070 2009-10-14  Pavel Feldman  <pfeldman@chromium.org>
3071
3072         Not reviewed, reverting r49558 since it broke profiler tests.
3073
3074         https://bugs.webkit.org/show_bug.cgi?id=30328
3075
3076         * bindings/js/JSInspectorBackendCustom.cpp:
3077         * bindings/v8/custom/V8CustomBinding.h:
3078         * inspector/InspectorBackend.cpp:
3079         (WebCore::InspectorBackend::getProfileHeaders):
3080         (WebCore::InspectorBackend::getProfile):
3081         * inspector/InspectorBackend.h:
3082         * inspector/InspectorBackend.idl:
3083         * inspector/InspectorController.cpp:
3084         (WebCore::InspectorController::addProfile):
3085         (WebCore::InspectorController::getProfileHeaders):
3086         (WebCore::InspectorController::getProfile):
3087         (WebCore::InspectorController::createProfileHeader):
3088         * inspector/InspectorController.h:
3089         * inspector/InspectorFrontend.cpp:
3090         (WebCore::InspectorFrontend::addProfileHeader):
3091         (WebCore::InspectorFrontend::didGetProfileHeaders):
3092         (WebCore::InspectorFrontend::didGetProfile):
3093         * inspector/InspectorFrontend.h:
3094         * inspector/JavaScriptProfileNode.cpp:
3095         (WebCore::ProfileNodeClass):
3096         * inspector/front-end/ProfileView.js:
3097         (WebInspector.ProfileView.profileCallback):
3098         (WebInspector.ProfileView):
3099         (WebInspector.ProfileView.prototype._mouseDownInDataGrid):
3100         (WebInspector.ProfileView.prototype._assignParentsInProfile):
3101         * inspector/front-end/ProfilesPanel.js:
3102         (WebInspector.ProfilesPanel.prototype.addProfileHeader):
3103         * inspector/front-end/inspector.js:
3104         (WebInspector.addProfileHeader):
3105
3106 2009-10-13  Holger Hans Peter Freyther  <zecke@selfish.org>
3107
3108         Reviewed by Simon Hausmann.
3109
3110         ImageDecoderQt: Minor tweaks to the decoder
3111
3112         - Only cache the data when we start to use it.
3113         - Start with a repetition count of none for normal images.
3114         - Do not use canRead as this will trigger parsing of the full image
3115         - Cope with a GIF failing to decode the first frame, do not
3116           set m_failed to true if decoding the first frame failed
3117         - Inform the QImageReader about the format that was detected
3118         - Always create a ImageDecoderQt when when we have more
3119         than four byte.
3120
3121
3122         * platform/graphics/qt/ImageDecoderQt.cpp:
3123         (WebCore::ImageDecoder::create): Always create QImageReader for a significant speed up
3124         (WebCore::ImageDecoderQt::ImageDecoderQt): Initialize m_repetitionCount to cAnimationNone
3125         (WebCore::ImageDecoderQt::setData): Only call ImageDecoder::setData when everything has been received
3126         (WebCore::ImageDecoderQt::isSizeAvailable): Do not check m_failed twice.
3127         (WebCore::ImageDecoderQt::filenameExtension): Convert from QByteArray to String
3128         (WebCore::ImageDecoderQt::frameBufferAtIndex): Check for m_failed before trying to decode
3129         (WebCore::ImageDecoderQt::internalDecodeSize): Fail if the size is QSize()
3130         (WebCore::ImageDecoderQt::forceLoadEverything): Handle the case were decoding the first frame fails
3131         * platform/graphics/qt/ImageDecoderQt.h: Change the m_format type
3132
3133 2009-10-14  Mikhail Naganov  <mnaganov@chromium.org>
3134
3135         Reviewed by Pavel Feldman.
3136
3137         Web Inspector: Migrate profiles to the injected script-based schema.
3138
3139         https://bugs.webkit.org/show_bug.cgi?id=30328
3140
3141         * bindings/js/JSInspectorBackendCustom.cpp:
3142         * bindings/v8/custom/V8CustomBinding.h:
3143         * inspector/InspectorBackend.cpp:
3144         (WebCore::InspectorBackend::getProfileHeaders):
3145         (WebCore::InspectorBackend::getProfile):
3146         * inspector/InspectorBackend.h:
3147         * inspector/InspectorBackend.idl:
3148         * inspector/InspectorController.cpp:
3149         (WebCore::InspectorController::addProfile):
3150         (WebCore::InspectorController::getProfileHeaders):
3151         (WebCore::InspectorController::getProfile):
3152         (WebCore::InspectorController::createProfileHeader):
3153         * inspector/InspectorController.h:
3154         * inspector/InspectorFrontend.cpp:
3155         (WebCore::InspectorFrontend::addProfileHeader):
3156         (WebCore::InspectorFrontend::didGetProfileHeaders):
3157         (WebCore::InspectorFrontend::didGetProfile):
3158         * inspector/InspectorFrontend.h:
3159         * inspector/JavaScriptProfileNode.cpp:
3160         (WebCore::ProfileNodeClass):
3161         * inspector/front-end/ProfileView.js:
3162         (WebInspector.ProfileView.profileCallback):
3163         (WebInspector.ProfileView):
3164         (WebInspector.ProfileView.prototype._mouseDownInDataGrid):
3165         (WebInspector.ProfileView.prototype._assignParentsInProfile):
3166         * inspector/front-end/ProfilesPanel.js:
3167         (WebInspector.ProfilesPanel.prototype.addProfileHeader):
3168         * inspector/front-end/inspector.js:
3169         (WebInspector.addProfileHeader):
3170
3171 2009-10-13  Yury Semikhatsky  <yurys@chromium.org>
3172
3173         Reviewed by Pavel Feldman.
3174
3175         Don't collect call frame properties until they're needed for completion.
3176
3177         https://bugs.webkit.org/show_bug.cgi?id=30334
3178
3179         * inspector/front-end/ConsoleView.js:
3180         (WebInspector.ConsoleView.prototype.completions):
3181         * inspector/front-end/InjectedScript.js:
3182         (InjectedScript.getCompletions): if call frame id is specified and the expression is empty collect frame properties.
3183         (InjectedScript.CallFrameProxy.prototype._wrapScopeChain): don't send call frame properties until they're needed.
3184         * inspector/front-end/ScriptsPanel.js:
3185
3186 >>>>>>> .r49765
3187 2009-10-13  Yongjun Zhang  <yongjun.zhang@nokia.com>
3188
3189         Reviewed by Ariya Hidayat.
3190
3191         https://bugs.webkit.org/show_bug.cgi?id=29106
3192         [Qt] make CachedResourceHandle.h compile in winscw Symbian compiler.
3193
3194         Don't inline constructor CachedResourceHandle<T>(R*) to stop winscw
3195         compiler aggressively resolve inheritance of class R.  
3196         
3197         The winscw compiler bug is reported at:
3198         https://xdabug001.ext.nokia.com/bugzilla/show_bug.cgi?id=9812.
3199         
3200         The change should be reverted when the above bug is fixed in winscw compiler.
3201
3202         * loader/CachedResourceHandle.h:
3203         (WebCore::::CachedResourceHandle):
3204
3205 2009-10-13  Dimitri Glazkov  <dglazkov@chromium.org>
3206
3207         No review, rolling out r49554, because it broke Win and Chromium builds.
3208         http://trac.webkit.org/changeset/49554
3209
3210         * css/CSSPrimitiveValue.cpp:
3211         (WebCore::CSSPrimitiveValue::cssText):
3212
3213 2009-10-13  Evan Martin  <evan@chromium.org>
3214
3215         Reviewed by Adam Barth.
3216
3217         Stringify CSS units manually (without printf) to make the formatting
3218         locale-insensitive and obey CSS spec with respect to large values.
3219         
3220         https://bugs.webkit.org/show_bug.cgi?id=18994
3221
3222         * css/CSSPrimitiveValue.cpp:
3223         (WebCore::appendCSSDouble):
3224         (WebCore::formatWithUnits):
3225         (WebCore::CSSPrimitiveValue::cssText):
3226
3227 2009-10-13  Evan Martin  <evan@chromium.org>
3228
3229         Reviewed by David Levin.
3230
3231         Make grippy lines vertical on horizontal scrollbars in Linux Chrome.
3232         While we're rebaselining scrollbars, fix an off by one in the vertical
3233         scrollbar rendering too.
3234
3235         https://bugs.webkit.org/show_bug.cgi?id=30319
3236
3237         Tests: this is covered by every pixel test involving scrollbars.
3238
3239         * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
3240         (WebCore::ScrollbarThemeChromiumLinux::paintThumb):
3241
3242 2009-10-13  Sam Weinig  <sam@webkit.org>
3243
3244         Reviewed by David Hyatt.
3245
3246         Fix issue where clientX and clientY on MouseEvents were wrong when
3247         the page was zoomed and scrolled.
3248
3249         Test: fast/events/clientXY-in-zoom-and-scroll.html
3250
3251         * dom/MouseRelatedEvent.cpp:
3252         (WebCore::contentsX): Take page zoom into account.
3253         (WebCore::contentsY): Ditto.
3254
3255 2009-10-13  Dave Hyatt  <hyatt@apple.com>
3256
3257         Reviewed by Adam Roben.
3258
3259         Change the order of arguments on some of the user stylesheet/script functions.  Split the removal functions
3260         out into separate ones for scripts and stylesheets.
3261
3262         * WebCore.base.exp:
3263         * page/PageGroup.cpp:
3264         (WebCore::PageGroup::addUserScriptToWorld):
3265         (WebCore::PageGroup::addUserStyleSheetToWorld):
3266         (WebCore::PageGroup::removeUserScriptFromWorld):
3267         (WebCore::PageGroup::removeUserStyleSheetFromWorld):
3268         (WebCore::PageGroup::removeUserScriptsFromWorld):
3269         (WebCore::PageGroup::removeUserStyleSheetsFromWorld):
3270         * page/PageGroup.h:
3271         (WebCore::PageGroup::userScripts):
3272         (WebCore::PageGroup::userStyleSheets):
3273
3274 2009-10-13  Evan Martin  <evan@chromium.org>
3275
3276         Reviewed by Dmitry Titov.
3277
3278         Chrome's "Skia" theme paints select controls backwards in RTL.
3279
3280         https://bugs.webkit.org/show_bug.cgi?id=30320
3281
3282         Test: fast/text/international/bidi-menulist.html
3283         (The test is about something else, but it includes RTL selects.)
3284
3285         * rendering/RenderThemeChromiumSkia.cpp:
3286         (WebCore::RenderThemeChromiumSkia::paintMenuList): flip the arrow position in RTL case.
3287
3288 2009-10-13  Dmitry Titov  <dimich@chromium.org>
3289
3290         Reviewed by Alexey Proskuryakov.
3291
3292         https://bugs.webkit.org/show_bug.cgi?id=30318
3293         ScriptExecutionContext is not anymore needed to create an EventListener - remove old code.
3294         It's a followup to r48884. It removed the need to pass the ScritpExecutionContext
3295         into EventListener constructor but did not remove the code pulling ScriptExecutionContext.
3296
3297         Tests:
3298         Test adds event listener to a DocumentType Node which is created without a document
3299         and then dispatches the event after attaching a node to the tree. Event
3300         should fire when node is attached to the tree.
3301
3302         * fast/events/add-event-without-document-expected.txt: Added.
3303         * fast/events/add-event-without-document.html: Added.
3304
3305         All changes in files below are the same - remove the code that calls
3306         EventTarget::scriptExecutionContext and checks it for NULL.
3307
3308         * bindings/js/JSAbstractWorkerCustom.cpp:
3309         (WebCore::JSAbstractWorker::addEventListener):
3310         (WebCore::JSAbstractWorker::removeEventListener):
3311         * bindings/js/JSDOMApplicationCacheCustom.cpp:
3312         (WebCore::JSDOMApplicationCache::addEventListener):
3313         (WebCore::JSDOMApplicationCache::removeEventListener):
3314         * bindings/js/JSDesktopNotificationsCustom.cpp:
3315         (WebCore::JSNotification::addEventListener):
3316         (WebCore::):
3317         * bindings/js/JSEventSourceCustom.cpp:
3318         (WebCore::JSEventSource::addEventListener):
3319         (WebCore::JSEventSource::removeEventListener):
3320         * bindings/js/JSMessagePortCustom.cpp:
3321         (WebCore::JSMessagePort::addEventListener):
3322         (WebCore::JSMessagePort::removeEventListener):
3323         * bindings/js/JSNodeCustom.cpp:
3324         (WebCore::JSNode::addEventListener):
3325         (WebCore::JSNode::removeEventListener):
3326         * bindings/js/JSSVGElementInstanceCustom.cpp:
3327         (WebCore::JSSVGElementInstance::addEventListener):
3328         (WebCore::JSSVGElementInstance::removeEventListener):
3329         * bindings/js/JSXMLHttpRequestCustom.cpp:
3330         (WebCore::JSXMLHttpRequest::addEventListener):
3331         (WebCore::JSXMLHttpRequest::removeEventListener):
3332         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
3333         (WebCore::JSXMLHttpRequestUpload::addEventListener):
3334         (WebCore::JSXMLHttpRequestUpload::removeEventListener):
3335         * bindings/js/JSWebSocketCustom.cpp:
3336         (WebCore::JSWebSocket::addEventListener):
3337         (WebCore::JSWebSocket::removeEventListener):
3338
3339 2009-10-13  Drew Wilson  <atwilson@atwilson-macpro.local>
3340
3341         Reviewed by David Levin.
3342
3343         Enable SHARED_WORKERS for Chromium
3344         https://bugs.webkit.org/show_bug.cgi?id=30289
3345
3346         Cleaned up bitrot in SharedWorker V8 bindings.
3347
3348         * WebCore.gypi:
3349         Removed default implementation of SharedWorkerRepository so Chromium can provide its own.
3350         * bindings/v8/DerivedSourcesAllInOne.cpp:
3351         Added V8SharedWorkerContext.cpp.
3352         * bindings/v8/V8DOMWrapper.cpp:
3353         (WebCore::V8DOMWrapper::getTemplate):
3354         Added case statements for SHAREDWORKER and SHAREDWORKERCONTEXT.
3355         * bindings/v8/V8Index.cpp:
3356         Now includes V8SharedWorkerContext.h to allow supporting SharedWorkers.
3357         * bindings/v8/V8Index.h:
3358         Added definition for SHAREDWORKERCONTEXT wrapper.
3359         * bindings/v8/WorkerContextExecutionProxy.cpp:
3360         Added includes for SharedWorker.h and SharedWorkerContext.h.
3361         * bindings/v8/custom/V8CustomBinding.h:
3362         Reorganized Worker field indexes to be clearer, and fixed mismatch in worker field index.
3363         Also added field indexes for SharedWorkers.
3364         * bindings/v8/custom/V8DOMWindowCustom.cpp:
3365         (WebCore::ACCESSOR_RUNTIME_ENABLER):
3366         Added runtime enabler for the SharedWorker constructor.
3367         * bindings/v8/custom/V8SharedWorkerCustom.cpp:
3368         (WebCore::CALLBACK_FUNC_DECL):
3369         Cleaned up bitrot (various APIs have changed since this file was written).
3370         * page/DOMWindow.idl:
3371         Added EnabledAtRuntime flag to window.SharedWorker.
3372
3373 2009-10-13  Alexey Proskuryakov  <ap@apple.com>
3374
3375         Reviewed by Brady Eidson.
3376
3377         https://bugs.webkit.org/show_bug.cgi?id=30345
3378         HTTP tests for credential handling fail on Tiger
3379
3380         We cannot prevent NSURLConnection from doing its credentil handling on Tiger anyway; so
3381         let it do its work without intervention. Once again, we pass explicitly passed credentials
3382         in URL, fixing regressions from Safari 3.
3383
3384         * platform/network/mac/ResourceHandleMac.mm:
3385         (WebCore::ResourceHandle::start):
3386         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
3387         (WebCore::ResourceHandle::receivedCredential):
3388
3389 2009-10-13  Roland Steiner  <rolandsteiner@google.com>
3390
3391         Reviewed by Adam Barth.
3392
3393         Bug 28964 -  [Chromium] ChromiumDataObject should have getter/setter interface
3394
3395         Reworked and added to the getter/setter interface in ChromiumDataObject:
3396         - added contains...() methods to just query the state
3397         - added containsValid...URL() methods for URL data members
3398         - removed takeFileNames() as this was too type-dependent
3399         - changed return type of fileNames() to Vector<String>
3400         - added interface methods to allow appending to and iteration over file names
3401
3402         No new tests (no functional behavior changed).
3403
3404         * platform/chromium/ChromiumDataObject.h:
3405         (WebCore::ChromiumDataObject::containsMainURL):
3406         (WebCore::ChromiumDataObject::containsValidMainURL):
3407         (WebCore::ChromiumDataObject::containsMainURLTitle):
3408         (WebCore::ChromiumDataObject::containsTextPlain):
3409         (WebCore::ChromiumDataObject::containsTextHTML):
3410         (WebCore::ChromiumDataObject::containsHTMLBaseURL):
3411         (WebCore::ChromiumDataObject::containsValidHTMLBaseURL):
3412         (WebCore::ChromiumDataObject::containsContent):
3413         (WebCore::ChromiumDataObject::containsContentFileExtension):
3414         (WebCore::ChromiumDataObject::containsContentFileName):
3415         (WebCore::ChromiumDataObject::setContentFileName):
3416         (WebCore::ChromiumDataObject::containsFileNames):
3417         (WebCore::ChromiumDataObject::fileNames):
3418         (WebCore::ChromiumDataObject::clearFileNames):
3419         (WebCore::ChromiumDataObject::countFileNames):
3420         (WebCore::ChromiumDataObject::fileNameAt):
3421         (WebCore::ChromiumDataObject::setFileNames):
3422         (WebCore::ChromiumDataObject::appendToFileNames):
3423         (WebCore::ChromiumDataObject::popFileName):
3424
3425 2009-10-13  Simon Fraser  <simon.fraser@apple.com>
3426
3427         Temporary debugging changes to figure out why the webgl tests are crashing on the build bot.
3428
3429         * platform/graphics/mac/GraphicsContext3DMac.cpp:
3430         (WebCore::GraphicsContext3D::GraphicsContext3D):
3431
3432 2009-10-13  Simon Fraser  <simon.fraser@apple.com>
3433
3434         Reviewed by Dan Bernstein.
3435
3436         Visibility:visible inside a compositing layer doesn't make the element visible
3437         https://bugs.webkit.org/show_bug.cgi?id=30339
3438         
3439         When deciding if a layer had any renderable content, RenderLayerBacking::paintIntoLayer()
3440         only consulted hasVisibleContent(), which does not take into a account child layers which
3441         may be visible. We also have to consult hasVisibleDescendant() as well.
3442
3443         Test: compositing/compositing-visible-descendant.html
3444
3445         * rendering/RenderLayer.h:
3446         (WebCore::RenderLayer::hasVisibleDescendant):
3447         * rendering/RenderLayerBacking.cpp:
3448         (WebCore::RenderLayerBacking::paintIntoLayer):
3449
3450 2009-10-13  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
3451
3452         Reviewed by Simon Hausmann.
3453
3454         Refactor ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH
3455         https://bugs.webkit.org/show_bug.cgi?id=30278
3456
3457         Move the definition of ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH 
3458         from the make system into common code.
3459
3460         Enable ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH if NETSCAPE_PLUGIN_API 
3461         support is not enabled.
3462
3463         Remove notImplemented() from PluginPackageNone.cpp and 
3464         PluginDataNone.cpp make them just empty functions.
3465
3466         * GNUmakefile.am:
3467         * WebCore.pro:
3468         * plugins/PluginDataNone.cpp:
3469         (WebCore::PluginData::initPlugins):
3470         (WebCore::PluginData::refresh):
3471         * plugins/PluginPackageNone.cpp:
3472         (WebCore::PluginPackage::determineQuirks):
3473         (WebCore::PluginPackage::fetchInfo):
3474         (WebCore::PluginPackage::load):
3475
3476 2009-10-13  Alexey Proskuryakov  <ap@apple.com>
3477
3478         Reviewed by Dan Bernstein.
3479
3480         https://bugs.webkit.org/show_bug.cgi?id=30150
3481         <rdar://problem/7283540> REGRESSION: Crash when accessing clipboardData.types
3482
3483         Test: editing/pasteboard/crash-accessing-clipboardData-types.html
3484
3485         * platform/mac/ClipboardMac.mm: (WebCore::addHTMLClipboardTypesForCocoaType): The String
3486         class doesn't have operator bool, it's operator NSString* that is invoked instead, and it
3487         converts null strings to non-null @"".
3488
3489 2009-10-13  Drew Wilson  <atwilson@atwilson-macpro.local>
3490
3491         Reviewed by Dimitri Glazkov.
3492
3493         window attributes (like localStorage) that are disabled at runtime are still visible
3494         https://bugs.webkit.org/show_bug.cgi?id=30240
3495
3496         Adding codegen/bindings to support runtime disabling of attributes.
3497
3498         No new tests (only supported by chrome currently)
3499
3500         * bindings/scripts/CodeGeneratorV8.pm:
3501         Refactored the guts of GenerateBatchedAttributeData into a separate GenerateSingleBatchedAttribute with a passed-in indentation level to allow generating a single BatchedAttribute struct.
3502         Added support for the EnabledAtRuntime extended attribute, which generates a call to the appropriate XXXXEnabled() API before adding the attribute to the instance.
3503         * bindings/v8/V8Proxy.cpp:
3504         (WebCore::batchConfigureAttributes):
3505         Refactored attribute setting code into a common inline routine.
3506         * bindings/v8/V8Proxy.h:
3507         (WebCore::configureAttribute):
3508         Inline function which configures a single attribute given a BatchedAttribute struct.
3509         * bindings/v8/custom/V8CustomBinding.h:
3510         Added (DECLARE_)ACCESSOR_RUNTIME_ENABLER to allow enabling attributes at runtime.
3511         * bindings/v8/custom/V8DOMWindowCustom.cpp:
3512         Added code to enable window.Audio only if MediaPlayer.isAvailable() == true
3513         * page/DOMWindow.idl:
3514         Added [EnabledAtRuntime] extended attribute to the Audio attribute.
3515
3516 2009-10-13  Michelangelo De Simone  <micdesim@gmail.com>
3517
3518         Reviewed by Adam Barth.
3519
3520         https://bugs.webkit.org/show_bug.cgi?id=27457
3521         Added support for static validation on type=email input elements as per
3522         HTML5 specs:
3523         http://www.whatwg.org/specs/web-apps/current-work/#e-mail-state
3524
3525         Test: fast/forms/ValidityState-typeMismatch-email.html
3526
3527         * html/ValidityState.cpp:
3528         (WebCore::ValidityState::typeMismatch): ValidityState.typeMismatch
3529         performs validation on type=email input elements now.
3530         (WebCore::ValidityState::isValidEmailAddress): simple validation method 
3531         * html/ValidityState.h:
3532
3533 2009-10-13  Dmitry Titov  <dimich@chromium.org>
3534
3535         Reviewed by Adam Barth.
3536
3537         Event listeners installed on a window object returned from window.open() don't work
3538         https://bugs.webkit.org/show_bug.cgi?id=28716
3539
3540         Tests: http/tests/security/window-events-clear-domain.html
3541                http/tests/security/window-events-clear-port.html
3542                http/tests/security/window-events-pass.html
3543
3544         * dom/Document.cpp: Split code of Document::clear() in a way to avoid removing all
3545         window event handlers when implicitOpen is called. It is called in 2 cases - on
3546         committing loaded content (no need to clean handlers) and on document.open() (needs to remove handlers).
3547
3548         (WebCore::Document::open): in addition to calling implicitOpen it also removes window
3549         event handlers, to preserve the behavior of document.open().
3550
3551         (WebCore::Document::implicitOpen): includes the part of removed Document::clear() that
3552         does not remove window event handlers.
3553
3554         * dom/Document.h: Removed clear().
3555
3556         * loader/FrameLoader.cpp:
3557         (WebCore::FrameLoader::stopLoading): add check to avoid removing window event handlers
3558         if we transition from temporary empty document to a loaded one.
3559
3560         (WebCore::FrameLoader::didOpenURL): Remove closeURL() which was called twice when loading.
3561         (WebCore::FrameLoader::finishedLoadingDocument): add closeURL() to compensate for change above.
3562
3563 2009-10-13  Brian Weinstein  <bweinstein@apple.com>
3564
3565         Reviewed by Pavel Feldman.
3566
3567         Fix a leak in the inspector by calling didRemoveNode with
3568         an error code when it fails, instead of returning from the
3569         Backend.
3570
3571         * inspector/InspectorBackend.cpp:
3572         (WebCore::InspectorBackend::removeNode):
3573         * inspector/front-end/ElementsTreeOutline.js:
3574
3575 2009-10-13  Brian Weinstein  <bweinstein@apple.com>
3576
3577         Reviewed by Timothy Hatcher.
3578
3579         Fixes <https://bugs.webkit.org/show_bug.cgi?id=30337>.
3580         Web Inspector: Should be able to delete nodes from the Elements Tree.
3581         
3582         When the delete key is pressed and a element is selected in the tree,
3583         the element should be deleted from the Elements Tree and the DOM.
3584
3585         * inspector/InspectorBackend.cpp:
3586         (WebCore::InspectorBackend::removeNode):
3587         * inspector/InspectorBackend.h:
3588         * inspector/InspectorBackend.idl:
3589         * inspector/InspectorFrontend.cpp:
3590         (WebCore::InspectorFrontend::didRemoveNode):
3591         * inspector/InspectorFrontend.h:
3592         * inspector/front-end/ElementsPanel.js:
3593         (WebInspector.ElementsPanel.prototype._updateModifiedNodes):
3594         * inspector/front-end/ElementsTreeOutline.js:
3595         (WebInspector.ElementsTreeOutline.prototype.handleKeyEvent):
3596
3597 2009-10-13  Brian Weinstein  <bweinstein@apple.com>
3598
3599         Reviewed by Timothy Hatcher.
3600
3601         Fix REGRESSION(49479): Mouseover on resources graph doesn't show timings.
3602         
3603         Set pointer-events: none on the new overlay so mouseover events are passed
3604         to the resources graph so we can show timings.
3605
3606         * inspector/front-end/inspector.css:
3607
3608 2009-10-13  Girish Ramakrishnan  <girish@forwardbias.in>
3609
3610         Reviewed by Simon Hausmann.
3611
3612         [Qt] Plugins : Remove all traces of winId. Use ownerWidget() instead.
3613         
3614         This is a bug for two reasons:
3615         1. Everytime we use winId(), we end up creating a native widget. This causes an
3616         unnecessary copy of contents from the backing store to the native widget.
3617         2. Neither windowed nor windowless plugins require the winId of the QWebView or
3618         QGraphicsView.
3619         
3620         Introduce ownerWidget() which returns a QWidget * without creating a native widget
3621         (as opposed to QWidget::find(winId)).
3622
3623        https://bugs.webkit.org/show_bug.cgi?id=30170
3624
3625