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