A new database should be registered with the Document,
[WebKit-https.git] / WebCore / ChangeLog
1 2009-12-23  Dumitru Daniliuc  <dumi@chromium.org>
2
3         Reviewed by Eric Seidel.
4
5         A new database should be registered with the Document,
6         DatabaseTracker and DatabaseThread only after it was successfully
7         opened and its version was successfully verified.
8
9         Fixes a regression introduced by
10         http://trac.webkit.org/changeset/52530.
11
12         LayoutTests/storage/open-database-while-transaction-in-progress.html
13         should pass again (or rather, it should pass again when run after
14         open-database-set-empty-version.html).
15
16         https://bugs.webkit.org/show_bug.cgi?id=32913
17
18         * storage/Database.cpp:
19         (WebCore::Database::openDatabase):
20         (WebCore::Database::Database):
21         (WebCore::Database::performOpenAndVerify):
22
23 2009-12-23  David Levin  <levin@chromium.org>
24
25         REGRESSION (r52494): Assertion failure in Frame::caretBlinkTimerFired() (selection()->isCaret())
26         https://bugs.webkit.org/show_bug.cgi?id=32903
27
28         No review but ok'ed by Darin Adler. Rolling out r52494 due to above regression.
29
30         * editing/SelectionController.cpp:
31         (WebCore::SelectionController::SelectionController):
32         (WebCore::SelectionController::setSelection):
33         * editing/SelectionController.h:
34         * page/Frame.cpp:
35         (WebCore::Frame::setCaretVisible):
36         (WebCore::Frame::selectionLayoutChanged):
37         * page/FrameView.cpp:
38         (WebCore::FrameView::needsLayout):
39
40 2009-12-23  Nikolas Zimmermann  <nzimmermann@rim.com>
41
42         Reviewed by Eric Seidel.
43
44         Reverse JS GenerateConstructor logic
45         https://bugs.webkit.org/show_bug.cgi?id=32910
46
47         Make 'GenerateConstructor' the default setting for all classes, defined in IDL files. The flag is now obsolete and
48         can be removed from all IDL files in a follow-up patch. Add new 'OmitConstructor' flag, that allows to restore the
49         old default behaviour: do not generate JSFoobarConstructor class.
50
51         No change in functionality, despite the fact that we're generating a lot more constructors now, as they have to
52         be exposed through DOMWindow.idl -- this can be done per affected class in follow-up patches. Especially the SVG
53         classes have to be exposed, most of them are missing JS constructors so far.
54
55         As side effect HTMLOptionsCollection is now correctly exposing its constructor, thus fixing a test in fast/dom/wrapper-classes.html
56
57         * bindings/scripts/CodeGeneratorJS.pm:
58         * css/CSSUnknownRule.idl:
59         * css/WebKitCSSMatrix.idl:
60         * dom/EventListener.idl:
61         * dom/EventTarget.idl:
62         * dom/MessageChannel.idl:
63         * html/TimeRanges.idl:
64         * html/ValidityState.idl:
65         * html/VoidCallback.idl:
66         * html/canvas/CanvasGradient.idl:
67         * html/canvas/CanvasPattern.idl:
68         * html/canvas/CanvasPixelArray.idl:
69         * html/canvas/WebGLActiveInfo.idl:
70         * html/canvas/WebGLArray.idl:
71         * html/canvas/WebGLArrayBuffer.idl:
72         * html/canvas/WebGLBuffer.idl:
73         * html/canvas/WebGLByteArray.idl:
74         * html/canvas/WebGLFloatArray.idl:
75         * html/canvas/WebGLFramebuffer.idl:
76         * html/canvas/WebGLIntArray.idl:
77         * html/canvas/WebGLProgram.idl:
78         * html/canvas/WebGLRenderbuffer.idl:
79         * html/canvas/WebGLShader.idl:
80         * html/canvas/WebGLShortArray.idl:
81         * html/canvas/WebGLTexture.idl:
82         * html/canvas/WebGLUniformLocation.idl:
83         * html/canvas/WebGLUnsignedByteArray.idl:
84         * html/canvas/WebGLUnsignedIntArray.idl:
85         * html/canvas/WebGLUnsignedShortArray.idl:
86         * inspector/JavaScriptCallFrame.idl:
87         * loader/appcache/DOMApplicationCache.idl:
88         * notifications/Notification.idl:
89         * notifications/NotificationCenter.idl:
90         * page/AbstractView.idl:
91         * page/BarInfo.idl:
92         * page/Console.idl:
93         * page/Coordinates.idl:
94         * page/DOMSelection.idl:
95         * page/DOMWindow.idl:
96         * page/EventSource.idl:
97         * page/Geolocation.idl:
98         * page/Geoposition.idl:
99         * page/History.idl:
100         * page/Location.idl:
101         * page/Navigator.idl:
102         * page/Screen.idl:
103         * page/WebKitPoint.idl:
104         * page/WorkerNavigator.idl:
105         * storage/Database.idl:
106         * storage/SQLError.idl:
107         * storage/SQLResultSet.idl:
108         * storage/SQLResultSetRowList.idl:
109         * storage/SQLTransaction.idl:
110         * websockets/WebSocket.idl:
111         * workers/DedicatedWorkerContext.idl:
112         * workers/SharedWorker.idl:
113         * workers/SharedWorkerContext.idl:
114         * workers/Worker.idl:
115         * workers/WorkerContext.idl:
116         * xml/XMLHttpRequest.idl:
117         * xml/XPathNSResolver.idl:
118         * xml/XSLTProcessor.idl:
119
120 2009-12-23  Adam Barth  <abarth@webkit.org>
121
122         Reviewed by Eric Seidel.
123
124         "Refused to execute a JavaScript script" error when embedding SWF with
125         a URL that is also a query parameter
126         https://bugs.webkit.org/show_bug.cgi?id=32908
127
128         Don't block direct injections into the object src attribute unless
129         there's an illegal character (like < or ") in the URL.  This change
130         lets some very unusual vulnerabilities through the filter but removes a
131         false positive that we've seen several times.
132
133         * page/XSSAuditor.cpp:
134         (WebCore::XSSAuditor::canLoadObject):
135
136 2009-12-23  Dumitru Daniliuc  <dumi@chromium.org>
137
138         Reviewed by Dmitry Titov.
139
140         Remove pointers to a database that failed to open from the
141         DatabaseTracker and Document.
142
143         https://bugs.webkit.org/show_bug.cgi?id=32885
144
145         * storage/Database.cpp:
146         (WebCore::Database::openDatabase):
147
148 2009-12-23  Dan Bernstein  <mitz@apple.com>
149
150         Reviewed by Darin Adler.
151
152         <rdar://problem/7487164> First line of text cannot be selected
153         https://bugs.webkit.org/show_bug.cgi?id=32749
154
155         Test: fast/text/remove-zero-length-run.html
156
157         * rendering/RenderText.cpp:
158         (WebCore::RenderText::positionLineBox): Changed code that assumed that if a box was being
159             removed, it was the only box in the RenderText. Instead, correctly preserve the list of
160             text boxes.
161         (WebCore::RenderText::checkConsistency): Updated for earlier rename.
162
163 2009-12-18  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
164
165         Reviewed by Darin Adler.
166
167         Fix for newlines turning into missing-gyphs when using SVG fonts
168
169         https://bugs.webkit.org/show_bug.cgi?id=32710
170
171         Font::drawText() has three code paths:
172
173           - drawTextUsingSVGFont()
174           - drawSimpleText()
175           - drawComplexText()
176
177         The latter two both have logic to replace newlines and tabs, as well
178         as a few other control characters that are considered spaces, with
179         spaces, before actually drawing the text. Previously the SVG font
180         path did not have this kind of logic.
181
182         This change introduces two helper functions in Font to do this space
183         replacement, which are then used for the simple path, the SVG path,
184         and the Qt implementation of the complex path.
185
186         Test: svg/custom/svg-fonts-in-html-linebreaks.html
187
188         * platform/graphics/Font.cpp:
189         (WebCore::Font::normalizeSpaces): Helper function
190         * platform/graphics/Font.h:
191         * platform/graphics/FontFastPath.cpp:
192         (WebCore::Font::glyphDataForCharacter): Use helper
193         * platform/graphics/qt/FontQt.cpp:
194         (WebCore::fromRawDataWithoutRef): Rename from "qstring"
195         (WebCore::Font::drawComplexText): Use helper
196         (WebCore::Font::floatWidthForComplexText): Use helper
197         (WebCore::Font::offsetForPositionForComplexText): Use helper
198         (WebCore::Font::selectionRectForComplexText): Use helper
199         * platform/text/CharacterNames.h: Add enum for 0x0020
200         * svg/SVGFont.cpp: Use helper to fix bug
201         (WebCore::SVGTextRunWalker::walk):
202
203 2009-12-23  Kent Tamura  <tkent@chromium.org>
204
205         Reviewed by Darin Adler.
206
207         HTMLInputElement::valueAsDate getter support.
208         https://bugs.webkit.org/show_bug.cgi?id=32876
209
210         To implement the valueAsDate getter,
211         - Add a method to calculate milliseconds from 1970-01-01 to ISODateTime.
212         - Introduce m_type field to ISODateTime.
213
214         Tests: fast/forms/input-valueasdate-date.html
215                fast/forms/input-valueasdate-datetime.html
216                fast/forms/input-valueasdate-datetimelocal.html
217                fast/forms/input-valueasdate-month.html
218                fast/forms/input-valueasdate-time.html
219                fast/forms/input-valueasdate-week.html
220
221         * html/HTMLInputElement.cpp:
222         (WebCore::HTMLInputElement::valueAsDate):
223           Implement it with ISODateTime::millisecondsSinceEpoch().
224         (WebCore::HTMLInputElement::formStringToISODateTime):
225           Early exit for a null String. This avoids assertion failures in ISODateTime::parse*().
226         * html/ISODateTime.cpp:
227         (WebCore::ISODateTime::parseMonth): Sets m_type.
228         (WebCore::ISODateTime::parseDate): ditto.
229         (WebCore::ISODateTime::parseWeek): ditto.
230         (WebCore::ISODateTime::parseTime): ditto.
231         (WebCore::ISODateTime::parseDateTimeLocal): ditto.
232         (WebCore::ISODateTime::parseDateTime): ditto.
233         (WebCore::ISODateTime::millisecondsSinceEpochForTime): Added.
234         (WebCore::ISODateTime::millisecondsSinceEpoch): Added.
235         * html/ISODateTime.h:
236         (WebCore::ISODateTime::ISODateTime):
237         (WebCore::ISODateTime::invalidMilliseconds):
238
239 2009-12-22  Daniel Bates  <dbates@webkit.org>
240
241         Reviewed by Eric Seidel.
242
243         https://bugs.webkit.org/show_bug.cgi?id=32799
244
245         Renames enums in RenderStyleConstants::EListStyleType to conform to
246         the WebKit Code Style Guidelines.
247
248         No functionality was changed. So, no new tests.
249
250         * css/CSSPrimitiveValueMappings.h:
251         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
252         (WebCore::CSSPrimitiveValue::operator EListStyleType):
253         * rendering/RenderListItem.cpp:
254         (WebCore::RenderListItem::styleDidChange):
255         * rendering/RenderListMarker.cpp:
256         (WebCore::listMarkerText):
257         (WebCore::RenderListMarker::paint):
258         (WebCore::RenderListMarker::calcPrefWidths):
259         (WebCore::RenderListMarker::updateMargins):
260         (WebCore::RenderListMarker::getRelativeMarkerRect):
261         * rendering/style/RenderStyle.h:
262         (WebCore::InheritedFlags::initialListStyleType):
263         * rendering/style/RenderStyleConstants.h:
264         (WebCore::):
265
266 2009-12-22  James Su  <suzhe@chromium.org>
267
268         Reviewed by Darin Fisher.
269
270         [Chromium] Keyboard shortcut in dropdown not working.
271         https://bugs.webkit.org/show_bug.cgi?id=32008
272
273         Consider PlatformKeyboardEvent::Char type event as character type
274         event on all platforms. It fixes the "type ahead find" feature
275         of the popup listbox on Linux and Mac platforms.
276
277         Merge the case-sensitive type ahead find fix from
278         WebCore/dom/SelectElement.cpp. See
279         https://bugs.webkit.org/show_bug.cgi?id=29103
280
281         * platform/chromium/PopupMenuChromium.cpp:
282         (WebCore::isCharacterTypeEvent):
283
284 2009-12-22  Carol Szabo  <carol.szabo@nokia.com>
285
286         Reviewed by Eric Seidel.
287
288         [Qt] The "Search" input type is not rendered correctly when styled.
289         https://bugs.webkit.org/show_bug.cgi?id=32417
290
291         There are no new tests because only pixel tests may be affected by
292         this change and those changes can only be done on the build bot.
293
294         * platform/qt/RenderThemeQt.cpp:
295         (WebCore::RenderThemeQt::paintSearchField):
296         Since currently we paint the Search control as a QLineEdit, I have
297         deferred painting to WebCore, as in the case of the text input so 
298         that the painting is consistent.
299
300 2009-12-22  Yongjun Zhang  <yongjun.zhang@nokia.com>
301
302         Reviewed by Kenneth Rohde Christiansen.
303
304         https://bugs.webkit.org/show_bug.cgi?id=32121
305         [Qt] implement ImageDecoderQt::clearFrameBufferCache().
306        
307         * platform/graphics/qt/ImageDecoderQt.cpp:
308         (WebCore::ImageDecoderQt::initializeDecoder):
309         (WebCore::ImageDecoderQt::setData):
310         (WebCore::ImageDecoderQt::clearFrameBufferCache):
311         * platform/graphics/qt/ImageDecoderQt.h:
312
313 2009-12-22  Nayan Kumar K  <nayankk@gmail.com>
314
315         Reviewed by Eric Seidel.
316
317         Fix assert failure with WML pages having 'Refresh' task in
318         'onenterforward' event.
319
320         https://bugs.webkit.org/show_bug.cgi?id=30989
321
322         Writing Layout test is not possible. Please refer to the discussion
323         in bug id #30989. A sample test case is attached in BugZilla.
324
325         * wml/WMLCardElement.cpp:
326         (WebCore::WMLCardElement::handleIntrinsicEventIfNeeded):
327
328 2009-12-22  Darin Adler  <darin@apple.com>
329
330         Reviewed by Sam Weinig.
331
332         ASSERTION FAILED: m_numNodeListCaches
333         https://bugs.webkit.org/show_bug.cgi?id=19526
334         <rdar://problem/7431572>
335
336         Test: fast/dom/NodeList/adoptNode-node-list-cache.html
337
338         * dom/Node.cpp:
339         (WebCore::Node::setDocument): Call removeNodeListCache on the old
340         document and addNodeListCache on the new one if moving a node that
341         has node lists.
342
343 2009-12-22  Darin Adler  <darin@apple.com>
344
345         First cut at fixing Windows build.
346
347         * WebCorePrefix.cpp: Touch it.
348
349 2009-12-22  Darin Adler  <darin@apple.com>
350
351         Reviewed by Mark Rowe.
352
353         Turn off datagrid by default, at least for all platforms Apple ships.
354         The datagrid implementation isn't ready for general web use yet.
355
356         * Configurations/FeatureDefines.xcconfig: Turn off datagrid by default.
357         * WebCore.vcproj/WebCoreCommon.vsprops: Ditto.
358         * WebCore.vcproj/build-generated-files.sh: Ditto.
359         * page/DOMWindow.idl: Sorted things here to touch the file to give
360         the Windows build a slightly better chance of success.
361
362 2009-12-22  Darin Adler  <darin@apple.com>
363
364         Rubber stamped by Dan Bernstein.
365
366         * page/FrameView.h: Removed incorrect comment.
367
368 2009-12-22  Pavel Feldman  <pfeldman@chromium.org>
369
370         Reviewed by Timothy Hatcher.
371
372         Web Inspector: simplify highlighter definition.
373
374         https://bugs.webkit.org/show_bug.cgi?id=32869
375
376         * inspector/front-end/CSSSourceSyntaxHighlighter.js:
377         (WebInspector.CSSSourceSyntaxHighlighter):
378         * inspector/front-end/JavaScriptSourceSyntaxHighlighter.js:
379         (WebInspector.JavaScriptSourceSyntaxHighlighter.):
380         (WebInspector.JavaScriptSourceSyntaxHighlighter):
381         * inspector/front-end/SourceSyntaxHighlighter.js:
382         (WebInspector.SourceSyntaxHighlighter.prototype.lex):
383         * inspector/front-end/utilities.js:
384         ():
385
386 2009-12-21  Darin Adler  <darin@apple.com>
387
388         Reviewed by Sam Weinig.
389
390         Reentrancy problem with selection in some edge cases.
391         https://bugs.webkit.org/show_bug.cgi?id=32842
392         rdar://problem/7449974
393
394         Test: fast/forms/selection-layout-reentry-strange-case.html
395
396         Move the selection display update process done in the
397         selectionLayoutChanged function into the layout timer
398         instead of doing it immediately when selection changes occur.
399
400         * editing/SelectionController.cpp:
401         (WebCore::SelectionController::SelectionController):
402         Initialize m_needsDisplayUpdate to false.
403         (WebCore::SelectionController::setSelection): Call
404         the new setNeedsDisplayUpdate function instead of the old
405         badly named Frame::selectionLayoutChanged function.
406         (WebCore::SelectionController::setNeedsDisplayUpdate):
407         Set m_needsDisplayUpdate. If it is just becoming true, then
408         call FrameView::scheduleRelayout.
409
410         * editing/SelectionController.h: Added setNeedsDisplayUpdate,
411         needsDisplayUpdate, and m_needsDisplayUpdate.
412
413         * page/Frame.cpp:
414         (WebCore::Frame::setCaretVisible): Call setNeedsDisplayUpdate.
415         (WebCore::Frame::selectionLayoutChanged): Call
416         setNeedsDisplayUpdate to set it to false, since this is the
417         function that performs "selection display update". Later I want
418         to rename this function.
419
420         * page/FrameView.cpp:
421         (WebCore::FrameView::needsLayout): Add a new clause, since
422         we need a call to layout if needsDisplayUpdate is true.
423
424 2009-12-22  Kwang Yul Seo  <skyul@company100.net>
425
426         Reviewed by Darin Adler.
427
428         Allocate RemoteFontStream on the heap
429         https://bugs.webkit.org/show_bug.cgi?id=32850
430
431         RemoteFontStream is allocated on the stack, so its memory is freed
432         immediately when FontCustomPlatformData::createFontCustomPlatformData
433         returns. 
434
435         SkTypeface::CreateFromStream increments the reference count, but it keeps
436         the pointer to the memory allocated on the stack which is not valid
437         anymore.
438
439         RemoteFontStream is a descendant of SkRefCount and SkRefCount::unref
440         invokes SkDELETE(this) internally once the reference count reaches zero.
441         This means that SkRefCount-ed instances must be allocated on the heap.
442
443         * platform/graphics/chromium/FontCustomPlatformData.cpp:
444         (WebCore::createFontCustomPlatformData):
445
446 2009-12-22  Kwang Yul Seo  <skyul@company100.net>
447
448         Reviewed by Darin Adler.
449
450         when condition COMPILER(RVCT) is fulfilled, we are trying to free a pointer to array allocated on the stack
451         https://bugs.webkit.org/show_bug.cgi?id=32861
452
453         Don't free the pointer for COMPILER(RVCT).
454
455         * dom/XMLTokenizerLibxml2.cpp:
456         (WebCore::XMLTokenizer::error):
457
458 2009-12-22  Sam Weinig  <sam@webkit.org>
459
460         Rubber-stamped by Dan Bernstein.
461
462         Remove no longer necessary experimental single view #ifdefs from Widget and
463         ScrollView.
464
465         * page/Chrome.h:
466         * page/mac/ChromeMac.mm:
467         * platform/ScrollView.cpp:
468         (WebCore::ScrollView::wheelEvent):
469         * platform/Widget.cpp:
470         * platform/Widget.h:
471         * platform/mac/ScrollViewMac.mm:
472         * platform/mac/WidgetMac.mm:
473
474 2009-12-21  Pavel Feldman  <pfeldman@chromium.org>
475
476         Reviewed by Timothy Hatcher.
477
478         Web Inspector: Do not lose original request for non-main resource redirects.
479
480         https://bugs.webkit.org/show_bug.cgi?id=32678
481
482         * inspector/InspectorResource.cpp:
483         (WebCore::InspectorResource::appendRedirect):
484         * inspector/front-end/Resource.js:
485         (WebInspector.Resource):
486         * inspector/front-end/inspector.js:
487         (WebInspector.updateResource):
488
489 2009-12-21  Kwang Yul Seo  <skyul@company100.net>
490
491         Reviewed by Eric Seidel.
492
493         Use ASSERT instead of assert in image-decoders
494         https://bugs.webkit.org/show_bug.cgi?id=32852
495
496         Other decoders use WTF's ASSERT macro.
497         Follow this convention.
498
499         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
500         (WebCore::JPEGImageReader::decode):
501         * platform/image-decoders/png/PNGImageDecoder.cpp:
502         (WebCore::PNGImageDecoder::headerAvailable):
503
504 2009-12-21  Kwang Yul Seo  <skyul@company100.net>
505
506         Reviewed by Eric Seidel.
507
508         Use vsnprintf instead of vasprintf for RVCT.
509         https://bugs.webkit.org/show_bug.cgi?id=32851
510
511         RVCT does not support vasprint, so use vsnprintf instead.
512
513         * dom/XMLTokenizerLibxml2.cpp:
514         (WebCore::XMLTokenizer::error):
515
516 2009-12-21  Fumitoshi Ukai  <ukai@chromium.org>
517
518         Reviewed by Alexey Proskuryakov.
519
520         Invalid url should raise SYNTAX_ERR exception.
521         https://bugs.webkit.org/show_bug.cgi?id=32700
522
523         Check url is valid in WebSocket::connect.
524         Also log the detailed reason of websocket failures to console.
525
526         * websockets/WebSocket.cpp:
527         (WebCore::encodeProtocolString):
528         (WebCore::WebSocket::connect):
529
530 2009-12-21  Anders Carlsson  <andersca@apple.com>
531
532         Reviewed by Sam Weinig.
533
534         Make sure that we check for the right thread.
535
536         * platform/mac/WebCoreObjCExtras.mm:
537         (WebCoreObjCScheduleDeallocateOnMainThread):
538
539 2009-12-21  Enrica Casucci  <enrica@apple.com>
540
541         Reviewed by Maciej Stachowiak.
542
543         REGRESSION(4.0.4-ToT): Indent deletes non highlighted text in gmail.
544         <rdar://problem/7489326>
545         https://bugs.webkit.org/show_bug.cgi?id=32843
546         
547         The fix for 7442387 did not handle the case where the end of paragraph
548         is not a descendant of the computed outer block.
549         Updated editing/execCommand/indent-with-style2.html to cover this case too.
550
551         * editing/CompositeEditCommand.cpp:
552         (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement): 
553
554 2009-12-21  Gavin Barraclough  <barraclough@apple.com>
555
556         Reviewed by Darin Adler.
557
558         https://bugs.webkit.org/show_bug.cgi?id=32831
559         Replace UString::Rep implementation, following introduction of ropes to JSC.
560
561         * ForwardingHeaders/runtime/UStringImpl.h: Added.
562             - add forwarding header.
563
564         * platform/text/StringImpl.cpp:
565         (WebCore::StringImpl::ustring):
566             - order of arguments to UString::Rep constructor for shared strings changed.
567
568 2009-12-18  Nate Chapin  <japhet@chromium.org>
569
570         Reviewed by Adam barth.
571
572         Generate V8 bindings non-constructor callback declarations 
573         in CodeGeneratorV8.pm instead of manually declaring them in
574         V8CustomBinding.h.
575
576         https://bugs.webkit.org/show_bug.cgi?id=32638
577
578         * bindings/scripts/CodeGeneratorV8.pm:
579         * bindings/v8/V8DOMWrapper.cpp:
580         * bindings/v8/custom/V8AbstractWorkerCustom.cpp:
581         * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:
582         * bindings/v8/custom/V8ClipboardCustom.cpp:
583         * bindings/v8/custom/V8ConsoleCustom.cpp:
584         * bindings/v8/custom/V8CustomBinding.h:
585         * bindings/v8/custom/V8DOMApplicationCacheCustom.cpp:
586         * bindings/v8/custom/V8DOMParserConstructor.cpp:
587         * bindings/v8/custom/V8DOMWindowCustom.cpp:
588         * bindings/v8/custom/V8DatabaseCustom.cpp:
589         * bindings/v8/custom/V8DedicatedWorkerContextCustom.cpp:
590         * bindings/v8/custom/V8DocumentCustom.cpp:
591         * bindings/v8/custom/V8GeolocationCustom.cpp:
592         * bindings/v8/custom/V8HTMLAllCollectionCustom.cpp:
593         * bindings/v8/custom/V8HTMLAudioElementConstructor.cpp:
594         * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
595         * bindings/v8/custom/V8HTMLCollectionCustom.cpp:
596         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
597         * bindings/v8/custom/V8HTMLFormElementCustom.cpp:
598         * bindings/v8/custom/V8HTMLImageElementConstructor.cpp:
599         * bindings/v8/custom/V8HTMLInputElementCustom.cpp:
600         * bindings/v8/custom/V8HTMLOptionElementConstructor.cpp:
601         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
602         * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp:
603         * bindings/v8/custom/V8HTMLPlugInElementCustom.h: Added.
604         * bindings/v8/custom/V8HTMLSelectElementCustom.cpp:
605         * bindings/v8/custom/V8HistoryCustom.cpp:
606         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
607         * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
608         * bindings/v8/custom/V8LocationCustom.cpp:
609         * bindings/v8/custom/V8MessageChannelConstructor.cpp:
610         * bindings/v8/custom/V8MessageEventCustom.cpp:
611         * bindings/v8/custom/V8MessagePortCustom.cpp:
612         * bindings/v8/custom/V8NodeCustom.cpp:
613         * bindings/v8/custom/V8NodeFilterCustom.cpp:
614         * bindings/v8/custom/V8NodeIteratorCustom.cpp:
615         * bindings/v8/custom/V8NotificationCenterCustom.cpp:
616         * bindings/v8/custom/V8SQLResultSetRowListCustom.cpp:
617         * bindings/v8/custom/V8SQLTransactionCustom.cpp:
618         * bindings/v8/custom/V8SVGElementInstanceCustom.cpp:
619         * bindings/v8/custom/V8SVGLengthCustom.cpp:
620         * bindings/v8/custom/V8SVGMatrixCustom.cpp:
621         * bindings/v8/custom/V8SharedWorkerCustom.cpp:
622         * bindings/v8/custom/V8TreeWalkerCustom.cpp:
623         * bindings/v8/custom/V8WebGLArrayBufferCustom.cpp:
624         * bindings/v8/custom/V8WebGLByteArrayCustom.cpp:
625         * bindings/v8/custom/V8WebGLFloatArrayCustom.cpp:
626         * bindings/v8/custom/V8WebGLIntArrayCustom.cpp:
627         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
628         * bindings/v8/custom/V8WebGLShortArrayCustom.cpp:
629         * bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp:
630         * bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp:
631         * bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp:
632         * bindings/v8/custom/V8WebKitCSSMatrixConstructor.cpp:
633         * bindings/v8/custom/V8WebKitPointConstructor.cpp:
634         * bindings/v8/custom/V8WebSocketCustom.cpp:
635         * bindings/v8/custom/V8WorkerContextCustom.cpp:
636         * bindings/v8/custom/V8WorkerCustom.cpp:
637         * bindings/v8/custom/V8XMLHttpRequestConstructor.cpp:
638         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
639         * bindings/v8/custom/V8XMLHttpRequestUploadCustom.cpp:
640         * bindings/v8/custom/V8XMLSerializerConstructor.cpp:
641         * bindings/v8/custom/V8XPathEvaluatorConstructor.cpp:
642         * bindings/v8/custom/V8XSLTProcessorCustom.cpp:
643
644 2009-12-21  Nate Chapin  <japhet@chromium.org>
645
646         Rubber-stamped by Darin Adler.
647
648         Revert r52446 due to crashiness.
649
650         https://bugs.webkit.org/show_bug.cgi?id=32839
651
652         * loader/DocumentThreadableLoader.cpp:
653         (WebCore::DocumentThreadableLoader::loadRequest):
654         * loader/FrameLoader.cpp:
655         (WebCore::FrameLoader::FrameLoader):
656         (WebCore::FrameLoader::stopLoading):
657         (WebCore::FrameLoader::loadURL):
658         (WebCore::FrameLoader::loadWithDocumentLoader):
659         (WebCore::FrameLoader::stopAllLoaders):
660         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
661         (WebCore::FrameLoader::pageHidden):
662         * loader/FrameLoader.h:
663         (WebCore::FrameLoader::suppressOpenerInNewFrame):
664         * loader/Request.cpp:
665         (WebCore::Request::Request):
666         (WebCore::Request::~Request):
667         * loader/Request.h:
668         * loader/SubresourceLoader.cpp:
669         (WebCore::SubresourceLoader::create):
670         * loader/SubresourceLoader.h:
671         * loader/loader.cpp:
672         (WebCore::Loader::load):
673         (WebCore::Loader::cancelRequests):
674         (WebCore::Loader::Host::servePendingRequests):
675         (WebCore::Loader::Host::cancelPendingRequests):
676         (WebCore::Loader::Host::cancelRequests):
677
678 2009-12-19  Kent Tamura  <tkent@chromium.org>
679
680         Reviewed by Adam Barth.
681
682         Add support for V8 Date binding.
683         https://bugs.webkit.org/show_bug.cgi?id=32699
684
685         This implements the same behavior as the recent change of
686         CodeGeneratorJS.pm and JSDOMBinding.cpp.
687
688         * bindings/scripts/CodeGeneratorV8.pm:
689           Produce toWebCoreDate() or v8DateOrNull() for Date type.
690         * bindings/v8/V8Binding.cpp:
691         (WebCore::toWebCoreDate):
692           Converts a JavaScript object to a double representing Date.
693         (WebCore::v8DateOrNull):
694           Converts a double representing Date to a JavaScript Date object or null.
695         * bindings/v8/V8Binding.h: Declare toWebCoreDate() and v8DateOrNull().
696         * html/HTMLInputElement.idl: Delete V8_BINGIN exclusion for valueAsDate.
697
698 2009-12-21  Darin Adler  <darin@apple.com>
699
700         Reviewed by Mark Rowe.
701
702         Renamed m_sel to m_selection. Used do-webcore-rename.
703
704         * editing/SelectionController.cpp:
705         (WebCore::SelectionController::setSelection):
706         (WebCore::SelectionController::nodeWillBeRemoved):
707         (WebCore::SelectionController::willBeModified):
708         (WebCore::SelectionController::directionOfEnclosingBlock):
709         (WebCore::SelectionController::modifyExtendingRight):
710         (WebCore::SelectionController::modifyExtendingForward):
711         (WebCore::SelectionController::modifyMovingRight):
712         (WebCore::SelectionController::modifyMovingForward):
713         (WebCore::SelectionController::modifyExtendingLeft):
714         (WebCore::SelectionController::modifyExtendingBackward):
715         (WebCore::SelectionController::modifyMovingLeft):
716         (WebCore::SelectionController::modifyMovingBackward):
717         (WebCore::SelectionController::modify):
718         (WebCore::SelectionController::expandUsingGranularity):
719         (WebCore::SelectionController::xPosForVerticalArrowNavigation):
720         (WebCore::SelectionController::setBase):
721         (WebCore::SelectionController::setExtent):
722         (WebCore::SelectionController::layout):
723         (WebCore::SelectionController::caretRenderer):
724         (WebCore::SelectionController::invalidateCaretRect):
725         (WebCore::SelectionController::paintCaret):
726         (WebCore::SelectionController::debugRenderer):
727         (WebCore::SelectionController::contains):
728         (WebCore::SelectionController::selectAll):
729         (WebCore::SelectionController::formatForDebugger):
730         (WebCore::SelectionController::showTreeForThis):
731         * editing/SelectionController.h:
732         * editing/gtk/SelectionControllerGtk.cpp:
733         (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
734         * editing/mac/SelectionControllerMac.mm:
735         (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
736         Let the script do its thing. Made sure no tests broke.
737
738 2009-12-21  Carol Szabo  <carol.szabo@nokia.com>
739
740         Reviewed by Darin Adler.
741
742         Inconsistent use of counterName and identifier in CSS counter code and loss of information about the counter type.
743         https://bugs.webkit.org/show_bug.cgi?id=31814
744
745         No new tests because there are no functional changes in this patch.
746
747         * rendering/CounterNode.cpp:
748         (WebCore::CounterNode::CounterNode):
749         (WebCore::CounterNode::computeCountInParent):
750         (WebCore::showTreeAndMark):
751         * rendering/RenderCounter.cpp:
752         (WebCore::planCounter):
753         (WebCore::findPlaceForCounter):
754         (WebCore::makeCounterNode):
755         (WebCore::RenderCounter::originalText):
756         Changed to use identifier instead of counterName and actsAsReset or hasResetType, as appropriate instead of isReset.
757         * rendering/CounterNode.h:
758         (WebCore::CounterNode::actsAsReset):
759         (WebCore::CounterNode::hasResetType):
760
761 2009-12-21  Dirk Schulze  <krit@webkit.org>
762
763         Reviewed by Darin Adler and Nikolas Zimmermann.
764
765         Speed-up SVG Masking
766         https://bugs.webkit.org/show_bug.cgi?id=32738
767
768         This patch makes SVG Masking faster. The luminance calculaton of the ImageBuffer,
769         that is created by pixel manipulation, got optimized. The ImageBuffer and it's
770         luminance is created once now, not on every call of applyMask.
771         The size of the intermediate ImageBuffer depends on the visible area now and is
772         clipped by the mask rect.
773         
774         The patch doesn't change functionality so no new tests needed.
775         The new ImageBuffer handling in Mask causes two updates of test results. The pixel
776         tests and LayoutTests pass, but the checksum doesn't match.
777
778         * svg/SVGMaskElement.cpp:
779         (WebCore::SVGMaskElement::drawMaskerContent):
780         * svg/graphics/SVGResourceMasker.cpp:
781         (WebCore::SVGResourceMasker::applyMask):
782
783 2009-12-21  Andreas Kling  <andreas.kling@nokia.com>
784
785         Reviewed by Darin Adler.
786
787         Fix assertion failure when dragging an SVG image.
788         https://bugs.webkit.org/show_bug.cgi?id=32511
789
790         Test: fast/images/drag-svg-as-image.html
791
792         * svg/graphics/SVGImage.cpp:
793         (WebCore::SVGImage::filenameExtension): Return "svg"
794         * svg/graphics/SVGImage.h:
795
796 2009-12-17  Philippe Normand  <pnormand@igalia.com>
797
798         Reviewed by Xan Lopez.
799
800         [GTK] G_OBJECT() cast is not necessary for signals connection and properties access
801         https://bugs.webkit.org/show_bug.cgi?id=32661
802
803         Removed useless calls to the G_OBJECT() macro and replaced NULL
804         occurences with a SENTINEL macro.
805
806         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
807         (WebCore::MediaPlayerPrivate::hasVideo):
808         (WebCore::MediaPlayerPrivate::hasAudio):
809         (WebCore::MediaPlayerPrivate::setVolume):
810         (WebCore::MediaPlayerPrivate::createGSTPlayBin):
811
812 2009-12-21  Nate Chapin  <japhet@chromium.org>
813
814         Reviewed by Darin Adler.
815
816         If an image load is started during an unload or beforeunload event, run it
817         asynchronously (and allow it to outlive its page) so navigation can continue 
818         while the load completes.
819
820         https://bugs.webkit.org/show_bug.cgi?id=30457
821
822         Tests: http/tests/navigation/image-load-in-beforeunload-handler.html
823                http/tests/navigation/image-load-in-unload-handler.html
824
825         * loader/DocumentThreadableLoader.cpp:
826         (WebCore::DocumentThreadableLoader::loadRequest): 
827         * loader/FrameLoader.cpp: Rename m_unloadEventBeingDispatched to m_isDispatchingUnloadEvent.
828         (WebCore::FrameLoader::FrameLoader):
829         (WebCore::FrameLoader::stopLoading):
830         (WebCore::FrameLoader::loadURL):
831         (WebCore::FrameLoader::loadWithDocumentLoader):
832         (WebCore::FrameLoader::stopAllLoaders):
833         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): Set m_isDispatchingBeforeUnloadEvent.
834         (WebCore::FrameLoader::pageHidden):
835         * loader/FrameLoader.h:
836         (WebCore::FrameLoader::isDispatchingUnloadFamilyEvent): Added.
837         * loader/Request.cpp:
838         (WebCore::Request::Request): Add OutlivePagePolicy to constructor parameters
839         * loader/Request.h:
840         (WebCore::): Add OutlivePagePolicy enum.
841         (WebCore::Request::shouldOutlivePage): Added.
842         (WebCore::Request::frame): Added.
843         * loader/SubresourceLoader.cpp:
844         (WebCore::SubresourceLoader::create): Change one of the security checks to an outlive page check.
845         * loader/SubresourceLoader.h:
846         * loader/loader.cpp:
847         (WebCore::Loader::load): Add OutlivePagePolicy to Request constructor call,
848              ensure requests that should outlive page are done asynchronously.
849         (WebCore::Loader::cancelRequests): Remove ending ASSERT since it will now be hard to predict how
850              many requests might possibly outlive a cancel in every case.
851         (WebCore::Loader::Host::servePendingRequests): Use the correct frame in the case of a request outliving its page.
852         (WebCore::Loader::Host::cancelPendingRequests): Ensure we don't cancel request that should outlive their page.
853         (WebCore::Loader::Host::cancelRequests): Ensure we don't cancel request that should outlive their page.
854
855 2009-12-18  Adam Roben  <aroben@apple.com>
856
857         Fix Windows build warnings
858
859         * WebCore.vcproj/WebCore.vcproj: Exclude SVG files from the build that
860         are compiled via SVGAllInOne.cpp.
861
862 2009-12-20  Pavel Feldman  <pfeldman@chromium.org>
863
864         Reviewed by Timothy Hatcher.
865
866         Web Inspector: Can’t copy outer html of selected node.
867         Also adds "Copy as HTML" context menu item.
868
869         https://bugs.webkit.org/show_bug.cgi?id=32802
870
871         * English.lproj/localizedStrings.js:
872         * inspector/front-end/ElementsTreeOutline.js:
873         (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
874         * inspector/front-end/inspector.js:
875         (WebInspector.documentCanCopy):
876
877 2009-12-20  Pavel Feldman  <pfeldman@chromium.org>
878
879         Reviewed by Eric Seidel.
880
881         Web Inspector: extract syntax highlighters into separate files.
882
883         https://bugs.webkit.org/show_bug.cgi?id=32803
884
885         * WebCore.gypi:
886         * WebCore.vcproj/WebCore.vcproj:
887         * inspector/front-end/CSSSourceSyntaxHighlighter.js: Added.
888         (WebInspector.CSSSourceSyntaxHighlighter):
889         * inspector/front-end/JavaScriptSourceSyntaxHighlighter.js: Added.
890         (WebInspector.JavaScriptSourceSyntaxHighlighter):
891         (WebInspector.JavaScriptSourceSyntaxHighlighter.):
892         * inspector/front-end/SourceFrame.js:
893         * inspector/front-end/SourceSyntaxHighlighter.js: Added.
894         (WebInspector.SourceSyntaxHighlighter):
895         (WebInspector.SourceSyntaxHighlighter.prototype.createSpan):
896         (WebInspector.SourceSyntaxHighlighter.prototype.process.processChunk):
897         (WebInspector.SourceSyntaxHighlighter.prototype.process.moveToNextLine):
898         (WebInspector.SourceSyntaxHighlighter.prototype.process):
899         (WebInspector.SourceSyntaxHighlighter.prototype.lex):
900         (WebInspector.SourceSyntaxHighlighter.prototype.appendNonToken):
901         (WebInspector.SourceSyntaxHighlighter.prototype.syntaxHighlightNode):
902         * inspector/front-end/WebKit.qrc:
903         * inspector/front-end/inspector.html:
904
905 2009-12-18  Julien Chaffraix  <jchaffraix@pleyo.com>
906
907         Reviewed by Darin Adler.
908
909         defersLoading is disabled in current libcURL.
910         https://bugs.webkit.org/show_bug.cgi?id=32707
911
912         Basically this change reverts r49577 that was totally wrong.
913         According to curlver.h, LIBCURL_VERSION_NUM is a
914         "6-digit (24 bits) hexadecimal number".
915
916         The check should be against 0x071200 (7.18) as it was originally the case.
917
918        * platform/network/curl/ResourceHandleManager.cpp:
919         (WebCore::ResourceHandleManager::initializeHandle): Use the right check.
920         * platform/network/curl/ResourceHandleCurl.cpp:
921         (WebCore::ResourceHandle::setDefersLoading): Ditto. Also removed a print
922         to use a LOG_ERROR instead.
923  
924 2009-12-20  Kent Tamura  <tkent@chromium.org>
925
926         Reviewed by Darin Adler.
927
928         Add support for JavaScriptCore Date binding.
929         https://bugs.webkit.org/show_bug.cgi?id=32698
930
931         This is needed for HTMLInputElement::valueAsDate and
932         HTMLTimeElement::valueAsDate.
933
934         A Date instance is mapped to a double value in C++.
935         - If null or undefined is set to a JavaScript property, C++ setter
936           function receives NaN.
937         - If a getter C++ function returns NaN or infinity, a JavaScript
938           property returns null.
939
940         Test: fast/forms/input-valueasdate.html
941
942         * bindings/js/JSDOMBinding.cpp:
943         (WebCore::jsDateOrNull): Implement the above.
944         (WebCore::valueToDate): ditto.
945         * bindings/js/JSDOMBinding.h: Declare them.
946         * bindings/scripts/CodeGeneratorJS.pm: Produce jsDateOrNull() or
947           valueToDate() for Date type.
948         * html/HTMLInputElement.cpp:
949         (WebCore::HTMLInputElement::valueAsDate): Temporal implementation.
950         (WebCore::HTMLInputElement::setValueAsDate): ditto.
951         * html/HTMLInputElement.h:
952         * html/HTMLInputElement.idl: Declare valueAsDate.
953
954 2009-12-20  Kent Tamura  <tkent@chromium.org>
955
956         Reviewed by Darin Adler.
957
958         Introduce the followings:
959           - ::-webkit-inner-spin-button pseudo CSS selector
960           - ::-webkit-outer-spin-button pseudo CSS selector
961           - new appearance type: inner-spin-button
962           - new appearance type: outer-spin-button
963         They're going to be used for <input type=number> UI.
964         https://bugs.webkit.org/show_bug.cgi?id=31821
965
966         Inner-spin-button will be used for Windows, and outer-spin-button
967         will be used for Mac. A spin-button will represent a pair of an
968         increasing button part and a decreasing button part. SpinUpState,
969         which is defined in ThemeTypes.h, will be used to distinguish
970         these two parts.
971
972         The outer-spin-button implementation will use NSStepperCell.
973         NSStepperCell represents the pair of the parts and we can't draw them
974         independently. So a spin-button also represents the pair of the parts.
975
976         This change has no tests.  The following changes with tests will cover.
977
978         * css/CSSPrimitiveValueMappings.h:
979         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
980         * css/CSSSelector.cpp:
981         (WebCore::CSSSelector::extractPseudoType):
982         * css/CSSSelector.h:
983         (WebCore::CSSSelector::):
984         * css/CSSStyleSelector.cpp:
985         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
986         * css/CSSValueKeywords.in:
987         * css/html.css:
988         * platform/ThemeTypes.h:
989         (WebCore::ControlState): Add SpinUpState.
990         (WebCore::ControlPart): Add InnerSpinButtonPart and OuterSpinButtonPart.
991         * rendering/RenderTheme.cpp:
992         (WebCore::RenderTheme::adjustStyle):
993         (WebCore::RenderTheme::paint):
994         (WebCore::RenderTheme::adjustInnerSpinButtonStyle): Add an empty implementation.
995         (WebCore::RenderTheme::adjustOuterSpinButtonStyle): Add an empty implementation.
996         * rendering/RenderTheme.h:
997         (WebCore::RenderTheme::paintInnerSpinButton): Add an empty implementation.
998         (WebCore::RenderTheme::paintOuterSpinButton): Add an empty implementation.
999         * rendering/style/RenderStyleConstants.h:
1000         (WebCore::PseudoId): Add INNER_SPIN_BUTTON and OUTER_SPIN_BUTTON.
1001
1002 2009-12-20  Nayan Kumar K  <nayankk@gmail.com>
1003
1004         Reviewed by Darin Adler.
1005
1006         Fix for compilation errors in WML module, due to the changeset #52314.
1007         https://bugs.webkit.org/show_bug.cgi?id=32786
1008
1009         No new tests, this is compilation error fix.
1010
1011         * wml/WMLDocument.cpp:
1012         * wml/WMLPageState.cpp:
1013         * wml/WMLPageState.h:
1014
1015 2009-12-20  Dan Bernstein  <mitz@apple.com>
1016
1017         Reviewed by Mark Rowe.
1018
1019         <rdar://problem/7487689> REGRESSION (r52203): Inspector console uses
1020         Monaco on Snow Leopard
1021         https://bugs.webkit.org/show_bug.cgi?id=32775
1022
1023         * inspector/front-end/inspector.css: Use the default monospace family
1024         and size.
1025
1026 2009-12-20  Martin Robinson  <martin.james.robinson@gmail.com>
1027
1028         Reviewed by Xan Lopez.
1029
1030         [GTK] Remove more GTK+ and GLib headers from WebCore
1031         https://bugs.webkit.org/show_bug.cgi?id=32795
1032
1033         Remove most GTK+ and GLib includes from WebCore headers.
1034
1035         * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
1036         * platform/gtk/PasteboardHelper.h:
1037         * platform/gtk/RenderThemeGtk.cpp:
1038         * platform/gtk/RenderThemeGtk.h:
1039         * platform/gtk/ScrollbarGtk.cpp:
1040         * platform/gtk/ScrollbarThemeGtk.h:
1041         * platform/gtk/gtk2drawing.c:
1042         * platform/gtk/gtkdrawing.h:
1043
1044 2009-12-20  Kevin Ollivier  <kevino@theolliviers.com>
1045
1046         [wx] build fixes after recent changes.
1047
1048         * bindings/BindingSecurityBase.cpp: Removed V8 header in common code.
1049         * platform/wx/ContextMenuWx.cpp: Added missing header.
1050         * plugins/mac/PluginViewMac.cpp: Added missing header.
1051
1052 2009-12-20  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
1053
1054         Reviewed by Xan Lopez.
1055
1056         Hopefully fix the assertion we are hitting by not forcing updating
1057         the state of scrollbars when setting the adjustments. This was
1058         leading to a premature layout.
1059
1060         fast/dom/open-and-close-by-DOM.html
1061         fast/dom/Window/closure-access-after-navigation-window.html
1062         fast/harness/use-page-cache.html
1063
1064         * platform/gtk/ScrollViewGtk.cpp:
1065         (WebCore::ScrollView::setGtkAdjustments):
1066
1067 2009-12-20  Pavel Feldman  <pfeldman@chromium.org>
1068
1069         Reviewed by Darin Adler.
1070
1071         Web Inspector: Constrain the number of messages the inspector shows.
1072
1073         https://bugs.webkit.org/show_bug.cgi?id=20919
1074
1075         * English.lproj/localizedStrings.js:
1076         * inspector/InspectorController.cpp:
1077         (WebCore::InspectorController::InspectorController):
1078         (WebCore::InspectorController::addConsoleMessage):
1079         (WebCore::InspectorController::clearConsoleMessages):
1080         (WebCore::InspectorController::populateScriptObjects):
1081         * inspector/InspectorController.h:
1082         * inspector/InspectorFrontend.cpp:
1083         (WebCore::InspectorFrontend::updateConsoleMessageExpiredCount):
1084         * inspector/InspectorFrontend.h:
1085         * inspector/front-end/inspector.js:
1086         (WebInspector.updateConsoleMessageExpiredCount):
1087
1088 2009-12-20  Andrei Popescu  <andreip@google.com>
1089
1090         Reviewed by Adam Barth.
1091
1092         [Android] Android needs implementation of setCookies, cookies and cookiesEnabled functions.
1093         https://bugs.webkit.org/show_bug.cgi?id=32559
1094
1095         Add implementation of the cookie functions.
1096         Fix a crash caused by dereferencing a 0 MainResourceLoader pointer
1097         in ResourceHandle::start().
1098
1099         No new tests, this is platform code.
1100
1101         * platform/android/PlatformBridge.h:
1102         * platform/network/android/AuthenticationChallenge.h: Added.
1103         * platform/network/android/CookieJarAndroid.cpp: Added.
1104         (WebCore::setCookies):
1105         (WebCore::cookies):
1106         (WebCore::cookiesEnabled):
1107         * platform/network/android/ResourceHandleAndroid.cpp:
1108         (WebCore::ResourceHandle::start):
1109
1110 2009-12-19  Eric Seidel  <eric@webkit.org>
1111
1112         No review, rolling out r52395.
1113         http://trac.webkit.org/changeset/52395
1114
1115         * svg/SVGMaskElement.cpp:
1116         (WebCore::SVGMaskElement::drawMaskerContent):
1117         * svg/SVGMaskElement.h:
1118         * svg/graphics/SVGResourceMasker.cpp:
1119         (WebCore::SVGResourceMasker::applyMask):
1120         * svg/graphics/SVGResourceMasker.h:
1121
1122 2009-12-19  Adam Barth  <abarth@webkit.org>
1123
1124         No review, rolling out r52399.
1125         http://trac.webkit.org/changeset/52399
1126
1127         * websockets/WebSocket.cpp:
1128         (WebCore::WebSocket::connect):
1129
1130 2009-12-19  Adam Barth  <abarth@webkit.org>
1131
1132         Reviewed by Eric Seidel.
1133
1134         Added a missing "not".
1135
1136         Test: http/tests/security/xss-DENIED-window-open-javascript-url.html
1137
1138         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1139         (WebCore::createWindow):
1140
1141 2009-12-19  Fumitoshi Ukai  <ukai@chromium.org>
1142
1143         Reviewed by Alexey Proskuryakov.
1144
1145         Invalid url should raise SYNTAX_ERR exception.
1146         https://bugs.webkit.org/show_bug.cgi?id=32700
1147
1148         Check url is valid in WebSocket::connect.
1149         Also log the detailed reason of websocket failures to console.
1150
1151         * websockets/WebSocket.cpp:
1152         (WebCore::WebSocket::connect):
1153
1154 2009-12-19  Dan Bernstein  <mitz@apple.com>
1155
1156         Reviewed by Darin Adler.
1157
1158         REGRESSION: Up/down arrow keys do not step numeric CSS property values
1159         https://bugs.webkit.org/show_bug.cgi?id=32776
1160
1161         * inspector/front-end/inspector.js:
1162         (WebInspector.documentKeyDown): Call the focused element’s
1163         handleKeyEvent method.
1164
1165 2009-12-19  Dirk Schulze  <krit@webkit.org>
1166
1167         Reviewed by Nikolas Zimmermann.
1168
1169         Speed-up SVG Masking
1170         https://bugs.webkit.org/show_bug.cgi?id=32738
1171
1172         This patch makes SVG Masking faster. At the moment we create a new ImageBuffer
1173         and copy the complete pixel array. That is rather inefficient. This patch
1174         uses the mask image directly.
1175         It also bounds the direct pixel manipultation to the viewable area to minimize
1176         the calculation of the mask.
1177
1178         No change in functionality. So no new test.
1179
1180         * svg/SVGMaskElement.cpp:
1181         (WebCore::SVGMaskElement::drawMaskerContent):
1182         * svg/SVGMaskElement.h:
1183         * svg/graphics/SVGResourceMasker.cpp:
1184         (WebCore::SVGResourceMasker::applyMask):
1185         * svg/graphics/SVGResourceMasker.h:
1186
1187 2009-12-19  Dirk Schulze  <krit@webkit.org>
1188
1189         Reviewed by Nikolas Zimmermann.
1190
1191         Add tests to check filter, mask, clip, opacity and marker ordering
1192         https://bugs.webkit.org/show_bug.cgi?id=14010
1193
1194         The right ordering for applying effects on objects in SVG is filters,
1195         clipper/masker and opacity. This patch fixes the order of filter and
1196         clipper/masker. Opacity and marker need another test.
1197         This change is according to the SVG Specification:
1198         http://www.w3.org/TR/SVG11/render.html#Elements
1199
1200         Test: svg/filters/filter-clip.svg
1201
1202         * rendering/SVGRenderSupport.cpp:
1203         (WebCore::SVGRenderBase::prepareToRenderSVGContent):
1204
1205 2009-12-19  Evan Martin  <evan@chromium.org>
1206
1207         Reviewed by Gustavo Noronha Silva.
1208
1209         Revert my attempt at making --disable-geolocation work; it is
1210         more complicated than I anticipated.  (It passed on the build bots
1211         because they build with --enable-geolocation.)
1212
1213         * GNUmakefile.am:
1214
1215 2009-12-19  MORITA Hajime  <morrita@gmail.com>
1216
1217         Reviewed by Darin Adler.
1218
1219         WebCore::Range::surroundContents NULL pointer crash.
1220
1221         https://bugs.webkit.org/show_bug.cgi?id=31684
1222
1223         Test: fast/dom/Range/31684.html
1224
1225         * dom/Range.cpp:
1226         (WebCore::Range::surroundContents):
1227         throw exception when parentOfNewParent->parentNode() is NULL.
1228
1229 2009-12-19  Christian Dywan  <christian@twotoasts.de>
1230
1231         Reviewed by Gustavo Noronha Silva.
1232
1233         Don't use an icon for all spelling guess menu items.
1234
1235         * platform/gtk/ContextMenuItemGtk.cpp:
1236         (WebCore::gtkStockIDFromContextMenuAction):
1237
1238 2009-12-19  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
1239
1240         Unreviewed build fix. Missing \.
1241
1242         * GNUmakefile.am:
1243
1244 2009-12-19  Evan Martin  <evan@chromium.org>
1245
1246         Reviewed by Gustavo Noronha Silva.
1247
1248         Make --disable-geolocation and --disable-svg work, by conditionally
1249         building the relevant files.
1250
1251         * GNUmakefile.am:
1252
1253 2009-12-18  Peter Kasting  <pkasting@google.com>
1254
1255         Reviewed by Simon Fraser.
1256
1257         Add a comment about some confusing code that otherwise would look like
1258         it might be a bug.
1259         https://bugs.webkit.org/show_bug.cgi?id=32534
1260
1261         * rendering/RenderLayer.cpp:
1262         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
1263
1264 2009-12-18  Nikolas Zimmermann  <nzimmermann@rim.com>
1265
1266         Not reviewed. Messed up the XCode file, trying to fix.
1267
1268         * WebCore.xcodeproj/project.pbxproj:
1269
1270 2009-12-18  Nikolas Zimmermann  <nzimmermann@rim.com>
1271
1272         Not reviewed, fix typos in WebCore.xcodeproj.
1273
1274         * WebCore.xcodeproj/project.pbxproj:
1275
1276 2009-12-18  Nikolas Zimmermann  <nzimmermann@rim.com>
1277
1278         Reviewed by Eric Seidel.
1279
1280         SVGAngle / SVGPreserveAspectRatio should be POD types
1281         https://bugs.webkit.org/show_bug.cgi?id=32758
1282
1283         Convert SVGAngle / SVGPreserveAspectRatio to be non-refcounted types, just
1284         like it has been done for SVGMatrix / SVGLength before.
1285
1286         This patch prepares removing the special DOMObjectWithSVGContext hack.
1287         No change in functionality, thus no new tests.
1288
1289         * WebCore.xcodeproj/project.pbxproj: Add SVGNames.h to the 'Copy Generated Headers' phase, and set SVGAngle/SVGPreserveAspectRatio role to 'Private', so WebKit can access it.
1290         * bindings/scripts/CodeGenerator.pm: Recognize SVGAngle / SVGPreserveAspectRatio as new POD-types (similar to SVGLength)
1291         * bindings/scripts/CodeGeneratorJS.pm: Ditto. 
1292         * bindings/scripts/CodeGeneratorV8.pm: Ditto.
1293         * bindings/v8/V8Index.h: Ditto.
1294         * rendering/RenderSVGImage.cpp: All following changes, modify SVGAngle/SVGPreserveAspectRatio access, as they are non-refcounted now.
1295         (WebCore::RenderSVGImage::adjustRectsForAspectRatio):
1296         (WebCore::RenderSVGImage::paint):
1297         * rendering/RenderSVGImage.h:
1298         * svg/SVGAngle.h:
1299         * svg/SVGAngle.idl:
1300         * svg/SVGAnimatedTemplate.h:
1301         (WebCore::):
1302         * svg/SVGFEImageElement.cpp:
1303         (WebCore::SVGFEImageElement::SVGFEImageElement):
1304         (WebCore::SVGFEImageElement::parseMappedAttribute):
1305         * svg/SVGFitToViewBox.cpp:
1306         (WebCore::SVGFitToViewBox::viewBoxToViewTransform):
1307         (WebCore::SVGFitToViewBox::parseMappedAttribute):
1308         * svg/SVGFitToViewBox.h:
1309         * svg/SVGImageElement.cpp:
1310         (WebCore::SVGImageElement::SVGImageElement):
1311         (WebCore::SVGImageElement::parseMappedAttribute):
1312         * svg/SVGMarkerElement.cpp:
1313         (WebCore::SVGMarkerElement::SVGMarkerElement):
1314         (WebCore::SVGMarkerElement::parseMappedAttribute):
1315         (WebCore::SVGMarkerElement::setOrientToAuto):
1316         (WebCore::SVGMarkerElement::setOrientToAngle):
1317         (WebCore::SVGMarkerElement::canvasResource):
1318         * svg/SVGMarkerElement.h:
1319         * svg/SVGPatternElement.cpp:
1320         (WebCore::SVGPatternElement::SVGPatternElement):
1321         * svg/SVGPreserveAspectRatio.cpp:
1322         (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio):
1323         (WebCore::SVGPreserveAspectRatio::getCTM):
1324         * svg/SVGPreserveAspectRatio.h:
1325         (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio):
1326         * svg/SVGPreserveAspectRatio.idl:
1327         * svg/SVGSVGElement.cpp:
1328         (WebCore::SVGSVGElement::SVGSVGElement):
1329         (WebCore::SVGSVGElement::createSVGAngle):
1330         (WebCore::SVGSVGElement::inheritViewAttributes):
1331         * svg/SVGSVGElement.h:
1332         * svg/SVGSymbolElement.cpp:
1333         (WebCore::SVGSymbolElement::SVGSymbolElement):
1334         * svg/SVGViewElement.cpp:
1335         (WebCore::SVGViewElement::SVGViewElement):
1336         * svg/SVGViewSpec.cpp:
1337         (WebCore::SVGViewSpec::SVGViewSpec):
1338         (WebCore::SVGViewSpec::setPreserveAspectRatioString):
1339         (WebCore::SVGViewSpec::parseViewSpec):
1340
1341 2009-12-18  Dumitru Daniliuc  <dumi@chromium.org>
1342
1343         Chromium build fix, no review.
1344
1345         * storage/chromium/DatabaseTrackerChromium.cpp:
1346
1347 2009-12-18  Brent Fulgham  <bfulgham@webkit.org>
1348
1349         Build fix, no review.
1350
1351         * platform/graphics/win/FontCacheWin.cpp:
1352         (WebCore::FontCache::createFontPlatformData): Correct my typo
1353           on the CG build.
1354
1355 2009-12-18  Dumitru Daniliuc  <dumi@chromium.org>
1356
1357         Reviewed by Eric Seidel.
1358
1359         Make DatabaseTrackerChromium::removeOpenDatabase() send and IPC on
1360         the main thread when a database is being closed.
1361
1362         https://bugs.webkit.org/show_bug.cgi?id=32627
1363
1364         * storage/chromium/DatabaseTrackerChromium.cpp:
1365         (WebCore::removeOpenDatabaseOnMainThread):
1366         (WebCore::DatabaseTracker::removeOpenDatabase):
1367
1368 2009-12-18  Brent Fulgham  <bfulgham@webkit.org>
1369
1370         Build fix, no review.
1371
1372         * page/win/FrameCairoWin.cpp: Add missing include.
1373         * platform/graphics/win/FontCacheWin.cpp:
1374         (WebCore::FontCache::createFontPlatformData): Conditionalize
1375           Safari-only call.
1376
1377 2009-12-18  Dumitru Daniliuc  <dumi@chromium.org>
1378
1379         Reviewed by Dmitry Titov.
1380
1381         Move some code related to database closing from the destructor to
1382         the close() method. This would allow us to do things such as post
1383         tasks to other threads when a database closes, which cannot be
1384         done now, because we cannot increment the ref count to a database
1385         object when we're in its destructor.
1386
1387         https://bugs.webkit.org/show_bug.cgi?id=32626
1388
1389         * storage/Database.cpp:
1390         (WebCore::Database::~Database):
1391         (WebCore::Database::close):
1392
1393 2009-12-18  Jon Honeycutt  <jhoneycutt@apple.com>
1394
1395         REGRESSION(r52233): MSAA: Accessibility role of lists is wrong
1396
1397         https://bugs.webkit.org/show_bug.cgi?id=32736
1398
1399         Reviewed by Adam Roben.
1400
1401         Test: platform/win/accessibility/list-role.html
1402
1403         * accessibility/AccessibilityObject.h:
1404         (WebCore::AccessibilityObject::roleValueForMSAA):
1405         Return roleValue(), rather than m_role, as subclasses may override it.
1406
1407         * accessibility/AccessibilityRenderObject.cpp:
1408         (WebCore::AccessibilityRenderObject::roleValueForMSAA):
1409         Fallback to roleValue(), rather than m_role, as it may be overriden.
1410
1411 2009-12-17  Jon Honeycutt  <jhoneycutt@apple.com>
1412
1413         MSAA: Accessibility role of list items is wrong
1414
1415         https://bugs.webkit.org/show_bug.cgi?id=32688
1416
1417         Reviewed by Adam Roben.
1418
1419         Test: platform/win/accessibility/list-item-role.html
1420
1421         * accessibility/AccessibilityObject.h:
1422         (WebCore::):
1423         Add a ListItemRole to the enum.
1424
1425         * accessibility/AccessibilityRenderObject.cpp:
1426         (WebCore::msaaRoleForRenderer):
1427         Return the role for the RenderObject, or UnknownRole if unknown.
1428         (WebCore::AccessibilityRenderObject::roleValueForMSAA):
1429         Call msaaRoleForRenderer() to get the role. If it is UnknownRole, fall
1430         back to m_role.
1431
1432 2009-12-18  Simon Fraser  <simon.fraser@apple.com>
1433
1434         Reviewed by Darin Adler.
1435
1436         Crash when accessing webkitTransition property after setting webkitTransitionProperty with invalid value.
1437         https://bugs.webkit.org/show_bug.cgi?id=31559
1438         
1439         Fix an array bounds error when accessing the CSS value for a shorthand property that takes
1440         a comma-separated list, after the list for one of the component properties has been set to a different length.
1441
1442         Test: fast/css/shorthand-mismatched-list-crash.html
1443
1444         * css/CSSMutableStyleDeclaration.cpp:
1445         (WebCore::CSSMutableStyleDeclaration::getLayeredShorthandValue):
1446
1447 2009-12-18  Simon Fraser  <simon.fraser@apple.com>
1448
1449         Reviewed by Mark Rowe.
1450
1451         Remove WebCore.ClientBasedGeolocation.exp from Sources, and remove two IDL files from Resources.
1452
1453         * WebCore.xcodeproj/project.pbxproj:
1454
1455 2009-12-18  Sam Weinig  <sam@webkit.org>
1456
1457         Fix mac Geolocation build.
1458
1459         * DerivedSources.make:
1460         * WebCore.ClientBasedGeolocation.exp: Added.
1461         * WebCore.xcodeproj/project.pbxproj:
1462         * page/Geolocation.h:
1463         * page/GeolocationError.h:
1464         (WebCore::GeolocationError::GeolocationError):
1465         * page/GeolocationPosition.h:
1466
1467 2009-12-18  Brian Weinstein  <bweinstein@apple.com>
1468
1469         Reviewed by Adam Roben.
1470
1471         Fixes <http://webkit.org/b/32613>.
1472         REGRESSION (r52008): Middle-clicking on a linked image starts a pan scroll,
1473         but should follow the link instead.
1474
1475         The node itself isn't the only possible node that can be a link (that was the
1476         original check), any of its ancestors could be links as well, we need to climb
1477         up the tree to see. Created a new function (enclosingAnchorNode), that finds a
1478         node's enclosing anchor element (if it exists), that we can share between RenderLayer
1479         and Node, and also added tests that test pan scrolling behavior in image maps.
1480
1481         Tests: platform/win/fast/events/panScroll-image-no-scroll.html
1482                platform/win/fast/events/panScroll-imageMap-href-no-scroll.html
1483                platform/win/fast/events/panScroll-imageMap-noHref-scroll.html
1484
1485         * dom/Node.cpp:
1486         (WebCore::Node::enclosingAnchorNode):
1487         (WebCore::Node::defaultEventHandler):
1488         * dom/Node.h:
1489         * rendering/RenderLayer.cpp:
1490         (WebCore::RenderLayer::hitTest):
1491
1492 2009-12-18  Benjamin Otte  <otte@gnome.org>
1493
1494         Reviewed by Xan Lopez.
1495
1496         [GTK] RemoveDashboard support. It's useless.
1497
1498         * GNUmakefile.am:
1499
1500 2009-12-18  Christian Dywan  <christian@twotoasts.de>
1501
1502         Reviewed by Xan Lopez.
1503
1504         [GTK] context menu overriding API is very limited
1505         https://bugs.webkit.org/show_bug.cgi?id=27546
1506
1507         Omit SearchWeb from the context menu in the GTK+ port.
1508
1509         * platform/ContextMenu.cpp:
1510         (WebCore::ContextMenu::populate):
1511
1512 2009-12-18  Sam Weinig  <sam@webkit.org>
1513
1514         Reviewed by Anders Carlsson.
1515
1516         Add export the new symbol in WebCoreSystemInterface.
1517
1518         * WebCore.base.exp:
1519         * platform/mac/WebCoreSystemInterface.h:
1520         * platform/mac/WebCoreSystemInterface.mm:
1521
1522 2009-12-18  Sam Weinig  <sam@webkit.org>
1523
1524         Reviewed by Anders Carlsson.
1525
1526         Forward declare NSMutableArray when not compiling for Objective-C.
1527
1528         * platform/mac/WebCoreSystemInterface.h:
1529
1530 2009-12-18  Gavin Barraclough  <barraclough@apple.com>
1531
1532         Reviewed by Sam Weinig.
1533
1534         https://bugs.webkit.org/show_bug.cgi?id=32720
1535         Replace UString addition/append with use of JSC::StringBuilder.
1536
1537         * ForwardingHeaders/runtime/StringBuilder.h: Added.
1538         * bindings/js/ScriptString.h:
1539         (WebCore::ScriptString::operator+=):
1540         * bridge/jni/jni_runtime.cpp:
1541         (appendClassName):
1542         (JavaMethod::signature):
1543         * inspector/InspectorController.cpp:
1544         (WebCore::InspectorController::addProfileFinishedMessageToConsole):
1545         (WebCore::InspectorController::addStartProfilingMessageToConsole):
1546         (WebCore::InspectorController::getCurrentUserInitiatedProfileName):
1547
1548 2009-12-18  Kenneth Russell  <kbr@google.com>
1549
1550         Reviewed by Darin Fisher.
1551
1552         Index validation for drawElements examines too many indices
1553         https://bugs.webkit.org/show_bug.cgi?id=32692
1554
1555         Test: fast/canvas/webgl/bug-32692.html
1556
1557         * html/canvas/WebGLRenderingContext.cpp:
1558         (WebCore::WebGLRenderingContext::validateIndexArrayPrecise):
1559
1560 2009-12-18  Sam Weinig  <sam@webkit.org>
1561
1562         Reviewed by Anders Carlsson.
1563
1564         Update WebKitSystemInterface for <rdar://problem/7237059>.        
1565
1566         * platform/mac/WebCoreSystemInterface.h:
1567         * platform/mac/WebCoreSystemInterface.mm:
1568
1569 2009-12-18  Adam Roben  <aroben@apple.com>
1570
1571         GTK build fix
1572
1573         * plugins/gtk/PluginViewGtk.cpp: Added #include.
1574
1575 2009-12-18  Adam Roben  <aroben@apple.com>
1576
1577         Chromium build fix
1578
1579         * platform/chromium/PopupMenuChromium.cpp: Added #include.
1580
1581 2009-12-18  Adam Roben  <aroben@apple.com>
1582
1583         Chromium build fix
1584
1585         * html/HTMLLinkElement.cpp: Added #include.
1586
1587 2009-12-18  Adam Roben  <aroben@apple.com>
1588
1589         Qt build fix
1590
1591         * platform/qt/RenderThemeQt.cpp:
1592         * plugins/qt/PluginDataQt.cpp:
1593         * plugins/qt/PluginViewQt.cpp:
1594         Added #includes.
1595
1596 2009-12-18  Adam Roben  <aroben@apple.com>
1597
1598         V8 build fix
1599
1600         * bindings/v8/custom/V8DOMWindowCustom.cpp: Added #include.
1601
1602 2009-12-18  Adam Roben  <aroben@apple.com>
1603
1604         GTK (and others?) build fix
1605
1606         * platform/text/StringImpl.h: Added #include.
1607
1608 2009-12-18  Adam Roben  <aroben@apple.com>
1609
1610         Reduce #includes in a few high-use headers
1611
1612         Removed unnecessary #includes in these headers:
1613           - Frame.h
1614           - FrameWin.h
1615           - Node.h
1616           - Page.h
1617           - StringImpl.h
1618
1619         The rest of the patch is all adding #includes to source files that now
1620         require them.
1621
1622         Fixes <http://webkit.org/b/32718>.
1623
1624         Rubber-stamped by Anders Carlsson.
1625
1626         * dom/Node.h:
1627         * page/Frame.h:
1628         * page/Page.h:
1629         * page/win/FrameWin.h:
1630         * platform/text/StringImpl.h:
1631         Removed unnecessary #includes.
1632
1633         * accessibility/win/AXObjectCacheWin.cpp:
1634         * bindings/js/JSDOMWindowBase.cpp:
1635         * bindings/js/JSDOMWindowCustom.cpp:
1636         * dom/Document.cpp:
1637         * dom/InputElement.cpp:
1638         * dom/Node.cpp:
1639         * dom/SelectElement.cpp:
1640         * editing/EditorCommand.cpp:
1641         * html/HTMLFormControlElement.cpp:
1642         * html/HTMLFormElement.cpp:
1643         * html/HTMLMediaElement.cpp:
1644         * html/HTMLParser.cpp:
1645         * html/HTMLTextAreaElement.cpp:
1646         * html/HTMLVideoElement.cpp:
1647         * inspector/InspectorController.cpp:
1648         * loader/FrameLoader.cpp:
1649         * loader/HistoryController.cpp:
1650         * loader/appcache/ApplicationCacheGroup.cpp:
1651         * page/Console.cpp:
1652         * page/EventHandler.cpp:
1653         * page/Frame.cpp:
1654         * page/FrameView.cpp:
1655         * page/Navigator.cpp:
1656         * page/PageGroup.cpp:
1657         * page/Settings.cpp:
1658         * page/mac/EventHandlerMac.mm:
1659         * platform/KURL.h:
1660         * platform/ScrollbarThemeComposite.cpp:
1661         * platform/cf/BinaryPropertyList.cpp:
1662         * platform/graphics/mac/GraphicsLayerCA.h:
1663         * platform/graphics/win/WKCACFLayerRenderer.cpp:
1664         * platform/mac/PopupMenuMac.mm:
1665         * platform/mac/WidgetMac.mm:
1666         * platform/network/cf/DNSCFNet.cpp:
1667         * platform/text/StringImpl.cpp:
1668         * platform/win/FileSystemWin.cpp:
1669         * platform/win/PlatformScreenWin.cpp:
1670         * platform/win/PopupMenuWin.cpp:
1671         * platform/win/WidgetWin.cpp:
1672         * plugins/PluginView.cpp:
1673         * plugins/win/PluginViewWin.cpp:
1674         * rendering/InlineTextBox.cpp:
1675         * rendering/RenderBox.cpp:
1676         * rendering/RenderFileUploadControl.cpp:
1677         * rendering/RenderInline.cpp:
1678         * rendering/RenderLayerCompositor.cpp:
1679         * rendering/RenderObject.cpp:
1680         * rendering/RootInlineBox.cpp:
1681         * storage/DatabaseTracker.cpp:
1682         * storage/DatabaseTracker.h:
1683         * storage/SQLTransactionClient.cpp:
1684         * svg/graphics/SVGImage.cpp:
1685         Added now-needed #includes.
1686
1687 2009-12-18  Shu Chang  <Chang.Shu@nokia.com>
1688
1689         Reviewed by Darin Adler.
1690
1691         Implemented isId as specified by DOM Level 3. See detailed description below.
1692         https://bugs.webkit.org/show_bug.cgi?id=5578
1693
1694         Added isId property and implementation:
1695         Tests: dom/xhtml/level3/core/attrisid01-07.xhtml
1696                fast/dom/Element/attrisid-extra01.html
1697         * dom/Attr.cpp:
1698         (WebCore::Attr::isId):
1699         * dom/Attr.h:
1700         * dom/Attr.idl:
1701
1702         Replaced instances of HTMLNames::idAttr with Element::idAttributeName()
1703         for the reason that id attribute name could be customized to a different
1704         string other than "id". A test case is associated to each code change.
1705         * dom/Document.cpp:
1706         (WebCore::Document::getElementById): Test: fast/dom/Element/id-in-getelement01.html
1707         * dom/Element.cpp: Tests: dom/xhtml/level3/core/attrisid01-07.xhtml
1708         (WebCore::Element::setAttribute):
1709         (WebCore::Element::setAttributeMap):
1710         (WebCore::Element::insertedIntoDocument):
1711         (WebCore::Element::removedFromDocument):
1712         (WebCore::Element::formatForDebugger):
1713         (WebCore::Element::rareIDAttributeName):
1714         * dom/Element.h: Added function idAttributeName().
1715         (WebCore::Element::idAttributeName):
1716         * dom/ElementRareData.h: Added member variable to store customized id name in ElementRareData.
1717         (WebCore::ElementRareData::ElementRareData):
1718         * dom/NamedAttrMap.cpp: Tests: dom/xhtml/level3/core/attrisid01-07.xhtml
1719         (WebCore::NamedNodeMap::setNamedItem):
1720         (WebCore::NamedNodeMap::removeNamedItem):
1721         (WebCore::NamedNodeMap::setAttributes):
1722         * dom/Node.cpp: Removed ASSERT as it may not hold any more.
1723         (WebCore::Node::querySelector):
1724         * dom/SelectorNodeList.cpp: Removed ASSERT as it may not hold any more.
1725         (WebCore::createSelectorNodeList):
1726         * dom/StyledElement.cpp: Tests: dom/xhtml/level3/core/attrisid01-07.xhtml
1727         (WebCore::StyledElement::parseMappedAttribute):
1728         * editing/DeleteButtonController.cpp: Test: fast/dom/Element/id-in-deletebutton.html
1729         (WebCore::DeleteButtonController::createDeletionUI):
1730         * editing/EditorCommand.cpp: Test: fast/dom/Element/id-in-insert-hr.html
1731         (WebCore::executeInsertHorizontalRule):
1732         * html/HTMLAppletElement.cpp: Test: fast/dom/Element/id-in-applet.html
1733         (WebCore::HTMLAppletElement::parseMappedAttribute):
1734         (WebCore::HTMLAppletElement::createRenderer):
1735         * html/HTMLCollection.cpp:
1736         (WebCore::HTMLCollection::checkForNameMatch): Test: fast/forms/select-namedItem.html
1737         (WebCore::HTMLCollection::updateNameCache): Test: fast/dom/collection-namedItem-via-item.html
1738         * html/HTMLDataGridColElement.cpp:
1739         (WebCore::HTMLDataGridColElement::ensureColumn): Test: fast/dom/HTMLDataGridElement/DataGridColumns-dom.html
1740         (WebCore::HTMLDataGridColElement::parseMappedAttribute): Test: fast/dom/HTMLDataGridElement/DataGridColumns-dom-attributes.html
1741         * html/HTMLElement.cpp:
1742         (WebCore::HTMLElement::parseMappedAttribute):
1743         * html/HTMLFormCollection.cpp: Test: fast/dom/Element/id-in-formcollection.html
1744         (WebCore::HTMLFormCollection::getNamedFormItem):
1745         (WebCore::HTMLFormCollection::nextNamedItem):
1746         (WebCore::HTMLFormCollection::updateNameCache):
1747         * html/HTMLFrameElementBase.cpp: Test: fast/dom/Element/id-in-frame.html
1748         (WebCore::HTMLFrameElementBase::parseMappedAttribute):
1749         (WebCore::HTMLFrameElementBase::setNameAndOpenURL):
1750         * html/HTMLImageElement.cpp: Test: fast/dom/Element/id-in-deletebutton.html
1751         (WebCore::HTMLImageElement::parseMappedAttribute):
1752         * html/HTMLMapElement.cpp: Test: fast/dom/Element/id-in-map.html
1753         (WebCore::HTMLMapElement::parseMappedAttribute):
1754         * html/HTMLNameCollection.cpp: Test: fast/dom/Element/id-in-frameset.html
1755         (WebCore::HTMLNameCollection::itemAfter):
1756         * html/HTMLObjectElement.cpp: Test: fast/dom/HTMLDocument/object-by-name-or-id.html
1757         (WebCore::HTMLObjectElement::parseMappedAttribute):
1758         * html/HTMLParamElement.cpp: Test: fast/dom/Element/id-in-param.html
1759         (WebCore::HTMLParamElement::parseMappedAttribute):
1760         * loader/CachedFont.cpp: Test: svg/custom/acid3-test-77.html
1761         (WebCore::CachedFont::getSVGFontById):
1762         * rendering/RenderLayerBacking.cpp:
1763         (WebCore::RenderLayerBacking::createGraphicsLayer): Debug-only code
1764         * rendering/SVGRenderTreeAsText.cpp: Test: svg/text/text-gradient-positioning.svg
1765         (WebCore::writeRenderResources):
1766         * svg/SVGElement.cpp: Test: svg/custom/acid3-test-77.html
1767         (WebCore::SVGElement::insertedIntoDocument):
1768         * svg/SVGStyledElement.cpp: Test: svg/custom/js-update-image-and-display.svg
1769         (WebCore::SVGStyledElement::isKnownAttribute):
1770         * wml/WMLElement.cpp:
1771         (WebCore::WMLElement::parseMappedAttribute):
1772
1773 2009-12-18  Simon Hausmann  <simon.hausmann@nokia.com>
1774
1775         Reviewed by Tor Arne Vestbø.
1776
1777         [Qt] Clean up the qmake build system to distinguish between trunk builds and package builds
1778
1779         https://bugs.webkit.org/show_bug.cgi?id=32716
1780
1781         Introduce standalone_package as config that is set when QTDIR_build is set or when
1782         the directory for the generated files is present.
1783
1784         Renamed uses of QTDIR_build that apply to generic package builds to use standalone_package.
1785         Others remain as they are specific to building inside Qt.
1786
1787         * WebCore.pro:
1788
1789 2009-12-18  Simon Hausmann  <simon.hausmann@nokia.com>
1790
1791         Reviewed by Tor Arne Vestbø.
1792
1793         [Qt] Fix the build on Symbian.
1794
1795         Use QFont::lastRestortFamily() instead of QFont::lastRestortFont(),
1796         which is a missing symbol in Qt 4.6.0 on Symbian.
1797
1798         Functionally they should be equivalent, according to the source.
1799
1800         * platform/graphics/qt/FontCacheQt.cpp:
1801         (WebCore::FontCache::getLastResortFallbackFont):
1802
1803 2009-12-18  Philippe Normand  <pnormand@igalia.com>
1804
1805         Reviewed by Xan Lopez.
1806
1807         [GTK] segfault during controls initialization if not GTK theme is present.
1808         https://bugs.webkit.org/show_bug.cgi?id=32705
1809
1810         Create empty images for the controls if no GTK theme is set.
1811
1812         * platform/graphics/gtk/ImageGtk.cpp:
1813         (WebCore::getThemeIconFileName):
1814         (WebCore::loadImageFromFile):
1815
1816 2009-12-18  Alejandro G. Castro  <alex@igalia.com>
1817
1818         Reviewed by Darin Adler.
1819
1820         REGRESSION (r38898): Using the up arrow in a textarea gets "stuck"
1821         at the beginning.
1822         https://bugs.webkit.org/show_bug.cgi?id=31920
1823
1824         Moving up from a position after the end of the previous lines
1825         should use UPSTREAM affinity to render the caret in the previous
1826         line.
1827
1828         Test: editing/selection/wrapped-line-caret-3.html
1829
1830         * rendering/RenderText.cpp:
1831         (WebCore::RenderText::positionForPoint):
1832
1833 2009-12-17  Eric Seidel  <eric@webkit.org>
1834
1835         Reviewed by Darin Adler.
1836
1837         HTMLInputElement::stepMismatch() uses ambiguous overload of pow()
1838         https://bugs.webkit.org/show_bug.cgi?id=32675
1839
1840         Use the double constant 2.0 instead of static_cast<double>(2).
1841
1842         * html/HTMLInputElement.cpp:
1843         (WebCore::HTMLInputElement::stepMismatch):
1844
1845 2009-12-17  Justin Schuh  <jschuh@chromium.org>
1846
1847         Reviewed by Dan Bernstein.
1848
1849         Bug 32357: SVG test case crashes WebKit (invalid font URL)
1850         https://bugs.webkit.org/show_bug.cgi?id=32357
1851
1852         Added check for NULL return value from DocLoader::requestFont()
1853
1854         * svg/SVGFontFaceUriElement.cpp:
1855         (WebCore::SVGFontFaceUriElement::loadFont):
1856
1857 2009-12-17  Shinichiro Hamaji  <hamaji@chromium.org>
1858
1859         Reviewed by Dan Bernstein.
1860
1861         marquee with display:inline causes crash
1862         https://bugs.webkit.org/show_bug.cgi?id=32374
1863
1864         Test: fast/inline/inline-marquee-crash.html
1865
1866         * html/HTMLMarqueeElement.cpp:
1867         (WebCore::HTMLMarqueeElement::start):
1868         (WebCore::HTMLMarqueeElement::stop):
1869         (WebCore::HTMLMarqueeElement::suspend):
1870         (WebCore::HTMLMarqueeElement::resume):
1871         (WebCore::HTMLMarqueeElement::renderMarquee):
1872         * html/HTMLMarqueeElement.h:
1873         * rendering/RenderLayer.cpp:
1874         (WebCore::RenderLayer::styleChanged):
1875
1876 2009-12-17  Zoltan Horvath  <zoltan@webkit.org>
1877
1878         Reviewed by Darin Adler.
1879
1880         Allow custom memory allocation control for inspector's classes
1881         https://bugs.webkit.org/show_bug.cgi?id=32660                               
1882
1883         Inherits the following classes from Noncopyable because these are
1884         instantiated by 'new' and no need to be copyable:                                           
1885
1886         class name                  - instantiated at:  WebCore/'location'
1887
1888         class JavaScriptDebugServer - inspector/JavaScriptDebugServer.cpp:72
1889         class ConsoleMessage        - inspector/InspectorController.cpp:329 
1890         class InspectorController   - page/Page.cpp:119
1891
1892         * inspector/ConsoleMessage.h:
1893         * inspector/InspectorController.h:
1894         * inspector/JavaScriptDebugServer.h:
1895
1896 2009-12-17  Steve Block  <steveblock@google.com>
1897
1898         Reviewed by Eric Seidel.
1899
1900         Fixes HTMLInputElement::stepMismatch() to avoid ambiguous overload of pow().
1901         https://bugs.webkit.org/show_bug.cgi?id=32675
1902
1903         Build fix only, no new tests.
1904
1905         * html/HTMLInputElement.cpp: Modified.
1906         (WebCore::HTMLInputElement::stepMismatch): Cast first argument of pow to double to force 'double pow(double, int)'
1907
1908 2009-12-17  Marc-Antoine Ruel  <maruel@chromium.org>
1909
1910         Reviewed by Eric Seidel.
1911
1912         Fix link failure on LTCG builds on Windows for chromium port.
1913
1914         Reenable SVGAllInOne.cpp. This required some fixups.
1915
1916         Namely, there was conflicts in constants between HTMLNames and
1917         SVGNames, and conflicts between static functions names.
1918
1919         No new tests as functionality has not changed.
1920
1921         * WebCore.gyp/WebCore.gyp:
1922         * svg/SVGAllInOne.cpp:
1923         * svg/SVGFontFaceElement.cpp:
1924         (WebCore::SVGFontFaceElement::rebuildFontFace):
1925         * svg/SVGGlyphElement.cpp:
1926         (WebCore::SVGGlyphElement::invalidateGlyphCache):
1927         (WebCore::SVGGlyphElement::buildGlyphIdentifier):
1928         * svg/SVGHKernElement.cpp:
1929         (WebCore::SVGHKernElement::insertedIntoDocument):
1930         (WebCore::SVGHKernElement::removedFromDocument):
1931         * svg/SVGStyleElement.cpp:
1932         (WebCore::SVGStyleElement::type):
1933         (WebCore::SVGStyleElement::setType):
1934         (WebCore::SVGStyleElement::media):
1935         (WebCore::SVGStyleElement::setMedia):
1936         (WebCore::SVGStyleElement::title):
1937         (WebCore::SVGStyleElement::setTitle):
1938         (WebCore::SVGStyleElement::parseMappedAttribute):
1939         * svg/SVGStyledElement.cpp:
1940         (WebCore::mapAttributeToCSSProperty):
1941         (WebCore::SVGStyledElement::cssPropertyIdForSVGAttributeName):
1942         * svg/SVGStyledElement.h:
1943
1944 2009-12-17  Adam Roben  <aroben@apple.com>
1945
1946         Chromium build fix VI
1947
1948         * svg/animation/SMILTimeContainer.h: Added now-needed #include.
1949
1950 2009-12-17  Adam Roben  <aroben@apple.com>
1951
1952         Chromium build fix V
1953
1954         * platform/KURLGoogle.cpp: Added now-needed #include.
1955
1956 2009-12-17  Adam Roben  <aroben@apple.com>
1957
1958         Chromium build fix IV
1959
1960         * loader/CrossOriginPreflightResultCache.h: Added now-needed
1961         #includes.
1962
1963 2009-12-17  Adam Roben  <aroben@apple.com>
1964
1965         Chromium build fix III
1966
1967         * platform/graphics/Font.h: Added now-needed #include.
1968
1969 2009-12-17  Adam Roben  <aroben@apple.com>
1970
1971         Chromium build fix II
1972
1973         * dom/EventTarget.h: Added now-needed #include.
1974
1975 2009-12-17  Zoltan Horvath  <zoltan@webkit.org>
1976
1977         Reviewed by Eric Seidel.
1978
1979         Allow custom memory allocation control for js bindings
1980         https://bugs.webkit.org/show_bug.cgi?id=32655
1981
1982         Inherits the following classes from Noncopyable because these are instantiated 
1983         by 'new' and no need to be copyable:
1984
1985         class name                  - instantiated at:  WebCore/'location'
1986
1987         class ScriptCachedFrameData - history/CachedFrame.cpp:117
1988         class WebCoreJSClientData   - bindings/js/JSDOMWindowBase.cpp:162
1989         class ScheduledAction       - bindings/js/ScheduledAction.cpp:58
1990
1991         * bindings/js/JSDOMBinding.h:
1992         * bindings/js/ScheduledAction.h:
1993         * bindings/js/ScriptCachedFrameData.h:
1994
1995 2009-12-17  Adam Roben  <aroben@apple.com>
1996
1997         Chromium build fix
1998
1999         * dom/QualifiedName.h: Added now-needed #include of HashTraits.h
2000         (which itself #includes HashFunctions.h).
2001
2002 2009-12-17  Pavel Feldman  <pfeldman@dhcp-172-28-174-220.spb.corp.google.com>
2003
2004         Reviewed by Timothy Hatcher.
2005
2006         Web Inspector: Incorrect Doctype.
2007
2008         REGRESSION(4.0.4-TOT):Web Inspector: Incorrect Doctype
2009         https://bugs.webkit.org/show_bug.cgi?id=32671
2010
2011         * inspector/InspectorDOMAgent.cpp:
2012         (WebCore::InspectorDOMAgent::buildObjectForNode):
2013         * inspector/front-end/DOMAgent.js:
2014         (WebInspector.DOMNode):
2015
2016 2009-12-17  Benjamin Otte  <otte@gnome.org>
2017
2018         Reviewed by Adam Roben.
2019
2020         Don't include all JSC headers everywhere
2021         https://bugs.webkit.org/show_bug.cgi?id=32663
2022
2023         Remove HashMap HashSet and OwnPtr includes from PlatformString.h.
2024         Reduces code size of Gtk build by another 5%.
2025
2026         * platform/text/PlatformString.h:
2027
2028 2009-12-17  Adam Roben  <aroben@apple.com>
2029
2030         Mac/Qt build fixes
2031
2032         * platform/graphics/mac/Canvas3DLayer.mm:
2033         * platform/graphics/mac/GraphicsContext3DMac.cpp:
2034         * platform/qt/Localizations.cpp:
2035         Added missing #includes.
2036
2037 2009-12-17  Benjamin Otte  <otte@gnome.org>
2038
2039         Reviewed by Adam Roben.
2040
2041         Don't include all JSC headers everywhere
2042         https://bugs.webkit.org/show_bug.cgi?id=32663
2043
2044         PlatformString.h included almost all of JSC via runtime/Identifier.h.
2045         This patch gets rid of this include by forward-declaring the required
2046         classes instead.
2047         This reduces the build size of the object files on a Gtk debug build
2048         by 10%. The resulting libwebkit.so gets 5% smaller.
2049
2050         No new tests as it's just a build improvement.
2051
2052         * platform/gtk/LocalizedStringsGtk.cpp:
2053         include math.h here (it used to be pulled by JSC)
2054         * platform/text/PlatformString.h:
2055         * platform/text/String.cpp:
2056
2057 2009-12-17  Evan Martin  <evan@chromium.org>
2058
2059         Reviewed by Xan Lopez.
2060
2061         Always use all WebCore include paths in GtkWebKit.
2062
2063         With this patch, I can disable all optional features and still build.
2064
2065         * GNUmakefile.am:
2066
2067 2009-12-17  Yaar Schnitman  <yaar@chromium.org>
2068
2069         Reviewed by Darin Fisher.
2070
2071         Added WebPageSerializer to WebKit API.
2072
2073         https://bugs.webkit.org/show_bug.cgi?id=31737
2074
2075         * platform/text/StringBuilder.cpp: Added methods to make StringBuilder even more useful for large scale string concatenation.
2076         (WebCore::StringBuilder::clear):
2077         (WebCore::StringBuilder::length):
2078         * platform/text/StringBuilder.h:
2079
2080 2009-12-10  Philippe Normand  <pnormand@igalia.com>
2081
2082         Reviewed by Xan Lopez.
2083
2084         [GTK] Add controls for playing html5 video.
2085         https://bugs.webkit.org/show_bug.cgi?id=26304
2086
2087         Media controls UI, first step. This patch was written by Zan
2088         Dobersek. In addition I fixed the compilation errors and
2089         re-enabled some of the media tests involving the controls UI.
2090
2091         * GNUmakefile.am:
2092         * css/mediaControlsGtk.css: Added.
2093         * platform/graphics/Image.h:
2094         * platform/graphics/gtk/ImageGtk.cpp:
2095         (WebCore::getThemeIconFileName):
2096         (WebCore::loadResourceSharedBuffer):
2097         (WebCore::loadImageFromFile):
2098         (WebCore::Image::loadPlatformResource):
2099         (WebCore::Image::loadPlatformThemeIcon):
2100         * platform/gtk/RenderThemeGtk.cpp:
2101         (WebCore::getMediaElementFromRenderObject):
2102         (WebCore::getIconNameForTextDirection):
2103         (WebCore::RenderThemeGtk::initMediaStyling):
2104         (WebCore::RenderThemeGtk::RenderThemeGtk):
2105         (WebCore::RenderThemeGtk::~RenderThemeGtk):
2106         (WebCore::supportsFocus):
2107         (WebCore::RenderThemeGtk::baselinePosition):
2108         (WebCore::paintMozWidget):
2109         (WebCore::setToggleSize):
2110         (WebCore::RenderThemeGtk::adjustSliderThumbSize):
2111         (WebCore::RenderThemeGtk::gtkContainer):
2112         (WebCore::RenderThemeGtk::platformColorsDidChange):
2113         (WebCore::RenderThemeGtk::extraMediaControlsStyleSheet):
2114         (WebCore::paintMediaButton):
2115         (WebCore::RenderThemeGtk::paintMediaFullscreenButton):
2116         (WebCore::RenderThemeGtk::paintMediaMuteButton):
2117         (WebCore::RenderThemeGtk::paintMediaPlayButton):
2118         (WebCore::RenderThemeGtk::paintMediaSeekBackButton):
2119         (WebCore::RenderThemeGtk::paintMediaSeekForwardButton):
2120         (WebCore::RenderThemeGtk::paintMediaSliderTrack):
2121         (WebCore::RenderThemeGtk::paintMediaSliderThumb):
2122         * platform/gtk/RenderThemeGtk.h:
2123
2124 2009-12-17  Yael Aharon  <yael.aharon@nokia.com>
2125
2126         Reviewed by Kenneth Rohde Christiansen.
2127
2128         [Qt] support navigator.onLine and ononline/onoffline events.
2129         https://bugs.webkit.org/show_bug.cgi?id=32555
2130
2131         Hooked up Bearer Management to NetworkStateNotifier. This solution is available 
2132         only if QtMobility's Bearer Management is installed.
2133
2134         * WebCore.pro:
2135         * platform/network/NetworkStateNotifier.h:
2136         * platform/network/qt/NetworkStateNotifierPrivate.h: Added.
2137         * platform/network/qt/NetworkStateNotifierQt.cpp: Added.
2138         (WebCore::NetworkStateNotifierPrivate::NetworkStateNotifierPrivate):
2139         (WebCore::NetworkStateNotifierPrivate::onlineStateChanged):
2140         (WebCore::NetworkStateNotifierPrivate::~NetworkStateNotifierPrivate):
2141         (WebCore::NetworkStateNotifier::updateState):
2142         (WebCore::NetworkStateNotifier::NetworkStateNotifier):
2143
2144 2009-12-17  Pavel Feldman  <pfeldman@chromium.org>
2145
2146         Reviewed by Timothy Hatcher.
2147
2148         Web Inspector: Switch to 11px as default for source-code in WebKit.
2149
2150         https://bugs.webkit.org/show_bug.cgi?id=32646
2151
2152         * inspector/front-end/inspector.css:
2153
2154 2009-12-17  Simon Hausmann  <simon.hausmann@nokia.com>
2155
2156         Reviewed by Tor Arne Vestbø.
2157
2158         [Qt] Symbian build fix: Don't include QtXml/qxmlstream.h but omit the prefix, to
2159         make sure we pick up the header file from QtCore. That is where the implementation
2160         is compiled.
2161
2162         * dom/XMLTokenizer.h:
2163
2164 2009-12-17  Martin Robinson  <martin.james.robinson@gmail.com>
2165
2166         Reviewed by Gustavo Noronha Silva.
2167
2168         [GTK] WebKit GTK needs a wrapper for ref counted glib/gobject structs
2169         https://bugs.webkit.org/show_bug.cgi?id=21599
2170
2171         Add GRefPtr support for GTK types to WebCore, as JSC does not link against
2172         GTK+. Also convert PopupMenu::m_poup from a raw pointer to a GRefPtr.
2173
2174         No new tests as functionality has not changed.
2175
2176         * GNUmakefile.am:
2177         * platform/PopupMenu.h:
2178         * platform/gtk/GRefPtrGtk.cpp: Added.
2179         (WTF::refGPtr):
2180         (WTF::derefGPtr):
2181         * platform/gtk/GRefPtrGtk.h: Added.
2182         * platform/gtk/PopupMenuGtk.cpp:
2183         (WebCore::PopupMenu::PopupMenu):
2184         (WebCore::PopupMenu::~PopupMenu):
2185         (WebCore::PopupMenu::show):
2186         (WebCore::PopupMenu::hide):
2187         (WebCore::PopupMenu::menuRemoveItem):
2188
2189 2009-12-17  Mikhail Naganov  <mnaganov@chromium.org>
2190
2191         Reviewed by Pavel Feldman.
2192
2193         Advice links to source code in CPU profiler to open in debugger,
2194         not in resources tab.
2195
2196         Also work around the case when resources are disabled, but scripts are present.
2197
2198         https://bugs.webkit.org/show_bug.cgi?id=32610
2199
2200         * inspector/front-end/Panel.js:
2201         (WebInspector.Panel.prototype.updateMainViewWidth):
2202         (WebInspector.Panel.prototype.canShowSourceLineForURL):
2203         (WebInspector.Panel.prototype.showSourceLineForURL):
2204         * inspector/front-end/ProfileDataGridTree.js:
2205         (WebInspector.ProfileDataGridNode.prototype.createCell):
2206         * inspector/front-end/ResourcesPanel.js:
2207         (WebInspector.ResourcesPanel.prototype.canShowSourceLineForURL):
2208         (WebInspector.ResourcesPanel.prototype.showSourceLineForURL):
2209         * inspector/front-end/ScriptsPanel.js:
2210         (WebInspector.ScriptsPanel.prototype.scriptForURL):
2211         (WebInspector.ScriptsPanel.prototype.canShowSourceLineForURL):
2212         (WebInspector.ScriptsPanel.prototype.showSourceLineForURL):
2213         (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
2214         * inspector/front-end/inspector.js:
2215         (WebInspector.documentClick.followLink):
2216         (WebInspector.documentClick):
2217         (WebInspector._choosePanelToShowSourceLineForURL):
2218         (WebInspector.canShowSourceLineForURL):
2219         (WebInspector.showSourceLineForURL):
2220
2221 2009-12-15  Philippe Normand  <pnormand@igalia.com>
2222
2223         Reviewed by Xan Lopez.
2224
2225         [GTK] display FPS stats for video element
2226         https://bugs.webkit.org/show_bug.cgi?id=32560
2227
2228         Display FPS statistics if WEBKIT_DEBUG environment variable
2229         contains the Media log category. This feature requires a very
2230         recent (>= 0.10.18) version of gst-plugins-bad.
2231
2232         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
2233         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
2234         (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate):
2235         (WebCore::MediaPlayerPrivate::createGSTPlayBin):
2236         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
2237
2238 2009-11-11  Philippe Normand  <pnormand@igalia.com>
2239
2240         Reviewed by Gustavo Noronha Silva.
2241
2242         [GStreamer] Should emit {networkState,readyState,volume,time,size,rate,duration}Changed signals
2243         https://bugs.webkit.org/show_bug.cgi?id=30377
2244
2245         Emit volumeChanged and durationChanged upon notification from
2246         GStreamer.
2247
2248         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
2249         (WebCore::mediaPlayerPrivateMessageCallback):
2250         (WebCore::mediaPlayerPrivateVolumeCallback):
2251         (WebCore::notify_volume_idle_cb):
2252         (WebCore::MediaPlayerPrivate::didEnd):
2253         (WebCore::MediaPlayerPrivate::durationChanged):
2254         (WebCore::MediaPlayerPrivate::createGSTPlayBin):
2255         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
2256
2257 2009-12-16  Philippe Normand  <pnormand@igalia.com>
2258
2259         Reviewed by Gustavo Noronha Silva.
2260
2261         [GTK] segfault during volume notification
2262         https://bugs.webkit.org/show_bug.cgi?id=32603
2263
2264         Emit volumeChanged and durationChanged upon notification from
2265         GStreamer. Also don't reset the volume property on playbin, it is
2266         not needed as it is 1.0 by default both on playbin and in the
2267         MediaPlayer.
2268
2269         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
2270         (WebCore::mediaPlayerPrivateMessageCallback):
2271         (WebCore::mediaPlayerPrivateVolumeChangedCallback):
2272         (WebCore::notifyVolumeIdleCallback):
2273         (WebCore::doGstInit):
2274         (WebCore::MediaPlayerPrivate::isAvailable):
2275         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
2276         (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate):
2277         (WebCore::MediaPlayerPrivate::volumeChanged):
2278         (WebCore::MediaPlayerPrivate::didEnd):
2279         (WebCore::MediaPlayerPrivate::durationChanged):
2280         (WebCore::mimeTypeCache):
2281         (WebCore::MediaPlayerPrivate::createGSTPlayBin):
2282         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
2283
2284 2009-12-17  Evan Martin  <evan@chromium.org>
2285
2286         Reviewed by Xan Lopez.
2287
2288         gtk: always use standard include paths, regardless of settings.
2289         WebKit style is to wrap the body of a header in #if ENABLE(FOO),
2290         so they're always safe to include whether the features are enabled or
2291         not.
2292
2293         This fixes building with --disable-database and other flags.
2294
2295         * GNUmakefile.am:
2296
2297 2009-12-17  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
2298
2299         Unreviewed. Build fixes for make distcheck.
2300
2301         * GNUmakefile.am:
2302
2303 2009-12-17  Philippe Normand  <pnormand@igalia.com>
2304
2305         Rubber-stamped by Gustavo Noronha Silva.
2306
2307         Trivial WebKit coding style fix.
2308
2309         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
2310         (WebCore::MediaPlayerPrivate::paint):
2311
2312 2009-12-15 MORITA Hajime <morrita@gmail.com>
2313
2314         Reviewed by Eric Seidel.
2315
2316         Bug 28306: double-clicking a word inside <b> beside newline select two words
2317         https://bugs.webkit.org/show_bug.cgi?id=28306
2318         
2319         SimplifiedBackwardsTextIterator missed trailing whitespaces just
2320         before folding line-break, which is used to detect word
2321         boundaries. This fix checks strings on RenderText and expand text
2322         range on SimplifiedBackwardsTextIterator to include trailing
2323         whitespaces if availble.
2324
2325         Test: editing/selection/doubleclick-beside-cr-span.html
2326
2327         * editing/TextIterator.cpp:
2328         (WebCore::collapsedSpaceLength):
2329         (WebCore::maxOffsetIncludingCollapsedSpaces):
2330         (WebCore::SimplifiedBackwardsTextIterator::advance):
2331
2332 2009-12-16  Fumitoshi Ukai  <ukai@chromium.org>
2333
2334         Reviewed by Alexey Proskuryakov.
2335
2336         Fix flakiness in WebSocket handshake console message.
2337         https://bugs.webkit.org/show_bug.cgi?id=32598
2338
2339         In chromium, LayoutTests/websocket/tests/handshake-error.html is
2340         flaky, because it outputs the following console message several times:
2341           CONSOLE MESSAGE: line 0: Unexpected response code:101
2342         Update m_mode in WebSocketHandshake correctly: Once it finds
2343         error in handshake message, set m_mode to Failed and don't try
2344         reading handshake message again.  If handshake message is not yet
2345         fully received, set m_mode to Incomplete, so next didReceiveData()
2346         will try to check handshake message again.
2347
2348         * websockets/WebSocketChannel.cpp:
2349         (WebCore::WebSocketChannel::didReceiveData):
2350         * websockets/WebSocketHandshake.cpp:
2351         (WebCore::WebSocketHandshake::readServerHandshake):
2352
2353 2009-12-16  Jon Honeycutt  <jhoneycutt@apple.com>
2354
2355         MSAA: Accessibility role of text nodes is wrong
2356
2357         https://bugs.webkit.org/show_bug.cgi?id=32631
2358         <rdar://problem/7369084>
2359
2360         Reviewed by Alice Liu.
2361
2362         Test: platform/win/accessibility/text-role.html
2363
2364         * accessibility/AccessibilityObject.h:
2365         (WebCore::):
2366         Add a new role to the enum.
2367         (WebCore::AccessibilityObject::roleValueForMSAA):
2368         Declare a function to return the accessibility role for MSAA; the base
2369         implementation returns the old role value.
2370
2371         * accessibility/AccessibilityRenderObject.cpp:
2372         (WebCore::AccessibilityRenderObject::AccessibilityRenderObject):
2373         Initialize m_roleForMSAA.
2374         (WebCore::AccessibilityRenderObject::roleValueForMSAA):
2375         If m_roleForMSAA has been set, return it. If the renderer is a
2376         RenderText, set the role to EditableTextRole to match IE and Firefox.
2377         Otherwise, set the role for MSAA to the old role value.
2378
2379         * accessibility/AccessibilityRenderObject.h:
2380         Add a member to hold the role for MSAA, and declare an override of
2381         roleValueForMSAA().
2382
2383 2009-12-16  Eric Seidel  <eric@webkit.org>
2384
2385         No review, rolling out r52206.
2386         http://trac.webkit.org/changeset/52206
2387         https://bugs.webkit.org/show_bug.cgi?id=31187
2388
2389         This broke pixel tests on Mac.  Presumably the code in
2390         ImageCG is wrong here.
2391
2392         * platform/graphics/BitmapImage.h:
2393         * platform/graphics/GeneratedImage.cpp:
2394         (WebCore::GeneratedImage::drawPattern):
2395         * platform/graphics/GeneratedImage.h:
2396         * platform/graphics/Image.cpp:
2397         (WebCore::Image::drawTiled):
2398         * platform/graphics/Image.h:
2399         * platform/graphics/cairo/ImageCairo.cpp:
2400         (WebCore::Image::drawPattern):
2401         * platform/graphics/cg/ImageCG.cpp:
2402         (WebCore::Image::drawPattern):
2403         * platform/graphics/haiku/ImageHaiku.cpp:
2404         (WebCore::Image::drawPattern):
2405         * platform/graphics/qt/ImageQt.cpp:
2406         (WebCore::Image::drawPattern):
2407         * platform/graphics/skia/ImageSkia.cpp:
2408         (WebCore::Image::drawPattern):
2409         * platform/graphics/wince/GraphicsContextWince.cpp:
2410         (WebCore::GraphicsContext::drawBitmapPattern):
2411         * platform/graphics/wince/ImageBufferWince.cpp:
2412         (WebCore::):
2413         (WebCore::BufferedImage::drawPattern):
2414         * platform/graphics/wx/ImageWx.cpp:
2415         (WebCore::BitmapImage::drawPattern):
2416         (WebCore::Image::drawPattern):
2417
2418 2009-12-16  Dimitri Glazkov  <dglazkov@chromium.org>
2419
2420         Reviewed by David Levin.
2421
2422         https://bugs.webkit.org/show_bug.cgi?id=32637
2423         [V8] Generate most named property getters.
2424
2425         Covered by existing tests.
2426
2427         * bindings/scripts/CodeGeneratorV8.pm: Added generation of SetNamedPropertyHandler call.
2428         * bindings/v8/V8DOMWrapper.cpp:
2429         (WebCore::V8DOMWrapper::getTemplate): Removed now-generated SetNamedPropertyHandler callsites.
2430
2431 2009-12-16  Luiz Agostini  <luiz.agostini@openbossa.org>
2432
2433         Reviewed by Kenneth Rohde Christiansen.
2434
2435         [Qt] Implement combobox delegate for Qt
2436         https://bugs.webkit.org/show_bug.cgi?id=32550
2437
2438         Abstract popup menu factory.
2439
2440         A static method from QtAbstractPopupMenu is used to create its instances. If a factory
2441         has been suplied to class QtAbstractPopupMenu the factory will be used to create the
2442         objects. If not an instance of QtFallbackPopupMenu will be created.
2443
2444         The objective is to make it easy to replace the combobox popup at WebCore layer providing
2445         support to the combobox popup delegation API. Future patches will make it possible to
2446         replace the combobox popup at WebKit layer.
2447
2448         No behavior changes.
2449
2450         * platform/qt/PopupMenuQt.cpp:
2451         (WebCore::PopupMenu::PopupMenu):
2452         * platform/qt/QtAbstractWebPopup.cpp:
2453         (WebCore::QtAbstractWebPopup::setFactory):
2454         (WebCore::QtAbstractWebPopup::create):
2455         * platform/qt/QtAbstractWebPopup.h:
2456         * platform/qt/QtFallbackWebPopup.cpp:
2457
2458 2009-12-16  Mark Rowe  <mrowe@apple.com>
2459
2460         Build fix.  Disable debug variants of WebKit frameworks.
2461
2462         * WebCore.xcodeproj/project.pbxproj:
2463
2464 2009-12-16  Enrica Casucci  <enrica@apple.com>
2465
2466         Reviewed by Eric Seidel.
2467
2468         Right clicking in a table cell creates a selection that extends into the next cell.
2469         <rdar://problem/5565465>
2470         https://bugs.webkit.org/show_bug.cgi?id=32622
2471         
2472         Avoid extending the selection to the next cell if we start from an empty cell.
2473
2474         Test: editing/selection/empty-cell-right-click.html
2475
2476         * editing/TypingCommand.cpp:
2477         (WebCore::TypingCommand::deleteKeyPressed): Replaced the code that check for empty table cell
2478         with a call to the new function.
2479         * editing/VisibleSelection.cpp:
2480         (WebCore::VisibleSelection::setStartAndEndFromBaseAndExtentRespectingGranularity): Extends the
2481         selection only if we are not starting from an empty table cell.
2482         * editing/htmlediting.cpp:
2483         (WebCore::isEmptyTableCell): Added a function since this check is performed now in two places.
2484         * editing/htmlediting.h: Added isEmptyTableCell declaration.
2485
2486 2009-12-16  Dirk Schulze  <krit@webkit.org>
2487
2488         Reviewed by Nikolas Zimmermann.
2489
2490         feMerge crahses if feMergeNodes attribute in is empty
2491         https://bugs.webkit.org/show_bug.cgi?id=32489
2492
2493         SVGFEMergeElement only stored pointers to all effects of it's nodes
2494         in a list. But it should store the RefPtr otherwise the effects get
2495         dereferenced and WebKit crashes.
2496         I also made a short clean-up in SVGFilterBuilder. No change in
2497         functionality.
2498
2499         Test: I updated svg/custom/empty-merge.svg to cover this problem.
2500
2501         * svg/SVGFEMergeElement.cpp:
2502         (WebCore::SVGFEMergeElement::build):
2503         * svg/graphics/filters/SVGFEMerge.cpp:
2504         (WebCore::FEMerge::FEMerge):
2505         (WebCore::FEMerge::create):
2506         (WebCore::FEMerge::mergeInputs):
2507         (WebCore::FEMerge::setMergeInputs):
2508         * svg/graphics/filters/SVGFEMerge.h:
2509         * svg/graphics/filters/SVGFilterBuilder.cpp:
2510         (WebCore::SVGFilterBuilder::add):
2511
2512 2009-12-16  Brian Weinstein  <bweinstein@apple.com>
2513
2514         Reviewed by Timothy Hatcher.
2515
2516         Part of <http://webkit.org/b/32568>.
2517         Web Inspector: Context Menus should be used in more places.
2518         
2519         Add a context menu entry in the console to clear the console. This
2520         is only shown when there is no user selection of text, because if
2521         there is selection of the text, then we want to give the user the Copy +
2522         Spell Check context menu that they are used to.
2523
2524         * English.lproj/localizedStrings.js: Added "Clear Console".
2525         * inspector/front-end/ConsoleView.js:
2526         (WebInspector.ConsoleView.prototype._handleContextMenuEvent):
2527
2528 2009-12-16  Brian Weinstein  <bweinstein@apple.com>
2529
2530         Reviewed by Pavel Feldman.
2531
2532         Fixes <https://bugs.webkit.org/show_bug.cgi?id=32621>.
2533         Web Inspector: [REGRESSION (52095-52100)] Resources filter disappears when switching 
2534         from / to resources panel.
2535
2536         Changed style in sidebar-resizer-vertical, because if the min-height was 100%, we start
2537         to cover the scope bar.
2538
2539         * inspector/front-end/inspector.css:
2540
2541 2009-12-16  Dimitri Glazkov  <dglazkov@chromium.org>
2542
2543         Reviewed by Adam Barth.
2544
2545         [V8] Switch all indexers to be generated.
2546         https://bugs.webkit.org/show_bug.cgi?id=32569
2547
2548         Covered by existing tests.
2549
2550         * WebCore.gypi: Remove V8FileListCustom.cpp and V8ClientRecListCustom.cpp,
2551             as they are now generated.
2552         * bindings/v8/V8DOMWrapper.cpp:
2553         (WebCore::V8DOMWrapper::getTemplate): Remove customization of ClientRectList,
2554             FileList, and DataGridColumnList templates.
2555         * bindings/v8/custom/V8ClientRectListCustom.cpp: Removed.
2556         * bindings/v8/custom/V8CustomBinding.h: Remove custom indexer getter decls.
2557         * bindings/v8/custom/V8DataGridColumnListCustom.cpp: Remove indexer getter definition.
2558         * bindings/v8/custom/V8FileListCustom.cpp: Removed.
2559
2560 2009-12-16  anton muhin  <antonm@chromium.org>
2561
2562         Reviewed by Darin Adler.
2563
2564         [dom] make dom/Node.cpp compile if DUMP_NODE_STATISTICS is on
2565         https://bugs.webkit.org/show_bug.cgi?id=32617
2566
2567         * dom/Node.cpp:
2568         (WebCore::Node::dumpStatistics):
2569
2570 2009-12-16  Dimitri Glazkov  <dglazkov@chromium.org>
2571
2572         Reviewed by Darin Fisher.
2573
2574         [V8] There is no such thing as HTMLSelectElementCollection.
2575         https://bugs.webkit.org/show_bug.cgi?id=32616
2576
2577         Refactoring, covered by existing tests.
2578
2579         * WebCore.gypi: Removed V8HTMLSelectElementCollectionCustom.cpp
2580         * bindings/v8/V8Collection.h: Removed one-off template.
2581         * bindings/v8/V8DOMWrapper.cpp:
2582         (WebCore::V8DOMWrapper::getTemplate): Renamed all references to HTMLSelectElementCollection
2583             to HTMLSelectElement.
2584         * bindings/v8/custom/V8CustomBinding.h: Renamed custom indexer decls.
2585         * bindings/v8/custom/V8HTMLSelectElementCollectionCustom.cpp: Removed.
2586         * bindings/v8/custom/V8HTMLSelectElementCustom.cpp: Moved code as-is from
2587             V8HTMLSelectElementCollectionCustom.cpp
2588
2589 2009-12-16  Dan Winship  <danw@gnome.org>
2590
2591         Reviewed by Gustavo Noronha Silva.
2592
2593         [Gtk] Content-Encoding support
2594
2595         https://bugs.webkit.org/show_bug.cgi?id=25855
2596
2597         * platform/network/soup/ResourceHandleSoup.cpp:
2598         (WebCore::startHttp): Don't force "Accept-Encoding: identity" any
2599         more
2600
2601 2009-12-16  Benjamin Otte  <otte@gnome.org>
2602
2603         Reviewed by Darin Adler.
2604
2605         Get rid of the phase argument to Image::drawPattern.
2606         https://bugs.webkit.org/show_bug.cgi?id=31187
2607
2608         The argument can be expressed equally well as part of the
2609         patternTransform. All backends but the Qt one did exactly that
2610         manually anyway.
2611
2612         * platform/graphics/BitmapImage.h:
2613         * platform/graphics/GeneratedImage.cpp:
2614         (WebCore::GeneratedImage::drawPattern):
2615         * platform/graphics/GeneratedImage.h:
2616         * platform/graphics/Image.cpp:
2617         (WebCore::Image::drawTiled):
2618         * platform/graphics/Image.h:
2619         * platform/graphics/cairo/ImageCairo.cpp:
2620         (WebCore::Image::drawPattern):
2621         * platform/graphics/cg/ImageCG.cpp:
2622         (WebCore::Image::drawPattern):
2623         * platform/graphics/haiku/ImageHaiku.cpp:
2624         (WebCore::Image::drawPattern):
2625         * platform/graphics/qt/ImageQt.cpp:
2626         (WebCore::Image::drawPattern):
2627         * platform/graphics/skia/ImageSkia.cpp:
2628         (WebCore::Image::drawPattern):
2629         * platform/graphics/wince/GraphicsContextWince.cpp:
2630         (WebCore::GraphicsContext::drawBitmapPattern):
2631         * platform/graphics/wince/ImageBufferWince.cpp:
2632         (WebCore::):
2633         (WebCore::BufferedImage::drawPattern):
2634         * platform/graphics/wx/ImageWx.cpp:
2635         (WebCore::BitmapImage::drawPattern):
2636         (WebCore::Image::drawPattern):
2637
2638 2009-12-16  Kenneth Russell  <kbr@google.com>
2639
2640         Reviewed by Darin Fisher.
2641
2642         Performance problems with index validation code for drawElements
2643         https://bugs.webkit.org/show_bug.cgi?id=32466
2644
2645         Added a cache of the maximum index for each element type to
2646         WebGLBuffer, querying it before iterating through the indices in
2647         the client-side copy of the buffer's data. Hoisted checks of the
2648         size of the element array itself into validateElementArraySize to
2649         avoid duplicating code.
2650
2651         The performance improvement has been measured with manual tests.
2652         Existing layout tests cover the index validation functionality
2653         and continue to pass as before.
2654
2655         * html/canvas/WebGLBuffer.cpp:
2656         (WebCore::WebGLBuffer::WebGLBuffer):
2657         (WebCore::WebGLBuffer::associateBufferData):
2658         (WebCore::WebGLBuffer::associateBufferSubData):
2659         (WebCore::WebGLBuffer::getCachedMaxIndex):
2660         (WebCore::WebGLBuffer::setCachedMaxIndex):
2661         (WebCore::WebGLBuffer::clearCachedMaxIndices):
2662         * html/canvas/WebGLBuffer.h:
2663         * html/canvas/WebGLRenderingContext.cpp:
2664         (WebCore::WebGLRenderingContext::validateElementArraySize):
2665         (WebCore::WebGLRenderingContext::validateIndexArrayConservative):
2666         (WebCore::WebGLRenderingContext::validateIndexArrayPrecise):
2667         (WebCore::WebGLRenderingContext::validateRenderingState):
2668         (WebCore::WebGLRenderingContext::drawElements):
2669         * html/canvas/WebGLRenderingContext.h:
2670
2671 2009-12-16  Zelidrag Hornung  <zelidrag@chromium.org>
2672
2673         Reviewed by Darin Adler.
2674
2675         https://bugs.webkit.org/show_bug.cgi?id=32261
2676         Added ability to separate the autocomplete suggestion previewing from
2677         the actual accepting of the suggested value in HTMLInputElement.
2678         This element (it's single line text incarnation) can now
2679         be put in suggestion mode where renderer might display the suggested
2680         value without making it automatically exposed to JavaScript.
2681
2682         No new tests. This new methods are not exposed yet. It's use will be
2683         platform specific. PopupMenu and Chromium specific changes will be
2684         separated based on Darin Adler's comments.
2685
2686         * dom/InputElement.h:
2687         (WebCore::InputElementData::suggestedValue):
2688         (WebCore::InputElementData::setSuggestedValue):
2689         * html/HTMLInputElement.cpp:
2690         (WebCore::HTMLInputElement::suggestedValue):
2691         (WebCore::HTMLInputElement::setSuggestedValue):
2692         (WebCore::HTMLInputElement::setValue):
2693         (WebCore::HTMLInputElement::setValueFromRenderer):
2694         * html/HTMLInputElement.h:
2695         * rendering/RenderTextControlSingleLine.cpp:
2696         (WebCore::RenderTextControlSingleLine::updateFromElement):
2697         * wml/WMLInputElement.cpp:
2698         (WebCore::WMLInputElement::suggestedValue):
2699         * wml/WMLInputElement.h:
2700
2701 2009-12-16  Pavel Feldman  <pfeldman@chromium.org>
2702
2703         Reviewed by Timothy Hatcher.
2704
2705         Web Inspector: Make Elements tree, properties section and resources
2706         view monospace.
2707
2708         https://bugs.webkit.org/show_bug.cgi?id=32609
2709
2710         * inspector/front-end/ElementsPanel.js:
2711         * inspector/front-end/PropertiesSection.js:
2712         (WebInspector.PropertiesSection):
2713         * inspector/front-end/ResourceView.js:
2714         (WebInspector.ResourceView):
2715         * inspector/front-end/inspector.css:
2716
2717 2009-12-16  Dirk Schulze  <krit@webkit.org>
2718
2719         Reviewed by Darin Adler.
2720
2721         sourceGraphic wrong if positive x,y is >0 and objectBB is selected on Filter
2722         https://bugs.webkit.org/show_bug.cgi?id=32575
2723
2724         On SVG Filters, the rest of the source graphic gets clipped to the filter
2725         rest. This helps us to minimize the size of intermediate ImageBuffers. If
2726         the position moves to the right or to the bottom, we have to adjust the
2727         GraphicContext of this intermediate ImageBuffer.
2728         This patch fixes the adjustment of the context, according to the clipping.
2729
2730         Test: svg/filters/filter-source-position.svg
2731
2732         * svg/graphics/SVGResourceFilter.cpp:
2733         (WebCore::SVGResourceFilter::prepareFilter):
2734
2735 2009-12-16  Enrica Casucci  <enrica@apple.com>
2736
2737         Reviewed by Adele Peterson.
2738
2739         CrashTracer: [USER] 1 crash in Safari at com.apple.WebCore: WebCore::endsOfNodeAreVisuallyDistinctPositions + 115
2740         <rdar://problem/7467108>
2741         https://bugs.webkit.org/show_bug.cgi?id=32590
2742
2743         If the element is a button there is no need to look at the children to calculate the caret position.
2744         
2745         Test: editing/selection/button-right-click.html
2746
2747         * dom/Position.cpp:
2748         (WebCore::Position::getInlineBoxAndOffset): Avoid calling recursively this method,
2749         when starting from a button element.
2750
2751 2009-12-16  Luiz Agostini  <luiz.agostini@openbossa.org>
2752
2753         Reviewed by Kenneth Rohde Christiansen.
2754
2755         [Qt] Implement combobox delegate for Qt
2756         https://bugs.webkit.org/show_bug.cgi?id=32550
2757
2758         Refactoring of class QWebPopup.
2759
2760         Class QWebPopup has been split in QtAbstractWebPopup and QtFallbackWebPopup.
2761         Both new classes are now in corresponding files and files QWebPopup.* have been removed.
2762
2763         Custom combo popup classes will inherit from QtAbstractWebPopup. It is not the public API as it is
2764         in WebCore and will not be visible by users of QtWebKit. It will be used in implementation of
2765         public QtWebKit combobox popup delegation API.
2766
2767         Class QtFallbackWebPopup inherits from QtAbstractWebPopup and implements the currently used combobox popup.
2768         It needs to be improved to provide standard features that are missing like style or indentation.
2769
2770         No behavior changes.
2771
2772         * WebCore.pro:
2773         * platform/PopupMenu.h:
2774         * platform/qt/PopupMenuQt.cpp:
2775         (WebCore::PopupMenu::PopupMenu):
2776         * platform/qt/QWebPopup.cpp: Removed.
2777         * platform/qt/QWebPopup.h: Removed.
2778         * platform/qt/QtAbstractWebPopup.cpp: Added.
2779         (WebCore::QtAbstractWebPopup::QtAbstractWebPopup):
2780         (WebCore::QtAbstractWebPopup::~QtAbstractWebPopup):
2781         (WebCore::QtAbstractWebPopup::client):
2782         * platform/qt/QtAbstractWebPopup.h: Added.
2783         * platform/qt/QtFallbackWebPopup.cpp: Added.
2784         (WebCore::QtFallbackWebPopup::QtFallbackWebPopup):
2785         (WebCore::QtFallbackWebPopup::show):
2786         (WebCore::QtFallbackWebPopup::populate):
2787         (WebCore::QtFallbackWebPopup::showPopup):
2788         (WebCore::QtFallbackWebPopup::hidePopup):
2789         (WebCore::QtFallbackWebPopup::activeChanged):
2790         * platform/qt/QtFallbackWebPopup.h: Added.
2791         (WebCore::QtFallbackWebPopup::hide):
2792
2793 2009-12-15  Pavel Feldman  <pfeldman@chromium.org>
2794
2795         Reviewed by Timothy Hatcher.
2796
2797         Web Inspector: beautify HTTP info section.
2798
2799         https://bugs.webkit.org/show_bug.cgi?id=32583
2800
2801         * English.lproj/localizedStrings.js:
2802         * inspector/front-end/ResourceView.js:
2803         (WebInspector.ResourceView):
2804         (WebInspector.ResourceView.prototype._refreshURL):
2805         (WebInspector.ResourceView.prototype._refreshHTTPInformation):
2806         * inspector/front-end/inspector.css:
2807
2808 2009-12-13  Roland Steiner  <rolandsteiner@chromium.org>
2809
2810         Reviewed by Adam Barth.
2811
2812         Fix crash when encountering illegal HTML within a continuation inside <ruby>.
2813         (https://bugs.webkit.org/show_bug.cgi?id=32316)
2814
2815         Avoid having the anonymous blocks utilized in the ruby renderers being
2816         re-used as continuation blocks.
2817         Avoid having ruby runs collected as "leftover blocks".
2818
2819         Test: fast/ruby/ruby-illegal.html
2820
2821         * rendering/RenderRuby.h:
2822         (WebCore::RenderRubyAsInline::removeLeftoverAnonymousBlock): mustn't be called
2823         (WebCore::RenderRubyAsInline::isRuby): made private
2824         (WebCore::RenderRubyAsInline::renderName): made private
2825         (WebCore::RenderRubyAsInline::createsAnonymousWrapper): return true
2826         (WebCore::RenderRubyAsBlock::removeLeftoverAnonymousBlock): mustn't be called
2827         (WebCore::RenderRubyAsBlock::isRuby): made private
2828         (WebCore::RenderRubyAsBlock::renderName): made private
2829         (WebCore::RenderRubyAsBlock::createsAnonymousWrapper): return true
2830         * rendering/RenderRubyRun.h:
2831         (WebCore::RenderRubyRun::removeLeftoverAnonymousBlock): avoid
2832         (WebCore::RenderRubyRun::isRubyRun): made private
2833         (WebCore::RenderRubyRun::renderName): made private
2834         (WebCore::RenderRubyRun::createsAnonymousWrapper): return true
2835
2836 2009-12-15  Nate Chapin  <japhet@chromium.org>
2837
2838         Reviewed by Darin Adler.
2839
2840         Rename skipCanLoadCheck to skipSecurityCheck in a bunch of places in WebCore/loader.
2841
2842         https://bugs.webkit.org/show_bug.cgi?id=32529
2843
2844         * loader/Cache.cpp:
2845         (WebCore::Cache::requestUserCSSStyleSheet):
2846         * loader/CachedImage.cpp:
2847         (WebCore::CachedImage::load):
2848         * loader/CachedResource.cpp:
2849         (WebCore::CachedResource::load):
2850         * loader/CachedResource.h:
2851         (WebCore::CachedResource::load):
2852         * loader/DocumentThreadableLoader.cpp:
2853         (WebCore::DocumentThreadableLoader::DocumentThreadableLoader):
2854         (WebCore::DocumentThreadableLoader::makeSimpleCrossOriginAccessRequest):
2855         (WebCore::DocumentThreadableLoader::makeCrossOriginAccessRequestWithPreflight):
2856         (WebCore::DocumentThreadableLoader::preflightSuccess):
2857         (WebCore::DocumentThreadableLoader::loadRequest):
2858         * loader/DocumentThreadableLoader.h:
2859         * loader/FrameLoaderTypes.h:
2860         (WebCore::):
2861         * loader/Request.cpp:
2862         (WebCore::Request::Request):
2863         * loader/Request.h:
2864         (WebCore::Request::shouldDoSecurityCheck):
2865         * loader/SubresourceLoader.cpp:
2866         (WebCore::SubresourceLoader::create):
2867         * loader/SubresourceLoader.h:
2868         * loader/loader.cpp:
2869         (WebCore::Loader::load):
2870         (WebCore::Loader::Host::servePendingRequests):
2871         * loader/loader.h:
2872
2873 2009-12-15  Dan Bernstein  <mitz@apple.com>
2874
2875         Reviewed by Darin Adler.
2876
2877         <rdar://problem/7470452> Safari/Chromium crashes on complicated @font-face rule
2878         https://bugs.webkit.org/show_bug.cgi?id=32257
2879
2880         Test: fast/css/font-face-unused-source-loaded.html
2881
2882         The loading of a font resource caused a CSSFontFace that had the resource in one of its
2883         sources, but wasn’t using it (due to using an earlier source) to invalidate its
2884         CSSSegmentedFontFaces. This caused FontData for the active source (the one that did not just
2885         finish loading) to be deleted, but that went unnoticed by Font::operator==(), since the
2886         corresponding FontFallbackLists were not in the loading state. The fix is for CSSFontFace to
2887         ignore loads from unused sources.
2888
2889         * css/CSSFontFace.cpp:
2890         (WebCore::CSSFontFace::fontLoaded): Bail out if the loaded source is not the active source.
2891         (WebCore::CSSFontFace::getFontData): Set m_activeSource to the source that supplied the
2892             FontData.
2893         * css/CSSFontFace.h:
2894         (WebCore::CSSFontFace::CSSFontFace): Initialize m_activeSource.
2895
2896 2009-12-15  Yael Aharon  <yael.aharon@nokia.com>
2897
2898         Reviewed by Kenneth Rohde Christiansen.
2899
2900         [Qt] Cannot load flash files from a local file.
2901         https://bugs.webkit.org/show_bug.cgi?id=32572
2902
2903         When loading the main resource and its mime type is application/octet-stream,
2904         use the file extenstion to check if it is a supported plugin.
2905
2906         No new tests were added since any existing swf file can be used as a manual test.
2907
2908         * loader/MainResourceLoader.cpp:
2909         (WebCore::MainResourceLoader::didReceiveResponse):
2910         * loader/MainResourceLoader.h:
2911         * plugins/PluginDatabase.h:
2912
2913 2009-12-15  Brian Weinstein  <bweinstein@apple.com>
2914
2915         Reviewed by Timothy Hatcher.
2916
2917         Fixes <https://bugs.webkit.org/show_bug.cgi?id=18498>.
2918         REGRESSION: Tips are not shown for resources anymore.
2919         
2920         As discussed in the bug, Tips are not coming back, and the feature
2921         will be moved to the audits panel. This patch is to remove the Tips
2922         code and the resources that it needed.
2923
2924         * WebCore.gypi: Removed tips files.
2925         * inspector/front-end/Images/tipBalloon.png: Removed.
2926         * inspector/front-end/Images/tipBalloonBottom.png: Removed.
2927         * inspector/front-end/Images/tipIcon.png: Removed.
2928         * inspector/front-end/Images/tipIconPressed.png: Removed.
2929         * inspector/front-end/Resource.js: Removed tips code.
2930         (WebInspector.Resource.prototype.set finished): 
2931         * inspector/front-end/WebKit.qrc: Removed tips files.
2932         * inspector/front-end/inspector.css: Removes tips style rules.
2933         
2934 2009-12-15  Pavel Feldman  <pfeldman@chromium.org>
2935
2936         Reviewed by Timothy Hatcher.
2937
2938         Web Inspector: Display request headers for main resource
2939         having redirects.
2940
2941         https://bugs.webkit.org/show_bug.cgi?id=32577
2942
2943         * inspector/InspectorController.cpp:
2944         (WebCore::InspectorController::identifierForInitialRequest):
2945         (WebCore::InspectorController::willSendRequest):
2946         * inspector/InspectorResource.cpp:
2947         (WebCore::InspectorResource::InspectorResource):
2948         (WebCore::InspectorResource::appendRedirect):
2949         (WebCore::InspectorResource::createCached):
2950         (WebCore::InspectorResource::updateRequest):
2951         * inspector/InspectorResource.h:
2952         (WebCore::InspectorResource::create):
2953
2954 2009-12-15  Brian Weinstein  <bweinstein@apple.com>
2955
2956         Reviewed by Timothy Hatcher.
2957
2958         Fixes <https://bugs.webkit.org/show_bug.cgi?id=32578>.
2959         Web Inspector: No Need for ?="" now that we have context menus.
2960         
2961         Remove the toggleNewAttributeButton function and callers to it, as
2962         we don't need this behavior anymore, now that we have context menus.
2963
2964         * inspector/front-end/ElementsTreeOutline.js:
2965         (WebInspector.ElementsTreeElement.prototype.set hovered):
2966         (WebInspector.ElementsTreeElement.prototype.toggleNewAttributeButton):
2967         (WebInspector.ElementsTreeElement.prototype._startEditing):
2968
2969 2009-12-15  Dimitri Glazkov  <dglazkov@chromium.org>
2970
2971         Reviewed by Eric Seidel.
2972
2973         [V8] Generate trivial named property getters.
2974         https://bugs.webkit.org/show_bug.cgi?id=32562
2975
2976         Covered by existing tests.
2977
2978         * bindings/scripts/CodeGeneratorV8.pm: Added GenerateImplementationNamedPropertyGetter.
2979         * bindings/v8/V8Collection.h:
2980         (WebCore::getNamedPropertyOfCollection): Fixed a booboo by using AtomicString like we're supposed to.
2981         * bindings/v8/V8DOMWrapper.cpp:
2982         (WebCore::V8DOMWrapper::getTemplate): Removed code that's now generated.
2983
2984 2009-12-15  Brian Weinstein  <bweinstein@apple.com>
2985
2986         Reviewed by Timothy Hatcher.
2987
2988         Part of <http://webkit.org/b/32568>.
2989         New Web Inspector: The Context Menu should be used in more places.
2990         
2991         Add support for context menu entries for editing and deleting elements
2992         in the datagrid. This gives support to deleting cookies, and editing and
2993         deleting session storage and local storage.
2994
2995         * English.lproj/localizedStrings.js: Added "Edit" and "Add New" entries (delete was already there)
2996         * inspector/front-end/DataGrid.js:
2997         (WebInspector.DataGrid): Added context menu listener.
2998         (WebInspector.DataGrid.prototype._contextMenuInDataTable):
2999
3000 2009-12-15  Kenneth Russell  <kbr@google.com>
3001
3002         Reviewed by Darin Fisher.
3003
3004         Don't allow default framebuffer to be mutated
3005         https://bugs.webkit.org/show_bug.cgi?id=32391
3006
3007         * html/canvas/WebGLRenderingContext.cpp:
3008         (WebCore::WebGLRenderingContext::framebufferRenderbuffer):
3009         (WebCore::WebGLRenderingContext::framebufferTexture2D):
3010         * platform/graphics/mac/GraphicsContext3DMac.cpp:
3011         (WebCore::GraphicsContext3D::bindFramebuffer):
3012
3013 2009-12-15  Zoltan Horvath  <zoltan@webkit.org>
3014
3015         Reviewed by Darin Adler.
3016
3017         Allow custom memory allocation control for FontPlatformDataCacheKey class
3018         https://bugs.webkit.org/show_bug.cgi?id=32552
3019
3020         Inherits the following struct from FastAllocBase because it is instantiated by 'new':
3021
3022         struct name                     - instantiated at: WebCore/'location'
3023         struct FontPlatformDataCacheKey - platform/graphics/FontCache.cpp:118
3024
3025         * platform/graphics/FontCache.cpp:
3026
3027 2009-12-15  Jian Li  <jianli@chromium.org>
3028
3029         Reviewed by Dmitry Titov.
3030
3031         Bug 31090 - [Chromium] Add DownloadURL format to Chromium clipboard.
3032         https://bugs.webkit.org/show_bug.cgi?id=31090
3033
3034         The proposal to whatwg can be found here:
3035         http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2009-August/022118.html
3036
3037         * platform/chromium/ChromiumDataObject.cpp:
3038         (WebCore::ChromiumDataObject::clear):
3039         (WebCore::ChromiumDataObject::hasData):
3040         (WebCore::ChromiumDataObject::ChromiumDataObject):
3041         * platform/chromium/ChromiumDataObject.h:
3042         * platform/chromium/ClipboardChromium.cpp:
3043         (WebCore::):
3044         (WebCore::clipboardTypeFromMIMEType):
3045         (WebCore::ClipboardChromium::setData):
3046
3047 2009-12-15  Chris Fleizach  <cfleizach@apple.com>
3048
3049         Reviewed by Darin Adler.
3050
3051         WAI-ARIA: implement treegrid
3052         https://bugs.webkit.org/show_bug.cgi?id=31299
3053
3054         Test: platform/mac/accessibility/aria-treegrid.html
3055
3056         * accessibility/AXObjectCache.cpp:
3057         (WebCore::AXObjectCache::getOrCreate):
3058         * accessibility/AccessibilityARIAGrid.h:
3059         (WebCore::AccessibilityARIAGrid::supportsSelectedRows):
3060         * accessibility/AccessibilityARIAGridRow.cpp:
3061         (WebCore::AccessibilityARIAGridRow::isARIATreeGridRow):
3062         (WebCore::AccessibilityARIAGridRow::disclosedRows):
3063         (WebCore::AccessibilityARIAGridRow::disclosedByRow):
3064         * accessibility/AccessibilityARIAGridRow.h:
3065         * accessibility/AccessibilityObject.cpp:
3066         (WebCore::createARIARoleMap):
3067         * accessibility/AccessibilityObject.h:
3068         (WebCore::):
3069         (WebCore::AccessibilityObject::isARIATreeGridRow):
3070         * accessibility/AccessibilityRenderObject.cpp:
3071         (WebCore::AccessibilityRenderObject::isMultiSelectable):
3072         (WebCore::AccessibilityRenderObject::setIsExpanded):
3073         (WebCore::AccessibilityRenderObject::setSelectedRows):
3074         (WebCore::AccessibilityRenderObject::ariaSelectedRows):
3075         (WebCore::AccessibilityRenderObject::ariaListboxSelectedChildren):
3076         (WebCore::AccessibilityRenderObject::selectedChildren):
3077         * accessibility/AccessibilityRenderObject.h:
3078         * accessibility/AccessibilityTable.h:
3079         (WebCore::AccessibilityTable::supportsSelectedRows):
3080         * accessibility/mac/AccessibilityObjectWrapper.mm:
3081         (-[AccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
3082         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
3083         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
3084         (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
3085
3086 2009-12-15  Zoltan Horvath  <zoltan@webkit.org>
3087
3088         Reviewed by Darin Adler.
3089
3090         Allow custom memory allocation control for EmptyEditorClient and EmptyInspectorClient
3091         https://bugs.webkit.org/show_bug.cgi?id=32557
3092
3093         Inherits the following classes from Noncopyable because these are instantiated
3094         by 'new' and no need to be copyable:
3095
3096         class name                 - instantiated at: WebCore/'location'
3097         class EmptyEditorClient    - svg/graphics/SVGImage.cpp:230
3098         class EmptyInspectorClient - svg/graphics/SVGImage.cpp:241
3099
3100         * loader/EmptyClients.h:
3101
3102 2009-12-15  Zoltan Horvath  <zoltan@webkit.org>
3103
3104         Reviewed by Darin Adler.
3105
3106         Allow custom memory allocation control for WebCore/inspector directory's classes
3107         https://bugs.webkit.org/show_bug.cgi?id=32556
3108
3109         Inherits the following class from Noncopyable because these are instantiated
3110         by 'new' and no need to be copyable:
3111
3112         class name                   - instantiated at: WebCore/'location'
3113         class InspectorFrontend      - inspector/InspectorController.cpp:538
3114         class InspectorTimelineAgent - inspector/InspectorController.cpp:1097
3115
3116         * inspector/InspectorFrontend.h:
3117         * inspector/InspectorTimelineAgent.h:
3118
3119 2009-12-15  Zoltan Horvath  <zoltan@webkit.org>
3120
3121         Reviewed by Darin Adler.
3122
3123         Allow custom memory allocation control for WebCore/platform/network directory's classes
3124         https://bugs.webkit.org/show_bug.cgi?id=32553
3125
3126         Inherits the following class from Noncopyable because it is instantiated
3127         by 'new' and no need to be copyable:
3128
3129         class/struct name                      - instantiated at: WebCore/'location'
3130
3131         struct CrossThreadResourceResponseData - platform/network/ResourceResponseBase.cpp:109
3132
3133         Inherits the following classes from FastAllocBase because these are
3134         instantiated by 'new':
3135
3136         class ResourceResponseBase - (its child class) platform/network/ResourceResponseBase.cpp:90
3137         class ResourceRequestBase  - (its child class) loader/DocumentThreadableLoader.cpp:88
3138
3139         * platform/network/ResourceRequestBase.h:
3140         * platform/network/ResourceResponseBase.h:
3141
3142 2009-12-15  Zoltan Horvath  <zoltan@webkit.org>
3143
3144         Reviewed by Darin Adler.
3145
3146         Allow custom memory allocation control for AnimationControllerPrivate and FillLayerPropertyWrapperGetter
3147         https://bugs.webkit.org/show_bug.cgi?id=32549
3148
3149         Inherits AnimationControllerPrivate and FillLayerPropertyWrapperGetter
3150         classes from Noncopyable because these are instantiated by 'new' and no need to be copyable:
3151
3152         class/struct name              - instantiated at: WebCore/'location'
3153
3154         AnimationControllerPrivate     - page/animation/AnimationController.cpp:439
3155         FillLayerPropertyWrapperGetter - (its child class) page/animation/AnimationBase.cpp:464
3156
3157         * page/animation/AnimationBase.cpp:
3158         * page/animation/AnimationControllerPrivate.h:
3159
3160 2009-12-15  Pavel Feldman  <pfeldman@chromium.org>
3161
3162         Reviewed by Timothy Hatcher.
3163
3164         Web Inspector: Do not lose HTTP redirect information, display it
3165         in the Resources Panel.
3166
3167         https://bugs.webkit.org/show_bug.cgi?id=32551
3168
3169         * inspector/InspectorController.cpp:
3170         (WebCore::InspectorController::populateScriptObjects):
3171         (WebCore::InspectorController::didCommitLoad):
3172         (WebCore::InspectorController::didLoadResourceFromMemoryCache):
3173         (WebCore::InspectorController::identifierForInitialRequest):
3174         (WebCore::InspectorController::willSendRequest):
3175         (WebCore::InspectorController::didReceiveResponse):
3176         (WebCore::InspectorController::didReceiveContentLength):
3177         (WebCore::InspectorController::didFinishLoading):
3178         (WebCore::InspectorController::didFailLoading):
3179         * inspector/InspectorFrontend.cpp:
3180         * inspector/InspectorFrontend.h:
3181         * inspector/InspectorResource.cpp:
3182         (WebCore::InspectorResource::InspectorResource):
3183         (WebCore::InspectorResource::appendRedirect):
3184         (WebCore::InspectorResource::updateScriptObject):
3185         (WebCore::InspectorResource::releaseScriptObject):
3186         (WebCore::InspectorResource::type):
3187         * inspector/InspectorResource.h:
3188         (WebCore::InspectorResource::):
3189         (WebCore::InspectorResource::Changes::setAll):
3190         * inspector/front-end/inspector.js:
3191         (WebInspector._addResource):
3192         (WebInspector.updateResource):
3193
3194 2009-12-15  Holger Hans Peter Freyther  <zecke@selfish.org>
3195
3196         Reviewed by Simon Hausmann.
3197
3198         [Qt] Followup for direct signals and slots connections in QNetworkReplyHandler
3199         https://bugs.webkit.org/show_bug.cgi?id=32113
3200
3201         For Qt versions prior to 4.6.1 we will need to use QueuedConnection
3202         for the signal and slot connection to avoid running into a bug in.
3203
3204         Add a comment that we want to remove one signal to forward
3205         queued items when moving our minimum requirements.
3206
3207         * platform/network/qt/QNetworkReplyHandler.cpp:
3208         (WebCore::QNetworkReplyHandler::start):
3209
3210 2009-12-14  Holger Hans Peter Freyther  <zecke@selfish.org>
3211
3212         Reviewed by Kenneth Rohde Christiansen.
3213
3214         [Qt] Add manual test for JavaScript prompt corner case
3215         https://bugs.webkit.org/show_bug.cgi?id=30914
3216
3217         The patch is based on the work done by Gupta Manish.
3218
3219         Verify behavior of the JavaScript prompt function. Currently
3220         Qt is not behaving like other WebKit ports and Firefox in
3221         regards to accepting the prompt but not entering a text.
3222
3223         * manual-tests/qt/java-script-prompt.html: Added.
3224
3225 2009-12-15  Luiz Agostini  <luiz.agostini@openbossa.org>
3226
3227         Reviewed by Kenneth Rohde Christiansen.
3228
3229         Moving list populate methods from PopupMenuQt to QWebPopup.
3230         
3231         In preparation to future implementation of a delegation API for the combobox.
3232
3233         * platform/PopupMenu.h:
3234         * platform/qt/PopupMenuQt.cpp:
3235         (WebCore::PopupMenu::show):
3236         (WebCore::PopupMenu::hide):
3237         * platform/qt/QWebPopup.cpp:
3238         (WebCore::QWebPopup::show):
3239         (WebCore::QWebPopup::populate):
3240         * platform/qt/QWebPopup.h:
3241         (WebCore::QWebPopup::hide):
3242
3243 2009-12-15  Alexander Pavlov  <apavlov@chromium.org>
3244
3245         Reviewed by Pavel Feldman.
3246
3247         Extract WebInspector.Section from WebInspector.PropertiesSection.
3248         https://bugs.webkit.org/show_bug.cgi?id=32523
3249
3250         * WebCore.gypi:
3251         * WebCore.vcproj/WebCore.vcproj:
3252         * inspector/front-end/PropertiesSection.js:
3253         (WebInspector.PropertiesSection):
3254         * inspector/front-end/Section.js: Added.
3255         (WebInspector.Section):
3256         (WebInspector.Section.prototype.get title):
3257         (WebInspector.Section.prototype.set title):
3258         (WebInspector.Section.prototype.get subtitle):
3259         (WebInspector.Section.prototype.set subtitle):
3260         (WebInspector.Section.prototype.get expanded):
3261         (WebInspector.Section.prototype.set expanded):
3262         (WebInspector.Section.prototype.get populated):
3263         (WebInspector.Section.prototype.set populated):
3264         (WebInspector.Section.prototype.expand):
3265         (WebInspector.Section.prototype.collapse):
3266         (WebInspector.Section.prototype.toggleExpanded):
3267         * inspector/front-end/WebKit.qrc:
3268         * inspector/front-end/inspector.html:
3269
3270 2009-12-15  Eric Seidel  <eric@webkit.org>
3271
3272         No review, rolling out r52140.
3273         http://trac.webkit.org/changeset/52140
3274         https://bugs.webkit.org/show_bug.cgi?id=31299
3275
3276         The commit broke the Leopard bots and unfortunately
3277         Chris wasn't around to fix them, so I'm rolling the change
3278         out after 3 hours so that the bots can roll green again. :)
3279
3280         * accessibility/AXObjectCache.cpp:
3281         (WebCore::AXObjectCache::getOrCreate):
3282         * accessibility/AccessibilityARIAGrid.h:
3283         * accessibility/AccessibilityARIAGridRow.cpp:
3284         * accessibility/AccessibilityARIAGridRow.h:
3285         * accessibility/AccessibilityObject.cpp:
3286         (WebCore::createARIARoleMap):
3287         * accessibility/AccessibilityObject.h:
3288         (WebCore::):
3289         * accessibility/AccessibilityRenderObject.cpp:
3290         (WebCore::AccessibilityRenderObject::isMultiSelect):
3291         (WebCore::AccessibilityRenderObject::setIsExpanded):
3292         (WebCore::AccessibilityRenderObject::setSelectedRows):
3293         (WebCore::AccessibilityRenderObject::ariaTreeSelectedRows):
3294         (WebCore::AccessibilityRenderObject::ariaListboxSelectedChildren):
3295         (WebCore::AccessibilityRenderObject::selectedChildren):
3296         * accessibility/AccessibilityRenderObject.h:
3297         * accessibility/AccessibilityTable.h:
3298         * accessibility/mac/AccessibilityObjectWrapper.mm:
3299         (-[AccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
3300         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
3301         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
3302         (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
3303
3304 2009-12-14  Holger Hans Peter Freyther  <zecke@selfish.org>
3305
3306         Reviewed by Eric Seidel.
3307
3308         [Qt] Remove dead code from FontPlatformDataQt.cpp
3309         https://bugs.webkit.org/show_bug.cgi?id=32540
3310
3311         In r51758 the code that used familyNames was removed
3312         and we should remove the creation of the familyNames
3313         as well.
3314
3315         * platform/graphics/qt/FontPlatformDataQt.cpp:
3316         (WebCore::FontPlatformData::FontPlatformData):
3317
3318 2009-12-15  Dan Bernstein  <mitz@apple.com>
3319
3320         Reviewed by Adam Roben.
3321
3322         WebCore part of <rdar://problem/7173515> Use LOGFONT support in Core
3323         Graphics when available
3324
3325         When using a version of Core Graphics with LOGFONT support, this fixes
3326         <rdar://problem/5764844> First-time launch is painfully slow due to font
3327         plist creation
3328         and <rdar://problem/6576281> 12px synthetic-italics Tahoma text is less
3329         readable in Safari than in Firefox/IE due to poorly-spaced letters
3330
3331         * platform/graphics/win/FontCGWin.cpp:
3332         (WebCore::Font::drawGlyphs): No longer call drawGDIGlyphs for stroked
3333         text.
3334         * platform/graphics/win/FontCacheWin.cpp:
3335         (WebCore::createGDIFont): Added a synthesizeItalic parameter. When set
3336         to true, if italics are desired but the best match lacks italics,
3337         creates and returns a synthetic italics font.
3338         (WebCore::FontCache::createFontPlatformData): Ask to synthesize italics
3339         if needed.
3340         * platform/graphics/win/FontCustomPlatformData.cpp:
3341         (WebCore::FontCustomPlatformData::fontPlatformData): Updated an
3342         assertion, and changed to create the CGFont from the LOGFONT.
3343         (WebCore::createFontCustomPlatformData): Changed cgFont to be a
3344         RetainPtr. Do not create a CGFont from the font data if it can be
3345         created from the LOGFONT in fontPlatformData().
3346         * platform/graphics/win/FontDatabase.cpp:
3347         (WebCore::populateFontDatabase): Avoid font database work if fonts are
3348         not going to be looked up by name.
3349         * platform/graphics/win/FontPlatformDataCGWin.cpp:
3350         (WebCore::FontPlatformData::platformDataInit): Create the CGFont from
3351         a LOGFONT based on the HFONT.
3352
3353 2009-12-14  Chris Fleizach  <cfleizach@apple.com>
3354
3355         Reviewed by Darin Adler.
3356
3357         WAI-ARIA: implement treegrid
3358         https://bugs.webkit.org/show_bug.cgi?id=31299
3359
3360         Test: platform/mac/accessibility/aria-treegrid.html
3361
3362         * accessibility/AXObjectCache.cpp:
3363         (WebCore::AXObjectCache::getOrCreate):
3364         * accessibility/AccessibilityARIAGrid.h:
3365         (WebCore::AccessibilityARIAGrid::supportsSelectedRows):
3366         * accessibility/AccessibilityARIAGridRow.cpp:
3367         (WebCore::AccessibilityARIAGridRow::isARIATreeGridRow):
3368         (WebCore::AccessibilityARIAGridRow::disclosedRows):
3369         (WebCore::AccessibilityARIAGridRow::disclosedByRow):
3370         * accessibility/AccessibilityARIAGridRow.h:
3371         * accessibility/AccessibilityObject.cpp:
3372         (WebCore::createARIARoleMap):
3373         * accessibility/AccessibilityObject.h:
3374         (WebCore::AccessibilityObject::isARIATreeGridRow):
3375         * accessibility/AccessibilityRenderObject.cpp:
3376         (WebCore::AccessibilityRenderObject::isMultiSelectable):
3377         (WebCore::AccessibilityRenderObject::setIsExpanded):
3378         (WebCore::AccessibilityRenderObject::setSelectedRows):
3379         (WebCore::AccessibilityRenderObject::ariaSelectedRows):
3380         (WebCore::AccessibilityRenderObject::ariaListboxSelectedChildren):
3381         (WebCore::AccessibilityRenderObject::selectedChildren):
3382         * accessibility/AccessibilityRenderObject.h:
3383         * accessibility/AccessibilityTable.h:
3384         (WebCore::AccessibilityTable::supportsSelectedRows):
3385         * accessibility/mac/AccessibilityObjectWrapper.mm:
3386         (-[AccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
3387         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
3388         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
3389         (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
3390
3391 2009-12-14  Dan Bernstein  <mitz@apple.com>
3392
3393         Reviewed by Darin Adler.
3394
3395         <rdar://problem/7460655> REGRESSION (r47255): Content shifted down at software.opensuse.org
3396         https://bugs.webkit.org/show_bug.cgi?id=32382
3397
3398         Test: fast/block/float/in-margin.html
3399
3400         * rendering/RenderBlock.cpp:
3401         (WebCore::RenderBlock::getClearDelta): Floats that do not intrude into the line (because
3402         they are in the margin) do not need to be cleared.
3403
3404 2009-12-14  Enrica Casucci  <enrica@apple.com>
3405
3406         Reviewed by John Sullivan.
3407
3408         Pressing backspace inside a table cell erases all empty rows below it.
3409         <rdar://problem/5565461>
3410         https://bugs.webkit.org/show_bug.cgi?id=32526
3411
3412         No deletion is performed when the caret selection is on an empty table cell.
3413         
3414         Test: editing/deleting/delete-empty-table.html
3415
3416         * editing/TypingCommand.cpp:
3417         (WebCore::TypingCommand::deleteKeyPressed): Added check for empty table cells in
3418         case of caret selection.
3419
3420 2009-12-14  Andrei Popescu  <andreip@google.com>
3421
3422         Reviewed by Darin Adler.
3423
3424         [Android] Android needs ResourceHandle implementation
3425         https://bugs.webkit.org/show_bug.cgi?id=32515
3426
3427         Adds implementation of ResourceHandle on Android.
3428
3429         No new tests needed, this is platform-specific code, so existing
3430         tests are sufficient.
3431
3432         * platform/network/android/ResourceHandleAndroid.cpp: Added.
3433         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
3434         (WebCore::ResourceHandle::~ResourceHandle):
3435         (WebCore::ResourceHandle::start):
3436         (WebCore::ResourceHandle::cancel):
3437         (WebCore::ResourceHandle::bufferedData):
3438         (WebCore::ResourceHandle::supportsBufferedData):
3439         (WebCore::ResourceHandle::setDefersLoading):
3440         (WebCore::ResourceHandle::willLoadFromCache):
3441         (WebCore::ResourceHandle::loadsBlocked):
3442         (WebCore::SyncLoader::SyncLoader):
3443         (WebCore::SyncLoader::~SyncLoader):
3444         (WebCore::SyncLoader::didReceiveResponse):
3445         (WebCore::SyncLoader::didReceiveData):
3446         (WebCore::SyncLoader::didFail):
3447         (WebCore::ResourceHandle::loadResourceSynchronously):
3448         * platform/network/android/ResourceLoaderAndroid.h: Added.
3449         (WebCore::ResourceLoaderAndroid::~ResourceLoaderAndroid):
3450         (WebCore::ResourceLoaderAndroid::ResourceLoaderAndroid):
3451
3452 2009-12-14  Marco Martin  <notmart@gmail.com>
3453
3454         Reviewed by Kenneth Rohde Christiansen.
3455
3456         In the Scrollbar painting of the Qt theme integration,
3457         intersects any previous clip rects with the one needed to paint the scrollbar.
3458         This fixes the painting in QGraphicsview, when the parent of the widget that 
3459         paints the QWebPage has the QGraphicsItem::ItemClipsChildrenToShape set and
3460         a piece of the scrollbar should be cipped away
3461         https://bugs.webkit.org/show_bug.cgi?id=30366
3462
3463         No new tests.
3464
3465         * platform/qt/ScrollbarThemeQt.cpp:
3466         (WebCore::ScrollbarThemeQt::paint):
3467
3468 2009-12-14  Dimitri Glazkov  <dglazkov@chromium.org>
3469
3470         Reviewed by Eric Seidel.
3471
3472         [V8] Generate bindings for trivial indexers.
3473         https://bugs.webkit.org/show_bug.cgi?id=32455
3474
3475         Covered by existing tests.
3476
3477         * bindings/scripts/CodeGeneratorV8.pm:
3478             Added detecting indexers and generating code for them.
3479         * bindings/v8/V8Collection.h: Removed code that's now generated.
3480         * bindings/v8/V8DOMWrapper.cpp:
3481         (WebCore::V8DOMWrapper::getTemplate): Ditto.
3482
3483 2009-12-14  Alexey Proskuryakov  <ap@apple.com>
3484
3485         Reviewed by Dave Hyatt.
3486
3487         https://bugs.webkit.org/show_bug.cgi?id=31660
3488         REGRESSION (r49394): Image load event fires before the document fragment is attached.
3489
3490         Test: fast/images/image-load-event-in-fragment.html
3491
3492         We cannot fire load events immediately after parsing a fragment - an element inserted via
3493         innerHTML or equivalent should be reachable via getElementById() by the time its load event
3494         fires.
3495
3496         * dom/Document.cpp: (WebCore::Document::implicitClose): Call dispatchPendingBeforeLoadEvents()
3497         and dispatchPendingLoadEvents() individually. I'm not sure why these calls are here, just
3498         preserving existing behavior.
3499
3500         * dom/XMLTokenizer.cpp: (WebCore::XMLTokenizer::write):
3501         * html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::write):
3502         Load events for elements that have just been parsed cannot be dispatched yet, we should give
3503         the elements a chance to be inserted into a document first. There is no compatibility baggage
3504         for beforeload, so it seems OK to dispatch it right away.
3505
3506         * loader/ImageLoader.cpp:
3507         (WebCore::ImageLoader::dispatchPendingBeforeLoadEvents):
3508         (WebCore::ImageLoader::dispatchPendingLoadEvents):
3509         * loader/ImageLoader.h:
3510         Separated dispatchPendingEvents() into individual functions for each event kind.
3511
3512 2009-12-14  Jakob Petsovits  <jpetsovits@rim.com>
3513
3514         Reviewed by Simon Fraser.
3515
3516         Add FloatQuad::isRectilinear() to check whether it can be represented as FloatRect.
3517         https://bugs.webkit.org/show_bug.cgi?id=30442
3518
3519         This enables optimizations for distinguishing between
3520         arbitrary FloatQuads and rectilinear ones.
3521
3522         * platform/graphics/FloatQuad.cpp:
3523         (WebCore::FloatQuad::isRectilinear):
3524         * platform/graphics/FloatQuad.h:
3525
3526 2009-12-14  Simon Hausmann  <hausmann@webkit.org>
3527
3528         Reviewed by Holger Freyther.
3529
3530         [Qt] Add support for keyboard modifiers to TouchEvent
3531
3532         https://bugs.webkit.org/show_bug.cgi?id=32482
3533
3534         Similar to other ui events with keyboard state, get the alt, shift,
3535         meta and ctrl modifiers straight from the platform event.
3536
3537         * dom/TouchEvent.cpp:
3538         (WebCore::TouchEvent::TouchEvent):
3539         (WebCore::TouchEvent::initTouchEvent):
3540         * dom/TouchEvent.h:
3541         (WebCore::TouchEvent::create):
3542         * dom/TouchEvent.idl:
3543         * page/EventHandler.cpp:
3544         (WebCore::EventHandler::handleTouchEvent):
3545         * platform/PlatformTouchEvent.h:
3546         (WebCore::PlatformTouchEvent::PlatformTouchEvent):
3547         (WebCore::PlatformTouchEvent::shiftKey):
3548         (WebCore::PlatformTouchEvent::ctrlKey):
3549         (WebCore::PlatformTouchEvent::altKey):
3550         (WebCore::PlatformTouchEvent::metaKey):
3551         * platform/qt/PlatformTouchEventQt.cpp:
3552         (WebCore::PlatformTouchEvent::PlatformTouchEvent):
3553
3554 2009-12-14  Benjamin Poulain  <benjamin.poulain@nokia.com>
3555
3556         Reviewed by Kenneth Rohde Christiansen.
3557
3558         [Qt] crash when clicking "Sign out" in GMail
3559         https://bugs.webkit.org/show_bug.cgi?id=32300
3560
3561         When the ResourceLoader cancels the handle we have to make sure not to access
3562         the resource handle afterwards again.
3563         This complete r29515
3564
3565         * platform/network/qt/QNetworkReplyHandler.cpp:
3566         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
3567
3568 2009-12-14  Alexander Pavlov  <apavlov@chromium.org>
3569
3570         Reviewed by Pavel Feldman.
3571
3572         Implement InjectedScript.evaluateOnSelf() that evaluates functions in the InjectedScript context.
3573         https://bugs.webkit.org/show_bug.cgi?id=32517
3574
3575         * inspector/front-end/InjectedScript.js:
3576         (InjectedScript.evaluateOnSelf):
3577         * inspector/front-end/InjectedScriptAccess.js:
3578
3579 2009-12-14  Nayan Kumar K  <nayankk@gmail.com>
3580
3581         Reviewed by Darin Adler.
3582
3583         Fix for compilation errors in WML enabled builds.
3584
3585         https://bugs.webkit.org/show_bug.cgi?id=32481
3586
3587         * wml/WMLInputElement.cpp:
3588         (WebCore::WMLInputElement::setValue):
3589         (WebCore::WMLInputElement::setValueForUser):
3590         * wml/WMLInputElement.h:
3591
3592 2009-12-14  Andrei Popescu  <andreip@google.com>
3593
3594         Reviewed by Darin Adler.
3595
3596         [Android] Android needs ResourceError, ResourceResponse and
3597         ResourceRequest implementation.
3598         https://bugs.webkit.org/show_bug.cgi?id=32522
3599
3600         Add implementation of ResourceError, ResourceResponse and ResourceRequest.
3601         No new tests needed, the existing tests should be sufficient.
3602
3603         * platform/network/android/ResourceError.h: Added.
3604         (WebCore::ResourceError::ResourceError):
3605         * platform/network/android/ResourceRequest.h: Added.
3606         (WebCore::ResourceRequest::ResourceRequest):
3607         (WebCore::ResourceRequest::doUpdatePlatformRequest):
3608         (WebCore::ResourceRequest::doUpdateResourceRequest):
3609         (WebCore::ResourceRequest::setUserGesture):
3610         (WebCore::ResourceRequest::getUserGesture):
3611         * platform/network/android/ResourceResponse.h: Added.
3612         (WebCore::ResourceResponse::ResourceResponse):
3613         (WebCore::ResourceResponse::doUpdateResourceResponse):
3614
3615 2009-12-14  Sam Weinig  <sam@webkit.org>
3616
3617         Fix the build.
3618
3619         * page/Geolocation.cpp:
3620         * page/Geolocation.h:
3621
3622 2009-12-13  Sam Weinig  <sam@webkit.org>
3623
3624         Reviewed by Dan Bernstein.
3625
3626         Fix for https://bugs.webkit.org/show_bug.cgi?id=32499
3627         Add client based Geolocation provider
3628
3629         Add first cut of a client based Geolocation provider. This is guarded by
3630         ENABLE(CLIENT_BASED_GEOLOCATION) and is off by default for now. This adds a
3631         GeolocationControllerClient interface that no-one currently implements,
3632         but will in a subsequent patch.
3633
3634         * GNUmakefile.am:
3635         * WebCore.base.exp: