2009-12-07 Evan Martin <evan@chromium.org>
[WebKit-https.git] / WebCore / ChangeLog
1 2009-12-07  Evan Martin  <evan@chromium.org>
2
3         Reviewed by Eric Seidel.
4
5         Chromium: theme scrollbars to match GTK theme.
6         Add functions to RenderThemeChromiumLinux to change the scrollbar
7         color.
8
9         Since the change is to the Chromium WebKit API layer, testing will
10         be in Chromium's test shell.
11         http://bugs.webkit.org/show_bug.cgi?id=32048
12
13         Patch from Markus Gutschke <markus@chromium.org>.
14
15         * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
16         (WebCore::saturateAndBrighten):
17         (WebCore::outlineColor):
18         (WebCore::ScrollbarThemeChromiumLinux::paintTrackPiece):
19         (WebCore::ScrollbarThemeChromiumLinux::paintThumb):
20         * rendering/RenderThemeChromiumLinux.cpp:
21         (WebCore::RenderThemeChromiumLinux::setScrollbarColors):
22         * rendering/RenderThemeChromiumLinux.h:
23         (WebCore::RenderThemeChromiumLinux::thumbInactiveColor):
24         (WebCore::RenderThemeChromiumLinux::thumbActiveColor):
25         (WebCore::RenderThemeChromiumLinux::trackColor):
26
27 2009-12-08  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
28
29         Reviewed by Xan Lopez.
30
31         [GTK] Doesn't respect Content-Disposition for downloads, and provides no way for apps to do that
32         https://bugs.webkit.org/show_bug.cgi?id=32247
33
34         Allow creating a ResourceResponse from a SoupMessage.
35
36         Covered by API test.
37
38         * platform/network/soup/ResourceResponse.h:
39         (WebCore::ResourceResponse::ResourceResponse):
40         * platform/network/soup/ResourceResponseSoup.cpp:
41         (WebCore::ResourceResponse::updateFromSoupMessage):
42
43 2009-12-07  Nikolas Zimmermann  <nzimmermann@rim.com>
44
45         Not reviewed. Reverting problematic patch, causing errors.
46
47         Revert r51789 (Avoid zero division during SVGPaintServerPattern::setup()). Crashes on all Windows slaves.
48         Reopen bug https://bugs.webkit.org/show_bug.cgi?id=29912.
49
50         * svg/graphics/SVGPaintServerPattern.cpp:
51         (WebCore::SVGPaintServerPattern::setup):
52
53 2009-12-07  Kent Tamura  <tkent@chromium.org>
54
55         Reviewed by Darin Adler.
56
57         Add support for HTMLInputElement::stepUp() and stepDown() for
58         type=number and type=range.
59         https://bugs.webkit.org/show_bug.cgi?id=27451
60
61         Our implementation of stepUp() and stepDown() rounds the resultant
62         value to conform to the step value.
63         Change the number-string conversion method for RenderSlider to be
64         consistent with type=number.
65
66         Tests: fast/forms/input-step-number.html
67                fast/forms/input-step-range.html
68                fast/forms/input-step-unsupported.html
69
70         * html/HTMLInputElement.cpp:
71         (WebCore::HTMLInputElement::rangeUnderflow): Unify the code for NUMBER and RANGE.
72         (WebCore::HTMLInputElement::rangeOverflow): Unify the code for NUMBER and RANGE.
73         (WebCore::HTMLInputElement::minimum): Renamed from rangeMinimum(), and support for NUMBER.
74         (WebCore::HTMLInputElement::maximum): Renamed from rangeMaximum(), and support for NUMBER.
75         (WebCore::HTMLInputElement::stepBase):
76         (WebCore::HTMLInputElement::stepMismatch): Use stepBase().
77         (WebCore::HTMLInputElement::applyStepForNumberOrRange):
78         (WebCore::HTMLInputElement::stepUp):
79         (WebCore::HTMLInputElement::stepDown):
80         (WebCore::HTMLInputElement::formStringFromDouble):
81         * html/HTMLInputElement.h:
82         (WebCore::HTMLInputElement::stepUp):
83         (WebCore::HTMLInputElement::stepDown):
84         * html/HTMLInputElement.idl: Add stepUp() and stepDown().
85         * rendering/RenderSlider.cpp:
86         (WebCore::SliderRange::SliderRange): Sync with rangeMinimum()/rangeMaximum() renaming.
87         (WebCore::RenderSlider::updateFromElement): Use formStringFromDouble().
88         (WebCore::RenderSlider::setValueForPosition): Use formStringFromDouble().
89
90 2009-12-07  Albert J. Wong  <ajwong@chromium.org>
91
92         Not reviewed: Chromium build fix try 2 (dumb error).
93
94         * bindings/v8/ScriptValue.h:
95         (WebCore::ScriptValue::getString):
96
97 2009-12-07  Albert J. Wong  <ajwong@chromium.org>
98
99         Not reviewed: Chromium build fix.
100
101         Fix Chromium build break caused by an added dependency from
102         ScriptControllerBase to JSDOMWindowShell, and an API change in
103         ScriptValue.
104
105         * bindings/ScriptControllerBase.cpp:
106         (WebCore::ScriptController::executeIfJavaScriptURL):
107         * bindings/v8/ScriptValue.h:
108         (WebCore::ScriptValue::getString):
109
110 2009-12-07  Enrica Casucci  <enrica@apple.com>
111
112         Reviewed by Darin Adler.
113
114         REGRESSION(4.0.4-42a12): Indent does not work for twice modified with background text in gmail.
115         <rdar://problem/7442387>
116         https://bugs.webkit.org/show_bug.cgi?id=32233
117         
118         Fixes problem in re-creating the correct hierarchy under the new block.
119         Added extensive testing to cover all the cases.
120
121         Test: editing/execCommand/indent-with-style2.html
122
123         * editing/CompositeEditCommand.cpp:
124         (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):
125
126 2009-12-07  Dmitry Titov  <dimich@chromium.org>
127
128         Rubber-stamped by Darin Adler.
129
130         Remove ENABLE_SHARED_SCRIPT flags
131         https://bugs.webkit.org/show_bug.cgi?id=32245
132         This patch was obtained by "git revert" command and then un-reverting of ChangeLog files.
133
134         * Configurations/FeatureDefines.xcconfig:
135         * GNUmakefile.am:
136         * WebCore.pro:
137
138 2009-12-07  Nikolas Zimmermann  <nzimmermann@rim.com>
139
140         Not reviewed. Force JS binding regeneration, eventually fixing the broken tests on the bots.
141
142         * bindings/scripts/CodeGeneratorJS.pm:
143
144 2009-12-07  Nikolas Zimmermann  <nzimmermann@rim.com>
145
146         Not reviewed. Try to fix mac builds by touching svgtags.in - I only tried from-scratch builds.
147
148         * svg/svgtags.in:
149
150 2009-12-07  Gavin Barraclough  <barraclough@apple.com>
151
152         Reviewed by Oliver Hunt.
153
154         https://bugs.webkit.org/show_bug.cgi?id=32184
155         Handle out-of-memory conditions with JSC Ropes with a JS exception, rather than crashing.
156         Switch from using fastMalloc to tryFastMalloc, pass an ExecState to record the exception on.
157
158         * bindings/ScriptControllerBase.cpp:
159         (WebCore::ScriptController::executeIfJavaScriptURL):
160         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
161         (WebCore::toHTMLCanvasStyle):
162         (WebCore::JSCanvasRenderingContext2D::setFillColor):
163         (WebCore::JSCanvasRenderingContext2D::setStrokeColor):
164         (WebCore::JSCanvasRenderingContext2D::setShadow):
165         * bindings/js/ScriptCallStack.cpp:
166         (WebCore::ScriptCallStack::ScriptCallStack):
167         (WebCore::ScriptCallStack::initialize):
168         * bindings/js/ScriptValue.cpp:
169         (WebCore::ScriptValue::getString):
170         * bindings/js/ScriptValue.h:
171         * bindings/js/SerializedScriptValue.cpp:
172         (WebCore::SerializingTreeWalker::convertIfTerminal):
173         * bindings/objc/WebScriptObject.mm:
174         (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
175         * page/Console.cpp:
176         (WebCore::Console::addMessage):
177
178 2009-12-07  Nikolas Zimmermann  <nzimmermann@rim.com>
179
180         Reviewed by Holger Hans Peter Freyther.
181
182         Turn on (SVG) Filters support, by default.
183         https://bugs.webkit.org/show_bug.cgi?id=32224
184
185         Only enable filters on mac for now, skipped all affected tests on the other platforms.
186         Will enable them one after another, to minimize breakage.
187
188         * Configurations/FeatureDefines.xcconfig: Enable FILTERS build flag.
189
190 2009-12-07  Kent Tamura  <tkent@chromium.org>
191
192         Reviewed by Darin Adler.
193
194         Fix a bug that KURL rejects a host name which has an IPv4 address
195         inside an IPv6 form like [::127.0.0.1].
196         https://bugs.webkit.org/show_bug.cgi?id=29913
197
198         * platform/KURL.cpp:
199         (WebCore::characterClassTable): Add IPv6Char to '.'.
200
201 2009-12-07  Brady Eidson  <beidson@apple.com>
202
203         Reviewed by Sam Weinig.
204
205         <rdar://problem/7443417> - Closing a window opened with "New windows open with: Same Page" results in crash in ::~HistoryItem
206
207         The HistoryItem copy constructor has one very specific use case - to support the feature of a WebView copying another WebView's
208         BackForwardList.  That constructor wasn't initializing its m_document pointer, leading to this crash in the destructor.
209
210         * history/HistoryItem.cpp:
211         (WebCore::HistoryItem::~HistoryItem): Change the setDocument(0) to an ASSERT that the document is already 0. A HistoryItem cannot
212           outlive its Document and Documents will always clear the back-pointer in their ::detach() method.
213         (WebCore::HistoryItem::HistoryItem): Missed the m_document initializer in the copy constructor. Also remove an invalid assertion
214           about the original items m_cachedPage object (which is irrelevant to the copy).
215
216 2009-12-07  Dmitry Titov  <dimich@chromium.org>
217
218         Reviewed by Darin Adler.
219
220         Remove partial SharedScript implementation.
221         https://bugs.webkit.org/show_bug.cgi?id=32237
222         The patch was obtained by running "git revert" command and then un-reverting WebCore/ChangeLog.
223
224         * DerivedSources.make:
225         * SharedScript/SharedScriptContext.cpp: Removed.
226         * SharedScript/SharedScriptContext.h: Removed.
227         * SharedScript/SharedScriptContext.idl: Removed.
228         * SharedScript/SharedScriptController.h: Removed.
229         * SharedScript/WebKitSharedScript.cpp: Removed.
230         * SharedScript/WebKitSharedScript.h: Removed.
231         * SharedScript/WebKitSharedScript.idl: Removed.
232         * SharedScript/WebKitSharedScriptRepository.cpp: Removed.
233         * SharedScript/WebKitSharedScriptRepository.h: Removed.
234         * WebCore.vcproj/WebCore.vcproj:
235         * WebCore.xcodeproj/project.pbxproj:
236         * dom/Document.cpp:
237         (WebCore::Document::detach):
238         * dom/EventTarget.cpp:
239         * dom/EventTarget.h:
240         * dom/ScriptExecutionContext.h:
241
242 2009-12-07  Alexey Proskuryakov  <ap@apple.com>
243
244         Reviewed by Nikolas Zimmermann.
245
246         https://bugs.webkit.org/show_bug.cgi?id=32226
247         Random crashes in WebSocket tests on Leopard Debug builbot
248
249         * platform/network/SocketStreamHandleBase.cpp: (WebCore::SocketStreamHandleBase::close):
250         Make sure the object still exists when setting m_state.
251
252 2009-12-07  Shiki Okasaka  <shiki@google.com>
253
254         Reviewed by Dirk Schulze.
255
256         Avoid zero division during SVGPaintServerPattern::setup()
257         https://bugs.webkit.org/show_bug.cgi?id=29912
258
259         Fix zero division bugs in SVGPaintServerPattern::setup() that occurred
260         if the tile of a pattern was bigger than the pattern and the pattern
261         size was < 0.5, and if the attribute overflow was set to visible.
262
263         Test: svg/custom/small-pattern.html
264
265         * svg/graphics/SVGPaintServerPattern.cpp:
266         (WebCore::SVGPaintServerPattern::setup):
267
268 2009-12-07  Kenneth Russell  <kbr@google.com>
269
270         Reviewed by Dimitri Glazkov.
271
272         [v8] WebCore::WebGLArrayBufferInternal::byteLengthAttrGetter NULL pointer
273         https://bugs.webkit.org/show_bug.cgi?id=31889
274
275         Fixed bug in handling of zero-argument constructor call.
276
277         Test: fast/canvas/webgl/bug-31889.html
278
279         * bindings/v8/custom/V8WebGLArrayBufferCustom.cpp:
280         (WebCore::CALLBACK_FUNC_DECL):
281
282 2009-12-07  Gyuyoung Kim  <gyuyoung@gmail.com>
283
284         Reviewed by Eric Seidel.
285
286         https://bugs.webkit.org/show_bug.cgi?id=32024
287         [GTK] WebKit does not compile without JAVASCRIPT_DEBUGGER
288
289         Fix build errors when javascript-debugger is disabled on GTK
290
291         * GNUmakefile.am:
292
293 2009-12-07  Dan Bernstein  <mitz@apple.com>
294
295         Reviewed by Darin Adler.
296
297         Fixed <rdar://problem/7437820> Weird selection artifacts
298
299         Tests: fast/repaint/block-selection-gap-stale-cache-2.html
300                fast/repaint/block-selection-gap-stale-cache.html
301
302         Instead of caching the block selection gaps’ bounds in the RenderView at setSelection()
303         time, cache them in each RenderLayer at paint time. This prevents the cache from getting
304         stale due to layout changes and overflow scrolling.
305
306         * rendering/RenderBlock.cpp:
307         (WebCore::RenderBlock::selectionGapRectsForRepaint): Account for overflow scroll.
308         (WebCore::RenderBlock::paintSelection): Update the enclosing layer’s selection gaps bounds.
309         * rendering/RenderLayer.cpp:
310         (WebCore::RenderLayer::addBlockSelectionGapsBounds): Added. Updates the selection gaps
311         bounds to include the given rect.
312         (WebCore::RenderLayer::clearBlockSelectionGapsBounds): Added. Recursively clears the cached
313         selection gaps bounds.
314         (WebCore::RenderLayer::repaintBlockSelectionGaps): Added. Recursively invalidates the
315         selection gaps bounds.
316         * rendering/RenderLayer.h:
317         * rendering/RenderView.cpp:
318         (WebCore::RenderView::setSelection): Clear the layer-level selection gaps bounds instead
319         of the view-level cache.
320         (WebCore::RenderView::clearSelection): Changed to call repaintBlockSelectionGaps().
321         * rendering/RenderView.h:
322
323 2009-12-07  Philippe Normand  <pnormand@igalia.com>
324
325         Reviewed by Gustavo Noronha.
326
327         Fixed whitelist comment and removed useless (tags, sdp) mimetypes
328         from it. Also, GStreamer doesn't handle directly SMIL.
329
330         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
331         (WebCore::mimeTypeCache):
332
333 2009-12-07  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
334
335         Reviewed by Xan Lopez.
336
337         https://bugs.webkit.org/show_bug.cgi?id=25415
338         [GTK][ATK] Please implement support for get_text_at_offset
339
340         Eliminate the segfaults which occur when accessing the text interface now
341         implemented by text controls.
342
343         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
344         (getPangoLayoutForAtk):
345
346 2009-12-07  Gustavo Noronha Silva  <gns@gnome.org>
347
348         Reviewed by Xan Lopez.
349
350         Turn the MediaPlayer supported types blacklist into a whitelist
351
352         [GTK] REGRESSION: webkit thinks it can render PDFs
353         https://bugs.webkit.org/show_bug.cgi?id=32183
354
355         Covered by API test.
356
357         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
358         (WebCore::mimeTypeCache):
359
360 2009-12-07  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
361
362         Reviewed by Xan Lopez.
363
364         https://bugs.webkit.org/show_bug.cgi?id=25524
365         [Gtk] Expose the title attribute to assistive technologies
366
367         Expose 'alt' attribute from images as accessible name.
368         Expose the 'title' core HTML attribute as accessible description.
369         This is a modified version of the original fix submitted by Mario Sanchez Prada,
370         adjusted so that it doesn't impact other platforms.
371
372         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
373         (webkit_accessible_get_name):
374         (webkit_accessible_get_description):
375
376 2009-12-07  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
377
378         Reviewed by Simon Hausmann.
379
380         [Qt] Fix support for generic font families
381
382         By not propagating the resolved font family in FontCacheQt and
383         only concidering the font description we ended up passing the
384         generic font families to Qt directly. Since most systems don't
385         have a mapping for these font families we ended up using the
386         default font in most cases.
387
388         * platform/graphics/qt/FontCacheQt.cpp:
389         * platform/graphics/qt/FontPlatformData.h:
390         * platform/graphics/qt/FontPlatformDataQt.cpp:
391
392 2009-12-06  Oliver Hunt  <oliver@apple.com>
393
394         Reviewed by Maciej Stachowiak.
395
396         Object.getOwnPropertyDescriptor() allows cross-frame access
397         https://bugs.webkit.org/show_bug.cgi?id=32119
398
399         Make all implementations of getOwnPropertyDescriptor that have
400         cross domain restrictions simply fail immediately on cross domain
401         access, rather than trying to mimic the behaviour of normal
402         property access.
403
404         Test: http/tests/security/cross-frame-access-getOwnPropertyDescriptor.html
405
406         * bindings/js/JSDOMWindowCustom.cpp:
407         (WebCore::JSDOMWindow::getOwnPropertyDescriptor):
408         * bindings/js/JSHistoryCustom.cpp:
409         (WebCore::JSHistory::getOwnPropertyDescriptorDelegate):
410         * bindings/js/JSLocationCustom.cpp:
411         (WebCore::JSLocation::getOwnPropertyDescriptorDelegate):
412         * bindings/scripts/CodeGeneratorJS.pm:
413
414 2009-12-07  Steve Block  <steveblock@google.com>
415
416         Reviewed by Adam Barth.
417
418         Moves JSC-specific functions from jni_utility and moves them to new jsc/jni_utility_private files.
419         https://bugs.webkit.org/show_bug.cgi?id=32157
420
421         Build fix only, no new tests.
422
423         * WebCore.xcodeproj/project.pbxproj: Modified. Add jni_utility_private.[cpp|h].
424         * bridge/jni/jni_instance.cpp: Modified. Include jni_utility_private.h for JSC.
425         * bridge/jni/jni_jsobject.mm: Modified. Include jni_utility_private.h for JSC.
426         * bridge/jni/jni_objc.mm: Modified. Include jni_utility_private.h for JSC.
427         * bridge/jni/jni_runtime.cpp: Modified. Include jni_utility_private.h for JSC.
428         * bridge/jni/jni_utility.cpp: Modified. Removed convertValueToJValue and convertArrayInstanceToJavaArray.
429         * bridge/jni/jni_utility.h: Modified. Removed convertValueToJValue and dispatchJNICall.
430         * bridge/jni/jsc: Added.
431         * bridge/jni/jsc/jni_utility_private.cpp: Added.
432         (JSC::Bindings::convertArrayInstanceToJavaArray):
433         (JSC::Bindings::convertValueToJValue):
434         * bridge/jni/jsc/jni_utility_private.h: Added. Header for convertValueToJValue and dispatchJNICall.
435         * platform/android/TemporaryLinkStubs.cpp: Modified. Include jni_utility_private.h for JSC.
436
437 2009-12-06  Oliver Hunt  <oliver@apple.com>
438
439         Reviewed by Maciej Stachowiak.
440
441         texImage2D pixel junk for transparency
442         https://bugs.webkit.org/show_bug.cgi?id=32188
443
444         Use kCGBlendModeCopy when drawing an image to the intermediate context
445         used to create a GL texture.
446
447         No test as we don't currently have any mechanism to retrieve pixel data
448         from the webgl context.
449
450         * platform/graphics/mac/GraphicsContext3DMac.cpp:
451         (WebCore::imageToTexture):
452
453 2009-12-03  Philippe Normand  <pnormand@igalia.com>
454
455         Reviewed by Gustavo Noronha.
456
457         Advertize audio/ogg correctly and refactored mime-type cache
458         building.
459
460         [GTK] Recognize oga as audio/ogg
461         https://bugs.webkit.org/show_bug.cgi?id=31990
462
463         Test: media/media-can-play-ogg.html
464
465         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
466         (WebCore::mimeTypeCache):
467
468 2009-12-05  Alexey Proskuryakov  <ap@apple.com>
469
470         Reviewed by Eric Seidel.
471
472         https://bugs.webkit.org/show_bug.cgi?id=32175
473         REGRESSION: websocket/tests/url-parsing.html is crashing on Leopard Bot
474
475         * platform/network/cf/SocketStreamHandleCFNet.cpp:
476         (WebCore::SocketStreamHandle::readStreamCallback): Call platformClose() to unschedule both
477         streams, guaranteeing that there will be no callbacks after SocketStreamHandle is destroyed.
478         (WebCore::SocketStreamHandle::writeStreamCallback): Edited a comment a bit.
479
480 2009-12-05  Adam Langley  <agl@google.com>
481
482         Reviewed by Adam Barth.
483
484         Check that a CSS format() argument is of a valid type.
485
486         https://bugs.webkit.org/show_bug.cgi?id=31815
487         http://code.google.com/p/chromium/issues/detail?id=28582
488
489         Test: fast/css/url-format-non-string.html
490
491         * css/CSSParser.cpp:
492         (WebCore::CSSParser::parseFontFaceSrc):
493
494 2009-12-04  Adam Langley  <agl@google.com>
495
496         Reviewed by Eric Seidel.
497
498         Chromium: make rounded borders heavier.
499
500         Skia draws its rounded corners differently from the other ports.
501         Whereas they have anti-aliased clipping regions, Skia only has 1-bit
502         regions. (Which is technically more correct, but somewhat unhelpful
503         for us.) Instead, with Skia we use a layer and collect all the
504         clipping paths in effect. When the state is popped, we paint
505         transparency outside the clipping paths and merge the layer down.
506
507         This appears to cause rounded borders to look a little thin, which is
508         addressed in this patch.
509
510         This is well covered by existing tests but will require new baselines
511         in the Chromium tree.
512
513         https://bugs.webkit.org/show_bug.cgi?id=31778
514
515         * platform/graphics/skia/GraphicsContextSkia.cpp:
516         (WebCore::GraphicsContext::addInnerRoundedRectClip):
517
518 2009-12-04  Simon Fraser  <simon.fraser@apple.com>
519
520         Reviewed by Dan Bernstein.
521
522         <rdar://problem/7441571> Hardware-backed layers are skipped when printing
523         
524         When printing, set the PaintBehaviorFlattenCompositingLayers flag so that compositing layers
525         paint. This also causes 3D transforms to be flattened to 2D.
526
527         Test: printing/compositing-layer-printing.html
528
529         * page/FrameView.cpp:
530         (WebCore::FrameView::paintContents):
531
532 2009-12-04  Oliver Hunt  <oliver@apple.com>
533
534         Reviewed by Beth Dakin.
535
536         Fix up some issues in my SVGListTraits change from yesterday.
537
538         * svg/SVGListTraits.h:
539         (WebCore::):
540
541 2009-12-04  Albert J. Wong  <ajwong@chromium.org>
542
543         Not reviewed: chromium build fix.
544
545         Fix Chromium build break caused by moving of isDefaultPortForProtocol() and
546         portAllowed() into KURL.h/KURL.cpp.  Cloning code.
547
548         * platform/KURLGoogle.cpp:
549         (WebCore::isDefaultPortForProtocol):
550         (WebCore::portAllowed):
551
552 2009-12-04  Pavel Feldman  <pfeldman@chromium.org>
553
554         Reviewed by Timothy Hatcher.
555
556         Web Inspector: Remove suppress highlight when restoring selected node.
557
558         https://bugs.webkit.org/show_bug.cgi?id=32152
559
560         * inspector/front-end/ElementsPanel.js:
561         (WebInspector.ElementsPanel.prototype.setDocument.selectNode):
562         (WebInspector.ElementsPanel.prototype.setDocument.selectLastSelectedNode):
563         (WebInspector.ElementsPanel.prototype.setDocument):
564
565 2009-12-04  Dirk Schulze  <krit@webkit.org>
566
567         Reviewed by Nikolas Zimmermann.
568
569         Gradient SVG animation demonstrates tearing at animation extremes
570         https://bugs.webkit.org/show_bug.cgi?id=11929
571
572         The focalPoint of a radial gradient is temporarly substracted by
573         the centralPoint, if the focalPoint is not in the radius of the
574         gradient. This is needed to calculate a new postion of the focalPoint
575         according to the specification. But the new focalPoint needs to be
576         moved by the centralPoint after this calculation, which is not the case
577         at the moment. This patch fixes this issue. It was also introduced a
578         deviation of maximal 0.2% for Cairo to get around the fixed point numbers
579         in Cairo.
580
581         W3C-SVG-1.1/pservers-grad-13-b needed an update. The missing adjustment
582         of the new focalPoint caused wrong results for the last three tests.
583
584         Test: svg/custom/radial-gradient-with-outstanding-focalPoint.svg
585
586         * svg/SVGRadialGradientElement.cpp:
587         (WebCore::SVGRadialGradientElement::buildGradient):
588
589 2009-12-04  Anton Muhin  <antonm@chromium.org>
590
591         Reviewed by Dmitry Titov.
592
593         Do not use WebCore::String::String(const UChar*, int length) to convert
594         short v8 strings.
595
596         Plus added string traits.
597         https://bugs.webkit.org/show_bug.cgi?id=31415
598
599         * bindings/v8/V8Binding.cpp:
600         (WebCore::):
601         (WebCore::v8StringToWebCoreString):
602
603 2009-12-04  Chris Fleizach  <cfleizach@apple.com>
604
605         Reviewed by Darin Adler.
606
607         REGRESSION: AX: buttons now extremely repetitive
608         https://bugs.webkit.org/show_bug.cgi?id=32164
609
610         Test: platform/mac/accessibility/button-shouldnot-have-axvalue.html
611
612         * accessibility/AccessibilityObject.h:
613         (WebCore::AccessibilityObject::isButton):
614         * accessibility/mac/AccessibilityObjectWrapper.mm:
615         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
616
617 2009-12-04  Zoltan Herczeg  <zherczeg@inf.u-szeged.hu>
618
619         Reviewed by Darin Adler.
620
621         Check whether the right side of a string append is non-empty
622         https://bugs.webkit.org/show_bug.cgi?id=32151
623
624         Especially beneficial for CachedScript::script() method
625         which usually appends an empty string returned by flush()
626         to its m_script member. m_script is often hundreds of kbytes
627         which is duplated without reason.
628
629         * platform/text/String.cpp:
630         (WebCore::String::append):
631
632 2009-12-04  Enrica Casucci  <enrica@apple.com>
633
634         Reviewed by John Sullivan.
635
636         Mail.app crashes when indenting table pasted from Numbers.app.
637         <rdar://problem/7209507>
638         https://bugs.webkit.org/show_bug.cgi?id=32166
639
640         Test: LayoutTests/editing/execCommand/indent-partial-table.html
641         
642         * editing/IndentOutdentCommand.cpp:
643         (WebCore::IndentOutdentCommand::indentRegion): Added test to verify that the end of the paragraph
644         after the selection has not been moved.
645
646 2009-12-04  Alexey Proskuryakov  <ap@apple.com>
647
648         Reviewed by Darin Adler.
649
650         https://bugs.webkit.org/show_bug.cgi?id=32085
651         WebSocket should block the same ports that are blocked for resource loading
652
653         Test: websocket/tests/url-parsing.html
654
655         * page/SecurityOrigin.cpp:
656         (WebCore::SecurityOrigin::SecurityOrigin):
657         (WebCore::SecurityOrigin::localURLSchemes):
658         * page/SecurityOrigin.h:
659         Move isDefaultPortForProtocol() to KURL, because that's a better place for it (SecurityOrigin
660         is not even in WebCore/platform directory).
661
662         * html/HTMLAnchorElement.cpp:
663         (WebCore::HTMLAnchorElement::host):
664         (WebCore::HTMLAnchorElement::setHost):
665         (WebCore::HTMLAnchorElement::setPort):
666         Updated for the new location of isDefaultPortForProtocol().
667
668         * platform/KURL.cpp:
669         (WebCore::KURL::protocolIs): In an assertion, compare to "javascript" case-insensitively,
670         since the function doesn't require lower case input.
671         (WebCore::isDefaultPortForProtocol): Moved from SecurityOrigin.
672         (WebCore::portAllowed): Moved from ResourceHandle.
673         * platform/KURL.h:
674
675         * platform/network/ResourceHandle.cpp: (WebCore::ResourceHandle::create): Updated for the
676         new location of portAllowed().
677
678         * websockets/WebSocket.cpp: (WebCore::WebSocket::connect): Per the spec, raise a SECURITY_ERR
679         if trying to connect to a blocked port.
680
681 2009-12-04  Benjamin Poulain  <benjamin.poulain@nokia.com>
682
683         Reviewed by Kenneth Rohde Christiansen.
684
685         [Qt] WebKit crashes when loading certain SVG images
686         https://bugs.webkit.org/show_bug.cgi?id=29443
687
688         Remove FontFallbackListQt and rely on the common FontFallbackList
689         to handle the fonts. FontCache and FontPlatformData have been
690         updated to work with the common FontFallbackList.
691
692         In the previous implementation, FontPlatformDataCacheKey
693         was a clone of FontPlatformData with the hashing
694         capabilities added in order to use it as a key in the cache's
695         hashmap. FontPlatformData has been modified to handle the hashing
696         function directly so the data are not copied twice in memory.
697
698         FontFallbackList::fontDataAt() from FontFallbackListQt was a copy of
699         code from FontCache::getFontData() and FontFallbackList::fontDataAt().
700         The behavior is similar except currFamily->family().length() was
701         not tested and the fallback fonts selector were not used.
702
703         Existing tests cover the change.
704
705         * WebCore.pro:
706         * platform/graphics/qt/FontCacheQt.cpp:
707         (WebCore::FontCache::platformInit):
708         (WebCore::FontCache::getFontDataForCharacters):
709         (WebCore::FontCache::getSimilarFontPlatformData):
710         (WebCore::FontCache::getLastResortFallbackFont):
711         (WebCore::FontCache::getTraitsInFamily):
712         (WebCore::FontCache::createFontPlatformData):
713         * platform/graphics/qt/FontCustomPlatformData.cpp:
714         (WebCore::FontCustomPlatformData::fontPlatformData):
715         * platform/graphics/qt/FontFallbackListQt.cpp:
716         Removed. We now use the implementation from FontFallbackList.cpp
717         * platform/graphics/qt/FontPlatformData.h:
718         Add hashing capabilities to be able to use the data with the FontCache.
719         This was previously done in FontCacheQt.cpp
720         (WebCore::FontPlatformDataPrivate::FontPlatformDataPrivate):
721         (WebCore::FontPlatformData::FontPlatformData):
722         (WebCore::FontPlatformData::isHashTableDeletedValue):
723         (WebCore::FontPlatformData::font):
724         (WebCore::FontPlatformData::size):
725         (WebCore::FontPlatformData::family):
726         (WebCore::FontPlatformData::bold):
727         (WebCore::FontPlatformData::italic):
728         (WebCore::FontPlatformData::smallCaps):
729         (WebCore::FontPlatformData::pixelSize):
730         * platform/graphics/qt/FontPlatformDataQt.cpp:
731         (WebCore::FontPlatformData::FontPlatformData):
732         (WebCore::FontPlatformData::~FontPlatformData):
733         (WebCore::FontPlatformData::operator=):
734         (WebCore::FontPlatformData::operator==):
735         (WebCore::FontPlatformData::hash):
736
737 2009-12-04  Adam Treat  <atreat@rim.com>
738
739         Reviewed by Dan Bernstein.
740
741         Fix wrong assert that was only working through sheer luck.
742         https://bugs.webkit.org/show_bug.cgi?id=32162
743
744         * platform/text/BidiContext.cpp:
745         (WebCore::BidiContext::create):
746
747 2009-12-04  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
748
749         Reviewed by Simon Hausmann.
750
751         [Qt] Allow removing 'qrc' as a local security origin scheme
752
753         * page/SecurityOrigin.cpp:
754
755 2009-12-04  Zoltan Horvath  <zoltan@webkit.org>
756
757         Reviewed by Eric Seidel.
758
759         Allow custom memory allocation control for WebCore's CollectionCache
760         https://bugs.webkit.org/show_bug.cgi?id=32109
761
762         Inherits the following class from FastAllocBase because it is
763         instantiated by 'new':
764
765         struct name            - instantiated at: WebCore/'location'
766
767         struct CollectionCache - dom/Document.cpp:4029
768
769         * html/CollectionCache.h:
770
771 2009-12-04  Steve Block  <steveblock@google.com>
772
773         Reviewed by Darin Adler.
774
775         Fixes a crashing bug in Geolocation when a watch is cleared from some callbacks. 
776         https://bugs.webkit.org/show_bug.cgi?id=32111
777
778         In Geolocation::GeoNotifier::timerFired, a JS callback may be invoked if a
779         fatal error was registered on this GeoNotifier or if this request has timed
780         out. If the request is a watch, and is cleared by a call to clearWatch in the
781         callback, the GeoNotifier object will be destroyed. We must therefore cache the
782         m_geolocation member to allow us to call Geolocation::fatalErrorOccurred or
783         Geolocation::requestTimedOut.
784
785         Tests: fast/dom/Geolocation/permission-denied-already-clear-watch.html
786                fast/dom/Geolocation/timeout-clear-watch.html
787
788         * page/Geolocation.cpp: Modified.
789         (WebCore::Geolocation::GeoNotifier::timerFired): Modified. Cache the m_geolocation member before invoking the JS callback.
790
791 2009-12-04  Zoltan Horvath  <zoltan@webkit.org>
792
793         Reviewed by Eric Seidel.
794
795         Allow custom memory allocation control for 2 classes of the platform directory in WebCore
796         https://bugs.webkit.org/show_bug.cgi?id=
797
798         Inherits the following class from Noncopyable because it is instantiated
799         by 'new' and no need to be copyable:
800
801         class/struct name         - instantiated at: WebCore/'location'
802
803         class SharedTimer         - (its child class) workers/WorkerRunLoop.cpp:91
804
805         Inherits the following class from FastAllocBase because it is
806         instantiated by 'new':
807
808         class TransformOperations - rendering/style/RenderStyle.h:1175
809
810         Noncopyable.h's include added to SharedTimer.h.
811
812         * platform/SharedTimer.h:
813         * platform/graphics/transforms/TransformOperations.h:
814
815 2009-12-04  Xan Lopez  <xlopez@igalia.com>
816
817         Reviewed by Gustavo Noronha.
818
819         [GTK]Enable DNS prefetching
820         https://bugs.webkit.org/show_bug.cgi?id=23846
821
822         Enable DNS prefetching.
823
824         Based on a patch by José Millán.
825
826         * platform/network/soup/DNSSoup.cpp:
827         (WebCore::prefetchDNS):
828
829 2009-12-04  Zoltan Horvath  <zoltan@webkit.org>
830
831         Reviewed by Eric Seidel.
832
833         Allow custom memory allocation control for the svg directory in WebCore
834         https://bugs.webkit.org/show_bug.cgi?id=
835
836         Inherits the following classes from Noncopyable because these are instantiated
837         by 'new' and no need to be copyable:
838
839         class/struct name           - instantiated at: WebCore/'location'
840
841         struct ResourceSet          - svg/graphics/SVGResource.cpp:148
842         class SVGFontData           - css/CSSFontFaceSource.cpp:156
843         class SVGDocumentExtensions - dom/Document.cpp:3962
844         class SVGViewSpec           - svg/SVGSVGElement.cpp:191
845
846         * svg/SVGDocumentExtensions.h:
847         * svg/SVGFontData.h:
848         * svg/SVGViewSpec.h:
849         * svg/graphics/SVGResource.cpp:
850
851 2009-12-03  Chris Fleizach  <cfleizach@apple.com>
852
853         Reviewed by Beth Dakin.
854
855         WAI-ARIA: aria-activedescendant doesn't work as intended
856         https://bugs.webkit.org/show_bug.cgi?id=32100
857
858         Fixes a number of issues regarding the "tree" role and aria-activedescendant.
859         1. The indexes were being reported incorrectly by treeitems.
860         2. aria-activedescendant changes were not being sent to the containing item.
861         3. The tree's selected rows need to consult aria-activedescendant.
862         4. Since a tree changes what it returns as its children (it returns its rows)
863            the mac-specific array indexing methods need to correctly handle the tree case.
864
865         Tests: platform/mac/accessibility/aria-tree-activedescendant.html
866                platform/mac/accessibility/aria-tree-index-of-items.html
867
868         * accessibility/AXObjectCache.h:
869         (WebCore::AXObjectCache::):
870         * accessibility/AccessibilityRenderObject.cpp:
871         (WebCore::AccessibilityRenderObject::shouldFocusActiveDescendant):
872         (WebCore::AccessibilityRenderObject::activeDescendant):
873         (WebCore::AccessibilityRenderObject::handleActiveDescendantChanged):
874         (WebCore::AccessibilityRenderObject::ariaTreeSelectedRows):
875         * accessibility/mac/AXObjectCacheMac.mm:
876         (WebCore::AXObjectCache::postPlatformNotification):
877         * accessibility/mac/AccessibilityObjectWrapper.mm:
878         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
879         (-[AccessibilityObjectWrapper accessibilityIndexOfChild:]):
880         (-[AccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
881         * accessibility/win/AXObjectCacheWin.cpp:
882         (WebCore::AXObjectCache::postPlatformNotification):
883
884 2009-12-03  Zoltan Horvath  <zoltan@webkit.org>
885
886         Reviewed by Eric Seidel.
887
888         Allow custom memory allocation control for the xml directory in WebCore
889         https://bugs.webkit.org/show_bug.cgi?id=
890
891         Inherits the following class from Noncopyable because it is instantiated 
892         by 'new' and no need to be copyable:
893
894         class/struct name               - instantiated at: WebCore/'location'
895
896         struct XMLHttpRequestStaticData - xml/XMLHttpRequest.cpp:134
897
898         Inherits the following classes from FastAllocBase because these are instantiated by 'new':
899
900         class NodeTest                  - xml/XPathGrammar.y:258
901         class NodeSet                   - xml/XPathValue.cpp:52
902         struct EvaluationContext        - xml/XPathExpressionNode.cpp:40
903
904         * xml/XMLHttpRequest.cpp:
905         * xml/XPathExpressionNode.h:
906         * xml/XPathNodeSet.h:
907         * xml/XPathStep.h:
908
909 2009-12-03  Drew Wilson  <atwilson@chromium.org>
910
911         Reviewed by Adam Barth.
912
913         New History changes do not compile for Chromium/V8
914         https://bugs.webkit.org/show_bug.cgi?id=32148
915
916         Existing tests suffice (just trying to get code to compile).
917
918         * WebCore.gypi:
919         Added V8HistoryCustom.cpp and other missing files.
920         * bindings/v8/custom/V8CustomBinding.h:
921         Added custom handlers for History.pushState()/replaceState().
922         * bindings/v8/custom/V8HistoryCustom.cpp: Added.
923         Added custom handlers for History.pushState()/replaceState().
924         * history/BackForwardListChromium.cpp:
925         (WebCore::BackForwardList::pushStateItem):
926         Stubbed out this routine for now - will implement in the future.
927
928 2009-12-03  Adam Barth  <abarth@webkit.org>
929
930         Reviewed by Eric Seidel.
931
932         OwnPtr<XBLBindingManager> Document::m_bindingManager;
933         https://bugs.webkit.org/show_bug.cgi?id=32147
934
935         The document actually owns the bindingManager.  That's what the code
936         should say.
937
938         * dom/Document.cpp:
939         (WebCore::Document::~Document):
940         * dom/Document.h:
941         (WebCore::Document::bindingManager):
942
943 2009-12-03  Adam Barth  <abarth@webkit.org>
944
945         Reviewed by Eric Seidel.
946
947         OwnPtr<Tokenizer> Document::m_tokenizer;
948         https://bugs.webkit.org/show_bug.cgi?id=32145
949
950         The document actually owns the tokenizer.  That's what the code should say.
951
952         * dom/Document.cpp:
953         (WebCore::Document::removedLastRef):
954         (WebCore::Document::~Document):
955         (WebCore::Document::cancelParsing):
956         (WebCore::Document::implicitOpen):
957         (WebCore::Document::implicitClose):
958         * dom/Document.h:
959         (WebCore::Document::tokenizer):
960
961 2009-12-03  Adam Barth  <abarth@webkit.org>
962
963         Reviewed by Eric Seidel.
964
965         OwnPtr<RenderArena> Document::m_renderArena;
966         https://bugs.webkit.org/show_bug.cgi?id=32146
967
968         The document owns the renderArena.  That's what the code should say.
969
970         * dom/Document.cpp:
971         (WebCore::Document::Document): Also, removed a redundant initialization
972         of the tokenizer that I missed in my previous patch.
973         (WebCore::Document::~Document):
974         (WebCore::Document::attach):
975         (WebCore::Document::detach):
976         * dom/Document.h:
977         (WebCore::Document::renderArena):
978
979 2009-12-03  Drew Wilson  <atwilson@chromium.org>
980
981         Rolling back r51633 because it causes a chromium perf regression.
982
983         * platform/graphics/SimpleFontData.h:
984         * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
985
986 2009-12-03  Adam Barth  <abarth@webkit.org>
987
988         Reviewed by Eric Seidel.
989
990         The code should say that Document owns DocLoader
991         https://bugs.webkit.org/show_bug.cgi?id=32143
992
993         It's the truth.
994
995         * dom/Document.cpp:
996         (WebCore::Document::~Document):
997         * dom/Document.h:
998         (WebCore::Document::docLoader):
999
1000 2009-12-03  Chris Fleizach  <cfleizach@apple.com>
1001
1002         Reviewed by Eric Seidel.
1003
1004         AX: VO just says "term" on many web sites
1005         https://bugs.webkit.org/show_bug.cgi?id=32139
1006
1007         Test: platform/mac/accessibility/definition-list-term.html
1008
1009         * accessibility/AccessibilityRenderObject.cpp:
1010         (WebCore::AccessibilityRenderObject::accessibilityDescription):
1011         * accessibility/mac/AccessibilityObjectWrapper.mm:
1012         (-[AccessibilityObjectWrapper subrole]):
1013         (-[AccessibilityObjectWrapper roleDescription]):
1014
1015 2009-12-03  Chris Fleizach  <cfleizach@apple.com>
1016
1017         Reviewed by Beth Dakin.
1018
1019         Implement WAI-ARIA scrollbar role and related property aria-orientation
1020         https://bugs.webkit.org/show_bug.cgi?id=32126
1021
1022         Test: accessibility/aria-scrollbar-role.html
1023
1024         * accessibility/AccessibilityObject.cpp:
1025         (WebCore::createARIARoleMap):
1026         * accessibility/AccessibilityObject.h:
1027         (WebCore::AccessibilityObject::isScrollbar):
1028         * accessibility/AccessibilityRenderObject.cpp:
1029         (WebCore::AccessibilityRenderObject::valueForRange):
1030         (WebCore::AccessibilityRenderObject::orientation):
1031         (WebCore::AccessibilityRenderObject::canHaveChildren):
1032         * accessibility/AccessibilityRenderObject.h:
1033         * accessibility/mac/AccessibilityObjectWrapper.mm:
1034         (-[AccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
1035         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
1036         * html/HTMLAttributeNames.in:
1037
1038 2009-12-03  Dan Bernstein  <mitz@apple.com>
1039
1040         Reviewed by Darin Adler.
1041
1042         Fixed <rdar://problem/7401617> Selection painting issue in hardware-
1043         accelerated layers
1044         which is another part of https://bugs.webkit.org/show_bug.cgi?id=23628
1045         Fix selection painting to do container-relative repaints
1046
1047         Test: fast/repaint/block-selection-gap-in-composited-layer.html
1048
1049         * rendering/RenderBlock.cpp:
1050         (WebCore::RenderBlock::selectionGapRectsForRepaint): Compute and paint
1051         gap rects in the coordinate space of the repaint container.
1052         * rendering/RenderLayerCompositor.cpp:
1053         (WebCore::RenderLayerCompositor::recursiveRepaintLayerRect): Added a
1054         FIXME.
1055         * rendering/RenderView.cpp:
1056         (WebCore::RenderView::setSelection): Map block selection gap rects from
1057         the repaint container’s coordinate space to the view’s coordinate space
1058         before adding them to the cached selection bounds.
1059         (WebCore::RenderView::clearSelection): Changed to use
1060         repaintRectangleInViewAndCompositedLayers() so that the selection rect
1061         is invalidated in composited layers as well.
1062
1063 2009-12-03  Jonathan Dixon  <joth@chromium.org>
1064
1065         Reviewed by Dimitri Glazkov.
1066
1067         Bug 32066 - Add enable geolocation flag to WebCore::Settings for Chromium
1068         https://bugs.webkit.org/show_bug.cgi?id=32066
1069
1070         Adds geolocationEnabled in Settings for runtime control of geolocaiton features. This defaults to ON
1071         as it is intended as a development and testing aid, not a user control. To completely remove geolocation
1072         from a given port, the compile time ENABLE_GEOLOCATION should still be used.
1073         Adding placeholder GeolocationServiceChromium implementation, as this is required to allows
1074         ENABLE_GEOLOCATION to be defined (in turn required for testing), even though this patch does not
1075         make that the default just yet.
1076
1077         * WebCore.gypi:
1078         * page/Settings.cpp:
1079         (WebCore::Settings::Settings): Add new m_geolocationEnabled flag default value
1080         (WebCore::Settings::setGeolocationEnabled): Setter for  m_geolocationEnabled flag
1081         * page/Settings.h:
1082         (WebCore::Settings::geolocationEnabled):  Add m_geolocationEnabled flag
1083         * platform/chromium/GeolocationServiceChromium.cpp: Added.
1084         (WebCore::GeolocationServiceChromium::GeolocationServiceChromium): Place holder GeolocationServiceChromium)
1085         (WebCore::createGeolocationService): factory function, only required when ENABLED(GEOLOCATION) is true
1086
1087 2009-12-03  Enrica Casucci  <enrica@apple.com>
1088
1089         Reviewed by John Sullivan.
1090
1091         SpinTracer: 349 spins in Mail at WebCore::Editor::advanceToNextMisspelling(bool)
1092         <rdar://problem/7198592>
1093         https://bugs.webkit.org/show_bug.cgi?id=32129
1094
1095         Fixed the way the next paragraph is calculated.
1096         I've added a repro case in Safari and attached it to the Bugzilla bug.
1097
1098         * editing/Editor.cpp:
1099         (WebCore::findFirstMisspellingOrBadGrammarInRange): Changed the way we move to the
1100         next paragraph in the loop.
1101
1102 2009-12-03  Oliver Hunt  <oliver@apple.com>
1103
1104         Build fix
1105
1106         * svg/SVGListTraits.h:
1107         (WebCore::):
1108
1109 2009-12-03  Oliver Hunt  <oliver@apple.com>
1110
1111         Build fix
1112
1113         * svg/SVGListTraits.h:
1114         (WebCore::):
1115
1116 2009-12-03  Brady Eidson  <beidson@apple.com>
1117
1118         No wonder editing WebCore.exp repeatedly while I worked on this patch never seemed to stick.
1119
1120         Long live our auto-generated overlords that I didn't know about...  
1121
1122         * WebCore.base.exp:
1123
1124 2009-12-03  Oliver Hunt  <oliver@apple.com>
1125
1126         Reviewed by Dan Bernstein.
1127
1128         REGRESSION (r51627): 3 SVG tests are failing
1129         https://bugs.webkit.org/show_bug.cgi?id=32117
1130
1131         Null checking Items in the SVGList is insufficient as items may
1132         be floats, etc so add SVGListTraits::isNull and add appropriate
1133         specializations.
1134
1135         Test: svg/dom/svglist-exception-on-out-bounds-error.html
1136
1137         * svg/SVGList.h:
1138         (WebCore::SVGListTypeOperations::isNull):
1139         (WebCore::SVGList::initialize):
1140         (WebCore::SVGList::insertItemBefore):
1141         (WebCore::SVGList::replaceItem):
1142         (WebCore::SVGList::appendItem):
1143         * svg/SVGListTraits.h:
1144         (WebCore::):
1145
1146 2009-12-03  Brady Eidson  <beidson@apple.com>
1147
1148         No review - release build fix.
1149
1150         * history/HistoryItem.cpp:
1151         (WebCore::HistoryItem::documentDetached):
1152
1153 2009-12-03  Brady Eidson  <beidson@apple.com>
1154
1155         No review - release build fix.
1156
1157         * loader/HistoryController.cpp:
1158         (WebCore::HistoryController::pushState):
1159
1160 2009-12-03  Enrica Casucci  <enrica@apple.com>
1161
1162         Reviewed by Adele Peterson.
1163
1164         Multiple Undos removes the last posted comment and/or the ones before it.
1165         <rdar://problem/6557066>
1166         https://bugs.webkit.org/show_bug.cgi?id=32079
1167         
1168         The fix consists in preventing Undos and Redos to be applied to elements that
1169         are no longer editable. We do not attempt to remove the commands from the queue.
1170         It is a relatively simple fix that comes with a little extra overhead for the apply
1171         and unapply methods where we are now performing the editability check.
1172
1173         Test: editing/undo/undo-indent-noneditable.html
1174
1175         * editing/AppendNodeCommand.cpp:
1176         (WebCore::AppendNodeCommand::doApply):
1177         (WebCore::AppendNodeCommand::doUnapply):
1178         * editing/DeleteFromTextNodeCommand.cpp:
1179         (WebCore::DeleteFromTextNodeCommand::doApply):
1180         (WebCore::DeleteFromTextNodeCommand::doUnapply):
1181         * editing/InsertIntoTextNodeCommand.cpp:
1182         (WebCore::InsertIntoTextNodeCommand::doApply):
1183         (WebCore::InsertIntoTextNodeCommand::doUnapply):
1184         * editing/InsertNodeBeforeCommand.cpp:
1185         (WebCore::InsertNodeBeforeCommand::doApply):
1186         (WebCore::InsertNodeBeforeCommand::doUnapply):
1187         * editing/JoinTextNodesCommand.cpp:
1188         (WebCore::JoinTextNodesCommand::doApply):
1189         (WebCore::JoinTextNodesCommand::doUnapply):
1190         * editing/MergeIdenticalElementsCommand.cpp:
1191         (WebCore::MergeIdenticalElementsCommand::doApply):
1192         (WebCore::MergeIdenticalElementsCommand::doUnapply):
1193         * editing/RemoveNodeCommand.cpp:
1194         (WebCore::RemoveNodeCommand::doApply):
1195         (WebCore::RemoveNodeCommand::doUnapply):
1196         * editing/SplitElementCommand.cpp:
1197         (WebCore::SplitElementCommand::executeApply):
1198         (WebCore::SplitElementCommand::doUnapply):
1199         * editing/SplitTextNodeCommand.cpp:
1200         (WebCore::SplitTextNodeCommand::doApply):
1201         (WebCore::SplitTextNodeCommand::doUnapply):
1202         * editing/WrapContentsInDummySpanCommand.cpp:
1203         (WebCore::WrapContentsInDummySpanCommand::doUnapply):
1204         (WebCore::WrapContentsInDummySpanCommand::doReapply):
1205
1206 2009-12-03  Brady Eidson  <beidson@apple.com>
1207
1208         Reviewed by Sam Weinig.
1209
1210         <rdar://problem/7214236> and http://webkit.org/b/32052 - Implement HTML5 state object history API
1211
1212         Tests: fast/loader/stateobjects/document-destroyed-navigate-back.html
1213                fast/loader/stateobjects/document-destroyed-navigate-back-with-fragment-scroll.html
1214                fast/loader/stateobjects/popstate-after-load-complete-addeventlistener.html
1215                fast/loader/stateobjects/popstate-after-load-complete-body-attribute.html
1216                fast/loader/stateobjects/popstate-after-load-complete-window-attribute.html
1217                fast/loader/stateobjects/pushstate-object-types.html
1218                fast/loader/stateobjects/pushstate-then-replacestate.html
1219                fast/loader/stateobjects/pushstate-with-fragment-urls-and-hashchange.html
1220                fast/loader/stateobjects/replacestate-then-pushstate.html
1221                http/tests/loading/state-object-security-exception.html
1222
1223         Derived sources and project file changes:
1224         * DerivedSources.cpp:
1225         * DerivedSources.make:
1226         * GNUmakefile.am
1227         * WebCore.pro
1228         * WebCore.vcproj/WebCore.vcproj:
1229         * WebCore.xcodeproj/project.pbxproj:
1230
1231         Add the new PopStateEvent:
1232         * dom/PopStateEvent.cpp: Added.
1233         (WebCore::PopStateEvent::PopStateEvent):
1234         (WebCore::PopStateEvent::initPopStateEvent):
1235         * dom/PopStateEvent.h: Added.
1236         (WebCore::PopStateEvent::create):
1237         (WebCore::PopStateEvent::isPopStateEvent):
1238         (WebCore::PopStateEvent::state):
1239         * dom/PopStateEvent.idl: Added.
1240         * bindings/js/JSPopStateEventCustom.cpp: Added.
1241         (WebCore::JSPopStateEvent::initPopStateEvent):
1242         (WebCore::JSPopStateEvent::state):
1243         * bindings/js/JSEventCustom.cpp:
1244         (WebCore::toJS):
1245         * dom/Event.cpp:
1246         (WebCore::Event::isPopStateEvent):
1247         * dom/Event.h:
1248         * dom/EventNames.h:
1249
1250         Add the "onpopstate" attribute:
1251         * html/HTMLAttributeNames.in:
1252         * html/HTMLBodyElement.cpp:
1253         (WebCore::HTMLBodyElement::parseMappedAttribute):
1254         * html/HTMLBodyElement.idl:
1255         * html/HTMLFrameSetElement.cpp:
1256         (WebCore::HTMLFrameSetElement::parseMappedAttribute):
1257         * html/HTMLFrameSetElement.h:
1258         * html/HTMLFrameSetElement.idl:
1259         * page/DOMWindow.h:
1260         * page/DOMWindow.idl:
1261
1262         Add pushState and replaceState management to the loader and history machinery:
1263         * bindings/js/JSHistoryCustom.cpp:
1264         (WebCore::JSHistory::pushState):
1265         (WebCore::JSHistory::replaceState):
1266         * loader/HistoryController.cpp:
1267         (WebCore::HistoryController::updateForSameDocumentNavigation): Augmented from "scrollToAnchor()", combining
1268           both the same-document fragment scroll case with the new same-document state object activation case.
1269         (WebCore::HistoryController::pushState):
1270         (WebCore::HistoryController::replaceState):
1271         * loader/HistoryController.h:
1272         * history/BackForwardList.cpp:
1273         (WebCore::BackForwardList::addItem): Use insertItemAfterCurrent.
1274         (WebCore::BackForwardList::insertItemAfterCurrent): Optionally insert the item without clearing the forward
1275           list, as pushStateItem might've selectively cleared only certain items, with the bulk of the forward list
1276           meant to remain.
1277         (WebCore::BackForwardList::pushStateItem): Clear the forward list *only* for the state item's document, then 
1278           insert the new item.
1279         (WebCore::BackForwardList::removeItem):
1280         * history/BackForwardList.h:
1281         * page/History.cpp:
1282         (WebCore::History::urlForState):
1283         (WebCore::History::stateObjectAdded):
1284         * page/History.h:
1285         * page/History.idl:
1286
1287         Let HistoryItems and Documents associate with each other, as well as letting HistoryItems contain state objects:
1288         * history/HistoryItem.cpp:
1289         (WebCore::HistoryItem::HistoryItem):
1290         (WebCore::HistoryItem::~HistoryItem):
1291         (WebCore::HistoryItem::setStateObject):
1292         (WebCore::HistoryItem::setDocument):
1293         (WebCore::HistoryItem::documentDetached):
1294         * history/HistoryItem.h:
1295         (WebCore::HistoryItem::stateObject):
1296         (WebCore::HistoryItem::document):
1297         * dom/Document.cpp:
1298         (WebCore::Document::detach): Notify all back/forward history items owned by this Document that it
1299           is going away.
1300         (WebCore::Document::registerHistoryItem): Manage the list of back/forward history items this document owns.
1301         (WebCore::Document::unregisterHistoryItem): Ditto.
1302         * dom/Document.h:
1303
1304         Add the ability for Documents, DocumentLoaders, and FrameLoaderClients to be notified when a Documents
1305         URL changes as the result of pushState(), replaceState(), or a popstate navigation:
1306         * dom/Document.cpp:
1307         (WebCore::Document::implicitClose): If there's a pending state object, dispatch the popstate event.
1308         (WebCore::Document::updateURLForPushOrReplaceState):
1309         (WebCore::Document::statePopped): If loading is complete, dispatch the popstate event. Otherwise, set 
1310           the pending state object.
1311         * loader/DocumentLoader.cpp:
1312         (WebCore::DocumentLoader::replaceRequestURLForSameDocumentNavigation):
1313         * loader/DocumentLoader.h:
1314         * loader/FrameLoaderClient.h:
1315         * loader/EmptyClients.h:
1316         (WebCore::EmptyFrameLoaderClient::dispatchDidChangeStateObjectForPageForFrame):
1317
1318         Change handling of "loading a HistoryItem" to distinguish between new-Document navigations and same-Document
1319         navigations, combining the old concept of anchor scrolls with the new concept of state object navigations:
1320         * loader/FrameLoader.cpp:
1321         (WebCore::FrameLoader::loadInSameDocument):
1322         (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
1323         (WebCore::FrameLoader::navigateWithinDocument):
1324         (WebCore::FrameLoader::navigateToDifferentDocument):
1325         (WebCore::FrameLoader::loadItem):
1326         * loader/FrameLoader.h:
1327         * page/Page.cpp:
1328         (WebCore::Page::goToItem): Changed to allow state object activations to pass through without the load stopping.
1329
1330 2009-12-03  Pavel Feldman  <pfeldman@chromium.org>
1331
1332         Not reviewed: chromium build fix.
1333         r51621 changed JS bindings only, broke v8's.
1334
1335         * bindings/v8/ScriptFunctionCall.cpp:
1336         (WebCore::ScriptFunctionCall::appendArgument):
1337         * bindings/v8/ScriptFunctionCall.h:
1338
1339 2009-12-03  Dimitri Glazkov  <dglazkov@chromium.org>
1340
1341         Reviewed by Adam Barth.
1342
1343         [V8] Attributes and NamedNodeMaps aren't tracked correctly and may be prematurely garbage-collected.
1344         https://bugs.webkit.org/show_bug.cgi?id=32094
1345
1346         Covered by existing test: LayoutTests/fast/dom/Attr/access-after-element-destruction.html
1347
1348         * bindings/v8/DOMObjectsInclude.h:
1349         * bindings/v8/V8DOMWrapper.cpp:
1350         (WebCore::V8DOMWrapper::getTemplate):
1351         (WebCore::V8DOMWrapper::convertToV8Object):
1352         (WebCore::V8DOMWrapper::convertNamedNodeMapToV8Object):
1353         * bindings/v8/V8DOMWrapper.h:
1354         * bindings/v8/V8GCController.cpp:
1355         (WebCore::ObjectGrouperVisitor::visitDOMWrapper):
1356         * bindings/v8/custom/V8CustomBinding.h:
1357
1358 2009-12-03  Pavel Feldman  <pfeldman@chromium.org>
1359
1360         Reviewed by Timothy Hatcher.
1361
1362         Chromium: Add support for settings containing ":"
1363
1364         https://bugs.webkit.org/show_bug.cgi?id=32118
1365
1366         * inspector/front-end/WatchExpressionsSidebarPane.js:
1367         (WebInspector.WatchExpressionsSection):
1368
1369 2009-12-03  Rafael Antognolli  <antognolli@profusion.mobi>, Kenneth Christiansen <kenneth@webkit.org>
1370
1371         Reviewed by Simon Fraser.
1372
1373         repaint events from outside the viewport aren't received
1374         https://bugs.webkit.org/show_bug.cgi?id=32081
1375
1376         When using a tiled backing store for painting, you need to receive
1377         event from outside the viewport. Setting the viewport to the size
1378         of the contents is not an option if you want to make use of WebCore's
1379         infrastructure for drawing scrollbars etc.
1380
1381         A new property, paintsEntireContents, has been introduced for the
1382         above use-case. It is settable, as tiling will be optional for Qt,
1383         and for the not yet upstreamed EFL port, there will be two different
1384         views, where only one of them are tiled.
1385
1386         No change in behavior, so no new tests added.
1387
1388         * page/FrameView.cpp:
1389         (WebCore::FrameView::repaintContentRectangle):
1390         * platform/ScrollView.cpp:
1391         (WebCore::ScrollView::ScrollView):
1392         (WebCore::ScrollView::setPaintsEntireContents):
1393         (WebCore::ScrollView::wheelEvent):
1394         * platform/ScrollView.h:
1395         (WebCore::ScrollView::paintsEntireContents):
1396
1397 2009-11-23  Jeremy Moskovich  <jeremy@chromium.org>
1398
1399         Reviewed by Eric Seidel.
1400
1401         Switch Chrome/Mac to use Core Text APIs rather than ATSUI APIs.
1402         https://bugs.webkit.org/show_bug.cgi?id=31802
1403
1404         No test since this is already covered by existing pixel tests.
1405
1406         * platform/graphics/SimpleFontData.h: Change #ifdef to define getNSFont() on Chrome/Mac .
1407         * platform/graphics/mac/ComplexTextControllerCoreText.cpp: Provide forward declarations
1408         of Core Text functions that are public on 10.6 but SPI on 10.5.
1409
1410 2009-12-03  Pavel Feldman  <pfeldman@dhcp-172-28-174-220.spb.corp.google.com>
1411
1412         Reviewed by Timothy Hatcher.
1413
1414         Web Inspector: Simplify the settings support in inspector controller.
1415
1416         https://bugs.webkit.org/show_bug.cgi?id=32076
1417
1418         Test: inspector/settings-set-get.html
1419
1420         * WebCore.Inspector.exp:
1421         * bindings/js/JSInspectorFrontendHostCustom.cpp:
1422         * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
1423         * inspector/InspectorClient.h:
1424         * inspector/InspectorController.cpp:
1425         (WebCore::InspectorController::~InspectorController):
1426         (WebCore::InspectorController::setting):
1427         (WebCore::InspectorController::setSetting):
1428         (WebCore::InspectorController::setWindowVisible):
1429         (WebCore::InspectorController::attachWindow):
1430         (WebCore::InspectorController::setAttachedWindowHeight):
1431         (WebCore::InspectorController::storeLastActivePanel):
1432         (WebCore::InspectorController::scriptObjectReady):
1433         (WebCore::InspectorController::showWindow):
1434         (WebCore::InspectorController::enableResourceTracking):
1435         (WebCore::InspectorController::disableResourceTracking):
1436         (WebCore::InspectorController::ensureResourceTrackingSettingsLoaded):
1437         (WebCore::InspectorController::enableProfiler):
1438         (WebCore::InspectorController::disableProfiler):
1439         (WebCore::InspectorController::enableDebuggerFromFrontend):
1440         (WebCore::InspectorController::disableDebugger):
1441         * inspector/InspectorController.h:
1442         * inspector/InspectorFrontendHost.cpp:
1443         (WebCore::InspectorFrontendHost::setting):
1444         (WebCore::InspectorFrontendHost::setSetting):
1445         * inspector/InspectorFrontendHost.h:
1446         * inspector/InspectorFrontendHost.idl:
1447         * loader/EmptyClients.h:
1448         (WebCore::EmptyInspectorClient::populateSetting):
1449         (WebCore::EmptyInspectorClient::storeSetting):
1450
1451 2009-12-03  Ben Murdoch  <benm@google.com>
1452
1453         Reviewed by Brady Eidson.
1454
1455         [Android] notifyHistoryItemChanged() should pass a pointer to the HistoryItem that changed.
1456         https://bugs.webkit.org/show_bug.cgi?id=31915
1457
1458         No change in functionality so no new tests required.
1459
1460         * history/HistoryItem.cpp:
1461         (WebCore::defaultNotifyHistoryItemChanged): Update this function to pass the HistoryItem that is being changed.
1462         (WebCore::HistoryItem::setAlternateTitle): Update call to notifyHistoryItemChanged to include the new parameter.
1463         (WebCore::HistoryItem::setURLString): ditto.
1464         (WebCore::HistoryItem::setOriginalURLString): ditto.
1465         (WebCore::HistoryItem::setReferrer): ditto.
1466         (WebCore::HistoryItem::setTitle): ditto.
1467         (WebCore::HistoryItem::setTarget): ditto.
1468         (WebCore::HistoryItem::setDocumentState): On Android, add a call to notifyHistoryItemChanged. See bug for a discussion of why this is needed.
1469         (WebCore::HistoryItem::clearDocumentState): ditto.
1470         (WebCore::HistoryItem::setIsTargetItem): ditto.
1471         (WebCore::HistoryItem::addChildItem): ditto.
1472         (WebCore::HistoryItem::setFormInfoFromRequest): ditto.
1473         * history/HistoryItem.h: Update signature of notifyHistoryItemChanged.
1474
1475 2009-12-03  Ben Murdoch  <benm@google.com>
1476
1477         Reviewed by Brady Eidson.
1478
1479         [Android] The FrameLoaderClient is unaware of BackForwardList changes.
1480         https://bugs.webkit.org/show_bug.cgi?id=31914
1481
1482         This change adds three new methods on the FrameLoaderClient interface to receive notifications when the BackForwardList changes.
1483
1484         No new tests required. Functionality on all platforms upstream remains the same. Android is the first platform to make use of these callbacks.
1485
1486         * history/BackForwardList.cpp:
1487         (WebCore::BackForwardList::addItem): Execute the callback.
1488         (WebCore::BackForwardList::goBack): ditto.
1489         (WebCore::BackForwardList::goForward): ditto.
1490         (WebCore::BackForwardList::goToItem): ditto.
1491         (WebCore::BackForwardList::setCapacity): dito.
1492         * loader/EmptyClients.h:
1493         (WebCore::EmptyFrameLoaderClient::dispatchDidAddBackForwardItem): Add an empty implementation for the callback that does nothing.
1494         (WebCore::EmptyFrameLoaderClient::dispatchDidRemoveBackForwardItem): ditto.
1495         (WebCore::EmptyFrameLoaderClient::dispatchDidChangeBackForwardIndex): ditto.
1496         * loader/FrameLoaderClient.h:
1497
1498 2009-12-03  Ben Murdoch  <benm@google.com>
1499
1500         Reviewed by Brady Eidson.
1501
1502         [Android] Upstream WebCore/history/android: Require some platform specific state attached to HistoryItem.
1503         https://bugs.webkit.org/show_bug.cgi?id=31913
1504
1505         Android stores information such as the zoom scale factor and bridge back to the Java counterpart with HistoryItem.
1506
1507         No new tests required as this is Android specific code.
1508
1509         * history/HistoryItem.h: Add Android specific member data to HistoryItem.
1510         * history/android: Added.
1511         * history/android/AndroidWebHistoryBridge.h: Added.
1512         * history/android/HistoryItemAndroid.cpp: Added, provides implementation for Android specific member functions in HistoryItem.
1513         (WebCore::HistoryItem::bridge): Added.
1514         (WebCore::HistoryItem::setBridge): Added.
1515
1516 2009-12-03  Oliver Hunt  <oliver@apple.com>
1517
1518         Reviewed by Maciej Stachowiak.
1519
1520         NULL ptr in SVGPathSegList::getPathSegAtLength()
1521         https://bugs.webkit.org/show_bug.cgi?id=30313
1522
1523         Add exception checks to SVGPathSegList's implementation to catch (and propagate) exceptions.
1524         Add null checks to SVGList's content manipulation functions to prevent
1525         null values from entering the list in the first place.
1526
1527         Test: svg/dom/svgpath-out-of-bounds-getPathSeg.html
1528
1529         * svg/SVGList.h:
1530         (WebCore::SVGList::initialize):
1531         (WebCore::SVGList::insertItemBefore):
1532         (WebCore::SVGList::replaceItem):
1533         (WebCore::SVGList::appendItem):
1534         * svg/SVGPathElement.cpp:
1535         (WebCore::SVGPathElement::getPathSegAtLength):
1536         * svg/SVGPathElement.h:
1537         * svg/SVGPathElement.idl:
1538         * svg/SVGPathSegList.cpp:
1539         (WebCore::SVGPathSegList::getPathSegAtLength):
1540         (WebCore::SVGPathSegList::toPathData):
1541         (WebCore::SVGPathSegList::createAnimated):
1542         * svg/SVGPathSegList.h:
1543
1544 2009-12-02  Yusuke Sato  <yusukes@chromium.org>
1545
1546         Reviewed by Eric Seidel.
1547
1548         Sanitize web fonts using the OTS library 
1549         https://bugs.webkit.org/show_bug.cgi?id=31106
1550
1551         Add support for OpenType sanitizer (OTS). It parses OpenType files (from @font-face)
1552         and attempts to validate and sanitize them. We hope this reduces the attack surface
1553         of the system font libraries.
1554
1555         * WebCore.gyp/WebCore.gyp: Added dependency to (chromium_src_dir)/third_party/ots/ library.
1556         * WebCore.gypi: Added new files below.
1557         * WebCore.xcodeproj/project.pbxproj: Ditto.
1558         * platform/graphics/chromium/FontCustomPlatformData.cpp: Validate and transcode a web font.
1559         (WebCore::createFontCustomPlatformData):
1560         * platform/graphics/mac/FontCustomPlatformData.cpp: Ditto.
1561         (WebCore::createFontCustomPlatformData):
1562         * platform/graphics/opentype/OpenTypeSanitizer.cpp: Added.
1563         (WebCore::OpenTypeSanitizer::sanitize):
1564         * platform/graphics/opentype/OpenTypeSanitizer.h: Added.
1565         (WebCore::OpenTypeSanitizer::OpenTypeSanitizer):
1566
1567 2009-12-02  Oliver Hunt  <oliver@apple.com>
1568
1569         Reviewed by Sam Weinig.
1570
1571         Web Inspector frontend heap allocates ScriptFunctionCall which is unsafe
1572         https://bugs.webkit.org/show_bug.cgi?id=32098
1573
1574         Fix is simply to make the ScriptFunctionCall stack allocated as nature intended.
1575         Doing this required adding an appendArgument(char*) to ScriptFunctionCall so
1576         that an explicit String cast would not be necessary.
1577
1578         To prevent something like this happening again in future i've added private
1579         operator new implementations to ScriptFunctionCall making this type of mistake
1580         produce errors when compiling.
1581
1582         Test case: Inspector tests now pass with GC on every alloc enabled.
1583
1584         * bindings/js/ScriptFunctionCall.cpp:
1585         (WebCore::ScriptFunctionCall::appendArgument):
1586         * bindings/js/ScriptFunctionCall.h:
1587         (WebCore::ScriptFunctionCall::operator new):
1588         (WebCore::ScriptFunctionCall::operator new[]):
1589         * inspector/InspectorFrontend.cpp:
1590         (WebCore::InspectorFrontend::addConsoleMessage):
1591         (WebCore::InspectorFrontend::updateConsoleMessageRepeatCount):
1592         (WebCore::InspectorFrontend::addResource):
1593         (WebCore::InspectorFrontend::updateResource):
1594         (WebCore::InspectorFrontend::removeResource):
1595         (WebCore::InspectorFrontend::updateFocusedNode):
1596         (WebCore::InspectorFrontend::setAttachedWindow):
1597         (WebCore::InspectorFrontend::addRecordToTimeline):
1598         (WebCore::InspectorFrontend::parsedScriptSource):
1599         (WebCore::InspectorFrontend::failedToParseScriptSource):
1600         (WebCore::InspectorFrontend::addProfileHeader):
1601         (WebCore::InspectorFrontend::setRecordingProfile):
1602         (WebCore::InspectorFrontend::didGetProfileHeaders):
1603         (WebCore::InspectorFrontend::didGetProfile):
1604         (WebCore::InspectorFrontend::pausedScript):
1605         (WebCore::InspectorFrontend::setDocument):
1606         (WebCore::InspectorFrontend::setDetachedRoot):
1607         (WebCore::InspectorFrontend::setChildNodes):
1608         (WebCore::InspectorFrontend::childNodeCountUpdated):
1609         (WebCore::InspectorFrontend::childNodeInserted):
1610         (WebCore::InspectorFrontend::childNodeRemoved):
1611         (WebCore::InspectorFrontend::attributesUpdated):
1612         (WebCore::InspectorFrontend::didRemoveNode):
1613         (WebCore::InspectorFrontend::didGetChildNodes):
1614         (WebCore::InspectorFrontend::didApplyDomChange):
1615         (WebCore::InspectorFrontend::didGetEventListenersForNode):
1616         (WebCore::InspectorFrontend::didGetCookies):
1617         (WebCore::InspectorFrontend::didDispatchOnInjectedScript):
1618         (WebCore::InspectorFrontend::addDatabase):
1619         (WebCore::InspectorFrontend::selectDatabase):
1620         (WebCore::InspectorFrontend::didGetDatabaseTableNames):
1621         (WebCore::InspectorFrontend::addDOMStorage):
1622         (WebCore::InspectorFrontend::selectDOMStorage):
1623         (WebCore::InspectorFrontend::didGetDOMStorageEntries):
1624         (WebCore::InspectorFrontend::didSetDOMStorageItem):
1625         (WebCore::InspectorFrontend::didRemoveDOMStorageItem):
1626         (WebCore::InspectorFrontend::updateDOMStorage):
1627         (WebCore::InspectorFrontend::addNodesToSearchResult):
1628         (WebCore::InspectorFrontend::evaluateForTestInFrontend):
1629         * inspector/InspectorFrontend.h:
1630
1631 2009-12-02  Dave Hyatt  <hyatt@apple.com>
1632
1633         Reviewed by Darin Adler.
1634
1635         https://bugs.webkit.org/show_bug.cgi?id=32072, clean up invalid @-rule error handling so that we
1636         pass more CSS test suite stuff.  Make the grammar stop enforcing the ordering of @namespace vs.
1637         @variables vs. @import.  Just let the parser handle that instead.  This simplifies the grammar and
1638         makes error handling deal with more cases correctly.
1639
1640         Added fast/css/namespaces/namespaces-invalid-at-rules.xml
1641
1642         * css/CSSGrammar.y:
1643         * css/CSSParser.cpp:
1644         (WebCore::CSSParser::CSSParser):
1645         (WebCore::CSSParser::parseRule):
1646         (WebCore::CSSParser::createCharsetRule):
1647         (WebCore::CSSParser::createImportRule):
1648         (WebCore::CSSParser::createMediaRule):
1649         (WebCore::CSSParser::createKeyframesRule):
1650         (WebCore::CSSParser::createStyleRule):
1651         (WebCore::CSSParser::createFontFaceRule):
1652         (WebCore::CSSParser::addNamespace):
1653         (WebCore::CSSParser::createVariablesRule):
1654         * css/CSSParser.h:
1655
1656 2009-12-02  Yusuke Sato  <yusukes@chromium.org>
1657
1658         Reviewed by Dan Bernstein.
1659
1660         Safari/Chromium for Windows fails to load CJK WebFonts
1661         https://bugs.webkit.org/show_bug.cgi?id=31804
1662         
1663         * platform/graphics/opentype/OpenTypeUtilities.cpp:
1664         (WebCore::renameAndActivateFont): Load a remote font even if the font has 2 or more faces.
1665
1666 2009-12-02  Avi Drissman  <avi@chromium.org>
1667
1668         Reviewed by Darin Fisher.
1669
1670         Chromium: Need tickmarks in scrollbar
1671         https://bugs.webkit.org/show_bug.cgi?id=32069
1672
1673         * WebCore.gyp/WebCore.gyp:
1674         * WebCore.gypi:
1675         * platform/chromium/ScrollbarThemeChromiumMac.h: Added.
1676         * platform/chromium/ScrollbarThemeChromiumMac.mm: Added.
1677
1678 2009-11-13  Timothy Hatcher  <timothy@apple.com>
1679
1680         Expose a function to set the value of an input element on behalf of the user.
1681         This function will dispatch the change event so the page is notified when autofill
1682         happens. Also dispatch a change event when a select element is changed by autofill.
1683
1684         <rdar://problem/6760590> Would like a way to detect a login form AutoFill from JavaScript
1685
1686         Reviewed by Darin Adler.
1687
1688         * WebCore.xcodeproj/project.pbxproj: Added the DOMHTMLInputElementPrivate.h header.
1689         * bindings/objc/DOMHTML.mm:
1690         (-[DOMHTMLSelectElement _activateItemAtIndex:]): Call setSelectedIndexByUser instead so
1691         a change event is fired. This method is called by Safari autofill.
1692         * dom/Document.cpp:
1693         (WebCore::Document::setFocusedNode): Use dispatchFormControlChangeEvent instead
1694         of dispatching the change event directly to be consistent.
1695         * html/HTMLFormControlElement.cpp:
1696         (WebCore::HTMLInputElement::setValueForUser): Added. Calls setValue with the sendChangeEvent
1697         (WebCore::HTMLInputElement::setValue): Added the optional sendChangeEvent argument. Mimics setChecked.
1698         * html/HTMLInputElement.h:
1699         * html/HTMLInputElement.idl: Added setValueForUser for non-JS languages.
1700         * html/InputElement.h: Added setValueForUser.
1701
1702 2009-12-02  Pavel Feldman  <pfeldman@dhcp-172-28-174-220.spb.corp.google.com>
1703
1704         Reviewed by Timothy Hatcher.
1705
1706         Web Inspector: DOM tree selection disappears upon page refresh.
1707
1708         https://bugs.webkit.org/show_bug.cgi?id=31142
1709
1710         Test: inspector/elements-panel-selection-on-refresh.html
1711
1712         * inspector/InjectedScriptHost.cpp:
1713         (WebCore::InjectedScriptHost::pushNodeByPathToFrontend):
1714         * inspector/InjectedScriptHost.h:
1715         * inspector/InjectedScriptHost.idl:
1716         * inspector/InspectorBackend.h:
1717         * inspector/InspectorController.cpp:
1718         (WebCore::InspectorController::close):
1719         (WebCore::InspectorController::releaseDOMAgent):
1720         (WebCore::InspectorController::resetScriptObjects):
1721         * inspector/InspectorDOMAgent.cpp:
1722         (WebCore::InspectorDOMAgent::~InspectorDOMAgent):
1723         (WebCore::InspectorDOMAgent::reset):
1724         (WebCore::InspectorDOMAgent::setDocument):
1725         (WebCore::InspectorDOMAgent::pushDocumentToFrontend):
1726         (WebCore::InspectorDOMAgent::nodeForPath):
1727         (WebCore::InspectorDOMAgent::pushNodePathToFrontend):
1728         * inspector/InspectorDOMAgent.h:
1729         * inspector/front-end/DOMAgent.js:
1730         (WebInspector.DOMNode.prototype._renumber):
1731         (WebInspector.DOMAgent.prototype._setDocument):
1732         * inspector/front-end/ElementsPanel.js:
1733         (WebInspector.ElementsPanel.prototype.reset):
1734         (WebInspector.ElementsPanel.prototype.setDocument.selectDefaultNode):
1735         (WebInspector.ElementsPanel.prototype.setDocument.selectLastSelectedNode):
1736         (WebInspector.ElementsPanel.prototype.setDocument):
1737         * inspector/front-end/InjectedScript.js:
1738         (InjectedScript.pushNodeByPathToFrontend):
1739         * inspector/front-end/InjectedScriptAccess.js:
1740
1741 2009-12-01  Dave Hyatt  <hyatt@apple.com>
1742
1743         Reviewed by Dan Bernstein.
1744
1745         https://bugs.webkit.org/show_bug.cgi?id=32045, make sure escape sequences work with
1746         all the @-rules we support.  When escape sequences are present, the lexical scanner
1747         just returns a generic token name: ATKEYWORD.  We have to process the escape sequences
1748         and then recheck against the rules we support with the final processed name.  If we
1749         find a match, we mutate the token value to the appropriate rule name token, e.g.,
1750         NAMESPACE_SYM.
1751
1752         Added fast/css/namespaces/namespaces-escapes.xml
1753
1754         * css/CSSParser.cpp:
1755         (WebCore::CSSParser::lex):
1756         (WebCore::CSSParser::recheckAtKeyword):
1757         (WebCore::CSSParser::text):
1758         * css/CSSParser.h:
1759
1760 2009-12-02  Anton Muhin  <antonm@chromium.org>
1761
1762         Reviewed by Adam Barth.:w
1763
1764         Allow to skip thread checks when accessing DOMDataStore for processes
1765         which run V8 in single thread mode.
1766         https://bugs.webkit.org/show_bug.cgi?id=31877
1767
1768         Should be covered by buildbots.
1769
1770         * bindings/v8/V8DOMMap.cpp:
1771         (WebCore::getDOMDataStore):
1772         (WebCore::enableFasterDOMStoreAccess):
1773         (WebCore::getDOMNodeMap):
1774         (WebCore::getDOMObjectMap):
1775         (WebCore::getActiveDOMObjectMap):
1776         (WebCore::getDOMSVGElementInstanceMap):
1777         (WebCore::getDOMSVGObjectWithContextMap):
1778         * bindings/v8/V8DOMMap.h:
1779
1780 2009-12-02  Yury Semikhatsky  <yurys@chromium.org>
1781
1782         Reviewed by Pavel Feldman.
1783
1784         Code clean up: remove ScriptObjectQuarantine.* as a whole.
1785
1786         https://bugs.webkit.org/show_bug.cgi?id=32060
1787
1788         * GNUmakefile.am:
1789         * WebCore.gypi:
1790         * WebCore.pro:
1791         * WebCore.vcproj/WebCore.vcproj:
1792         * WebCore.xcodeproj/project.pbxproj:
1793         * WebCoreSources.bkl:
1794         * bindings/js/JSBindingsAllInOne.cpp:
1795         * bindings/js/ScriptObjectQuarantine.cpp: Removed.
1796         * bindings/js/ScriptObjectQuarantine.h: Removed.
1797         * bindings/js/ScriptValue.cpp:
1798         (WebCore::ScriptValue::quarantineValue):
1799         * bindings/js/ScriptValue.h:
1800         * bindings/v8/ScriptObjectQuarantine.cpp: Removed.
1801         * bindings/v8/ScriptObjectQuarantine.h: Removed.
1802         * bindings/v8/ScriptValue.h:
1803         (WebCore::ScriptValue::quarantineValue):
1804         * inspector/ConsoleMessage.cpp:
1805         (WebCore::ConsoleMessage::ConsoleMessage):
1806         * inspector/InspectorController.cpp:
1807         * inspector/InspectorDatabaseResource.cpp:
1808         (WebCore::InspectorDatabaseResource::bind):
1809         * inspector/InspectorFrontend.cpp:
1810
1811 2009-12-02  Fumitoshi Ukai  <ukai@chromium.org>
1812
1813         Reviewed by Alexey Proskuryakov.
1814
1815         WebSocket handshake check query component of URL
1816         https://bugs.webkit.org/show_bug.cgi?id=31617
1817
1818         Tests: websocket/tests/url-with-credential.html
1819                websocket/tests/url-with-empty-query.html
1820                websocket/tests/url-with-fragment.html
1821                websocket/tests/url-with-query-for-no-query.html
1822                websocket/tests/url-with-query.html
1823
1824         * platform/KURLGoogle.cpp:
1825         (WebCore::KURL::query): returns a null if query is not specified and returns an empty if query is specified but empty.
1826         * websockets/WebSocketHandshake.cpp:
1827         (WebCore::resourceName): added. add query component to path if specified.
1828         (WebCore::WebSocketHandshake::clientLocation):
1829         (WebCore::WebSocketHandshake::clientHandshakeMessage):
1830
1831 2009-12-01  David Levin  <levin@chromium.org>
1832
1833         Reviewed by Eric Seidel.
1834
1835         Incorrect code in WebGLRenderingContext.cpp
1836         https://bugs.webkit.org/show_bug.cgi?id=32046
1837
1838         Fix incorrect code that happened to work. != has higher precendence than &.
1839         The simplest fix is to remove the "!= 0" which violates WebKit style
1840         guidelines anyway.
1841
1842         Also added periods to few comments in the same function.
1843
1844         * html/canvas/WebGLRenderingContext.cpp:
1845         (WebCore::WebGLRenderingContext::validateIndexArray):
1846
1847 2009-12-01  Kent Tamura  <tkent@chromium.org>
1848
1849         Reviewed by Darin Adler.
1850
1851         Change [Reflect] to [ConvertNullToNullString, Reflect] for min, max,
1852         pattern and step attributes of HTMLInputElement.
1853         https://bugs.webkit.org/show_bug.cgi?id=31708
1854
1855         * html/HTMLInputElement.idl:
1856
1857 2009-12-01  Chris Fleizach  <cfleizach@apple.com>
1858
1859         Reviewed by Darin Adler.
1860
1861         WAI-ARIA: implement support for ARIA drag and drop
1862         https://bugs.webkit.org/show_bug.cgi?id=32007
1863
1864         Test: platform/mac/accessibility/aria-drag-drop.html
1865
1866         * accessibility/AccessibilityObject.h:
1867         (WebCore::AccessibilityObject::supportsARIADropping):
1868         (WebCore::AccessibilityObject::supportsARIADragging):
1869         (WebCore::AccessibilityObject::isARIAGrabbed):
1870         (WebCore::AccessibilityObject::setARIAGrabbed):
1871         (WebCore::AccessibilityObject::determineARIADropEffects):
1872         * accessibility/AccessibilityRenderObject.cpp:
1873         (WebCore::AccessibilityRenderObject::supportsARIADropping):
1874         (WebCore::AccessibilityRenderObject::supportsARIADragging):
1875         (WebCore::AccessibilityRenderObject::isARIAGrabbed):
1876         (WebCore::AccessibilityRenderObject::setARIAGrabbed):
1877         (WebCore::AccessibilityRenderObject::determineARIADropEffects):
1878         * accessibility/AccessibilityRenderObject.h:
1879         * accessibility/mac/AccessibilityObjectWrapper.mm:
1880         (-[AccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
1881         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
1882         (-[AccessibilityObjectWrapper accessibilityIsAttributeSettable:]):
1883         (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
1884         * html/HTMLAttributeNames.in:
1885
1886 2009-12-01  Adam Barth  <abarth@webkit.org>
1887
1888         https://bugs.webkit.org/show_bug.cgi?id=21288
1889
1890         Unreviewed port of @sandbox to V8.
1891
1892         * bindings/v8/ScriptController.cpp:
1893         (WebCore::ScriptController::isEnabled):
1894         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1895         (WebCore::createWindow):
1896
1897 2009-12-01  Patrik Persson  <patrik.j.persson@ericsson.com>
1898
1899         Reviewed by Darin Adler.
1900
1901         Implement HTML5 sandbox attribute for iframes.
1902         http://www.w3.org/TR/html5/text-level-semantics.html#attr-iframe-sandbox
1903         https://bugs.webkit.org/show_bug.cgi?id=21288
1904
1905         Tests: fast/frames/sandboxed-iframe-attribute-parsing.html
1906                fast/frames/sandboxed-iframe-forms.html
1907                fast/frames/sandboxed-iframe-navigation-allowed.html
1908                fast/frames/sandboxed-iframe-navigation-parent.html
1909                fast/frames/sandboxed-iframe-navigation-targetlink.html
1910                fast/frames/sandboxed-iframe-navigation-windowopen.html
1911                fast/frames/sandboxed-iframe-plugins.html
1912                fast/frames/sandboxed-iframe-scripting.html
1913                fast/frames/sandboxed-iframe-storage.html
1914                http/tests/security/sandboxed-iframe-document-cookie.html
1915                http/tests/security/sandboxed-iframe-modify-self.html
1916                http/tests/security/xss-DENIED-sandboxed-iframe.html
1917                http/tests/xmlhttprequest/access-control-sandboxed-iframe-allow.html
1918                http/tests/xmlhttprequest/access-control-sandboxed-iframe-denied-without-wildcard.html
1919                http/tests/xmlhttprequest/access-control-sandboxed-iframe-denied.html
1920
1921         * bindings/js/JSDOMWindowCustom.cpp: sandboxing navigation
1922         (WebCore::createWindow):
1923         * bindings/js/ScriptController.cpp: sandboxing scripts
1924         (WebCore::ScriptController::isEnabled):
1925         * dom/Document.cpp:
1926         (WebCore::Document::processHttpEquiv):
1927         (WebCore::Document::cookie): raise exception when accessed from sandbox
1928         (WebCore::Document::setCookie): raise exception when accessed from sandbox
1929         (WebCore::Document::initSecurityContext): updae sandbox status
1930         (WebCore::Document::updateSandboxFlags):
1931         * dom/Document.h:
1932         * dom/Document.idl:
1933         * html/HTMLAppletElement.cpp: sandboxing applets
1934         (WebCore::HTMLAppletElement::createRenderer):
1935         (WebCore::HTMLAppletElement::renderWidgetForJSBindings):
1936         (WebCore::HTMLAppletElement::canEmbedJava):
1937         * html/HTMLAppletElement.h:
1938         * html/HTMLAttributeNames.in:
1939         * html/HTMLFrameOwnerElement.cpp: management of sandbox flags as stated in attribute
1940         (WebCore::HTMLFrameOwnerElement::HTMLFrameOwnerElement):
1941         (WebCore::HTMLFrameOwnerElement::setSandboxFlags):
1942         * html/HTMLFrameOwnerElement.h:
1943         (WebCore::HTMLFrameOwnerElement::sandboxFlags):
1944         * html/HTMLIFrameElement.cpp: sandbox attribute parsing
1945         (WebCore::parseSandboxAttribute):
1946         (WebCore::HTMLIFrameElement::parseMappedAttribute):
1947         * html/HTMLIFrameElement.idl:
1948         * inspector/InspectorController.cpp:
1949         (WebCore::InspectorController::getCookies):
1950         * loader/CrossOriginAccessControl.cpp:
1951         (WebCore::passesAccessControlCheck):
1952         * loader/FrameLoader.cpp:
1953         (WebCore::FrameLoader::FrameLoader):
1954         (WebCore::FrameLoader::init):
1955         (WebCore::FrameLoader::submitForm): sandboxing forms
1956         (WebCore::FrameLoader::requestObject): sandboxing plugins
1957         (WebCore::FrameLoader::shouldAllowNavigation): sandboxing navigation
1958         (WebCore::FrameLoader::updateSandboxFlags): propagation of sandbox flags
1959         * loader/FrameLoader.h:
1960         (WebCore::FrameLoader::ownerElementSandboxFlagsChanged):
1961         (WebCore::FrameLoader::isSandboxed):
1962         (WebCore::FrameLoader::sandboxFlags):
1963         * loader/FrameLoaderTypes.h:
1964         (WebCore::):
1965         * page/DOMWindow.cpp: disable storage and databases in sandboxed frames
1966         (WebCore::DOMWindow::sessionStorage):
1967         (WebCore::DOMWindow::localStorage):
1968         (WebCore::DOMWindow::openDatabase):
1969         * page/SecurityOrigin.cpp: added sandboxing status
1970         (WebCore::SecurityOrigin::SecurityOrigin):
1971         (WebCore::SecurityOrigin::canAccess):
1972         (WebCore::SecurityOrigin::canRequest):
1973         (WebCore::SecurityOrigin::toString):
1974         * page/SecurityOrigin.h:
1975         (WebCore::SecurityOrigin::setSandboxFlags):
1976         (WebCore::SecurityOrigin::isSandboxed):
1977         (WebCore::SecurityOrigin::canAccessDatabase):
1978         (WebCore::SecurityOrigin::canAccessStorage):
1979         * websockets/WebSocketChannel.cpp:
1980         (WebCore::WebSocketChannel::didReceiveData):
1981
1982 2009-12-01  Chris Fleizach  <cfleizach@apple.com>
1983
1984         Reviewed by David Kilzer.
1985
1986         ARIA: support a way to create a static text object
1987         https://bugs.webkit.org/show_bug.cgi?id=32030
1988
1989         Test: accessibility/aria-text-role.html
1990
1991         * accessibility/AccessibilityObject.cpp:
1992         (WebCore::createARIARoleMap):
1993         * accessibility/AccessibilityRenderObject.cpp:
1994         (WebCore::AccessibilityRenderObject::stringValue):
1995         (WebCore::AccessibilityRenderObject::isDescendantOfBarrenParent):
1996         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
1997         (WebCore::AccessibilityRenderObject::text):
1998         * accessibility/AccessibilityRenderObject.h:
1999
2000 2009-12-01  Oliver Hunt  <oliver@apple.com>
2001
2002         Reviewed by Maciej Stachowiak.
2003
2004         Inspector crashes when collecting on every allocation
2005         https://bugs.webkit.org/show_bug.cgi?id=32044
2006
2007         The crash is caused by the prototype wrapper object getting collected
2008         when allocating the object that is going to use it as a prototype.
2009         Because the only reference to the prototype wrapper is through the
2010         new object's Structure it does not get marked automatically.
2011
2012         * bindings/js/JSInspectedObjectWrapper.cpp:
2013         (WebCore::JSInspectedObjectWrapper::wrap):
2014         * bindings/js/JSInspectorCallbackWrapper.cpp:
2015         (WebCore::JSInspectorCallbackWrapper::wrap):
2016
2017 2009-12-01  Nikolas Zimmermann  <nzimmermann@rim.com>
2018
2019         Reviewed by Simon Fraser.
2020
2021         Add SVG animation test framework with 'snapshot' functionality
2022         https://bugs.webkit.org/show_bug.cgi?id=31897
2023
2024         Add 'sampleSVGAnimationForElementAtTime' method to the LayoutTestController,
2025         for the use within the new SVG animation test framework (LayoutTests/svg/animations/)
2026
2027         layoutTestController.sampleAnimationAtTime(<svg animation id>, <absolute time>, <svg element id>);
2028         to sample a svg animateMotion/animateColor/animate/set element at certain times.
2029
2030         After the desired SVG animation starts and calling the method above, it's immediately forwarded to
2031         the desired sampling time. After JS returns from the 'sampleSVGAnimationForElementAtTime' method
2032         a callback is fired used to sample the animation value at the target time. It's modelled similar
2033         to the CSS animation/transition testing framework, inspired by
2034         LayoutTests/animations/animation-test-helpers.js.
2035
2036         Though it has been extended to integrate within the fast/js/js-test-* framework, that's used for
2037         the SVG dynamic-updates tests, to simplify test creation, by utilizing script-tests/* only.
2038
2039         Adding a simple testcase testing the DRT methods, it will soon be extended to test animVal/baseVal
2040         interaction, while animating.
2041
2042         Test: svg/animations/animVal-basics.html
2043
2044         * WebCore.base.exp:
2045         * WebCore.xcodeproj/project.pbxproj:
2046         * svg/SVGDocumentExtensions.cpp:
2047         (WebCore::SVGDocumentExtensions::sampleAnimationAtTime):
2048         * svg/SVGDocumentExtensions.h:
2049         * svg/animation/SMILTimeContainer.cpp:
2050         (WebCore::SMILTimeContainer::SMILTimeContainer):
2051         (WebCore::SMILTimeContainer::sampleAnimationAtTime):
2052         (WebCore::SMILTimeContainer::updateAnimations):
2053         * svg/animation/SMILTimeContainer.h:
2054
2055 2009-12-01  Jens Alfke  <snej@chromium.org>
2056
2057         Reviewed by Darin Adler.
2058
2059         Add convenience methods to Element and QualifiedName that take
2060         char* instead of AtomicString, in preparation for removing the
2061         implicit conversion between the two types (30187).
2062         https://bugs.webkit.org/show_bug.cgi?id=31749
2063
2064         * dom/Element.cpp:
2065         (WebCore::Element::setCStringAttribute):  Equivalent to setAttribute.
2066         * dom/Element.h:
2067         * dom/QualifiedName.cpp:
2068         (WebCore::QualifiedName::init):  Shared impl of both constructors
2069         (WebCore::QualifiedName::QualifiedName):  New c'tor taking char*.
2070         * dom/QualifiedName.h:
2071         * platform/network/HTTPHeaderMap.cpp:
2072         (WebCore::CaseFoldingCStringTranslator):  Enables lookup by C string
2073         (WebCore::HTTPHeaderMap::get):  New variant that takes C string
2074         (WebCore::HTTPHeaderMap::contains):  New variant that takes C string
2075         (WebCore::HTTPHeaderMap::add):  New variant that takes C string
2076         * platform/network/HTTPHeaderMap.h:
2077         (WebCore::HTTPHeaderMap::get):
2078         (WebCore::HTTPHeaderMap::add):
2079         * platform/network/ResourceRequestBase.cpp:
2080         (WebCore::ResourceRequestBase::httpHeaderField):  New variant that takes C string
2081         * platform/network/ResourceRequestBase.h:
2082         (WebCore::ResourceRequestBase::setHTTPHeaderField):  Use symbolic names for headers
2083         * platform/network/ResourceResponseBase.cpp:
2084         (WebCore::ResourceResponseBase::httpHeaderField):  New variant that takes C string
2085         * platform/network/ResourceResponseBase.h:
2086
2087 2009-12-01  Alexey Proskuryakov  <ap@apple.com>
2088
2089         More Windows build fix.
2090
2091         * platform/network/cf/CredentialStorageCFNet.cpp:
2092         (WebCore::CredentialStorage::getFromPersistentStorage):
2093
2094 2009-12-01  Alexey Proskuryakov  <ap@apple.com>
2095
2096         Windows build fix.
2097
2098         * platform/network/cf/CredentialStorageCFNet.cpp: Include RetainPtr.h.
2099
2100 2009-12-01  Alexey Proskuryakov  <ap@apple.com>
2101
2102         Reviewed by Darin Adler.
2103
2104         https://bugs.webkit.org/show_bug.cgi?id=32036
2105         Implement CredentialStorage::getFromPersistentStorage for CFNetwork
2106
2107         * platform/network/cf/CredentialStorageCFNet.cpp:
2108         (WebCore::CredentialStorage::getFromPersistentStorage):
2109
2110 2009-12-01  Daniel Bates  <dbates@webkit.org>
2111
2112         Reviewed by Pavel Feldman.
2113
2114         https://bugs.webkit.org/show_bug.cgi?id=32001
2115
2116         Added missing localized strings (that I left out of the patch for bug #21554):
2117         %d × %d pixels
2118         %d × %d pixels (Natural: %d × %d pixels)
2119
2120         Also, changed formatting of these stings to conform with existing ones (added
2121         a space on both sides of the multiply sign).
2122
2123         * English.lproj/localizedStrings.js: Added stings.
2124         * inspector/front-end/ElementsTreeOutline.js:
2125         (WebInspector.ElementsTreeElement.prototype.createTooltipForImageNode):
2126
2127 2009-12-01  Dave Hyatt  <hyatt@apple.com>
2128
2129         Reviewed by Simon Fraser.
2130
2131         Fix for bug 32032, empty namespaces should be allowed in @namespace directives in CSS.
2132
2133         Added fast/css/namespaces/namespaces-empty.xml
2134
2135         * css/CSSStyleSheet.cpp:
2136         (WebCore::CSSStyleSheet::addNamespace):
2137         (WebCore::CSSStyleSheet::determineNamespace):
2138
2139 2009-12-01  Joseph Pecoraro  <joepeck@webkit.org>
2140
2141         Reviewed by Timothy Hatcher.
2142
2143         Web Inspector: Escape key in the Search Field should be more User Friendly
2144         https://bugs.webkit.org/show_bug.cgi?id=32005
2145
2146         * inspector/front-end/inspector.js:
2147         (WebInspector.loaded): add mousedown listener on the search field
2148         (WebInspector.searchFieldManualFocus): user clicked to focus on the search field
2149         (WebInspector.searchKeyDown): handle escape
2150
2151 2009-12-01  Dave Hyatt  <hyatt@apple.com>
2152
2153         Reviewed by David Kilzer.
2154
2155         @namespace directives need to use "maybe_space" in the "maybe_ns_prefix" portion of the grammar to match
2156         the spec.  Not doing so prevent comments from being used immmediately after the namespace prefix.
2157
2158         Added fast/css/namespaces-comments.xml
2159
2160         * css/CSSGrammar.y:
2161
2162 2009-12-01  Yael Aharon  <yael.aharon@nokia.com>
2163
2164         Reviewed by Timothy Hatcher.
2165
2166         Reloading WebInspector from context menu is closing it instead of reloading.
2167         https://bugs.webkit.org/show_bug.cgi?id=32004
2168
2169         When reloading WebInspector, don't delete its m_page.
2170
2171         * inspector/InspectorController.cpp:
2172         (WebCore::InspectorController::close):
2173
2174 2009-12-01  Steve Block  <steveblock@google.com>
2175
2176         Reviewed by Dimitri Glazkov.
2177
2178         Adds V8 bindings for Geolocation.
2179         https://bugs.webkit.org/show_bug.cgi?id=30206
2180
2181         Also adds Geolocation files to Chrome build files.
2182
2183         * WebCore.gyp/WebCore.gyp: Modified. Corrects list of Geolocation IDL files.
2184         * WebCore.gypi: Modified. Adds Geolocation files.
2185         * bindings/v8/DOMObjectsInclude.h: Modified. Adds Geolocation includes.
2186         * bindings/v8/DerivedSourcesAllInOne.cpp: Modified. Adds Geolocation files.
2187         * bindings/v8/V8Index.cpp: Modified. Includes Geolocation generated headers.
2188         * bindings/v8/V8Index.h: Modified. Adds Geolocation types to DOM_OBJECT_TYPES.
2189         * bindings/v8/custom/V8CoordinatesCustom.cpp: Added. Handles optional properties.
2190         * bindings/v8/custom/V8CustomBinding.h: Modified. Declares callbacks and getters.
2191         * bindings/v8/custom/V8CustomPositionCallback.cpp: Added.
2192         (WebCore::V8CustomPositionCallback::V8CustomPositionCallback): Added. Constructor.
2193         (WebCore::V8CustomPositionCallback::~V8CustomPositionCallback): Added. Destructor.
2194         (WebCore::V8CustomPositionCallback::handleEvent): Added. Invokes callback.
2195         * bindings/v8/custom/V8CustomPositionCallback.h: Added.
2196         (WebCore::V8CustomPositionCallback::create): Added. Factory method.
2197         * bindings/v8/custom/V8CustomPositionErrorCallback.cpp: Added.
2198         (WebCore::V8CustomPositionErrorCallback::V8CustomPositionErrorCallback): Added. Constructor.
2199         (WebCore::V8CustomPositionErrorCallback::~V8CustomPositionErrorCallback): Added. Destructor.
2200         (WebCore::V8CustomPositionErrorCallback::handleEvent): Added. Invokes callback.
2201         * bindings/v8/custom/V8CustomPositionErrorCallback.h: Added.
2202         (WebCore::V8CustomPositionErrorCallback::create): Added. Factory method.
2203         * bindings/v8/custom/V8GeolocationCustom.cpp: Added.
2204         (WebCore::throwTypeMismatchException): Added. Throws a type mismatch error.
2205         (WebCore::createPositionCallback): Added. Handles type checking for successCallback argument.
2206         (WebCore::createPositionErrorCallback): Added. Handles type checking for errorCallback argument.
2207         (WebCore::createPositionOptions): Added. Handles type checking for positionOptions argument.
2208
2209 2009-12-01  Yury Semikhatsky  <yurys@chromium.org>
2210
2211         Reviewed by Adam Barth.
2212
2213         Provide a way to get ScriptState for the inspected page.
2214
2215         https://bugs.webkit.org/show_bug.cgi?id=32020
2216
2217         * bindings/v8/ScriptController.cpp:
2218         (WebCore::ScriptController::mainWorldScriptState):
2219         * bindings/v8/ScriptController.h:
2220         * bindings/v8/ScriptState.cpp:
2221         (WebCore::scriptStateFromPage):
2222
2223 2009-12-01  Chris Marrin  <cmarrin@apple.com>
2224
2225         Reviewed by Adam Roben.
2226
2227         Changed mallocs to fastMallocs and frees to fastFrees in GraphicsContext3D. Also added error returns
2228         https://bugs.webkit.org/show_bug.cgi?id=30778
2229
2230         * platform/graphics/mac/GraphicsContext3DMac.cpp:
2231         (WebCore::GraphicsContext3D::getProgramInfoLog):
2232         (WebCore::GraphicsContext3D::getShaderInfoLog):
2233         (WebCore::GraphicsContext3D::getShaderSource):
2234         (WebCore::imageToTexture):
2235
2236 2009-12-01  Mads Ager  <ager@chromium.org>
2237
2238         Reviewed by Eric Seidel.
2239
2240         [V8] Don't crash in DOMWindow event getter in OOM situations
2241         https://bugs.webkit.org/show_bug.cgi?id=32017
2242
2243         Add missing null handle checks in DOMWindow event property
2244         accessors.  V8Proxy::context(frame) can return a null handle in
2245         OOM situations either if failing to initialize a context or if an
2246         OOM is handled gracefully and javascript is disabled.
2247
2248         No new tests because we don't have a good way to test
2249         out-of-memory bugs.
2250
2251         * bindings/v8/custom/V8DOMWindowCustom.cpp:
2252         (WebCore::ACCESSOR_GETTER):
2253         (WebCore::ACCESSOR_SETTER):
2254
2255 2009-12-01  Chris Marrin  <cmarrin@apple.com>
2256
2257         Reviewed by Oliver Hunt.
2258
2259         Updated HTMLCanvasElement to accept "experimental-webgl" as the context name.
2260         https://bugs.webkit.org/show_bug.cgi?id=31672
2261
2262         * html/HTMLCanvasElement.cpp:
2263         (WebCore::HTMLCanvasElement::getContext):
2264
2265 2009-12-01  Pavel Feldman  <pfeldman@dhcp-172-28-174-220.spb.corp.google.com>
2266
2267         Not reviewed: chromium build fix, added missing import.
2268
2269         * inspector/InspectorFrontendHost.cpp:
2270
2271 2009-12-01  Pavel Feldman  <pfeldman@chromium.org>
2272
2273         Not reviewed: fix windows build via unexcluding generated files from
2274         project.
2275
2276         * WebCore.vcproj/WebCore.vcproj:
2277
2278 2009-12-01  Mark Rowe  <mrowe@apple.com>
2279
2280         Stop copying IDL files in to the WebCore framework wrapper.
2281
2282         * WebCore.xcodeproj/project.pbxproj:
2283
2284 2009-12-01  Mark Rowe  <mrowe@apple.com>
2285
2286         Fix the Tiger build by making the Xcode project compatible with Xcode 2.4.
2287
2288         This was probably broken by hand-editing the project file as Xcode itself
2289         knows how to keep project files to a backwards-compatible subset of its format.
2290
2291         * WebCore.xcodeproj/project.pbxproj:
2292
2293 2009-12-01  Pavel Feldman  <pfeldman@chromium.org>
2294
2295         Not reviewed: windows build fix (bad vcproj in r51528).
2296
2297         * WebCore.vcproj/WebCore.vcproj:
2298
2299 2009-11-27  Pavel Feldman  <pfeldman@dhcp-172-28-174-220.spb.corp.google.com>
2300
2301         Reviewed by Timothy Hatcher.
2302
2303         Web Inspector: Split InspectorBackend into three parts: backend,
2304         injected script host and frontend host.
2305         
2306         https://bugs.webkit.org/show_bug.cgi?id=31888
2307
2308         * DerivedSources.make:
2309         * GNUmakefile.am:
2310         * WebCore.gypi:
2311         * WebCore.pro:
2312         * WebCore.vcproj/WebCore.vcproj:
2313         * WebCore.xcodeproj/project.pbxproj:
2314         * WebCoreSources.bkl:
2315         * bindings/js/JSBindingsAllInOne.cpp:
2316         * bindings/js/JSInspectorBackendCustom.cpp: Removed.
2317         * bindings/js/JSInspectorFrontendHostCustom.cpp: Added.
2318         (WebCore::JSInspectorFrontendHost::search):
2319         (WebCore::JSInspectorFrontendHost::setting):
2320         (WebCore::JSInspectorFrontendHost::setSetting):
2321         * bindings/js/ScriptObject.cpp:
2322         (WebCore::ScriptGlobalObject::set):
2323         * bindings/js/ScriptObject.h:
2324         * bindings/v8/DOMObjectsInclude.h:
2325         * bindings/v8/DerivedSourcesAllInOne.cpp:
2326         * bindings/v8/ScriptObject.cpp:
2327         (WebCore::ScriptGlobalObject::set):
2328         * bindings/v8/ScriptObject.h:
2329         * bindings/v8/V8Index.cpp:
2330         * bindings/v8/V8Index.h:
2331         * bindings/v8/custom/V8CustomBinding.h:
2332         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp: Added.
2333         (WebCore::CALLBACK_FUNC_DECL):
2334         * bindings/v8/custom/V8InspectorBackendCustom.cpp: Removed.
2335         * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp: Added.
2336         (WebCore::CALLBACK_FUNC_DECL):
2337         * inspector/InjectedScriptHost.cpp: Added.
2338         (WebCore::InjectedScriptHost::InjectedScriptHost):
2339         (WebCore::InjectedScriptHost::~InjectedScriptHost):
2340         (WebCore::InjectedScriptHost::copyText):
2341         (WebCore::InjectedScriptHost::nodeForId):
2342         (WebCore::InjectedScriptHost::wrapObject):
2343         (WebCore::InjectedScriptHost::unwrapObject):
2344         (WebCore::InjectedScriptHost::pushNodePathToFrontend):
2345         (WebCore::InjectedScriptHost::addNodesToSearchResult):
2346         (WebCore::InjectedScriptHost::currentCallFrame):
2347         (WebCore::InjectedScriptHost::databaseForId):
2348         (WebCore::InjectedScriptHost::selectDatabase):
2349         (WebCore::InjectedScriptHost::selectDOMStorage):
2350         (WebCore::InjectedScriptHost::reportDidDispatchOnInjectedScript):
2351         (WebCore::InjectedScriptHost::inspectorDOMAgent):
2352         (WebCore::InjectedScriptHost::inspectorFrontend):
2353         * inspector/InjectedScriptHost.h: Added.
2354         (WebCore::InjectedScriptHost::create):
2355         (WebCore::InjectedScriptHost::inspectorController):
2356         (WebCore::InjectedScriptHost::disconnectController):
2357         * inspector/InjectedScriptHost.idl: Added.
2358         * inspector/InspectorBackend.cpp:
2359         (WebCore::InspectorBackend::InspectorBackend):
2360         (WebCore::InspectorBackend::storeLastActivePanel):
2361         (WebCore::InspectorBackend::toggleNodeSearch):
2362         (WebCore::InspectorBackend::resourceTrackingEnabled):
2363         (WebCore::InspectorBackend::debuggerEnabled):
2364         (WebCore::InspectorBackend::enableDebugger):
2365         (WebCore::InspectorBackend::disableDebugger):
2366         (WebCore::InspectorBackend::addBreakpoint):
2367         (WebCore::InspectorBackend::updateBreakpoint):
2368         (WebCore::InspectorBackend::removeBreakpoint):
2369         (WebCore::InspectorBackend::pauseInDebugger):
2370         (WebCore::InspectorBackend::resumeDebugger):
2371         (WebCore::InspectorBackend::stepOverStatementInDebugger):
2372         (WebCore::InspectorBackend::stepIntoStatementInDebugger):
2373         (WebCore::InspectorBackend::stepOutOfFunctionInDebugger):
2374         (WebCore::InspectorBackend::pauseOnExceptions):
2375         (WebCore::InspectorBackend::setPauseOnExceptions):
2376         (WebCore::InspectorBackend::profilerEnabled):
2377         (WebCore::InspectorBackend::enableProfiler):
2378         (WebCore::InspectorBackend::disableProfiler):
2379         (WebCore::InspectorBackend::startProfiling):
2380         (WebCore::InspectorBackend::stopProfiling):
2381         (WebCore::InspectorBackend::getProfileHeaders):
2382         (WebCore::InspectorBackend::getProfile):
2383         (WebCore::InspectorBackend::currentCallFrame):
2384         (WebCore::InspectorBackend::highlightDOMNode):
2385         (WebCore::InspectorBackend::hideDOMNodeHighlight):
2386         (WebCore::InspectorBackend::getCookies):
2387         (WebCore::InspectorBackend::deleteCookie):
2388         (WebCore::InspectorBackend::didEvaluateForTestInFrontend):
2389         (WebCore::InspectorBackend::nodeForId):
2390         * inspector/InspectorBackend.h:
2391         (WebCore::InspectorBackend::create):
2392         * inspector/InspectorBackend.idl:
2393         * inspector/InspectorController.cpp:
2394         (WebCore::InspectorController::InspectorController):
2395         (WebCore::InspectorController::~InspectorController):
2396         (WebCore::InspectorController::inspectedPageDestroyed):
2397         (WebCore::InspectorController::windowScriptObjectAvailable):
2398         * inspector/InspectorController.h:
2399         (WebCore::InspectorController::inspectorFrontendHost):
2400         (WebCore::InspectorController::injectedScriptHost):
2401         * inspector/InspectorFrontendHost.cpp: Added.
2402         (WebCore::InspectorFrontendHost::InspectorFrontendHost):
2403         (WebCore::InspectorFrontendHost::~InspectorFrontendHost):
2404         (WebCore::InspectorFrontendHost::loaded):
2405         (WebCore::InspectorFrontendHost::attach):
2406         (WebCore::InspectorFrontendHost::detach):
2407         (WebCore::InspectorFrontendHost::closeWindow):
2408         (WebCore::InspectorFrontendHost::windowUnloading):
2409         (WebCore::InspectorFrontendHost::setAttachedWindowHeight):
2410         (WebCore::InspectorFrontendHost::moveWindowBy):
2411         (WebCore::InspectorFrontendHost::localizedStringsURL):
2412         (WebCore::InspectorFrontendHost::hiddenPanels):
2413         (WebCore::InspectorFrontendHost::platform):
2414         (WebCore::InspectorFrontendHost::port):
2415         (WebCore::InspectorFrontendHost::addResourceSourceToFrame):
2416         (WebCore::InspectorFrontendHost::addSourceToFrame):
2417         * inspector/InspectorFrontendHost.h: Added.
2418         (WebCore::InspectorFrontendHost::create):
2419         (WebCore::InspectorFrontendHost::inspectorController):
2420         (WebCore::InspectorFrontendHost::disconnectController):
2421         * inspector/InspectorFrontendHost.idl: Added.
2422         * inspector/front-end/Breakpoint.js:
2423         (WebInspector.Breakpoint.prototype.set condition):
2424         * inspector/front-end/BreakpointsSidebarPane.js:
2425         (WebInspector.BreakpointsSidebarPane.prototype.addBreakpoint):
2426         (WebInspector.BreakpointsSidebarPane.prototype.removeBreakpoint):
2427         (WebInspector.BreakpointsSidebarPane.prototype._breakpointEnableChanged):
2428         * inspector/front-end/ConsoleView.js:
2429         (WebInspector.ConsoleView.prototype.clearMessages):
2430         * inspector/front-end/CookieItemsView.js:
2431         (WebInspector.CookieItemsView.prototype._deleteCookieCallback):
2432         * inspector/front-end/DOMAgent.js:
2433         (WebInspector.DOMAgent.prototype.getChildNodesAsync):
2434         (WebInspector.DOMAgent.prototype.setAttributeAsync):
2435         (WebInspector.DOMAgent.prototype.removeAttributeAsync):
2436         (WebInspector.DOMAgent.prototype.setTextNodeValueAsync):
2437         (WebInspector.Cookies.getCookiesAsync):
2438         (WebInspector.EventListeners.getEventListenersForNodeAsync):
2439         * inspector/front-end/DOMStorage.js:
2440         (WebInspector.DOMStorage.prototype.getEntries):
2441         (WebInspector.DOMStorage.prototype.setItem):
2442         (WebInspector.DOMStorage.prototype.removeItem):
2443         * inspector/front-end/Database.js:
2444         (WebInspector.Database.prototype.getTableNames):
2445         * inspector/front-end/ElementsPanel.js:
2446         (WebInspector.ElementsPanel.this.treeOutline.focusedNodeChanged):
2447         (WebInspector.ElementsPanel.prototype.hide):
2448         (WebInspector.ElementsPanel.prototype.reset):
2449         (WebInspector.ElementsPanel.prototype.handleCopyEvent):
2450         (WebInspector.ElementsPanel.prototype._nodeSearchButtonClicked):
2451         * inspector/front-end/ElementsTreeOutline.js:
2452         (WebInspector.ElementsTreeOutline.prototype.set focusedDOMNode.restoreHighlightToHoveredNode):
2453         (WebInspector.ElementsTreeOutline.prototype.set focusedDOMNode):
2454         ():
2455         * inspector/front-end/EventListenersSidebarPane.js:
2456         (WebInspector.EventListenersSidebarPane.prototype):
2457         * inspector/front-end/InjectedScript.js:
2458         (InjectedScript._evaluateAndWrap):
2459         (InjectedScript.performSearch.addNodesToResults):
2460         (InjectedScript.getCallFrames):
2461         (InjectedScript._callFrameForId):
2462         (InjectedScript._clearConsoleMessages):
2463         (InjectedScript._inspectObject):
2464         (InjectedScript._copy):
2465         (InjectedScript._ensureCommandLineAPIInstalled):
2466         (InjectedScript._window):
2467         (InjectedScript._nodeForId):
2468         (InjectedScript._objectForId):
2469         (InjectedScript.pushNodeToFrontend):
2470         (InjectedScript.executeSql):
2471         (InjectedScript.executeSql.errorCallback):
2472         (InjectedScript.executeSql.queryTransaction):
2473         * inspector/front-end/InjectedScriptAccess.js:
2474         (InjectedScriptAccess._installHandler.InjectedScriptAccess.methodName):
2475         (InjectedScriptAccess._installHandler):
2476         * inspector/front-end/InspectorBackendStub.js: Added.
2477         (.WebInspector.InspectorBackendStub):
2478         (.WebInspector.InspectorBackendStub.prototype.wrapCallback):
2479         (.WebInspector.InspectorBackendStub.prototype.platform):
2480         (.WebInspector.InspectorBackendStub.prototype.port):
2481         (.WebInspector.InspectorBackendStub.prototype.closeWindow):
2482         (.WebInspector.InspectorBackendStub.prototype.attach):
2483         (.WebInspector.InspectorBackendStub.prototype.detach):
2484         (.WebInspector.InspectorBackendStub.prototype.storeLastActivePanel):
2485         (.WebInspector.InspectorBackendStub.prototype.clearMessages):
2486         (.WebInspector.InspectorBackendStub.prototype.searchingForNode):
2487         (.WebInspector.InspectorBackendStub.prototype.search):
2488         (.WebInspector.InspectorBackendStub.prototype.toggleNodeSearch):
2489         (.WebInspector.InspectorBackendStub.prototype.setAttachedWindowHeight):
2490         (.WebInspector.InspectorBackendStub.prototype.moveByUnrestricted):
2491         (.WebInspector.InspectorBackendStub.prototype.addResourceSourceToFrame):
2492         (.WebInspector.InspectorBackendStub.prototype.addSourceToFrame):
2493         (.WebInspector.InspectorBackendStub.prototype.getResourceDocumentNode):
2494         (.WebInspector.InspectorBackendStub.prototype.highlightDOMNode):
2495         (.WebInspector.InspectorBackendStub.prototype.hideDOMNodeHighlight):
2496         (.WebInspector.InspectorBackendStub.prototype.inspectedWindow):
2497         (.WebInspector.InspectorBackendStub.prototype.loaded):
2498         (.WebInspector.InspectorBackendStub.prototype.localizedStringsURL):
2499         (.WebInspector.InspectorBackendStub.prototype.windowUnloading):
2500         (.WebInspector.InspectorBackendStub.prototype.hiddenPanels):
2501         (.WebInspector.InspectorBackendStub.prototype.debuggerEnabled):
2502         (.WebInspector.InspectorBackendStub.prototype.enableResourceTracking):
2503         (.WebInspector.InspectorBackendStub.prototype.disableResourceTracking):
2504         (.WebInspector.InspectorBackendStub.prototype.resourceTrackingEnabled):
2505         (.WebInspector.InspectorBackendStub.prototype.enableDebugger):
2506         (.WebInspector.InspectorBackendStub.prototype.disableDebugger):
2507         (.WebInspector.InspectorBackendStub.prototype.addBreakpoint):
2508         (.WebInspector.InspectorBackendStub.prototype.removeBreakpoint):
2509         (.WebInspector.InspectorBackendStub.prototype.updateBreakpoint):
2510         (.WebInspector.InspectorBackendStub.prototype.pauseInDebugger):
2511         (.WebInspector.InspectorBackendStub.prototype.pauseOnExceptions):
2512         (.WebInspector.InspectorBackendStub.prototype.setPauseOnExceptions):
2513         (.WebInspector.InspectorBackendStub.prototype.resumeDebugger):
2514         (.WebInspector.InspectorBackendStub.prototype.profilerEnabled):
2515         (.WebInspector.InspectorBackendStub.prototype.enableProfiler):
2516         (.WebInspector.InspectorBackendStub.prototype.disableProfiler):
2517         (.WebInspector.InspectorBackendStub.prototype.startProfiling):
2518         (.WebInspector.InspectorBackendStub.prototype.stopProfiling):
2519         (.WebInspector.InspectorBackendStub.prototype.getProfileHeaders):
2520         (.WebInspector.InspectorBackendStub.prototype.getProfile):
2521         (.WebInspector.InspectorBackendStub.prototype.takeHeapSnapshot):
2522         (.WebInspector.InspectorBackendStub.prototype.databaseTableNames):
2523         (.WebInspector.InspectorBackendStub.prototype.stepIntoStatementInDebugger):
2524         (.WebInspector.InspectorBackendStub.prototype.stepOutOfFunctionInDebugger):
2525         (.WebInspector.InspectorBackendStub.prototype.stepOverStatementInDebugger):
2526         (.WebInspector.InspectorBackendStub.prototype.setSetting):
2527         (.WebInspector.InspectorBackendStub.prototype.dispatchOnInjectedScript):
2528         (.WebInspector.InspectorBackendStub.prototype.releaseWrapperObjectGroup):
2529         (.WebInspector.InspectorBackendStub.prototype.setting):
2530         * inspector/front-end/InspectorControllerStub.js:
2531         * inspector/front-end/InspectorFrontendHostStub.js: Added.
2532         (.WebInspector.InspectorFrontendHostStub):
2533         (.WebInspector.InspectorFrontendHostStub.prototype.platform):
2534         (.WebInspector.InspectorFrontendHostStub.prototype.port):
2535         (.WebInspector.InspectorFrontendHostStub.prototype.closeWindow):
2536         (.WebInspector.InspectorFrontendHostStub.prototype.attach):
2537         (.WebInspector.InspectorFrontendHostStub.prototype.detach):
2538         (.WebInspector.InspectorFrontendHostStub.prototype.search):
2539         (.WebInspector.InspectorFrontendHostStub.prototype.setAttachedWindowHeight):
2540         (.WebInspector.InspectorFrontendHostStub.prototype.moveWindowBy):
2541         (.WebInspector.InspectorFrontendHostStub.prototype.addResourceSourceToFrame):
2542         (.WebInspector.InspectorFrontendHostStub.prototype.addSourceToFrame):
2543         (.WebInspector.InspectorFrontendHostStub.prototype.loaded):
2544         (.WebInspector.InspectorFrontendHostStub.prototype.localizedStringsURL):
2545         (.WebInspector.InspectorFrontendHostStub.prototype.hiddenPanels):
2546         (.WebInspector.InspectorFrontendHostStub.prototype.setSetting):
2547         (.WebInspector.InspectorFrontendHostStub.prototype.setting):
2548         * inspector/front-end/ProfileView.js:
2549         (WebInspector.CPUProfileView):
2550         (WebInspector.CPUProfileType.prototype.buttonClicked):
2551         * inspector/front-end/ProfilesPanel.js:
2552         (WebInspector.ProfilesPanel.prototype._updateInterface):
2553         (WebInspector.ProfilesPanel.prototype._enableProfiling):
2554         (WebInspector.ProfilesPanel.prototype._toggleProfiling):
2555         * inspector/front-end/ResourcesPanel.js:
2556         (WebInspector.ResourcesPanel.prototype.reset):
2557         (WebInspector.ResourcesPanel.prototype._toggleLargerResources):
2558         (WebInspector.ResourcesPanel.prototype._enableResourceTracking):
2559         (WebInspector.ResourcesPanel.prototype._toggleResourceTracking):
2560         * inspector/front-end/ScriptView.js:
2561         (WebInspector.ScriptView.prototype.setupSourceFrameIfNeeded):
2562         * inspector/front-end/ScriptsPanel.js:
2563         (WebInspector.ScriptsPanel.prototype.show):
2564         (WebInspector.ScriptsPanel.prototype.addScript):
2565         (WebInspector.ScriptsPanel.prototype.attachDebuggerWhenShown):
2566         (WebInspector.ScriptsPanel.prototype.reset):
2567         (WebInspector.ScriptsPanel.prototype.canShowResource):
2568         (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
2569         (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu):
2570         (WebInspector.ScriptsPanel.prototype._updatePauseOnExceptionsButton):
2571         (WebInspector.ScriptsPanel.prototype._updateDebuggerButtons):
2572         (WebInspector.ScriptsPanel.prototype._enableDebugging):
2573         (WebInspector.ScriptsPanel.prototype._toggleDebugging):
2574         (WebInspector.ScriptsPanel.prototype._togglePauseOnExceptions):
2575         (WebInspector.ScriptsPanel.prototype._togglePause):
2576         (WebInspector.ScriptsPanel.prototype._stepOverClicked):
2577         (WebInspector.ScriptsPanel.prototype._stepIntoClicked):
2578         (WebInspector.ScriptsPanel.prototype._stepOutClicked):
2579         * inspector/front-end/SourceView.js:
2580         (WebInspector.SourceView.prototype.setupSourceFrameIfNeeded):
2581         (WebInspector.SourceView.prototype.performSearch.findSearchMatches):
2582         (WebInspector.SourceView.prototype.performSearch):
2583         * inspector/front-end/StylesSidebarPane.js:
2584         (WebInspector.StylesSidebarPane.prototype._changeColorFormat):
2585         * inspector/front-end/TestController.js:
2586         (WebInspector.TestController.prototype.notifyDone):
2587         * inspector/front-end/TimelinePanel.js:
2588         (WebInspector.TimelinePanel.prototype._toggleTimelineButtonClicked):
2589         * inspector/front-end/WatchExpressionsSidebarPane.js:
2590         (WebInspector.WatchExpressionsSection.prototype.update):
2591         (WebInspector.WatchExpressionsSection.prototype.loadSavedExpressions):
2592         (WebInspector.WatchExpressionsSection.prototype.saveExpressions):
2593         * inspector/front-end/WebKit.qrc:
2594         * inspector/front-end/inspector.html:
2595         * inspector/front-end/inspector.js:
2596         (WebInspector.pendingDispatches.0.get platform):
2597         (WebInspector.get port):
2598         (WebInspector.set currentPanel):
2599         (WebInspector._createPanels):
2600         (WebInspector._loadPreferences):
2601         (WebInspector.set attached):
2602         (WebInspector._updateHoverHighlight):
2603         (WebInspector.loaded):
2604         (windowLoaded):
2605         (WebInspector.windowUnload):
2606         (WebInspector.close):
2607         (WebInspector.toolbarDrag):
2608         (WebInspector.UIString):
2609
2610 2009-11-30  Shinichiro Hamaji  <hamaji@chromium.org>
2611
2612         Reviewed by Dan Bernstein.
2613
2614         css2.1/t1205-c566-list-stl-00-e-ag.html is failing
2615         https://bugs.webkit.org/show_bug.cgi?id=23264
2616         css2.1/t1205-c565-list-pos-00-b.html is failing
2617         https://bugs.webkit.org/show_bug.cgi?id=23263
2618
2619         Ignore whitespaces after list markers.
2620         Rendering of this was already done for the case where inside=false.
2621         This fixes the rendering of inside=true case and calcInlinePrefWidths.
2622
2623         Test: fast/lists/calc-width-with-space.html
2624
2625         * rendering/RenderBlock.cpp:
2626         (WebCore::RenderBlock::calcInlinePrefWidths):
2627         * rendering/RenderBlockLineLayout.cpp:
2628         (WebCore::RenderBlock::findNextLineBreak):
2629
2630 2009-11-30  Fumitoshi Ukai  <ukai@chromium.org>
2631
2632         Unreviewed Chromium build fix introduced by r51212
2633
2634         Fix scriptStateFromNode and ScriptStateFromPage to take DOMWrapperWorld
2635         as the first argument.
2636         Move mainThreadNormalWorld() to ScriptState.{h,cpp}.
2637         Add debuggerWorld() and pluginWorld() in ScriptState.h.
2638
2639         * bindings/v8/ScriptController.cpp:
2640         * bindings/v8/ScriptController.h:
2641         * bindings/v8/ScriptState.cpp:
2642         (WebCore::scriptStateFromNode):
2643         (WebCore::scriptStateFromPage):
2644         (WebCore::mainThreadNormalWorld):
2645         * bindings/v8/ScriptState.h:
2646         (WebCore::debuggerWorld):
2647         (WebCore::pluginWorld):
2648
2649 2009-11-30  Enrica Casucci  <enrica@apple.com>
2650
2651         Reviewed by Darin Adler.
2652
2653         Can focus but not type into content editable block that contains only non-editable content.
2654         <rdar://problem/5982901>
2655         https://bugs.webkit.org/show_bug.cgi?id=31750
2656         
2657         The goal is to change the way we choose a visible position
2658         after hit detection, by preferring a visually equivalent editable
2659         position if available. By doing this, it is possible to add content
2660         to an editable block that initially contains only non editable elements.
2661
2662         Test: editing/selection/mixed-editability-10.html
2663
2664         * WebCore.base.exp: Changed to match the new signature of downstream
2665         and upstream in the Position class.
2666         * dom/Position.cpp:
2667         (WebCore::Position::atEditingBoundary): Added.
2668         (WebCore::Position::upstream): Modified to allow to cross the boundary
2669         between editable and non editable content if required.
2670         (WebCore::Position::downstream): Modified to allow to cross the boundary
2671         between editable and non editable content if required.
2672         (WebCore::Position::isCandidate): Modified to qualify as candidates positions
2673         that are at the editability boundary.
2674         (WebCore::Position::getInlineBoxAndOffset): Modified to retrieve the inline box
2675         to be used in calculating the caret rectangle.
2676         * dom/Position.h:
2677         (WebCore::Position::):
2678         * dom/PositionIterator.cpp:
2679         (WebCore::PositionIterator::atEditingBoundary): Added.
2680         (WebCore::PositionIterator::isCandidate): Modified to qualify as candidates positions
2681         that are at the editability boundary.
2682         * dom/PositionIterator.h:
2683         * editing/htmlediting.cpp:
2684         (WebCore::firstEditablePositionAfterPositionInRoot): Modified to accept not only
2685         descendants of the editable container, but the container itself.
2686         (WebCore::lastEditablePositionBeforePositionInRoot): Modified to accept not only
2687         descendants of the editable container, but the container itself.
2688         * rendering/RenderObject.cpp:
2689         (WebCore::RenderObject::createVisiblePosition): Added logic to prefer an editable position,
2690         if available.
2691         * rendering/RenderText.cpp:
2692         (WebCore::RenderText::isAllCollapsibleWhitespace): Added.
2693         * rendering/RenderText.h:
2694
2695 2009-11-30  Kevin Ollivier  <kevino@theolliviers.com>
2696
2697         wx build fix, add header needed for wx build.
2698
2699         * css/CSSFontFaceSrcValue.cpp:
2700
2701 2009-11-30  Mark Rowe  <mrowe@apple.com>
2702
2703         Reviewed by David Kilzer.
2704
2705         <rdar://problem/7424387> WebCore binary missing symbols when built for x86_64 from a machine that cannot run x86_64 binaries
2706
2707         The check for whether WTF_USE_PLUGIN_HOST_PROCESS is defined occurs under the native architecture of the build machine.
2708         If that is 32-bit then WTF_USE_PLUGIN_HOST_PROCESS will not be defined.  We work around this by forcing the check to
2709         be performed against the x86_64 architecture.
2710
2711         * DerivedSources.make:
2712
2713 2009-11-30  Beth Dakin  <bdakin@apple.com>
2714
2715         Reviewed by Oliver Hunt.
2716
2717         Fix for https://bugs.webkit.org/show_bug.cgi?id=32000 Crash in 
2718         Safari caused by extreme column-gap and column-width values 
2719         -and corresponding-
2720         <rdar://problem/7425433>
2721
2722         Prevent desiredColumnCount from being less than 1 since it is used 
2723         as a divisor.
2724         * rendering/RenderBlock.cpp:
2725         (WebCore::RenderBlock::calcColumnWidth):
2726
2727 2009-11-30  Alexey Proskuryakov  <ap@apple.com>
2728
2729         Reviewed by Oliver Hunt.
2730
2731         https://bugs.webkit.org/show_bug.cgi?id=31659
2732         Connection must be closed in case of Web Socket handshake error
2733
2734         The network connection was closed, but the close event wasn't dispatched.
2735
2736         Tested by websocket/tests/handshake-error.html, which is un-skipped now.
2737
2738         * platform/network/cf/SocketStreamHandleCFNet.cpp: (WebCore::SocketStreamHandle::platformClose):
2739         Call client didHandle() method. This looks strange in CFNetwork implementation, because
2740         it's the client that asked to close the stream, so it shouldn't need the callback. It makes
2741         more sense in cross-process implementation, because closing is async there.
2742
2743 2009-11-30  Gavin Barraclough  <barraclough@apple.com>
2744
2745         Reviewed by Geoff Garen.
2746
2747         Bug 31859 - Make world selection for JSC IsolatedWorlds automagical.
2748
2749         WebCore presently has to explicitly specify the world before entering into JSC,
2750         which is a little fragile (particularly since property access via a
2751         getter/setter might invoke execution). Instead derive the current world from
2752         the lexical global object.
2753
2754         Remove the last uses of mainThreadCurrentWorld(), so the world is always obtained via
2755         currentWorld().  Switch this to obtain the world from the ExecsState's lexical global
2756         object instead.  Remove the call/construct/evaluate 'InWorld' methods, since these
2757         are no longer necessary.
2758
2759         * WebCore.base.exp:
2760         * bindings/js/JSCallbackData.cpp:
2761         (WebCore::JSCallbackData::invokeCallback):
2762         * bindings/js/JSCallbackData.h:
2763         (WebCore::JSCallbackData::JSCallbackData):
2764         * bindings/js/JSCustomXPathNSResolver.cpp:
2765         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
2766         * bindings/js/JSDOMBinding.cpp:
2767         (WebCore::currentWorld):
2768         (WebCore::mainThreadNormalWorld):
2769         * bindings/js/JSDOMBinding.h:
2770         (WebCore::WebCoreJSClientData::WebCoreJSClientData):
2771         * bindings/js/JSDOMWindowBase.cpp:
2772         (WebCore::JSDOMWindowBase::updateDocument):
2773         * bindings/js/JSDOMWindowBase.h:
2774         * bindings/js/JSEventListener.cpp:
2775         (WebCore::JSEventListener::handleEvent):
2776         (WebCore::JSEventListener::reportError):
2777         * bindings/js/JSHTMLDocumentCustom.cpp:
2778         (WebCore::JSHTMLDocument::open):
2779         * bindings/js/JSNodeFilterCondition.cpp:
2780         (WebCore::JSNodeFilterCondition::acceptNode):
2781         * bindings/js/JSQuarantinedObjectWrapper.cpp:
2782         (WebCore::JSQuarantinedObjectWrapper::construct):
2783         (WebCore::JSQuarantinedObjectWrapper::call):
2784         * bindings/js/ScheduledAction.cpp:
2785         (WebCore::ScheduledAction::executeFunctionInContext):
2786         * bindings/js/ScriptController.cpp:
2787         (WebCore::ScriptController::evaluateInWorld):
2788         (WebCore::ScriptController::initScript):
2789         (WebCore::ScriptController::updateDocument):
2790         * bindings/js/ScriptFunctionCall.cpp:
2791         (WebCore::ScriptFunctionCall::call):
2792         (WebCore::ScriptFunctionCall::construct):
2793         * bindings/js/ScriptObjectQuarantine.cpp:
2794         (WebCore::getQuarantinedScriptObject):
2795         * bindings/js/ScriptState.cpp:
2796         (WebCore::scriptStateFromNode):
2797         (WebCore::scriptStateFromPage):
2798         * bindings/js/ScriptState.h:
2799         * bindings/js/WorkerScriptController.cpp:
2800         (WebCore::WorkerScriptController::evaluate):
2801         * bindings/objc/WebScriptObject.mm:
2802         (-[WebScriptObject callWebScriptMethod:withArguments:]):
2803         (-[WebScriptObject evaluateWebScript:]):
2804         * bridge/NP_jsobject.cpp:
2805         (_NPN_InvokeDefault):
2806         (_NPN_Invoke):
2807         (_NPN_Evaluate):
2808         (_NPN_Construct):
2809         * bridge/jni/jni_jsobject.mm:
2810         (JavaJSObject::call):
2811         (JavaJSObject::eval):
2812         * dom/NodeFilter.h:
2813         (WebCore::NodeFilter::acceptNode):
2814         * dom/NodeIterator.h:
2815         (WebCore::NodeIterator::nextNode):
2816         (WebCore::NodeIterator::previousNode):
2817         * dom/TreeWalker.h:
2818         (WebCore::TreeWalker::parentNode):
2819         (WebCore::TreeWalker::firstChild):
2820         (WebCore::TreeWalker::lastChild):
2821         (WebCore::TreeWalker::previousSibling):
2822         (WebCore::TreeWalker::nextSibling):
2823         (WebCore::TreeWalker::previousNode):
2824         (WebCore::TreeWalker::nextNode):
2825         * inspector/InspectorController.cpp:
2826         (WebCore::InspectorController::windowScriptObjectAvailable):
2827         (WebCore::InspectorController::didEvaluateForTestInFrontend):
2828         * inspector/JavaScriptCallFrame.cpp:
2829         (WebCore::JavaScriptCallFrame::evaluate):
2830
2831 2009-11-30  Eric Carlson  <eric.carlson@apple.com>
2832
2833         Reviewed by Simon Fraser.
2834
2835         All HTML5 media element events should be regular events
2836         https://bugs.webkit.org/show_bug.cgi?id=30513
2837
2838         * html/HTMLMediaElement.cpp:
2839         (WebCore::HTMLMediaElement::selectMediaResource):
2840         (WebCore::HTMLMediaElement::noneSupported):
2841         (WebCore::HTMLMediaElement::mediaEngineError):
2842         (WebCore::HTMLMediaElement::setNetworkState):
2843         (WebCore::HTMLMediaElement::userCancelledLoad):
2844             Call scheduleEvent instead of scheduleProgressEvent.
2845         (WebCore::HTMLMediaElement::progressEventTimerFired):
2846             Call scheduleEvent instead of scheduleProgressEvent. Call renderer->updateFromElement
2847             after scheduling a 'progress' event so the controller will update download
2848             progress indicator.
2849         * html/HTMLMediaElement.h:
2850             Remove scheduleProgressEvent prototype.
2851
2852 2009-11-30  Joseph Pecoraro  <joepeck@webkit.org>
2853
2854         Reviewed by Pavel Feldman.
2855
2856         Web Inspector: Wrong console output for Regexp escape sequence
2857         https://bugs.webkit.org/show_bug.cgi?id=31538
2858
2859         Updated inspector/console-format.html
2860
2861         * inspector/front-end/ConsoleView.js:
2862         (WebInspector.ConsoleView.createDividerElement): style issues.
2863         (WebInspector.ConsoleView.createFilterElement): style issues.
2864         (WebInspector.ConsoleView): added _customFormatters table.
2865         (WebInspector.ConsoleView.prototype.updateMessageRepeatCount): style isses.
2866         (WebInspector.ConsoleView.prototype._incrementErrorWarningCount): style issues.
2867         (WebInspector.ConsoleView.prototype._format): simplified delegation to formatter logic.
2868         (WebInspector.ConsoleView.prototype._formatobject):
2869         (WebInspector.ConsoleView.prototype._formatnode):
2870         (WebInspector.ConsoleView.prototype._printArray):
2871         (WebInspector.ConsoleMessage.prototype._format): commented and broke down the algorithm into parts.
2872         (WebInspector.ConsoleMessage.prototype._formatWithSubstitutionString.append): handle substitution string formatting.
2873         (WebInspector.ConsoleMessage.prototype._formatIndividualValue): handling individual value formatting.
2874         (WebInspector.ConsoleCommandResult):
2875         * inspector/front-end/InjectedScript.js: simplified regex formatting.
2876         * inspector/front-end/inspector.js:
2877         (WebInspector.linkifyStringAsFragment): converted new RegExp to literal for performance benefits.
2878         * inspector/front-end/utilities.js: 
2879         (Element.prototype.hasStyleClass): update inaccurate comment.
2880         (String.prototype.trimURL): converted new RegExp to literal for performance benefits.
2881
2882 2009-11-30  Erik Arvidsson  <arv@chromium.org>
2883
2884         Reviewed by Adam Barth.
2885
2886         Clean up V8 bindings for CSSStyleDeclaration and CSSVariableDeclaration
2887         https://bugs.webkit.org/show_bug.cgi?id=31895
2888
2889         No new tests. This is already covered by:
2890                 fast/dom/CSSStyleDeclaration/css-computed-style-item.html
2891                 fast/dom/CSSStyleDeclaration/css-style-item.html
2892
2893         * bindings/v8/V8Collection.h:
2894         (WebCore::collectionStringIndexedPropertyGetter):
2895         (WebCore::setCollectionStringIndexedGetter):
2896         * bindings/v8/V8DOMWrapper.cpp:
2897         (WebCore::V8DOMWrapper::getTemplate):
2898
2899 2009-11-30  Steve Block  <steveblock@google.com>
2900
2901         Reviewed by Eric Seidel.
2902
2903         Adds include of wtf/StdLibExtras.h for DEFINE_STATIC_LOCAL in V8 ScriptController.
2904         https://bugs.webkit.org/show_bug.cgi?id=31932
2905
2906         Build fix only, no new tests.
2907
2908         * bindings/v8/ScriptController.cpp: Modified. Adds include of wtf/StdLibExtras.h.
2909
2910 2009-11-30  Steve Block  <steveblock@google.com>
2911
2912         Reviewed by Eric Seidel.
2913
2914         Adds PassOwnPtr include to ScriptExecutionContext.h.
2915         https://bugs.webkit.org/show_bug.cgi?id=31929
2916
2917         Build fix only, no new tests.
2918
2919         * dom/ScriptExecutionContext.h: Modified. Adds PassOwnPtr include.
2920
2921 2009-11-30  Dirk Schulze  <krit@webkit.org>
2922
2923         Reviewed by Nikolas Zimmermann.
2924
2925         REGRESSION (r49757): masking-mask-01-b.svg rendered incorrectly
2926         [https://bugs.webkit.org/show_bug.cgi?id=31980]
2927
2928         It turns out, that we did not handle maskUnits="userSpaceOnUse"
2929         correctly. We just need to move the context of the maskImage
2930         if maskContentUnits="objectBoundingBox". The context gets scaled
2931         on this unit combination, so we have to substract the position of
2932         the targetRect. On userSpaceOnUse the position just depends on the
2933         position of the mask element.
2934         I added a test with some senseless and reasonable values for size
2935         and postion of the mask and it's contents. I also used every
2936         combination of maskUnits and maskContentUnits to be sure, that it
2937         is fixed this time.
2938
2939         Test: svg/custom/mask-with-all-units.svg
2940
2941         * svg/SVGMaskElement.cpp:
2942         (WebCore::SVGMaskElement::drawMaskerContent):
2943
2944 2009-11-30  Steve Block  <steveblock@google.com>
2945
2946         Reviewed by Eric Seidel.
2947
2948         Adds ENABLE(INSPECTOR) guards around DOMWindow::inspectorTimelineAgent.
2949         https://bugs.webkit.org/show_bug.cgi?id=31928
2950
2951         Build fix only, no new tests.
2952
2953         * page/DOMWindow.cpp: Modified. Adds ENABLE(INSPECTOR) guards around DOMWindow::inspectorTimelineAgent.
2954
2955 2009-11-30  Steve Block  <steveblock@google.com>
2956
2957         Reviewed by Eric Seidel.
2958
2959         Adds SHARED_WORKERS guards to V8 WorkerContextExecutionProxy.
2960         https://bugs.webkit.org/show_bug.cgi?id=31926
2961
2962         Build fix only, no new tests.
2963
2964         * bindings/v8/WorkerContextExecutionProxy.cpp:
2965         (WebCore::WorkerContextExecutionProxy::initContextIfNeeded):
2966         (WebCore::WorkerContextExecutionProxy::convertToV8Object):
2967         (WebCore::WorkerContextExecutionProxy::convertEventTargetToV8Object):
2968
2969 2009-11-30  Benjamin Poulain  <benjamin.poulain@nokia.com>
2970
2971         Reviewed by Kenneth Rohde Christiansen.
2972
2973         Chrome::contentsSizeChanged() is called when the content size has not changed
2974         https://bugs.webkit.org/show_bug.cgi?id=31978
2975
2976         Do not trigger contentsSizeChaned() is the new size is the same as the old one.
2977
2978         * page/FrameView.cpp:
2979         (WebCore::FrameView::setContentsSize):
2980
2981 2009-11-30  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
2982
2983         Reviewed by Kenneth Rohde Christiansen.
2984
2985         [Qt] Fix some compiler warnings seen on QtWebKit/Mac
2986         https://bugs.webkit.org/show_bug.cgi?id=31962
2987
2988         No new tests as there is no functional change.
2989
2990         * platform/network/ResourceHandle.h: Make destructor virtual as 
2991         after r50772 ResourceHandle has virtual functions.
2992
2993         * plugins/mac/PluginPackageMac.cpp: 
2994         (WebCore::PluginPackage::fetchInfo): Fix typo WTF is a namespace
2995         not a label
2996
2997         * plugins/mac/PluginViewMac.cpp:
2998         (WebCore::PluginView::setNPWindowIfNeeded): Add l to the format
2999         specifier
3000
3001 2009-11-30  Xan Lopez  <xlopez@igalia.com>
3002
3003         Reviewed by Gustavo Noronha.
3004
3005         Add new headers to sources list.
3006
3007         * GNUmakefile.am:
3008
3009 2009-11-30  Girish Ramakrishnan  <girish@forwardbias.in>
3010
3011         Reviewed by Holger Freyther.
3012
3013         [Qt] Mac Plugins : Get context menu to work in QGraphicsView
3014         
3015         Flash expects the value in record.where to be the global position for
3016         displaying the context menu.
3017         
3018         https://bugs.webkit.org/show_bug.cgi?id=31979
3019
3020         * plugins/mac/PluginViewMac.cpp:
3021         (WebCore::PluginView::handleMouseEvent):
3022
3023 2009-11-30  Steve Block  <steveblock@google.com>
3024
3025         Reviewed by Eric Seidel.
3026
3027         Adds PLATFORM(CHROMIUM) guards around memory usage code in V8GCController.
3028         https://bugs.webkit.org/show_bug.cgi?id=31925
3029
3030         This code uses ChromiumBridge and Chromium-specific constant values not
3031         appropriate for other platforms such as Android.
3032
3033         Build fix only, no new tests.
3034
3035         * bindings/v8/V8GCController.cpp: Modified. Adds PLATFORM(CHROMIUM) around Chromium-specific code.
3036
3037 2009-11-29  Brent Fulgham  <bfulgham@webkit.org>
3038
3039         Build fix.
3040
3041         Correct draw signature used in ImageCairoWin.cpp.
3042
3043         * platform/graphics/win/ImageCairoWin.cpp:
3044         (WebCore::BitmapImage::getHBITMAPOfSize):
3045         (WebCore::BitmapImage::drawFrameMatchingSourceSize):
3046
3047 2009-11-28  Oliver Hunt  <oliver@apple.com>
3048
3049         Reviewed by Sam Weinig.
3050
3051         postMessage should serialize File objects
3052         https://bugs.webkit.org/show_bug.cgi?id=31955
3053
3054         Update SerializedScriptValue to include support for
3055         File objects in the serialized object graph.
3056
3057         * bindings/js/SerializedScriptValue.cpp:
3058         (WebCore::SerializedScriptValueData::SerializedScriptValueData):
3059         (WebCore::SerializingTreeWalker::convertIfTerminal):
3060         (WebCore::DeserializingTreeWalker::convertIfTerminal):
3061         * bindings/js/SerializedScriptValue.h:
3062         (WebCore::SerializedScriptValueData::):
3063         (WebCore::SerializedScriptValueData::asString):
3064
3065 2009-11-29  Simon Fraser  <simon.fraser@apple.com>
3066
3067         Reviewed by Dan Bernstein.
3068
3069         Optimize the hierarchy rebuilding of compositing layers
3070         https://bugs.webkit.org/show_bug.cgi?id=31879
3071         
3072         When updating the compositing layer hierarchy, instead of removing all
3073         child layers and then re-adding them one by one, build a vector of child
3074         layers, and set them in one go.
3075         
3076         * platform/graphics/GraphicsLayer.h:
3077         * platform/graphics/GraphicsLayer.cpp:
3078         (WebCore::GraphicsLayer::setChildren): New method that takes a Vector of child
3079         GraphicsLayers.
3080         
3081         * platform/graphics/mac/GraphicsLayerCA.h: Override setChildren().
3082         * platform/graphics/win/GraphicsLayerCACF.h: Ditto.
3083         * platform/graphics/mac/GraphicsLayerCA.mm: 
3084         (WebCore::GraphicsLayerCA::setChildren): Implement setChildren() to 
3085         set the bit that notes that sublayers changed.
3086         * platform/graphics/win/GraphicsLayerCACF.cpp:
3087         (WebCore::GraphicsLayerCACF::setChildren): Implement setChildren() to 
3088         udpate sublayers, with a note that this is not efficient.
3089         
3090         * rendering/RenderLayerCompositor.h:
3091         * rendering/RenderLayerCompositor.cpp:
3092         (WebCore::RenderLayerCompositor::updateCompositingLayers):
3093         When updating compositing layers, use the faster updateLayerTreeGeometry() if
3094         we know that no layer hierarchy changes are needed, and, at the root, use
3095         the vector returned from rebuildCompositingLayerTree() to attach the root
3096         layer.
3097         (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree): Changed to
3098         collect child layers into Vectors of GraphicsLayers, which can be set as
3099         layer children in one go.
3100         (WebCore::RenderLayerCompositor::updateLayerTreeGeometry): Split out from
3101         rebuildCompositingLayerTree() for simplicity, and called when we just need to
3102         update layer geometry, without doing any reparenting.
3103
3104 2009-11-29  Daniel Bates  <dbates@webkit.org>
3105
3106         Reviewed by Adam Barth.
3107
3108         https://bugs.webkit.org/show_bug.cgi?id=31971
3109
3110         Updated comment to reflect latest XSSAuditor bindings.
3111
3112         No functionality was changed. So, no new tests.
3113
3114         * page/XSSAuditor.h:
3115
3116 2009-11-29  Daniel Bates  <dbates@webkit.org>
3117
3118         Reviewed by Eric Seidel.
3119
3120         https://bugs.webkit.org/show_bug.cgi?id=31969
3121
3122         Removes unnecessary #include files.
3123
3124         No functionality was changed. So, no new tests.
3125
3126         * css/CSSComputedStyleDeclaration.cpp: Removed include CachedImage.h, and
3127         Pair.h
3128         * css/CSSCursorImageValue.cpp: Removed include RenderStyle.h
3129         * css/CSSFontFaceSrcValue.cpp: Removed include Node.h
3130         * css/CSSFontSelector.cpp: Removed include NodeList.h
3131         * css/CSSGradientValue.cpp: Removed include GraphicsContext.h, ImageBuffer.h
3132         * css/CSSImageValue.cpp: Removed include RenderStyle.h
3133         * css/CSSImportRule.cpp: Removed include MediaList.h
3134         * css/CSSMutableStyleDeclaration.cpp: Removed include CSSProperty.h
3135         * css/CSSRule.cpp: Removed include CSSStyleSheet.h
3136         * css/CSSStyleSelector.cpp: Removed include CSSFontFace.h,
3137         CSSFontFaceSource.h, and CSSProperty.h
3138         * page/EventSource.h: Removed include EventListener.h
3139
3140 2009-11-29  Daniel Bates  <dbates@webkit.org>
3141
3142         Reviewed by Eric Seidel.
3143
3144         https://bugs.webkit.org/show_bug.cgi?id=31965
3145
3146         Removed #include KeyframeList.h from CSSStyleSelector.h. Instead,
3147         forward declared it.
3148
3149         As a side effect, we need to #include KeyframeList.h in
3150         RenderLayerBacking.cpp.
3151
3152         No functionality was changed. So, no new tests.
3153
3154         * css/CSSStyleSelector.cpp:
3155         * css/CSSStyleSelector.h: Removed #include KeyframeList.h
3156         * rendering/RenderLayerBacking.cpp: Added #include KeyframeList.h
3157
3158 2009-11-29  Shu Chang  <Chang.Shu@nokia.com>
3159
3160         Reviewed by Eric Seidel.
3161
3162         Continue to search for matching node in the case where multiple nodes
3163         have the same id.
3164         https://bugs.webkit.org/show_bug.cgi?id=31428
3165
3166         Test: fast/dom/Element/id-in-node-list-index01.html
3167
3168         * dom/DynamicNodeList.cpp:
3169         (WebCore::DynamicNodeList::itemWithName):
3170
3171 2009-11-29  Daniel Bates  <dbates@webkit.org>
3172
3173         Reviewed by Eric Seidel.
3174
3175         https://bugs.webkit.org/show_bug.cgi?id=31966
3176
3177         Removed #include RenderStyle.h from file KeyframeAnimation.h. Instead,
3178         forward declared it.
3179
3180         No functionality was changed. So, no new tests.
3181
3182         * page/animation/KeyframeAnimation.cpp:
3183         * page/animation/KeyframeAnimation.h:
3184
3185 2009-11-29  Daniel Bates  <dbates@webkit.org>
3186
3187         Unreviewed, fix change log entry date.
3188
3189         For some reason, bugzilla-tool did not update the date in the change
3190         log entry for my last commit (r51468). So, this commit fixes the date
3191         of that entry.
3192
3193 2009-11-29  Daniel Bates  <dbates@webkit.org>
3194
3195         Reviewed by Dan Bernstein.
3196
3197         https://bugs.webkit.org/show_bug.cgi?id=31964
3198
3199         Removed #include StringImpl, StyleImage. Instead, forward declared them.
3200         Also, we can substitute #include <wtf/PassRefPtr.h> for #include PlatformString.h,
3201         since it seems we only really used it to include PassRefPtr.h.
3202
3203         No functionality was changed. So, no new tests.
3204
3205         * rendering/style/ContentData.h:
3206
3207 2009-11-29  Zoltan Horvath  <zoltan@webkit.org>
3208
3209         Reviewed by Eric Seidel.
3210
3211         Allow custom memory allocation control for classes of the rendering and storage directory in WebCore
3212         https://bugs.webkit.org/show_bug.cgi?id=31906
3213
3214         Inherits the following classes from Noncopyable because these are instantiated
3215         by 'new' and no need to be copyable:
3216
3217         class/struct name               - instantiated at: WebCore/'location'
3218
3219         class SQLTransactionClient      - storage/DatabaseThread.cpp:45
3220         class SQLTransactionCoordinator - storage/DatabaseThread.cpp:46
3221         class OriginUsageRecord         - storage/OriginQuotaManager.cpp:66
3222         class DatabaseTracker           - storage/DatabaseTracker.cpp:62
3223         class ScrollbarTheme            - (its child class) rendering/RenderScrollbarTheme.cpp:35
3224         class RenderSelectionInfoBase   - (its child class) rendering/RenderView.cpp:310
3225         class RenderOverflow            - rendering/RenderBox.cpp:2846
3226
3227         Inherits the following classes from FastAllocBase because these are instantiated by 'new':
3228
3229         struct FillLayer                - css/CSSStyleSelector.cpp:197
3230         struct ShadowData               - rendering/style/ShadowData.cpp:35
3231         class CounterContent            - css/CSSStyleSelector.cpp:4111
3232
3233         * platform/ScrollbarTheme.h:
3234         * rendering/RenderOverflow.h:
3235         * rendering/RenderSelectionInfo.h:
3236         * rendering/style/CounterContent.h:
3237         * rendering/style/FillLayer.h:
3238         * rendering/style/ShadowData.h:
3239         * storage/DatabaseTracker.h:
3240         * storage/OriginUsageRecord.h:
3241         * storage/SQLTransactionClient.h:
3242         * storage/SQLTransactionCoordinator.h:
3243
3244 2009-11-28  Adam Barth  <abarth@webkit.org>
3245
3246         Reviewed by Dimitri Glazkov.
3247
3248         [Chromium] Sify compose button alerts error
3249         https://bugs.webkit.org/show_bug.cgi?id=31394
3250
3251         Test: http/tests/security/calling-versus-current.html
3252
3253         We're supposed to use the calling context for security checks.  In JSC
3254         land, this is the lexicalGlobalObject.
3255
3256         * bindings/v8/V8Proxy.cpp:
3257         (WebCore::V8Proxy::canAccessPrivate):
3258
3259 2009-11-27  Shinichiro Hamaji  <hamaji@chromium.org>
3260
3261         Unreviewed Chromium build fix introduced by r51428.
3262
3263         [Chromium] Ignore line-height CSS property for PushButton
3264         https://bugs.webkit.org/show_bug.cgi?id=31712
3265
3266         * rendering/RenderThemeChromiumSkia.cpp:
3267         (WebCore::RenderThemeChromiumSkia::adjustButtonStyle):
3268
3269 2009-11-27  Shinichiro Hamaji  <hamaji@chromium.org>
3270
3271         Unreviewed Chromium test fix by reverting r51413.
3272
3273         [v8] Do not check the thread when accessing DOMDataStore
3274         https://bugs.webkit.org/show_bug.cgi?id=31877
3275
3276         * bindings/v8/V8DOMMap.cpp:
3277         (WebCore::getDOMNodeMap):
3278         (WebCore::getDOMObjectMap):
3279         (WebCore::getActiveDOMObjectMap):
3280         (WebCore::getDOMSVGElementInstanceMap):
3281         (WebCore::getDOMSVGObjectWithContextMap):
3282
3283 2009-11-27  Daniel Bates  <dbates@webkit.org>
3284
3285         Unreviewed, comment fix.
3286
3287         Corrected misspelling of the word "implemented".
3288
3289         * inspector/front-end/InjectedScriptAccess.js:
3290
3291 2009-11-27  Daniel Bates  <dbates@webkit.org>
3292
3293         Reviewed by Adam Barth.
3294
3295         https://bugs.webkit.org/show_bug.cgi?id=31940
3296
3297         Makes the error messages more descriptive when we refuse to load an object/embed or
3298         refuse to load from the document base URL.
3299
3300         * page/XSSAuditor.cpp:
3301         (WebCore::XSSAuditor::canLoadObject): Changed console message to be more descriptive.
3302         (WebCore::XSSAuditor::canSetBaseElementURL): Ditto.
3303
3304 2009-11-27  Yury Semikhatsky  <yurys@chromium.org>
3305
3306         Reviewed by Pavel Feldman.
3307
3308         This is a WebCore part of the fix that allows to view plugin
3309         resources loaded by plugins.
3310
3311         https://bugs.webkit.org/show_bug.cgi?id=31832
3312
3313         * inspector/InspectorController.cpp:
3314         (WebCore::InspectorController::willSendRequest):
3315         (WebCore::InspectorController::didReceiveResponse):
3316         (WebCore::InspectorController::didReceiveContentLength):
3317         (WebCore::InspectorController::didFinishLoading):
3318         (WebCore::InspectorController::didFailLoading):
3319         * inspector/InspectorController.h:
3320         * inspector/InspectorResource.cpp:
3321         (WebCore::InspectorResource::addLength):
3322         * loader/ResourceLoadNotifier.cpp:
3323         (WebCore::ResourceLoadNotifier::didFailToLoad):
3324         (WebCore::ResourceLoadNotifier::dispatchWillSendRequest):
3325         (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse):
3326         (WebCore::ResourceLoadNotifier::dispatchDidReceiveContentLength):
3327         (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
3328
3329 2009-11-27  Yury Semikhatsky  <yurys@chromium.org>
3330
3331         Reviewed by Pavel Feldman.
3332
3333         Instead of generating negative identifiers for cached resources in
3334         InspectorController and extending identifier type from 'unsigned long' to 'long
3335         long' reuse progress tracker from the inspected page to generate those
3336         identifiers. It guarantees that InspectorResources have unique ids since
3337         all of them are generated by that progress tracker.
3338
3339         Added a couple new overloaded methods to Script* objects that accept
3340         long and unsigned long arguments. These types of argumens have already
3341         been passed as long long.
3342
3343         https://bugs.webkit.org/show_bug.cgi?id=31921
3344
3345         * bindings/js/ScriptFunctionCall.cpp:
3346         (WebCore::ScriptFunctionCall::appendArgument):
3347         * bindings/js/ScriptFunctionCall.h:
3348         * bindings/js/ScriptObject.cpp:
3349         (WebCore::ScriptObject::set):
3350         * bindings/js/ScriptObject.h:
3351         * bindings/v8/ScriptFunctionCall.cpp:
3352         (WebCore::ScriptFunctionCall::appendArgument):
3353         * bindings/v8/ScriptFunctionCall.h:
3354         * bindings/v8/ScriptObject.cpp:
3355         (WebCore::ScriptObject::set):
3356         * bindings/v8/ScriptObject.h:
3357         * inspector/InspectorBackend.cpp:
3358         (WebCore::InspectorBackend::dispatchOnInjectedScript):
3359         * inspector/InspectorController.cpp:
3360         (WebCore::InspectorController::InspectorController):
3361         (WebCore::InspectorController::getTrackedResource):
3362         (WebCore::InspectorController::didLoadResourceFromMemoryCache): Use inspected page's ProgressTracker to generate unique identifiers for cached resources in InspectorController.
3363         * inspector/InspectorController.h:
3364         * inspector/InspectorDOMAgent.cpp:
3365         (WebCore::InspectorDOMAgent::buildObjectForNode):
3366         (WebCore::InspectorDOMAgent::buildObjectForEventListener):
3367         * inspector/InspectorFrontend.cpp:
3368         (WebCore::InspectorFrontend::addResource):
3369         (WebCore::InspectorFrontend::updateResource):
3370         (WebCore::InspectorFrontend::removeResource):
3371         (WebCore::InspectorFrontend::updateFocusedNode):
3372         * inspector/InspectorFrontend.h:
3373         * inspector/InspectorResource.cpp:
3374         (WebCore::InspectorResource::InspectorResource):
3375         (WebCore::InspectorResource::createCached):
3376         * inspector/InspectorResource.h: Change InspectorResource identifier type from 'long long' to 'unsigned long'.
3377         (WebCore::InspectorResource::create):
3378         (WebCore::InspectorResource::identifier):
3379         * inspector/TimelineRecordFactory.cpp:
3380         (WebCore::TimelineRecordFactory::createResourceSendRequestRecord):
3381         (WebCore::TimelineRecordFactory::createResourceReceiveResponseRecord):
3382         (WebCore::TimelineRecordFactory::createResourceFinishRecord):
3383
3384 2009-11-26  Shinichiro Hamaji  <hamaji@chromium.org>
3385
3386         Reviewed by Dan Bernstein.
3387
3388         Assertion failure in RenderBlock::positionForPointWithInlineChildren when running fast/inline/relative-positioned-overflow.html
3389         https://bugs.webkit.org/show_bug.cgi?id=29966
3390
3391         When an empty inline element is clicked, the root inline box has
3392         no leaf children. Use the renderer of a normal child instead.
3393
3394         This change resolves Windows port's assertion failure in a layout test.
3395         Also, this fixes the behavior when a user drags the mouse from an
3396         empty inline element to above texts.
3397
3398         Test: editing/selection/last-empty-inline.html
3399
3400         * rendering/RenderBlock.cpp:
3401         (WebCore::RenderBlock::positionForPointWithInlineChildren):
3402
3403 2009-11-26  Kent Tamura  <tkent@chromium.org>
3404
3405         Reviewed by Eric Seidel.
3406
3407         [Chromium] Ignore line-height CSS property specified to push buttons on
3408         Windows and Linux.
3409         https://bugs.webkit.org/show_bug.cgi?id=31712
3410
3411         LayoutTests/fast/forms/control-restrict-line-height.html checks that the
3412         following controls should ignore line-height CSS property.
3413          - <select>
3414          - <input type=button>
3415          - <input type=search>
3416         This change addresses the <input type=button> issue with Chromium/Windows
3417         and Chromium/Linux.
3418         
3419         * rendering/RenderThemeChromiumSkia.cpp: Implement adjustButtonStyle() to ignore line-height.
3420         * rendering/RenderThemeChromiumSkia.h: Declare adjustButtonStyle().
3421
3422 2009-11-26  Kinuko Yasuda  <kinuko@chromium.com>
3423
3424         Reviewed by Eric Seidel.
3425
3426         Remove the special charset meta tag in the clipboard so that
3427         copy-and-paste with interchange breaklines/spaces works correctly
3428         within WebKit.
3429
3430         No new tests.  Layout tests that involve copy-and-paste with
3431         interchange breaklines (like editing/pasteboard/paste-line-endings-00?)
3432         should pass on Mac/Chromium with this fix.
3433
3434         * platform/chromium/ClipboardChromium.cpp:
3435         * platform/chromium/PasteboardChromium.cpp:
3436         (WebCore::Pasteboard::documentFragment):
3437
3438 2009-11-26  İsmail Dönmez  <ismail@namtrac.org>
3439
3440         Reviewed by Eric Seidel.
3441
3442         Compile with QT_NO_WHEELEVENT defined.
3443
3444         * platform/qt/WheelEventQt.cpp:
3445         (WebCore::PlatformWheelEvent::applyDelta):
3446
3447 2009-11-26  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
3448
3449         Reviewed by Oliver Hunt.
3450
3451         Move GOwnPtr* from wtf to wtf/gtk
3452         https://bugs.webkit.org/show_bug.cgi?id=31793
3453
3454         No new tests as there is no functional change.
3455
3456         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: Change the
3457           path for GOwnPtr.h.
3458         * platform/text/TextEncoding.cpp: Ditto.
3459         * platform/text/gtk/TextCodecGtk.cpp: Ditto.
3460
3461 2009-11-26  Yury Semikhatsky  <yurys@chromium.org>
3462
3463         Not reviewed. Build fix: revert r51421.
3464
3465         * inspector/InspectorController.cpp:
3466         (WebCore::InspectorController::willSendRequest):
3467         (WebCore::InspectorController::didReceiveResponse):
3468         (WebCore::InspectorController::didReceiveContentLength):
3469         (WebCore::InspectorController::didFinishLoading):
3470         (WebCore::InspectorController::didFailLoading):
3471         * inspector/InspectorController.h:
3472         * inspector/InspectorResource.cpp:
3473         (WebCore::InspectorResource::addLength):
3474         * loader/ResourceLoadNotifier.cpp:
3475         (WebCore::ResourceLoadNotifier::didFailToLoad):
3476         (WebCore::ResourceLoadNotifier::dispatchWillSendRequest):
3477         (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse):
3478         (WebCore::ResourceLoadNotifier::dispatchDidReceiveContentLength):
3479         (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
3480
3481 2009-11-26  Yury Semikhatsky  <yurys@chromium.org>
3482
3483         Reviewed by Pavel Feldman.
3484
3485         This is a WebCore part of the fix that allows to view plugin
3486         resources loaded by plugins.
3487
3488         https://bugs.webkit.org/show_bug.cgi?id=31832
3489
3490         * inspector/InspectorController.cpp:
3491         (WebCore::InspectorController::willSendRequest):
3492         (WebCore::InspectorController::didReceiveResponse):
3493         (WebCore::InspectorController::didReceiveContentLength):
3494         (WebCore::InspectorController::didFinishLoading):
3495         (WebCore::InspectorController::didFailLoading):
3496         * inspector/InspectorController.h: Remove unused DocumentLoader parameters from inspector methods.
3497         * inspector/InspectorResource.cpp:
3498         (WebCore::InspectorResource::addLength): Update loading end time when new data are received.
3499         * loader/ResourceLoadNotifier.cpp:
3500         (WebCore::ResourceLoadNotifier::didFailToLoad): Notify InspectorController about the failure.
3501         (WebCore::ResourceLoadNotifier::dispatchWillSendRequest):
3502         (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse):
3503         (WebCore::ResourceLoadNotifier::dispatchDidReceiveContentLength):
3504         (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
3505
3506 2009-11-26  Daniel Bates  <dbates@webkit.org>
3507
3508         Reviewed by Pavel Feldman.
3509
3510         https://bugs.webkit.org/show_bug.cgi?id=21554
3511
3512         Implements support for hovering over <img> src to display the height and width of that image
3513         in a tooltip. Displays both the displayable and natural dimensions of the image.
3514
3515         Test: inspector/elements-img-tooltip.html
3516
3517         * inspector/front-end/ElementsTreeOutline.js:
3518         (WebInspector.ElementsTreeElement.prototype.createTooltipForImageNode): Added.
3519         (WebInspector.ElementsTreeElement.prototype._updateTitle.callback):
3520         (WebInspector.ElementsTreeElement.prototype._updateTitle):
3521         (WebInspector.ElementsTreeElement.prototype._nodeTitleInfo):
3522         * inspector/front-end/ObjectProxy.js:
3523         (WebInspector.ObjectProxy.getPropertiesAsync): Added.
3524         * inspector/front-end/inspector.js:
3525         (WebInspector.linkifyURLAsNode): Added tooltipText argument.
3526         (WebInspector.linkifyURL): Ditto.
3527
3528 2009-11-26  Kevin Ollivier  <kevino@theolliviers.com>
3529
3530         wx build fix after drawPattern API change.
3531
3532         * platform/graphics/wx/ImageWx.cpp:
3533         (WebCore::Image::drawPattern):
3534
3535 2009-11-26  Anton Muhin  <antonm@chromium.org>
3536
3537         Reviewed by Adam Barth.
3538
3539         Use an internal field instead of hidden property to speedup lookup
3540         of entered isolated world.
3541
3542         Plus some inlinings.
3543         https://bugs.webkit.org/show_bug.cgi?id=31884
3544
3545         Covered by layout tests + manual running of some benchmarks as
3546         content scripts.
3547
3548         * bindings/v8/V8DOMWrapper.cpp:
3549         * bindings/v8/V8DOMWrapper.h:
3550         (WebCore::V8DOMWrapper::setDOMWrapper):
3551         * bindings/v8/V8HiddenPropertyName.h:
3552         * bindings/v8/V8IsolatedWorld.cpp:
3553         (WebCore::V8IsolatedWorld::V8IsolatedWorld):
3554         * bindings/v8/V8IsolatedWorld.h:
3555         (WebCore::V8IsolatedWorld::getEntered):
3556         (WebCore::V8IsolatedWorld::getGlobalObject):
3557         * bindings/v8/custom/V8CustomBinding.h:
3558
3559 2009-11-26  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
3560
3561         Reviewed by Kenneth Rohde Christiansen.
3562
3563         [Qt] Corrects build break on Windows.
3564
3565         Rename platform/text/qt/TextBoundaries.cpp to TextBoundariesQt.cpp since
3566         platform/text/TextBoundaries.cpp was compiled instead when compiling with nmake.
3567
3568         * WebCore.pro:
3569         * platform/text/qt/TextBoundariesQt.cpp: Renamed from WebCore/platform/text/qt/TextBoundaries.cpp.
3570         (WebCore::findNextWordFromIndex):
3571         (WebCore::findWordBoundary):
3572
3573 2009-11-26  Anton Muhin  <antonm@chromium.org>
3574
3575         Reviewed by Adam Barth.
3576
3577         Do not check if the thread is main or not when accessing DO