2011-01-01 Adam Barth <abarth@webkit.org>
[WebKit-https.git] / WebCore / ChangeLog
1 2011-01-01  Adam Barth  <abarth@webkit.org>
2
3         Remove empty file.
4
5         * Android.mk:
6         * CMakeLists.txt:
7         * GNUmakefile.am:
8         * WebCore.gypi:
9         * WebCore.pro:
10         * WebCore.vcproj/WebCore.vcproj:
11         * WebCore.xcodeproj/project.pbxproj:
12         * dom/DOMAllInOne.cpp:
13         * dom/Entity.cpp: Removed.
14
15 2011-01-01  Adam Barth  <abarth@webkit.org>
16
17         Remove empty file.
18
19         * CMakeLists.txt:
20         * GNUmakefile.am:
21         * WebCore.pro:
22         * WebCore.vcproj/WebCore.vcproj:
23         * WebCore.xcodeproj/project.pbxproj:
24         * bindings/js/JSBindingsAllInOne.cpp:
25         * bindings/js/JSPopStateEventCustom.cpp: Removed.
26
27 2011-01-01  Adam Barth  <abarth@webkit.org>
28
29         Remove empty files.
30
31         * GNUmakefile.am:
32         * WebCore.gypi:
33         * WebCore.vcproj/WebCore.vcproj:
34         * WebCore.xcodeproj/project.pbxproj:
35         * bindings/generic/BindingFrame.h: Removed.
36         * bindings/generic/BindingLocation.h: Removed.
37
38 2011-01-01  Konstantin Tokarev  <annulen@yandex.ru>
39
40         Reviewed by Darin Adler.
41
42         Don't include Inspector headers when Inspector is disabled
43         https://bugs.webkit.org/show_bug.cgi?id=51789
44
45         * bindings/js/JSDOMWindowBase.cpp: Include Inspector headers when
46         Inspector is enabled
47         * dom/Document.cpp: Include Inspector headers when
48         Inspector is enabled
49         (WebCore::Document::recalcStyle): Disabled InspectorInstrumentationCookie
50         handling
51         * html/HTMLDocument.cpp: Include Inspector headers when
52         Inspector is enabled
53         * loader/FrameLoader.cpp: Include Inspector headers when
54         Inspector is enabled
55         * loader/ResourceLoadNotifier.cpp: Include Inspector headers when
56         Inspector is enabled
57         * page/Chrome.cpp: Include Inspector headers when
58         Inspector is enabled
59         * page/Console.cpp: Include Inspector headers when
60         Inspector is enabled
61         * page/ContextMenuController.cpp: Include Inspector headers when
62         Inspector is enabled
63         * page/DOMWindow.cpp: Include Inspector headers when
64         Inspector is enabled
65         (WebCore::DOMWindow::dispatchEvent): Disabled InspectorInstrumentationCookie
66         handling
67         * page/EventHandler.cpp: Include Inspector headers when
68         Inspector is enabled
69         * page/Page.cpp: Include Inspector headers when
70         Inspector is enabled
71         * storage/Database.cpp: Include Inspector headers when
72         Inspector is enabled
73         * workers/AbstractWorker.cpp: Include Inspector headers when
74         Inspector is enabled
75         * workers/DefaultSharedWorkerRepository.cpp: Include Inspector headers when
76         Inspector is enabled
77         * workers/SharedWorker.cpp: Include Inspector headers when
78         Inspector is enabled
79         * workers/Worker.cpp: Include Inspector headers when
80         Inspector is enabled
81         * workers/WorkerContext.cpp: Include Inspector headers when
82         Inspector is enabled
83         * workers/WorkerMessagingProxy.cpp: Include Inspector headers when
84         Inspector is enabled
85         * xml/XMLHttpRequest.cpp: Include Inspector headers when
86         Inspector is enabled
87         (WebCore::XMLHttpRequest::callReadyStateChangeListener): Disabled
88         InspectorInstrumentationCookie handling
89
90 2010-12-31  Adam Barth  <abarth@webkit.org>
91
92         Reviewed by Darin Adler.
93
94         fast/loader/about-blank-hash-change.html fails on Chromium
95         https://bugs.webkit.org/show_bug.cgi?id=51788
96
97         I'm unable to reproduce the failure locally, so this patch is slightly
98         speculative.  We need to be slighly more careful how we compare the
99         fragment identifiers for Chromium because Chromium uses a URL parser
100         that is more agressive about canonicalization.
101
102         * page/Location.cpp:
103         (WebCore::Location::setHash):
104
105 2010-12-31  Martin Robinson  <mrobinson@igalia.com>
106
107         Reviewed by Xan Lopez.
108
109         [GTK] Use GLib/GIO API for FileSystemGtk implementation
110         https://bugs.webkit.org/show_bug.cgi?id=51617
111
112         Complete implementation of FileSystem platform code for GLib. This
113         converts remaining API points using POSIX calls to platform-independent
114         GLib calls and fixes other compilation errors.
115
116         No new tests. This code will be tested when an implementation
117         of beginDragWithFiles is complete.
118
119         (WebCore::JSDirectoryEntry::getFile):
120         (WebCore::JSDirectoryEntry::getDirectory):
121         * platform/FileSystem.h: Added forward declarations for GLib types to
122         avoid GLib includes and changed the PlatformFileHandle to be a GIOStream.
123         * platform/gtk/FileSystemGtk.cpp:
124         (WebCore::openTemporaryFile): Reimplement using only GLib calls.
125         (WebCore::openFile): Ditto.
126         (WebCore::closeFile): Ditto.
127         (WebCore::seekFile): Added implementation.
128         (WebCore::writeToFile): Reimplement using only GLib calls.
129         (WebCore::readFromFile): Ditto.
130
131 2010-12-31  Darin Adler  <darin@apple.com>
132
133         Reviewed by Dan Bernstein.
134
135         Some renaming and refactoring of form element code
136         https://bugs.webkit.org/show_bug.cgi?id=51784
137
138         * bindings/js/JSHTMLSelectElementCustom.cpp:
139         (WebCore::JSHTMLSelectElement::remove): Call new overload of remove
140         for option elements instead of putting the logic in the binding.
141
142         * html/HTMLButtonElement.cpp:
143         (WebCore::HTMLButtonElement::HTMLButtonElement): Updated for name changes.
144         (WebCore::HTMLButtonElement::defaultEventHandler): Renamed argument to
145         "event" instead of "evt". Also updated for name changes.
146         (WebCore::HTMLButtonElement::isActivatedSubmit): Ditto.
147         (WebCore::HTMLButtonElement::setActivatedSubmit): Ditto.
148         (WebCore::HTMLButtonElement::appendFormData): Ditto.
149         * html/HTMLButtonElement.h: Renamed m_activeSubmit to m_isActivatedSubmit
150         to match the getter function name. The name still doesn't seem great.
151
152         * html/HTMLFormElement.cpp:
153         (WebCore::HTMLFormElement::HTMLFormElement): Updated for name changes.
154         (WebCore::HTMLFormElement::~HTMLFormElement): Use autoComplete function
155         instead of m_autocomplete data member.
156         (WebCore::HTMLFormElement::rendererIsNeeded): Use m_wasDemoted data member
157         instead of otherwise-unused isDemoted function.
158         (WebCore::HTMLFormElement::submitImplicitly): Updated for name changes.
159         (WebCore::HTMLFormElement::validateInteractively): Removed code to clear
160         m_insubmit. This is now handled by the caller, prepareForSubmission.
161         (WebCore::HTMLFormElement::prepareForSubmission): Renamed. Updated for
162         name changes. Moved code to clear m_isSubmittingOrPreparingForSubmission
163         here from validateInteractively. Removed unneeded check of m_doingsubmit
164         boolean before setting it.
165         (WebCore::HTMLFormElement::submit): Factored this function into two.
166         One for JavaScript and one for non-JavaScript. Neither function needs a frame
167         argument, because the question being asked, anyPageIsProcessingUserGesture,
168         is a question asked of an entire page group, not a specific frame or page,
169         so it's not important which is the active frame.
170         (WebCore::HTMLFormElement::submitFromJavaScript): Ditto.
171         (WebCore::HTMLFormElement::reset): Updated for name changes.
172         (WebCore::HTMLFormElement::parseMappedAttribute): Removed code to parse
173         acceptAttr and got rid of code to set m_autocomplete.
174         (WebCore::HTMLFormElement::elementForAlias): Changed return type to a raw
175         pointer.
176         (WebCore::HTMLFormElement::getNamedElements): Updated to use raw pointer
177         and the vector find function. Added a FIXME about the comment.
178         (WebCore::HTMLFormElement::documentDidBecomeActive): Use autoComplete
179         function instead of m_autocomplete data member.
180         (WebCore::HTMLFormElement::willMoveToNewOwnerDocument): Ditto.
181         (WebCore::HTMLFormElement::didMoveToNewOwnerDocument): Ditto.
182         (WebCore::HTMLFormElement::autoComplete): Ditto.
183         * html/HTMLFormElement.h: Added a FIXME about renaming the autoComplete
184         function. Renamed prepareSubmit to prepareForSubmission. Got rid of the
185         frame argument from the submit function and added a new submitFromJavaScript
186         variant. Removed the unneeded isDemoted function. Changed the return type
187         of elementForAlias to a raw pointer. Removed m_autocomplete. Renamed
188         m_insubmit to m_isSubmittingOrPreparingForSubmission, m_doingsubmit to
189         m_shouldSubmit, m_inreset to m_inResetFunction, m_malformed to m_wasMalformed,
190         m_demoted to m_wasDemoted. Use plain bool instead of bitfields.
191
192         * html/HTMLFormElement.idl: Use the function named submitFromJavaScript
193         instead of using CallWith=DynamicFrame because we don't need to know
194         what frame is calling. If we did, it's not clear that the "dynamic"
195         frame would be the right one anyway.
196
197         * html/HTMLSelectElement.cpp:
198         (WebCore::HTMLSelectElement::remove): Added an overload that takes an option
199         element, since the JavaScript binding supports this.
200         * html/HTMLSelectElement.h: Ditto.
201
202         * html/ImageInputType.cpp:
203         (WebCore::ImageInputType::handleDOMActivateEvent): Updated for name changes.
204         * html/ImageInputType.h: Ditto.
205         * html/SubmitInputType.cpp:
206         (WebCore::SubmitInputType::handleDOMActivateEvent): Ditto.
207
208 2010-12-31  Daniel Bates  <dbates@rim.com>
209
210         Reviewed by Darin Adler.
211
212         Pass style for <area> instead of associated <img> when querying whether
213         the theme draws the focus ring for an <area>
214         https://bugs.webkit.org/show_bug.cgi?id=51632
215
216         Fixes an issue where the style for the associated <img> of an <area>
217         was passed when considering whether the theme should draw a focus ring
218         for the <area>. Instead, we should pass the theme the style for the <area>.
219
220         It's not possible to test this at this time since there are no themes
221         that override focus ring drawing for <area>s.
222
223         * rendering/RenderImage.cpp:
224         (WebCore::RenderImage::paintFocusRing): Moved call to RenderTheme::supportsFocusRing()
225         such that it's called with respect to the focused <area>.
226
227 2010-12-31  Darin Adler  <darin@apple.com>
228
229         * WebCore.xcodeproj/project.pbxproj: Added back the language.
230         Developers should be using Xcode 3.2.5 or newer.
231
232 2010-12-31  Adam Barth  <abarth@webkit.org>
233
234         Reviewed by Eric Seidel.
235
236         Move V8 to WebCore Location implementation
237         https://bugs.webkit.org/show_bug.cgi?id=51768
238
239         * bindings/generic/BindingFrame.h:
240         * bindings/generic/BindingLocation.h:
241         * bindings/v8/V8Binding.h:
242         * bindings/v8/V8DOMWindowShell.cpp:
243         (WebCore::V8DOMWindowShell::setLocation):
244         * bindings/v8/V8Utilities.cpp:
245         * bindings/v8/V8Utilities.h:
246         * bindings/v8/custom/V8LocationCustom.cpp:
247         (WebCore::V8Location::hashAccessorSetter):
248         (WebCore::V8Location::hostAccessorSetter):
249         (WebCore::V8Location::hostnameAccessorSetter):
250         (WebCore::V8Location::hrefAccessorSetter):
251         (WebCore::V8Location::pathnameAccessorSetter):
252         (WebCore::V8Location::portAccessorSetter):
253         (WebCore::V8Location::protocolAccessorSetter):
254         (WebCore::V8Location::searchAccessorSetter):
255         (WebCore::V8Location::reloadCallback):
256         (WebCore::V8Location::replaceCallback):
257         (WebCore::V8Location::assignCallback):
258
259 2010-12-31  Yi Shen  <yi.4.shen@nokia.com>
260
261         Reviewed by Eric Seidel.
262
263         Make retrieving extraMediaControlsStyleSheet be page dependent.
264         https://bugs.webkit.org/show_bug.cgi?id=51752
265
266         Use themeForPage to retrieve extraMediaControlsStyleSheet for media
267         controls.
268
269         No new tests because no platform-specific theme implementation uses
270         the passed page pointer yet.
271
272         * css/CSSStyleSelector.cpp:
273         (WebCore::CSSStyleSelector::styleForElement):
274
275 2010-12-31  Ilya Tikhonovsky  <loislo@chromium.org>
276
277         Reviewed by Pavel Feldman.
278
279         Web Inspector: [REGRESSION] WebInspector.ResourcesPanel.prototype.canShowSourceLine() broken.
280
281         https://bugs.webkit.org/show_bug.cgi?id=51709
282
283         * inspector/front-end/ResourcesPanel.js:
284         (WebInspector.ResourcesPanel.prototype.canShowSourceLine):
285
286 2010-12-31  Patrick Gansterer  <paroga@webkit.org>
287
288         Unreviewed build fix after r74800.
289
290         * bindings/js/JSDOMWindowCustom.cpp: Add missing header.
291         * bindings/js/JSLocationCustom.cpp: Ditto.
292
293 2010-12-31  Adam Barth  <abarth@webkit.org>
294
295         Rubber-stamped by Eric Seidel.
296
297         Move HTML and XML parser benchmarks into PerformanceTests/Parser
298         https://bugs.webkit.org/show_bug.cgi?id=51772
299
300         Remove the benchmarks folder now that it's empty.  Future benchmarks
301         should go in the PerformanceTests directory.
302
303         * benchmarks: Removed.
304         * benchmarks/parser: Removed.
305         * benchmarks/parser/html-parser.html: Removed.
306         * benchmarks/parser/resources: Removed.
307         * benchmarks/parser/resources/html5.html: Removed.
308         * benchmarks/parser/resources/runner.js: Removed.
309         * benchmarks/parser/xml-parser.html: Removed.
310
311 2010-12-31  Patrick Gansterer  <paroga@webkit.org>
312
313         Reviewed by Adam Barth.
314
315         Add XML parser benchmark
316         https://bugs.webkit.org/show_bug.cgi?id=51612
317
318         Move the JavaScript code of html parser into a separate file to share it with xml parser.
319
320         * benchmarks/parser/html-parser.html:
321         * benchmarks/parser/resources/runner.js: Copied from WebCore/benchmarks/parser/html-parser.html.
322         (runFunction):
323         (run):
324         (start):
325         * benchmarks/parser/xml-parser.html: Copied from WebCore/benchmarks/parser/html-parser.html.
326
327 2010-12-29  Zhenyao Mo  <zmo@google.com>
328
329         Reviewed by Kenneth Russell.
330
331         Update validation of stencil mask and ref values
332         https://bugs.webkit.org/show_bug.cgi?id=50716
333
334         * html/canvas/WebGLRenderingContext.cpp:
335         (WebCore::WebGLRenderingContext::initializeNewContext): Initialize cached stencil settings.
336         (WebCore::WebGLRenderingContext::drawArrays): Validate stencil settings.
337         (WebCore::WebGLRenderingContext::drawElements): Ditto.
338         (WebCore::WebGLRenderingContext::stencilFunc): Cache stencil settings, but generate no error.
339         (WebCore::WebGLRenderingContext::stencilFuncSeparate): Ditto.
340         (WebCore::WebGLRenderingContext::stencilMask): Ditto.
341         (WebCore::WebGLRenderingContext::stencilMaskSeparate): Ditto.
342         (WebCore::WebGLRenderingContext::validateStencilSettings): Helper function to validate stencil settings.
343         * html/canvas/WebGLRenderingContext.h: Declare stencil setting members.
344
345 2010-12-30  Martin Robinson  <mrobinson@igalia.com>
346
347         Reviewed by Xan Lopez.
348
349         [GTK] Fork pieces of RenderThemeGtk that will differ for GTK+ 3
350         https://bugs.webkit.org/show_bug.cgi?id=51755
351
352         Split out pieces of RenderThemeGtk into RenderThemeGtk2 and RenderThemeGtk3
353         if they are going to differ between GTK+ 2.x and GTK+ 3.x. This is the preliminary
354         step to landing support for the new GTK+ 3.x theming API.
355
356         No new tests. This should not change functionality.
357
358         * GNUmakefile.am: Add RenderThemeGtk2 and RenderThemeGtk3 to the sources list.
359         * platform/gtk/RenderThemeGtk.cpp:
360         (WebCore::RenderThemeGtk::adjustTextFieldStyle): Call the setTextInputBorders static method.
361         (WebCore::RenderThemeGtk::adjustTextAreaStyle): Ditto.
362         (WebCore::RenderThemeGtk::paintMediaButton): Ditto.
363         (WebCore::RenderThemeGtk::adjustProgressBarStyle): ditto.
364         * platform/gtk/RenderThemeGtk.h: Make setTextInputBorders a method, so that
365         it can be exist in RenderThemeGtk{2,3} and be called from RenderThemeGtk.
366         * platform/gtk/RenderThemeGtk2.cpp: Added. A fork of the bits of RenderThemeGtk
367         that will eventually be platform-dependent.
368         * platform/gtk/RenderThemeGtk3.cpp: Added. Ditto.
369
370 2010-12-30  Justin Schuh  <jschuh@chromium.org>
371
372         Reviewed by James Robinson.
373
374         Reverting r74292 because it introduced a crash with ruby text.
375         https://bugs.webkit.org/show_bug.cgi?id=51637
376
377         Test: fast/css/counters/counter-ruby-text-cleared.html
378
379         * rendering/RenderCounter.cpp:
380         (WebCore::findPlaceForCounter):
381         * rendering/RenderObject.cpp:
382         (WebCore::RenderObject::addChild):
383         * rendering/RenderObjectChildList.cpp:
384         (WebCore::RenderObjectChildList::appendChildNode):
385         (WebCore::RenderObjectChildList::insertChildNode):
386
387 2010-12-30  Darin Adler  <darin@apple.com>
388
389         Reviewed by David Kilzer.
390
391         Remove unused JSBinding source files
392         https://bugs.webkit.org/show_bug.cgi?id=51762
393
394         * bindings/js/JSBinding.h: Removed.
395         * bindings/js/specialization: Removed.
396         * bindings/js/specialization/JSBindingState.cpp: Removed.
397         * bindings/js/specialization/JSBindingState.h: Removed.
398
399         * CMakeLists.txt: Removed references to files.
400         * GNUmakefile.am: Ditto.
401         * WebCore.gypi: Ditto.
402         * WebCore.pro: Ditto.
403         * WebCore.vcproj/WebCore.vcproj: Ditto.
404         * bindings/js/JSBindingsAllInOne.cpp: Ditto.
405
406 2010-12-30  Tony Gentilcore  <tonyg@chromium.org>
407
408         Reviewed by Darin Adler.
409
410         Remove Document.h include from some headers where it isn't necessary
411         https://bugs.webkit.org/show_bug.cgi?id=51730
412
413         No new tests because no new functionality.
414
415         * editing/EditingStyle.cpp:
416         * editing/EditingStyle.h:
417         * editing/SelectionController.h:
418         * editing/visible_units.h:
419         * html/HTMLAudioElement.h:
420         * html/HTMLBodyElement.h:
421         * inspector/InspectorCSSAgent.h:
422         * inspector/InspectorDOMAgent.h:
423         * inspector/InspectorInstrumentation.h:
424         * xml/DOMParser.cpp:
425         * xml/DOMParser.h:
426         (WebCore::DOMParser::create):
427         (WebCore::DOMParser::DOMParser):
428
429 2010-12-30  Benjamin C Meyer  <bmeyer@rim.com>
430
431         Reviewed by Darin Adler.
432
433         bindings/js/JSDesktopNotificationsCustom.cpp is not included in the cmake build
434         which is required when NOTIFICATIONS is enabled.
435
436         https://bugs.webkit.org/show_bug.cgi?id=51761
437
438         * CMakeLists.txt:
439
440 2010-12-30  Antti Koivisto  <antti@apple.com>
441
442         Not reviewed.
443
444         Revert accidental project file change.
445
446         * WebCore.xcodeproj/project.pbxproj:
447
448 2010-12-30  Antti Koivisto  <antti@apple.com>
449
450         Reviewed by Darin Adler.
451
452         https://bugs.webkit.org/show_bug.cgi?id=51134
453         Move loading related code from MemoryCache to CachedResourceLoader
454
455         - Merge MemoryCache::requestResource to CachedResourceLoader::requestResource
456         - Merge MemoryCache::requestUserCSSStyleSheet to CachedResourceLoader::requestUserCSSStyleSheet
457         - Move MemoryCache::revalidateResource to CachedResourceLoader::revalidateResource
458         - Add MemoryCache::add
459         - Refactor the decision on whether to reload, revalidate or use the existing resource to 
460           a single function, CachedResourceLoader::determineRevalidationPolicy
461
462         * css/CSSImageValue.cpp:
463         (WebCore::CSSImageValue::cachedImage):
464             
465             Remove a code path that called MemoryCache::requestResource directly. This code path would have crashed
466             if ever taken (since it passes null CachedResourceLoader pointer).
467             
468         * loader/ImageLoader.cpp:
469         (WebCore::ImageLoader::updateFromElement):
470         * loader/cache/CachedImage.cpp:
471         * loader/cache/CachedResource.cpp:
472         (WebCore::CachedResource::CachedResource):
473         (WebCore::CachedResource::~CachedResource):
474         (WebCore::CachedResource::mustRevalidateDueToCacheHeaders):
475         
476             Moved tests that were not about cache headers to CachedResourceLoader::determineRevalidationPolicy and renamed.
477         
478         (WebCore::CachedResource::setLoadPriority):
479         
480             Check for Unresolved value before setting.
481         
482         * loader/cache/CachedResource.h:
483         (WebCore::CachedResource::setOwningCachedResourceLoader):
484         
485             Rename to be bit less mysterious.
486         
487         * loader/cache/CachedResourceLoader.cpp:
488         (WebCore::createResource):
489         
490             This was moved from MemoryCache.
491         
492         (WebCore::CachedResourceLoader::~CachedResourceLoader):
493         (WebCore::CachedResourceLoader::determineRevalidationPolicy):
494         (WebCore::CachedResourceLoader::requestUserCSSStyleSheet):
495         
496             This was moved/merged from MemoryCache.
497         
498         (WebCore::CachedResourceLoader::canRequest):
499         (WebCore::CachedResourceLoader::requestResource):
500         
501             This combines MemoryCache::requestResource and the existing method.
502         
503         (WebCore::CachedResourceLoader::revalidateResource):
504         
505             This was moved from MemoryCache.
506         
507         (WebCore::CachedResourceLoader::loadResource):
508         
509             New method for initiating loading.
510         
511         (WebCore::CachedResourceLoader::notifyLoadedFromMemoryCache):
512         
513             Renamed the mysterious CachedResourceLoader::checkCacheObjectStatus
514         
515         * loader/cache/CachedResourceLoader.h:
516         * loader/cache/MemoryCache.cpp:
517         (WebCore::MemoryCache::add):
518         * loader/cache/MemoryCache.h:
519         (WebCore::MemoryCache::remove):
520
521 2010-12-30  Steve Block  <steveblock@google.com>
522
523         Reviewed by Gavin Barraclough.
524
525         Enable JSC Rich Source Info for Android even when Inspector and Debugger are disabled
526         https://bugs.webkit.org/show_bug.cgi?id=51740
527
528         This is a policy decision for Android.
529
530         No new tests, simply enabling existing, tested code on Android.
531
532         * bindings/js/JSDOMWindowBase.cpp:
533         (WebCore::JSDOMWindowBase::supportsRichSourceInfo):
534
535 2010-12-30  Yael Aharon  <yael.aharon@nokia.com>
536
537         Reviewed by Adam Barth.
538
539         REGRESSION: fast/dom/cssTarget-crash.html fails
540         https://bugs.webkit.org/show_bug.cgi?id=20342
541
542         Do not reload the page when submitting a form, using "GET" method, and the
543         form action url matches the location url, except for the fragment.
544       
545         Test: fast/forms/submit-change-fragment.html
546
547         * loader/FrameLoader.cpp:
548         (WebCore::FrameLoader::loadURL):
549         (WebCore::FrameLoader::loadWithDocumentLoader):
550         (WebCore::FrameLoader::shouldScrollToAnchor):
551         * loader/FrameLoader.h:
552
553 2010-12-30  Darin Adler  <darin@apple.com>
554
555         Reviewed by Adam Barth.
556
557         Move security logic out of the JavaScript binding for location into the DOM class
558         https://bugs.webkit.org/show_bug.cgi?id=51714
559
560         * WebCore.xcodeproj/project.pbxproj: Removed JSBindingState.cpp, JSBindingState.h,
561         and JSBinding.h. Later, we'll remove them from other project files and delete
562         the source files.
563
564         * bindings/js/JSBinding.h: Emptied out, marked for later deletion.
565
566         * bindings/js/JSDOMBinding.cpp: Removed unused overload of the jsOwnedStringOrNull
567         function, unused shouldAllowNavigation function, unused allowSettingSrcToJavascriptURL
568         function, unused toLexicalFrame function, unused completeURL function, unused
569         getCachedDOMStructure and cacheDOMStructure overloads, and unused
570         getCachedDOMConstructor and cacheDOMConstruction functions.
571         (WebCore::activeDOMWindow): Added.
572         (WebCore::firstDOMWindow): Added.
573         (WebCore::toDynamicFrame): Changed to use firstDOMWindow instead of calling through
574         JSBindingState, since the latter is an unneeded abstraction.
575         (WebCore::processingUserGesture): Changed to call ScriptController's function
576         rather than calling through JSBindingState, which is an unneeded abstraction
577
578         * bindings/js/JSDOMBinding.h: Removed the functions mentioned above. Added
579         activeDOMWindow and firstDOMWindow. Also added a FIXME for the extremely poorly
580         named allowsAccessFromFrame functions, which answer the question of whether
581         script is allowed access *to* a frame.
582
583         * bindings/js/JSDOMWindowCustom.cpp: Removed many unneeded includes.
584         (WebCore::JSDOMWindow::setLocation): Streamlined by using the new
585         activeDOMWindow and firstDOMWindow functions.
586         (WebCore::JSDOMWindow::open): Ditto.
587         (WebCore::JSDOMWindow::showModalDialog): Ditto.
588         (WebCore::JSDOMWindow::postMessage): Ditto.
589
590         * bindings/js/JSLocationCustom.cpp:
591         (WebCore::JSLocation::setHref): Changed to pass the active and first windows through
592         to the Location::setHref function, with it doing the rest of the work. This moves
593         work out of the DOM binding that belongs in the DOM itself. Eventually such functions
594         could even be automatically generated by the bindings script.
595         (WebCore::JSLocation::setProtocol): Ditto.
596         (WebCore::JSLocation::setHost): Ditto.
597         (WebCore::JSLocation::setHostname): Ditto.
598         (WebCore::JSLocation::setPort): Ditto.
599         (WebCore::JSLocation::setPathname): Ditto.
600         (WebCore::JSLocation::setSearch): Ditto.
601         (WebCore::JSLocation::setHash): Ditto.
602         (WebCore::JSLocation::replace): Ditto.
603         (WebCore::JSLocation::reload): Ditto.
604         (WebCore::JSLocation::assign): Ditto.
605
606         * bindings/js/specialization/JSBindingState.cpp: Emptied out, marked for later deletion.
607         * bindings/js/specialization/JSBindingState.h: Emptied out, marked for later deletion.
608
609         * page/DOMWindow.cpp:
610         (WebCore::DOMWindow::setLocation): Added a SetLocationLocking argument that allows us
611         to use this function for Location::replace, which is the same as setLocation except that
612         it locks both history and the back/forward list.
613         * page/DOMWindow.h: Ditto.
614
615         * page/Location.cpp:
616         (WebCore::Location::setHref): Added. Uses DOMWindow::setLocation so that the security
617         logic there does not have to be repeated or even refactored.
618         (WebCore::Location::setProtocol): Ditto.
619         (WebCore::Location::setHost): Ditto.
620         (WebCore::Location::setHostname): Ditto.
621         (WebCore::Location::setPort): Ditto.
622         (WebCore::Location::setPathname): Ditto.
623         (WebCore::Location::setSearch): Ditto.
624         (WebCore::Location::setHash): Ditto.
625         (WebCore::Location::assign): Ditto.
626         (WebCore::Location::replace): Ditto.
627         (WebCore::Location::reload): Added. Security logic was refactored from the code in
628         JSLocationCustom.cpp. Added a FIXME about the fact that this security logic seems
629         possibly unneeded.
630
631         * page/Location.h: Fixed indentation on the whole file. Added the new functions above.
632         (WebCore::Location::create):
633         (WebCore::Location::frame):
634
635 2010-12-30  Alexander Pavlov  <apavlov@chromium.org>
636
637         Reviewed by Pavel Feldman.
638
639         Web Inspector: Pasting a style property with value should automatically split it into prop/value
640         https://bugs.webkit.org/show_bug.cgi?id=51581
641
642         The "paste" DOM event is handled for the CSS property name field to parse out the name and value parts
643         of a CSS property being pasted (by the first ':' found). The property is committed (if not a new one),
644         and the edit focus is transferred to the value field.
645
646         * inspector/front-end/StylesSidebarPane.js:
647         (WebInspector.StylePropertyTreeElement.prototype.selectElement):
648         (WebInspector.StylePropertyTreeElement.prototype):
649         * inspector/front-end/inspector.js:
650         (WebInspector.completeURL): Drive-by: return full URLs as-is.
651         (WebInspector.startEditing.cleanUpAfterEditing):
652         (WebInspector.startEditing):
653         (WebInspector.startEditing.pasteEventListener):
654         (WebInspector.startEditing.keyDownEventListener):
655
656 2010-12-30  Pavel Podivilov  <podivilov@chromium.org>
657
658         Reviewed by Pavel Feldman.
659
660         Web Inspector: breakpoint is not disabled when clicking on breakpoints sidebar pane checkbox.
661         https://bugs.webkit.org/show_bug.cgi?id=51745
662
663         * inspector/front-end/Breakpoint.js:
664         (WebInspector.Breakpoint.prototype.set enabled):
665
666 2010-12-30  Pavel Podivilov  <podivilov@chromium.org>
667
668         Reviewed by Pavel Feldman.
669
670         Web Inspector: call stack shows "Paused on a JavaScript breakpoint" when stepping.
671         https://bugs.webkit.org/show_bug.cgi?id=51748
672
673         * inspector/front-end/CallStackSidebarPane.js:
674         (WebInspector.CallStackSidebarPane.prototype.update):
675         (WebInspector.CallStackSidebarPane.prototype.registerShortcuts):
676         (WebInspector.CallStackSidebarPane.prototype._scriptBreakpointHit):
677         (WebInspector.CallStackSidebarPane.prototype._nativeBreakpointHit):
678
679 2010-12-30  Mikhail Naganov  <mnaganov@chromium.org>
680
681         Reviewed by Pavel Feldman.
682
683         Fix leak of MemoryInfo wrappers introduced in r57004 (see issue 51712).
684
685         https://bugs.webkit.org/show_bug.cgi?id=51713
686
687         * WebCore.gypi:
688         * WebCore.pro:
689         * bindings/v8/custom/V8ConsoleCustom.cpp:
690         (WebCore::V8Console::memoryAccessorGetter):
691         * bindings/v8/custom/V8PerformanceCustom.cpp: Copied from V8ConsoleCustom.cpp.
692         (WebCore::V8Performance::memoryAccessorGetter):
693         * page/Console.idl:
694         * page/Performance.idl:
695
696 2010-12-30  Steve Block  <steveblock@google.com>
697
698         Reviewed by Sam Weinig.
699
700         Visiting macnn.com often causes SQL spew via geolocation database
701         https://bugs.webkit.org/show_bug.cgi?id=51557
702
703         If the Geolocation position cache database path has not been set, early-out
704         rather than using an empty path and thus failing to open the database.
705         This avoids SQL log spew.
706
707         Also, avoid starting the database thread until the path has been set, and
708         shorten the thread name to avoid warnings due to exceeding 30 characters.
709
710         No new tests, implementation clean-up only.
711
712         * page/GeolocationPositionCache.cpp:
713         (WebCore::GeolocationPositionCache::addUser):
714         (WebCore::GeolocationPositionCache::removeUser):
715         (WebCore::GeolocationPositionCache::setDatabasePath):
716         (WebCore::GeolocationPositionCache::startBackgroundThread):
717
718 2010-12-29  Philippe Normand  <pnormand@igalia.com>
719
720         Reviewed by Martin Robinson.
721
722         [GTK] minimal build fails at link time due to missing sqlite3 symbols
723         https://bugs.webkit.org/show_bug.cgi?id=51327
724
725         Guard the code calling sqlite3 with the ENABLE(DATABASE) check.
726
727         No new tests, build fix only.
728
729         * platform/sql/SQLiteAuthorizer.cpp:
730         * platform/sql/SQLiteDatabase.cpp:
731         * platform/sql/SQLiteFileSystem.cpp:
732         * platform/sql/SQLiteStatement.cpp:
733         * platform/sql/SQLiteTransaction.cpp:
734
735 2010-12-30  Justin Schuh  <jschuh@chromium.org>
736
737         Reviewed by Dirk Schulze.
738
739         Prevent stringToLengthType() from skipping past end-of-string on invalid length unit. 
740         https://bugs.webkit.org/show_bug.cgi?id=51692
741
742         * svg/SVGLength.cpp:
743         (WebCore::stringToLengthType):
744         (WebCore::SVGLength::setValueAsString):
745
746 2010-12-30  Abhishek Arya  <inferno@chromium.org>
747
748         Reviewed by Eric Seidel.
749
750         Create a helper function for finding descendent video elements for a node.
751         https://bugs.webkit.org/show_bug.cgi?id=51696
752
753         Test: media/video-element-other-namespace-crash.html
754
755         * html/MediaDocument.cpp:
756         (WebCore::descendentVideoElement): helper function.
757         (WebCore::MediaDocument::defaultEventHandler): use the new helper function. fix code repetitions.
758         (WebCore::MediaDocument::replaceMediaElementTimerFired): use the new helper function.
759
760 2010-12-29  Pavel Feldman  <pfeldman@chromium.org>
761
762         Reviewed by Yury Semikhatsky.
763
764         Web Inspector: extract Database & DOM Storage agents; remove InspectorBackend.
765         https://bugs.webkit.org/show_bug.cgi?id=51707
766
767         This change brushes up storage agents + removes redundant InspectorBackend class.
768
769         * CMakeLists.txt:
770         * GNUmakefile.am:
771         * WebCore.gypi:
772         * WebCore.pro:
773         * WebCore.vcproj/WebCore.vcproj:
774         * WebCore.xcodeproj/project.pbxproj:
775         * inspector/CodeGeneratorInspector.pm:
776         * inspector/InjectedScriptHost.cpp:
777         (WebCore::InjectedScriptHost::databaseForId):
778         (WebCore::InjectedScriptHost::selectDatabase):
779         (WebCore::InjectedScriptHost::selectDOMStorage):
780         (WebCore::InjectedScriptHost::inspectorDOMAgent):
781         * inspector/Inspector.idl:
782         * inspector/InspectorBackend.cpp: Removed.
783         * inspector/InspectorBackend.h: Removed.
784         * inspector/InspectorController.cpp:
785         (WebCore::InspectorController::InspectorController):
786         (WebCore::InspectorController::~InspectorController):
787         (WebCore::InspectorController::connectFrontend):
788         (WebCore::InspectorController::releaseFrontendLifetimeAgents):
789         (WebCore::InspectorController::didUseDOMStorage):
790         (WebCore::InspectorController::setInjectedScriptSource):
791         (WebCore::InspectorController::dispatchOnInjectedScript):
792         (WebCore::InspectorController::releaseWrapperObjectGroup):
793         * inspector/InspectorController.h:
794         * inspector/InspectorDOMStorageAgent.cpp: Added.
795         (WebCore::InspectorDOMStorageAgent::~InspectorDOMStorageAgent):
796         (WebCore::InspectorDOMStorageAgent::getDOMStorageEntries):
797         (WebCore::InspectorDOMStorageAgent::setDOMStorageItem):
798         (WebCore::InspectorDOMStorageAgent::removeDOMStorageItem):
799         (WebCore::InspectorDOMStorageAgent::selectDOMStorage):
800         (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
801         (WebCore::InspectorDOMStorageAgent::getDOMStorageResourceForId):
802         * inspector/InspectorDOMStorageAgent.h: Copied from WebCore/inspector/InspectorStorageAgent.h.
803         (WebCore::InspectorDOMStorageAgent::create):
804         (WebCore::InspectorDOMStorageAgent::frontend):
805         * inspector/InspectorDatabaseAgent.cpp: Renamed from WebCore/inspector/InspectorStorageAgent.cpp.
806         (WebCore::InspectorDatabaseAgent::~InspectorDatabaseAgent):
807         (WebCore::InspectorDatabaseAgent::getDatabaseTableNames):
808         (WebCore::InspectorDatabaseAgent::executeSQL):
809         (WebCore::InspectorDatabaseAgent::databaseForId):
810         (WebCore::InspectorDatabaseAgent::selectDatabase):
811         (WebCore::InspectorDatabaseAgent::clearFrontend):
812         (WebCore::InspectorDatabaseAgent::InspectorDatabaseAgent):
813         * inspector/InspectorDatabaseAgent.h: Renamed from WebCore/inspector/InspectorStorageAgent.h.
814         (WebCore::InspectorDatabaseAgent::create):
815         (WebCore::InspectorDatabaseAgent::frontend):
816         * inspector/front-end/ScriptsPanel.js:
817         (WebInspector.ScriptsPanel.prototype.show):
818         (WebInspector.ScriptsPanel.prototype.attachDebuggerWhenShown):
819         (WebInspector.ScriptsPanel.prototype._toggleDebugging):
820
821 2010-12-29  Dirk Schulze  <krit@webkit.org>
822
823         Reviewed by Darin Adler.
824
825         Cleanup SVG code according to the webkit style rules 3
826         https://bugs.webkit.org/show_bug.cgi?id=51490
827
828         Last patch to fix indention and other style issues according to the WebKit style rules in the SVG code.
829         Just one file can't be fixed for check-webkit-style.
830         * SVGAllInOne.cpp: check-webkit-style wants a config.h at the beginning
831
832         No changes of functionality, so no new tests. 
833
834         * svg/SVGAllInOne.cpp:
835         * svg/SVGImage.cpp:
836         * svg/SVGLength.cpp:
837         (WebCore::SVGLength::setValue):
838         * svg/SVGPolygonElement.h:
839         * svg/SVGPolylineElement.h:
840         * svg/SVGPreserveAspectRatio.cpp:
841         (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio):
842         (WebCore::SVGPreserveAspectRatio::transformRect):
843         * svg/SVGSVGElement.cpp:
844         (WebCore::SVGSVGElement::viewport):
845         * svg/SVGSetElement.h:
846         * svg/SVGStylable.h:
847         (WebCore::SVGStylable::~SVGStylable):
848         * svg/SVGStyledLocatableElement.h:
849         (WebCore::SVGStyledLocatableElement::localCoordinateSpaceTransform):
850         (WebCore::SVGStyledLocatableElement::isStyledLocatable):
851         * svg/SVGStyledTransformableElement.cpp:
852         (WebCore::SVGStyledTransformableElement::isKnownAttribute):
853         * svg/SVGSwitchElement.cpp:
854         (WebCore::SVGSwitchElement::childShouldCreateRenderer):
855         * svg/SVGTests.cpp:
856         (WebCore::SVGTests::parseMappedAttribute):
857         * svg/SVGTextContentElement.cpp:
858         (WebCore::SVGTextContentElement::isKnownAttribute):
859         * svg/SVGTextPathElement.cpp:
860         * svg/SVGTextPathElement.h:
861         * svg/SVGTitleElement.h:
862         (WebCore::SVGTitleElement::rendererIsNeeded):
863         * svg/SVGTransformDistance.cpp:
864         (WebCore::SVGTransformDistance::SVGTransformDistance):
865         (WebCore::SVGTransformDistance::scaledDistance):
866         (WebCore::SVGTransformDistance::addSVGTransforms):
867         (WebCore::SVGTransformDistance::addSVGTransform):
868         (WebCore::SVGTransformDistance::addToSVGTransform):
869         (WebCore::SVGTransformDistance::isZero):
870         * svg/SVGTransformList.cpp:
871         * svg/SVGURIReference.cpp:
872         (WebCore::SVGURIReference::getTarget):
873         * svg/SVGVKernElement.h:
874         * svg/SVGViewSpec.cpp:
875         (WebCore::SVGViewSpec::parseViewSpec):
876         * svg/SVGZoomAndPan.h:
877         (WebCore::SVGZoomAndPan::SVGZoomAndPan):
878         (WebCore::SVGZoomAndPan::~SVGZoomAndPan):
879         (WebCore::SVGZoomAndPan::zoomAndPan):
880         * svg/SVGZoomEvent.h:
881         (WebCore::SVGZoomEvent::create):
882         * svg/animation/SMILTime.cpp:
883         (WebCore::operator*):
884         * svg/animation/SMILTime.h:
885         (WebCore::SMILTime::SMILTime):
886         (WebCore::SMILTime::unresolved):
887         (WebCore::SMILTime::indefinite):
888         (WebCore::SMILTime::operator=):
889         (WebCore::SMILTime::value):
890         (WebCore::SMILTime::isFinite):
891         (WebCore::SMILTime::isIndefinite):
892         (WebCore::SMILTime::isUnresolved):
893         (WebCore::operator==):
894         (WebCore::operator!): new operator checks for 0 or infinite values.
895         (WebCore::operator!=):
896         (WebCore::operator>):
897         (WebCore::operator<):
898         (WebCore::operator>=):
899         (WebCore::operator<=):
900         * svg/animation/SMILTimeContainer.h:
901         (WebCore::SMILTimeContainer::create):
902         (WebCore::SMILTimeContainer::setDocumentOrderIndexesDirty):
903         * svg/animation/SVGSMILElement.cpp:
904         (WebCore::ConditionEventListener::operator==):
905         (WebCore::SVGSMILElement::repeatingDuration):
906         (WebCore::SVGSMILElement::resolveInterval):
907         (WebCore::SVGSMILElement::calculateAnimationPercentAndRepeat):
908         * svg/animation/SVGSMILElement.h:
909         (WebCore::SVGSMILElement::timeContainer):
910         (WebCore::SVGSMILElement::intervalBegin):
911         (WebCore::SVGSMILElement::intervalEnd):
912         (WebCore::SVGSMILElement::previousIntervalBegin):
913         (WebCore::SVGSMILElement::documentOrderIndex):
914         (WebCore::SVGSMILElement::setDocumentOrderIndex):
915         * svg/graphics/SVGImage.h:
916         (WebCore::SVGImage::create):
917         (WebCore::SVGImage::destroyDecodedData):
918         (WebCore::SVGImage::decodedSize):
919         (WebCore::SVGImage::frameAtIndex):
920         * svg/graphics/filters/SVGFilterBuilder.h:
921         (WebCore::SVGFilterBuilder::create):
922         (WebCore::SVGFilterBuilder::lastEffect):
923         (WebCore::SVGFilterBuilder::getEffectReferences):
924         (WebCore::SVGFilterBuilder::addBuiltinEffects):
925
926 2010-12-29  Abhishek Arya  <inferno@chromium.org>
927
928         Reviewed by Darin Adler.
929
930         ASSERT(oldchild->parent() == owner) fails.
931         https://bugs.webkit.org/show_bug.cgi?id=50480
932
933         In RenderBlock removeChild function, when the inlineChildrenBlock(equal to prev or next)
934         is reparented to blockChildrenBlock, it is no longer a child of "this". This causes the
935         assertion failure when removeChildNode executes on the child(equal to prev or next).
936         Fix a typo in canMergeContiguousAnonymousBlocks.
937
938         Test: fast/multicol/span/double-merge-anonymous-block-crash.html
939
940         * rendering/RenderBlock.cpp:
941         (WebCore::canMergeContiguousAnonymousBlocks): fix typo, change prev to next.
942         (WebCore::RenderBlock::removeChild): if prev or not is reparented, then set it to zero.
943
944 2010-12-29  Justin Schuh  <jschuh@chromium.org>
945
946         Reviewed by Darin Adler.
947
948         Check SVG element type in FrameView::scrollToAnchor
949         https://bugs.webkit.org/show_bug.cgi?id=51718
950
951         Test: svg/custom/scroll-to-anchor-in-symbol.svg
952
953         * page/FrameView.cpp:
954         (WebCore::FrameView::scrollToAnchor):
955
956 2010-12-29  Anton Muhin  <antonm@chromium.org>
957
958         Reviewed by Eric Seidel.
959
960         [v8] Minor cleanup: remove unused method (the only method which can mutate context of V8DOMWindowShell)
961         https://bugs.webkit.org/show_bug.cgi?id=51704
962
963         * bindings/v8/V8DOMWindowShell.cpp:
964         * bindings/v8/V8DOMWindowShell.h:
965
966 2010-12-29  Kenichi Ishibashi  <bashi@google.com>
967
968         Reviewed by Darin Adler.
969
970         Use a HashMap for m_continuation to save memory
971         https://bugs.webkit.org/show_bug.cgi?id=43716
972
973         Saving memory consumption by applying a HashMap convention to
974         continuation pointers of RenderInline and RenderBlock classes.
975
976         * rendering/RenderBlock.cpp: Removed m_continuation.
977         (WebCore::RenderBlock::RenderBlock):
978         (WebCore::RenderBlock::destroy):
979         (WebCore::RenderBlock::inlineElementContinuation):
980         (WebCore::RenderBlock::blockElementContinuation):
981         * rendering/RenderBlock.h: Removed m_continuation.
982         * rendering/RenderBoxModelObject.cpp: Added a hash map for continuations.
983         (WebCore::RenderBoxModelObject::destroy): Added an assertion.
984         (WebCore::RenderBoxModelObject::continuation): Added.
985         (WebCore::RenderBoxModelObject::setContinuation): Added.
986         * rendering/RenderBoxModelObject.h:
987         * rendering/RenderInline.cpp: Removed m_continuation.
988         (WebCore::RenderInline::RenderInline):
989         (WebCore::RenderInline::destroy):
990         (WebCore::RenderInline::inlineElementContinuation):
991         * rendering/RenderInline.h: Removed m_continuation.
992
993 2010-12-27  Amruth Raj  <amruthraj@motorola.com> and Ravi Kasibhatla  <ravi.kasibhatla@motorola.com>
994
995         Reviewed by Martin Robinson.
996
997         [GTK] Enable building whatever already exists of WebKit2
998         https://bugs.webkit.org/show_bug.cgi?id=37369
999
1000         No new functionality added or deleted. Only makefile change. Hence, no tests added.
1001
1002         * GNUmakefile.am: Removed bindings/gobject from webcore_sources & webcore_cppflags and
1003         added them to WebKit/gtk/GNUmakefile.am
1004         * platform/network/soup/cache/webkit/soup-cache.h: Remove include <webkit/webkitdefines.h>
1005         and declare WEBKIT_API directly
1006
1007 2010-12-29  Eric Seidel  <eric@webkit.org>
1008
1009         Unreviewed.
1010
1011         Simplify make-hash-tools.pl
1012         https://bugs.webkit.org/show_bug.cgi?id=49922
1013
1014         Added HashTools.h to the project file now that its not autogenerated.
1015         I also sorted the project file using sort-xcode-project-file
1016
1017         * WebCore.xcodeproj/project.pbxproj:
1018
1019 2010-12-29  Pavel Feldman  <pfeldman@chromium.org>
1020
1021         Not reviewed: revert r74755 and 74757.
1022
1023 2010-12-29  Martin Robinson  <mrobinson@igalia.com>
1024
1025         Reviewed by Sam Weinig.
1026
1027         JSDataViewCustom.cpp gives the fastcall calling convention to functions called via C++
1028         https://bugs.webkit.org/show_bug.cgi?id=51722
1029
1030         Remove the JSC_HOST_CALL from methods that are called from C++. JSC_HOST_CALL gives
1031         methods the fastcall calling convention, which leads to runtime errors when they are
1032         called from C++. Also remove a bit of unnecessary code duplication.
1033
1034         No new tests. This is covered by fast/canvas/webgl/data-view-test.html.
1035
1036         * bindings/js/JSDataViewCustom.cpp:
1037         (WebCore::getDataViewMember): Remove duplicated code.
1038         (WebCore::JSDataView::getInt8): Remove JSC_HOST_CALL.
1039         (WebCore::JSDataView::getUint8): Ditto.
1040         (WebCore::JSDataView::getFloat32): Ditto.
1041         (WebCore::JSDataView::getFloat64): Ditto.
1042         (WebCore::setDataViewMember): Remove duplicated code.
1043         (WebCore::JSDataView::setInt8): Remove JSC_HOST_CALL.
1044         (WebCore::JSDataView::setUint8): Ditto.
1045
1046 2010-12-29  Dan Bernstein  <mitz@apple.com>
1047
1048         Reviewed by Kenneth Russel.
1049
1050         A more robust fix for https://bugs.webkit.org/show_bug.cgi?id=51681
1051
1052         * html/HTMLCanvasElement.cpp:
1053         (WebCore::HTMLCanvasElement::attach): Added. Like recalcStyle(), calls
1054         CanvasRenderingContext2D::updateFont() if necessary. This covers the case of a detach/
1055         attach-type style recalc.
1056         * html/HTMLCanvasElement.h:
1057         * html/canvas/CanvasRenderingContext2D.cpp:
1058         (WebCore::CanvasRenderingContext2D::drawTextInternal): Removed the early return added in
1059         r74716. A font that is loading custom fonts is okay to use, as long as it is valid.
1060         (WebCore::CanvasRenderingContext2D::accessFont): Added a call to
1061         Document::updateStyleIfNeeded(). This ensures that any pending style recalc will take place
1062         and update the font if it is invalid.
1063         * platform/graphics/Font.h:
1064         (WebCore::Font::loadingCustomFonts): Made this private.
1065
1066 2010-12-29  Pavel Feldman  <pfeldman@chromium.org>
1067
1068         Not reviewed: Qt build fix.
1069
1070         * inspector/InspectorController.cpp:
1071
1072 2010-12-29  Pavel Feldman  <pfeldman@chromium.org>
1073
1074         Reviewed by Yury Semikhatsky.
1075
1076         Web Inspector: extract Database & DOM Storage
1077         agents; remove InspectorBackend.
1078         https://bugs.webkit.org/show_bug.cgi?id=51707
1079
1080         This change brushes up storage agents + removes redundant
1081         InspectorBackend class.
1082
1083         * CMakeLists.txt:
1084         * GNUmakefile.am:
1085         * WebCore.gypi:
1086         * WebCore.pro:
1087         * WebCore.vcproj/WebCore.vcproj:
1088         * WebCore.xcodeproj/project.pbxproj:
1089         * inspector/CodeGeneratorInspector.pm:
1090         * inspector/InjectedScriptHost.cpp:
1091         (WebCore::InjectedScriptHost::databaseForId):
1092         (WebCore::InjectedScriptHost::selectDatabase):
1093         (WebCore::InjectedScriptHost::selectDOMStorage):
1094         (WebCore::InjectedScriptHost::inspectorDOMAgent):
1095         * inspector/Inspector.idl:
1096         * inspector/InspectorBackend.cpp: Removed.
1097         * inspector/InspectorBackend.h: Removed.
1098         * inspector/InspectorController.cpp:
1099         (WebCore::InspectorController::InspectorController):
1100         (WebCore::InspectorController::~InspectorController):
1101         (WebCore::InspectorController::connectFrontend):
1102         (WebCore::InspectorController::releaseFrontendLifetimeAgents):
1103         (WebCore::InspectorController::didUseDOMStorage):
1104         (WebCore::InspectorController::setInjectedScriptSource):
1105         (WebCore::InspectorController::dispatchOnInjectedScript):
1106         (WebCore::InspectorController::releaseWrapperObjectGroup):
1107         * inspector/InspectorController.h:
1108         * inspector/InspectorDOMStorageAgent.cpp: Added.
1109         (WebCore::InspectorDOMStorageAgent::~InspectorDOMStorageAgent):
1110         (WebCore::InspectorDOMStorageAgent::getDOMStorageEntries):
1111         (WebCore::InspectorDOMStorageAgent::setDOMStorageItem):
1112         (WebCore::InspectorDOMStorageAgent::removeDOMStorageItem):
1113         (WebCore::InspectorDOMStorageAgent::selectDOMStorage):
1114         (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
1115         (WebCore::InspectorDOMStorageAgent::getDOMStorageResourceForId):
1116         * inspector/InspectorDOMStorageAgent.h: Copied from WebCore/inspector/InspectorStorageAgent.h.
1117         (WebCore::InspectorDOMStorageAgent::create):
1118         (WebCore::InspectorDOMStorageAgent::frontend):
1119         * inspector/InspectorDatabaseAgent.cpp: Renamed from WebCore/inspector/InspectorStorageAgent.cpp.
1120         (WebCore::InspectorDatabaseAgent::~InspectorDatabaseAgent):
1121         (WebCore::InspectorDatabaseAgent::getDatabaseTableNames):
1122         (WebCore::InspectorDatabaseAgent::executeSQL):
1123         (WebCore::InspectorDatabaseAgent::databaseForId):
1124         (WebCore::InspectorDatabaseAgent::selectDatabase):
1125         (WebCore::InspectorDatabaseAgent::clearFrontend):
1126         (WebCore::InspectorDatabaseAgent::InspectorDatabaseAgent):
1127         * inspector/InspectorDatabaseAgent.h: Renamed from WebCore/inspector/InspectorStorageAgent.h.
1128         (WebCore::InspectorDatabaseAgent::create):
1129         (WebCore::InspectorDatabaseAgent::frontend):
1130         * inspector/InspectorFrontendClientLocal.cpp:
1131         * inspector/InspectorFrontendClientLocal.h:
1132         * inspector/front-end/ScriptsPanel.js:
1133         (WebInspector.ScriptsPanel.prototype.show):
1134
1135 2010-12-29  Tony Gentilcore  <tonyg@chromium.org>
1136
1137         Reviewed by Eric Seidel.
1138
1139         Assertion failure: element->inDocument() in AsyncScriptRunner::executeScriptSoon()
1140         https://bugs.webkit.org/show_bug.cgi?id=51067
1141
1142         Typically when a script element is removed from the document, the cached script
1143         client is removed. However, during the before load event, the cached script client
1144         hasn't been created yet so it can't be removed.
1145
1146         This patch handles that case by explicitly checking if the script element was
1147         removed during the beforeload event. Also, it avoids caching the Document references
1148         over the arbitrary script execution in the before load event.
1149
1150         Test: fast/dom/HTMLScriptElement/move-in-beforeload.html
1151               fast/dom/HTMLScriptElement/remove-in-beforeload.html
1152
1153         * dom/ScriptElement.cpp:
1154         (WebCore::ScriptElement::requestScript):
1155
1156 2010-12-29  Alexander Pavlov  <apavlov@chromium.org>
1157
1158         Reviewed by Yury Semikhatsky.
1159
1160         Web Inspector: Element highlight tooltip displays wrong element size when zoomed in
1161         https://bugs.webkit.org/show_bug.cgi?id=51703
1162
1163         * inspector/InspectorController.cpp:
1164         (WebCore::InspectorController::drawElementTitle):
1165
1166 2010-12-29  Yael Aharon  <yael.aharon@nokia.com>
1167
1168         Reviewed by Kent Tamura.
1169
1170         [HTML5][Forms] Support for :in-range and :out-of-range CSS selectors
1171         https://bugs.webkit.org/show_bug.cgi?id=29071
1172
1173         Use InputType::rangeUnderflow() and InputType::rangeOverflow()
1174         to determine if a control is in-range or out-of-range.
1175
1176         Tests: fast/css/pseudo-in-range-invalid-value.html
1177                fast/css/pseudo-in-range.html
1178                fast/css/pseudo-out-of-range.html
1179
1180         * css/CSSSelector.cpp:
1181         (WebCore::CSSSelector::pseudoId):
1182         (WebCore::nameToPseudoTypeMap):
1183         (WebCore::CSSSelector::extractPseudoType):
1184         * css/CSSSelector.h:
1185         * css/CSSStyleSelector.cpp:
1186         (WebCore::CSSStyleSelector::canShareStyleWithElement):
1187         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
1188         * dom/Element.h:
1189         (WebCore::Element::isInRange):
1190         (WebCore::Element::isOutOfRange):
1191         * html/BaseDateAndTimeInputType.cpp:
1192         (WebCore::BaseDateAndTimeInputType::supportsRangeLimitation):
1193         * html/BaseDateAndTimeInputType.h:
1194         * html/HTMLInputElement.cpp:
1195         (WebCore::HTMLInputElement::isInRange):
1196         (WebCore::HTMLInputElement::isOutOfRange):
1197         * html/HTMLInputElement.h:
1198         * html/InputType.cpp:
1199         (WebCore::InputType::supportsRangeLimitation):
1200         * html/InputType.h:
1201         * html/NumberInputType.cpp:
1202         (WebCore::NumberInputType::supportsRangeLimitation):
1203         * html/NumberInputType.h:
1204         * html/RangeInputType.cpp:
1205         (WebCore::RangeInputType::supportsRangeLimitation):
1206         * html/RangeInputType.h:
1207
1208 2010-12-29  Abhishek Arya  <inferno@chromium.org>
1209
1210         Reviewed by Eric Seidel.
1211
1212         When cloning an anonymous block, make sure to set the childrenInline flag based
1213         on the state of the block to be cloned.
1214         https://bugs.webkit.org/show_bug.cgi?id=51489
1215
1216         Test: fast/multicol/span/clone-anonymous-block-non-inline-child-crash.html
1217
1218         * rendering/RenderBlock.cpp:
1219         (WebCore::RenderBlock::clone): add code to handle cloning of anonymous blocks.
1220         (WebCore::RenderBlock::splitBlocks): remove anonymous block creation calls since it is now handled by clone().
1221
1222 2010-12-29  Patrick Gansterer  <paroga@webkit.org>
1223
1224         Unreviewed build fix for WinCE after r73802.
1225
1226         Reapply parts from r72585:
1227         Port ContextMenuWin.cpp to WinCE
1228         https://bugs.webkit.org/show_bug.cgi?id=48408
1229
1230         * CMakeLists.txt:
1231         * platform/ContextMenu.h:
1232         * platform/win/ContextMenuWin.cpp:
1233         (WebCore::ContextMenu::getContextMenuItems):
1234         (WebCore::ContextMenu::createNativeMenuFromItems):
1235
1236 2010-12-29  Kent Hansen  <kent.hansen@nokia.com>
1237
1238         Reviewed by Simon Hausmann.
1239
1240         [Qt] Fix compilation with Qt in namespace
1241         https://bugs.webkit.org/show_bug.cgi?id=51701
1242
1243         * platform/graphics/ContextShadow.h:
1244         * platform/graphics/GraphicsContext3D.h:
1245         * platform/network/NetworkingContext.h:
1246         * platform/network/qt/QtNAMThreadSafeProxy.h:
1247         * plugins/PluginView.h:
1248
1249 2010-12-28  Alexander Pavlov  <apavlov@chromium.org>
1250
1251         Reviewed by Pavel Feldman.
1252
1253         Web Inspector: A disabled style property should get enabled when edited
1254         https://bugs.webkit.org/show_bug.cgi?id=51679
1255
1256         Test: inspector/styles-disable-then-change.html
1257
1258         * inspector/front-end/CSSStyleModel.js:
1259         (WebInspector.CSSProperty.prototype.setText):
1260         (WebInspector.CSSProperty.prototype.setText.callback):
1261
1262 2010-12-29  Patrick Gansterer  <paroga@webkit.org>
1263
1264         Reviewed by Andreas Kling.
1265
1266         [CMake] Remove WebKitGenerators
1267         https://bugs.webkit.org/show_bug.cgi?id=50445
1268
1269         * CMakeLists.txt: Pass preprocessor to generate-bindings.pl.
1270
1271 2010-12-28  Pratik Solanki  <psolanki@apple.com>
1272
1273         Reviewed by Eric Seidel.
1274
1275         https://bugs.webkit.org/show_bug.cgi?id=51522
1276         Use deviceRGBColorSpaceRef() instead of calling CGColorSpaceCreateDeviceRGB()
1277
1278         * page/win/FrameCGWin.cpp:
1279         (WebCore::imageFromRect):
1280         * platform/graphics/cg/GradientCG.cpp:
1281         (WebCore::Gradient::platformGradient):
1282         * platform/graphics/cg/GraphicsContext3DCG.cpp:
1283         (WebCore::GraphicsContext3D::paintToCanvas):
1284         * platform/graphics/cg/ImageCG.cpp:
1285         (WebCore::BitmapImage::checkForSolidColor):
1286         * platform/graphics/gstreamer/ImageGStreamerCG.mm:
1287         (ImageGStreamer::ImageGStreamer):
1288         * platform/graphics/win/GraphicsContextCGWin.cpp:
1289         (WebCore::CGContextWithHDC):
1290         (WebCore::GraphicsContext::releaseWindowsContext):
1291         (WebCore::GraphicsContext::drawWindowsBitmap):
1292         * platform/graphics/win/ImageCGWin.cpp:
1293         (WebCore::BitmapImage::create):
1294         (WebCore::BitmapImage::getHBITMAPOfSize):
1295         * platform/image-decoders/cg/ImageDecoderCG.cpp:
1296         (WebCore::createColorSpace):
1297         * platform/win/DragImageCGWin.cpp:
1298         (WebCore::allocImage):
1299         (WebCore::createCgContextFromBitmap):
1300         * rendering/RenderThemeMac.mm:
1301         (WebCore::RenderThemeMac::paintMenuListButtonGradients):
1302         (WebCore::RenderThemeMac::paintSliderTrack):
1303         * rendering/RenderThemeSafari.cpp:
1304         (WebCore::RenderThemeSafari::paintMenuListButtonGradients):
1305         (WebCore::RenderThemeSafari::paintSliderTrack):
1306
1307 2010-12-28  Daniel Bates  <dbates@rim.com>
1308
1309         Reviewed by Sam Weinig.
1310
1311         Substitute // MARK: for compiler-specific #pragma mark
1312         https://bugs.webkit.org/show_bug.cgi?id=51657
1313
1314         Fix compilation warnings about "#pragma mark" on GTK+ bots by
1315         substituting  "// MARK:" for "#pragma mark", which provides
1316         analogous code-bookmarking functionality under Xcode.
1317
1318         * platform/graphics/cg/PathCG.cpp:
1319         * platform/graphics/mac/WebLayer.mm:
1320
1321 2010-12-28  Jan Erik Hanssen  <jhanssen@sencha.com>
1322
1323         Reviewed by Eric Seidel.
1324
1325         [Qt] GraphicsContext::getCTM() does not need to make a copy of QPainter::combinedTransform()
1326         https://bugs.webkit.org/show_bug.cgi?id=51687
1327
1328         Use a const reference instead of a copy of QPainter::combinedTransform() 
1329         in GraphicsContext::getCTM()
1330
1331         * platform/graphics/qt/GraphicsContextQt.cpp:
1332         (WebCore::GraphicsContext::getCTM):
1333
1334 2010-12-28  Takashi Toyoshima  <toyoshim@google.com>
1335
1336         Reviewed by Eric Seidel.
1337
1338         gcc detected 'control reaches end of non-void function' with
1339         -finstrument-functions option.
1340         https://bugs.webkit.org/show_bug.cgi?id=51669
1341
1342         No new tests. These fixes are trivial.
1343
1344         * dom/Element.cpp:
1345         (WebCore::Element::childTypeAllowed):
1346         * inspector/InspectorResourceAgent.cpp:
1347         (WebCore::cachedResourceTypeString):
1348
1349 2010-12-28  Tony Gentilcore  <tonyg@chromium.org>
1350
1351         Reviewed by Eric Seidel.
1352
1353         Remove unused member of PendingScript
1354         https://bugs.webkit.org/show_bug.cgi?id=51684
1355
1356         This was used when HTMLScriptRunner::runScript created a PendingScript
1357         for inline scripts. But now it just calls executeScript() directly.
1358         External scripts always have the minimum starting line number.
1359
1360         No new tests because no changed functionality.
1361
1362         * dom/PendingScript.cpp:
1363         (WebCore::PendingScript::releaseElementAndClear):
1364         * dom/PendingScript.h:
1365         (WebCore::PendingScript::PendingScript):
1366         (WebCore::PendingScript::operator=):
1367         * html/parser/HTMLScriptRunner.cpp:
1368         (WebCore::HTMLScriptRunner::sourceFromPendingScript):
1369
1370 2010-12-20  Antonio Gomes  <agomes@rim.com>
1371
1372         Reviewed by Daniel Bates.
1373
1374         Spatial Navigation: code clean up (Part VI)
1375         https://bugs.webkit.org/show_bug.cgi?id=50666
1376
1377         No new tests needed.
1378
1379         * page/FocusController.cpp:
1380         (WebCore::updatFocusCandidateIfNeeded): Assert renderer() and
1381         isElementNode() now that we are bailing out earlier in both the
1382         FocusCandidate constructor and FocusController::findFocusCandidateInContainer().
1383         * page/SpatialNavigation.h: Swapped the parameters order in canScrollInDirection
1384         and virtualRectForAreaElementAndDirection functions.
1385         (WebCore::FocusController::findFocusCandidateInContainer):
1386         (WebCore::FocusController::advanceFocusDirectionallyInContainer): Adjusted callsites
1387         of canScrollInDirection(), and added an early return if !isElementNode().
1388         (WebCore::FocusController::advanceFocusDirectionally): Adjusted callsite of
1389         virtualRectForAreaElementAndDirection();
1390         * page/SpatialNavigation.cpp:
1391         (WebCore::FocusCandidate::FocusCandidate): Assert if node is not a element node;
1392         (WebCore::isScrollableNode): Renamed from isScrollableContainerNode;
1393         (WebCore::scrollInDirection): Adjusted callsite after function name change;
1394         (WebCore::scrollableEnclosingBoxOrParentFrameForNodeInDi:rection): Assert if node is
1395         a documentNode.
1396         (WebCore::canScrollInDirection): Signature changed.
1397         (WebCore::canBeScrolledIntoView): Ditto.
1398         (WebCore::virtualRectForAreaElementAndDirection): Ditto.
1399
1400 2010-12-28  Adrienne Walker  <enne@google.com>
1401
1402         Reviewed by Kenneth Russell.
1403
1404         [chromium] Fix tiled compositor assertion after GPU process recovery.
1405         https://bugs.webkit.org/show_bug.cgi?id=51682
1406
1407         After the GPU process recovers, the layer size is set to IntSize(),
1408         but IntRect::unite() has a special case for empty rects.  This
1409         behavior was causing the layer size to be too small, causing an
1410         out-of-bounds array access elsewhere.
1411
1412         No new tests.
1413
1414         * platform/graphics/chromium/LayerTilerChromium.cpp:
1415         (WebCore::LayerTilerChromium::growLayerToContain):
1416
1417 2010-12-23  Zhenyao Mo  <zmo@google.com>
1418
1419         Reviewed by Kenneth Russell.
1420
1421         Initialize to 0 for undefined values in CopyTexImage2D
1422         https://bugs.webkit.org/show_bug.cgi?id=51421
1423
1424         * html/canvas/WebGLFramebuffer.cpp: Track width/height/internalFormat of color buffer.
1425         (WebCore::WebGLFramebuffer::WebGLFramebuffer):
1426         (WebCore::WebGLFramebuffer::setAttachment):
1427         (WebCore::WebGLFramebuffer::getWidth):
1428         (WebCore::WebGLFramebuffer::getHeight):
1429         (WebCore::WebGLFramebuffer::getColorBufferFormat):
1430         * html/canvas/WebGLFramebuffer.h:
1431         * html/canvas/WebGLRenderingContext.cpp:
1432         (WebCore::WebGLRenderingContext::copyTexImage2D): Initialize undefined pixels to 0.
1433         (WebCore::WebGLRenderingContext::copyTexSubImage2D):
1434         (WebCore::WebGLRenderingContext::framebufferTexture2D):
1435         (WebCore::WebGLRenderingContext::renderbufferStorage):
1436         (WebCore::WebGLRenderingContext::getBoundFramebufferWidth):
1437         (WebCore::WebGLRenderingContext::getBoundFramebufferHeight):
1438         * html/canvas/WebGLRenderingContext.h:
1439         * html/canvas/WebGLTexture.cpp: Track width/height/internalFormat of a texture by target/level.
1440         (WebCore::WebGLTexture::getInternalFormat):
1441         (WebCore::WebGLTexture::getWidth):
1442         (WebCore::WebGLTexture::getHeight):
1443         (WebCore::WebGLTexture::mapTargetToIndex):
1444         (WebCore::WebGLTexture::getLevelInfo):
1445         * html/canvas/WebGLTexture.h:
1446         (WebCore::WebGLTexture::isTexture):
1447         * platform/graphics/GraphicsContext3D.h: Add getInternalFramebufferSize() function.
1448         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
1449         (WebCore::GraphicsContext3D::getInternalFramebufferSize):
1450         * platform/graphics/qt/GraphicsContext3DQt.cpp:
1451         (WebCore::GraphicsContext3D::getInternalFramebufferSize):
1452
1453 2010-12-23  Zhenyao Mo  <zmo@google.com>
1454
1455         Reviewed by Kenneth Russell.
1456
1457         Map GLsizei to long instead of unsigned long in WebGLRenderingContext and GraphicsContext3D
1458         https://bugs.webkit.org/show_bug.cgi?id=39855
1459
1460         * html/canvas/WebGLRenderingContext.cpp:
1461         (WebCore::WebGLRenderingContext::copyTexImage2D): Map GLsizei to long.
1462         (WebCore::WebGLRenderingContext::copyTexSubImage2D): Ditto.
1463         (WebCore::WebGLRenderingContext::renderbufferStorage): Ditto.
1464         (WebCore::WebGLRenderingContext::scissor): Ditto.
1465         (WebCore::WebGLRenderingContext::texImage2DBase): Ditto.
1466         (WebCore::WebGLRenderingContext::texImage2D): Ditto.
1467         (WebCore::WebGLRenderingContext::texSubImage2DBase): Ditto.
1468         (WebCore::WebGLRenderingContext::texSubImage2DImpl): Ditto.
1469         (WebCore::WebGLRenderingContext::texSubImage2D): Ditto.
1470         (WebCore::WebGLRenderingContext::viewport): Ditto.
1471         (WebCore::WebGLRenderingContext::validateSize): Check the sizes are non-negative.
1472         * html/canvas/WebGLRenderingContext.h:
1473         * html/canvas/WebGLRenderingContext.idl:
1474
1475 2010-12-28  Abhishek Arya  <inferno@chromium.org>
1476
1477         Reviewed by Kenneth Russell.
1478
1479         Fix crash with invalid font in m_fontList by not drawing text when a custom font is in the
1480         process of loading.
1481         https://bugs.webkit.org/show_bug.cgi?id=51681
1482
1483         Test: canvas/philip/tests/2d.text-custom-font-load-crash.html
1484
1485         * html/canvas/CanvasRenderingContext2D.cpp:
1486         (WebCore::CanvasRenderingContext2D::drawTextInternal): bail out if a custom font is loading.
1487         * platform/graphics/Font.cpp:
1488         (WebCore::Font::operator==): Replace condition with new function loadingCustomFonts()
1489         (WebCore::Font::drawText): Replace condition with new function loadingCustomFonts()
1490         (WebCore::Font::drawEmphasisMarks): Replace condition with new function loadingCustomFonts()
1491         * platform/graphics/Font.h:
1492         (WebCore::Font::loadingCustomFonts): new function that returns if a custom font is loading.
1493
1494 2010-12-28  Dimitri Glazkov  <dglazkov@chromium.org>
1495
1496         Reviewed by Eric Seidel.
1497
1498         Combine setShadowRoot and clearShadowRoot into a simpler API
1499         https://bugs.webkit.org/show_bug.cgi?id=50971
1500
1501         No change in behavior, and API is not used yet.
1502
1503         * dom/Element.cpp:
1504         (WebCore::Element::setShadowRoot): Combined clearing and setting of
1505             the shadowRoot, also hooked up with setting and clearing of the
1506             corresponding shadowHost values.
1507         * dom/Element.h: renamed clearShadowRoot to removeShadowRoot and made it
1508             private.
1509         * dom/Node.h: Made shadow host-related functions public so that
1510             Element::setShadowRoot can access setShadowHost. It seems logical
1511             to make shadowHost public as well to keep the defs together.
1512
1513 2010-12-28  Andrey Kosyakov  <caseq@chromium.org>
1514
1515         Reviewed by Pavel Feldman.
1516
1517         Web Inspector: [Chromium] Expose extension API to select a node in WebInspector
1518         Do not request content for resources with non-numeric identifiers.
1519         https://bugs.webkit.org/show_bug.cgi?id=49727
1520
1521         Test: http/tests/inspector/extensions-resources-redirect.html
1522
1523         * inspector/front-end/NetworkManager.js:
1524         (WebInspector.NetworkManager.prototype._appendRedirect):
1525
1526 2010-12-28  Ilya Tikhonovsky  <loislo@chromium.org>
1527
1528         Unreviewed build fix for Qt.
1529
1530         ResourceTreeModel.js was added.
1531
1532         * inspector/front-end/WebKit.qrc:
1533
1534 2010-12-28  Mikhail Naganov  <mnaganov@chromium.org>
1535
1536         Reviewed by Pavel Feldman.
1537
1538         [Chromium] Fix memory leak in Profiles tab concerned with heap profiles views.
1539
1540         https://bugs.webkit.org/show_bug.cgi?id=51680
1541
1542         * inspector/front-end/ProfilesPanel.js:
1543         (WebInspector.ProfilesPanel.prototype._reset):
1544
1545 2010-12-28  Alexander Pavlov  <apavlov@chromium.org>
1546
1547         Reviewed by Pavel Feldman.
1548
1549         Web Inspector: REGRESSION: Clicking image resource in style sidebar doesn't actually go to resource anymore
1550         https://bugs.webkit.org/show_bug.cgi?id=51663
1551
1552         The base URI is now computed correctly for links from CSS property uri(...) values. Additionally,
1553         optional quotes/apostrophes and spaces are now allowed inside uri(...).
1554
1555         Test: inspector/styles-url-linkify.html
1556
1557         * inspector/front-end/StylesSidebarPane.js:
1558         (WebInspector.StylePropertyTreeElement.prototype.updateTitle.linkifyURL):
1559         (WebInspector.StylePropertyTreeElement.prototype.updateTitle):
1560
1561 2010-12-21  Ilya Tikhonovsky  <loislo@chromium.org>
1562
1563         Reviewed by Pavel Feldman.
1564
1565         Web Inspector: Protocol cleanup task. Introduce Network, DOMStorage and Database domains.
1566
1567         Domain was changed for Resources, FileSystem etc. related methods.
1568         ResourcesManager was renamed to NetworkManager.
1569         ResourceTreeModel was extracted as separate file.
1570         FileSystem, Database, DOMStorage and ApplicationCache methods were
1571         removed from NetworkManager and added to corresponding classes.
1572
1573         https://bugs.webkit.org/show_bug.cgi?id=51334
1574
1575         * WebCore.gypi:
1576         * WebCore.vcproj/WebCore.vcproj:
1577         * inspector/CodeGeneratorInspector.pm:
1578         * inspector/Inspector.idl:
1579         * inspector/front-end/AuditRules.js:
1580         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.selectorsCallback):
1581         * inspector/front-end/CSSStyleModel.js:
1582         (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
1583         (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
1584         * inspector/front-end/ConsoleView.js:
1585         (WebInspector.ConsoleView.prototype.addMessage):
1586         (WebInspector.ConsoleView.prototype.clearMessages):
1587         * inspector/front-end/DOMAgent.js:
1588         (WebInspector.ApplicationCache.updateApplicationCacheStatus):
1589         (WebInspector.ApplicationCache.updateNetworkState):
1590         * inspector/front-end/DOMStorage.js:
1591         (WebInspector.DOMStorage.addDOMStorage):
1592         (WebInspector.DOMStorage.selectDOMStorage):
1593         (WebInspector.DOMStorage.updateDOMStorage):
1594         * inspector/front-end/Database.js:
1595         (WebInspector.Database.prototype.executeSql):
1596         (WebInspector.Database.addDatabase):
1597         (WebInspector.Database.selectDatabase):
1598         (WebInspector.Database.sqlTransactionSucceeded):
1599         (WebInspector.Database.sqlTransactionFailed):
1600         * inspector/front-end/FileSystemView.js:
1601         (WebInspector.FileSystem.didGetFileSystemPath):
1602         (WebInspector.FileSystem.didGetFileSystemError):
1603         (WebInspector.FileSystem.didGetFileSystemDisabled):
1604         * inspector/front-end/NetworkItemView.js:
1605         (WebInspector.NetworkItemView):
1606         * inspector/front-end/NetworkManager.js: Added.
1607         (WebInspector.NetworkManager):
1608         (WebInspector.NetworkManager.prototype._createResource):
1609         (WebInspector.NetworkManager.prototype.identifierForInitialRequest):
1610         (WebInspector.NetworkManager.prototype.willSendRequest):
1611         (WebInspector.NetworkManager.prototype._updateResourceWithRequest):
1612         (WebInspector.NetworkManager.prototype._appendRedirect):
1613         (WebInspector.NetworkManager.prototype.markResourceAsCached):
1614         (WebInspector.NetworkManager.prototype.didReceiveResponse):
1615         (WebInspector.NetworkManager.prototype._updateResourceWithResponse):
1616         (WebInspector.NetworkManager.prototype.didReceiveContentLength):
1617         (WebInspector.NetworkManager.prototype.didFinishLoading):
1618         (WebInspector.NetworkManager.prototype.didFailLoading):
1619         (WebInspector.NetworkManager.prototype.didLoadResourceFromMemoryCache):
1620         (WebInspector.NetworkManager.prototype._updateResourceWithCachedResource):
1621         (WebInspector.NetworkManager.prototype.setInitialContent):
1622         (WebInspector.NetworkManager.prototype.didCommitLoadForFrame):
1623         (WebInspector.NetworkManager.prototype.frameDetachedFromParent):
1624         (WebInspector.NetworkManager.prototype.didCreateWebSocket):
1625         (WebInspector.NetworkManager.prototype.willSendWebSocketHandshakeRequest):
1626         (WebInspector.NetworkManager.prototype.didReceiveWebSocketHandshakeResponse):
1627         (WebInspector.NetworkManager.prototype.didCloseWebSocket):
1628         (WebInspector.NetworkManager.prototype._processCachedResources):
1629         (WebInspector.NetworkManager.prototype._addFramesRecursively):
1630         (WebInspector.NetworkManager.requestContent):
1631         * inspector/front-end/NetworkPanel.js:
1632         (WebInspector.NetworkPanel.prototype.refreshResource):
1633         * inspector/front-end/Resource.js:
1634         (WebInspector.Resource.prototype._innerRequestContent):
1635         * inspector/front-end/ResourceManager.js: Removed.
1636         * inspector/front-end/ResourceTreeModel.js: Added.
1637         (WebInspector.ResourceTreeModel):
1638         (WebInspector.ResourceTreeModel.prototype.addOrUpdateFrame):
1639         (WebInspector.ResourceTreeModel.prototype.didCommitLoadForFrame):
1640         (WebInspector.ResourceTreeModel.prototype.frameDetachedFromParent):
1641         (WebInspector.ResourceTreeModel.prototype._clearChildFramesAndResources):
1642         (WebInspector.ResourceTreeModel.prototype.addResourceToFrame):
1643         (WebInspector.ResourceTreeModel.prototype._clearResources):
1644         (WebInspector.ResourceTreeModel.prototype.forAllResources):
1645         (WebInspector.ResourceTreeModel.prototype.addConsoleMessage):
1646         (WebInspector.ResourceTreeModel.prototype.clearConsoleMessages):
1647         (WebInspector.ResourceTreeModel.prototype._callForFrameResources):
1648         (WebInspector.ResourceTreeModel.prototype.resourceForURL):
1649         (WebInspector.ResourceTreeModel.prototype.bindResourceURL):
1650         (WebInspector.ResourceTreeModel.prototype._unbindResourceURL):
1651         (WebInspector.ResourceTreeModel.createResource):
1652         * inspector/front-end/ResourceView.js:
1653         (WebInspector.ResourceView.createResourceView):
1654         (WebInspector.ResourceView.resourceViewTypeMatchesResource):
1655         (WebInspector.ResourceView.resourceViewForResource):
1656         (WebInspector.ResourceView.recreateResourceView):
1657         (WebInspector.ResourceView.existingResourceViewForResource):
1658         * inspector/front-end/ResourcesPanel.js:
1659         (WebInspector.ResourcesPanel.prototype.canShowSourceLine):
1660         (WebInspector.ResourcesPanel.prototype.showSourceLine):
1661         (WebInspector.ResourcesPanel.prototype.showResource):
1662         (WebInspector.ResourcesPanel.prototype.get searchableViews.callback):
1663         (WebInspector.ResourcesPanel.prototype.get searchableViews):
1664         (WebInspector.FrameResourceTreeElement.prototype._errorsWarningsUpdated):
1665         (WebInspector.FrameResourceTreeElement.prototype._contentChanged):
1666         * inspector/front-end/ScriptsPanel.js:
1667         (WebInspector.ScriptsPanel.prototype._addScript):
1668         (WebInspector.ScriptsPanel.prototype.reset):
1669         (WebInspector.ScriptsPanel.prototype._sourceFrameForResource):
1670         (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
1671         * inspector/front-end/WebKit.qrc:
1672         * inspector/front-end/inspector.html:
1673         * inspector/front-end/inspector.js:
1674         (WebInspector.forAllResources):
1675         (WebInspector.resourceForURL):
1676
1677 2010-12-27  Helder Correia  <helder@sencha.com>
1678
1679         Reviewed by Ariya Hidayat.
1680
1681         ContextShadow should use AffineTransform instead of TransformationMatrix
1682         https://bugs.webkit.org/show_bug.cgi?id=51661
1683
1684         ContextShadow needs the CTM to make sure shadows are not affected by
1685         transformations when drawing on a canvas. AffineTransform is sufficient
1686         in this case.
1687
1688         Existing tests: fast/canvas/canvas*shadow*html
1689
1690         * platform/graphics/ContextShadow.cpp:
1691         (WebCore::ContextShadow::mustUseContextShadow):
1692         (WebCore::ContextShadow::adjustBlurDistance):
1693         (WebCore::ContextShadow::calculateLayerBoundingRect):
1694         * platform/graphics/ContextShadow.h:
1695         * platform/graphics/cairo/ContextShadowCairo.cpp:
1696         (WebCore::ContextShadow::getTransformationMatrixFromContext):
1697         * platform/graphics/qt/ContextShadowQt.cpp:
1698         (WebCore::ContextShadow::getTransformationMatrixFromContext):
1699
1700 2010-12-27  Daniel Bates  <dbates@rim.com>
1701
1702         Reviewed by Antonio Gomes.
1703
1704         Clean up: Rename HTMLFrameElementBase::getMarginWidth() and HTMLFrameElementBase::getMarginHeight()
1705         https://bugs.webkit.org/show_bug.cgi?id=51634
1706
1707         Rename HTMLFrameElementBase::getMarginWidth() and HTMLFrameElementBase::getMarginHeight()
1708         to HTMLFrameElementBase::marginWidth() and HTMLFrameElementBase::marginHeight(), respectively.
1709         This will make the names of these getters consistent with the naming convention we use for
1710         getters.
1711
1712         * html/HTMLBodyElement.cpp:
1713         (WebCore::HTMLBodyElement::insertedIntoDocument):
1714         * html/HTMLFrameElementBase.h:
1715         (WebCore::HTMLFrameElementBase::marginWidth): Renamed; Formerly getMarginWidth().
1716         (WebCore::HTMLFrameElementBase::marginHeight): Renamed; Formerly getMarginHeight().
1717         * loader/SubframeLoader.cpp:
1718         (WebCore::SubframeLoader::loadSubframe):
1719         * page/FrameView.cpp:
1720         (WebCore::FrameView::init):
1721         * rendering/RenderEmbeddedObject.cpp:
1722         (WebCore::RenderEmbeddedObject::viewCleared): Also renamed variables marginw and marginh
1723         to marginWidth and marginHeight, respectively. This makes the names of these variables
1724         consistent with the names of similar variables in SubframeLoader::loadSubframe() and FrameView::init().
1725         * rendering/RenderFrame.cpp:
1726         (WebCore::RenderFrame::viewCleared): Ditto.
1727
1728 2010-12-27  Martin Robinson  <mrobinson@igalia.com>
1729
1730         Reviewed by Daniel Bates.
1731
1732         [GTK] RenderThemeGtk::m_HScale and RenderThemeGtk::m_VScale are not initialized
1733         https://bugs.webkit.org/show_bug.cgi?id=51654
1734
1735         Properly initialize slider members of RenderThemeGtk. This can lead to test crashes
1736         on some debug configurations.
1737
1738         No new tests. This is already covered by current slider tests. It isn't crashing on
1739         the bots, but it does crash locally.
1740
1741         * platform/gtk/RenderThemeGtk.cpp:
1742         (WebCore::RenderThemeGtk::RenderThemeGtk): Properly initialize members.
1743
1744 2010-12-27  Anton Muhin  <antonm@chromium.org>
1745
1746         Reviewed by David Levin.
1747
1748         [v8] Remove unused methods to protect/unprotect wrappers during garbage collection
1749         https://bugs.webkit.org/show_bug.cgi?id=51648
1750
1751         * bindings/v8/ScriptController.cpp:
1752         * bindings/v8/ScriptController.h:
1753         * bindings/v8/V8GCController.cpp:
1754         (WebCore::V8GCController::gcEpilogue):
1755         * bindings/v8/V8GCController.h:
1756
1757 2010-12-27  Yury Semikhatsky  <yurys@chromium.org>
1758
1759         Unreviewed. Removed trailing spaces from a localized
1760         string to make it the same as the one used in the code.
1761
1762         * English.lproj/localizedStrings.js:
1763
1764 2010-12-27  Yael Aharon  <yael.aharon@nokia.com>
1765
1766         Reviewed by Eric Seidel.
1767
1768         Browser is failing 16 baseline test from Selector API Test Suite
1769         https://bugs.webkit.org/show_bug.cgi?id=42968
1770
1771         Throw an exception if there is no argument to querySelector or 
1772         querySelectorAll. This replaces the current behavior of passing the string
1773         "undefined" as the argument.
1774
1775         No new tests, just updating the existing results for 
1776         fast/dom/SelectorAPI/resig-SelectorAPI-test.xhtml.
1777
1778         * dom/Document.idl:
1779         * dom/DocumentFragment.idl:
1780         * dom/Element.idl:
1781
1782 2010-12-26  MORITA Hajime  <morrita@google.com>
1783
1784         Reviewed by Dan Bernstein.
1785
1786         For box-shadow, non-primary shadows should have specified radii.
1787         https://bugs.webkit.org/show_bug.cgi?id=51386
1788
1789         On paintBoxShadow(), the spread value accidentally accumulated accidentally
1790         during the loop, which should be applied individually for radius of each shadow. 
1791         This change makes the radii for rects computed for each shadow.
1792         
1793         Test: fast/box-shadow/spread-multiple-normal.html
1794
1795         * rendering/RenderBoxModelObject.cpp:
1796         (WebCore::RenderBoxModelObject::paintBoxShadow):
1797
1798 2010-12-26  Patrick Gansterer  <paroga@webkit.org>
1799
1800         Reviewed by Eric Seidel.
1801
1802         Improve output of HTML parser benchmark
1803         https://bugs.webkit.org/show_bug.cgi?id=51611
1804
1805         Calculate and show median, min and max values.
1806
1807         * benchmarks/parser/html-parser.html:
1808
1809 2010-12-26  Abhishek Arya  <inferno@chromium.org>
1810
1811         Reviewed by Simon Fraser.
1812
1813         Remove the bad assert in paintPaginatedChildLayer, hitTestPaginatedChildLayer. 
1814         https://bugs.webkit.org/show_bug.cgi?id=48772
1815
1816         Test: fast/multicol/renderer-positioned-assert-crash.html
1817
1818         * rendering/RenderLayer.cpp:
1819         (WebCore::RenderLayer::paintPaginatedChildLayer):
1820         (WebCore::RenderLayer::hitTestPaginatedChildLayer):
1821
1822 2010-12-25  Peter Rybin  <peter.rybin@gmail.com>
1823
1824         Reviewed by Adam Barth.
1825
1826         Adds currentColumn (and currentLine) to SegmentedString. Switches
1827         HTMLTreeBuilder to HTMLDocumentParser::textPosition when it
1828         needs position for a <script> tag.
1829
1830         SegmentedString should provide column position
1831         https://bugs.webkit.org/show_bug.cgi?id=51311
1832
1833         * html/parser/HTMLDocumentParser.cpp:
1834         (WebCore::HTMLDocumentParser::HTMLDocumentParser):
1835         (WebCore::HTMLDocumentParser::textPosition):
1836         * html/parser/HTMLInputStream.h:
1837         (WebCore::HTMLInputStream::current):
1838         (WebCore::InsertionPointRecord::InsertionPointRecord):
1839         (WebCore::InsertionPointRecord::~InsertionPointRecord):
1840         * html/parser/HTMLTreeBuilder.cpp:
1841         (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
1842         (WebCore::HTMLTreeBuilder::processScriptStartTag):
1843         * html/parser/HTMLTreeBuilder.h:
1844         (WebCore::HTMLTreeBuilder::create):
1845         * platform/text/SegmentedString.cpp:
1846         (WebCore::SegmentedString::operator=):
1847         (WebCore::SegmentedString::numberOfCharactersConsumedSlow):
1848         (WebCore::SegmentedString::advanceSlowCase):
1849         (WebCore::SegmentedString::currentLine):
1850         (WebCore::SegmentedString::currentColumn):
1851         (WebCore::SegmentedString::setCurrentPosition):
1852         * platform/text/SegmentedString.h:
1853         (WebCore::SegmentedString::SegmentedString):
1854         (WebCore::SegmentedString::advancePastNewline):
1855         (WebCore::SegmentedString::advance):
1856         (WebCore::SegmentedString::numberOfCharactersConsumed):
1857
1858 2010-12-25  Andreas Kling  <kling@webkit.org>
1859
1860         Reviewed by Kenneth Rohde Christiansen.
1861
1862         GraphicsContext: Don't pass StrokeStyle (enum) as const reference
1863         https://bugs.webkit.org/show_bug.cgi?id=51608
1864
1865         * platform/graphics/GraphicsContext.cpp:
1866         (WebCore::GraphicsContext::setStrokeStyle):
1867         (WebCore::GraphicsContext::setPlatformStrokeStyle):
1868         (WebCore::GraphicsContext::adjustLineToPixelBoundaries):
1869         * platform/graphics/GraphicsContext.h:
1870         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1871         (WebCore::GraphicsContext::setPlatformStrokeStyle):
1872         * platform/graphics/haiku/GraphicsContextHaiku.cpp:
1873         (WebCore::GraphicsContext::setPlatformStrokeStyle):
1874         * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
1875         (WebCore::GraphicsContext::setPlatformStrokeStyle):
1876         * platform/graphics/openvg/PainterOpenVG.cpp:
1877         (WebCore::PainterOpenVG::setStrokeStyle):
1878         * platform/graphics/openvg/PainterOpenVG.h:
1879         * platform/graphics/qt/GraphicsContextQt.cpp:
1880         (WebCore::GraphicsContext::setPlatformStrokeStyle):
1881         * platform/graphics/skia/GraphicsContextSkia.cpp:
1882         (WebCore::GraphicsContext::setPlatformStrokeStyle):
1883
1884 2010-12-24  Dan Bernstein  <mitz@apple.com>
1885
1886         Reviewed by Alexey Proskuryakov.
1887
1888         REGRESSION (r74648): XHR layout test failures
1889         https://bugs.webkit.org/show_bug.cgi?id=51603
1890
1891         Reverted r74648.
1892
1893         * WebCore.exp.in:
1894
1895 2010-12-24  Dan Bernstein  <mitz@apple.com>
1896
1897         Try to fix the Qt build after r74648.
1898
1899         * WebCore.gypi:
1900         * WebCore.pro:
1901         * platform/network/qt/CredentialStorageQt.cpp: Added.
1902         (WebCore::CredentialStorage::getFromPersistentStorage):
1903
1904 2010-12-24  Simon Fraser  <simon.fraser@apple.com>
1905
1906         Reviewed by Dan Bernstein.
1907
1908         CSSStyleSelector cleanup
1909         https://bugs.webkit.org/show_bug.cgi?id=51597
1910
1911         Make some methods const. Add assertion to checkOneSelector, with the
1912         intention of later removing the if (!e) check (this is hot code).
1913
1914         * css/CSSStyleSelector.cpp:
1915         (WebCore::CSSStyleSelector::locateCousinList):
1916         (WebCore::CSSStyleSelector::canShareStyleWithElement):
1917         (WebCore::CSSStyleSelector::locateSharedStyle):
1918         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
1919         (WebCore::CSSStyleSelector::mmLength):
1920         (WebCore::CSSStyleSelector::inchLength):
1921         (WebCore::CSSStyleSelector::getColorFromPrimitiveValue):
1922         (WebCore::CSSStyleSelector::hasSelectorForAttribute):
1923         * css/CSSStyleSelector.h:
1924         (WebCore::CSSStyleSelector::fontSelector):
1925
1926 2010-12-24  Dan Bernstein  <mitz@apple.com>
1927
1928         Reviewed by Anders Carlsson.
1929
1930         <rdar://problem/8758386> The web process uses its own credential storage
1931         https://bugs.webkit.org/show_bug.cgi?id=51599
1932
1933         * WebCore.exp.in: Export CredentialStorage::getFromPersistentStorage(), Credential::hasPassword(),
1934         and Credential::isEmpty().
1935
1936 2010-12-24  Yury Semikhatsky  <yurys@chromium.org>
1937
1938         Reviewed by Darin Adler.
1939
1940         [V8] Rename V8CustomEventListener.{h,cpp} to V8EventListener.{h,cpp}
1941         https://bugs.webkit.org/show_bug.cgi?id=51595
1942
1943         * WebCore.gypi:
1944         * bindings/v8/V8DOMWrapper.cpp:
1945         * bindings/v8/V8EventListener.cpp: Renamed from WebCore/bindings/v8/custom/V8CustomEventListener.cpp.
1946         (WebCore::V8EventListener::V8EventListener):
1947         (WebCore::V8EventListener::getListenerFunction):
1948         (WebCore::V8EventListener::callListenerFunction):
1949         * bindings/v8/V8EventListener.h: Renamed from WebCore/bindings/v8/custom/V8CustomEventListener.h.
1950         (WebCore::V8EventListener::create):
1951         * bindings/v8/V8EventListenerList.h:
1952         * bindings/v8/V8WorkerContextEventListener.h:
1953         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1954         * bindings/v8/custom/V8LocationCustom.cpp:
1955         * bindings/v8/custom/V8NodeCustom.cpp:
1956         * bindings/v8/custom/V8NotificationCenterCustom.cpp:
1957
1958 2010-12-24  Carlos Garcia Campos  <cgarcia@igalia.com>
1959
1960         Reviewed by Xan Lopez.
1961
1962         [GTK] Show current time / total in media player
1963         https://bugs.webkit.org/show_bug.cgi?id=51535
1964
1965         * css/mediaControlsGtk.css:
1966         (audio::-webkit-media-controls-current-time-display, video::-webkit-media-controls-current-time-display):
1967         * platform/gtk/RenderThemeGtk.cpp:
1968         (WebCore::RenderThemeGtk::formatMediaControlsCurrentTime):
1969         (WebCore::RenderThemeGtk::paintMediaCurrentTime):
1970         * platform/gtk/RenderThemeGtk.h:
1971
1972 2010-12-24  Jan Erik Hanssen  <jhanssen@sencha.com>
1973
1974         Reviewed by Eric Seidel.
1975
1976         Clean up CSSRuleData in CSSStyleSelector.h
1977         https://bugs.webkit.org/show_bug.cgi?id=27753
1978
1979         Move CSSRuleData and CSSRuleDataList from CSSStyleSelector.h to the .cpp file.
1980
1981         * css/CSSStyleSelector.cpp:
1982         (WebCore::CSSRuleData::CSSRuleData):
1983         (WebCore::CSSRuleData::~CSSRuleData):
1984         (WebCore::CSSRuleData::position):
1985         (WebCore::CSSRuleData::rule):
1986         (WebCore::CSSRuleData::selector):
1987         (WebCore::CSSRuleData::next):
1988         (WebCore::CSSRuleDataList::CSSRuleDataList):
1989         (WebCore::CSSRuleDataList::~CSSRuleDataList):
1990         (WebCore::CSSRuleDataList::first):
1991         (WebCore::CSSRuleDataList::last):
1992         (WebCore::CSSRuleDataList::append):
1993         * css/CSSStyleSelector.h:
1994
1995 2010-12-24  Yury Semikhatsky  <yurys@chromium.org>
1996
1997         Unreviewed. Fix compilation on Windows.
1998
1999         * inspector/InspectorStyleSheet.cpp:
2000         (WebCore::InspectorStyle::~InspectorStyle): added explicit empty destructor
2001         * inspector/InspectorStyleSheet.h:
2002
2003 2010-12-24  Yury Semikhatsky  <yurys@chromium.org>
2004
2005         Reviewed by Darin Adler.
2006
2007         inspector/debugger-step-out.html crashing intermittently in the bots
2008         https://bugs.webkit.org/show_bug.cgi?id=50868
2009
2010         Use RefPtr rather instead of raw pointers when keeping references
2011         to refcounted objects.
2012
2013         * inspector/InspectorCSSAgent.cpp:
2014         (WebCore::InspectorCSSAgent::getStylesForNode2):
2015         (WebCore::InspectorCSSAgent::getComputedStyleForNode2):
2016         * inspector/InspectorStyleSheet.cpp:
2017         (WebCore::InspectorStyle::create):
2018         (WebCore::InspectorStyle::InspectorStyle):
2019         (WebCore::InspectorStyle::buildObjectForStyle):
2020         (WebCore::InspectorStyle::setPropertyText):
2021         (WebCore::InspectorStyle::toggleProperty):
2022         (WebCore::InspectorStyle::styleText):
2023         (WebCore::InspectorStyle::populateAllProperties):
2024         (WebCore::InspectorStyle::replacePropertyInStyleText):
2025         (WebCore::InspectorStyleSheet::create):
2026         (WebCore::InspectorStyleSheet::InspectorStyleSheet):
2027         (WebCore::InspectorStyleSheetForInlineStyle::create):
2028         (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):
2029         (WebCore::InspectorStyleSheetForInlineStyle::getStyleAttributeRanges):
2030         * inspector/InspectorStyleSheet.h:
2031         (WebCore::InspectorStyle::cssStyle):
2032         (WebCore::InspectorStyleSheet::pageStyleSheet):
2033
2034 2010-12-24  Justin Schuh  <jschuh@chromium.org>
2035
2036         Reviewed by Nikolas Zimmermann.
2037
2038         SVGElementInstance::m_useElement should be cleared when use element is removed from document
2039         https://bugs.webkit.org/show_bug.cgi?id=51486
2040
2041         Test: svg/custom/use-instanceRoot-with-use-removed.svg
2042
2043         * svg/SVGElementInstance.cpp:
2044         (WebCore::SVGElementInstance::invalidateAllInstancesOfElement):
2045         * svg/SVGElementInstance.h:
2046         (WebCore::SVGElementInstance::clearUseElement):
2047         * svg/SVGUseElement.cpp:
2048         (WebCore::SVGUseElement::removedFromDocument):
2049         (WebCore::ShadowTreeUpdateBlocker::if):
2050         (WebCore::SVGUseElement::detachInstance):
2051         (WebCore::SVGUseElement::detach):
2052         * svg/SVGUseElement.h:
2053
2054 2010-12-23  Joseph Pecoraro  <joepeck@webkit.org>
2055
2056         Reviewed by Yury Semikhatsky.
2057
2058         Web Inspector: Missing Localized Strings
2059         https://bugs.webkit.org/show_bug.cgi?id=51542
2060
2061         Added missing strings: "WebSocket",  "Frames", "Text", "Transfer",
2062         "Preserve Log upon Navigation", and "Go to Line".
2063
2064         * English.lproj/localizedStrings.js:
2065
2066 2010-12-24  Alexander Pavlov  <apavlov@chromium.org>
2067
2068         Reviewed by Yury Semikhatsky.
2069
2070         Web Inspector: Inline HTML style property out of sync with element.style in Sidebar
2071         https://bugs.webkit.org/show_bug.cgi?id=51478
2072
2073         Now the element attribute modifications (including "style") are tracked, which results in the
2074         source offsets update (in the backend) and Styles/Metrics pane updates (in the frontend)
2075         on the "style" attribute modification through the Elements tree. Also, it appears that
2076         a complete "style" attribute removal destroys the inline style declaration
2077         (StyledElement::m_inlineStyleDecl), while the code used to rely on it being immutable (hence a crash).
2078
2079         Test: inspector/elements-delete-inline-style.html
2080
2081         * inspector/InspectorCSSAgent.cpp:
2082         (WebCore::InspectorCSSAgent::didModifyDOMAttr):
2083         * inspector/InspectorCSSAgent.h:
2084         * inspector/InspectorDOMAgent.cpp:
2085         (WebCore::InspectorDOMAgent::didModifyDOMAttr):
2086         * inspector/InspectorDOMAgent.h:
2087         * inspector/InspectorStyleSheet.cpp:
2088         (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):
2089         (WebCore::InspectorStyleSheetForInlineStyle::didModifyElementAttribute):
2090         (WebCore::InspectorStyleSheetForInlineStyle::text):
2091         (WebCore::InspectorStyleSheetForInlineStyle::setStyleText):
2092         (WebCore::InspectorStyleSheetForInlineStyle::getStyleAttributeRanges):
2093         * inspector/InspectorStyleSheet.h:
2094         * inspector/front-end/ElementsTreeOutline.js:
2095         (WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted):
2096
2097 2010-12-24  Noel Gordon  <noel.gordon@gmail.com>
2098
2099         Reviewed by Andreas Kling.
2100
2101         [chromium] Fix a style nit in the JPEG encoder
2102         https://bugs.webkit.org/show_bug.cgi?id=51574
2103
2104         * platform/image-encoders/skia/JPEGImageEncoder.cpp: nit begone.
2105
2106 2010-12-23  Alexander Pavlov  <apavlov@chromium.org>
2107
2108         Reviewed by Maciej Stachowiak.
2109
2110         Web Inspector: CSS shorthand properties expand unnecessarily
2111         https://bugs.webkit.org/show_bug.cgi?id=36304
2112
2113         "border-radius" is a shorthand property that has a "non-standard" format and longhands, see
2114         http://www.w3.org/TR/css3-background/#border-radius for reference. CSSParser does not use the
2115         standard parseShorthand() or parse4Values() methods but instead a custom parseBorderRadius() method.
2116         This method didn't use to create a ShorthandScope instance and set the m_implicitShorthand value
2117         appropriately when adding implicit longhands, thus they were added as normal properties
2118         found in the CSS (neither implicit, nor longhands). This is now fixed.
2119
2120         * css/CSSParser.cpp:
2121         (WebCore::CSSParser::parseBorderRadius):
2122
2123 2010-12-24  Justin Schuh  <jschuh@chromium.org>
2124
2125         Reviewed by Darin Adler.
2126
2127         setTargetAttributeAnimatedValue should check for a null shadowTreeElement.
2128         https://bugs.webkit.org/show_bug.cgi?id=51576
2129
2130         Disallowed elements may be pruned from the shadow tree, leaving a null
2131         shadowTreeElement. We should check for that before setting attributes.
2132
2133         Test: svg/custom/animate-disallowed-use-element.svg
2134
2135         * svg/SVGAnimationElement.cpp:
2136         (WebCore::SVGAnimationElement::setTargetAttributeAnimatedValue):
2137
2138 2010-12-24  Evan Martin  <evan@chromium.org>
2139
2140         Reviewed by Darin Adler.
2141
2142         TextMetrics::width is an integer, but the member is a float
2143         https://bugs.webkit.org/show_bug.cgi?id=51566
2144
2145         Change the return type to a float.
2146
2147         No tests, fixing a compiler warning.
2148         (I was unable to produce a difference in the values exposed to pages
2149         with a float versus the previous conversion to an integer.)
2150
2151         * html/TextMetrics.h:
2152         (WebCore::TextMetrics::width):
2153
2154 2010-12-24  Ryuan Choi  <ryuan.choi@samsung.com>
2155
2156         Reviewed by Kenneth Rohde Christiansen.
2157
2158         [EFL] Add option to enable Touch Events.
2159         https://bugs.webkit.org/show_bug.cgi?id=49125
2160
2161         Add files for EFL to support TOUCH_EVENTS.
2162
2163         * CMakeLists.txt:
2164         * CMakeListsEfl.txt:
2165         * platform/PlatformTouchEvent.h: Add EFL related constructor.
2166         * platform/PlatformTouchPoint.h: ditto.
2167         * platform/efl/PlatformTouchEventEfl.cpp: Added.
2168         (WebCore::PlatformTouchEvent::PlatformTouchEvent):
2169         * platform/efl/PlatformTouchPointEfl.cpp: Added.
2170         (WebCore::PlatformTouchPoint::PlatformTouchPoint):
2171
2172 2010-12-24  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2173
2174         Reviewed by Kenneth Rohde Christiansen.
2175
2176         [EFL] Return an empty string instead of 'application/octet-stream' in getMIMETypeForExtension()
2177         https://bugs.webkit.org/show_bug.cgi?id=51457
2178
2179         WebKit EFL can't play html5 audio because of wrong mime type checking.
2180         So, 'application/octet-stream' is changed with an empty string.
2181
2182         * platform/efl/MIMETypeRegistryEfl.cpp:
2183         (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
2184         Returns an empty string instead of application/octet-stream when it can't find proper mime type.
2185
2186 2010-12-24  Justin Schuh  <jschuh@chromium.org>
2187
2188         Reviewed by Darin Adler.
2189
2190         SVGFontFaceElement::rebuildFontFace() should exit when not in document
2191         https://bugs.webkit.org/show_bug.cgi?id=51571
2192
2193         We were hitting a NULL deref crash. Since most of the callers checked
2194         inDocument() anyway, I moved it into the start of rebuildFontFace.
2195
2196         Test: svg/custom/use-invalid-font-face.svg
2197
2198         * svg/SVGFontFaceElement.cpp:
2199         (WebCore::SVGFontFaceElement::parseMappedAttribute):
2200         (WebCore::SVGFontFaceElement::rebuildFontFace):
2201         (WebCore::SVGFontFaceElement::childrenChanged):
2202
2203 2010-12-24  Justin Schuh  <jschuh@chromium.org>
2204
2205         Reviewed by Darin Adler.
2206
2207         Remove unnecessary check in CSSCanvasValue::canvasDestroyed().
2208         https://bugs.webkit.org/show_bug.cgi?id=51564
2209
2210         This check was duplicating an ASSERT for a case fixed in r73927.
2211         Now that the bug is fixed the check is no longer necessary.
2212
2213         Removing dead code, so no new tests needed.
2214
2215         * css/CSSCanvasValue.cpp:
2216         (WebCore::CSSCanvasValue::canvasDestroyed):
2217
2218 2010-12-23  Evan Martin  <evan@chromium.org>
2219
2220         Reviewed by Darin Adler.
2221
2222         ViewportArguments.h uses an enum to intialize a bool
2223         https://bugs.webkit.org/show_bug.cgi?id=50982
2224
2225         Initialize userScalable to true, rather than -1.
2226         No tests; fixes a compiler warning.
2227
2228         * dom/ViewportArguments.h:
2229         (WebCore::ViewportArguments::ViewportArguments):
2230
2231 2010-12-23  Jan Erik Hanssen  <jhanssen@sencha.com>
2232
2233         Reviewed by Adam Barth.
2234
2235         [Qt] User name/password stripped from URLs
2236         https://bugs.webkit.org/show_bug.cgi?id=36232
2237
2238         If a username but no password or no username but a password is present
2239         in a URL, QtWebKit won't send any authentication information down to Qt
2240         as it should.
2241
2242         Tests: http/tests/xmlhttprequest/basic-auth-nopassword.html
2243                http/tests/xmlhttprequest/basic-auth-nouser.html
2244
2245         * platform/network/qt/ResourceHandleQt.cpp:
2246         (WebCore::ResourceHandle::start):
2247         (WebCore::ResourceHandle::loadResourceSynchronously):
2248
2249 2010-12-23  Ryosuke Niwa  <rniwa@webkit.org>
2250
2251         Reviewed by Darin Adler.
2252
2253         queryCommandValue("FormatBlock") does not respect editing boundaries
2254         https://bugs.webkit.org/show_bug.cgi?id=51219
2255
2256         Fixed the bug by checking the element we found in elementForFormatBlockCommand
2257         does not contain the editable root.
2258
2259         * editing/FormatBlockCommand.cpp:
2260         (WebCore::FormatBlockCommand::elementForFormatBlockCommand):
2261
2262 2010-12-23  Ryosuke Niwa  <rniwa@webkit.org>
2263
2264         Reviewed by Darin Adler.
2265
2266         FormatBlock doesn't preserve typing style but it should
2267         https://bugs.webkit.org/show_bug.cgi?id=51140
2268
2269         Fixed the bug by making preserveTypingStyle return true.
2270
2271         Test: editing/execCommand/format-block-typing-style.html
2272
2273         * editing/FormatBlockCommand.h:
2274         (WebCore::FormatBlockCommand::preservesTypingStyle):
2275
2276 2010-12-23  Jessie Berlin  <jberlin@apple.com>
2277
2278         Reviewed by Sam Weinig.
2279
2280         Need WebKit2 API to create a SecurityOrigin from protocol, host, and port
2281         https://bugs.webkit.org/show_bug.cgi?id=51563
2282
2283         Add SecurityOrigin::create(const String& protocol, const String& host, int port).
2284
2285         * WebCore.exp.in:
2286         Export the symbols for WebCore::SecurityOrigin::create(String, String, int).
2287
2288         * page/SecurityOrigin.cpp:
2289         (WebCore::SecurityOrigin::createFromDatabaseIdentifier):
2290         Use the constant MaxAllowedPort.
2291         (WebCore::SecurityOrigin::create):
2292         Sanitizing based off of that done in createFromDatabaseIdentifier.
2293         * page/SecurityOrigin.h:
2294
2295 2010-12-23  Patrick Gansterer  <paroga@webkit.org>
2296
2297         Unreviewed build fix for WinCE after r73802.
2298
2299         Reapply r70812:
2300         Port ContextMenuItemWin.cpp to WinCE
2301         https://bugs.webkit.org/show_bug.cgi?id=48407
2302
2303         * platform/win/ContextMenuItemWin.cpp:
2304
2305 2010-12-23  Adam Barth  <abarth@webkit.org>
2306
2307         Remove include of non-existant file.
2308
2309         * bindings/v8/custom/V8DOMWindowCustom.cpp:
2310
2311 2010-12-23  Ryosuke Niwa  <rniwa@webkit.org>
2312
2313         Reviewed by Darin Adler.
2314
2315         Selection becomes stale when CharacterData is manipulated directly
2316         https://bugs.webkit.org/show_bug.cgi?id=51389
2317
2318         The bug was caused by SelectionController's not adjusting selection when CharacterData's
2319         m_data is modified by its API.
2320
2321         Fixed the bug by adding textWillBeReplaced to SelectionController and calling it in
2322         CharacterData::textWillBeReplaced. Added newLength to setDataAndUpdate, which is passed to
2323         textWillBeReplaced because inserting, replacing, or removing data may require moving
2324         the offset of the selection end points (done by shouldRemovePositionAfterAdoptingTextReplacement).
2325
2326         Also fixed the condition for determining whether or not a node intersects the selection
2327         in respondToNodeModification, which is extracted from nodeWillBeRemoved. The old condition
2328         failed to recognize certain cases when selection started and ended with non-zero offsets.
2329
2330         Tests: editing/selection/character-data-mutation-crash.html
2331                editing/selection/character-data-mutation.html
2332
2333         * dom/CharacterData.cpp:
2334         (WebCore::CharacterData::setData): Passes newLegnth to setDataAndUpdate.
2335         (WebCore::CharacterData::appendData): Ditto.
2336         (WebCore::CharacterData::insertData): Ditto.
2337         (WebCore::CharacterData::deleteData): Ditto.
2338         (WebCore::CharacterData::replaceData): Ditto.
2339         (WebCore::CharacterData::setDataAndUpdate): Added newLegnth to the argument list,
2340         and renamed lengthOfReplacedData to oldLength; calls textWillBeReplaced.
2341         * dom/CharacterData.h:
2342         * editing/SelectionController.cpp:
2343         (WebCore::removingNodeRemovesPosition): Removed indentations from blank lines.
2344         (WebCore::SelectionController::nodeWillBeRemoved): Calls nodeWillBeRemoved.
2345         (WebCore::SelectionController::respondToNodeModification): Extracted from nodeWillBeRemoved;
2346         fixed the logic to figure out whether a node is inside the range or not.
2347         (WebCore::shouldRemovePositionAfterAdoptingTextReplacement): Added.
2348         (WebCore::SelectionController::textWillBeReplaced): Added.
2349         * editing/SelectionController.h:
2350
2351 2010-12-23  Adam Barth  <abarth@webkit.org>
2352
2353         Reviewed by Darin Adler.
2354
2355         Remove unneeded V8 bindings files
2356         https://bugs.webkit.org/show_bug.cgi?id=51570
2357
2358         * WebCore.gypi:
2359         * bindings/generic/BindingDOMWindow.h: Removed.
2360         * bindings/v8/specialization/V8BindingDOMWindow.h: Removed.
2361
2362 2010-12-23  Dan Bernstein  <mitz@apple.com>
2363
2364         Build fix.
2365
2366         * editing/EditorCommand.cpp:
2367         (WebCore::enabledDismissCorrectionPanel):
2368
2369 2010-12-23  Darin Adler  <darin@apple.com>
2370
2371         Try to fix crash seen on GTK bot.
2372
2373         * editing/EditorCommand.cpp:
2374         (WebCore::internalCommand): Add back empty string check I accidentally deleted in r74580.
2375
2376         * WebCore.xcodeproj/project.pbxproj: Let Xcode edit the file.
2377
2378 2010-12-23  Sheriff Bot  <webkit.review.bot@gmail.com>
2379
2380         Unreviewed, rolling out r74561.
2381         http://trac.webkit.org/changeset/74561
2382         https://bugs.webkit.org/show_bug.cgi?id=51565
2383
2384         "Broke Chromium UI tests on Vista" (Requested by kbr_google on
2385         #webkit).
2386
2387         * platform/graphics/chromium/ImageLayerChromium.cpp:
2388         (WebCore::ImageLayerChromium::updateContentsIfDirty):
2389         * platform/graphics/skia/GraphicsContext3DSkia.cpp:
2390         (WebCore::GraphicsContext3D::getImageData):
2391
2392 2010-12-23  Mihai Parparita  <mihaip@chromium.org>
2393
2394         Reviewed by Kent Tamura.
2395
2396         [Chromium] Add WebThemeEngine for Mac to allow scrollbar rendering to be overridden for the DRT
2397         https://bugs.webkit.org/show_bug.cgi?id=51507
2398         
2399         Adds WebThemeEngine for the Mac (it already has parallel definitions for
2400         Windows and Linux) so that scrollbar thumb rendering can be overridden
2401         for the DRT (to be consistent with the NSScroller-based rendering
2402         used by the Mac port).
2403
2404         No new tests since the functionality is not exposed yet. Eventually will
2405         result in the Chromium/Mac port being able to use the same pixel
2406         baselines for layout tests as the Mac port.
2407
2408         * platform/chromium/ChromiumBridge.h:
2409         * platform/chromium/ScrollbarThemeChromiumMac.mm:
2410         (WebCore::scrollbarStateToThemeState):
2411         (WebCore::ScrollbarThemeChromiumMac::paint):
2412
2413 2010-12-23  Darin Adler  <darin@apple.com>
2414
2415         Reviewed by Sam Weinig.
2416
2417         WKView should not try to do asynchronous validation for selectors that are not editor commands
2418         https://bugs.webkit.org/show_bug.cgi?id=51555
2419
2420         * WebCore.exp.in: Added commandIsSupportedFromMenuOrKeyBinding.
2421         * editing/Editor.h: Reordered arguments in the Editor::Command constructor
2422         and the data members too so the frame is last. Added
2423         commandIsSupportedFromMenuOrKeyBinding.
2424
2425         * editing/EditorCommand.cpp:
2426         (WebCore::supported): Removed the EditorCommandSource argument. These
2427         functions are now only used when called from DOM.
2428         (WebCore::supportedFromMenuOrKeyBinding): Ditto.
2429         (WebCore::supportedCopyCut): Ditto.
2430         (WebCore::supportedPaste): Ditto.
2431         (WebCore::enabledDismissCorrectionPanel): Changed the supported function to
2432         an enabled function. It was incorrect to say that this is "supported" only
2433         when the correction panel is up. Correct to say that it is "enabled" only
2434         then. And also probably OK to enable it even when the selection is not in
2435         editable text, as long as the panel is up.
2436         (WebCore::createCommandMap): Moved conditional commands out of the main
2437         array into a separate section at the end.
2438         (WebCore::internalCommand): Added.
2439         (WebCore::Editor::command): Changed to use the new internalCommand function
2440         and simplified by relying on the null check in the Command constructor.
2441         (WebCore::Editor::commandIsSupportedFromMenuOrKeyBinding): Added.
2442         (WebCore::Editor::Command::Command): Removed unneeded initialization of
2443         m_source, which is never looked at if m_command is 0. Added feature of
2444         passing a null command pointer to the non-default constructor.
2445         (WebCore::Editor::Command::isSupported): Changed to only call the
2446         per-command isSupported function when the command source is DOM.
2447         Accordingly that function is now called isSupportedFromDOM.
2448
2449 2010-12-23  Matthew Delaney  <mdelaney@apple.com>
2450
2451         Reviewed by Simon Fraser.
2452
2453         Incorrect layer property used noted as changed in GraphicsLayerCA::setAcceleratesDrawing
2454         https://bugs.webkit.org/show_bug.cgi?id=51560
2455
2456         No new tests.
2457
2458         * platform/graphics/ca/GraphicsLayerCA.cpp:
2459         (WebCore::GraphicsLayerCA::setAcceleratesDrawing):
2460
2461 2010-12-23  Jan Erik Hanssen  <jhanssen@sencha.com>
2462
2463         Reviewed by Andreas Kling.
2464
2465         [Qt] copy and paste greek symbols to Word, TextEdit results in ?'s being shown
2466         https://bugs.webkit.org/show_bug.cgi?id=35635
2467
2468         Explicitly set text/html data on QClipboard as UTF-8 and also include a <meta>
2469         tag informing the OS that the data is in UTF-8 format.
2470
2471         * platform/qt/PasteboardQt.cpp:
2472         (WebCore::Pasteboard::writeSelection):
2473
2474 2010-12-23  Justin Schuh  <jschuh@chromium.org>
2475
2476         Reviewed by Eric Seidel.
2477
2478         CSSCursorImageValue destructor should clear referenced element.
2479         https://bugs.webkit.org/show_bug.cgi?id=51417
2480
2481         Calls correct method to clear image and renames method to avoid future confusion.
2482
2483         Test: svg/css/cursor-image-replace.svg
2484
2485         * css/CSSCursorImageValue.cpp:
2486         (WebCore::CSSCursorImageValue::~CSSCursorImageValue):
2487         * svg/SVGElement.cpp:
2488         (WebCore::SVGElement::cursorImageValueRemoved):
2489         * svg/SVGElement.h:
2490
2491 2010-12-22  Sam Weinig  <sam@webkit.org>
2492
2493         Reviewed by Darin Adler.
2494
2495         WebKit2 needs to mirror the frame tree in the UIProcess
2496         https://bugs.webkit.org/show_bug.cgi?id=51546
2497
2498         - Add client functions to notify that a frame has been added or
2499           removed from the page cache.
2500
2501         * history/CachedFrame.cpp:
2502         (WebCore::CachedFrameBase::restore):
2503         (WebCore::CachedFrame::CachedFrame):
2504         * history/CachedFrame.h:
2505         * loader/EmptyClients.h:
2506         (WebCore::EmptyFrameLoaderClient::didSaveToPageCache):
2507         (WebCore::EmptyFrameLoaderClient::didRestoreFromPageCache):
2508         * loader/FrameLoaderClient.h:
2509
2510 2010-12-22  Matthew Delaney  <mdelaney@apple.com>
2511
2512         Reviewed by Simon Fraser.
2513
2514         Add setNeedsStyleRecalc for getting canvas contexts that use IOSurfaces
2515         This patch also changes USE_IOSURFACE to instead follow USE(IOSURFACE)
2516         https://bugs.webkit.org/show_bug.cgi?id=51279
2517
2518         * html/HTMLCanvasElement.cpp: For IOSurface, use setNeedsStyleRecalc
2519         * html/canvas/CanvasRenderingContext2D.cpp: Use new flag
2520         * platform/graphics/ImageBuffer.h: Use new flag
2521         * platform/graphics/cg/ImageBufferCG.cpp: Use new flag
2522
2523 2010-12-20  Adrienne Walker  <enne@google.com>
2524
2525         Reviewed by Kenneth Russell.
2526
2527         [chromium] Tile root layer of the compositor.
2528         https://bugs.webkit.org/show_bug.cgi?id=49947
2529
2530         Refactor root layer update and drawing from LayerRendererChromium into
2531         LayerTilerChromium.  The root layer is now drawn as multiple tiles
2532         rather than as one single large texture.  Scrollbars are now drawn
2533         separately rather than as part of the root layer.
2534
2535         Test: LayoutTests/compositing/
2536
2537         * WebCore.gypi:
2538         * page/FrameView.cpp:
2539         (WebCore::FrameView::repaintContentRectangle):
2540         * platform/ScrollView.cpp:
2541         (WebCore::ScrollView::ScrollView):
2542         (WebCore::ScrollView::setClipsRepaints):
2543         * platform/ScrollView.h:
2544         (WebCore::ScrollView::clipsRepaints):
2545         * platform/graphics/chromium/LayerChromium.h:
2546         * platform/graphics/chromium/LayerRendererChromium.cpp:
2547         (WebCore::LayerRendererChromium::LayerRendererChromium):
2548         (WebCore::LayerRendererChromium::~LayerRendererChromium):
2549         (WebCore::LayerRendererChromium::useShader):
2550         (WebCore::LayerRendererChromium::verticalScrollbarRect):
2551         (WebCore::LayerRendererChromium::horizontalScrollbarRect):
2552         (WebCore::LayerRendererChromium::invalidateRootLayerRect):
2553         (WebCore::LayerRendererChromium::updateAndDrawRootLayer):
2554         (WebCore::LayerRendererChromium::drawLayers):
2555         (WebCore::LayerRendererChromium::setRootLayer):
2556         (WebCore::LayerRendererChromium::initializeSharedObjects):
2557         (WebCore::LayerRendererChromium::cleanupSharedObjects):
2558         * platform/graphics/chromium/LayerRendererChromium.h:
2559         * platform/graphics/chromium/LayerTilerChromium.cpp: Added.
2560         (WebCore::LayerTilerChromium::create):
2561         (WebCore::LayerTilerChromium::LayerTilerChromium):
2562         (WebCore::LayerTilerChromium::~LayerTilerChromium):
2563         (WebCore::LayerTilerChromium::layerRendererContext):
2564         (WebCore::LayerTilerChromium::setTileSize):
2565         (WebCore::LayerTilerChromium::reset):
2566         (WebCore::LayerTilerChromium::createTile):
2567         (WebCore::LayerTilerChromium::invalidateTiles):
2568         (WebCore::LayerTilerChromium::contentRectToTileIndices):
2569         (WebCore::LayerTilerChromium::contentRectToLayerRect):
2570         (WebCore::LayerTilerChromium::layerRectToContentRect):
2571         (WebCore::LayerTilerChromium::tileIndex):
2572         (WebCore::LayerTilerChromium::tileContentRect):
2573         (WebCore::LayerTilerChromium::tileLayerRect):
2574         (WebCore::LayerTilerChromium::invalidateRect):
2575         (WebCore::LayerTilerChromium::invalidateEntireLayer):
2576         (WebCore::LayerTilerChromium::update):
2577         (WebCore::LayerTilerChromium::setLayerPosition):
2578         (WebCore::LayerTilerChromium::draw):
2579         (WebCore::LayerTilerChromium::resizeLayer):
2580         (WebCore::LayerTilerChromium::growLayerToContain):
2581         (WebCore::LayerTilerChromium::Tile::~Tile):
2582         (WebCore::LayerTilerChromium::Tile::releaseTextureId):
2583         * platform/graphics/chromium/LayerTilerChromium.h: Added.
2584         (WebCore::LayerTilerChromium::Tile::Tile):
2585         (WebCore::LayerTilerChromium::Tile::textureId):
2586         (WebCore::LayerTilerChromium::Tile::dirty):
2587         (WebCore::LayerTilerChromium::Tile::clearDirty):
2588         (WebCore::LayerTilerChromium::layerRenderer):
2589
2590 2010-12-22  Ryosuke Niwa  <rniwa@webkit.org>
2591
2592         Reviewed by Eric Seidel.
2593
2594         Editor.h doesn't need to include SelectionController.h
2595         https://bugs.webkit.org/show_bug.cgi?id=51441
2596
2597         Removed #include <Selection.h> from Editor.h.
2598         Also extracted WritingDirection.h from EditingStyle.h and renamed SelectionController::EDirection
2599         to SelectionDirection and moved its declaration from SelectionController.h to VisibleSelection.h
2600
2601         * WebCore.exp.in: Signature changes.
2602         * WebCore.xcodeproj/project.pbxproj: Added WritingDirection.h
2603         * accessibility/AccessibilityRenderObject.cpp:
2604         (WebCore::AccessibilityRenderObject::visiblePositionRangeForLine): Change due to SelectionDirection.
2605         * editing/EditingStyle.h: Removed WritingDirection and included WritingDirection.h
2606         * editing/Editor.cpp:
2607         (WebCore::Editor::deleteWithDirection): Change due to SelectionDirection.
2608         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Ditto.
2609         (WebCore::Editor::markMisspellingsAfterTypingToWord): Ditto.
2610         * editing/Editor.h: Removed SelectionController.h; added DocumentMarker.h, Timer.h, VisibleSelection.h
2611         and WritingDirection.h; forward declared CSSMutableStyleDeclaration.
2612         * editing/EditorCommand.cpp:
2613         (WebCore::executeDeleteBackward): Change due to SelectionDirection.
2614         (WebCore::executeDeleteBackwardByDecomposingPreviousCharacter): Ditto.
2615         (WebCore::executeDeleteForward): Ditto.
2616         (WebCore::executeDeleteToBeginningOfLine): Ditto.
2617         (WebCore::executeDeleteToBeginningOfParagraph): Ditto.
2618         (WebCore::executeDeleteToEndOfLine): Ditto.
2619         (WebCore::executeDeleteToEndOfParagraph): Ditto.
2620         (WebCore::executeDeleteWordBackward): Ditto.
2621         (WebCore::executeDeleteWordForward): Ditto.
2622         (WebCore::executeForwardDelete): Ditto.
2623         (WebCore::executeMoveBackward): Ditto.
2624         (WebCore::executeMoveBackwardAndModifySelection): Ditto.
2625         (WebCore::executeMoveDown): Ditto.
2626         (WebCore::executeMoveDownAndModifySelection): Ditto.
2627         (WebCore::executeMoveForward): Ditto.
2628         (WebCore::executeMoveForwardAndModifySelection): Ditto.
2629         (WebCore::executeMoveLeft): Ditto.
2630         (WebCore::executeMoveLeftAndModifySelection): Ditto.
2631         (WebCore::executeMoveRight): Ditto.
2632         (WebCore::executeMoveRightAndModifySelection): Ditto.
2633         (WebCore::executeMoveToBeginningOfDocument): Ditto.
2634         (WebCore::executeMoveToBeginningOfDocumentAndModifySelection): Ditto.
2635         (WebCore::executeMoveToBeginningOfLine): Ditto.
2636         (WebCore::executeMoveToBeginningOfLineAndModifySelection): Ditto.
2637         (WebCore::executeMoveToBeginningOfParagraph): Ditto.
2638         (WebCore::executeMoveToBeginningOfParagraphAndModifySelection): Ditto.
2639         (WebCore::executeMoveToBeginningOfSentence): Ditto.
2640         (WebCore::executeMoveToBeginningOfSentenceAndModifySelection): Ditto.
2641         (WebCore::executeMoveToEndOfDocument): Ditto.
2642         (WebCore::executeMoveToEndOfDocumentAndModifySelection): Ditto.
2643         (WebCore::executeMoveToEndOfSentence): Ditto.
2644         (WebCore::executeMoveToEndOfSentenceAndModifySelection): Ditto.
2645         (WebCore::executeMoveToEndOfLine): Ditto.
2646         (WebCore::executeMoveToEndOfLineAndModifySelection): Ditto.
2647         (WebCore::executeMoveToEndOfParagraph): Ditto.
2648         (WebCore::executeMoveToEndOfParagraphAndModifySelection): Ditto.
2649         (WebCore::executeMoveParagraphBackwardAndModifySelection): Ditto.
2650         (WebCore::executeMoveParagraphForwardAndModifySelection): Ditto.
2651         (WebCore::executeMoveUp): Ditto.
2652         (WebCore::executeMoveUpAndModifySelection): Ditto.
2653         (WebCore::executeMoveWordBackward): Ditto.
2654         (WebCore::executeMoveWordBackwardAndModifySelection): Ditto.
2655         (WebCore::executeMoveWordForward): Ditto.
2656         (WebCore::executeMoveWordForwardAndModifySelection): Ditto.
2657         (WebCore::executeMoveWordLeft): Ditto.
2658         (WebCore::executeMoveWordLeftAndModifySelection): Ditto.
2659         (WebCore::executeMoveWordRight): Ditto.
2660         (WebCore::executeMoveWordRightAndModifySelection): Ditto.
2661         (WebCore::executeMoveToLeftEndOfLine): Ditto.
2662         (WebCore::executeMoveToLeftEndOfLineAndModifySelection): Ditto.
2663         (WebCore::executeMoveToRightEndOfLine): Ditto.
2664         (WebCore::executeMoveToRightEndOfLineAndModifySelection): Ditto.
2665         * editing/SelectionController.cpp:
2666         (WebCore::SelectionController::willBeModified): Takes SelectionDirection instead of EDirection.
2667         (WebCore::SelectionController::modify): Ditto.
2668         * editing/SelectionController.h: Change due to SelectionDirection.
2669         * editing/TypingCommand.cpp:
2670         (WebCore::TypingCommand::deleteKeyPressed): Ditto.
2671         (WebCore::TypingCommand::forwardDeleteKeyPressed): Ditto.
2672         * editing/VisibleSelection.h: Added SelectionDirection, renamed and moved from EDirection
2673         in SelectionController.h
2674         * editing/WritingDirection.h: Added.
2675         * page/DOMSelection.cpp:
2676         (WebCore::DOMSelection::modify): Change due to SelectionDirection.
2677         (WebCore::DOMSelection::deleteFromDocument): Ditto.
2678         * page/EventHandler.cpp:
2679         (WebCore::EventHandler::handleKeyboardSelectionMovement): Ditto.
2680         * page/Frame.h: Includes SelectionController.h.
2681
2682 2010-12-23  Adam Barth  <abarth@webkit.org>
2683
2684         Reviewed by Darin Adler.
2685
2686         Move V8 to WebCore's implementation of showModalDialog
2687         https://bugs.webkit.org/show_bug.cgi?id=51527
2688
2689         This code is basically verbatim translation from the JavaScriptCore
2690         bindings.  The only intentional difference is in the world selection
2691         for the dialog's frame.  I suspect JavaScriptCore's bindings have a
2692         subtle bug there.
2693
2694         In this patch, I also remove a bunch of now-unneeded code in the
2695         generic bindings.
2696
2697         * bindings/generic/BindingDOMWindow.h:
2698         * bindings/js/JSDOMWindowCustom.cpp:
2699         (WebCore::DialogHandler::dialogCreated):
2700         (WebCore::setUpDialog):
2701         * bindings/v8/custom/V8DOMWindowCustom.cpp:
2702         (WebCore::DialogHandler::DialogHandler):
2703         (WebCore::DialogHandler::dialogCreated):
2704         (WebCore::DialogHandler::returnValue):
2705         (WebCore::setUpDialog):
2706         (WebCore::V8DOMWindow::showModalDialogCallback):
2707         (WebCore::V8DOMWindow::openCallback):
2708         * bindings/v8/specialization/V8BindingDOMWindow.h:
2709
2710 2010-12-23  Alexander Pavlov  <apavlov@chromium.org>
2711
2712         Reviewed by Joseph Pecoraro.
2713
2714         Web Inspector: Can't backspace from CSS value to CSS key field
2715         https://bugs.webkit.org/show_bug.cgi?id=51476
2716
2717         * inspector/front-end/StylesSidebarPane.js:
2718         (WebInspector.StylePropertyTreeElement.prototype.):
2719         (WebInspector.StylePropertyTreeElement.prototype):
2720
2721 2010-12-23  W. James MacLean  <wjmaclean@chromium.org>
2722
2723         Reviewed by Kenneth Russell.
2724
2725         [chromium] Add asserts to test for contiguous-pixel Skia bitmaps.
2726         https://bugs.webkit.org/show_bug.cgi?id=51186
2727
2728         No new tests. Behaviour not changed, but need the asserts to detect when assumptions violated.
2729
2730         * platform/graphics/chromium/ImageLayerChromium.cpp:
2731         (WebCore::ImageLayerChromium::updateContentsIfDirty):
2732         * platform/graphics/skia/GraphicsContext3DSkia.cpp:
2733         (WebCore::GraphicsContext3D::getImageData):
2734
2735 2010-12-23  Lucas De Marchi  <lucas.demarchi@profusion.mobi>
2736
2737         Reviewed by Kenneth Rohde Christiansen.
2738
2739         Fix check by undefined macro
2740         https://bugs.webkit.org/show_bug.cgi?id=51531
2741
2742         Fix check by undefined macro
2743
2744         When building EFL port with libsoup, BUILDING_GTK__ is not defined,
2745         leading to warnings during compile. We actually have to use an #ifdef
2746         instead of an #if.
2747
2748         No change in functionality so no new tests.
2749
2750         * platform/network/soup/cache/webkit/soup-cache.h:
2751
2752 2010-12-23  Jonathan Dixon  <joth@chromium.org>
2753
2754         Reviewed by Steve Block.
2755
2756         TouchEvents does not support multi-touch on a page with multiple touch targets
2757         https://bugs.webkit.org/show_bug.cgi?id=51258
2758
2759         Test: fast/events/touch/multi-touch-grouped-targets.html
2760
2761         * page/EventHandler.cpp:
2762         (WebCore::eventNameForTouchPointState):
2763         (WebCore::EventHandler::handleTouchEvent):
2764         Redesigned event handler to ensure all event targets involved in a given
2765         multitouch event get the appropriate event(s) fired.
2766
2767         * platform/PlatformTouchPoint.h: Added end-stop marker for State enum.
2768
2769 2010-12-23  Philippe Normand  <pnormand@igalia.com>
2770
2771         Reviewed by Xan Lopez.
2772
2773         [GTK] media/audio-data-url.html fails since r75504
2774         https://bugs.webkit.org/show_bug.cgi?id=51525
2775
2776         Make the GStreamer media-player advertize 3gpp mime-types as
2777         supported if the 3gp caps are in the typefind factories.
2778
2779         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
2780         (WebCore::mimeTypeCache):
2781
2782 2010-12-23  Kent Tamura  <tkent@chromium.org>
2783
2784         Reviewed by Dimitri Glazkov.
2785
2786         Refactor HTMLInputElement: Move a part of HTMLInputElement::defaultEventHandler()
2787         to InputTypes.
2788         https://bugs.webkit.org/show_bug.cgi?id=51093
2789
2790         Move BeforeTextInserted and Wheel event handling, event forwarding to
2791         renderers, and the isindex form submission quirk code to InputTypes.
2792         Also, change the return types of InputType event handlers from 'bool'
2793         to 'void'. We use Event::defaultHandled() to decide whether event
2794         handling should be stopped.
2795
2796         No new tests because this is just a refactoring.
2797
2798         * html/BaseButtonInputType.cpp: bool->void changes
2799         (WebCore::BaseButtonInputType::handleKeydownEvent):
2800         (WebCore::BaseButtonInputType::handleKeypressEvent):
2801         (WebCore::BaseButtonInputType::handleKeyupEvent):
2802         * html/BaseButtonInputType.h: ditto.
2803         * html/BaseCheckableInputType.cpp: ditto.
2804         (WebCore::BaseCheckableInputType::handleKeydownEvent):
2805         (WebCore::BaseCheckableInputType::handleKeypressEvent):
2806         * html/BaseCheckableInputType.h: ditto.
2807         * html/BaseDateAndTimeInputType.cpp:
2808         (WebCore::BaseDateAndTimeInputType::handleKeydownEvent): ditto.
2809         (WebCore::BaseDateAndTimeInputType::handleWheelEvent): Just calls handleWheelEventForSpinButton().
2810         * html/BaseDateAndTimeInputType.h: bool->void change and handleWhellEvent() addition.
2811         * html/CheckboxInputType.cpp: bool->void change
2812         (WebCore::CheckboxInputType::handleKeyupEvent):
2813         * html/CheckboxInputType.h: ditto.
2814         * html/FileInputType.cpp: ditto.
2815         (WebCore::FileInputType::handleDOMActivateEvent):
2816         * html/FileInputType.h: ditto.
2817         * html/HTMLInputElement.cpp:
2818         (WebCore::HTMLInputElement::defaultEventHandler):
2819          - Change return-value handling of InputType event handlers
2820          - Move out beforeTextInserted/wheel event handling and isindex form quirk.
2821         * html/HTMLInputElement.h:
2822         (WebCore::HTMLInputElement::handleBeforeTextInsertedEvent):
2823          Added so that InputType can call InputElement::handleBeforeTextInsertedEvent().
2824         * html/ImageInputType.cpp: bool->void change
2825         (WebCore::ImageInputType::handleDOMActivateEvent):
2826         * html/ImageInputType.h: ditto.
2827         * html/InputType.cpp: ditto.
2828         (WebCore::InputType::handleClickEvent):
2829         (WebCore::InputType::handleDOMActivateEvent):
2830         (WebCore::InputType::handleKeydownEvent):
2831         (WebCore::InputType::handleKeypressEvent):
2832         (WebCore::InputType::handleKeyupEvent):
2833         (WebCore::InputType::handleBeforeTextInsertedEvent):
2834         (WebCore::InputType::handleWheelEvent): Added default implementation.
2835         (WebCore::InputType::forwardEvent): ditto.
2836         (WebCore::InputType::formForSubmission): ditto.
2837         * html/InputType.h:
2838         * html/IsIndexInputType.cpp:
2839         (WebCore::IsIndexInputType::formForSubmission): Moved from HTMLInputElement.cpp.
2840         * html/IsIndexInputType.h:
2841         * html/NumberInputType.cpp:
2842         (WebCore::isNumberCharacter): Moved from HTMLInputElement.cpp.
2843         (WebCore::NumberInputType::handleKeydownEvent): bool->void change.
2844         (WebCore::NumberInputType::handleBeforeTextInsertedEvent): Moved from HTMInputElement.cpp.
2845         (WebCore::NumberInputType::handleWheelEvent): Added. Just calls handleWheelEventForSpinButton().
2846         * html/NumberInputType.h:
2847         * html/RadioInputType.cpp: bool->void changes.
2848         (WebCore::RadioInputType::handleClickEvent):
2849         (WebCore::RadioInputType::handleKeydownEvent):
2850         (WebCore::RadioInputType::handleKeyupEvent):
2851         * html/RadioInputType.h:
2852         * html/RangeInputType.cpp:
2853         (WebCore::RangeInputType::handleKeydownEvent): ditto.
2854         (WebCore::RangeInputType::forwardEvent): Moved from HTMLInputElement.cpp.
2855         * html/RangeInputType.h:
2856         * html/ResetInputType.cpp: bool->void change.
2857         (WebCore::ResetInputType::handleDOMActivateEvent):
2858         * html/ResetInputType.h: ditto.
2859         * html/SubmitInputType.cpp: ditto.
2860         (WebCore::SubmitInputType::handleDOMActivateEvent):
2861         * html/SubmitInputType.h: ditto.
2862         * html/TextFieldInputType.cpp:
2863         (WebCore::TextFieldInputType::handleKeydownEvent): bool->void change.
2864         (WebCore::TextFieldInputType::handleKeydownEventForSpinButton): ditto.
2865         (WebCore::TextFieldInputType::handleWheelEventForSpinButton): Moved from HTMLInputElement.cpp.
2866         (WebCore::TextFieldInputType::forwardEvent): ditto.
2867         * html/TextFieldInputType.h:
2868
2869 2010-12-23  Alexander Pavlov  <apavlov@chromium.org>
2870
2871         Reviewed by Joseph Pecoraro.
2872
2873         Web Inspector: After scrolling new property value and cancelling, removed property remains active in page style
2874         https://bugs.webkit.org/show_bug.cgi?id=51390
2875
2876         * inspector/front-end/StylesSidebarPane.js:
2877         (WebInspector.StylePropertyTreeElement.prototype):
2878
2879 2010-12-23  Noel Gordon  <noel.gordon@gmail.com>
2880
2881         Reviewed by Adam Barth.
2882
2883         [chromium] Reduce canvas.toDataURL("image/png") run-time costs 300%
2884         https://bugs.webkit.org/show_bug.cgi?id=51455
2885
2886         Chromium uses the libpng compression defaults.  Good compression results,
2887         but at much larger run-time cost compared to other browsers.  Chrome is 2
2888         times slower than Mozilla 3.6.12 and 3-4 times slower than Safari 5.0.3.
2889
2890         libpng has supported alternative compression methods for some time, they
2891         better meet the dual goals of good compression and run-time cost for the
2892         on-line case, and are well-documented.  Here use Huffman encoding.  It's
2893         2-20% faster than other encodings (Z_RLE, Z_FILTERED) and the compressed
2894         size is within 1% of the Safari 5.0.3 result independent of image size.
2895
2896         No change in behaviour, so no new tests.
2897
2898         * platform/image-encoders/skia/PNGImageEncoder.cpp:
2899         (WebCore::PNGImageEncoder::encode): Apply Huffman image encoding.
2900
2901 2010-12-22  Noel Gordon  <noel.gordon@gmail.com>
2902
2903         Reviewed by Darin Fisher.
2904
2905         [chromium] Optimize canvas.toDataURL("image/png") unpremultiplication loop
2906         https://bugs.webkit.org/show_bug.cgi?id=51321
2907
2908         Follow on from r73890, unroll the SkUnPreMultiply::PMColorToColor() call for
2909         the "image/png" encoder case viz., compute the unpremultiplication in-place.
2910         See https://bugs.webkit.org/show_bug.cgi?id=50804 for reference.
2911
2912         No new tests: canvas.toDataURL() is covered by existing tests.
2913
2914         * platform/image-encoders/skia/PNGImageEncoder.cpp:
2915         (WebCore::preMultipliedBGRAtoRGBA):
2916
2917 2010-12-22  Ariya Hidayat  <ariya@sencha.com>
2918
2919         Reviewed by Simon Fraser.
2920
2921         Implement skewX() and skewY() for CSSMatrix.
2922         https://bugs.webkit.org/show_bug.cgi?id=38335
2923
2924         * css/WebKitCSSMatrix.cpp:
2925         (WebCore::WebKitCSSMatrix::skew): Implemented skewX() and skewY().
2926         * css/WebKitCSSMatrix.h: Added skewX() and skewY().
2927         * css/WebKitCSSMatrix.idl: Added skewX() and skewY().
2928
2929 2010-12-22  Simon Fraser  <simon.fraser@apple.com>
2930
2931         Reviewed by Dan Bernstein.
2932
2933         Support unprefixed box-shadow property
2934         https://bugs.webkit.org/show_bug.cgi?id=51448
2935         
2936         Add support for the box-shadow CSS property. We'll currently render this
2937         similarly to -webkit-box-shadow, but a later fix will adjust the blur radius
2938         handling to match the spec.
2939
2940         Test: fast/css/box-shadow.html
2941
2942         * css/CSSComputedStyleDeclaration.cpp:
2943         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Implement getComputedStyle
2944         for box-shadow
2945         
2946         * css/CSSParser.cpp:
2947         (WebCore::CSSParser::parseValue):
2948         (WebCore::ShadowParseContext::ShadowParseContext):
2949         (WebCore::ShadowParseContext::commitValue):
2950         (WebCore::ShadowParseContext::commitLength):
2951         (WebCore::ShadowParseContext::commitColor): Support CSSPropertyBoxShadow
2952
2953         * css/CSSPropertyNames.in: add box-shadow
2954
2955         * css/CSSStyleSelector.cpp:
2956         (WebCore::CSSStyleSelector::applyProperty): Add CSSPropertyBoxShadow, and
2957         store in the ShadowData if this is -webkit-box-shadow or not. We'll use this
2958         to adjust radii later.
2959
2960         * css/SVGCSSStyleSelector.cpp:
2961         (WebCore::CSSStyleSelector::applySVGProperty): Add CSSPropertyBoxShadow.
2962         
2963         * page/animation/AnimationBase.cpp:
2964         (WebCore::blendFunc):
2965         (WebCore::PropertyWrapperShadow::blend):
2966         (WebCore::AnimationBase::ensurePropertyMap): Support animations of box-shadow.
2967         
2968         * rendering/style/ShadowData.cpp: Store a flag to say if this is a -webkit-box-shadow.
2969         (WebCore::ShadowData::ShadowData):
2970         (WebCore::ShadowData::operator==):
2971         * rendering/style/ShadowData.h:
2972         (WebCore::ShadowData::ShadowData):
2973         (WebCore::ShadowData::isWebkitBoxShadow):
2974
2975 2010-12-22  Michael Saboff  <msaboff@apple.com>
2976
2977         Reviewed by Sam Weinig.
2978
2979         REGRESSION: Can't shadow/overwrite window.constructor 
2980         (causes TypeError exception)
2981         https://bugs.webkit.org/show_bug.cgi?id=48953
2982
2983         Added code in the javascript code generator to create a setter for
2984         a constructor if the new extended attribute ReplaceableConstructor
2985         is present for the interface.
2986
2987         * bindings/scripts/CodeGeneratorJS.pm:
2988         * page/DOMWindow.idl:
2989
2990 2010-12-22  Steve Lacey  <sjl@chromium.org>
2991
2992         Reviewed by David Levin.
2993
2994         Change css for chromium media controls to deal with the timeline
2995         not expanding when the current time disappears. This happens when
2996         the width of the control drops below 240px.
2997
2998         This change results in a minor pixel difference - the timebar now
2999         aligns better with the time and when the time is not displayed is
3000         now perfectly centered. Disabling the affected tests for now
3001         and will rebaseline.
3002
3003         https://bugs.webkit.org/show_bug.cgi?id=51500
3004
3005         * css/mediaControlsChromium.css:
3006         (audio::-webkit-media-controls-timeline-container, video::-webkit-media-controls-timeline-container):
3007         (audio::-webkit-media-controls-current-time-display, video::-webkit-media-controls-current-time-display):
3008         (audio::-webkit-media-controls-time-remaining-display, video::-webkit-media-controls-time-remaining-display):
3009         (audio::-webkit-media-controls-timeline, video::-webkit-media-controls-timeline):
3010
3011 2010-12-22  Mihai Parparita  <mihaip@chromium.org>
3012
3013         Reviewed by Simon Fraser.
3014
3015         the shadow direction is negated in canvas context shadowOffsetY.
3016         https://bugs.webkit.org/show_bug.cgi?id=25619
3017         
3018         Invert shadow offset Y direction in 0-blur path in FontMac::drawGlyps
3019         if we're not transforming shadows (i.e. are rendering in a canvas). Also
3020         use CG shadows if there's a non-translate/flip transform applied
3021         (shadow offsets are supposed to ignore transforms, but the naive/simple
3022         implementation was taking them into account).
3023         
3024         Also does the equivalent changes to FontCGWin.
3025
3026         Test: fast/canvas/fillText-shadow.html
3027
3028         * platform/graphics/GraphicsContext.cpp:
3029         (WebCore::GraphicsContext::shadowsIgnoreTransforms):
3030         * platform/graphics/GraphicsContext.h:
3031         * platform/graphics/mac/FontMac.mm:
3032         (WebCore::Font::drawGlyphs):
3033         * platform/graphics/win/FontCGWin.cpp:
3034         (WebCore::Font::drawGlyphs):
3035
3036 2010-12-22  Sheriff Bot  <webkit.review.bot@gmail.com>
3037
3038         Unreviewed, rolling out r74503.
3039         http://trac.webkit.org/changeset/74503
3040         https://bugs.webkit.org/show_bug.cgi?id=51513
3041
3042         breaks chromium mac debug compile (Requested by tonyg-cr on
3043         #webkit).
3044
3045         * platform/graphics/chromium/ImageLayerChromium.cpp:
3046         (WebCore::ImageLayerChromium::updateContentsIfDirty):
3047         * platform/graphics/skia/GraphicsContext3DSkia.cpp:
3048         (WebCore::GraphicsContext3D::getImageData):
3049
3050 2010-12-22  Dan Bernstein  <mitz@apple.com>
3051
3052         Reviewed by Darin Adler.
3053
3054         Replace runtime checks for hyphenation API availability with compile-time checks.
3055
3056         * platform/text/cf/HyphenationCF.cpp:
3057         (WebCore::::createValueForNullKey): Changed to use CFLocaleCopyCurrent() instead of using the
3058         search locale, which is empty on Windows. On Mac, this is equivalent to using the search locale.
3059         (WebCore::canHyphenate): Added this implementation for when the hyphenation API is not available.
3060         It is identical to the implementation in Hyphenation.cpp.
3061         (WebCore::lastHyphenLocation): Ditto.
3062
3063 2010-12-22  Simon Fraser  <simon.fraser@apple.com>
3064
3065         Reviewed by Darin Adler.
3066
3067         Cache snapshots of plug-ins before painting, to avoid script running during painting
3068         https://bugs.webkit.org/show_bug.cgi?id=51493
3069         
3070         When FrameView is asked to do a flattening paint (e.g. when Safari snapshots,
3071         or when printing), plug-ins which otherwise use the CA rendering model
3072         are sent a paint event. Some plug-ins may run script while handling this event,
3073         or out of process plug-ins may process queued requests at this time. Running
3074         script while inside layout or painting can have bad consequences, because it
3075         can result in arbitrary changes to the render tree.
3076         
3077         This patch avoids sending plug-ins paint events inside of painting. Instead,
3078         we ask the plug-ins to cache a snapshot before we paint, and then the software
3079         paint simply draws that snapshot.
3080         
3081         Requires manual test, because the bug happens when Safari does
3082         a page snapshot. It's not possible to tell the Test Netscape Plug-in
3083         to paint without laying out, making an automated test impossible.
3084
3085         * manual-tests/plugins/plugin-paint-causes-layout.html: Added.
3086
3087         * page/FrameView.h:
3088         * page/FrameView.cpp:
3089         (WebCore::FrameView::paintContents): Notify all enclosed widgets
3090         that a flattening paint is going to happen.
3091         (WebCore::FrameView::notifyWidgetsInAllFrames): Utility method 
3092         that tells the RenderView in all subframes to notify their widgets.
3093
3094         * platform/Widget.h:
3095         (WebCore::Widget::notifyWidget): Generic method that can be used
3096         to send messages to widgets. Current messages are just 'before flattening paint'
3097         and 'after flattening paint'. Message has no payload.
3098
3099         * rendering/RenderView.h:
3100         * rendering/RenderView.cpp:
3101         (WebCore::RenderView::getRetainedWidgets):
3102         (WebCore::RenderView::releaseWidgets): Factor code out of updateWidgetPositions(),
3103         since we use it in two places now.
3104         
3105         (WebCore::RenderView::updateWidgetPositions): Use getRetainedWidgets() etc.
3106         (WebCore::RenderView::notifyWidgets): Retain all the widgets, then send
3107         them all the message.
3108
3109         * rendering/RenderWidget.h:
3110         * rendering/RenderWidget.cpp:
3111         (WebCore::RenderWidget::notifyWidget): Pass the message to the widget.
3112
3113 2010-12-22  Adrienne Walker  <enne@google.com>
3114
3115         Reviewed by Kenneth Russell.
3116
3117         Fix null pointer deref when restoring a lost WebGL context.
3118         https://bugs.webkit.org/show_bug.cgi?id=51494
3119
3120         No new tests, as context restored events are not currently testable.
3121
3122         * html/canvas/WebGLRenderingContext.cpp:
3123         (WebCore::WebGLRenderingContext::initializeNewContext):
3124         (WebCore::WebGLRenderingContext::restoreContext):
3125
3126 2010-12-22  Adam Bergkvist  <adam.bergkvist@ericsson.com>
3127
3128         Reviewed by Martin Robinson.
3129
3130         [GTK] Building with Blob support fails again
3131         https://bugs.webkit.org/show_bug.cgi?id=51392
3132
3133         Build fix.
3134
3135         * GNUmakefile.am:
3136
3137 2010-12-22  Dan Bernstein  <mitz@apple.com>
3138
3139         Reviewed by Anders Carlsson.
3140
3141         canHyphenate() always returns true for the default locale
3142         https://bugs.webkit.org/show_bug.cgi?id=51506
3143
3144         No test, since this change only affects performance.
3145
3146         * platform/text/cf/HyphenationCF.cpp:
3147         (WebCore::::createValueForNullKey): Return 0 if hyphenation is not supported for the default locale.
3148         (WebCore::::createValueForKey): Removed whitespace.
3149
3150 2010-12-22  Yury Semikhatsky  <yurys@chromium.org>
3151
3152         Reviewed by Joseph Pecoraro.
3153
3154         Web Inspector: script name gets parsed as HTML in Call stack panel
3155         https://bugs.webkit.org/show_bug.cgi?id=51468
3156
3157         * inspector/front-end/Placard.js:
3158         (WebInspector.Placard.prototype.set subtitle):
3159
3160 2010-12-22  Eric Carlson  <eric.carlson@apple.com>
3161
3162         Reviewed by Darin Adler.
3163
3164         MediaPlayer should look for MIME type in data: URL
3165         https://bugs.webkit.org/show_bug.cgi?id=51195
3166
3167         If no MIME type is passed from the media element for a data: URL, try to get it from
3168         the URL itself.
3169
3170         No new tests are possible because the MIME type is just passed to the media engine.
3171
3172         * platform/graphics/MediaPlayer.cpp:
3173         (WebCore::MediaPlayer::load):
3174
3175 2010-12-22  W. James MacLean  <wjmaclean@chromium.org>
3176
3177         Reviewed by Kenneth Russell.
3178
3179         [chromium] Add asserts to test for contiguous-pixel Skia bitmaps.
3180         https://bugs.webkit.org/show_bug.cgi?id=51186
3181
3182         No new tests. Behaviour not changed, but need the asserts to detect when assumptions violated.
3183
3184         * platform/graphics/chromium/ImageLayerChromium.cpp:
3185         (WebCore::ImageLayerChromium::updateContentsIfDirty):
3186         * platform/graphics/skia/GraphicsContext3DSkia.cpp:
3187         (WebCore::GraphicsContext3D::getImageData):
3188
3189 2010-12-22  Chris Fleizach  <cfleizach@apple.com>
3190
3191         Reviewed by Darin Adler.
3192
3193         WAI-ARIA menubar role mapped to AXGroup, should be AXMenuBar
3194         https://bugs.webkit.org/show_bug.cgi?id=51488
3195
3196         Test: platform/mac/accessibility/aria-menubar.html
3197
3198         * accessibility/AccessibilityObject.cpp:
3199         (WebCore::createARIARoleMap):
3200
3201 2010-12-22  Zhenyao Mo  <zmo@google.com>
3202
3203         Reviewed by Kenneth Russell.
3204
3205         CopyTex{Sub}Image2D check always if the bound fbo's internal color format is compatible
3206         https://bugs.webkit.org/show_bug.cgi?id=51423
3207
3208         * html/canvas/WebGLRenderingContext.cpp:
3209         (WebCore::WebGLRenderingContext::copyTexImage2D): Remove the isGLES2Compliant flag around format compatibility checking.
3210         (WebCore::WebGLRenderingContext::copyTexSubImage2D): Ditto.
3211         (WebCore::WebGLRenderingContext::getBoundFramebufferColorFormat): Helper function to get bound framebuffer's color format; deal with the case of webgl's internal fbo.
3212         * html/canvas/WebGLRenderingContext.h:
3213
3214 2010-12-22  Xan Lopez  <xlopez@igalia.com>
3215
3216         Reviewed by Gustavo Noronha.
3217
3218         [GTK] Compilation fixes with GTK+ 2.91.7
3219         https://bugs.webkit.org/show_bug.cgi?id=51487
3220
3221         * platform/gtk/GtkVersioning.h: do not define GDK_DISPLAY for
3222         backwards compatibility, it's now defined again in GTK+ 3.x.
3223         * platform/gtk/PasteboardHelper.cpp: do not call GDK functions to
3224         initialize global static variables (!). These are called when the
3225         .so is loaded, and they now require GType to be initialized and
3226         will crash. Initialize them once from the ctor, which is a more
3227         common pattern anyway.
3228         (WebCore::initGdkAtoms): new method to initialize static variables.
3229         (WebCore::PasteboardHelper::PasteboardHelper): call it.
3230         * plugins/gtk/PluginViewGtk.cpp: do not include gdkconfig.h when
3231         using GTK+ 3.x, since it's no longer installed.
3232
3233 2010-12-22  Dirk Schulze  <krit@wbekit.org>
3234
3235         Reviewed by Nikolas Zimmermann.
3236
3237         Cleanup SVG code according to the webkit style rules 2
3238         https://bugs.webkit.org/show_bug.cgi?id=51461
3239
3240         Second patch to fix indention and other style issues according to the WebKit style rules in the SVG code.
3241
3242         No changes of functionality, so no new tests. 
3243
3244         * svg/SVGFEDisplacementMapElement.cpp:
3245         (WebCore::SVGFEDisplacementMapElement::stringToChannel):
3246         * svg/SVGFEDistantLightElement.h:
3247         * svg/SVGFEFuncAElement.h:
3248         * svg/SVGFEFuncBElement.h:
3249         * svg/SVGFEFuncGElement.h:
3250         * svg/SVGFEFuncRElement.h:
3251         * svg/SVGFEMergeElement.cpp:
3252         (WebCore::SVGFEMergeElement::build):
3253         * svg/SVGFEMorphologyElement.cpp:
3254         * svg/SVGFEPointLightElement.h:
3255         * svg/SVGFESpecularLightingElement.cpp:
3256         (WebCore::SVGFESpecularLightingElement::findLights):
3257         * svg/SVGFESpotLightElement.h:
3258         * svg/SVGFitToViewBox.cpp:
3259         (WebCore::SVGFitToViewBox::parseViewBox):
3260         (WebCore::SVGFitToViewBox::isKnownAttribute):
3261         * svg/SVGFontFaceElement.cpp:
3262         (WebCore::cssPropertyIdForSVGAttributeName):
3263         * svg/SVGFontFaceElement.h:
3264         (WebCore::SVGFontFaceElement::associatedFontElement):
3265         * svg/SVGFontFaceNameElement.h:
3266         * svg/SVGFontFaceSrcElement.cpp:
3267         * svg/SVGFontFaceSrcElement.h:
3268         * svg/SVGFontFaceUriElement.h:
3269         * svg/SVGForeignObjectElement.h:
3270         * svg/SVGGlyphElement.cpp:
3271         (WebCore::parseArabicForm):
3272         (WebCore::parseOrientation):
3273         * svg/SVGGlyphElement.h:
3274         (WebCore::SVGGlyphIdentifier::SVGGlyphIdentifier):
3275         (WebCore::SVGGlyphIdentifier::inheritedValue):
3276         (WebCore::SVGGlyphIdentifier::operator==):
3277         (WebCore::SVGGlyphElement::rendererIsNeeded):
3278         * svg/SVGGlyphMap.h:
3279         (WebCore::GlyphMapNode::GlyphMapNode):
3280         (WebCore::GlyphMapNode::create):
3281         (WebCore::SVGGlyphMap::SVGGlyphMap):
3282         (WebCore::SVGGlyphMap::add):
3283         (WebCore::SVGGlyphMap::compareGlyphPriority):
3284         (WebCore::SVGGlyphMap::get):
3285         (WebCore::SVGGlyphMap::clear):
3286         * svg/SVGGradientElement.cpp:
3287         * svg/SVGHKernElement.cpp:
3288         * svg/SVGHKernElement.h:
3289         (WebCore::SVGHKernElement::rendererIsNeeded):
3290         * svg/SVGImageElement.h:
3291         * svg/SVGImageLoader.cpp:
3292         * svg/SVGImageLoader.h:
3293         * svg/SVGLangSpace.cpp:
3294         (WebCore::SVGLangSpace::parseMappedAttribute):
3295         (WebCore::SVGLangSpace::isKnownAttribute):
3296         * svg/SVGLangSpace.h:
3297         (WebCore::SVGLangSpace::xmllang):
3298         * svg/SVGMetadataElement.h:
3299         * svg/SVGMissingGlyphElement.h:
3300         (WebCore::SVGMissingGlyphElement::rendererIsNeeded):
3301         * svg/SVGPaint.cpp:
3302         (WebCore::SVGPaint::cssText):
3303         * svg/SVGPaint.h:
3304         (WebCore::SVGPaint::create):
3305         (WebCore::SVGPaint::paintType):
3306         (WebCore::SVGPaint::isSVGPaint):
3307         * svg/SVGParserUtilities.cpp:
3308         * svg/SVGParserUtilities.h:
3309         (WebCore::isWhitespace):
3310         (WebCore::skipOptionalSpaces):
3311         (WebCore::skipOptionalSpacesOrDelimiter):
3312         * svg/SVGPathElement.cpp:
3313         * svg/SVGPathParserFactory.h:
3314         * svg/SVGPathSegList.h:
3315
3316 2010-12-22  Chris Fleizach  <cfleizach@apple.com>
3317
3318         Reviewed by Sam Weinig.
3319
3320         AX: WAI-ARIA textbox role needs different AXRole, depending on value of aria-multiline property
3321         https://bugs.webkit.org/show_bug.cgi?id=51481
3322
3323         Support aria-multiline and use it to change the role of an ARIA "textbox" 
3324         from AXTextArea to AXTextField.
3325
3326         Test: platform/mac/accessibility/aria-multiline.html
3327
3328         * accessibility/AccessibilityObject.cpp:
3329         (WebCore::AccessibilityObject::ariaIsMultiline):
3330         * accessibility/AccessibilityObject.h:
3331         (WebCore::AccessibilityObject::isPasswordField):
3332         (WebCore::AccessibilityObject::isTextControl):
3333         * accessibility/AccessibilityRenderObject.cpp:
3334         (WebCore::AccessibilityRenderObject::determineAriaRoleAttribute):
3335         * accessibility/AccessibilityRenderObject.h:
3336         * html/HTMLAttributeNames.in:
3337
3338 2010-12-22  Simon Fraser  <simon.fraser@apple.com>
3339
3340         Reviewed by Dan Bernstein.
3341
3342         CSS 2.1 failure: counter-increment-013 fails
3343         https://bugs.webkit.org/show_bug.cgi?id=51483
3344         
3345         Clamp the counter-increment property to the valid range of signed
3346         integers.
3347
3348         Test: fast/css/counters/counter-increment-overflow.html
3349
3350         * css/CSSParser.cpp:
3351         (WebCore::clampToSignedInteger):
3352         (WebCore::CSSParser::parseCounter):
3353
3354 2010-12-22  Dan Bernstein  <mitz@apple.com>
3355
3356         Rubber-stamped by Mark Rowe.
3357
3358         Changed WebKitTools to Tools in script build phases.
3359
3360         * WebCore.xcodeproj/project.pbxproj:
3361
3362 2010-12-21  Vangelis Kokkevis  <vangelis@chromium.org>
3363
3364         Reviewed by Kenneth Russell.
3365
3366         [chromium] Fixing crash with empty render surfaces.
3367         https://bugs.webkit.org/show_bug.cgi?id=51432
3368
3369         Test: platform/chromium/compositing/empty-render-surface-crasher.html
3370
3371         * platform/graphics/chromium/RenderSurfaceChromium.cpp:
3372         (WebCore::RenderSurfaceChromium::draw):
3373
3374 2010-12-21  Pavel Podivilov  <podivilov@chromium.org>
3375
3376         Reviewed by Yury Semikhatsky.
3377
3378         Web Inspector: persist JavaScript breakpoints in frontend settings.
3379         https://bugs.webkit.org/show_bug.cgi?id=48434
3380
3381         * bindings/js/ScriptDebugServer.cpp:
3382         (WebCore::ScriptDebugServer::setBreakpoint):
3383         (WebCore::ScriptDebugServer::removeBreakpoint):
3384         * bindings/js/ScriptDebugServer.h:
3385         * bindings/v8/DebuggerScript.js:
3386         ():
3387         * bindings/v8/ScriptDebugServer.cpp:
3388         (WebCore::ScriptDebugServer::setBreakpoint):
3389         (WebCore::ScriptDebugServer::removeBreakpoint):
3390         * bindings/v8/ScriptDebugServer.h:
3391         * inspector/Inspector.idl:
3392         * inspector/InspectorBackend.cpp:
3393         * inspector/InspectorController.cpp:
3394         (WebCore::InspectorController::InspectorController):
3395         (WebCore::InspectorController::enableDebuggerFromFrontend):
3396         (WebCore::InspectorController::setStickyBreakpoints):
3397         (WebCore::InspectorController::restoreStickyBreakpoint):
3398         * inspector/InspectorController.h:
3399         * inspector/InspectorDebuggerAgent.cpp:
3400         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
3401         (WebCore::InspectorDebuggerAgent::setStickyBreakpoint):
3402         (WebCore::InspectorDebuggerAgent::setBreakpoint):
3403         (WebCore::InspectorDebuggerAgent::removeBreakpoint):
3404         (WebCore::InspectorDebuggerAgent::restoreBreakpoint):
3405         (WebCore::InspectorDebuggerAgent::clearForPageNavigation):
3406         (WebCore::InspectorDebuggerAgent::didParseSource):
3407         * inspector/InspectorDebuggerAgent.h:
3408         * inspector/front-end/Breakpoint.js:
3409         (WebInspector.Breakpoint):
3410         (WebInspector.Breakpoint.prototype.remove):
3411         * inspector/front-end/BreakpointManager.js:
3412         (WebInspector.BreakpointManager):
3413         (WebInspector.DOMBreakpoint.prototype._serializeToJSON):
3414         (WebInspector.JavaScriptBreakpoint):
3415         (WebInspector.XHRBreakpoint.prototype._serializeToJSON):
3416         * inspector/front-end/DebuggerModel.js:
3417         (WebInspector.DebuggerModel):
3418         * inspector/front-end/ScriptsPanel.js:
3419         (WebInspector.ScriptsPanel.prototype._debuggerPaused):
3420         * inspector/front-end/SourceFrame.js:
3421
3422 2010-12-20  Antti Koivisto  <antti@apple.com>
3423
3424         Reviewed by Alexey Proskuryakov.
3425
3426         https://bugs.webkit.org/show_bug.cgi?id=51354
3427         Don't block rendering and script execution on deferred stylesheets
3428         
3429         - Don't add low priority stylesheets to the document pending sheet count.
3430         - Resolve media attribute fully for the link element stylesheet load.
3431
3432         Test: http/tests/local/stylesheet-and-script-load-order-media-print.html
3433
3434         * html/HTMLLinkElement.cpp:
3435         (WebCore::HTMLLinkElement::HTMLLinkElement):
3436         (WebCore::HTMLLinkElement::~HTMLLinkElement):
3437         (WebCore::HTMLLinkElement::setDisabledState):
3438         (WebCore::HTMLLinkElement::process):
3439         (WebCore::HTMLLinkElement::sheetLoaded):
3440         (WebCore::HTMLLinkElement::addPendingSheet):
3441         (WebCore::HTMLLinkElement::removePendingSheet):
3442         * html/HTMLLinkElement.h:
3443
3444 2010-12-22  Sheriff Bot  <webkit.review.bot@gmail.com>
3445
3446         Unreviewed, rolling out r74473.
3447         http://trac.webkit.org/changeset/74473
3448         https://bugs.webkit.org/show_bug.cgi?id=51463
3449
3450         broke compilation on leopard intel release (Requested by
3451         podivilov on #webkit).
3452
3453         * bindings/js/ScriptDebugServer.cpp:
3454         (WebCore::ScriptDebugServer::setBreakpoint):
3455         (WebCore::ScriptDebugServer::removeBreakpoint):
3456         * bindings/js/ScriptDebugServer.h:
3457         * bindings/v8/DebuggerScript.js:
3458         ():
3459         * bindings/v8/ScriptDebugServer.cpp:
3460         (WebCore::ScriptDebugServer::setBreakpoint):
3461         (WebCore::ScriptDebugServer::removeBreakpoint):
3462         * bindings/v8/ScriptDebugServer.h:
3463         * inspector/Inspector.idl:
3464         * inspector/InspectorBackend.cpp:
3465         * inspector/InspectorController.cpp:
3466         (WebCore::InspectorController::InspectorController):
3467         (WebCore::InspectorController::enableDebuggerFromFrontend):
3468         (WebCore::InspectorController::setStickyBreakpoints):
3469         (WebCore::InspectorController::restoreStickyBreakpoint):
3470         (WebCore::InspectorController::breakpointsSettingKey):
3471         (WebCore::InspectorController::loadBreakpoints):
3472         (WebCore::InspectorController::saveBreakpoints):
3473         * inspector/InspectorController.h:
3474         * inspector/InspectorDebuggerAgent.cpp:
3475         (WebCore::formatBreakpointId):
3476         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
3477         (WebCore::InspectorDebuggerAgent::setBreakpoint):
3478         (WebCore::InspectorDebuggerAgent::removeBreakpoint):
3479         (WebCore::InspectorDebuggerAgent::clearForPageNavigation):
3480         (WebCore::InspectorDebuggerAgent::md5Base16):
3481         (WebCore::InspectorDebuggerAgent::loadBreakpoints):
3482         (WebCore::InspectorDebuggerAgent::saveBreakpoints):
3483         (WebCore::InspectorDebuggerAgent::didParseSource):
3484         * inspector/InspectorDebuggerAgent.h:
3485         * inspector/front-end/Breakpoint.js:
3486         (WebInspector.Breakpoint):
3487         (WebInspector.Breakpoint.jsBreakpointId):
3488         (WebInspector.Breakpoint.prototype.set enabled):
3489         (WebInspector.Breakpoint.prototype.get id):
3490         (WebInspector.Breakpoint.prototype.set condition):
3491         (WebInspector.Breakpoint.prototype.remove):
3492         * inspector/front-end/BreakpointManager.js:
3493         (WebInspector.BreakpointManager):
3494         (WebInspector.BreakpointManager.prototype._createDOMBreakpoint):
3495         (WebInspector.BreakpointManager.prototype._createEventListenerBreakpoint):
3496         (WebInspector.BreakpointManager.prototype._createXHRBreakpoint):
3497         (WebInspector.BreakpointManager.prototype._setNativeBreakpoint):
3498         (WebInspector.BreakpointManager.prototype._setNativeBreakpointEnabled):
3499         (WebInspector.BreakpointManager.prototype._removeNativeBreakpoint):
3500         (WebInspector.BreakpointManager.prototype.breakpointViewForEventData):
3501         (WebInspector.BreakpointManager.prototype._projectChanged):
3502         (WebInspector.BreakpointManager.prototype.restoreDOMBreakpoints):
3503         (WebInspector.BreakpointManager.prototype._saveBreakpoints):
3504         (WebInspector.BreakpointManager.prototype._validateBreakpoints):
3505         (WebInspector.DOMBreakpoint.prototype._serializeToJSON):
3506         (WebInspector.EventListenerBreakpoint.prototype._serializeToJSON):
3507         (WebInspector.XHRBreakpoint.prototype._serializeToJSON):
3508         (WebInspector.NativeBreakpointView.prototype.set enabled):
3509         (WebInspector.NativeBreakpointView.prototype.remove):
3510         * inspector/front-end/DebuggerModel.js:
3511         (WebInspector.DebuggerModel):
3512         (WebInspector.DebuggerModel.prototype.setOneTimeBreakpoint):
3513         (WebInspector.DebuggerModel.prototype.removeOneTimeBreakpoint):
3514         (WebInspector.DebuggerModel.prototype.setBreakpoint):
3515         (WebInspector.DebuggerModel.prototype.findBreakpoint):
3516         (WebInspector.DebuggerModel.prototype.reset):
3517         (WebInspector.DebuggerModel.prototype._setBreakpoint):
3518         (WebInspector.DebuggerModel.prototype._breakpointRemoved):
3519         (WebInspector.DebuggerModel.prototype._setBreakpointOnBackend):
3520         (WebInspector.DebuggerModel.prototype.breakpointRestored):
3521         (WebInspector.DebuggerModel.prototype.pausedScript):
3522         (WebInspector.DebuggerModel.prototype.resumedScript):
3523         * inspector/front-end/ScriptsPanel.js:
3524         (WebInspector.ScriptsPanel.prototype.continueToLine):
3525         (WebInspector.ScriptsPanel.prototype._debuggerPaused):
3526         * inspector/front-end/SourceFrame.js:
3527         (WebInspector.SourceFrame.prototype._contextMenu.addConditionalBreakpoint.didEditBreakpointCondition):
3528         (WebInspector.SourceFrame.prototype._contextMenu.addConditionalBreakpoint):
3529         (WebInspector.SourceFrame.prototype._contextMenu.else.editBreakpointCondition.didEditBreakpointCondition):
3530         (WebInspector.SourceFrame.prototype._contextMenu.else.editBreakpointCondition):
3531         (WebInspector.SourceFrame.prototype._contextMenu):
3532         (WebInspector.SourceFrame.prototype._mouseDown):
3533         (WebInspector.SourceFrame.prototype._continueToLine):
3534         (WebInspector.SourceFrame.prototype._setBreakpoint):
3535
3536 2010-12-21  Pavel Podivilov  <podivilov@chromium.org>
3537
3538         Reviewed by Yury Semikhatsky.
3539
3540         Web Inspector: persist JavaScript breakpoints in frontend settings.
3541         https://bugs.webkit.org/show_bug.cgi?id=48434
3542
3543         * bindings/js/ScriptDebugServer.cpp:
3544         (WebCore::ScriptDebugServer::setBreakpoint):
3545         (WebCore::ScriptDebugServer::removeBreakpoint):
3546         * bindings/js/ScriptDebugServer.h:
3547         * bindings/v8/DebuggerScript.js:
3548         ():
3549         * bindings/v8/ScriptDebugServer.cpp:
3550         (WebCore::ScriptDebugServer::setBreakpoint):
3551         (WebCore::ScriptDebugServer::removeBreakpoint):
3552         * bindings/v8/ScriptDebugServer.h:
3553         * inspector/Inspector.idl:
3554         * inspector/InspectorBackend.cpp:
3555         * inspector/InspectorController.cpp:
3556         (WebCore::InspectorController::InspectorController):
3557         (WebCore::InspectorController::enableDebuggerFromFrontend):
3558         (WebCore::InspectorController::setStickyBreakpoints):
3559         (WebCore::InspectorController::restoreStickyBreakpoint):
3560         * inspector/InspectorController.h:
3561         * inspector/InspectorDebuggerAgent.cpp:
3562         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
3563         (WebCore::InspectorDebuggerAgent::setStickyBreakpoint):
3564         (WebCore::InspectorDebuggerAgent::setBreakpoint):
3565         (WebCore::InspectorDebuggerAgent::removeBreakpoint):
3566         (WebCore::InspectorDebuggerAgent::restoreBreakpoint):
3567         (WebCore::InspectorDebuggerAgent::clearForPageNavigation):
3568         (WebCore::InspectorDebuggerAgent::didParseSource):
3569         * inspector/InspectorDebuggerAgent.h:
3570         *