2009-11-10 Anton Muhin <antonm@chromium.org>
[WebKit-https.git] / WebCore / ChangeLog
1 2009-11-10  Anton Muhin  <antonm@chromium.org>
2
3         Reviewed by Adam Barth.
4
5         Reapply 50562 reverted by 50588 due to issues with sandboxing (should be fine now).
6         https://bugs.webkit.org/show_bug.cgi?id=31051
7
8         * bindings/v8/V8GCController.cpp:
9         (WebCore::V8GCController::gcEpilogue):
10         (WebCore::V8GCController::checkMemoryUsage):
11         * bindings/v8/V8GCController.h:
12         * bindings/v8/V8Proxy.cpp:
13         (WebCore::V8Proxy::evaluate):
14         (WebCore::V8Proxy::runScript):
15         (WebCore::V8Proxy::callFunction):
16
17 2009-11-10  Zoltan Horvath  <zoltan@webkit.org>
18
19         Reviewed by Darin Adler.
20
21         Allow custom memory allocation control for the part of loader directory in WebCore
22         https://bugs.webkit.org/show_bug.cgi?id=31161
23
24         Inherits the following classes from Noncopyable because these are instantiated
25         by 'new' and these are no need to be copyable:
26
27         class Request - WebCore/loader/loader.cpp:100
28         struct ScheduledRedirection - WebCore/loader/RedirectScheduler.cpp:164
29         class ApplicationCacheStorage - WebCore/loader/appcache/ApplicationCacheStorage.cpp:1121
30         class ApplicationCacheHost -  WebCore/loader/DocumentLoader.cpp:151
31         class ImageEventSender - WebCore/loader/ImageLoader.cpp:54
32         struct ProgressItem - WebCore/loader/ProgressTracker.cpp:169
33
34         Inherits ThreadableLoaderClient class from Noncopyable because (its child class) 
35         MainThreadBridge is instantiated by 'new' in 
36         WebCore/loader/WorkerThreadableLoader.cpp:59 it is no need to be copyable.
37
38         ThreadableLoaderClient's inheriting has been changed to public.
39
40         * loader/ImageLoader.cpp:
41         * loader/ProgressTracker.cpp:
42         * loader/RedirectScheduler.cpp:
43         * loader/Request.h:
44         * loader/ThreadableLoaderClient.h:
45         * loader/WorkerThreadableLoader.h:
46         * loader/appcache/ApplicationCacheHost.h:
47         * loader/appcache/ApplicationCacheStorage.h:
48
49 2009-11-10  Philippe Normand  <pnormand@igalia.com>
50
51         Reviewed by Eric Seidel.
52
53         https://bugs.webkit.org/show_bug.cgi?id=31047
54         [GTK] Failing test media/video-played-ranges-1.html
55
56         WebKit coding style fixes.
57
58         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
59         (WebCore::mediaPlayerPrivateMessageCallback):
60         (WebCore::MediaPlayerPrivate::naturalSize):
61         (WebCore::MediaPlayerPrivate::paint):
62         (WebCore::mimeTypeCache):
63
64 2009-11-10  Oliver Hunt  <oliver@apple.com>
65
66         Remove build failure introduced by earlier build fix.
67
68         * bindings/v8/custom/V8WebGLIntArrayCustom.cpp:
69
70 2009-11-10  Oliver Hunt  <oliver@apple.com>
71
72         Is this the last build fix? grep tells me yes.
73
74         * bindings/v8/custom/V8DocumentCustom.cpp:
75         (WebCore::CALLBACK_FUNC_DECL):
76
77 2009-11-10  Oliver Hunt  <oliver@apple.com>
78
79         Hopefully the last one.  Why aren't these autogenerated?
80
81         * bindings/v8/V8DOMWrapper.cpp:
82         (WebCore::V8DOMWrapper::setIndexedPropertiesToExternalArray):
83         (WebCore::V8DOMWrapper::getTemplate):
84         (WebCore::V8DOMWrapper::convertToV8Object):
85
86 2009-11-10  Oliver Hunt  <oliver@apple.com>
87
88         Another chrome build fix.
89
90         * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
91         (WebCore::CALLBACK_FUNC_DECL):
92
93 2009-11-10  Oliver Hunt  <oliver@apple.com>
94
95         Yet another chrome buildfix
96
97         * bindings/v8/custom/V8WebGLArrayBufferCustom.cpp:
98         (WebCore::CALLBACK_FUNC_DECL):
99         * bindings/v8/custom/V8WebGLArrayCustom.h:
100         (WebCore::constructCanvasArray):
101         * bindings/v8/custom/V8WebGLByteArrayCustom.cpp:
102         (WebCore::CALLBACK_FUNC_DECL):
103         (WebCore::INDEXED_PROPERTY_GETTER):
104         (WebCore::INDEXED_PROPERTY_SETTER):
105         * bindings/v8/custom/V8WebGLFloatArrayCustom.cpp:
106         (WebCore::CALLBACK_FUNC_DECL):
107         (WebCore::INDEXED_PROPERTY_GETTER):
108         (WebCore::INDEXED_PROPERTY_SETTER):
109         * bindings/v8/custom/V8WebGLIntArrayCustom.cpp:
110         (WebCore::CALLBACK_FUNC_DECL):
111         (WebCore::INDEXED_PROPERTY_GETTER):
112         (WebCore::INDEXED_PROPERTY_SETTER):
113         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
114         (WebCore::CALLBACK_FUNC_DECL):
115         (WebCore::vertexAttribAndUniformHelperf):
116         (WebCore::uniformHelperi):
117         (WebCore::uniformMatrixHelper):
118         * bindings/v8/custom/V8WebGLShortArrayCustom.cpp:
119         (WebCore::CALLBACK_FUNC_DECL):
120         (WebCore::INDEXED_PROPERTY_GETTER):
121         (WebCore::INDEXED_PROPERTY_SETTER):
122         * bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp:
123         (WebCore::CALLBACK_FUNC_DECL):
124         (WebCore::INDEXED_PROPERTY_GETTER):
125         (WebCore::INDEXED_PROPERTY_SETTER):
126         * bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp:
127         (WebCore::CALLBACK_FUNC_DECL):
128         (WebCore::INDEXED_PROPERTY_GETTER):
129         (WebCore::INDEXED_PROPERTY_SETTER):
130         * bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp:
131         (WebCore::CALLBACK_FUNC_DECL):
132         (WebCore::INDEXED_PROPERTY_GETTER):
133         (WebCore::INDEXED_PROPERTY_SETTER):
134
135 2009-11-10  Oliver Hunt  <oliver@apple.com>
136
137         Chrome build fix.
138
139         * bindings/v8/V8Index.h:
140
141 2009-11-10  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
142
143         Reviewed by Reviewed by Jan Alonzo.
144
145         https://bugs.webkit.org/show_bug.cgi?id=30901
146         [Gtk] Need to de-lint the Atk a11y code
147
148         Removal of various and sundry style-violating nits.
149
150         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
151
152 2009-11-10  Philippe Normand  <pnormand@igalia.com>
153
154         Reviewed by Jan Alonzo.
155
156         https://bugs.webkit.org/show_bug.cgi?id=31047
157         [GTK] Failing test media/video-played-ranges-1.html
158
159         Fix playback rate setter by remembering the rate was changed. Also
160         correctly handle reverse playback by doing a seek from end to
161         beginning of the media.
162
163         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
164         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
165         (WebCore::MediaPlayerPrivate::currentTime):
166         (WebCore::MediaPlayerPrivate::seek):
167         (WebCore::MediaPlayerPrivate::hasAudio):
168         (WebCore::MediaPlayerPrivate::setVolume):
169         (WebCore::MediaPlayerPrivate::setRate):
170         (WebCore::MediaPlayerPrivate::updateStates):
171         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
172
173 2009-11-10  Oliver Hunt  <oliver@apple.com>
174
175         Reviewed by Maciej Stachowiak.
176
177         Rename 3D Canvas related classes to use WebGL prefix
178         https://bugs.webkit.org/show_bug.cgi?id=29095
179
180         Automatic rename of all WebGL related types from Canvas* to
181         WebGL* per more recent version of the WebGL spec.
182
183         Due to the automatic rename I've removed the 600+ line change list.
184
185 2009-11-09  Dirk Schulze  <krit@webkit.org>
186
187         Reviewed by Oliver Hunt.
188
189         SVG feDisplacementMap is not implemented
190         [https://bugs.webkit.org/show_bug.cgi?id=31255]
191
192         This is the implementation of the SVG filter effect
193         feDisplacementMap. 
194
195         Test: svg/filters/feDisplacementMap.svg
196
197         * svg/graphics/filters/SVGFEDisplacementMap.cpp:
198         (WebCore::FEDisplacementMap::apply):
199
200 2009-11-09  Kent Tamura  <tkent@chromium.org>
201
202         Reviewed by Darin Adler.
203
204         Add a comment about null strings and hash functions.
205         https://bugs.webkit.org/show_bug.cgi?id=29118
206
207         * platform/text/StringHash.h:
208
209 2009-11-09  Martin Robinson  <martin.james.robinson@gmail.com>
210
211         Reviewed by Darin Adler.
212
213         Compiler warnings in InspectorResource.h
214         https://bugs.webkit.org/show_bug.cgi?id=29231
215
216         Fix compilation warnings by removing addition operation on an enum type.
217
218         * inspector/InspectorResource.h:
219         (WebCore::InspectorResource::):
220         (WebCore::InspectorResource::Changes::hasChange):
221         (WebCore::InspectorResource::Changes::set):
222         (WebCore::InspectorResource::Changes::setAll):
223
224 2009-11-09  Anders Carlsson  <andersca@apple.com>
225
226         Reviewed by Darin Adler and Dan Bernstein.
227
228         <rdar://problem/7328395>
229         https://bugs.webkit.org/show_bug.cgi?id=31277
230
231         When an object tag's style changes (for example when child nodes are added/removed),
232         reuse its Frame (if it has one) instead of creating multiple Frames.
233
234         Test: fast/dom/HTMLObjectElement/children-changed.html
235
236         * loader/FrameLoader.cpp:
237         (WebCore::FrameLoader::requestObject):
238
239 2009-11-09  Norbert Leser  <norbert.leser@nokia.com>
240
241         Reviewed by Kenneth Rohde Christiansen.
242
243         Moved macro MMP_RULES (LINKEROPTION) into symbian instead of symbian-sbsv2,
244         since adjustment of RW-section base address will be needed for all new symbian
245         tool chains, specifically for arm and gcc compilation targets.
246         Also, change target address to 0xE00000 to be sufficient for all targets.
247
248         * WebCore.pro:
249
250 2009-11-09  Pavel Feldman  <pfeldman@chromium.org>
251
252         Reviewed by Timothy Hatcher.
253
254         Web Inspector: Crash when inspecting
255         WebCore\manual-tests\inspector\dom-mutation.html
256
257         https://bugs.webkit.org/show_bug.cgi?id=31259
258
259         * inspector/InspectorDOMAgent.cpp:
260         (WebCore::InspectorDOMAgent::handleEvent):
261
262 2009-11-09  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
263
264         Reviewed by Kenneth Rohde Christiansen.
265
266         [Qt] Few classes have virtual functions but non-virtual destructor
267         https://bugs.webkit.org/show_bug.cgi?id=31269
268
269         No new tests as there is no functional change.
270
271         * platform/qt/QWebPageClient.h:
272         (QWebPageClient::~QWebPageClient): Add virtual destructor.
273
274 2009-11-09  Yael Aharon  <yael.aharon@nokia.com>
275
276         Reviewed by Kenneth Rohde Christiansen.
277
278         [Qt] Allow setting HTTP headers with empty value in XMLHTTPRequest
279         https://bugs.webkit.org/show_bug.cgi?id=31140
280
281         QtNetwork interprets null string as request to remove the header, not add it.
282         Replace null values with empty values before passing them to QtNetwork.
283
284         Test: http/tests/xmlhttprequest/xmlhttprequest-setrequestheader-no-value.html
285
286         * platform/network/qt/ResourceRequestQt.cpp:
287         (WebCore::ResourceRequest::toNetworkRequest):
288
289 2009-11-09  Vadim Zeitlin  <vadim@wxwidgets.org>
290
291         Reviewed by Kevin Ollivier.
292
293         [wx] Fix handling of alpha channel when using wxWidgets 2.9: it was
294         simply ignored before resulting in transparent areas being black in PNG
295         images for example.
296         
297         https://bugs.webkit.org/show_bug.cgi?id=30823
298
299         * platform/image-decoders/wx/ImageDecoderWx.cpp:
300         (WebCore::RGBA32Buffer::asNewNativeImage):
301
302 2009-11-09  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
303
304         Reviewed by Kenneth Rohde Christiansen.
305
306         Use explicit parentheses to silence gcc 4.4 -Wparentheses warnings
307         https://bugs.webkit.org/show_bug.cgi?id=31040
308
309         No new tests as there is no functional change.
310
311         * dom/Document.cpp:
312         (WebCore::Document::recalcStyleSelector):
313         * editing/TextIterator.cpp:
314         (WebCore::pushFullyClippedState):
315         * editing/VisibleSelection.cpp:
316         (WebCore::VisibleSelection::appendTrailingWhitespace):
317         * html/HTMLLinkElement.cpp:
318         (WebCore::HTMLLinkElement::process):
319         * loader/RedirectScheduler.cpp:
320         (WebCore::RedirectScheduler::mustLockBackForwardList):
321         * loader/appcache/ApplicationCacheGroup.cpp:
322         (WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
323         * platform/graphics/qt/FontCacheQt.cpp:
324         (WebCore::FontPlatformDataCacheKey::computeHash):
325         * rendering/RenderBlock.cpp:
326         (WebCore::RenderBlock::handleRunInChild):
327         * rendering/RenderBox.cpp:
328         (WebCore::RenderBox::calcHeight):
329         * rendering/RenderTextControlMultiLine.cpp:
330         (WebCore::RenderTextControlMultiLine::nodeAtPoint):
331         * rendering/style/RenderStyle.cpp:
332         (WebCore::RenderStyle::diff):
333         * svg/SVGAnimateElement.cpp:
334         (WebCore::parseNumberValueAndUnit):
335         * svg/SVGAnimationElement.cpp:
336         (WebCore::SVGAnimationElement::startedActiveInterval):
337         * svg/SVGPreserveAspectRatio.cpp:
338         (WebCore::SVGPreserveAspectRatio::getCTM):
339
340 2009-11-09  Shinichiro Hamaji  <hamaji@chromium.org>
341
342         Reviewed by Dimitri Glazkov.
343
344         Win chromium is slow to draw transparent texts
345         https://bugs.webkit.org/show_bug.cgi?id=31258
346
347         Clip graphics context to reduce calculation.
348
349         No new tests because this change only affects performance.
350
351         * platform/graphics/chromium/FontChromiumWin.cpp:
352         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::initializeForGDI):
353         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::~TransparencyAwareFontPainter):
354
355 2009-11-09  Carol Szabo  <carol.szabo@nokia.com>
356
357         Reviewed by Darin Adler.
358
359         showTree(CounterNode*) generates too little info and has too many spaces.
360         https://bugs.webkit.org/show_bug.cgi?id=31212
361
362         No new tests as the change has no functional effect it is just for
363         improved debugging.
364
365         * rendering/CounterNode.cpp:
366         (WebCore::showTreeAndMark):
367         Changed to also show addresses of parent, next and previous
368         siblings.
369
370 2009-11-09  Stuart Morgan  <stuartmorgan@chromium.org>
371
372         Reviewed by Darin Adler.
373
374         Moves Mac implementation of setUseSecureKeyboardEntry to Frame.cpp and
375         enables it PLATFORM(CHROMIUM) in addition to PLATFORM(MAC).
376
377         https://bugs.webkit.org/show_bug.cgi?id=31083
378
379         No new tests; implementation is unchanged.
380
381         * page/Frame.cpp:
382         (WebCore::Frame::setUseSecureKeyboardEntry):
383         * page/mac/FrameMac.mm:
384
385 2009-11-09  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
386
387         Reviewed by Jan Alonzo.
388
389         Make XP_UNIX tests consistent
390         https://bugs.webkit.org/show_bug.cgi?id=31250
391
392         No new tests as there is no functional change.
393
394         * plugins/PluginView.cpp:
395         (WebCore::PluginView::setFrameRect): Test if XP_UNIX is defined
396         instead of the value of the macro
397
398         * plugins/gtk/PluginViewGtk.cpp:
399         (WebCore::PluginView::setNPWindowIfNeeded): Test if the XP_UNIX is
400         defined instead of using the PLATFORM macro to be consistent
401         (WebCore::PluginView::getValue): Ditto.
402
403 2009-11-09  Kevin Watters  <kevinwatters@gmail.com>
404
405         Reviewed by Darin Adler.
406
407         Thunk to the main thread from ~Database to deref Database's m_document.
408
409         If the Database was the Document's last referrer, then ~Document occurs on the
410         Database thread, and ASSERT(!m_styleRecalcTimer.isActive()) hits a main thread
411         ASSERT in debug builds.
412
413         * storage/Database.cpp:
414         (WebCore::derefDocument):
415         (WebCore::Database::~Database):
416
417 2009-11-09  Mark Mentovai  <mark@chromium.org>
418
419         Reviewed by Dan Bernstein.
420
421         Track "can have scrollbar" state within FrameView independently of the
422         individual scrollbar states in ScrollView.
423
424         rdar://problem/7215132, https://bugs.webkit.org/show_bug.cgi?id=29167
425         REGRESSION (r48064): mint.com loses scrollbars after coming out of
426         edit mode.
427
428         rdar://problem/7314421, https://bugs.webkit.org/show_bug.cgi?id=30517
429         REGRESSION (r48064): Extra scroll bars in GarageBand Lesson Store.
430
431         Test: fast/overflow/scrollbar-restored.html
432
433         * WebCore.base.exp:
434         * page/FrameView.cpp:
435         (WebCore::FrameView::FrameView):
436         (WebCore::FrameView::resetScrollbars):
437         (WebCore::FrameView::setCanHaveScrollbars):
438         (WebCore::FrameView::updateCanHaveScrollbars):
439         (WebCore::FrameView::layout):
440         * page/FrameView.h:
441         * platform/ScrollView.h:
442
443 2009-11-09  Keishi Hattori  <casey.hattori@gmail.com>
444
445         Reviewed by Timothy Hatcher.
446
447         Web Inspector: CSS syntax highlighter doesn't recognize negative numbers
448         https://bugs.webkit.org/show_bug.cgi?id=31257
449
450         * inspector/front-end/SourceFrame.js:
451
452 2009-11-09  Alexander Pavlov  <apavlov@chromium.org>
453
454         Reviewed by Timothy Hatcher.
455
456         Web Inspector: Debugger shortcuts (F8, F10, F11) have no effect if the Console view is open
457         https://bugs.webkit.org/show_bug.cgi?id=31252
458
459         Route F1-F12 keypresses in the Console view to the current panel if there is one.
460
461         Test: manual-tests/inspector/debugger-shortcuts-with-console-opened.html
462
463         * inspector/front-end/ConsoleView.js:
464         (WebInspector.ConsoleView.prototype._promptKeyDown):
465         * inspector/front-end/utilities.js:
466         ():
467         * manual-tests/inspector/debugger-shortcuts-with-console-opened.html: Added.
468
469 2009-11-09  Yael Aharon  <yael.aharon@nokia.com>
470
471         Reviewed by Kenneth Rohde Christiansen.
472
473         [Qt] Pass credentials provided by XMLHTTPRequest to the network request.
474         https://bugs.webkit.org/show_bug.cgi?id=31208
475
476         After r42483, the credentials are no longer passed to the network request
477         in the URL of the request.
478         Pass the credentials from XMLHTTPRequest to the network request, the same
479         way that other ports do.
480
481         After this patch LayoutTests/http/xmlhttprequest/basic-auth.html passes.
482
483         * platform/network/qt/ResourceHandleQt.cpp:
484         (WebCore::ResourceHandle::start):
485         (WebCore::ResourceHandle::loadResourceSynchronously):
486
487 2009-11-09  Zoltan Horvath  <zoltan@webkit.org>
488
489         Unreviewed.
490
491         https://bugs.webkit.org/show_bug.cgi?id=31161
492
493         Roll back r50657 because it breaks the MAC builds.
494
495         * loader/ImageLoader.cpp:
496         * loader/ProgressTracker.cpp:
497         * loader/RedirectScheduler.cpp:
498         * loader/Request.h:
499         * loader/ThreadableLoaderClient.h:
500         * loader/WorkerThreadableLoader.h:
501         * loader/appcache/ApplicationCacheHost.h:
502         * loader/appcache/ApplicationCacheStorage.h:
503         * loader/icon/IconDatabaseClient.h:
504
505 2009-11-09  Zoltan Horvath  <zoltan@webkit.org>
506
507         Reviewed by Darin Adler.
508
509         Allow custom memory allocation control for the part of loader directory in WebCore
510         https://bugs.webkit.org/show_bug.cgi?id=31161
511
512         Inherits the following classes from Noncopyable because these are instantiated
513         by 'new' and these are no need to be copyable:
514
515         class Request - WebCore/loader/loader.cpp:100
516         struct ScheduledRedirection - WebCore/loader/RedirectScheduler.cpp:164
517         class IconDatabaseClient - WebCore/loader/icon/IconDatabase.cpp:89
518         class ApplicationCacheStorage - WebCore/loader/appcache/ApplicationCacheStorage.cpp:1121
519         class ApplicationCacheHost -  WebCore/loader/DocumentLoader.cpp:151
520         class ImageEventSender - WebCore/loader/ImageLoader.cpp:54
521         struct ProgressItem - WebCore/loader/ProgressTracker.cpp:169
522
523         Inherits ThreadableLoaderClient class from Noncopyable because (its child class) 
524         MainThreadBridge is instantiated by 'new' in 
525         WebCore/loader/WorkerThreadableLoader.cpp:59 it is no need to be copyable.
526
527         ThreadableLoaderClient's inheriting has been changed to public.
528
529         * loader/ImageLoader.cpp:
530         * loader/ProgressTracker.cpp:
531         * loader/RedirectScheduler.cpp:
532         * loader/Request.h:
533         * loader/ThreadableLoaderClient.h:
534         * loader/WorkerThreadableLoader.h:
535         * loader/appcache/ApplicationCacheHost.h:
536         * loader/appcache/ApplicationCacheStorage.h:
537         * loader/icon/IconDatabaseClient.h:
538
539 2009-11-09  Zoltan Horvath  <zoltan@webkit.org>
540
541         Reviewed by Darin Adler.
542
543         Allow custom memory allocation control for WebCore's DocLoader
544         https://bugs.webkit.org/show_bug.cgi?id=31163
545
546         Inherits DocLoader class from Noncopyable because it is
547         instantiated by 'new' in WebCore/dom/Document.cpp:370 and 
548         it is no need to be copyable.
549
550         * loader/DocLoader.h:
551
552 2009-11-09  Zoltan Horvath  <zoltan@webkit.org>
553
554         Reviewed by Darin Adler.
555
556         Allow custom memory allocation control for WebCore's Tokenizer
557         https://bugs.webkit.org/show_bug.cgi?id=31162
558
559         Inherits Tokenizer class from Noncopyable because (its child class)
560         ImageTokenizer instantiated by 'new' in WebCore/loader/ImageDocument.cpp:178 
561         and it is no need to be copyable.
562
563         * dom/Tokenizer.h:
564
565 2009-11-09  Zoltan Horvath  <zoltan@webkit.org>
566
567         Reviewed by Darin Adler.
568
569         Allow custom memory allocation control for WebCore's DeleteButtonController
570         https://bugs.webkit.org/show_bug.cgi?id=31105
571
572         Inherits DeleteButtonController class from Noncopyable because it is 
573         instantiated by 'new' in WebCore/editing/Editor.cpp:919 and
574         it is no need to be copyable.  
575
576         * editing/DeleteButtonController.h:
577
578 2009-11-09  Martin Robinson  <martin.james.robinson@gmail.com>
579
580         Reviewed by Jan Alonzo.
581
582         [GTK] Expose Page::tabKeyCyclesThroughElements in the API
583         https://bugs.webkit.org/show_bug.cgi?id=30482
584
585         Expose Page::tabKeyCyclesThroughElements as a property of
586         WebKitWebView.
587
588         No new tests; fast/events/keypress-insert-tab.html is no longer skipped.
589
590         * platform/gtk/KeyEventGtk.cpp: Correct m_text for tab key presses.
591         (WebCore::singleCharacterString):
592
593 2009-11-09  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
594
595         Reviewed by Xan Lopez.
596
597         https://bugs.webkit.org/show_bug.cgi?id=25415
598         [GTK][ATK] Please implement support for get_text_at_offset
599
600         Fix a crasher that occurred with text which included newline
601         chars in the markup.
602
603         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
604         (convertUniCharToUTF8):
605
606 2009-11-05  Jakub Wieczorek  <faw217@gmail.com>
607
608         Reviewed by Holger Freyther.
609
610         [Qt] The XML tokenizer reports a parse error twice if it occurs before the document element is found.
611         https://bugs.webkit.org/show_bug.cgi?id=31144
612
613         XMLTokenizer::doEnd() uses an additional logic to report a parse failure in
614         documents that end prematurely but are not considered invalid by QXmlStream.
615         This is to stay compatible with the libxml2 implementation.
616         However, that code path would be also hit in situations when it should not,
617         i.e. the error would have already been caught and handled. As a result, the
618         same error would be reported twice.
619
620         No new tests, because the problem is already covered by
621         fast/parser/xml-declaration-missing-ending-mark.html.
622
623         * dom/XMLTokenizerQt.cpp:
624         (WebCore::XMLTokenizer::doEnd):
625
626 2009-11-08  Keishi Hattori  <casey.hattori@gmail.com>
627
628         Reviewed by Pavel Feldman.
629
630         Web Inspector: Inspector should support copy() in the command line
631         https://bugs.webkit.org/show_bug.cgi?id=31238
632
633         * inspector/InspectorBackend.cpp:
634         (WebCore::InspectorBackend::copyText): Added.
635         * inspector/InspectorBackend.h: Added copyText
636         * inspector/InspectorBackend.idl: Added copyText
637         * inspector/front-end/InjectedScript.js:
638         (InjectedScript._copy): Added.
639         (InjectedScript._ensureCommandLineAPIInstalled):
640
641 2009-11-08  Drew Wilson  <atwilson@chromium.org>
642
643         Reviewed by Dimitri Glazkov.
644
645         V8 WorkerContextExecutionProxy does not handle SharedWorkers
646         https://bugs.webkit.org/show_bug.cgi?id=31226
647
648         Now checks to see what type of context is active and creates the
649         appropriate wrapper (DEDICATEDWORKERCONTEXT vs SHAREDWORKERCONTEXT).
650
651         Added support for converting to SharedWorkers and SharedWorkerContexts.
652
653         Test: Existing layout tests cover this case (start passing in Chrome).
654
655         * bindings/v8/WorkerContextExecutionProxy.cpp:
656         (WebCore::WorkerContextExecutionProxy::initContextIfNeeded):
657         Now generates the right type of DOMWrapper for SharedWorkerContexts.
658         (WebCore::WorkerContextExecutionProxy::convertToV8Object):
659         Added support for SHAREDWORKERCONTEXT.
660         (WebCore::WorkerContextExecutionProxy::convertEventTargetToV8Object):
661         Added support for SharedWorker and SharedWorkerContext.
662
663 2009-11-08  Johnny Ding  <johnnyding.webkit@gmail.com>
664
665         Reviewed by Dimitri Glazkov.
666
667         https://bugs.webkit.org/show_bug.cgi?id=31224
668         [V8] Return StyleSheet object instead of HTMLStyleElement w/document.styleSheets named property getter.
669
670         Test: fast/dom/StyleSheet/get-stylesheet-byname.html
671
672         * bindings/v8/custom/V8StyleSheetListCustom.cpp:
673         (WebCore::NAMED_PROPERTY_GETTER):
674
675 2009-11-08  Pavel Feldman  <pfeldman@chromium.org>
676
677         Reviewed by Timothy Hatcher.
678
679         Web Inspector: "Search again" on scripts panel switches
680         to the script this search started with.
681
682         https://bugs.webkit.org/show_bug.cgi?id=31243
683
684         * inspector/front-end/Panel.js:
685         (WebInspector.Panel.prototype.jumpToNextSearchResult):
686
687 2009-11-08  Kent Tamura  <tkent@chromium.org>
688
689         Reviewed by Darin Adler.
690
691         Simplify Icon interface.
692         https://bugs.webkit.org/show_bug.cgi?id=31154
693
694         - Remove Icon::createIconForFile().  createIconForFiles() covers
695           createIconForFile()'s role.
696         - Remove FileChooser::chooseIcon()
697         - Change the parameter types of FileChooser constructor and the
698           factory method, String -> const Vector<String>&, in order to
699           support initialization with multiple files.
700         - Remove the icon loading code in IconChromiumWin.cpp, which
701           doesn't work because of the sandbox.
702
703         No tests because it's just a refactoring.
704
705         * platform/FileChooser.cpp:
706         (WebCore::FileChooser::FileChooser):
707         (WebCore::FileChooser::create):
708         (WebCore::FileChooser::chooseFile):
709         (WebCore::FileChooser::chooseFiles):
710         * platform/FileChooser.h:
711         * platform/graphics/Icon.h:
712         * platform/graphics/chromium/IconChromiumLinux.cpp:
713         * platform/graphics/chromium/IconChromiumMac.cpp:
714         * platform/graphics/chromium/IconChromiumWin.cpp:
715         (WebCore::Icon::createIconForFiles):
716         * platform/graphics/gtk/IconGtk.cpp:
717         (WebCore::Icon::createIconForFiles):
718         * platform/graphics/haiku/IconHaiku.cpp:
719         * platform/graphics/mac/IconMac.mm:
720         (WebCore::Icon::createIconForFiles):
721         * platform/graphics/qt/IconQt.cpp:
722         (WebCore::Icon::createIconForFiles):
723         * platform/graphics/win/IconWin.cpp:
724         (WebCore::Icon::createIconForFiles):
725         * platform/graphics/wx/IconWx.cpp:
726         * rendering/RenderFileUploadControl.cpp:
727         (WebCore::RenderFileUploadControl::RenderFileUploadControl):
728
729 2009-11-08  Daniel Bates  <dbates@webkit.org>
730
731         Reviewed by Adam Barth.
732
733         https://bugs.webkit.org/show_bug.cgi?id=31098
734
735         Allows same-origin plugin-based content to load.
736
737         Test: http/tests/security/xssAuditor/object-src-inject.html
738
739         * page/XSSAuditor.cpp:
740         (WebCore::XSSAuditor::canLoadExternalScriptFromSrc): Modified to call XSSAuditor::isSameOriginResource.
741         (WebCore::XSSAuditor::canLoadObject): Ditto.
742         (WebCore::XSSAuditor::canSetBaseElementURL): Ditto. 
743         (WebCore::XSSAuditor::isSameOriginResource): Added.
744         * page/XSSAuditor.h:
745
746 2009-11-08  David Levin  <levin@chromium.org>
747
748         Reviewed by NOBODY (chromium build fix).
749
750         * platform/network/HTTPParsers.cpp:
751         (WebCore::parseDate): Changed this to not
752         use a date parser that needs ExecState passed.
753         
754 2009-11-08  David Levin  <levin@chromium.org>
755
756         Unreviewed build fix for chromium.
757
758         * platform/graphics/skia/GraphicsContextSkia.cpp:
759         (WebCore::GraphicsContext::fillPath):
760         (WebCore::GraphicsContext::fillRect):
761         (WebCore::GraphicsContext::strokePath):
762         (WebCore::GraphicsContext::strokeRect):
763
764 2009-11-08  David Levin  <levin@chromium.org>
765
766         Unreviewed build fix for chromium.
767
768         Build fix for https://bugs.webkit.org/show_bug.cgi?id=31219
769         Clean up GraphicsContext's current concept of ColorSpace
770
771         * platform/graphics/skia/GraphicsContextSkia.cpp:
772         (WebCore::GraphicsContext::fillPath):
773         (WebCore::GraphicsContext::fillRect):
774         (WebCore::GraphicsContext::strokePath):
775         (WebCore::GraphicsContext::strokeRect):
776
777 2009-11-08  Pavel Feldman  <pfeldman@chromium.org>
778
779         Reviewed by Timothy Hatcher.
780
781         Web Inspector: [REGRESSION] committing style edit
782         clears elements panel selection.
783
784         https://bugs.webkit.org/show_bug.cgi?id=31242
785
786         * inspector/front-end/ElementsTreeOutline.js:
787         (WebInspector.ElementsTreeOutline.prototype.update):
788         * inspector/front-end/StylesSidebarPane.js:
789         (WebInspector.StylePropertyTreeElement.prototype.):
790         (WebInspector.StylePropertyTreeElement.prototype):
791
792 2009-11-08  Janne Koskinen  <janne.p.koskinen@digia.com>
793
794         Reviewed by Holger Freyther.
795
796         ResourceRequest to be class instead of struct
797         https://bugs.webkit.org/show_bug.cgi?id=30670
798
799         Started as a compilation fix for Symbian where the compiler makes a distinction between
800         class and struct in function argument signatures.
801         Changed all forward declarations of ResourceRequest to have class in the forward
802         declaration instead of struct and changed the definition of ResourceRequest to be class
803         and added access qualifiers where missing. Additionally two references of friend
804         struct ResourceRequestBase changed to class instead.
805
806         * history/HistoryItem.h:
807         * inspector/InspectorController.h:
808         * inspector/InspectorResource.h:
809         * loader/DocumentThreadableLoader.h:
810         * loader/FrameLoaderClient.h:
811         * loader/MainResourceLoader.h:
812         * loader/ResourceLoadNotifier.h:
813         * loader/SubresourceLoader.h:
814         * loader/SubresourceLoaderClient.h:
815         * loader/ThreadableLoader.h:
816         * loader/WorkerThreadableLoader.h:
817         * loader/appcache/ApplicationCache.h:
818         * loader/appcache/ApplicationCacheHost.h:
819         * platform/CrossThreadCopier.h:
820         * platform/network/ResourceHandle.h:
821         * platform/network/ResourceHandleClient.h:
822         * platform/network/ResourceRequestBase.h:
823         * platform/network/cf/ResourceRequest.h:
824         * platform/network/cf/ResourceRequestCFNet.h:
825         * platform/network/chromium/ResourceRequest.h:
826         * platform/network/curl/ResourceRequest.h:
827         * platform/network/qt/ResourceRequest.h:
828         * platform/network/soup/ResourceRequest.h:
829         * xml/XMLHttpRequest.h:
830
831 2009-11-08  Dan Bernstein  <mitz@apple.com>
832
833         Reviewed by Simon Fraser.
834
835         <rdar://problem/7363434> Crash inside RenderObject::localToAbsolute
836         below FrameView::layout
837         https://bugs.webkit.org/show_bug.cgi?id=31093
838
839         Test: fast/block/positioning/relative-positioned-inline-container.html
840
841         In <http://trac.webkit.org/changeset/19148>, setStaticY() was changed
842         to mark the object for layout, doing so without marking its ancestors.
843         However, RenderBlock::skipLeadingWhitespace and
844         RenderBlock::skipTrailingWhitespace() call setStaticY() on a relative-
845         positioned inline container, causing it to be marked for layout without
846         ever going back to give it layout, and thus layout could end with a
847         dirty object still in the tree, leading to all sorts of badness.
848
849         The fix is to revert setStaticY() to not marking the object dirty, and
850         instead do it in the call sites that require it, which are in
851         RenderBlock and RenderFlexibleBox.
852
853         * rendering/RenderBlock.cpp:
854         (WebCore::RenderBlock::adjustPositionedBlock):
855         * rendering/RenderFlexibleBox.cpp:
856         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
857         (WebCore::RenderFlexibleBox::layoutVerticalBox):
858         * rendering/RenderLayer.cpp:
859         * rendering/RenderLayer.h:
860         (WebCore::RenderLayer::setStaticY):
861
862 2009-11-07  Daniel Bates  <dbates@webkit.org>
863
864         Reviewed by Darin Adler.
865
866         https://bugs.webkit.org/show_bug.cgi?id=20780
867         
868         Fixes an issue where the onchange event handler is not fired when the 
869         input field is autocompleted.
870         
871         We cannot test this using DRT since DRT cannot emulate autocompletion.
872         So, a manual-test is included.
873
874         Tests: manual-tests/autocompletion-fire-onchange.html
875
876         * manual-tests/autocompletion-fire-onchange.html: Added.
877         * rendering/RenderTextControl.cpp:
878         (WebCore::RenderTextControl::setInnerTextValue):
879
880 2009-11-07  Benjamin Otte  <otte@gnome.org>
881
882         Reviewed by Holger Freyther.
883
884         Mark redrawn areas on image surfaces as dirty.
885
886         This is required to conform to the Cairo API, but is currently only
887         used by debugging tools like cairo-trace.
888
889         * platform/graphics/cairo/ImageBufferCairo.cpp:
890         (WebCore::ImageBuffer::platformTransformColorSpace):
891         (WebCore::putImageData):
892
893 2009-11-07  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
894
895         Reviewed by Xan Lopez.
896
897         https://bugs.webkit.org/show_bug.cgi?id=30878
898         [Gtk] atk_text_get_text() fails in entries when the end_offset is -1
899
900         If the end_offset is -1, use the String length as the end_offset.
901
902         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
903         (webkit_accessible_text_get_text):
904
905 2009-11-06  Beth Dakin  <bdakin@apple.com>
906
907         Reviewed by Adele Peterson.
908
909         Fix for https://bugs.webkit.org/show_bug.cgi?id=31219 Clean up 
910         GraphicsContext's current concept of ColorSpace
911
912         ColorSpace is now called ColorType. The variables on the state we 
913         appropriately re-named as well. I removed strokeColorSpace() and 
914         fillColorSpace() from GraphicsContext since they were never called. 
915
916         * platform/graphics/GraphicsContext.cpp:
917         (WebCore::GraphicsContext::setStrokeColor):
918         (WebCore::GraphicsContext::setFillColor):
919         (WebCore::GraphicsContext::setStrokePattern):
920         (WebCore::GraphicsContext::setFillPattern):
921         (WebCore::GraphicsContext::setStrokeGradient):
922         (WebCore::GraphicsContext::setFillGradient):
923         * platform/graphics/GraphicsContext.h:
924         (WebCore::):
925         * platform/graphics/GraphicsContextPrivate.h:
926         (WebCore::GraphicsContextState::GraphicsContextState):
927         * platform/graphics/cairo/GraphicsContextCairo.cpp:
928         (WebCore::GraphicsContext::fillPath):
929         (WebCore::GraphicsContext::strokePath):
930         * platform/graphics/cg/GraphicsContextCG.cpp:
931         (WebCore::calculateDrawingMode):
932         (WebCore::GraphicsContext::drawPath):
933         (WebCore::GraphicsContext::fillPath):
934         (WebCore::GraphicsContext::strokePath):
935         (WebCore::GraphicsContext::fillRect):
936         (WebCore::GraphicsContext::strokeRect):
937         * platform/graphics/qt/GraphicsContextQt.cpp:
938         (WebCore::GraphicsContext::fillPath):
939         (WebCore::GraphicsContext::strokePath):
940         (WebCore::GraphicsContext::fillRect):
941         * platform/graphics/wince/GraphicsContextWince.cpp:
942         (WebCore::GraphicsContext::fillPath):
943         (WebCore::GraphicsContext::fillRect):
944
945 2009-11-06  Brian Weinstein  <bweinstein@apple.com>
946
947         Reviewed by Tim Hatcher.
948
949         Fixes <http://webkit.org/b/31177>.
950         Web Inspector: Bind backspace to delete cookies and DOM Storage.
951         
952         Refactor editing code from DOMStorageDataGrid to DataGrid, so other
953         places in the inspector can use editing in DataGrid (added a FIXME for
954         some stuff that needs to be generalized).
955         
956         Also added deleting functionality to DataGrid, and implemented it for
957         Cookies and DOM Storage. The reason this patch is so big is because of
958         the refactoring of editing code, which won't be used yet in a cross-datagrid
959         way, but should be able to.
960         
961         Additionally, moved the callbacks members from DOMStorageDataGrid to
962         DOMStorageItemsView, which allowed us to delete DOMStorageDataGrid, to 
963         make the architecture of DOM Storage look a lot more like the Cookies view.
964         
965         Lastly, added a preventDefault call in ElementsTreeOutline to prevent the 
966         inspector from beeping at you when you delete an element.
967
968         * WebCore.gypi: Removed DOMStorageDataGrid.
969         * WebCore.vcproj/WebCore.vcproj: Removed DOMStorageDataGrid.
970         * inspector/front-end/CookieItemsView.js:
971         (WebInspector.CookieItemsView.prototype.dataGridForCookies):
972         (WebInspector.CookieItemsView.prototype._deleteButtonClicked):
973         (WebInspector.CookieItemsView.prototype._deleteCookieCallback):
974         * inspector/front-end/DOMStorageDataGrid.js: Removed.
975         * inspector/front-end/DOMStorageItemsView.js:
976         (WebInspector.DOMStorageItemsView.prototype._dataGridForDOMStorageEntries):
977         (WebInspector.DOMStorageItemsView.prototype._deleteButtonClicked):
978         (WebInspector.DOMStorageItemsView.prototype._refreshButtonClicked):
979         (WebInspector.DOMStorageItemsView.prototype._editingCallback):
980         (WebInspector.DOMStorageItemsView.prototype.deleteSelectedRow):
981         (WebInspector.DOMStorageItemsView.prototype._deleteCallback):
982         * inspector/front-end/DataGrid.js:
983         (WebInspector.DataGrid):
984         (WebInspector.DataGrid.prototype._ondblclick): Moved from DOMStorageDataGrid to DataGrid + Refactoring.
985         (WebInspector.DataGrid.prototype._startEditingColumnOfDataGridNode): Ditto.
986         (WebInspector.DataGrid.prototype._startEditing): Ditto.
987         (WebInspector.DataGrid.prototype._editingCommitted.moveToNextIfNeeded): Ditto.
988         (WebInspector.DataGrid.prototype._editingCommitted): Ditto.
989         (WebInspector.DataGrid.prototype._editingCancelled): Ditto.
990         (WebInspector.DataGrid.prototype.handleKeyEvent): Added case for delete/backspace.
991         * inspector/front-end/ElementsTreeOutline.js:
992         (WebInspector.ElementsTreeOutline.prototype.handleKeyEvent): Added preventDefault call.
993         * inspector/front-end/WebKit.qrc: Removed DOMStorageDataGrid.
994         * inspector/front-end/inspector.html: Removed DOMStorageDataGrid.
995
996 2009-11-06  Geoffrey Garen  <ggaren@apple.com>
997
998         Qt build fix: added an ExecState parameter.
999
1000         * bridge/qt/qt_runtime.cpp:
1001         (JSC::Bindings::convertValueToQVariant):
1002         (JSC::Bindings::convertQVariantToValue):
1003
1004 2009-11-06  Geoffrey Garen  <ggaren@apple.com>
1005
1006         https://bugs.webkit.org/show_bug.cgi?id=31197
1007         Implemented a timezone cache not based on Mac OS X's notify_check API.
1008
1009         Updated for JavaScriptCore internal API change.
1010
1011         * bridge/qt/qt_runtime.cpp:
1012         (JSC::Bindings::convertValueToQVariant):
1013         (JSC::Bindings::convertQVariantToValue): Updated for namespace change.
1014
1015         * platform/network/HTTPParsers.cpp:
1016         (WebCore::parseDate): Pass 0 for ExecState, since we don't have one.
1017         (This function probably shouldn't be using a JavaScript date parser
1018         to begin with, but oh well.)
1019
1020 2009-11-06  Anantanarayanan G Iyengar  <ananta@chromium.org>
1021
1022         Reviewed by Adam Barth.
1023
1024         The associated webkit bug is https://bugs.webkit.org/show_bug.cgi?id=31067,
1025         which affects Chromium only.
1026         
1027         Changes to V8HTMLDocumentCustom.cpp are as below:-
1028         1. The HTMLDocumentOpen function would cause a crash in Chromium if
1029            there was no calling javascript context. We now check for this case
1030            and pass in NULL to the HTMLDocument::open function which can handle
1031            a NULL document parameter.
1032         2. The other functions like HTMLDocumentWrite, HTMLDocumentWriteln, etc
1033            had ASSERTS for a NULL caller frame, which was bogus as it would crash
1034            anyway. We now check for this case and return a failure.
1035            
1036         Changes to V8DOMWindowCustom.cpp are as below:-
1037         1. Instead of failing the window.open call made by NPAPI for lack of a
1038            calling javascript context, we now use the entered context as the calling
1039            context.
1040
1041         Tests: plugins/document-open.html
1042                plugins/window-open.html
1043
1044         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1045         (WebCore::CALLBACK_FUNC_DECL):
1046         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
1047         (WebCore::CALLBACK_FUNC_DECL):
1048
1049 2009-11-06  Steve Block  <steveblock@google.com>
1050
1051         Reviewed by Eric Seidel.
1052
1053         Geolocation error code UNKNOWN_ERROR is deprecated.
1054         https://bugs.webkit.org/show_bug.cgi?id=31184
1055
1056         Remove this error code from PositionError, both for use from C++ code and from the JS object.
1057
1058         Updated fast/dom/Geolocation/error.html to test this.
1059
1060         * page/PositionError.h: Modified.
1061         (WebCore::PositionError::): Remove ErrorCode::UNKNOWN_ERROR.
1062         * page/PositionError.idl: Modified. Remove UNKNOWN_ERROR constant.
1063         * page/Geolocation.cpp: Modified.
1064         (WebCore::Geolocation::startRequest): Replace UNKNOWN_ERROR with POSITION_UNAVAILABLE.
1065         * platform/gtk/GeolocationServiceGtk.cpp: Modified.
1066         (WebCore::GeolocationServiceGtk::startUpdating): Replace UNKNOWN_ERROR with POSITION_UNAVAILABLE.
1067
1068 2009-11-06  Dirk Schulze  <krit@webkit.org>
1069
1070         Reviewed by Nikolas Zimmermann.
1071
1072         feMorphology filter is not implemented
1073         [https://bugs.webkit.org/show_bug.cgi?id=5863]
1074
1075         The Implementation of feMorphology.
1076         
1077         Test: We have allready a test for feMorphology
1078               svg/W3C-SVG-1.1/filters-morph-01-f.svg
1079
1080         * svg/graphics/filters/SVGFEMorphology.cpp:
1081         (WebCore::FEMorphology::apply):
1082
1083 2009-11-06  Steve Block  <steveblock@google.com>
1084
1085         Reviewed by Eric Seidel.
1086
1087         V8DOMWindowCustom.cpp is missing WEB_SOCKETS guard on include.
1088         https://bugs.webkit.org/show_bug.cgi?id=31209
1089
1090         Build fix only. No new tests possible.
1091
1092         * bindings/v8/custom/V8DOMWindowCustom.cpp: Modified. Added WEB_SOCKETS guard on inclue of WebSockets.h.
1093
1094 2009-11-06  Drew Wilson  <atwilson@chromium.org>
1095
1096         Reviewed by David Levin.
1097
1098         V8 bindings do not support SharedWorkers as event targets
1099         https://bugs.webkit.org/show_bug.cgi?id=31199
1100
1101         No new tests because existing layout tests suffice (they currently
1102         crash on Chromium)
1103
1104         * bindings/v8/V8DOMWrapper.cpp:
1105         (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
1106         Added clause to create a DOM wrapper for SharedWorkers.
1107
1108 2009-11-06  Anton Muhin  <antonm@chromium.org>
1109
1110         Reviewed by Adam Barth.
1111
1112         Do not unnecessarly synchronzie in weak reference callbacks.
1113         https://bugs.webkit.org/show_bug.cgi?id=31191
1114
1115         * bindings/v8/DOMData.h:
1116         (WebCore::DOMData::handleWeakObject):
1117
1118 2009-11-06  Alexander Pavlov  <apavlov@chromium.org>
1119
1120         Reviewed by Pavel Feldman.
1121
1122         Fix resource content search.
1123         https://bugs.webkit.org/show_bug.cgi?id=31202
1124
1125         * inspector/front-end/AbstractTimelinePanel.js:
1126         (WebInspector.AbstractTimelinePanel.prototype.refresh):
1127         (WebInspector.AbstractTimelinePanel.prototype.removeItem):
1128         * inspector/front-end/TimelinePanel.js:
1129         (WebInspector.TimelineGraph.prototype.refresh):
1130
1131 2009-11-05  Yuta Kitamura  <yutak@chromium.org>
1132
1133         Reviewed by Eric Seidel.
1134
1135         Fix ASSERT(currentStyle = renderStyle()).
1136         https://bugs.webkit.org/show_bug.cgi?id=31152
1137
1138         * dom/Element.cpp:
1139         (WebCore::Element::pseudoStyleCacheIsInvalid): We should have used "==" instead of "=".
1140
1141 2009-11-05  Alpha Lam  <hclam@chromium.org>
1142
1143         Revert 50562 because it broke Chromium. Not reviewed since this is a build fix and revert.
1144
1145         * bindings/v8/V8GCController.cpp:
1146         (WebCore::V8GCController::gcEpilogue):
1147         * bindings/v8/V8GCController.h:
1148         * bindings/v8/V8Proxy.cpp:
1149         (WebCore::V8Proxy::evaluate):
1150         (WebCore::V8Proxy::runScript):
1151         (WebCore::V8Proxy::callFunction):
1152
1153 2009-11-05  Adam Barth  <abarth@webkit.org>
1154
1155         Reviewed by Sam Weinig.
1156
1157         Cross-domain access to stylesheet text should not be allowed
1158         https://bugs.webkit.org/show_bug.cgi?id=20527
1159
1160         Check whether whether the current document can read the cssRules from
1161         the style sheet.  Firefox throws a security error here, but we return
1162         null instead because that's what we usually do in these cases.
1163
1164         Test: http/tests/security/cannot-read-cssrules-redirect.html
1165               http/tests/security/cannot-read-cssrules.html
1166
1167         * css/CSSStyleSheet.cpp:
1168         (WebCore::CSSStyleSheet::cssRules):
1169
1170 2009-11-05  Steve Block  <steveblock@google.com>
1171
1172         Reviewed by Eric Seidel.
1173
1174         If the Geolocation service fails to start, invoke the error callback asynchronously.
1175         https://bugs.webkit.org/show_bug.cgi?id=28276
1176
1177         All Geolocation callbacks must be invoked asynchronously.
1178         See http://www.w3.org/TR/geolocation-API/#geolocation_interface
1179
1180         No new tests possible with current LayoutTestController.
1181
1182         * page/Geolocation.cpp:
1183         (WebCore::Geolocation::getCurrentPosition): Modified. Asserts that startRequest returned a notifier.
1184         (WebCore::Geolocation::watchPosition): Modified. Asserts that startRequest returned a notifier.
1185         (WebCore::Geolocation::startRequest): Modified. If the Geolocation service fails to start, set a fatal error on the notifier.
1186
1187 2009-11-05  Chris Jerdonek  <chris.jerdonek@gmail.com>
1188
1189         Reviewed by Eric Seidel.
1190
1191         Removed the "this is part of the KDE project" comments from 
1192         all *.h, *.cpp, *.idl, and *.pm files.
1193         
1194         https://bugs.webkit.org/show_bug.cgi?id=31167
1195         
1196         The maintenance and architecture page in the project wiki lists
1197         this as a task.
1198         
1199         This change includes no changes or additions to test cases 
1200         since the change affects only comments.
1201
1202         * bindings/scripts/CodeGeneratorV8.pm:
1203         * bindings/scripts/IDLParser.pm:
1204         * bindings/scripts/IDLStructure.pm:
1205         * css/CSSInheritedValue.cpp:
1206         * css/CSSInitialValue.cpp:
1207         * css/CSSMediaRule.cpp:
1208         * css/CSSNamespace.h:
1209         * css/CSSProperty.cpp:
1210         * css/CSSProperty.h:
1211         * css/CSSRuleList.cpp:
1212         * css/CSSRuleList.h:
1213         * css/CSSSelector.h:
1214         * css/CSSValueList.cpp:
1215         * css/FontValue.cpp:
1216         * css/MediaFeatureNames.cpp:
1217         * css/MediaFeatureNames.h:
1218         * css/Pair.h:
1219         * css/SVGCSSStyleSelector.cpp:
1220         * css/ShadowValue.cpp:
1221         * css/StyleSheet.cpp:
1222         * css/StyleSheetList.cpp:
1223         * css/maketokenizer:
1224         * dom/BeforeUnloadEvent.cpp:
1225         * dom/BeforeUnloadEvent.h:
1226         * dom/CSSMappedAttributeDeclaration.cpp:
1227         * dom/EventNames.cpp:
1228         * dom/EventTarget.cpp:
1229         * dom/MappedAttributeEntry.h:
1230         * dom/MouseRelatedEvent.h:
1231         * dom/RangeException.h:
1232         * dom/StyleElement.h:
1233         * dom/Tokenizer.h:
1234         * html/HTMLHeadElement.h:
1235         * html/HTMLHeadingElement.cpp:
1236         * html/HTMLHeadingElement.h:
1237         * html/HTMLHtmlElement.h:
1238         * html/HTMLImageLoader.h:
1239         * html/HTMLMetaElement.h:
1240         * html/HTMLModElement.cpp:
1241         * html/HTMLModElement.h:
1242         * html/HTMLOptionsCollection.cpp:
1243         * html/HTMLPlugInElement.cpp:
1244         * html/HTMLPreElement.cpp:
1245         * html/HTMLPreElement.h:
1246         * html/HTMLTableCellElement.cpp:
1247         * html/HTMLTableCellElement.h:
1248         * html/HTMLTableColElement.cpp:
1249         * html/HTMLTableColElement.h:
1250         * html/HTMLTablePartElement.cpp:
1251         * html/HTMLTablePartElement.h:
1252         * html/HTMLTitleElement.h:
1253         * page/MouseEventWithHitTestResults.h:
1254         * platform/StaticConstructors.h:
1255         * platform/text/AtomicStringImpl.h:
1256         * platform/text/qt/TextBreakIteratorQt.cpp:
1257         * rendering/AutoTableLayout.h:
1258         * rendering/CounterNode.cpp:
1259         * rendering/EllipsisBox.cpp:
1260         * rendering/EllipsisBox.h:
1261         * rendering/FixedTableLayout.cpp:
1262         * rendering/FixedTableLayout.h:
1263         * rendering/HitTestRequest.h:
1264         * rendering/HitTestResult.h:
1265         * rendering/InlineRunBox.h:
1266         * rendering/PointerEventsHitRules.cpp:
1267         * rendering/PointerEventsHitRules.h:
1268         * rendering/RenderBR.cpp:
1269         * rendering/RenderBR.h:
1270         * rendering/RenderButton.cpp:
1271         * rendering/RenderButton.h:
1272         * rendering/RenderFieldset.cpp:
1273         * rendering/RenderFrameSet.cpp:
1274         * rendering/RenderListItem.cpp:
1275         * rendering/RenderTableRow.cpp:
1276         * rendering/RenderView.h:
1277         * rendering/RootInlineBox.h:
1278         * rendering/SVGInlineTextBox.cpp:
1279         * rendering/SVGInlineTextBox.h:
1280         * rendering/TableLayout.h:
1281         * rendering/break_lines.h:
1282         * rendering/style/SVGRenderStyle.cpp:
1283         * rendering/style/SVGRenderStyle.h:
1284         * rendering/style/SVGRenderStyleDefs.cpp:
1285         * rendering/style/SVGRenderStyleDefs.h:
1286         * svg/GradientAttributes.h:
1287         * svg/LinearGradientAttributes.h:
1288         * svg/PatternAttributes.h:
1289         * svg/RadialGradientAttributes.h:
1290         * svg/SVGAElement.cpp:
1291         * svg/SVGAngle.idl:
1292         * svg/SVGAnimateColorElement.cpp:
1293         * svg/SVGAnimateColorElement.h:
1294         * svg/SVGAnimateElement.cpp:
1295         * svg/SVGAnimateElement.h:
1296         * svg/SVGAnimateTransformElement.h:
1297         * svg/SVGAnimatedPathData.cpp:
1298         * svg/SVGAnimatedPathData.h:
1299         * svg/SVGAnimatedPoints.cpp:
1300         * svg/SVGAnimatedPoints.h:
1301         * svg/SVGAnimationElement.cpp:
1302         * svg/SVGCircleElement.cpp:
1303         * svg/SVGClipPathElement.cpp:
1304         * svg/SVGColor.cpp:
1305         * svg/SVGColor.idl:
1306         * svg/SVGComponentTransferFunctionElement.cpp:
1307         * svg/SVGComponentTransferFunctionElement.h:
1308         * svg/SVGCursorElement.cpp:
1309         * svg/SVGDefsElement.cpp:
1310         * svg/SVGDescElement.cpp:
1311         * svg/SVGDescElement.h:
1312         * svg/SVGDocument.idl:
1313         * svg/SVGElement.idl:
1314         * svg/SVGElementInstanceList.cpp:
1315         * svg/SVGElementInstanceList.h:
1316         * svg/SVGEllipseElement.cpp:
1317         * svg/SVGExternalResourcesRequired.cpp:
1318         * svg/SVGFEBlendElement.cpp:
1319         * svg/SVGFEBlendElement.h:
1320         * svg/SVGFEColorMatrixElement.cpp:
1321         * svg/SVGFEColorMatrixElement.h:
1322         * svg/SVGFEComponentTransferElement.cpp:
1323         * svg/SVGFEComponentTransferElement.h:
1324         * svg/SVGFECompositeElement.cpp:
1325         * svg/SVGFECompositeElement.h:
1326         * svg/SVGFEFloodElement.cpp:
1327         * svg/SVGFEFloodElement.h:
1328         * svg/SVGFEFuncAElement.cpp:
1329         * svg/SVGFEFuncAElement.h:
1330         * svg/SVGFEFuncBElement.cpp:
1331         * svg/SVGFEFuncBElement.h:
1332         * svg/SVGFEFuncGElement.cpp:
1333         * svg/SVGFEFuncGElement.h:
1334         * svg/SVGFEFuncRElement.cpp:
1335         * svg/SVGFEFuncRElement.h:
1336         * svg/SVGFEGaussianBlurElement.cpp:
1337         * svg/SVGFEGaussianBlurElement.h:
1338         * svg/SVGFEImageElement.cpp:
1339         * svg/SVGFEMergeElement.cpp:
1340         * svg/SVGFEMergeElement.h:
1341         * svg/SVGFEMergeNodeElement.cpp:
1342         * svg/SVGFEOffsetElement.cpp:
1343         * svg/SVGFEOffsetElement.h:
1344         * svg/SVGFETileElement.cpp:
1345         * svg/SVGFETileElement.h:
1346         * svg/SVGFETurbulenceElement.cpp:
1347         * svg/SVGFETurbulenceElement.h:
1348         * svg/SVGFilterElement.cpp:
1349         * svg/SVGGElement.cpp:
1350         * svg/SVGGradientElement.cpp:
1351         * svg/SVGHKernElement.idl:
1352         * svg/SVGLangSpace.cpp:
1353         * svg/SVGLangSpace.h:
1354         * svg/SVGLength.cpp:
1355         * svg/SVGLength.h:
1356         * svg/SVGLength.idl:
1357         * svg/SVGLengthList.cpp:
1358         * svg/SVGLengthList.h:
1359         * svg/SVGLineElement.cpp:
1360         * svg/SVGLinearGradientElement.h:
1361         * svg/SVGList.h:
1362         * svg/SVGListTraits.h:
1363         * svg/SVGLocatable.h:
1364         * svg/SVGMaskElement.cpp:
1365         * svg/SVGMatrix.idl:
1366         * svg/SVGMetadataElement.cpp:
1367         * svg/SVGMetadataElement.h:
1368         * svg/SVGMetadataElement.idl:
1369         * svg/SVGNumber.idl:
1370         * svg/SVGNumberList.cpp:
1371         * svg/SVGNumberList.h:
1372         * svg/SVGPaint.cpp:
1373         * svg/SVGPathElement.cpp:
1374         * svg/SVGPathSeg.h:
1375         * svg/SVGPathSegArc.cpp:
1376         * svg/SVGPathSegArc.h:
1377         * svg/SVGPathSegClosePath.cpp:
1378         * svg/SVGPathSegClosePath.h:
1379         * svg/SVGPathSegCurvetoCubic.cpp:
1380         * svg/SVGPathSegCurvetoCubic.h:
1381         * svg/SVGPathSegCurvetoCubicSmooth.cpp:
1382         * svg/SVGPathSegCurvetoCubicSmooth.h:
1383         * svg/SVGPathSegCurvetoQuadratic.cpp:
1384         * svg/SVGPathSegCurvetoQuadratic.h:
1385         * svg/SVGPathSegCurvetoQuadraticSmooth.cpp:
1386         * svg/SVGPathSegCurvetoQuadraticSmooth.h:
1387         * svg/SVGPathSegLineto.cpp:
1388         * svg/SVGPathSegLineto.h:
1389         * svg/SVGPathSegLinetoHorizontal.cpp:
1390         * svg/SVGPathSegLinetoHorizontal.h:
1391         * svg/SVGPathSegLinetoVertical.cpp:
1392         * svg/SVGPathSegLinetoVertical.h:
1393         * svg/SVGPathSegMoveto.cpp:
1394         * svg/SVGPathSegMoveto.h:
1395         * svg/SVGPatternElement.cpp:
1396         * svg/SVGPoint.idl:
1397         * svg/SVGPointList.cpp:
1398         * svg/SVGPointList.h:
1399         * svg/SVGPolyElement.cpp:
1400         * svg/SVGPolygonElement.cpp:
1401         * svg/SVGPolygonElement.h:
1402         * svg/SVGPolylineElement.cpp:
1403         * svg/SVGPolylineElement.h:
1404         * svg/SVGPreserveAspectRatio.cpp:
1405         * svg/SVGPreserveAspectRatio.h:
1406         * svg/SVGRadialGradientElement.h:
1407         * svg/SVGRect.idl:
1408         * svg/SVGRectElement.cpp:
1409         * svg/SVGRenderingIntent.h:
1410         * svg/SVGSVGElement.idl:
1411         * svg/SVGScriptElement.cpp:
1412         * svg/SVGSetElement.cpp:
1413         * svg/SVGSetElement.h:
1414         * svg/SVGStopElement.cpp:
1415         * svg/SVGStringList.cpp:
1416         * svg/SVGStringList.h:
1417         * svg/SVGStylable.cpp:
1418         * svg/SVGStylable.h:
1419         * svg/SVGStyleElement.cpp:
1420         * svg/SVGStyleElement.h:
1421         * svg/SVGStyledElement.h:
1422         * svg/SVGStyledLocatableElement.cpp:
1423         * svg/SVGStyledLocatableElement.h:
1424         * svg/SVGStyledTransformableElement.cpp:
1425         * svg/SVGStyledTransformableElement.h:
1426         * svg/SVGSwitchElement.cpp:
1427         * svg/SVGSymbolElement.cpp:
1428         * svg/SVGTRefElement.cpp:
1429         * svg/SVGTSpanElement.cpp:
1430         * svg/SVGTSpanElement.h:
1431         * svg/SVGTests.h:
1432         * svg/SVGTextElement.cpp:
1433         * svg/SVGTextElement.h:
1434         * svg/SVGTextPathElement.cpp:
1435         * svg/SVGTextPositioningElement.cpp:
1436         * svg/SVGTextPositioningElement.h:
1437         * svg/SVGTitleElement.cpp:
1438         * svg/SVGTitleElement.h:
1439         * svg/SVGTransform.cpp:
1440         * svg/SVGTransform.h:
1441         * svg/SVGTransform.idl:
1442         * svg/SVGTransformList.cpp:
1443         * svg/SVGTransformList.h:
1444         * svg/SVGTransformable.h:
1445         * svg/SVGURIReference.h:
1446         * svg/SVGUnitTypes.h:
1447         * svg/SVGUseElement.cpp:
1448         * svg/SVGViewElement.cpp:
1449         * svg/SVGZoomAndPan.cpp:
1450         * svg/SVGZoomAndPan.h:
1451         * svg/SVGZoomEvent.cpp:
1452
1453 2009-11-05  Jeremy Orlow  <jorlow@chromium.org>
1454
1455         Reviewed by Dimitri Glazkov.
1456
1457         REGRESSION Clean up security origin usage in DOM Storage.
1458         https://bugs.webkit.org/show_bug.cgi?id=31188
1459
1460         Clean up security origin usage in DOM Storage.  This fixes a bug in my
1461         refactoring here: https://bugs.webkit.org/show_bug.cgi?id=31149
1462
1463         Instead of having StorageAreaSync's constructor (which is called in the
1464         constructor for StorageAreaImpl) calling a method on StoargeAreaImpl to get the
1465         database identifier, simply have StorageAreaImpl pass the identifier into
1466         StorageAreaSync.
1467
1468         No test because there's no change in externally observable behavior.
1469
1470         * storage/StorageAreaImpl.cpp:
1471         (WebCore::StorageAreaImpl::StorageAreaImpl):
1472         * storage/StorageAreaImpl.h:
1473         * storage/StorageAreaSync.cpp:
1474         (WebCore::StorageAreaSync::create):
1475         (WebCore::StorageAreaSync::StorageAreaSync):
1476         * storage/StorageAreaSync.h:
1477
1478 2009-11-05  Scott Violet  <sky@google.com>
1479
1480         Reviewed by Dimitri Glazkov.
1481
1482         Need notification of scrolling frame
1483         https://bugs.webkit.org/show_bug.cgi?id=31145
1484
1485         Adds FrameLoaderClient::didChangeScrollOffset that is called when
1486         the frame scrolls. This will be used to know when history state
1487         needs to be updated.
1488
1489         * loader/FrameLoaderClient.h:
1490         (WebCore::FrameLoaderClient::didChangeScrollOffset):
1491         * page/FrameView.cpp:
1492         (WebCore::FrameView::valueChanged):
1493
1494 2009-11-05  Kenneth Russell  <kbr@google.com>
1495
1496         Reviewed by Dimitri Glazkov.
1497
1498         [V8] Update bindings to use new API for external arrays
1499         https://bugs.webkit.org/show_bug.cgi?id=31181
1500
1501         No new tests; covered by existing WebGL tests.
1502
1503         * bindings/v8/V8DOMWrapper.cpp:
1504         (WebCore::V8DOMWrapper::setIndexedPropertiesToExternalArray):
1505         (WebCore::V8DOMWrapper::getTemplate):
1506         (WebCore::V8DOMWrapper::convertToV8Object):
1507         * bindings/v8/V8DOMWrapper.h:
1508         * bindings/v8/custom/V8CanvasArrayCustom.h:
1509         (WebCore::constructCanvasArray):
1510
1511 2009-11-05  Alpha Lam  <hclam@chromium.org>
1512
1513         Not reviewed, Chromium build fix.
1514
1515         50561 introduces a custom method for SVGMatrix, we need to implement
1516         this in V8.
1517
1518         * bindings/v8/custom/V8CustomBinding.h:
1519         Adding definition for V8SVGMatrixMultiply.
1520         * bindings/v8/custom/V8SVGMatrixCustom.cpp:
1521         (WebCore::CALLBACK_FUNC_DECL):
1522         Implement V8SVGMatrixMultiply according to the same method in JSC.
1523
1524 2009-11-05  Jeremy Orlow  <jorlow@chromium.org>
1525
1526         Revert 50569 since it broke QT.  Build fix and just a revert, so no review.
1527
1528         * page/DOMWindow.cpp:
1529         (WebCore::DOMWindow::sessionStorage):
1530         * page/Settings.cpp:
1531         (WebCore::Settings::Settings):
1532         (WebCore::Settings::setSessionStorageEnabled):
1533         * page/Settings.h:
1534         (WebCore::Settings::sessionStorageEnabled):
1535
1536 2009-11-05  Pavel Feldman  <pfeldman@chromium.org>
1537
1538         Reviewed by Timothy Hatcher.
1539
1540         REGRESSION: Web Inspector doesn't show CSS rules properly for iframes
1541
1542         https://bugs.webkit.org/show_bug.cgi?id=30884
1543
1544         Test: inspector/styles-iframe.html
1545
1546         * inspector/front-end/DOMAgent.js:
1547         (WebInspector.DOMNode):
1548         * inspector/front-end/InjectedScript.js:
1549         (InjectedScript.getStyles):
1550         (InjectedScript.getComputedStyle):
1551         (InjectedScript.addStyleSelector):
1552         * inspector/front-end/TestController.js:
1553         (WebInspector.TestController.prototype.notifyDone):
1554         (WebInspector.TestController.prototype.runAfterPendingDispatches):
1555         (WebInspector.evaluateForTestInFrontend.invokeMethod):
1556         (WebInspector.evaluateForTestInFrontend):
1557
1558 2009-11-05  Vitaly Repeshko  <vitalyr@chromium.org>
1559
1560         Reviewed by Geoffrey Garen and Dimitri Glazkov.
1561
1562         Rehashing of EventListenerMap leads to loss of EvenListenerList.
1563         https://bugs.webkit.org/show_bug.cgi?id=31027
1564
1565         Tested by new fast/events/event-listener-map-rehash-crash.html.
1566
1567         EventListenerMap modified to store pointers to listener vectors:
1568         * dom/EventTarget.cpp:
1569         (WebCore::EventTargetData::~EventTargetData):
1570         (WebCore::EventTarget::addEventListener):
1571         (WebCore::EventTarget::removeEventListener):
1572         (WebCore::EventTarget::fireEventListeners):
1573         (WebCore::EventTarget::getEventListeners):
1574         (WebCore::EventTarget::removeAllEventListeners):
1575         * dom/EventTarget.h:
1576
1577         Usages updated after interface changes:
1578         * inspector/InspectorDOMAgent.cpp:
1579         (WebCore::InspectorDOMAgent::getEventListenersForNode):
1580         * svg/SVGUseElement.cpp:
1581         (WebCore::SVGUseElement::transferEventListenersToShadowTree):
1582
1583 2009-11-05  Dan Kegel  <dank@chromium.org>
1584
1585         Reviewed by Dmitri Titov.
1586
1587         Add missing initialization for m_createdByParser.
1588         https://bugs.webkit.org/show_bug.cgi?id=31089
1589
1590         Test: fast/dom/beforeload/pi-before-load.xhtml in Valgrind
1591
1592         * dom/ProcessingInstruction.cpp:
1593         (WebCore::ProcessingInstruction::ProcessingInstruction):
1594
1595 2009-11-04  Jeremy Orlow  <jorlow@chromium.org>
1596
1597         Reviewed by Adam Barth.
1598
1599         DOM Storage runtime flag changes
1600         https://bugs.webkit.org/show_bug.cgi?id=30602
1601
1602         Part 2/2.
1603
1604         Revert my changes to Settings and instead implement DOM Storage enabling via
1605         the methods agreed upon in https://bugs.webkit.org/show_bug.cgi?id=30240
1606
1607         This stuff was (intentionally) never exposed to web pages or DRT, so there's no
1608         LayoutTest visible changes and thus no tests.
1609
1610         * bindings/v8/custom/V8CustomBinding.h:
1611         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1612         (WebCore::ACCESSOR_RUNTIME_ENABLER):
1613         * page/DOMWindow.cpp:
1614         (WebCore::DOMWindow::sessionStorage):
1615         * page/DOMWindow.idl:
1616         * page/Settings.cpp:
1617         (WebCore::Settings::Settings):
1618         * page/Settings.h:
1619         * storage/Storage.cpp:
1620         (WebCore::Storage::setLocalStorageAvailable):
1621         (WebCore::Storage::localStorageAvailable):
1622         (WebCore::Storage::setSessionStorageAvailable):
1623         (WebCore::Storage::sessionStorageAvailable):
1624         * storage/Storage.h:
1625
1626 2009-11-05  Jian Li  <jianli@chromium.org>
1627
1628         Reviewed by Pavel Feldman.
1629
1630         Bug 31108 - [V8] REGRESSION: Pause on exception is broken
1631         https://bugs.webkit.org/show_bug.cgi?id=31108
1632
1633         * bindings/v8/V8AbstractEventListener.cpp:
1634         (WebCore::V8AbstractEventListener::invokeEventHandler):
1635         * bindings/v8/V8Utilities.cpp:
1636         (WebCore::reportException):
1637
1638 2009-11-05  Jian Li  <jianli@chromium.org>
1639
1640         Reviewed by Dmitri Titov.
1641
1642         We should not bubble up events if we drag something to an iframe that
1643         has an invalid source.
1644         https://bugs.webkit.org/show_bug.cgi?id=30469
1645
1646         Test: http/tests/misc/bubble-drag-events.html
1647
1648         * page/EventHandler.cpp:
1649         (WebCore::EventHandler::handleDragAndDropForTarget):
1650         (WebCore::EventHandler::updateDragAndDrop):
1651         (WebCore::EventHandler::cancelDragAndDrop):
1652         (WebCore::EventHandler::performDragAndDrop):
1653         * page/EventHandler.h:
1654         (WebCore::EventHandler::):
1655
1656 2009-11-05  Pavel Feldman  <pfeldman@chromium.org>
1657
1658         Reviewed by Timothy Hatcher.
1659
1660         Web Inspector: speed up Timelines Clear by a factor of thousands.
1661
1662         https://bugs.webkit.org/show_bug.cgi?id=31160
1663
1664         * inspector/front-end/utilities.js:
1665         (Element.prototype.removeChildren):
1666
1667 2009-11-05  Anton Muhin  <antonm@chromium.org>
1668
1669         Reviewed by Adam Barth.
1670
1671         If high memory usage is detected, hint to V8 that it might be due
1672         to external objects retained by V8 objects.
1673         https://bugs.webkit.org/show_bug.cgi?id=31051
1674
1675         * bindings/v8/V8GCController.cpp:
1676         (WebCore::GetMemoryUsageInMB):
1677         (WebCore::V8GCController::gcEpilogue):
1678         (WebCore::V8GCController::checkMemoryUsage):
1679         * bindings/v8/V8GCController.h:
1680         * bindings/v8/V8Proxy.cpp:
1681         (WebCore::V8Proxy::evaluate):
1682         (WebCore::V8Proxy::runScript):
1683         (WebCore::V8Proxy::callFunction):
1684
1685 2009-11-05  Jeff Schiller  <codedread@gmail.com>
1686
1687         Reviewed by Simon Fraser.
1688
1689         Correct order of matrix multiplication for SVGMatrix.
1690         https://bugs.webkit.org/show_bug.cgi?id=16062
1691
1692         Test: svg/dom/SVGMatrix-interface.xhtml
1693
1694         * bindings/js/JSSVGMatrixCustom.cpp:
1695         (WebCore::JSSVGMatrix::multiply):
1696         * svg/SVGMatrix.idl:
1697
1698 2009-11-04  Pavel Feldman  <pfeldman@chromium.org>
1699
1700         Reviewed by Timothy Hatcher.
1701
1702         Web Inspector: Make resource-related records in timeline
1703         actually take some time.
1704
1705         https://bugs.webkit.org/show_bug.cgi?id=31139
1706
1707         * English.lproj/localizedStrings.js:
1708         * inspector/front-end/TimelinePanel.js:
1709         (WebInspector.TimelinePanel):
1710         (WebInspector.TimelinePanel.prototype._formatRecord):
1711         (WebInspector.TimelinePanel.prototype._getRecordDetails):
1712         (WebInspector.TimelinePanel.prototype.reset):
1713
1714 2009-11-04  Jeremy Orlow  <jorlow@chromium.org>
1715
1716         Reviewed by Darin Fisher.
1717
1718         Simplify LocalStorageThread
1719         https://bugs.webkit.org/show_bug.cgi?id=30935
1720
1721         This is a re-submit of 50519.  LocalStorageTask should have never been ref
1722         counted.  I've removed that and switched a PassRefPtr over to a PassOwnPtr.
1723
1724         On LocalStoragethread: Remove reference counting. Get rid of locking. Make some
1725         of the method names a bit more clear. Assert proper thread usage. Join rather
1726         than detaching the thread and doing an ad-hoc form of join. Avoid touching
1727         variables on the background thread when simple to do so.  Also create a generic
1728         scheduleTask function rather than one for each task.
1729
1730         No behavior should have changed.
1731
1732         * storage/LocalStorageTask.h:
1733         * storage/LocalStorageThread.cpp:
1734         (WebCore::LocalStorageThread::create):
1735         (WebCore::LocalStorageThread::LocalStorageThread):
1736         (WebCore::LocalStorageThread::~LocalStorageThread):
1737         (WebCore::LocalStorageThread::start):
1738         (WebCore::LocalStorageThread::threadEntryPointCallback):
1739         (WebCore::LocalStorageThread::threadEntryPoint):
1740         (WebCore::LocalStorageThread::scheduleTask):
1741         (WebCore::LocalStorageThread::terminate):
1742         (WebCore::LocalStorageThread::performTerminate):
1743         * storage/LocalStorageThread.h:
1744         * storage/StorageSyncManager.cpp:
1745         (WebCore::StorageSyncManager::StorageSyncManager):
1746         (WebCore::StorageSyncManager::~StorageSyncManager):
1747         (WebCore::StorageSyncManager::scheduleImport):
1748         (WebCore::StorageSyncManager::scheduleSync):
1749         * storage/StorageSyncManager.h:
1750
1751 2009-11-04  Jeremy Orlow  <jorlow@chromium.org>
1752
1753         Reviewed by Darin Fisher.
1754
1755         Calling databaseIdentifier on LocalStorage's background thread is not safe.
1756         https://bugs.webkit.org/show_bug.cgi?id=31149
1757
1758         Calling SecurityOrigin::databaseIdentifier on LocalStorage's background thread
1759         is not safe.  databaseIdentifier does a bunch of string concatenation which
1760         ref-counts StringImpls in some cases.  This was caught by valgrind thread
1761         sanitizer: http://code.google.com/p/chromium/issues/detail?id=25645
1762
1763         There's no way to test for such racyness, unfortunately.
1764
1765         * storage/StorageAreaSync.cpp:
1766         (WebCore::StorageAreaSync::StorageAreaSync):
1767         (WebCore::StorageAreaSync::performImport):
1768         * storage/StorageAreaSync.h:
1769         * storage/StorageSyncManager.cpp:
1770         (WebCore::StorageSyncManager::fullDatabaseFilename):
1771         * storage/StorageSyncManager.h:
1772
1773 2009-11-03  Jeremy Orlow  <jorlow@chromium.org>
1774
1775         Reviewed by Darin Fisher.
1776
1777         Clean up StorageAreaSync
1778         https://bugs.webkit.org/show_bug.cgi?id=31100
1779
1780         Major fixes: Break the ref count cycle for StorageArea on the main
1781         thread, not the background thread since the latter is not safe.
1782         Length() needs to block on the import completing.
1783
1784         Small fixes: setItem needs to handle the copy on write case even if it
1785         has an exception.  setItem and removeItem should just bail from the
1786         the function if the value hasn't changed rather than wrapping the end
1787         in an if block.  Clear should only send an event if it wasn't already
1788         cleared.  StorageAreaSync should assert that the final sync was
1789         scheduled.
1790
1791         * storage/StorageAreaImpl.cpp:
1792         (WebCore::StorageAreaImpl::length):
1793           Forgot to block on the import.
1794         (WebCore::StorageAreaImpl::key):
1795         (WebCore::StorageAreaImpl::setItem):
1796           Handle the copy on write case even when there's an exception.
1797         (WebCore::StorageAreaImpl::removeItem):
1798         (WebCore::StorageAreaImpl::clear):
1799         * storage/StorageAreaSync.cpp:
1800         (WebCore::StorageAreaSync::~StorageAreaSync):
1801         (WebCore::StorageAreaSync::scheduleFinalSync):
1802         (WebCore::StorageAreaSync::performImport):
1803         (WebCore::StorageAreaSync::markImported):
1804         (WebCore::StorageAreaSync::blockUntilImportComplete):
1805         * storage/StorageAreaSync.h:
1806
1807 2009-11-05  Zoltan Horvath  <zoltan@webkit.org>
1808
1809         Reviewed by Eric Seidel.
1810
1811         Allow custom memory allocation control for WebCore's CachedResource
1812         https://bugs.webkit.org/show_bug.cgi?id=31114
1813
1814         Inherits CachedResource class from Noncopyable because its (its child
1815         class) CachedCSSStyleSheet instantiated by 'new' in WebCore/loader/Cache.cpp:75 
1816         and it is no need to be copyable.
1817
1818         * loader/CachedResource.h:
1819
1820 2009-11-04  Mark Mentovai  <mark@chromium.org>
1821
1822         Reviewed by Mark Rowe.
1823
1824         Separate the difference between HAVE(CGINTERPOLATION_MEDIUM), which
1825         is true when building on 10.6 or later, and USE(CGINTERPOLATION_MEDIUM)
1826         which is true when targeting 10.6 or later.
1827
1828         HAVE(CGINTERPOLATION_MEDIUM) indicates that kCGInterpolationMedium
1829         is present in the CGInterpolationQuality enum, and must be handled
1830         by a switch that has cases for each enumerated value.
1831
1832         USE(CGINTERPOLATION_MEDIUM) indicates that the product will only run
1833         on 10.6 or later, and that CoreGraphics will understand when
1834         InterpolationMedium is mapped to kCGInterpolationMedium at runtime.
1835
1836         * platform/graphics/cg/GraphicsContextCG.cpp:
1837         (WebCore::GraphicsContext::setImageInterpolationQuality):
1838         (WebCore::GraphicsContext::imageInterpolationQuality):
1839
1840 2009-11-04  Dan Kegel  <dank@chromium.org>
1841
1842         Reviewed by Alexey Proskuryakov.
1843
1844         Fix buffer overrun in WebCore::Page::userStyleSheetLocationChanged()
1845         https://bugs.webkit.org/show_bug.cgi?id=31138
1846
1847         Test: LayoutTests/platform/mac/fast/loader/user-stylesheet-fast-path.html in Valgrind
1848
1849         * page/Page.cpp:
1850         (WebCore::Page::userStyleSheetLocationChanged):
1851
1852 2009-11-04  Timothy Hatcher  <timothy@apple.com>
1853
1854         Update the Web Inspector Timeline panel to better match the mock-up.
1855
1856         https://bugs.webkit.org/show_bug.cgi?id=31150
1857
1858         Reviewed by Pavel Feldman.
1859
1860         * inspector/front-end/TimelinePanel.js:
1861         (WebInspector.TimelinePanel.prototype._getRecordDetails):
1862         (WebInspector.TimelinePanel.prototype._dragWindow):
1863         (WebInspector.TimelinePanel.prototype._resizeWindowLeft):
1864         (WebInspector.TimelinePanel.prototype._resizeWindowRight):
1865         (WebInspector.TimelineCategoryTreeElement.prototype.onattach):
1866         (WebInspector.TimelineRecordTreeElement.prototype.onattach):
1867         (WebInspector.TimelineRecordTreeElement.prototype.refresh):
1868         (WebInspector.TimelineCategoryGraph):
1869         * inspector/front-end/inspector.css:
1870
1871 2009-11-05  Justin Garcia  <justin.garcia@apple.com>
1872
1873         Reviewed by Adele Peterson.
1874
1875         https://bugs.webkit.org/show_bug.cgi?id=25439
1876         Deleting when in front of a block image removes character from previous paragraph
1877
1878         Added editing/deleting/25439-{1,2,3}.html
1879
1880         * editing/DeleteSelectionCommand.cpp:
1881         (WebCore::DeleteSelectionCommand::mergeParagraphs): Block images, tables and HRs cannot 
1882         be made inline with other content.  Instead of merging, just move the caret to just before 
1883         the selection we deleted.
1884         * editing/htmlediting.cpp:
1885         (WebCore::firstInSpecialElement): Added a FIXME.  This function begins iterating up from pos.node(), which 
1886         doesn't necessarily contain pos (suppose pos was [img, 0]).
1887         (WebCore::lastInSpecialElement): Ditto.
1888         (WebCore::isRenderedAsNonInlineTableImageOrHR): Moved from visible_units.cpp.  Added a check for non-inline images.
1889         * editing/htmlediting.h:
1890         * editing/visible_units.cpp:
1891         (WebCore::startOfParagraph): Use moved/renamed function.  Removed FIXME.  The problem causing 
1892         5027702 is now squarely in first/lastInSpecialElement
1893         (WebCore::endOfParagraph): Ditto.
1894         
1895 2009-11-04  Enrica Casucci  <enrica@apple.com>
1896
1897         Reviewed by Adele Peterson.
1898
1899         Hang in Mail on attempting to change indent level.
1900         <rdar://problem/7131805>
1901         https://bugs.webkit.org/show_bug.cgi?id=31127
1902
1903         The hang was caused by an infinite loop inside outdentRegion.
1904         The code did not account for the fact that, when a list item
1905         contains multiple paragraphs, outdent moves all paragraphs at
1906         once, invalidating some of the positions we keep track of in the loop.
1907         Some code refactoring has also been done to minimize duplicated code.
1908         
1909         Test: editing/execCommand/outdent-multiparagraph-list.html
1910
1911         * editing/IndentOutdentCommand.cpp:
1912         (WebCore::IndentOutdentCommand::indentRegion): Moved code in common with
1913         outdentRegion to doApply.
1914         (WebCore::IndentOutdentCommand::outdentRegion): Fixed endless loop.
1915         (WebCore::IndentOutdentCommand::doApply): Some code refactoring.
1916         * editing/IndentOutdentCommand.h: Added VisiblePosition parameters to
1917         indentRegion and outdentRegion.
1918
1919 2009-11-04  Alpha Lam  <hclam@chromium.org>
1920
1921         Reviewed by Eric Carlson.
1922
1923         Volume slider doesn't have a thumb
1924         https://bugs.webkit.org/show_bug.cgi?id=31135
1925
1926         Fixed an incorrect if statement that prevents volume slider
1927         being updated.
1928
1929         The statement checks if the slider value equals to the current
1930         volume value of the media control to avoid updating the volume
1931         slider. Updating the volume slider control shouldn't be within
1932         this condition because we explicitly set them to be equals
1933         during creation of the controls and also when mouse events are
1934         received on the volume control.
1935
1936         No new tests because existing code breaks:
1937         LayoutTests/media/video-volume-slider.html
1938
1939         It should now start passing on Chromium.
1940
1941         * rendering/MediaControlElements.cpp:
1942         (WebCore::MediaControlVolumeSliderElement::update):
1943         Update the volume slider regardless of the current volume value
1944         of the media control.
1945
1946 2009-11-04  Jenn Braithwaite  <jennb@chromium.org>
1947
1948         Reviewed by David Levin.
1949
1950         Need to properly disable applicationCache at runtime
1951         https://bugs.webkit.org/show_bug.cgi?id=30417
1952
1953         Adding applicationCacheEnabled bit to V8 RuntimeEnabledFeatures.
1954
1955         No new exposed functionality, so no new tests.
1956
1957         * bindings/v8/RuntimeEnabledFeatures.cpp:
1958         * bindings/v8/RuntimeEnabledFeatures.h:
1959         (WebCore::RuntimeEnabledFeatures::setApplicationCacheEnabled):
1960         (WebCore::RuntimeEnabledFeatures::applicationCacheEnabled):
1961         * bindings/v8/custom/V8CustomBinding.h:
1962         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1963         (WebCore::ACCESSOR_RUNTIME_ENABLER):
1964         * page/DOMWindow.idl:
1965
1966 2009-11-04  Alexey Proskuryakov  <ap@apple.com>
1967
1968         Reviewed by Dan Bernstein.
1969
1970         https://bugs.webkit.org/show_bug.cgi?id=31143
1971         Assertion failure in CredentialStorage::set() when proxy credentials are being set
1972
1973         No test, cannot test proxy behavior.
1974
1975         * platform/network/CredentialStorage.cpp: (WebCore::CredentialStorage::set): Account for the
1976         possibility of null url. Release mode changes are likely inconsequential - e.g. we used to
1977         add "://" to origin set, which is weird, but safe.
1978
1979 2009-11-04  Patrick Mueller  <Patrick_Mueller@us.ibm.com>
1980
1981         Reviewed by Timothy Hatcher.
1982
1983         Web Inspector: Leftover Breakpoints in the Sidebar Pane
1984         https://bugs.webkit.org/show_bug.cgi?id=30659
1985
1986         No new tests.
1987
1988         * inspector/front-end/ScriptsPanel.js:
1989         (WebInspector.ScriptsPanel.prototype.addScript):
1990
1991 2009-11-04  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
1992
1993         Reviewed by Timothy Hatcher.
1994
1995         WebInspector: Use a different method to identify the webkit port in
1996         InspectorBackent::platform().
1997         This corrects the inspector expected behavior with Qt on Windows.
1998         https://bugs.webkit.org/show_bug.cgi?id=31116
1999
2000         * inspector/InspectorBackend.cpp:
2001         (WebCore::InspectorBackend::platform):
2002         (WebCore::InspectorBackend::port):
2003         * inspector/InspectorBackend.h:
2004         * inspector/InspectorBackend.idl:
2005         * inspector/front-end/InspectorControllerStub.js:
2006         (.WebInspector.InspectorControllerStub.prototype.port):
2007         * inspector/front-end/inspector.css:
2008         * inspector/front-end/inspector.js:
2009         (WebInspector.loaded):
2010         (WebInspector.toolbarDragStart):
2011
2012 2009-11-04  Benjamin Otte  <otte@gnome.org>
2013
2014         Reviewed by Gustavo Noronha.
2015
2016         Update Cairo requirement to 1.6.
2017
2018         Also remove all conditional code and workarounds for older versions of
2019         Cairo.
2020         In particular, gain image quality by removing the use of
2021         CAIRO_FILTER_NEAREST when rendering images and use the default
2022         bilinear filter instead.
2023         https://bugs.webkit.org/show_bug.cgi?id=19266
2024
2025         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2026         (WebCore::GraphicsContext::clipOut):
2027         * platform/graphics/cairo/ImageCairo.cpp:
2028         (WebCore::BitmapImage::draw):
2029         (WebCore::BitmapImage::drawPattern):
2030         * platform/graphics/cairo/PathCairo.cpp:
2031         (WebCore::Path::isEmpty):
2032         (WebCore::Path::boundingRect):
2033         * platform/gtk/RenderThemeGtk.cpp:
2034         (WebCore::paintMozWidget):
2035
2036 2009-11-04  Kevin Ollivier  <kevino@theolliviers.com>
2037
2038         wx build fix. Restore removed string conversion after cleanup.
2039
2040         * platform/graphics/wx/FontPlatformDataWx.cpp:
2041         (WebCore::FontPlatformData::computeHash):
2042
2043 2009-11-04  Chris Fleizach  <cfleizach@apple.com>
2044
2045         Reviewed by Beth Dakin.
2046
2047         Need to implement ARIA role="combobox"
2048         https://bugs.webkit.org/show_bug.cgi?id=31096
2049
2050         Test: accessibility/aria-combobox.html
2051
2052         * accessibility/AccessibilityObject.h:
2053         (WebCore::AccessibilityObject::isComboBox):
2054         (WebCore::AccessibilityObject::isExpanded):
2055         (WebCore::AccessibilityObject::expandObject):
2056         (WebCore::AccessibilityObject::increment):
2057         (WebCore::AccessibilityObject::decrement):
2058         * accessibility/AccessibilityRenderObject.cpp:
2059         (WebCore::AccessibilityRenderObject::expandObject):
2060         (WebCore::AccessibilityRenderObject::isExpanded):
2061         (WebCore::createARIARoleMap):
2062         * accessibility/AccessibilityRenderObject.h:
2063         * accessibility/mac/AccessibilityObjectWrapper.mm:
2064         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
2065         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
2066         (-[AccessibilityObjectWrapper accessibilityPerformShowMenuAction]):
2067         * html/HTMLAttributeNames.in:
2068
2069 2009-11-04  Kelly Norton  <knorton@google.com>
2070
2071         Reviewed by Pavel Feldman.
2072
2073         Fixes naming inconsistencies in TimelineRecordFactory.
2074         https://bugs.webkit.org/show_bug.cgi?id=31132
2075
2076         * inspector/InspectorTimelineAgent.cpp:
2077         (WebCore::InspectorTimelineAgent::willPaint):
2078         (WebCore::InspectorTimelineAgent::willChangeXHRReadyState):
2079         (WebCore::InspectorTimelineAgent::willLoadXHR):
2080         (WebCore::InspectorTimelineAgent::willEvaluateScript):
2081         (WebCore::InspectorTimelineAgent::willSendResourceRequest):
2082         (WebCore::InspectorTimelineAgent::didReceiveResourceResponse):
2083         (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
2084         * inspector/TimelineRecordFactory.cpp:
2085         (WebCore::TimelineRecordFactory::createXHRReadyStateChangeRecord):
2086         (WebCore::TimelineRecordFactory::createXHRLoadRecord):
2087         (WebCore::TimelineRecordFactory::createEvaluateScriptRecord):
2088         (WebCore::TimelineRecordFactory::createMarkTimelineRecord):
2089         (WebCore::TimelineRecordFactory::createResourceSendRequestRecord):
2090         (WebCore::TimelineRecordFactory::createResourceReceiveResponseRecord):
2091         (WebCore::TimelineRecordFactory::createResourceFinishRecord):
2092         (WebCore::TimelineRecordFactory::createPaintRecord):
2093         * inspector/TimelineRecordFactory.h:
2094
2095 2009-11-04  Eric Z. Ayers  <zundel@google.com>
2096
2097         Reviewed by Pavel Feldman.
2098
2099         Followon to bug 31080, which protects Timeline
2100         instrumentation in the case where InspectorTimelineAgent
2101         is enabled or disabled during an event dispatch.
2102         
2103         https://bugs.webkit.org/show_bug.cgi?id=31121
2104
2105         * bindings/v8/V8Proxy.cpp:
2106         (WebCore::V8Proxy::evaluate):
2107         * dom/Document.cpp:
2108         (WebCore::Document::recalcStyle):
2109         * dom/Node.cpp:
2110         (WebCore::Node::dispatchGenericEvent):
2111         * html/HTMLTokenizer.cpp:
2112         (WebCore::HTMLTokenizer::write):
2113         * page/DOMWindow.cpp:
2114         (WebCore::DOMWindow::inspectorTimelineAgent):
2115         (WebCore::DOMWindow::dispatchEvent):
2116         * page/DOMWindow.h:
2117         * page/FrameView.cpp:
2118         (WebCore::FrameView::layout):
2119         (WebCore::FrameView::paintContents):
2120         * xml/XMLHttpRequest.cpp:
2121         (WebCore::XMLHttpRequest::callReadyStateChangeListener):
2122
2123 2009-11-04  Jeremy Orlow  <jorlow@chromium.org>
2124
2125         Revert 50519 while I work out what went wrong.
2126
2127         * storage/LocalStorageThread.cpp:
2128         (WebCore::LocalStorageThread::create):
2129         (WebCore::LocalStorageThread::LocalStorageThread):
2130         (WebCore::LocalStorageThread::start):
2131         (WebCore::LocalStorageThread::localStorageThreadStart):
2132         (WebCore::LocalStorageThread::localStorageThread):
2133         (WebCore::LocalStorageThread::scheduleImport):
2134         (WebCore::LocalStorageThread::scheduleSync):
2135         (WebCore::LocalStorageThread::terminate):
2136         (WebCore::LocalStorageThread::performTerminate):
2137         * storage/LocalStorageThread.h:
2138         * storage/StorageSyncManager.cpp:
2139         (WebCore::StorageSyncManager::StorageSyncManager):
2140         (WebCore::StorageSyncManager::~StorageSyncManager):
2141         (WebCore::StorageSyncManager::scheduleImport):
2142         (WebCore::StorageSyncManager::scheduleSync):
2143         * storage/StorageSyncManager.h:
2144
2145 2009-11-04  Pavel Feldman  <pfeldman@chromium.org>
2146
2147         Reviewed by Timothy Hatcher.
2148
2149         Web Inspector: Add basic support for resource events and marks.
2150         Couple of drive-by fixes. Enabling the panel!
2151
2152         https://bugs.webkit.org/show_bug.cgi?id=31130
2153
2154         * English.lproj/localizedStrings.js:
2155         * inspector/front-end/TimelinePanel.js:
2156         (WebInspector.TimelinePanel):
2157         (WebInspector.TimelinePanel.prototype._formatRecord):
2158         (WebInspector.TimelinePanel.prototype._getRecordDetails):
2159         (WebInspector.TimelinePanel.prototype.reset):
2160         (WebInspector.TimelineCategoryTreeElement.prototype._onCheckboxClicked):
2161         (WebInspector.TimelineRecordTreeElement.prototype.onattach):
2162         * inspector/front-end/inspector.js:
2163         (WebInspector._createPanels):
2164
2165 2009-11-03  Jeremy Orlow  <jorlow@chromium.org>
2166
2167         Reviewed by Darin Fisher.
2168
2169         Simplify LocalStorageThread
2170         https://bugs.webkit.org/show_bug.cgi?id=30935
2171
2172         On LocalStoragethread: Remove reference counting. Get rid of locking. Make some
2173         of the method names a bit more clear. Assert proper thread usage. Join rather
2174         than detaching the thread and doing an ad-hoc form of join. Avoid touching
2175         variables on the background thread when simple to do so.  Also create a generic
2176         scheduleTask function rather than one for each task.
2177
2178         No behavior should have changed.
2179
2180         * storage/LocalStorageThread.cpp:
2181         (WebCore::LocalStorageThread::create):
2182         (WebCore::LocalStorageThread::LocalStorageThread):
2183         (WebCore::LocalStorageThread::~LocalStorageThread):
2184         (WebCore::LocalStorageThread::start):
2185         (WebCore::LocalStorageThread::threadEntryPointCallback):
2186         (WebCore::LocalStorageThread::threadEntryPoint):
2187         (WebCore::LocalStorageThread::scheduleTask):
2188         (WebCore::LocalStorageThread::terminate):
2189         (WebCore::LocalStorageThread::performTerminate):
2190         * storage/LocalStorageThread.h:
2191         * storage/StorageSyncManager.cpp:
2192         (WebCore::StorageSyncManager::StorageSyncManager):
2193         (WebCore::StorageSyncManager::~StorageSyncManager):
2194         (WebCore::StorageSyncManager::scheduleImport):
2195         (WebCore::StorageSyncManager::scheduleSync):
2196         * storage/StorageSyncManager.h:
2197
2198 2009-11-04  Vadim Zeitlin  <vadim@wxwidgets.org>
2199
2200         Reviewed by Eric Seidel.
2201
2202         [wx] Small cleanup: avoid unnecessary wxString::mb_str() calls.
2203
2204         * platform/graphics/wx/FontPlatformDataWx.cpp:
2205         (WebCore::FontPlatformData::computeHash):
2206
2207 2009-11-04  Kelly Norton  <knorton@google.com>
2208
2209         Reviewed by Pavel Feldman.
2210
2211         Adds lightweight network resources to InspectorTimelineAgent.
2212         https://bugs.webkit.org/show_bug.cgi?id=31065
2213
2214         * inspector/InspectorController.cpp:
2215         (WebCore::InspectorController::willSendRequest):
2216         (WebCore::InspectorController::didReceiveResponse):
2217         (WebCore::InspectorController::didFinishLoading):
2218         (WebCore::InspectorController::didFailLoading):
2219         * inspector/InspectorTimelineAgent.cpp:
2220         (WebCore::InspectorTimelineAgent::willSendResourceRequest):
2221         (WebCore::InspectorTimelineAgent::didReceiveResourceResponse):
2222         (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
2223         * inspector/InspectorTimelineAgent.h:
2224         (WebCore::):
2225         * inspector/TimelineRecordFactory.cpp:
2226         (WebCore::TimelineRecordFactory::createResourceSendRequestTimelineRecord):
2227         (WebCore::TimelineRecordFactory::createResourceReceiveResponseTimelineRecord):
2228         (WebCore::TimelineRecordFactory::createResourceFinishTimelineRecord):
2229         * inspector/TimelineRecordFactory.h:
2230         * inspector/front-end/TimelineAgent.js:
2231
2232 2009-11-04  Yael Aharon  <yael.aharon@nokia.com>
2233
2234         Reviewed by Tor Arne Vestbø.
2235
2236         [Qt] ASSERT failure when receiving 401 HTTP Authentication response.
2237         https://bugs.webkit.org/show_bug.cgi?id=31077
2238
2239         Allow sending the response body under the same conditions that we
2240         allow it to finish without reporting an error.
2241
2242         * platform/network/qt/QNetworkReplyHandler.cpp:
2243         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
2244
2245 2009-11-04  Adam Roben  <aroben@apple.com>
2246
2247         Sort WebCore.base.exp
2248
2249         Rubber-stamped by Dan Bernstein.
2250
2251         * WebCore.base.exp: Sorted.
2252
2253 2009-11-04  Csaba Osztrogonác  <ossy@webkit.org>
2254
2255         Unreviewed rollout.
2256
2257         Revert r50496 because it broke all layout tests on QtBuildBot.
2258
2259         * WebCore.pro:
2260         * platform/graphics/qt/FontCacheQt.cpp:
2261         (WebCore::fontCache):
2262         (WebCore::FontCache::FontCache):
2263         (WebCore::FontCache::getTraitsInFamily):
2264         (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
2265         (WebCore::FontPlatformDataCacheKey::isHashTableDeletedValue):
2266         (WebCore::FontPlatformDataCacheKey::):
2267         (WebCore::FontPlatformDataCacheKey::operator==):
2268         (WebCore::FontPlatformDataCacheKey::hash):
2269         (WebCore::FontPlatformDataCacheKey::computeHash):
2270         (WebCore::FontPlatformDataCacheKey::hashTableDeletedSize):
2271         (WebCore::FontPlatformDataCacheKeyHash::hash):
2272         (WebCore::FontPlatformDataCacheKeyHash::equal):
2273         (WebCore::FontPlatformDataCacheKeyTraits::emptyValue):
2274         (WebCore::FontPlatformDataCacheKeyTraits::constructDeletedValue):
2275         (WebCore::FontPlatformDataCacheKeyTraits::isDeletedValue):
2276         (WebCore::FontCache::getCachedFontPlatformData):
2277         (WebCore::FontCache::getCachedFontData):
2278         (WebCore::FontCache::getLastResortFallbackFont):
2279         (WebCore::FontCache::releaseFontData):
2280         (WebCore::FontCache::purgeInactiveFontData):
2281         (WebCore::FontCache::addClient):
2282         (WebCore::FontCache::removeClient):
2283         (WebCore::FontCache::invalidate):
2284         * platform/graphics/qt/FontFallbackListQt.cpp: Added.
2285         (WebCore::FontFallbackList::FontFallbackList):
2286         (WebCore::FontFallbackList::invalidate):
2287         (WebCore::FontFallbackList::releaseFontData):
2288         (WebCore::FontFallbackList::determinePitch):
2289         (WebCore::FontFallbackList::fontDataAt):
2290         (WebCore::FontFallbackList::fontDataForCharacters):
2291         (WebCore::FontFallbackList::setPlatformFont):
2292         * platform/graphics/qt/FontPlatformData.h:
2293         (WebCore::FontPlatformData::pixelSize):
2294         * platform/graphics/qt/FontPlatformDataQt.cpp:
2295         (WebCore::FontPlatformData::FontPlatformData):
2296
2297 2009-11-04  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
2298
2299         Reviewed by Jan Alonzo.
2300
2301         https://bugs.webkit.org/show_bug.cgi?id=31044
2302         [Gtk] assertion when webkit_accessible_get_index_in_parent attempts to get parent of the web view
2303
2304         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2305         (atkParentOfWebView):
2306         (webkit_accessible_get_index_in_parent):
2307         (webkit_accessible_get_parent):
2308
2309 2009-11-04  Dominik Röttsches  <dominik.roettsches@access-company.com>
2310
2311         Reviewed by Eric Seidel.
2312
2313         https://bugs.webkit.org/show_bug.cgi?id=15914
2314         [GTK] Implement Unicode functionality using GLib
2315
2316         Initial version of this patch by Jürg Billeter and Naiem Shaik.
2317         Patch 2/4 - Moving TextCodecs to GLib
2318         
2319         Added probing for a hard-coded lists of text encodings.
2320         The basis of this list is taken from the encodings supported by iconv,
2321         then extended by e.g. tis-620, windows-1251, euc-kr, windows-1253 and
2322         a number of Chinese ones.
2323
2324         Probing is necessary with the current design of text codecs
2325         as iconv/GLib do not support enumerating available encodings.
2326
2327         * GNUmakefile.am:
2328         * platform/ThreadGlobalData.cpp:
2329         (WebCore::ThreadGlobalData::ThreadGlobalData):
2330         (WebCore::ThreadGlobalData::~ThreadGlobalData):
2331         * platform/text/TextEncoding.cpp:
2332         (WebCore::TextEncoding::encode):
2333         * platform/text/TextEncodingRegistry.cpp:
2334         (WebCore::buildBaseTextCodecMaps):
2335         (WebCore::extendTextCodecMaps):
2336         * platform/text/gtk/TextCodecGtk.cpp: Added.
2337         (WebCore::):
2338         (WebCore::newTextCodecGtk):
2339         (WebCore::TextCodecGtk::isEncodingAvailable):
2340         (WebCore::TextCodecGtk::registerEncodingNames):
2341         (WebCore::TextCodecGtk::registerCodecs):
2342         (WebCore::TextCodecGtk::registerBaseEncodingNames):
2343         (WebCore::TextCodecGtk::registerBaseCodecs):
2344         (WebCore::TextCodecGtk::registerExtendedEncodingNames):
2345         (WebCore::TextCodecGtk::registerExtendedCodecs):
2346         (WebCore::TextCodecGtk::TextCodecGtk):
2347         (WebCore::TextCodecGtk::~TextCodecGtk):
2348         (WebCore::TextCodecGtk::releaseIConv):
2349         (WebCore::TextCodecGtk::createIConvDecoder):
2350         (WebCore::TextCodecGtk::createIConvEncoder):
2351         (WebCore::TextCodecGtk::decode):
2352         (WebCore::TextCodecGtk::encode):
2353         * platform/text/gtk/TextCodecGtk.h: Added.
2354
2355 2009-11-04  Martin Robinson  <martin.james.robinson@gmail.com>
2356
2357         Reviewed by Jan Alonzo.
2358
2359         [GTK] Enable DOM clipboard and drag-and-drop access
2360         https://bugs.webkit.org/show_bug.cgi?id=30623
2361
2362         Unify redudant methods which will always return the same value.
2363
2364         * platform/gtk/PasteboardGtk.cpp:
2365         (WebCore::Pasteboard::writeSelection):
2366         * platform/gtk/PasteboardHelper.h:
2367
2368 2009-11-04  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
2369
2370         Reviewed by Jan Alonzo.
2371
2372         https://bugs.webkit.org/show_bug.cgi?id=31035
2373         [GTK] some accessibility tests hitting assertion in debug builds
2374
2375         Removes the assertions in webkit_accessible_ref_child; adds sanity checks.
2376         Any app or AT can attempt to ref a child at a bogus index.
2377
2378         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2379         (webkit_accessible_ref_child):
2380
2381 2009-11-04  Benjamin Otte  <otte@gnome.org>
2382
2383         Reviewed by Jan Alonzo.
2384
2385         [gtk] Use gst_element_class_set_details_simple()
2386
2387         Cosmetic change, just code simplification
2388
2389         * platform/graphics/gtk/VideoSinkGStreamer.cpp:
2390         (webkit_video_sink_base_init):
2391 2009-11-04  Kelly Norton  <knorton@google.com>
2392
2393         Reviewed by Timothy Hatcher.
2394
2395         Adds paint rectangle information to TimelineAgent's didPaint callback.
2396         https://bugs.webkit.org/show_bug.cgi?id=31087
2397
2398         * inspector/InspectorTimelineAgent.cpp:
2399         (WebCore::InspectorTimelineAgent::willPaint):
2400         * inspector/InspectorTimelineAgent.h:
2401         * inspector/TimelineRecordFactory.cpp:
2402         (WebCore::TimelineRecordFactory::createPaintTimelineRecord):
2403         * inspector/TimelineRecordFactory.h:
2404         * page/FrameView.cpp:
2405         (WebCore::FrameView::paintContents):
2406
2407 2009-11-04  Jaime Yap  <jaimeyap@google.com>
2408
2409         Reviewed by Timothy Hatcher.
2410
2411         This patch adds API to the console object for annotating the
2412         inspector timeline. This allows developers to mark logical
2413         checkpoints in their apps and have them overlaid in the event
2414         record tree.
2415
2416         tests updated: LayoutTests/fast/dom/Window/window-properties.html
2417         https://bugs.webkit.org/show_bug.cgi?id=31082
2418
2419
2420         * inspector/InspectorController.cpp:
2421         (WebCore::InspectorController::markTimeline):
2422         * inspector/InspectorController.h:
2423         * inspector/InspectorTimelineAgent.cpp:
2424         (WebCore::InspectorTimelineAgent::didMarkTimeline):
2425         * inspector/InspectorTimelineAgent.h:
2426         (WebCore::):
2427         * inspector/TimelineRecordFactory.cpp:
2428         (WebCore::TimelineRecordFactory::createMarkTimelineRecord):
2429         * inspector/TimelineRecordFactory.h:
2430         * inspector/front-end/TimelineAgent.js:
2431         * page/Console.cpp:
2432         (WebCore::Console::markTimeline):
2433         * page/Console.h:
2434         * page/Console.idl:
2435
2436 2009-11-03  Simon Hausmann  <hausmann@webkit.org>
2437
2438         Unreviewed build fix for WebInspector with Qt build.
2439
2440         Simply re-generate the Qt resource file by running
2441         WebKitTools/Scripts/generate-qt-inspector-resource
2442
2443         * inspector/front-end/WebKit.qrc:
2444
2445 2009-11-02  Benjamin Poulain  <benjamin.poulain@nokia.com>
2446
2447         Reviewed by Simon Hausmann.
2448
2449         [Qt] Handle fonts like the other ports
2450
2451         Remove FontFallbackListQt and rely on the common FontFallbackList
2452         to handle the fonts. FontCache and FontPlatformData have been
2453         updated to work with the common FontFallbackList.
2454
2455         In the previous implementation, FontPlatformDataCacheKey
2456         was a clone of FontPlatformData with the hashing
2457         capabilities added in order to use it as a key in the cache's
2458         hashmap. FontPlatformData has been modified to handle the hashing
2459         function directly so the data are not copied twice in memory.
2460
2461         FontFallbackList::fontDataAt() from FontFallbackListQt was a copy of
2462         code from FontCache::getFontData() and FontFallbackList::fontDataAt().
2463         The behavior is similar except currFamily->family().length() was
2464         not tested and the fallback fonts selector were not used.
2465
2466         https://bugs.webkit.org/show_bug.cgi?id=29856
2467
2468         Test: svg/text/text-font-invalid.html
2469
2470         * WebCore.pro:
2471         * platform/graphics/qt/FontCacheQt.cpp:
2472         (WebCore::FontCache::platformInit):
2473         (WebCore::FontCache::getFontDataForCharacters):
2474         (WebCore::FontCache::getSimilarFontPlatformData):
2475         (WebCore::FontCache::getLastResortFallbackFont):
2476         (WebCore::FontCache::getTraitsInFamily):
2477         (WebCore::FontCache::createFontPlatformData):
2478         * platform/graphics/qt/FontFallbackListQt.cpp:
2479         Removed. We now use the implementation from FontFallbackList.cpp
2480         * platform/graphics/qt/FontPlatformData.h:
2481         Add hashing capabilities to be able to use the data with the FontCache.
2482         This was previously done in FontCacheQt.cpp
2483         (WebCore::FontPlatformData::FontPlatformData):
2484         Added a boolean to identify deleted value in the hash table.
2485         (WebCore::FontPlatformData::isHashTableDeletedValue):
2486         (WebCore::FontPlatformData::hash):
2487         (WebCore::FontPlatformData::operator==):
2488         * platform/graphics/qt/FontPlatformDataQt.cpp:
2489         (WebCore::FontPlatformData::FontPlatformData):
2490
2491 2009-11-03  Dan Bernstein  <mitz@apple.com>
2492
2493         Leopard build fix
2494
2495         * platform/network/mac/AuthenticationMac.mm:
2496         (WebCore::mac):
2497         (WebCore::core):
2498
2499 2009-11-03  Dan Bernstein  <mitz@apple.com>
2500
2501         Reviewed by Alexey Proskuryakov.
2502
2503         Fix an assertion failure in core(NSURLProtectionSpace *) by handling NTLM
2504         authentication in AuthenticationMac
2505
2506         * platform/network/mac/AuthenticationMac.mm:
2507
2508 2009-11-03  Eric Z. Ayers  <zundel@google.com>
2509
2510         Reviewed by Timothy Hatcher.
2511
2512         Fixes a problem where the timeline instrumentation crashes if
2513         timeline profiling is enabled or disabled in the middle of an
2514         event dispatch.
2515
2516         https://bugs.webkit.org/show_bug.cgi?id=31080
2517
2518         Test: inspector/timeline-trivial.html
2519
2520         * bindings/js/ScriptController.cpp:
2521         (WebCore::ScriptController::evaluateInWorld):
2522         (WebCore::ScriptController::processingUserGestureEvent):
2523         * inspector/InspectorTimelineAgent.cpp:
2524         (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
2525         * page/DOMTimer.cpp:
2526         (WebCore::DOMTimer::fired):
2527
2528 2009-11-03  Dan Bernstein  <mitz@apple.com>
2529
2530         Reviewed by Dave Hyatt.
2531
2532         Allow a frame to go back to copy-on-scroll when it ceases being overlapped
2533
2534         The code was not testing slow-scrolling frames for overlappedness, thinking the answer
2535         would not matter. That is not the case if the only reason for the slow-scrolling is
2536         being overlapped.
2537
2538         * page/FrameView.cpp:
2539         (WebCore::FrameView::useSlowRepaintsIfNotOverlapped): Added. Returns whether there is any
2540         reason besides being overlapped that the frame would need to fully repaint on scroll.
2541         * page/FrameView.h:
2542         * rendering/RenderWidget.cpp:
2543         (WebCore::RenderWidget::paint): Use useSlowRepaintsIfNotOverlapped().
2544
2545 2009-11-03  Dmitry Titov  <dimich@chromium.org>
2546
2547         Not reviewed, Qt build fix.
2548
2549         Need to use right capitalization for include file.
2550
2551         * page/Navigator.cpp:
2552
2553 2009-11-03  Pavel Feldman  <pfeldman@chromium.org>
2554
2555         Reviewed by Timothy Hatcher.
2556
2557         Web Inspector: Migrate from top bar filters to check boxes in Timeline.
2558
2559         https://bugs.webkit.org/show_bug.cgi?id=31081
2560
2561         * inspector/front-end/AbstractTimelinePanel.js:
2562         (WebInspector.AbstractTimelinePanel.prototype.showCategory):
2563         (WebInspector.AbstractTimelinePanel.prototype.hideCategory):
2564         (WebInspector.AbstractTimelinePanel.prototype.filter):
2565         * inspector/front-end/TimelinePanel.js:
2566         (WebInspector.TimelinePanel):
2567         (WebInspector.TimelineCategoryTreeElement.prototype.onattach):
2568         (WebInspector.TimelineCategoryTreeElement.prototype._onCheckboxClick):
2569         (WebInspector.TimelineCategoryGraph.prototype.clearChunks):
2570         (WebInspector.TimelineCategoryGraph.prototype.set dimmed):
2571         * inspector/front-end/inspector.css:
2572
2573 2009-11-03  Pavel Feldman  <pfeldman@chromium.org>
2574
2575         Reviewed by Timothy Hatcher.
2576
2577         Web Inspector: clear overview on Clear action and panel reset.
2578
2579         https://bugs.webkit.org/show_bug.cgi?id=31078
2580
2581         * inspector/front-end/TimelinePanel.js:
2582         (WebInspector.TimelinePanel.prototype._getRecordDetails):
2583         (WebInspector.TimelinePanel.prototype.reset):
2584
2585 2009-11-03  Yaar Schnitman  <yaar@chromium.org>
2586
2587         Reviewed by Dimitri Glazkov.
2588
2589         Imported action and rules python files that WebCore.gyp depends on. 
2590         These files used to live in chromium.org and deal mostly with auto-generation
2591         of code by wrapping existing webkit perl scripts.
2592
2593         https://bugs.webkit.org/show_bug.cgi?id=31071
2594
2595         * WebCore.gyp/WebCore.gyp: Fixed paths in actions and rules.
2596         * WebCore.gyp/scripts/action_csspropertynames.py: Added.
2597         * WebCore.gyp/scripts/action_cssvaluekeywords.py: Added.
2598         * WebCore.gyp/scripts/action_makenames.py: Added.
2599         * WebCore.gyp/scripts/action_maketokenizer.py: Added.
2600         * WebCore.gyp/scripts/action_useragentstylesheets.py: Added.
2601         * WebCore.gyp/scripts/rule_binding.py: Added.
2602         * WebCore.gyp/scripts/rule_bison.py: Added.
2603         * WebCore.gyp/scripts/rule_gperf.py: Added.
2604
2605 2009-11-03  Bradley Green  <brg@chromium.org>
2606
2607         Reviewed by Dmitry Titov.
2608
2609         Implement window.navigator.registerProtocolHandler in webkit,
2610         https://bugs.webkit.org/b/29651
2611
2612         Also implemented its sister API window.navigator.registerContentHandler.
2613
2614         These methods are as described in the HTML5 specification which can be
2615         found here,
2616         http://dev.w3.org/html5/spec/Overview.html#dom-navigator-registerprotocolhandler
2617         http://dev.w3.org/html5/spec/Overview.html#dom-navigator-registercontenthandler
2618
2619         As specified in the document, the behavior of the browser is determined
2620         by the current registered handler.  The state of a registered handler
2621         can change at any time, with the user clearing a registered handler,
2622         registering a different page as handler, or deferring the hander to the
2623         OS.  If webkit was to track the state of the currently registered
2624         handlers, it would need more APIs and complexity to keep in sync with
2625         user actions reported to webkit from the UA.  For simplicity, the state
2626         of protocol handlers should be kept isolated from webkit and webkit only
2627         notifies the UA that a page has made the call.  The UA is then
2628         responsible for correctly handling the registerProtocolHandler call and
2629         the redirects which result from registration.
2630
2631         We do however follow the specification in insuring that the reserved
2632         schemes and mimeTypes are not passed to the UA as custom handler
2633         registration tests.  We also insure that the "%s" token is present as
2634         required by the specification.
2635
2636         Updated test expectations for window.clientInformation and navigator
2637         objects.
2638
2639         Tests: fast/dom/registerContentHandler.html
2640                fast/dom/registerProtocolHandler.html
2641
2642         * page/Chrome.cpp:
2643         (WebCore::Chrome::registerProtocolHandler):
2644         (WebCore::Chrome::registerContentHandler):
2645         * page/Chrome.h:
2646         * page/ChromeClient.h:
2647         (WebCore::ChromeClient::registerProtocolHandler):
2648         (WebCore::ChromeClient::registerContentHandler):
2649         * page/Navigator.cpp:
2650         (WebCore::verifyCustomHandlerURL):
2651         (WebCore::verifyProtocolHandlerScheme):
2652         (WebCore::Navigator::registerProtocolHandler):
2653         (WebCore::verifyProtocolHandlerMimeType):
2654         (WebCore::Navigator::registerContentHandler):
2655         * page/Navigator.h:
2656         * page/Navigator.idl:
2657
2658 2009-11-03  Brady Eidson  <beidson@apple.com>
2659
2660         Reviewed by Darin Adler.
2661
2662         https://bugs.webkit.org/show_bug.cgi?id=31079 - Remove #include "Page.h" from Document.h
2663
2664         No new tests. (No change in functionality)
2665
2666         * dom/Document.cpp:
2667         (WebCore::Document::inspectorTimelineAgent): Moved from Document.h
2668         * dom/Document.h:
2669
2670         Include "Page.h" directly:
2671         * html/HTMLVideoElement.cpp:
2672         * loader/RedirectScheduler.cpp:
2673         * page/History.cpp:
2674         * rendering/MediaControlElements.cpp:
2675         * storage/StorageAreaImpl.cpp:
2676
2677 2009-11-03  Keishi Hattori  <casey.hattori@gmail.com>
2678
2679         Reviewed by Timothy Hatcher.
2680
2681         Web Inspector: hover over JS "things" in source and see their values
2682         https://bugs.webkit.org/show_bug.cgi?id=30913
2683
2684         * inspector/front-end/SourceFrame.js:
2685
2686 2009-11-03  Pavel Feldman  <pfeldman@chromium.org>
2687
2688         Reviewed by Timothy Hatcher.
2689
2690         Web Inspector: update timeline content boundaries on timer.
2691
2692         https://bugs.webkit.org/show_bug.cgi?id=31072
2693
2694         * inspector/front-end/TimelinePanel.js:
2695         (WebInspector.TimelinePanel.prototype.refresh):
2696         (WebInspector.TimelinePanel.prototype._setWindowPosition):
2697
2698 2009-11-03  Dan Bernstein  <mitz@apple.com>
2699
2700         Reviewed by Anders Carlsson and Beth Dakin.
2701
2702         https://bugs.webkit.org/show_bug.cgi?id=31070
2703         Fix <rdar://problem/7194735> Crashes at RenderText::RenderText()
2704         Fix <rdar://problem/6937089> Crashes at RenderWidget::destroy()
2705
2706         Tests: plugins/attach-during-destroy.html
2707                plugins/destroy-reentry.html
2708
2709         These crashes were caused by plug-in code running during detach(),
2710         causing re-entry into RenderWidget::destroy() in one case and a call
2711         into attach() in the other. The fix is to prevent plug-in code from
2712         being called at certain unsafe times (during attach(), detach(), and
2713         recalcStyle()) by deferring changes to the widget hierarchy.
2714
2715         * dom/Document.cpp:
2716         (WebCore::Document::recalcStyle): Suspend widget hierarchy updates
2717             during style recalculation.
2718
2719         * dom/Element.cpp:
2720         (WebCore::Element::attach): Suspend widget hierarchy updates during
2721             attach().
2722         (WebCore::Element::detach): Suspend widget hierarchy updates during
2723             detach().
2724
2725         * rendering/RenderWidget.cpp:
2726         (WebCore::widgetNewParentMap): Returns a static map of pending changes
2727             to the widget hierarchy.
2728         (WebCore::RenderWidget::suspendWidgetHierarchyUpdates): Increments the
2729             suspend count.
2730         (WebCore::RenderWidget::resumeWidgetHierarchyUpdates): Decrements the
2731             suspend count. If the count is going to be zero, updates the widget
2732             hierarchy by executing the pending changes stored in the map.
2733         (WebCore::moveWidgetToParentSoon): Updates the widget hierarchy
2734             immediately or makes or updates an entry in the map, depending on
2735             whether updates are suspended.
2736         (WebCore::RenderWidget::destroy): Removed earlier bandaid fix for
2737             <rdar://problem/6937089>.
2738         (WebCore::RenderWidget::setWidgetGeometry): Assert that widget updates
2739             are not suspended, because this function updates the widget’s
2740             bounds, which can result in arbitrary native and JavaScript code
2741             execution. I think this assertion is true thanks to some deferred-
2742             update mechanisms that have already been deployed in other places
2743             in the code.
2744         (WebCore::RenderWidget::setWidget): Call moveWidgetToParentSoon instead
2745             of changing the widget hierarchy directly.
2746         * rendering/RenderWidget.h: Declared suspendWidgetHierarchyUpdates()
2747             and resumeWidgetHierarchyUpdates().
2748
2749 2009-11-03  Pavel Feldman  <pfeldman@chromium.org>
2750
2751         Reviewed by Timothy Hatcher.
2752
2753         Web Inspector: only show timeline records that contribute
2754         to the current window.
2755
2756         https://bugs.webkit.org/show_bug.cgi?id=31069
2757
2758         * inspector/front-end/TimelinePanel.js:
2759         (WebInspector.TimelinePanel.prototype.refresh):
2760         (WebInspector.TimelineGraph):
2761         (WebInspector.TimelineGraph.prototype.refresh):
2762
2763 2009-11-03  Patrick Mueller  <Patrick_Mueller@us.ibm.com>
2764
2765         Reviewed by Timothy Hatcher.
2766
2767         Watch expression editor should stay open after Add button was clicked
2768         https://bugs.webkit.org/show_bug.cgi?id=31049
2769
2770         No new tests, was a regression, use existing manual test.
2771
2772         * inspector/front-end/WatchExpressionsSidebarPane.js:
2773         (WebInspector.WatchExpressionsSection.prototype.update):
2774         (WebInspector.WatchExpressionsSection.prototype.addExpression):
2775
2776 2009-11-03  Evan Martin  <evan@chromium.org>
2777
2778         Reviewed by Darin Adler.
2779
2780         Fix an off-by-one in the CSS lexer that causes memory corruption in
2781         hard-to-trigger circumstances.
2782
2783         https://bugs.webkit.org/show_bug.cgi?id=30827
2784
2785         Test: fast/css/end-of-buffer-crash.html
2786
2787         * css/maketokenizer: Add comments, fix off-by-one.
2788
2789 2009-11-02  Darin Adler  <darin@apple.com>
2790
2791         Reviewed by Dan Bernstein.
2792
2793         Crash due to double-destroy related to CSS run-in property
2794         https://bugs.webkit.org/show_bug.cgi?id=31034
2795         rdar://problem/7328458
2796
2797         Test: fast/css/run-in-crash.html
2798
2799         * rendering/RenderBlock.cpp:
2800         (WebCore::RenderBlock::destroy): Reorder destruction so the
2801         continuation is destroyed after anonymous children. See comment
2802         in the code for more details of why this is right.
2803         * rendering/RenderInline.cpp:
2804         (WebCore::RenderInline::destroy): Ditto.
2805
2806 2009-11-03  Alexander Pavlov  <apavlov@chromium.org>
2807
2808         Reviewed by Pavel Feldman.
2809
2810         Fix exception in ElementsPanel.js when moving pointer out of crumbs and window
2811
2812         There might be no new node under mouse if the pointer is moved out of the window
2813         in which case we get an exception.
2814         https://bugs.webkit.org/show_bug.cgi?id=31061
2815
2816         * inspector/front-end/ElementsPanel.js:
2817         (WebInspector.ElementsPanel.prototype._mouseMovedOutOfCrumbs):
2818
2819 2009-11-03  Zoltan Horvath  <zoltan@webkit.org>
2820
2821         Reviewed by Darin Adler.
2822
2823         Allow custom memory allocation control for the dom directory of WebCore
2824         https://bugs.webkit.org/show_bug.cgi?id=31053
2825
2826         Inherits the following classes from Noncopyable because these are
2827         instantiated by 'new' and these are no need to be copyable:
2828
2829         class EventNames - 'new' call: WebCore/platform/ThreadGlobalData.cpp:73
2830         struct PerformTaskContext - 'new' call: WebCore/dom/Document.cpp:4581
2831         class EventData - 'new' call: WebCore/dom/MessagePortChannel.cpp:38
2832         struct NodeListsNodeData - 'new' call: WebCore/dom/NodeRareData.h:51 
2833         struct EventTargetData - 'new' call: WebCore/dom/NodeRareData.h:100
2834         class NodeRareData - 'new' call: WebCore/dom/Node.cpp:552
2835
2836         Inherits QualifiedName class from FastAllocBase because it is
2837         instantiated by 'new' in WebCore/editing/markup.cpp:319
2838
2839         * dom/Document.cpp:
2840         * dom/EventNames.h:
2841         * dom/EventTarget.h:
2842         * dom/MessagePortChannel.h:
2843         * dom/NodeRareData.h:
2844         * dom/QualifiedName.h:
2845
2846 2009-11-03  Pavel Feldman  <pfeldman@chromium.org>
2847
2848         Reviewed by Timothy Hatcher.
2849
2850         Web Inspector: Implement timeline summary panel.
2851
2852         https://bugs.webkit.org/show_bug.cgi?id=31064
2853
2854         * inspector/front-end/TimelinePanel.js:
2855         (WebInspector.TimelinePanel.prototype._createOverview):
2856         (WebInspector.TimelinePanel.prototype.refresh):
2857         (WebInspector.TimelineCategoryGraph):
2858         (WebInspector.TimelineCategoryGraph.prototype.get graphElement):
2859         (WebInspector.TimelineCategoryGraph.prototype.addChunk):
2860         (WebInspector.TimelineCategoryGraph.prototype.clearChunks):
2861         (WebInspector.TimelineGraph.prototype.refresh):
2862         * inspector/front-end/inspector.css:
2863
2864 2009-11-03  Alexander Pavlov  <apavlov@chromium.org>
2865
2866         Reviewed by Timothy Hatcher.
2867
2868         Toggle off 'Search for node' when the Inspector window is closing
2869
2870         Searching for node should be toggled off when the Inspector window is closed,
2871         in a platform-independent manner.
2872         https://bugs.webkit.org/show_bug.cgi?id=31059
2873
2874         * inspector/InspectorController.cpp:
2875         (WebCore::InspectorController::setWindowVisible):
2876
2877 2009-11-03  Mikhail Naganov  <mnaganov@chromium.org>
2878
2879         Reviewed by Timothy Hatcher.
2880
2881         Prepare for heap profiles upstreaming:
2882         - pass profile type id from InspectorController;
2883         - this makes WebInspector.CPUProfile redundant---removed;
2884         - support multiple profile types when populating profiles.
2885
2886         https://bugs.webkit.org/show_bug.cgi?id=31052
2887
2888         * inspector/InspectorController.cpp:
2889         (WebCore::InspectorController::createProfileHeader):
2890         * inspector/front-end/ProfileView.js:
2891         (WebInspector.CPUProfileView.profileCallback):
2892         (WebInspector.CPUProfileView):
2893         (WebInspector.CPUProfileView.prototype._sortData):
2894         * inspector/front-end/ProfilesPanel.js:
2895         (WebInspector.ProfilesPanel.prototype.addProfileHeader):
2896         * inspector/front-end/inspector.js:
2897         (WebInspector.addProfileHeader):
2898
2899 2009-11-03  Dan Kegel  <dank@chromium.org>
2900
2901         Reviewed by Dimitri Glazkov.
2902
2903         UMR in WebCore::AccessibilityRenderObject::children(); m_childrenDirty uninitialized in constructor
2904         https://bugs.webkit.org/show_bug.cgi?id=31063
2905
2906         * accessibility/AccessibilityRenderObject.cpp:
2907         (WebCore::AccessibilityRenderObject::AccessibilityRenderObject):
2908
2909 2009-11-03  Pavel Feldman  <pfeldman@chromium.org>
2910
2911         Reviewed by Timothy Hatcher.
2912
2913         Web Inspector: Implement Timeline Window, wire it to the bottom timeline.
2914
2915         https://bugs.webkit.org/show_bug.cgi?id=31056
2916
2917         * English.lproj/localizedStrings.js:
2918         * inspector/front-end/AbstractTimelinePanel.js:
2919         (WebInspector.AbstractTimelinePanel.prototype.get items):
2920         (WebInspector.AbstractTimelinePanel.prototype.createInterface):
2921         (WebInspector.AbstractTimelinePanel.prototype.updateGraphDividersIfNeeded):
2922         (WebInspector.AbstractTimelinePanel.prototype._updateDividersLabelBarPosition):
2923         (WebInspector.AbstractTimelinePanel.prototype.invalidateAllItems):
2924         (WebInspector.AbstractTimelinePanel.prototype.refresh):
2925         (WebInspector.AbstractTimelinePanel.prototype.adjustScrollPosition):
2926         (WebInspector.AbstractTimelinePanel.prototype.addExtraDivider):
2927         (WebInspector.TimelineGrid):
2928         (WebInspector.TimelineGrid.prototype.get itemsGraphsElement):
2929         (WebInspector.TimelineGrid.prototype.updateDividers):
2930         (WebInspector.TimelineGrid.prototype.addExtraDivider):
2931         (WebInspector.TimelineGrid.prototype.setScrollAndDividerTop):
2932         * inspector/front-end/ResourcesPanel.js:
2933         (WebInspector.ResourcesPanel):
2934         (WebInspector.ResourcesPanel.prototype.updateGraphDividersIfNeeded):
2935         (WebInspector.ResourcesPanel.prototype.get _resources):
2936         * inspector/front-end/TimelinePanel.js:
2937         (WebInspector.TimelinePanel):
2938         (WebInspector.TimelinePanel.prototype.get categories):
2939         (WebInspector.TimelinePanel.prototype._formatRecord):
2940         (WebInspector.TimelinePanel.prototype.reset):
2941         (WebInspector.TimelinePanel.prototype._createOverview):
2942         (WebInspector.TimelinePanel.prototype.setSidebarWidth):
2943         (WebInspector.TimelinePanel.prototype.updateMainViewWidth):
2944         (WebInspector.TimelinePanel.prototype.updateGraphDividersIfNeeded):
2945         (WebInspector.TimelinePanel.prototype.refresh):
2946         (WebInspector.TimelinePanel.prototype._resizeWindow):
2947         (WebInspector.TimelinePanel.prototype._windowResizeDragging):
2948         (WebInspector.TimelinePanel.prototype._dragWindow):
2949         (WebInspector.TimelinePanel.prototype._windowDragging):
2950         (WebInspector.TimelinePanel.prototype._resizeWindowLeft):
2951         (WebInspector.TimelinePanel.prototype._resizeWindowRight):
2952         (WebInspector.TimelinePanel.prototype._setWindowPosition):
2953         (WebInspector.TimelinePanel.prototype._endWindowDragging):
2954         (WebInspector.TimelineCategoryTreeElement):
2955         (WebInspector.TimelineCategoryTreeElement.prototype.onattach):
2956         (WebInspector.TimelineCalculator.prototype.computeBarGraphPercentages):
2957         (WebInspector.TimelineCalculator.prototype.get minimumBoundary):
2958         (WebInspector.TimelineCalculator.prototype.get maximumBoundary):
2959         (WebInspector.TimelineCalculator.prototype.reset):
2960         (WebInspector.TimelineCalculator.prototype.updateBoundaries):
2961         (WebInspector.TimelineCalculator.prototype.formatValue):
2962         * inspector/front-end/inspector.css:
2963
2964 2009-11-03  Simon Hausmann  <hausmann@webkit.org>
2965
2966         Reviewed by Tor Arne Vestbø.
2967
2968         Make QWebPluginDatabase private API for now.
2969
2970         https://bugs.webkit.org/show_bug.cgi?id=30775
2971
2972         * WebCore.pro:
2973
2974 2009-11-03  Simon Hausmann  <hausmann@webkit.org>
2975
2976         Reviewed by Tor Arne Vestbø.
2977
2978         Extended the conversion of the WebCore ResourceRequest to the
2979         QNetworkRequest with a mandatory originating object argument,
2980         which is meant to be the QWebFrame the request belongs to.
2981
2982         https://bugs.webkit.org/show_bug.cgi?id=29975
2983
2984         * platform/network/qt/QNetworkReplyHandler.cpp:
2985         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
2986         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
2987         (WebCore::QNetworkReplyHandler::start):
2988         * platform/network/qt/ResourceRequest.h:
2989         * platform/network/qt/ResourceRequestQt.cpp:
2990         (WebCore::ResourceRequest::toNetworkRequest):
2991
2992 2009-11-03  Keishi Hattori  <casey.hattori@gmail.com>
2993
2994         Reviewed by Pavel Feldman.
2995
2996         Web Inspector: monitorEvent should be monitorEvents
2997         https://bugs.webkit.org/show_bug.cgi?id=31042
2998
2999         * inspector/front-end/InjectedScript.js:
3000         (InjectedScript._ensureCommandLineAPIInstalled):
3001
3002 2009-11-02  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
3003
3004         Rubber-stamped by Antti Koivisto.
3005
3006         [Qt] Build fix for Windows CE
3007
3008         * plugins/PluginDatabase.cpp:
3009
3010 2009-11-02  Chris Fleizach  <cfleizach@apple.com>
3011
3012         Reviewed by David Levin.
3013
3014         fix accessibility webkit-style-check errors
3015         https://bugs.webkit.org/show_bug.cgi?id=29672
3016
3017         * accessibility/AXObjectCache.cpp:
3018         (WebCore::AXObjectCache::getOrCreate):
3019         (WebCore::AXObjectCache::remove):
3020         (WebCore::AXObjectCache::platformGenerateAXID):
3021         (WebCore::AXObjectCache::removeAXID):
3022         * accessibility/AXObjectCache.h:
3023         (WebCore::AXObjectCache::enableAccessibility):
3024         (WebCore::AXObjectCache::enableEnhancedUserInterfaceAccessibility):
3025         (WebCore::AXObjectCache::accessibilityEnabled):
3026         (WebCore::AXObjectCache::accessibilityEnhancedUserInterfaceEnabled):
3027         (WebCore::AXObjectCache::isIDinUse):
3028         (WebCore::AXObjectCache::objectFromAXID):
3029         (WebCore::AXObjectCache::):
3030         (WebCore::AXObjectCache::handleActiveDescendantChanged):
3031         (WebCore::AXObjectCache::handleAriaRoleChanged):
3032         (WebCore::AXObjectCache::detachWrapper):
3033         (WebCore::AXObjectCache::attachWrapper):
3034         (WebCore::AXObjectCache::selectedChildrenChanged):
3035         (WebCore::AXObjectCache::postNotification):
3036         (WebCore::AXObjectCache::postPlatformNotification):
3037         (WebCore::AXObjectCache::handleFocusedUIElementChanged):
3038         (WebCore::AXObjectCache::handleScrolledToAnchor):
3039         * accessibility/AccessibilityARIAGrid.cpp:
3040         (WebCore::AccessibilityARIAGrid::cellForColumnAndRow):
3041         * accessibility/AccessibilityAllInOne.cpp:
3042         * accessibility/AccessibilityImageMapLink.cpp:
3043         * accessibility/AccessibilityList.h:
3044         (WebCore::AccessibilityList::isList):
3045         * accessibility/AccessibilityListBox.cpp:
3046         * accessibility/AccessibilityListBox.h:
3047         (WebCore::AccessibilityListBox::isListBox):
3048         * accessibility/AccessibilityListBoxOption.cpp:
3049         * accessibility/AccessibilityListBoxOption.h:
3050         (WebCore::AccessibilityListBoxOption::isListBoxOption):
3051         * accessibility/AccessibilityMediaControls.h:
3052         (WebCore::AccessibilityMediaControl::~AccessibilityMediaControl):
3053         (WebCore::AccessibilityMediaTimeline::~AccessibilityMediaTimeline):
3054         (WebCore::AccessibilityMediaTimeline::isMediaTimeline):
3055         (WebCore::AccessibilityMediaControlsContainer::~AccessibilityMediaControlsContainer):
3056         (WebCore::AccessibilityMediaControlsContainer::roleValue):
3057         (WebCore::AccessibilityMediaControlsContainer::accessibilityIsIgnored):
3058         (WebCore::AccessibilityMediaTimeDisplay::~AccessibilityMediaTimeDisplay):
3059         (WebCore::AccessibilityMediaTimeDisplay::roleValue):
3060         * accessibility/AccessibilityObject.cpp:
3061         (WebCore::AccessibilityObject::parentObjectUnignored):
3062         (WebCore::AccessibilityObject::rightLineVisiblePositionRange):
3063         (WebCore::replacedNodeNeedsCharacter):
3064         (WebCore::AccessibilityObject::stringForVisiblePositionRange):
3065         (WebCore::AccessibilityObject::lengthForVisiblePositionRange):
3066         (WebCore::AccessibilityObject::actionVerb):
3067         * accessibility/AccessibilityObject.h:
3068         (WebCore::PlainTextRange::isNull):
3069         (WebCore::AccessibilityObject::isAccessibilityRenderObject):
3070         (WebCore::AccessibilityObject::isAnchor):
3071         (WebCore::AccessibilityObject::isAttachment):
3072         (WebCore::AccessibilityObject::isHeading):
3073         (WebCore::AccessibilityObject::isLink):
3074         (WebCore::AccessibilityObject::isImage):
3075         (WebCore::AccessibilityObject::isNativeImage):
3076         (WebCore::AccessibilityObject::isImageButton):
3077         (WebCore::AccessibilityObject::isPasswordField):
3078         (WebCore::AccessibilityObject::isTextControl):
3079         (WebCore::AccessibilityObject::isNativeTextControl):
3080         (WebCore::AccessibilityObject::isWebArea):
3081         (WebCore::AccessibilityObject::isCheckboxOrRadio):
3082         (WebCore::AccessibilityObject::isListBox):
3083         (WebCore::AccessibilityObject::isFileUploadButton):
3084         (WebCore::AccessibilityObject::isProgressIndicator):
3085         (WebCore::AccessibilityObject::isSlider):
3086         (WebCore::AccessibilityObject::isControl):
3087         (WebCore::AccessibilityObject::isList):
3088         (WebCore::AccessibilityObject::isDataTable):
3089         (WebCore::AccessibilityObject::isTableRow):
3090         (WebCore::AccessibilityObject::isTableColumn):
3091         (WebCore::AccessibilityObject::isTableCell):
3092         (WebCore::AccessibilityObject::isFieldset):
3093         (WebCore::AccessibilityObject::isGroup):
3094         (WebCore::AccessibilityObject::isChecked):
3095         (WebCore::AccessibilityObject::isEnabled):
3096         (WebCore::AccessibilityObject::isSelected):
3097         (WebCore::AccessibilityObject::isFocused):
3098         (WebCore::AccessibilityObject::isHovered):
3099         (WebCore::AccessibilityObject::isIndeterminate):
3100         (WebCore::AccessibilityObject::isLoaded):
3101         (WebCore::AccessibilityObject::isMultiSelect):
3102         (WebCore::AccessibilityObject::isOffScreen):
3103         (WebCore::AccessibilityObject::isPressed):
3104         (WebCore::AccessibilityObject::isReadOnly):
3105         (WebCore::AccessibilityObject::isVisited):
3106         (WebCore::AccessibilityObject::isRequired):
3107         (WebCore::AccessibilityObject::canSetFocusAttribute):
3108         (WebCore::AccessibilityObject::canSetTextRangeAttributes):
3109         (WebCore::AccessibilityObject::canSetValueAttribute):
3110         (WebCore::AccessibilityObject::hasIntValue):
3111         (WebCore::AccessibilityObject::accessibilityShouldUseUniqueId):
3112         (WebCore::AccessibilityObject::accessibilityIsIgnored):
3113         * accessibility/AccessibilityRenderObject.cpp:
3114         (WebCore::AccessibilityRenderObject::parentObjectIfExists):
3115         (WebCore::AccessibilityRenderObject::parentObject):
3116         (WebCore::AccessibilityRenderObject::isMenuRelated):
3117         (WebCore::AccessibilityRenderObject::accessibilityDescription):
3118         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
3119         (WebCore::AccessibilityRenderObject::isFocused):
3120         (WebCore::AccessibilityRenderObject::visiblePositionRangeForLine):
3121         (WebCore::AccessibilityRenderObject::setSelectedVisiblePositionRange):
3122         (WebCore::AccessibilityRenderObject::doAXRangeForLine):
3123         (WebCore::AccessibilityRenderObject::doAXStringForRange):
3124         (WebCore::AccessibilityRenderObject::accessibilityImageMapHitTest):
3125         (WebCore::AccessibilityRenderObject::determineAriaRoleAttribute):
3126         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
3127         (WebCore::AccessibilityRenderObject::isPresentationalChildOfAriaRole):
3128         (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
3129         (WebCore::AccessibilityRenderObject::canHaveChildren):
3130         (WebCore::AccessibilityRenderObject::actionVerb):
3131         (WebCore::shouldReturnTagNameAsRoleForMSAA):
3132         * accessibility/AccessibilityRenderObject.h:
3133         (WebCore::AccessibilityRenderObject::isAccessibilityRenderObject):
3134         * accessibility/AccessibilitySlider.cpp:
3135         (WebCore::AccessibilitySlider::orientation):
3136         * accessibility/AccessibilitySlider.h:
3137         (WebCore::AccessibilitySlider::~AccessibilitySlider):
3138         (WebCore::AccessibilitySlider::roleValue):
3139         (WebCore::AccessibilitySlider::accessibilityIsIgnored):
3140         (WebCore::AccessibilitySlider::isSlider):
3141         (WebCore::AccessibilitySlider::canSetValueAttribute):
3142         (WebCore::AccessibilitySliderThumb::~AccessibilitySliderThumb):
3143         (WebCore::AccessibilitySliderThumb::roleValue):
3144         (WebCore::AccessibilitySliderThumb::accessibilityIsIgnored):
3145         (WebCore::AccessibilitySliderThumb::setParentObject):
3146         (WebCore::AccessibilitySliderThumb::parentObject):
3147         * accessibility/AccessibilityTable.cpp:
3148         (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
3149         * accessibility/AccessibilityTableColumn.cpp:
3150         * accessibility/AccessibilityTableHeaderContainer.cpp:
3151         (WebCore::AccessibilityTableHeaderContainer::addChildren):
3152         * accessibility/AccessibilityTableRow.cpp:
3153         * accessibility/mac/AccessibilityObjectWrapper.h:
3154
3155 2009-11-02  Darin Fisher  <darin@chromium.org>
3156
3157         Fixing JSC build bustage.
3158
3159         * bindings/js/ScriptController.cpp: Added missing #include
3160
3161 2009-10-30  Darin Fisher  <darin@chromium.org>
3162
3163         Reviewed by Adam Barth.
3164
3165         Give the FrameLoaderClient the ability to override Settings::isJavaScriptEnabled.
3166         https://bugs.webkit.org/show_bug.cgi?id=30967
3167
3168         * bindings/js/ScriptController.cpp:
3169         (WebCore::ScriptController::isEnabled):
3170         * bindings/v8/ScriptController.cpp:
3171         (WebCore::ScriptController::isEnabled):
3172         * bindings/v8/V8Proxy.cpp: Move implementation of isEnabled to ScriptController
3173         * bindings/v8/V8Proxy.h: Ditto
3174         * loader/FrameLoaderClient.h:
3175         (WebCore::FrameLoaderClient::allowJavaScript):
3176         * platform/chromium/ChromiumBridge.h: Delete uiResourceProtocol function
3177
3178 2009-11-02  Brady Eidson  <beidson@apple.com>
3179
3180         Rubberstamped by Mark Rowe.
3181
3182         Fix a typo in Mark's last commit.
3183
3184         * loader/archive/ArchiveFactory.cpp:
3185         (WebCore::archiveMIMETypes):
3186
3187 2009-11-02  Mark Rowe  <mrowe@apple.com>
3188
3189         Rubber-stamped by Brady Eidson.
3190
3191         Re-enable support for web archives on Windows.  It was mistakenly disabled in r50438.
3192
3193         * loader/archive/ArchiveFactory.cpp:
3194         (WebCore::archiveMIMETypes):
3195
3196 2009-11-02  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
3197
3198         Reviewed by Darin Adler.
3199
3200         PLATFORM(CF) should be set when building for Qt on Darwin
3201         https://bugs.webkit.org/show_bug.cgi?id=23671
3202
3203         * WebCore.pro: Add SharedBufferCF.cpp and SmartReplaceCF.cpp
3204         to the Darwin build.
3205         * loader/archive/ArchiveFactory.cpp: Change the support for 
3206         legacy WebArchive from all CF platforms to Mac and Chromium 
3207         CF platforms.
3208         (WebCore::archiveMIMETypes):
3209         * platform/text/AtomicString.h: Remove PLATFORM(QT) &&
3210         PLATFORM(DARWIN) test as it is redundant now.
3211         * platform/text/PlatformString.h: Ditto.
3212         * platform/text/StringImpl.h: Ditto.
3213         * platform/text/cf/StringCF.cpp: Ditto.
3214         * platform/text/cf/StringImplCF.cpp: Ditto.
3215
3216 2009-11-02  Adam Barth  <abarth@webkit.org>
3217
3218         Reviewed by David Levin.
3219
3220         [Chromium] Actually declare getPluginMimeTypeFromExtension in a header.
3221         https://bugs.webkit.org/show_bug.cgi?id=30985
3222
3223         Our current code does not conform to our style guide.
3224
3225         * WebCore.gyp/WebCore.gyp:
3226         * WebCore.gypi:
3227         * platform/chromium/MIMETypeRegistryChromium.cpp:
3228         * plugins/chromium/PluginDataChromium.cpp:
3229         * plugins/chromium/PluginDataChromium.h: Added.
3230
3231 2009-11-02  Adele Peterson  <adele@apple.com>
3232
3233         Reviewed by Darin Adler.
3234
3235         Fix for <rdar://problem/7038305> REGRESSION (Safari 4.0.2 - ToT): After navigating back to a known phishy page, the "Ignore warning" button appears highlighted (along with the "Go Back" button)
3236
3237         This bug is timing dependent, and not always reproducible.  I could not think of a way to add a 
3238         layout test that would demonstrate the problem and fix.
3239
3240         * platform/mac/ThemeMac.mm:
3241         (WebCore::checkbox): Update style.
3242         (WebCore::paintCheckbox): ditto.
3243         (WebCore::radio): ditto.
3244         (WebCore::paintRadio): ditto.
3245         (WebCore::setupButtonCell): Added convenience method.
3246         (WebCore::button): Use a separate NSButtonCell for defaultButtons and regular buttons.
3247         (WebCore::paintButton): Don't check for the key window here.  Consider that when deciding if the button should have the default style in RenderTheme.
3248         * rendering/RenderTheme.cpp: (WebCore::RenderTheme::isDefault): Only consider a button to be default if the page is active.  This fixes 
3249         a problem I noticed where the button would flicker crazily if the page with the default button was in the background.
3250
3251 2009-11-02  Dan Bernstein  <mitz@apple.com>
3252
3253         Reviewed by Anders Carlsson.
3254
3255         Minor RenderWidget clean-up in preparation for deferring widget tree
3256         mutation when it is not safe.
3257
3258         * rendering/RenderWidget.cpp:
3259         (WebCore::RenderWidget::RenderWidget): Initialize m_refCount to 1
3260         instead of calling ref().
3261         (WebCore::RenderWidget::destroy): Call setWidget(0) instead of
3262         repeating what it does.
3263         (WebCore::RenderWidget::setWidgetGeometry): Now returns a boolean
3264         indicating whether the bounds have changed.
3265         (WebCore::RenderWidget::setWidget): Replaced all-encompassing if
3266         statement with an early return.
3267         (WebCore::RenderWidget::updateWidgetPosition): Call setWidgetGeometry().
3268         * rendering/RenderWidget.h:
3269
3270 2009-11-02  Dumitru Daniliuc  <dumi@chromium.org>
3271
3272         Reviewed by Dimitri Glazkov.
3273
3274         Adding Chromium's DatabaseTracker and SQLTransactionClient
3275         implementations.
3276
3277         https://bugs.webkit.org/show_bug.cgi?id=30701
3278
3279         * storage/chromium: Added.
3280         * storage/chromium/DatabaseObserver.h: Added.
3281         * storage/chromium/DatabaseTrackerChromium.cpp: Added.
3282         * storage/chromium/QuotaTracker.cpp: Added.
3283         * storage/chromium/QuotaTracker.h: Added.
3284         * storage/chromium/SQLTransactionClientChromium.cpp: Added.
3285
3286 2009-11-02  Enrica Casucci  <enrica@apple.com>
3287
3288         Reviewed by Adele Peterson and Dan Bernstein.
3289
3290         Safari crashes when calling execCommand on formatted html in special case
3291         <rdar://problem/7318656>
3292         https://bugs.webkit.org/show_bug.cgi?id=31023
3293
3294         Test: editing/execCommand/align-in-span.html
3295
3296         * rendering/RenderObject.cpp:
3297         (WebCore::RenderObject::containingBlock): Modified comment on containingBlock returning NULL.
3298         * rendering/RenderText.cpp:
3299         (WebCore::RenderText::setSelectionState): Added check for NULL return from containingBlock,
3300         since it is possible when dealing with orphaned trees.
3301
3302 2009-11-02  Chris Marrin  <cmarrin@apple.com>
3303
3304         Reviewed by Oliver Hunt.
3305
3306         Exception checks were being too aggressive
3307         https://bugs.webkit.org/show_bug.cgi?id=31005
3308
3309         Several calls in CanvasRenderingContext3D are allowed to
3310         have a null value passed, which indicated that the 
3311         object is being unbound. Handle this case and the corresponding
3312         null handling in GraphicsContext3DMac.
3313
3314         * html/canvas/CanvasRenderingContext3D.cpp:
3315         (WebCore::CanvasRenderingContext3D::bindBuffer):
3316         (WebCore::CanvasRenderingContext3D::bindFramebuffer):
3317         (WebCore::CanvasRenderingContext3D::bindRenderbuffer):
3318         (WebCore::CanvasRenderingContext3D::bindTexture):
3319         (WebCore::CanvasRenderingContext3D::framebufferRenderbuffer):
3320         (WebCore::CanvasRenderingContext3D::framebufferTexture2D):
3321         * platform/graphics/mac/GraphicsContext3DMac.cpp:
3322         (WebCore::GraphicsContext3D::framebufferRenderbuffer):
3323         (WebCore::GraphicsContext3D::framebufferTexture2D):
3324
3325 2009-11-02  Patrick Mueller  <Patrick_Mueller@us.ibm.com>
3326
3327         Reviewed by Timothy Hatcher.
3328
3329         Each JS execution in console adds extra item into "scripts" combo
3330         https://bugs.webkit.org/show_bug.cgi?id=30212
3331
3332         Added manual test
3333
3334         * inspector/front-end/ScriptsPanel.js:
3335         (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
3336         * manual-tests/inspector/hidden-evals.html: Added.
3337
3338 2009-11-02  Kelly Norton  <knorton@google.com>
3339
3340         Reviewed by Timothy Hatcher.
3341
3342         Adds a missed case for InspectorTimeline, DOMWindow dispatch of DOM events.
3343         https://bugs.webkit.org/show_bug.cgi?id=31030
3344
3345         * dom/Node.cpp:
3346         (WebCore::eventHasListeners): Checks DOMWindow for listeners.
3347         (WebCore::Node::dispatchGenericEvent):
3348
3349 2009-11-02  Dmitry Titov  <dimich@chromium.org>
3350
3351         Reviewed by David Levin.
3352
3353         Remove threadsafe refcounting from tasks used with WTF::MessageQueue.
3354         https://bugs.webkit.org/show_bug.cgi?id=30612
3355
3356         No new tests since no new functionality. Storage, MessagePorts and Workers tests cover this.
3357
3358         There are a lot of files but most changes are simply replace RefPtr and PassRefPtr with
3359         OwnPtr and PassOwnPtr when dealing with Tasks.
3360
3361         ScriptExecutionContext::Task, DatabaseTask and WorkerRunLoop::Task are no longer
3362         threadsafe refcounted, but simply Noncopyable.
3363
3364         * dom/Document.cpp:
3365         (WebCore::ScriptExecutionContextTaskTimer::ScriptExecutionContextTaskTimer):
3366         (WebCore::PerformTaskContext::PerformTaskContext):
3367         (WebCore::Document::postTask):
3368         * dom/Document.h:
3369         * dom/ScriptExecutionContext.cpp:
3370         (WebCore::ProcessMessagesSoonTask::create):
3371         * dom/ScriptExecutionContext.h:
3372         * dom/default/PlatformMessagePortChannel.cpp:
3373         (WebCore::PlatformMessagePortChannel::tryGetMessageFromRemote):
3374         * dom/default/PlatformMessagePortChannel.h:
3375         (WebCore::PlatformMessagePortChannel::MessagePortQueue::tryGetMessage):
3376         (WebCore::PlatformMessagePortChannel::MessagePortQueue::appendAndCheckEmpty):
3377         * loader/FrameLoader.cpp:
3378         (WebCore::HashChangeEventTask::create):
3379         * loader/appcache/ApplicationCacheGroup.cpp:
3380         (WebCore::CallCacheListenerTask::create):
3381         * storage/Database.cpp:
3382         (WebCore::Database::openAndVerifyVersion):
3383         (WebCore::Database::markAsDeletedAndClose):
3384         (WebCore::Database::scheduleTransaction):
3385         (WebCore::Database::scheduleTransactionStep):
3386         (WebCore::Database::tableNames):
3387         * storage/DatabaseTask.h:
3388         (WebCore::DatabaseOpenTask::create):
3389         (WebCore::DatabaseCloseTask::create):
3390         (WebCore::DatabaseTransactionTask::create):
3391         (WebCore::DatabaseTableNamesTask::create):
3392         * storage/DatabaseThread.cpp:
3393         (WebCore::DatabaseThread::databaseThread):
3394         (WebCore::DatabaseThread::scheduleTask):
3395         (WebCore::DatabaseThread::scheduleImmediateTask):
3396         (WebCore::SameDatabasePredicate::operator()):
3397         * storage/DatabaseThread.h:
3398         * storage/LocalStorageTask.h:
3399         (WebCore::LocalStorageTask::createImport):
3400         (WebCore::LocalStorageTask::createSync):
3401         (WebCore::LocalStorageTask::createTerminate):
3402         * storage/LocalStorageThread.cpp:
3403         (WebCore::LocalStorageThread::localStorageThread):
3404         * storage/LocalStorageThread.h:
3405         * websockets/WebSocket.cpp:
3406         (WebCore::ProcessWebSocketEventTask::create):
3407         * workers/DefaultSharedWorkerRepository.cpp:
3408         (WebCore::SharedWorkerProxy::postTaskToLoader):
3409         (WebCore::SharedWorkerProxy::postTaskForModeToWorkerContext):
3410         (WebCore::SharedWorkerConnectTask::create):
3411         * workers/GenericWorkerTask.h:
3412         (WebCore::GenericWorkerTask1::create):
3413         (WebCore::GenericWorkerTask2::create):
3414         (WebCore::GenericWorkerTask3::create):
3415         (WebCore::GenericWorkerTask4::create):
3416         (WebCore::GenericWorkerTask5::create):
3417         (WebCore::GenericWorkerTask6::create):
3418         (WebCore::GenericWorkerTask7::create):
3419         (WebCore::GenericWorkerTask8::create):
3420         (WebCore::createCallbackTask):
3421         * workers/WorkerContext.cpp:
3422         (WebCore::WorkerContext::postTask):
3423         * workers/WorkerContext.h:
3424         * workers/WorkerLoaderProxy.h:
3425         * workers/WorkerMessagingProxy.cpp:
3426         (WebCore::MessageWorkerContextTask::create):
3427         (WebCore::MessageWorkerTask::create):
3428         (WebCore::WorkerExceptionTask::create):
3429         (WebCore::WorkerContextDestroyedTask::create):
3430         (WebCore::WorkerTerminateTask::create):
3431         (WebCore::WorkerThreadActivityReportTask::create):
3432         (WebCore::WorkerMessagingProxy::postTaskForModeToWorkerContext):
3433         (WebCore::WorkerMessagingProxy::postTaskToLoader):
3434         (WebCore::WorkerMessagingProxy::workerThreadCreated):
3435         * workers/WorkerMessagingProxy.h:
3436         * workers/WorkerRunLoop.cpp:
3437         (WebCore::ModePredicate::operator()):
3438         (WebCore::WorkerRunLoop::runInMode):
3439         (WebCore::WorkerRunLoop::postTask):
3440         (WebCore::WorkerRunLoop::postTaskForMode):
3441         (WebCore::WorkerRunLoop::Task::create):
3442         (WebCore::WorkerRunLoop::Task::performTask):
3443         (WebCore::WorkerRunLoop::Task::Task):
3444         * workers/WorkerRunLoop.h:
3445         (WebCore::WorkerRunLoop::Task::~Task):
3446         (WebCore::WorkerRunLoop::Task::mode):
3447
3448 2009-11-02  Philippe Normand  <pnormand@igalia.com>
3449
3450         Reviewed by Jan Alonzo.
3451
3452         [GTK] Failing media/video-played-reset.html
3453         https://bugs.webkit.org/show_bug.cgi?id=30589
3454
3455         new m_seekTime attribute to keep track of the seek position
3456
3457         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
3458         (WebCore::MediaPlayerPrivate::currentTime):
3459         (WebCore::MediaPlayerPrivate::seek):
3460         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
3461
3462 2009-11-02  Xan Lopez  <xlopez@igalia.com>
3463
3464         Reviewed by Jan Alonzo.
3465
3466         [GTK] Remove Referer when redirecting to non-secure site
3467         https://bugs.webkit.org/show_bug.cgi?id=31021
3468
3469         Remove referer from HTTP headers when redirecting to a non-secure
3470         site.
3471
3472         * platform/network/soup/ResourceHandleSoup.cpp:
3473         (WebCore::restartedCallback):
3474
3475 2009-11-02  Alexey Proskuryakov  <ap@apple.com>
3476
3477         Reviewed by Dan Bernstein.
3478
3479         https://bugs.webkit.org/show_bug.cgi?id=18539
3480         multipart/form-data not being parsed correctly on server due to '+' in boundary string
3481
3482         No test - the characters that the boundary is made of are not deterministic.
3483
3484         * platform/network/FormDataBuilder.cpp: (WebCore::FormDataBuilder::generateUniqueBoundaryString):
3485         Don't ever put a '+' in boundary string, either. Removed a FIXME to bring '/' back once
3486         GMail is fixed - I don't think we'll ever want to allow non-alphanumeric characters, as
3487         they cause problems on many web sites.
3488
3489 2009-10-30  Alexey Proskuryakov  <ap@apple.com>
3490
3491         Reviewed by Darin Adler.
3492
3493         https://bugs.webkit.org/show_bug.cgi?id=30969
3494         A no-prefix XPath node test should not match no-namespace elements in HTML document
3495
3496         Test: fast/xpath/null-namespace-in-html.html
3497
3498         * xml/XPathStep.cpp: (WebCore::XPath::nodeMatchesBasicTest): Special case non-HTML elements
3499         in HTML documents (as these are the ones that can have null namespace).
3500
3501 2009-11-02  Pavel Feldman  <pfeldman@chromium.org>
3502
3503         Reviewed by Timothy Hatcher.
3504
3505         Web Inspector: [REGRESSION] No timeline marks on resources panel.
3506
3507         https://bugs.webkit.org/show_bug.cgi?id=31013
3508
3509         * inspector/front-end/AbstractTimelinePanel.js:
3510         (WebInspector.AbstractTimelinePanel.prototype.updateGraphDividersIfNeeded):
3511
3512 2009-11-02  David Levin  <levin@chromium.org>
3513
3514         Reviewed by Dan Bernstein.
3515
3516         Possible crash in RenderSlider::layout.
3517         https://bugs.webkit.org/show_bug.cgi?id=31016
3518
3519         Fix out of place line of code.
3520
3521         Test: scrollbars/overflow-scrollbar-combinations.html
3522         This crash only seems to repro when WebKit draws the play controls,
3523         so the crash repros in chromium running this test but not WebKit
3524         nightlies which use QuickTime to draw the controls.
3525
3526         * rendering/RenderSlider.cpp:
3527         (WebCore::RenderSlider::layout):
3528
3529 2009-11-02  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
3530
3531         Reviewed by Tor Arne Vestbø.
3532
3533         [Qt] Fix Qt build on Windows.
3534         https://bugs.webkit.org/show_bug.cgi?id=30905
3535
3536         * WebCore.pro:
3537         * platform/graphics/BitmapImage.h:
3538         * platform/graphics/qt/ImageQt.cpp:
3539         (WebCore::BitmapImage::BitmapImage):
3540         (WebCore::BitmapImage::create):
3541
3542 2009-11-02  Jedrzej Nowacki  <jedrzej.nowacki@nokia.com>
3543
3544         Reviewed by Adam Barth.
3545
3546         QWebView crash fix.
3547
3548         The QWebView should not crash if the stop() method is called from
3549         a function triggered by the loadProgress signal.
3550
3551         A null pointer protection was added in the ProgressTracker::incrementProgress.
3552
3553         New autotest was created.
3554
3555         https://bugs.webkit.org/show_bug.cgi?id=29425
3556
3557         * loader/ProgressTracker.cpp:
3558         (WebCore::ProgressTracker::incrementProgress):
3559
3560 2009-11-02  Mikhail Naganov  <mnaganov@chromium.org>
3561
3562         Reviewed by Pavel Feldman.
3563
3564         Fix a leftover from profiles panel generalization.
3565
3566         https://bugs.webkit.org/show_bug.cgi?id=31010
3567
3568         * inspector/front-end/ProfilesPanel.js:
3569         (WebInspector.ProfilesPanel.prototype.get searchableViews):
3570
3571 2009-11-02  Kai Koehne  <kai.koehne@nokia.com>
3572
3573         Reviewed by Holger Freyther.
3574
3575         Remove implementation of ImageDecocerQt::clearFrameBufferCache.
3576         The implementation was buggy, and will visually break repeating
3577         animations anyway.
3578
3579         https://bugs.webkit.org/show_bug.cgi?id=31009
3580
3581         * platform/graphics/qt/ImageDecoderQt.cpp:
3582         (WebCore::ImageDecoderQt::clearFrameBufferCache):
3583
3584 2009-11-02  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
3585
3586         Reviewed by Jan Alonzo.
3587
3588         https://bugs.webkit.org/show_bug.cgi?id=30964
3589         [Gtk] Implemment AtkDocument
3590
3591         Provides access to the reported content language.
3592
3593         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
3594         (webkit_accessible_document_get_locale):
3595
3596 2009-11-02  Keishi Hattori  <casey.hattori@gmail.com>
3597
3598         Reviewed by Timothy Hatcher.
3599
3600         Web Inspector: Rewrite CSSSourceSyntaxHighlighter so it shares more code
3601         https://bugs.webkit.org/show_bug.cgi?id=30907
3602
3603         Test: inspector/css-syntax-highlight.html
3604
3605         * inspector/front-end/ElementsTreeOutline.js:
3606         * inspector/front-end/SourceFrame.js:
3607         (WebInspector.SourceFrame.prototype.syntaxHighlightCSS):
3608         (WebInspector.SourceSyntaxHighlighter):
3609         (WebInspector.SourceSyntaxHighlighter.prototype.process.processChunk):
3610         (WebInspector.SourceSyntaxHighlighter.prototype.process.moveToNextLine):
3611         (WebInspector.SourceSyntaxHighlighter.prototype.process):
3612         (WebInspector.SourceSyntaxHighlighter.prototype.lex):
3613         (WebInspector.SourceSyntaxHighlighter.prototype.appendNonToken):
3614         (WebInspector.SourceSyntaxHighlighter.prototype.syntaxHighlightNode):
3615         (WebInspector.CSSSourceSyntaxHighlighter):
3616         * inspector/front-end/inspectorSyntaxHighlight.css:
3617
3618 2009-11-02  Chris Fleizach  <cfleizach@apple.com>
3619
3620         Reviewed by Beth Dakin.
3621
3622         Support ARIA "tab" roles
3623         https://bugs.webkit.org/show_bug.cgi?id=30842
3624
3625         Implement support for ARIA "tab", "tabpanel" and "tablist".
3626         As a consequence, we also needed to implement aria-selected
3627         and aria-controls.
3628
3629         Tests: accessibility/aria-controls-with-tabs.html
3630                accessibility/aria-tab-roles.html
3631
3632         * accessibility/AXObjectCache.cpp:
3633         * accessibility/AccessibilityObject.h:
3634         * accessibility/AccessibilityRenderObject.cpp:
3635         * accessibility/AccessibilityRenderObject.h:
3636         * accessibility/mac/AccessibilityObjectWrapper.mm: