769717f60b58f819bf3dbd06c50d755f1cbdac10
[WebKit-https.git] / WebCore / ChangeLog
1 2009-11-30  Enrica Casucci  <enrica@apple.com>
2
3         Reviewed by Darin Adler.
4
5         Can focus but not type into content editable block that contains only non-editable content.
6         <rdar://problem/5982901>
7         https://bugs.webkit.org/show_bug.cgi?id=31750
8         
9         The goal is to change the way we choose a visible position
10         after hit detection, by preferring a visually equivalent editable
11         position if available. By doing this, it is possible to add content
12         to an editable block that initially contains only non editable elements.
13
14         Test: editing/selection/mixed-editability-10.html
15
16         * WebCore.base.exp: Changed to match the new signature of downstream
17         and upstream in the Position class.
18         * dom/Position.cpp:
19         (WebCore::Position::atEditingBoundary): Added.
20         (WebCore::Position::upstream): Modified to allow to cross the boundary
21         between editable and non editable content if required.
22         (WebCore::Position::downstream): Modified to allow to cross the boundary
23         between editable and non editable content if required.
24         (WebCore::Position::isCandidate): Modified to qualify as candidates positions
25         that are at the editability boundary.
26         (WebCore::Position::getInlineBoxAndOffset): Modified to retrieve the inline box
27         to be used in calculating the caret rectangle.
28         * dom/Position.h:
29         (WebCore::Position::):
30         * dom/PositionIterator.cpp:
31         (WebCore::PositionIterator::atEditingBoundary): Added.
32         (WebCore::PositionIterator::isCandidate): Modified to qualify as candidates positions
33         that are at the editability boundary.
34         * dom/PositionIterator.h:
35         * editing/htmlediting.cpp:
36         (WebCore::firstEditablePositionAfterPositionInRoot): Modified to accept not only
37         descendants of the editable container, but the container itself.
38         (WebCore::lastEditablePositionBeforePositionInRoot): Modified to accept not only
39         descendants of the editable container, but the container itself.
40         * rendering/RenderObject.cpp:
41         (WebCore::RenderObject::createVisiblePosition): Added logic to prefer an editable position,
42         if available.
43         * rendering/RenderText.cpp:
44         (WebCore::RenderText::isAllCollapsibleWhitespace): Added.
45         * rendering/RenderText.h:
46
47 2009-11-30  Kevin Ollivier  <kevino@theolliviers.com>
48
49         wx build fix, add header needed for wx build.
50
51         * css/CSSFontFaceSrcValue.cpp:
52
53 2009-11-30  Mark Rowe  <mrowe@apple.com>
54
55         Reviewed by David Kilzer.
56
57         <rdar://problem/7424387> WebCore binary missing symbols when built for x86_64 from a machine that cannot run x86_64 binaries
58
59         The check for whether WTF_USE_PLUGIN_HOST_PROCESS is defined occurs under the native architecture of the build machine.
60         If that is 32-bit then WTF_USE_PLUGIN_HOST_PROCESS will not be defined.  We work around this by forcing the check to
61         be performed against the x86_64 architecture.
62
63         * DerivedSources.make:
64
65 2009-11-30  Beth Dakin  <bdakin@apple.com>
66
67         Reviewed by Oliver Hunt.
68
69         Fix for https://bugs.webkit.org/show_bug.cgi?id=32000 Crash in 
70         Safari caused by extreme column-gap and column-width values 
71         -and corresponding-
72         <rdar://problem/7425433>
73
74         Prevent desiredColumnCount from being less than 1 since it is used 
75         as a divisor.
76         * rendering/RenderBlock.cpp:
77         (WebCore::RenderBlock::calcColumnWidth):
78
79 2009-11-30  Alexey Proskuryakov  <ap@apple.com>
80
81         Reviewed by Oliver Hunt.
82
83         https://bugs.webkit.org/show_bug.cgi?id=31659
84         Connection must be closed in case of Web Socket handshake error
85
86         The network connection was closed, but the close event wasn't dispatched.
87
88         Tested by websocket/tests/handshake-error.html, which is un-skipped now.
89
90         * platform/network/cf/SocketStreamHandleCFNet.cpp: (WebCore::SocketStreamHandle::platformClose):
91         Call client didHandle() method. This looks strange in CFNetwork implementation, because
92         it's the client that asked to close the stream, so it shouldn't need the callback. It makes
93         more sense in cross-process implementation, because closing is async there.
94
95 2009-11-30  Gavin Barraclough  <barraclough@apple.com>
96
97         Reviewed by Geoff Garen.
98
99         Bug 31859 - Make world selection for JSC IsolatedWorlds automagical.
100
101         WebCore presently has to explicitly specify the world before entering into JSC,
102         which is a little fragile (particularly since property access via a
103         getter/setter might invoke execution). Instead derive the current world from
104         the lexical global object.
105
106         Remove the last uses of mainThreadCurrentWorld(), so the world is always obtained via
107         currentWorld().  Switch this to obtain the world from the ExecsState's lexical global
108         object instead.  Remove the call/construct/evaluate 'InWorld' methods, since these
109         are no longer necessary.
110
111         * WebCore.base.exp:
112         * bindings/js/JSCallbackData.cpp:
113         (WebCore::JSCallbackData::invokeCallback):
114         * bindings/js/JSCallbackData.h:
115         (WebCore::JSCallbackData::JSCallbackData):
116         * bindings/js/JSCustomXPathNSResolver.cpp:
117         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
118         * bindings/js/JSDOMBinding.cpp:
119         (WebCore::currentWorld):
120         (WebCore::mainThreadNormalWorld):
121         * bindings/js/JSDOMBinding.h:
122         (WebCore::WebCoreJSClientData::WebCoreJSClientData):
123         * bindings/js/JSDOMWindowBase.cpp:
124         (WebCore::JSDOMWindowBase::updateDocument):
125         * bindings/js/JSDOMWindowBase.h:
126         * bindings/js/JSEventListener.cpp:
127         (WebCore::JSEventListener::handleEvent):
128         (WebCore::JSEventListener::reportError):
129         * bindings/js/JSHTMLDocumentCustom.cpp:
130         (WebCore::JSHTMLDocument::open):
131         * bindings/js/JSNodeFilterCondition.cpp:
132         (WebCore::JSNodeFilterCondition::acceptNode):
133         * bindings/js/JSQuarantinedObjectWrapper.cpp:
134         (WebCore::JSQuarantinedObjectWrapper::construct):
135         (WebCore::JSQuarantinedObjectWrapper::call):
136         * bindings/js/ScheduledAction.cpp:
137         (WebCore::ScheduledAction::executeFunctionInContext):
138         * bindings/js/ScriptController.cpp:
139         (WebCore::ScriptController::evaluateInWorld):
140         (WebCore::ScriptController::initScript):
141         (WebCore::ScriptController::updateDocument):
142         * bindings/js/ScriptFunctionCall.cpp:
143         (WebCore::ScriptFunctionCall::call):
144         (WebCore::ScriptFunctionCall::construct):
145         * bindings/js/ScriptObjectQuarantine.cpp:
146         (WebCore::getQuarantinedScriptObject):
147         * bindings/js/ScriptState.cpp:
148         (WebCore::scriptStateFromNode):
149         (WebCore::scriptStateFromPage):
150         * bindings/js/ScriptState.h:
151         * bindings/js/WorkerScriptController.cpp:
152         (WebCore::WorkerScriptController::evaluate):
153         * bindings/objc/WebScriptObject.mm:
154         (-[WebScriptObject callWebScriptMethod:withArguments:]):
155         (-[WebScriptObject evaluateWebScript:]):
156         * bridge/NP_jsobject.cpp:
157         (_NPN_InvokeDefault):
158         (_NPN_Invoke):
159         (_NPN_Evaluate):
160         (_NPN_Construct):
161         * bridge/jni/jni_jsobject.mm:
162         (JavaJSObject::call):
163         (JavaJSObject::eval):
164         * dom/NodeFilter.h:
165         (WebCore::NodeFilter::acceptNode):
166         * dom/NodeIterator.h:
167         (WebCore::NodeIterator::nextNode):
168         (WebCore::NodeIterator::previousNode):
169         * dom/TreeWalker.h:
170         (WebCore::TreeWalker::parentNode):
171         (WebCore::TreeWalker::firstChild):
172         (WebCore::TreeWalker::lastChild):
173         (WebCore::TreeWalker::previousSibling):
174         (WebCore::TreeWalker::nextSibling):
175         (WebCore::TreeWalker::previousNode):
176         (WebCore::TreeWalker::nextNode):
177         * inspector/InspectorController.cpp:
178         (WebCore::InspectorController::windowScriptObjectAvailable):
179         (WebCore::InspectorController::didEvaluateForTestInFrontend):
180         * inspector/JavaScriptCallFrame.cpp:
181         (WebCore::JavaScriptCallFrame::evaluate):
182
183 2009-11-30  Eric Carlson  <eric.carlson@apple.com>
184
185         Reviewed by Simon Fraser.
186
187         All HTML5 media element events should be regular events
188         https://bugs.webkit.org/show_bug.cgi?id=30513
189
190         * html/HTMLMediaElement.cpp:
191         (WebCore::HTMLMediaElement::selectMediaResource):
192         (WebCore::HTMLMediaElement::noneSupported):
193         (WebCore::HTMLMediaElement::mediaEngineError):
194         (WebCore::HTMLMediaElement::setNetworkState):
195         (WebCore::HTMLMediaElement::userCancelledLoad):
196             Call scheduleEvent instead of scheduleProgressEvent.
197         (WebCore::HTMLMediaElement::progressEventTimerFired):
198             Call scheduleEvent instead of scheduleProgressEvent. Call renderer->updateFromElement
199             after scheduling a 'progress' event so the controller will update download
200             progress indicator.
201         * html/HTMLMediaElement.h:
202             Remove scheduleProgressEvent prototype.
203
204 2009-11-30  Joseph Pecoraro  <joepeck@webkit.org>
205
206         Reviewed by Pavel Feldman.
207
208         Web Inspector: Wrong console output for Regexp escape sequence
209         https://bugs.webkit.org/show_bug.cgi?id=31538
210
211         Updated inspector/console-format.html
212
213         * inspector/front-end/ConsoleView.js:
214         (WebInspector.ConsoleView.createDividerElement): style issues.
215         (WebInspector.ConsoleView.createFilterElement): style issues.
216         (WebInspector.ConsoleView): added _customFormatters table.
217         (WebInspector.ConsoleView.prototype.updateMessageRepeatCount): style isses.
218         (WebInspector.ConsoleView.prototype._incrementErrorWarningCount): style issues.
219         (WebInspector.ConsoleView.prototype._format): simplified delegation to formatter logic.
220         (WebInspector.ConsoleView.prototype._formatobject):
221         (WebInspector.ConsoleView.prototype._formatnode):
222         (WebInspector.ConsoleView.prototype._printArray):
223         (WebInspector.ConsoleMessage.prototype._format): commented and broke down the algorithm into parts.
224         (WebInspector.ConsoleMessage.prototype._formatWithSubstitutionString.append): handle substitution string formatting.
225         (WebInspector.ConsoleMessage.prototype._formatIndividualValue): handling individual value formatting.
226         (WebInspector.ConsoleCommandResult):
227         * inspector/front-end/InjectedScript.js: simplified regex formatting.
228         * inspector/front-end/inspector.js:
229         (WebInspector.linkifyStringAsFragment): converted new RegExp to literal for performance benefits.
230         * inspector/front-end/utilities.js: 
231         (Element.prototype.hasStyleClass): update inaccurate comment.
232         (String.prototype.trimURL): converted new RegExp to literal for performance benefits.
233
234 2009-11-30  Erik Arvidsson  <arv@chromium.org>
235
236         Reviewed by Adam Barth.
237
238         Clean up V8 bindings for CSSStyleDeclaration and CSSVariableDeclaration
239         https://bugs.webkit.org/show_bug.cgi?id=31895
240
241         No new tests. This is already covered by:
242                 fast/dom/CSSStyleDeclaration/css-computed-style-item.html
243                 fast/dom/CSSStyleDeclaration/css-style-item.html
244
245         * bindings/v8/V8Collection.h:
246         (WebCore::collectionStringIndexedPropertyGetter):
247         (WebCore::setCollectionStringIndexedGetter):
248         * bindings/v8/V8DOMWrapper.cpp:
249         (WebCore::V8DOMWrapper::getTemplate):
250
251 2009-11-30  Steve Block  <steveblock@google.com>
252
253         Reviewed by Eric Seidel.
254
255         Adds include of wtf/StdLibExtras.h for DEFINE_STATIC_LOCAL in V8 ScriptController.
256         https://bugs.webkit.org/show_bug.cgi?id=31932
257
258         Build fix only, no new tests.
259
260         * bindings/v8/ScriptController.cpp: Modified. Adds include of wtf/StdLibExtras.h.
261
262 2009-11-30  Steve Block  <steveblock@google.com>
263
264         Reviewed by Eric Seidel.
265
266         Adds PassOwnPtr include to ScriptExecutionContext.h.
267         https://bugs.webkit.org/show_bug.cgi?id=31929
268
269         Build fix only, no new tests.
270
271         * dom/ScriptExecutionContext.h: Modified. Adds PassOwnPtr include.
272
273 2009-11-30  Dirk Schulze  <krit@webkit.org>
274
275         Reviewed by Nikolas Zimmermann.
276
277         REGRESSION (r49757): masking-mask-01-b.svg rendered incorrectly
278         [https://bugs.webkit.org/show_bug.cgi?id=31980]
279
280         It turns out, that we did not handle maskUnits="userSpaceOnUse"
281         correctly. We just need to move the context of the maskImage
282         if maskContentUnits="objectBoundingBox". The context gets scaled
283         on this unit combination, so we have to substract the position of
284         the targetRect. On userSpaceOnUse the position just depends on the
285         position of the mask element.
286         I added a test with some senseless and reasonable values for size
287         and postion of the mask and it's contents. I also used every
288         combination of maskUnits and maskContentUnits to be sure, that it
289         is fixed this time.
290
291         Test: svg/custom/mask-with-all-units.svg
292
293         * svg/SVGMaskElement.cpp:
294         (WebCore::SVGMaskElement::drawMaskerContent):
295
296 2009-11-30  Steve Block  <steveblock@google.com>
297
298         Reviewed by Eric Seidel.
299
300         Adds ENABLE(INSPECTOR) guards around DOMWindow::inspectorTimelineAgent.
301         https://bugs.webkit.org/show_bug.cgi?id=31928
302
303         Build fix only, no new tests.
304
305         * page/DOMWindow.cpp: Modified. Adds ENABLE(INSPECTOR) guards around DOMWindow::inspectorTimelineAgent.
306
307 2009-11-30  Steve Block  <steveblock@google.com>
308
309         Reviewed by Eric Seidel.
310
311         Adds SHARED_WORKERS guards to V8 WorkerContextExecutionProxy.
312         https://bugs.webkit.org/show_bug.cgi?id=31926
313
314         Build fix only, no new tests.
315
316         * bindings/v8/WorkerContextExecutionProxy.cpp:
317         (WebCore::WorkerContextExecutionProxy::initContextIfNeeded):
318         (WebCore::WorkerContextExecutionProxy::convertToV8Object):
319         (WebCore::WorkerContextExecutionProxy::convertEventTargetToV8Object):
320
321 2009-11-30  Benjamin Poulain  <benjamin.poulain@nokia.com>
322
323         Reviewed by Kenneth Rohde Christiansen.
324
325         Chrome::contentsSizeChanged() is called when the content size has not changed
326         https://bugs.webkit.org/show_bug.cgi?id=31978
327
328         Do not trigger contentsSizeChaned() is the new size is the same as the old one.
329
330         * page/FrameView.cpp:
331         (WebCore::FrameView::setContentsSize):
332
333 2009-11-30  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
334
335         Reviewed by Kenneth Rohde Christiansen.
336
337         [Qt] Fix some compiler warnings seen on QtWebKit/Mac
338         https://bugs.webkit.org/show_bug.cgi?id=31962
339
340         No new tests as there is no functional change.
341
342         * platform/network/ResourceHandle.h: Make destructor virtual as 
343         after r50772 ResourceHandle has virtual functions.
344
345         * plugins/mac/PluginPackageMac.cpp: 
346         (WebCore::PluginPackage::fetchInfo): Fix typo WTF is a namespace
347         not a label
348
349         * plugins/mac/PluginViewMac.cpp:
350         (WebCore::PluginView::setNPWindowIfNeeded): Add l to the format
351         specifier
352
353 2009-11-30  Xan Lopez  <xlopez@igalia.com>
354
355         Reviewed by Gustavo Noronha.
356
357         Add new headers to sources list.
358
359         * GNUmakefile.am:
360
361 2009-11-30  Girish Ramakrishnan  <girish@forwardbias.in>
362
363         Reviewed by Holger Freyther.
364
365         [Qt] Mac Plugins : Get context menu to work in QGraphicsView
366         
367         Flash expects the value in record.where to be the global position for
368         displaying the context menu.
369         
370         https://bugs.webkit.org/show_bug.cgi?id=31979
371
372         * plugins/mac/PluginViewMac.cpp:
373         (WebCore::PluginView::handleMouseEvent):
374
375 2009-11-30  Steve Block  <steveblock@google.com>
376
377         Reviewed by Eric Seidel.
378
379         Adds PLATFORM(CHROMIUM) guards around memory usage code in V8GCController.
380         https://bugs.webkit.org/show_bug.cgi?id=31925
381
382         This code uses ChromiumBridge and Chromium-specific constant values not
383         appropriate for other platforms such as Android.
384
385         Build fix only, no new tests.
386
387         * bindings/v8/V8GCController.cpp: Modified. Adds PLATFORM(CHROMIUM) around Chromium-specific code.
388
389 2009-11-29  Brent Fulgham  <bfulgham@webkit.org>
390
391         Build fix.
392
393         Correct draw signature used in ImageCairoWin.cpp.
394
395         * platform/graphics/win/ImageCairoWin.cpp:
396         (WebCore::BitmapImage::getHBITMAPOfSize):
397         (WebCore::BitmapImage::drawFrameMatchingSourceSize):
398
399 2009-11-28  Oliver Hunt  <oliver@apple.com>
400
401         Reviewed by Sam Weinig.
402
403         postMessage should serialize File objects
404         https://bugs.webkit.org/show_bug.cgi?id=31955
405
406         Update SerializedScriptValue to include support for
407         File objects in the serialized object graph.
408
409         * bindings/js/SerializedScriptValue.cpp:
410         (WebCore::SerializedScriptValueData::SerializedScriptValueData):
411         (WebCore::SerializingTreeWalker::convertIfTerminal):
412         (WebCore::DeserializingTreeWalker::convertIfTerminal):
413         * bindings/js/SerializedScriptValue.h:
414         (WebCore::SerializedScriptValueData::):
415         (WebCore::SerializedScriptValueData::asString):
416
417 2009-11-29  Simon Fraser  <simon.fraser@apple.com>
418
419         Reviewed by Dan Bernstein.
420
421         Optimize the hierarchy rebuilding of compositing layers
422         https://bugs.webkit.org/show_bug.cgi?id=31879
423         
424         When updating the compositing layer hierarchy, instead of removing all
425         child layers and then re-adding them one by one, build a vector of child
426         layers, and set them in one go.
427         
428         * platform/graphics/GraphicsLayer.h:
429         * platform/graphics/GraphicsLayer.cpp:
430         (WebCore::GraphicsLayer::setChildren): New method that takes a Vector of child
431         GraphicsLayers.
432         
433         * platform/graphics/mac/GraphicsLayerCA.h: Override setChildren().
434         * platform/graphics/win/GraphicsLayerCACF.h: Ditto.
435         * platform/graphics/mac/GraphicsLayerCA.mm: 
436         (WebCore::GraphicsLayerCA::setChildren): Implement setChildren() to 
437         set the bit that notes that sublayers changed.
438         * platform/graphics/win/GraphicsLayerCACF.cpp:
439         (WebCore::GraphicsLayerCACF::setChildren): Implement setChildren() to 
440         udpate sublayers, with a note that this is not efficient.
441         
442         * rendering/RenderLayerCompositor.h:
443         * rendering/RenderLayerCompositor.cpp:
444         (WebCore::RenderLayerCompositor::updateCompositingLayers):
445         When updating compositing layers, use the faster updateLayerTreeGeometry() if
446         we know that no layer hierarchy changes are needed, and, at the root, use
447         the vector returned from rebuildCompositingLayerTree() to attach the root
448         layer.
449         (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree): Changed to
450         collect child layers into Vectors of GraphicsLayers, which can be set as
451         layer children in one go.
452         (WebCore::RenderLayerCompositor::updateLayerTreeGeometry): Split out from
453         rebuildCompositingLayerTree() for simplicity, and called when we just need to
454         update layer geometry, without doing any reparenting.
455
456 2009-11-29  Daniel Bates  <dbates@webkit.org>
457
458         Reviewed by Adam Barth.
459
460         https://bugs.webkit.org/show_bug.cgi?id=31971
461
462         Updated comment to reflect latest XSSAuditor bindings.
463
464         No functionality was changed. So, no new tests.
465
466         * page/XSSAuditor.h:
467
468 2009-11-29  Daniel Bates  <dbates@webkit.org>
469
470         Reviewed by Eric Seidel.
471
472         https://bugs.webkit.org/show_bug.cgi?id=31969
473
474         Removes unnecessary #include files.
475
476         No functionality was changed. So, no new tests.
477
478         * css/CSSComputedStyleDeclaration.cpp: Removed include CachedImage.h, and
479         Pair.h
480         * css/CSSCursorImageValue.cpp: Removed include RenderStyle.h
481         * css/CSSFontFaceSrcValue.cpp: Removed include Node.h
482         * css/CSSFontSelector.cpp: Removed include NodeList.h
483         * css/CSSGradientValue.cpp: Removed include GraphicsContext.h, ImageBuffer.h
484         * css/CSSImageValue.cpp: Removed include RenderStyle.h
485         * css/CSSImportRule.cpp: Removed include MediaList.h
486         * css/CSSMutableStyleDeclaration.cpp: Removed include CSSProperty.h
487         * css/CSSRule.cpp: Removed include CSSStyleSheet.h
488         * css/CSSStyleSelector.cpp: Removed include CSSFontFace.h,
489         CSSFontFaceSource.h, and CSSProperty.h
490         * page/EventSource.h: Removed include EventListener.h
491
492 2009-11-29  Daniel Bates  <dbates@webkit.org>
493
494         Reviewed by Eric Seidel.
495
496         https://bugs.webkit.org/show_bug.cgi?id=31965
497
498         Removed #include KeyframeList.h from CSSStyleSelector.h. Instead,
499         forward declared it.
500
501         As a side effect, we need to #include KeyframeList.h in
502         RenderLayerBacking.cpp.
503
504         No functionality was changed. So, no new tests.
505
506         * css/CSSStyleSelector.cpp:
507         * css/CSSStyleSelector.h: Removed #include KeyframeList.h
508         * rendering/RenderLayerBacking.cpp: Added #include KeyframeList.h
509
510 2009-11-29  Shu Chang  <Chang.Shu@nokia.com>
511
512         Reviewed by Eric Seidel.
513
514         Continue to search for matching node in the case where multiple nodes
515         have the same id.
516         https://bugs.webkit.org/show_bug.cgi?id=31428
517
518         Test: fast/dom/Element/id-in-node-list-index01.html
519
520         * dom/DynamicNodeList.cpp:
521         (WebCore::DynamicNodeList::itemWithName):
522
523 2009-11-29  Daniel Bates  <dbates@webkit.org>
524
525         Reviewed by Eric Seidel.
526
527         https://bugs.webkit.org/show_bug.cgi?id=31966
528
529         Removed #include RenderStyle.h from file KeyframeAnimation.h. Instead,
530         forward declared it.
531
532         No functionality was changed. So, no new tests.
533
534         * page/animation/KeyframeAnimation.cpp:
535         * page/animation/KeyframeAnimation.h:
536
537 2009-11-29  Daniel Bates  <dbates@webkit.org>
538
539         Unreviewed, fix change log entry date.
540
541         For some reason, bugzilla-tool did not update the date in the change
542         log entry for my last commit (r51468). So, this commit fixes the date
543         of that entry.
544
545 2009-11-29  Daniel Bates  <dbates@webkit.org>
546
547         Reviewed by Dan Bernstein.
548
549         https://bugs.webkit.org/show_bug.cgi?id=31964
550
551         Removed #include StringImpl, StyleImage. Instead, forward declared them.
552         Also, we can substitute #include <wtf/PassRefPtr.h> for #include PlatformString.h,
553         since it seems we only really used it to include PassRefPtr.h.
554
555         No functionality was changed. So, no new tests.
556
557         * rendering/style/ContentData.h:
558
559 2009-11-29  Zoltan Horvath  <zoltan@webkit.org>
560
561         Reviewed by Eric Seidel.
562
563         Allow custom memory allocation control for classes of the rendering and storage directory in WebCore
564         https://bugs.webkit.org/show_bug.cgi?id=31906
565
566         Inherits the following classes from Noncopyable because these are instantiated
567         by 'new' and no need to be copyable:
568
569         class/struct name               - instantiated at: WebCore/'location'
570
571         class SQLTransactionClient      - storage/DatabaseThread.cpp:45
572         class SQLTransactionCoordinator - storage/DatabaseThread.cpp:46
573         class OriginUsageRecord         - storage/OriginQuotaManager.cpp:66
574         class DatabaseTracker           - storage/DatabaseTracker.cpp:62
575         class ScrollbarTheme            - (its child class) rendering/RenderScrollbarTheme.cpp:35
576         class RenderSelectionInfoBase   - (its child class) rendering/RenderView.cpp:310
577         class RenderOverflow            - rendering/RenderBox.cpp:2846
578
579         Inherits the following classes from FastAllocBase because these are instantiated by 'new':
580
581         struct FillLayer                - css/CSSStyleSelector.cpp:197
582         struct ShadowData               - rendering/style/ShadowData.cpp:35
583         class CounterContent            - css/CSSStyleSelector.cpp:4111
584
585         * platform/ScrollbarTheme.h:
586         * rendering/RenderOverflow.h:
587         * rendering/RenderSelectionInfo.h:
588         * rendering/style/CounterContent.h:
589         * rendering/style/FillLayer.h:
590         * rendering/style/ShadowData.h:
591         * storage/DatabaseTracker.h:
592         * storage/OriginUsageRecord.h:
593         * storage/SQLTransactionClient.h:
594         * storage/SQLTransactionCoordinator.h:
595
596 2009-11-28  Adam Barth  <abarth@webkit.org>
597
598         Reviewed by Dimitri Glazkov.
599
600         [Chromium] Sify compose button alerts error
601         https://bugs.webkit.org/show_bug.cgi?id=31394
602
603         Test: http/tests/security/calling-versus-current.html
604
605         We're supposed to use the calling context for security checks.  In JSC
606         land, this is the lexicalGlobalObject.
607
608         * bindings/v8/V8Proxy.cpp:
609         (WebCore::V8Proxy::canAccessPrivate):
610
611 2009-11-27  Shinichiro Hamaji  <hamaji@chromium.org>
612
613         Unreviewed Chromium build fix introduced by r51428.
614
615         [Chromium] Ignore line-height CSS property for PushButton
616         https://bugs.webkit.org/show_bug.cgi?id=31712
617
618         * rendering/RenderThemeChromiumSkia.cpp:
619         (WebCore::RenderThemeChromiumSkia::adjustButtonStyle):
620
621 2009-11-27  Shinichiro Hamaji  <hamaji@chromium.org>
622
623         Unreviewed Chromium test fix by reverting r51413.
624
625         [v8] Do not check the thread when accessing DOMDataStore
626         https://bugs.webkit.org/show_bug.cgi?id=31877
627
628         * bindings/v8/V8DOMMap.cpp:
629         (WebCore::getDOMNodeMap):
630         (WebCore::getDOMObjectMap):
631         (WebCore::getActiveDOMObjectMap):
632         (WebCore::getDOMSVGElementInstanceMap):
633         (WebCore::getDOMSVGObjectWithContextMap):
634
635 2009-11-27  Daniel Bates  <dbates@webkit.org>
636
637         Unreviewed, comment fix.
638
639         Corrected misspelling of the word "implemented".
640
641         * inspector/front-end/InjectedScriptAccess.js:
642
643 2009-11-27  Daniel Bates  <dbates@webkit.org>
644
645         Reviewed by Adam Barth.
646
647         https://bugs.webkit.org/show_bug.cgi?id=31940
648
649         Makes the error messages more descriptive when we refuse to load an object/embed or
650         refuse to load from the document base URL.
651
652         * page/XSSAuditor.cpp:
653         (WebCore::XSSAuditor::canLoadObject): Changed console message to be more descriptive.
654         (WebCore::XSSAuditor::canSetBaseElementURL): Ditto.
655
656 2009-11-27  Yury Semikhatsky  <yurys@chromium.org>
657
658         Reviewed by Pavel Feldman.
659
660         This is a WebCore part of the fix that allows to view plugin
661         resources loaded by plugins.
662
663         https://bugs.webkit.org/show_bug.cgi?id=31832
664
665         * inspector/InspectorController.cpp:
666         (WebCore::InspectorController::willSendRequest):
667         (WebCore::InspectorController::didReceiveResponse):
668         (WebCore::InspectorController::didReceiveContentLength):
669         (WebCore::InspectorController::didFinishLoading):
670         (WebCore::InspectorController::didFailLoading):
671         * inspector/InspectorController.h:
672         * inspector/InspectorResource.cpp:
673         (WebCore::InspectorResource::addLength):
674         * loader/ResourceLoadNotifier.cpp:
675         (WebCore::ResourceLoadNotifier::didFailToLoad):
676         (WebCore::ResourceLoadNotifier::dispatchWillSendRequest):
677         (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse):
678         (WebCore::ResourceLoadNotifier::dispatchDidReceiveContentLength):
679         (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
680
681 2009-11-27  Yury Semikhatsky  <yurys@chromium.org>
682
683         Reviewed by Pavel Feldman.
684
685         Instead of generating negative identifiers for cached resources in
686         InspectorController and extending identifier type from 'unsigned long' to 'long
687         long' reuse progress tracker from the inspected page to generate those
688         identifiers. It guarantees that InspectorResources have unique ids since
689         all of them are generated by that progress tracker.
690
691         Added a couple new overloaded methods to Script* objects that accept
692         long and unsigned long arguments. These types of argumens have already
693         been passed as long long.
694
695         https://bugs.webkit.org/show_bug.cgi?id=31921
696
697         * bindings/js/ScriptFunctionCall.cpp:
698         (WebCore::ScriptFunctionCall::appendArgument):
699         * bindings/js/ScriptFunctionCall.h:
700         * bindings/js/ScriptObject.cpp:
701         (WebCore::ScriptObject::set):
702         * bindings/js/ScriptObject.h:
703         * bindings/v8/ScriptFunctionCall.cpp:
704         (WebCore::ScriptFunctionCall::appendArgument):
705         * bindings/v8/ScriptFunctionCall.h:
706         * bindings/v8/ScriptObject.cpp:
707         (WebCore::ScriptObject::set):
708         * bindings/v8/ScriptObject.h:
709         * inspector/InspectorBackend.cpp:
710         (WebCore::InspectorBackend::dispatchOnInjectedScript):
711         * inspector/InspectorController.cpp:
712         (WebCore::InspectorController::InspectorController):
713         (WebCore::InspectorController::getTrackedResource):
714         (WebCore::InspectorController::didLoadResourceFromMemoryCache): Use inspected page's ProgressTracker to generate unique identifiers for cached resources in InspectorController.
715         * inspector/InspectorController.h:
716         * inspector/InspectorDOMAgent.cpp:
717         (WebCore::InspectorDOMAgent::buildObjectForNode):
718         (WebCore::InspectorDOMAgent::buildObjectForEventListener):
719         * inspector/InspectorFrontend.cpp:
720         (WebCore::InspectorFrontend::addResource):
721         (WebCore::InspectorFrontend::updateResource):
722         (WebCore::InspectorFrontend::removeResource):
723         (WebCore::InspectorFrontend::updateFocusedNode):
724         * inspector/InspectorFrontend.h:
725         * inspector/InspectorResource.cpp:
726         (WebCore::InspectorResource::InspectorResource):
727         (WebCore::InspectorResource::createCached):
728         * inspector/InspectorResource.h: Change InspectorResource identifier type from 'long long' to 'unsigned long'.
729         (WebCore::InspectorResource::create):
730         (WebCore::InspectorResource::identifier):
731         * inspector/TimelineRecordFactory.cpp:
732         (WebCore::TimelineRecordFactory::createResourceSendRequestRecord):
733         (WebCore::TimelineRecordFactory::createResourceReceiveResponseRecord):
734         (WebCore::TimelineRecordFactory::createResourceFinishRecord):
735
736 2009-11-26  Shinichiro Hamaji  <hamaji@chromium.org>
737
738         Reviewed by Dan Bernstein.
739
740         Assertion failure in RenderBlock::positionForPointWithInlineChildren when running fast/inline/relative-positioned-overflow.html
741         https://bugs.webkit.org/show_bug.cgi?id=29966
742
743         When an empty inline element is clicked, the root inline box has
744         no leaf children. Use the renderer of a normal child instead.
745
746         This change resolves Windows port's assertion failure in a layout test.
747         Also, this fixes the behavior when a user drags the mouse from an
748         empty inline element to above texts.
749
750         Test: editing/selection/last-empty-inline.html
751
752         * rendering/RenderBlock.cpp:
753         (WebCore::RenderBlock::positionForPointWithInlineChildren):
754
755 2009-11-26  Kent Tamura  <tkent@chromium.org>
756
757         Reviewed by Eric Seidel.
758
759         [Chromium] Ignore line-height CSS property specified to push buttons on
760         Windows and Linux.
761         https://bugs.webkit.org/show_bug.cgi?id=31712
762
763         LayoutTests/fast/forms/control-restrict-line-height.html checks that the
764         following controls should ignore line-height CSS property.
765          - <select>
766          - <input type=button>
767          - <input type=search>
768         This change addresses the <input type=button> issue with Chromium/Windows
769         and Chromium/Linux.
770         
771         * rendering/RenderThemeChromiumSkia.cpp: Implement adjustButtonStyle() to ignore line-height.
772         * rendering/RenderThemeChromiumSkia.h: Declare adjustButtonStyle().
773
774 2009-11-26  Kinuko Yasuda  <kinuko@chromium.com>
775
776         Reviewed by Eric Seidel.
777
778         Remove the special charset meta tag in the clipboard so that
779         copy-and-paste with interchange breaklines/spaces works correctly
780         within WebKit.
781
782         No new tests.  Layout tests that involve copy-and-paste with
783         interchange breaklines (like editing/pasteboard/paste-line-endings-00?)
784         should pass on Mac/Chromium with this fix.
785
786         * platform/chromium/ClipboardChromium.cpp:
787         * platform/chromium/PasteboardChromium.cpp:
788         (WebCore::Pasteboard::documentFragment):
789
790 2009-11-26  İsmail Dönmez  <ismail@namtrac.org>
791
792         Reviewed by Eric Seidel.
793
794         Compile with QT_NO_WHEELEVENT defined.
795
796         * platform/qt/WheelEventQt.cpp:
797         (WebCore::PlatformWheelEvent::applyDelta):
798
799 2009-11-26  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
800
801         Reviewed by Oliver Hunt.
802
803         Move GOwnPtr* from wtf to wtf/gtk
804         https://bugs.webkit.org/show_bug.cgi?id=31793
805
806         No new tests as there is no functional change.
807
808         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: Change the
809           path for GOwnPtr.h.
810         * platform/text/TextEncoding.cpp: Ditto.
811         * platform/text/gtk/TextCodecGtk.cpp: Ditto.
812
813 2009-11-26  Yury Semikhatsky  <yurys@chromium.org>
814
815         Not reviewed. Build fix: revert r51421.
816
817         * inspector/InspectorController.cpp:
818         (WebCore::InspectorController::willSendRequest):
819         (WebCore::InspectorController::didReceiveResponse):
820         (WebCore::InspectorController::didReceiveContentLength):
821         (WebCore::InspectorController::didFinishLoading):
822         (WebCore::InspectorController::didFailLoading):
823         * inspector/InspectorController.h:
824         * inspector/InspectorResource.cpp:
825         (WebCore::InspectorResource::addLength):
826         * loader/ResourceLoadNotifier.cpp:
827         (WebCore::ResourceLoadNotifier::didFailToLoad):
828         (WebCore::ResourceLoadNotifier::dispatchWillSendRequest):
829         (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse):
830         (WebCore::ResourceLoadNotifier::dispatchDidReceiveContentLength):
831         (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
832
833 2009-11-26  Yury Semikhatsky  <yurys@chromium.org>
834
835         Reviewed by Pavel Feldman.
836
837         This is a WebCore part of the fix that allows to view plugin
838         resources loaded by plugins.
839
840         https://bugs.webkit.org/show_bug.cgi?id=31832
841
842         * inspector/InspectorController.cpp:
843         (WebCore::InspectorController::willSendRequest):
844         (WebCore::InspectorController::didReceiveResponse):
845         (WebCore::InspectorController::didReceiveContentLength):
846         (WebCore::InspectorController::didFinishLoading):
847         (WebCore::InspectorController::didFailLoading):
848         * inspector/InspectorController.h: Remove unused DocumentLoader parameters from inspector methods.
849         * inspector/InspectorResource.cpp:
850         (WebCore::InspectorResource::addLength): Update loading end time when new data are received.
851         * loader/ResourceLoadNotifier.cpp:
852         (WebCore::ResourceLoadNotifier::didFailToLoad): Notify InspectorController about the failure.
853         (WebCore::ResourceLoadNotifier::dispatchWillSendRequest):
854         (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse):
855         (WebCore::ResourceLoadNotifier::dispatchDidReceiveContentLength):
856         (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
857
858 2009-11-26  Daniel Bates  <dbates@webkit.org>
859
860         Reviewed by Pavel Feldman.
861
862         https://bugs.webkit.org/show_bug.cgi?id=21554
863
864         Implements support for hovering over <img> src to display the height and width of that image
865         in a tooltip. Displays both the displayable and natural dimensions of the image.
866
867         Test: inspector/elements-img-tooltip.html
868
869         * inspector/front-end/ElementsTreeOutline.js:
870         (WebInspector.ElementsTreeElement.prototype.createTooltipForImageNode): Added.
871         (WebInspector.ElementsTreeElement.prototype._updateTitle.callback):
872         (WebInspector.ElementsTreeElement.prototype._updateTitle):
873         (WebInspector.ElementsTreeElement.prototype._nodeTitleInfo):
874         * inspector/front-end/ObjectProxy.js:
875         (WebInspector.ObjectProxy.getPropertiesAsync): Added.
876         * inspector/front-end/inspector.js:
877         (WebInspector.linkifyURLAsNode): Added tooltipText argument.
878         (WebInspector.linkifyURL): Ditto.
879
880 2009-11-26  Kevin Ollivier  <kevino@theolliviers.com>
881
882         wx build fix after drawPattern API change.
883
884         * platform/graphics/wx/ImageWx.cpp:
885         (WebCore::Image::drawPattern):
886
887 2009-11-26  Anton Muhin  <antonm@chromium.org>
888
889         Reviewed by Adam Barth.
890
891         Use an internal field instead of hidden property to speedup lookup
892         of entered isolated world.
893
894         Plus some inlinings.
895         https://bugs.webkit.org/show_bug.cgi?id=31884
896
897         Covered by layout tests + manual running of some benchmarks as
898         content scripts.
899
900         * bindings/v8/V8DOMWrapper.cpp:
901         * bindings/v8/V8DOMWrapper.h:
902         (WebCore::V8DOMWrapper::setDOMWrapper):
903         * bindings/v8/V8HiddenPropertyName.h:
904         * bindings/v8/V8IsolatedWorld.cpp:
905         (WebCore::V8IsolatedWorld::V8IsolatedWorld):
906         * bindings/v8/V8IsolatedWorld.h:
907         (WebCore::V8IsolatedWorld::getEntered):
908         (WebCore::V8IsolatedWorld::getGlobalObject):
909         * bindings/v8/custom/V8CustomBinding.h:
910
911 2009-11-26  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
912
913         Reviewed by Kenneth Rohde Christiansen.
914
915         [Qt] Corrects build break on Windows.
916
917         Rename platform/text/qt/TextBoundaries.cpp to TextBoundariesQt.cpp since
918         platform/text/TextBoundaries.cpp was compiled instead when compiling with nmake.
919
920         * WebCore.pro:
921         * platform/text/qt/TextBoundariesQt.cpp: Renamed from WebCore/platform/text/qt/TextBoundaries.cpp.
922         (WebCore::findNextWordFromIndex):
923         (WebCore::findWordBoundary):
924
925 2009-11-26  Anton Muhin  <antonm@chromium.org>
926
927         Reviewed by Adam Barth.
928
929         Do not check if the thread is main or not when accessing DOMDataStore as currently in Chromium WebKit is used in main thread only.
930         https://bugs.webkit.org/show_bug.cgi?id=31877
931
932         Covered by layout tests and buildbots.
933
934         * bindings/v8/V8DOMMap.cpp:
935         (WebCore::getDOMNodeMap):
936         (WebCore::getDOMObjectMap):
937         (WebCore::getActiveDOMObjectMap):
938         (WebCore::getDOMSVGElementInstanceMap):
939         (WebCore::getDOMSVGObjectWithContextMap):
940
941 2009-11-26  Girish Ramakrishnan  <girish@forwardbias.in>
942
943         Reviewed by Holger Freyther.
944
945         [Qt] Mac Plugins : Pass mouse position relative to the fake window
946         
947         When using off-screen rendering, we need to pass mouse events relative
948         to the fake window instead of the global position.
949         
950         https://bugs.webkit.org/show_bug.cgi?id=31794
951
952         * plugins/mac/PluginViewMac.cpp:
953         (WebCore::PluginView::platformStart):
954         (WebCore::PluginView::handleMouseEvent):
955
956 2009-11-24  Holger Hans Peter Freyther  <zecke@selfish.org>
957
958         Reviewed by Eric Seidel.
959
960         [Qt] Use QNetworkReply::rawHeaderPairs
961         https://bugs.webkit.org/show_bug.cgi?id=31826
962
963         The QNetworkReply is internally storing the HTTP headers
964         as a list of pairs. Currently we have to ask the QNetworkReply
965         to put all header names into a QStringList. Afterwards we will
966         iterate over this QStringList and ask the QNetworkReply to
967         give us the value for this header name. The current Qt implementation
968         is doing a linear to find the header value.
969
970         Use a new API to directly access the list of pairs and push
971         this into WebCore. This avoids doing some allocations and doing
972         linear searches from within a loop.
973
974         * platform/network/qt/QNetworkReplyHandler.cpp:
975         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
976
977 2009-11-21  Holger Hans Peter Freyther  <zecke@selfish.org>
978
979         Reviewed by Kenneth Rohde Christiansen.
980
981         [Qt] Add Qt specific information of RenderPart
982         https://bugs.webkit.org/show_bug.cgi?id=31203
983
984         The WebCore::Widget of the RenderPart (RenderWidget) might be
985         backed with a platform widget. Print both the WebCore::Widget
986         and platform widget state. In the above bug we had a problem
987         that the WebCore::Widget was invisible but the QWidget was
988         visible.
989
990         * rendering/RenderTreeAsText.cpp:
991         (WebCore::operator<<): Add special case for RenderPart
992
993 2009-11-17  Holger Hans Peter Freyther  <zecke@selfish.org>
994
995         Reviewed by Kenneth Rohde Christiansen.
996
997         [Qt] Call Widget::setSelfVisible from hide/show
998         https://bugs.webkit.org/show_bug.cgi?id=31203
999
1000         Call Widget::setSelfVisible from Widget::show and
1001         Widget::hide and use isParentVisible to decide
1002         if the widget should be shown. This way client
1003         code can rely on isVisible.
1004
1005         Change PluginViewQt::show, PluginViewQt::hide to
1006         call the base class as it is doing the right thing
1007         now. Add an assert verify that platfomWidget and
1008         platformPluginWidget are the same.
1009
1010         * manual-tests/qt/qtplugin.html: Modify manual test
1011         * platform/qt/WidgetQt.cpp:
1012         (WebCore::Widget::show):
1013         (WebCore::Widget::hide):
1014         * plugins/qt/PluginViewQt.cpp:
1015         (WebCore::PluginView::show):
1016         (WebCore::PluginView::hide):
1017
1018 2009-11-24  Holger Hans Peter Freyther  <zecke@selfish.org>
1019
1020         Reviewed by Alexey Proskuryakov.
1021
1022         Fix compilation of REQUEST_DEBUG debug code
1023         https://bugs.webkit.org/show_bug.cgi?id=31850
1024
1025         In r47907 the single parameter KURL constructor to parse
1026         from a WebCore::String was replaced with a two parameter
1027         constructor. I think in this debug case parsing the urls
1028         again is no problem and I have changed the code to use the
1029         two parameter version.
1030
1031         * loader/loader.cpp:
1032         (WebCore::Loader::Host::didFinishLoading):
1033
1034 2009-11-26  Søren Gjesse  <sgjesse@chromium.org>
1035
1036         Reviewed by Pavel Feldman.
1037
1038         [V8] Avoid using JavaScript objects as context data
1039         https://bugs.webkit.org/show_bug.cgi?id=31873
1040
1041         Change the context "data" from a JavaScript object holding the two properties type and value to
1042         a string holding type and value separated by a comma.
1043
1044         * bindings/v8/V8Proxy.cpp:
1045         (WebCore::V8Proxy::setInjectedScriptContextDebugId):
1046         (WebCore::V8Proxy::setContextDebugId):
1047         (WebCore::V8Proxy::contextDebugId):
1048
1049 2009-11-25  Dimitri Glazkov  <dglazkov@chromium.org>
1050
1051         Reviewed by David Levin.
1052
1053         [Chromium] Implement canSetValueAttribute in the API, the clean-up part.
1054         https://bugs.webkit.org/show_bug.cgi?id=31894
1055
1056         * accessibility/chromium/AccessibilityObjectWrapper.h: Added RefCounted decl.
1057         (WebCore::AccessibilityObjectWrapper::AccessibilityObjectWrapper): Removed mis-refcountingness.
1058
1059 2009-11-25  Kenneth Russell  <kbr@google.com>
1060
1061         Reviewed by Oliver Hunt.
1062
1063         Off-by-one error in index validation for drawElements and drawArrays
1064         https://bugs.webkit.org/show_bug.cgi?id=31891
1065
1066         Fixed computation of number of elements for bound array objects.
1067
1068         Test: fast/canvas/webgl/index-validation.html
1069
1070         * html/canvas/WebGLRenderingContext.cpp:
1071         (WebCore::WebGLRenderingContext::vertexAttribPointer):
1072
1073 2009-11-25  Dmitry Titov  <dimich@chromium.org>
1074
1075         Reviewed by David Levin.
1076
1077         Update SharedScript to use eventNames() instead of EventNames()
1078         https://bugs.webkit.org/show_bug.cgi?id=31890
1079
1080         * SharedScript/WebKitSharedScript.cpp:
1081         (WebCore::LoadEventTask::performTask):
1082
1083 2009-11-25  Eric Carlson  <eric.carlson@apple.com>
1084
1085         Reviewed by Simon Fraser.
1086
1087         <rdar://problem/7409331> Windows: Support closed caption in <video> element
1088
1089         Enable closed captions in QuickTime/Windows media engine.
1090
1091         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
1092         (WebCore::MediaPlayerPrivate::hasClosedCaptions):
1093         (WebCore::MediaPlayerPrivate::setClosedCaptionsVisible):
1094             New, all through to m_qtMovie.
1095
1096         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
1097             Make all but the destructor private since MediaPlayer call through the media
1098             engine interface.
1099
1100         * platform/graphics/win/QTMovieWin.cpp:
1101         (QTMovieWin::disableUnsupportedTracks):
1102             Use handy new constants for QuickTime track types.
1103         (QTMovieWin::hasClosedCaptions):
1104         (QTMovieWin::setClosedCaptionsVisible):
1105             New, closed caption support.
1106         * platform/graphics/win/QTMovieWin.h:
1107
1108         * rendering/RenderMediaControls.cpp:
1109         (WebCore::RenderMediaControls::paintMediaControlsPart):
1110             Deal with closed caption buttons.
1111
1112         * rendering/RenderThemeWin.cpp:
1113         (WebCore::RenderThemeWin::shouldRenderMediaControlPart):
1114             New, don't ask the media engine if it has closed captions unless the Safari theme will
1115             be able to render the button.
1116         (WebCore::RenderThemeWin::paintMediaToggleClosedCaptionsButton):
1117             New.
1118         * rendering/RenderThemeWin.h:
1119
1120 2009-11-25  Drew Wilson  <atwilson@chromium.org>
1121
1122         Reviewed by David Levin.
1123
1124         MessagePorts always look remotely entangled even when closed.
1125         https://bugs.webkit.org/show_bug.cgi?id=31698
1126
1127         Tests: Existing tests suffice, Chromium soak test passes now.
1128
1129         * bindings/v8/custom/V8CustomBinding.h:
1130         Removed kMessagePortEntangledPortIndex which is no longer used.
1131         * bindings/v8/V8GCController.cpp:
1132         (WebCore::GCPrologueVisitor::visitDOMWrapper):
1133         Simplified GC code to reflect the Chromium MessagePort implementation
1134         (locallyEntangledPort() always returns false).
1135         (WebCore::GCEpilogueVisitor::visitDOMWrapper):
1136         Cleaned up epilogue code to handle the case where the port gets closed
1137         in mid-GC (due to the parent context being freed).
1138         * dom/MessagePort.cpp:
1139         (WebCore::MessagePort::MessagePort):
1140         (WebCore::MessagePort::close):
1141         Now sets the closed flag.
1142         (WebCore::MessagePort::disentanglePorts):
1143         Updated to use new isCloned() API instead of relying on isEntangled(), which was incorrect.
1144         * dom/MessagePort.h:
1145         Added a m_closed flag and updated isEntangled() to check it.
1146         (WebCore::MessagePort::isEntangled):
1147         Now returns false if the port has been closed.
1148         (WebCore::MessagePort::isCloned):
1149         Added new API to differentiate between cloned and closed ports (closed ports can still be passed to postMessage).
1150
1151 2009-11-25  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
1152
1153         Reviewed by Simon Hausmann.
1154
1155         [Qt] Fix crash of QtWebKit on any page with Flash when compiled with MinGW.
1156
1157         Fix inline assembly, don't dereference the function pointer twice.
1158
1159         * plugins/win/PluginViewWin.cpp:
1160         (WebCore::PluginView::hookedBeginPaint):
1161         (WebCore::PluginView::hookedEndPaint):
1162
1163 2009-11-22  Jakub Wieczorek  <faw217@gmail.com>
1164
1165         Reviewed by Adam Barth.
1166
1167         [Qt] Remove the Referer header when redirecting to a non-secure site
1168         https://bugs.webkit.org/show_bug.cgi?id=31785
1169
1170         This makes Qt pass two tests introduced in r50226.
1171
1172         * platform/network/qt/QNetworkReplyHandler.cpp:
1173         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
1174
1175 2009-11-25  Andrei Popescu  <andreip@google.com>
1176
1177         Reviewed by Dimitri Glazkov.
1178
1179         The select elements do not reflect the actual choice the user makes.
1180         https://bugs.webkit.org/show_bug.cgi?id=31831
1181
1182         Handle the drawing of the listboxes in Android code.
1183
1184         No new features, just fixing an Android problem. Existing layout tests are sufficient.
1185
1186         * platform/android/RenderThemeAndroid.cpp:
1187         (WebCore::theme):
1188         (WebCore::RenderThemeAndroid::platformActiveSelectionBackgroundColor):
1189         (WebCore::RenderThemeAndroid::platformActiveListBoxSelectionBackgroundColor):
1190         (WebCore::RenderThemeAndroid::platformInactiveListBoxSelectionBackgroundColor):
1191         (WebCore::RenderThemeAndroid::platformActiveListBoxSelectionForegroundColor):
1192         (WebCore::RenderThemeAndroid::platformInactiveListBoxSelectionForegroundColor):
1193         (WebCore::RenderThemeAndroid::adjustButtonStyle):
1194         (WebCore::RenderThemeAndroid::paintTextArea):
1195         (WebCore::RenderThemeAndroid::adjustListboxStyle):
1196         * platform/android/RenderThemeAndroid.h:
1197
1198 2009-11-25  Alexander Pavlov  <apavlov@chromium.org>
1199
1200         Reviewed by Pavel Feldman.
1201
1202         Load InspectorResource mime type from CachedResource for 304 responses
1203
1204         For network libraries that do not merge cache data into 304 ResourceResponses,
1205         the mime type for cached resources is unknown.
1206         https://bugs.webkit.org/show_bug.cgi?id=31868
1207
1208         * inspector/InspectorResource.cpp:
1209         (WebCore::InspectorResource::updateResponse):
1210         (WebCore::InspectorResource::updateScriptObject):
1211         (WebCore::InspectorResource::type):
1212
1213 2009-11-25  Andrei Popescu  <andreip@google.com>
1214
1215         Reviewed by Eric Seidel.
1216
1217         Android is missing implementation of SSL Key generator functions.
1218         https://bugs.webkit.org/show_bug.cgi?id=31825
1219
1220         This change adds the PlatformBridge class to platform/android.
1221         PlarformBridge is used to access the embedding layer for things
1222         such as key generator, cookies, plugins, etc.
1223
1224         No new tests required, this is platform code.
1225
1226         * platform/android/PlatformBridge.h: Added.
1227         * platform/android/SSLKeyGeneratorAndroid.cpp: Added.
1228         (WebCore::getSupportedKeySizes):
1229         (WebCore::signedPublicKeyAndChallengeString):
1230
1231 2009-11-25  Philippe Normand  <pnormand@igalia.com>
1232
1233         Reviewed by Eric Seidel.
1234
1235         [GTK] use gst_init_check() instead of gst_init()
1236         https://bugs.webkit.org/show_bug.cgi?id=31864
1237
1238         Use gst_init_check() instead of gst_init() to prevent eventual
1239         unexpected exit of the application.
1240
1241         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
1242         (WebCore::do_gst_init):
1243         (WebCore::MediaPlayerPrivate::isAvailable):
1244
1245 2009-11-25  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
1246
1247         Reviewed by Xan Lopez.
1248
1249         Some tests are crashing from time to time
1250         https://bugs.webkit.org/show_bug.cgi?id=31866
1251
1252         Make sure we do not notify the client of a finished load, if the
1253         load has been cancelled, or the client is gone.
1254
1255         * platform/network/soup/ResourceHandleSoup.cpp:
1256         (WebCore::):
1257
1258 2009-11-24  Ben Murdoch  <benm@google.com>
1259
1260         Reviewed by Eric Seidel.
1261
1262         [Android] Upstream Android changes to WebCore/bridge/jni
1263         https://bugs.webkit.org/show_bug.cgi?id=31824
1264
1265         No new tests required as no new functionality.
1266
1267         * bridge/jni/jni_class.cpp:
1268         (JavaClass::JavaClass): Add calls to delete allocated references, to avoid potential leaks.
1269         * bridge/jni/jni_instance.cpp: Add an Android include path.
1270         * bridge/jni/jni_instance.h: Add getter/setter for JObjectWrapper::_instance and make the JavaInstance ctor and member variables protected. Both needed for the Android port, see bug for discussion.
1271         (JSC::Bindings::JObjectWrapper::instance): Added.
1272         (JSC::Bindings::JObjectWrapper::setInstance): Added.
1273         * bridge/jni/jni_runtime.cpp:
1274         (JavaMethod::JavaMethod): Delete an allocated reference to avoid a potential leak.
1275         * bridge/jni/jni_utility.h:
1276         (JSC::Bindings::callJNIMethodV): Delete an allocated reference to avoid a potential leak.
1277
1278 2009-11-24  Zoltan Horvath  <zoltan@webkit.org>
1279
1280         Reviewed by Eric Seidel.
1281
1282         Allow custom memory allocation control for classes of the plugins and rendering directory in WebCore
1283         https://bugs.webkit.org/show_bug.cgi?id=31827
1284
1285         Inherits the following classes from Noncopyable because these are instantiated
1286         by 'new' and no need to be copyable:
1287
1288         class/struct name               - instantiated at: WebCore/'location'
1289
1290         class PluginRequest             - plugins/PluginView.cpp:521
1291         class PluginMainThreadScheduler - plugins/PluginMainThreadScheduler.cpp:34
1292         class PluginDatabase            - plugins/PluginDatabase.cpp:50
1293         struct MimeClassInfo            - plugins/PluginInfoStore.cpp:50
1294         struct PluginInfo               - plugins/PluginInfoStore.cpp:40
1295         class RenderArena               - dom/Document.cpp:1401
1296         class RenderImageScaleData      - rendering/RenderImage.cpp:149
1297         class TableLayout               - (its child class) rendering/RenderTable.cpp:82
1298         struct ColumnInfo               - rendering/RenderBlock.cpp:3590
1299         struct FloatingObject           - rendering/RenderBlock.cpp:2300
1300         struct MaxMargin                - rendering/RenderBlock.cpp:4794
1301         class RenderMarquee             - rendering/RenderLayer.cpp:3277
1302
1303         * plugins/PluginData.h:
1304         * plugins/PluginDatabase.h:
1305         * plugins/PluginMainThreadScheduler.h:
1306         * plugins/PluginView.h:
1307         * rendering/RenderArena.h:
1308         * rendering/RenderBlock.cpp:
1309         * rendering/RenderBlock.h:
1310         * rendering/RenderImage.cpp:
1311         * rendering/RenderMarquee.h:
1312         * rendering/TableLayout.h:
1313
1314 2009-11-24  Dmitry Titov  <dimich@chromium.org>
1315
1316         Reviewed by David Levin.
1317
1318         Initial implementation of WebKitSharedScript and SharedScriptContext
1319         https://bugs.webkit.org/show_bug.cgi?id=31569
1320
1321         No new tests since there are no bindings yet (soon to come).
1322
1323         * DerivedSources.make: Add WebKitSharedScript and SharedScriptContext to a list of idl files.
1324         * WebCore.xcodeproj/project.pbxproj:
1325         * dom/Document.cpp:
1326         (WebCore::Document::detach): Notify WebKitSharedScriptRepository that document is detaching.
1327         * dom/EventTarget.cpp: Add new casting methods, since the new types are EventTargets.
1328         (WebCore::EventTarget::toWebKitSharedScript):
1329         (WebCore::EventTarget::toSharedScriptContext):
1330         * dom/EventTarget.h: Ditto
1331         * dom/ScriptExecutionContext.h:
1332         (WebCore::ScriptExecutionContext::isSharedScriptContext): New virtual method, since there is a new type of context.
1333
1334         * SharedScript/SharedScriptContext.cpp: Added. Similar to WorkerContext, but w/o threading.
1335         (WebCore::SharedScriptContext::SharedScriptContext):
1336         (WebCore::SharedScriptContext::~SharedScriptContext):
1337         (WebCore::SharedScriptContext::clearScript):
1338         (WebCore::SharedScriptContext::virtualURL):
1339         (WebCore::SharedScriptContext::virtualCompleteURL):
1340         (WebCore::SharedScriptContext::reportException):
1341         (WebCore::SharedScriptContext::addMessage):
1342         (WebCore::SharedScriptContext::resourceRetrievedByXMLHttpRequest):
1343         (WebCore::SharedScriptContext::scriptImported):
1344         (WebCore::SharedScriptContext::matches):
1345         (WebCore::SharedScriptContext::addToDocumentsList):
1346         (WebCore::SharedScriptContext::destructionTimerFired):
1347         (WebCore::SharedScriptContext::removeFromDocumentList):
1348         (WebCore::SharedScriptContext::load):
1349         (WebCore::SharedScriptContext::postTask):
1350         (WebCore::SharedScriptContext::eventTargetData):
1351         (WebCore::SharedScriptContext::ensureEventTargetData):
1352         (WebCore::SharedScriptContext::scriptExecutionContext):
1353         * SharedScript/SharedScriptContext.h: Added.
1354         (WebCore::SharedScriptContext::create):
1355         (WebCore::SharedScriptContext::isSharedScriptContext):
1356         (WebCore::SharedScriptContext::userAgent):
1357         (WebCore::SharedScriptContext::toSharedScriptContext):
1358         (WebCore::SharedScriptContext::self):
1359         (WebCore::SharedScriptContext::script):
1360         (WebCore::SharedScriptContext::loaded):
1361         (WebCore::SharedScriptContext::name):
1362         (WebCore::SharedScriptContext::refEventTarget):
1363         (WebCore::SharedScriptContext::derefEventTarget):
1364         (WebCore::SharedScriptContext::refScriptExecutionContext):
1365         (WebCore::SharedScriptContext::derefScriptExecutionContext):
1366         * SharedScript/SharedScriptContext.idl: Added.
1367
1368         * SharedScript/SharedScriptController.h: 
1369         Added. Empty implementation of a ScriptController, will come later as part of bindings. Needed to compile.
1370
1371         * SharedScript/WebKitSharedScript.cpp: Added. EventTarget-based DOM object.
1372         (WebCore::WebKitSharedScript::WebKitSharedScript):
1373         (WebCore::WebKitSharedScript::~WebKitSharedScript):
1374         (WebCore::WebKitSharedScript::setContext):
1375         (WebCore::LoadEventTask::create): Fires asynchronous 'load' event when underlying SharedScriptContext is initialized.
1376         (WebCore::LoadEventTask::performTask):
1377         (WebCore::LoadEventTask::LoadEventTask):
1378         (WebCore::WebKitSharedScript::scheduleLoadEvent):
1379         * SharedScript/WebKitSharedScript.h: Added.
1380         (WebCore::WebKitSharedScript::create):
1381         (WebCore::WebKitSharedScript::scriptExecutionContext):
1382         (WebCore::WebKitSharedScript::toWebKitSharedScript):
1383         (WebCore::WebKitSharedScript::context):
1384         (WebCore::WebKitSharedScript::refEventTarget):
1385         (WebCore::WebKitSharedScript::derefEventTarget):
1386         (WebCore::WebKitSharedScript::eventTargetData):
1387         (WebCore::WebKitSharedScript::ensureEventTargetData):
1388         * SharedScript/WebKitSharedScript.idl: Added.
1389
1390         * SharedScript/WebKitSharedScriptRepository.cpp: Added. Implements a list of running SharedScriptContexts.
1391         (WebCore::ScriptLoader::ScriptLoader): The helper class to load an initial script of SharedScriptContext.
1392         (WebCore::ScriptLoader::load):
1393         (WebCore::ScriptLoader::notifyFinished):
1394         (WebCore::WebKitSharedScriptRepository::instance): Repository has a static global instance.
1395         (WebCore::WebKitSharedScriptRepository::connect):
1396         (WebCore::WebKitSharedScriptRepository::documentDetached): Called from Document::detach().
1397         (WebCore::WebKitSharedScriptRepository::removeSharedScriptContext): Called from ~SharedScriptContext().
1398         (WebCore::WebKitSharedScriptRepository::connectToSharedScript):
1399         (WebCore::WebKitSharedScriptRepository::getSharedScriptContext):
1400         * SharedScript/WebKitSharedScriptRepository.h: Added.
1401         (WebCore::WebKitSharedScriptRepository::WebKitSharedScriptRepository):
1402
1403 2009-11-24  Dmitry Titov  <dimich@chromium.org>
1404
1405         Reviewed by Eric Seidel.
1406
1407         Add ENABLE_SHARED_SCRIPT feature define and flag for build-webkit
1408         https://bugs.webkit.org/show_bug.cgi?id=31444
1409
1410         * Configurations/FeatureDefines.xcconfig:
1411         * GNUmakefile.am:
1412         * WebCore.pro:
1413
1414 2009-11-24  Chris Marrin  <cmarrin@apple.com>
1415
1416         Reviewed by Simon Fraser.
1417
1418         Implement accelerated compositing
1419         https://bugs.webkit.org/show_bug.cgi?id=27314
1420         
1421         This part of the checkin adds the Windows specific GraphicsLayer support files.
1422         It provides the interface between GraphicsLayer and CACF. It also deals with
1423         the compositing loop, and provides the plumbing to pass the root layer up to
1424         WebView.
1425
1426         * WebCore.vcproj/WebCore.vcproj:
1427         * WebCore.vcproj/WebCoreCommon.vsprops:
1428         * page/FrameView.cpp:
1429         (WebCore::FrameView::syncCompositingStateRecursive):
1430         * platform/graphics/GraphicsLayer.cpp:
1431         (WebCore::GraphicsLayer::GraphicsLayer):
1432         * platform/graphics/GraphicsLayer.h:
1433         * platform/graphics/win/GraphicsLayerCACF.cpp: Added.
1434         * platform/graphics/win/GraphicsLayerCACF.h: Added.
1435         * platform/graphics/win/WKCACFContextFlusher.cpp: Added.
1436         * platform/graphics/win/WKCACFContextFlusher.h: Added.
1437         * platform/graphics/win/WKCACFContextFlusherWin.cpp: Added.
1438         * platform/graphics/win/WKCACFLayer.cpp: Added.
1439         * platform/graphics/win/WKCACFLayer.h: Added.
1440         * platform/graphics/win/WKCACFLayerWindow.cpp: Added.
1441         * platform/graphics/win/WKCACFLayerWindow.h: Added.
1442
1443 2009-11-24  Chris Marrin  <cmarrin@apple.com>
1444
1445         Reviewed by Eric Seidel.
1446
1447         Do error checking of parameter to createShader
1448         https://bugs.webkit.org/show_bug.cgi?id=31808
1449
1450         Test: fast/canvas/webgl/invalidPassedParams.html
1451
1452         * html/canvas/WebGLRenderingContext.cpp:
1453         (WebCore::WebGLRenderingContext::createShader):
1454         * html/canvas/WebGLRenderingContext.h:
1455         * html/canvas/WebGLRenderingContext.idl:
1456
1457 2009-11-24  Kent Tamura  <tkent@chromium.org>
1458
1459         Reviewed by Eric Seidel.
1460
1461         [Chromium] Ignore line-height CSS property specified to a search field on
1462         Windows and Linux.
1463         https://bugs.webkit.org/show_bug.cgi?id=31820
1464
1465         LayoutTests/fast/forms/control-restrict-line-height.html checks that the
1466         following controls should ignore line-height CSS property.
1467          - <select>
1468          - <input type=button>
1469          - <input type=search>
1470         This change addresses the <input type=search> issue with Chromium/Windows
1471         and Chromium/Linux.
1472
1473         * rendering/RenderThemeChromiumSkia.cpp:
1474         (WebCore::RenderThemeChromiumSkia::adjustSearchFieldStyle): Implement this to ignore line-height.
1475         * rendering/RenderThemeChromiumSkia.h: Declare adjustSearchFieldStyle().
1476
1477 2009-11-24  Simon Fraser  <simon.fraser@apple.com>
1478
1479         No review.
1480
1481         Stylistic fix: indent the member var initialisation.
1482
1483         * platform/graphics/mac/GraphicsLayerCA.mm:
1484         (WebCore::GraphicsLayerCA::GraphicsLayerCA):
1485
1486 2009-11-24  Gavin Barraclough  <barraclough@apple.com>
1487
1488         Reviewed by Geoff Garen.
1489
1490         Bug 31848 - Remove uses of mainThreadCurrentWorld, and of currentWorld using a globalData.
1491
1492         These methods get the world from the global data rather than from an execstate.
1493         If the current world is always read from an exec state then it can be read
1494         from the global object, and world entry can become automagical, rather than
1495         being explicitly set by an EnterDOMWrapperWorld.
1496
1497         * bindings/js/JSCSSRuleCustom.cpp:
1498         (WebCore::toJS):
1499         * bindings/js/JSCSSValueCustom.cpp:
1500         (WebCore::toJS):
1501         * bindings/js/JSDOMBinding.cpp:
1502         (WebCore::currentWorld):
1503         (WebCore::DOMObjectWrapperMapFor):
1504         (WebCore::hasCachedDOMObjectWrapper):
1505         (WebCore::getCachedDOMObjectWrapper):
1506         (WebCore::cacheDOMObjectWrapper):
1507         (WebCore::hasCachedDOMNodeWrapper):
1508         (WebCore::getCachedDOMNodeWrapper):
1509         (WebCore::cacheDOMNodeWrapper):
1510         * bindings/js/JSDOMBinding.h:
1511         (WebCore::createDOMObjectWrapper):
1512         (WebCore::getDOMObjectWrapper):
1513         (WebCore::createDOMNodeWrapper):
1514         (WebCore::getDOMNodeWrapper):
1515         * bindings/js/JSDOMWindowCustom.cpp:
1516         (WebCore::JSDOMWindow::history):
1517         (WebCore::JSDOMWindow::location):
1518         * bindings/js/JSDocumentCustom.cpp:
1519         (WebCore::JSDocument::location):
1520         (WebCore::toJS):
1521         * bindings/js/JSElementCustom.cpp:
1522         (WebCore::toJSNewlyCreated):
1523         * bindings/js/JSEventCustom.cpp:
1524         (WebCore::toJS):
1525         * bindings/js/JSHTMLCollectionCustom.cpp:
1526         (WebCore::toJS):
1527         * bindings/js/JSImageDataCustom.cpp:
1528         (WebCore::toJS):
1529         * bindings/js/JSNodeCustom.cpp:
1530         (WebCore::JSNode::markChildren):
1531         (WebCore::createWrapper):
1532         (WebCore::toJS):
1533         * bindings/js/JSSVGPathSegCustom.cpp:
1534         (WebCore::toJS):
1535         * bindings/js/JSStyleSheetCustom.cpp:
1536         (WebCore::toJS):
1537         * xml/XMLHttpRequest.cpp:
1538         (WebCore::XMLHttpRequest::dropProtection):
1539
1540 2009-11-24  Alexey Proskuryakov  <ap@apple.com>
1541
1542         Windows build fix.
1543
1544         * platform/network/cf/SocketStreamHandleCFNet.cpp: Also, don't include the wrong one!
1545
1546 2009-11-24  Alexey Proskuryakov  <ap@apple.com>
1547
1548         Windows build fix.
1549
1550         * platform/network/cf/SocketStreamHandleCFNet.cpp: Include the proper WKSI header.
1551
1552 2009-11-24  Simon Fraser  <simon.fraser@apple.com>
1553
1554         Reviewed by Oliver Hunt.
1555
1556         SVGUseElement::toClipPath can crash
1557         <rdar://problem/7385270>
1558
1559         Null-test m_shadowTreeRootElement again, because the call to buildPendingResource() may not
1560         actually initialize it.
1561
1562         * svg/SVGUseElement.cpp:
1563         (WebCore::SVGUseElement::toClipPath):
1564
1565 2009-11-24  Simon Fraser  <simon.fraser@apple.com>
1566
1567         Windows build fix.
1568
1569         * page/win/FrameCGWin.cpp:
1570         (WebCore::imageFromRect):
1571         (WebCore::imageFromSelection):
1572
1573 2009-11-24  Eric Carlson  <eric.carlson@apple.com>
1574
1575         Not reviewed. Revert r51351 until a new WebKitSupportLibrary is available.
1576
1577         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
1578         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
1579         * platform/graphics/win/QTMovieWin.cpp:
1580         * platform/graphics/win/QTMovieWin.h:
1581         * rendering/RenderMediaControls.cpp:
1582         * rendering/RenderThemeWin.cpp:
1583         * rendering/RenderThemeWin.h:
1584
1585 2009-11-24  Alexey Proskuryakov  <ap@apple.com>
1586
1587         Reviewed by Brady Eidson.
1588
1589         https://bugs.webkit.org/show_bug.cgi?id=31844
1590         SocketStreamHandleCFNet should support CONNECT proxy credentials
1591
1592         * WebCore.vcproj/WebCore.vcproj:
1593         * WebCore.xcodeproj/project.pbxproj:
1594         * platform/network/CredentialStorage.h:
1595         * platform/network/mac/CredentialStorageMac.mm: Added.
1596         (WebCore::CredentialStorage::getFromPersistentStorage):
1597         * platform/network/cf/CredentialStorageCFNet.cpp: Added.
1598         (WebCore::CredentialStorage::getFromPersistentStorage):
1599         Add support for fetching credentials from persistent storage (CFNet version is currently
1600         a stub).
1601
1602         * bindings/js/JSWebSocketCustom.cpp: Removed an unneeded include.
1603
1604         * platform/network/cf/SocketStreamHandle.h:
1605         * platform/network/cf/SocketStreamHandleCFNet.cpp:
1606         (WebCore::SocketStreamHandle::SocketStreamHandle):
1607         (WebCore::SocketStreamHandle::createStreams):
1608         (WebCore::getStoredCONNECTProxyCredentials):
1609         (WebCore::authenticationSchemeFromAuthenticationMethod):
1610         (WebCore::SocketStreamHandle::addCONNECTCredentials):
1611         (WebCore::SocketStreamHandle::readStreamCallback):
1612         Check if connection attempt was resulted in 407, and try stored credentials if it did.
1613
1614         * platform/mac/WebCoreSystemInterface.h:
1615         * platform/mac/WebCoreSystemInterface.mm:
1616         * WebCore.base.exp:
1617         Updated WKSI.
1618
1619 2009-11-24  Simon Fraser  <simon.fraser@apple.com>
1620
1621         Reviewed by Dan Bernstein.
1622
1623         Find highlight is drawn incorrectly on pages with compositing layers
1624         <rdar://problem/7413925>
1625         
1626         Part 2: Add a new bit to the PaintBehavior flags, PaintBehaviorFlattenCompositingLayers,
1627         and pass that down when painting into an image.
1628         
1629         When set, it forces painting of compositing layers to go down a software paint path
1630         when all layers are painted, irrespective of compositing status, and where
1631         3d transforms are flattened to 2d. When doing this, we also need to use temporary
1632         clip rects for layers which are normally composited.
1633         
1634         * page/FrameView.h:
1635         (WebCore::FrameView::paintBehavior):
1636         * page/mac/FrameMac.mm:
1637         (WebCore::Frame::imageFromRect):
1638         * rendering/RenderLayer.cpp:
1639         (WebCore::RenderLayer::renderableTransform):
1640         (WebCore::expandClipRectForDescendantsAndReflection):
1641         (WebCore::transparencyClipBox):
1642         (WebCore::RenderLayer::beginTransparencyLayers):
1643         (WebCore::RenderLayer::paintLayer):
1644         * rendering/RenderLayer.h:
1645         (WebCore::RenderLayer::paintsWithTransparency):
1646         (WebCore::RenderLayer::paintsWithTransform):
1647         * rendering/RenderLayerCompositor.cpp:
1648         (WebCore::RenderLayerCompositor::calculateCompositedBounds):
1649         * rendering/RenderObject.h:
1650
1651 2009-11-24  Simon Fraser  <simon.fraser@apple.com>
1652
1653         Reviewed by Dan Bernstein.
1654
1655         Find highlight is drawn incorrectly on pages with compositing layers
1656         <rdar://problem/7413925>
1657         
1658         Part 1: Rename PaintRestriction to PaintBehavior, and make it a bitmask, in
1659         preparation for adding a new flag related to painting into an image.
1660         
1661         PaintBehaviorSelectionOnly and PaintBehaviorForceBlackText are now separate flags.
1662
1663         * page/FrameView.cpp:
1664         (WebCore::FrameView::reset):
1665         (WebCore::FrameView::paintContents):
1666         (WebCore::FrameView::setPaintBehavior):
1667         * page/FrameView.h:
1668         * page/mac/FrameMac.mm:
1669         (WebCore::Frame::selectionImage):
1670         * rendering/RenderLayer.cpp:
1671         (WebCore::RenderLayer::paint):
1672         (WebCore::RenderLayer::paintLayer):
1673         * rendering/RenderLayer.h:
1674         * rendering/RenderLayerBacking.cpp:
1675         (WebCore::RenderLayerBacking::paintIntoLayer):
1676         (WebCore::RenderLayerBacking::paintContents):
1677         * rendering/RenderLayerBacking.h:
1678         * rendering/RenderObject.h:
1679         * rendering/RenderReplica.cpp:
1680         (WebCore::RenderReplica::paint):
1681
1682 2009-11-24  Eric Carlson  <eric.carlson@apple.com>
1683
1684         Reviewed by Simon Fraser.
1685
1686         <rdar://problem/7409331> Windows: Support closed caption in <video> element
1687
1688         Enable closed captions in QuickTime/Windows media engine.
1689
1690         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
1691         (WebCore::MediaPlayerPrivate::hasClosedCaptions):
1692         (WebCore::MediaPlayerPrivate::setClosedCaptionsVisible):
1693         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
1694         * platform/graphics/win/QTMovieWin.cpp:
1695         (QTMovieWin::hasClosedCaptions):
1696         (QTMovieWin::setClosedCaptionsVisible):
1697         * platform/graphics/win/QTMovieWin.h:
1698         * rendering/RenderMediaControls.cpp:
1699         (WebCore::RenderMediaControls::paintMediaControlsPart):
1700         * rendering/RenderThemeWin.cpp:
1701         (WebCore::RenderThemeWin::paintMediaToggleClosedCaptionsButton):
1702         * rendering/RenderThemeWin.h:
1703
1704 2009-11-24  Darin Fisher  <darin@chromium.org>
1705
1706         Reviewed by Adam Barth.
1707
1708         [Chromium] Renderer hang when using www.expedia.com
1709         https://bugs.webkit.org/show_bug.cgi?id=31822
1710
1711         Test: http/tests/cache/subresource-failover-to-network.html
1712
1713         * loader/FrameLoader.cpp:
1714         (WebCore::FrameLoader::loadResourceSynchronously): Use the originalRequest
1715         when inheriting cache policy.  This matches SubresourceLoader::create.
1716
1717 2009-11-23  Kenneth Russell  <kbr@google.com>
1718
1719         Reviewed by Oliver Hunt.
1720
1721         Change get... calls to latest spec
1722         https://bugs.webkit.org/show_bug.cgi?id=30091
1723
1724         Removed old versions of get calls on WebGLRenderingContext and
1725         added new ones per spec returning "any". New code simplifies
1726         GraphicsContext3D and fixes previously unimplemented routines.
1727         Added custom JS and V8 bindings. Added exhaustive test case
1728         exercising all new code paths. Updated preexisting test cases for
1729         new APIs. Fixed preexisting bugs in WebKit's and Chrome's WebGL
1730         implementations.
1731
1732         Ran WebGL layout tests in WebKit (clean) and Chrome (couple of
1733         preexisting known failures) and manual WebGL tests in both
1734         browsers.
1735
1736         Test: fast/canvas/webgl/gl-object-get-calls.html
1737
1738         * WebCore.gypi:
1739         * WebCore.xcodeproj/project.pbxproj:
1740         * bindings/js/JSWebGLRenderingContextCustom.cpp:
1741         (WebCore::toJS):
1742         (WebCore::):
1743         (WebCore::getObjectParameter):
1744         (WebCore::getProgramParameterHelper):
1745         (WebCore::JSWebGLRenderingContext::getBufferParameter):
1746         (WebCore::JSWebGLRenderingContext::getFramebufferAttachmentParameter):
1747         (WebCore::JSWebGLRenderingContext::getParameter):
1748         (WebCore::JSWebGLRenderingContext::getProgramParameter):
1749         (WebCore::JSWebGLRenderingContext::getRenderbufferParameter):
1750         (WebCore::JSWebGLRenderingContext::getShaderParameter):
1751         (WebCore::JSWebGLRenderingContext::getTexParameter):
1752         (WebCore::JSWebGLRenderingContext::getUniform):
1753         (WebCore::JSWebGLRenderingContext::getVertexAttrib):
1754         * bindings/v8/custom/V8CustomBinding.h:
1755         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
1756         (WebCore::toV8):
1757         (WebCore::):
1758         (WebCore::getObjectParameter):
1759         (WebCore::getProgramParameter):
1760         (WebCore::CALLBACK_FUNC_DECL):
1761         * html/canvas/CanvasObject.cpp:
1762         (WebCore::CanvasObject::CanvasObject):
1763         (WebCore::CanvasObject::setObject):
1764         (WebCore::CanvasObject::deleteObject):
1765         * html/canvas/CanvasObject.h:
1766         * html/canvas/WebGLBuffer.cpp:
1767         (WebCore::WebGLBuffer::create):
1768         (WebCore::WebGLBuffer::WebGLBuffer):
1769         * html/canvas/WebGLBuffer.h:
1770         * html/canvas/WebGLGetInfo.cpp: Added.
1771         (WebCore::WebGLGetInfo::WebGLGetInfo):
1772         (WebCore::WebGLGetInfo::~WebGLGetInfo):
1773         (WebCore::WebGLGetInfo::getType):
1774         (WebCore::WebGLGetInfo::getBool):
1775         (WebCore::WebGLGetInfo::getFloat):
1776         (WebCore::WebGLGetInfo::getLong):
1777         (WebCore::WebGLGetInfo::getString):
1778         (WebCore::WebGLGetInfo::getUnsignedLong):
1779         (WebCore::WebGLGetInfo::getWebGLBuffer):
1780         (WebCore::WebGLGetInfo::getWebGLFloatArray):
1781         (WebCore::WebGLGetInfo::getWebGLFramebuffer):
1782         (WebCore::WebGLGetInfo::getWebGLIntArray):
1783         (WebCore::WebGLGetInfo::getWebGLProgram):
1784         (WebCore::WebGLGetInfo::getWebGLRenderbuffer):
1785         (WebCore::WebGLGetInfo::getWebGLTexture):
1786         (WebCore::WebGLGetInfo::getWebGLUnsignedByteArray):
1787         * html/canvas/WebGLGetInfo.h: Added.
1788         (WebCore::WebGLGetInfo::):
1789         * html/canvas/WebGLRenderbuffer.cpp:
1790         (WebCore::WebGLRenderbuffer::create):
1791         (WebCore::WebGLRenderbuffer::WebGLRenderbuffer):
1792         * html/canvas/WebGLRenderbuffer.h:
1793         * html/canvas/WebGLRenderingContext.cpp:
1794         (WebCore::WebGLStateRestorer::WebGLStateRestorer):
1795         (WebCore::WebGLStateRestorer::~WebGLStateRestorer):
1796         (WebCore::WebGLRenderingContext::WebGLRenderingContext):
1797         (WebCore::WebGLRenderingContext::activeTexture):
1798         (WebCore::WebGLRenderingContext::bindBuffer):
1799         (WebCore::WebGLRenderingContext::bindFramebuffer):
1800         (WebCore::WebGLRenderingContext::bindRenderbuffer):
1801         (WebCore::WebGLRenderingContext::bindTexture):
1802         (WebCore::WebGLRenderingContext::getBufferParameter):
1803         (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter):
1804         (WebCore::WebGLRenderingContext::getParameter):
1805         (WebCore::WebGLRenderingContext::getProgramParameter):
1806         (WebCore::WebGLRenderingContext::getProgramInfoLog):
1807         (WebCore::WebGLRenderingContext::getRenderbufferParameter):
1808         (WebCore::WebGLRenderingContext::getShaderParameter):
1809         (WebCore::WebGLRenderingContext::getShaderInfoLog):
1810         (WebCore::WebGLRenderingContext::getShaderSource):
1811         (WebCore::WebGLRenderingContext::getString):
1812         (WebCore::WebGLRenderingContext::getTexParameter):
1813         (WebCore::WebGLRenderingContext::getUniform):
1814         (WebCore::WebGLRenderingContext::getVertexAttrib):
1815         (WebCore::WebGLRenderingContext::useProgram):
1816         (WebCore::WebGLRenderingContext::getBooleanParameter):
1817         (WebCore::WebGLRenderingContext::getFloatParameter):
1818         (WebCore::WebGLRenderingContext::getIntParameter):
1819         (WebCore::WebGLRenderingContext::getLongParameter):
1820         (WebCore::WebGLRenderingContext::getUnsignedLongParameter):
1821         (WebCore::WebGLRenderingContext::getWebGLFloatArrayParameter):
1822         (WebCore::WebGLRenderingContext::getWebGLIntArrayParameter):
1823         (WebCore::WebGLRenderingContext::getWebGLUnsignedByteArrayParameter):
1824         * html/canvas/WebGLRenderingContext.h:
1825         * html/canvas/WebGLRenderingContext.idl:
1826         * html/canvas/WebGLTexture.cpp:
1827         (WebCore::WebGLTexture::create):
1828         (WebCore::WebGLTexture::WebGLTexture):
1829         * html/canvas/WebGLTexture.h:
1830         * manual-tests/webgl/resources/utils3d.js:
1831         (initWebGL):
1832         (loadShader):
1833         (Framerate.prototype.snapshot):
1834         * platform/graphics/GraphicsContext3D.h:
1835         * platform/graphics/mac/GraphicsContext3DMac.cpp:
1836         (WebCore::GraphicsContext3D::bindRenderbuffer):
1837         (WebCore::GraphicsContext3D::getBooleanv):
1838         (WebCore::GraphicsContext3D::getBufferParameteriv):
1839         (WebCore::GraphicsContext3D::getFloatv):
1840         (WebCore::GraphicsContext3D::getFramebufferAttachmentParameteriv):
1841         (WebCore::GraphicsContext3D::getIntegerv):
1842         (WebCore::GraphicsContext3D::getProgramiv):
1843         (WebCore::GraphicsContext3D::getRenderbufferParameteriv):
1844         (WebCore::GraphicsContext3D::getShaderiv):
1845         (WebCore::GraphicsContext3D::getTexParameterfv):
1846         (WebCore::GraphicsContext3D::getTexParameteriv):
1847         (WebCore::GraphicsContext3D::getUniformfv):
1848         (WebCore::GraphicsContext3D::getUniformiv):
1849         (WebCore::GraphicsContext3D::getVertexAttribfv):
1850         (WebCore::GraphicsContext3D::getVertexAttribiv):
1851
1852 2009-11-24  Steve Falkenburg  <sfalken@apple.com>
1853
1854         Windows build fix.
1855
1856         * WebCore.vcproj/QTMovieWin.vcproj: Add additional search path for QuickTime SDK.
1857
1858 2009-11-24  Philippe Normand  <pnormand@igalia.com>
1859
1860         Reviewed by Gustavo Noronha Silva.
1861
1862         [Gtk] GStreamer-CRITICAL's (and other warnings) on <video>
1863         https://bugs.webkit.org/show_bug.cgi?id=26354
1864
1865         Implemented MediaPlayerPrivate::isAvailable by checking the
1866         presence of the playbin2 GStreamer element.
1867
1868         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
1869         (WebCore::MediaPlayerPrivate::isAvailable):
1870         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
1871
1872 2009-11-24  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
1873
1874         Reviewed by Xan Lopez.
1875
1876         https://bugs.webkit.org/show_bug.cgi?id=25415
1877         [GTK][ATK] Please implement support for get_text_at_offset
1878
1879         When building up the pango layout from text boxes, only append a
1880         newline char after verifying there are no more boxes on this line.
1881
1882         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1883         (getPangoLayoutForAtk):
1884
1885 2009-11-24  Joseph Pecoraro  <joepeck@webkit.org>
1886
1887         Reviewed by Pavel Feldman.
1888
1889         Web Inspector: Keyboard Shortcut to Clear Console Messages
1890         https://bugs.webkit.org/show_bug.cgi?id=31780
1891
1892         All Platforms:  Ctrl+L  = Clear Console Messages
1893         Mac Only:       Cmd+K   = Clear Console Messages
1894
1895         * inspector/front-end/ConsoleView.js:
1896         (WebInspector.ConsoleView): create shortcuts
1897         (WebInspector.ConsoleView.prototype._promptKeyDown): handle shortcuts
1898         * inspector/front-end/KeyboardShortcut.js:
1899         (WebInspector.KeyboardShortcut.makeKey): convenience conversion of "a-z" character to keyCode
1900         * inspector/front-end/ScriptsPanel.js:
1901         (WebInspector.ScriptsPanel): style fixes for keyboard shortcuts
1902
1903 2009-11-24  Pavel Feldman  <pfeldman@chromium.org>
1904
1905         Not reviewed: touch inspector controller in order to
1906         kick win bot inspector deploy. rs=aroben.
1907
1908         * inspector/InspectorController.cpp:
1909
1910 2009-11-23  Pavel Feldman  <pfeldman@chromium.org>
1911
1912         Reviewed by Timothy Hatcher.
1913
1914         Web Inspector: Implement expandable compartments on timeline panel.
1915
1916         https://bugs.webkit.org/show_bug.cgi?id=31796
1917
1918         * inspector/front-end/TimelineOverviewPane.js:
1919         (WebInspector.TimelineOverviewPane.prototype._setWindowPosition):
1920         * inspector/front-end/TimelinePanel.js:
1921         (WebInspector.TimelinePanel):
1922         (WebInspector.TimelinePanel.prototype.addRecordToTimeline):
1923         (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
1924         (WebInspector.TimelinePanel.prototype._formatRecord):
1925         (WebInspector.TimelinePanel.prototype._refreshRecords):
1926         (WebInspector.TimelinePanel.prototype._addToRecordsWindow):
1927         (WebInspector.TimelineRecordListRow):
1928         (WebInspector.TimelineRecordListRow.prototype.update):
1929         (WebInspector.TimelineRecordListRow.prototype.dispose):
1930         (WebInspector.TimelineRecordGraphRow):
1931         (WebInspector.TimelineRecordGraphRow.prototype.update):
1932         (WebInspector.TimelineRecordGraphRow.prototype._onClick):
1933         (WebInspector.TimelineRecordGraphRow.prototype.dispose):
1934         * inspector/front-end/inspector.css:
1935
1936 2009-11-24  Mark Rowe  <mrowe@apple.com>
1937
1938         Fix production builds where the source tree may be read-only.
1939
1940         * WebCore.xcodeproj/project.pbxproj:
1941
1942 2009-11-23  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
1943
1944         Reviewed by Kenneth Rohde Christiansen.
1945
1946         Include "config.h" to meet Coding Style Guidelines
1947         https://bugs.webkit.org/show_bug.cgi?id=31792
1948
1949         No new tests as there is no new functionality.
1950
1951         * platform/graphics/win/IntPointWin.cpp:
1952         * platform/graphics/win/IntRectWin.cpp:
1953         * platform/graphics/win/IntSizeWin.cpp:
1954         * platform/network/chromium/ResourceRequest.cpp:
1955         * platform/win/PlatformMouseEventWin.cpp:
1956
1957 2009-11-23  Jian Li  <jianli@chromium.org>
1958
1959         Reviewed by NOBODY (Chromium build fix).
1960
1961         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
1962         (WebCore::CALLBACK_FUNC_DECL):
1963         * platform/graphics/GraphicsContext3D.h:
1964
1965 2009-11-23  Aaron Golden  <agolden@apple.com>
1966
1967         Reviewed by Alexey Proskuryakov.
1968
1969         Prevent ResourceHandleMac's version of ResourceHandle::receivedCredential from stripping
1970         identity and certificate information from a WebCore::Credential when receivedCredential
1971         needs to modify the credential's persistence.
1972
1973         Adding a new constructor Credential(const Credential& original, CredentialPersistence)
1974         that copies every field from original except for persistence.
1975
1976         * platform/network/Credential.cpp:
1977         (WebCore::Credential::Credential):
1978         * platform/network/Credential.h:
1979         * platform/network/mac/ResourceHandleMac.mm:
1980         (WebCore::ResourceHandle::receivedCredential):
1981
1982 2009-11-23  Gavin Barraclough  <barraclough@apple.com>
1983
1984         Reviewed by Geoff Garen.
1985
1986         Part 2/3 of <rdar://problem/7377477> REGRESSION: Many web pages fail to render after interesting script runs in isolated world
1987
1988         Some clients of the JavaScriptCore API expect to be able to make callbacks over the JSC API,
1989         and for this to automagically cause execution to take place in the world associated with the
1990         global object associated with the ExecState (JSContextRef) passed.  However this is not how
1991         things work - the world must be explicitly set within WebCore.
1992
1993         Making this work just for API calls to evaluate & call will be a far from perfect solution,
1994         since direct (non-API) use of JSC still relies on WebCore setting the current world correctly.
1995         A better solution would be to make this all work automagically all throughout WebCore, but this
1996         will require more refactoring.
1997
1998         Add references from the JSDOMWindowShell and the JSDOMGlobalObject to the world that owns them,
1999         so that we can get to the world from the lexical global object of an ExecState.  In the long-term
2000         we should switch over to using this approach for all cases we want to get a world from an exec state.
2001
2002         * bindings/js/JSDOMBinding.cpp:
2003         (WebCore::WebCoreJSClientData::beginningExecution):
2004         (WebCore::WebCoreJSClientData::completedExecution):
2005         * bindings/js/JSDOMBinding.h:
2006         * bindings/js/JSDOMGlobalObject.h:
2007         (WebCore::JSDOMGlobalObject::world):
2008         (WebCore::JSDOMGlobalObject::JSDOMGlobalObjectData::JSDOMGlobalObjectData):
2009         * bindings/js/JSDOMWindowBase.cpp:
2010         (WebCore::JSDOMWindowBase::JSDOMWindowBaseData::JSDOMWindowBaseData):
2011         * bindings/js/JSDOMWindowBase.h:
2012         * bindings/js/JSDOMWindowShell.cpp:
2013         (WebCore::JSDOMWindowShell::JSDOMWindowShell):
2014         * bindings/js/JSDOMWindowShell.h:
2015         (WebCore::JSDOMWindowShell::world):
2016         * bindings/js/JSWorkerContextBase.cpp:
2017         (WebCore::JSWorkerContextBase::JSWorkerContextBase):
2018         * bindings/js/ScriptController.cpp:
2019         (WebCore::ScriptController::initScript):
2020
2021 2009-11-23  Chris Marrin  <cmarrin@apple.com>
2022
2023         Reviewed by Oliver Hunt.
2024
2025         Add range checks to rendering calls in WebGL
2026         https://bugs.webkit.org/show_bug.cgi?id=31239
2027
2028         I am now tracking the size of the data in each CanvasBuffer object
2029         and keeping track of the buffer size of each active vertex attrib.
2030         In drawArrays and drawElements I make sure no attempt is made to
2031         access elements outside the valid buffer ranges. The test at:
2032
2033             http://cs.helsinki.fi/u/ilmarihe/c3d/functions/drawArraysOutOfBounds.html
2034
2035         no longer crashes.
2036
2037         I also added all the WebGL enumerations to GraphicsContext3D to use them in the validation checks
2038
2039         Tests: fast/canvas/webgl/drawArraysOutOfBounds.html
2040                fast/canvas/webgl/drawElementssOutOfBounds.html
2041
2042         * bindings/js/JSWebGLArrayCustom.cpp:
2043         (WebCore::toJS):
2044         * bindings/js/JSWebGLRenderingContextCustom.cpp:
2045         (WebCore::JSWebGLRenderingContext::bufferData):
2046         (WebCore::JSWebGLRenderingContext::bufferSubData):
2047         (WebCore::JSWebGLRenderingContext::texSubImage2D):
2048         * html/canvas/WebGLArrayBuffer.cpp:
2049         (WebCore::WebGLArrayBuffer::create):
2050         (WebCore::WebGLArrayBuffer::data):
2051         * html/canvas/WebGLArrayBuffer.h:
2052         * html/canvas/WebGLBuffer.cpp:
2053         (WebCore::WebGLBuffer::WebGLBuffer):
2054         (WebCore::WebGLBuffer::associateBufferData):
2055         (WebCore::WebGLBuffer::associateBufferSubData):
2056         (WebCore::WebGLBuffer::byteLength):
2057         * html/canvas/WebGLBuffer.h:
2058         (WebCore::WebGLBuffer::elementArrayBuffer):
2059         * html/canvas/WebGLRenderingContext.cpp:
2060         (WebCore::WebGLRenderingContext::WebGLRenderingContext):
2061         (WebCore::WebGLRenderingContext::sizeInBytes):
2062         (WebCore::WebGLRenderingContext::bindBuffer):
2063         (WebCore::WebGLRenderingContext::bufferData):
2064         (WebCore::WebGLRenderingContext::bufferSubData):
2065         (WebCore::WebGLRenderingContext::createShader):
2066         (WebCore::WebGLRenderingContext::disableVertexAttribArray):
2067         (WebCore::WebGLRenderingContext::validateIndexArray):
2068         (WebCore::WebGLRenderingContext::validateRenderingState):
2069         (WebCore::WebGLRenderingContext::drawArrays):
2070         (WebCore::WebGLRenderingContext::drawElements):
2071         (WebCore::WebGLRenderingContext::enableVertexAttribArray):
2072         (WebCore::WebGLRenderingContext::isFramebuffer):
2073         (WebCore::WebGLRenderingContext::isProgram):
2074         (WebCore::WebGLRenderingContext::isRenderbuffer):
2075         (WebCore::WebGLRenderingContext::isShader):
2076         (WebCore::WebGLRenderingContext::isTexture):
2077         (WebCore::WebGLRenderingContext::useProgram):
2078         (WebCore::WebGLRenderingContext::validateProgram):
2079         (WebCore::WebGLRenderingContext::vertexAttribPointer):
2080         (WebCore::WebGLRenderingContext::detachAndRemoveAllObjects):
2081         * html/canvas/WebGLRenderingContext.h:
2082         (WebCore::WebGLRenderingContext::VertexAttribState::VertexAttribState):
2083         * html/canvas/WebGLRenderingContext.idl:
2084         * html/canvas/WebGLShader.cpp:
2085         (WebCore::WebGLShader::create):
2086         (WebCore::WebGLShader::WebGLShader):
2087         * html/canvas/WebGLShader.h:
2088         * platform/graphics/GraphicsContext3D.h:
2089         (WebCore::GraphicsContext3D::):
2090         * platform/graphics/mac/GraphicsContext3DMac.cpp:
2091         (WebCore::GraphicsContext3D::createShader):
2092
2093 2009-11-23  Erik Arvidsson  <arv@chromium.org>
2094
2095         Reviewed by Eric Seidel.
2096
2097         JSC bindings for HasIndexGetter generates incorrect code (affects
2098         MediaList and CSSStyleDeclaration).
2099         This cleans up the edge cases for indexing out of range for style and
2100         computed style objects to return an empty string according to the spec.
2101         MediaList now returns null when indexed out of range.
2102         https://bugs.webkit.org/show_bug.cgi?id=31683
2103
2104         Tests: fast/dom/CSSStyleDeclaration/css-computed-style-item.html
2105                fast/dom/CSSStyleDeclaration/css-style-item.html
2106                fast/dom/StyleSheet/css-medialist-item.html
2107
2108         * bindings/scripts/CodeGeneratorJS.pm: If IndexGetterReturnsString then
2109                 we do not check the length before calling the item function.
2110         * css/CSSComputedStyleDeclaration.cpp:
2111         (WebCore::CSSComputedStyleDeclaration::item):
2112         * css/CSSMutableStyleDeclaration.cpp:
2113         (WebCore::CSSMutableStyleDeclaration::item):
2114         * css/CSSStyleDeclaration.idl:
2115
2116 2009-11-23  Simon Fraser  <simon.fraser@apple.com>
2117
2118         Reviewed by Dan Bernstein.
2119
2120         DocumentMarkers need to be educated about transforms
2121         https://bugs.webkit.org/show_bug.cgi?id=31751
2122         
2123         Find highlight is incorrect with transforms
2124         <rdar://problem/6358394>
2125
2126         Allow callers to specify that Frame::selectionTextRects() takes transforms into account
2127         when computing the set of rects that encompass a selection. For transformed elemenets, the
2128         selection rect will be the bounding box of the selected content.
2129         
2130         Fix DocumentMarkers to cache rects in absolute coordinates, rather than painting coordinates.
2131         
2132         Test: editing/selection/transformed-selection-rects.html
2133         
2134         * WebCore.base.exp:
2135         Frame::selectionTextRects() has a new parameter.
2136         
2137         * dom/Document.cpp:
2138         (WebCore::Document::setRenderedRectForMarker):
2139         * dom/Document.h:
2140         Pass the marker as a const reference.
2141         
2142         * dom/Range.h:
2143         * dom/Range.cpp:
2144         (WebCore::Range::textQuads):
2145         Add a new method, textQuads(), which returns a list of quads, respecting transforms.
2146         
2147         * page/Frame.h:
2148         * page/Frame.cpp:
2149         (WebCore::Frame::selectionTextRects):
2150         Add a new parameter, respectTransforms, and when that is RespectTransforms, use the quad
2151         method to get quads for ranges, and then take their bounding boxes.
2152
2153         * rendering/InlineTextBox.h:
2154         * rendering/InlineTextBox.cpp:
2155         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
2156         (WebCore::InlineTextBox::paintTextMatchMarker):
2157         (WebCore::InlineTextBox::computeRectForReplacementMarker):
2158         (WebCore::InlineTextBox::paintDocumentMarkers):
2159         (WebCore::InlineTextBox::textPos):
2160         (WebCore::InlineTextBox::offsetForPosition):
2161         
2162         Pass DocumentMarkers as a const references.
2163         Convert the argument to setRenderedRectForMarker() into absolute coordinates.
2164         
2165         * rendering/RenderView.cpp:
2166         (WebCore::RenderView::selectionBounds):
2167
2168 2009-11-23  Dirk Schulze  <krit@webkit.org>
2169
2170         Reviewed by Oliver Hunt.
2171
2172         [Cairo] support blurred test-shadow
2173         [https://bugs.webkit.org/show_bug.cgi?id=31797]
2174
2175         Support for blurred text-shadows on Cairo. This patch
2176         reuses the code of blurred box-shadows, introduced in
2177         bug 26102. For a full textshadow support, a filters enabled
2178         build is needed.
2179
2180         * platform/graphics/cairo/FontCairo.cpp:
2181         (WebCore::Font::drawGlyphs):
2182
2183 2009-11-23  Jens Alfke  <snej@chromium.org>
2184
2185         Reviewed by Geoffrey Garen.
2186
2187         Change incorrect calls to the constructor "EventNames()" to the correct accessor
2188         "eventNames()". This saves ~100 AtomicString lookups each time.
2189         https://bugs.webkit.org/show_bug.cgi?id=31811
2190
2191         * dom/EventNames.h:  Make constructor private to prevent this from happening again.
2192         * history/CachedFrame.cpp:
2193         (WebCore::CachedFrameBase::restore):  EventNames() --> eventNames()
2194         * html/HTMLFormControlElement.cpp:
2195         (WebCore::HTMLFormControlElement::checkValidity):  EventNames() --> eventNames()
2196         * loader/FrameLoader.cpp:
2197         (WebCore::FrameLoader::stopLoading):  EventNames() --> eventNames()
2198         (WebCore::FrameLoader::pageHidden):  EventNames() --> eventNames()
2199         * page/DOMWindow.cpp:
2200         (WebCore::DOMWindow::dispatchAllPendingUnloadEvents):  EventNames() --> eventNames()
2201
2202 2009-11-23  Adam Langley  <agl@google.com>
2203
2204         Reviewed by Dmitry Titov.
2205
2206         Chromium Linux: Limit the stroke width and mitre limit.
2207
2208         Limit the stroke width and mitre limit that we'll pass into Skia to
2209         avoid overflowing Skia's uint16_t glyph widths.
2210
2211         http://code.google.com/p/chromium/issues/detail?id=28250
2212         https://bugs.webkit.org/show_bug.cgi?id=31747
2213
2214         * platform/graphics/skia/PlatformContextSkia.cpp:
2215         (scalarBound):
2216         (PlatformContextSkia::setupPaintForStroking):
2217
2218 2009-11-23  Alexey Proskuryakov  <ap@apple.com>
2219
2220         Reviewed by Oliver Hunt.
2221
2222         https://bugs.webkit.org/show_bug.cgi?id=31812
2223         WebSocket code uses RefPtr::get() where it shouldn't
2224
2225         No change in funcitonality, just coding style correction.
2226
2227         * websockets/WebSocket.cpp:
2228         (WebCore::WebSocket::~WebSocket):
2229         * websockets/WebSocketChannel.cpp:
2230         (WebCore::WebSocketChannel::connect):
2231         (WebCore::WebSocketChannel::send):
2232         (WebCore::WebSocketChannel::bufferedAmount):
2233         (WebCore::WebSocketChannel::close):
2234         (WebCore::WebSocketChannel::disconnect):
2235         (WebCore::WebSocketChannel::didOpen):
2236         (WebCore::WebSocketChannel::didClose):
2237         (WebCore::WebSocketChannel::didReceiveData):
2238         (WebCore::WebSocketChannel::didFail):
2239
2240 2009-11-23  Alexey Proskuryakov  <ap@apple.com>
2241
2242         Build fix.
2243
2244         * platform/network/cf/SocketStreamHandleCFNet.cpp:
2245         (WebCore::SocketStreamHandle::pacExecutionCallbackMainThread): pacExecutionCallbackMainThread
2246         is static, so it can't use member variables directly.
2247
2248 2009-11-23  Alexey Proskuryakov  <ap@apple.com>
2249
2250         Reviewed by Brady Eidson.
2251
2252         https://bugs.webkit.org/show_bug.cgi?id=31748
2253         Make WebSocketHandleCFNet respect proxy auto-configuration files via CFProxySupport
2254
2255         * platform/network/cf/SocketStreamHandle.h: Removed names from some void* arguments, since
2256         they didn't carry useful information.
2257
2258         * platform/network/cf/SocketStreamHandleCFNet.cpp:
2259         (WebCore::SocketStreamHandle::SocketStreamHandle): When we need an http-style URL, we actually
2260         always need https.
2261         (WebCore::SocketStreamHandle::scheduleStreams): Factored out from constructor, since streams
2262         only get scheduled after PAC is fetched and executed asynchronously.
2263         (WebCore::SocketStreamHandle::copyPACExecutionDescription): Return a description for event
2264         source.
2265         (WebCore::MainThreadPACCallbackInfo::MainThreadPACCallbackInfo): Forward callback to main thread.
2266         (WebCore::SocketStreamHandle::pacExecutionCallback): Ditto.
2267         (WebCore::SocketStreamHandle::pacExecutionCallbackMainThread): Ditto. To avoid code duplication,
2268         we make the call even on Mac.
2269         (WebCore::SocketStreamHandle::executePACFileURL): Make an async call to CFNetworkExecuteProxyAutoConfigurationURL.
2270         (WebCore::SocketStreamHandle::removePACRunLoopSource): Once PAC execution is done or aborted,
2271         we need to get rid of the event source.
2272         (WebCore::SocketStreamHandle::chooseProxy): Use stored m_httpsURL.get.
2273         (WebCore::SocketStreamHandle::chooseProxyFromArray): Factored out from chooseProxy - the
2274         array may come directly from system configuration, or from PAC.
2275         (WebCore::SocketStreamHandle::chooseProxy): Tiger version of this function is now completely
2276         separate.
2277         (WebCore::SocketStreamHandle::~SocketStreamHandle): Run loop source should be destroyed
2278         before we get to the destructor.
2279         (WebCore::SocketStreamHandle::platformClose): Destroy the run loop source, if PAC execution
2280         is still in progress.
2281
2282 2009-11-23  Oliver Hunt  <oliver@apple.com>
2283
2284         Reviewed by Geoff Garen.
2285
2286         Don't leak the CGImage we create when drawing a sub image.
2287
2288         * platform/graphics/cg/ImageCG.cpp:
2289         (WebCore::BitmapImage::draw):
2290
2291 2009-11-23  Adam Barth  <abarth@webkit.org>
2292
2293         Reviewed by Dimitri Glazkov.
2294
2295         [V8] Don't crash when OOM in creating isolated world
2296         https://bugs.webkit.org/show_bug.cgi?id=31805
2297
2298         We need to add some more null checks to avoid crashing.  No new tests
2299         because we don't have a good way to test out-of-memory bugs.
2300
2301         * bindings/v8/V8Proxy.cpp:
2302         (WebCore::V8Proxy::evaluateInIsolatedWorld):
2303         (WebCore::V8Proxy::evaluateInNewContext):
2304         (WebCore::V8Proxy::setInjectedScriptContextDebugId):
2305         * bindings/v8/V8Proxy.h:
2306
2307 2009-11-23  Dirk Schulze  <krit@webkit.org>
2308
2309         Reviewed by Nikolas Zimmermann.
2310
2311         This is the implementation of the filterRes attribute. It
2312         helps the SVG developer to set the quality of a filter by
2313         giving the width or height of filter.
2314         This patch also sets the filter resolution to lower values
2315         if a intermediate ImageBuffer size is bigger than the given
2316         maximal size.
2317         The maximal size is set to 5000x5000 by default. This is a
2318         subjectiv decission. Everthing greater than this values gets
2319         sensible slower. Values of 10000x10000 crashed on WebKitGtk.
2320         For mobil devices a maximum size of 100x100 or 200x200 seems
2321         to be reasonable.
2322         The important fact on filter resolution is, that the output
2323         size is still the size given by the <filter> element.
2324
2325         Tests: svg/filters/big-sized-filter-2.svg
2326                svg/filters/big-sized-filter.svg
2327                svg/filters/filterRes.svg
2328
2329         * platform/graphics/FloatRect.cpp:
2330         (WebCore::FloatRect::scale): Add the abbility to scale a rect by x and y.
2331         * platform/graphics/FloatRect.h:
2332         (WebCore::FloatRect::scale): Add the abbility to scale a rect by x and y.
2333         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2334         (WebCore::GraphicsContext::createPlatformShadow): Use scaledSubRegion for
2335         calculation.
2336         * platform/graphics/filters/FEBlend.cpp:
2337         (WebCore::FEBlend::apply): Use scaledSubRegion for effect intern calculations.
2338         * platform/graphics/filters/FEColorMatrix.cpp:
2339         (WebCore::FEColorMatrix::apply): Use scaledSubRegion for effect intern calculations.
2340         * platform/graphics/filters/FEComponentTransfer.cpp:
2341         (WebCore::FEComponentTransfer::apply): Use scaledSubRegion for effect intern
2342         calculations.
2343         * platform/graphics/filters/FEComposite.cpp:
2344         (WebCore::FEComposite::apply): Use scaledSubRegion for effect intern calculations.
2345         * platform/graphics/filters/FEGaussianBlur.cpp:
2346         (WebCore::FEGaussianBlur::apply): Use scaledSubRegion for effect intern calculations.
2347         * platform/graphics/filters/Filter.h: Add the abbility to change the quality
2348         of a filter output.
2349         (WebCore::Filter::filterResolution):
2350         (WebCore::Filter::setFilterResolution):
2351         (WebCore::Filter::calculateEffectSubRegion): Calculates the correct subRegion
2352         as well as the scaledSubRegion. It also searches for the biggest effect size.
2353         We have to change the filter resolution, if one intermediate ImageBuffer size
2354         doesn't fit in the maximal image size.
2355         * platform/graphics/filters/FilterEffect.cpp:
2356         (WebCore::FilterEffect::calculateDrawingIntRect): Use scaledSubRegion to get
2357         the right part of a previous effect result.
2358         (WebCore::FilterEffect::calculateDrawingRect): Use scaledSubRegion to get
2359         the right part of a previous effect result.
2360         (WebCore::FilterEffect::getEffectContext): Use scaledSubRegion to create
2361         a new intermediate ImageBuffer for the result of the current effect.
2362         * platform/graphics/filters/FilterEffect.h:
2363         (WebCore::FilterEffect::scaledSubRegion): The scaled subRegion of a the
2364         filter effect.
2365         (WebCore::FilterEffect::setScaledSubRegion):
2366         (WebCore::FilterEffect::effectBoundaries): The original values of the
2367         EffectElement for a second subRegion calculation.
2368         (WebCore::FilterEffect::setEffectBoundaries):
2369         * platform/graphics/filters/ImageBufferFilter.cpp:
2370         (WebCore::ImageBufferFilter::ImageBufferFilter): Set the scale factor to one.
2371         * platform/graphics/filters/ImageBufferFilter.h:
2372         (WebCore::ImageBufferFilter::maxImageSize):
2373         (WebCore::ImageBufferFilter::calculateEffectSubRegion):
2374         * platform/graphics/filters/SourceAlpha.cpp:
2375         (WebCore::SourceAlpha::calculateEffectRect): Use scaledSubRegion for effect
2376         intern calculations.
2377         * platform/graphics/filters/SourceGraphic.cpp:
2378         (WebCore::SourceGraphic::calculateEffectRect): Use scaledSubRegion for effect
2379         intern calculations.
2380         * svg/SVGFilterElement.cpp:
2381         (WebCore::SVGFilterElement::parseMappedAttribute): Parse filterRes attribute.
2382         (WebCore::SVGFilterElement::buildFilter): Give SVGResourceFilter the current
2383         filterResolution.
2384         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
2385         (WebCore::SVGFilterPrimitiveStandardAttributes::setStandardAttributes): Save
2386         values to effectBoundaries of the filter effect
2387         * svg/graphics/SVGResourceFilter.cpp:
2388         (WebCore::SVGResourceFilter::SVGResourceFilter):
2389         (WebCore::shouldProcessFilter): Return signal if a neccessary value is zero.
2390         (WebCore::SVGResourceFilter::fitsInMaximumImageSize): Checks if the given size
2391         fits into the maximal image size, modifys scale factors if not and return a
2392         bool: fits.
2393         (WebCore::SVGResourceFilter::prepareFilter): Scale the SourceImage to
2394         filterResolution (given by FilterElement or calculated on to big image sizes).
2395         Set the scale level to SVGFilter.
2396         (WebCore::SVGResourceFilter::applyFilter): Don't apply filters if shouldProcessFilter
2397         is wrong.
2398         * svg/graphics/SVGResourceFilter.h:
2399         (WebCore::SVGResourceFilter::setFilterResolution): FilterResolution of FilterElement.
2400         (WebCore::SVGResourceFilter::setHasFilterResolution): Does FilterElement provides
2401         a FilterResolution?
2402         (WebCore::SVGResourceFilter::scaleX): Current scale factor for horizontal.
2403         (WebCore::SVGResourceFilter::scaleY): Current scale factor for vertical.
2404         * svg/graphics/filters/SVGFEDisplacementMap.cpp:
2405         (WebCore::FEDisplacementMap::apply): Use scaledSubRegion for effect intern calculations.
2406         Kernel values are scaled to current filter resolution too.
2407         * svg/graphics/filters/SVGFEFlood.cpp:
2408         (WebCore::FEFlood::apply): Use scaledSubRegion for effect intern calculations.
2409         * svg/graphics/filters/SVGFEMerge.cpp:
2410         (WebCore::FEMerge::apply): Use scaledSubRegion for effect intern calculations.
2411         Kernel values are scaled to current filter resolution too.
2412         * svg/graphics/filters/SVGFEMorphology.cpp:
2413         (WebCore::FEMorphology::apply): Use scaledSubRegion for effect intern calculations.
2414         Kernel values are scaled to current filter resolution too.
2415         * svg/graphics/filters/SVGFEOffset.cpp:
2416         (WebCore::FEOffset::apply): Use scaledSubRegion for effect intern calculations.
2417         * svg/graphics/filters/SVGFETile.cpp:
2418         (WebCore::FETile::apply): Use scaledSubRegion for effect intern calculations.
2419         * svg/graphics/filters/SVGFilter.cpp:
2420         (WebCore::SVGFilter::calculateEffectSubRegion): Calculate subRegion for LayoutTests,
2421         scaledSubRegion according to the current filterResolution and get the maximal image size.
2422         * svg/graphics/filters/SVGFilter.h:
2423         (WebCore::SVGFilter::effectBoundingBoxMode): Original values of the FilterElement. 
2424         (WebCore::SVGFilter::filterRegion): Use virtual for clarification.
2425         (WebCore::SVGFilter::sourceImageRect): Use virtual for clarification.
2426         (WebCore::SVGFilter::maxImageSize): Get the maximal image size.
2427
2428 2009-11-23  Simon Hausmann  <simon.hausmann@nokia.com>
2429
2430         Reviewed by Kenneth Rohde Christiansen.
2431
2432         [Qt] Wrong runtime instance objects of wrapped QObjects may be used if
2433         the wrapped object died before the gc removed the instance.
2434
2435         https://bugs.webkit.org/show_bug.cgi?id=31681
2436
2437         Before using a cached instance, verify that its wrapped QObject is
2438         still alive.
2439
2440         * bridge/qt/qt_instance.cpp:
2441         (JSC::Bindings::QtInstance::getQtInstance):
2442         * bridge/qt/qt_instance.h:
2443         (JSC::Bindings::QtInstance::hashKey):
2444
2445 2009-11-22  Chris Fleizach  <cfleizach@apple.com>
2446
2447         Reviewed by Oliver Hunt.
2448
2449         ARIA: support aria-flowto
2450         https://bugs.webkit.org/show_bug.cgi?id=31762
2451
2452         Test: platform/mac/accessibility/aria-flowto.html
2453
2454         * accessibility/AccessibilityObject.h:
2455         (WebCore::AccessibilityObject::ariaOwnsElements):
2456         (WebCore::AccessibilityObject::supportsARIAFlowTo):
2457         (WebCore::AccessibilityObject::ariaFlowToElements):
2458         * accessibility/AccessibilityRenderObject.cpp:
2459         (WebCore::AccessibilityRenderObject::linkedUIElements):
2460         (WebCore::AccessibilityRenderObject::supportsARIAFlowTo):
2461         (WebCore::AccessibilityRenderObject::ariaFlowToElements):
2462         * accessibility/AccessibilityRenderObject.h:
2463         * html/HTMLAttributeNames.in:
2464
2465 2009-11-22  Nikolas Zimmermann  <nzimmermann@rim.com>
2466
2467         Not reviewed. Build fix for WML enabled builds.
2468         Adopt WebCore API changes.
2469
2470         * wml/WMLAElement.cpp:
2471         (WebCore::WMLAElement::defaultEventHandler):
2472         * wml/WMLInputElement.cpp:
2473         (WebCore::WMLInputElement::defaultEventHandler):
2474
2475 2009-11-22  Pavel Feldman  <pfeldman@chromium.org>
2476
2477         Reviewed by Timothy Hatcher.
2478
2479         Web Inspector: Introduce sidebar background on timeline panel in order
2480         to prevent it from flickering on scroll.
2481
2482         https://bugs.webkit.org/show_bug.cgi?id=31789
2483
2484         * inspector/front-end/TimelinePanel.js:
2485         (WebInspector.TimelinePanel):
2486         (WebInspector.TimelinePanel.prototype.setSidebarWidth):
2487         (WebInspector.TimelinePanel.prototype._onScroll):
2488         (WebInspector.TimelinePanel.prototype._scheduleRefresh):
2489         * inspector/front-end/inspector.css:
2490
2491 2009-11-22  Pavel Feldman  <pfeldman@chromium.org>
2492
2493         Reviewed by Timothy Hatcher.
2494
2495         Web Inspector: Reimplement TimelinePanel to make it fast:
2496         - Extract grid and overview into separate files
2497         - Make timeline create only divs for visible rows
2498
2499         https://bugs.webkit.org/show_bug.cgi?id=31784
2500
2501         * WebCore.gypi:
2502         * WebCore.vcproj/WebCore.vcproj:
2503         * inspector/front-end/AbstractTimelinePanel.js:
2504         (WebInspector.AbstractTimelinePanel.prototype.createInterface):
2505         (WebInspector.AbstractTimelinePanel.prototype.refresh):
2506         (WebInspector.AbstractTimelinePanel.prototype.set calculator):
2507         * inspector/front-end/TimelineGrid.js: Added.
2508         (WebInspector.TimelineGrid):
2509         (WebInspector.TimelineGrid.prototype.get itemsGraphsElement):
2510         (WebInspector.TimelineGrid.prototype.updateDividers):
2511         (WebInspector.TimelineGrid.prototype.addEventDivider):
2512         (WebInspector.TimelineGrid.prototype.setScrollAndDividerTop):
2513         * inspector/front-end/TimelineOverviewPane.js: Added.
2514         (WebInspector.TimelineOverviewPane):
2515         (WebInspector.TimelineOverviewPane.prototype._onCheckboxClicked):
2516         (WebInspector.TimelineOverviewPane.prototype.update):
2517         (WebInspector.TimelineOverviewPane.prototype.setSidebarWidth):
2518         (WebInspector.TimelineOverviewPane.prototype.updateMainViewWidth):
2519         (WebInspector.TimelineOverviewPane.prototype.reset):
2520         (WebInspector.TimelineOverviewPane.prototype._resizeWindow):
2521         (WebInspector.TimelineOverviewPane.prototype._windowResizeDragging):
2522         (WebInspector.TimelineOverviewPane.prototype._dragWindow):
2523         (WebInspector.TimelineOverviewPane.prototype._windowDragging):
2524         (WebInspector.TimelineOverviewPane.prototype._resizeWindowLeft):
2525         (WebInspector.TimelineOverviewPane.prototype._resizeWindowRight):
2526         (WebInspector.TimelineOverviewPane.prototype._setWindowPosition):
2527         (WebInspector.TimelineOverviewPane.prototype._endWindowDragging):
2528         (WebInspector.TimelineOverviewCalculator):
2529         (WebInspector.TimelineOverviewCalculator.prototype.computeBarGraphPercentages):
2530         (WebInspector.TimelineOverviewCalculator.prototype.reset):
2531         (WebInspector.TimelineOverviewCalculator.prototype.updateBoundaries):
2532         (WebInspector.TimelineOverviewCalculator.prototype.get boundarySpan):
2533         (WebInspector.TimelineOverviewCalculator.prototype.formatValue):
2534         (WebInspector.TimelineCategoryTreeElement):
2535         (WebInspector.TimelineCategoryTreeElement.prototype.onattach):
2536         (WebInspector.TimelineCategoryGraph):
2537         (WebInspector.TimelineCategoryGraph.prototype.get graphElement):
2538         (WebInspector.TimelineCategoryGraph.prototype.addChunk):
2539         (WebInspector.TimelineCategoryGraph.prototype.clearChunks):
2540         (WebInspector.TimelineCategoryGraph.prototype.set dimmed):
2541         * inspector/front-end/TimelinePanel.js:
2542         (WebInspector.TimelinePanel):
2543         (WebInspector.TimelinePanel.prototype._toggleTimelineButtonClicked):
2544         (WebInspector.TimelinePanel.prototype.addRecordToTimeline):
2545         (WebInspector.TimelinePanel.prototype._formatRecord):
2546         (WebInspector.TimelinePanel.prototype.setSidebarWidth):
2547         (WebInspector.TimelinePanel.prototype.updateMainViewWidth):
2548         (WebInspector.TimelinePanel.prototype.resize):
2549         (WebInspector.TimelinePanel.prototype.reset):
2550         (WebInspector.TimelinePanel.prototype.show):
2551         (WebInspector.TimelinePanel.prototype._onScroll):
2552         (WebInspector.TimelinePanel.prototype._scheduleRefresh):
2553         (WebInspector.TimelinePanel.prototype._refresh):
2554         (WebInspector.TimelinePanel.prototype._refreshRecords):
2555         (WebInspector.TimelinePanel.prototype._adjustScrollPosition):
2556         (WebInspector.TimelineCategory):
2557         (WebInspector.TimelineCalculator):
2558         (WebInspector.TimelineCalculator.prototype.get boundarySpan):
2559         (WebInspector.TimelineRecordListRow):
2560         (WebInspector.TimelineRecordListRow.prototype.update):
2561         (WebInspector.TimelineRecordGraphRow):
2562         (WebInspector.TimelineRecordGraphRow.prototype.update):
2563         * inspector/front-end/WebKit.qrc:
2564         * inspector/front-end/inspector.css:
2565         * inspector/front-end/inspector.html:
2566
2567 2009-11-22  Chris Evans  <cevans@chromium.org>
2568
2569         Reviewed by Adam Barth.
2570
2571         Disable access to file:/// directory listings
2572         https://bugs.webkit.org/show_bug.cgi?id=31329
2573
2574         Deny access to directory listings. This needs doing in WebKit for
2575         WebKit clients that do permit top-level navigation to file:///dir.
2576         This matches Firefox, plus the existing Safari implementation (which
2577         does not support any directory access at all). It will fix the
2578         LayoutTest named below for Chromium.
2579
2580         Test: fast/xmlhttprequest/xmlhttprequest-nonexistent-file.html
2581
2582         * page/SecurityOrigin.cpp: Deny access to directory listings.
2583         (WebCore::SecurityOrigin::SecurityOrigin):
2584         (WebCore::SecurityOrigin::canRequest):
2585
2586 2009-11-20  Joseph Pecoraro  <joepeck@webkit.org>
2587
2588         Reviewed by Timothy Hatcher.
2589
2590         Web Inspector: Support Ctrl+P and Ctrl+N, Readline keyboard shortcuts in the Console
2591         https://bugs.webkit.org/show_bug.cgi?id=31400
2592
2593         Handle the following when on a Mac:
2594
2595           Ctrl+P = Previous (like Up arrow)
2596           Ctrl+N = Next (like Down arrow)
2597
2598         No longer rerun autocompletion when just pushing a modifier key
2599         like Control, Alt, Shift, or Meta.
2600
2601         Improved arrow key behavior with Multiline code in the Console, with the following behavior:
2602
2603           Up   = Previous Command if on First Line (caret moves to the end of the first line)
2604                  otherwise default caret movement in text.
2605           Down = Next Command if on Last Line (caret naturally moves to the end)
2606                  otherwise default caret movement in text.
2607
2608         * inspector/front-end/TextPrompt.js:
2609         (WebInspector.TextPrompt.prototype.handleKeyEvent): handle new keyboard shortcuts
2610         (WebInspector.TextPrompt.prototype.isCaretOnFirstLine): check if the caret is on the top line
2611         (WebInspector.TextPrompt.prototype.isCaretOnLastLine): check if the caret is on the bottom line
2612         (WebInspector.TextPrompt.prototype._upKeyPressed):
2613         (WebInspector.TextPrompt.prototype._downKeyPressed):
2614         (WebInspector.TextPrompt.prototype._moveBackInHistory):
2615         (WebInspector.TextPrompt.prototype._moveForwardInHistory):
2616
2617 2009-11-21  Jessie Berlin  <jberlin@webkit.org>
2618
2619         Reviewed by Timothy Hatcher.
2620
2621         Adds a tooltip containing the full url of the resource to each element
2622         in the Resources panel so that it is possible to quickly see the query
2623         parameters.
2624         https://bugs.webkit.org/show_bug.cgi?id=19103
2625
2626         * inspector/front-end/ResourcesPanel.js:
2627         (WebInspector.ResourceSidebarTreeElement.prototype.refresh):
2628         Set the tooltip to be the resource's url.
2629
2630 2009-11-21  Simon Fraser  <simon.fraser@apple.com>
2631
2632         Reviewed by Dan Bernstein.
2633
2634         CSSKeyframesRule::findRule() and deleteRule() should accept 'from' and 'to' as well as percentages
2635         https://bugs.webkit.org/show_bug.cgi?id=31588
2636         
2637         In WebKitCSSKeyframesRule::findRuleIndex(), map 'from' to 0% an 'to' to 100%
2638         so that findRule() and deleteRule() work with these keywords.
2639
2640         * css/WebKitCSSKeyframesRule.cpp:
2641         (WebCore::WebKitCSSKeyframesRule::findRuleIndex):
2642
2643 2009-11-21  Daniel Bates  <dbates@webkit.org>
2644
2645         Reviewed by Eric Seidel.
2646
2647         https://bugs.webkit.org/show_bug.cgi?id=31647
2648
2649         Changed KeyboardEvent::m_keyEvent from a raw pointer to an OwnPtr.
2650
2651         No functionality was changed. So, no new tests.
2652
2653         * dom/KeyboardEvent.cpp:
2654         (WebCore::KeyboardEvent::~KeyboardEvent):
2655         * dom/KeyboardEvent.h: Changed m_keyEvent to OwnPtr.
2656         (WebCore::KeyboardEvent::keyEvent):
2657
2658 2009-11-20  Chris Fleizach  <cfleizach@apple.com>
2659
2660         Reviewed by Beth Dakin.
2661
2662         WAI-ARIA: add support for aria-owns
2663         https://bugs.webkit.org/show_bug.cgi?id=31702
2664
2665         Re-organized how accessibilityAttributeNames are returned so 
2666         that it's possible for an element to add an attribute based on 
2667         a dynamic value. In this case, we only want to add AXOwn if the 
2668         element actually supports aria-owns.
2669   
2670         Test: platform/mac/accessibility/aria-owns.html
2671
2672         * accessibility/AccessibilityObject.h:
2673         (WebCore::AccessibilityObject::supportsARIAOwns):
2674         (WebCore::AccessibilityObject::ariaOwnsElements):
2675         * accessibility/AccessibilityRenderObject.cpp:
2676         (WebCore::AccessibilityRenderObject::ariaOwnsElements):
2677         (WebCore::AccessibilityRenderObject::supportsARIAOwns):
2678         * accessibility/AccessibilityRenderObject.h:
2679         * accessibility/mac/AccessibilityObjectWrapper.mm:
2680         (-[AccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
2681         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
2682         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
2683         * html/HTMLAttributeNames.in:
2684
2685 2009-11-20  Eric Carlson  <eric.carlson@apple.com>
2686
2687         Reviewed by Simon Fraser.
2688
2689         <rdar://problem/7414396> Leopard & Tiger: Support closed caption in <video> element
2690
2691         * css/mediaControls.css:
2692             Define closed caption toggle button.
2693
2694         * rendering/RenderMedia.cpp:
2695         (WebCore::RenderMedia::updateControls):
2696             Create closed caption toggle button in display order.
2697
2698         * rendering/RenderThemeMac.mm:
2699         (WebCore::RenderThemeMac::shouldRenderMediaControlPart):
2700             Don't require MediaControllerThemeQuickTime theme for captions toggle button.
2701             No need to check if the movie has video, a closed captions track is a video
2702             track.
2703
2704 2009-11-20  Joseph Pecoraro  <joepeck@webkit.org>
2705
2706         Reviewed by Timothy Hatcher.
2707
2708         Web Inspector: Running code in the Console that ends with a
2709         single line comment no longer produces a parse error.
2710
2711         * inspector/front-end/InjectedScript.js:
2712         (InjectedScript._evaluateOn):
2713
2714 2009-11-20  Chris Fleizach  <cfleizach@apple.com>
2715
2716         Reviewed by Beth Dakin.
2717
2718         WAI-ARIA: add support for 'math' role
2719         https://bugs.webkit.org/show_bug.cgi?id=31706
2720
2721         * accessibility/AccessibilityObject.cpp:
2722         * accessibility/AccessibilityObject.h:
2723         * accessibility/mac/AccessibilityObjectWrapper.mm:
2724
2725 2009-11-20  Yael Aharon  <yael.aharon@nokia.com>
2726
2727         Reviewed by Kenneth Rohde Christiansen.
2728
2729         NPN_ReloadPlugins does not reload the page even if reloadPages is true.
2730         https://bugs.webkit.org/show_bug.cgi?id=30460
2731
2732         Replace call to PluginDatabase::installedPlugins()->refresh() with Page::refreshPlugins().
2733         It already refreshes plugins and reloads pages when necessary.
2734
2735         Tests: plugins/reloadplugins-and-pages.html
2736                plugins/reloadplugins-no-pages.html
2737
2738         * plugins/PluginInfoStore.cpp:
2739         (WebCore::refreshPlugins):
2740
2741 2009-11-20  Oliver Hunt  <oliver@apple.com>
2742
2743         Reviewed by Dave Hyatt.
2744
2745         <rdar://7409188> WebKit needs to be able to serialize and deserialize objects.
2746
2747         Expose WebCore object serialization to WebKit.
2748
2749         * WebCore.base.exp:
2750         * bindings/js/SerializedScriptValue.cpp:
2751         (WebCore::SerializedScriptValue::~SerializedScriptValue):
2752         (WebCore::SerializedScriptValue::create):
2753         (WebCore::SerializedScriptValue::deserialize):
2754         * bindings/js/SerializedScriptValue.h:
2755
2756 2009-11-20  Brian Weinstein  <bweinstein@apple.com>
2757
2758         Reviewed by Tim Hatcher.
2759
2760         Fixes <http://webkit.org/b/31741>.
2761         Web Inspector: User Entered Data on the console should show up no matter what filters.
2762         
2763         Always show .console-user-command-result, no matter what the filter say
2764         we should do with the other classes.
2765
2766         * inspector/front-end/inspector.css:
2767
2768 2009-11-20  Brian Weinstein  <bweinstein@apple.com>
2769
2770         Reviewed by Tim Hatcher.
2771
2772         Fixes <http://webkit.org/b/31700>.
2773         Web Inspector: isMac should be in one central location + Cached.
2774         
2775         We should cache the value of isMac, and make the indexOf call in one
2776         single location, because we are calling it from multiple places, and saving
2777         the result can save us time, and make the call sites simpler.
2778
2779         * inspector/front-end/AbstractTimelinePanel.js:
2780         (WebInspector.AbstractTimelinePanel.prototype._updateFilter):
2781         * inspector/front-end/ConsoleView.js:
2782         (WebInspector.ConsoleView.prototype._updateFilter):
2783         * inspector/front-end/ElementsPanel.js:
2784         (WebInspector.ElementsPanel.prototype.handleKeyEvent):
2785         * inspector/front-end/ScriptsPanel.js:
2786         (WebInspector.ScriptsPanel):
2787         * inspector/front-end/SourceFrame.js:
2788         (WebInspector.SourceFrame.prototype._loaded):
2789         * inspector/front-end/inspector.js:
2790         (WebInspector.documentKeyDown):
2791         (WebInspector.isMac):
2792
2793 2009-11-19  Joseph Pecoraro  <joepeck@webkit.org>
2794
2795         Removed .DS_Store accidentally added in last (r51245).
2796
2797 2009-11-19  Joseph Pecoraro  <joepeck@webkit.org>
2798
2799         Reviewed by Timothy Hatcher.
2800
2801         Web Inspector: Add Console Only Layout Mode
2802         https://bugs.webkit.org/show_bug.cgi?id=30282
2803
2804         Adds a Console Panel, which allows for a Full size Console. This
2805         extends the Drawer to the size of a Panel. This also fixes previous
2806         resize issues with the Drawer.
2807
2808         * inspector/front-end/ConsolePanel.js: added.
2809         (WebInspector.ConsolePanel):
2810         (WebInspector.ConsolePanel.prototype.toolbarItemClass.get toolbarItemLabel):
2811         (WebInspector.ConsolePanel.prototype.show):
2812         (WebInspector.ConsolePanel.prototype.hide):
2813         * inspector/front-end/Drawer.js:
2814         (WebInspector.Drawer):
2815         (WebInspector.Drawer.prototype.set visibleView):
2816         (WebInspector.Drawer.prototype.get savedHeight): access the saved height of the variable console.
2817         (WebInspector.Drawer.prototype.show.animationFinished):
2818         (WebInspector.Drawer.prototype.show):
2819         (WebInspector.Drawer.prototype.hide.animationFinished):
2820         (WebInspector.Drawer.prototype.hide):
2821         (WebInspector.Drawer.prototype.resize): resize appropriately if full/non-full
2822         (WebInspector.Drawer.prototype.enterPanelMode):
2823         (WebInspector.Drawer.prototype.exitPanelMode):
2824         (WebInspector.Drawer.prototype.immediatelyExitPanelMode):
2825         (WebInspector.Drawer.prototype._cancelAnimationIfNeeded):
2826         (WebInspector.Drawer.prototype._animateDrawerHeight.animationFinished):
2827         (WebInspector.Drawer.prototype._animateDrawerHeight):
2828         (WebInspector.Drawer.prototype._animationDuration):
2829         (WebInspector.Drawer.prototype._startStatusBarDragging):
2830         (WebInspector.Drawer.prototype._statusBarDragging):
2831         (WebInspector.Drawer.prototype._endStatusBarDragging):
2832
2833         Miscellaneous changes and cleanup.
2834
2835         * English.lproj/localizedStrings.js: "Console" toolbar title.
2836         * inspector/front-end/ConsoleView.js: removed unnecessary element reordering  
2837         * inspector/front-end/Images/consoleIcon.png: added.
2838         * inspector/front-end/inspector.css: added icon.
2839         * inspector/front-end/inspector.html:
2840         * inspector/front-end/inspector.js:
2841         (WebInspector._createPanels): create console panel
2842         (WebInspector.windowResize): resize drawer if necessary
2843         (WebInspector.documentKeyDown): esc should not toggle the console when in panel mode
2844         (WebInspector.animateStyle): start animation interval, returns the interval key
2845         (WebInspector.toggleAttach): resize drawer if necessary
2846         (WebInspector.showConsolePanel): restore the panel when the inspector restarts
2847         (WebInspector.showProfileForURL): style fix
2848
2849         Restore the panel when the inspector restarts.
2850
2851         * inspector/InspectorController.cpp:
2852         (WebCore::InspectorController::setWindowVisible):
2853         (WebCore::InspectorController::specialPanelForJSName):
2854         * inspector/InspectorFrontend.cpp:
2855         (WebCore::InspectorFrontend::showPanel):
2856
2857         Build files.
2858
2859         * WebCore.gypi:
2860         * WebCore.vcproj/WebCore.vcproj:
2861         * inspector/front-end/WebKit.qrc:
2862
2863 2009-11-20  Brian Weinstein  <bweinstein@apple.com>
2864
2865         Reviewed by Tim Hatcher.
2866
2867         Fixes <http://webkit.org/b/31699>.
2868         Web Inspector: Should Cache Values of InspectorController.platform() and port().
2869
2870         Refactor the Inspector to cache the value of InspectorController.platform
2871         and InspectorController.port, because those need to call into C++, they are
2872         being called more and more as we add platform specific keyboard shortcuts, and
2873         they shouldn't change in the lifecycle of the Web Inspector.
2874
2875         * inspector/front-end/AbstractTimelinePanel.js:
2876         (WebInspector.AbstractTimelinePanel.prototype._updateFilter):
2877         * inspector/front-end/ConsoleView.js:
2878         (WebInspector.ConsoleView.prototype._updateFilter):
2879         * inspector/front-end/ElementsPanel.js:
2880         (WebInspector.ElementsPanel.prototype.handleKeyEvent):
2881         * inspector/front-end/ScriptsPanel.js:
2882         (WebInspector.ScriptsPanel):
2883         * inspector/front-end/SourceFrame.js:
2884         (WebInspector.SourceFrame.prototype._loaded):
2885         * inspector/front-end/inspector.js:
2886         (WebInspector.get platform):
2887         (WebInspector.get port):
2888         (WebInspector.loaded):
2889         (WebInspector.documentKeyDown):
2890         (WebInspector.toolbarDragStart):
2891
2892 2009-11-20  Dirk Schulze  <krit@webkit.org>
2893
2894         Unreviewed build fix for filters enabled builds.
2895
2896         * platform/graphics/filters/FEColorMatrix.cpp:
2897         (WebCore::FEColorMatrix::apply):
2898         * platform/graphics/filters/FEComposite.cpp:
2899         (WebCore::FEComposite::apply):
2900         * platform/graphics/filters/SourceGraphic.cpp:
2901         (WebCore::SourceGraphic::apply):
2902         * svg/graphics/SVGResourceFilter.cpp:
2903         (WebCore::SVGResourceFilter::applyFilter):
2904         * svg/graphics/filters/SVGFEMerge.cpp:
2905         (WebCore::FEMerge::apply):
2906         * svg/graphics/filters/SVGFEOffset.cpp:
2907         (WebCore::FEOffset::apply):
2908         * svg/graphics/filters/SVGFETile.cpp:
2909         (WebCore::FETile::apply):
2910
2911 2009-11-20  Eric Carlson  <eric.carlson@apple.com>
2912
2913         Reviewed by Simon Fraser.
2914
2915         <rdar://problem/7389945> QTKit based media engine should not claim to support 
2916         fullscreen on Leopard
2917
2918         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
2919         (WebCore::MediaPlayerPrivate::supportsFullscreen):
2920             Only return true on SnowLeopard for now.
2921
2922         * rendering/RenderThemeMac.mm:
2923         (WebCore::RenderThemeMac::shouldRenderMediaControlPart):
2924             No need to special case MediaFullscreenButtonPart as the default implementation 
2925             asks the media engine if it supports fullscreen.
2926
2927 2009-11-18  Girish Ramakrishnan  <girish@forwardbias.in>
2928
2929         Reviewed by Simon Hausmann.
2930
2931         Patch by Yongjun Zhang <yongjun.zhang@nokia.com> and
2932                  Girish Ramakrishnan <girish@forwardbias.in>
2933         
2934         [Qt] Implement support for rendering plugins on Qt/Mac when a page is used
2935         without a QWebView or when inside QGraphicsWebView.
2936         
2937         Currently, the code provides the cgcontext of the PlatformPluginWidget to
2938         the plugin. This approach does not work when we are printing, or using
2939         QWebFrame::render() to render to a QImage/QPixmap since the plugin ends
2940         up drawing on the QWebView (i.e platformPluginWidget's cgcontext) instead
2941         of the QPaintDevice's context.
2942         
2943         To solve all cases and keep the code simple, we render the plugin to an
2944         offscreen pixmap in all cases. This way, the plugin always renders to the
2945         CGContext of the pixmap and we then use QPainter to blit the pixmap into
2946         the QPaintDevice. We also create a fake window and set it's WindowRef in
2947         NPWindow. Only with this WindowRef does Flash paint correctly to the QPixmap.
2948         
2949         Now, that's the theory. In practice, ATM, mouse events do not work when using
2950         the fake window. So, setPlatformPluginWidget() is still called when using QWebView
2951         so that there are no regressions after this patch. Once we get mouse events
2952         working, setPlatformPluginWidget will be removed.
2953         
2954         https://bugs.webkit.org/show_bug.cgi?id=31183
2955
2956         * plugins/PluginView.cpp:
2957         (WebCore::PluginView::PluginView):
2958         * plugins/PluginView.h:
2959         * plugins/mac/PluginViewMac.cpp:
2960         (WebCore::PluginView::platformStart):
2961         (WebCore::PluginView::platformDestroy):
2962         (WebCore::PluginView::setNPWindowIfNeeded):
2963         (WebCore::PluginView::updatePluginWidget):
2964         (WebCore::PluginView::paint):
2965         (WebCore::PluginView::invalidateRect):
2966
2967 2009-11-19  Joseph Pecoraro  <joepeck@webkit.org>
2968
2969         Reviewed by Timothy Hatcher.
2970
2971         Web Inspector: Resync Resources Backend and Frontend
2972         https://bugs.webkit.org/show_bug.cgi?id=31705
2973
2974         * inspector/front-end/Resource.js: resync enum values with backend
2975         (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType): return false if all else fails, not true in all cases
2976
2977 2009-11-19  Steve Block  <steveblock@google.com>
2978
2979         Reviewed by Darin Fisher.
2980
2981         Android port lacks configuration in Platform.h and config.h.
2982         https://bugs.webkit.org/show_bug.cgi?id=31671
2983
2984         Build change only. No new tests possible.
2985
2986         * config.h: Modified. Added Android-specific configuration.
2987
2988 2009-11-20  Roland Steiner  <rolandsteiner@chromium.org>
2989
2990         Reviewed by Darin Adler.
2991
2992         Change default stylesheet to reset text indentation for ruby elements by default.
2993         (https://bugs.webkit.org/show_bug.cgi?id=31247)
2994
2995         Test: fast/ruby/ruby-text-indent.html
2996
2997         * css/html.css: reset text-indent on <ruby> and <rt> elements
2998
2999 2009-11-19  Brian Weinstein  <bweinstein@apple.com>
3000
3001         Reviewed by Darin Adler.
3002
3003         Fixes <http://webkit.org/b/22754>.
3004         Web Inspector: Keyboard shortcut for Element finder.
3005
3006         Use Command + Shift + C as a shortcut for Node Search, to 
3007         match the Firebug shortcut to do the same thing.
3008
3009         * inspector/front-end/ElementsPanel.js:
3010         (WebInspector.ElementsPanel.prototype.handleKeyEvent):
3011
3012 2009-11-19  Alexey Proskuryakov  <ap@apple.com>
3013
3014         Reviewed by Darin Adler.
3015
3016         https://bugs.webkit.org/show_bug.cgi?id=31690
3017         Make SocketStreamHandleCFNet work on Windows
3018
3019         * WebCore.vcproj/WebCore.vcproj: Added LoaderRunLoopCF.
3020
3021         * platform/network/ResourceHandle.h: Removed loaderRunLoop().
3022
3023         * platform/network/cf/LoaderRunLoopCF.cpp: Added.
3024         (WebCore::emptyPerform):
3025         (WebCore::runLoaderThread):
3026         (WebCore::loaderRunLoop):
3027         * platform/network/cf/LoaderRunLoopCF.h: Added.
3028         Moved the run loop that we use for CFNetwork from ResourceHandle to its own file, because
3029         it's needed for more than just resource loading.
3030
3031         * platform/network/cf/ResourceHandleCFNet.cpp: Use loaderRunLoop() from its new location.
3032
3033         * platform/network/cf/DNSCFNet.cpp: (WebCore::DNSResolveQueue::resolve): Ditto.
3034
3035         * platform/network/cf/SocketStreamHandle.h: Added static callbacks for forwarding events to
3036         main thread.
3037         * platform/network/cf/SocketStreamHandleCFNet.cpp:
3038         (WebCore::SocketStreamHandle::SocketStreamHandle): Use loaderRunLoop() on Windows instead of
3039         inoperable main run loop.
3040
3041         (WebCore::MainThreadEventCallbackInfo::MainThreadEventCallbackInfo): 
3042         (WebCore::SocketStreamHandle::readStreamCallback):
3043         (WebCore::SocketStreamHandle::writeStreamCallback):
3044         (WebCore::SocketStreamHandle::readStreamCallbackMainThread):
3045         (WebCore::SocketStreamHandle::writeStreamCallbackMainThread):
3046         Forward stream events to main thread on Windows.
3047
3048 2009-11-19  Avi Drissman  <avi@chromium.org>
3049
3050         Reviewed by Darin Adler.
3051
3052         Quick style fix.
3053         https://bugs.webkit.org/show_bug.cgi?id=27777
3054
3055         * platform/graphics/cg/PDFDocumentImage.cpp:
3056
3057 2009-11-19  Beth Dakin  <bdakin@apple.com>
3058
3059        Build fix. No review needed.
3060
3061         * platform/chromium/ScrollbarThemeChromium.cpp:
3062         (WebCore::ScrollbarThemeChromium::paintTickmarks):
3063         * rendering/RenderMediaControlsChromium.cpp:
3064         (WebCore::paintMediaButton):
3065
3066 2009-11-19  Beth Dakin  <bdakin@apple.com>
3067       
3068        Build fix. No review needed.
3069
3070         * rendering/RenderThemeChromiumSkia.cpp:
3071         (WebCore::RenderThemeChromiumSkia::paintCheckbox):
3072         (WebCore::RenderThemeChromiumSkia::paintRadio):
3073         (WebCore::RenderThemeChromiumSkia::paintSearchFieldCancelButton):
3074         (WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsDecoration):
3075         (WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsButton):
3076
3077 2009-11-19  Beth Dakin  <bdakin@apple.com>
3078
3079        Build fix. No review needed.
3080
3081         * platform/graphics/qt/StillImageQt.cpp:
3082         (WebCore::StillImage::draw):
3083         * platform/graphics/qt/StillImageQt.h:
3084
3085 2009-11-19  Beth Dakin  <bdakin@apple.com>
3086
3087        Build fix. No review needed.
3088
3089         * rendering/RenderThemeWin.cpp:
3090         (WebCore::RenderThemeWin::paintSearchFieldCancelButton):
3091         (WebCore::RenderThemeWin::paintSearchFieldResultsDecoration):
3092         (WebCore::RenderThemeWin::paintSearchFieldResultsButton):
3093
3094 2009-11-19  Beth Dakin  <bdakin@apple.com>
3095
3096        Build fix. No review needed.
3097
3098         * plugins/PluginView.cpp:
3099         (WebCore::PluginView::paintMissingPluginIcon):
3100
3101 2009-11-19  Beth Dakin  <bdakin@apple.com>
3102
3103         Build fix. No review needed.
3104
3105         * platform/graphics/win/ImageCGWin.cpp:
3106         (WebCore::BitmapImage::getHBITMAPOfSize):
3107         (WebCore::BitmapImage::drawFrameMatchingSourceSize):
3108
3109 2009-11-19  Beth Dakin  <bdakin@apple.com>
3110
3111         Reviewed by Darin Adler.
3112
3113         Fix for https://bugs.webkit.org/show_bug.cgi?id=31321 Make -webkit-
3114         color-correction work with untagged images
3115
3116         Image's draw(), drawPattern(), and fillWithSolidColor() functions 
3117         now take a ColorSpace. A bunch of classes inherit from Image, so 
3118         draw() and drawPattern() functions there must also take a 
3119         ColorSpace.
3120         * platform/graphics/Image.cpp:
3121         (WebCore::Image::fillWithSolidColor):
3122         (WebCore::Image::drawTiled):
3123         * platform/graphics/Image.h:
3124         * platform/graphics/BitmapImage.h:
3125         * platform/graphics/GeneratedImage.cpp:
3126         (WebCore::GeneratedImage::draw):
3127         (WebCore::GeneratedImage::drawPattern):
3128         * platform/graphics/GeneratedImage.h:
3129         * platform/graphics/cg/PDFDocumentImage.cpp:
3130         (WebCore::PDFDocumentImage::draw):
3131         * platform/graphics/cg/PDFDocumentImage.h:
3132         * svg/graphics/SVGImage.cpp:
3133         (WebCore::SVGImage::draw):
3134         * svg/graphics/SVGImage.h:
3135
3136         All of the drawImage() functions and drawTiled() functions of 
3137         GraphicsContext now take a ColorSpace.
3138         * platform/graphics/GraphicsContext.cpp:
3139         (WebCore::GraphicsContext::drawImage):
3140         (WebCore::GraphicsContext::drawTiledImage):
3141         * platform/graphics/GraphicsContext.h:
3142
3143         This is where the actual work is done.
3144         * platform/graphics/cg/ImageCG.cpp:
3145         (WebCore::imageWithColorSpace): New static function that returns a 
3146         copy of the given image in the given ColorSpace *IF* we should use 
3147         the given ColorSpace. We will ignore the color space if the image 
3148         is tagged and return 0. 
3149         (WebCore::BitmapImage::draw): Now takes a ColorSpace and uses it to 
3150         call imageWithColorSpace(). 
3151         (WebCore::Image::drawPattern): Same.
3152
3153         Attempt to keep all ports building. 
3154         * platform/graphics/cairo/ImageCairo.cpp:
3155         (WebCore::BitmapImage::draw):
3156         (WebCore::Image::drawPattern):
3157         * platform/graphics/haiku/ImageHaiku.cpp:
3158         (WebCore::BitmapImage::draw):
3159         (WebCore::Image::drawPattern):
3160         * platform/graphics/qt/ImageQt.cpp:
3161         (WebCore::Image::drawPattern):
3162         (WebCore::BitmapImage::draw):
3163         * platform/graphics/skia/BitmapImageSingleFrameSkia.h:
3164         * platform/graphics/skia/ImageSkia.cpp:
3165         (WebCore::Image::drawPattern):
3166         (WebCore::BitmapImage::draw):
3167         (WebCore::BitmapImageSingleFrameSkia::draw):
3168         * platform/graphics/wx/ImageWx.cpp:
3169         (WebCore::BitmapImage::draw):
3170         (WebCore::BitmapImage::drawPattern):
3171
3172         Callers of GraphicsContext's drawImage() and drawTiled() functions 
3173         now need to send a ColorSpace.
3174         * html/HTMLCanvasElement.cpp:
3175         (WebCore::HTMLCanvasElement::paint):
3176         * html/canvas/CanvasRenderingContext2D.cpp:
3177         (WebCore::CanvasRenderingContext2D::drawImage):
3178         (WebCore::CanvasRenderingContext2D::drawImageFromRect):
3179         * platform/ScrollView.cpp:
3180         (WebCore::ScrollView::wheelEvent):
3181         * platform/graphics/filters/FEColorMatrix.cpp:
3182         (WebCore::FEColorMatrix::apply):
3183         * platform/graphics/filters/FEComposite.cpp:
3184         (WebCore::FEComposite::apply):
3185         * platform/graphics/filters/SourceGraphic.cpp:
3186         (WebCore::SourceGraphic::apply):
3187         * platform/mac/ScrollbarThemeMac.mm:
3188         (WebCore::ScrollbarThemeMac::paint):
3189         * rendering/RenderBoxModelObject.cpp:
3190         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
3191         (WebCore::RenderBoxModelObject::paintNinePieceImage):
3192         * rendering/RenderImage.cpp:
3193         (WebCore::RenderImage::paintReplaced):
3194         * rendering/RenderLayer.cpp:
3195         (WebCore::RenderLayer::paintResizer):
3196         * rendering/RenderListMarker.cpp:
3197         (WebCore::RenderListMarker::paint):
3198         * rendering/RenderSVGImage.cpp:
3199         (WebCore::RenderSVGImage::paint):
3200         * rendering/RenderWidget.cpp:
3201         (WebCore::RenderWidget::paint):
3202         * svg/graphics/SVGPaintServerPattern.cpp:
3203         (WebCore::SVGPaintServerPattern::setup):
3204         * svg/graphics/SVGResourceFilter.cpp:
3205         (WebCore::SVGResourceFilter::applyFilter):
3206         * svg/graphics/filters/SVGFEMerge.cpp:
3207         (WebCore::FEMerge::apply):
3208         * svg/graphics/filters/SVGFEOffset.cpp:
3209         (WebCore::FEOffset::apply):
3210         * svg/graphics/filters/SVGFETile.cpp:
3211         (WebCore::FETile::apply):
3212
3213 2009-11-19  Avi Drissman  <avi@chromium.org>
3214
3215         Reviewed by Darin Adler.
3216
3217         Properly create a CGImageRef on non-PLATFORM(MAC).
3218         https://bugs.webkit.org/show_bug.cgi?id=27777
3219
3220         * platform/graphics/cg/ImageSourceCG.cpp:
3221         (WebCore::sharedBufferGetBytesAtPosition):
3222         (WebCore::sharedBufferRelease):
3223         (WebCore::ImageSource::setData):
3224         * platform/graphics/cg/ImageSourceCG.h:
3225         * platform/graphics/cg/PDFDocumentImage.cpp:
3226         (WebCore::PDFDocumentImage::dataChanged):
3227
3228 2009-11-19  Oliver Hunt  <oliver@apple.com>
3229
3230         Reviewed by Dave Hyatt.
3231
3232         -webkit-user-drag: element Drag images include overflow decorations from incorrect nodes
3233         https://bugs.webkit.org/show_bug.cgi?id=31656
3234
3235         Make sure we're a child of the painting root before drawing overflow features.
3236
3237         * manual-tests/user-drag-with-decorations.html: Added.
3238         * rendering/RenderBlock.cpp:
3239         (WebCore::RenderBlock::paint):
3240
3241 2009-11-19  Dmitry Titov  <dimich@chromium.org>
3242
3243         Not reviewed, attempt to fix Chromium build.
3244
3245         * rendering/RenderMediaControlsChromium.cpp:
3246         (WebCore::RenderMediaControlsChromium::paintMediaControlsPart): Add new enum values for Show/HideClosedCaptionButton to make it compile.
3247
3248 2009-11-19  Rahul Kuchhal  <kuchhal@chromium.org>
3249
3250         Reviewed by Darin Adler.
3251
3252         Do not assert when a high number is used for roman numerals in lists.
3253         https://bugs.webkit.org/show_bug.cgi?id=31652
3254
3255         Test: fast/lists/ol-start-roman.html
3256
3257         * rendering/RenderListMarker.cpp:
3258         (WebCore::toRoman): Increase the char array size.
3259
3260 2009-11-19  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
3261
3262         Rubber-stamped by Oliver Hunt.
3263
3264         Add translatable strings to cover validationMessage, after
3265         r51172. Already covered by existing test.
3266
3267         * platform/gtk/LocalizedStringsGtk.cpp:
3268         (WebCore::validationMessageValueMissingText):
3269         (WebCore::validationMessageTypeMismatchText):
3270         (WebCore::validationMessagePatternMismatchText):
3271         (WebCore::validationMessageTooLongText):
3272         (WebCore::validationMessageRangeUnderflowText):
3273         (WebCore::validationMessageRangeOverflowText):
3274         (WebCore::validationMessageStepMismatchText):
3275
3276 2009-11-19  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
3277
3278         Reviewed by Darin Adler.
3279
3280         Remove HAVE(FLOAT_H) guard
3281         https://bugs.webkit.org/show_bug.cgi?id=31661
3282
3283         WebCore has a dependency on float.h, there is
3284         no need to guard float.h.
3285
3286         No new tests as there is no functional change.
3287
3288         * html/HTMLInputElement.cpp: Remove include directive
3289         for float.h as it is included in MathExtras.h already.
3290
3291 2009-11-19  Simon Fraser  <simon.fraser@apple.com>
3292
3293         Reviewed by Pavel Feldman.
3294
3295         Instrumentation should account for painting in compositing layers
3296         https://bugs.webkit.org/show_bug.cgi?id=31674
3297
3298         Add calls to InspectorTimelineAgent for painting into compositing layers,
3299         which is not accounted for in FrameView::paintContents().
3300
3301         * rendering/RenderLayerBacking.cpp:
3302         (WebCore::RenderLayerBacking::paintIntoLayer):
3303         Avoid fetching the FrameView multiple times.
3304         
3305         (WebCore::inspectorTimelineAgent):
3306         (WebCore::RenderLayerBacking::paintContents):
3307
3308 2009-11-19  Eric Carlson  <eric.carlson@apple.com>
3309
3310         Reviewed by Dan Bernstein.
3311
3312         <rdar://problem/7035231>
3313         Support closed caption in <video> element
3314
3315         Test: media/media-captions.html
3316
3317         * WebCore.base.exp:
3318         * accessibility/AccessibilityMediaControls.cpp:
3319         (WebCore::AccessibilityMediaControl::controlTypeName):
3320             Define ShowClosedCaptionsButton and HideClosedCaptionsButton.
3321
3322         * css/CSSPrimitiveValueMappings.h:
3323         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
3324             Add MediaToggleClosedCaptionsButtonPart.
3325
3326         * css/CSSSelector.cpp:
3327         (WebCore::CSSSelector::extractPseudoType):
3328             Define and match mediaControlsToggleClosedCaptionsButton.
3329
3330         * css/CSSSelector.h:
3331         (WebCore::CSSSelector::):
3332         * css/CSSStyleSelector.cpp:
3333         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
3334             Define and match PseudoMediaControlsToggleClosedCaptions.
3335
3336         * css/CSSValueKeywords.in:
3337             Define and use media-toggle-closed-captions-button.
3338
3339         * css/mediaControls.css:
3340         * css/mediaControlsQuickTime.css:
3341             Add webkit-media-controls-toggle-closed-captions-button.
3342
3343         * html/HTMLMediaElement.cpp:
3344         (WebCore::HTMLMediaElement::HTMLMediaElement): 
3345             Initialize m_closedCaptionsVisible.
3346         (WebCore::HTMLMediaElement::loadInternal): 
3347             Set m_closedCaptionsVisible to false.
3348         (WebCore::HTMLMediaElement::hasClosedCaptions): 
3349         (WebCore::HTMLMediaElement::closedCaptionsVisible): 
3350         (WebCore::HTMLMediaElement::setClosedCaptionsVisible): 
3351             New, captions internal methods.
3352         (WebCore::HTMLMediaElement::setWebkitClosedCaptionsVisible): 
3353         (WebCore::HTMLMediaElement::webkitClosedCaptionsVisible): 
3354         (WebCore::HTMLMediaElement::webkitHasClosedCaptions): 
3355             New, captions DOM API.
3356
3357         * html/HTMLMediaElement.h:
3358         * html/HTMLMediaElement.idl:
3359             Declare methods needed for captions API.
3360
3361         * platform/ThemeTypes.h:
3362             Add MediaToggleClosedCaptionsButtonPart.
3363
3364         * platform/android/LocalizedStringsAndroid.cpp:
3365         (WebCore::localizedMediaControlElementString):
3366         (WebCore::localizedMediaControlElementHelpText):
3367         (WebCore::localizedMediaTimeDescription):
3368             Add empty implmentations.
3369
3370         * platform/graphics/MediaPlayer.cpp:
3371         (WebCore::NullMediaPlayerPrivate::hasClosedCaptions):
3372         (WebCore::NullMediaPlayerPrivate::setClosedCaptionsVisible):
3373             New, empty implementations of media engine closed caption functions.
3374         (WebCore::MediaPlayer::hasClosedCaptions):
3375         (WebCore::MediaPlayer::setClosedCaptionsVisible):
3376             New, call media engine closed caption functions.
3377
3378         * platform/graphics/MediaPlayer.h:
3379         * platform/graphics/MediaPlayerPrivate.h:
3380         (WebCore::MediaPlayerPrivateInterface::hasClosedCaptions):
3381         (WebCore::MediaPlayerPrivateInterface::setClosedCaptionsVisible):
3382             Declare new media engine methods.
3383
3384         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
3385         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
3386         (WebCore::MediaPlayerPrivate::hasClosedCaptions):
3387         (WebCore::MediaPlayerPrivate::setClosedCaptionsVisible):
3388             New, QTKit implementation of closed caption methods.
3389
3390         * platform/gtk/LocalizedStringsGtk.cpp:
3391         (WebCore::localizedMediaControlElementString):
3392         (WebCore::localizedMediaControlElementHelpText):
3393             Add help text for ShowClosedCaptionsButton and HideClosedCaptionsButton.
3394
3395         * platform/mac/WebCoreSystemInterface.h:
3396         * platform/mac/WebCoreSystemInterface.mm:
3397             Declare and initialize wkQTMovieHasClosedCaptions and wkQTMovieSetShowClosedCaptions.
3398
3399         * rendering/MediaControlElements.cpp:
3400         (WebCore::MediaControlInputElement::MediaControlInputElement):
3401             Deal with MEDIA_CONTROLS_TOGGLE_CLOSED_CAPTIONS_BUTTON.
3402         (WebCore::MediaControlToggleClosedCaptionsButtonElement::MediaControlToggleClosedCaptionsButtonElement):
3403         (WebCore::MediaControlToggleClosedCaptionsButtonElement::defaultEventHandler):
3404         (WebCore::MediaControlToggleClosedCaptionsButtonElement::updateDisplayType):
3405             New, implement the closed caption toggle button,
3406
3407         * rendering/MediaControlElements.h:
3408             Define MediaShowClosedCaptionsButton and MediaHideClosedCaptionsButton,
3409             declare MediaControlToggleClosedCaptionsButtonElement.
3410
3411         * rendering/RenderMedia.cpp:
3412         (WebCore::RenderMedia::styleDidChange):
3413         (WebCore::RenderMedia::createToggleClosedCaptionsButton):
3414         (WebCore::RenderMedia::createStatusDisplay):
3415         (WebCore::RenderMedia::updateControls):
3416         (WebCore::RenderMedia::forwardEvent):
3417         * rendering/RenderMedia.h:
3418             Deal with m_toggleClosedCaptionsButton.
3419
3420         * rendering/RenderTheme.cpp:
3421         (WebCore::RenderTheme::paint):
3422             Deal with MediaToggleClosedCaptionsButtonPart.
3423
3424         * rendering/RenderTheme.h:
3425         * rendering/RenderThemeMac.h:
3426             Declare paintMediaToggleClosedCaptionsButton.
3427
3428         * rendering/RenderThemeMac.mm:
3429         (WebCore::RenderThemeMac::paintMediaToggleClosedCaptionsButton):
3430             New.
3431         (WebCore::RenderThemeMac::shouldRenderMediaControlPart):
3432             Don't render captions toggle button unless we are using the new theme, the
3433             movie has captions, and the movie is in a <video> element since we currently
3434             rely on QTKit to render the captions.
3435
3436         * rendering/style/RenderStyleConstants.h:
3437             Define MEDIA_CONTROLS_TOGGLE_CLOSED_CAPTIONS_BUTTON.
3438
3439 2009-11-19  Kevin Ollivier  <kevino@theolliviers.com>
3440
3441         wx build fix. Add missing header.
3442
3443         * platform/wx/LocalizedStringsWx.cpp:
3444
3445 2009-11-19  Alexey Proskuryakov  <ap@apple.com>
3446
3447         Reviewed by Darin Adler.
3448
3449         https://bugs.webkit.org/show_bug.cgi?id=31634
3450         Ignore realm for proxy protection spaces
3451
3452         Only affects WebSocket proxy authentication, cannot be tested in DRT.
3453
3454         * platform/network/ProtectionSpace.cpp:
3455         (WebCore::operator==):
3456         * platform/network/ProtectionSpaceHash.h:
3457         (WebCore::ProtectionSpaceHash::hash):
3458
3459 2009-11-19  Olivier Goffart  <ogoffart@trolltech.com>
3460
3461         Reviewed by Simon Hausmann.
3462
3463         [Qt] Normalize signal and slot signatures.
3464
3465         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
3466         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
3467
3468 2009-11-19  Alexander Pavlov  <apavlov@chromium.org>
3469
3470         Reviewed by Pavel Feldman.
3471
3472         Store cookie domains in the WebInspector object
3473
3474         The cookie domains have been moved from StoragePanel into WebInspector.
3475         Also, the document URLs are now passed inside the WebInspector.addResource()
3476         payload rather than pushed directly from InspectorController.
3477         https://bugs.webkit.org/show_bug.cgi?id=31627
3478
3479         * inspector/InspectorController.cpp:
3480         (WebCore::InspectorController::populateScriptObjects):
3481         (WebCore::InspectorController::didFinishLoading):
3482         * inspector/InspectorFrontend.cpp:
3483         * inspector/InspectorFrontend.h:
3484         * inspector/InspectorResource.cpp:
3485         (WebCore::InspectorResource::createScriptObject):
3486         (WebCore::InspectorResource::updateScriptObject):
3487         * inspector/front-end/StoragePanel.js:
3488         (WebInspector.StoragePanel.prototype.reset):
3489         (WebInspector.StoragePanel.prototype.addCookieDomain):
3490         * inspector/front-end/inspector.js:
3491         (WebInspector.addResource):
3492         (WebInspector.addCookieDomain):
3493         (WebInspector.reset):
3494
3495 2009-11-19  Zoltan Horvath  <zoltan@webkit.org>
3496
3497         Reviewed by Darin Adler.
3498
3499         Allow custom memory allocation control for the other part of platform directory in WebCore
3500         https://bugs.webkit.org/show_bug.cgi?id=31585
3501
3502         Inherits the following classes from FastAllocBase because these are
3503         instantiated by 'new':
3504
3505         class RegularExpression    - instantiated at: WebCore/page/Frame.cpp:415
3506         class TransformationMatrix - instantiated at: WebCore/rendering/TransformState.cpp:62
3507         class Path                 - instantiated at: WebCore/html/HTMLAreaElement.cpp:73
3508         class FontPlatformData     - instantiated at: WebCore/platform/graphics/qt/FontCacheQt.cpp:188
3509
3510         Inherits the following classes from Noncopyable because these are
3511         instantiated by 'new' and no need to be copyable:
3512
3513         class Cursors                         - instantiated at: WebCore/platform/qt/CursorQt.cpp:146
3514         class NetworkStateNotifier            - instantiated at: WebCore/platform/network/NetworkStateNotifier.cpp:37
3515         struct CrossThreadResourceRequestData - instantiated at: WebCore/platform/network/ResourceRequestBase.cpp:71
3516
3517         class ImageDecoder - its child class is instantiated at: WebCore/platform/graphics/qt/ImageDecoderQt.cpp:46
3518         class MediaPlayerPrivateInterface - its child class is instantiated at: WebCore/platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:119
3519
3520         * platform/graphics/MediaPlayerPrivate.h:
3521         * platform/graphics/Path.h:
3522         * platform/graphics/qt/FontPlatformData.h:
3523         * platform/graphics/transforms/TransformationMatrix.h:
3524         * platform/image-decoders/ImageDecoder.h:
3525         * platform/network/NetworkStateNotifier.h:
3526         * platform/network/ResourceRequestBase.h:
3527         * platform/qt/CursorQt.cpp:
3528         * platform/text/RegularExpression.h:
3529
3530 2009-11-18  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
3531
3532         Unreviewed.
3533
3534         [Qt] Build fix for QtWebKit after r51172.
3535
3536         * platform/qt/Localizations.cpp:
3537         (WebCore::validationMessageValueMissingText):
3538         (WebCore::validationMessageTypeMismatchText):
3539         (WebCore::validationMessagePatternMismatchText):
3540         (WebCore::validationMessageTooLongText):
3541         (WebCore::validationMessageRangeUnderflowText):
3542         (WebCore::validationMessageRangeOverflowText):
3543         (WebCore::validationMessageStepMismatchText):
3544
3545 2009-11-18  Dan Bernstein  <mitz@apple.com>
3546
3547         Reviewed by Simon Fraser.
3548
3549         Fixed <rdar://problem/7398987> Assertion failure in
3550         RenderLayer::updateClipRects when a plug-in’s enclosing layer is
3551         enclosed by a transformed layer
3552
3553         Tests: fast/layers/clip-rects-transformed-2.html
3554                fast/layers/clip-rects-transformed.html
3555
3556         * rendering/RenderLayer.cpp:
3557         (WebCore::RenderLayer::clippingRoot): Added. Finds the nearest ancestor
3558         that is either transformed or composited. During painting and hit
3559         testing, when a transformed or composited layer is hit, it becomes the
3560         new root layer, which ultimately gets passed to calculateRects().
3561         (WebCore::RenderLayer::childrenClipRect): Pass the clipping root as the
3562         root layer to calculateRects(), and return the bounding box of the
3563         transformed rectangle.
3564         (WebCore::RenderLayer::selfClipRect): Ditto.
3565         * rendering/RenderLayer.h:
3566
3567 2009-11-18  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
3568
3569         Reviewed by Kenneth Rohde Christiansen.
3570
3571         [Qt] Remove support for Qt v4.3 or older versions
3572         https://bugs.webkit.org/show_bug.cgi?id=29469
3573
3574         No new tests as there is no change if compiled with 
3575         Qt v4.4 or later version.
3576
3577         * WebCore.pro:
3578         * dom/XMLTokenizerQt.cpp:
3579         (WebCore::EntityResolver::resolveUndeclaredEntity):
3580         (WebCore::XMLTokenizer::XMLTokenizer):
3581         (WebCore::XMLTokenizer::~XMLTokenizer):
3582         (WebCore::XMLTokenizer::doWrite):
3583         (WebCore::XMLTokenizer::startDocument):
3584         (WebCore::XMLTokenizer::parseDtd):
3585         * platform/graphics/qt/FontQt.cpp:
3586         * platform/graphics/qt/FontQt43.cpp: Removed.
3587         * platform/graphics/qt/ImageQt.cpp:
3588         * platform/network/ResourceHandleInternal.h:
3589         * platform/network/qt/QNetworkReplyHandler.cpp:
3590         * platform/network/qt/QNetworkReplyHandler.h:
3591         * platform/network/qt/ResourceHandleQt.cpp:
3592         (WebCore::ResourceHandle::start):
3593         (WebCore::ResourceHandle::cancel):
3594         (WebCore::ResourceHandle::loadResourceSynchronously):
3595         (WebCore::ResourceHandle::setDefersLoading):
3596         * platform/network/qt/ResourceRequest.h:
3597         * platform/network/qt/ResourceRequestQt.cpp:
3598         * platform/qt/ClipboardQt.cpp:
3599         (WebCore::ClipboardQt::clearData):
3600         * platform/qt/CookieJarQt.cpp:
3601         (WebCore::cookieJar):
3602         (WebCore::setCookies):
3603         (WebCore::cookies):
3604         (WebCore::cookiesEnabled):
3605         * platform/qt/PlatformKeyboardEventQt.cpp:
3606         (WebCore::keyIdentifierForQtKeyCode):
3607         (WebCore::windowsKeyCodeForKeyEvent):
3608         * platform/text/qt/TextBoundaries.cpp:
3609         * platform/text/qt/TextBreakIteratorQt.cpp:
3610         * plugins/qt/PluginDataQt.cpp:
3611         (WebCore::PluginData::initPlugins):
3612
3613 2009-11-18  Michelangelo De Simone  <micdesim@gmail.com>
3614
3615         Reviewed by Darin Adler.
3616
3617         Fix for <https://bugs.webkit.org/show_bug.cgi?id=27959>.
3618         Support for validationMessage attribute, as per HTML5 specs.
3619
3620         Test: fast/forms/validationMessage.html
3621
3622         * html/HTMLButtonElement.idl: validationMessage attribute
3623         * html/HTMLFieldSetElement.idl: validationMessage attribute
3624         * html/HTMLFormControlElement.cpp:
3625         * html/HTMLFormControlElement.h:
3626         * html/HTMLInputElement.idl: validationMessage attribute
3627         * html/HTMLSelectElement.idl: validationMessage attribute
3628         * html/HTMLTextAreaElement.idl: validationMessage attribute
3629         * html/ValidityState.cpp: new method to retrieve pertinent localized text
3630         * html/ValidityState.h:
3631         * page/mac/WebCoreViewFactory.h:
3632         * platform/LocalizedStrings.h:
3633         * platform/android/LocalizedStringsAndroid.cpp:
3634         * platform/gtk/LocalizedStringsGtk.cpp:
3635         * platform/haiku/LocalizedStringsHaiku.cpp:
3636         * platform/mac/LocalizedStringsMac.mm:
3637         * platform/wx/LocalizedStringsWx.cpp:
3638
3639 2009-11-18  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
3640
3641         Unreviewed.
3642
3643         Fix a typo. Remove the trailing semicolon
3644         from an include directive after r51137.
3645
3646         No new tests as there is no functional change.
3647
3648         * platform/qt/QWebPageClient.h:
3649
3650 2009-11-18  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
3651
3652         Unreviewed.
3653
3654         [Qt] Build fix for QtWebKit after r51159.
3655
3656         Include float.h for DBL_MANT_DIG. Not sure why this
3657         is not a problem for other ports.
3658
3659         * html/HTMLInputElement.cpp:
3660
3661 2009-11-19  Roland Steiner  <rolandsteiner@chromium.org>
3662
3663         Reviewed by Darin Adler.
3664
3665         Bug 31574 -  Crashing bug when removing <ruby> element
3666         (https://bugs.webkit.org/show_bug.cgi?id=31574)
3667
3668         Cause of the bug:
3669         1.) RenderBlock::destroy() of the RenderRubyRun called destroyLeftoverChildren()
3670         2.) that called destroy() of the RenderRubyBase(), which in RenderObject::destroy() calls remove()
3671         3.) remove() is being redirected as parent()->removeChild() in RenderObject.h
3672         4.) this triggers the special handling of child removal in RenderRubyRun that
3673             causes it to destroy itself
3674         5.) On returning from all this the renderer crashes when accessing a member
3675             or virtual function on this now illegal object.
3676
3677         I therefore added a flag that tracks if the ruby run is being destroyed.
3678         If so, avoid doing the special handling in removeChild that caused this.
3679         It's not the most elegant solution, but the easiest to implement without
3680         touching unrelated code. Also, it's self-documenting.
3681
3682         Test: fast/ruby/ruby-remove.html
3683
3684         * rendering/RenderRubyRun.cpp:
3685         (WebCore::RenderRubyRun::RenderRubyRun):
3686         (WebCore::RenderRubyRun::destroy):
3687         (WebCore::RenderRubyRun::removeChild):
3688         * rendering/RenderRubyRun.h:
3689
3690 2009-11-18  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
3691
3692         Reviewed by Kenneth Rohde Christiansen.
3693
3694         [Qt] Remove WTF_USE_JAVASCRIPTCORE_BINDINGS as it is no longer used
3695         https://bugs.webkit.org/show_bug.cgi?id=31643
3696
3697         No new tests as there is no functional change.
3698
3699         * WebCore.pro:
3700
3701 2009-11-18  Yong Li  <yong.li@torchmobile.com>
3702
3703         Reviewed by Eric Seidel.
3704
3705         Implement TextBoundaries for WINCE port.
3706         https://bugs.webkit.org/show_bug.cgi?id=27371
3707
3708         * platform/text/wince/TextBoundariesWince.cpp: Added.
3709
3710 2009-11-18  Yong Li  <yong.li@torchmobile.com>
3711
3712         Reviewed by Eric Seidel.
3713
3714         Implement TextBreakIterator for WINCE port.
3715         https://bugs.webkit.org/show_bug.cgi?id=27371
3716
3717         * platform/text/wince/TextBreakIteratorWince.cpp: Added.
3718
3719 2009-11-18  Kent Tamura  <tkent@chromium.org>
3720
3721         Reviewed by Darin Adler.
3722
3723         Add support for ValidityState.typeMismatch for the following INPUT types:
3724           date datetime datetime-local month time week
3725         https://bugs.webkit.org/show_bug.cgi?id=31342
3726
3727         Tests: fast/forms/ValidityState-typeMismatch-date.html
3728                fast/forms/ValidityState-typeMismatch-datetime.html
3729                fast/forms/ValidityState-typeMismatch-datetimelocal.html
3730                fast/forms/ValidityState-typeMismatch-month.html
3731                fast/forms/ValidityState-typeMismatch-time.html
3732                fast/forms/ValidityState-typeMismatch-week.html
3733
3734         * html/HTMLInputElement.cpp:
3735         (WebCore::HTMLInputElement::formStringToISODateTime): Check the type
3736           validity of the specified type and string using the ISODateTime class.
3737         * html/HTMLInputElement.h:
3738         * html/ValidityState.cpp:
3739         (WebCore::ValidityState::typeMismatch): Check the type validity
3740           for date, datetime, datetime-local, month, time and week with
3741           HTMLInputElemtn::formStringToISODateTime()
3742
3743 2009-11-18  Maciej Stachowiak  <mjs@apple.com>
3744
3745         Reviewed by Oliver Hunt.
3746
3747         Fix REGRESSION (r47022): Performance of DocumentFragment.appendChild is 1000x slower sometimes
3748         https://bugs.webkit.org/show_bug.cgi?id=31237
3749         
3750         Also speeds up Dromaeo DOM Core tests by 1.31x.
3751
3752         * bindings/js/JSNodeCustom.cpp:
3753         (WebCore::JSNode::markChildren): Change marking algorithm to avoid O(N^2) behavior. The subtree
3754         mark bit was no longer effective; instead I changed things so only a node that has no ancestors
3755         with wrappers would do marking; there should be only one in the typical case (the root of the
3756         detached subtree).
3757         * dom/Node.cpp:
3758         (WebCore::Node::Node): Remove now useless m_inSubtreeMark bit and related functions.
3759         * dom/Node.h: ditto
3760
3761 2009-11-18  Darin Adler  <darin@apple.com>
3762
3763         Reviewed by Sam Weinig.
3764
3765         Get rid of the redundant strokeType and fillType data members on
3766         a GraphicsContext as well as the FillOrStrokeType enum. Use
3767         null pointers instead.
3768
3769         * platform/graphics/GraphicsContext.cpp:
3770         (WebCore::GraphicsContext::setStrokeColor): Null out the pattern
3771         and gradient.
3772         (WebCore::GraphicsContext::setFillColor): Ditto.
3773         (WebCore::GraphicsContext::setStrokePattern): Null out the graident.
3774         (WebCore::GraphicsContext::setFillPattern): Ditto.
3775         (WebCore::GraphicsContext::setStrokeGradient): Null out the pattern.
3776         (WebCore::GraphicsContext::setFillGradient): Ditto.
3777
3778         * platform/graphics/GraphicsContextPrivate.h: Remove all that stuff.
3779
3780         * platform/graphics/cairo/GraphicsContextCairo.cpp:
3781         (WebCore::setPlatformFill): Use null checks on fillPattern and
3782         fillGraident instead of a switch statement.
3783         (WebCore::setPlatformStroke): Ditto.
3784
3785         * platform/graphics/cg/GraphicsContextCG.cpp:
3786         (WebCore::GraphicsContext::applyStrokePattern): Removed unneeded get.
3787         (WebCore::GraphicsContext::applyFillPattern): Ditto.
3788         (WebCore::calculateDrawingMode): Use fillPattern and strokePattern
3789         to see if there is a pattern instead of fillType and strokeType.
3790         (WebCore::GraphicsContext::drawPath): Use fillGradient, strokeGradient,
3791         fillPattern, and strokePattern instead of fillType and strokeType.
3792         (WebCore::GraphicsContext::fillPath): Added FIXME about color space that
3793         is used in the pattern and gradient case probably erroneously. Moved
3794         gradient code inside an if statement. Streamlined pattern code and
3795         use an if statement. No switch any more.
3796         (WebCore::GraphicsContext::strokePath): Ditto.
3797         (WebCore::GraphicsContext::fillRect): Ditto.
3798         (WebCore::GraphicsContext::strokeRect): Ditto.
3799
3800         * platform/graphics/qt/GraphicsContextQt.cpp:
3801         (WebCore::GraphicsContext::fillPath): Use null checks on fillPattern and
3802         fillGraident instead of a switch statement.
3803         (WebCore::GraphicsContext::strokePath): Ditto.
3804         (WebCore::GraphicsContext::fillRect): Ditto.
3805
3806         * platform/graphics/wince/GraphicsContextWince.cpp:
3807         (WebCore::GraphicsContext::fillPath): Removed unneeded check of fillType.
3808         (WebCore::GraphicsContext::fillRect): Ditto.
3809
3810 2009-11-18  Kent Tamura  <tkent@chromium.org>
3811
3812         Reviewed by Darin Adler.
3813
3814         Support for step attribute and ValidityStae.stepMismatch for
3815         type=number and range.  stepMismatch will be false if the
3816         difference between the current value and a multiple of the step
3817         value is very small.
3818
3819         Change the behavior of RenderSlider so that it always has a value
3820         rounded to the step attribute value.
3821
3822         https://bugs.webkit.org/show_bug.cgi?id=31331
3823
3824         Tests: fast/forms/ValidityState-stepMismatch-number.html
3825                fast/forms/ValidityState-stepMismatch-range.html
3826                fast/forms/ValidityState-stepMismatch-unsupported.html
3827                fast/forms/input-step.html
3828
3829         * html/HTMLAttributeNames.in: Add "step".
3830         * html/HTMLInputElement.cpp:
3831         (WebCore::HTMLInputElement::stepMismatch):
3832         (WebCore::HTMLInputElement::getStepParameters):
3833         (WebCore::HTMLInputElement::getAllowedValueStep):
3834         * html/HTMLInputElement.h:
3835         * html/HTMLInputElement.idl: Add "step".
3836         * html/ValidityState.cpp:
3837         (WebCore::ValidityState::stepMismatch): Forward to HTMLInputElement::stepMismatch().
3838         * html/ValidityState.h:
3839         * rendering/RenderSlider.cpp:
3840         (WebCore::SliderRange::SliderRange):
3841         (WebCore::SliderRange::clampValue):
3842
3843 2009-11-18  Dmitry Titov  <dimich@chromium.org>
3844
3845         Reviewed by Darin Adler.
3846
3847         Need to ASSERT(isMainThread()) in ThreadShared methods.
3848         https://bugs.webkit.org/show_bug.cgi?id=31637
3849
3850         Added ASSERT(IsMainThread()) to all following methods:
3851         * platform/TreeShared.h:
3852         (WebCore::TreeShared::TreeShared):
3853         (WebCore::TreeShared::~TreeShared):
3854         (WebCore::TreeShared::ref):
3855         (WebCore::TreeShared::deref):
3856         (WebCore::TreeShared::setParent):
3857         (WebCore::TreeShared::parent):
3858
3859 2009-11-18  Girish Ramakrishnan  <girish@forwardbias.in>
3860
3861         Reviewed by Eric Seidel.
3862
3863         Add plugin visibility manual test
3864
3865         https://bugs.webkit.org/show_bug.cgi?id=31542
3866
3867         * manual-tests/plugins/windowed.html:
3868         * manual-tests/plugins/windowless.html:
3869
3870 2009-11-18  Patrick Mueller  <Patrick_Mueller@us.ibm.com>
3871
3872         Reviewed by Pavel Feldman.
3873
3874         Web Inspector - remember last script displayed in Scripts panel
3875         https://bugs.webkit.org/show_bug.cgi?id=27552
3876
3877         Manual test added
3878         
3879         * inspector/front-end/ScriptsPanel.js:
3880         (WebInspector.ScriptsPanel.prototype.showScript):
3881         (WebInspector.ScriptsPanel.prototype.showResource):
3882         (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
3883         (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu):
3884         (WebInspector.ScriptsPanel.prototype._callFrameSelected):
3885         (WebInspector.ScriptsPanel.prototype._goBack):
3886         (WebInspector.ScriptsPanel.prototype._goForward):
3887         * manual-tests/inspector/remember-last-script.html: Added.
3888
3889 2009-11-18  Shinichiro Hamaji  <hamaji@chromium.org>
3890
3891         Reviewed by Dimitri Glazkov.
3892
3893         Win chromium is slow to draw transparent texts
3894         https://bugs.webkit.org/show_bug.cgi?id=31258
3895
3896         Create bounded transparency layers instead of just clipping.
3897
3898         No new tests because this is just a performance improvement.
3899
3900         * platform/graphics/chromium/FontChromiumWin.cpp:
3901         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::initializeForGDI):
3902
3903 2009-11-18  Shu Chang  <Chang.Shu@nokia.com>
3904
3905         Reviewed by Eric Seidel.
3906
3907         [Qt] Add support for displaying deleteButton.
3908         https://bugs.webkit.org/show_bug.cgi?id=31560
3909
3910         Test: LayoutTests/editing/deleting/5408255.html
3911
3912         * WebCore.qrc:
3913         * platform/graphics/qt/ImageQt.cpp:
3914         (loadResourcePixmap):
3915
3916 2009-11-18  Mikhail Naganov  <mnaganov@chromium.org>
3917
3918         Reviewed by Eric Seidel.
3919
3920         Fix Qt build without JavaScript debugger.
3921
3922         https://bugs.webkit.org/show_bug.cgi?id=31575
3923
3924         * page/Console.idl:
3925
3926 2009-11-18  Daniel Bates  <dbates@webkit.org>
3927
3928         Reviewed by Dave Hyatt.
3929
3930         https://bugs.webkit.org/show_bug.cgi?id=24971
3931         And
3932         <rdar://problem/7138265>
3933
3934         Fixes an issue where setting the height of a table row programmatically
3935         (via JavaScript) causes the table to be improperly rendered because the
3936         height of each row in the table is not recalculated with respect to the
3937         CSS height property.
3938
3939         In particular, programmatically setting the height of some table row causes
3940         the rows of that table to be rendered with a height equal to the minimum
3941         height required by the cells in that row, regardless of any specified cell
3942         heights. Instead, when RenderTableSection::recalcCells is called, the height
3943         of each row should be set to the CSS height property just as we do in
3944         RenderTableSection::addChild.
3945
3946         Test: fast/table/row-height-recalc2.html
3947
3948         * rendering/RenderTableSection.cpp:
3949         (WebCore::setRowHeightToRowStyleHeightIfNotRelative): Added.
3950         (WebCore::RenderTableSection::addChild): Moved code that set row height into
3951         method WebCore::setRowHeightToRowStyleHeightIfNotRelative.
3952         (WebCore::RenderTableSection::recalcCells): Modified to call
3953         WebCore::setRowHeightToRowStyleHeightIfNotRelative.
3954
3955 2009-11-18  Zoltan Horvath  <zoltan@webkit.org>
3956
3957         Reviewed by Darin Adler.
3958
3959         Allow custom memory allocation control for the part of platform directory in WebCore
3960         https://bugs.webkit.org/show_bug.cgi?id=31473
3961
3962         Inherits the following classes from FastAllocBase because these are
3963         instantiated by 'new':
3964
3965         class  AnimationList         - instantiated at WebCore/rendering/style/StyleRareNonInheritedData.cpp:85
3966         class  Color                 - instantiated at WebCore/rendering/RenderTheme.cpp:48
3967         struct Length                - instantiated at WebCore/platform/Length.cpp:103
3968         class  PlatformKeyboardEvent - instantiated at WebCore/dom/KeyboardEvent.cpp:63
3969         class  ContextMenuItem       - instantiated at WebCore/platform/ContextMenu.cpp:70
3970         class  DeprecatedPtrList     - instantiated at WebCore/rendering/RenderBlock.cpp:2284
3971
3972         Inherits the following classes from Noncopyable because these are
3973         instantiated by 'new' and no need to be copyable:
3974
3975         class  GraphicsContextPrivate - instantiated at WebCore/platform/graphics/GraphicsContext.cpp:78
3976         class  FontCache              - instantiated at WebCore/platform/graphics/qt/FontCacheQt.cpp:43
3977         struct MediaPlayerFactory     - instantiated at WebCore/platform/graphics/MediaPlayer.cpp:163
3978         class  DeprecatedPtrListNode  - instantiated at WebCore/platform/DeprecatedPtrListImpl.cpp:53
3979
3980         * platform/ContextMenuItem.h:
3981         * platform/DeprecatedPtrList.h:
3982         * platform/DeprecatedPtrListImpl.cpp:
3983         * platform/Length.h:
3984         * platform/PlatformKeyboardEvent.h:
3985         * platform/animation/AnimationList.h:
3986         * platform/graphics/Color.h:
3987         * platform/graphics/FontCache.h:
3988         * platform/graphics/GraphicsContextPrivate.h:
3989         * platform/graphics/MediaPlayer.cpp:
3990
3991 2009-11-18  Daniel Bates  <dbates@webkit.org>
3992
3993         Reviewed by Darin Adler.
3994
3995         https://bugs.webkit.org/show_bug.cgi?id=31186
3996
3997         Renames RenderTextControl::m_edited and RenderTextControl::m_userEdited to
3998         m_wasChangedSinceLastChangeEvent and m_lastChangeWasUserEdit, respectively.
3999         These are more descriptive names so as to clear an ambiguity surrounding
4000         their usage. Also, renames associated setters and getters so that they
4001         coincide with the renamed fields.
4002
4003         No functionality was changed. So, no tests were included.
4004
4005         * bindings/objc/DOMHTML.mm:
4006         (-[DOMHTMLInputElement _isEdited]):
4007         (-[DOMHTMLTextAreaElement _isEdited]):
4008         * dom/Document.cpp:
4009         (WebCore::Document::setFocusedNode):
4010         * html/HTMLInputElement.cpp:
4011         (WebCore::HTMLInputElement::defaultEventHandler):
4012         * rendering/RenderTextControl.cpp:
4013         (WebCore::RenderTextControl::RenderTextControl):
4014         (WebCore::RenderTextControl::setInnerTextValue):
4015         (WebCore::RenderTextControl::setLastChangeWasUserEdit): Formerly named setUserEdited.
4016         (WebCore::RenderTextControl::subtreeHasChanged):
4017         * rendering/RenderTextControl.h:
4018         (WebCore::RenderTextControl::wasChangedSinceLastChangeEvent): Formerly named isEdited.
4019         (WebCore::RenderTextControl::setChangedSinceLastChangeEvent): Formerly named setEdited.
4020         (WebCore::RenderTextControl::lastChangeWasUserEdit): Formerly named setUserEdited.
4021         * rendering/RenderTextControlSingleLine.cpp:
4022         (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
4023         * wml/WMLInputElement.cpp:
4024         (WebCore::WMLInputElement::defaultEventHandler):
4025
4026 2009-11-18  Tony Chang  <tony@chromium.org>
4027
4028         Reviewed by Adam Barth.
4029
4030         Remove V8CanvasPixelArrayCustom.cpp because it is no longer used by V8.
4031         https://bugs.webkit.org/show_bug.cgi?id=31499
4032
4033         No new tests, just a build cleanup.
4034
4035         * WebCore.gypi:
4036         * bindings/v8/custom/V8CanvasPixelArrayCustom.cpp: Removed.
4037         * bindings/v8/custom/V8CustomBinding.h:
4038
4039 2009-11-18  Kevin Watters  <kevinwatters@gmail.com>
4040
4041         Reviewed by Kevin Ollivier.
4042
4043         Enable wx plugin support using the Windows implementation as a base.
4044         
4045         https://bugs.webkit.org/show_bug.cgi?id=31636
4046
4047         * platform/graphics/GraphicsContext.h:
4048         (WebCore::GraphicsContext::inTransparencyLayer):
4049         * platform/graphics/wx/GraphicsContextWx.cpp:
4050         (WebCore::GraphicsContext::getWindowsContext):
4051         (WebCore::GraphicsContext::releaseWindowsContext):
4052         * platform/wx/FileSystemWx.cpp:
4053         (WebCore::unloadModule):
4054         (WebCore::listDirectory):
4055         * plugins/PluginDatabase.cpp:
4056         * plugins/PluginView.cpp:
4057         (WebCore::PluginView::stop):
4058         (WebCore::PluginView::PluginView):
4059         * plugins/PluginView.h:
4060         * plugins/win/PluginViewWin.cpp:
4061         (windowHandleForPageClient):
4062         (WebCore::PluginView::handleMouseEvent):
4063         (WebCore::PluginView::platformStart):
4064         (WebCore::PluginView::snapshot):
4065         * wscript:
4066
4067 2009-11-18  Andrei Popescu  <andreip@google.com>
4068
4069         Reviewed by Dimitri Glazkov.
4070
4071         [Android] Add shared timer and sound utilities to platform/android
4072         https://bugs.webkit.org/show_bug.cgi?id=31584
4073
4074         No new tests required, this is platform specific code.
4075
4076         * platform/android/SharedTimerAndroid.cpp: Added.
4077         (WebCore::setSharedTimerFiredFunction):
4078         (WebCore::setSharedTimerFireTime):
4079         (WebCore::stopSharedTimer):
4080         * platform/android/SoundAndroid.cpp: Added.
4081         (WebCore::systemBeep):
4082
4083 2009-11-18  Mikhail Naganov  <mnaganov@chromium.org>
4084
4085         Reviewed by Timothy Hatcher.
4086
4087         Fix profile tree nodes loss after focus / restore actions.
4088
4089         Focusing on a node is currently implemented via nodes reattaching
4090         with some caching involved. It seems that not all code was updated
4091         to handle this scenario correctly.
4092
4093         https://bugs.webkit.org/show_bug.cgi?id=31553
4094
4095         * inspector/front-end/BottomUpProfileDataGridTree.js:
4096         (WebInspector.BottomUpProfileDataGridNode):
4097         (WebInspector.BottomUpProfileDataGridNode.prototype._restore):
4098         (WebInspector.BottomUpProfileDataGridNode.prototype._sharedPopulate):
4099         (WebInspector.BottomUpProfileDataGridNode.prototype._willHaveChildren):
4100         * inspector/front-end/DataGrid.js:
4101         (WebInspector.DataGrid.prototype.insertChild):
4102         (WebInspector.DataGridNode.prototype._detach):
4103         (WebInspector.DataGridNode.prototype.savePosition):
4104         (WebInspector.DataGridNode.prototype.restorePosition):
4105         * inspector/front-end/TopDownProfileDataGridTree.js:
4106         (WebInspector.TopDownProfileDataGridTree.prototype.focus):
4107         (WebInspector.TopDownProfileDataGridTree.prototype.restore):
4108
4109 2009-11-18  Carol Szabo  <carol.szabo@nokia.com>
4110
4111         Reviewed by Kenneth Rohde Christiansen.
4112
4113         [Qt] QWebPageClient.h needs in some cases QCursor, but it does not
4114         include it 
4115         https://bugs.webkit.org/show_bug.cgi?id=31527
4116
4117         No new tests as this is just a coding style fix that affects the 
4118         build of some not yet submitted patches (i.e. for bug 30173).
4119
4120         * platform/qt/QWebPageClient.h:
4121
4122 2009-11-18  Nicolas Roard   <nicolas@roard.com>
4123
4124         Reviewed by Dimitri Glazkov.
4125
4126         InspectorTimelineAgent.h should be guarded by ENABLE(INSPECTOR)
4127         https://bugs.webkit.org/show_bug.cgi?id=31504
4128
4129         * inspector/InspectorTimelineAgent.h:Added the guard.
4130
4131 2009-11-18  Jens Alfke  <snej@chromium.org>
4132
4133         Build fix to my previous checkin, for Windows Chromium
4134
4135         * svg/SVGAnimatedProperty.h:
4136         (WebCore::PropertySynchronizer::synchronize): Fix implicit-conversion error on AtomicString.
4137
4138 2009-11-18  Joseph Pecoraro  <joepeck@webkit.org>
4139
4140         Reviewed by Pavel Feldman.
4141
4142         Web Inspector: Directly Access <head> Instead of Searching for It
4143         https://bugs.webkit.org/show_bug.cgi?id=31641
4144         
4145         Changed old access of the head element (document.getElementsByTagName)
4146         to just use the document.head accessor.
4147
4148         * inspector/front-end/FontView.js:
4149         (WebInspector.FontView):
4150         * inspector/front-end/InjectedScript.js:
4151         (InjectedScript.addStyleSelector):
4152         * inspector/front-end/SourceFrame.js:
4153         (WebInspector.SourceFrame.prototype._loaded):
4154         * inspector/front-end/inspector.js:
4155         (windowLoaded):
4156
4157 2009-11-18  Sam Weinig  <sam@webkit.org>
4158
4159         Reviewed by Anders Carlsson.
4160
4161         Fix two Geolocation assertions.
4162
4163         * page/Chrome.cpp:
4164         (WebCore::Chrome::requestGeolocationPermissionForFrame): No need to use PageGroupLoadDeferrer since this
4165         is not called from JS. 
4166         * page/Geolocation.cpp:
4167         (WebCore::Geolocation::Watchers::set): The PassRefPtr was getting nulled out, so we need to put it in
4168         a RefPtr first.
4169
4170 2009-11-18  Alexey Proskuryakov  <ap@apple.com>
4171
4172         Case sensitive file system build fix.
4173
4174         * platform/network/Credential.h: It's not WTF, just wtf.
4175
4176 2009-11-18  Aaron Golden  <agolden@apple.com>
4177
4178         Reviewed by Alexey Proskuryakov.
4179
4180         Add support for certificates to WebCore::Credential so we can convert between NSURLCredential
4181         objects and WebCore::Credential objects without losing certificate information.
4182
4183         * platform/network/Credential.cpp:
4184         (WebCore::Credential::Credential):  Adding a constructor that takes an identity argument and a certificate chain argument
4185         (WebCore::Credential::isEmpty):  Modifying isEmpty to support certificate based credentials (which don't have a username or password)
4186         (WebCore::Credential::identity): Accessor for the m_identity property
4187         (WebCore::Credential::certificates): Accessor for the m_certificates property
4188         (WebCore::Credential::type):  Accessor for the m_type property
4189         (WebCore::operator==):  Modifying == to compare the identity and certificate chains of certificate based credentials.
4190         * platform/network/Credential.h:  Adding new fields to WebCore::Credential to support certificate based credentials.
4191         * platform/network/mac/AuthenticationMac.mm:
4192         (WebCore::mac):  Modifying the mac() conversion method to correctly convert certificate based WebCore::Credential objects.
4193         (WebCore::core):  Modifying the core() conversion method to correctly convert certificate based NSURLCredential objects.
4194
4195 2009-11-18  Dmitry Titov  <dimich@chromium.org>
4196
4197         Reviewed by Eric Seidel.
4198
4199         Reverting r50919 that has introduced a non-thread-safe refcounting in ScriptExecutionContext::postTaskToMainThread.
4200         https://bugs.webkit.org/show_bug.cgi?id=31615
4201
4202         * dom/Document.cpp:
4203         (WebCore::ScriptExecutionContextTaskTimer::ScriptExecutionContextTaskTimer):
4204         (WebCore::ScriptExecutionContextTaskTimer::fired):
4205         (WebCore::PerformTaskContext::PerformTaskContext):
4206         (WebCore::performTask):
4207         (WebCore::Document::postTask):
4208         * dom/ScriptExecutionContext.cpp:
4209         * dom/ScriptExecutionContext.h: