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