c8b98df818799d9f3d2b09732ff332839e47ddeb
[WebKit-https.git] / WebCore / ChangeLog
1 2009-12-17  Yael Aharon  <yael.aharon@nokia.com>
2
3         Reviewed by Kenneth Rohde Christiansen.
4
5         [Qt] support navigator.onLine and ononline/onoffline events.
6         https://bugs.webkit.org/show_bug.cgi?id=32555
7
8         Hooked up Bearer Management to NetworkStateNotifier. This solution is available 
9         only if QtMobility's Bearer Management is installed.
10
11         * WebCore.pro:
12         * platform/network/NetworkStateNotifier.h:
13         * platform/network/qt/NetworkStateNotifierPrivate.h: Added.
14         * platform/network/qt/NetworkStateNotifierQt.cpp: Added.
15         (WebCore::NetworkStateNotifierPrivate::NetworkStateNotifierPrivate):
16         (WebCore::NetworkStateNotifierPrivate::onlineStateChanged):
17         (WebCore::NetworkStateNotifierPrivate::~NetworkStateNotifierPrivate):
18         (WebCore::NetworkStateNotifier::updateState):
19         (WebCore::NetworkStateNotifier::NetworkStateNotifier):
20
21 2009-12-17  Pavel Feldman  <pfeldman@chromium.org>
22
23         Reviewed by Timothy Hatcher.
24
25         Web Inspector: Switch to 11px as default for source-code in WebKit.
26
27         https://bugs.webkit.org/show_bug.cgi?id=32646
28
29         * inspector/front-end/inspector.css:
30
31 2009-12-17  Simon Hausmann  <simon.hausmann@nokia.com>
32
33         Reviewed by Tor Arne Vestbø.
34
35         [Qt] Symbian build fix: Don't include QtXml/qxmlstream.h but omit the prefix, to
36         make sure we pick up the header file from QtCore. That is where the implementation
37         is compiled.
38
39         * dom/XMLTokenizer.h:
40
41 2009-12-17  Martin Robinson  <martin.james.robinson@gmail.com>
42
43         Reviewed by Gustavo Noronha Silva.
44
45         [GTK] WebKit GTK needs a wrapper for ref counted glib/gobject structs
46         https://bugs.webkit.org/show_bug.cgi?id=21599
47
48         Add GRefPtr support for GTK types to WebCore, as JSC does not link against
49         GTK+. Also convert PopupMenu::m_poup from a raw pointer to a GRefPtr.
50
51         No new tests as functionality has not changed.
52
53         * GNUmakefile.am:
54         * platform/PopupMenu.h:
55         * platform/gtk/GRefPtrGtk.cpp: Added.
56         (WTF::refGPtr):
57         (WTF::derefGPtr):
58         * platform/gtk/GRefPtrGtk.h: Added.
59         * platform/gtk/PopupMenuGtk.cpp:
60         (WebCore::PopupMenu::PopupMenu):
61         (WebCore::PopupMenu::~PopupMenu):
62         (WebCore::PopupMenu::show):
63         (WebCore::PopupMenu::hide):
64         (WebCore::PopupMenu::menuRemoveItem):
65
66 2009-12-17  Mikhail Naganov  <mnaganov@chromium.org>
67
68         Reviewed by Pavel Feldman.
69
70         Advice links to source code in CPU profiler to open in debugger,
71         not in resources tab.
72
73         Also work around the case when resources are disabled, but scripts are present.
74
75         https://bugs.webkit.org/show_bug.cgi?id=32610
76
77         * inspector/front-end/Panel.js:
78         (WebInspector.Panel.prototype.updateMainViewWidth):
79         (WebInspector.Panel.prototype.canShowSourceLineForURL):
80         (WebInspector.Panel.prototype.showSourceLineForURL):
81         * inspector/front-end/ProfileDataGridTree.js:
82         (WebInspector.ProfileDataGridNode.prototype.createCell):
83         * inspector/front-end/ResourcesPanel.js:
84         (WebInspector.ResourcesPanel.prototype.canShowSourceLineForURL):
85         (WebInspector.ResourcesPanel.prototype.showSourceLineForURL):
86         * inspector/front-end/ScriptsPanel.js:
87         (WebInspector.ScriptsPanel.prototype.scriptForURL):
88         (WebInspector.ScriptsPanel.prototype.canShowSourceLineForURL):
89         (WebInspector.ScriptsPanel.prototype.showSourceLineForURL):
90         (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
91         * inspector/front-end/inspector.js:
92         (WebInspector.documentClick.followLink):
93         (WebInspector.documentClick):
94         (WebInspector._choosePanelToShowSourceLineForURL):
95         (WebInspector.canShowSourceLineForURL):
96         (WebInspector.showSourceLineForURL):
97
98 2009-12-15  Philippe Normand  <pnormand@igalia.com>
99
100         Reviewed by Xan Lopez.
101
102         [GTK] display FPS stats for video element
103         https://bugs.webkit.org/show_bug.cgi?id=32560
104
105         Display FPS statistics if WEBKIT_DEBUG environment variable
106         contains the Media log category. This feature requires a very
107         recent (>= 0.10.18) version of gst-plugins-bad.
108
109         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
110         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
111         (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate):
112         (WebCore::MediaPlayerPrivate::createGSTPlayBin):
113         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
114
115 2009-11-11  Philippe Normand  <pnormand@igalia.com>
116
117         Reviewed by Gustavo Noronha Silva.
118
119         [GStreamer] Should emit {networkState,readyState,volume,time,size,rate,duration}Changed signals
120         https://bugs.webkit.org/show_bug.cgi?id=30377
121
122         Emit volumeChanged and durationChanged upon notification from
123         GStreamer.
124
125         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
126         (WebCore::mediaPlayerPrivateMessageCallback):
127         (WebCore::mediaPlayerPrivateVolumeCallback):
128         (WebCore::notify_volume_idle_cb):
129         (WebCore::MediaPlayerPrivate::didEnd):
130         (WebCore::MediaPlayerPrivate::durationChanged):
131         (WebCore::MediaPlayerPrivate::createGSTPlayBin):
132         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
133
134 2009-12-16  Philippe Normand  <pnormand@igalia.com>
135
136         Reviewed by Gustavo Noronha Silva.
137
138         [GTK] segfault during volume notification
139         https://bugs.webkit.org/show_bug.cgi?id=32603
140
141         Emit volumeChanged and durationChanged upon notification from
142         GStreamer. Also don't reset the volume property on playbin, it is
143         not needed as it is 1.0 by default both on playbin and in the
144         MediaPlayer.
145
146         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
147         (WebCore::mediaPlayerPrivateMessageCallback):
148         (WebCore::mediaPlayerPrivateVolumeChangedCallback):
149         (WebCore::notifyVolumeIdleCallback):
150         (WebCore::doGstInit):
151         (WebCore::MediaPlayerPrivate::isAvailable):
152         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
153         (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate):
154         (WebCore::MediaPlayerPrivate::volumeChanged):
155         (WebCore::MediaPlayerPrivate::didEnd):
156         (WebCore::MediaPlayerPrivate::durationChanged):
157         (WebCore::mimeTypeCache):
158         (WebCore::MediaPlayerPrivate::createGSTPlayBin):
159         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
160
161 2009-12-17  Evan Martin  <evan@chromium.org>
162
163         Reviewed by Xan Lopez.
164
165         gtk: always use standard include paths, regardless of settings.
166         WebKit style is to wrap the body of a header in #if ENABLE(FOO),
167         so they're always safe to include whether the features are enabled or
168         not.
169
170         This fixes building with --disable-database and other flags.
171
172         * GNUmakefile.am:
173
174 2009-12-17  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
175
176         Unreviewed. Build fixes for make distcheck.
177
178         * GNUmakefile.am:
179
180 2009-12-17  Philippe Normand  <pnormand@igalia.com>
181
182         Rubber-stamped by Gustavo Noronha Silva.
183
184         Trivial WebKit coding style fix.
185
186         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
187         (WebCore::MediaPlayerPrivate::paint):
188
189 2009-12-15 MORITA Hajime <morrita@gmail.com>
190
191         Reviewed by Eric Seidel.
192
193         Bug 28306: double-clicking a word inside <b> beside newline select two words
194         https://bugs.webkit.org/show_bug.cgi?id=28306
195         
196         SimplifiedBackwardsTextIterator missed trailing whitespaces just
197         before folding line-break, which is used to detect word
198         boundaries. This fix checks strings on RenderText and expand text
199         range on SimplifiedBackwardsTextIterator to include trailing
200         whitespaces if availble.
201
202         Test: editing/selection/doubleclick-beside-cr-span.html
203
204         * editing/TextIterator.cpp:
205         (WebCore::collapsedSpaceLength):
206         (WebCore::maxOffsetIncludingCollapsedSpaces):
207         (WebCore::SimplifiedBackwardsTextIterator::advance):
208
209 2009-12-16  Fumitoshi Ukai  <ukai@chromium.org>
210
211         Reviewed by Alexey Proskuryakov.
212
213         Fix flakiness in WebSocket handshake console message.
214         https://bugs.webkit.org/show_bug.cgi?id=32598
215
216         In chromium, LayoutTests/websocket/tests/handshake-error.html is
217         flaky, because it outputs the following console message several times:
218           CONSOLE MESSAGE: line 0: Unexpected response code:101
219         Update m_mode in WebSocketHandshake correctly: Once it finds
220         error in handshake message, set m_mode to Failed and don't try
221         reading handshake message again.  If handshake message is not yet
222         fully received, set m_mode to Incomplete, so next didReceiveData()
223         will try to check handshake message again.
224
225         * websockets/WebSocketChannel.cpp:
226         (WebCore::WebSocketChannel::didReceiveData):
227         * websockets/WebSocketHandshake.cpp:
228         (WebCore::WebSocketHandshake::readServerHandshake):
229
230 2009-12-16  Jon Honeycutt  <jhoneycutt@apple.com>
231
232         MSAA: Accessibility role of text nodes is wrong
233
234         https://bugs.webkit.org/show_bug.cgi?id=32631
235         <rdar://problem/7369084>
236
237         Reviewed by Alice Liu.
238
239         Test: platform/win/accessibility/text-role.html
240
241         * accessibility/AccessibilityObject.h:
242         (WebCore::):
243         Add a new role to the enum.
244         (WebCore::AccessibilityObject::roleValueForMSAA):
245         Declare a function to return the accessibility role for MSAA; the base
246         implementation returns the old role value.
247
248         * accessibility/AccessibilityRenderObject.cpp:
249         (WebCore::AccessibilityRenderObject::AccessibilityRenderObject):
250         Initialize m_roleForMSAA.
251         (WebCore::AccessibilityRenderObject::roleValueForMSAA):
252         If m_roleForMSAA has been set, return it. If the renderer is a
253         RenderText, set the role to EditableTextRole to match IE and Firefox.
254         Otherwise, set the role for MSAA to the old role value.
255
256         * accessibility/AccessibilityRenderObject.h:
257         Add a member to hold the role for MSAA, and declare an override of
258         roleValueForMSAA().
259
260 2009-12-16  Eric Seidel  <eric@webkit.org>
261
262         No review, rolling out r52206.
263         http://trac.webkit.org/changeset/52206
264         https://bugs.webkit.org/show_bug.cgi?id=31187
265
266         This broke pixel tests on Mac.  Presumably the code in
267         ImageCG is wrong here.
268
269         * platform/graphics/BitmapImage.h:
270         * platform/graphics/GeneratedImage.cpp:
271         (WebCore::GeneratedImage::drawPattern):
272         * platform/graphics/GeneratedImage.h:
273         * platform/graphics/Image.cpp:
274         (WebCore::Image::drawTiled):
275         * platform/graphics/Image.h:
276         * platform/graphics/cairo/ImageCairo.cpp:
277         (WebCore::Image::drawPattern):
278         * platform/graphics/cg/ImageCG.cpp:
279         (WebCore::Image::drawPattern):
280         * platform/graphics/haiku/ImageHaiku.cpp:
281         (WebCore::Image::drawPattern):
282         * platform/graphics/qt/ImageQt.cpp:
283         (WebCore::Image::drawPattern):
284         * platform/graphics/skia/ImageSkia.cpp:
285         (WebCore::Image::drawPattern):
286         * platform/graphics/wince/GraphicsContextWince.cpp:
287         (WebCore::GraphicsContext::drawBitmapPattern):
288         * platform/graphics/wince/ImageBufferWince.cpp:
289         (WebCore::):
290         (WebCore::BufferedImage::drawPattern):
291         * platform/graphics/wx/ImageWx.cpp:
292         (WebCore::BitmapImage::drawPattern):
293         (WebCore::Image::drawPattern):
294
295 2009-12-16  Dimitri Glazkov  <dglazkov@chromium.org>
296
297         Reviewed by David Levin.
298
299         https://bugs.webkit.org/show_bug.cgi?id=32637
300         [V8] Generate most named property getters.
301
302         Covered by existing tests.
303
304         * bindings/scripts/CodeGeneratorV8.pm: Added generation of SetNamedPropertyHandler call.
305         * bindings/v8/V8DOMWrapper.cpp:
306         (WebCore::V8DOMWrapper::getTemplate): Removed now-generated SetNamedPropertyHandler callsites.
307
308 2009-12-16  Luiz Agostini  <luiz.agostini@openbossa.org>
309
310         Reviewed by Kenneth Rohde Christiansen.
311
312         [Qt] Implement combobox delegate for Qt
313         https://bugs.webkit.org/show_bug.cgi?id=32550
314
315         Abstract popup menu factory.
316
317         A static method from QtAbstractPopupMenu is used to create its instances. If a factory
318         has been suplied to class QtAbstractPopupMenu the factory will be used to create the
319         objects. If not an instance of QtFallbackPopupMenu will be created.
320
321         The objective is to make it easy to replace the combobox popup at WebCore layer providing
322         support to the combobox popup delegation API. Future patches will make it possible to
323         replace the combobox popup at WebKit layer.
324
325         No behavior changes.
326
327         * platform/qt/PopupMenuQt.cpp:
328         (WebCore::PopupMenu::PopupMenu):
329         * platform/qt/QtAbstractWebPopup.cpp:
330         (WebCore::QtAbstractWebPopup::setFactory):
331         (WebCore::QtAbstractWebPopup::create):
332         * platform/qt/QtAbstractWebPopup.h:
333         * platform/qt/QtFallbackWebPopup.cpp:
334
335 2009-12-16  Mark Rowe  <mrowe@apple.com>
336
337         Build fix.  Disable debug variants of WebKit frameworks.
338
339         * WebCore.xcodeproj/project.pbxproj:
340
341 2009-12-16  Enrica Casucci  <enrica@apple.com>
342
343         Reviewed by Eric Seidel.
344
345         Right clicking in a table cell creates a selection that extends into the next cell.
346         <rdar://problem/5565465>
347         https://bugs.webkit.org/show_bug.cgi?id=32622
348         
349         Avoid extending the selection to the next cell if we start from an empty cell.
350
351         Test: editing/selection/empty-cell-right-click.html
352
353         * editing/TypingCommand.cpp:
354         (WebCore::TypingCommand::deleteKeyPressed): Replaced the code that check for empty table cell
355         with a call to the new function.
356         * editing/VisibleSelection.cpp:
357         (WebCore::VisibleSelection::setStartAndEndFromBaseAndExtentRespectingGranularity): Extends the
358         selection only if we are not starting from an empty table cell.
359         * editing/htmlediting.cpp:
360         (WebCore::isEmptyTableCell): Added a function since this check is performed now in two places.
361         * editing/htmlediting.h: Added isEmptyTableCell declaration.
362
363 2009-12-16  Dirk Schulze  <krit@webkit.org>
364
365         Reviewed by Nikolas Zimmermann.
366
367         feMerge crahses if feMergeNodes attribute in is empty
368         https://bugs.webkit.org/show_bug.cgi?id=32489
369
370         SVGFEMergeElement only stored pointers to all effects of it's nodes
371         in a list. But it should store the RefPtr otherwise the effects get
372         dereferenced and WebKit crashes.
373         I also made a short clean-up in SVGFilterBuilder. No change in
374         functionality.
375
376         Test: I updated svg/custom/empty-merge.svg to cover this problem.
377
378         * svg/SVGFEMergeElement.cpp:
379         (WebCore::SVGFEMergeElement::build):
380         * svg/graphics/filters/SVGFEMerge.cpp:
381         (WebCore::FEMerge::FEMerge):
382         (WebCore::FEMerge::create):
383         (WebCore::FEMerge::mergeInputs):
384         (WebCore::FEMerge::setMergeInputs):
385         * svg/graphics/filters/SVGFEMerge.h:
386         * svg/graphics/filters/SVGFilterBuilder.cpp:
387         (WebCore::SVGFilterBuilder::add):
388
389 2009-12-16  Brian Weinstein  <bweinstein@apple.com>
390
391         Reviewed by Timothy Hatcher.
392
393         Part of <http://webkit.org/b/32568>.
394         Web Inspector: Context Menus should be used in more places.
395         
396         Add a context menu entry in the console to clear the console. This
397         is only shown when there is no user selection of text, because if
398         there is selection of the text, then we want to give the user the Copy +
399         Spell Check context menu that they are used to.
400
401         * English.lproj/localizedStrings.js: Added "Clear Console".
402         * inspector/front-end/ConsoleView.js:
403         (WebInspector.ConsoleView.prototype._handleContextMenuEvent):
404
405 2009-12-16  Brian Weinstein  <bweinstein@apple.com>
406
407         Reviewed by Pavel Feldman.
408
409         Fixes <https://bugs.webkit.org/show_bug.cgi?id=32621>.
410         Web Inspector: [REGRESSION (52095-52100)] Resources filter disappears when switching 
411         from / to resources panel.
412
413         Changed style in sidebar-resizer-vertical, because if the min-height was 100%, we start
414         to cover the scope bar.
415
416         * inspector/front-end/inspector.css:
417
418 2009-12-16  Dimitri Glazkov  <dglazkov@chromium.org>
419
420         Reviewed by Adam Barth.
421
422         [V8] Switch all indexers to be generated.
423         https://bugs.webkit.org/show_bug.cgi?id=32569
424
425         Covered by existing tests.
426
427         * WebCore.gypi: Remove V8FileListCustom.cpp and V8ClientRecListCustom.cpp,
428             as they are now generated.
429         * bindings/v8/V8DOMWrapper.cpp:
430         (WebCore::V8DOMWrapper::getTemplate): Remove customization of ClientRectList,
431             FileList, and DataGridColumnList templates.
432         * bindings/v8/custom/V8ClientRectListCustom.cpp: Removed.
433         * bindings/v8/custom/V8CustomBinding.h: Remove custom indexer getter decls.
434         * bindings/v8/custom/V8DataGridColumnListCustom.cpp: Remove indexer getter definition.
435         * bindings/v8/custom/V8FileListCustom.cpp: Removed.
436
437 2009-12-16  anton muhin  <antonm@chromium.org>
438
439         Reviewed by Darin Adler.
440
441         [dom] make dom/Node.cpp compile if DUMP_NODE_STATISTICS is on
442         https://bugs.webkit.org/show_bug.cgi?id=32617
443
444         * dom/Node.cpp:
445         (WebCore::Node::dumpStatistics):
446
447 2009-12-16  Dimitri Glazkov  <dglazkov@chromium.org>
448
449         Reviewed by Darin Fisher.
450
451         [V8] There is no such thing as HTMLSelectElementCollection.
452         https://bugs.webkit.org/show_bug.cgi?id=32616
453
454         Refactoring, covered by existing tests.
455
456         * WebCore.gypi: Removed V8HTMLSelectElementCollectionCustom.cpp
457         * bindings/v8/V8Collection.h: Removed one-off template.
458         * bindings/v8/V8DOMWrapper.cpp:
459         (WebCore::V8DOMWrapper::getTemplate): Renamed all references to HTMLSelectElementCollection
460             to HTMLSelectElement.
461         * bindings/v8/custom/V8CustomBinding.h: Renamed custom indexer decls.
462         * bindings/v8/custom/V8HTMLSelectElementCollectionCustom.cpp: Removed.
463         * bindings/v8/custom/V8HTMLSelectElementCustom.cpp: Moved code as-is from
464             V8HTMLSelectElementCollectionCustom.cpp
465
466 2009-12-16  Dan Winship  <danw@gnome.org>
467
468         Reviewed by Gustavo Noronha Silva.
469
470         [Gtk] Content-Encoding support
471
472         https://bugs.webkit.org/show_bug.cgi?id=25855
473
474         * platform/network/soup/ResourceHandleSoup.cpp:
475         (WebCore::startHttp): Don't force "Accept-Encoding: identity" any
476         more
477
478 2009-12-16  Benjamin Otte  <otte@gnome.org>
479
480         Reviewed by Darin Adler.
481
482         Get rid of the phase argument to Image::drawPattern.
483         https://bugs.webkit.org/show_bug.cgi?id=31187
484
485         The argument can be expressed equally well as part of the
486         patternTransform. All backends but the Qt one did exactly that
487         manually anyway.
488
489         * platform/graphics/BitmapImage.h:
490         * platform/graphics/GeneratedImage.cpp:
491         (WebCore::GeneratedImage::drawPattern):
492         * platform/graphics/GeneratedImage.h:
493         * platform/graphics/Image.cpp:
494         (WebCore::Image::drawTiled):
495         * platform/graphics/Image.h:
496         * platform/graphics/cairo/ImageCairo.cpp:
497         (WebCore::Image::drawPattern):
498         * platform/graphics/cg/ImageCG.cpp:
499         (WebCore::Image::drawPattern):
500         * platform/graphics/haiku/ImageHaiku.cpp:
501         (WebCore::Image::drawPattern):
502         * platform/graphics/qt/ImageQt.cpp:
503         (WebCore::Image::drawPattern):
504         * platform/graphics/skia/ImageSkia.cpp:
505         (WebCore::Image::drawPattern):
506         * platform/graphics/wince/GraphicsContextWince.cpp:
507         (WebCore::GraphicsContext::drawBitmapPattern):
508         * platform/graphics/wince/ImageBufferWince.cpp:
509         (WebCore::):
510         (WebCore::BufferedImage::drawPattern):
511         * platform/graphics/wx/ImageWx.cpp:
512         (WebCore::BitmapImage::drawPattern):
513         (WebCore::Image::drawPattern):
514
515 2009-12-16  Kenneth Russell  <kbr@google.com>
516
517         Reviewed by Darin Fisher.
518
519         Performance problems with index validation code for drawElements
520         https://bugs.webkit.org/show_bug.cgi?id=32466
521
522         Added a cache of the maximum index for each element type to
523         WebGLBuffer, querying it before iterating through the indices in
524         the client-side copy of the buffer's data. Hoisted checks of the
525         size of the element array itself into validateElementArraySize to
526         avoid duplicating code.
527
528         The performance improvement has been measured with manual tests.
529         Existing layout tests cover the index validation functionality
530         and continue to pass as before.
531
532         * html/canvas/WebGLBuffer.cpp:
533         (WebCore::WebGLBuffer::WebGLBuffer):
534         (WebCore::WebGLBuffer::associateBufferData):
535         (WebCore::WebGLBuffer::associateBufferSubData):
536         (WebCore::WebGLBuffer::getCachedMaxIndex):
537         (WebCore::WebGLBuffer::setCachedMaxIndex):
538         (WebCore::WebGLBuffer::clearCachedMaxIndices):
539         * html/canvas/WebGLBuffer.h:
540         * html/canvas/WebGLRenderingContext.cpp:
541         (WebCore::WebGLRenderingContext::validateElementArraySize):
542         (WebCore::WebGLRenderingContext::validateIndexArrayConservative):
543         (WebCore::WebGLRenderingContext::validateIndexArrayPrecise):
544         (WebCore::WebGLRenderingContext::validateRenderingState):
545         (WebCore::WebGLRenderingContext::drawElements):
546         * html/canvas/WebGLRenderingContext.h:
547
548 2009-12-16  Zelidrag Hornung  <zelidrag@chromium.org>
549
550         Reviewed by Darin Adler.
551
552         https://bugs.webkit.org/show_bug.cgi?id=32261
553         Added ability to separate the autocomplete suggestion previewing from
554         the actual accepting of the suggested value in HTMLInputElement.
555         This element (it's single line text incarnation) can now
556         be put in suggestion mode where renderer might display the suggested
557         value without making it automatically exposed to JavaScript.
558
559         No new tests. This new methods are not exposed yet. It's use will be
560         platform specific. PopupMenu and Chromium specific changes will be
561         separated based on Darin Adler's comments.
562
563         * dom/InputElement.h:
564         (WebCore::InputElementData::suggestedValue):
565         (WebCore::InputElementData::setSuggestedValue):
566         * html/HTMLInputElement.cpp:
567         (WebCore::HTMLInputElement::suggestedValue):
568         (WebCore::HTMLInputElement::setSuggestedValue):
569         (WebCore::HTMLInputElement::setValue):
570         (WebCore::HTMLInputElement::setValueFromRenderer):
571         * html/HTMLInputElement.h:
572         * rendering/RenderTextControlSingleLine.cpp:
573         (WebCore::RenderTextControlSingleLine::updateFromElement):
574         * wml/WMLInputElement.cpp:
575         (WebCore::WMLInputElement::suggestedValue):
576         * wml/WMLInputElement.h:
577
578 2009-12-16  Pavel Feldman  <pfeldman@chromium.org>
579
580         Reviewed by Timothy Hatcher.
581
582         Web Inspector: Make Elements tree, properties section and resources
583         view monospace.
584
585         https://bugs.webkit.org/show_bug.cgi?id=32609
586
587         * inspector/front-end/ElementsPanel.js:
588         * inspector/front-end/PropertiesSection.js:
589         (WebInspector.PropertiesSection):
590         * inspector/front-end/ResourceView.js:
591         (WebInspector.ResourceView):
592         * inspector/front-end/inspector.css:
593
594 2009-12-16  Dirk Schulze  <krit@webkit.org>
595
596         Reviewed by Darin Adler.
597
598         sourceGraphic wrong if positive x,y is >0 and objectBB is selected on Filter
599         https://bugs.webkit.org/show_bug.cgi?id=32575
600
601         On SVG Filters, the rest of the source graphic gets clipped to the filter
602         rest. This helps us to minimize the size of intermediate ImageBuffers. If
603         the position moves to the right or to the bottom, we have to adjust the
604         GraphicContext of this intermediate ImageBuffer.
605         This patch fixes the adjustment of the context, according to the clipping.
606
607         Test: svg/filters/filter-source-position.svg
608
609         * svg/graphics/SVGResourceFilter.cpp:
610         (WebCore::SVGResourceFilter::prepareFilter):
611
612 2009-12-16  Enrica Casucci  <enrica@apple.com>
613
614         Reviewed by Adele Peterson.
615
616         CrashTracer: [USER] 1 crash in Safari at com.apple.WebCore: WebCore::endsOfNodeAreVisuallyDistinctPositions + 115
617         <rdar://problem/7467108>
618         https://bugs.webkit.org/show_bug.cgi?id=32590
619
620         If the element is a button there is no need to look at the children to calculate the caret position.
621         
622         Test: editing/selection/button-right-click.html
623
624         * dom/Position.cpp:
625         (WebCore::Position::getInlineBoxAndOffset): Avoid calling recursively this method,
626         when starting from a button element.
627
628 2009-12-16  Luiz Agostini  <luiz.agostini@openbossa.org>
629
630         Reviewed by Kenneth Rohde Christiansen.
631
632         [Qt] Implement combobox delegate for Qt
633         https://bugs.webkit.org/show_bug.cgi?id=32550
634
635         Refactoring of class QWebPopup.
636
637         Class QWebPopup has been split in QtAbstractWebPopup and QtFallbackWebPopup.
638         Both new classes are now in corresponding files and files QWebPopup.* have been removed.
639
640         Custom combo popup classes will inherit from QtAbstractWebPopup. It is not the public API as it is
641         in WebCore and will not be visible by users of QtWebKit. It will be used in implementation of
642         public QtWebKit combobox popup delegation API.
643
644         Class QtFallbackWebPopup inherits from QtAbstractWebPopup and implements the currently used combobox popup.
645         It needs to be improved to provide standard features that are missing like style or indentation.
646
647         No behavior changes.
648
649         * WebCore.pro:
650         * platform/PopupMenu.h:
651         * platform/qt/PopupMenuQt.cpp:
652         (WebCore::PopupMenu::PopupMenu):
653         * platform/qt/QWebPopup.cpp: Removed.
654         * platform/qt/QWebPopup.h: Removed.
655         * platform/qt/QtAbstractWebPopup.cpp: Added.
656         (WebCore::QtAbstractWebPopup::QtAbstractWebPopup):
657         (WebCore::QtAbstractWebPopup::~QtAbstractWebPopup):
658         (WebCore::QtAbstractWebPopup::client):
659         * platform/qt/QtAbstractWebPopup.h: Added.
660         * platform/qt/QtFallbackWebPopup.cpp: Added.
661         (WebCore::QtFallbackWebPopup::QtFallbackWebPopup):
662         (WebCore::QtFallbackWebPopup::show):
663         (WebCore::QtFallbackWebPopup::populate):
664         (WebCore::QtFallbackWebPopup::showPopup):
665         (WebCore::QtFallbackWebPopup::hidePopup):
666         (WebCore::QtFallbackWebPopup::activeChanged):
667         * platform/qt/QtFallbackWebPopup.h: Added.
668         (WebCore::QtFallbackWebPopup::hide):
669
670 2009-12-15  Pavel Feldman  <pfeldman@chromium.org>
671
672         Reviewed by Timothy Hatcher.
673
674         Web Inspector: beautify HTTP info section.
675
676         https://bugs.webkit.org/show_bug.cgi?id=32583
677
678         * English.lproj/localizedStrings.js:
679         * inspector/front-end/ResourceView.js:
680         (WebInspector.ResourceView):
681         (WebInspector.ResourceView.prototype._refreshURL):
682         (WebInspector.ResourceView.prototype._refreshHTTPInformation):
683         * inspector/front-end/inspector.css:
684
685 2009-12-13  Roland Steiner  <rolandsteiner@chromium.org>
686
687         Reviewed by Adam Barth.
688
689         Fix crash when encountering illegal HTML within a continuation inside <ruby>.
690         (https://bugs.webkit.org/show_bug.cgi?id=32316)
691
692         Avoid having the anonymous blocks utilized in the ruby renderers being
693         re-used as continuation blocks.
694         Avoid having ruby runs collected as "leftover blocks".
695
696         Test: fast/ruby/ruby-illegal.html
697
698         * rendering/RenderRuby.h:
699         (WebCore::RenderRubyAsInline::removeLeftoverAnonymousBlock): mustn't be called
700         (WebCore::RenderRubyAsInline::isRuby): made private
701         (WebCore::RenderRubyAsInline::renderName): made private
702         (WebCore::RenderRubyAsInline::createsAnonymousWrapper): return true
703         (WebCore::RenderRubyAsBlock::removeLeftoverAnonymousBlock): mustn't be called
704         (WebCore::RenderRubyAsBlock::isRuby): made private
705         (WebCore::RenderRubyAsBlock::renderName): made private
706         (WebCore::RenderRubyAsBlock::createsAnonymousWrapper): return true
707         * rendering/RenderRubyRun.h:
708         (WebCore::RenderRubyRun::removeLeftoverAnonymousBlock): avoid
709         (WebCore::RenderRubyRun::isRubyRun): made private
710         (WebCore::RenderRubyRun::renderName): made private
711         (WebCore::RenderRubyRun::createsAnonymousWrapper): return true
712
713 2009-12-15  Nate Chapin  <japhet@chromium.org>
714
715         Reviewed by Darin Adler.
716
717         Rename skipCanLoadCheck to skipSecurityCheck in a bunch of places in WebCore/loader.
718
719         https://bugs.webkit.org/show_bug.cgi?id=32529
720
721         * loader/Cache.cpp:
722         (WebCore::Cache::requestUserCSSStyleSheet):
723         * loader/CachedImage.cpp:
724         (WebCore::CachedImage::load):
725         * loader/CachedResource.cpp:
726         (WebCore::CachedResource::load):
727         * loader/CachedResource.h:
728         (WebCore::CachedResource::load):
729         * loader/DocumentThreadableLoader.cpp:
730         (WebCore::DocumentThreadableLoader::DocumentThreadableLoader):
731         (WebCore::DocumentThreadableLoader::makeSimpleCrossOriginAccessRequest):
732         (WebCore::DocumentThreadableLoader::makeCrossOriginAccessRequestWithPreflight):
733         (WebCore::DocumentThreadableLoader::preflightSuccess):
734         (WebCore::DocumentThreadableLoader::loadRequest):
735         * loader/DocumentThreadableLoader.h:
736         * loader/FrameLoaderTypes.h:
737         (WebCore::):
738         * loader/Request.cpp:
739         (WebCore::Request::Request):
740         * loader/Request.h:
741         (WebCore::Request::shouldDoSecurityCheck):
742         * loader/SubresourceLoader.cpp:
743         (WebCore::SubresourceLoader::create):
744         * loader/SubresourceLoader.h:
745         * loader/loader.cpp:
746         (WebCore::Loader::load):
747         (WebCore::Loader::Host::servePendingRequests):
748         * loader/loader.h:
749
750 2009-12-15  Dan Bernstein  <mitz@apple.com>
751
752         Reviewed by Darin Adler.
753
754         <rdar://problem/7470452> Safari/Chromium crashes on complicated @font-face rule
755         https://bugs.webkit.org/show_bug.cgi?id=32257
756
757         Test: fast/css/font-face-unused-source-loaded.html
758
759         The loading of a font resource caused a CSSFontFace that had the resource in one of its
760         sources, but wasn’t using it (due to using an earlier source) to invalidate its
761         CSSSegmentedFontFaces. This caused FontData for the active source (the one that did not just
762         finish loading) to be deleted, but that went unnoticed by Font::operator==(), since the
763         corresponding FontFallbackLists were not in the loading state. The fix is for CSSFontFace to
764         ignore loads from unused sources.
765
766         * css/CSSFontFace.cpp:
767         (WebCore::CSSFontFace::fontLoaded): Bail out if the loaded source is not the active source.
768         (WebCore::CSSFontFace::getFontData): Set m_activeSource to the source that supplied the
769             FontData.
770         * css/CSSFontFace.h:
771         (WebCore::CSSFontFace::CSSFontFace): Initialize m_activeSource.
772
773 2009-12-15  Yael Aharon  <yael.aharon@nokia.com>
774
775         Reviewed by Kenneth Rohde Christiansen.
776
777         [Qt] Cannot load flash files from a local file.
778         https://bugs.webkit.org/show_bug.cgi?id=32572
779
780         When loading the main resource and its mime type is application/octet-stream,
781         use the file extenstion to check if it is a supported plugin.
782
783         No new tests were added since any existing swf file can be used as a manual test.
784
785         * loader/MainResourceLoader.cpp:
786         (WebCore::MainResourceLoader::didReceiveResponse):
787         * loader/MainResourceLoader.h:
788         * plugins/PluginDatabase.h:
789
790 2009-12-15  Brian Weinstein  <bweinstein@apple.com>
791
792         Reviewed by Timothy Hatcher.
793
794         Fixes <https://bugs.webkit.org/show_bug.cgi?id=18498>.
795         REGRESSION: Tips are not shown for resources anymore.
796         
797         As discussed in the bug, Tips are not coming back, and the feature
798         will be moved to the audits panel. This patch is to remove the Tips
799         code and the resources that it needed.
800
801         * WebCore.gypi: Removed tips files.
802         * inspector/front-end/Images/tipBalloon.png: Removed.
803         * inspector/front-end/Images/tipBalloonBottom.png: Removed.
804         * inspector/front-end/Images/tipIcon.png: Removed.
805         * inspector/front-end/Images/tipIconPressed.png: Removed.
806         * inspector/front-end/Resource.js: Removed tips code.
807         (WebInspector.Resource.prototype.set finished): 
808         * inspector/front-end/WebKit.qrc: Removed tips files.
809         * inspector/front-end/inspector.css: Removes tips style rules.
810         
811 2009-12-15  Pavel Feldman  <pfeldman@chromium.org>
812
813         Reviewed by Timothy Hatcher.
814
815         Web Inspector: Display request headers for main resource
816         having redirects.
817
818         https://bugs.webkit.org/show_bug.cgi?id=32577
819
820         * inspector/InspectorController.cpp:
821         (WebCore::InspectorController::identifierForInitialRequest):
822         (WebCore::InspectorController::willSendRequest):
823         * inspector/InspectorResource.cpp:
824         (WebCore::InspectorResource::InspectorResource):
825         (WebCore::InspectorResource::appendRedirect):
826         (WebCore::InspectorResource::createCached):
827         (WebCore::InspectorResource::updateRequest):
828         * inspector/InspectorResource.h:
829         (WebCore::InspectorResource::create):
830
831 2009-12-15  Brian Weinstein  <bweinstein@apple.com>
832
833         Reviewed by Timothy Hatcher.
834
835         Fixes <https://bugs.webkit.org/show_bug.cgi?id=32578>.
836         Web Inspector: No Need for ?="" now that we have context menus.
837         
838         Remove the toggleNewAttributeButton function and callers to it, as
839         we don't need this behavior anymore, now that we have context menus.
840
841         * inspector/front-end/ElementsTreeOutline.js:
842         (WebInspector.ElementsTreeElement.prototype.set hovered):
843         (WebInspector.ElementsTreeElement.prototype.toggleNewAttributeButton):
844         (WebInspector.ElementsTreeElement.prototype._startEditing):
845
846 2009-12-15  Dimitri Glazkov  <dglazkov@chromium.org>
847
848         Reviewed by Eric Seidel.
849
850         [V8] Generate trivial named property getters.
851         https://bugs.webkit.org/show_bug.cgi?id=32562
852
853         Covered by existing tests.
854
855         * bindings/scripts/CodeGeneratorV8.pm: Added GenerateImplementationNamedPropertyGetter.
856         * bindings/v8/V8Collection.h:
857         (WebCore::getNamedPropertyOfCollection): Fixed a booboo by using AtomicString like we're supposed to.
858         * bindings/v8/V8DOMWrapper.cpp:
859         (WebCore::V8DOMWrapper::getTemplate): Removed code that's now generated.
860
861 2009-12-15  Brian Weinstein  <bweinstein@apple.com>
862
863         Reviewed by Timothy Hatcher.
864
865         Part of <http://webkit.org/b/32568>.
866         New Web Inspector: The Context Menu should be used in more places.
867         
868         Add support for context menu entries for editing and deleting elements
869         in the datagrid. This gives support to deleting cookies, and editing and
870         deleting session storage and local storage.
871
872         * English.lproj/localizedStrings.js: Added "Edit" and "Add New" entries (delete was already there)
873         * inspector/front-end/DataGrid.js:
874         (WebInspector.DataGrid): Added context menu listener.
875         (WebInspector.DataGrid.prototype._contextMenuInDataTable):
876
877 2009-12-15  Kenneth Russell  <kbr@google.com>
878
879         Reviewed by Darin Fisher.
880
881         Don't allow default framebuffer to be mutated
882         https://bugs.webkit.org/show_bug.cgi?id=32391
883
884         * html/canvas/WebGLRenderingContext.cpp:
885         (WebCore::WebGLRenderingContext::framebufferRenderbuffer):
886         (WebCore::WebGLRenderingContext::framebufferTexture2D):
887         * platform/graphics/mac/GraphicsContext3DMac.cpp:
888         (WebCore::GraphicsContext3D::bindFramebuffer):
889
890 2009-12-15  Zoltan Horvath  <zoltan@webkit.org>
891
892         Reviewed by Darin Adler.
893
894         Allow custom memory allocation control for FontPlatformDataCacheKey class
895         https://bugs.webkit.org/show_bug.cgi?id=32552
896
897         Inherits the following struct from FastAllocBase because it is instantiated by 'new':
898
899         struct name                     - instantiated at: WebCore/'location'
900         struct FontPlatformDataCacheKey - platform/graphics/FontCache.cpp:118
901
902         * platform/graphics/FontCache.cpp:
903
904 2009-12-15  Jian Li  <jianli@chromium.org>
905
906         Reviewed by Dmitry Titov.
907
908         Bug 31090 - [Chromium] Add DownloadURL format to Chromium clipboard.
909         https://bugs.webkit.org/show_bug.cgi?id=31090
910
911         The proposal to whatwg can be found here:
912         http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2009-August/022118.html
913
914         * platform/chromium/ChromiumDataObject.cpp:
915         (WebCore::ChromiumDataObject::clear):
916         (WebCore::ChromiumDataObject::hasData):
917         (WebCore::ChromiumDataObject::ChromiumDataObject):
918         * platform/chromium/ChromiumDataObject.h:
919         * platform/chromium/ClipboardChromium.cpp:
920         (WebCore::):
921         (WebCore::clipboardTypeFromMIMEType):
922         (WebCore::ClipboardChromium::setData):
923
924 2009-12-15  Chris Fleizach  <cfleizach@apple.com>
925
926         Reviewed by Darin Adler.
927
928         WAI-ARIA: implement treegrid
929         https://bugs.webkit.org/show_bug.cgi?id=31299
930
931         Test: platform/mac/accessibility/aria-treegrid.html
932
933         * accessibility/AXObjectCache.cpp:
934         (WebCore::AXObjectCache::getOrCreate):
935         * accessibility/AccessibilityARIAGrid.h:
936         (WebCore::AccessibilityARIAGrid::supportsSelectedRows):
937         * accessibility/AccessibilityARIAGridRow.cpp:
938         (WebCore::AccessibilityARIAGridRow::isARIATreeGridRow):
939         (WebCore::AccessibilityARIAGridRow::disclosedRows):
940         (WebCore::AccessibilityARIAGridRow::disclosedByRow):
941         * accessibility/AccessibilityARIAGridRow.h:
942         * accessibility/AccessibilityObject.cpp:
943         (WebCore::createARIARoleMap):
944         * accessibility/AccessibilityObject.h:
945         (WebCore::):
946         (WebCore::AccessibilityObject::isARIATreeGridRow):
947         * accessibility/AccessibilityRenderObject.cpp:
948         (WebCore::AccessibilityRenderObject::isMultiSelectable):
949         (WebCore::AccessibilityRenderObject::setIsExpanded):
950         (WebCore::AccessibilityRenderObject::setSelectedRows):
951         (WebCore::AccessibilityRenderObject::ariaSelectedRows):
952         (WebCore::AccessibilityRenderObject::ariaListboxSelectedChildren):
953         (WebCore::AccessibilityRenderObject::selectedChildren):
954         * accessibility/AccessibilityRenderObject.h:
955         * accessibility/AccessibilityTable.h:
956         (WebCore::AccessibilityTable::supportsSelectedRows):
957         * accessibility/mac/AccessibilityObjectWrapper.mm:
958         (-[AccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
959         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
960         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
961         (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
962
963 2009-12-15  Zoltan Horvath  <zoltan@webkit.org>
964
965         Reviewed by Darin Adler.
966
967         Allow custom memory allocation control for EmptyEditorClient and EmptyInspectorClient
968         https://bugs.webkit.org/show_bug.cgi?id=32557
969
970         Inherits the following classes from Noncopyable because these are instantiated
971         by 'new' and no need to be copyable:
972
973         class name                 - instantiated at: WebCore/'location'
974         class EmptyEditorClient    - svg/graphics/SVGImage.cpp:230
975         class EmptyInspectorClient - svg/graphics/SVGImage.cpp:241
976
977         * loader/EmptyClients.h:
978
979 2009-12-15  Zoltan Horvath  <zoltan@webkit.org>
980
981         Reviewed by Darin Adler.
982
983         Allow custom memory allocation control for WebCore/inspector directory's classes
984         https://bugs.webkit.org/show_bug.cgi?id=32556
985
986         Inherits the following class from Noncopyable because these are instantiated
987         by 'new' and no need to be copyable:
988
989         class name                   - instantiated at: WebCore/'location'
990         class InspectorFrontend      - inspector/InspectorController.cpp:538
991         class InspectorTimelineAgent - inspector/InspectorController.cpp:1097
992
993         * inspector/InspectorFrontend.h:
994         * inspector/InspectorTimelineAgent.h:
995
996 2009-12-15  Zoltan Horvath  <zoltan@webkit.org>
997
998         Reviewed by Darin Adler.
999
1000         Allow custom memory allocation control for WebCore/platform/network directory's classes
1001         https://bugs.webkit.org/show_bug.cgi?id=32553
1002
1003         Inherits the following class from Noncopyable because it is instantiated
1004         by 'new' and no need to be copyable:
1005
1006         class/struct name                      - instantiated at: WebCore/'location'
1007
1008         struct CrossThreadResourceResponseData - platform/network/ResourceResponseBase.cpp:109
1009
1010         Inherits the following classes from FastAllocBase because these are
1011         instantiated by 'new':
1012
1013         class ResourceResponseBase - (its child class) platform/network/ResourceResponseBase.cpp:90
1014         class ResourceRequestBase  - (its child class) loader/DocumentThreadableLoader.cpp:88
1015
1016         * platform/network/ResourceRequestBase.h:
1017         * platform/network/ResourceResponseBase.h:
1018
1019 2009-12-15  Zoltan Horvath  <zoltan@webkit.org>
1020
1021         Reviewed by Darin Adler.
1022
1023         Allow custom memory allocation control for AnimationControllerPrivate and FillLayerPropertyWrapperGetter
1024         https://bugs.webkit.org/show_bug.cgi?id=32549
1025
1026         Inherits AnimationControllerPrivate and FillLayerPropertyWrapperGetter
1027         classes from Noncopyable because these are instantiated by 'new' and no need to be copyable:
1028
1029         class/struct name              - instantiated at: WebCore/'location'
1030
1031         AnimationControllerPrivate     - page/animation/AnimationController.cpp:439
1032         FillLayerPropertyWrapperGetter - (its child class) page/animation/AnimationBase.cpp:464
1033
1034         * page/animation/AnimationBase.cpp:
1035         * page/animation/AnimationControllerPrivate.h:
1036
1037 2009-12-15  Pavel Feldman  <pfeldman@chromium.org>
1038
1039         Reviewed by Timothy Hatcher.
1040
1041         Web Inspector: Do not lose HTTP redirect information, display it
1042         in the Resources Panel.
1043
1044         https://bugs.webkit.org/show_bug.cgi?id=32551
1045
1046         * inspector/InspectorController.cpp:
1047         (WebCore::InspectorController::populateScriptObjects):
1048         (WebCore::InspectorController::didCommitLoad):
1049         (WebCore::InspectorController::didLoadResourceFromMemoryCache):
1050         (WebCore::InspectorController::identifierForInitialRequest):
1051         (WebCore::InspectorController::willSendRequest):
1052         (WebCore::InspectorController::didReceiveResponse):
1053         (WebCore::InspectorController::didReceiveContentLength):
1054         (WebCore::InspectorController::didFinishLoading):
1055         (WebCore::InspectorController::didFailLoading):
1056         * inspector/InspectorFrontend.cpp:
1057         * inspector/InspectorFrontend.h:
1058         * inspector/InspectorResource.cpp:
1059         (WebCore::InspectorResource::InspectorResource):
1060         (WebCore::InspectorResource::appendRedirect):
1061         (WebCore::InspectorResource::updateScriptObject):
1062         (WebCore::InspectorResource::releaseScriptObject):
1063         (WebCore::InspectorResource::type):
1064         * inspector/InspectorResource.h:
1065         (WebCore::InspectorResource::):
1066         (WebCore::InspectorResource::Changes::setAll):
1067         * inspector/front-end/inspector.js:
1068         (WebInspector._addResource):
1069         (WebInspector.updateResource):
1070
1071 2009-12-15  Holger Hans Peter Freyther  <zecke@selfish.org>
1072
1073         Reviewed by Simon Hausmann.
1074
1075         [Qt] Followup for direct signals and slots connections in QNetworkReplyHandler
1076         https://bugs.webkit.org/show_bug.cgi?id=32113
1077
1078         For Qt versions prior to 4.6.1 we will need to use QueuedConnection
1079         for the signal and slot connection to avoid running into a bug in.
1080
1081         Add a comment that we want to remove one signal to forward
1082         queued items when moving our minimum requirements.
1083
1084         * platform/network/qt/QNetworkReplyHandler.cpp:
1085         (WebCore::QNetworkReplyHandler::start):
1086
1087 2009-12-14  Holger Hans Peter Freyther  <zecke@selfish.org>
1088
1089         Reviewed by Kenneth Rohde Christiansen.
1090
1091         [Qt] Add manual test for JavaScript prompt corner case
1092         https://bugs.webkit.org/show_bug.cgi?id=30914
1093
1094         The patch is based on the work done by Gupta Manish.
1095
1096         Verify behavior of the JavaScript prompt function. Currently
1097         Qt is not behaving like other WebKit ports and Firefox in
1098         regards to accepting the prompt but not entering a text.
1099
1100         * manual-tests/qt/java-script-prompt.html: Added.
1101
1102 2009-12-15  Luiz Agostini  <luiz.agostini@openbossa.org>
1103
1104         Reviewed by Kenneth Rohde Christiansen.
1105
1106         Moving list populate methods from PopupMenuQt to QWebPopup.
1107         
1108         In preparation to future implementation of a delegation API for the combobox.
1109
1110         * platform/PopupMenu.h:
1111         * platform/qt/PopupMenuQt.cpp:
1112         (WebCore::PopupMenu::show):
1113         (WebCore::PopupMenu::hide):
1114         * platform/qt/QWebPopup.cpp:
1115         (WebCore::QWebPopup::show):
1116         (WebCore::QWebPopup::populate):
1117         * platform/qt/QWebPopup.h:
1118         (WebCore::QWebPopup::hide):
1119
1120 2009-12-15  Alexander Pavlov  <apavlov@chromium.org>
1121
1122         Reviewed by Pavel Feldman.
1123
1124         Extract WebInspector.Section from WebInspector.PropertiesSection.
1125         https://bugs.webkit.org/show_bug.cgi?id=32523
1126
1127         * WebCore.gypi:
1128         * WebCore.vcproj/WebCore.vcproj:
1129         * inspector/front-end/PropertiesSection.js:
1130         (WebInspector.PropertiesSection):
1131         * inspector/front-end/Section.js: Added.
1132         (WebInspector.Section):
1133         (WebInspector.Section.prototype.get title):
1134         (WebInspector.Section.prototype.set title):
1135         (WebInspector.Section.prototype.get subtitle):
1136         (WebInspector.Section.prototype.set subtitle):
1137         (WebInspector.Section.prototype.get expanded):
1138         (WebInspector.Section.prototype.set expanded):
1139         (WebInspector.Section.prototype.get populated):
1140         (WebInspector.Section.prototype.set populated):
1141         (WebInspector.Section.prototype.expand):
1142         (WebInspector.Section.prototype.collapse):
1143         (WebInspector.Section.prototype.toggleExpanded):
1144         * inspector/front-end/WebKit.qrc:
1145         * inspector/front-end/inspector.html:
1146
1147 2009-12-15  Eric Seidel  <eric@webkit.org>
1148
1149         No review, rolling out r52140.
1150         http://trac.webkit.org/changeset/52140
1151         https://bugs.webkit.org/show_bug.cgi?id=31299
1152
1153         The commit broke the Leopard bots and unfortunately
1154         Chris wasn't around to fix them, so I'm rolling the change
1155         out after 3 hours so that the bots can roll green again. :)
1156
1157         * accessibility/AXObjectCache.cpp:
1158         (WebCore::AXObjectCache::getOrCreate):
1159         * accessibility/AccessibilityARIAGrid.h:
1160         * accessibility/AccessibilityARIAGridRow.cpp:
1161         * accessibility/AccessibilityARIAGridRow.h:
1162         * accessibility/AccessibilityObject.cpp:
1163         (WebCore::createARIARoleMap):
1164         * accessibility/AccessibilityObject.h:
1165         (WebCore::):
1166         * accessibility/AccessibilityRenderObject.cpp:
1167         (WebCore::AccessibilityRenderObject::isMultiSelect):
1168         (WebCore::AccessibilityRenderObject::setIsExpanded):
1169         (WebCore::AccessibilityRenderObject::setSelectedRows):
1170         (WebCore::AccessibilityRenderObject::ariaTreeSelectedRows):
1171         (WebCore::AccessibilityRenderObject::ariaListboxSelectedChildren):
1172         (WebCore::AccessibilityRenderObject::selectedChildren):
1173         * accessibility/AccessibilityRenderObject.h:
1174         * accessibility/AccessibilityTable.h:
1175         * accessibility/mac/AccessibilityObjectWrapper.mm:
1176         (-[AccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
1177         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
1178         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
1179         (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
1180
1181 2009-12-14  Holger Hans Peter Freyther  <zecke@selfish.org>
1182
1183         Reviewed by Eric Seidel.
1184
1185         [Qt] Remove dead code from FontPlatformDataQt.cpp
1186         https://bugs.webkit.org/show_bug.cgi?id=32540
1187
1188         In r51758 the code that used familyNames was removed
1189         and we should remove the creation of the familyNames
1190         as well.
1191
1192         * platform/graphics/qt/FontPlatformDataQt.cpp:
1193         (WebCore::FontPlatformData::FontPlatformData):
1194
1195 2009-12-15  Dan Bernstein  <mitz@apple.com>
1196
1197         Reviewed by Adam Roben.
1198
1199         WebCore part of <rdar://problem/7173515> Use LOGFONT support in Core
1200         Graphics when available
1201
1202         When using a version of Core Graphics with LOGFONT support, this fixes
1203         <rdar://problem/5764844> First-time launch is painfully slow due to font
1204         plist creation
1205         and <rdar://problem/6576281> 12px synthetic-italics Tahoma text is less
1206         readable in Safari than in Firefox/IE due to poorly-spaced letters
1207
1208         * platform/graphics/win/FontCGWin.cpp:
1209         (WebCore::Font::drawGlyphs): No longer call drawGDIGlyphs for stroked
1210         text.
1211         * platform/graphics/win/FontCacheWin.cpp:
1212         (WebCore::createGDIFont): Added a synthesizeItalic parameter. When set
1213         to true, if italics are desired but the best match lacks italics,
1214         creates and returns a synthetic italics font.
1215         (WebCore::FontCache::createFontPlatformData): Ask to synthesize italics
1216         if needed.
1217         * platform/graphics/win/FontCustomPlatformData.cpp:
1218         (WebCore::FontCustomPlatformData::fontPlatformData): Updated an
1219         assertion, and changed to create the CGFont from the LOGFONT.
1220         (WebCore::createFontCustomPlatformData): Changed cgFont to be a
1221         RetainPtr. Do not create a CGFont from the font data if it can be
1222         created from the LOGFONT in fontPlatformData().
1223         * platform/graphics/win/FontDatabase.cpp:
1224         (WebCore::populateFontDatabase): Avoid font database work if fonts are
1225         not going to be looked up by name.
1226         * platform/graphics/win/FontPlatformDataCGWin.cpp:
1227         (WebCore::FontPlatformData::platformDataInit): Create the CGFont from
1228         a LOGFONT based on the HFONT.
1229
1230 2009-12-14  Chris Fleizach  <cfleizach@apple.com>
1231
1232         Reviewed by Darin Adler.
1233
1234         WAI-ARIA: implement treegrid
1235         https://bugs.webkit.org/show_bug.cgi?id=31299
1236
1237         Test: platform/mac/accessibility/aria-treegrid.html
1238
1239         * accessibility/AXObjectCache.cpp:
1240         (WebCore::AXObjectCache::getOrCreate):
1241         * accessibility/AccessibilityARIAGrid.h:
1242         (WebCore::AccessibilityARIAGrid::supportsSelectedRows):
1243         * accessibility/AccessibilityARIAGridRow.cpp:
1244         (WebCore::AccessibilityARIAGridRow::isARIATreeGridRow):
1245         (WebCore::AccessibilityARIAGridRow::disclosedRows):
1246         (WebCore::AccessibilityARIAGridRow::disclosedByRow):
1247         * accessibility/AccessibilityARIAGridRow.h:
1248         * accessibility/AccessibilityObject.cpp:
1249         (WebCore::createARIARoleMap):
1250         * accessibility/AccessibilityObject.h:
1251         (WebCore::AccessibilityObject::isARIATreeGridRow):
1252         * accessibility/AccessibilityRenderObject.cpp:
1253         (WebCore::AccessibilityRenderObject::isMultiSelectable):
1254         (WebCore::AccessibilityRenderObject::setIsExpanded):
1255         (WebCore::AccessibilityRenderObject::setSelectedRows):
1256         (WebCore::AccessibilityRenderObject::ariaSelectedRows):
1257         (WebCore::AccessibilityRenderObject::ariaListboxSelectedChildren):
1258         (WebCore::AccessibilityRenderObject::selectedChildren):
1259         * accessibility/AccessibilityRenderObject.h:
1260         * accessibility/AccessibilityTable.h:
1261         (WebCore::AccessibilityTable::supportsSelectedRows):
1262         * accessibility/mac/AccessibilityObjectWrapper.mm:
1263         (-[AccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
1264         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
1265         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
1266         (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
1267
1268 2009-12-14  Dan Bernstein  <mitz@apple.com>
1269
1270         Reviewed by Darin Adler.
1271
1272         <rdar://problem/7460655> REGRESSION (r47255): Content shifted down at software.opensuse.org
1273         https://bugs.webkit.org/show_bug.cgi?id=32382
1274
1275         Test: fast/block/float/in-margin.html
1276
1277         * rendering/RenderBlock.cpp:
1278         (WebCore::RenderBlock::getClearDelta): Floats that do not intrude into the line (because
1279         they are in the margin) do not need to be cleared.
1280
1281 2009-12-14  Enrica Casucci  <enrica@apple.com>
1282
1283         Reviewed by John Sullivan.
1284
1285         Pressing backspace inside a table cell erases all empty rows below it.
1286         <rdar://problem/5565461>
1287         https://bugs.webkit.org/show_bug.cgi?id=32526
1288
1289         No deletion is performed when the caret selection is on an empty table cell.
1290         
1291         Test: editing/deleting/delete-empty-table.html
1292
1293         * editing/TypingCommand.cpp:
1294         (WebCore::TypingCommand::deleteKeyPressed): Added check for empty table cells in
1295         case of caret selection.
1296
1297 2009-12-14  Andrei Popescu  <andreip@google.com>
1298
1299         Reviewed by Darin Adler.
1300
1301         [Android] Android needs ResourceHandle implementation
1302         https://bugs.webkit.org/show_bug.cgi?id=32515
1303
1304         Adds implementation of ResourceHandle on Android.
1305
1306         No new tests needed, this is platform-specific code, so existing
1307         tests are sufficient.
1308
1309         * platform/network/android/ResourceHandleAndroid.cpp: Added.
1310         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
1311         (WebCore::ResourceHandle::~ResourceHandle):
1312         (WebCore::ResourceHandle::start):
1313         (WebCore::ResourceHandle::cancel):
1314         (WebCore::ResourceHandle::bufferedData):
1315         (WebCore::ResourceHandle::supportsBufferedData):
1316         (WebCore::ResourceHandle::setDefersLoading):
1317         (WebCore::ResourceHandle::willLoadFromCache):
1318         (WebCore::ResourceHandle::loadsBlocked):
1319         (WebCore::SyncLoader::SyncLoader):
1320         (WebCore::SyncLoader::~SyncLoader):
1321         (WebCore::SyncLoader::didReceiveResponse):
1322         (WebCore::SyncLoader::didReceiveData):
1323         (WebCore::SyncLoader::didFail):
1324         (WebCore::ResourceHandle::loadResourceSynchronously):
1325         * platform/network/android/ResourceLoaderAndroid.h: Added.
1326         (WebCore::ResourceLoaderAndroid::~ResourceLoaderAndroid):
1327         (WebCore::ResourceLoaderAndroid::ResourceLoaderAndroid):
1328
1329 2009-12-14  Marco Martin  <notmart@gmail.com>
1330
1331         Reviewed by Kenneth Rohde Christiansen.
1332
1333         In the Scrollbar painting of the Qt theme integration,
1334         intersects any previous clip rects with the one needed to paint the scrollbar.
1335         This fixes the painting in QGraphicsview, when the parent of the widget that 
1336         paints the QWebPage has the QGraphicsItem::ItemClipsChildrenToShape set and
1337         a piece of the scrollbar should be cipped away
1338         https://bugs.webkit.org/show_bug.cgi?id=30366
1339
1340         No new tests.
1341
1342         * platform/qt/ScrollbarThemeQt.cpp:
1343         (WebCore::ScrollbarThemeQt::paint):
1344
1345 2009-12-14  Dimitri Glazkov  <dglazkov@chromium.org>
1346
1347         Reviewed by Eric Seidel.
1348
1349         [V8] Generate bindings for trivial indexers.
1350         https://bugs.webkit.org/show_bug.cgi?id=32455
1351
1352         Covered by existing tests.
1353
1354         * bindings/scripts/CodeGeneratorV8.pm:
1355             Added detecting indexers and generating code for them.
1356         * bindings/v8/V8Collection.h: Removed code that's now generated.
1357         * bindings/v8/V8DOMWrapper.cpp:
1358         (WebCore::V8DOMWrapper::getTemplate): Ditto.
1359
1360 2009-12-14  Alexey Proskuryakov  <ap@apple.com>
1361
1362         Reviewed by Dave Hyatt.
1363
1364         https://bugs.webkit.org/show_bug.cgi?id=31660
1365         REGRESSION (r49394): Image load event fires before the document fragment is attached.
1366
1367         Test: fast/images/image-load-event-in-fragment.html
1368
1369         We cannot fire load events immediately after parsing a fragment - an element inserted via
1370         innerHTML or equivalent should be reachable via getElementById() by the time its load event
1371         fires.
1372
1373         * dom/Document.cpp: (WebCore::Document::implicitClose): Call dispatchPendingBeforeLoadEvents()
1374         and dispatchPendingLoadEvents() individually. I'm not sure why these calls are here, just
1375         preserving existing behavior.
1376
1377         * dom/XMLTokenizer.cpp: (WebCore::XMLTokenizer::write):
1378         * html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::write):
1379         Load events for elements that have just been parsed cannot be dispatched yet, we should give
1380         the elements a chance to be inserted into a document first. There is no compatibility baggage
1381         for beforeload, so it seems OK to dispatch it right away.
1382
1383         * loader/ImageLoader.cpp:
1384         (WebCore::ImageLoader::dispatchPendingBeforeLoadEvents):
1385         (WebCore::ImageLoader::dispatchPendingLoadEvents):
1386         * loader/ImageLoader.h:
1387         Separated dispatchPendingEvents() into individual functions for each event kind.
1388
1389 2009-12-14  Jakob Petsovits  <jpetsovits@rim.com>
1390
1391         Reviewed by Simon Fraser.
1392
1393         Add FloatQuad::isRectilinear() to check whether it can be represented as FloatRect.
1394         https://bugs.webkit.org/show_bug.cgi?id=30442
1395
1396         This enables optimizations for distinguishing between
1397         arbitrary FloatQuads and rectilinear ones.
1398
1399         * platform/graphics/FloatQuad.cpp:
1400         (WebCore::FloatQuad::isRectilinear):
1401         * platform/graphics/FloatQuad.h:
1402
1403 2009-12-14  Simon Hausmann  <hausmann@webkit.org>
1404
1405         Reviewed by Holger Freyther.
1406
1407         [Qt] Add support for keyboard modifiers to TouchEvent
1408
1409         https://bugs.webkit.org/show_bug.cgi?id=32482
1410
1411         Similar to other ui events with keyboard state, get the alt, shift,
1412         meta and ctrl modifiers straight from the platform event.
1413
1414         * dom/TouchEvent.cpp:
1415         (WebCore::TouchEvent::TouchEvent):
1416         (WebCore::TouchEvent::initTouchEvent):
1417         * dom/TouchEvent.h:
1418         (WebCore::TouchEvent::create):
1419         * dom/TouchEvent.idl:
1420         * page/EventHandler.cpp:
1421         (WebCore::EventHandler::handleTouchEvent):
1422         * platform/PlatformTouchEvent.h:
1423         (WebCore::PlatformTouchEvent::PlatformTouchEvent):
1424         (WebCore::PlatformTouchEvent::shiftKey):
1425         (WebCore::PlatformTouchEvent::ctrlKey):
1426         (WebCore::PlatformTouchEvent::altKey):
1427         (WebCore::PlatformTouchEvent::metaKey):
1428         * platform/qt/PlatformTouchEventQt.cpp:
1429         (WebCore::PlatformTouchEvent::PlatformTouchEvent):
1430
1431 2009-12-14  Benjamin Poulain  <benjamin.poulain@nokia.com>
1432
1433         Reviewed by Kenneth Rohde Christiansen.
1434
1435         [Qt] crash when clicking "Sign out" in GMail
1436         https://bugs.webkit.org/show_bug.cgi?id=32300
1437
1438         When the ResourceLoader cancels the handle we have to make sure not to access
1439         the resource handle afterwards again.
1440         This complete r29515
1441
1442         * platform/network/qt/QNetworkReplyHandler.cpp:
1443         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
1444
1445 2009-12-14  Alexander Pavlov  <apavlov@chromium.org>
1446
1447         Reviewed by Pavel Feldman.
1448
1449         Implement InjectedScript.evaluateOnSelf() that evaluates functions in the InjectedScript context.
1450         https://bugs.webkit.org/show_bug.cgi?id=32517
1451
1452         * inspector/front-end/InjectedScript.js:
1453         (InjectedScript.evaluateOnSelf):
1454         * inspector/front-end/InjectedScriptAccess.js:
1455
1456 2009-12-14  Nayan Kumar K  <nayankk@gmail.com>
1457
1458         Reviewed by Darin Adler.
1459
1460         Fix for compilation errors in WML enabled builds.
1461
1462         https://bugs.webkit.org/show_bug.cgi?id=32481
1463
1464         * wml/WMLInputElement.cpp:
1465         (WebCore::WMLInputElement::setValue):
1466         (WebCore::WMLInputElement::setValueForUser):
1467         * wml/WMLInputElement.h:
1468
1469 2009-12-14  Andrei Popescu  <andreip@google.com>
1470
1471         Reviewed by Darin Adler.
1472
1473         [Android] Android needs ResourceError, ResourceResponse and
1474         ResourceRequest implementation.
1475         https://bugs.webkit.org/show_bug.cgi?id=32522
1476
1477         Add implementation of ResourceError, ResourceResponse and ResourceRequest.
1478         No new tests needed, the existing tests should be sufficient.
1479
1480         * platform/network/android/ResourceError.h: Added.
1481         (WebCore::ResourceError::ResourceError):
1482         * platform/network/android/ResourceRequest.h: Added.
1483         (WebCore::ResourceRequest::ResourceRequest):
1484         (WebCore::ResourceRequest::doUpdatePlatformRequest):
1485         (WebCore::ResourceRequest::doUpdateResourceRequest):
1486         (WebCore::ResourceRequest::setUserGesture):
1487         (WebCore::ResourceRequest::getUserGesture):
1488         * platform/network/android/ResourceResponse.h: Added.
1489         (WebCore::ResourceResponse::ResourceResponse):
1490         (WebCore::ResourceResponse::doUpdateResourceResponse):
1491
1492 2009-12-14  Sam Weinig  <sam@webkit.org>
1493
1494         Fix the build.
1495
1496         * page/Geolocation.cpp:
1497         * page/Geolocation.h:
1498
1499 2009-12-13  Sam Weinig  <sam@webkit.org>
1500
1501         Reviewed by Dan Bernstein.
1502
1503         Fix for https://bugs.webkit.org/show_bug.cgi?id=32499
1504         Add client based Geolocation provider
1505
1506         Add first cut of a client based Geolocation provider. This is guarded by
1507         ENABLE(CLIENT_BASED_GEOLOCATION) and is off by default for now. This adds a
1508         GeolocationControllerClient interface that no-one currently implements,
1509         but will in a subsequent patch.
1510
1511         * GNUmakefile.am:
1512         * WebCore.base.exp:
1513         * WebCore.gypi:
1514         * WebCore.pro:
1515         * WebCore.vcproj/WebCore.vcproj:
1516         * WebCore.xcodeproj/project.pbxproj:
1517         * WebCoreSources.bkl:
1518         * page/Geolocation.cpp:
1519         (WebCore::createGeopositionFromGeolocationPosition):
1520         (WebCore::createPositionErrorFromGeolocationError):
1521         (WebCore::Geolocation::Geolocation):
1522         (WebCore::Geolocation::~Geolocation):
1523         (WebCore::Geolocation::disconnectFrame):
1524         (WebCore::Geolocation::lastPosition):
1525         (WebCore::Geolocation::startRequest):
1526         (WebCore::Geolocation::fatalErrorOccurred):
1527         (WebCore::Geolocation::requestTimedOut):
1528         (WebCore::Geolocation::clearWatch):
1529         (WebCore::Geolocation::handleError):
1530         (WebCore::Geolocation::positionChanged):
1531         (WebCore::Geolocation::makeSuccessCallbacks):
1532         (WebCore::Geolocation::errorOccurred):
1533         (WebCore::Geolocation::geolocationServicePositionChanged):
1534         (WebCore::Geolocation::geolocationServiceErrorOccurred):
1535         (WebCore::Geolocation::startUpdating):
1536         (WebCore::Geolocation::stopUpdating):
1537         * page/Geolocation.h:
1538         * page/GeolocationController.cpp: Added.
1539         (WebCore::GeolocationController::GeolocationController):
1540         (WebCore::GeolocationController::~GeolocationController):
1541         (WebCore::GeolocationController::addObserver):
1542         (WebCore::GeolocationController::removeObserver):
1543         (WebCore::GeolocationController::positionChanged):
1544         (WebCore::GeolocationController::errorOccurred):
1545         (WebCore::GeolocationController::lastPosition):
1546         * page/GeolocationController.h: Added.
1547         * page/GeolocationControllerClient.h: Added.
1548         (WebCore::GeolocationControllerClient::~GeolocationControllerClient):
1549         * page/GeolocationError.h: Added.
1550         (WebCore::GeolocationError::):
1551         (WebCore::GeolocationError::create):
1552         (WebCore::GeolocationError::code):
1553         (WebCore::GeolocationError::message):
1554         * page/GeolocationPosition.h: Added.
1555         (WebCore::GeolocationPosition::create):
1556         (WebCore::GeolocationPosition::timestamp):
1557         (WebCore::GeolocationPosition::latitude):
1558         (WebCore::GeolocationPosition::longitude):
1559         (WebCore::GeolocationPosition::accuracy):
1560         (WebCore::GeolocationPosition::altitude):
1561         (WebCore::GeolocationPosition::altitudeAccuracy):
1562         (WebCore::GeolocationPosition::heading):
1563         (WebCore::GeolocationPosition::speed):
1564         (WebCore::GeolocationPosition::canProvideAltitude):
1565         (WebCore::GeolocationPosition::canProvideAltitudeAccuracy):
1566         (WebCore::GeolocationPosition::canProvideHeading):
1567         (WebCore::GeolocationPosition::canProvideSpeed):
1568         (WebCore::GeolocationPosition::GeolocationPosition):
1569         * page/Geoposition.h:
1570         (WebCore::Geoposition::create):
1571         * page/Page.cpp:
1572         (WebCore::Page::Page):
1573         * page/Page.h:
1574         (WebCore::Page::geolocationController):
1575         * svg/graphics/SVGImage.cpp:
1576         (WebCore::SVGImage::dataChanged):
1577
1578 2009-12-14  Adam Langley  <agl@google.com>
1579
1580         Reviewed by Darin Adler.
1581
1582         Test that an image's size is valid before reading it.
1583
1584         Previously, an image that failed to load (m_failed == true) would
1585         trigger an assertion failure when WebKit tried to get its size.
1586
1587         https://bugs.webkit.org/show_bug.cgi?id=32176
1588         http://code.google.com/p/chromium/issues/detail?id=28566
1589
1590         Test: fast/images/size-failure.html
1591
1592         * platform/graphics/ImageSource.cpp:
1593         (WebCore::ImageSource::createFrameAtIndex):
1594
1595 2009-12-14  Dan Bernstein  <mitz@apple.com>
1596
1597         Reviewed by Darin Adler.
1598
1599         <rdar://problem/7458272> REGRESSION (r50470) Reproducible ASSERT in
1600         RenderWidget::setWidgetGeometry()
1601
1602         Test: fast/forms/defer-updateFromElement.html
1603
1604         * html/HTMLFormControlElement.cpp:
1605         (WebCore::updateFromElementCallback): Added this post-attach callback
1606         that invokes updateFromElement().
1607         (WebCore::HTMLFormControlElement::recalcStyle): Instead of calling
1608         updateFromElement(), enqueue a post-attach (in this case, post-style
1609         recalc) callback to do it. updateFromElement() can cause the selection
1610         to change, and in turn trigger synchronous layout, so it must not be
1611         called during style recalc.
1612
1613 2009-12-14  Pavel Feldman  <pfeldman@chromium.org>
1614
1615         Reviewed by Timothy Hatcher.
1616
1617         Web Inspector: [regression] inspector deletes nodes when editing css.
1618
1619         Now all the treeoutlines are focusable, sections and their titles
1620         are also focusable. Change contains couple of drive-by fixes such as
1621         canceling of the attribute edit nuking attr info and maintaining proper
1622         selection while deleting nodes.
1623
1624         https://bugs.webkit.org/show_bug.cgi?id=32460
1625
1626         * inspector/front-end/CallStackSidebarPane.js:
1627         (WebInspector.CallStackSidebarPane.prototype.handleShortcut):
1628         * inspector/front-end/ConsoleView.js:
1629         (WebInspector.ConsoleView.prototype._promptKeyDown):
1630         * inspector/front-end/DataGrid.js:
1631         (WebInspector.DataGrid.prototype._keyDown):
1632         * inspector/front-end/DatabaseQueryView.js:
1633         (WebInspector.DatabaseQueryView):
1634         (WebInspector.DatabaseQueryView.prototype._promptKeyDown):
1635         * inspector/front-end/ElementsPanel.js:
1636         (WebInspector.ElementsPanel.this.treeOutline.focusedNodeChanged):
1637         (WebInspector.ElementsPanel.prototype.get defaultFocusedElement):
1638         (WebInspector.ElementsPanel.prototype.handleShortcut):
1639         * inspector/front-end/ElementsTreeOutline.js:
1640         (WebInspector.ElementsTreeOutline):
1641         (WebInspector.ElementsTreeOutline.prototype._keyDown):
1642         (WebInspector.ElementsTreeElement.prototype._textNodeEditingCommitted):
1643         (WebInspector.ElementsTreeElement.prototype._editingCancelled):
1644         * inspector/front-end/Panel.js:
1645         (WebInspector.Panel.prototype.show):
1646         (WebInspector.Panel.prototype.get defaultFocusedElement):
1647         * inspector/front-end/PropertiesSection.js:
1648         (WebInspector.PropertiesSection):
1649         * inspector/front-end/ScriptsPanel.js:
1650         (WebInspector.ScriptsPanel):
1651         (WebInspector.ScriptsPanel.prototype.get defaultFocusedElement):
1652         (WebInspector.ScriptsPanel.prototype.handleShortcut):
1653         * inspector/front-end/SidebarPane.js:
1654         (WebInspector.SidebarPane):
1655         (WebInspector.SidebarPane.prototype.toggleExpanded):
1656         (WebInspector.SidebarPane.prototype._onTitleKeyDown):
1657         * inspector/front-end/SourceFrame.js:
1658         (WebInspector.SourceFrame.prototype._loaded):
1659         * inspector/front-end/TextPrompt.js:
1660         (WebInspector.TextPrompt):
1661         * inspector/front-end/inspector.css:
1662         * inspector/front-end/inspector.html:
1663         * inspector/front-end/inspector.js:
1664         (WebInspector.loaded):
1665         (WebInspector.documentKeyDown):
1666         (WebInspector.documentCanCopy):
1667         (WebInspector.documentCopy):
1668         (WebInspector._searchFieldManualFocus):
1669         (WebInspector._searchKeyDown):
1670         (WebInspector.startEditing.cleanUpAfterEditing):
1671         (WebInspector.startEditing.keyDownEventListener):
1672         (WebInspector.startEditing):
1673         * inspector/front-end/treeoutline.js:
1674         (TreeOutline):
1675         (TreeOutline._removeChildAtIndex):
1676         (TreeOutline.prototype._treeKeyDown):
1677         (TreeElement.prototype.deselect):
1678         * inspector/front-end/utilities.js:
1679         ():
1680
1681 2009-12-14  Dimitri Glazkov  <dglazkov@chromium.org>
1682
1683         Unreviewed, build fix.
1684
1685         [Chromium] Guard all of JSC's wrapper cache-related members on Document.
1686
1687         * dom/Document.cpp:
1688         (WebCore::Document::createWrapperCache): Widened the guards to the whole method.
1689         * dom/Document.h: Added JSC guards to wrapper cache-related members.
1690
1691 2009-12-14  Chris Fleizach  <cfleizach@apple.com>
1692
1693         Reviewed by Adele Peterson.
1694
1695         AX: there's an infinite loop going on for some webpages - facebook.com
1696         https://bugs.webkit.org/show_bug.cgi?id=32501
1697
1698         The problem is that parentObjectUnignored() cannot be called
1699         while in accessibilityIsIgnored, because it leads to
1700         recursiveness. Specifically, there were checks to determine
1701         if an object was within a ARIA tree. That check should
1702         1) be moved to all platforms, and 2) not call parentObjectUnignored().
1703
1704         Test: accessibility/hang-in-isignored.html
1705
1706         * accessibility/AccessibilityRenderObject.cpp:
1707         (WebCore::AccessibilityRenderObject::isAllowedChildOfTree):
1708         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
1709         * accessibility/AccessibilityRenderObject.h:
1710         * accessibility/mac/AccessibilityObjectMac.mm:
1711         (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
1712
1713 2009-12-14  Eric Carlson  <eric.carlson@apple.com>
1714
1715         Reviewed by Dan Bernstein.
1716
1717         <rdar://problem/6293979> Adopt shared control drawing for <video> controls on Leopard and Windows
1718
1719         Use MediaControllerThemeQuickTime on Leopard.
1720
1721         * rendering/RenderThemeMac.mm:
1722         (WebCore::mediaControllerTheme):
1723
1724 2009-12-14  Adam Roben  <aroben@apple.com>
1725
1726         Move QuartzCore-related build settings into a vsprops file
1727
1728         Fixes <http://webkit.org/b/32518>
1729
1730         Reviewed by Dan Bernstein.
1731
1732         * WebCore.vcproj/WebCore.vcproj: Let VS reformat the files list, added
1733         WebCoreQuartzCore.vsprops to the non-Cairo configurations, moved all
1734         other QuartzCore-related build settings from here...
1735         * WebCore.vcproj/WebCoreQuartzCore.vsprops: ...to here.
1736
1737 2009-12-14  Yael Aharon  <yael.aharon@nokia.com>
1738
1739         Reviewed by Antti Koivisto.
1740
1741         handling scripts can block UI
1742         https://bugs.webkit.org/show_bug.cgi?id=27612
1743
1744         Break execution of external scrips to smaller chunks. 
1745         No new tests since no new functionality was introduced.
1746
1747         * html/HTMLTokenizer.cpp:
1748         (WebCore::HTMLTokenizer::HTMLTokenizer):
1749         (WebCore::HTMLTokenizer::reset):
1750         (WebCore::HTMLTokenizer::notifyFinished):
1751         (WebCore::HTMLTokenizer::executeExternalScriptsIfReady):
1752         (WebCore::HTMLTokenizer::executeExternalScriptsTimerFired):
1753         (WebCore::HTMLTokenizer::continueExecutingExternalScripts):
1754         * html/HTMLTokenizer.h:
1755
1756 2009-12-03  Holger Hans Peter Freyther  <zecke@selfish.org>
1757
1758         Reviewed by Simon Hausmann.
1759
1760         [Qt] Connect QNetworkReply via direct connections.
1761         https://bugs.webkit.org/show_bug.cgi?id=32113
1762
1763         In the past we have switched from auto connections to queued
1764         connections to get some more stability. The problem with the
1765         Queued connections is latency. Even when running simple loading
1766         tests the time it takes to runs highly varies and by using
1767         direct connections these tests produce a stable result.
1768
1769         We will have to look out for crashes coming from within the
1770         QNetworkAccessManager due this patch and address them then.
1771
1772         * platform/network/qt/QNetworkReplyHandler.cpp:
1773         (WebCore::QNetworkReplyHandler::start):
1774
1775 2009-12-14  Holger Hans Peter Freyther  <zecke@selfish.org>
1776
1777         Rubber-stamped by Simon Hausmann.
1778
1779         [Qt] QtWebKit should use QImageReader::setQuality(49)
1780         https://bugs.webkit.org/show_bug.cgi?id=30740
1781
1782         Using QImageReader::setQuality(49) will influence the JPEG
1783         decoder of Qt to use the JDCT_IFAST routines for decompressing. This
1784         is showing a 5% improvement in a reduction that decodes all images
1785         used during the page loading test. The libjpeg documentation mentions
1786         that the IFAST routine is not as accurate as other routines but in
1787         our tests we couldn't see a difference.
1788
1789         * platform/graphics/qt/ImageDecoderQt.cpp:
1790         (WebCore::ImageDecoderQt::setData):
1791
1792 2009-12-13  Geoffrey Garen  <ggaren@apple.com>
1793
1794         Reviewed by Sam Weinig.
1795         
1796         Changed GC from mark-sweep to mark-allocate.
1797
1798         * ForwardingHeaders/runtime/WeakGCMap.h: Added.
1799         * bindings/js/GCController.cpp:
1800         (WebCore::collect):
1801         (WebCore::GCController::gcTimerFired):
1802         (WebCore::GCController::garbageCollectNow): Updated for rename.
1803
1804         * bindings/js/JSDOMBinding.cpp:
1805         (WebCore::removeWrappers):
1806         (WebCore::hasCachedDOMObjectWrapperUnchecked):
1807         (WebCore::hasCachedDOMObjectWrapper):
1808         (WebCore::hasCachedDOMNodeWrapperUnchecked):
1809         (WebCore::forgetDOMObject):
1810         (WebCore::forgetDOMNode):
1811         (WebCore::isObservableThroughDOM):
1812         (WebCore::markDOMNodesForDocument):
1813         (WebCore::markDOMObjectWrapper):
1814         (WebCore::markDOMNodeWrapper):
1815         * bindings/js/JSDOMBinding.h: Changed DOM wrapper maps to be WeakGCMaps.
1816         Don't ASSERT that an item must be in the WeakGCMap when its destructor
1817         runs, since it might have been overwritten in the map first.
1818
1819         * bindings/js/JSDocumentCustom.cpp:
1820         (WebCore::toJS): Changed Document from a DOM object wrapper to a DOM node
1821         wrapper, to simplify some code.
1822
1823         * bindings/js/JSInspectedObjectWrapper.cpp:
1824         (WebCore::JSInspectedObjectWrapper::JSInspectedObjectWrapper):
1825         (WebCore::JSInspectedObjectWrapper::~JSInspectedObjectWrapper):
1826         * bindings/js/JSInspectorCallbackWrapper.cpp: Use a WeakGCMap for these
1827         wrappers.
1828
1829         * bindings/js/JSNodeCustom.cpp:
1830         (WebCore::JSNode::markChildren): Updated for WeakGCMap and Document using
1831         a DOM node wrapper instead of a DOM object wrapper.
1832
1833         * bindings/js/JSSVGPODTypeWrapper.h:
1834         (WebCore::JSSVGDynamicPODTypeWrapperCache::wrapperMap):
1835         (WebCore::JSSVGDynamicPODTypeWrapperCache::lookupOrCreateWrapper):
1836         (WebCore::JSSVGDynamicPODTypeWrapperCache::forgetWrapper):
1837         (WebCore::::~JSSVGDynamicPODTypeWrapper): Shined a small beam of sanity light
1838         on this code. Use hashtable-based lookup in JSSVGPODTypeWrapper.h instead
1839         of linear lookup through iteration, since that's what hashtables were
1840         invented for. Make JSSVGPODTypeWrapper.h responsible for reomving itself
1841         from the table, instead of its JS wrapper, to decouple these objects from
1842         GC, and because these objects are refCounted, not solely owned by their
1843         JS wrappers.
1844
1845         * bindings/scripts/CodeGeneratorJS.pm:
1846         * dom/Document.h: Adopted changes above.
1847
1848 2009-12-13  Geoffrey Garen  <ggaren@apple.com>
1849
1850         Windows build fix: Removed an incorrect #ifdef.
1851
1852         * bindings/js/GCController.cpp:
1853
1854 2009-12-13  Charles Reis  <creis@chromium.org>
1855
1856         Reviewed by Adam Barth.
1857
1858         Refactor some security code out of V8 bindings
1859         https://bugs.webkit.org/show_bug.cgi?id=32326
1860
1861         No new tests. There should be no functionality changes in this patch,
1862         since it is only refactoring code.
1863
1864         * WebCore.gyp/WebCore.gyp:
1865         * WebCore.gypi:
1866         * bindings/BindingSecurity.h: Added.
1867         (WebCore::BindingSecurity::BindingSecurity):
1868         (WebCore::::canAccessWindow):
1869         (WebCore::::canAccessFrame):
1870         (WebCore::::checkNodeSecurity):
1871         * bindings/BindingSecurityBase.cpp: Added.
1872         (WebCore::BindingSecurityBase::getDOMWindow):
1873         (WebCore::BindingSecurityBase::getFrame):
1874         (WebCore::BindingSecurityBase::canAccessWindow):
1875         * bindings/BindingSecurityBase.h: Added.
1876         * bindings/GenericBinding.h: Added.
1877         (WebCore::):
1878         * bindings/scripts/CodeGeneratorV8.pm:
1879         * bindings/v8/ScriptController.cpp:
1880         (WebCore::ScriptController::isSafeScript):
1881         * bindings/v8/V8Binding.h:
1882         * bindings/v8/V8BindingState.cpp: Added.
1883         (WebCore::::Only):
1884         (WebCore::::getActiveWindow):
1885         (WebCore::::immediatelyReportUnsafeAccessTo):
1886         * bindings/v8/V8BindingState.h: Added.
1887         (WebCore::):
1888         * bindings/v8/V8Proxy.cpp:
1889         (WebCore::V8Proxy::reportUnsafeAccessTo):
1890         (WebCore::reportUnsafeJavaScriptAccess):
1891         * bindings/v8/V8Proxy.h:
1892         (WebCore::V8Proxy::):
1893         * bindings/v8/custom/V8CustomBinding.cpp:
1894         (WebCore::allowSettingFrameSrcToJavascriptUrl):
1895         (WebCore::INDEXED_ACCESS_CHECK):
1896         (WebCore::NAMED_ACCESS_CHECK):
1897         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1898         (WebCore::V8Custom::WindowSetTimeoutImpl):
1899         (WebCore::ACCESSOR_GETTER):
1900         (WebCore::ACCESSOR_SETTER):
1901         (WebCore::CALLBACK_FUNC_DECL):
1902         (WebCore::V8Custom::ClearTimeoutImpl):
1903         (WebCore::NAMED_ACCESS_CHECK):
1904         (WebCore::INDEXED_ACCESS_CHECK):
1905         * bindings/v8/custom/V8LocationCustom.cpp:
1906         (WebCore::ACCESSOR_GETTER):
1907         (WebCore::CALLBACK_FUNC_DECL):
1908         (WebCore::INDEXED_ACCESS_CHECK):
1909         (WebCore::NAMED_ACCESS_CHECK):
1910
1911 2009-11-30  Holger Hans Peter Freyther  <zecke@selfish.org>
1912
1913         Reviewed by Simon Hausmann.
1914
1915         [Qt] Implement initializeMaximumHTTPConnectionCountPerHost.
1916         https://bugs.webkit.org/show_bug.cgi?id=31849
1917
1918         Qt allows to have three connections per host on Symbian, for
1919         every other platform the limit is set to six connections per
1920         host but the default implementation will only schedule four
1921         connections per host.
1922         In a manual test we seem to get the best loading speed by
1923         going with Qt's limit and schedule two more jobs to allow Qt
1924         to prepare them.
1925
1926         * platform/network/ResourceRequestBase.cpp:
1927         * platform/network/qt/ResourceRequestQt.cpp:
1928         (WebCore::initializeMaximumHTTPConnectionCountPerHost):
1929
1930 2009-12-13  Dan Bernstein  <mitz@apple.com>
1931
1932         Reviewed by Simon Fraser.
1933
1934         <rdar://problem/7341364> Crash at HTMLParser::popOneBlockCommon() after
1935         handling misnested residual style tags
1936
1937         Test: fast/parser/residual-style-close-ref-clone.html
1938
1939         * html/HTMLParser.cpp:
1940         (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): Gave the
1941         block stack a strong reference to the cloned residual style element. 
1942
1943 2009-12-13  Adele Peterson  <adele@apple.com>
1944
1945         Reviewed by Sam Weinig.
1946
1947         Reverting changes from http://trac.webkit.org/changeset/49585 to fix:
1948         <rdar://problem/7382815> REGRESSION (4.0.4-TOT): Home photo slider is too narrow at http://www.ziprealty.com/
1949         https://bugs.webkit.org/show_bug.cgi?id=32078
1950
1951         * css/CSSPrimitiveValue.cpp: (WebCore::CSSPrimitiveValue::cssText):
1952
1953 2009-12-08  Jeremy Moskovich  <jeremy@chromium.org>
1954
1955         Reviewed by Eric Seidel.
1956
1957         Add code to allow toggling ATSUI/Core Text rendering at runtime in ComplexTextController.
1958         https://bugs.webkit.org/show_bug.cgi?id=31802
1959
1960         The goal here is to allow for a zero runtime hit for ports that decide to select
1961         the API at compile time.
1962         When both USE(ATSUI) and USE(CORE_TEXT) are true, the API is toggled
1963         at runtime.  Core Text is used for OS Versions >= 10.6.
1964
1965         No test since this is already covered by existing pixel tests.
1966
1967         * platform/graphics/SimpleFontData.h:  Change #ifdef to define getNSFont() on Chrome/Mac .
1968         * platform/graphics/mac/ComplexTextController.cpp:
1969         (WebCore::shouldUseATSUIAPI): Cache decision about which API to use.
1970         (WebCore::ComplexTextController::ComplexTextRun::indexAt):
1971         (WebCore::ComplexTextController::collectComplexTextRunsForCharacters): Stub function to call through
1972         to ATSUI/Core text variants.
1973         (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun): The actual work for object construction
1974         is delegate to createTextRunFromFontDataATSUI/createTextRunFromFontDataCoreText.
1975         * platform/graphics/mac/ComplexTextController.h:
1976         * platform/graphics/mac/ComplexTextControllerATSUI.cpp:
1977         (WebCore::ComplexTextController::ComplexTextRun::overrideLayoutOperation): Small style fix.
1978         (WebCore::ComplexTextController::ComplexTextRun::createTextRunFromFontDataATSUI):
1979         (WebCore::ComplexTextController::collectComplexTextRunsForCharactersATSUI):
1980         * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
1981         (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun):
1982         (WebCore::ComplexTextController::ComplexTextRun::createTextRunFromFontDataCoreText):
1983         (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText):
1984
1985 2009-12-13  Eric Carlson  <eric.carlson@apple.com>
1986
1987         No review, rolling out r52059 until I can generate new Tiger
1988         test results.
1989
1990         * rendering/RenderThemeMac.mm:
1991         (WebCore::mediaControllerTheme):
1992
1993 2009-12-12  Sam Weinig  <sam@webkit.org>
1994
1995         Rubber-stamped by Dan Bernstein.
1996
1997         Fix the EXPERIMENTAL_SINGLE_VIEW_MODE build.
1998
1999         * Configurations/WebCore.xcconfig:
2000         * page/EventHandler.cpp:
2001         (WebCore::EventHandler::EventHandler):
2002         (WebCore::EventHandler::clearDragState):
2003         * page/mac/DragControllerMac.mm:
2004         (WebCore::DragController::isCopyKeyDown):
2005         * page/mac/EventHandlerMac.mm:
2006         (WebCore::EventHandler::eventActivatedView):
2007         * platform/PlatformKeyboardEvent.h:
2008         * platform/PlatformMouseEvent.h:
2009         * platform/PlatformWheelEvent.h:
2010         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2011         * platform/ScrollView.cpp:
2012         (WebCore::ScrollView::wheelEvent):
2013         * platform/mac/KeyEventMac.mm:
2014         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2015         * platform/mac/PlatformMouseEventMac.mm:
2016         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
2017         * platform/mac/PopupMenuMac.mm:
2018         (WebCore::PopupMenu::show):
2019         * platform/mac/WidgetMac.mm:
2020
2021 2009-12-12  Sam Weinig  <sam@webkit.org>
2022
2023         Rubber-stamped by Dan Bernstein.
2024
2025         Fix the !ENABLE(VIDEO) build.
2026
2027         * rendering/RenderLayerCompositor.cpp:
2028         (WebCore::RenderLayerCompositor::requiresCompositingForVideo):
2029
2030 2009-12-12  Sam Weinig  <sam@webkit.org>
2031
2032         Rubber-stamped by Dan Bernstein.
2033
2034         Fix the !ENABLE(DATABASE) build.
2035
2036         * storage/SQLTransactionClient.cpp:
2037         * storage/SQLTransactionClient.h:
2038         * storage/SQLTransactionCoordinator.cpp:
2039         * storage/SQLTransactionCoordinator.h:
2040         * loader/FrameLoader.cpp:
2041         (WebCore::FrameLoader::stopLoading):
2042
2043 2009-12-12  Eric Carlson  <eric.carlson@apple.com>
2044
2045         Reviewed by Dan Bernstein.
2046
2047         <rdar://problem/6293979> Adopt shared control drawing for <video> controls on Leopard and Windows
2048
2049         Use MediaControllerThemeQuickTime on Leopard.
2050
2051         * rendering/RenderThemeMac.mm:
2052         (WebCore::mediaControllerTheme):
2053
2054 2009-12-12  Kenneth Russell  <kbr@google.com>
2055
2056         Reviewed by Oliver Hunt.
2057
2058         Errors in WebGL[T]Array set() and get() methods
2059         https://bugs.webkit.org/show_bug.cgi?id=32456
2060
2061         Test: fast/canvas/webgl/bug-32456.html
2062
2063         * bindings/js/JSWebGLFloatArrayCustom.cpp:
2064         (WebCore::JSWebGLFloatArray::set):
2065         * bindings/js/JSWebGLIntArrayCustom.cpp:
2066         (WebCore::JSWebGLIntArray::set):
2067         * bindings/js/JSWebGLShortArrayCustom.cpp:
2068         (WebCore::JSWebGLShortArray::set):
2069         * bindings/js/JSWebGLUnsignedByteArrayCustom.cpp:
2070         (WebCore::JSWebGLUnsignedByteArray::set):
2071         * bindings/js/JSWebGLUnsignedIntArrayCustom.cpp:
2072         (WebCore::JSWebGLUnsignedIntArray::set):
2073         * bindings/js/JSWebGLUnsignedShortArrayCustom.cpp:
2074         (WebCore::JSWebGLUnsignedShortArray::set):
2075         * bindings/v8/custom/V8WebGLArrayCustom.h:
2076         (WebCore::setWebGLArray):
2077         * html/canvas/WebGLFloatArray.idl:
2078         * html/canvas/WebGLUnsignedIntArray.idl:
2079
2080 2009-12-12  Kenneth Russell  <kbr@google.com>
2081
2082         Reviewed by Oliver Hunt.
2083
2084         Update WebGL tests to released versions
2085         https://bugs.webkit.org/show_bug.cgi?id=32457
2086
2087         * manual-tests/webgl/Earth.html:
2088         * manual-tests/webgl/ManyPlanetsDeep.html:
2089         * manual-tests/webgl/SpinningBox.html:
2090         * manual-tests/webgl/TeapotPerPixel.html:
2091         * manual-tests/webgl/TeapotPerVertex.html:
2092         * manual-tests/webgl/resources/CanvasMatrix.js:
2093         (CanvasMatrix4.prototype.getAsWebGLFloatArray):
2094         * manual-tests/webgl/resources/utils3d.js:
2095         (initWebGL.gl.console.window.console.log):
2096         (initWebGL):
2097         (loadShader):
2098         (makeBox):
2099         (makeSphere):
2100         (processLoadObj):
2101         (doLoadObj):
2102         (doLoadImageTexture):
2103
2104 2009-12-12  Christian Dywan  <christian@twotoasts.de>
2105
2106         Reviewed by Dirk Schulze.
2107
2108         Remove the include to SVGFEDisplacementMap.h, it's not needed at all.
2109
2110         * platform/graphics/filters/FEComponentTransfer.h:
2111
2112 2009-12-12  Christian Dywan  <christian@twotoasts.de>
2113
2114         Rubber-stamped by Maciej Stachowiak.
2115
2116         Only include SVGFEDisplacementMap.h if SVG is enabled.
2117
2118         * platform/graphics/filters/FEComponentTransfer.h:
2119
2120 2009-12-12  Dirk Schulze  <krit@webkit.org>
2121
2122         Reviewed by Eric Seidel.
2123
2124         [Cairo][Qt] Alpha blending in SVG filters is wrong
2125         https://bugs.webkit.org/show_bug.cgi?id=32427
2126
2127         This patch is a follow-up to:
2128         http://trac.webkit.org/changeset/51950
2129         It fixes the alpha blending for Cairo and Qt on SVG Filters.
2130
2131         Covered by: * LayoutTests/svg/filters/feGaussianBlur.svg
2132                     * LayoutTests/svg/filters/feComposite.svg
2133                      and others.
2134
2135         * platform/graphics/cairo/ImageBufferCairo.cpp:
2136         (WebCore::ImageBuffer::platformTransformColorSpace):
2137         * platform/graphics/qt/ImageBufferQt.cpp:
2138         (WebCore::ImageBuffer::platformTransformColorSpace):
2139
2140 2009-12-11  Eric Roman  <eroman@chromium.org>
2141
2142         Unreviewed build fix.
2143
2144         [V8] Add a method on ScriptController to get it compiling after http://trac.webkit.org/changeset/52033.
2145
2146         * bindings/v8/ScriptController.cpp:
2147         (WebCore::ScriptController::anyPageIsProcessingUserGesture):
2148         * bindings/v8/ScriptController.h:
2149
2150 2009-12-11  Dimitri Glazkov  <dglazkov@chromium.org>
2151
2152         Unreviewed, build fix.
2153
2154         [V8] Change bindings to catch up with http://trac.webkit.org/changeset/52033.
2155
2156         * bindings/v8/custom/V8HTMLFormElementCustom.cpp:
2157         (WebCore::CALLBACK_FUNC_DECL): Added retrieval of calling frame and passing
2158           to the submit method.
2159
2160 2009-12-11  Sam Weinig  <sam@webkit.org>
2161
2162         Reviewed by Mark Rowe.
2163
2164         Put -umbrella linker flag into a variable so that it can be overridden.
2165
2166         * Configurations/WebCore.xcconfig:
2167
2168 2009-12-11  Shinichiro Hamaji  <hamaji@chromium.org>
2169
2170         Reviewed by Darin Adler.
2171
2172         body with display:inline causes crash
2173         https://bugs.webkit.org/show_bug.cgi?id=32371
2174
2175         Tests: fast/inline/inline-body-crash.html
2176                fast/inline/inline-body-with-scrollbar-crash.html
2177
2178         * page/FrameView.cpp:
2179         (WebCore::FrameView::createScrollbar):
2180         (WebCore::FrameView::layout):
2181
2182 2009-12-11  Brady Eidson  <beidson@apple.com>
2183
2184         Rubberstamped by Sam Weinig.
2185
2186         https://webkit.org/b/22851 - Remove defunct FIXME.
2187
2188         * html/HTMLPlugInElement.cpp:
2189         (WebCore::HTMLPlugInElement::HTMLPlugInElement): This flag was removed completely
2190           from the HTMLFrameOwnerElement chain of classes.
2191
2192 2009-12-11  Darin Adler  <darin@apple.com>
2193
2194         Reviewed by Dan Bernstein.
2195
2196         Small refactoring to get rid of some extra unneeded selection-related work
2197         in RenderLayer::scrollToOffset and separate caret and range selection
2198         logic in FrameView::layout. This may be useful later when changing how
2199         the range selection logic works to fix layout reentrancy problems.
2200
2201         * page/Frame.cpp: Removed invalidateSelection.
2202         * page/Frame.h: Ditto.
2203
2204         * page/FrameView.cpp:
2205         (WebCore::FrameView::layout): Call SelectionController::setNeedsLayout
2206         and Frame::selectionLayoutChanged instead of calling
2207         Frame::invalidateSelection, which was just a function that called
2208         both of those others.
2209
2210         * rendering/RenderLayer.cpp:
2211         (WebCore::RenderLayer::scrollToOffset): Call
2212         SelectionController::setNeedsLayout instead of calling
2213         Frame::invalidateSelection. This call site only needs the caret-related
2214         work in that first function, not the other work formerly done by
2215         Frame::invalidateSelection. The caret works outside the normal
2216         painting and rendering system, and the range selection highlight is
2217         more or less inside it and doesn't need special handling when scrolling.
2218
2219 2009-12-11  Brady Eidson  <beidson@apple.com>
2220
2221         Reviewed by Darin Adler.
2222
2223         <rdar://problem/7342725> and https://webkit.org/b/32383
2224         Selecting article text at sfgate.com results in spurious back/forward entries
2225
2226         If an iframe had a form and that form is submitted by javascript, IE and Opera don't add back/forward entries.
2227         
2228         In the case where the frame was added dynamically via createElement(), Firefox would like to add a back entry
2229         but has a bug that prevents this.
2230
2231         Therefore by a bizarre coincidence, WebKit is the loner and the only engine affected by sfgate.com's technique.
2232
2233         This patch changes us to willfully match IE and Opera and fixes sfgate.com in the process.
2234
2235         Tests: http/tests/navigation/dynamic-iframe-dynamic-form-back-entry.html
2236                http/tests/navigation/parsed-iframe-dynamic-form-back-entry.html
2237
2238         Capture whether the form was submitted by javascript:
2239         * loader/FormState.cpp:
2240         (WebCore::FormState::FormState):
2241         (WebCore::FormState::create):
2242         * loader/FormState.h:
2243         (WebCore::FormState::formSubmissionTrigger):
2244
2245         When deciding the value of the lockBackForwardList variable, take formSubmissionTrigger() into account:
2246         * loader/RedirectScheduler.cpp:
2247         (WebCore::RedirectScheduler::scheduleFormSubmission):
2248
2249         Rearrange the public HTMLFormElement::submit() method to be called only from DOM or JS bindings,
2250         and figure out the rest of the parameters for an internal submit() call including the formSubmissionTrigger:
2251         * bindings/js/JSHTMLFormElementCustom.cpp:
2252         (WebCore::JSHTMLFormElement::submit):
2253         * html/HTMLFormElement.cpp:
2254         (WebCore::HTMLFormElement::prepareSubmit):
2255         (WebCore::HTMLFormElement::submit):
2256         * html/HTMLFormElement.h:
2257
2258 2009-12-11  Alexey Proskuryakov  <ap@apple.com>
2259
2260         Reviewed by Darin Adler.
2261
2262         https://bugs.webkit.org/show_bug.cgi?id=32445
2263         REGRESSION: http://www.mcafee.com/japan/ displays unstyled
2264
2265         * css/CSSImportRule.cpp:
2266         (WebCore::CSSImportRule::setCSSStyleSheet):
2267         * html/HTMLLinkElement.cpp:
2268         (WebCore::HTMLLinkElement::setCSSStyleSheet):
2269         Add a quirk for mcafee.com/japan (http or https, with or without www).
2270
2271 2009-12-11  Sam Weinig  <sam@webkit.org>
2272
2273         Reviewed by Dan Bernstein.
2274
2275         Make PlatformWheelEvent.h private instead of project.
2276
2277         * WebCore.xcodeproj/project.pbxproj:
2278
2279 2009-12-11  Simon Fraser  <simon.fraser@apple.com>
2280
2281         Reviewed by Darin Adler.
2282
2283         Support reflections on composited layers
2284         https://bugs.webkit.org/show_bug.cgi?id=31885
2285         
2286         First part of supporting composited reflections on compositing layers.
2287         
2288         Rename the m_transformLayer member variable to m_structuralLayer, since it
2289         will get used both for transform layers (for preserve-3d) and to hold a flattening
2290         layer related to reflections, both of which have similar requirements, and are
2291         mutually exclusive.
2292
2293         * platform/graphics/mac/GraphicsLayerCA.h:
2294         primaryLayer(), hostLayerForSublayers() and layerForSuperlayer() all now return
2295         a CALayer, since m_structuralLayer isn't always a WebLayer.
2296         
2297         * platform/graphics/mac/GraphicsLayerCA.mm:
2298         (WebCore::GraphicsLayerCA::commitLayerChanges):
2299         updateLayerPreserves3D() renamed to updateStructuralLayer()
2300         
2301         (WebCore::GraphicsLayerCA::updateLayerNames):
2302         New "update" method for updating layer names.
2303         
2304         (WebCore::GraphicsLayerCA::updateSublayerList):
2305         m_transformLayer -> m_structuralLayer. Also minor refactor to only
2306         allocate newSublayers in one place.
2307         
2308         (WebCore::GraphicsLayerCA::updateLayerSize):
2309         (WebCore::GraphicsLayerCA::removeAnimationFromLayer):
2310         (WebCore::GraphicsLayerCA::hostLayerForSublayers):
2311         (WebCore::GraphicsLayerCA::layerForSuperlayer):
2312         m_transformLayer -> m_structuralLayer
2313         
2314         (WebCore::GraphicsLayerCA::updateStructuralLayer):
2315         Call ensureStructuralLayer() which handles any deltas to the
2316         structural layer type.
2317         
2318         (WebCore::GraphicsLayerCA::ensureStructuralLayer):
2319         Handle changes to the structural layer requirements
2320         
2321         (WebCore::GraphicsLayerCA::structuralLayerPurpose):
2322         Return an enum describing the purpose of the structural layer; for now
2323         this only returns NoStructuralLayer or StructuralLayerForPreserves3D, but
2324         will in future also have a value related to reflections.
2325
2326 2009-12-11  Simon Fraser  <simon.fraser@apple.com>
2327
2328         Build fix for platforms where ACCELERATED_COMPOSITING is not defined.
2329
2330         * page/animation/KeyframeAnimation.cpp:
2331         (WebCore::KeyframeAnimation::pauseAnimation):
2332
2333 2009-12-11  Adam Roben  <aroben@apple.com>
2334
2335         Windows build fix
2336
2337         * platform/graphics/win/WKCACFLayerRenderer.cpp: Removed #include of
2338         non-existent header.
2339
2340 2009-12-11  Simon Fraser  <simon.fraser@apple.com>
2341
2342         Build fix, no review.
2343
2344         Build fix for platforms where ACCELERATED_COMPOSITING is not defined.
2345
2346         * page/animation/KeyframeAnimation.cpp:
2347         (WebCore::KeyframeAnimation::startAnimation):
2348
2349 2009-12-11  Simon Fraser  <simon.fraser@apple.com>
2350
2351         Build fix, no review.
2352
2353         Build fix for platforms where ACCELERATED_COMPOSITING is not defined.
2354
2355         * page/animation/ImplicitAnimation.cpp:
2356         (WebCore::ImplicitAnimation::startAnimation):
2357
2358 2009-12-11  Simon Fraser  <simon.fraser@apple.com>
2359
2360         Reviewed by Darin Adler.
2361
2362         Negative values for animation-delay are ignored (treated as zero)
2363         https://bugs.webkit.org/show_bug.cgi?id=26150
2364         
2365         When we get the m_startTime for an animation or transition, subtract any negative
2366         delay so the animation/transition behaves like it started in the past, per spec.
2367
2368         Tests: animations/negative-delay.html
2369                transitions/negative-delay.html
2370
2371         * page/animation/AnimationBase.cpp:
2372         (WebCore::AnimationBase::updateStateMachine):
2373
2374 2009-12-11  Simon Fraser  <simon.fraser@apple.com>
2375
2376         Reviewed by Dan Bernstein.
2377
2378         Accelerated transitions broken when mixed with paused animations
2379         https://bugs.webkit.org/show_bug.cgi?id=32387
2380
2381         Synchronization of a mixture of accelerated and software animations occurs via
2382         a callback from GraphicsLayerCA, which ends up in
2383         AnimationControllerPrivate::receivedStartTimeResponse(). The time passed in is
2384         the exact time at which the accelerated animations started, so is used as the
2385         start time for all animations and transitions which are marked as waiting.
2386
2387         The bug was that the callback called when re-starting animations that were
2388         paused sent back an old time value, but this was used to start normal
2389         transitions. Therefore the transition would start with a stale start time, and
2390         thus end prematurely.
2391
2392         The fix is to change the way that GraphicsLayerCA handles paused animations.
2393         Rather than setting the beginTime of the animation, it uses a beginTime of 0
2394         and a timeOffset that gets passed down. Thus the callbacks always come with
2395         beginTime for 'now'.
2396
2397         Also clarify the role of AnimationBase::endAnimation() by splitting it into
2398         pauseAnimation() and endAnimation(), and pass down timeOffsets, rather than
2399         beginTimes when starting and pausing.
2400
2401         Manual test only, because the bug requires a non-trivial combination of
2402         animation pausing and transitions which take time, and the bug only shows in
2403         pixel results.
2404         
2405         * manual-tests/animation/transitions-and-paused-animations.html
2406
2407         * page/animation/AnimationBase.cpp:
2408         (WebCore::AnimationBase::updateStateMachine):
2409         * page/animation/AnimationBase.h:
2410         (WebCore::AnimationBase::startAnimation):
2411         (WebCore::AnimationBase::pauseAnimation):
2412         (WebCore::AnimationBase::endAnimation):
2413         * page/animation/ImplicitAnimation.cpp:
2414         (WebCore::ImplicitAnimation::~ImplicitAnimation):
2415         (WebCore::ImplicitAnimation::startAnimation):
2416         (WebCore::ImplicitAnimation::endAnimation):
2417         (WebCore::ImplicitAnimation::onAnimationEnd):
2418         * page/animation/ImplicitAnimation.h:
2419         (WebCore::ImplicitAnimation::pauseAnimation):
2420         * page/animation/KeyframeAnimation.cpp:
2421         (WebCore::KeyframeAnimation::~KeyframeAnimation):
2422         (WebCore::KeyframeAnimation::startAnimation):
2423         (WebCore::KeyframeAnimation::pauseAnimation):
2424         (WebCore::KeyframeAnimation::endAnimation):
2425         (WebCore::KeyframeAnimation::onAnimationEnd):
2426         * page/animation/KeyframeAnimation.h:
2427         * platform/graphics/GraphicsLayer.h:
2428         (WebCore::GraphicsLayer::addAnimation):
2429         (WebCore::GraphicsLayer::pauseAnimation):
2430         * platform/graphics/mac/GraphicsLayerCA.h:
2431         (WebCore::GraphicsLayerCA::LayerAnimation::LayerAnimation):
2432         (WebCore::GraphicsLayerCA::AnimationProcessingAction::AnimationProcessingAction):
2433         * platform/graphics/mac/GraphicsLayerCA.mm:
2434         (WebCore::GraphicsLayerCA::addAnimation):
2435         (WebCore::GraphicsLayerCA::removeAnimationsForKeyframes):
2436         (WebCore::GraphicsLayerCA::pauseAnimation):
2437         (WebCore::GraphicsLayerCA::updateLayerAnimations):
2438         (WebCore::GraphicsLayerCA::setAnimationOnLayer):
2439         (WebCore::GraphicsLayerCA::pauseAnimationOnLayer):
2440         (WebCore::GraphicsLayerCA::createAnimationFromKeyframes):
2441         (WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes):
2442         * rendering/RenderLayerBacking.cpp:
2443         (WebCore::RenderLayerBacking::startAnimation):
2444         (WebCore::RenderLayerBacking::startTransition):
2445         (WebCore::RenderLayerBacking::animationPaused):
2446         * rendering/RenderLayerBacking.h:
2447
2448 2009-12-11  Brian Weinstein  <bweinstein@apple.com>
2449
2450         Reviewed by Darin Adler.
2451
2452         Fixes <http://webkit.org/b/32399>.
2453         Pan Scrolling Jumps out of frames if the initial location is in a frame that can't be scrolled.
2454         
2455         When we initially figure out the layer that we should begin scrolling, don't try to jump out
2456         of frames/iFrames to look at the owner document. We don't want to jump out of frames, so we
2457         don't need that logic anymore.
2458         
2459         Added a test to make sure that we don't pan scroll if we start to scroll in an empty
2460         iFrame that has a scrollable owner document.
2461
2462         Test: platform/win/fast/events/panScroll-no-iframe-jump.html
2463
2464         * dom/Node.cpp:
2465         (WebCore::Node::defaultEventHandler):
2466
2467 2009-12-11  Brian Weinstein  <bweinstein@apple.com>
2468
2469         Reviewed by Adam Roben.
2470
2471         Fixes <http://webkit.org/b/32303>.
2472         Middle-mouse button not firing mousedown DOM event when autoscroll happens.
2473         
2474         This fix moves the pan scrolling code into Node.cpp, as part of the default event handler.
2475         We get two wins out of this:
2476             1) Mousedown DOM events are now fired before pan scrolling.
2477             2) Calling event.preventDefault() on a middle mouse button will now prevent pan scrolling.
2478         
2479         Added tests to show that middle mousedown DOM events are fired when panscrolling happens, and
2480         that when event.preventDefault is called, pan scrolling doesn't happen.
2481
2482         Tests: platform/win/fast/events/panScroll-event-fired.html
2483                platform/win/fast/events/panScroll-preventDefault.html
2484
2485         * dom/Node.cpp:
2486         (WebCore::Node::defaultEventHandler): Moved pan scrolling starting code to here.
2487         * page/EventHandler.cpp:
2488         (WebCore::EventHandler::startPanScrolling): Function to initialize scrolling variables and start timer.
2489         (WebCore::EventHandler::handleMousePressEvent): From here.
2490         * page/EventHandler.h:
2491
2492 2009-12-11  Chris Marrin  <cmarrin@apple.com>
2493
2494         Reviewed by Adam Roben.
2495
2496         Delay load DLLs for accelerated compositing
2497         https://bugs.webkit.org/show_bug.cgi?id=31856
2498         
2499         Change calls that use the data export symbols from
2500         QuartzCore to use the functions in QuartzCoreInterface.
2501         This allows QuartzCore to be delay loaded.
2502
2503         * platform/graphics/win/GraphicsLayerCACF.cpp:
2504         (WebCore::GraphicsLayerCACF::GraphicsLayerCACF):
2505         (WebCore::GraphicsLayerCACF::updateLayerPreserves3D):
2506         (WebCore::GraphicsLayerCACF::updateContentsImage):
2507         * platform/graphics/win/WKCACFLayer.cpp:
2508         (WebCore::toCACFLayerType):
2509         (WebCore::toCACFContentsGravityType):
2510         (WebCore::fromCACFContentsGravityType):
2511         (WebCore::toCACFFilterType):
2512         (WebCore::fromCACFFilterType):
2513         (WebCore::WKCACFLayer::create):
2514         (WebCore::WKCACFLayer::WKCACFLayer):
2515         (WebCore::WKCACFLayer::setContentsGravity):
2516         (WebCore::WKCACFLayer::contentsGravity):
2517         (WebCore::WKCACFLayer::setMagnificationFilter):
2518         (WebCore::WKCACFLayer::magnificationFilter):
2519         (WebCore::WKCACFLayer::setMinificationFilter):
2520         (WebCore::WKCACFLayer::minificationFilter):
2521         * platform/graphics/win/WKCACFLayer.h:
2522         (WebCore::WKCACFLayer::):
2523         * platform/graphics/win/WKCACFLayerRenderer.cpp:
2524         (WebCore::WKCACFLayerRenderer::acceleratedCompositingAvailable):
2525         (WebCore::WKCACFLayerRenderer::createRenderer):
2526
2527 2009-12-11  Steve Block  <steveblock@google.com>
2528
2529         Reviewed by Darin Fisher.
2530
2531         Adds an Android-specific implementation of initializeMaximumHTTPConnectionCountPerHost.
2532         https://bugs.webkit.org/show_bug.cgi?id=31810
2533
2534         * platform/network/ResourceRequestBase.cpp: Modified. Disable default implementation
2535             of initializeMaximumHTTPConnectionCountPerHost for Android.
2536         * platform/network/android: Added.
2537         * platform/network/android/ResourceRequestAndroid.cpp: Added.
2538         (WebCore::initializeMaximumHTTPConnectionCountPerHost): Android-specific implementation.
2539
2540 2009-12-11  Kent Tamura  <tkent@chromium.org>
2541
2542         Reviewed by Darin Fisher.
2543
2544         Add acceptTypes() method to FileChooser.
2545         https://bugs.webkit.org/show_bug.cgi?id=32429
2546
2547         This method returns an 'accept' attribute value of the
2548         corresponding INPUT element. A ChromeClient::runOpenPanel()
2549         implementation can refer it through a FileChooser instance to
2550         support type-restricted file selecting.
2551
2552         This makes no user-visible changes for now.
2553
2554         * platform/FileChooser.h:
2555         (WebCore::FileChooser::acceptTypes):
2556         * rendering/RenderFileUploadControl.cpp:
2557         (WebCore::RenderFileUploadControl::acceptTypes):
2558         * rendering/RenderFileUploadControl.h:
2559
2560 2009-12-11  Victor Wang  <victorw@chromium.org>
2561
2562         Reviewed by Darin Fisher.
2563
2564         Changed PopupMenuChromium to keep the value selected from
2565         keyboard when popup is closed.
2566
2567         The problem is Chromium does not fire the onchange event
2568         when the popup is closed if an item is selected via
2569         keyboard by typing the first char of the item. This makes
2570         chromium popup not having consistent behaviours and also
2571         behaves differently from other major browsers.
2572         Calling popup->hide() instead of popup->hidePopup() in
2573         PopupMenu fixes the issues as it does extra step to check
2574         whethere there is a keyboard selection changed when closing
2575         the popup.
2576
2577         https://bugs.webkit.org/show_bug.cgi?id=32403
2578     
2579         TEST: add a manual test as the current layout test shell
2580         does not support sending keyboard events to popup list.
2581
2582         * manual-tests/chromium/select-close-popup-value-change.html: Added.
2583         * platform/chromium/PopupMenuChromium.cpp:
2584         (WebCore::PopupMenu::hide):
2585
2586 2009-12-11  anton muhin  <antonm@chromium.org>
2587
2588         Reviewed by Adam Barth.
2589
2590         [v8] refactor WeakReferenceMap.
2591         Move common bits of functionality to reduce duplication.
2592
2593         https://bugs.webkit.org/show_bug.cgi?id=32389
2594
2595         Should be covered by buildbots.
2596
2597         * bindings/v8/DOMData.h:
2598         (WebCore::DOMData::WrapperMapObjectRemover::visitDOMWrapper):
2599         (WebCore::DOMData::handleWeakObject):
2600         (WebCore::DOMData::removeObjectsFromWrapperMap):
2601         * bindings/v8/DOMDataStore.cpp:
2602         (WebCore::DOMDataStore::weakDOMObjectCallback):
2603         (WebCore::DOMDataStore::weakActiveDOMObjectCallback):
2604         (WebCore::DOMDataStore::weakNodeCallback):
2605         (WebCore::DOMDataStore::weakSVGElementInstanceCallback):
2606         (WebCore::DOMDataStore::weakSVGObjectWithContextCallback):
2607         * bindings/v8/DOMDataStore.h:
2608         * bindings/v8/V8DOMMap.cpp:
2609         (WebCore::visitDOMNodesInCurrentThread):
2610         (WebCore::visitDOMObjectsInCurrentThread):
2611         (WebCore::visitActiveDOMObjectsInCurrentThread):
2612         (WebCore::visitDOMSVGElementInstancesInCurrentThread):
2613         (WebCore::visitSVGObjectsInCurrentThread):
2614         * bindings/v8/V8DOMMap.h:
2615         (WebCore::WeakReferenceMap::removeIfPresent):
2616         (WebCore::WeakReferenceMap::clear):
2617         (WebCore::WeakReferenceMap::visit):
2618
2619 2009-12-11  anton muhin  <antonm@chromium.org>
2620         Reviewed by Adam Barth.
2621
2622         [v8] in Debug builds create an additional handle scope
2623         when doing debug build checks.
2624         https://bugs.webkit.org/show_bug.cgi?id=32335
2625
2626         Should be covered by buildbots.
2627
2628         * bindings/v8/V8DOMWrapper.h:
2629         (WebCore::V8DOMWrapper::convertDOMWrapperToNative):
2630         (WebCore::V8DOMWrapper::convertDOMWrapperToNode):
2631
2632 2009-12-11  Pavel Feldman  <pfeldman@chromium.org>
2633
2634         Reviewed by Timothy Hatcher.
2635
2636         Web Inspector: Do not use ContextMenuItem as value type in custom
2637         context menu implementation.
2638
2639         https://bugs.webkit.org/show_bug.cgi?id=32411
2640
2641         * GNUmakefile.am:
2642         * WebCore.gypi:
2643         * WebCore.pro:
2644         * WebCore.vcproj/WebCore.vcproj:
2645         * WebCore.xcodeproj/project.pbxproj:
2646         * bindings/js/JSInspectorFrontendHostCustom.cpp:
2647         (WebCore::JSInspectorFrontendHost::showContextMenu):
2648         * inspector/InspectorFrontendHost.cpp:
2649         (WebCore::InspectorFrontendHost::InspectorFrontendHost):
2650         (WebCore::InspectorFrontendHost::~InspectorFrontendHost):
2651         (WebCore::InspectorFrontendHost::showContextMenu):
2652         (WebCore::InspectorFrontendHost::contextMenuCleared):
2653         * inspector/InspectorFrontendHost.h:
2654         (WebCore::InspectorFrontendHost::MenuProvider::create):
2655         (WebCore::InspectorFrontendHost::MenuProvider::~MenuProvider):
2656         (WebCore::InspectorFrontendHost::MenuProvider::disconnect):
2657         (WebCore::InspectorFrontendHost::MenuProvider::populateContextMenu):
2658         (WebCore::InspectorFrontendHost::MenuProvider::contextMenuCleared):
2659         (WebCore::InspectorFrontendHost::MenuProvider::MenuProvider):
2660         * page/ContextMenuController.cpp:
2661         (WebCore::ContextMenuController::ContextMenuController):
2662         (WebCore::ContextMenuController::clearContextMenu):
2663         (WebCore::ContextMenuController::showContextMenu):
2664         (WebCore::ContextMenuController::contextMenuItemSelected):
2665         * page/ContextMenuController.h:
2666         * page/ContextMenuProvider.h: Added.
2667         (WebCore::ContextMenuProvider::~ContextMenuProvider):
2668         * page/ContextMenuSelectionHandler.h: Removed.
2669
2670 2009-12-11  Simon Hausmann  <hausmann@webkit.org>, Kim Grönholm  <kim.gronholm@nomovok.com>
2671
2672         Reviewed by Antti Koivisto.
2673
2674         Basic cross-platform implementation of mapping platform touch events
2675         to JavaScript touch events.
2676
2677         https://bugs.webkit.org/show_bug.cgi?id=32114
2678
2679         Test: fast/events/basic-touch-events.html
2680
2681         * page/EventHandler.cpp:
2682         (WebCore::EventHandler::handleTouchEvent):
2683         * page/EventHandler.h:
2684
2685 2009-12-11  Zoltan Horvath  <zoltan@webkit.org>
2686
2687         Reviewed by Darin Adler.
2688
2689         Allow custom memory allocation control for WebCore's EmptyFrameLoaderClient
2690         https://bugs.webkit.org/show_bug.cgi?id=32110
2691
2692         Inherits the following class from Noncopyable because it is
2693         instantiated by 'new' and no need to be copyable:
2694
2695         class name              - instantiated at: WebCore/'location'
2696
2697         class EmptyFrameLoaderClient - svg/graphics/SVGImage.cpp:229
2698
2699         * loader/FrameLoaderClient.h:
2700
2701 2009-12-11  Zoltan Horvath  <zoltan@webkit.org>
2702
2703         Reviewed by Darin Adler.
2704
2705         Allow custom memory allocation control for 3 classes in WebCore's svg and loader directory
2706         https://bugs.webkit.org/show_bug.cgi?id=32106
2707
2708         Inherits the following classes from Noncopyable because these are instantiated 
2709         by 'new' and no need to be copyable:
2710
2711         class/struct name            - instantiated at: WebCore/'location'
2712
2713         class EmptyContextMenuClient - instantiated at: svg/graphics/SVGImage.cpp:232
2714         class EmptyDragClient        - instantiated at: svg/graphics/SVGImage.cpp:237
2715         class SVGImageChromeClient   - instantiated at: svg/graphics/SVGImage.cpp:243
2716
2717         * svg/graphics/SVGImage.cpp:
2718         * loader/EmptyClients.h:
2719
2720 2009-12-11  Benjamin Poulain  <benjamin.poulain@nokia.com>
2721
2722         Reviewed by Darin Adler.
2723
2724         The values of RuntimeArray are not enumerable
2725         https://bugs.webkit.org/show_bug.cgi?id=29005
2726
2727         The indices of RuntimeArray should be enumerated like for a regular array.
2728
2729         * bridge/runtime_array.cpp:
2730         (JSC::RuntimeArray::getOwnPropertyNames):
2731         * bridge/runtime_array.h:
2732
2733 2009-12-11  Andreas Kling  <andreas.kling@nokia.com>
2734
2735         Reviewed by Simon Hausmann.
2736
2737         [Qt] ImageDecoderQt: Fix retrieval of image file extensions
2738
2739         QImageReader only allows retrieving the format() before actually reading the image.
2740
2741         https://bugs.webkit.org/show_bug.cgi?id=32428
2742
2743         * platform/graphics/qt/ImageDecoderQt.cpp:
2744         (WebCore::ImageDecoderQt::setData):
2745         (WebCore::ImageDecoderQt::internalDecodeSize):
2746
2747 2009-12-11  Simon Hausmann  <hausmann@webkit.org>, Kim Grönholm  <kim.gronholm@nomovok.com>
2748
2749         Reviewed by Antti Koivisto.
2750
2751         Added interfaces for touch event support in JavaScript.
2752
2753         https://bugs.webkit.org/show_bug.cgi?id=32114
2754
2755         The Touch, TouchEvent and TouchList interfaces come straight from
2756         Android's copy of WebKit (eclaire branch).
2757
2758         The PlatformTouchEvent and PlatformTouchPoint code was written by
2759         us.
2760
2761         No new tests added, we are just adding interfaces
2762         with this patch.
2763
2764         * WebCore.pro:
2765         * bindings/js/JSEventCustom.cpp:
2766         (WebCore::toJS):
2767         * dom/Document.cpp:
2768         (WebCore::Document::addListenerTypeIfNeeded):
2769         * dom/Document.h:
2770         (WebCore::Document::):
2771         * dom/Document.idl:
2772         * dom/Element.h:
2773         * dom/Element.idl:
2774         * dom/Event.cpp:
2775         (WebCore::Event::isTouchEvent):
2776         * dom/Event.h:
2777         * dom/EventNames.h:
2778         * dom/Touch.cpp: Added.
2779         (WebCore::contentsX):
2780         (WebCore::contentsY):
2781         (WebCore::Touch::Touch):
2782         (WebCore::Touch::updateLocation):
2783         * dom/Touch.h: Added.
2784         (WebCore::Touch::create):
2785         (WebCore::Touch::frame):
2786         (WebCore::Touch::target):
2787         (WebCore::Touch::identifier):
2788         (WebCore::Touch::clientX):
2789         (WebCore::Touch::clientY):
2790         (WebCore::Touch::screenX):
2791         (WebCore::Touch::screenY):
2792         (WebCore::Touch::pageX):
2793         (WebCore::Touch::pageY):
2794         * dom/Touch.idl: Added.
2795         * dom/TouchEvent.cpp: Added.
2796         (WebCore::TouchEvent::TouchEvent):
2797         (WebCore::TouchEvent::initTouchEvent):
2798         * dom/TouchEvent.h: Added.
2799         (WebCore::TouchEvent::create):
2800         (WebCore::TouchEvent::touches):
2801         (WebCore::TouchEvent::targetTouches):
2802         (WebCore::TouchEvent::changedTouches):
2803         (WebCore::TouchEvent::TouchEvent):
2804         (WebCore::TouchEvent::isTouchEvent):
2805         * dom/TouchEvent.idl: Added.
2806         * dom/TouchList.cpp: Added.
2807         (WebCore::TouchList::item):
2808         * dom/TouchList.h: Added.
2809         (WebCore::TouchList::create):
2810         (WebCore::TouchList::length):
2811         (WebCore::TouchList::append):
2812         (WebCore::TouchList::TouchList):
2813         * dom/TouchList.idl: Added.
2814         * html/HTMLAttributeNames.in:
2815         * html/HTMLElement.cpp:
2816         (WebCore::HTMLElement::parseMappedAttribute):
2817         * page/DOMWindow.h:
2818         * page/DOMWindow.idl:
2819         * platform/PlatformTouchEvent.h: Added.
2820         (WebCore::PlatformTouchEvent::PlatformTouchEvent):
2821         (WebCore::PlatformTouchEvent::touchPoints):
2822         * platform/PlatformTouchPoint.h: Added.
2823         (WebCore::PlatformTouchPoint::):
2824         (WebCore::PlatformTouchPoint::id):
2825         (WebCore::PlatformTouchPoint::state):
2826         (WebCore::PlatformTouchPoint::screenPos):
2827         (WebCore::PlatformTouchPoint::pos):
2828         * platform/qt/PlatformTouchEventQt.cpp: Added.
2829         (WebCore::PlatformTouchEvent::PlatformTouchEvent):
2830         * platform/qt/PlatformTouchPointQt.cpp: Added.
2831         (WebCore::PlatformTouchPoint::PlatformTouchPoint):
2832
2833 2009-12-11  Grace Kloba  <klobag@gmail.com>
2834
2835         Reviewed by Darin Adler.
2836
2837         [Android] Add detachHistoryItem() to AndroidWebHistoryBridge. And the constructor takes
2838         HistoryItem* now. As AndroidWebHistoryBridge holds a dumb pointer of HistoryItem and
2839         HistoryItem holds a RefPtr of AndroidWebHistoryBridge, the dumb pointer needs to be cleared
2840         when HistoryItem is deleted to avoid potential crash.
2841         https://bugs.webkit.org/show_bug.cgi?id=32251
2842
2843         * history/HistoryItem.cpp:
2844         (WebCore::HistoryItem::~HistoryItem):
2845         * history/android/AndroidWebHistoryBridge.h:
2846         (WebCore::AndroidWebHistoryBridge::AndroidWebHistoryBridge):
2847         (WebCore::AndroidWebHistoryBridge::detachHistoryItem):
2848
2849
2850 2009-12-11  Fumitoshi Ukai  <ukai@chromium.org>
2851
2852         Reviewed by Pavel Feldman.
2853
2854         Log WebSocket error to Web Inspector console.
2855         https://bugs.webkit.org/show_bug.cgi?id=32165
2856
2857         * websockets/WebSocketChannel.cpp:
2858         (WebCore::WebSocketChannel::didOpen):
2859         (WebCore::WebSocketChannel::appendToBuffer):
2860         * websockets/WebSocketHandshake.cpp:
2861         (WebCore::WebSocketHandshake::readServerHandshake):
2862         (WebCore::WebSocketHandshake::readHTTPHeaders):
2863         (WebCore::WebSocketHandshake::checkResponseHeaders):
2864
2865 2009-12-10  Adam Barth  <abarth@webkit.org>
2866
2867         Reviewed by Darin Adler.
2868
2869         Mixed content shouldn't trigger for plug-ins without URLs
2870         https://bugs.webkit.org/show_bug.cgi?id=32384
2871
2872         These plug-ins cannot be controlled by active network attackers, so
2873         there's no reason to trigger a mixed content warning.
2874
2875         Test: http/tests/security/mixedContent/empty-url-plugin-in-frame.html
2876
2877         * loader/FrameLoader.cpp:
2878         (WebCore::FrameLoader::isMixedContent):
2879
2880 2009-12-10  Alexey Proskuryakov  <ap@apple.com>
2881
2882         Reviewed by Darin Adler.
2883
2884         https://bugs.webkit.org/show_bug.cgi?id=32140
2885         REGRESSION(r50072): Mailman administrative functionality is broken
2886
2887         Test: http/tests/misc/percent-sign-in-form-field-name.html
2888
2889         * platform/network/FormDataBuilder.cpp: (WebCore::appendQuotedString): Don't encode percent
2890         sign, we never had a good reason to do that.
2891
2892 2009-12-10  Kent Hansen  <kent.hansen@nokia.com>
2893
2894         Reviewed by Geoffrey Garen.
2895
2896         Remove getPropertyAttributes() from JavaScript bindings.
2897         https://bugs.webkit.org/show_bug.cgi?id=31933
2898
2899         The functionality is provided by getOwnPropertyDescriptor().
2900
2901         * WebCore.order:
2902         * bindings/js/JSDOMWindowCustom.cpp:
2903         * bindings/js/JSDOMWindowShell.cpp:
2904         * bindings/js/JSDOMWindowShell.h:
2905         * bindings/scripts/CodeGeneratorJS.pm:
2906         * page/DOMWindow.idl:
2907
2908 2009-12-10  Kenneth Russell  <kbr@google.com>
2909
2910         Reviewed by Oliver Hunt.
2911
2912         Changed WebGLRenderingContext to synthesize GL errors rather than
2913         raising JavaScript exceptions. Removed internal getError() calls
2914         after each graphics call. The GraphicsContext3D maintains the
2915         synthetic exceptions because only it has complete information
2916         about certain conditions requiring them to be raised.
2917
2918         Based on idea from Ilmari Heikkinen, added create3DDebugContext()
2919         to webgl-test.js and changed the WebGL layout tests expecting
2920         error conditions to use it. Updated expected.txt files, which now
2921         implicitly test the OpenGL error as it is part of the exception's
2922         message.
2923
2924         Added new targeted test covering aspects of synthetic errors as
2925         well as regression tests for bugs uncovered during its development.
2926
2927         Test: fast/canvas/webgl/error-reporting.html
2928
2929         * html/canvas/WebGLRenderingContext.cpp:
2930         (WebCore::WebGLRenderingContext::sizeInBytes):
2931         (WebCore::WebGLRenderingContext::activeTexture):
2932         (WebCore::WebGLRenderingContext::attachShader):
2933         (WebCore::WebGLRenderingContext::bindAttribLocation):
2934         (WebCore::WebGLRenderingContext::bindBuffer):
2935         (WebCore::WebGLRenderingContext::bindFramebuffer):
2936         (WebCore::WebGLRenderingContext::bindRenderbuffer):
2937         (WebCore::WebGLRenderingContext::bindTexture):
2938         (WebCore::WebGLRenderingContext::bufferData):
2939         (WebCore::WebGLRenderingContext::bufferSubData):
2940         (WebCore::WebGLRenderingContext::compileShader):
2941         (WebCore::WebGLRenderingContext::createShader):
2942         (WebCore::WebGLRenderingContext::detachShader):
2943         (WebCore::WebGLRenderingContext::disableVertexAttribArray):
2944         (WebCore::WebGLRenderingContext::drawArrays):
2945         (WebCore::WebGLRenderingContext::drawElements):
2946         (WebCore::WebGLRenderingContext::enableVertexAttribArray):
2947         (WebCore::WebGLRenderingContext::framebufferRenderbuffer):
2948         (WebCore::WebGLRenderingContext::framebufferTexture2D):
2949         (WebCore::WebGLRenderingContext::getActiveAttrib):
2950         (WebCore::WebGLRenderingContext::getActiveUniform):
2951         (WebCore::WebGLRenderingContext::getBufferParameter):
2952         (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter):
2953         (WebCore::WebGLRenderingContext::getParameter):
2954         (WebCore::WebGLRenderingContext::getProgramParameter):
2955         (WebCore::WebGLRenderingContext::getProgramInfoLog):
2956         (WebCore::WebGLRenderingContext::getRenderbufferParameter):
2957         (WebCore::WebGLRenderingContext::getShaderParameter):
2958         (WebCore::WebGLRenderingContext::getShaderInfoLog):
2959         (WebCore::WebGLRenderingContext::getShaderSource):
2960         (WebCore::WebGLRenderingContext::getTexParameter):
2961         (WebCore::WebGLRenderingContext::getUniform):
2962         (WebCore::WebGLRenderingContext::getUniformLocation):
2963         (WebCore::WebGLRenderingContext::getVertexAttrib):
2964         (WebCore::WebGLRenderingContext::linkProgram):
2965         (WebCore::WebGLRenderingContext::shaderSource):
2966         (WebCore::WebGLRenderingContext::texImage2D):
2967         (WebCore::WebGLRenderingContext::texSubImage2D):
2968         (WebCore::WebGLRenderingContext::uniform1f):
2969         (WebCore::WebGLRenderingContext::uniform1fv):
2970         (WebCore::WebGLRenderingContext::uniform1i):
2971         (WebCore::WebGLRenderingContext::uniform1iv):
2972         (WebCore::WebGLRenderingContext::uniform2f):
2973         (WebCore::WebGLRenderingContext::uniform2fv):
2974         (WebCore::WebGLRenderingContext::uniform2i):
2975         (WebCore::WebGLRenderingContext::uniform2iv):
2976         (WebCore::WebGLRenderingContext::uniform3f):
2977         (WebCore::WebGLRenderingContext::uniform3fv):
2978         (WebCore::WebGLRenderingContext::uniform3i):
2979         (WebCore::WebGLRenderingContext::uniform3iv):
2980         (WebCore::WebGLRenderingContext::uniform4f):
2981         (WebCore::WebGLRenderingContext::uniform4fv):
2982         (WebCore::WebGLRenderingContext::uniform4i):
2983         (WebCore::WebGLRenderingContext::uniform4iv):
2984         (WebCore::WebGLRenderingContext::uniformMatrix2fv):
2985         (WebCore::WebGLRenderingContext::uniformMatrix3fv):
2986         (WebCore::WebGLRenderingContext::uniformMatrix4fv):
2987         (WebCore::WebGLRenderingContext::useProgram):
2988         (WebCore::WebGLRenderingContext::validateProgram):
2989         (WebCore::WebGLRenderingContext::vertexAttribPointer):
2990         * html/canvas/WebGLRenderingContext.h:
2991         (WebCore::WebGLRenderingContext::cleanupAfterGraphicsCall):
2992         * platform/graphics/GraphicsContext3D.h:
2993         * platform/graphics/mac/GraphicsContext3DMac.cpp:
2994         (WebCore::GraphicsContext3D::getActiveAttrib):
2995         (WebCore::GraphicsContext3D::getActiveUniform):
2996         (WebCore::GraphicsContext3D::getError):
2997         (WebCore::GraphicsContext3D::synthesizeGLError):
2998
2999 2009-12-10  Stephen White  <senorblanco@chromium.org>
3000
3001         Reviewed by Dimitri Glazkov.
3002
3003         Fix for assert on Chrome/skia with SVG Filters enabled.
3004         https://bugs.webkit.org/show_bug.cgi?id=32394
3005
3006         Covered by LayoutTests/svg/W3C-SVG-1.1/filters-tile-01-b.svg and others.
3007
3008         * platform/graphics/skia/ImageBufferSkia.cpp:
3009         (WebCore::ImageBuffer::platformTransformColorSpace):
3010
3011 2009-12-10  Enrica Casucci  <enrica@apple.com>
3012
3013         Reviewed by Darin Adler.
3014
3015         REGRESSION(4.0.4-42a12): With 2 highlighted lines of text in gmail/hotmail selecting Bold selects other 2 edit buttons automatically.
3016         <rdar://problem/7442065>
3017         https://bugs.webkit.org/show_bug.cgi?id=32285
3018
3019         When examining the styles of the nodes after the first in a range selection, we take into
3020         cosideration differences in style of txt nodes only.
3021         
3022         Test: editing/execCommand/queryCommandState-02.html
3023
3024         * editing/Editor.cpp:
3025         (WebCore::Editor::selectionHasStyle):
3026
3027 2009-12-10  Oliver Hunt  <oliver@apple.com>
3028
3029         Reviewed by Alexey Proskuryakov.
3030
3031         Crash in XMLTokenizer::popCurrentNode if window.close() is called during parsing
3032         https://bugs.webkit.org/show_bug.cgi?id=31576
3033
3034         Add a RefCounted wrapper object around xmlParserCtxtPtr so we can
3035         maintain it's lifetime more effectively.
3036
3037         Test: fast/parser/xhtml-close-while-parsing.xhtml
3038
3039         * dom/XMLTokenizer.cpp:
3040         (WebCore::XMLTokenizer::popCurrentNode):
3041         * dom/XMLTokenizer.h:
3042         (WebCore::XMLParserContext::context):
3043         (WebCore::XMLParserContext::XMLParserContext):
3044         (WebCore::XMLTokenizer::context):
3045         * dom/XMLTokenizerLibxml2.cpp:
3046         (WebCore::XMLParserContext::createStringParser):
3047         (WebCore::XMLParserContext::createMemoryParser):
3048         (WebCore::XMLParserContext::~XMLParserContext):
3049         (WebCore::XMLTokenizer::~XMLTokenizer):
3050         (WebCore::XMLTokenizer::doWrite):
3051         (WebCore::XMLTokenizer::initializeParserContext):
3052         (WebCore::XMLTokenizer::doEnd):
3053         (WebCore::XMLTokenizer::lineNumber):
3054         (WebCore::XMLTokenizer::columnNumber):
3055         (WebCore::XMLTokenizer::stopParsing):
3056         (WebCore::parseXMLDocumentFragment):
3057         (WebCore::parseAttributes):
3058
3059 2009-12-10  Pavel Feldman  <pfeldman@chromium.org>
3060
3061         Reviewed by Timothy Hatcher.
3062
3063         Web Inspector: debugger shortcuts don't work when
3064         Search field or Console drawer has focus.
3065
3066         https://bugs.webkit.org/show_bug.cgi?id=32392
3067
3068         * inspector/front-end/inspector.js:
3069         (WebInspector.loaded):
3070         (WebInspector.documentKeyDown):
3071         (WebInspector.documentKeyUp):
3072         (WebInspector.searchKeyDown):
3073
3074 2009-12-10  Dimitri Glazkov  <dglazkov@chromium.org>
3075
3076         Reviewed by Adam Barth.
3077
3078         [V8] Events created in isolated worlds may fire in main world.
3079         https://bugs.webkit.org/show_bug.cgi?id=32386
3080
3081         Test: http/tests/security/isolatedWorld/events.html
3082
3083         * WebCore.gypi: Added WorldContextHandle.
3084         * bindings/v8/ScriptEventListener.cpp:
3085         (WebCore::createAttributeEventListener): Added WorldContextHandle params.
3086         * bindings/v8/SharedPersistent.h: Fixed a few style/include issues.
3087         * bindings/v8/V8AbstractEventListener.cpp:
3088         (WebCore::V8AbstractEventListener::V8AbstractEventListener): Added WorldContextHandle params.
3089         (WebCore::V8AbstractEventListener::handleEvent): Adjusted context retrieval to use WorldContextHandle.
3090         (WebCore::V8AbstractEventListener::invokeEventHandler): Ditto.
3091         * bindings/v8/V8AbstractEventListener.h:
3092         (WebCore::V8AbstractEventListener::worldContext): Added WorldContextHandle params.
3093         * bindings/v8/V8EventListenerList.h:
3094         (WebCore::V8EventListenerList::findOrCreateWrapper): Ditto.
3095         * bindings/v8/V8LazyEventListener.cpp:
3096         (WebCore::V8LazyEventListener::V8LazyEventListener): Ditto.
3097         (WebCore::V8LazyEventListener::prepareListenerObject): Adjusted context retrieval to use WorldContextHandle.
3098         * bindings/v8/V8LazyEventListener.h:
3099         (WebCore::V8LazyEventListener::create): Added WorldContextHandle params.
3100         * bindings/v8/V8Proxy.cpp:
3101         (WebCore::V8Proxy::context): Refactored to use mainWorldContext();
3102         (WebCore::V8Proxy::mainWorldContext): Added.
3103         (WebCore::toV8Context): Changed to use WorldContextHandle.
3104         * bindings/v8/V8Proxy.h: Added mainWorldContext decl.
3105         * bindings/v8/V8Utilities.cpp:
3106         (WebCore::reportException): Added an extra check to avoid crashes during frame teardown.
3107         * bindings/v8/V8WorkerContextEventListener.cpp:
3108         (WebCore::V8WorkerContextEventListener::V8WorkerContextEventListener): Added WorldContextHandle params.
3109         * bindings/v8/V8WorkerContextEventListener.h:
3110         (WebCore::V8WorkerContextEventListener::create): Added WorldContextHandle params.
3111         * bindings/v8/WorldContextHandle.cpp: Added.
3112         * bindings/v8/WorldContextHandle.h: Added.
3113         * bindings/v8/custom/V8CustomEventListener.cpp:
3114         (WebCore::V8EventListener::V8EventListener): Added WorldContextHandle params.
3115         * bindings/v8/custom/V8CustomEventListener.h:
3116         (WebCore::V8EventListener::create): Added WorldContextHandle params.
3117
3118 2009-12-10  Jon Honeycutt  <jhoneycutt@apple.com>
3119
3120         Pass more information about a plug-in to the PluginHalterDelegate
3121
3122         Reviewed by Adam Roben.
3123
3124         * loader/EmptyClients.h:
3125         Remove this unused class.
3126
3127         * page/HaltablePlugin.h:
3128         Add new functions to return the plug-in's name and whether it is
3129         windowed.
3130
3131         * page/PluginHalter.cpp:
3132         (WebCore::PluginHalter::timerFired):
3133         Pass new arguments to the client.
3134
3135         * page/PluginHalterClient.h:
3136         Add new parameters.
3137
3138         * plugins/PluginView.cpp:
3139         (WebCore::PluginView::pluginName):
3140         Return the name from the PluginPackage.
3141
3142         * plugins/PluginView.h:
3143         (WebCore::PluginView::isWindowed):
3144
3145 2009-12-09  Brian Weinstein  <bweinstein@apple.com>
3146
3147         Reviewed by Pavel Feldman.
3148
3149         Fixes <http://webkit.org/b/31738>.
3150         Web Inspector: Console Scope Bar should be on top of console when Console is a Panel.
3151         
3152         When the console is set to be shown as a full panel, move the scope bar to the top
3153         where it looks best. When it is only shown as a drawer, move it to the bottom, where
3154         it originally was. This takes up less space as a drawer, and makes it more discoverable
3155         and usable when it is the full panel.
3156
3157         * inspector/front-end/ConsolePanel.js:
3158         (WebInspector.ConsolePanel.prototype.show): Move filter bar to top.
3159         (WebInspector.ConsolePanel.prototype.hide): Move filter bar back to bottom.
3160         * inspector/front-end/inspector.css:
3161
3162 2009-12-10  Stephen White  <senorblanco@chromium.org>
3163
3164         Reviewed by Dirk Schulze.
3165
3166         Fix for alpha blending in SVG Filters on Chromium/skia.
3167         https://bugs.webkit.org/show_bug.cgi?id=32378
3168
3169         Covered by LayoutTests/svg/filters/feGaussianBlur.svg and others.
3170
3171         * platform/graphics/skia/ImageBufferSkia.cpp:
3172         (WebCore::ImageBuffer::platformTransformColorSpace):
3173
3174 2009-12-10  Pavel Feldman  <pfeldman@chromium.org>
3175
3176         Reviewed by Timothy Hatcher.
3177
3178         Web Inspector: Add context menu actions for DOM tree.
3179
3180         https://bugs.webkit.org/show_bug.cgi?id=32348
3181
3182         * English.lproj/localizedStrings.js:
3183         * inspector/front-end/ContextMenu.js:
3184         (WebInspector.ContextMenu):
3185         (WebInspector.ContextMenu.prototype.show):
3186         (WebInspector.ContextMenu.prototype.appendItem):
3187         (WebInspector.ContextMenu.prototype.appendSeparator):
3188         (WebInspector.ContextMenu.prototype._itemSelected):
3189         (WebInspector.contextMenuItemSelected):
3190         (WebInspector.contextMenuCleared):
3191         * inspector/front-end/ElementsTreeOutline.js:
3192         (WebInspector.ElementsTreeOutline.prototype._onmouseout):
3193         (WebInspector.ElementsTreeOutline.prototype.populateContextMenu):
3194         (WebInspector.ElementsTreeElement.prototype.ondblclick):
3195         (WebInspector.ElementsTreeElement.prototype._startEditingFromEvent):
3196         (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
3197         (WebInspector.ElementsTreeElement.prototype._populateTextContextMenu):
3198         (WebInspector.ElementsTreeElement.prototype._startEditing):
3199         (WebInspector.ElementsTreeElement.prototype._addNewAttribute):
3200         * inspector/front-end/ObjectPropertiesSection.js:
3201         (WebInspector.ObjectPropertyTreeElement.prototype.ondblclick):
3202         * inspector/front-end/ResourceView.js:
3203         (WebInspector.ResourceView.prototype._toggleURLdecoding):
3204         * inspector/front-end/ResourcesPanel.js:
3205         (WebInspector.ResourceSidebarTreeElement.prototype.ondblclick):
3206         * inspector/front-end/StylesSidebarPane.js:
3207         (WebInspector.StylePropertyTreeElement.prototype):
3208         * inspector/front-end/inspector.js:
3209         (WebInspector.contextMenuEventFired):
3210         * inspector/front-end/treeoutline.js:
3211         (TreeElement.treeElementDoubleClicked):
3212
3213 2009-12-09  Nikolas Zimmermann  <nzimmermann@rim.com>
3214
3215         Reviewed by Oliver Hunt.
3216
3217         Filters contain some leaks in untested code
3218         https://bugs.webkit.org/show_bug.cgi?id=32325
3219
3220         Fix obvious leak in SVGFE*Lighting classes. Implement the create() idiom for 
3221         all classes in svg/graphics, that were missing it. The lighting filters aren't
3222         implemented so far, but the associated FilterEffect objects are build, which created
3223         these leaks.
3224
3225         This removes the SVG related failures in the leaks bot.
3226
3227         * svg/SVGFEDiffuseLightingElement.cpp:
3228         (WebCore::SVGFEDiffuseLightingElement::findLights):
3229         * svg/SVGFEDiffuseLightingElement.h:
3230         * svg/SVGFEDistantLightElement.cpp:
3231         (WebCore::SVGFEDistantLightElement::lightSource):
3232         * svg/SVGFEDistantLightElement.h:
3233         * svg/SVGFELightElement.h:
3234         * svg/SVGFEPointLightElement.cpp:
3235         (WebCore::SVGFEPointLightElement::lightSource):
3236         * svg/SVGFEPointLightElement.h:
3237         * svg/SVGFESpecularLightingElement.cpp:
3238         (WebCore::SVGFESpecularLightingElement::findLights):
3239         * svg/SVGFESpecularLightingElement.h:
3240         * svg/SVGFESpotLightElement.cpp:
3241         (WebCore::SVGFESpotLightElement::lightSource):
3242         * svg/SVGFESpotLightElement.h:
3243         * svg/graphics/filters/SVGDistantLightSource.h:
3244         (WebCore::DistantLightSource::create):
3245         (WebCore::DistantLightSource::DistantLightSource):
3246         * svg/graphics/filters/SVGFEDiffuseLighting.cpp:
3247         (WebCore::FEDiffuseLighting::FEDiffuseLighting):
3248         (WebCore::FEDiffuseLighting::create):
3249         (WebCore::FEDiffuseLighting::setLightSource):
3250         * svg/graphics/filters/SVGFEDiffuseLighting.h:
3251         * svg/graphics/filters/SVGFESpecularLighting.cpp:
3252         (WebCore::FESpecularLighting::FESpecularLighting):
3253         (WebCore::FESpecularLighting::create):
3254         (WebCore::FESpecularLighting::setLightSource):
3255         * svg/graphics/filters/SVGFESpecularLighting.h:
3256         * svg/graphics/filters/SVGLightSource.h:
3257         * svg/graphics/filters/SVGPointLightSource.h:
3258         (WebCore::PointLightSource::create):
3259         (WebCore::PointLightSource::PointLightSource):
3260         * svg/graphics/filters/SVGSpotLightSource.h:
3261         (WebCore::SpotLightSource::create):
3262         (WebCore::SpotLightSource::SpotLightSource):
3263
3264 2009-12-10  Kenneth Russell  <kbr@google.com>
3265
3266         Reviewed by Oliver Hunt.
3267
3268         [Chromium] SporeViewer demo doesn't work in Chromium
3269         https://bugs.webkit.org/show_bug.cgi?id=32364
3270
3271         Test: fast/canvas/webgl/bug-32364.html
3272
3273         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
3274         (WebCore::CALLBACK_FUNC_DECL):
3275         (WebCore::vertexAttribAndUniformHelperf):
3276         (WebCore::uniformHelperi):
3277
3278 2009-12-09  Beth Dakin  <bdakin@apple.com>
3279
3280         Reviewed by Oliver Hunt.
3281
3282         Fix for https://bugs.webkit.org/show_bug.cgi?id=32346 SVG property 
3283         -webkit-shadow should apply shadow on the result after compositing
3284         -and corresponding-
3285         <rdar://problem/7389404>
3286
3287         Set a transparency layer when setting a shadow to apply the shadow 
3288         to the composite.
3289         * rendering/SVGRenderSupport.cpp:
3290         (WebCore::SVGRenderBase::prepareToRenderSVGContent):
3291         (WebCore::SVGRenderBase::finishRenderSVGContent):
3292
3293 2009-12-09  Alexey Proskuryakov  <ap@apple.com>
3294
3295         Reviewed by Darin Adler.
3296
3297         https://bugs.webkit.org/show_bug.cgi?id=32332
3298         WebSocket events should be dispatched synchronously
3299
3300         Updated websocket/tests/simple to test for the new behavior.
3301
3302         When Web Sockets API says that events should be queued for async dispatch, it means something
3303         different. We should keep this in mind when dealing with other HTML5-related specs.
3304
3305         The model for HTML5 is that code running in response to network events (e.g. WebSocket or
3306         XMLHttpRequest algorithms) runs in a separate thread of execution, and thus needs to post
3307         async events as its only way to communicate with client code. As long as network events are
3308         queued themselves (as they are in WebKit), there is no need to queue JS events for async
3309         dispatch.
3310
3311         * websockets/WebSocket.cpp:
3312         (WebCore::WebSocket::didConnect):
3313         (WebCore::WebSocket::didReceiveMessage):
3314         (WebCore::WebSocket::didClose):
3315
3316 2009-12-09  Alexey Proskuryakov  <ap@apple.com>
3317
3318         Reviewed by Oliver Hunt.
3319
3320         https://bugs.webkit.org/show_bug.cgi?id=32355
3321         Assertion failure when opening a WebSocket connection
3322
3323         I couldn't make a reliable test for this. Once the test from bug 32299 is landed, it
3324         will provide partial coverage, as I was frequently seeing the assertion failure with it.
3325
3326         * platform/network/SocketStreamHandleBase.cpp: (WebCore::SocketStreamHandleBase::send):
3327         It's not an error if zero is returned from platformSend() - it just means that nothing could
3328         be pushed down to the network layer, and all data was queued for later.
3329         * platform/network/cf/SocketStreamHandleCFNet.cpp:
3330         (WebCore::SocketStreamHandle::readStreamCallback): This will no longer happen with SocketStream,
3331         but a client can potentially destroy the handle from any callback, so we need to check that
3332         this didn't happen.
3333         (WebCore::SocketStreamHandle::writeStreamCallback): Ditto.
3334
3335 2009-12-09  Sam Weinig  <sam@webkit.org>
3336
3337         Roll out 51919 and 51920. They were incorrect and unnecessary right now.
3338
3339         * platform/mac/WebCoreObjCExtras.mm:
3340         (WebCoreObjCScheduleDeallocateOnMainThread):
3341         * platform/network/mac/NetworkStateNotifierMac.cpp:
3342         (WebCore::NetworkStateNotifier::NetworkStateNotifier):
3343
3344 2009-12-09  Steve Block  <steveblock@google.com>
3345
3346         Reviewed by Darin Fisher.
3347
3348         Adds wtf/StdLibExtras.h include for DEFINE_STATIC_LOCAL in V8 ScriptState.
3349         https://bugs.webkit.org/show_bug.cgi?id=32330
3350
3351         Build fix only, no new tests.
3352
3353         * bindings/v8/ScriptState.cpp: Modified. Adds wtf/StdLibExtras.h include.
3354
3355 2009-12-09  Steve Block  <steveblock@google.com>
3356
3357         Reviewed by Darin Adler.
3358
3359         Adds ENABLE(INSPECTOR) guards around script binding methods that use types
3360         defined only when INSPECTOR is enabled.
3361         https://bugs.webkit.org/show_bug.cgi?id=32328
3362
3363         Build fix only, no new tests.
3364
3365         * bindings/js/ScriptValue.cpp: Modified. Added ENABLE(INSPECTOR) guard to ScriptValue::quarantineValue.
3366         * bindings/v8/ScriptObject.cpp: Modified. Added ENABLE(INSPECTOR) guard to some overloads of ScriptGlobalObject::set.
3367
3368 2009-12-09  Steve Block  <steveblock@google.com>
3369
3370         Reviewed by Adam Barth.
3371
3372         Adds Android Makefiles for building with V8.
3373         Also updates existing Android Makefiles with latest additions.
3374         https://bugs.webkit.org/show_bug.cgi?id=32278
3375
3376         Build fix only, no new tests.
3377
3378         * Android.derived.jscbindings.mk: Modified.
3379         * Android.derived.mk: Modified.
3380         * Android.derived.v8bindings.mk: Added.
3381         * Android.jscbindings.mk: Modified.
3382         * Android.mk: Modified.
3383         * Android.v8bindings.mk: Added.
3384
3385 2009-12-09  Jonathan Dixon  <joth@chromium.org>
3386
3387         Reviewed by Dimitri Glazkov.
3388
3389         Bug 32338 - [Chromium] Fix Chromium builder by including missing GeolocationServiceChromium
3390         https://bugs.webkit.org/show_bug.cgi?id=32338
3391
3392         Fix build break: re-include file dropped out by merge in http://trac.webkit.org/changeset/51681/trunk/WebCore/WebCore.gypi
3393
3394         * WebCore.gypi: Add missing GeolocationServiceChromium.cpp
3395
3396 2009-12-09  Andreas Kling  <andreas.kling@nokia.com>
3397
3398         Reviewed by Brady Eidson.
3399
3400         Fixed a typo in http://trac.webkit.org/changeset/51644 that broke
3401         the QWebPage autotest.
3402
3403         No new test required.
3404
3405         * loader/FrameLoader.cpp:
3406         (WebCore::FrameLoader::navigateToDifferentDocument):
3407
3408 2009-12-09  Robert Hogan  <robert@roberthogan.net>
3409
3410         Reviewed by Eric Seidel.
3411
3412         Exclude JSSVG*.cpp generated files from --minimal and --no-svg builds.
3413         
3414         https://bugs.webkit.org/show_bug.cgi?id=32286
3415
3416         * WebCore.pro:
3417
3418 2009-12-09  Philippe Normand  <pnormand@igalia.com>
3419
3420         Reviewed by Eric Carlson.
3421
3422         Ogg mimetypes are incorrect
3423         https://bugs.webkit.org/show_bug.cgi?id=27113
3424
3425         The ogg extension is handled by audio/ogg instead of
3426         application/ogg. See
3427         http://wiki.xiph.org/MIME_Types_and_File_Extensions
3428
3429         * platform/MIMETypeRegistry.cpp:
3430         (WebCore::TypeExtensionPair::):
3431
3432 2009-12-09  Sam Weinig  <sam@webkit.org>
3433
3434         Reviewed by Anders Carlsson.
3435
3436         Use the current run loop instead of the main runloop for the NetworkStateNotifier.
3437
3438         * platform/network/mac/NetworkStateNotifierMac.cpp:
3439         (WebCore::NetworkStateNotifier::NetworkStateNotifier):
3440
3441 2009-12-09  Sam Weinig  <sam@webkit.org>
3442
3443         Reviewed by Anders Carlsson.
3444
3445         Use isMainThread() helper instead of pthread_main_np() != 0.
3446
3447         * platform/mac/WebCoreObjCExtras.mm:
3448         (WebCoreObjCScheduleDeallocateOnMainThread):
3449
3450 2009-12-09  Sam Weinig  <sam@webkit.org>
3451
3452         Reviewed by Anders Carlsson.
3453
3454         Add some #ifdefs to allow us to experiment with a single NSView mac WebKit.
3455
3456         * page/Chrome.h:
3457         * page/EventHandler.h:
3458         * page/mac/ChromeMac.mm:
3459         * page/mac/DragControllerMac.mm:
3460         (WebCore::DragController::dragOperation):
3461         * page/mac/EventHandlerMac.mm:
3462         (WebCore::EventHandler::eventLoopHandleMouseDragged):
3463         (WebCore::EventHandler::eventActivatedView):
3464         (WebCore::EventHandler::passMousePressEventToSubframe):
3465         (WebCore::EventHandler::passMouseMoveEventToSubframe):
3466         (WebCore::EventHandler::passMouseReleaseEventToSubframe):
3467         (WebCore::EventHandler::passWheelEventToWidget):
3468         (WebCore::EventHandler::focusDocumentView):
3469         (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
3470         (WebCore::EventHandler::createDraggingClipboard):
3471         (WebCore::isKeyboardOptionTab):
3472         (WebCore::EventHandler::invertSenseOfTabsToLinks):
3473         (WebCore::EventHandler::tabsToAllControls):
3474         (WebCore::EventHandler::needsKeyboardEventDisambiguationQuirks):
3475         (WebCore::EventHandler::accessKeyModifiers):
3476         * platform/ScrollView.cpp:
3477         (WebCore::ScrollView::wheelEvent):
3478         * platform/Widget.cpp:
3479         * platform/Widget.h:
3480         * platform/mac/ScrollViewMac.mm:
3481         * platform/mac/WidgetMac.mm:
3482         (WebCore::Widget::Widget):
3483         (WebCore::Widget::~Widget):
3484         (WebCore::Widget::show):
3485         (WebCore::Widget::hide):
3486         (WebCore::Widget::setCursor):
3487         (WebCore::Widget::paint):
3488         (WebCore::Widget::setFocus):
3489         (WebCore::Widget::setIsSelected):
3490         (WebCore::Widget::frameRect):
3491         (WebCore::Widget::setFrameRect):
3492
3493 2009-12-09  Michael Nordman  <michaeln@google.com>
3494
3495         Reviewed by Dimitri Glazkov.
3496
3497         Chromium build fix.
3498
3499         No new tests.
3500
3501         * bindings/v8/DOMData.cpp
3502         * bindings/v8/V8DOMWrapper.cpp
3503         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
3504         (WebCore::vertexAttribAndUniformHelperf):
3505         (WebCore::uniformHelperi):
3506         (WebCore::uniformMatrixHelper):
3507
3508 2009-12-09  Søren Gjesse  <sgjesse@chromium.org>
3509
3510         Reviewed by Pavel Feldman.
3511
3512         [V8] Isolated world reuse failure
3513         https://bugs.webkit.org/show_bug.cgi?id=32306
3514
3515         Fixed bug introduced in r51407: (http://trac.webkit.org/changeset/51407) which caused layout test
3516         LayoutTests/http/tests/security/isolatedWorld/world-reuse.html to fail.
3517
3518         * bindings/v8/V8Proxy.cpp:
3519         (WebCore::V8Proxy::setInjectedScriptContextDebugId):
3520         (WebCore::V8Proxy::contextDebugId):
3521
3522 2009-12-09  Patrick Scott  <phanna@email.unc.edu>
3523
3524         Fix the build with ENABLE_ORIENTATION_EVENTS
3525         https://bugs.webkit.org/show_bug.cgi?id=32321
3526
3527         * page/Frame.cpp:
3528         (WebCore::Frame::sendOrientationChangeEvent):
3529
3530 2009-12-09  Avi Drissman  <avi@chromium.org>
3531
3532         Reviewed by Darin Fisher.
3533
3534         Chromium tickmarks in scrollbar now UX approved.
3535         https://bugs.webkit.org/show_bug.cgi?id=32069
3536
3537         * platform/chromium/ScrollbarThemeChromiumMac.mm:
3538         (WebCore::ScrollbarThemeChromiumMac::paint):
3539
3540 2009-12-09  Chris Marrin  <cmarrin@apple.com>
3541
3542         Reviewed by Adam Roben.
3543
3544         Delay load DLLs for accelerated compositing
3545         https://bugs.webkit.org/show_bug.cgi?id=31856
3546         
3547         Add logic to turn off accelerated compositing if d3d9 or QuartzCore
3548         DLLs are not present.
3549         
3550         This patch also changes the WKCACFLayerRenderer to be a pointer.
3551         This allows me to have a create() method which will not create it when
3552         accelerated compositing is disabled because of missing DLLs. It 
3553         avoids having to do so many checks. I also made WebViewWndProc 
3554         a member function to allow several methods to be made protected, which
3555         allows me to avoid doing availability checks there as well.
3556
3557         * platform/graphics/win/WKCACFLayer.cpp:
3558         * platform/graphics/win/WKCACFLayer.h:
3559         * platform/graphics/win/WKCACFLayerRenderer.cpp:
3560         * platform/graphics/win/WKCACFLayerRenderer.h:
3561         * rendering/RenderLayerBacking.cpp:
3562
3563 2009-12-09  Nate Chapin  <japhet@chromium.org>
3564
3565         Reviewed by Darin Adler.
3566
3567         Rename dom/ClassNames to SpaceSplitString and update build files.
3568
3569         https://bugs.webkit.org/show_bug.cgi?id=32250
3570
3571         * GNUmakefile.am:
3572         * WebCore.gypi:
3573         * WebCore.pro:
3574         * WebCore.vcproj/WebCore.vcproj:
3575         * WebCore.xcodeproj/project.pbxproj:
3576         * WebCoreSources.bkl:
3577         * css/CSSStyleSelector.cpp:
3578         (WebCore::CSSStyleSelector::matchRules):
3579         * dom/ClassNames.cpp: Removed.
3580         * dom/ClassNames.h: Removed.
3581         * dom/ClassNodeList.h:
3582         * dom/NamedMappedAttrMap.h:
3583         (WebCore::NamedMappedAttrMap::classNames):
3584         * dom/SpaceSplitString.cpp: Copied from WebCore/dom/ClassNames.cpp.
3585         (WebCore::SpaceSplitStringData::createVector):
3586         (WebCore::SpaceSplitStringData::containsAll):
3587         * dom/SpaceSplitString.h: Copied from WebCore/dom/ClassNames.h.
3588         (WebCore::SpaceSplitStringData::SpaceSplitStringData):
3589         (WebCore::SpaceSplitString::SpaceSplitString):
3590         (WebCore::SpaceSplitString::set):
3591         (WebCore::SpaceSplitString::containsAll):
3592         * dom/StyledElement.h:
3593         (WebCore::StyledElement::classNames):
3594         * html/HTMLAnchorElement.cpp:
3595         (WebCore::HTMLAnchorElement::setRel):
3596
3597 2009-12-09  Stephen White  <senorblanco@chromium.org>
3598
3599         Reviewed by Darin Fisher.
3600
3601         Enable SVG filters in Chromium build.
3602         https://bugs.webkit.org/show_bug.cgi?id=32323
3603
3604         Covered by SVG filter layout tests.
3605
3606         * WebCore.gyp/WebCore.gyp:
3607         * WebCore.gypi:
3608         * bindings/scripts/CodeGeneratorV8.pm:
3609         * bindings/v8/DerivedSourcesAllInOne.cpp:
3610         * bindings/v8/V8DOMWrapper.cpp:
3611         * bindings/v8/V8Index.cpp:
3612         * bindings/v8/V8Index.h:
3613
3614 2009-12-09  Oliver Hunt  <oliver@apple.com>
3615
3616         Build fix
3617
3618         * bindings/js/JSWebGLRenderingContextCustom.cpp:
3619         (WebCore::functionForUniform):
3620
3621 2009-12-08  Fumitoshi Ukai  <ukai@chromium.org>
3622
3623         Reviewed by Darin Adler.
3624
3625         WebSocket allow space (U+0020) in sub protocol name.
3626         https://bugs.webkit.org/show_bug.cgi?id=32266
3627
3628         Test: websocket/tests/sub-protocol-with-space.html
3629
3630         * websockets/WebSocket.cpp:
3631         (WebCore::isValidProtocolString):
3632
3633 2009-12-08  Peterson Trethewey  <petersont@google.com>
3634
3635         Reviewed by Oliver Hunt.
3636
3637         Implement WebGLUniformLocation and change API to use it.
3638         https://bugs.webkit.org/show_bug.cgi?id=31173
3639
3640         Test: fast/canvas/webgl/uniform-location.html
3641
3642         * DerivedSources.make:
3643         * WebCore.gypi:
3644         * WebCore.xcodeproj/project.pbxproj:
3645         * bindings/js/JSWebGLRenderingContextCustom.cpp:
3646         (WebCore::JSWebGLRenderingContext::getProgramParameter):
3647         (WebCore::JSWebGLRenderingContext::getUniform):
3648         (WebCore::functionForUniform):
3649         (WebCore::dataFunctionf):
3650         (WebCore::dataFunctioni):
3651         (WebCore::dataFunctionMatrix):
3652         * bindings/scripts/CodeGeneratorV8.pm:
3653         * bindings/v8/DerivedSourcesAllInOne.cpp:
3654         * bindings/v8/V8Index.cpp:
3655         * bindings/v8/V8Index.h:
3656         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
3657         (WebCore::toWebGLUniformLocation):
3658         (WebCore::):
3659         (WebCore::CALLBACK_FUNC_DECL):
3660         (WebCore::isFunctionToCallForAttribute):
3661         (WebCore::vertexAttribAndUniformHelperf):
3662         (WebCore::uniformHelperi):
3663         (WebCore::uniformMatrixHelper):
3664         * html/canvas/WebGLRenderingContext.cpp:
3665         (WebCore::WebGLRenderingContext::getUniform):
3666         (WebCore::WebGLRenderingContext::getUniformLocation):
3667         (WebCore::WebGLRenderingContext::uniform1f):
3668         (WebCore::WebGLRenderingContext::uniform1fv):
3669         (WebCore::WebGLRenderingContext::uniform1i):
3670         (WebCore::WebGLRenderingContext::uniform1iv):
3671         (WebCore::WebGLRenderingContext::uniform2f):
3672         (WebCore::WebGLRenderingContext::uniform2fv):
3673         (WebCore::WebGLRenderingContext::uniform2i):
3674         (WebCore::WebGLRenderingContext::uniform2iv):
3675         (WebCore::WebGLRenderingContext::uniform3f):
3676         (WebCore::WebGLRenderingContext::uniform3fv):
3677         (WebCore::WebGLRenderingContext::uniform3i):
3678         (WebCore::WebGLRenderingContext::uniform3iv):
3679         (WebCore::WebGLRenderingContext::uniform4f):
3680         (WebCore::WebGLRenderingContext::uniform4fv):
3681         (WebCore::WebGLRenderingContext::uniform4i):
3682         (WebCore::WebGLRenderingContext::uniform4iv):
3683         (WebCore::WebGLRenderingContext::uniformMatrix2fv):
3684         (WebCore::WebGLRenderingContext::uniformMatrix3fv):
3685         (WebCore::WebGLRenderingContext::uniformMatrix4fv):
3686         * html/canvas/WebGLRenderingContext.h:
3687         * html/canvas/WebGLRenderingContext.idl:
3688         * html/canvas/WebGLUniformLocation.cpp: Added.
3689         (WebCore::WebGLUniformLocation::create):
3690         (WebCore::WebGLUniformLocation::WebGLUniformLocation):
3691         * html/canvas/WebGLUniformLocation.h: Added.
3692         (WebCore::WebGLUniformLocation::~WebGLUniformLocation):
3693         (WebCore::WebGLUniformLocation::program):
3694         (WebCore::WebGLUniformLocation::location):
3695         * html/canvas/WebGLUniformLocation.idl: Added.
3696
3697 2009-12-08  Adam Langley  <agl@google.com>
3698
3699         Reviewed by Darin Adler.
3700
3701         Fix assertion failure in WebCore::RenderBlock::startDelayUpdateScrollInfo
3702
3703         startDelayUpdateScrollInfo calls a function that can end up calling
3704         startDelayUpdateScrollInfo again. However, it's static state is
3705         inconsistent when this happens leading to an assertion failure (or
3706         probably a memory leak if assertions are off).
3707
3708         Thanks to Robert Swiecki for the test case.
3709
3710         https://bugs.webkit.org/show_bug.cgi?id=32172
3711         http://code.google.com/p/chromium/issues/detail?id=28880
3712
3713         Test: fast/css/recursive-delay-update-scroll.html
3714
3715         * rendering/RenderBlock.cpp:
3716         (WebCore::RenderBlock::finishDelayUpdateScrollInfo):
3717
3718 2009-12-08  Steve Falkenburg  <sfalken@apple.com>
3719
3720         Reviewed by Adam Roben.
3721
3722         WebCore source level debugging on Windows not reliable in some cases
3723         https://bugs.webkit.org/show_bug.cgi?id=32297
3724
3725         Customized pdb file name/location for WebCore static library.
3726
3727         * WebCore.vcproj/WebCoreCommon.vsprops: Add ProgramDataBaseFileName.
3728
3729 2009-12-08  Kevin Watters  <kevinwatters@gmail.com>
3730
3731         Reviewed by Kevin Ollivier.
3732
3733         [wx] Mac plugins support.
3734         
3735         https://bugs.webkit.org/show_bug.cgi?id=32236
3736
3737         * platform/FileSystem.h:
3738         * platform/cf/BinaryPropertyList.h:
3739         * platform/network/curl/ResourceHandleManager.cpp:
3740         * platform/wx/FileSystemWx.cpp:
3741         (WebCore::fileExists):
3742         (WebCore::unloadModule):
3743         (WebCore::wxDirTraverserNonRecursive::wxDirTraverserNonRecursive):
3744         (WebCore::wxDirTraverserNonRecursive::OnFile):
3745         (WebCore::wxDirTraverserNonRecursive::OnDir):
3746         (WebCore::listDirectory):
3747         * plugins/mac/PluginViewMac.cpp:
3748         (WebCore::nativeWindowFor):
3749         (WebCore::cgHandleFor):
3750         (WebCore::topLevelOffsetFor):
3751         (WebCore::PluginView::platformStart):
3752         (WebCore::PluginView::setFocus):
3753         (WebCore::PluginView::invalidateRect):
3754         (WebCore::PluginView::handleKeyboardEvent):
3755         (WebCore::PluginView::globalMousePosForPlugin):
3756         * plugins/wx/PluginDataWx.cpp: Added.
3757         (WebCore::PluginData::initPlugins):
3758         (WebCore::PluginData::refresh):
3759         * wscript:
3760
3761 2009-12-08  Brady Eidson  <beidson@apple.com>
3762
3763         Reviewed by Darin Adler.
3764
3765         Navigating to a cached page can result in accessing a destroyed HTMLInputElement.
3766         <rdar://problem/6856662> and https://webkit.org/b/32293
3767
3768         Test: fast/loader/input-element-page-cache-crash.html
3769
3770         * html/HTMLInputElement.cpp:
3771         (WebCore::HTMLInputElement::parseMappedAttribute): Make sure to unregister for the activation
3772           callback after the new m_autocomplete setting has been stored so the unregistration actually
3773           takes place.
3774
3775 2009-12-08  Dmitry Titov  <dimich@chromium.org>
3776
3777         Rubber-stamped by David Levin.
3778
3779         Revert and reopen "Add asserts to RefCounted to make sure ref/deref happens on the right thread."
3780         It may have caused massive increase of reported leaks on the bots.
3781         https://bugs.webkit.org/show_bug.cgi?id=31639
3782
3783         * ForwardingHeaders/wtf/ThreadVerifier.h: Removed.
3784         * loader/icon/IconRecord.cpp:
3785         (WebCore::IconRecord::IconRecord):
3786         * platform/SharedBuffer.cpp:
3787         (WebCore::SharedBuffer::SharedBuffer):
3788         * platform/text/StringImpl.cpp:
3789         (WebCore::StringImpl::StringImpl):
3790
3791 2009-12-08  Pavel Feldman  <pfeldman@chromium.org>
3792
3793         Reviewed by Darin Fisher.
3794
3795         Chromium: support custom WebCore context menu items in Chromium port.
3796
3797         https://bugs.webkit.org/show_bug.cgi?id=32277
3798
3799         * platform/ContextMenu.h:
3800         * platform/ContextMenuItem.h:
3801         (WebCore::PlatformMenuItemDescription::PlatformMenuItemDescription):
3802         * platform/chromium/ContextMenuChromium.cpp:
3803         (WebCore::ContextMenu::ContextMenu):
3804         (WebCore::ContextMenu::itemCount):
3805         (WebCore::ContextMenu::insertItem):
3806         (WebCore::ContextMenu::appendItem):
3807         (WebCore::ContextMenu::itemWithAction):
3808         (WebCore::ContextMenu::itemAtIndex):
3809         (WebCore::ContextMenu::platformDescription):
3810         * platform/chromium/ContextMenuItemChromium.cpp:
3811         (WebCore::ContextMenuItem::ContextMenuItem):
3812         (WebCore::ContextMenuItem::releasePlatformDescription):
3813         (WebCore::ContextMenuItem::type):
3814         (WebCore::ContextMenuItem::action):
3815         (WebCore::ContextMenuItem::title):
3816         (WebCore::ContextMenuItem::checked):
3817         (WebCore::ContextMenuItem::enabled):
3818         (WebCore::ContextMenuItem::setType):
3819         (WebCore::ContextMenuItem::setAction):
3820         (WebCore::ContextMenuItem::setTitle):
3821         (WebCore::ContextMenuItem::setChecked):
3822         (WebCore::ContextMenuItem::setEnabled):
3823
3824 2009-12-08  Adam Langley  <agl@google.com>
3825
3826         Reviewed by Dimitri Glazkov.
3827
3828         Chromium Linux: set default scrollbar colours.
3829
3830         This is so that layout tests have sane defaults for the scrollbar
3831         colours, even if the API user doesn't set any.
3832
3833         This is a fix due to r51827.
3834
3835         https://bugs.webkit.org/show_bug.cgi?id=32287
3836
3837         This is very well covered by existing layout tests.
3838
3839         * rendering/RenderThemeChromiumLinux.cpp:
3840
3841 2009-12-08  Beth Dakin  <bdakin@apple.com>
3842
3843         Reviewed by Sam Weinig.
3844
3845         Fix for <rdar://problem/7397808> Crash occurs at 
3846         RenderObject::containingBlock() as I type in the Google Search 
3847         field (during page load)
3848
3849         * editing/Editor.cpp:
3850         (WebCore::Editor::insideVisibleArea): ownerRenderer() needs to be 
3851         null checked.
3852
3853 2009-12-08  Dmitry Titov  <dimich@chromium.org>
3854
3855         Reviewed by Darin Adler.
3856
3857         Add asserts to RefCounted to make sure ref/deref happens on the right thread.
3858         https://bugs.webkit.org/show_bug.cgi?id=31639
3859
3860         * loader/icon/IconRecord.cpp:
3861         (WebCore::IconRecord::IconRecord): Disable thread verification for this class because of its cross-thread use in IconDatabase.
3862         * platform/SharedBuffer.cpp:
3863         (WebCore::SharedBuffer::SharedBuffer): Ditto.
3864         * platform/text/StringImpl.cpp:
3865         (WebCore::StringImpl::StringImpl): Disable thread verification for this class, add FIXME to enforce proper usage via crossThreadString.
3866         * ForwardingHeaders/wtf/ThreadVerifier.h: Added.
3867
3868 2009-12-08  John Gregg  <johnnyg@google.com>
3869
3870         Reviewed by Adam Barth.
3871
3872         Inform the NotificationCenter when its window goes away in the same
3873         manner as other DOMWindow fields, and prevent invalid operations on
3874         it after that happens.
3875
3876         As part of this, change the V8 bindings for notifications to call
3877         through the NotificationCenter rather than doing those operations
3878         itself.
3879
3880         https://bugs.webkit.org/show_bug.cgi?id=31886
3881
3882         Test: fast/notifications/notification-after-close.html
3883
3884         * bindings/v8/custom/V8NotificationCenterCustom.cpp:
3885         (WebCore::CALLBACK_FUNC_DECL):
3886         * notifications/Notification.cpp:
3887         (WebCore::Notification::Notification):
3888         * notifications/NotificationCenter.cpp:
3889         (WebCore::NotificationCenter::checkPermission):
3890         (WebCore::NotificationCenter::requestPermission):
3891         * notifications/NotificationCenter.h:
3892         (WebCore::NotificationCenter::createHTMLNotification):
3893         (WebCore::NotificationCenter::createNotification):
3894         (WebCore::NotificationCenter::disconnectFrame):
3895         * page/DOMWindow.cpp:
3896         (WebCore::DOMWindow::clear):
3897
3898 2009-12-08  Dan Bernstein  <mitz@apple.com>
3899
3900         Reviewed by John Sullivan.
3901
3902         Fixed block selection gap repainting in table cells
3903
3904         Test: fast/repaint/block-selection-gap-in-table-cell.html
3905
3906         This recently-introduced regression exposed the fact that
3907         RenderTableCell did not override offsetFromContainer() to adjust for
3908         the fact that table cells’ coordinates are relative to the table
3909         section, not the table row. With this fixed, RenderTableCell no longer
3910         needs to override mapLocalToContainer() and mapAbsoluteToLocalPoint(),
3911         since the base class implementations of those use offsetFromContainer().
3912
3913         * rendering/RenderTableCell.cpp:
3914         (WebCore::RenderTableCell::offsetFromContainer):
3915         * rendering/RenderTableCell.h:
3916
3917 2009-12-08  Nikolas Zimmermann  <nzimmermann@rim.com>
3918
3919         Not reviewed. Sane way to force a rebuild on all win slaves, according to Adam Roben.
3920
3921         * WebCorePrefix.h:
3922
3923 2009-12-08  Dan Bernstein  <mitz@apple.com>
3924
3925         Build fix
3926
3927         * loader/loader.cpp:
3928         (WebCore::cachedResourceTypeToTargetType):
3929
3930 2009-12-08  Nikolas Zimmermann  <nzimmermann@rim.com>
3931
3932         Not reviewed. Touch svgtags.in to eventually fix the win debug build.
3933
3934         * svg/svgtags.in:
3935
3936 2009-12-08  Mike Belshe  <mike@belshe.com>
3937
3938         Reviewed by Darin Fisher.
3939
3940         https://bugs.webkit.org/show_bug.cgi?id=32167
3941         Update the ResourceRequest::RequestType.  This previously
3942         was specific to Chromium.  Moved into ResourceRequestBase, enabling
3943         more specificity about the type (which is otherwise only known to the
3944         loader), and also making this information available to all platforms.
3945         Any platform with a network layer which can utilize this information
3946         may want to use it for prioritization.
3947
3948         Note to Chromium glue: TargetIsSubResource renamed to TargetIsSubresource.
3949
3950         * loader/loader.cpp:
3951         (WebCore::Loader::Loader):
3952         (WebCore::CachedResourceTypeToTargetType):
3953         (WebCore::Loader::Host::servePendingRequests):
3954         * platform/network/ResourceRequestBase.h:
3955         (WebCore::ResourceRequestBase::):
3956         (WebCore::ResourceRequestBase::targetType):
3957         (WebCore::ResourceRequestBase::setTargetType):
3958         (WebCore::ResourceRequestBase::ResourceRequestBase):
3959         * platform/network/chromium/ResourceRequest.h:
3960         (WebCore::ResourceRequest::ResourceRequest):
3961
3962 2009-12-08  Steve Block  <steveblock@google.com>
3963
3964         Reviewed by Adam Barth.
3965
3966         [Android] Adds Makefiles for Android port.
3967         https://bugs.webkit.org/show_bug.cgi?id=31325
3968
3969         Build system change only. No tests possible.
3970
3971         * Android.derived.jscbindings.mk: Added.
3972         * Android.derived.mk: Added.
3973         * Android.jscbindings.mk: Added.
3974         * Android.mk: Added.
3975         * WebCorePrefix.h: Modified. Sets up some flags and adds a header required for building on Android.
3976
3977 2009-12-08  Christian Dywan  <christian@twotoasts.de>
3978
3979         Reviewed by Xan Lopez.
3980
3981         * platform/network/soup/DNSSoup.cpp:
3982         (WebCore::prefetchDNS): Conditionalize prefetching on
3983         the libSoup version.
3984
3985 2009-12-08  Nikolas Zimmermann  <nzimmermann@rim.com>
3986
3987         Rubber-stamped by Maciej Stachowiak.
3988
3989         Turn on (SVG) Filters for Win.
3990         https://bugs.webkit.org/show_bug.cgi?id=32224
3991
3992         * WebCore.vcproj/WebCoreCommon.vsprops:
3993         * WebCore.vcproj/build-generated-files.sh:
3994         * bindings/scripts/CodeGeneratorCOM.pm: Touch file to assure a world rebuild. Hopefully.
3995
3996 2009-12-08  Carol Szabo  <carol.szabo@nokia.com>
3997
3998         Reviewed by Darin Adler.
3999
4000         CSS Counter Nesting still does not work according to the spec.
4001         https://bugs.webkit.org/show_bug.cgi?id=31723
4002
4003         Test: fast/css/counters/nesting.html
4004
4005         * rendering/RenderCounter.cpp:
4006         (WebCore::findPlaceForCounter):
4007         Replaced the faulty counter insertion algorithm with one that works.
4008
4009 2009-12-08  John Sullivan  <sullivan@apple.com>
4010
4011         Add isAutofilled getter to match existing setter.
4012
4013         Reviewed by Ada Chan.
4014
4015         * bindings/objc/DOMHTML.mm:
4016         (-[DOMHTMLInputElement _isAutofilled]):
4017         Implemented new cover function.
4018         
4019         * bindings/objc/DOMPrivate.h:
4020         Declared new cover function.
4021
4022 2009-12-08  Dominik Röttsches  <dominik.roettsches@access-company.com>
4023
4024         Reviewed by Gustavo Noronha Silva.
4025
4026         [Gtk] Create a TextBreakIterator implementation based on GLib (without ICU)
4027         https://bugs.webkit.org/show_bug.cgi?id=31469
4028
4029         Added a TextBreakIterator implementation based on GLib and pango,
4030         which allows compiling WebCore without ICU.
4031
4032         * GNUmakefile.am:
4033         * platform/text/gtk/TextBreakIteratorGtk.cpp: Added.
4034         (WebCore::):
4035         (WebCore::setUpIterator):
4036         (WebCore::characterBreakIterator):
4037         (WebCore::cursorMovementIterator):
4038         (WebCore::wordBreakIterator):
4039         (WebCore::lineBreakIterator):
4040         (WebCore::sentenceBreakIterator):
4041         (WebCore::textBreakFirst):
4042         (WebCore::textBreakLast):
4043         (WebCore::textBreakNext):
4044         (WebCore::textBreakPrevious):
4045         (WebCore::textBreakPreceding):
4046         (WebCore::textBreakFollowing):
4047         (WebCore::textBreakCurrent):
4048         (WebCore::isTextBreak):
4049
4050 2009-12-08  Alexander Pavlov  <apavlov@chromium.org>
4051
4052         Reviewed by Pavel Feldman.
4053
4054         Change the way cookies are retrieved in the WebInspector frontend.
4055
4056         Moved the cookie filtering from the native code into the frontend so that
4057         all cookies can be retrieved regardless of the associated domain
4058         (required for certain audits to run.)
4059         https://bugs.webkit.org/show_bug.cgi?id=32160
4060
4061         Test: inspector/cookie-resource-match.html
4062
4063         * inspector/InspectorBackend.cpp:
4064         (WebCore::InspectorBackend::getCookies):
4065         * inspector/InspectorBackend.h:
4066         * inspector/InspectorBackend.idl:
4067         * inspector/InspectorController.cpp:
4068         (WebCore::InspectorController::getCookies):
4069         * inspector/InspectorController.h:
4070         * inspector/front-end/CookieItemsView.js:
4071         (WebInspector.CookieItemsView.prototype.update.callback):
4072         (WebInspector.CookieItemsView.prototype.update):
4073         (WebInspector.CookieItemsView.prototype._cookiesForDomain):
4074         * inspector/front-end/DOMAgent.js:
4075         (WebInspector.Cookies.getCookiesAsync):
4076         (WebInspector.Cookies.cookieMatchesResourceURL):
4077         (WebInspector.Cookies.cookieDomainMatchesResourceDomain):
4078         * inspector/front-end/Resource.js:
4079         (WebInspector.Resource):
4080         (WebInspector.Resource.prototype.get documentURL):
4081         (WebInspector.Resource.prototype.set documentURL):
4082         * inspector/front-end/inspector.js:
4083         (WebInspector.addResource):
4084
4085 2009-12-08  Nikolas Zimmermann  <nzimmermann@rim.com>
4086
4087         Not reviewed. Touch svgtags.in, in order to force SVGNames.* regeneration. Praying for gtk bot to be fixed :-)
4088
4089         * svg/svgtags.in:
4090
4091 2009-12-08  Nikolas Zimmermann  <nzimmermann@rim.com>
4092
4093         Not reviewed. Trying to force a rebuild on the Gtk slave. If that doesn't work, someone must force a rebuild from scratch.
4094
4095         * bindings/scripts/CodeGeneratorJS.pm:
4096
4097 2009-12-06  Pavel Feldman  <pfeldman@chromium.org>
4098
4099         Reviewed by Timothy Hatcher.
4100
4101         Web Inspector: provide custom context menu in the front-end window.
4102
4103         https://bugs.webkit.org/show_bug.cgi?id=32200
4104
4105         * English.lproj/localizedStrings.js:
4106         * GNUmakefile.am:
4107         * WebCore.gypi:
4108         * WebCore.pro:
4109         * WebCore.vcproj/WebCore.vcproj:
4110         * WebCore.xcodeproj/project.pbxproj:
4111         * bindings/js/JSInspectorFrontendHostCustom.cpp:
4112         (WebCore::JSInspectorFrontendHost::showContextMenu):
4113         * inspector/InspectorFrontend.cpp:
4114         (WebCore::InspectorFrontend::contextMenuItemSelected):
4115         (WebCore::InspectorFrontend::contextMenuCleared):
4116         * inspector/InspectorFrontend.h:
4117         * inspector/InspectorFrontendHost.cpp:
4118         (WebCore::InspectorFrontendHost::InspectorFrontendHost):
4119         (WebCore::InspectorFrontendHost::~InspectorFrontendHost):
4120         (WebCore::InspectorFrontendHost::showContextMenu):
4121         (WebCore::InspectorFrontendHost::contextMenuItemSelected):
4122         (WebCore::InspectorFrontendHost::contextMenuCleared):
4123         * inspector/InspectorFrontendHost.h:
4124         (WebCore::InspectorFrontendHost::MenuSelectionHandler::create):
4125         (WebCore::InspectorFrontendHost::MenuSelectionHandler::~MenuSelectionHandler):
4126         (WebCore::InspectorFrontendHost::MenuSelectionHandler::disconnect):
4127         (WebCore::InspectorFrontendHost::MenuSelectionHandler::contextMenuItemSelected):
4128         (WebCore::InspectorFrontendHost::MenuSelectionHandler::contextMenuCleared):
4129         (WebCore::InspectorFrontendHost::MenuSelectionHandler::MenuSelectionHandler):
4130         * inspector/InspectorFrontendHost.idl:
4131         * inspector/front-end/ContextMenu.js: Added.
4132         * inspector/front-end/WebKit.qrc:
4133         * inspector/front-end/inspector.html:
4134         * inspector/front-end/inspector.js:
4135         (WebInspector.loaded):
4136         (WebInspector.documentContextMenu):
4137         * page/ContextMenuController.cpp:
4138         (WebCore::ContextMenuController::ContextMenuController):
4139         (WebCore::ContextMenuController::clearContextMenu):
4140         (WebCore::ContextMenuController::handleContextMenuEvent):
4141         (WebCore::ContextMenuController::showContextMenu):
4142         (WebCore::ContextMenuController::createContextMenu):
4143         (WebCore::ContextMenuController::contextMenuItemSelected):
4144         * page/ContextMenuController.h:
4145         * page/ContextMenuSelectionHandler.h: Added.
4146         (WebCore::ContextMenuSelectionHandler::ContextMenuSelectionHandler):
4147         (WebCore::ContextMenuSelectionHandler::~ContextMenuSelectionHandler):
4148         * platform/ContextMenu.cpp:
4149         (WebCore::ContextMenu::checkOrEnableIfNeeded):
4150         * platform/ContextMenuItem.h:
4151
4152 2009-12-08  Andras Becsi  <abecsi@inf.u-szeged.hu>
4153
4154         Rubber-stamped by Kenneth Rohde Christiansen.
4155
4156         [Qt] Build fix of duplicated platform/graphics/filters/FEGaussianBlur.cpp in WebCore.pro after enabled svg filters.
4157
4158         No new tests needed.
4159         * WebCore.pro:
4160
4161 2009-12-07  Shinichiro Hamaji  <hamaji@chromium.org>
4162
4163         Reviewed by Darin Adler.
4164
4165         Add a function to show render tree for debugging
4166         https://bugs.webkit.org/show_bug.cgi?id=31288
4167
4168         No new tests because this just adds a function for debugging.
4169
4170         * rendering/RenderObject.cpp:
4171         (WebCore::RenderObject::showRenderObject):
4172         (WebCore::RenderObject::showRenderTreeAndMark):
4173         (showRenderTree):
4174         * rendering/RenderObject.h:
4175
4176 2009-12-07  Victor Wang  <victorw@chromium.org>
4177
4178         Reviewed by Dimitri Glazkov.
4179
4180         Implement NamedPropertyEnumerator and IndexedPropertyEnumerator for
4181         V8 NPObject. This should make the object enumerable and fix the
4182         enumeration issue in layout test plugins/netscape-enumerate.html.
4183
4184         Also fix some existing style issues per webkit style guidelines.
4185
4186         https://bugs.webkit.org/show_bug.cgi?id=32254
4187
4188         Test: plugins/netscape-enumerate.html
4189
4190         * bindings/v8/V8NPObject.cpp:
4191         (npObjectInvokeImpl):
4192         (npObjectInvokeDefaultHandler):
4193         (npObjectGetProperty):
4194         (npObjectPropertyEnumerator):
4195         (npObjectNamedPropertyEnumerator):
4196         (npObjectIndexedPropertyEnumerator):
4197         (createV8ObjectForNPObject):
4198
4199 2009-12-07  Fumitoshi Ukai  <ukai@chromium.org>
4200
4201         Reviewed by Alexey Proskuryakov.
4202
4203         Fragments now make WebSocket URL parsing fail.
4204         https://bugs.webkit.org/show_bug.cgi?id=32144
4205
4206         * websockets/WebSocket.cpp:
4207         (WebCore::WebSocket::connect):
4208
4209 2009-12-07  Fumitoshi Ukai  <ukai@chromium.org>
4210
4211         Reviewed by Darin Adler.
4212
4213         Fix wrong length parsing in WebSocket.
4214         https://bugs.webkit.org/show_bug.cgi?id=32203
4215
4216         * websockets/WebSocketChannel.cpp:
4217         (WebCore::WebSocketChannel::didReceiveData):
4218
4219 2009-12-07  Nikolas Zimmermann  <nzimmermann@rim.com>
4220
4221         Rubber-stamped by Maciej Stachowiak.
4222
4223         Turn on (SVG) Filters for Qt.
4224         https://bugs.webkit.org/show_bug.cgi?id=32224
4225
4226         * WebCore.pro:
4227
4228 2009-12-07  Evan Martin  <evan@chromium.org>
4229
4230         Reviewed by Eric Seidel.
4231
4232         Chromium: theme scrollbars to match GTK theme.
4233         Add functions to RenderThemeChromiumLinux to change the scrollbar
4234         color.
4235
4236         Since the change is to the Chromium WebKit API layer, testing will
4237         be in Chromium's test shell.
4238         http://bugs.webkit.org/show_bug.cgi?id=32048
4239
4240         Patch from Markus Gutschke <markus@chromium.org>.
4241
4242         * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
4243         (WebCore::saturateAndBrighten):
4244         (WebCore::outlineColor):
4245         (WebCore::ScrollbarThemeChromiumLinux::paintTrackPiece):
4246         (WebCore::ScrollbarThemeChromiumLinux::paintThumb):
4247         * rendering/RenderThemeChromiumLinux.cpp:
4248         (WebCore::RenderThemeChromiumLinux::setScrollbarColors):
4249         * rendering/RenderThemeChromiumLinux.h:
4250         (WebCore::RenderThemeChromiumLinux::thumbInactiveColor):
4251         (WebCore::RenderThemeChromiumLinux::thumbActiveColor):
4252         (WebCore::RenderThemeChromiumLinux::trackColor):
4253
4254 2009-12-08  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
4255
4256         Reviewed by Xan Lopez.
4257
4258         [GTK] Doesn't respect Content-Disposition for downloads, and provides no way for apps to do that
4259         https://bugs.webkit.org/show_bug.cgi?id=32247
4260
4261         Allow creating a ResourceResponse from a SoupMessage.
4262
4263         Covered by API test.
4264
4265         * platform/network/soup/ResourceResponse.h:
4266         (WebCore::ResourceResponse::ResourceResponse):
4267         * platform/network/soup/ResourceResponseSoup.cpp:
4268         (WebCore::ResourceResponse::updateFromSoupMessage):
4269
4270 2009-12-07  Nikolas Zimmermann  <nzimmermann@rim.com>
4271
4272         Not reviewed. Reverting problematic patch, causing errors.
4273
4274         Revert r51789 (Avoid zero division during SVGPaintServerPattern::setup()). Crashes on all Windows slaves.
4275         Reopen bug https://bugs.webkit.org/show_bug.cgi?id=29912.
4276