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