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