Get rid of the unused function nameForCursorType()
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-12-01  Benjamin Poulain  <bpoulain@apple.com>
2
3         Get rid of the unused function nameForCursorType()
4         https://bugs.webkit.org/show_bug.cgi?id=73529
5
6         Reviewed by Joseph Pecoraro.
7
8         The function nameForCursorType was introduced in r63339 and has not been used anywhere
9         since that commit.
10
11         * WebCore.exp.in:
12         * platform/Cursor.cpp:
13         * platform/Cursor.h:
14
15 2011-12-01  Andreas Kling  <kling@webkit.org>
16
17         CSSMutableStyleDeclaration: Unnecessary double hash lookup in construction.
18         <http://webkit.org/b/73564>
19
20         Reviewed by Antti Koivisto.
21
22         Use HashMap::find() instead of contains() followed by get() on
23         successful lookup.
24
25         * css/CSSMutableStyleDeclaration.cpp:
26         (WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration):
27
28 2011-11-30  Benjamin Poulain  <benjamin@webkit.org>
29
30         URLs are encoded in UTF-8, then decoded as if they are Latin1
31         https://bugs.webkit.org/show_bug.cgi?id=71758
32
33         Reviewed by Darin Adler.
34
35         Previously, invalid URLs could have a string emanating from a
36         partial parsing of the input. The creation of the string was done
37         through the Latin1 codec regardless of the encoding of the char* url.
38
39         This caused two types of issues, URLs were evaluated as half-parsed,
40         and the coding and decoding of the string was not consistent.
41
42         This patch changes KURL::parse() to fallback on the original string
43         whenever the parsing of the URL fails.
44
45         Test: fast/url/invalid-urls-utf8.html
46
47         * platform/KURL.cpp:
48         (WebCore::KURL::KURL):
49         (WebCore::KURL::init):
50         (WebCore::KURL::parse):
51         Previously, originalString was only used as an optimization to avoid
52         the allocation of a string. Since this optimization depends on the
53         comparison of the incoming string and the encoded buffer.
54         This patches generalizes originalString to always be the original string
55         being parsed by KURL. The optimization is kept by comparing that string
56         and the final parsed result.
57         * platform/KURL.h:
58         (WebCore::KURL::parse):
59         * platform/cf/KURLCFNet.cpp:
60         (WebCore::KURL::KURL):
61         * platform/mac/KURLMac.mm:
62         (WebCore::KURL::KURL):
63
64 2011-12-01  Wei Charles  <charles.wei@torchmobile.com.cn>
65
66         [Blackberry] Upstream BlackBerry porting of plugin framework -- part 2
67         https://bugs.webkit.org/show_bug.cgi?id=73513
68
69         Reviewed by Antonio Gomes.
70
71         No new tests for now.
72
73         * plugins/blackberry/NPCallbacksBlackBerry.cpp: Added.
74         * plugins/blackberry/NPCallbacksBlackBerry.h: Added.
75         * plugins/blackberry/PluginViewPrivateBlackBerry.cpp: Added.
76         * plugins/blackberry/PluginViewPrivateBlackBerry.h: Added.
77
78 2011-12-01  Andreas Kling  <kling@webkit.org>
79
80         JSC/CSSOM: root(CSSElementStyleDeclaration) should never need to follow the element.
81         <http://webkit.org/b/73561>
82
83         Reviewed by Antti Koivisto.
84
85         A CSSElementStyleDeclaration should always either have a null element pointer,
86         or return a valid parentStyleSheet(), since having an element pointer implies
87         having an associated element sheet.
88
89         In light of this, replace the opaque-root-from-element path for style declarations
90         by an assertion.
91
92         * bindings/js/JSDOMBinding.h:
93         (WebCore::root):
94
95 2011-12-01  Patrick Gansterer  <paroga@webkit.org>
96
97         [CMake] Make the feature defines for DOM names explicit
98         https://bugs.webkit.org/show_bug.cgi?id=72812
99
100         Reviewed by Daniel Bates.
101
102         * CMakeLists.txt:
103
104 2011-11-30  Dmitry Lomov  <dslomov@google.com>
105
106         https://bugs.webkit.org/show_bug.cgi?id=73503
107         [Chromium][V8] Implement ArrayBuffer transfer in chromium.
108         Portions of this patch come from Luke Zarko.
109
110         Reviewed by David Levin.
111
112         Test: fast/canvas/webgl/arraybuffer-transfer-of-control.html
113
114         * bindings/v8/SerializedScriptValue.cpp:
115         (WebCore::V8ObjectMap::Writer::writeTransferredArrayBuffer):
116         (WebCore::V8ObjectMap::Serializer::Serializer):
117         (WebCore::V8ObjectMap::Serializer::writeAndGreyArrayBufferView):
118         (WebCore::V8ObjectMap::Serializer::writeArrayBuffer):
119         (WebCore::V8ObjectMap::Serializer::writeTransferredArrayBuffer):
120         (WebCore::V8ObjectMap::Serializer::doSerialize):
121         (WebCore::V8ObjectMap::Reader::read):
122         (WebCore::V8ObjectMap::Reader::readArrayBufferView):
123         (WebCore::V8ObjectMap::Deserializer::Deserializer):
124         (WebCore::V8ObjectMap::Deserializer::tryGetTransferredArrayBuffer):
125         (WebCore::SerializedScriptValue::create):
126         (WebCore::neuterBinding):
127         (WebCore::SerializedScriptValue::transferArrayBuffers):
128         (WebCore::SerializedScriptValue::SerializedScriptValue):
129         (WebCore::SerializedScriptValue::deserialize):
130         * bindings/v8/SerializedScriptValue.h:
131
132 2011-12-01  Roland Steiner  <rolandsteiner@chromium.org>
133
134         Shadow ID pseudo-element selectors serialize incorrectly
135         https://bugs.webkit.org/show_bug.cgi?id=73542
136
137         Avoid space for ShadowDescendant combinator.
138
139         Reviewed by Dimitri Glazkov.
140
141         * css/CSSSelector.cpp:
142         (WebCore::CSSSelector::selectorText):
143
144 2011-12-01  Wajahat Siddiqui  <mdwajahatali.siddiqui@motorola.com>
145
146         Popup menu can get stuck in closed state when GtkMenu can't grab mouse.
147         https://bugs.webkit.org/show_bug.cgi?id=56466
148
149         Add a check if popup menu is not visible due to no mouse grab,
150         Ensure WebCore is in sync with proper state.
151
152         Reviewed by Martin Robinson.
153
154         * platform/gtk/PopupMenuGtk.cpp:
155         (WebCore::PopupMenuGtk::show):
156
157 2011-12-01  Eric Carlson  <eric.carlson@apple.com>
158
159         When playing audio in <video>, the poster is hidden on play
160         https://bugs.webkit.org/show_bug.cgi?id=73405
161
162         Reviewed by Darin Adler.
163
164         * html/HTMLVideoElement.cpp:
165         (WebCore::HTMLVideoElement::hasAvailableVideoFrame): Don't return true if the file
166             doesn't have video.
167
168 2011-12-01  Eric Carlson  <eric.carlson@apple.com>
169
170         Add Settings for text track types
171         https://bugs.webkit.org/show_bug.cgi?id=73383
172
173         Reviewed by Darin Adler.
174
175         No new tests, settings are not used yet.
176
177         * page/Settings.cpp:
178         (WebCore::Settings::Settings): Initialize new settings.
179         * page/Settings.h:
180         (WebCore::Settings::setShouldDisplaySubtitles): New.
181         (WebCore::Settings::shouldDisplaySubtitles): Ditto.
182         (WebCore::Settings::setShouldDisplayCaptions): Ditto.
183         (WebCore::Settings::shouldDisplayCaptions): Ditto.
184         (WebCore::Settings::setShouldDisplayTextDescriptions): Ditto.
185         (WebCore::Settings::shouldDisplayTextDescriptions): Ditto.
186
187 2011-12-01  Eric Carlson  <eric.carlson@apple.com>
188
189         HTMLTrackElement.readyState should return TextTrack "readiness state".
190         https://bugs.webkit.org/show_bug.cgi?id=73466
191
192         Reviewed by Darin Adler.
193
194         * html/HTMLTrackElement.cpp:
195         (WebCore::HTMLTrackElement::HTMLTrackElement): Don't initialize m_readyState.
196         (WebCore::HTMLTrackElement::setReadyState): Return the TextTrack state.
197         (WebCore::HTMLTrackElement::readyState): Set the TextTrack state.
198         * html/HTMLTrackElement.h: Remove m_readyState.
199
200         * html/TextTrack.cpp:
201         (WebCore::TextTrack::TextTrack): Initialize m_readinessState.
202         * html/TextTrack.h:
203         (WebCore::TextTrack::readinessState): New.
204         (WebCore::TextTrack::setReadinessState): New.
205
206 2011-12-01  Kentaro Hara  <haraken@chromium.org>
207
208         Unreviewed, rolling out r101669.
209         http://trac.webkit.org/changeset/101669
210         https://bugs.webkit.org/show_bug.cgi?id=73394
211
212         Win build and Mac build are failing
213
214         * WebCore.gyp/WebCore.gyp:
215         * WebCore.gyp/scripts/action_derivedsourcesallinone.py:
216         (main):
217         * WebCore.gypi:
218         * bindings/scripts/generate-bindings.pl:
219         * page/DOMWindow.idl:
220         * webaudio/DOMWindowWebAudio.idl: Removed.
221
222 2011-12-01  Pavel Feldman  <pfeldman@google.com>
223
224         Web Inspector: further align front-end configurations: get rid of saveAsAvailable preference, inline drag glass pane.
225         https://bugs.webkit.org/show_bug.cgi?id=73555
226
227         Reviewed by Yury Semikhatsky.
228
229         * inspector/InspectorFrontendClient.h:
230         * inspector/InspectorFrontendClientLocal.h:
231         (WebCore::InspectorFrontendClientLocal::canSaveAs):
232         * inspector/InspectorFrontendHost.cpp:
233         (WebCore::InspectorFrontendHost::canSaveAs):
234         * inspector/InspectorFrontendHost.h:
235         * inspector/InspectorFrontendHost.idl:
236         * inspector/front-end/ExtensionServer.js:
237         (WebInspector.ExtensionServer.prototype.hasExtensions):
238         * inspector/front-end/InspectorFrontendHostStub.js:
239         (.WebInspector.InspectorFrontendHostStub.prototype.canSaveAs):
240         * inspector/front-end/NetworkPanel.js:
241         (WebInspector.NetworkLogView.prototype._contextMenu):
242         * inspector/front-end/ResourcesPanel.js:
243         * inspector/front-end/Settings.js:
244         * inspector/front-end/SettingsScreen.js:
245         (WebInspector.SettingsScreen):
246         * inspector/front-end/StylesSidebarPane.js:
247         * inspector/front-end/UIUtils.js:
248         (WebInspector.elementDragStart):
249         (WebInspector.elementDragEnd):
250
251 2011-12-01  Pavel Feldman  <pfeldman@google.com>
252
253         Web Inspector: extract static part of the InspectorBackend from the generator.
254         https://bugs.webkit.org/show_bug.cgi?id=73562
255
256         Reviewed by Timothy Hatcher.
257
258         We should only generate the mapping between the command parameters and slots,
259         rest of the backend is static.
260
261         * WebCore.gypi:
262         * WebCore.vcproj/WebCore.vcproj:
263         * inspector/CodeGeneratorInspector.py:
264         (Generator.go):
265         (Generator.process_event):
266         (Generator.process_command):
267         * inspector/compile-front-end.sh:
268         * inspector/front-end/InspectorBackend.js: Added.
269         (InspectorBackendClass):
270         (InspectorBackendClass.prototype.registerCommand):
271         (InspectorBackendClass.prototype.registerEvent):
272         (InspectorBackendClass.prototype._invoke):
273         (InspectorBackendClass.prototype._sendMessageToBackend):
274         (InspectorBackendClass.prototype._wrapCallbackAndSendMessageObject):
275         (InspectorBackendClass.prototype.sendMessageObjectToBackend):
276         (InspectorBackendClass.prototype.registerDomainDispatcher):
277         (InspectorBackendClass.prototype.dispatch.messageObject.error.__proto__.getDescription):
278         (InspectorBackendClass.prototype.dispatch.messageObject.error.__proto__.toString):
279         (InspectorBackendClass.prototype.dispatch.messageObject.error.__proto__.getMessage):
280         (InspectorBackendClass.prototype.dispatch):
281         (InspectorBackendClass.prototype.reportProtocolError):
282         (InspectorBackendClass.prototype.runAfterPendingDispatches):
283         * inspector/front-end/WebKit.qrc:
284         * inspector/front-end/inspector.html:
285
286 2011-12-01  Kentaro Hara  <haraken@chromium.org>
287
288         Use the [Supplemental] IDL for webaudio attributes in Chromium
289         https://bugs.webkit.org/show_bug.cgi?id=73394
290
291         Reviewed by Adam Barth.
292
293         - Overview: Using the [Supplemental] IDL, this patch moves the attribute
294         declarations of webaudio from DOMWindow.idl into a new IDL file
295         webaudio/DOMWindowWebAudio.idl, which helps make webaudio a self-contained
296         feature (aka a module).
297
298         - This patch changes the build flow of WebCore.gyp as follows:
299
300             Previous build flow:
301                 foreach $idl (all IDL files) {
302                     generate-bindings.pl depends on $idl;
303                     generate-bindings.pl reads $idl;
304                     generate-bindings.pl generates .h and .cpp files for $idl;
305                 }
306
307             New build flow (See the discussions in bug 72138 for more details):
308                 resolve-supplemental.pl depends on all IDL files;
309                 resolve-supplemental.pl reads all IDL files;
310                 resolve-supplemental.pl resolves the dependency of [Supplemental=XXXX];
311                 resolve-supplemental.pl outputs supplemental_dependency.tmp;
312                 foreach $idl (all IDL files) {
313                     generate-bindings.pl depends on $idl and supplemental_dependency.tmp;
314                     generate-bindings.pl reads $idl;
315                     generate-bindings.pl reads supplemental_dependency.tmp;
316                     generate-bindings.pl generates .h and .cpp files for $idl, including all attributes in IDL files whilementing $idl;
317                 }
318
319         - This patch introduces a temporary IDL, [Supplemented]. The [Supplemented] IDL
320         will be removed after build scripts for all platforms support the [Supplemental] IDL.
321         The motivation for the [Supplemented] IDL is as follows:
322
323         In order to support the [Supplemental] IDL, we need to
324         (1) run resolve-supplemental.pl and generate supplemental_dependency.tmp
325         (2) and run generate-bindings.pl with the supplemental_dependency.tmp.
326
327         This build flow requires a change on the following build scripts,
328         but changing all the build scripts all at once without any regression is too difficult:
329
330             - DerivedSources.make
331             - DerivedSources.pri
332             - GNUmakefile.am
333             - PlatformBlackBerry.cmake
334             - UseJSC.cmake
335             - UseV8.cmake
336             - WebCore.vcproj/MigrateScripts
337             - WebCore.vcproj/WebCore.vcproj
338             - bindings/gobject/GNUmakefile.am
339             - WebCore.gyp/WebCore.gyp
340
341         Thus, we are planning to change the build scripts one by one, which implies that
342         we need to allow the temporary state in which some build scripts support [Supplemental] IDL
343         but others do not. To accomplish this, we introduce a temporary IDL, [Supplemented].
344         The [Supplemented] IDL on an attribute means that the attribute is marked with [Supplemental]
345         in another IDL file somewhere, like this:
346
347             DOMWindowWebAudio.idl:
348                 interface [
349                     Supplemental=DOMWindow
350                 ] DOMWindowWebAudio {
351                     attribute attr1;
352                     attribute attr2;
353                 };
354
355             DOMWindow.idl:
356                 interface [
357                 ] DOMWindow {
358                     attribute [Supplemented] attr1; // This line will be removed after all build scripts support the [Su IDL
359                     attribute [Supplemented] attr2; // This line will be removed after all build scripts support the [Su IDL.
360                     attribute attr3;
361                     attribute attr4;
362                 };
363
364         Assuming these IDL files, this patch implements the following logic in generate-bindings.pl:
365
366             - If a given build script supports the [Supplemental] IDL,
367             generate-bindings.pl ignores all attributes with the [Supplemented] IDL.
368             - Otherwise, generate-bindings.pl treats all attributes with the [Supplemented] IDL
369             as normal attributes and instead ignores all attributes with the [Supplemental] IDL
370             (i.e. generate-bindings.pl generates nothing from the IDL file with the [Supplemental] IDL).
371
372         Tests: webaudio/*
373
374         * WebCore.gyp/WebCore.gyp: Describes the build flow that I described above.
375         * WebCore.gyp/scripts/action_derivedsourcesallinone.py:
376         (main): Reads the IDL file names from the input file (i.e. supplemental_dependency.tmp), which are described at the first column of each line in the input file.
377         * WebCore.gypi: Added DOMWindowWebAudio.idl.
378         * bindings/scripts/generate-bindings.pl: As a temporary solution, if the platform does not support the [Supplemental] IDL, the perl script ignores the [Supplemental] IDL and instead uses the [Supplemented] IDL. Otherwise, the perl script ignores the [Supplemented] IDL and instead uses the [Supplemental] IDL.
379         * page/DOMWindow.idl: Added the [Supplemented] IDL to webaudio-related attributes. As I described above, the [Supplemented] IDL will be removed after all platforms support the [Supplemental] IDL.
380         * webaudio/DOMWindowWebAudio.idl: Added. Describes the [Supplemental=DOMWindow] IDL. The attributes in this IDL file should be treated as if they are written in DOMWindow.idl.
381
382 2011-12-01  Jonathan Dong  <jonathan.dong@torchmobile.com.cn>
383
384         Upstream credential storage files of BlackBerry porting
385         https://bugs.webkit.org/show_bug.cgi?id=73280
386
387         Reviewed by Rob Buis.
388
389         Added the basic structure of class CredentialBackingStore
390         to persist the credential data, and generated
391         platform/network/blackberry/CredentialStorageBlackBerry.cpp,
392         to implement CredentialStorage::getFromPersistentStorage
393         for BlackBerry porting.
394         Contributed by Torch Team.
395
396         * platform/network/blackberry/CredentialBackingStore.cpp: Added.
397         (WebCore::CredentialBackingStore::instance):
398         (WebCore::CredentialBackingStore::CredentialBackingStore):
399         (WebCore::CredentialBackingStore::~CredentialBackingStore):
400         (WebCore::CredentialBackingStore::open):
401         (WebCore::CredentialBackingStore::close):
402         (WebCore::CredentialBackingStore::addLogin):
403         (WebCore::CredentialBackingStore::updateLogin):
404         (WebCore::CredentialBackingStore::hasLogin):
405         (WebCore::CredentialBackingStore::getLogin):
406         (WebCore::CredentialBackingStore::removeLogin):
407         (WebCore::CredentialBackingStore::clear):
408         (WebCore::CredentialBackingStore::encryptedString):
409         (WebCore::CredentialBackingStore::decryptedString):
410         * platform/network/blackberry/CredentialBackingStore.h: Added.
411         * platform/network/blackberry/CredentialStorageBlackBerry.cpp: Added.
412         (WebCore::CredentialStorage::getFromPersistentStorage):
413
414 2011-11-30  Andreas Kling  <kling@webkit.org>
415
416         StyledElement: Tidy up copyNonAttributeProperties().
417         <http://webkit.org/b/73501>
418
419         Reviewed by Antti Koivisto.
420
421         * css/CSSStyleDeclaration.h:
422
423             Made CSSStyleDeclaration non-copyable.
424
425         * css/CSSMutableStyleDeclaration.h:
426         * css/CSSMutableStyleDeclaration.cpp:
427         (WebCore::CSSMutableStyleDeclaration::copyPropertiesFrom):
428
429             copyPropertiesAndStrictnessFrom() redone as copyPropertiesFrom()
430             since we can copy the strictness bit using existing accessors.
431
432         * dom/StyledElement.cpp:
433         (WebCore::StyledElement::copyNonAttributeProperties):
434
435             Use copyPropertiesFrom() and copy the strictness bit to the new
436             inline style using the dedicated accessors. Also added some
437             assertions for good measure.
438
439 2011-12-01  Kentaro Hara  <haraken@chromium.org>
440
441         run-bindings-tests is failing on Gtk/Qt/SnowLeopard/Lion bots
442         https://bugs.webkit.org/show_bug.cgi?id=73558
443
444         Reviewed by Csaba Osztrogonác.
445
446         The cause of the bug:
447
448         foreach my $idlFile (keys %documents) {
449             $supplementals{$idlFile} = [];
450             foreach my $dataNode (...) {
451                 if (...) {
452                     ...;
453                     push(@{$supplementals{$targetIdlFile}}, $idlFile);
454                     ...;
455                 }
456             }
457         }
458
459         Even if we did push(@{$supplementals{$targetIdlFile}}, $idlFile),
460         the $supplementals{$targetIdlFile} can be re-initialized by
461         $supplementals{$idlFile} = [] in subsequent loops.
462         This patch fixes the bug.
463
464         Tests: bindings/scripts/test/TestInterface.idl
465
466         * bindings/scripts/resolve-supplemental.pl:
467
468 2011-12-01  Pavel Feldman  <pfeldman@chromium.org>
469
470         Web Inspector: restore WebKit2 Safari menu items after capabilities refactoring regression.
471         https://bugs.webkit.org/show_bug.cgi?id=73554
472
473         Reviewed by Yury Semikhatsky.
474
475         * inspector/InspectorFrontendClientLocal.cpp:
476         (WebCore::InspectorFrontendClientLocal::frontendLoaded):
477         (WebCore::InspectorFrontendClientLocal::isDebuggingEnabled):
478         (WebCore::InspectorFrontendClientLocal::setDebuggingEnabled):
479         (WebCore::InspectorFrontendClientLocal::isTimelineProfilingEnabled):
480         (WebCore::InspectorFrontendClientLocal::setTimelineProfilingEnabled):
481         (WebCore::InspectorFrontendClientLocal::isProfilingJavaScript):
482         (WebCore::InspectorFrontendClientLocal::startProfilingJavaScript):
483         (WebCore::InspectorFrontendClientLocal::stopProfilingJavaScript):
484         (WebCore::InspectorFrontendClientLocal::showConsole):
485         (WebCore::InspectorFrontendClientLocal::evaluateOnLoad):
486         * inspector/InspectorFrontendClientLocal.h:
487         * inspector/front-end/InspectorFrontendAPI.js:
488         (InspectorFrontendAPI._pendingCommands.isDebuggingEnabled):
489         (InspectorFrontendAPI.setDebuggingEnabled):
490         (InspectorFrontendAPI.isTimelineProfilingEnabled):
491         (InspectorFrontendAPI.setTimelineProfilingEnabled):
492         (InspectorFrontendAPI.isProfilingJavaScript):
493         (InspectorFrontendAPI.startProfilingJavaScript):
494         (InspectorFrontendAPI.stopProfilingJavaScript):
495         (InspectorFrontendAPI.setAttachedWindow):
496         (InspectorFrontendAPI.showConsole):
497         (InspectorFrontendAPI.dispatch):
498         (InspectorFrontendAPI.loadCompleted):
499         * inspector/front-end/inspector.js:
500
501 2011-12-01  Pavel Feldman  <pfeldman@google.com>
502
503         Web Inspector: remove capabilities along with the MetaAgent
504         https://bugs.webkit.org/show_bug.cgi?id=73550
505
506         Reviewed by Yury Semikhatsky.
507
508         We are now using explicit query commands in order to find out about the capabilities.
509
510         * CMakeLists.txt:
511         * GNUmakefile.list.am:
512         * Target.pri:
513         * WebCore.gypi:
514         * WebCore.vcproj/WebCore.vcproj:
515         * WebCore.xcodeproj/project.pbxproj:
516         * inspector/CodeGeneratorInspector.py:
517         (Generator.go):
518         * inspector/Inspector.json:
519         * inspector/InspectorController.cpp:
520         (WebCore::InspectorController::InspectorController):
521         * inspector/InspectorMetaAgent.cpp: Removed.
522         * inspector/InspectorMetaAgent.h: Removed.
523         * inspector/generate-protocol-externs:
524
525 2011-12-01  Pavel Feldman  <pfeldman@google.com>
526
527         Web Inspector: front-end should open with elements panel selected upon Inspect Element action.
528         https://bugs.webkit.org/show_bug.cgi?id=73539
529
530         Reviewed by Yury Semikhatsky.
531
532         * inspector/front-end/inspector.js:
533         (WebInspector.doLoadedDone.showInitialPanel):
534         (WebInspector.inspect):
535
536 2011-11-30  Vsevolod Vlasov  <vsevik@chromium.org>
537
538         Web Inspector: totalOffsetLeft and totalOffsetTop should take scroll into account.
539         https://bugs.webkit.org/show_bug.cgi?id=73443
540
541         Reviewed by Pavel Feldman.
542
543         * inspector/front-end/TextPrompt.js:
544         (WebInspector.TextPrompt.prototype._boxForAnchorAtStart):
545         (WebInspector.TextPrompt.SuggestBox):
546         * inspector/front-end/utilities.js:
547         (Element.prototype.totalOffsetLeft):
548         (Element.prototype.totalOffsetTop):
549         (Element.prototype.boxInWindow):
550
551 2011-12-01  Pavel Feldman  <pfeldman@google.com>
552
553         Web Inspector: query backend for capabilities explicitly.
554         https://bugs.webkit.org/show_bug.cgi?id=73442
555
556         Reviewed by Yury Semikhatsky.
557
558         This change removes the hardcoded Capabilities values in favor of
559         explicit query commands issued against the backend. I'll remove the
560         Meta agent in a subsequent change.
561
562         * bindings/js/ScriptDebugServer.h:
563         (WebCore::ScriptDebugServer::causesRecompilation):
564         (WebCore::ScriptDebugServer::supportsNativeBreakpoints):
565         * bindings/js/ScriptProfiler.h:
566         (WebCore::ScriptProfiler::causesRecompilation):
567         (WebCore::ScriptProfiler::isSampling):
568         (WebCore::ScriptProfiler::hasHeapProfiler):
569         * bindings/v8/ScriptDebugServer.h:
570         (WebCore::ScriptDebugServer::causesRecompilation):
571         (WebCore::ScriptDebugServer::supportsNativeBreakpoints):
572         * bindings/v8/ScriptProfiler.h:
573         (WebCore::ScriptProfiler::causesRecompilation):
574         (WebCore::ScriptProfiler::isSampling):
575         (WebCore::ScriptProfiler::hasHeapProfiler):
576         * inspector/Inspector.json:
577         * inspector/InspectorClient.h:
578         (WebCore::InspectorClient::canClearBrowserCache):
579         (WebCore::InspectorClient::canClearBrowserCookies):
580         * inspector/InspectorController.cpp:
581         (WebCore::InspectorController::InspectorController):
582         (WebCore::InspectorController::connectFrontend):
583         (WebCore::InspectorController::show):
584         * inspector/InspectorController.h:
585         * inspector/InspectorDebuggerAgent.cpp:
586         (WebCore::InspectorDebuggerAgent::causesRecompilation):
587         (WebCore::InspectorDebuggerAgent::canSetScriptSource):
588         (WebCore::InspectorDebuggerAgent::supportsNativeBreakpoints):
589         * inspector/InspectorDebuggerAgent.h:
590         * inspector/InspectorFrontendClientLocal.cpp:
591         (WebCore::InspectorFrontendClientLocal::frontendLoaded):
592         * inspector/InspectorProfilerAgent.cpp:
593         (WebCore::InspectorProfilerAgent::causesRecompilation):
594         (WebCore::InspectorProfilerAgent::isSampling):
595         (WebCore::InspectorProfilerAgent::hasHeapProfiler):
596         (WebCore::InspectorProfilerAgent::disable):
597         (WebCore::InspectorProfilerAgent::enable):
598         (WebCore::InspectorProfilerAgent::setFrontend):
599         * inspector/InspectorProfilerAgent.h:
600         * inspector/InspectorResourceAgent.cpp:
601         (WebCore::InspectorResourceAgent::canClearBrowserCache):
602         (WebCore::InspectorResourceAgent::canClearBrowserCookies):
603         * inspector/InspectorResourceAgent.h:
604         * inspector/front-end/DebuggerModel.js:
605         (WebInspector.DebuggerModel):
606         (WebInspector.DebuggerModel.prototype.enableDebugger):
607         (WebInspector.DebuggerModel.prototype.canSetScriptSource):
608         * inspector/front-end/NetworkItemView.js:
609         (WebInspector.NetworkItemView):
610         * inspector/front-end/NetworkPanel.js:
611         (WebInspector.NetworkLogView.onCanClearBrowserCache):
612         (WebInspector.NetworkLogView.onCanClearBrowserCookies):
613         (WebInspector.NetworkLogView):
614         (WebInspector.NetworkLogView.prototype._contextMenu):
615         * inspector/front-end/ProfilesPanel.js:
616         (WebInspector.ProfilesPanel.prototype._reportHeapSnapshotProgress):
617         * inspector/front-end/ScriptsPanel.js:
618         * inspector/front-end/Settings.js:
619         * inspector/front-end/SettingsScreen.js:
620         (WebInspector.SettingsScreen):
621         * inspector/front-end/inspector.js:
622         (WebInspector.get inspectedPageDomain):
623         (WebInspector._initializeCapability):
624         (WebInspector.doLoadedDone):
625
626 2011-11-28  Hans Wennborg  <hans@chromium.org>
627
628         IndexedDB: Fix reverse cursor with non-existent upper bound
629         https://bugs.webkit.org/show_bug.cgi?id=73220
630
631         Reviewed by Tony Chang.
632
633         The code previously did not properly handle the case where the
634         specified upper bound for a reverse cursor did not exist.
635
636         Test: storage/indexeddb/cursor-reverse-bug.html
637
638         * storage/IDBLevelDBBackingStore.cpp:
639         (WebCore::findGreatestKeyLessThanOrEqual):
640         (WebCore::IDBLevelDBBackingStore::openObjectStoreCursor):
641         (WebCore::IDBLevelDBBackingStore::openIndexKeyCursor):
642         (WebCore::IDBLevelDBBackingStore::openIndexCursor):
643
644 2011-11-29  Hans Wennborg  <hans@chromium.org>
645
646         IndexedDB: Cursor pre-fetching
647         https://bugs.webkit.org/show_bug.cgi?id=73025
648
649         Reviewed by Darin Fisher.
650
651         No new tests. This doesn't change any semantics.
652         Actual pre-fetching will not happen in DumpRenderTree.
653         Chromium will request pre-fetching and have tests for it.
654
655         * storage/IDBBackingStore.h:
656         * storage/IDBCallbacks.h:
657         * storage/IDBCursor.cpp:
658         (WebCore::IDBCursor::continueFunction):
659         (WebCore::IDBCursor::postSuccessHandlerCallback):
660           Adds a callback that is called everytime the onsuccess handler has
661           executed on a cursor. This allows the cursor to see if a new call
662           to continue() was made in the onsuccess handler.
663         * storage/IDBCursor.h:
664         * storage/IDBCursorBackendImpl.cpp:
665         (WebCore::IDBCursorBackendImpl::continueFunction):
666         (WebCore::IDBCursorBackendImpl::prefetchContinue):
667         (WebCore::IDBCursorBackendImpl::prefetchContinueInternal):
668           This is the function that does actual pre-fetching. When called,
669           it will attempt to step the cursor up to n steps and send the
670           results back via the new onSuccessWithPrefetch() callback.
671         (WebCore::IDBCursorBackendImpl::prefetchReset):
672           This resets the cursor to the position it was at before the last
673           prefetch call.
674         * storage/IDBCursorBackendImpl.h:
675         (WebCore::IDBCursorBackendImpl::postSuccessHandlerCallback):
676         * storage/IDBCursorBackendInterface.h:
677         * storage/IDBKey.h:
678         (WebCore::IDBKey::createInvalid):
679         (WebCore::IDBKey::createNumber):
680         (WebCore::IDBKey::createString):
681         (WebCore::IDBKey::createDate):
682         (WebCore::IDBKey::createArray):
683         (WebCore::IDBKey::sizeEstimate):
684         * storage/IDBLevelDBBackingStore.cpp:
685         (WebCore::CursorOptions::CursorImplCommon::CursorImplCommon):
686         (WebCore::CursorOptions::ObjectStoreCursorImpl::clone):
687         (WebCore::CursorOptions::ObjectStoreCursorImpl::ObjectStoreCursorImpl):
688         (WebCore::CursorOptions::IndexKeyCursorImpl::clone):
689         (WebCore::CursorOptions::IndexKeyCursorImpl::IndexKeyCursorImpl):
690         (WebCore::CursorOptions::IndexCursorImpl::clone):
691         (WebCore::CursorOptions::IndexCursorImpl::IndexCursorImpl):
692         * storage/IDBRequest.cpp:
693         (WebCore::IDBRequest::dispatchEvent):
694           Update dispatchEvent() to call the postSuccessHandlerCallback()
695         * storage/IDBRequest.h:
696         (WebCore::IDBRequest::onSuccessWithPrefetch):
697         * storage/IDBTransactionBackendImpl.cpp:
698         (WebCore::IDBTransactionBackendImpl::addPendingEvents):
699           Allow for adding an arbitrary number of extra pending events.
700           When a cursor pre-fetches n elements, the transaction should
701           expect to see n extra onsuccess calls.
702         * storage/IDBTransactionBackendImpl.h:
703         * storage/IDBTransactionBackendInterface.h:
704
705 2011-12-01  Philippe Normand  <pnormand@igalia.com>
706
707         [GTK] WebAudio wav resources access and management
708         https://bugs.webkit.org/show_bug.cgi?id=73080
709
710         Reviewed by Martin Robinson.
711
712         For the uninstalled case we assume the user will set a
713         AUDIO_RESOURCES_PATH environment variable pointing to
714         WebCore/platform/audio/resources.
715
716         * GNUmakefile.am: Install WAV resources.
717         * platform/audio/gtk/AudioBusGtk.cpp:
718         (WebCore::AudioBus::loadPlatformResource): Support for loading
719         uninstalled resources.
720
721 2011-12-01  Florin Malita  <fmalita@google.com>
722
723         SVG Gaussian blur in 1-dimension is incorrect
724         https://bugs.webkit.org/show_bug.cgi?id=73029
725
726         Reviewed by Simon Fraser.
727
728         Ensure that the last blurBox result is stored when applying one-dimensional blurs.
729
730         * platform/graphics/filters/FEGaussianBlur.cpp:
731         (WebCore::FEGaussianBlur::platformApplyGeneric):
732
733 2011-12-01  Vsevolod Vlasov  <vsevik@chromium.org>
734
735         Web Inspector: Elements Panel edit as html looks weird with an arrow inside edit box.
736         https://bugs.webkit.org/show_bug.cgi?id=73462
737
738         Reviewed by Pavel Feldman.
739
740         * inspector/front-end/elementsPanel.css:
741         (#elements-content .editing):
742         (.elements-tree-editor):
743         * inspector/front-end/inspector.css:
744
745 2011-12-01  Alexander Pavlov  <apavlov@chromium.org>
746
747         Web Inspector: [Styles] Exclamation mark hint ignores property case
748         https://bugs.webkit.org/show_bug.cgi?id=73535
749
750         Reviewed by Pavel Feldman.
751
752         * inspector/front-end/StylesSidebarPane.js:
753
754 2011-12-01  Pavel Feldman  <pfeldman@google.com>
755
756         Web Inspector: fix dedicated workers inspection (undefined is not an object).
757         https://bugs.webkit.org/show_bug.cgi?id=73537
758
759         Reviewed by Yury Semikhatsky.
760
761         * inspector/front-end/ResourceTreeModel.js:
762         (WebInspector.ResourceTreeModel.prototype.resourceForURL):
763         * inspector/front-end/WorkerManager.js:
764         (WebInspector.WorkerManager.loadCompleted):
765
766 2011-12-01  Kentaro Hara  <haraken@chromium.org>
767
768         [JSC] When XXXX has a NamedConstructor, window.XXXX should be XXXXConstructor
769         https://bugs.webkit.org/show_bug.cgi?id=73521
770
771         Reviewed by Adam Barth.
772
773         This is a regression caused by a patch of bug 73307.
774         If we replaced a custom constructor of window.XXXX (e.g. XXXX is Audio or Option)
775         with the [NamedConstructor] IDL, fast/js/global-constructors.html,
776         fast/dom/Window/window-properties.html and fast/dom/call-a-constructor-as-a-function.html
777         start to fail in JSC.
778
779         Before a patch of bug 73007: (correct behavior)
780             window.Audio => AudioConstructor
781             window.Option => OptionConstructor
782             window.HTMLAudioElement => HTMLAudioElementConstructor
783             window.HTMLOptionElement => HTMLOptionElementConstructor
784
785         After a patch of bug 73007: (wrong behavior)
786             window.Audio => HTMLAudioElementConstructor
787             window.Option => HTMLOptionElementConstructor
788             window.HTMLAudioElement => HTMLAudioElementConstructor
789             window.HTMLOptionElement => HTMLOptionElementConstructor
790
791         This patch fixes the above behavior.
792
793         Tests: bindings/scripts/test/TestNamedConstructor.idl
794
795         * bindings/scripts/CodeGeneratorJS.pm:
796         (GenerateImplementation):
797         * bindings/scripts/IDLParser.pm:
798         (parseExtendedAttributes):
799         (ParseInterface):
800         * bindings/scripts/test/TestNamedConstructor.idl: The test IDL was wrong. NamedConstructor=XXXX(arguments) is a correct format.
801         * bindings/scripts/test/JS/JSTestNamedConstructor.cpp: Updated a run-bindings-tests result.
802
803 2011-11-30  David Grogan  <dgrogan@chromium.org>
804
805         Move data in IDBPendingTransactionMonitor from static to
806         ThreadSpecific.
807         https://bugs.webkit.org/show_bug.cgi?id=73389
808
809         IDBPendingTransactionMonitor previously stored transactions in
810         a static member variable so that they could be aborted if they were
811         had no work queued up when leaving script execution.  That was fine when
812         IndexedDB could only be used on the main thread, but is insufficient
813         for IndexedDB on workers.  In addition to not being thread-safe, this
814         caused pending transactions that were created from a worker thread to
815         abort when the main thread left script execution.
816
817         Reviewed by David Levin.
818
819         No new tests - IndexedDB worker tests forthcoming.
820
821         * storage/IDBPendingTransactionMonitor.cpp:
822         (WebCore::transactions):  Create the TLS.  The other methods used to
823         manage the container's memory lifetime but now we just leak it until
824         the thread shuts down in the interest of simpler code.
825         (WebCore::IDBPendingTransactionMonitor::addPendingTransaction):
826         (WebCore::IDBPendingTransactionMonitor::removePendingTransaction):
827         (WebCore::IDBPendingTransactionMonitor::abortPendingTransactions):
828
829         * storage/IDBPendingTransactionMonitor.h:
830
831 2011-11-30  Leo Yang  <leo.yang@torchmobile.com.cn>
832
833         Upstream platform/network/blackberry/NetworkStateNotifierBlackBerry.cpp
834         https://bugs.webkit.org/show_bug.cgi?id=73522
835
836         Reviewed by Daniel Bates.
837
838         Initial upstream, can't be built yet, no new tests.
839
840         * platform/network/blackberry/NetworkStateNotifierBlackBerry.cpp: Added.
841         (WebCore::NetworkStateNotifier::NetworkStateNotifier):
842         (WebCore::NetworkStateNotifier::networkStateChange):
843
844 2011-11-30  David Reveman  <reveman@chromium.org>
845
846         [Chromium] Improve tile invalidation
847         https://bugs.webkit.org/show_bug.cgi?id=71872
848
849         Reviewed by James Robinson.
850
851         Virtualize LayerChromium::setNeedsDisplay so that dirty rectangles can
852         be handled directly by the TiledLayerChromium class. Replace
853         LayerChromium::dirtyRect() with LayerChromium::needsDisplay() and
854         remove unnecessary union of dirty rectangles. By invalidating existing
855         tiles using the initial dirty rectangles instead of their union we
856         avoid a large amount of unnecessary tile updates.
857
858         Update LayerChromiumTest.
859
860         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
861         (WebCore::Canvas2DLayerChromium::updateCompositorResources):
862         * platform/graphics/chromium/ContentLayerChromium.cpp:
863         (WebCore::ContentLayerChromium::paintContentsIfDirty):
864         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
865         (WebCore::GraphicsLayerChromium::setNeedsDisplayInRect):
866         * platform/graphics/chromium/ImageLayerChromium.cpp:
867         (WebCore::ImageLayerChromium::setContents):
868         (WebCore::ImageLayerChromium::paintContentsIfDirty):
869         * platform/graphics/chromium/LayerChromium.cpp:
870         (WebCore::LayerChromium::LayerChromium):
871         (WebCore::LayerChromium::setBounds):
872         (WebCore::LayerChromium::setNeedsDisplayRect):
873         * platform/graphics/chromium/LayerChromium.h:
874         (WebCore::LayerChromium::setNeedsDisplay):
875         (WebCore::LayerChromium::needsDisplay):
876         * platform/graphics/chromium/TiledLayerChromium.cpp:
877         (WebCore::TiledLayerChromium::setNeedsDisplayRect):
878         (WebCore::TiledLayerChromium::invalidateRect):
879         * platform/graphics/chromium/TiledLayerChromium.h:
880         * platform/graphics/chromium/VideoLayerChromium.cpp:
881         (WebCore::VideoLayerChromium::updateCompositorResources):
882         * platform/graphics/chromium/WebGLLayerChromium.cpp:
883         (WebCore::WebGLLayerChromium::updateCompositorResources):
884
885 2011-11-30  Alexey Proskuryakov  <ap@apple.com>
886
887         SocketStreamHandleCFNet doesn't check for proxy errors
888         https://bugs.webkit.org/show_bug.cgi?id=71965
889
890         Reviewed by Darin Adler.
891
892         * platform/network/cf/SocketStreamHandleCFNet.cpp:
893         (WebCore::getStoredCONNECTProxyCredentials): Added a FIXME about retrieving proxy credentials.
894         (WebCore::SocketStreamHandle::addCONNECTCredentials): Added human readable messages to errors,
895         they go to Web Inspector console.
896         (WebCore::SocketStreamHandle::readStreamCallback): Handle proxy response codes other than 200
897         and 407 by failing cleanly.
898
899 2011-11-30  Jeremy Apthorp  <jeremya@google.com>
900
901         When the mouse is dragged out of an :active element, it should lose :hover.
902         https://bugs.webkit.org/show_bug.cgi?id=57206
903
904         Reviewed by Ryosuke Niwa.
905
906         Test: fast/css/hover-active-drag.html
907
908         * page/EventHandler.cpp:
909         (WebCore::EventHandler::handleMouseMoveEvent): Don't mark mouse-drag hit tests read-only, since they no longer are.
910         (WebCore::EventHandler::dragSourceEndedAt): Send a hit test request when the mouse goes up after a drag, so
911         RenderLayer has a chance to update the hover/active status.
912         * rendering/RenderLayer.cpp:
913         (WebCore::RenderLayer::updateHoverActiveState): Only allow the :active state to change on mouse down or mouse up.
914
915 2011-11-30  Hans Muller  <hmuller@adobe.com>
916
917         XHR 'progress' event code assumes wrongly that expectedLength >= 0
918         https://bugs.webkit.org/show_bug.cgi?id=36156
919
920         Reviewed by Alexey Proskuryakov
921
922         Avoid passing a negative value as the dispatchProgressEvent's total parameter and always use 0 when lengthComputable is false.
923
924         Test: http/tests/xmlhttprequest/chunked-progress-event-expectedLength.html
925
926         * xml/XMLHttpRequest.cpp:
927         (WebCore::XMLHttpRequest::didReceiveData):
928
929 2011-11-30  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
930
931         Unreviewed. Fix build error when NOTIFICATIONS feature is enabled.
932
933         * CMakeLists.txt:
934
935 2011-11-30  Noel Gordon  <noel.gordon@gmail.com>
936
937         Remove ImageFrame::setSize() style nits
938         https://bugs.webkit.org/show_bug.cgi?id=73490
939
940         Reviewed by Andreas Kling.
941
942         Equality comparisons to 0 should be performed with the not operator, write
943         width() == 0 && height() == 0 as !width() && !height().
944
945         No new tests, style refactor.
946
947         * platform/image-decoders/qt/ImageFrameQt.cpp:
948         (WebCore::ImageFrame::setSize):
949         * platform/image-decoders/skia/ImageDecoderSkia.cpp:
950         (WebCore::ImageFrame::setSize):
951
952 2011-11-30  Alexey Proskuryakov  <ap@apple.com>
953
954         Remove an unneeded argument from FrameLoaderClient::download
955         https://bugs.webkit.org/show_bug.cgi?id=73486
956
957         Reviewed by Andreas Kling.
958
959         No change in functionality.
960
961         * loader/FrameLoaderClient.h: Removed initialRequest argument.
962
963         * loader/MainResourceLoader.cpp: (WebCore::MainResourceLoader::continueAfterContentPolicy):
964         We're already passing ResourceHandle, why also pass its data member?
965
966         * loader/EmptyClients.h: (WebCore::EmptyFrameLoaderClient::download): Updated for the change.
967
968 2011-11-30  Alexey Proskuryakov  <ap@apple.com>
969
970         Original page URL is not set in quarantine information when downloading using context menu Save Linked File
971         https://bugs.webkit.org/show_bug.cgi?id=73475
972         <rdar://problem/10500337>
973
974         Reviewed by Dan Bernstein.
975
976         * WebCore.exp.in: Exported FrameLoader::setOriginalURLForDownloadRequest.
977
978 2011-11-30  Mark Pilgrim  <pilgrim@chromium.org>
979
980         [FileSystem API] DirectoryEntry.getFile path argument is required
981         https://bugs.webkit.org/show_bug.cgi?id=69642
982
983         Reviewed by Adam Barth.
984
985         Test: fast/filesystem/simple-required-arguments-getfile.html
986
987         * bindings/js/JSDirectoryEntryCustom.cpp:
988         (WebCore::JSDirectoryEntry::getFile): check args length and throw TypeError if not enough arguments
989         * bindings/v8/custom/V8DirectoryEntryCustom.cpp:
990         (WebCore::V8DirectoryEntry::getFileCallback): check args length and throw TypeError if not enough arguments
991
992 2011-11-30  Joshua Bell  <jsbell@chromium.org>
993
994         IndexedDB: Implement IDBIndex multientry feature
995         https://bugs.webkit.org/show_bug.cgi?id=73232
996
997         Reviewed by Tony Chang.
998
999         The multientry flag is used when populating indexes, either when the index
1000         is created on an existing store or as new values are added to the store.
1001         Per the spec the semantics are: if the flag is set and the index key is
1002         calculated to be an array, each member of the array is used as an index key
1003         instead.
1004
1005         Test: storage/indexeddb/index-multientry.html
1006
1007         * storage/IDBBackingStore.h:
1008         * storage/IDBIndex.h:
1009         (WebCore::IDBIndex::multientry):
1010         * storage/IDBIndex.idl:
1011         * storage/IDBIndexBackendImpl.cpp:
1012         (WebCore::IDBIndexBackendImpl::IDBIndexBackendImpl):
1013         * storage/IDBIndexBackendImpl.h:
1014         (WebCore::IDBIndexBackendImpl::create):
1015         (WebCore::IDBIndexBackendImpl::multientry):
1016         * storage/IDBIndexBackendInterface.h:
1017         * storage/IDBLevelDBBackingStore.cpp:
1018         (WebCore::checkIndexAndMetaDataKey):
1019         (WebCore::IDBLevelDBBackingStore::getIndexes):
1020         (WebCore::IDBLevelDBBackingStore::createIndex):
1021         * storage/IDBLevelDBBackingStore.h:
1022         * storage/IDBLevelDBCoding.cpp:
1023         * storage/IDBObjectStore.cpp:
1024         (WebCore::IDBObjectStore::createIndex):
1025         * storage/IDBObjectStoreBackendImpl.cpp:
1026         (WebCore::IDBObjectStoreBackendImpl::putInternal):
1027         (WebCore::IDBObjectStoreBackendImpl::populateIndex):
1028         (WebCore::IDBObjectStoreBackendImpl::createIndex):
1029         (WebCore::IDBObjectStoreBackendImpl::createIndexInternal):
1030         (WebCore::IDBObjectStoreBackendImpl::loadIndexes):
1031         * storage/IDBObjectStoreBackendImpl.h:
1032         * storage/IDBObjectStoreBackendInterface.h:
1033
1034 2011-11-30  David Reveman  <reveman@chromium.org>
1035
1036         [Chromium] Add support for painting into an SkPicture and then rasterizing into tile-sized chunks.
1037         https://bugs.webkit.org/show_bug.cgi?id=71388
1038
1039         Reviewed by James Robinson.
1040
1041         Add UpdatableTexture class, which allows texture updater to
1042         allocate tile specific resources and paint tiles separately.
1043         Rename texture uploader classes and move them to separate files.
1044
1045         No new tests. Covered by existing tests.
1046
1047         * WebCore.gypi:
1048         * platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.cpp: Added.
1049         (WebCore::BitmapCanvasLayerTextureUpdater::Texture::Texture):
1050         (WebCore::BitmapCanvasLayerTextureUpdater::Texture::~Texture):
1051         (WebCore::BitmapCanvasLayerTextureUpdater::Texture::updateRect):
1052         (WebCore::BitmapCanvasLayerTextureUpdater::create):
1053         (WebCore::BitmapCanvasLayerTextureUpdater::BitmapCanvasLayerTextureUpdater):
1054         (WebCore::BitmapCanvasLayerTextureUpdater::~BitmapCanvasLayerTextureUpdater):
1055         (WebCore::BitmapCanvasLayerTextureUpdater::createTexture):
1056         (WebCore::BitmapCanvasLayerTextureUpdater::sampledTexelFormat):
1057         (WebCore::BitmapCanvasLayerTextureUpdater::prepareToUpdate):
1058         (WebCore::BitmapCanvasLayerTextureUpdater::updateTextureRect):
1059         * platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.h: Copied from Source/WebCore/platform/graphics/chromium/LayerTextureUpdater.h.
1060         (WebCore::BitmapCanvasLayerTextureUpdater::Texture::textureUpdater):
1061         (WebCore::BitmapCanvasLayerTextureUpdater::orientation):
1062         * platform/graphics/chromium/CanvasLayerTextureUpdater.cpp: Copied from Source/WebCore/platform/graphics/chromium/cc/CCTextureUpdater.h.
1063         (WebCore::CanvasLayerTextureUpdater::CanvasLayerTextureUpdater):
1064         (WebCore::CanvasLayerTextureUpdater::~CanvasLayerTextureUpdater):
1065         (WebCore::CanvasLayerTextureUpdater::paintContents):
1066         * platform/graphics/chromium/CanvasLayerTextureUpdater.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCTextureUpdater.h.
1067         (WebCore::CanvasLayerTextureUpdater::contentRect):
1068         * platform/graphics/chromium/ContentLayerChromium.cpp:
1069         (WebCore::ContentLayerChromium::createTextureUpdater):
1070         * platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.cpp: Added.
1071         (WebCore::FrameBuffer::FrameBuffer::FrameBuffer):
1072         (WebCore::FrameBuffer::FrameBuffer::~FrameBuffer):
1073         (WebCore::FrameBuffer::FrameBuffer::initialize):
1074         (WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::Texture::Texture):
1075         (WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::Texture::~Texture):
1076         (WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::Texture::updateRect):
1077         (WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::create):
1078         (WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::FrameBufferSkPictureCanvasLayerTextureUpdater):
1079         (WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::~FrameBufferSkPictureCanvasLayerTextureUpdater):
1080         (WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::createTexture):
1081         (WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::sampledTexelFormat):
1082         (WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::updateTextureRect):
1083         * platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.h: Copied from Source/WebCore/platform/graphics/chromium/LayerTextureUpdater.h.
1084         (WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::Texture::textureUpdater):
1085         (WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::orientation):
1086         * platform/graphics/chromium/ImageLayerChromium.cpp:
1087         (WebCore::ImageLayerTextureUpdater::Texture::Texture):
1088         (WebCore::ImageLayerTextureUpdater::Texture::updateRect):
1089         (WebCore::ImageLayerTextureUpdater::Texture::textureUpdater):
1090         (WebCore::ImageLayerTextureUpdater::createTexture):
1091         * platform/graphics/chromium/LayerRendererChromium.cpp:
1092         * platform/graphics/chromium/LayerTextureUpdater.h:
1093         (WebCore::LayerTextureUpdater::Texture::~Texture):
1094         (WebCore::LayerTextureUpdater::Texture::texture):
1095         (WebCore::LayerTextureUpdater::Texture::prepareRect):
1096         (WebCore::LayerTextureUpdater::Texture::Texture):
1097         (WebCore::LayerTextureUpdater::prepareToUpdate):
1098         * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp: Removed.
1099         * platform/graphics/chromium/LayerTextureUpdaterCanvas.h: Removed.
1100         * platform/graphics/chromium/SkPictureCanvasLayerTextureUpdater.cpp: Copied from Source/WebCore/platform/graphics/chromium/cc/CCTextureUpdater.h.
1101         (WebCore::SkPictureCanvasLayerTextureUpdater::SkPictureCanvasLayerTextureUpdater):
1102         (WebCore::SkPictureCanvasLayerTextureUpdater::~SkPictureCanvasLayerTextureUpdater):
1103         (WebCore::SkPictureCanvasLayerTextureUpdater::prepareToUpdate):
1104         (WebCore::SkPictureCanvasLayerTextureUpdater::drawPicture):
1105         * platform/graphics/chromium/SkPictureCanvasLayerTextureUpdater.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCTextureUpdater.h.
1106         * platform/graphics/chromium/TiledLayerChromium.cpp:
1107         (WebCore::UpdatableTile::UpdatableTile):
1108         (WebCore::UpdatableTile::texture):
1109         (WebCore::UpdatableTile::managedTexture):
1110         (WebCore::TiledLayerChromium::updateCompositorResources):
1111         (WebCore::TiledLayerChromium::pushPropertiesTo):
1112         (WebCore::TiledLayerChromium::createTile):
1113         (WebCore::TiledLayerChromium::protectTileTextures):
1114         (WebCore::TiledLayerChromium::prepareToUpdate):
1115         * platform/graphics/chromium/cc/CCTextureUpdater.cpp:
1116         (WebCore::CCTextureUpdater::append):
1117         (WebCore::CCTextureUpdater::update):
1118         * platform/graphics/chromium/cc/CCTextureUpdater.h:
1119
1120 2011-11-30  Rafael Weinstein  <rafaelw@chromium.org>
1121
1122         [MutationObservers] Make WebKitMutationObserver::deliverAllMutations() tolerant of re-entrant calls
1123         https://bugs.webkit.org/show_bug.cgi?id=73472
1124
1125         Reviewed by Ojan Vafai.
1126
1127         No new tests. This patch just adds a static guard which makes more explicit the current semantics.
1128
1129         * dom/WebKitMutationObserver.cpp:
1130         (WebCore::WebKitMutationObserver::deliverAllMutations):
1131
1132 2011-11-30  Takashi Toyoshima  <toyoshim@chromium.org>
1133
1134         Add OVERRIDE to WebSocket related sources for safe inheritances.
1135         https://bugs.webkit.org/show_bug.cgi?id=73308
1136
1137         Reviewed by Kent Tamura.
1138
1139         No new tests because this change contains no functional change.
1140
1141         * platform/network/chromium/SocketStreamHandle.h:
1142         * websockets/CloseEvent.h:
1143         * websockets/WebSocket.h:
1144         * websockets/WebSocketChannel.h:
1145         * websockets/WorkerThreadableWebSocketChannel.h:
1146
1147 2011-11-30  Mihnea Ovidenie  <mihnea@adobe.com>
1148
1149         [CSSRegions]Rename CSSRegionStyleRule to WebKitCSSRegionRule
1150         https://bugs.webkit.org/show_bug.cgi?id=73450
1151
1152         Reviewed by Andreas Kling.
1153
1154         No functionality changed so no new tests. The new name has the webkit prefix as required for new api.
1155
1156         * CMakeLists.txt:
1157         * GNUmakefile.list.am:
1158         * Target.pri:
1159         * WebCore.gypi:
1160         * WebCore.vcproj/WebCore.vcproj:
1161         * WebCore.xcodeproj/project.pbxproj:
1162         * css/CSSParser.cpp:
1163         (WebCore::CSSParser::createRegionStylingRule):
1164         * css/CSSRule.cpp:
1165         (WebCore::CSSRule::cssText):
1166         (WebCore::CSSRule::destroy):
1167         * css/CSSStyleSelector.cpp:
1168         (WebCore::CSSStyleSelector::addRegionStyleRule):
1169         (WebCore::CSSStyleSelector::checkRegionStyle):
1170         (WebCore::RuleSet::addRulesFromSheet):
1171         * css/CSSStyleSelector.h:
1172         * css/WebKitCSSRegionRule.cpp: Renamed from Source/WebCore/css/CSSRegionStyleRule.cpp.
1173         (WebCore::WebKitCSSRegionRule::WebKitCSSRegionRule):
1174         (WebCore::WebKitCSSRegionRule::~WebKitCSSRegionRule):
1175         (WebCore::WebKitCSSRegionRule::cssText):
1176         * css/WebKitCSSRegionRule.h: Renamed from Source/WebCore/css/CSSRegionStyleRule.h.
1177
1178 2011-11-30  Jeff Timanus  <twiz@chromium.org>
1179
1180         Alter an early return that was preventing HTMLCanvasElement::didDraw notifications
1181         from being triggered when accelerated compositing was enabled. The notification is
1182         necessary to make sure that any cached state is cleared in the HTMLCanvasElement object.
1183         To prevent performance regressions, the cached state is explicitly cleared, as the didDraw
1184         machinery is not necessary for accelerated canvases.
1185         https://bugs.webkit.org/show_bug.cgi?id=73257
1186
1187         Reviewed by Stephen White.
1188
1189         Test: fast/canvas/webgl/canvas-2d-webgl-texture.html
1190
1191         * html/HTMLCanvasElement.cpp:
1192         (WebCore::HTMLCanvasElement::didDraw):
1193         (WebCore::HTMLCanvasElement::setSurfaceSize):
1194         * html/canvas/CanvasRenderingContext2D.cpp:
1195         (WebCore::CanvasRenderingContext2D::didDraw):
1196
1197 2011-11-30  Kentaro Hara  <haraken@chromium.org>
1198
1199         Implement the StorageEvent constructor
1200         https://bugs.webkit.org/show_bug.cgi?id=71685
1201
1202         Reviewed by Adam Barth.
1203
1204         This patch makes StorageEvent constractable.
1205         The spec: http://www.whatwg.org/specs/web-apps/current-work/#storageevent
1206
1207         Test: fast/events/constructors/storage-event-constructor.html
1208
1209         * bindings/js/JSDictionary.cpp:
1210         (WebCore::JSDictionary::tryGetProperty):
1211         (WebCore::JSDictionary::convertValue): Returns a Storage object corresponding to a given key.
1212         * bindings/js/JSDictionary.h:
1213         (WebCore::JSDictionary::tryGetProperty):
1214         * bindings/v8/OptionsObject.cpp:
1215         (WebCore::OptionsObject::get): Ditto.
1216         * bindings/v8/OptionsObject.h:
1217         * storage/StorageEvent.cpp: Added an implementation of the StorageEvent constructor.
1218         (WebCore::StorageEventInit::StorageEventInit):
1219         (WebCore::StorageEvent::create):
1220         (WebCore::StorageEvent::StorageEvent):
1221         * storage/StorageEvent.h: Added a definition of StorageEventInit.
1222         (WebCore::StorageEvent::key):
1223         (WebCore::StorageEvent::oldValue):
1224         (WebCore::StorageEvent::newValue):
1225         (WebCore::StorageEvent::url):
1226         (WebCore::StorageEvent::storageArea):
1227         * storage/StorageEvent.idl: Added [ConstructorTemplate=Event] IDL.
1228
1229 2011-11-30  Naveen Bobbili  <qghc36@motorola.com>
1230
1231         window.getMatchedCSSRules() not supporting pseudo element
1232         https://bugs.webkit.org/show_bug.cgi?id=72930
1233
1234         Reviewed by Darin Adler.
1235
1236         Added functionality to retrieve CSS rules of psuedo elements using
1237         getMatchedCSSRules.
1238
1239         Test: fast/dom/Window/getMatchedCSSRules-with-pseudo-elements.html
1240
1241         * page/DOMWindow.cpp:
1242         (WebCore::DOMWindow::getMatchedCSSRules):
1243         Retreiving CSS Rules of the appropriate pseudo element.
1244
1245 2011-11-30  Grace Kloba  <klobag@chromium.org>
1246
1247         [chromium] TextureManager LRU list is not fully honor the order tiles are used
1248         https://bugs.webkit.org/show_bug.cgi?id=73344
1249
1250         Reviewed by James Robinson.
1251
1252         Reorder the texture in the LRU list only when protectTexture() is called.
1253
1254         * platform/graphics/chromium/TextureManager.cpp:
1255         (WebCore::TextureManager::hasTexture):
1256         (WebCore::TextureManager::protectTexture):
1257
1258 2011-11-30  Ken Buchanan <kenrb@chromium.org>
1259
1260         Crash from first letter text fragments having flows split
1261         https://bugs.webkit.org/show_bug.cgi?id=72759
1262
1263         Reviewed by David Hyatt.
1264
1265         When an inline flow is split that contains a first letter block
1266         and its remaining text, it can prevent the remaining text fragment
1267         from getting updated if the first letter block is replaced. This
1268         patch enables the text fragment to be found and updated properly.
1269
1270         * rendering/RenderBlock.cpp:
1271         (WebCore::RenderBlock::updateFirstLetterBlock):
1272
1273 2011-11-30  Takashi Toyoshima  <toyoshim@chromium.org>
1274
1275         Get rid of AllowCrossThreadAccess throughout ThreadableWebSocketChannelClientWrapper.
1276         https://bugs.webkit.org/show_bug.cgi?id=73336
1277
1278         Reviewed by David Levin.
1279
1280         No new tests because it contains no functional change.
1281
1282         * websockets/ThreadableWebSocketChannelClientWrapper.cpp:
1283         (WebCore::ThreadableWebSocketChannelClientWrapper::didConnect):
1284         (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveMessage):
1285         (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveBinaryData):
1286         (WebCore::ThreadableWebSocketChannelClientWrapper::didUpdateBufferedAmount):
1287         (WebCore::ThreadableWebSocketChannelClientWrapper::didStartClosingHandshake):
1288         (WebCore::ThreadableWebSocketChannelClientWrapper::didClose):
1289         (WebCore::ThreadableWebSocketChannelClientWrapper::didConnectCallback):
1290         (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveMessageCallback):
1291         (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveBinaryDataCallback):
1292         (WebCore::ThreadableWebSocketChannelClientWrapper::didUpdateBufferedAmountCallback):
1293         (WebCore::ThreadableWebSocketChannelClientWrapper::didStartClosingHandshakeCallback):
1294         (WebCore::ThreadableWebSocketChannelClientWrapper::didCloseCallback):
1295         * websockets/ThreadableWebSocketChannelClientWrapper.h:
1296
1297 2011-11-30  Leo Yang  <leo.yang@torchmobile.com.cn>
1298
1299         [BlackBerry] Add 2 cpp files to the BlackBerry build system
1300         https://bugs.webkit.org/show_bug.cgi?id=73408
1301
1302         platform/network/blackberry/DeferredData.cpp and platform/network/blackberry/NetworkJob.cpp
1303         will be added, change build system first.
1304
1305         Reviewed by Antonio Gomes.
1306
1307         * PlatformBlackBerry.cmake:
1308
1309 2011-11-30  Gregg Tavares  <gman@google.com>
1310
1311         Implement draft WEBGL_compressed_textures WebGL extension
1312         https://bugs.webkit.org/show_bug.cgi?id=72086
1313
1314         Reviewed by Kenneth Russell.
1315
1316         No new tests. Will write final test once on hardware.
1317
1318         * CMakeLists.txt:
1319         * DerivedSources.make:
1320         * GNUmakefile.list.am:
1321         * Target.pri:
1322         * WebCore.gypi:
1323         * WebCore.xcodeproj/project.pbxproj:
1324         * bindings/js/JSWebGLRenderingContextCustom.cpp:
1325         (WebCore::toJS):
1326         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
1327         (WebCore::toV8Object):
1328         * html/canvas/WebGLCompressedTextures.cpp: Added.
1329         (WebCore::WebGLCompressedTextures::WebGLCompressedTextures):
1330         (WebCore::WebGLCompressedTextures::~WebGLCompressedTextures):
1331         (WebCore::WebGLCompressedTextures::getName):
1332         (WebCore::WebGLCompressedTextures::create):
1333         (WebCore::WebGLCompressedTextures::supported):
1334         (WebCore::WebGLCompressedTextures::validateCompressedTexFormat):
1335         (WebCore::WebGLCompressedTextures::validateCompressedTexFuncData):
1336         (WebCore::WebGLCompressedTextures::validateCompressedTexSubDimensions):
1337         (WebCore::WebGLCompressedTextures::compressedTexImage2D):
1338         (WebCore::WebGLCompressedTextures::compressedTexSubImage2D):
1339         (WebCore::WebGLCompressedTextures::getCompressedTextureFormats):
1340         * html/canvas/WebGLCompressedTextures.h: Added.
1341         * html/canvas/WebGLCompressedTextures.idl: Added.
1342         * html/canvas/WebGLExtension.h:
1343         * html/canvas/WebGLRenderingContext.cpp:
1344         (WebCore::WebGLRenderingContext::getExtension):
1345         (WebCore::WebGLRenderingContext::getParameter):
1346         (WebCore::WebGLRenderingContext::getSupportedExtensions):
1347         * html/canvas/WebGLRenderingContext.h:
1348         * platform/graphics/Extensions3D.h:
1349         * platform/graphics/GraphicsContext3D.h:
1350         * platform/graphics/efl/GraphicsContext3DEfl.cpp:
1351         (WebCore::GraphicsContext3D::compressedTexImage2D):
1352         (WebCore::GraphicsContext3D::compressedTexSubImage2D):
1353         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
1354         (WebCore::GraphicsContext3D::compressedTexImage2D):
1355         (WebCore::GraphicsContext3D::compressedTexSubImage2D):
1356         * platform/graphics/qt/GraphicsContext3DQt.cpp:
1357         (WebCore::GraphicsContext3D::compressedTexImage2D):
1358         (WebCore::GraphicsContext3D::compressedTexSubImage2D):
1359
1360 2011-11-18  Nat Duca  <nduca@chromium.org>
1361
1362         [chromium] Enable threaded compositing via CCThreadProxy::hasThread only
1363         https://bugs.webkit.org/show_bug.cgi?id=70838
1364
1365         Reviewed by James Robinson.
1366
1367         * platform/graphics/chromium/LayerRendererChromium.cpp:
1368         (WebCore::LayerRendererChromium::initialize):
1369         * platform/graphics/chromium/WebGLLayerChromium.cpp:
1370         (WebCore::WebGLLayerChromium::layerRendererContext):
1371         * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
1372         (WebCore::CCHeadsUpDisplay::enabled):
1373         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
1374         (WebCore::CCLayerTreeHost::initialize):
1375         (WebCore::CCLayerTreeHost::context):
1376         (WebCore::CCLayerTreeHost::setNeedsAnimate):
1377         (WebCore::CCLayerTreeHost::setNeedsCommit):
1378         (WebCore::CCLayerTreeHost::setNeedsRedraw):
1379         (WebCore::CCLayerTreeHost::composite):
1380         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
1381         (WebCore::CCSettings::CCSettings):
1382         * platform/graphics/chromium/cc/CCProxy.cpp:
1383         (WebCore::CCProxy::isMainThread):
1384         (WebCore::CCProxy::isImplThread):
1385         (WebCore::CCProxy::setMainThreadIsImplThread):
1386         * platform/graphics/chromium/cc/CCProxy.h:
1387         * platform/graphics/chromium/cc/CCSingleThreadProxy.h:
1388         (WebCore::DebugScopedSetImplThread::DebugScopedSetImplThread):
1389         (WebCore::DebugScopedSetImplThread::~DebugScopedSetImplThread):
1390
1391 2011-11-30  Enrica Casucci  <enrica@apple.com>
1392
1393         Copy/paste of the same content produces increasingly nested markup
1394         https://bugs.webkit.org/show_bug.cgi?id=73497
1395         <rdar://problem/10208605>
1396         
1397         When pasting a fragment over a selection, we perfom a DeleteSelection command
1398         followed by a ReplaceSelection command. Delete selection preserves the style
1399         of the selection start, leaving all the blocks containing the insertion point.
1400         This patch eliminates all the nested divs that don't provide additional style,
1401         avoiding the proliferation of nested divs. 
1402
1403         Reviewed by Darin Adler.
1404
1405         Tests: editing/deleting/delete-and-cleanup.html
1406                editing/pasteboard/paste-without-nesting.html
1407
1408         * editing/DeleteSelectionCommand.cpp:
1409         (WebCore::DeleteSelectionCommand::removeRedundantBlocks):
1410         (WebCore::DeleteSelectionCommand::doApply):
1411         * editing/DeleteSelectionCommand.h:
1412
1413 2011-11-30  Dan Bernstein  <mitz@apple.com>
1414
1415         WebCore part of: Allow the length of a page along the pagination axis to differ from the length of the view
1416         https://bugs.webkit.org/show_bug.cgi?id=73476
1417
1418         Reviewed by Anders Carlsson.
1419
1420         * page/Page.cpp:
1421         (WebCore::Page::setPagination): Changed to use Pagination::operator==.
1422         * page/Page.h:
1423         (WebCore::Page::Pagination::Pagination): Added initializer for the new pageLength member variable.
1424         (WebCore::Page::Pagination::operator==): Added.
1425         * rendering/RenderBlock.cpp:
1426         (WebCore::RenderBlock::layoutColumns): Narrowed the scope of a local variable.
1427         * rendering/RenderBlock.h: Promoted setDesiredColumnCountAndWidth() from private to protected,
1428         allowing its use from RenderView::calcColumnWidth(). Made calcColumnWidth() virtual.
1429         * rendering/RenderView.cpp:
1430         (WebCore::RenderView::calcColumnWidth): Added. Uses the page length specified in the pagination
1431         parameters to set the column width, if pages are to be laid out one next to the other.
1432         (WebCore::RenderView::viewLogicalHeight): Added. Uses the page length specified in the pagination
1433         parameters as the height, if pages are to be laid out one after the other.
1434         * rendering/RenderView.h:
1435
1436 2011-11-30  Chris Fleizach  <cfleizach@apple.com>
1437
1438         AX: Nodes are reporting that focus can be set when they really can't
1439         https://bugs.webkit.org/show_bug.cgi?id=72791
1440
1441         Reviewed by Beth Dakin.
1442
1443         Whether focus can be set on a node shouldn't rely only on the role.
1444         It should depend on whether the node supports focus.
1445
1446         Test: platform/mac/accessibility/supports-focus-setting.html
1447
1448         * accessibility/AccessibilityRenderObject.cpp:
1449         (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
1450
1451 2011-11-30  Chris Fleizach  <cfleizach@apple.com>
1452
1453         WebKit does not send mouse down/up/click events to ARIA tabs
1454         https://bugs.webkit.org/show_bug.cgi?id=72573
1455
1456         Reviewed by Darin Adler.
1457
1458         There are a number of "control" type elements that should perform a click on the actual element.
1459
1460         Test: accessibility/press-works-on-control-types.html
1461
1462         * accessibility/AccessibilityRenderObject.cpp:
1463         (WebCore::AccessibilityRenderObject::actionElement):
1464
1465 2011-11-30  Chris Fleizach  <cfleizach@apple.com>
1466
1467         AX: Searching mechanism is too slow when finding the element.
1468         https://bugs.webkit.org/show_bug.cgi?id=72523
1469
1470         Reviewed by Beth Dakin.
1471
1472         This makes the element searching mechanism much faster. Previously, searching literally went 
1473         through every element, looking for the start element before "starting" the search.
1474
1475         Now we only go through the elements that need to be searched. This is done by going up the 
1476         start object parent chain. At each level, a DFS is done. As we go up the parent chain, 
1477         only the elements before/after the current element are examined.
1478
1479         * accessibility/AccessibilityObject.cpp:
1480         (WebCore::appendChildrenToArray):
1481         (WebCore::AccessibilityObject::findMatchingObjects):
1482
1483 2011-11-30  Ryosuke Niwa  <rniwa@webkit.org>
1484
1485         Cannot select RTL text inside LTR text from right to left by a mouse drag
1486         https://bugs.webkit.org/show_bug.cgi?id=73056
1487
1488         Reviewed by Eric Seidel.
1489
1490         The bug was caused by positionAtRightBoundaryOfBiDiRun using current inline box's offset
1491         even when creating a position with previous inline box. Fixed the bug by using the correct offset.
1492
1493         * editing/RenderedPosition.cpp:
1494         (WebCore::RenderedPosition::positionAtLeftBoundaryOfBiDiRun):
1495         (WebCore::RenderedPosition::positionAtRightBoundaryOfBiDiRun):
1496
1497 2011-11-30 Chris Fleizach  <cfleizach@apple.com>
1498
1499         AX: Searching mechanism gets stuck when searching tables
1500         https://bugs.webkit.org/show_bug.cgi?id=72519
1501
1502         When searching through the elements within a data table, the children() method should not
1503         be used, since that contains elements (like a table header column) which have the same children
1504         as the table itself. Instead the cells() should be searched.
1505
1506         Reviewed by Beth Dakin.
1507
1508         Test: platform/mac/accessibility/search-when-element-starts-in-table.html
1509
1510         * accessibility/AccessibilityObject.cpp:
1511         (WebCore::AccessibilityObject::findMatchingObjects):
1512
1513 2011-11-29  Ryosuke Niwa  <rniwa@webkit.org>
1514
1515         Assertion failure (m_nestedIsolateCount >= 1) in BidiResolver::exitIsolate()
1516         https://bugs.webkit.org/show_bug.cgi?id=69267
1517
1518         Reviewed by Eric Seidel.
1519
1520         The failure was caused by our updating bidi resolver's current position in layoutRunsAndFloatsInRange
1521         without updating the number of nested isolated ancestors. Fixed the bug by computing the number of
1522         isolated ancestors when setting a new position to the bidi resolver.
1523
1524         Also renamed the existing BidiResolver::setPosition to setPositionIgnoringNestedIsolates because this
1525         version can be used only when we don't have to update the number of nested isolates.
1526
1527         Tests: fast/text/bidi-isolate-hang-with-neutral-expected.html
1528                fast/text/bidi-isolate-hang-with-neutral.html
1529                fast/text/bidi-isolate-nextlinebreak-failure.html
1530
1531         * platform/graphics/GraphicsContext.cpp:
1532         (WebCore::GraphicsContext::drawBidiText):
1533         * platform/text/BidiResolver.h:
1534         (WebCore::BidiResolver::setPositionIgnoringNestedIsolates):
1535         (WebCore::BidiResolver::setPosition):
1536         * rendering/InlineIterator.h:
1537         (WebCore::numberOfIsolateAncestors): Takes InlineIterator instead of object and root.
1538         (WebCore::InlineBidiResolver::appendRun):
1539         * rendering/RenderBlockLineLayout.cpp:
1540         (WebCore::constructBidiRuns):
1541         (WebCore::RenderBlock::layoutRunsAndFloatsInRange):
1542         (WebCore::RenderBlock::determineStartPosition):
1543
1544 2011-11-30  Brent Fulgham  <bfulgham@webkit.org>
1545
1546         [WinCairo] Correct SimpleFontData implementation to match Apple results.
1547         https://bugs.webkit.org/show_bug.cgi?id=73474
1548
1549         Reviewed by Adam Roben.
1550
1551         Tested by existing dom/xhtml/level3/core/nodegetbaseuri05.xhtml
1552         and dom/xhtml/level3/core/nodegetbaseuri07.xhtml
1553
1554         * platform/graphics/SimpleFontData.h: Add declaration for new
1555           'ascentConsideringMacAscentHack' method.
1556         * platform/graphics/win/SimpleFontDataCGWin.cpp: Remove implementation
1557           of 'platformCharWidthInit' (moved to SimpleFontDataWin.cpp). Also
1558           use new 'ascentConsideringMacAscentHack' method.
1559         * platform/graphics/win/SimpleFontDataCairoWin.cpp: Remove dummy
1560           implementation.
1561         (WebCore::SimpleFontData::platformInit): Add logic to handle the
1562           'shouldApplyMacAscentHack' case, as well as to identify system font
1563           using the same criteria as the Apple port.
1564         (WebCore::SimpleFontData::platformWidthForGlyph): Add check for
1565           missing font data state.
1566         * platform/graphics/win/SimpleFontDataWin.cpp:
1567         (WebCore::SimpleFontData::ascentConsideringMacAscentHack): New
1568         (WebCore::SimpleFontData::platformCharWidthInit): Moved from the
1569           CG implementation.
1570
1571 2011-11-30  David Levin  <levin@chromium.org>
1572
1573         Make FrameView use TemporarilyChange in a few places.
1574         https://bugs.webkit.org/show_bug.cgi?id=73403
1575
1576         Reviewed by Dmitry Titov.
1577
1578         No new functionality exposed so no new tests.
1579
1580         * page/FrameView.cpp:
1581         (WebCore::FrameView::forceLayoutParentViewIfNeeded): Since this function isn't
1582         re-entrant, TemporarilyChange does the same thing but in a more robust manner
1583         in case there would be a return added in the function.
1584         (WebCore::FrameView::layout): This place is the key reason for the change.
1585         layout is re-entrant, but layout will set m_layoutSchedulingEnabled to true when
1586         leaving though the "layout" function higher in the stack would still have it set
1587         to false (which works ok but is hit by another change I'm working on).
1588         The majority of the change is due to indenting the code to make m_layoutSchedulingEnabled
1589         and TemporarilyChange behave like they did before. A few variables were moved before
1590         the scoping to allow them to be used after the scope is closed.
1591         (WebCore::FrameView::setScrollPosition): TemporarilyChange does exactly what
1592         this code did before (saving the old value and restoring it).
1593
1594 2011-11-30  Alejandro G. Castro  <alex@igalia.com>
1595
1596         [GTK] Add TextureMapperCairo boilerplate implementation
1597         https://bugs.webkit.org/show_bug.cgi?id=73440
1598
1599         Add TextureMapperCairo class and TextureMapper classes compilation
1600         for GTK+.
1601
1602         Reviewed by Martin Robinson.
1603
1604         * GNUmakefile.am:
1605         * GNUmakefile.list.am:
1606         * platform/graphics/GraphicsContext3D.h:
1607         * platform/graphics/GraphicsLayer.cpp:
1608         * platform/graphics/GraphicsLayer.h:
1609         * platform/graphics/cairo/GraphicsContext3DCairo.cpp:
1610         (WebCore::GraphicsContext3D::platformLayer):
1611         * platform/graphics/cairo/TextureMapperCairo.cpp: Added.
1612         (WebCore::BitmapTextureCairo::destroy):
1613         (WebCore::BitmapTextureCairo::size):
1614         (WebCore::BitmapTextureCairo::reset):
1615         (WebCore::BitmapTextureCairo::beginPaint):
1616         (WebCore::BitmapTextureCairo::endPaint):
1617         (WebCore::BitmapTextureCairo::updateContents):
1618         (WebCore::BitmapTextureCairo::save):
1619         (WebCore::BitmapTextureCairo::setContentsToImage):
1620         (WebCore::TextureMapperCairo::beginClip):
1621         (WebCore::TextureMapperCairo::endClip):
1622         (WebCore::TextureMapperCairo::viewportSize):
1623         (WebCore::TextureMapperCairo::TextureMapperCairo):
1624         (WebCore::TextureMapperCairo::setGraphicsContext):
1625         (WebCore::TextureMapperCairo::graphicsContext):
1626         (WebCore::TextureMapperCairo::bindSurface):
1627         (WebCore::TextureMapperCairo::drawTexture):
1628         (WebCore::TextureMapper::create):
1629         (WebCore::TextureMapperCairo::createTexture):
1630         (WebCore::BitmapTextureCairo::BitmapTextureCairo):
1631         (WebCore::TextureMapperCairo::beginPainting):
1632         (WebCore::TextureMapperCairo::endPainting):
1633         * platform/graphics/cairo/TextureMapperCairo.h: Added.
1634         (WebCore::BitmapTextureCairo::~BitmapTextureCairo):
1635         (WebCore::BitmapTextureCairo::isValid):
1636         (WebCore::BitmapTextureCairo::sourceRect):
1637         (WebCore::BitmapTextureCairo::pack):
1638         (WebCore::BitmapTextureCairo::unpack):
1639         (WebCore::BitmapTextureCairo::isPacked):
1640         (WebCore::BitmapTextureCairo::cr):
1641         (WebCore::TextureMapperCairo::allowSurfaceForRoot):
1642         (WebCore::TextureMapperCairo::create):
1643
1644 2011-11-30  Tim Horton  <timothy_horton@apple.com>
1645
1646         Implement CSS3 Images cross-fade() image function
1647         https://bugs.webkit.org/show_bug.cgi?id=52162
1648         <rdar://problem/10209254>
1649
1650         Reviewed by Simon Fraser.
1651
1652         Fix platform layering violation by moving CachedImage invalidation code into
1653         CSSCrossfadeValue (instead of CrossfadeGeneratedImage).
1654
1655         No new tests.
1656
1657         * css/CSSCrossfadeValue.cpp:
1658         (WebCore::loadSubimage):
1659         (WebCore::CSSCrossfadeValue::~CSSCrossfadeValue):
1660         (WebCore::CSSCrossfadeValue::customCssText):
1661         (WebCore::CSSCrossfadeValue::fixedSize):
1662         (WebCore::CSSCrossfadeValue::isPending):
1663         (WebCore::CSSCrossfadeValue::loadSubimages):
1664         (WebCore::CSSCrossfadeValue::image):
1665         (WebCore::CSSCrossfadeValue::CrossfadeSubimageObserverProxy::imageChanged):
1666         * css/CSSCrossfadeValue.h:
1667         (WebCore::CSSCrossfadeValue::create):
1668         (WebCore::CSSCrossfadeValue::setPercentage):
1669         (WebCore::CSSCrossfadeValue::CSSCrossfadeValue):
1670         (WebCore::CSSCrossfadeValue::CrossfadeSubimageObserverProxy::CrossfadeSubimageObserverProxy):
1671         (WebCore::CSSCrossfadeValue::CrossfadeSubimageObserverProxy::~CrossfadeSubimageObserverProxy):
1672         (WebCore::CSSCrossfadeValue::CrossfadeSubimageObserverProxy::setReady):
1673         * platform/graphics/CrossfadeGeneratedImage.cpp:
1674         (WebCore::CrossfadeGeneratedImage::CrossfadeGeneratedImage):
1675         (WebCore::CrossfadeGeneratedImage::drawCrossfade):
1676         (WebCore::CrossfadeGeneratedImage::drawPattern):
1677         * platform/graphics/CrossfadeGeneratedImage.h:
1678         (WebCore::CrossfadeGeneratedImage::create):
1679
1680 2011-11-30  Vsevolod Vlasov  <vsevik@chromium.org>
1681
1682         Web Inspector: [Regression] Successfully loaded XHRs are shown as canceled.
1683         https://bugs.webkit.org/show_bug.cgi?id=72873
1684
1685         Reviewed by Nate Chapin.
1686
1687         * loader/SubresourceLoader.cpp:
1688         (WebCore::SubresourceLoader::cancelIfNotFinishing):
1689         * loader/SubresourceLoader.h:
1690         * loader/cache/CachedRawResource.cpp:
1691         (WebCore::CachedRawResource::allClientsRemoved):
1692
1693 2011-11-30  Simon Hausmann  <simon.hausmann@nokia.com>
1694
1695         [V8] Make WebCoreTestingSupport::resetInternalsObject more robust
1696         https://bugs.webkit.org/show_bug.cgi?id=73437
1697
1698         Reviewed by Adam Barth.
1699
1700         The Qt DRT may end up calling resetInternalsObject at a time when
1701         there's no internals object yet. In that case the looking of the internals
1702         object in the global object fails and returns undefined. V8Internals::toNative
1703         doesn't handle that and causing failing assertions. This patch adds a simple
1704         check to handle this case.
1705
1706         * testing/v8/WebCoreTestSupport.cpp:
1707         (WebCoreTestSupport::resetInternalsObject):
1708
1709 2011-11-30  James Simonsen  <simonjam@chromium.org>
1710
1711         Fix valgrind issue in SubresourceLoader::didFinishLoading
1712         https://bugs.webkit.org/show_bug.cgi?id=72787
1713
1714         Hang on to CachedResource until finish() is called.
1715
1716         Reviewed by Nate Chapin.
1717
1718         Test: fast/loader/subresource-load-failed-crash.html (under asan)
1719
1720         * loader/SubresourceLoader.cpp:
1721         (WebCore::SubresourceLoader::didFinishLoading):
1722         (WebCore::SubresourceLoader::didFail):
1723
1724 2011-11-30  Tim Horton  <timothy_horton@apple.com>
1725
1726         feImage referencing a primitive draws incorrectly
1727         https://bugs.webkit.org/show_bug.cgi?id=71731
1728         <rdar://problem/10408178>
1729
1730         Reviewed by Simon Fraser.
1731
1732         If the target of an <feImage> appears to be a local fragment identifier, but
1733         it hasn't resolved yet, defer resolution instead of loading a bogus image.
1734
1735         Invalidate <feImage> if the xlink:href attribute changes.
1736
1737         Don't attempt to render an <feImage> if the referenced element is of size 0x0.
1738
1739         Tests: svg/filters/feImage-reference-invalidation.svg
1740                svg/filters/feImage-reference-svg-primitive.svg
1741                svg/filters/feImage-zero-size-crash.svg
1742
1743         * svg/SVGFEImageElement.cpp:
1744         (WebCore::SVGFEImageElement::parseMappedAttribute):
1745         (WebCore::SVGFEImageElement::build):
1746
1747 2011-11-30  Robin Dunn  <robin@alldunn.com>
1748
1749         [wx] Ensure we always notify the popup client that the popup
1750         was hidden, and fix handling of empty menu items.
1751         https://bugs.webkit.org/show_bug.cgi?id=73464
1752         
1753         Reviewed by Kevin Ollivier.
1754
1755         * platform/wx/PopupMenuWx.cpp:
1756         (WebCore::PopupMenuEventHandler::OnMenuItemSelected):
1757         (WebCore::PopupMenuWx::show):
1758
1759 2011-11-30  Tim Horton  <timothy_horton@apple.com>
1760
1761         dx causes non-BMP characters to fail to render
1762         https://bugs.webkit.org/show_bug.cgi?id=18039
1763         <rdar://problem/10422142>
1764
1765         Reviewed by Simon Fraser.
1766
1767         Don't split the surrogate pairs of non-BMP characters across
1768         elements of <text> positioning lists.
1769
1770         Test: svg/text/non-bmp-positioning-lists.svg
1771
1772         * rendering/svg/SVGTextLayoutAttributesBuilder.cpp:
1773         (WebCore::SVGTextLayoutAttributesBuilder::propagateLayoutAttributes):
1774
1775 2011-11-30  Robin Dunn  <robin@alldunn.com>
1776
1777         [wx] Add a scope for the raw bitmap access so that wx
1778         will not make a copy when creating the wxMemoryDC.
1779         https://bugs.webkit.org/show_bug.cgi?id=73461
1780         
1781         Reviewed By Kevin Ollivier.
1782
1783         * platform/wx/LocalDC.h:
1784         (WebCore::LocalDC::LocalDC):
1785
1786 2011-11-30  Vsevolod Vlasov  <vsevik@chromium.org>
1787
1788         Web Inspector: Inspect element does not highlight element in elements panel when inspector is opened.
1789         https://bugs.webkit.org/show_bug.cgi?id=73459
1790
1791         Reviewed by Pavel Feldman.
1792
1793         This regressed in r101503.
1794
1795         * inspector/InjectedScriptHost.cpp:
1796         (WebCore::InjectedScriptHost::InjectedScriptHost):
1797         (WebCore::InjectedScriptHost::disconnect):
1798         (WebCore::InjectedScriptHost::inspectImpl):
1799         * inspector/InjectedScriptHost.h:
1800         (WebCore::InjectedScriptHost::init):
1801         * inspector/InspectorAgent.cpp:
1802         (WebCore::InspectorAgent::enable):
1803         (WebCore::InspectorAgent::inspect):
1804         * inspector/InspectorAgent.h:
1805         * inspector/InspectorController.cpp:
1806         (WebCore::InspectorController::connectFrontend):
1807         (WebCore::InspectorController::disconnectFrontend):
1808         * inspector/WorkerInspectorController.cpp:
1809         (WebCore::WorkerInspectorController::connectFrontend):
1810         (WebCore::WorkerInspectorController::disconnectFrontend):
1811
1812 2011-11-30  Tony Chang  <tony@chromium.org>
1813
1814         Remove dead flexible box code
1815         https://bugs.webkit.org/show_bug.cgi?id=73377
1816
1817         Reviewed by Darin Adler.
1818
1819         We used to use these with an earlier version of the spec where margins
1820         set to auto were treated as flex(1).
1821
1822         No new tests, just removing some uncalled methods.
1823
1824         * rendering/RenderFlexibleBox.cpp:
1825         * rendering/RenderFlexibleBox.h:
1826
1827 2011-11-30  Antti Koivisto  <antti@apple.com>
1828
1829         Reuse cached style fully if the parent inherited styles are equal 
1830         https://bugs.webkit.org/show_bug.cgi?id=73421
1831
1832         Reviewed by Oliver Hunt.
1833
1834         The matched declaration cache currently restores the non-inherted properties from the cache
1835         entry but still applies all inherited properties normally. In case the current parent
1836         inherited style is equivalent to the cache entry's, also the inherited style can be reused
1837         and no properties need to be applied. This is faster and saves memory (by sharing the
1838         style substructures better).
1839         
1840         The new optimized code path has a pretty good hit rate, >50% of all cases on many pages.
1841         
1842         Loading the HTML5 spec this reduces style memory consumption by ~20% (5MB, ~2.5% of total) and 
1843         speeds up style applying by ~25% for ~0.4s (2-3%) gain in the spec loading benchmark.
1844         
1845         * css/CSSStyleSelector.cpp:
1846         (WebCore::CSSStyleSelector::applyDeclaration):
1847         (WebCore::CSSStyleSelector::applyDeclarations):
1848         
1849             Remove the code that dynamically disables inherited only applying. We now don't allow
1850             styles with explicitly inherited properties to be cached in the first place.
1851         
1852         (WebCore::CSSStyleSelector::findFromMatchedDeclarationCache):
1853         
1854             Return the full cache item.
1855         
1856         (WebCore::CSSStyleSelector::addToMatchedDeclarationCache):
1857         
1858             Also the parent style is now needed for the check for full sharing.
1859         
1860         (WebCore::isCacheableInMatchedDeclarationCache):
1861
1862             Don't allow styles with explicitly inherited properties to be cached at all.
1863         
1864         (WebCore::CSSStyleSelector::applyMatchedDeclarations):
1865         
1866             If the parent inherited styles are equal reuse the cache entry fully and return without
1867             doing anything else.
1868         
1869         * css/CSSStyleSelector.h:
1870         * rendering/style/RenderStyle.cpp:
1871         (WebCore::RenderStyle::inheritedDataShared):
1872         * rendering/style/RenderStyle.h:
1873         
1874             Add fast check for equal inherited properties.
1875
1876 2011-11-30  Renata Hodovan  <reni@webkit.org>
1877
1878         CG buildfix after r101517.
1879
1880         Rubber stamped by Zoltan Herczeg.
1881
1882         * rendering/svg/RenderSVGRect.cpp:
1883         (WebCore::RenderSVGRect::fillShape):
1884
1885 2011-11-30  Anna Cavender  <annacc@chromium.org>
1886
1887         Missing RuntimeEnabled check for <track>
1888         https://bugs.webkit.org/show_bug.cgi?id=73398
1889
1890         Reviewed by Eric Carlson.
1891
1892         No new tests. This fixes a problem when --enable-video-track is not used,
1893         but the tests use this flag.
1894
1895         * html/HTMLMediaElement.cpp:
1896         (WebCore::HTMLMediaElement::trackWillBeRemoved):
1897
1898 2011-11-30  Andrey Kosyakov  <caseq@chromium.org>
1899
1900         Web Inspector: [refactoring] do not clone nodes that contain linkified URLs
1901         https://bugs.webkit.org/show_bug.cgi?id=73323
1902
1903         Reviewed by Pavel Feldman.
1904
1905         * inspector/front-end/StylesSidebarPane.js:
1906         (WebInspector.StylePropertiesSection):
1907         (WebInspector.StylePropertiesSection.prototype._createRuleOriginNode):
1908         (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted.successCallback):
1909         (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted):
1910         (WebInspector.ComputedStylePropertiesSection.prototype.rebuildComputedTrace):
1911         (WebInspector.BlankStylePropertiesSection.prototype.makeNormal):
1912         * inspector/front-end/elementsPanel.css:
1913         (.styles-section a[data-uncopyable]):
1914         (.styles-section a[data-uncopyable]::before):
1915
1916 2011-11-30  Renata Hodovan  <reni@webkit.org>
1917
1918         Add new renderer for SVGRectElement.
1919         https://bugs.webkit.org/show_bug.cgi?id=65769
1920
1921         Reviewed by Nikolas Zimmermann.
1922
1923         This patch introduces a new common base class called RenderSVGShape which
1924         replaces the RenderSVGPath. This new base class has the same purpose
1925         as the replaced class and has specialized descendants for common
1926         shapes (like Rectangles and Circles), which allows faster painting
1927         of these shapes when certain conditions are fulfilled. On some
1928         benchmark programs we have seen 5% speedup.
1929
1930         The biggest motivation of this refactor is taking advantage
1931         of faster primitive drawing in the most common and frequent
1932         cases. However in some rare cases, like painting rounded
1933         rects, we need to fallback to the original code path, which
1934         is fully kept in the RenderSVGShape base class. Some other
1935         cases, like dashed strokes, can be painted but mouse pointer
1936         events cannot be handled by the descendant classes. A different
1937         fallback mechanism is used in such cases which redirects
1938         only the pointer event handling to the base class.
1939
1940         Tests: svg/custom/pointer-events-on-rounded-rect.xhtml
1941                svg/custom/pointer-events-with-linecaps-and-miterlimits.xhtml
1942
1943         * CMakeLists.txt:
1944         * GNUmakefile.list.am:
1945         * WebCore.gypi:
1946         * WebCore.pro:
1947         * WebCore.vcproj/WebCore.vcproj:
1948         * platform/graphics/FloatRect.cpp:
1949         (WebCore::FloatRect::contains):
1950         * platform/graphics/FloatRect.h:
1951         (WebCore::FloatRect::contains):
1952         * rendering/RenderObject.h:
1953         (WebCore::RenderObject::isSVGRect):
1954         (WebCore::RenderObject::isSVGShape):
1955         * rendering/RenderTreeAsText.cpp:
1956         (WebCore::write):
1957         * rendering/svg/RenderSVGAllInOne.cpp:
1958         * rendering/svg/RenderSVGModelObject.cpp:
1959         (WebCore::isGraphicsElement):
1960         * rendering/svg/RenderSVGPath.cpp:
1961         (WebCore::RenderSVGPath::RenderSVGPath):
1962         (WebCore::RenderSVGPath::inflateWithStrokeAndMarkerBounds): Unite the markerBounds with strokeBoundingBox.
1963         * rendering/svg/RenderSVGPath.h:
1964         * rendering/svg/RenderSVGRect.cpp: Added.
1965         (WebCore::RenderSVGRect::RenderSVGRect):
1966         (WebCore::RenderSVGRect::~RenderSVGRect):
1967         (WebCore::RenderSVGRect::createShape):
1968         (WebCore::RenderSVGRect::objectBoundingBox):
1969         (WebCore::RenderSVGRect::strokeBoundingBox):
1970         (WebCore::RenderSVGRect::fillShape):
1971         (WebCore::RenderSVGRect::strokeShape):
1972         (WebCore::RenderSVGRect::shapeDependentStrokeContains):
1973         (WebCore::RenderSVGRect::shapeDependentFillContains):
1974         * rendering/svg/RenderSVGRect.h: Added.
1975         (WebCore::RenderSVGRect::isSVGRect):
1976         (WebCore::RenderSVGRect::renderName):
1977         (WebCore::RenderSVGRect::isEmpty):
1978         * rendering/svg/RenderSVGResource.h:
1979         (WebCore::RenderSVGResource::postApplyResource): A new shape argument was added to allow shape specific faster painting.
1980         * rendering/svg/RenderSVGResourceClipper.cpp:
1981         (WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage):
1982         (WebCore::RenderSVGResourceClipper::calculateClipContentRepaintRect):
1983         (WebCore::RenderSVGResourceClipper::hitTestClipContent):
1984         * rendering/svg/RenderSVGResourceContainer.cpp:
1985         (WebCore::RenderSVGResourceContainer::transformOnNonScalingStroke):
1986         * rendering/svg/RenderSVGResourceFilter.cpp:
1987         (WebCore::RenderSVGResourceFilter::postApplyResource):
1988         * rendering/svg/RenderSVGResourceFilter.h:
1989         * rendering/svg/RenderSVGResourceGradient.cpp:
1990         (WebCore::RenderSVGResourceGradient::applyResource):
1991         * rendering/svg/RenderSVGResourceGradient.h:
1992         * rendering/svg/RenderSVGResourcePattern.cpp:
1993         (WebCore::RenderSVGResourcePattern::postApplyResource):
1994         * rendering/svg/RenderSVGResourcePattern.h:
1995         * rendering/svg/RenderSVGResourceSolidColor.cpp:
1996         (WebCore::RenderSVGResourceSolidColor::postApplyResource):
1997         * rendering/svg/RenderSVGResourceSolidColor.h:
1998         * rendering/svg/RenderSVGShape.cpp: Copied from Source/WebCore/rendering/svg/RenderSVGPath.cpp.
1999         (WebCore::RenderSVGShape::RenderSVGShape):
2000         (WebCore::RenderSVGShape::~RenderSVGShape):
2001         (WebCore::RenderSVGShape::createShape):
2002         (WebCore::RenderSVGShape::isEmpty):
2003         (WebCore::RenderSVGShape::fillShape):
2004         (WebCore::RenderSVGShape::objectBoundingBox):
2005         (WebCore::RenderSVGShape::strokeBoundingBox):
2006         (WebCore::RenderSVGShape::strokeShape):
2007         (WebCore::RenderSVGShape::shapeDependentStrokeContains):
2008         The purpose of this virtual function allows decendants to use their own fast checks.
2009         (WebCore::RenderSVGShape::shapeDependentFillContains):
2010         The purpose of this virtual function allows decendants to use their own fast checks.
2011         (WebCore::RenderSVGShape::fillContains):
2012         (WebCore::RenderSVGShape::strokeContains):
2013         (WebCore::RenderSVGShape::layout):
2014         (WebCore::RenderSVGShape::shouldStrokeZeroLengthSubpath):
2015         (WebCore::RenderSVGShape::zeroLengthSubpathRect):
2016         (WebCore::RenderSVGShape::setupSquareCapPath):
2017         (WebCore::RenderSVGShape::setupNonScalingStrokePath):
2018         (WebCore::RenderSVGShape::fillAndStrokePath):
2019         (WebCore::RenderSVGShape::paint):
2020         (WebCore::RenderSVGShape::addFocusRingRects):
2021         (WebCore::RenderSVGShape::nodeAtFloatPoint):
2022         (WebCore::RenderSVGShape::calculateMarkerBoundsIfNeeded):
2023         (WebCore::RenderSVGShape::updateCachedBoundaries):
2024         (WebCore::RenderSVGShape::strokeWidth):
2025         * rendering/svg/RenderSVGShape.h: Copied from Source/WebCore/rendering/svg/RenderSVGPath.h.
2026         (WebCore::BoundingRectStrokeStyleApplier::BoundingRectStrokeStyleApplier):
2027         (WebCore::BoundingRectStrokeStyleApplier::strokeStyle):
2028         (WebCore::RenderSVGShape::setNeedsShapeUpdate):
2029         (WebCore::RenderSVGShape::setNeedsBoundariesUpdate):
2030         (WebCore::RenderSVGShape::setNeedsTransformUpdate):
2031         (WebCore::RenderSVGShape::isPaintingFallback):
2032         (WebCore::RenderSVGShape::path):
2033         (WebCore::RenderSVGShape::setIsPaintingFallback):
2034         (WebCore::RenderSVGShape::setStrokeAndMarkerBoundingBox):
2035         (WebCore::RenderSVGShape::hasPath):
2036         (WebCore::RenderSVGShape::repaintRectInLocalCoordinates):
2037         (WebCore::RenderSVGShape::localToParentTransform):
2038         (WebCore::RenderSVGShape::localTransform):
2039         (WebCore::RenderSVGShape::isSVGShape):
2040         (WebCore::RenderSVGShape::renderName):
2041         (WebCore::RenderSVGShape::isRoundedRect):
2042         (WebCore::RenderSVGShape::inflateWithMarkerBounds):
2043         (WebCore::toRenderSVGShape):
2044         * rendering/svg/SVGInlineTextBox.cpp:
2045         (WebCore::SVGInlineTextBox::releasePaintingResource):
2046         * rendering/svg/SVGRenderSupport.cpp:
2047         (WebCore::SVGRenderSupport::finishRenderSVGContent):
2048         (WebCore::SVGRenderSupport::layoutChildren):
2049         * rendering/svg/SVGRenderTreeAsText.cpp:
2050         (WebCore::writeStyle):
2051         (WebCore::operator<<):
2052         (WebCore::write):
2053         * rendering/svg/SVGRenderTreeAsText.h:
2054         * rendering/svg/SVGTextRunRenderingContext.cpp:
2055         (WebCore::SVGTextRunRenderingContext::drawSVGGlyphs):
2056         * svg/SVGCircleElement.cpp:
2057         (WebCore::SVGCircleElement::svgAttributeChanged):
2058         * svg/SVGEllipseElement.cpp:
2059         (WebCore::SVGEllipseElement::svgAttributeChanged):
2060         * svg/SVGLineElement.cpp:
2061         (WebCore::SVGLineElement::svgAttributeChanged):
2062         * svg/SVGPathElement.cpp:
2063         (WebCore::SVGPathElement::svgAttributeChanged):
2064         (WebCore::SVGPathElement::pathSegListChanged):
2065         (WebCore::SVGPathElement::createRenderer):
2066         * svg/SVGPathElement.h:
2067         * svg/SVGPolyElement.cpp:
2068         (WebCore::SVGPolyElement::svgAttributeChanged):
2069         * svg/SVGRectElement.cpp:
2070         (WebCore::SVGRectElement::svgAttributeChanged):
2071         (WebCore::SVGRectElement::createRenderer):
2072         * svg/SVGRectElement.h:
2073
2074 2011-11-30  Adam Roben  <aroben@apple.com>
2075
2076         Another Clang build fix after r101507
2077
2078         * platform/network/SocketStreamHandleClient.h:
2079         (WebCore::SocketStreamHandleClient::didUpdateBufferedAmount): Removed unused parameter.
2080
2081 2011-11-30  Renata Hodovan  <reni@webkit.org>
2082
2083         MAC build fix after r101507.
2084
2085         Rubber stamped by Csaba Osztrogonac.
2086
2087         * platform/network/SocketStreamHandleClient.h:
2088         (WebCore::SocketStreamHandleClient::didUpdateBufferedAmount):
2089         * websockets/WebSocket.cpp:
2090         (WebCore::WebSocket::didUpdateBufferedAmount):
2091         * websockets/WebSocket.h:
2092         * websockets/WebSocketChannel.cpp:
2093         (WebCore::WebSocketChannel::didUpdateBufferedAmount):
2094         * websockets/WebSocketChannel.h:
2095
2096 2011-11-30  John Knottenbelt  <jknotten@chromium.org>
2097
2098         Remove unnecessary asserts in HTMLTextAreaElement.
2099         https://bugs.webkit.org/show_bug.cgi?id=73135
2100
2101         http://code.google.com/p/chromium/issues/detail?id=103228 shows
2102         that sometimes we are hitting the following assert in
2103         HTMLTextAreaElement::updateFocusAppearance:
2104
2105         ASSERT(!document()->childNeedsAndNotInStyleRecalc());
2106
2107         This assert was added by https://bugs.webkit.org/show_bug.cgi?id=27474
2108         as part of a fix for a crash when the selection is set immediately
2109         after setting display:none.
2110
2111         All the methods called by updateFocusAppearance already handle the
2112         case of the document having the childNeedsStyleRecalc flag set, so
2113         this assert is unnecessary. The ASSERT(renderer()) is similarly
2114         redundant.
2115
2116         Reviewed by Kent Tamura.
2117
2118         * html/HTMLTextAreaElement.cpp:
2119         (WebCore::HTMLTextAreaElement::updateFocusAppearance):
2120
2121 2011-11-30  Adam Roben  <aroben@apple.com>
2122
2123         Clang build fix after r101507
2124
2125         * websockets/WebSocketChannelClient.h:
2126         (WebCore::WebSocketChannelClient::didUpdateBufferedAmount): Removed unused parameter.
2127
2128 2011-11-30  Nikita Vasilyev  <me@elv1s.ru>
2129
2130         Web Inspector: Preserve an indentation level when inserting a new line
2131         https://bugs.webkit.org/show_bug.cgi?id=71625
2132
2133         Indent one level more when a line ends with either "{", "[" or "(".
2134
2135         Reviewed by Pavel Feldman.
2136
2137         * inspector/front-end/TextEditorModel.js:
2138         (WebInspector.TextRange.prototype.collapseToEnd):
2139         (WebInspector.TextRange.prototype.normalize):
2140         * inspector/front-end/TextViewer.js:
2141         (WebInspector.TextViewer.prototype._registerShortcuts):
2142         (WebInspector.TextViewer.prototype._handleKeyDown):
2143         (WebInspector.TextEditorMainPanel.prototype.handleEnterKey):
2144         (WebInspector.TextEditorMainPanel.prototype._getSelection):
2145
2146 2011-11-30  Alexander Pavlov  <apavlov@chromium.org>
2147
2148         Web Inspector: Display of data URIs cumbersome in the Elements panel
2149         https://bugs.webkit.org/show_bug.cgi?id=73438
2150
2151         Reviewed by Pavel Feldman.
2152
2153         * inspector/front-end/ElementsTreeOutline.js:
2154         (WebInspector.ElementsTreeElement.prototype._buildAttributeDOM):
2155
2156 2011-11-28  Vsevolod Vlasov  <vsevik@chromium.org>
2157
2158         Web Inspector: TreeOutline elements should be formatted using margin-left instead of text-indent.
2159         https://bugs.webkit.org/show_bug.cgi?id=73234
2160
2161         Reviewed by Pavel Feldman.
2162
2163         * inspector/front-end/ResourceHeadersView.js:
2164         (WebInspector.ResourceHeadersView.prototype._refreshHeadersText):
2165         * inspector/front-end/ResourcesPanel.js:
2166         (WebInspector.BaseStorageTreeElement.prototype.get searchMatchesCount):
2167         * inspector/front-end/auditsPanel.css:
2168         (.audit-result-tree li):
2169         (.audit-result-tree li.parent):
2170         (.audit-result img):
2171         * inspector/front-end/inspector.css:
2172         (.outline-disclosure li):
2173         (.outline-disclosure li.parent):
2174         * inspector/front-end/networkPanel.css:
2175         * inspector/front-end/resourcesPanel.css:
2176         (.resources.panel .sidebar-resizer-vertical):
2177         (.resources.panel .sidebar li):
2178         * inspector/front-end/treeoutline.js:
2179         (TreeElement.prototype.isEventWithinDisclosureTriangle):
2180
2181 2011-11-30  Kentaro Hara  <haraken@chromium.org>
2182
2183         Implement the [NamedConstructor] IDL in CodeGeneratorJS.pm
2184         https://bugs.webkit.org/show_bug.cgi?id=73307
2185
2186         Reviewed by Adam Barth.
2187
2188         This patch implements the [NamedConstructor] IDL for JSC.
2189         The spec: http://www.w3.org/TR/WebIDL/#NamedConstructor
2190
2191         Tests: bindings/scripts/test/JS/JSTestNamedConstructor.idl
2192
2193         * bindings/scripts/CodeGeneratorJS.pm:
2194         (GenerateHeader): Removed unnecessary conditions '$dataNode->extendedAttributes->{"JSCustomConstructor"} || $dataNode->extendedAttributes->{"CustomConstructor"}'.
2195         (GenerateImplementation): Calls GenerateConstructorDefinition() to generate a NamedConstructor.
2196         (GenerateConstructorDeclaration): Generates a header for a NamedConstructor.
2197         (GenerateConstructorDefinition): Generates a NamedConstructor implementation and getConstructData() for the NamedConstructor.
2198         (IsConstructable): Added a NamedConstructor condition.
2199
2200         * bindings/scripts/test/JS/JSTestNamedConstructor.cpp: Updated a run-bindings-tests result.
2201         (WebCore::JSTestNamedConstructorNamedConstructor::JSTestNamedConstructorNamedConstructor):
2202         (WebCore::JSTestNamedConstructorNamedConstructor::finishCreation):
2203         (WebCore::JSTestNamedConstructorNamedConstructor::constructJSTestNamedConstructor):
2204         (WebCore::JSTestNamedConstructorNamedConstructor::getConstructData):
2205         * bindings/scripts/test/JS/JSTestNamedConstructor.h: Ditto.
2206         (WebCore::JSTestNamedConstructorNamedConstructor::create):
2207         (WebCore::JSTestNamedConstructorNamedConstructor::createStructure):
2208
2209 2011-11-30  Takashi Toyoshima  <toyoshim@chromium.org>
2210
2211         Add didUpdateBufferedAmount() callback to SocketStreamHandleClient
2212         and WebSocketChannelClient.
2213         https://bugs.webkit.org/show_bug.cgi?id=73290
2214
2215         Reviewed by Kent Tamura.
2216
2217         No new tests because this callback is not used in WebCore.
2218
2219         * platform/network/SocketStreamHandleBase.cpp: Invoke new callback.
2220         (WebCore::SocketStreamHandleBase::send):
2221         (WebCore::SocketStreamHandleBase::sendPendingData):
2222         * platform/network/SocketStreamHandleBase.h: Change returning value type.
2223         (WebCore::SocketStreamHandleBase::bufferedAmount):
2224         * platform/network/SocketStreamHandleClient.h: Add new callback definition.
2225         (WebCore::SocketStreamHandleClient::didUpdateBufferedAmount):
2226         * websockets/ThreadableWebSocketChannelClientWrapper.cpp: Add new callback handling.
2227         (WebCore::ThreadableWebSocketChannelClientWrapper::didUpdateBufferedAmount):
2228         (WebCore::ThreadableWebSocketChannelClientWrapper::didUpdateBufferedAmountCallback):
2229         * websockets/ThreadableWebSocketChannelClientWrapper.h: Add new callback inheritance and its helper method.
2230         * websockets/WebSocket.cpp: Add new callback handling.
2231         (WebCore::WebSocket::didUpdateBufferedAmount):
2232         * websockets/WebSocket.h: Add new callback inheritance.
2233         * websockets/WebSocketChannel.cpp: Add new callback handling.
2234         (WebCore::WebSocketChannel::didUpdateBufferedAmount):
2235         * websockets/WebSocketChannel.h: Add new callback inheritacne.
2236         * websockets/WebSocketChannelClient.h: Add new callback definition.
2237         (WebCore::WebSocketChannelClient::didUpdateBufferedAmount):
2238         * websockets/WorkerThreadableWebSocketChannel.cpp: Add new callback handling.
2239         (WebCore::workerContextDidUpdateBufferedAmount):
2240         (WebCore::WorkerThreadableWebSocketChannel::Peer::didUpdateBufferedAmount):
2241         * websockets/WorkerThreadableWebSocketChannel.h: Add new callback inheritance and its helper method.
2242
2243 2011-11-30  Kentaro Hara  <haraken@chromium.org>
2244
2245         [Refactoring] In preprocessor.pm, remove double quotations from $defines
2246         https://bugs.webkit.org/show_bug.cgi?id=73160
2247
2248         Reviewed by Adam Barth.
2249
2250         In preprocessor.pm, we need to extract gcc macros from $defines.
2251         $defines can contain unnecessary double quotations.
2252         For example, if $defines is ' "A=1" "B=1" C=1 ""    D  ',
2253         then it should be converted into four macros, -DA=1, -DB=1, -DC=1 and -DD.
2254         This patch refactors the logic in preprocessor.pm.
2255
2256         No new tests. No change in behavior.
2257
2258         * bindings/scripts/generate-bindings.pl: Removed a code for $defines conversion, since it is now done in preprocessor.pm.
2259         * bindings/scripts/preprocessor.pm:
2260         (applyPreprocessor):
2261
2262 2011-11-30  Kenichi Ishibashi  <bashi@chromium.org>
2263
2264         @font-face: unquoted local font names containing spaces don't work
2265         https://bugs.webkit.org/show_bug.cgi?id=64783
2266
2267         Allows local font names with spaces.
2268         Rejects the src descriptor if there is invalid identifiers in local(), as the same as Firefox.
2269
2270         Reviewed by Ryosuke Niwa.
2271
2272         Tests: fast/css/font-face-unquoted-local-expected.html
2273                fast/css/font-face-unquoted-local.html
2274
2275         * css/CSSParser.cpp:
2276         (WebCore::parseFontFaceSrcFunction): Added. Treats multiple identifiers in local() as a font name separated by spaces.
2277         (WebCore::CSSParser::parseFontFaceSrc): Moved the code block which parses local() and format() to parseFontFaceSrcFunction().
2278
2279 2011-11-30  Pavel Feldman  <pfeldman@google.com>
2280
2281         Web Inspector: get rid of deferred backend->front-end commands processing.
2282         https://bugs.webkit.org/show_bug.cgi?id=73439
2283
2284         We should issue tests upon InspectorAgent::enable and should not do any deferred command processing.
2285
2286         Reviewed by Yury Semikhatsky.
2287
2288         * inspector/InspectorAgent.cpp:
2289         (WebCore::InspectorAgent::InspectorAgent):
2290         (WebCore::InspectorAgent::setFrontend):
2291         (WebCore::InspectorAgent::clearFrontend):
2292         (WebCore::InspectorAgent::enable):
2293         (WebCore::InspectorAgent::evaluateForTestInFrontend):
2294         * inspector/InspectorAgent.h:
2295         * inspector/front-end/inspector.js:
2296
2297 2011-11-30  Andreas Kling  <kling@webkit.org>
2298
2299         REGRESSION(r101172): It made fast/dom/clone-node-style.html assert.
2300         <http://webkit.org/b/73227>
2301
2302         Reviewed by Antti Koivisto.
2303
2304         r101172 inadvertently introduced a default assignment operator for CSSElementStyleDeclaration
2305         which caused StyledElement::copyNonAttributeProperties() to associate the element's inline
2306         style declaration with the element being cloned.
2307
2308         Replace CSSMutableStyleDeclaration::operator= by copyPropertiesAndStrictnessFrom()
2309         that matches the old behavior.
2310
2311         * css/CSSMutableStyleDeclaration.cpp:
2312         (WebCore::CSSMutableStyleDeclaration::copyPropertiesAndStrictnessFrom):
2313         * css/CSSMutableStyleDeclaration.h:
2314         * dom/StyledElement.cpp:
2315         (WebCore::StyledElement::copyNonAttributeProperties):
2316
2317 2011-11-30  Mary Wu  <mary.wu@torchmobile.com.cn>
2318
2319         remove buildinformation from BlackBerry porting build system
2320         https://bugs.webkit.org/show_bug.cgi?id=73276
2321
2322         Reviewed by Daniel Bates.
2323
2324         * PlatformBlackBerry.cmake: remove generated files BuildInformation.cpp/.h
2325
2326 2011-11-30  Luke Macpherson   <macpherson@chromium.org>
2327
2328         Implement Zoom Property in CSSSStyleApplyProperty.
2329         https://bugs.webkit.org/show_bug.cgi?id=72840
2330
2331         Reviewed by Andreas Kling.
2332
2333         Covered by fast/css/*zoom*.html
2334
2335         * css/CSSStyleApplyProperty.cpp:
2336         Add new handler for zoom property (based on existing code from CSSStyleSelector.cpp)
2337         (WebCore::ApplyPropertyZoom::resetEffectiveZoom):
2338         (WebCore::ApplyPropertyZoom::applyInheritValue):
2339         (WebCore::ApplyPropertyZoom::applyInitialValue):
2340         (WebCore::ApplyPropertyZoom::applyValue):
2341         (WebCore::ApplyPropertyZoom::createHandler):
2342         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
2343         * css/CSSStyleSelector.cpp:
2344         Remove existing implementation.
2345         (WebCore::CSSStyleSelector::applyProperty):
2346         * css/CSSStyleSelector.h:
2347         (WebCore::CSSStyleSelector::document):
2348         Add getter for Document.
2349
2350 2011-11-30  David Reveman  <reveman@chromium.org>
2351
2352         [Chromium] Re-enable layer anti-aliasing on ChromeOS.
2353         https://bugs.webkit.org/show_bug.cgi?id=73361
2354
2355         Reviewed by James Robinson.
2356
2357         Anti-aliasing should be enabled by default on ChromeOS.
2358
2359         No new tests.
2360
2361         * platform/graphics/chromium/cc/CCRenderSurface.cpp:
2362         (WebCore::CCRenderSurface::drawLayer):
2363         * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
2364         (WebCore::CCTiledLayerImpl::draw):
2365
2366 2011-11-30  Michael Nordman  <michaeln@google.co>
2367
2368         [chromium] WebSQLDatabase could use some better error reporting.
2369         Instruments the database classes to report errors to a DatabaseObserver.
2370         https://bugs.webkit.org/show_bug.cgi?id=73258
2371
2372         Reviewed by David Levin.
2373
2374         No new tests, no content observable artifacts.
2375
2376         * storage/AbstractDatabase.cpp:
2377         (WebCore::AbstractDatabase::AbstractDatabase):
2378         (WebCore::AbstractDatabase::performOpenAndVerify):
2379         (WebCore::AbstractDatabase::incrementalVacuumIfNeeded):
2380         (WebCore::AbstractDatabase::reportOpenDatabaseResult):
2381         (WebCore::AbstractDatabase::reportChangeVersionResult):
2382         (WebCore::AbstractDatabase::reportStartTransactionResult):
2383         (WebCore::AbstractDatabase::reportCommitTransactionResult):
2384         (WebCore::AbstractDatabase::reportExecuteStatementResult):
2385         (WebCore::AbstractDatabase::reportVacuumDatabaseResult):
2386         * storage/AbstractDatabase.h:
2387         (WebCore::AbstractDatabase::isSyncDatabase):
2388         * storage/ChangeVersionWrapper.cpp:
2389         (WebCore::ChangeVersionWrapper::performPreflight):
2390         (WebCore::ChangeVersionWrapper::performPostflight):
2391         * storage/Database.cpp:
2392         (WebCore::Database::Database):
2393         * storage/DatabaseSync.cpp:
2394         (WebCore::DatabaseSync::DatabaseSync):
2395         (WebCore::DatabaseSync::changeVersion):
2396         * storage/SQLStatement.cpp:
2397         (WebCore::SQLStatement::execute):
2398         (WebCore::SQLStatement::setDatabaseDeletedError):
2399         (WebCore::SQLStatement::setVersionMismatchedError):
2400         (WebCore::SQLStatement::setFailureDueToQuota):
2401         * storage/SQLStatement.h:
2402         * storage/SQLTransaction.cpp:
2403         (WebCore::SQLTransaction::executeSQL):
2404         (WebCore::SQLTransaction::openTransactionAndPreflight):
2405         (WebCore::SQLTransaction::deliverTransactionCallback):
2406         (WebCore::SQLTransaction::runCurrentStatement):
2407         (WebCore::SQLTransaction::handleCurrentStatementError):
2408         (WebCore::SQLTransaction::deliverStatementCallback):
2409         (WebCore::SQLTransaction::postflightAndCommit):
2410         * storage/SQLTransactionSync.cpp:
2411         (WebCore::SQLTransactionSync::begin):
2412         (WebCore::SQLTransactionSync::commit):
2413         * storage/chromium/DatabaseObserver.h:
2414
2415 2011-11-30  Rafael Weinstein  <rafaelw@chromium.org>
2416
2417         [MutationObservers] V8 bindings don't properly wrap all calls into JS
2418         https://bugs.webkit.org/show_bug.cgi?id=72063
2419
2420         Reviewed by Adam Barth.
2421
2422         This patch changes cleans up script invocation in V8Proxy. It removes callFunctionWithoutFrame
2423         and changes callers to simply call instrumentedFunctionCall with a null Page. Also, it implements
2424         the non-static callFunction to be implemented in terms of instrumentedFunctionCall.
2425
2426         No new tests.
2427
2428         * bindings/v8/ScriptFunctionCall.cpp:
2429         (WebCore::ScriptCallback::call):
2430         * bindings/v8/V8NodeFilterCondition.cpp:
2431         (WebCore::V8NodeFilterCondition::acceptNode):
2432         * bindings/v8/V8Proxy.cpp:
2433         (WebCore::V8Proxy::callFunction):
2434         (WebCore::V8Proxy::instrumentedCallFunction):
2435         * bindings/v8/V8Proxy.h:
2436         * bindings/v8/custom/V8CustomXPathNSResolver.cpp:
2437         (WebCore::V8CustomXPathNSResolver::lookupNamespaceURI):
2438
2439 2011-11-30  Sheriff Bot  <webkit.review.bot@gmail.com>
2440
2441         Unreviewed, rolling out r101440 and r101442.
2442         http://trac.webkit.org/changeset/101440
2443         http://trac.webkit.org/changeset/101442
2444         https://bugs.webkit.org/show_bug.cgi?id=73429
2445
2446         multiple crashes on layout tests (Requested by hayato on
2447         #webkit).
2448
2449         * platform/graphics/chromium/LayerRendererChromium.cpp:
2450         (WebCore::LayerRendererChromium::initialize):
2451         * platform/graphics/chromium/WebGLLayerChromium.cpp:
2452         (WebCore::WebGLLayerChromium::layerRendererContext):
2453         * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
2454         (WebCore::CCHeadsUpDisplay::enabled):
2455         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
2456         (WebCore::CCLayerTreeHost::CCLayerTreeHost):
2457         (WebCore::CCLayerTreeHost::initialize):
2458         (WebCore::CCLayerTreeHost::~CCLayerTreeHost):
2459         (WebCore::CCLayerTreeHost::context):
2460         (WebCore::CCLayerTreeHost::setNeedsAnimate):
2461         (WebCore::CCLayerTreeHost::setNeedsCommit):
2462         (WebCore::CCLayerTreeHost::setNeedsRedraw):
2463         (WebCore::CCLayerTreeHost::composite):
2464         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
2465         (WebCore::CCSettings::CCSettings):
2466         * platform/graphics/chromium/cc/CCProxy.cpp:
2467         (WebCore::CCProxy::isMainThread):
2468         (WebCore::CCProxy::isImplThread):
2469         (WebCore::CCProxy::setImplThread):
2470         * platform/graphics/chromium/cc/CCProxy.h:
2471         * platform/graphics/chromium/cc/CCSingleThreadProxy.h:
2472         (WebCore::DebugScopedSetImplThread::DebugScopedSetImplThread):
2473         (WebCore::DebugScopedSetImplThread::~DebugScopedSetImplThread):
2474
2475 2011-11-30  Alexey Proskuryakov  <ap@apple.com>
2476
2477         Download page URL should be set by WebCore
2478         https://bugs.webkit.org/show_bug.cgi?id=73358
2479
2480         Reviewed by Darin Adler.
2481
2482         No change in behavior, just refactoring.
2483
2484         * loader/FrameLoader.h:
2485         * loader/FrameLoader.cpp:
2486         (WebCore::originatingURLFromBackForwardList):
2487         (WebCore::FrameLoader::setOriginalURLForDownloadRequest):
2488         Moved implementations from WebKit, added a bunch of FIXMEs.
2489
2490         * loader/MainResourceLoader.cpp: (WebCore::MainResourceLoader::continueAfterContentPolicy):
2491         Set main document URL (incorrectly renamed to "first party for cookies" in WebCore), so that
2492         CFNetwork would automatically use it.
2493
2494         * loader/PolicyChecker.cpp: (WebCore::PolicyChecker::continueAfterNavigationPolicy): Ditto
2495         for requests that start as downloads (as opposed to being converted after reading first bits
2496         of response).
2497
2498 2011-11-30  Rafael Weinstein  <rafaelw@chromium.org>
2499
2500         Remove unused isInlineCode from V8Proxy
2501         https://bugs.webkit.org/show_bug.cgi?id=73341
2502
2503         Reviewed by Adam Barth.
2504
2505         No tests needed. This patch only removes unnecessary code.
2506
2507         * bindings/v8/V8LazyEventListener.cpp:
2508         (WebCore::V8LazyEventListener::prepareListenerObject):
2509         * bindings/v8/V8Proxy.cpp:
2510         (WebCore::V8Proxy::V8Proxy):
2511         (WebCore::V8Proxy::evaluate):
2512         (WebCore::V8Proxy::runScript):
2513         * bindings/v8/V8Proxy.h:
2514
2515 2011-11-30  Andrew Wason  <rectalogic@rectalogic.com>
2516
2517         Replace Qt QThread threading back-end with pthread/Win32 threading back-ends
2518         https://bugs.webkit.org/show_bug.cgi?id=72155
2519
2520         Reviewed by Simon Hausmann.
2521
2522         Need to include qglobal.h since ThreadingPrimitives.h no longer does.
2523
2524         * platform/network/NetworkingContext.h:
2525
2526 2011-11-30  Jongseok Yang  <js45.yang@samsung.com>
2527
2528         [SOUP][WK2] Implement the functions to manager cookies in CookieJar for WebKit2
2529         https://bugs.webkit.org/show_bug.cgi?id=72353
2530
2531         r79722 inserted the functions to manange cookies from web process.
2532         (getHostnamesWithCookies,deleteCookiesForHostname,deleteAllCookies)
2533         Implement the functions for soup network backend.
2534
2535         Reviewed by Martin Robinson.
2536
2537         * platform/network/soup/CookieJarSoup.cpp:
2538         (WebCore::getHostnamesWithCookies):
2539         (WebCore::deleteCookiesForHostname):
2540         (WebCore::deleteAllCookies):
2541
2542 2011-11-30  Daniel Sievers  <sievers@chromium.org>
2543
2544         [Chromium] Avoid ASSERT_NOT_REACHED() from creating FBO with content texture of size 0
2545         https://bugs.webkit.org/show_bug.cgi?id=73266
2546
2547         Remove render surface layers with no children after clipping to
2548         the parent layer.
2549
2550         Move the check for empty render surfaces after the piece of code
2551         used to apply the parent's clip, as we might end up calling
2552         renderSurface->clearLayerList().
2553
2554         Render surfaces with no children or visible content are unexpected
2555         especially at draw time where we might try to create a content
2556         texture and FBO with a size of zero, which will fail. This fixes
2557         an ASSERT_NOT_REACHED() for checkFramebufferStatus() != COMPLETE
2558
2559         Reviewed by James Robinson.
2560
2561         Added unit test.
2562
2563         * platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:
2564         (WebCore::calculateDrawTransformsAndVisibilityInternal):
2565
2566 2011-11-30  Pavel Feldman  <pfeldman@google.com>
2567
2568         Web Inspector: do not report worker-related events unless inspector agent is enabled.
2569         https://bugs.webkit.org/show_bug.cgi?id=73411
2570
2571         Backend should not generate messages until the client requests that they are sent.
2572
2573         Reviewed by Yury Semikhatsky.
2574
2575         * inspector/Inspector.json:
2576         * inspector/InspectorAgent.cpp:
2577         (WebCore::InspectorAgent::setFrontend):
2578         (WebCore::InspectorAgent::clearFrontend):
2579         (WebCore::InspectorAgent::enable):
2580         (WebCore::InspectorAgent::disable):
2581         (WebCore::InspectorAgent::postWorkerNotificationToFrontend):
2582         (WebCore::InspectorAgent::didCreateWorker):
2583         (WebCore::InspectorAgent::didDestroyWorker):
2584         (WebCore::InspectorAgent::developerExtrasEnabled):
2585         * inspector/InspectorAgent.h:
2586         * inspector/InspectorController.cpp:
2587         (WebCore::InspectorController::enabled):
2588         * inspector/InspectorInstrumentation.cpp:
2589         (WebCore::InspectorInstrumentation::didLoadResourceFromMemoryCacheImpl):
2590         (WebCore::InspectorInstrumentation::didCommitLoadImpl):
2591         (WebCore::InspectorInstrumentation::didOpenDatabaseImpl):
2592         (WebCore::InspectorInstrumentation::didUseDOMStorageImpl):
2593         (WebCore::InspectorInstrumentation::didCreateWebSocketImpl):
2594         * inspector/InspectorPageAgent.cpp:
2595         * inspector/PageConsoleAgent.cpp:
2596         (WebCore::PageConsoleAgent::developerExtrasEnabled):
2597         * inspector/front-end/WorkerManager.js:
2598         (WebInspector.WorkerManager.prototype._workerInspectorClosing):
2599         (WebInspector.WorkerManager.prototype._disconnectedFromWorker):
2600         (WebInspector.DedicatedWorkerMessageForwarder.prototype.dispatchMessageFromWorker):
2601         (WebInspector.DedicatedWorkerMessageForwarder.prototype.disconnectedFromWorker):
2602         * inspector/front-end/inspector.js:
2603
2604 2011-11-30  Jacky Jiang  <zhajiang@rim.com>
2605
2606         Upstream BlackBerry porting of WebCore/editing.
2607         https://bugs.webkit.org/show_bug.cgi?id=73275
2608
2609         Reviewed by Daniel Bates.
2610
2611         Initial upstream, no new tests.
2612
2613         * editing/blackberry/EditorBlackBerry.cpp: Added.
2614         (WebCore::Editor::newGeneralClipboard):
2615         * editing/blackberry/SmartReplaceBlackBerry.cpp: Added.
2616         (WebCore::isCharacterSmartReplaceExempt):
2617
2618 2011-11-30  Noel Gordon  <noel.gordon@gmail.com>
2619
2620         JPEGImageDecoder: Code input color space case entries in numerical order
2621         https://bugs.webkit.org/show_bug.cgi?id=73287
2622
2623         Reviewed by Adam Barth.
2624
2625         No new tests. Covered by existing tests.
2626
2627         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
2628         (WebCore::JPEGImageReader::decode): JCS_YCbCr is one greater than JSC_RGB.
2629
2630 2011-11-30  Alexandru Chiculita  <achicu@adobe.com>
2631
2632         FilterOperation* should stay in rendering/style, because it is directly referenced from RenderStyle
2633         https://bugs.webkit.org/show_bug.cgi?id=72539
2634
2635         Reviewed by Dean Jackson.
2636
2637         No new tests, just moving some files.
2638
2639         * CMakeLists.txt:
2640         * GNUmakefile.list.am:
2641         * Target.pri:
2642         * WebCore.gypi:
2643         * WebCore.vcproj/WebCore.vcproj:
2644         * WebCore.xcodeproj/project.pbxproj:
2645         * rendering/style/CustomFilterOperation.h: Renamed from Source/WebCore/platform/graphics/filters/CustomFilterOperation.h.
2646         * rendering/style/FilterOperation.h: Renamed from Source/WebCore/platform/graphics/filters/FilterOperation.h.
2647         * rendering/style/FilterOperations.cpp: Renamed from Source/WebCore/platform/graphics/filters/FilterOperations.cpp.
2648         * rendering/style/FilterOperations.h: Renamed from Source/WebCore/platform/graphics/filters/FilterOperations.h.
2649
2650 2011-11-29  Kentaro Hara  <haraken@chromium.org>
2651
2652         StorageEvent.key should not be nullable
2653         https://bugs.webkit.org/show_bug.cgi?id=73125
2654
2655         Reviewed by Adam Barth.
2656
2657         Currently, document.createEvent('StorageEvent').key is evaluated as null.
2658         However, the spec (http://www.whatwg.org/specs/web-apps/current-work/#storageevent)
2659         says that StorageEvent.key is not a nullable type, and thus
2660         document.createEvent('StorageEvent').key should be '' (an empty string).
2661
2662         * storage/StorageEvent.idl: Removed a [ConvertNullStringTo=Null] IDL from StorageEvent.key.
2663
2664 2011-11-29  Philip Rogers  <pdr@google.com>
2665
2666         Fix for fill color not being applied inside visited links
2667         https://bugs.webkit.org/show_bug.cgi?id=70434
2668
2669         Reviewed by Antti Koivisto.
2670
2671         Test: svg/custom/visited-link-color.svg
2672
2673         * rendering/style/SVGRenderStyle.h:
2674         (WebCore::SVGRenderStyle::setFillPaint):
2675         (WebCore::SVGRenderStyle::setStrokePaint):
2676
2677 2011-11-29  David Levin  <levin@chromium.org>
2678
2679         Add a way to revert a variable to its previous value after leaving a scope.
2680         https://bugs.webkit.org/show_bug.cgi?id=73371
2681
2682         Reviewed by Adam Barth.
2683
2684         * ForwardingHeaders/wtf/TemporarilyChange.h: Added.
2685
2686 2011-11-28  Kentaro Hara  <haraken@chromium.org>
2687
2688         Implement [Supplemental] IDL and support it in run-bindings-tests
2689         https://bugs.webkit.org/show_bug.cgi?id=73162
2690
2691         Reviewed by Adam Barth.
2692
2693         - Overview:
2694             - Implement the [Supplemental] IDL in resolve-supplemental.pl and generate-bindings.pl.
2695             - Support the [Supplemental] IDL in run-bindings-tests.
2696             - Add TestSupplemental.idl as a binding test and confirm that it works.
2697
2698         - The spec for the [Supplemental] IDL: http://dev.w3.org/2006/webapi/WebIDL/#dfn-supplemental-interface
2699
2700         - This patch affects run-bindings-tests results only and does not affect any real builds
2701         since no [Supplemental] IDL has been written in real WebCore IDL files for now.
2702
2703         - This patch makes a change on CodeGenerator*.pm to support the [Supplemental] IDL
2704         for (custom) getters and setters.
2705
2706         - Added perl scripts implement the [Supplemental] IDL as follows:
2707
2708             Previous build flow:
2709                 foreach $idl (all IDL files) {
2710                     generate-bindings.pl depends on $idl;
2711                     generate-bindings.pl reads $idl;
2712                     generate-bindings.pl generates .h and .cpp files for $idl;
2713                 }
2714
2715             New build flow (See the discussions in bug 72138 for more details):
2716                 resolve-supplemental.pl depends on all IDL files;
2717                 resolve-supplemental.pl reads all IDL files;
2718                 resolve-supplemental.pl resolves the dependency of [Supplemental=XXXX];
2719                 resolve-supplemental.pl outputs supplemental_dependency.tmp;
2720                 foreach $idl (all IDL files) {
2721                     generate-bindings.pl depends on $idl and supplemental_dependency.tmp;
2722                     generate-bindings.pl reads $idl;
2723                     generate-bindings.pl reads supplemental_dependency.tmp;
2724                     generate-bindings.pl generates .h and .cpp files for $idl, including all attributes in IDL files which are implementing $idl;
2725                 }
2726
2727         Tests: bindings/scripts/test/TestSupplemental.idl
2728
2729         * bindings/scripts/generate-bindings.pl: The input is an IDL file |x| and the dependency file. generate-bindings.pl generates .h and .cpp files for the IDL file |x|, including all the attributes in the IDL files which are implementing the IDL file |x|. generate-bindings.pl addes the [ImplementedBy] IDL to the attributes with the [Supplemental] IDL in order to indicate what IDL is implementing the attributes.
2730         * bindings/scripts/resolve-supplemental.pl: Added. resolve-supplemental.pl reads all IDL files, resolves [Supplemental=XXX] dependencies, and then outputs the dependency file. See the comment in resolve-supplemental.pl for the format of the dependency file.
2731
2732         * bindings/scripts/CodeGenerator.pm:
2733         (GenerateConditionalStringFromAttributeValue): Avoids duplicated conditions.
2734         * bindings/scripts/CodeGeneratorJS.pm:
2735         (GenerateHeader): If an attribute is [ImplementedBy] another IDL, then we omit the declaration of the custom getter and setter.
2736         (GenerateImplementation): If an attribute is [ImplementedBy] another IDL, then we call back the (custom) getter and setter of the IDL.
2737         * bindings/scripts/CodeGeneratorV8.pm:
2738         (GenerateHeader): If an attribute is [ImplementedBy] another IDL, then we omit the declaration of the custom getter and setter.
2739         (GenerateNormalAttrGetter): If an attribute is [ImplementedBy] another IDL, then we call back the getter of the IDL.
2740         (GenerateNormalAttrSetter): If an attribute is [ImplementedBy] another IDL, then we call back the setter of the IDL.
2741         (GenerateSingleBatchedAttribute): If an attribute is [ImplementedBy] another IDL, then we call back the custom getter or setter of the IDL.
2742         * bindings/scripts/CodeGeneratorCPP.pm:
2743         (GenerateImplementation): If an attribute is [ImplementedBy] another IDL, then we call back the getter and setter of the IDL. CodeGeneratorCPP.pm does not support a custom getter and setter.
2744         * bindings/scripts/CodeGeneratorGObject.pm:
2745         (GenerateProperty): Ditto.
2746         * bindings/scripts/CodeGeneratorObjC.pm:
2747         (GenerateImplementation): Ditto.
2748
2749         * bindings/scripts/test/TestSupplemental.idl: Added. A test case for the [Supplemental] IDL.
2750         * bindings/scripts/test/CPP/WebDOMTestInterface.cpp: Updated a run-bindings-tests result.
2751         (WebDOMTestInterface::str1):
2752         (WebDOMTestInterface::str2):
2753         (WebDOMTestInterface::setStr2):
2754         * bindings/scripts/test/CPP/WebDOMTestInterface.h: Ditto.
2755         * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp: Ditto.
2756         (webkit_dom_test_interface_get_str1):
2757         (webkit_dom_test_interface_get_str2):
2758         (webkit_dom_test_interface_set_str2):
2759         (webkit_dom_test_interface_set_property):
2760         (webkit_dom_test_interface_get_property):
2761         (webkit_dom_test_interface_class_init):
2762         * bindings/scripts/test/GObject/WebKitDOMTestInterface.h: Ditto.
2763         * bindings/scripts/test/JS/JSTestInterface.cpp: Ditto.
2764         (WebCore::jsTestInterfaceStr1):
2765         (WebCore::jsTestInterfaceStr2):
2766         (WebCore::jsTestInterfaceStr3):
2767         (WebCore::JSTestInterface::put):
2768         (WebCore::setJSTestInterfaceStr2):
2769         (WebCore::setJSTestInterfaceStr3):
2770         * bindings/scripts/test/JS/JSTestInterface.h: Ditto.
2771         * bindings/scripts/test/ObjC/DOMTestInterface.h: Ditto.
2772         * bindings/scripts/test/ObjC/DOMTestInterface.mm: Ditto.
2773         (-[DOMTestInterface str1]):
2774         (-[DOMTestInterface str2]):
2775         (-[DOMTestInterface setStr2:]):
2776         (-[DOMTestInterface str3]):
2777         (-[DOMTestInterface setStr3:]):
2778         * bindings/scripts/test/V8/V8TestInterface.cpp: Ditto.
2779         (WebCore::TestInterfaceInternal::str1AttrGetter):
2780         (WebCore::TestInterfaceInternal::str2AttrGetter):
2781         (WebCore::TestInterfaceInternal::str2AttrSetter):
2782         (WebCore::ConfigureV8TestInterfaceTemplate):
2783
2784 2011-11-29  Leo Yang  <leo.yang@torchmobile.com.cn>
2785
2786         Upstream platform/network/blackberry/ProxyServerBlackBerry.cpp
2787         https://bugs.webkit.org/show_bug.cgi?id=73288
2788
2789         Reviewed by Antonio Gomes.
2790
2791         Initial upstream, can't be built yet, no new tests.
2792
2793         * platform/network/blackberry/ProxyServerBlackBerry.cpp: Added.
2794         (WebCore::proxyServersForURL):
2795
2796 2011-11-29  Jessie Berlin  <jberlin@apple.com>
2797
2798         WKKeyValueStorageManagerGetKeyValueStorageOrigins may not report the correct list of origins
2799         the first time it is called.
2800         https://bugs.webkit.org/show_bug.cgi?id=73374 (<rdar://problem/10196057>)
2801
2802         Reviewed by Brady Eidson.
2803
2804         Add a callback for when the Storage Tracker is done loading the list of origins with Local
2805         Storage.
2806
2807         * storage/StorageTracker.cpp:
2808         (WebCore::StorageTracker::StorageTracker):
2809         Keep track of whether the import from disk has been completed.
2810         (WebCore::StorageTracker::notifyFinishedImportingOriginIdentifiersOnMainThread):
2811         (WebCore::StorageTracker::finishedImportingOriginIdentifiers):
2812         Set m_finishedImportingOriginIdentifiers to true and tell the client.
2813         (WebCore::StorageTracker::syncImportOriginIdentifiers):
2814         When finished, notify the shared StorageTracker on the main thread.
2815         * storage/StorageTracker.h:
2816         (WebCore::StorageTracker::originsLoaded):
2817
2818         * storage/StorageTrackerClient.h:
2819         Add didFinishLoadingOrigins.
2820
2821 2011-11-18  Nat Duca  <nduca@chromium.org>
2822
2823         [chromium] Enable threaded compositing via CCThreadProxy::hasThread only
2824         https://bugs.webkit.org/show_bug.cgi?id=70838
2825
2826         Reviewed by James Robinson.
2827
2828         * platform/graphics/chromium/LayerRendererChromium.cpp:
2829         (WebCore::LayerRendererChromium::initialize):
2830         * platform/graphics/chromium/WebGLLayerChromium.cpp:
2831         (WebCore::WebGLLayerChromium::layerRendererContext):
2832         * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
2833         (WebCore::CCHeadsUpDisplay::enabled):
2834         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
2835         (WebCore::CCLayerTreeHost::initialize):
2836         (WebCore::CCLayerTreeHost::context):
2837         (WebCore::CCLayerTreeHost::setNeedsAnimate):
2838         (WebCore::CCLayerTreeHost::setNeedsCommit):
2839         (WebCore::CCLayerTreeHost::setNeedsRedraw):
2840         (WebCore::CCLayerTreeHost::composite):
2841         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
2842         (WebCore::CCSettings::CCSettings):
2843         * platform/graphics/chromium/cc/CCProxy.cpp:
2844         (WebCore::CCProxy::isMainThread):
2845         (WebCore::CCProxy::isImplThread):
2846         (WebCore::CCProxy::setMainThreadIsImplThread):
2847         * platform/graphics/chromium/cc/CCProxy.h:
2848         * platform/graphics/chromium/cc/CCSingleThreadProxy.h:
2849         (WebCore::DebugScopedSetImplThread::DebugScopedSetImplThread):
2850         (WebCore::DebugScopedSetImplThread::~DebugScopedSetImplThread):
2851
2852 2011-11-29  Erik Arvidsson  <arv@chromium.org>
2853
2854         WebIDL: Add support for static for JSC and V8
2855         https://bugs.webkit.org/show_bug.cgi?id=72998
2856
2857         Reviewed by Adam Barth.
2858
2859         WebIDL uses "static" for class methods. We used to use "[ClassMethod]". This change makes us use the WebIDL syntax instead.
2860
2861         No new tests: Covered by existing tests.
2862
2863         * bindings/scripts/CodeGeneratorJS.pm:
2864         (GetFunctionName): Use isStatic instead.
2865         (GenerateOverloadedFunction): Ditto.
2866         (GenerateImplementation): Ditto.
2867         (GenerateParametersCheck): Ditto.
2868         (GenerateImplementationFunctionCall): Ditto.
2869         (GenerateConstructorDefinition): Ditto.
2870         * bindings/scripts/CodeGeneratorV8.pm:
2871         (GenerateFunctionCallback): Ditto.
2872         (GenerateImplementation): Ditto.
2873         (GenerateFunctionCallString): Ditto.
2874         * bindings/scripts/IDLParser.pm:
2875         (ParseInterface): Set isStatic as needed.
2876         * bindings/scripts/IDLStructure.pm: Update regular expression to parse "static".
2877         * bindings/scripts/test/TestObj.idl: Use static instead of [ClassMethod].
2878         * storage/IDBKeyRange.idl: Ditto.
2879
2880 2011-11-29  Kentaro Hara  <haraken@chromium.org>
2881
2882         Unreviewed. Rebaselined a run-bindings-tests result.
2883
2884         * bindings/scripts/test/JS/JSFloat64Array.h:
2885
2886 2011-11-10  Xiaomei Ji  <xji@chromium.org>
2887
2888         --webkit-visual-word should be able to reach end of text, instead of end of line
2889         https://bugs.webkit.org/show_bug.cgi?id=72048
2890
2891         Reviewed by Ryosuke Niwa.
2892
2893         Revert r92223 -- webkit-visual-word should reach boundary of line.
2894         When there is no more left or right words in the same editing boundary and
2895         current position is an editable position, return start or end position in this
2896         editable content.
2897
2898         Test: editing/selection/move-by-word-visually-textarea.html
2899
2900         * editing/visible_units.cpp:
2901         (WebCore::collectWordBreaksInBoxInsideBlockWithSameDirectionality):
2902         (WebCore::collectWordBreaksInBoxInsideBlockWithDifferntDirectionality):
2903         (WebCore::leftWordPosition):
2904         (WebCore::rightWordPosition):
2905
2906 2011-11-29  Oliver Hunt  <oliver@apple.com>
2907
2908         Allow WebCore to describe typed arrays to JSC
2909         https://bugs.webkit.org/show_bug.cgi?id=73355
2910
2911         Reviewed by Gavin Barraclough.
2912
2913         Update bindings codegen to report the data layout to JSC.
2914
2915         * bindings/scripts/CodeGeneratorJS.pm:
2916         (GenerateHeader):
2917         (GenerateImplementation):
2918         * bindings/scripts/test/JS/JSFloat64Array.cpp:
2919         (WebCore::JSFloat64Array::finishCreation):
2920         * bindings/scripts/test/JS/JSFloat64Array.h:
2921
2922 2011-11-29  Tony Chang  <tony@chromium.org>
2923
2924         Rename some flexbox functions to be less confusing
2925         https://bugs.webkit.org/show_bug.cgi?id=73363
2926
2927         Reviewed by Ojan Vafai.
2928
2929         These methods no longer have anything to do with block/inline direction.
2930
2931         No new tests, just renaming some functions.
2932
2933         * rendering/RenderFlexibleBox.cpp:
2934         (WebCore::RenderFlexibleBox::layoutBlock):
2935         (WebCore::RenderFlexibleBox::layoutFlexItems):
2936         (WebCore::RenderFlexibleBox::runFreeSpaceAllocationAlgorithm):
2937         (WebCore::RenderFlexibleBox::layoutAndPlaceChildren):
2938         (WebCore::RenderFlexibleBox::alignChildren):
2939         * rendering/RenderFlexibleBox.h:
2940
2941 2011-11-29  Erik Arvidsson  <arv@chromium.org>
2942
2943         Add support for [ClassMethod] to CodeGeneratorJS.pm
2944         https://bugs.webkit.org/show_bug.cgi?id=73342
2945
2946         Reviewed by Adam Barth.
2947
2948         If a method is annotated with [ClassMethod] it will become a method on the JS constructor object and it will
2949         call a static function on the C++ class. 
2950
2951         This was previously only implemented in CodeGeneratorV8.pm so this brings JSC up to par.
2952
2953         No new tests: Covered by bindings/scripts/test/
2954
2955         * bindings/scripts/CodeGeneratorJS.pm:
2956         (GetFunctionName): Refactor to reduce code duplication.
2957         (GenerateHeader): Ditto.
2958         (GenerateOverloadedFunction): This now handles both prototype functions and constructor functions.
2959         (GenerateImplementation): Define class methods too. 
2960         (GenerateParametersCheck): Generate the right function access string.
2961         (GenerateImplementationFunctionCall): SVG properties are not static methods.
2962         (GenerateConstructorDefinition): For classes that have static methods we may now return function properties.
2963         * bindings/scripts/test/JS/JSTestObj.cpp:
2964         (WebCore::JSTestObjConstructor::getOwnPropertySlot): Ditto.
2965         (WebCore::JSTestObjConstructor::getOwnPropertyDescriptor): Ditto.
2966         (WebCore::jsTestObjConstructorFunctionClassMethod): Now calls a static function.
2967         (WebCore::jsTestObjConstructorFunctionClassMethodWithOptional): Ditto.
2968         * bindings/scripts/test/JS/JSTestObj.h:
2969
2970 2011-11-29  Sam Weinig  <sam@webkit.org>
2971
2972         Remove unused JSDOMWrapperOwner
2973         https://bugs.webkit.org/show_bug.cgi?id=73357
2974
2975         Reviewed by Adam Barth.
2976
2977         * bindings/js/DOMWrapperWorld.cpp:
2978         (WebCore::DOMWrapperWorld::DOMWrapperWorld):
2979         * bindings/js/DOMWrapperWorld.h:
2980         (WebCore::DOMWrapperWorld::globalData):
2981         Remove JSDOMWrapperOwner. It is unused.
2982
2983 2011-11-29  Anders Carlsson  <andersca@apple.com>
2984
2985         Use contentsToRootView when converting the mouse coordinates for the context menu key event
2986         https://bugs.webkit.org/show_bug.cgi?id=73352
2987
2988         Reviewed by Adam Roben.
2989
2990         No new tests: Already covered by existing tests.
2991
2992         This is another step towards fixing https://bugs.webkit.org/show_bug.cgi?id=71945, by getting
2993         rid of a call to ScrollView::contentsToWindow.
2994
2995         * page/EventHandler.cpp:
2996         (WebCore::EventHandler::sendContextMenuEventForKey):
2997
2998 2011-11-15  Anders Carlsson  <andersca@apple.com>
2999
3000         DragClient::dragSourceActionMaskForPoint should use root view coordinates
3001         https://bugs.webkit.org/show_bug.cgi?id=72409
3002
3003         Reviewed by Sam Weinig.
3004
3005         * page/DragClient.h:
3006         Rename parameter and remove obsolete comment.
3007
3008         * page/DragController.cpp:
3009         (WebCore::DragController::delegateDragSourceAction):
3010         * page/DragController.h:
3011         Rename parameter.
3012
3013         * page/EventHandler.cpp:
3014         (WebCore::EventHandler::updateDragSourceActionsAllowed):
3015         Use contentsToRootView instead of contentsToWindow.
3016
3017 2011-11-15  Anders Carlsson  <andersca@apple.com>
3018
3019         EditorClient::showCorrectionPanel should pass the string bounding box in root view coordinates
3020         https://bugs.webkit.org/show_bug.cgi?id=72408
3021
3022         Reviewed by Sam Weinig.
3023
3024         Rename windowRectForRange to rootViewRectForRange and use contentsToRootView instead of contentsToWindow.
3025
3026         * editing/SpellingCorrectionController.cpp:
3027         (WebCore::SpellingCorrectionController::show):
3028         (WebCore::SpellingCorrectionController::correctionPanelTimerFired):
3029         (WebCore::SpellingCorrectionController::rootViewRectForRange):
3030         * editing/SpellingCorrectionController.h:
3031         
3032 2011-11-29  Ojan Vafai  <ojan@chromium.org>
3033
3034         invalid cast in WebCore::toRenderBox / WebCore::RenderBox::firstChildBox
3035         https://bugs.webkit.org/show_bug.cgi?id=72668
3036
3037         Reviewed by David Hyatt.
3038
3039         For new flexible boxes, we were setting childrenInline to true when
3040         merging anonymous blocks, which we should never do. Do the same thing
3041         we do for the deprecated flexboxes.
3042
3043         Test: css3/flexbox/anonymous-block-merge-crash.html
3044
3045         * rendering/RenderBlock.cpp:
3046         (WebCore::RenderBlock::removeChild):
3047         * rendering/RenderObject.h:
3048         (WebCore::RenderObject::setChildrenInline):
3049         The default value of true was never used. Better to keep it explicit.
3050
3051 2011-11-28  Ryosuke Niwa  <rniwa@webkit.org>
3052
3053         Crash in IsolateTracker::addFakeRunIfNecessary(), preceded by assertion failure (m_nestedIsolateCount >= 1)
3054         in IsolateTracker::exitIsolate()
3055         https://bugs.webkit.org/show_bug.cgi?id=69275
3056
3057         Reviewed by Eric Seidel.
3058
3059         The crash was caused by our false assumption that at most one isolated container exists between the start
3060         and the root when appending a new run. Fixed the crash by computing the actual number of isolated containers
3061         between the start and the root.
3062
3063         Test: fast/text/nested-bidi-isolate-crash.html
3064
3065         * rendering/InlineIterator.h:
3066         (WebCore::numberOfIsolateAncestors):
3067         (WebCore::IsolateTracker::IsolateTracker):
3068         (WebCore::InlineBidiResolver::appendRun):
3069
3070 2011-11-29  Oliver Hunt  <oliver@apple.com>
3071
3072         Revert that last change, apparently it destroys everything in the world.
3073
3074         * bindings/js/DOMWrapperWorld.h:
3075         * bindings/js/JSArrayBufferViewHelper.h:
3076         (WebCore::toJSArrayBufferView):
3077         * bindings/js/JSCSSRuleCustom.cpp:
3078         (WebCore::toJS):
3079         * bindings/js/JSCSSValueCustom.cpp:
3080         (WebCore::toJS):
3081         * bindings/js/JSDOMBinding.h:
3082         (WebCore::setInlineCachedWrapper):
3083         (WebCore::clearInlineCachedWrapper):
3084         (WebCore::getCachedWrapper):
3085         (WebCore::cacheWrapper):
3086         (WebCore::wrap):
3087         * bindings/js/JSDOMWindowCustom.cpp:
3088         (WebCore::JSDOMWindow::history):
3089         (WebCore::JSDOMWindow::location):
3090         * bindings/js/JSDocumentCustom.cpp:
3091         (WebCore::JSDocument::location):
3092         (WebCore::toJS):
3093         * bindings/js/JSEventCustom.cpp:
3094         (WebCore::toJS):
3095         * bindings/js/JSHTMLCollectionCustom.cpp:
3096         (WebCore::toJS):
3097         * bindings/js/JSImageDataCustom.cpp:
3098         (WebCore::toJS):
3099         * bindings/js/JSSVGPathSegCustom.cpp:
3100         (WebCore::toJS):
3101         * bindings/js/JSStyleSheetCustom.cpp:
3102         (WebCore::toJS):
3103         * bindings/js/JSTrackCustom.cpp:
3104         (WebCore::toJS):
3105
3106 2011-11-29  Tony Chang  <tony@chromium.org>
3107
3108         flex-align:stretch + max-height needs to clamp to max-height and position appropriately
3109         https://bugs.webkit.org/show_bug.cgi?id=70780
3110
3111         Reviewed by David Hyatt.
3112
3113         Test: css3/flexbox/flex-align-max.html
3114
3115         * rendering/RenderBox.cpp:
3116         (WebCore::RenderBox::sizesToIntrinsicLogicalWidth): When laying out columns, if the flex item is stretching,
3117         we don't need to shrink wrap.
3118         * rendering/RenderFlexibleBox.cpp:
3119         (WebCore::RenderFlexibleBox::isColumnFlow): Switch to RenderStyle helper method.
3120         (WebCore::RenderFlexibleBox::alignChildrenBlockDirection): For columns, we don't need to do anything.
3121         For rows, handle max logical height by setting the height and recomputing (which will take max-height
3122         into consideration).
3123         * rendering/style/RenderStyle.h:
3124         (WebCore::InheritedFlags::isColumnFlexFlow): Helper method.
3125
3126 2011-11-29  Tony Chang  <tony@chromium.org>
3127
3128         [chromium] Remove unused variable (gcc 4.6 complains about this)
3129         https://bugs.webkit.org/show_bug.cgi?id=73335
3130
3131         ../../third_party/WebKit/Source/WebCore/platform/graphics/chromium/cc/CCDamageTracker.cpp:296:19:
3132         error: variable 'oldReplicaMaskRect' set but not used [-Werror=unused-but-set-variable]
3133
3134         * platform/graphics/chromium/cc/CCDamageTracker.cpp:
3135         (WebCore::CCDamageTracker::extendDamageForRenderSurface):
3136
3137 2011-11-29  Oliver Hunt  <oliver@apple.com>
3138
3139         DOM wrapper cache doesn't need to use JSDOMWrapper
3140         https://bugs.webkit.org/show_bug.cgi?id=73333
3141
3142         Reviewed by Sam Weinig.
3143
3144         Make JSDOMWrapperCache use JSObject rather than JSDOMWrapper
3145         and propagate the type change out. 
3146
3147         * bindings/js/DOMWrapperWorld.h:
3148         * bindings/js/JSArrayBufferViewHelper.h:
3149         (WebCore::toJSArrayBufferView):
3150         * bindings/js/JSCSSRuleCustom.cpp:
3151         (WebCore::toJS):
3152         * bindings/js/JSCSSValueCustom.cpp:
3153         (WebCore::toJS):
3154         * bindings/js/JSDOMBinding.h:
3155         (WebCore::setInlineCachedWrapper):
3156         (WebCore::clearInlineCachedWrapper):
3157         (WebCore::getCachedWrapper):
3158         (WebCore::cacheWrapper):
3159         (WebCore::wrap):
3160         * bindings/js/JSDOMWindowCustom.cpp:
3161         (WebCore::JSDOMWindow::history):
3162         (WebCore::JSDOMWindow::location):
3163         * bindings/js/JSDocumentCustom.cpp:
3164         (WebCore::JSDocument::location):
3165         (WebCore::toJS):
3166         * bindings/js/JSEventCustom.cpp:
3167         (WebCore::toJS):
3168         * bindings/js/JSHTMLCollectionCustom.cpp:
3169         (WebCore::toJS):
3170         * bindings/js/JSImageDataCustom.cpp:
3171         (WebCore::toJS):
3172         * bindings/js/JSSVGPathSegCustom.cpp:
3173         (WebCore::toJS):
3174         * bindings/js/JSStyleSheetCustom.cpp:
3175         (WebCore::toJS):
3176         * bindings/js/JSTrackCustom.cpp:
3177         (WebCore::toJS):
3178
3179 2011-11-29  Philippe Normand  <pnormand@igalia.com>
3180
3181         Unreviewed, GTK build fix after r101392.
3182
3183         * GNUmakefile.am: USE_WEBAUDIO_FFTW was removed, don't use it anymore.
3184
3185 2011-11-28  Vsevolod Vlasov  <vsevik@chromium.org>
3186
3187         Web Inspector: TextPrompt should show suggest above or under so that it has maximal height.
3188         https://bugs.webkit.org/show_bug.cgi?id=73239
3189
3190         Reviewed by Pavel Feldman.
3191
3192         Fixed suggest box vertical position / height calculation.
3193         Added round corners when suggest box is positioned under text prompt.
3194
3195         * inspector/front-end/TextPrompt.js:
3196         (WebInspector.TextPrompt.SuggestBox.prototype._updateBoxPosition):
3197         * inspector/front-end/inspector.css:
3198         (.suggest-box.generic-suggest.under-anchor):
3199
3200 2011-11-29  Carlos Garcia Campos  <cgarcia@igalia.com>
3201
3202         Unreviewed. Fix the GTK+ port build after r101307.
3203
3204         * GNUmakefile.list.am: Add missing files to compilation.
3205
3206 2011-11-29  Pavel Feldman  <pfeldman@google.com>
3207
3208         Web Inspector: split Preferences into Preferences and Capabilities.
3209         https://bugs.webkit.org/show_bug.cgi?id=73321
3210
3211         Part of the Preferences defined in Settings.js are in fact backend capabilities.
3212         Split them into two separate objects for further capabilities refactoring.
3213
3214         Reviewed by Yury Semikhatsky.
3215
3216         * inspector/front-end/DebuggerModel.js:
3217         * inspector/front-end/ElementsPanel.js:
3218         (WebInspector.ElementsPanel):
3219         (WebInspector.ElementsPanel.prototype.wasShown):
3220         (WebInspector.ElementsPanel.prototype._populateContextMenu):
3221         * inspector/front-end/NetworkItemView.js:
3222         (WebInspector.NetworkItemView):
3223         * inspector/front-end/NetworkPanel.js:
3224         (WebInspector.NetworkLogView.prototype._createTable):
3225         (WebInspector.NetworkLogView.prototype.switchToDetailedView):
3226         (WebInspector.NetworkLogView.prototype.switchToBriefView):
3227         (WebInspector.NetworkLogView.prototype._contextMenu):
3228         (WebInspector.NetworkDataGridNode.prototype.createCells):
3229         (WebInspector.NetworkDataGridNode.prototype.refreshResource):
3230         * inspector/front-end/ProfileDataGridTree.js:
3231         (WebInspector.ProfileDataGridNode.prototype.get data.formatMilliseconds):
3232         * inspector/front-end/ProfileView.js:
3233         * inspector/front-end/ProfilesPanel.js:
3234         (WebInspector.ProfilesPanel.prototype._enableDetailedHeapProfiles):
3235         * inspector/front-end/Resource.js:
3236         (WebInspector.Resource.prototype.populateImageSource):
3237         * inspector/front-end/ScriptsPanel.js:
3238         (WebInspector.ScriptsPanel.prototype.wasShown):
3239         (WebInspector.ScriptsPanel.prototype._clearInterface):
3240         * inspector/front-end/Settings.js:
3241         * inspector/front-end/SettingsScreen.js:
3242         (WebInspector.SettingsScreen):
3243         * inspector/front-end/StylesSidebarPane.js:
3244         * inspector/front-end/inspector.js:
3245
3246 2011-11-29  Simon Hausmann  <simon.hausmann@nokia.com>
3247
3248         [Qt] Make WebCore compile with Qt 5 and V8
3249         https://bugs.webkit.org/show_bug.cgi?id=73313
3250
3251         Reviewed by Tor Arne Vestbø.
3252
3253         * DerivedSources.pri: Add missing V8 specific IDL files to the build.
3254         * Target.pri: Ditto.
3255         * bindings/v8/ScriptController.h: V8 NPAPI bindings don't really support
3256         building with ENABLE_NETSCAPE_PLUGIN_API=0. These functions are always
3257         defined, so they also need to be declared.
3258         * platform/qt/PlatformSupportQt.cpp: 
3259         (WebCore::PlatformSupport::pluginScriptableObject): Don't return a
3260         scriptable object when compiling without npapi.
3261         * storage/StorageAreaImpl.cpp: Add missing Document.h include that is
3262         included implicitly with the Chromium build but not with Qt.
3263         * xml/XSLTProcessorQt.cpp: Ditto.
3264
3265 2011-11-29  Pavel Feldman  <pfeldman@google.com>
3266
3267         Not reviewed: fixing clang build.
3268
3269         * inspector/InspectorBaseAgent.h:
3270         (WebCore::InspectorBaseAgentInterface::getAgentCapabilities):
3271         * inspector/InspectorDebuggerAgent.cpp:
3272         (WebCore::InspectorDebuggerAgent::getAgentCapabilities):
3273         * inspector/InspectorDebuggerAgent.h:
3274
3275 2011-11-29  Pavel Feldman  <pfeldman@google.com>
3276
3277         Web Inspector: introduce generic capabilities concept, migrate debugger domain to generic capabilities.
3278         https://bugs.webkit.org/show_bug.cgi?id=73311
3279
3280         This step is necessary for getting rid of the 'capability' aspect in the Preferences. As a result,
3281         single front-end will be applicable to multiple backend configurations.
3282
3283         Reviewed by Yury Semikhatsky.
3284
3285         * CMakeLists.txt:
3286         * GNUmakefile.list.am:
3287         * Target.pri:
3288         * WebCore.gypi:
3289         * WebCore.vcproj/WebCore.vcproj:
3290         * WebCore.xcodeproj/project.pbxproj:
3291         * inspector/Inspector.json:
3292         * inspector/InspectorAgent.cpp:
3293         (WebCore::InspectorAgent::InspectorAgent):
3294         * inspector/InspectorApplicationCacheAgent.cpp:
3295         (WebCore::InspectorApplicationCacheAgent::InspectorApplicationCacheAgent):
3296         * inspector/InspectorBaseAgent.cpp:
3297         (WebCore::InspectorBaseAgentInterface::InspectorBaseAgentInterface):
3298         (WebCore::InspectorBaseAgentInterface::~InspectorBaseAgentInterface):
3299         * inspector/InspectorBaseAgent.h:
3300         (WebCore::InspectorBaseAgentInterface::getCapabilities):
3301         (WebCore::InspectorBaseAgentInterface::name):
3302         (WebCore::InspectorBaseAgent::InspectorBaseAgent):
3303         * inspector/InspectorCSSAgent.cpp:
3304         (WebCore::InspectorCSSAgent::InspectorCSSAgent):
3305         * inspector/InspectorConsoleAgent.cpp:
3306         (WebCore::InspectorConsoleAgent::InspectorConsoleAgent):
3307         * inspector/InspectorController.cpp:
3308         (WebCore::InspectorController::InspectorController):
3309         * inspector/InspectorController.h:
3310         * inspector/InspectorDOMAgent.cpp:
3311         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
3312         * inspector/InspectorDOMDebuggerAgent.cpp:
3313         (WebCore::InspectorDOMDebuggerAgent::InspectorDOMDebuggerAgent):
3314         * inspector/InspectorDOMStorageAgent.cpp:
3315         (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
3316         * inspector/InspectorDatabaseAgent.cpp:
3317         (WebCore::InspectorDatabaseAgent::InspectorDatabaseAgent):
3318         * inspector/InspectorDebuggerAgent.cpp:
3319         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
3320         (WebCore::InspectorDebuggerAgent::getCapabilities):
3321         * inspector/InspectorDebuggerAgent.h:
3322         * inspector/InspectorFileSystemAgent.cpp:
3323         (WebCore::InspectorFileSystemAgent::InspectorFileSystemAgent):
3324         * inspector/InspectorMetaAgent.cpp: Added.
3325         (WebCore::InspectorMetaAgent::~InspectorMetaAgent):
3326         (WebCore::InspectorMetaAgent::getCapabilities):
3327         (WebCore::InspectorMetaAgent::InspectorMetaAgent):
3328         * inspector/InspectorMetaAgent.h: Added.
3329         (WebCore::InspectorMetaAgent::create):
3330         * inspector/InspectorPageAgent.cpp:
3331         (WebCore::InspectorPageAgent::InspectorPageAgent):
3332         * inspector/InspectorProfilerAgent.cpp:
3333         (WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
3334         * inspector/InspectorResourceAgent.cpp:
3335         (WebCore::InspectorResourceAgent::InspectorResourceAgent):
3336         * inspector/InspectorRuntimeAgent.cpp:
3337         (WebCore::InspectorRuntimeAgent::InspectorRuntimeAgent):
3338         * inspector/InspectorTimelineAgent.cpp:
3339         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
3340         * inspector/InspectorValues.h:
3341         (WebCore::InspectorArray::begin):
3342         (WebCore::InspectorArray::end):
3343         * inspector/InspectorWorkerAgent.cpp:
3344         (WebCore::InspectorWorkerAgent::InspectorWorkerAgent):
3345         * inspector/front-end/DebuggerModel.js:
3346         (WebInspector.DebuggerModel.prototype.enableDebugger):
3347
3348 2011-11-29  Simon Hausmann  <simon.hausmann@nokia.com>
3349
3350         [Qt] Make WebKit/qt build with V8 and Qt 5
3351         https://bugs.webkit.org/show_bug.cgi?id=73315
3352
3353         Reviewed by Kenneth Rohde Christiansen.
3354
3355         For the Qt 5 / V8 build we use QJSEngine/QJSValue instead of
3356         QScriptEngine/QScriptValue.
3357
3358         * bindings/v8/ScriptController.cpp:
3359         * bindings/v8/ScriptController.h:
3360         * bindings/v8/ScriptControllerQt.cpp:
3361         (WebCore::ScriptController::qtScriptEngine):
3362
3363 2011-11-29  Simon Hausmann  <simon.hausmann@nokia.com>
3364
3365         [Qt][V8] Add missing ExceptionCode.h include for SVG bindings
3366         https://bugs.webkit.org/show_bug.cgi?id=73314
3367
3368         Reviewed by Kenneth Rohde Christiansen.
3369
3370         * bindings/scripts/CodeGeneratorV8.pm:
3371         (GenerateNormalAttrSetter): Similarly to other places where we use DOM
3372         exceptions, make sure we include ExceptionCode.h here. It appears to be
3373         an implicit inclusion in the Chromium build, but it should be explicit
3374         like in the rest of the bindings.
3375         (GenerateFunctionCallback): Ditto.
3376
3377 2011-11-29  Andrey Kosyakov  <caseq@chromium.org>
3378
3379         Web Inspector: remove usage of innerHTML from inspector front-end
3380         https://bugs.webkit.org/show_bug.cgi?id=73305
3381
3382         Reviewed by Yury Semikhatsky.
3383
3384         * inspector/front-end/FontView.js:
3385         (WebInspector.FontView.prototype._createContentIfNeeded):
3386         * inspector/front-end/ShortcutsScreen.js:
3387         (WebInspector.ShortcutsSection.prototype.addKey):
3388         (WebInspector.ShortcutsSection.prototype.addRelatedKeys):
3389         (WebInspector.ShortcutsSection.prototype.addAlternateKeys):
3390         (WebInspector.ShortcutsSection.prototype._addLine):
3391         (WebInspector.ShortcutsSection.prototype.renderSection):
3392         (WebInspector.ShortcutsSection.prototype._renderSequence):
3393         (WebInspector.ShortcutsSection.prototype._renderKey):
3394         (WebInspector.ShortcutsSection.prototype.get _height):
3395         (WebInspector.ShortcutsSection.prototype._createSpan):
3396         (WebInspector.ShortcutsSection.prototype._joinNodes):
3397         * inspector/front-end/WelcomeView.js:
3398         (WebInspector.WelcomeView.prototype.addMessage):
3399
3400 2011-11-29  Zoltan Herczeg  <zherczeg@webkit.org>
3401
3402         [Qt] Couple of tests have different results on 64 bit and/or in debug mode compared to 32 bit and/or release mode
3403         https://bugs.webkit.org/show_bug.cgi?id=52810
3404
3405         Reviewed by Nikolas Zimmermann.
3406
3407         This avoids precision loss in getCTM, which is used whenever mapping repaint rects to a parent coordinate system
3408         - it affects several DRT results on Mac, all of them are progressions.
3409
3410         * svg/SVGPreserveAspectRatio.cpp:
3411         (WebCore::SVGPreserveAspectRatio::getCTM): Use double-precision internally.
3412
3413 2011-11-25  Pavel Podivilov  <podivilov@chromium.org>
3414
3415         Web Inspector: support concatenated source maps.
3416         https://bugs.webkit.org/show_bug.cgi?id=73138
3417
3418         Reviewed by Yury Semikhatsky.
3419
3420         * inspector/front-end/CompilerSourceMapping.js:
3421         (WebInspector.ClosureCompilerSourceMapping):
3422         (WebInspector.ClosureCompilerSourceMapping.prototype.loadSourceCode):
3423         (WebInspector.ClosureCompilerSourceMapping.prototype._parseMappingPayload):
3424         (WebInspector.ClosureCompilerSourceMapping.prototype._parseSections):
3425         (WebInspector.ClosureCompilerSourceMapping.prototype._parseMap):
3426         (WebInspector.ClosureCompilerSourceMapping.prototype._canonicalizeURL):
3427         * inspector/front-end/inspector.js:
3428         (WebInspector.installSourceMappingForTest):
3429
3430 2011-11-29  Mario Sanchez Prada  <msanchez@igalia.com>
3431
3432         [Gtk] Regression: text-inserted events lack text inserted and current line
3433         https://bugs.webkit.org/show_bug.cgi?id=72830
3434
3435         Reviewed by Chris Fleizach.
3436
3437         Replace the emission of the old (and now deprecated) AtkObject's
3438         'text-changed:insert' and 'text-changed:remove' signals with the
3439         new 'text-insert' and 'text-remove' ones, which are better and
3440         less fragile since they emit the modified text too, along with the
3441         typical 'offset' and 'count' values associated to the change.
3442
3443         Also, change the signature of the nodeTextChangeNotification() and
3444         nodeTextChangePlatformNotification() to allow specifying the text
3445         being modified from the place we better know about it, that is,
3446         the text editing commands.
3447
3448         * accessibility/gtk/AXObjectCacheAtk.cpp:
3449         (WebCore::emitTextChanged): Emit 'text-insert' and 'text-remove',
3450         instead of the old and now deprecated 'text-changed' signal.
3451         (WebCore::AXObjectCache::nodeTextChangePlatformNotification):
3452         Update this function to receive a String with the text being
3453         modified, instead of just the number of characters.
3454
3455         * accessibility/AXObjectCache.cpp:
3456         (WebCore::AXObjectCache::nodeTextChangeNotification): Update this
3457         function to receive a String with the text being modified.
3458         * accessibility/AXObjectCache.h: