2010-10-13 Sergio Villar Senin <svillar@igalia.com>
[WebKit-https.git] / WebCore / ChangeLog
1 2010-10-13  Sergio Villar Senin  <svillar@igalia.com>
2
3         Reviewed by Martin Robinson.
4
5         [GTK] Add HTTP caching support
6         https://bugs.webkit.org/show_bug.cgi?id=44261
7
8         This patch adds HTTP caching support to libsoup networking backend.
9         This code will eventually be part of libsoup, but has been temporarily
10         imported into the WebCore tree for testing purposes. All libsoup code
11         is located in WebCore/platform/network/soup/cache. The webkit prefix
12         was added to all the symbols to prevent problems when this lands in
13         libsoup. Some external API was also added under webkit/ directory and
14         will be used by library clients to enable HTTP caching.
15
16         There are two parts to this imported code, the first one is the code
17         under WebCore/platform/network/soup/cache/ that contains all the
18         SoupURILoader code that supports the development of the cache. The
19         second part is the HTTP cache implementation located in
20         WebCore/platform/network/soup/cache/webkit/.
21
22         * GNUmakefile.am:
23         * platform/network/soup/cache/soup-directory-input-stream.c: Added.
24         (webkit_soup_directory_input_stream_parse_info):
25         (webkit_soup_directory_input_stream_read_next_file):
26         (webkit_soup_directory_input_stream_read):
27         (webkit_soup_directory_input_stream_close):
28         (webkit_soup_directory_input_stream_class_init):
29         (webkit_soup_directory_input_stream_init):
30         (webkit_soup_directory_input_stream_new):
31         * platform/network/soup/cache/soup-directory-input-stream.h: Added.
32         * platform/network/soup/cache/soup-http-input-stream.c: Added.
33         (webkit_soup_http_input_stream_finalize):
34         (webkit_soup_http_input_stream_class_init):
35         (webkit_soup_http_input_stream_seekable_iface_init):
36         (webkit_soup_http_input_stream_init):
37         (webkit_soup_http_input_stream_queue_message):
38         (webkit_soup_http_input_stream_new):
39         (webkit_soup_http_input_stream_got_headers):
40         (webkit_soup_http_input_stream_got_chunk):
41         (webkit_soup_http_input_stream_finished):
42         (webkit_soup_http_input_stream_cancelled):
43         (webkit_soup_http_input_stream_prepare_for_io):
44         (webkit_soup_http_input_stream_done_io):
45         (set_error_if_http_failed):
46         (read_from_leftover):
47         (webkit_soup_http_input_stream_send_internal):
48         (send_sync_finished):
49         (webkit_soup_http_input_stream_send):
50         (webkit_soup_http_input_stream_read):
51         (webkit_soup_http_input_stream_close):
52         (wrapper_callback):
53         (send_async_thread):
54         (webkit_soup_http_input_stream_send_async_in_thread):
55         (send_async_finished):
56         (webkit_soup_http_input_stream_send_async_internal):
57         (webkit_soup_http_input_stream_send_async):
58         (webkit_soup_http_input_stream_send_finish):
59         (read_async_done):
60         (webkit_soup_http_input_stream_read_async):
61         (webkit_soup_http_input_stream_read_finish):
62         (webkit_soup_http_input_stream_close_async):
63         (webkit_soup_http_input_stream_close_finish):
64         (webkit_soup_http_input_stream_tell):
65         (webkit_soup_http_input_stream_can_seek):
66         (webkit_soup_http_input_stream_seek):
67         (webkit_soup_http_input_stream_can_truncate):
68         (webkit_soup_http_input_stream_truncate):
69         (webkit_soup_http_input_stream_get_message):
70         * platform/network/soup/cache/soup-http-input-stream.h: Added.
71         * platform/network/soup/cache/soup-request-data.c: Added.
72         (webkit_soup_request_data_init):
73         (webkit_soup_request_data_finalize):
74         (webkit_soup_request_data_check_uri):
75         (uri_decoded_copy):
76         (webkit_soup_request_data_send):
77         (webkit_soup_request_data_get_content_length):
78         (webkit_soup_request_data_get_content_type):
79         (webkit_soup_request_data_class_init):
80         * platform/network/soup/cache/soup-request-data.h: Added.
81         * platform/network/soup/cache/soup-request-file.c: Added.
82         (webkit_soup_request_file_get_file):
83         (webkit_soup_request_file_init):
84         (webkit_soup_request_file_finalize):
85         (webkit_soup_request_file_check_uri):
86         (webkit_soup_request_file_ftp_main_loop_quit):
87         (webkit_soup_request_file_ensure_file_ftp):
88         (webkit_soup_request_file_ensure_file):
89         (webkit_soup_request_file_send):
90         (webkit_soup_request_file_send_async_thread):
91         (webkit_soup_request_file_send_async):
92         (webkit_soup_request_file_send_finish):
93         (webkit_soup_request_file_get_content_length):
94         (webkit_soup_request_file_get_content_type):
95         (webkit_soup_request_file_class_init):
96         * platform/network/soup/cache/soup-request-file.h: Added.
97         * platform/network/soup/cache/soup-request-http.c: Added.
98         (webkit_soup_request_http_get_message):
99         (webkit_soup_request_http_init):
100         (webkit_soup_request_http_check_uri):
101         (webkit_soup_request_http_finalize):
102         (webkit_soup_request_http_send):
103         (sent_async):
104         (conditional_get_ready_cb):
105         (send_async_cb):
106         (webkit_soup_request_http_send_async):
107         (webkit_soup_request_http_send_finish):
108         (webkit_soup_request_http_get_content_length):
109         (webkit_soup_request_http_get_content_type):
110         (webkit_soup_request_http_class_init):
111         * platform/network/soup/cache/soup-request-http.h: Added.
112         * platform/network/soup/cache/soup-request.c: Added.
113         (webkit_soup_request_init):
114         (webkit_soup_request_finalize):
115         (webkit_soup_request_set_property):
116         (webkit_soup_request_get_property):
117         (webkit_soup_request_initable_init):
118         (webkit_soup_request_default_check_uri):
119         (webkit_soup_request_default_send_async):
120         (webkit_soup_request_default_send_finish):
121         (webkit_soup_request_send):
122         (webkit_soup_request_send_async):
123         (webkit_soup_request_send_finish):
124         (webkit_soup_request_class_init):
125         (webkit_soup_request_initable_interface_init):
126         (webkit_soup_request_get_uri):
127         (webkit_soup_request_get_session):
128         (webkit_soup_request_get_content_length):
129         (webkit_soup_request_get_content_type):
130         * platform/network/soup/cache/soup-request.h: Added.
131         * platform/network/soup/cache/soup-requester.c: Added.
132         (webkit_soup_requester_init):
133         (finalize):
134         (webkit_soup_requester_class_init):
135         (init_request_types):
136         (webkit_soup_requester_new):
137         (webkit_soup_requester_request):
138         (webkit_soup_requester_request_uri):
139         (webkit_soup_scheme_is_valid):
140         (webkit_soup_requester_add_protocol):
141         (webkit_soup_requester_remove_protocol):
142         (webkit_soup_error_quark):
143         * platform/network/soup/cache/soup-requester.h: Added.
144         * platform/network/soup/cache/webkit/soup-cache-private.h: Added.
145         * platform/network/soup/cache/webkit/soup-cache.c: Added.
146         (get_cacheability):
147         (webkit_soup_cache_entry_free):
148         (copy_headers):
149         (update_headers):
150         (webkit_soup_cache_entry_get_current_age):
151         (webkit_soup_cache_entry_is_fresh_enough):
152         (webkit_soup_message_get_cache_key):
153         (webkit_soup_cache_entry_set_freshness):
154         (webkit_soup_cache_entry_new):
155         (webkit_soup_cache_writing_fixture_free):
156         (close_ready_cb):
157         (write_ready_cb):
158         (msg_got_chunk_cb):
159         (msg_got_body_cb):
160         (webkit_soup_cache_entry_delete):
161         (lru_compare_func):
162         (cache_accepts_entries_of_size):
163         (make_room_for_new_entry):
164         (webkit_soup_cache_entry_insert_by_key):
165         (msg_restarted_cb):
166         (append_to_ready_cb):
167         (msg_got_headers_cb):
168         (webkit_soup_cache_send_response):
169         (request_started):
170         (attach):
171         (webkit_soup_cache_session_feature_init):
172         (webkit_soup_cache_init):
173         (webkit_soup_cache_finalize):
174         (webkit_soup_cache_set_property):
175         (webkit_soup_cache_get_property):
176         (webkit_soup_cache_constructed):
177         (webkit_soup_cache_type_get_type):
178         (webkit_soup_cache_class_init):
179         (webkit_soup_cache_new):
180         (webkit_soup_cache_has_response):
181         (webkit_soup_cache_get_cacheability):
182         (force_flush_timeout):
183         (webkit_soup_cache_flush):
184         (remove_cache_item):
185         (webkit_soup_cache_clear):
186         (webkit_soup_cache_generate_conditional_request):
187         (pack_entry):
188         (webkit_soup_cache_dump):
189         (webkit_soup_cache_load):
190         (webkit_soup_cache_set_max_size):
191         (webkit_soup_cache_get_max_size):
192         * platform/network/soup/cache/webkit/soup-cache.h: Added.
193
194 2010-10-13  Gavin Barraclough  <barraclough@apple.com>
195
196         Chromium build fix.
197
198         * bindings/v8/ScriptProfiler.cpp:
199
200 2010-10-13  Chris Evans  <cevans@google.com>
201
202         Reviewed by Jian Li.
203
204         Blob / BlobBuilder can be put into bad state with wild integers and strings, due to integer overflows
205         https://bugs.webkit.org/show_bug.cgi?id=47382
206
207         Fix integer overflow errors in Blob.slice and BlobBuilder.append.
208
209         Test: fast/files/blob-slice-overflow.html
210
211         * fileapi/Blob.cpp:
212         (WebCore::Blob::slice): handle integer overflow properly.
213         * fileapi/BlobBuilder.cpp:
214         (WebCore::BlobBuilder::append): use correct type for vector length.
215
216 2010-10-13  Gavin Barraclough  <barraclough@apple.com>
217
218         Build fix - remove some redundant references to ScriptString.
219
220         * WebCore.gypi:
221         * WebCore.pro:
222         * bindings/v8/ScriptProfiler.cpp:
223
224 2010-10-13  Gavin Barraclough  <barraclough@apple.com>
225
226         Reviewed by Oliver Hunt.
227
228         Bug 47621 - Remove bindings/v8/ScriptString
229         This is now redundant.
230
231         * bindings/v8/ScriptCallFrame.h:
232         (WebCore::ScriptCallFrame::functionName):
233         * bindings/v8/ScriptFunctionCall.cpp:
234         * bindings/v8/ScriptFunctionCall.h:
235         * bindings/v8/ScriptString.h: Removed.
236         * bindings/v8/ScriptStringImpl.cpp: Removed.
237         * bindings/v8/ScriptStringImpl.h: Removed.
238
239 2010-10-13  Anders Carlsson  <andersca@apple.com>
240
241         Reviewed by John Sullivan.
242
243         Draw the find overlay holes
244         https://bugs.webkit.org/show_bug.cgi?id=47631
245
246         Export symbols needed by WebKit2.
247
248         * WebCore.exp.in:
249
250 2010-10-13  James Simonsen  <simonjam@chromium.org>
251
252         Reviewed by Darin Adler.
253
254         Implement onreadystatechange event handler for Documents
255         https://bugs.webkit.org/show_bug.cgi?id=26140
256
257         Test: fast/dom/Document/readystate.html
258
259         * dom/Document.cpp:
260         (WebCore::Document::setReadyState): Fire readystatechangeevent.
261         (WebCore::Document::open): Clear event listeners.
262         * dom/Document.h: Add readystatechange event.
263         * dom/Document.idl: Ditto.
264
265 2010-10-13  Chris Fleizach  <cfleizach@apple.com>
266
267         Reviewed by Beth Dakin.
268
269         AX: accessibilityIsIgnored not respected on ARIA tables
270         https://bugs.webkit.org/show_bug.cgi?id=47564
271
272         For platforms that ignore column headers and header container objects (everything
273         except Mac) on accessibility tables, that choice needs to be respected in 
274         ARIA tables as well.
275
276         GTK is the only open platform doing this, so I'll have to collect the result of this 
277         test. It was copied from table-hierarchy.html, but changed to use ARIA tables.
278
279         Test: platform/gtk/accessibility/aria-table-hierarchy.html
280
281         * accessibility/AccessibilityARIAGrid.cpp:
282         (WebCore::AccessibilityARIAGrid::addChildren):
283
284 2010-10-13  Victoria Kirst  <vrk@google.com>
285
286         Reviewed by James Robinson.
287
288         No longer ASSERT for LayerRenderer in VideoLayerChromium destructor
289         https://bugs.webkit.org/show_bug.cgi?id=47432
290
291         * platform/graphics/chromium/VideoLayerChromium.cpp:
292         (WebCore::VideoLayerChromium::cleanupResources):
293
294 2010-10-13  Leandro Pereira  <leandro@profusion.mobi>
295
296         [EFL] Unreviewed. Build fix.
297
298         * CMakeLists.txt: Add ContextShadow.cpp.
299         * CMakeListsEfl.txt: Add ContextShadowCairo.cpp.
300
301 2010-10-13  Martin Robinson  <mrobinson@igalia.com>
302
303         Reviewed by Holger Freyther.
304
305         [GTK] r69681 caused some tests to crash
306         https://bugs.webkit.org/show_bug.cgi?id=47622
307
308         Properly initialize m_layerContext on the ContextShadow so that in situations
309         where beginShadowLayer bails out early with a null return value, it is set
310         to null. This may happen when the first call to beginShadowLayer on a particular
311         ContextShadow uses a region which is entirely outside the clip region or which
312         is empty.
313
314         * platform/graphics/cairo/ContextShadow.cpp:
315         (WebCore::ContextShadow::ContextShadow): Properly initialize m_layerContext.
316
317 2010-10-13  Anders Carlsson  <andersca@apple.com>
318
319         Reviewed by Beth Dakin.
320
321         Don't set the fill/stroke colorspace before filling/stroking
322         https://bugs.webkit.org/show_bug.cgi?id=47619
323
324         Setting the colorspace has the side-effect of setting the color to black, which is
325         not what we want. When fill/stroke is called, a fill/stroke color should already have been set.
326
327         Pixel tests show no regressions from this change.
328
329         * platform/graphics/cg/GraphicsContextCG.cpp:
330         (WebCore::GraphicsContext::fillPath):
331         (WebCore::GraphicsContext::strokePath):
332         (WebCore::GraphicsContext::fillRect):
333         (WebCore::GraphicsContext::strokeRect):
334
335 2010-10-13  Brent Fulgham  <bfulgham@webkit.org>
336
337         Unreviewed WinCairo build fix.
338         New ContextShadow class not built for Windows builds.
339
340         * WebCore.vcproj/WebCore.vcproj: Add missing files for
341         building ContextShadow on WinCairo.
342         * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
343         Add missing include for ContextShadow definition.
344
345 2010-10-13  Gavin Barraclough  <barraclough@apple.com>
346
347         Chromium build fix pt1.
348
349         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
350         (WebCore::V8XMLHttpRequest::responseTextAccessorGetter):
351
352 2010-10-13  Anders Carlsson  <andersca@apple.com>
353
354         Reviewed by Sam Weinig.
355
356         Send over find indicator information to the UI process
357         https://bugs.webkit.org/show_bug.cgi?id=47612
358
359         Export symbols needed by WebKit2.
360
361         * WebCore.exp.in:
362
363 2010-10-13  Gavin Barraclough  <barraclough@apple.com>
364
365         Reviewed by Oliver Hunt.
366
367         https://bugs.webkit.org/show_bug.cgi?id=43987
368         Switch XMLHttpRequest, FileReader, and FileReaderSync to use a Stringbuilder
369         to construct their internal result string.  Remove ScriptString (this is now
370         redundant).
371
372         * WebCore.xcodeproj/project.pbxproj:
373         * bindings/js/JSDOMBinding.cpp:
374         (WebCore::jsOwnedStringOrNull):
375         * bindings/js/JSDOMBinding.h:
376         * bindings/js/JSXMLHttpRequestCustom.cpp:
377         (WebCore::JSXMLHttpRequest::responseText):
378         * bindings/js/ScriptCallFrame.cpp:
379         (WebCore::ScriptCallFrame::ScriptCallFrame):
380         * bindings/js/ScriptCallFrame.h:
381         (WebCore::ScriptCallFrame::functionName):
382         * bindings/js/ScriptCallStack.h:
383         * bindings/js/ScriptFunctionCall.cpp:
384         * bindings/js/ScriptFunctionCall.h:
385         * bindings/js/ScriptString.h: Removed.
386         * dom/ScriptExecutionContext.h:
387         * fileapi/FileReader.cpp:
388         (WebCore::FileReader::FileReader):
389         (WebCore::FileReader::abort):
390         (WebCore::FileReader::didReceiveData):
391         (WebCore::FileReader::result):
392         (WebCore::FileReader::convertToText):
393         (WebCore::FileReader::convertToDataURL):
394         * fileapi/FileReader.h:
395         * fileapi/FileReaderSync.cpp:
396         (WebCore::FileReaderSyncLoader::FileReaderSyncLoader):
397         (WebCore::FileReaderSyncLoader::didReceiveData):
398         (WebCore::FileReaderSync::readAsBinaryString):
399         (WebCore::FileReaderSync::readAsText):
400         (WebCore::FileReaderSync::readAsDataURL):
401         (WebCore::FileReaderSync::read):
402         (WebCore::FileReaderSync::convertToText):
403         * fileapi/FileReaderSync.h:
404         (WebCore::FileReaderSync::readAsText):
405         (WebCore::FileReaderSync::FileReaderSync):
406         * inspector/InspectorController.cpp:
407         (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
408         (WebCore::InspectorController::scriptImported):
409         * inspector/InspectorController.h:
410         * inspector/InspectorResource.cpp:
411         (WebCore::InspectorResource::setOverrideContent):
412         * inspector/InspectorResource.h:
413         * loader/FrameLoader.cpp:
414         * loader/FrameLoader.h:
415         * loader/FrameLoaderClient.h:
416         * loader/ResourceLoadNotifier.h:
417         * workers/WorkerScriptLoader.h:
418         * xml/XMLHttpRequest.cpp:
419         (WebCore::XMLHttpRequest::XMLHttpRequest):
420         (WebCore::XMLHttpRequest::responseText):
421         (WebCore::XMLHttpRequest::responseXML):
422         (WebCore::XMLHttpRequest::abort):
423         (WebCore::XMLHttpRequest::clearResponse):
424         (WebCore::XMLHttpRequest::dropProtection):
425         (WebCore::XMLHttpRequest::didFinishLoading):
426         (WebCore::XMLHttpRequest::didReceiveData):
427         * xml/XMLHttpRequest.h:
428
429 2010-10-13  Gavin Barraclough  <barraclough@apple.com>
430
431         Reviewed by Oliver Hunt.
432
433         Bug 43987 - Downloading using XHR is much slower than before
434
435         * svg/SVGPathStringBuilder.cpp:
436         (WebCore::SVGPathStringBuilder::result):
437             StringBuilder::size() -> StringBuilder::length().
438
439 2010-10-13  Yong Li  <yoli@rim.com>
440
441         Reviewed by Oliver Hunt.
442
443         Fix potential misaligned memory access in CloneDeserializer::readLittleEndian and readString
444         that can result crash on ARM (<v6).
445         https://bugs.webkit.org/show_bug.cgi?id=47594
446
447         No new test added, because the crash can be produced by existing tests like:
448         LayoutTests/fast/events/message-channel-gc-4.html
449
450         * bindings/js/SerializedScriptValue.cpp:
451         (WebCore::CloneDeserializer::readLittleEndian):
452         (WebCore::CloneDeserializer::readString):
453
454 2010-10-06  Martin Robinson  <mrobinson@igalia.com>
455
456         Reviewed by Dirk Schulze.
457
458         [Cairo] Activate ContextShadow in all places where shadows are drawn
459         https://bugs.webkit.org/show_bug.cgi?id=46475
460
461         Turn on ContextShadow for the Cairo port and remove all old shadow code.
462         Shadow tiling optimizations will be added in a followup patch to ContextShadowCairo.
463
464         * platform/graphics/GraphicsContext.h: Add a ContextShadow forward declaration for Cairo.
465         * platform/graphics/cairo/FontCairo.cpp: Switch to using ContextShadow.
466         (WebCore::prepareContextForGlyphDrawing): Added this helper which sets up the translation
467         on the specified cairo_t to prepare for drawing glyphs.
468         (WebCore::drawGlyphsToContext): Added this helper which draws the glyphs to a cairo_t,
469         while properly handling glyphs with synthetic bold.
470         (WebCore::Font::drawGlyphs): Removed old shadow code and replaced it with ContextShadow usage.
471         * platform/graphics/cairo/GraphicsContextCairo.cpp:
472         (WebCore::drawPathShadow): Modified this to use ContextShadow and to take an enum
473         argument specifying whether to fill or stroke the solid figure for the shadow.
474         (WebCore::fillCurrentCairoPath): Updated drawPathShadow call.
475         (WebCore::strokeCurrentCairoPath): Ditto.
476         (WebCore::GraphicsContext::savePlatformState): Save the ContextShadow.
477         (WebCore::GraphicsContext::restorePlatformState): Restore the ContextShadow.
478         (WebCore::GraphicsContext::drawPath): Updated drawPathShadow call.
479         (WebCore::GraphicsContext::fillRect): Uses ContextShadow now.
480         (WebCore::GraphicsContext::setPlatformShadow): Uses ContextShadow now.
481         (WebCore::GraphicsContext::contextShadow): Added.
482         (WebCore::GraphicsContext::clearPlatformShadow): Clears the ContextShadow member.
483         (WebCore::GraphicsContext::fillRoundedRect): Updated drawPathShadow call.
484         * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
485         (WebCore::GraphicsContextPlatformPrivate::hasShadow): Added.
486         * platform/graphics/cairo/ImageCairo.cpp:
487         (WebCore::BitmapImage::draw): Updated to use ContextShadow.
488
489 2010-10-13  John Knottenbelt  <jknotten@chromium.org>
490
491         Reviewed by Steve Block.
492
493         First step towards client-based Geolocation in Chromium. Build
494         fixes for CLIENT_BASED_GEOLOCATION preprocessor feature define.
495         https://bugs.webkit.org/show_bug.cgi?id=47586
496
497         * WebCore.gyp/WebCore.gyp:
498         * platform/chromium/ChromiumBridge.h:
499         * platform/chromium/GeolocationServiceChromium.cpp:
500
501 2010-10-13  Steve Block  <steveblock@google.com>
502
503         Unreviewed fix
504
505         Need to check for the existence of DeviceOrientation and DeviceMotion controllers
506
507         These features can be disabled at run time, so an enable guard is not sufficient.
508         This bug was introduced in http://trac.webkit.org/changeset/69646
509
510         Tested with existing tests.
511
512         * history/PageCache.cpp:
513         (WebCore::logCanCachePageDecision):
514         (WebCore::PageCache::canCache):
515
516 2010-10-13  Yury Semikhatsky  <yurys@chromium.org>
517
518         Reviewed by Pavel Feldman.
519
520         Web Inspector: stack information is inconsistent between console.trace and runtime errors.
521         https://bugs.webkit.org/show_bug.cgi?id=47252
522
523         * console.trace() is now formatted the same way as other stack traces
524
525         * If there is //@ sourceURL=url line at the end of eval'ed script source
526         the url will be shown in the stack traces for script. That is why ScriptCallFrame::sourceURL
527         type has changed from KURL to String.
528
529         Tests: inspector/console-trace-in-eval.html
530                inspector/console-uncaught-exception-in-eval.html
531
532         * bindings/js/ScriptCallFrame.cpp:
533         (WebCore::ScriptCallFrame::ScriptCallFrame):
534         * bindings/js/ScriptCallFrame.h:
535         (WebCore::ScriptCallFrame::sourceURL):
536         * bindings/v8/ScriptCallFrame.cpp:
537         (WebCore::ScriptCallFrame::ScriptCallFrame):
538         * bindings/v8/ScriptCallFrame.h:
539         (WebCore::ScriptCallFrame::sourceURL):
540         * bindings/v8/ScriptCallStack.cpp:
541         (WebCore::getFrameLocation):
542         (WebCore::ScriptCallStack::create):
543         * bindings/v8/ScriptCallStack.h:
544         * bindings/v8/ScriptController.cpp:
545         (WebCore::ScriptController::setCaptureCallStackForUncaughtExceptions):
546         * bindings/v8/custom/V8ConsoleCustom.cpp:
547         (WebCore::V8Console::traceCallback):
548         * inspector/ConsoleMessage.cpp:
549         (WebCore::ConsoleMessage::CallFrame::buildInspectorObject):
550         (WebCore::ConsoleMessage::ConsoleMessage):
551         * inspector/ConsoleMessage.h:
552         * inspector/front-end/ConsoleView.js:
553         (WebInspector.ConsoleMessage.prototype._formatMessage):
554         * page/Console.cpp:
555         (WebCore::Console::addMessage):
556         (WebCore::Console::count):
557         (WebCore::Console::timeEnd):
558
559 2010-10-13  Kent Tamura  <tkent@chromium.org>
560
561         Unreviewed, a trivial change.
562
563         Run sort-Xcode-project-file.
564
565         * WebCore.xcodeproj/project.pbxproj:
566
567 2010-10-13  Yael Aharon  <yael.aharon@nokia.com>
568
569         Reviewed by Andreas Kling.
570
571         Wrong ASSERT when select element has size 0
572         https://bugs.webkit.org/show_bug.cgi?id=47567
573
574         Keep the ASSERT only if the size of the element list is more than 0
575         Test: fast/dom/HTMLSelectElement/click-size-zero-no-crash.html
576
577         * dom/SelectElement.cpp:
578         (WebCore::SelectElement::updateListBoxSelection):
579         (WebCore::SelectElement::listBoxDefaultEventHandler):
580
581 2010-10-13  Steve Block  <steveblock@google.com>
582
583         Reviewed by Alexey Proskuryakov.
584
585         Pages using DeviceOrientation and DeviceMotion should not go into the page cache
586         https://bugs.webkit.org/show_bug.cgi?id=47408
587
588         Tests: fast/dom/DeviceMotion/no-page-cache.html
589                fast/dom/DeviceOrientation/no-page-cache.html
590
591         * dom/DeviceMotionController.h:
592         (WebCore::DeviceMotionController::isActive):
593         * dom/DeviceOrientationController.h:
594         (WebCore::DeviceOrientationController::isActive):
595         * history/PageCache.cpp:
596         (WebCore::logCanCachePageDecision):
597         (WebCore::PageCache::canCache):
598         * page/Page.cpp:
599
600 2010-10-13  Jenn Braithwaite  <jennb@chromium.org>
601
602         Reviewed by Dmitry Titov.
603
604         Make resource identifiers unique across pages
605         https://bugs.webkit.org/show_bug.cgi?id=47002
606
607         Test: http/tests/misc/iframe-reparenting-id-collision.html
608
609         * loader/ProgressTracker.cpp:
610         (WebCore::ProgressTracker::ProgressTracker):
611         (WebCore::ProgressTracker::createUniqueIdentifier):
612         * loader/ProgressTracker.h:
613
614 2010-10-12  Roland Steiner  <rolandsteiner@chromium.org>
615
616         Reviewed by David Hyatt.
617
618         Bug 41040 - :before/:after content should not become part of a ruby base
619         https://bugs.webkit.org/show_bug.cgi?id=41040
620
621         Also related to:
622         https://bugs.webkit.org/show_bug.cgi?id=40895.
623         https://bugs.webkit.org/show_bug.cgi?id=43722.
624
625         Explicitly handle :before and :after content in the default way.
626
627         Test: fast/ruby/ruby-beforeafter.html
628               fast/ruby/after-doesnt-crash.html
629
630         * rendering/RenderObject.h:
631         (WebCore::RenderObject::isBeforeContent):
632         * rendering/RenderRuby.cpp:
633         (WebCore::lastRubyRun):
634         (WebCore::RenderRubyAsInline::addChild):
635         (WebCore::RenderRubyAsInline::removeChild):
636         (WebCore::RenderRubyAsBlock::addChild):
637         (WebCore::RenderRubyAsBlock::removeChild):
638
639 2010-10-12  Sheriff Bot  <webkit.review.bot@gmail.com>
640
641         Unreviewed, rolling out r69639.
642         http://trac.webkit.org/changeset/69639
643         https://bugs.webkit.org/show_bug.cgi?id=47575
644
645         "regressed nav-element.html" (Requested by rniwa on #webkit).
646
647         * editing/ApplyBlockElementCommand.cpp:
648         (WebCore::ApplyBlockElementCommand::formatSelection):
649         * editing/EditorCommand.cpp:
650         (WebCore::executeFormatBlock):
651         * editing/FormatBlockCommand.cpp:
652         (WebCore::FormatBlockCommand::formatRange):
653         * editing/FormatBlockCommand.h:
654         (WebCore::FormatBlockCommand::editingAction):
655         * editing/VisiblePosition.cpp:
656         (WebCore::enclosingBlockFlowElement):
657         * editing/VisiblePosition.h:
658         * editing/htmlediting.cpp:
659         (WebCore::validBlockTag):
660         * editing/htmlediting.h:
661
662 2010-10-12  Ryosuke Niwa  <rniwa@webkit.org>
663
664         Reviewed by Tony Chang.
665
666         execCommand FormatBlock creates lots of blockquotes
667         https://bugs.webkit.org/show_bug.cgi?id=19795
668
669         The bug was caused by WebKit's not reusing the block node added by previous iteration
670         and its inserting block node at wrong places.
671
672         Fixed the bug by rewriting FormatBlockCommand::formatRange.  New code resembles that of
673         IndentOutdentCommand::indentIntoBlockquote.  The difference between two is that formatRange
674         avoids the existing block elements when replacing blocks and it also adds a placeholder
675         when removing the existing block caused paragraphs to collapse.
676
677         Tests: editing/execCommand/format-block-multiple-paragraphs.html
678                editing/execCommand/format-block-table.html
679
680         * editing/EditorCommand.cpp:
681         (WebCore::executeFormatBlock):
682         * editing/FormatBlockCommand.cpp:
683         (WebCore::FormatBlockCommand::formatRange): Rewritten; see above.
684         (WebCore::FormatBlockCommand::isElementToApplyInFormatBlockCommand): Renamed from validBlockElement
685         and moved from htmlediting.cpp.
686         (WebCore::FormatBlockCommand::enclosingBlockToSplitTreeTo): Added.
687         * editing/FormatBlockCommand.h:
688         * editing/VisiblePosition.cpp:
689         (WebCore::enclosingBlockFlowElement): Changed the return type to Element*
690         * editing/VisiblePosition.h:
691
692 2010-10-11  Girish Ramakrishnan  <girish@forwardbias.in>
693
694         Reviewed by Anders Carlsson.
695
696         Make PluginView inherit from PluginViewBase.
697
698         This change is a precursor to adding accelerated compositing support
699         for NPAPI plugins.
700
701         https://bugs.webkit.org/show_bug.cgi?id=47418
702
703         * page/Page.cpp:
704         (WebCore::Page::privateBrowsingStateChanged):
705         * plugins/PluginView.h:
706         * plugins/PluginViewBase.h:
707         (WebCore::PluginViewBase::PluginViewBase):
708
709 2010-10-12  Kinuko Yasuda  <kinuko@chromium.org>
710
711         Reviewed by Jian Li.
712
713         Pass platform path (rather than virtual path) when creating File from FileEntry
714         https://bugs.webkit.org/show_bug.cgi?id=47563
715
716         No new tests, the new test for FileWriter will be verifying this.
717
718         * fileapi/FileEntry.cpp:
719         (WebCore::FileEntry::file):
720
721 2010-10-12 David Hyatt  <hyatt@apple.com>
722
723         Reviewed by Dan Bernstein
724
725         <rdar://problem/8488444> REGRESSION (r67771)
726         https://bugs.webkit.org/show_bug.cgi?id=47434
727         Crash when printing in RenderBlock::markDescendantBlocksAndLinesForLayout
728         
729         Added printing/simultaneous-position-float-change.html
730
731         Remove the markDescendantBlocksAndLinesForLayout method since it can walk m_floatingObjects lists with deleted
732         objects in them.  Make the mechanism for relayout when the page height changes the same as the one when pageY
733         changes and just tie a concept of pageHeightChanged to the layout state.  If that is set, blocks will just
734         automatically mark themselves as needing layout.
735
736         * rendering/LayoutState.cpp:
737         (WebCore::LayoutState::LayoutState):
738         * rendering/LayoutState.h:
739         (WebCore::LayoutState::LayoutState):
740         (WebCore::LayoutState::pageHeight):
741         (WebCore::LayoutState::pageHeightChanged):
742         * rendering/RenderBlock.cpp:
743         (WebCore::RenderBlock::layoutBlock):
744         (WebCore::RenderBlock::layoutBlockChild):
745         (WebCore::RenderBlock::layoutPositionedObjects):
746         (WebCore::RenderBlock::markForPaginationRelayoutIfNeeded):
747         (WebCore::RenderBlock::insertFloatingObject):
748         (WebCore::RenderBlock::positionNewFloats):
749         * rendering/RenderBlock.h:
750         * rendering/RenderBox.cpp:
751         * rendering/RenderBox.h:
752         (WebCore::RenderBox::markForPaginationRelayoutIfNeeded):
753         * rendering/RenderFlexibleBox.cpp:
754         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
755         (WebCore::RenderFlexibleBox::layoutVerticalBox):
756         * rendering/RenderView.cpp:
757         (WebCore::RenderView::RenderView):
758         (WebCore::RenderView::layout):
759         * rendering/RenderView.h:
760         (WebCore::RenderView::setPageHeight):
761         (WebCore::RenderView::pushLayoutState):
762         (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
763         (WebCore::LayoutStateMaintainer::push):
764
765 2010-10-12  Anders Carlsson  <andersca@apple.com>
766
767         Reviewed by Dan Bernstein.
768
769         Paint the find overlay background
770         https://bugs.webkit.org/show_bug.cgi?id=47565
771
772         Export symbols required by WebKit2.
773
774         * WebCore.exp.in:
775
776 2010-10-12  James Robinson  <jamesr@chromium.org>
777
778         Unreviewed chromium compile fixes for http://trac.webkit.org/changeset/69619
779
780         * platform/graphics/chromium/LayerRendererChromium.cpp:
781         (WebCore::LayerRendererChromium::create):
782         (WebCore::LayerRendererChromium::LayerRendererChromium):
783         * platform/graphics/chromium/LayerRendererChromium.h:
784
785 2010-10-12  Chris Marrin  <cmarrin@apple.com>
786
787         Reviewed by Darin Adler.
788
789         Manage DrawingBuffer lifetime in GraphicsContext3D
790         https://bugs.webkit.org/show_bug.cgi?id=47501
791
792         GraphicsContext3D and DrawingBuffer are now Refcounted. DrawingBuffer
793         has a RefPtr to GraphicsContext3D to ensure the proper lifetime. 
794         DrawingBuffer is now created by GraphicsContext3D. Also DrawingBuffer
795         refers to GraphicsContext3D rather than SharedGraphicsContext3D.
796
797         * html/canvas/CanvasRenderingContext2D.cpp:
798         (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
799         * html/canvas/CanvasRenderingContext2D.h:
800         * html/canvas/WebGLRenderingContext.cpp:
801         (WebCore::WebGLRenderingContext::create):
802         (WebCore::WebGLRenderingContext::WebGLRenderingContext):
803         * html/canvas/WebGLRenderingContext.h:
804         * platform/graphics/GraphicsContext3D.cpp:
805         (WebCore::GraphicsContext3D::createDrawingBuffer):
806         * platform/graphics/GraphicsContext3D.h:
807         * platform/graphics/chromium/DrawingBufferChromium.cpp:
808         (WebCore::generateColorTexture):
809         (WebCore::DrawingBuffer::DrawingBuffer):
810         (WebCore::DrawingBuffer::~DrawingBuffer):
811         (WebCore::DrawingBuffer::publishToPlatformLayer):
812         (WebCore::DrawingBuffer::reset):
813         * platform/graphics/gpu/DrawingBuffer.cpp:
814         (WebCore::DrawingBuffer::create):
815         (WebCore::DrawingBuffer::clear):
816         (WebCore::DrawingBuffer::bind):
817         * platform/graphics/gpu/DrawingBuffer.h:
818         (WebCore::DrawingBuffer::graphicsContext3D):
819         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
820         (WebCore::SharedGraphicsContext3D::create):
821         (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D):
822         * platform/graphics/gpu/SharedGraphicsContext3D.h:
823         (WebCore::SharedGraphicsContext3D::graphicsContext3D):
824         * platform/graphics/gpu/mac/DrawingBufferMac.mm:
825         (WebCore::DrawingBuffer::DrawingBuffer):
826         (WebCore::DrawingBuffer::~DrawingBuffer):
827         (WebCore::DrawingBuffer::reset):
828         * platform/graphics/mac/GraphicsContext3DMac.mm:
829         (WebCore::GraphicsContext3D::create):
830
831 2010-10-12  Jian Li  <jianli@chromium.org>
832
833         Reviewed by David Levin.
834
835         Fix passing blob data with string data item between threads.
836         https://bugs.webkit.org/show_bug.cgi?id=46543
837
838         The fix is to use a thread-safe ref-counted Vector<char> to store the
839         string data. This also makes us be able to store any binary data in it.
840
841         I've also fix BlobBuilder and BlobRegistryImpl to avoid some additional
842         copies to make blob handling faster.
843
844         * fileapi/BlobBuilder.cpp:
845         (WebCore::BlobBuilder::append):
846         * fileapi/ThreadableBlobRegistry.cpp:
847         (WebCore::BlobRegistryContext::BlobRegistryContext):
848         * platform/network/BlobData.cpp:
849         (WebCore::BlobDataItem::RawData::RawData):
850         (WebCore::BlobDataItem::RawData::detachFromCurrentThread):
851         (WebCore::BlobDataItem::detachFromCurrentThread):
852         (WebCore::BlobData::create):
853         (WebCore::BlobData::detachFromCurrentThread):
854         (WebCore::BlobData::appendData):
855         * platform/network/BlobData.h:
856         (WebCore::BlobDataItem::RawData::create):
857         (WebCore::BlobDataItem::RawData::data):
858         (WebCore::BlobDataItem::RawData::length):
859         (WebCore::BlobDataItem::RawData::mutableData):
860         (WebCore::BlobDataItem::BlobDataItem):
861         * platform/network/BlobRegistryImpl.cpp:
862         (WebCore::BlobRegistryImpl::registerBlobURL):
863         * platform/network/BlobResourceHandle.cpp:
864         (WebCore::BlobResourceHandle::readDataSync):
865         (WebCore::BlobResourceHandle::readDataAsync):
866         * platform/network/mac/FormDataStreamMac.mm:
867         (WebCore::setHTTPBody):
868         * platform/text/LineEnding.cpp:
869         (OutputBuffer::CStringBuffer::CStringBuffer):
870         (OutputBuffer::CStringBuffer::~CStringBuffer):
871         (OutputBuffer::CStringBuffer::allocate):
872         (OutputBuffer::CStringBuffer::copy):
873         (OutputBuffer::CStringBuffer::buffer):
874         (OutputBuffer::VectorCharAppendBuffer::VectorCharAppendBuffer):
875         (OutputBuffer::VectorCharAppendBuffer::~VectorCharAppendBuffer):
876         (OutputBuffer::VectorCharAppendBuffer::allocate):
877         (OutputBuffer::VectorCharAppendBuffer::copy):
878         (OutputBuffer::internalNormalizeLineEndingsToCRLF):
879         (WebCore::normalizeToCROrLF):
880         (WebCore::normalizeLineEndingsToCRLF):
881         (WebCore::normalizeLineEndingsToCR):
882         (WebCore::normalizeLineEndingsToLF):
883         (WebCore::normalizeLineEndingsToNative):
884         * platform/text/LineEnding.h:
885
886 2010-10-12  Sheriff Bot  <webkit.review.bot@gmail.com>
887
888         Unreviewed, rolling out r69589.
889         http://trac.webkit.org/changeset/69589
890         https://bugs.webkit.org/show_bug.cgi?id=47547
891
892         Wrong patch landed from a bug with two patches (Requested by
893         mrobinson on #webkit).
894
895         * platform/network/ResourceHandleInternal.h:
896         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
897         * platform/network/soup/ResourceHandleSoup.cpp:
898         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
899         (WebCore::ResourceHandle::~ResourceHandle):
900         (WebCore::restartedCallback):
901         (WebCore::gotChunkCallback):
902         (WebCore::finishedCallback):
903         (WebCore::parseDataUrl):
904         (WebCore::startHttp):
905         * platform/network/soup/ResourceRequest.h:
906         * platform/network/soup/ResourceRequestSoup.cpp:
907
908 2010-10-12  Simon Fraser  <simon.fraser@apple.com>
909
910         Screen.availLeft should be signed
911         https://bugs.webkit.org/show_bug.cgi?id=34397
912         
913         Add the manual test missed in r69599.
914
915         * manual-tests/screen-availLeft.html: Added.
916
917 2010-10-12  Girish Ramakrishnan  <girish@forwardbias.in>
918
919         Reviewed by Ariya Hidayat.
920
921         [Qt] Windowless mode 64-bit Flash/X11 freezes when right-click is sent.
922
923         Adds a new quirk PluginQuirkIgnoreRightClickInWindowlessMode. This
924         quirk is enabled only for 64-bit Flash/X11 and should not affect other
925         plugins. The freeze itself is in Flash code and the backtrace is not
926         useful.
927
928         https://bugs.webkit.org/show_bug.cgi?id=47545
929
930         * plugins/PluginPackage.cpp:
931         (WebCore::PluginPackage::determineQuirks):
932         * plugins/PluginQuirkSet.h:
933         * plugins/qt/PluginViewQt.cpp:
934         (WebCore::PluginView::handleMouseEvent):
935
936 2010-10-08  Simon Fraser  <simon.fraser@apple.com>
937
938         Reviewed by Alexey Proskuryakov.
939
940         Screen.availLeft should be signed
941         https://bugs.webkit.org/show_bug.cgi?id=34397
942
943         For the screen to the left of the main screen, screen.availLeft
944         can be negative, so the Screen API needs to use signed numbers
945         for availLeft and availTop.
946
947         * manual-tests/screen-availLeft.html: Added.
948         * page/Screen.cpp:
949         (WebCore::Screen::availLeft):
950         (WebCore::Screen::availTop):
951         * page/Screen.h:
952         * page/Screen.idl:
953
954 2010-10-12  Anders Carlsson  <andersca@apple.com>
955
956         Reviewed by Sam Weinig.
957
958         Add FindController class
959         https://bugs.webkit.org/show_bug.cgi?id=47555
960
961         Export Page::findString.
962
963         * WebCore.exp.in:
964
965 2010-10-12  Alexey Proskuryakov  <ap@apple.com>
966
967         Reviewed by Simon Fraser.
968
969         https://bugs.webkit.org/show_bug.cgi?id=47550
970         <rdar://problem/8353386> For WebKit plug-ins, beforeload can be called recursively
971         (esp. with AdBlock style extensions)
972
973         No test - we don't have a WebKit-style plugin in DRT, and don't care enough to add one.
974
975         The fix is to block plug-in scripting while in beforeload event - the plug-in is obviously
976         not available yet, so scripting could only attempt to load it recursively.
977
978         This didn't affect NPAPI plug-ins, because of a completely different code path taken in
979         updateWidget(), see <https://bugs.webkit.org/show_bug.cgi?id=44575#c8>.
980
981         * html/HTMLEmbedElement.cpp: (WebCore::HTMLEmbedElement::updateWidget):
982         * html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::updateWidget):
983         * html/HTMLPlugInElement.cpp:
984         (WebCore::HTMLPlugInElement::HTMLPlugInElement):
985         (WebCore::HTMLPlugInElement::pluginWidget):
986         * html/HTMLPlugInElement.h:
987
988 2010-10-12  Nikolas Zimmermann  <nzimmermann@rim.com>
989
990         Reviewed by Gavin Barraclough.
991
992         Unify JSC::StringBuilder & WebCore::StringBuilder
993         https://bugs.webkit.org/show_bug.cgi?id=47538
994
995         JSC::StringBuilder operates on a Vector<UChar, 64> and allows to build a string based on a stream of characters in an efficient manner.
996         WebCore::StringBuilder operates on a Vector<String, 16> and allows to concat an arbitary number of Strings. It's not efficient in handling single
997         characters, as a String with length=1 has to be constructed for those. An analysis of the callers of WebCore::StringBuilder shows that
998         most callsites actually combine Strings and single characters, so using a Vector<UChar> would be more efficient. Those who only combine large
999         strings are only used for debugging purposes, so it's fine to switch them to a Vector<UChar> approach as well.
1000
1001         Replace WebCore::StringBuilder with JSC::StringBuilder, and move it to wtf/text/StringBuilder.h into the WTF namespace.
1002         While I was at it remove platform/text/StringBuffer.h, as it was only including wtf/text/StringBuffer.h.
1003
1004         No change in functionality, thus no new tests.
1005
1006         * Android.mk: Remove platform/text/StringBuilder.* and platform/text/StringBuffer.h.
1007         * CMakeLists.txt: Ditto.
1008         * GNUmakefile.am: Ditto. 
1009         * WebCore.gypi: Ditto.
1010         * WebCore.order: Ditto.
1011         * WebCore.pro: Ditto.
1012         * WebCore.vcproj/WebCore.vcproj: Ditto.
1013         * WebCore.xcodeproj/project.pbxproj: Ditto.
1014         * ForwardingHeaders/runtime/StringBuilder.h: Removed.
1015         * ForwardingHeaders/runtime/UStringBuilder.h: Added.
1016         * ForwardingHeaders/wtf/text/StringBuilder.h: Added.
1017         * bindings/js/ScriptString.h: Don't include PlatformString.h but wtf/text/WTFString.h.
1018         (WebCore::ScriptString::operator+=): Use JSC::UStringBuilder instead of JSC::StringBuilder.
1019         * bridge/jni/JNIBridge.cpp: Use WTF::StringBuilder (+ use append(const UChar) for single characters).
1020         * css/MediaQuery.cpp: Ditto.
1021         * css/MediaQueryExp.cpp: Ditto.
1022         * dom/Node.cpp: Ditto.
1023         (WebCore::Node::appendTextContent): Manually track wheter the StringBuilder content is empty or null, the new StringBuilder doesn't differentiate between null & empty strings.
1024         * dom/Node.h: Remove appendTextContent definition, it's not needed to be exported, removes the need for a StringBuilder.h include or forward declaration.
1025         * html/DOMTokenList.cpp: Use WTF::StringBuilder.
1026         * inspector/InspectorResource.cpp: Remove useless StringBuffer.h include.
1027         * platform/android/FileSystemAndroid.cpp: Use WTF::StringBuilder.
1028         * platform/brew/FileSystemBrew.cpp: Ditto.
1029         * platform/chromium/ClipboardChromium.cpp: Ditto (+ use append(const UChar) for single characters).
1030         * platform/graphics/gpu/PODInterval.h: Ditto (Only used as debugging helper here, in debug builds).
1031         * platform/graphics/gpu/PODRedBlackTree.h: Ditto (Only used as debugging helper here, in debug builds).
1032         * platform/graphics/mac/GraphicsLayerCA.mm: Remove useless StringBuilder.h include.
1033         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: Use WTF::StringBuilder, and use append(const UChar) for single characters.
1034         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp: Ditto.
1035         * platform/network/ProxyServer.cpp:
1036         (WebCore::appendProxyServerString): Use WTF::StringBuilder.
1037         * platform/text/StringBuffer.h: Removed.
1038         * platform/text/StringBuilder.cpp: Removed.
1039         * platform/text/StringBuilder.h: Removed.
1040         * plugins/DOMMimeType.cpp: Use WTF::StringBuilder.
1041         * svg/SVGPathParserFactory.cpp: Ditto.
1042         * svg/SVGPathStringBuilder.cpp: SVGPathStringBuilder used stringBuilder.toString(ConcatAddingSpacesBetweenIndividualStrings), adapt to the change, that this mode is gone now.
1043         (WebCore::SVGPathStringBuilder::result): Just use toString(), append a space to the end of each command, when building the string. Remove the last trailing space before building the result.
1044         (WebCore::SVGPathStringBuilder::moveTo):
1045         (WebCore::SVGPathStringBuilder::lineTo):
1046         (WebCore::SVGPathStringBuilder::lineToHorizontal):
1047         (WebCore::SVGPathStringBuilder::lineToVertical):
1048         (WebCore::SVGPathStringBuilder::curveToCubic):
1049         (WebCore::SVGPathStringBuilder::curveToCubicSmooth):
1050         (WebCore::SVGPathStringBuilder::curveToQuadratic):
1051         (WebCore::SVGPathStringBuilder::curveToQuadraticSmooth):
1052         (WebCore::SVGPathStringBuilder::arcTo):
1053         (WebCore::SVGPathStringBuilder::closePath):
1054         * svg/SVGPathStringBuilder.h:
1055         (WebCore::SVGPathStringBuilder::cleanup): StringBuilder::clear() is gone, just cleanup by assigning StringBuilder().
1056         * websockets/WebSocket.cpp: Use WTF::StringBuilder.
1057         * websockets/WebSocketHandshake.cpp: Ditto (+ use append(const UChar) for single characters).
1058
1059 2010-10-12  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1060
1061         Reviewed by Antonio Gomes.
1062
1063         [EFL] Add a missing file in CMakeListEfl.txt
1064         https://bugs.webkit.org/show_bug.cgi?id=47480
1065
1066         IntRectEfl.cpp was missing in CMakeListEfl.txt. So, IntRectEfl.cpp is added.
1067
1068         * CMakeListsEfl.txt:
1069
1070 2010-10-12  Sam Weinig  <sam@webkit.org>
1071
1072         Reviewed by Anders Carlsson.
1073
1074         Need WebKit2 API to get the cell above a table cell
1075         <rdar://problem/8537111>
1076         https://bugs.webkit.org/show_bug.cgi?id=47532
1077
1078         Re-factor functionality to get the cell above a table cell
1079         into a function on HTMLTableCellElement and export it for use
1080         as SPI.
1081
1082         * WebCore.exp.in:
1083         * WebCore.xcodeproj/project.pbxproj:
1084         * html/HTMLTableCellElement.cpp:
1085         (WebCore::HTMLTableCellElement::cellAbove): Move implementation here...
1086         * html/HTMLTableCellElement.h:
1087         * page/Frame.cpp:
1088         (WebCore::Frame::searchForLabelsAboveCell): ...from here.
1089
1090 2010-10-12  Dave Moore  <davemoore@chromium.org>
1091
1092         Reviewed by Tony Chang.
1093
1094         Use new WebThemeEngine api on chromium / linux to draw scrollbars.
1095         https://bugs.webkit.org/show_bug.cgi?id=47473
1096
1097         * platform/chromium/ChromiumBridge.h:
1098         * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
1099
1100 2010-10-12  Andreas Kling  <kling@webkit.org>
1101
1102         Reviewed by Antonio Gomes.
1103
1104         [Qt] Clipping problem viewing SVG with WebKit
1105         https://bugs.webkit.org/show_bug.cgi?id=29596
1106
1107         SVG path clipping (via GraphicsContext::clipPath()) was done using the
1108         Qt::ReplaceClip mode (default) instead of Qt::IntersectClip. This led
1109         to misrenderings when nesting multiple clip paths.
1110
1111         * platform/graphics/qt/GraphicsContextQt.cpp:
1112         (WebCore::GraphicsContext::clipPath):
1113
1114 2010-10-07  Pavel Podivilov  <podivilov@chromium.org>
1115
1116         Reviewed by Pavel Feldman.
1117
1118         Web Inspector: refactoring of native breakpoints.
1119         https://bugs.webkit.org/show_bug.cgi?id=47360
1120
1121         Make DOM, EventListener and XHR breakpoints subclasses of NativeBreakpoint class.
1122         Move stuff that depends on breakpoint type to corresponding subclass.
1123
1124         * inspector/Inspector.idl:
1125         * inspector/InspectorController.cpp:
1126         (WebCore::InspectorController::didCommitLoad):
1127         (WebCore::InspectorController::setNativeBreakpoint):
1128         (WebCore::InspectorController::removeNativeBreakpoint):
1129         (WebCore::InspectorController::findEventListenerBreakpoint):
1130         (WebCore::InspectorController::findXHRBreakpoint):
1131         * inspector/InspectorController.h:
1132         * inspector/InspectorDOMAgent.cpp:
1133         (WebCore::InspectorDOMAgent::setDOMBreakpoint):
1134         (WebCore::InspectorDOMAgent::removeDOMBreakpoint):
1135         (WebCore::InspectorDOMAgent::descriptionForDOMEvent):
1136         (WebCore::InspectorDOMAgent::didRemoveDOMNode):
1137         (WebCore::InspectorDOMAgent::removeBreakpointsForNode):
1138         (WebCore::InspectorDOMAgent::createBreakpointId):
1139         * inspector/InspectorDOMAgent.h:
1140         * inspector/InspectorDebuggerAgent.h:
1141         * inspector/InspectorInstrumentation.cpp:
1142         (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl):
1143         (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl):
1144         (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
1145         (WebCore::InspectorInstrumentation::willSendXMLHttpRequestImpl):
1146         (WebCore::InspectorInstrumentation::willDispatchEventImpl):
1147         * inspector/front-end/BreakpointManager.js:
1148         (WebInspector.BreakpointManager):
1149         (WebInspector.BreakpointManager.prototype.reset):
1150         (WebInspector.BreakpointManager.prototype.createDOMBreakpoint):
1151         (WebInspector.BreakpointManager.prototype.createEventListenerBreakpoint):
1152         (WebInspector.BreakpointManager.prototype.createXHRBreakpoint):
1153         (WebInspector.BreakpointManager.prototype._removeNativeBreakpoint):
1154         (WebInspector.BreakpointManager.prototype._setNativeBreakpointOnBackend.didSetNativeBreakpoint):
1155         (WebInspector.BreakpointManager.prototype._setNativeBreakpointOnBackend):
1156         (WebInspector.BreakpointManager.prototype.debuggerPaused):
1157         (WebInspector.BreakpointManager.prototype.debuggerResumed):
1158         (WebInspector.BreakpointManager.prototype.restoreDOMBreakpoints.restoreBreakpointsForNode):
1159         (WebInspector.BreakpointManager.prototype.restoreDOMBreakpoints):
1160         (WebInspector.NativeBreakpoint):
1161         (WebInspector.NativeBreakpoint.prototype.remove):
1162         (WebInspector.NativeBreakpoint.prototype.get _frontendId):
1163         (WebInspector.NativeBreakpoint.prototype.get _type):
1164         (WebInspector.NativeBreakpoint.prototype._compare):
1165         (WebInspector.NativeBreakpoint.prototype._onRemove):
1166         (WebInspector.DOMBreakpoint):
1167         (WebInspector.DOMBreakpoint.prototype.click):
1168         (WebInspector.DOMBreakpoint.prototype.compareTo):
1169         (WebInspector.DOMBreakpoint.prototype.populateLabelElement):
1170         (WebInspector.DOMBreakpoint.prototype.populateStatusMessageElement.formatters.s):
1171         (WebInspector.DOMBreakpoint.prototype.populateStatusMessageElement.append):
1172         (WebInspector.DOMBreakpoint.prototype.populateStatusMessageElement):
1173         (WebInspector.DOMBreakpoint.prototype._condition):
1174         (WebInspector.DOMBreakpoint.prototype._onRemove):
1175         (WebInspector.EventListenerBreakpoint):
1176         (WebInspector.EventListenerBreakpoint.prototype.compareTo):
1177         (WebInspector.EventListenerBreakpoint.prototype.label):
1178         (WebInspector.EventListenerBreakpoint.prototype.populateStatusMessageElement):
1179         (WebInspector.EventListenerBreakpoint.prototype._condition):
1180         (WebInspector.XHRBreakpoint):
1181         (WebInspector.XHRBreakpoint.prototype.compareTo):
1182         (WebInspector.XHRBreakpoint.prototype.populateLabelElement):
1183         (WebInspector.XHRBreakpoint.prototype.populateStatusMessageElement):
1184         (WebInspector.XHRBreakpoint.prototype._condition):
1185         (WebInspector.domBreakpointTypeLabel):
1186         (WebInspector.domBreakpointTypeContextMenuLabel):
1187         * inspector/front-end/BreakpointsSidebarPane.js:
1188         (WebInspector.BreakpointItem):
1189         (WebInspector.BreakpointItem.prototype._breakpointClicked):
1190         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._populate):
1191         * inspector/front-end/CallStackSidebarPane.js:
1192         (WebInspector.CallStackSidebarPane):
1193         (WebInspector.CallStackSidebarPane.prototype.registerShortcuts):
1194         (WebInspector.CallStackSidebarPane.prototype._breakpointHit):
1195         * inspector/front-end/DOMAgent.js:
1196         (WebInspector.DOMNode):
1197         (WebInspector.DOMAgent.prototype._setDocument):
1198         (WebInspector.DOMAgent.prototype._removeBreakpoints):
1199         (WebInspector.childNodeRemoved):
1200         * inspector/front-end/ElementsTreeOutline.js:
1201         (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
1202         * inspector/front-end/ScriptsPanel.js:
1203         (WebInspector.ScriptsPanel.prototype.debuggerPaused):
1204         * inspector/front-end/inspector.js:
1205         (WebInspector.createDOMBreakpointsSidebarPane.breakpointAdded):
1206         (WebInspector.createDOMBreakpointsSidebarPane):
1207         (WebInspector.reset):
1208
1209 2010-10-11  Eric Uhrhane  <ericu@chromium.org>
1210
1211         Reviewed by Dumitru Daniliuc.
1212
1213         FileWriter should hold a reference to a Blob during write
1214         https://bugs.webkit.org/show_bug.cgi?id=47318
1215
1216         Without this reference, the Blob might get garbage-collected from JS
1217         before the write has completed, which would be quite unintuitive to the
1218         user.  I just grab a RefPtr to the Blob at write(), then clear it when
1219         we're done.
1220
1221         * fileapi/FileWriter.cpp:
1222         (WebCore::FileWriter::stop):
1223         (WebCore::FileWriter::write):
1224         (WebCore::FileWriter::didWrite):
1225         (WebCore::FileWriter::didFail):
1226         * fileapi/FileWriter.h:
1227
1228 2010-10-11  Michael Saboff  <msaboff@apple.com>
1229
1230         Reviewed by Darin Adler.
1231
1232         Changed DOMWindow to have a constructor.  Updated the code generator
1233         to add security checks to the constructors if CheckDomainSecurity is 
1234         set.  Also changed the constructor generation code to use 
1235         globalObject->prototype() for DOMWindow object prototypes instead
1236         of "self".
1237         https://bugs.webkit.org/show_bug.cgi?id=47422
1238
1239         Test: fast/dom/Window/window-constructor.html
1240
1241         * bindings/scripts/CodeGeneratorJS.pm:
1242         * page/DOMWindow.idl:
1243
1244 2010-10-11  Daniel Cheng  <dcheng@chromium.org>
1245
1246         Reviewed by Tony Chang.
1247
1248         [chromium] Prepare Clipboard/DragData for transition to new drag-and-drop interface.
1249         https://bugs.webkit.org/show_bug.cgi?id=44992
1250
1251         In order to allow a graceful transition, ChromiumDataObject has been
1252         reimplemented as a wrapper around the three different types of data
1253         objects that the Chrome port uses:
1254         1. ChromiumDataObjectLegacy -- this is the original ChromiumDataObject.
1255            All the data that ClipboardChromium/DragDataChromium can potentially
1256            use is copied over, regardless of whether or not it is needed.
1257         2. ReadableDataObject -- used for dragging in and pasting into WebKit.
1258            For efficiency, it caches an optimistic list of types it believes it
1259            can handle. When getData() is called, a browser IPC is called to
1260            retrieve the appropriate data.
1261         3. WritableDataObject -- similar to ChromiumDataObjectLegacy in that it
1262            buffers all data when dragging out of WebKit or copying/cutting.
1263            Unfortunately, there is a difference between dragging out and
1264            copying/cutting--on drag outs, the data is buffered and flushed out
1265            when startDrag() is called. For copy/cut, any calls to setData()
1266            result in a browser IPC right away, so calls to setData() in one
1267            copy/cut event are not atomic.
1268
1269         Copy and paste has been changed to use the new data objects. Dragging
1270         out uses the legacy data object, and dragging in now has two potential
1271         entry points--one using the legacy data object, and one using
1272         ReadableDataObject. Once Chromium transitions to using the new drag-in
1273         interface, the old interface will be removed.
1274
1275         This change is covered by existing tests.
1276
1277         * WebCore.gypi:
1278         * editing/chromium/EditorChromium.cpp:
1279         (WebCore::Editor::newGeneralClipboard):
1280         * page/chromium/EventHandlerChromium.cpp:
1281         (WebCore::EventHandler::createDraggingClipboard):
1282         * platform/chromium/ChromiumDataObject.cpp:
1283         (WebCore::ChromiumDataObject::ChromiumDataObject):
1284         (WebCore::ChromiumDataObject::create):
1285         (WebCore::ChromiumDataObject::createReadable):
1286         (WebCore::ChromiumDataObject::createWritable):
1287         (WebCore::ChromiumDataObject::clearData):
1288         (WebCore::ChromiumDataObject::clearAll):
1289         (WebCore::ChromiumDataObject::clearAllExceptFiles):
1290         (WebCore::ChromiumDataObject::hasData):
1291         (WebCore::ChromiumDataObject::types):
1292         (WebCore::ChromiumDataObject::getData):
1293         (WebCore::ChromiumDataObject::setData):
1294         (WebCore::ChromiumDataObject::urlTitle):
1295         (WebCore::ChromiumDataObject::setUrlTitle):
1296         (WebCore::ChromiumDataObject::htmlBaseUrl):
1297         (WebCore::ChromiumDataObject::setHtmlBaseUrl):
1298         (WebCore::ChromiumDataObject::containsFilenames):
1299         (WebCore::ChromiumDataObject::filenames):
1300         (WebCore::ChromiumDataObject::setFilenames):
1301         (WebCore::ChromiumDataObject::fileExtension):
1302         (WebCore::ChromiumDataObject::setFileExtension):
1303         (WebCore::ChromiumDataObject::fileContentFilename):
1304         (WebCore::ChromiumDataObject::setFileContentFilename):
1305         (WebCore::ChromiumDataObject::fileContent):
1306         (WebCore::ChromiumDataObject::setFileContent):
1307         * platform/chromium/ChromiumDataObject.h:
1308         * platform/chromium/ChromiumDataObjectLegacy.cpp: Copied from ChromiumDataObject.cpp
1309         (WebCore::ChromiumDataObjectLegacy::clearData):
1310         (WebCore::ChromiumDataObjectLegacy::clearAll):
1311         (WebCore::ChromiumDataObjectLegacy::clearAllExceptFiles):
1312         (WebCore::ChromiumDataObjectLegacy::hasData):
1313         (WebCore::ChromiumDataObjectLegacy::types):
1314         (WebCore::ChromiumDataObjectLegacy::getData):
1315         (WebCore::ChromiumDataObjectLegacy::setData):
1316         (WebCore::ChromiumDataObjectLegacy::ChromiumDataObjectLegacy):
1317         * platform/chromium/ChromiumDataObjectLegacy.h: Copied from ChromiumDataObject.h
1318         (WebCore::ChromiumDataObjectLegacy::create):
1319         (WebCore::ChromiumDataObjectLegacy::copy):
1320         (WebCore::ChromiumDataObjectLegacy::urlTitle):
1321         (WebCore::ChromiumDataObjectLegacy::setUrlTitle):
1322         (WebCore::ChromiumDataObjectLegacy::htmlBaseUrl):
1323         (WebCore::ChromiumDataObjectLegacy::setHtmlBaseUrl):
1324         (WebCore::ChromiumDataObjectLegacy::containsFilenames):
1325         (WebCore::ChromiumDataObjectLegacy::filenames):
1326         (WebCore::ChromiumDataObjectLegacy::setFilenames):
1327         (WebCore::ChromiumDataObjectLegacy::fileExtension):
1328         (WebCore::ChromiumDataObjectLegacy::setFileExtension):
1329         (WebCore::ChromiumDataObjectLegacy::fileContentFilename):
1330         (WebCore::ChromiumDataObjectLegacy::setFileContentFilename):
1331         (WebCore::ChromiumDataObjectLegacy::fileContent):
1332         (WebCore::ChromiumDataObjectLegacy::setFileContent):
1333         * platform/chromium/ClipboardChromium.cpp:
1334         (WebCore::ClipboardChromium::create):
1335         * platform/chromium/ClipboardChromium.h:
1336         * platform/chromium/ReadableDataObject.cpp:
1337         (WebCore::ReadableDataObject::getData):
1338         * platform/chromium/WritableDataObject.cpp:
1339         (WebCore::WritableDataObject::setData):
1340
1341 2010-10-11  Anders Carlsson  <andersca@apple.com>
1342
1343         Reviewed by Darin Adler.
1344
1345         Remove WebIconFetcher from WebKit and IconFetcher from WebCore
1346         https://bugs.webkit.org/show_bug.cgi?id=47523
1347
1348         Remove all traces of the WebCore IconFetcher class. It's SPI that nobody uses.
1349
1350         * GNUmakefile.am:
1351         * WebCore.exp.in:
1352         * WebCore.gyp/WebCore.gyp:
1353         * WebCore.gypi:
1354         * WebCore.vcproj/WebCore.vcproj:
1355         * WebCore.xcodeproj/project.pbxproj:
1356         * loader/icon/IconFetcher.cpp: Removed.
1357         * loader/icon/IconFetcher.h: Removed.
1358
1359 2010-10-11  Jia Pu  <jpu@apple.com>
1360
1361         Reviewed by Adele Peterson.
1362
1363         Should commit pending autocorrection before next round of text checking.
1364         https://bugs.webkit.org/show_bug.cgi?id=46986
1365         <rdar://problem/8424535>
1366
1367         1. Apply pending autocorrection before calling markAllMisspellingsAndBadGrammarInRanges().
1368         2. Remove unneccessary calls to dismissCorrectionPanel(), since the panel is dismissed when
1369            selection changes, which occurs after every typing command.
1370
1371         * editing/Editor.cpp:
1372         (WebCore::Editor::markMisspellingsAfterTypingToPosition): Apply pending autocorrection.
1373         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Store current correction replacement
1374           in m_correctionReplacementString.
1375         (WebCore::Editor::startCorrectionPanelTimer): Remove call to dismissCorrectionPanel().
1376         * editing/Editor.h: Add m_correctionReplacementString to store proposed autocorrection string.
1377
1378 2010-10-11  Oliver Hunt  <oliver@apple.com>
1379
1380         Reviewed by Adam Barth.
1381
1382         Make fast/canvas/webgl/glsl-conformance pass again
1383         https://bugs.webkit.org/show_bug.cgi?id=47525
1384
1385         Remove incorrect call to glGetShaderiv, so it is only
1386         called in the case where we don't have our own simulated
1387         log.
1388
1389         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
1390         (WebCore::GraphicsContext3D::getShaderInfoLog):
1391
1392 2010-10-11  Sam Weinig  <sam@webkit.org>
1393
1394         Reviewed by Anders Carlsson.
1395
1396         Add WebKit2 equivalents for setValueForUser and setAutoFilled
1397         <rdar://problem/8475934>
1398         https://bugs.webkit.org/show_bug.cgi?id=47524
1399
1400         * WebCore.exp.in: Add needed export.
1401
1402 2010-10-11  Andrei Popescu  <andreip@google.com>
1403
1404         Reviewed by Jeremy Orlow.
1405
1406         The names of IndexedDB-specific attributes of DOMWindow should be prefixed with 'webkit'.
1407         https://bugs.webkit.org/show_bug.cgi?id=47508
1408
1409         * bindings/generic/RuntimeEnabledFeatures.h:
1410         (WebCore::RuntimeEnabledFeatures::setWebkitIndexedDBEnabled):
1411         (WebCore::RuntimeEnabledFeatures::webkitIndexedDBEnabled):
1412         (WebCore::RuntimeEnabledFeatures::webkitIDBCursorEnabled):
1413         (WebCore::RuntimeEnabledFeatures::webkitIDBDatabaseEnabled):
1414         (WebCore::RuntimeEnabledFeatures::webkitIDBDatabaseErrorEnabled):
1415         (WebCore::RuntimeEnabledFeatures::webkitIDBDatabaseExceptionEnabled):
1416         (WebCore::RuntimeEnabledFeatures::webkitIDBErrorEventEnabled):
1417         (WebCore::RuntimeEnabledFeatures::webkitIDBEventEnabled):
1418         (WebCore::RuntimeEnabledFeatures::webkitIDBFactoryEnabled):
1419         (WebCore::RuntimeEnabledFeatures::webkitIDBIndexEnabled):
1420         (WebCore::RuntimeEnabledFeatures::webkitIDBKeyRangeEnabled):
1421         (WebCore::RuntimeEnabledFeatures::webkitIDBObjectStoreEnabled):
1422         (WebCore::RuntimeEnabledFeatures::webkitIDBRequestEnabled):
1423         (WebCore::RuntimeEnabledFeatures::webkitIDBSuccessEventEnabled):
1424         (WebCore::RuntimeEnabledFeatures::webkitIDBTransactionEnabled):
1425         * page/DOMWindow.cpp:
1426         (WebCore::DOMWindow::webkitIndexedDB):
1427         * page/DOMWindow.h:
1428         * page/DOMWindow.idl:
1429
1430 2010-10-11  Sam Weinig  <sam@webkit.org>
1431
1432         Reviewed by Anders Carlsson.
1433
1434         Add ability to convert from a JSObjectRef back to a WKBundleNodeHandleRef
1435         https://bugs.webkit.org/show_bug.cgi?id=47509
1436
1437         * WebCore.exp.in: Export toNode.
1438
1439 2010-10-11  Martin Robinson  <mrobinson@igalia.com>
1440
1441         Reviewed by Tony Chang.
1442
1443         [GTK] editing/pasteboard/dataTransfer-setData-getData.html fails on GTK+
1444         https://bugs.webkit.org/show_bug.cgi?id=47244
1445
1446         Store the URI list as a String in DataObjectGtk, so that non-URI elements
1447         are preserved when getData(...) is called. This necessitates some other
1448         changes, including adding a m_filenames member to DataObjectGtk to store
1449         filenames extracted during setURIList(...). The logic in getData(...) has
1450         also changed to set success = true no matter what to match the spec. A
1451         followup patch will remove this parameter completely for all platforms.
1452
1453         * platform/gtk/ClipboardGtk.cpp:
1454         (WebCore::ClipboardGtk::getData): Always succeed to match the HTML5
1455         spec and Firefox. Simply return the uriList string from the DataObject
1456         instead of reconstructing it from a vector of KURLs.
1457         (WebCore::ClipboardGtk::setData): The DataObject now accepts a string
1458         for the uriList parameter.
1459         (WebCore::ClipboardGtk::types): Predicate the "Files" member on 
1460         DataObjectGtk::hasFilenames().
1461         (WebCore::ClipboardGtk::files): Update to reflect the change from
1462         DataObjectGtk::files() to DataObjectGtk::filenames().
1463         * platform/gtk/DataObjectGtk.cpp:
1464         (WebCore::DataObjectGtk::setURIList): Expanded this setter to find the
1465         first valid URL to use as the m_url member and also extract a list of filenames
1466         from the URI list.
1467         (WebCore::DataObjectGtk::setURL): Updated to reflect changes to m_uriList.
1468         (WebCore::DataObjectGtk::clear): Updated to reflect changes to m_uriList and
1469         also leave a comment explaining why we do not clear filenames here.
1470         * platform/gtk/DataObjectGtk.h:
1471         (WebCore::DataObjectGtk::url): This implementation is now a simple getter.
1472         (WebCore::DataObjectGtk::uriList): Ditto.
1473         (WebCore::DataObjectGtk::filenames): Added.
1474         (WebCore::DataObjectGtk::hasURL): Now a simple check.
1475         (WebCore::DataObjectGtk::hasFilenames): Added.
1476         (WebCore::DataObjectGtk::clearURIList): Simple setter.
1477         (WebCore::DataObjectGtk::clearURL): Ditto.
1478         * platform/gtk/DragDataGtk.cpp:
1479         (WebCore::DragData::containsFiles): Updated to access DataObjectGtk::hasFilenames().
1480         (WebCore::DragData::asFilenames): Updated to access DataObjectGtk::filenames().
1481         * platform/gtk/PasteboardHelper.cpp:
1482         (WebCore::PasteboardHelper::getClipboardContents): Use the uriList as a string now.
1483         (WebCore::PasteboardHelper::fillSelectionData):  Ditto.
1484         (WebCore::PasteboardHelper::fillDataObjectFromDropData): Ditto.
1485
1486 2010-10-11  James Robinson  <jamesr@chromium.org>
1487
1488         Reviewed by Kenneth Russell.
1489
1490         [chromium] DRT crash in fast/canvas tests w/accel 2D canvas due to NULL DrawingBuffer
1491         https://bugs.webkit.org/show_bug.cgi?id=47241
1492
1493         Avoid initializing accelerated graphics objects on CanvasRenderingContext2D
1494         if there is no drawingContext associated with the canvas.
1495
1496         Test: fast/canvas/access-zero-sized-canvas.html
1497               fast/canvas/canvas-skia-excessive-size.html
1498               fast/canvas/toDataURL-noData.html
1499         with --accelerated-compositing and --accelerated-2d-canvas
1500
1501         * html/canvas/CanvasRenderingContext2D.cpp:
1502         (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
1503         (WebCore::CanvasRenderingContext2D::reset):
1504
1505 2010-10-11  Martin Robinson  <mrobinson@igalia.com>
1506
1507         Reviewed by Gustavo Noronha Silva.
1508
1509         [GTK] Cleanup font selection code for the Freetype backend
1510         https://bugs.webkit.org/show_bug.cgi?id=47503
1511
1512         Do some miscellaneous cleanup work in the Freetype font font selection backend.
1513
1514         * platform/graphics/cairo/FontCacheFreeType.cpp:
1515         (WebCore::getFamilyNameStringFromFontDescriptionAndFamily): Modified this method to return
1516         a WebCore String.
1517         (WebCore::FontCache::createFontPlatformData): Do a bit of cleanup in this method: properly
1518         handle cursive and fantasy as fallback-like fonts. Instead of using raw CStrings do string
1519         comparisons using WebCore Strings. Remove a large block comment that originated from a
1520         Apache-licensed file.
1521
1522 2010-10-11  Martin Robinson  <mrobinson@igalia.com>
1523
1524         Reviewed by Gustavo Noronha Silva.
1525
1526         [GTK] Buttons activated with the keyboard should be painted as clicked
1527         https://bugs.webkit.org/show_bug.cgi?id=18364
1528
1529         When a button is pressed, force it into the hovered state as far as the
1530         Mozilla theme drawing code is concerned. This bug also seems to be an
1531         issue for Firefox. When we switch away from the Mozilla theme drawing
1532         code this work-around should no longer be necessary.
1533
1534         No new tests. I was not able to generate a pixel test for this issue. It
1535         seems that our DRT does not have the necessary infrastructure to generate a
1536         pixel dump while a button is in the pressed state.
1537
1538         * platform/gtk/RenderThemeGtk.cpp:
1539         (WebCore::RenderThemeGtk::paintRenderObject):
1540
1541 2010-10-11  Jian Li  <jianli@chromium.org>
1542
1543         Unreviewed. Build fix.
1544
1545         * bindings/js/JSArrayBufferCustom.cpp:
1546         * bindings/js/JSArrayBufferViewCustom.cpp:
1547         * bindings/js/JSFloat32ArrayCustom.cpp:
1548         * bindings/js/JSInt16ArrayCustom.cpp:
1549         * bindings/js/JSInt32ArrayCustom.cpp:
1550         * bindings/js/JSInt8ArrayCustom.cpp:
1551         * bindings/js/JSUint16ArrayCustom.cpp:
1552         * bindings/js/JSUint32ArrayCustom.cpp:
1553         * bindings/js/JSUint8ArrayCustom.cpp:
1554         * bindings/v8/custom/V8ArrayBufferCustom.cpp:
1555         * bindings/v8/custom/V8ArrayBufferViewCustom.cpp:
1556         * bindings/v8/custom/V8Float32ArrayCustom.cpp:
1557         * bindings/v8/custom/V8Int16ArrayCustom.cpp:
1558         * bindings/v8/custom/V8Int32ArrayCustom.cpp:
1559         * bindings/v8/custom/V8Int8ArrayCustom.cpp:
1560         * bindings/v8/custom/V8Uint16ArrayCustom.cpp:
1561         * bindings/v8/custom/V8Uint32ArrayCustom.cpp:
1562         * bindings/v8/custom/V8Uint8ArrayCustom.cpp:
1563
1564 2010-10-11  Brent Fulgham  <bfulgham@webkit.org>
1565
1566         Unreviewed WinCairo build fixes.
1567
1568         * platform/network/curl/ResourceResponse.h: Correct forward declaration
1569         for CFURLResponseRef.
1570         * rendering/RenderMediaControls.h: Add ENABLE(VIDEO) guard to new
1571         header file to avoid build failure on non-VIDEO builds.
1572
1573 2010-10-11  Jian Li  <jianli@chromium.org>
1574
1575         Reviewed by Adam Barth.
1576
1577         Add File API feature guard to all typed array files
1578         https://bugs.webkit.org/show_bug.cgi?id=47437
1579
1580         Since we're going to add ArrayBuffer support to FileReader and BlobBuilder,
1581         we need to update all type array files to include File API feature guard
1582         in addition to the existing 3D_CANVAS guard. When ArrayBuffer is used in
1583         XMLHttpRequest, we will then remove all the guards. This is per the
1584         discussion on webkit-dev mailing list:
1585         https://lists.webkit.org/pipermail/webkit-dev/2010-October/014716.html
1586
1587         * html/canvas/ArrayBuffer.cpp:
1588         * html/canvas/ArrayBuffer.idl:
1589         * html/canvas/ArrayBufferView.cpp:
1590         * html/canvas/ArrayBufferView.idl:
1591         * html/canvas/Float32Array.cpp:
1592         * html/canvas/Float32Array.idl:
1593         * html/canvas/Int16Array.cpp:
1594         * html/canvas/Int16Array.idl:
1595         * html/canvas/Int32Array.cpp:
1596         * html/canvas/Int32Array.idl:
1597         * html/canvas/Int8Array.cpp:
1598         * html/canvas/Int8Array.idl:
1599         * html/canvas/Uint16Array.cpp:
1600         * html/canvas/Uint16Array.idl:
1601         * html/canvas/Uint32Array.cpp:
1602         * html/canvas/Uint32Array.idl:
1603         * html/canvas/Uint8Array.cpp:
1604         * html/canvas/Uint8Array.idl:
1605
1606 2010-10-11  Andreas Kling  <kling@webkit.org>
1607
1608         Build fix (implicit float conversion in Path.cpp)
1609
1610         * platform/graphics/Path.cpp:
1611
1612 2010-10-11  Girish Ramakrishnan  <girish@forwardbias.in>
1613
1614         Reviewed by Kenneth Rohde Christiansen.
1615
1616         [Qt] Refactor Plugin X Pixmap painting code to a separate function
1617
1618         The refactored function will be used for rendering by the Accelerated
1619         Composition enabled graphics layer.
1620
1621         https://bugs.webkit.org/show_bug.cgi?id=35524
1622
1623         * plugins/PluginView.h:
1624         * plugins/qt/PluginViewQt.cpp:
1625         (WebCore::PluginView::paintUsingXPixmap):
1626         (WebCore::PluginView::paint):
1627
1628 2010-10-11  Andreas Kling  <kling@webkit.org>
1629
1630         Reviewed by Dirk Schulze.
1631
1632         SVG: Remove "create" methods and use port-specific "add" counterparts
1633         https://bugs.webkit.org/show_bug.cgi?id=46052
1634
1635         Circles and ellipses will be significantly faster on platforms that
1636         implement Path::addEllipse() in a sane fashion.
1637
1638         Also, a lot of Path copying has been factored out by changing functions
1639         that would return Paths to take Path& arguments instead (toPathData, toClipPath)
1640
1641         * mathml/RenderMathMLRoot.cpp:
1642         (WebCore::RenderMathMLRoot::paint):
1643         * mathml/RenderMathMLSquareRoot.cpp:
1644         (WebCore::RenderMathMLSquareRoot::paint):
1645         * platform/graphics/GraphicsContext.cpp:
1646         (WebCore::GraphicsContext::addRoundedRectClip):
1647         (WebCore::GraphicsContext::clipOutRoundedRect):
1648         * platform/graphics/Path.cpp:
1649         (WebCore::pathLengthApplierFunction):
1650         (WebCore::Path::addRoundedRect):
1651         * platform/graphics/Path.h:
1652         * platform/graphics/cairo/ContextShadowCairo.cpp:
1653         (WebCore::ContextShadow::drawRectShadowWithoutTiling):
1654         (WebCore::ContextShadow::drawRectShadow):
1655         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1656         (WebCore::GraphicsContext::drawFocusRing):
1657         (WebCore::GraphicsContext::drawTiledShadow):
1658         (WebCore::GraphicsContext::fillRoundedRect):
1659         * platform/graphics/cg/GraphicsContextCG.cpp:
1660         (WebCore::GraphicsContext::fillRoundedRect):
1661         * platform/graphics/qt/GraphicsContextQt.cpp:
1662         (WebCore::GraphicsContext::fillRoundedRect):
1663         * rendering/RenderBoxModelObject.cpp:
1664         (WebCore::RenderBoxModelObject::paintBorder):
1665         (WebCore::RenderBoxModelObject::paintBoxShadow):
1666         * rendering/RenderEmbeddedObject.cpp:
1667         (WebCore::RenderEmbeddedObject::getReplacementTextGeometry):
1668         * rendering/RenderSVGResourceClipper.cpp:
1669         (WebCore::RenderSVGResourceClipper::pathOnlyClipping):
1670         * rendering/svg/RenderSVGPath.cpp:
1671         (WebCore::RenderSVGPath::layout):
1672         * rendering/svg/RenderSVGTextPath.cpp:
1673         (WebCore::RenderSVGTextPath::layoutPath):
1674         * rendering/svg/SVGInlineTextBox.cpp:
1675         (WebCore::SVGInlineTextBox::paintDecorationWithStyle):
1676         * svg/SVGAnimateMotionElement.cpp:
1677         (WebCore::SVGAnimateMotionElement::animationPath):
1678         * svg/SVGCircleElement.cpp:
1679         (WebCore::SVGCircleElement::toPathData):
1680         * svg/SVGCircleElement.h:
1681         * svg/SVGEllipseElement.cpp:
1682         (WebCore::SVGEllipseElement::toPathData):
1683         * svg/SVGEllipseElement.h:
1684         * svg/SVGLineElement.cpp:
1685         (WebCore::SVGLineElement::toPathData):
1686         * svg/SVGLineElement.h:
1687         * svg/SVGPathElement.cpp:
1688         (WebCore::SVGPathElement::getTotalLength):
1689         (WebCore::SVGPathElement::getPointAtLength):
1690         (WebCore::SVGPathElement::toPathData):
1691         * svg/SVGPathElement.h:
1692         * svg/SVGPolygonElement.cpp:
1693         (WebCore::SVGPolygonElement::toPathData):
1694         * svg/SVGPolygonElement.h:
1695         * svg/SVGPolylineElement.cpp:
1696         (WebCore::SVGPolylineElement::toPathData):
1697         * svg/SVGPolylineElement.h:
1698         * svg/SVGRectElement.cpp:
1699         (WebCore::SVGRectElement::toPathData):
1700         * svg/SVGRectElement.h:
1701         * svg/SVGStyledTransformableElement.cpp:
1702         (WebCore::SVGStyledTransformableElement::toClipPath):
1703         * svg/SVGStyledTransformableElement.h:
1704         (WebCore::SVGStyledTransformableElement::toPathData):
1705         * svg/SVGUseElement.cpp:
1706         (WebCore::SVGUseElement::toClipPath):
1707         * svg/SVGUseElement.h:
1708
1709 2010-10-01  Oliver Hunt  <oliver@apple.com>
1710
1711         Reviewed by Gavin Barraclough.
1712
1713         [ES5] Implement strict mode
1714         https://bugs.webkit.org/show_bug.cgi?id=10701
1715
1716         Test: fast/js/basic-strict-mode.html
1717
1718         Override toStrictThisObject on the domwindow so that
1719         it correctly provides the shell object when used as this
1720         in a strict mode function.
1721
1722         * bindings/js/JSDOMWindowBase.cpp:
1723         (WebCore::JSDOMWindowBase::toStrictThisObject):
1724         * bindings/js/JSDOMWindowBase.h:
1725
1726 2010-10-11  Joseph Pecoraro  <joepeck@webkit.org>
1727
1728         Reviewed by Eric Carlson.
1729
1730         CRASH at WebCore::HTMLSourceElement::scheduleErrorEvent
1731         https://bugs.webkit.org/show_bug.cgi?id=46777
1732
1733         Another case that could lead to an improper set of states between
1734         m_currentNode and m_loadingState. Also added an ASSERT and early
1735         return to prevent crashes if this case can still happen in other ways.
1736
1737         * html/HTMLMediaElement.cpp:
1738         (WebCore::HTMLMediaElement::prepareForLoad):
1739
1740 2010-10-11  Ryosuke Niwa  <rniwa@webkit.org>
1741
1742         Reviewed by Darin Adler.
1743
1744         spellcheck="false" not respected in designMode
1745         https://bugs.webkit.org/show_bug.cgi?id=39978
1746
1747         The bug was caused by WebKit's setting focus to html element rather than body element in design mode.
1748         Because we disable spell-check only if ancestor nodes of the focused element had spellcheck=false,
1749         this caused us to ignore body element's spellcheck attribute.
1750
1751         Fixed the bug by overriding supportsFocus in HTMLBodyElement to make body element focusable
1752         when the parent node of body elements (namely html element) is editable.
1753
1754         Test: editing/spelling/design-mode-spellcheck-off.html
1755
1756         * html/HTMLBodyElement.cpp:
1757         (WebCore::HTMLBodyElement::supportsFocus): Added.
1758         * html/HTMLBodyElement.h:
1759
1760 2010-10-11  Oliver Hunt  <oliver@apple.com>
1761
1762         Build fix -- I thought i had killed the prior commit in time to have this be part of the commit.
1763
1764         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
1765         (WebCore::GraphicsContext3D::getShaderInfoLog):
1766
1767 2010-10-11  Oliver Hunt  <oliver@apple.com>
1768
1769         Reviewed by Andreas Kling.
1770
1771         Incorrect handling of 0 length logs in GraphicsContext3DOpenGL.cpp
1772         https://bugs.webkit.org/show_bug.cgi?id=47494
1773
1774         Working on another patch I found that there was some screwy behaviour
1775         when dealing with logs from GL.  GL_INFO_LOG_LENGTH is defined as being
1776         zero if there is no log message, but we did not check for that case and
1777         simply perfomed a zero sized alloc and passed the resultant buffer to
1778         glGetShaderInfoLog, etc.  glGetShaderInfoLog would then write a null
1779         terminator to the buffer, thus causing an overflow.  This is obviously
1780         not a problem in practice as allocations are at least 4 bytes long in
1781         all common allocators, but it is still a bug.
1782
1783         I also removed some unnecessary null checks following calls to fastMalloc.
1784
1785         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
1786         (WebCore::GraphicsContext3D::getProgramInfoLog):
1787         (WebCore::GraphicsContext3D::getShaderInfoLog):
1788
1789 2010-10-11  Nikolas Zimmermann  <nzimmermann@rim.com>
1790
1791         Reviewed by Andreas Kling.
1792
1793         Kill Path::debugString()
1794         https://bugs.webkit.org/show_bug.cgi?id=47493
1795
1796         Remove the obsolete Path::debugString() method. DRT now dumps paths in a platform independant way.
1797
1798         * platform/graphics/Path.h:
1799         * platform/graphics/cairo/PathCairo.cpp:
1800         * platform/graphics/cg/PathCG.cpp:
1801         * platform/graphics/haiku/PathHaiku.cpp:
1802         * platform/graphics/openvg/PathOpenVG.cpp:
1803         * platform/graphics/qt/PathQt.cpp:
1804         * platform/graphics/skia/PathSkia.cpp:
1805         * platform/graphics/wince/PathWinCE.cpp:
1806         * platform/graphics/wince/PlatformPathWinCE.cpp:
1807         * platform/graphics/wince/PlatformPathWinCE.h:
1808         * platform/graphics/wx/PathWx.cpp:
1809         * svg/SVGGlyphElement.h:
1810         (WebCore::SVGGlyphIdentifier::operator==):
1811
1812 2010-10-11  Martin Robinson  <mrobinson@igalia.com>
1813
1814         Reviewed by Xan Lopez.
1815
1816         [GTK] Search field icons should be centered vertically in the field
1817         https://bugs.webkit.org/show_bug.cgi?id=47441
1818
1819         Center search field icons vertically in the search field.
1820
1821         * platform/gtk/RenderThemeGtk.cpp:
1822         (WebCore::centerRectVerticallyInParentInputElement): Added this helper.
1823         (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration): Center the search
1824         field icon by adjusting its drawing rect relative to the containing search field.
1825         (WebCore::RenderThemeGtk::paintSearchFieldCancelButton): Ditto.
1826
1827 2010-10-11  Pavel Podivilov  <podivilov@chromium.org>
1828
1829         Reviewed by Pavel Feldman.
1830
1831         Web Inspector: fix event listener breakpoints sidebar pane style
1832         https://bugs.webkit.org/show_bug.cgi?id=47487
1833
1834         * inspector/front-end/inspector.css:
1835         (.section .properties, .event-bar .event-properties):
1836         (.section.expanded .properties, .event-bar.expanded .event-properties):
1837         (.properties-tree):
1838         (.properties-tree li):
1839         (.properties-tree li.parent):
1840         (.properties-tree li.parent::before):
1841         (.properties-tree li.parent.expanded::before):
1842         (.properties-tree li .info):
1843         (.properties-tree ol, .stack-trace ol, ol.stack-trace):
1844         (.properties-tree ol.expanded, .stack-trace ol, ol.stack-trace):
1845         (ol.stack-trace):
1846         (.event-listener-breakpoints .event-category):
1847         (.event-listener-breakpoints.properties-tree .children li):
1848         (.event-listener-breakpoints .checkbox-elem):
1849         (.breakpoint-list .breakpoint-hit):
1850
1851 2010-10-11  Andreas Kling  <kling@webkit.org>
1852
1853         Reviewed by Tor Arne Vestbø.
1854
1855         [Qt] Avoid QPainterPath::operator=(QPainterPath()) when possible
1856
1857         Same concept as <http://trac.webkit.org/changeset/69462>, do nothing
1858         when clearing an already empty QPainterPath. Avoids one delete+new.
1859
1860         * platform/graphics/qt/GraphicsContextQt.cpp:
1861         (WebCore::GraphicsContextPlatformPrivate::clearCurrentPath):
1862         (WebCore::GraphicsContext::fillPath):
1863         (WebCore::GraphicsContext::strokePath):
1864         (WebCore::GraphicsContext::beginPath):
1865
1866 2010-10-11  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
1867
1868         Unreviewed. Remove unnecessary GTK+ and Pango includes.
1869
1870         * platform/gtk/FileChooserGtk.cpp:
1871         * platform/gtk/Language.cpp:
1872
1873 2010-10-11  Kinuko Yasuda  <kinuko@chromium.org>
1874
1875         Reviewed by David Levin.
1876
1877         Support DirectoryEntry.removeRecursively for FileSystem API
1878         https://bugs.webkit.org/show_bug.cgi?id=47400
1879
1880         Also disallows remove/removeRecursively on the root directory.
1881
1882         Test: fast/filesystem/op-remove.html
1883
1884         * fileapi/DOMFileSystemBase.cpp:
1885         (WebCore::DOMFileSystemBase::removeRecursively): Added.
1886         * fileapi/DOMFileSystemBase.h:
1887         * fileapi/DirectoryEntry.cpp:
1888         (WebCore::DirectoryEntry::removeRecursively): Added.
1889         * fileapi/DirectoryEntry.h:
1890         * fileapi/DirectoryEntry.idl:
1891         * fileapi/DirectoryEntrySync.cpp:
1892         (WebCore::DirectoryEntrySync::removeRecursively): Added.
1893         * fileapi/DirectoryEntrySync.h:
1894         * fileapi/DirectoryEntrySync.idl:
1895         * platform/AsyncFileSystem.h:
1896
1897 2010-10-11  Dirk Schulze  <krit@webkit.org>
1898
1899         Reviewed by Nikolas Zimmermann.
1900
1901         SVG feImage take preserveAspectRatio into account for absolute paint rect
1902         https://bugs.webkit.org/show_bug.cgi?id=47464
1903
1904         Determine the smallest effect region for SVGFEImage by taking preserveAspectRatio into account.
1905
1906         * svg/graphics/filters/SVGFEImage.cpp:
1907         (WebCore::FEImage::determineAbsolutePaintRect):
1908         (WebCore::FEImage::apply):
1909         * svg/graphics/filters/SVGFEImage.h:
1910
1911 2010-10-10  Abhishek Arya  <inferno@chromium.org>
1912
1913         Reviewed by Dan Bernstein.
1914
1915         <rdar://problem/8510200> Lines flow around a float that has been removed 
1916
1917         Overhanging floats are not added to flexible boxes since they behave like
1918         block formatting contexts. This causes the intruding floats added in siblings
1919         to not get cleared. Enforce the float release by checking if the parent is a
1920         flexible box and if yes, use that as the outermost block.
1921         
1922         https://bugs.webkit.org/show_bug.cgi?id=47104
1923
1924         Test: fast/flexbox/overhanging-floats-removed.html
1925
1926         * rendering/RenderBox.cpp:
1927         (WebCore::RenderBox::removeFloatingOrPositionedChildFromBlockLists):
1928
1929 2010-10-10  Chris Fleizach  <cfleizach@apple.com>
1930
1931         Reviewed by Beth Dakin.
1932
1933         AX: if aria-live is on a <span> or ignored element, live regions don't work
1934         https://bugs.webkit.org/show_bug.cgi?id=47443
1935
1936         If an element has aria attributes, but has no other native role associated with it,
1937         accessibility should fallback to exposing that element as an AXGroup.
1938
1939         Test: platform/mac/accessibility/live-region-on-span.html
1940
1941         * accessibility/AccessibilityRenderObject.cpp:
1942         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
1943
1944 2010-10-10  Daniel Cheng  <dcheng@chromium.org>
1945
1946         Reviewed by Adam Barth.
1947
1948         [chromium] Clipboard no longer accepts 'text' as a synonym for 'text/plain'
1949         https://bugs.webkit.org/show_bug.cgi?id=47419
1950
1951         This was a regression introduced in r68807. mimeTypeText had the incorrect
1952         value.
1953
1954         Test: editing/pasteboard/dataTransfer-setData-getData.html
1955
1956         * platform/chromium/ClipboardMimeTypes.cpp:
1957
1958 2010-10-09  Eric Uhrhane  <ericu@chromium.org>
1959
1960         Reviewed by Andreas Kling.
1961
1962         FileWriter sends write event instead of progress event
1963         https://bugs.webkit.org/show_bug.cgi?id=47454
1964
1965         No new tests; FileWriter tests will be added shortly, but currently
1966         there's no implementation capable of running them.
1967
1968         * fileapi/FileWriter.cpp:
1969         (WebCore::FileWriter::didWrite):
1970
1971 2010-10-09  Andreas Kling  <kling@webkit.org>
1972
1973         Reviewed by Kenneth Rohde Christiansen.
1974
1975         [Qt] Fast-path in Path::clear() for already empty paths
1976         https://bugs.webkit.org/show_bug.cgi?id=47460
1977
1978         The only way to clear a QPainterPath is to assign QPainterPath() to it.
1979         Avoid creating a temporary object etc if the path is already empty.
1980
1981         * platform/graphics/qt/PathQt.cpp:
1982         (WebCore::Path::clear):
1983
1984 2010-10-08  Ryosuke Niwa  <rniwa@webkit.org>
1985
1986         Reviewed by Darin Adler.
1987
1988         Redo in ReplaceNodeWithSpanCommand is broken
1989         https://bugs.webkit.org/show_bug.cgi?id=47428
1990
1991         The bug was caused by ReplaceNodeWithSpanCommand's inheriting from CompositeEditCommand,
1992         and ReplaceNodeWithSpanCommand's not implementing doReapply. Because ReplaceNodeWithSpanCommand's doApply
1993         directly modifies DOM and does not use simple edit commands while CompositeEditCommand's doReapply
1994         only calls reapply of compositing simple edit commands, ReplaceNodeWithSpanCommand's doReapply was no-op.
1995
1996         Fixed the bug by changing the base class of ReplaceNodeWithSpanCommand to SimpleEditCommand.
1997         This allows ReplaceNodeWithSpanCommand's doReapply to call its doApply, which already supports redo operation.
1998
1999         Test: editing/undo/replace-by-span-then-remove.html
2000
2001         * editing/ReplaceNodeWithSpanCommand.cpp:
2002         (WebCore::ReplaceNodeWithSpanCommand::ReplaceNodeWithSpanCommand):
2003         * editing/ReplaceNodeWithSpanCommand.h:
2004
2005 2010-10-09  Carlos Garcia Campos  <cgarcia@igalia.com>
2006
2007         Reviewed by Martin Robinson.
2008
2009         [GTK] Implement subregion rendering in WebView when using gtk3
2010         https://bugs.webkit.org/show_bug.cgi?id=47411
2011
2012         * GNUmakefile.am:
2013         * platform/graphics/FloatRect.h:
2014         * platform/graphics/cairo/FloatRectCairo.cpp: Added.
2015         (WebCore::FloatRect::FloatRect):
2016         (WebCore::FloatRect::operator cairo_rectangle_t):
2017
2018 2010-10-09  Carlos Garcia Campos  <cgarcia@igalia.com>
2019
2020         Reviewed by Martin Robinson.
2021
2022         [GTK] Implement subregion rendering in WebView when using gtk3
2023         https://bugs.webkit.org/show_bug.cgi?id=47411
2024
2025         * GNUmakefile.am:
2026         * platform/graphics/FloatRect.h:
2027         * platform/graphics/cairo/FloatRectCairo.cpp: Added.
2028         (WebCore::FloatRect::FloatRect):
2029         (WebCore::FloatRect::operator cairo_rectangle_t):
2030
2031 2010-10-09  Kwang Yul Seo  <skyul@company100.net>
2032
2033         Reviewed by Andreas Kling.
2034
2035         Add ENABLE(ACCELERATED_2D_CANVAS) guard for m_uploadTexture
2036         https://bugs.webkit.org/show_bug.cgi?id=47114
2037
2038         PlatformContextSkia's m_uploadTexture is used only in code guarded with ENABLE(ACCELERATED_2D_CANVAS).
2039
2040         * platform/graphics/skia/PlatformContextSkia.h:
2041
2042 2010-10-09  Patrick Gansterer  <paroga@webkit.org>
2043
2044         Reviewed by Adam Barth.
2045
2046         Use WTF::StringHasher for hashing MappedAttributeKey
2047         https://bugs.webkit.org/show_bug.cgi?id=46516
2048
2049         * dom/StyledElement.cpp:
2050         (WebCore::MappedAttributeHash::hash):
2051
2052 2010-10-09  Martin Robinson  <mrobinson@igalia.com>
2053
2054         Reviewed by Xan Lopez.
2055
2056         [Gtk] Non-rectangular buttons have a square background behind them
2057         https://bugs.webkit.org/show_bug.cgi?id=23569
2058
2059         Remove some code which was clearing pieces of the GdkDrawable if it was
2060         currently mapped to a window. In our case it is unnecessary, because the
2061         platform-independent parts of the render have already cleared this section
2062         if it is needed.
2063
2064         Mozilla must not trip this code path, which means they are probably rendering
2065         most often to a non-mapped GdkPixmap.
2066
2067         No new tests as some themed rendering is covered by existing tests that
2068         render buttons. This particular bug is very hard to test as it only appears
2069         with certain GTK+ themes and we currently have no mechanism to test different
2070         themes in DRT.
2071
2072         * platform/gtk/gtk2drawing.c:
2073         (moz_gtk_button_paint): Remove unnecessary code.
2074
2075 2010-10-09  Martin Robinson  <mrobinson@igalia.com>
2076
2077         Reviewed by Xan Lopez.
2078
2079         [GTK] Slider padding translate into a larger track rect
2080         https://bugs.webkit.org/show_bug.cgi?id=47435
2081
2082         Instead of painting the track rectangle for ranges onto the entire RenderBox
2083         rectangle, simply paint it on the content rectangle. This prevents misrendering
2084         sliders with padding.
2085
2086         * platform/gtk/RenderThemeGtk.cpp:
2087         (WebCore::RenderThemeGtk::paintSliderTrack): Paint onto the absoluteContentRect
2088         of the slider instead of the entire area (which includes padding).
2089
2090 2010-10-09  Kent Tamura  <tkent@chromium.org>
2091
2092         Unreviewed, trivial regression fix for r69445.
2093
2094         RangeInputType::supportsRequired() should return false.
2095         https://bugs.webkit.org/show_bug.cgi?id=47405
2096
2097         * html/RangeInputType.cpp:
2098         (WebCore::RangeInputType::supportsRequired):
2099         * html/RangeInputType.h:
2100
2101 2010-10-09  Kent Tamura  <tkent@chromium.org>
2102
2103         Reviewed by Dimitri Glazkov.
2104
2105         Refactor HTMLInputElement: Move typeMismatch(), valueMissing(),
2106         isRequiredFormControl(), and recalcWillValidate()
2107         https://bugs.webkit.org/show_bug.cgi?id=47405
2108
2109         Also make checkedRadioButtons() an inline member function of
2110         HTMLInputElement in order that RadioInputType can use it.
2111
2112         * html/BaseDateAndTimeInputType.cpp:
2113         (WebCore::BaseDateAndTimeInputType::typeMismatchFor):
2114         (WebCore::BaseDateAndTimeInputType::typeMismatch):
2115         * html/BaseDateAndTimeInputType.h:
2116         * html/ButtonInputType.cpp:
2117         (WebCore::ButtonInputType::supportsValidation):
2118         * html/ButtonInputType.h:
2119         * html/CheckboxInputType.cpp:
2120         (WebCore::CheckboxInputType::valueMissing):
2121         * html/CheckboxInputType.h:
2122         * html/ColorInputType.cpp:
2123         (WebCore::isValidColorString):
2124         (WebCore::ColorInputType::typeMismatchFor):
2125         (WebCore::ColorInputType::typeMismatch):
2126         (WebCore::ColorInputType::supportsRequired):
2127         * html/ColorInputType.h:
2128         * html/EmailInputType.cpp:
2129         (WebCore::isValidEmailAddress):
2130         (WebCore::EmailInputType::typeMismatchFor):
2131         (WebCore::EmailInputType::typeMismatch):
2132         * html/EmailInputType.h:
2133         * html/FileInputType.cpp:
2134         (WebCore::FileInputType::valueMissing):
2135         * html/FileInputType.h:
2136         * html/HTMLInputElement.cpp:
2137         (WebCore::HTMLInputElement::updateCheckedRadioButtons):
2138         (WebCore::HTMLInputElement::isValidValue):
2139         (WebCore::HTMLInputElement::typeMismatch):
2140         (WebCore::HTMLInputElement::valueMissing):
2141         (WebCore::HTMLInputElement::isKeyboardFocusable):
2142         (WebCore::HTMLInputElement::updateType):
2143         (WebCore::HTMLInputElement::parseMappedAttribute):
2144         (WebCore::HTMLInputElement::setChecked):
2145         (WebCore::HTMLInputElement::preDispatchEventHandler):
2146         (WebCore::HTMLInputElement::isRequiredFormControl):
2147         (WebCore::HTMLInputElement::recalcWillValidate):
2148         * html/HTMLInputElement.h:
2149         (WebCore::HTMLInputElement::checkedRadioButtons):
2150         * html/HiddenInputType.cpp:
2151         (WebCore::HiddenInputType::supportsValidation):
2152         * html/HiddenInputType.h:
2153         * html/ImageInputType.cpp:
2154         (WebCore::ImageInputType::supportsValidation):
2155         * html/ImageInputType.h:
2156         * html/InputType.cpp:
2157         (WebCore::InputType::supportsValidation):
2158         (WebCore::InputType::typeMismatchFor):
2159         (WebCore::InputType::typeMismatch):
2160         (WebCore::InputType::supportsRequired):
2161         (WebCore::InputType::valueMissing):
2162         * html/InputType.h:
2163         * html/IsIndexInputType.cpp:
2164         (WebCore::IsIndexInputType::supportsRequired):
2165         * html/IsIndexInputType.h:
2166         * html/NumberInputType.cpp:
2167         (WebCore::NumberInputType::typeMismatchFor):
2168         (WebCore::NumberInputType::typeMismatch):
2169         * html/NumberInputType.h:
2170         * html/RadioInputType.cpp:
2171         (WebCore::RadioInputType::valueMissing):
2172         * html/RadioInputType.h:
2173         * html/ResetInputType.cpp:
2174         (WebCore::ResetInputType::supportsValidation):
2175         * html/ResetInputType.h:
2176         * html/SubmitInputType.cpp:
2177         (WebCore::SubmitInputType::supportsValidation):
2178         * html/SubmitInputType.h:
2179         * html/TextFieldInputType.cpp:
2180         (WebCore::TextFieldInputType::valueMissing):
2181         * html/TextFieldInputType.h:
2182         * html/URLInputType.cpp:
2183         (WebCore::URLInputType::typeMismatchFor):
2184         (WebCore::URLInputType::typeMismatch):
2185         * html/URLInputType.h:
2186         * html/ValidityState.cpp:
2187         (WebCore::ValidityState::typeMismatch):
2188
2189 2010-10-09  Pratik Solanki  <psolanki@apple.com>
2190
2191         Reviewed by Dan Bernstein.
2192
2193         https://bugs.webkit.org/show_bug.cgi?id=47450
2194         Crash in WebCore::SocketStreamHandle::chooseProxyFromArray because proxyArray passed is nil
2195         <rdar://problem/8244376>
2196
2197         * platform/network/cf/SocketStreamHandleCFNet.cpp:
2198         (WebCore::SocketStreamHandle::chooseProxyFromArray): If proxyArray is
2199         NULL, return early to avoid crash.
2200
2201 2010-10-08  Chris Rogers  <crogers@google.com>
2202
2203         Reviewed by James Robinson.
2204
2205         Add HRTFPanner files
2206         https://bugs.webkit.org/show_bug.cgi?id=46299
2207
2208         No new tests since audio API is not yet implemented.
2209
2210         * platform/audio/HRTFPanner.cpp: Added.
2211         (WebCore::HRTFPanner::HRTFPanner):
2212         (WebCore::HRTFPanner::~HRTFPanner):
2213         (WebCore::HRTFPanner::fftSizeForSampleRate):
2214         (WebCore::HRTFPanner::reset):
2215         (WebCore::wrapDistance):
2216         (WebCore::HRTFPanner::calculateDesiredAzimuthIndexAndBlend):
2217         (WebCore::HRTFPanner::pan):
2218         * platform/audio/HRTFPanner.h: Added.
2219         (WebCore::HRTFPanner::fftSize):
2220         (WebCore::HRTFPanner::sampleRate):
2221
2222 2010-10-08  James Robinson  <jamesr@chromium.org>
2223
2224         Reviewed by Adam Barth.
2225
2226         Avoid inlining large and/or virtual functions in widely included header files
2227         https://bugs.webkit.org/show_bug.cgi?id=47230
2228
2229         Functions with very large bodies should not be included in widely included header files.
2230         This results in the function's code ending up included in hundreds of object files that
2231         the linker has to discard, at a cost of linker memory use, link time, and disk space. This
2232         is a particular problem in the Chromium windows build where MSVC often exhausts its 32-bit
2233         virtual address space and completely fails to link.
2234
2235         This patch moves function definitions from the .h to the corresponding .cpp when the function
2236         is large and not a candidate for inlining either because it is virtual or because its size is
2237         above any reasonable compiler's threshhold for inlining.  The most common case by far in this
2238         patch is changing a class' implicitly defined destructor to an explicitly declared d'tor in
2239         the header and an explicitly defined d'tor in the .cpp.  This is important since many of our
2240         container and utility classes (especially Vector, String, and HashSet) have quite large
2241         destructors.
2242
2243         This patch removes 22.4MB of object file size in a debug 64 bit compile.
2244
2245         * css/CSSBorderImageValue.cpp:
2246         (WebCore::CSSBorderImageValue::~CSSBorderImageValue):
2247         * css/CSSBorderImageValue.h:
2248         * css/CSSFontFaceSrcValue.cpp:
2249         (WebCore::CSSFontFaceSrcValue::~CSSFontFaceSrcValue):
2250         * css/CSSFontFaceSrcValue.h:
2251         * css/CSSFunctionValue.h:
2252         * dom/BeforeTextInsertedEvent.cpp:
2253         (WebCore::BeforeTextInsertedEvent::~BeforeTextInsertedEvent):
2254         * dom/BeforeTextInsertedEvent.h:
2255         * dom/BeforeUnloadEvent.cpp:
2256         (WebCore::BeforeUnloadEvent::~BeforeUnloadEvent):
2257         * dom/BeforeUnloadEvent.h:
2258         * dom/ClassNodeList.h:
2259         * dom/ClipboardEvent.cpp:
2260         (WebCore::ClipboardEvent::~ClipboardEvent):
2261         * dom/ClipboardEvent.h:
2262         * dom/CustomEvent.cpp:
2263         (WebCore::CustomEvent::~CustomEvent):
2264         * dom/CustomEvent.h:
2265         * dom/Element.cpp:
2266         * dom/Element.h:
2267         * dom/EventTarget.cpp:
2268         (WebCore::EventTargetData::EventTargetData):
2269         * dom/EventTarget.h:
2270         * dom/InputElement.cpp:
2271         (WebCore::InputElementData::~InputElementData):
2272         * dom/InputElement.h:
2273         * dom/MutationEvent.cpp:
2274         (WebCore::MutationEvent::~MutationEvent):
2275         * dom/MutationEvent.h:
2276         * dom/Node.cpp:
2277         (WebCore::Node::refEventTarget):
2278         (WebCore::Node::derefEventTarget):
2279         * dom/Node.h:
2280         * dom/OptionElement.cpp:
2281         (WebCore::OptionElementData::~OptionElementData):
2282         * dom/OptionElement.h:
2283         * dom/PopStateEvent.cpp:
2284         (WebCore::PopStateEvent::~PopStateEvent):
2285         * dom/PopStateEvent.h:
2286         * dom/QualifiedName.cpp:
2287         (WebCore::QualifiedName::~QualifiedName):
2288         * dom/QualifiedName.h:
2289         * dom/SelectElement.cpp:
2290         (WebCore::SelectElementData::~SelectElementData):
2291         * dom/SelectElement.h:
2292         * dom/StaticHashSetNodeList.cpp:
2293         (WebCore::StaticHashSetNodeList::StaticHashSetNodeList):
2294         (WebCore::StaticHashSetNodeList::~StaticHashSetNodeList):
2295         * dom/StaticHashSetNodeList.h:
2296         * dom/StyleElement.cpp:
2297         (WebCore::StyleElement::~StyleElement):
2298         * dom/StyleElement.h:
2299         * dom/TouchEvent.cpp:
2300         (WebCore::TouchEvent::TouchEvent):
2301         (WebCore::TouchEvent::~TouchEvent):
2302         * dom/TouchEvent.h:
2303         * editing/CompositeEditCommand.cpp:
2304         (WebCore::CompositeEditCommand::~CompositeEditCommand):
2305         * editing/CompositeEditCommand.h:
2306         * editing/TextIterator.cpp:
2307         (WebCore::BitStack::~BitStack):
2308         (WebCore::TextIterator::~TextIterator):
2309         (WebCore::WordAwareIterator::~WordAwareIterator):
2310         * editing/TextIterator.h:
2311         * inspector/InspectorValues.cpp:
2312         (WebCore::InspectorObject::~InspectorObject):
2313         (WebCore::InspectorObject::InspectorObject):
2314         (WebCore::InspectorArray::~InspectorArray):
2315         (WebCore::InspectorArray::InspectorArray):
2316         * inspector/InspectorValues.h:
2317         * loader/CachedResource.cpp:
2318         (WebCore::CachedResource::registerHandle):
2319         (WebCore::CachedResource::unregisterHandle):
2320         * loader/CachedResource.h:
2321         * platform/network/HTTPHeaderMap.cpp:
2322         (WebCore::HTTPHeaderMap::HTTPHeaderMap):
2323         (WebCore::HTTPHeaderMap::~HTTPHeaderMap):
2324         (WebCore::HTTPHeaderMap::get):
2325         (WebCore::HTTPHeaderMap::add):
2326         * platform/network/HTTPHeaderMap.h:
2327         * rendering/RenderApplet.cpp:
2328         (WebCore::RenderApplet::~RenderApplet):
2329         * rendering/RenderApplet.h:
2330         * rendering/RenderButton.cpp:
2331         (WebCore::RenderButton::~RenderButton):
2332         * rendering/RenderButton.h:
2333         * rendering/RenderCounter.cpp:
2334         (WebCore::RenderCounter::~RenderCounter):
2335         * rendering/RenderCounter.h:
2336         * rendering/RenderFieldset.h:
2337         * rendering/RenderForeignObject.cpp:
2338         (WebCore::RenderForeignObject::~RenderForeignObject):
2339         * rendering/RenderForeignObject.h:
2340         * rendering/RenderFrame.h:
2341         * rendering/RenderFrameBase.h:
2342         * rendering/RenderHTMLCanvas.h:
2343         * rendering/RenderIFrame.h:
2344         * rendering/RenderInline.h:
2345         * rendering/RenderListItem.h:
2346         * rendering/RenderMarquee.cpp:
2347         (WebCore::RenderMarquee::~RenderMarquee):
2348         * rendering/RenderMarquee.h:
2349         * rendering/RenderPath.cpp:
2350         (WebCore::RenderPath::~RenderPath):
2351         * rendering/RenderPath.h:
2352         * rendering/RenderSVGBlock.h:
2353         * rendering/RenderSVGContainer.cpp:
2354         (WebCore::RenderSVGContainer::~RenderSVGContainer):
2355         * rendering/RenderSVGContainer.h:
2356         * rendering/RenderSVGHiddenContainer.h:
2357         * rendering/RenderSVGInline.h:
2358         * rendering/RenderSVGInlineText.cpp:
2359         (WebCore::RenderSVGInlineText::~RenderSVGInlineText):
2360         * rendering/RenderSVGInlineText.h:
2361         * rendering/RenderSVGModelObject.h:
2362         * rendering/RenderSVGResourceFilterPrimitive.h:
2363         * rendering/RenderSVGRoot.cpp:
2364         (WebCore::RenderSVGRoot::~RenderSVGRoot):
2365         * rendering/RenderSVGRoot.h:
2366         * rendering/RenderSVGTSpan.h:
2367         * rendering/RenderSVGText.h:
2368         * rendering/RenderSVGTextPath.h:
2369         * rendering/RenderSVGTransformableContainer.h:
2370         * rendering/RenderSVGViewportContainer.h:
2371         * rendering/RenderTable.cpp:
2372         (WebCore::RenderTable::~RenderTable):
2373         * rendering/RenderTable.h:
2374         * rendering/RenderTableCell.h:
2375         * rendering/RenderTableCol.h:
2376         * rendering/RenderTableRow.h:
2377         * rendering/RenderTextFragment.cpp:
2378         (WebCore::RenderTextFragment::~RenderTextFragment):
2379         * rendering/RenderTextFragment.h:
2380         * rendering/RenderWordBreak.h:
2381         * svg/SVGStyledElement.cpp:
2382         (WebCore::SVGStyledElement::~SVGStyledElement):
2383         * svg/SVGStyledElement.h:
2384         * svg/SVGStyledTransformableElement.cpp:
2385         (WebCore::SVGStyledTransformableElement::~SVGStyledTransformableElement):
2386         * svg/SVGStyledTransformableElement.h:
2387         * xml/XPathParser.cpp:
2388         (WebCore::XPath::Parser::~Parser):
2389         * xml/XPathParser.h:
2390
2391 2010-10-08  Martin Robinson  <mrobinson@igalia.com>
2392
2393         Reviewed by Daniel Bates.
2394
2395         [GTK] Fails /LayoutTests/fast/css/button-height.html
2396         https://bugs.webkit.org/show_bug.cgi?id=33936
2397
2398         GTK buttons honor height property set via CSS. The code for the method
2399         adjustButtonStyle originates from the original GTK+ theme drawing code
2400         and is clearly just a copy-paste from the Safari theme drawing code. The
2401         Safari theme drawing code does quite a bit of work to ensure that button
2402         fonts are consistent with the system theme, which is not something the GTK+
2403         port does.
2404
2405         This change brings the method more in line with the Chromium port, which
2406         allows CSS to style buttons, only overriding the line-height property,
2407         which is required for layout tests to pass.
2408
2409         * platform/gtk/RenderThemeGtk.cpp:
2410         (WebCore::RenderThemeGtk::adjustButtonStyle): No longer override most CSS
2411         properties for button styling.
2412
2413 2010-10-08  Mihai Parparita  <mihaip@chromium.org>
2414
2415         Reviewed by Adam Barth.
2416
2417         popstate events are lost when network connection is in progress
2418         https://bugs.webkit.org/show_bug.cgi?id=42940
2419         
2420         Instead of checking FrameLoader::isComplete() (which isn't true if the
2421         document's resource loader has requests outstanding), check that the
2422         document's readyState is complete, as the spec says.
2423
2424         Test: http/tests/history/popstate-fires-with-pending-requests.html
2425
2426         * dom/Document.cpp:
2427         (WebCore::Document::statePopped):
2428         * loader/FrameLoader.cpp:
2429         (WebCore::FrameLoader::didBeginDocument): Added call to set readyState
2430         to Loading earlier. Otherwise, readyState's initial value is Complete,
2431         and we only set it to Loading in Document::implicitOpen (which is called
2432         after FrameLoader::didBeginDocument by DocumentWriter::begin), so we 
2433         could end up in Document::statePopped and have the readyState be
2434         Complete, even if we hadn't even begin loading the document.
2435
2436 2010-10-08  Daniel Cheng  <dcheng@chromium.org>
2437
2438         Reviewed by Tony Chang.
2439
2440         [chromium] Update ReadableDataObject/WritableDataObject interface for ChromiumDataObject change
2441         https://bugs.webkit.org/show_bug.cgi?id=47394
2442
2443         Minor cleanup--these classes have suffered from bit rot since they aren't
2444         actively used at the moment. The three main changes are to:
2445         1) Condense getURL, setURL, getHTML, setHTML, urlTitle, htmlBaseUrl,
2446            setUrlTitle, and sethtmlBaseUrl into setters/getters for just the URL
2447            title and HTML base URL.
2448         2) Use Clipboard::ClipboardType instead of a bool.
2449         3) Remove the use of virtuals, as they are no longer needed..
2450
2451         * platform/chromium/ReadableDataObject.cpp:
2452         (WebCore::clipboardBuffer):
2453         (WebCore::ReadableDataObject::create):
2454         (WebCore::ReadableDataObject::ReadableDataObject):
2455         (WebCore::ReadableDataObject::getData):
2456         (WebCore::ReadableDataObject::urlTitle): renamed from getURL
2457         (WebCore::ReadableDataObject::htmlBaseUrl): renamed from getHTML
2458         (WebCore::ReadableDataObject::containsFilenames):
2459         (WebCore::ReadableDataObject::filenames):
2460         (WebCore::ReadableDataObject::ensureTypeCacheInitialized):
2461         * platform/chromium/ReadableDataObject.h:
2462         * platform/chromium/WritableDataObject.cpp:
2463         (WebCore::WritableDataObject::create):
2464         (WebCore::WritableDataObject::WritableDataObject):
2465         (WebCore::WritableDataObject::setData):
2466         * platform/chromium/WritableDataObject.h:
2467         (WebCore::WritableDataObject::setUrlTitle): renamed from setURL
2468         (WebCore::WritableDataObject::setHtmlBaseUrl): renamed from setHTML
2469         (WebCore::WritableDataObject::dataMap):
2470         (WebCore::WritableDataObject::urlTitle):
2471         (WebCore::WritableDataObject::htmlBaseURL):
2472         (WebCore::WritableDataObject::fileExtension):
2473         (WebCore::WritableDataObject::fileContentFilename):
2474         (WebCore::WritableDataObject::fileContent):
2475         (WebCore::WritableDataObject::setFileExtension):
2476         (WebCore::WritableDataObject::setFileContentFilename):
2477         (WebCore::WritableDataObject::setFileContent):
2478
2479 2010-10-08  Abhishek Arya  <inferno@chromium.org>
2480
2481         Unreviewed, rolling out r69360.
2482         http://trac.webkit.org/changeset/69360
2483         https://bugs.webkit.org/show_bug.cgi?id=46921
2484
2485         Test still crashing on chromium test_shell
2486
2487         * html/HTMLObjectElement.cpp:
2488         (WebCore::HTMLObjectElement::renderFallbackContent):
2489
2490 2010-10-08  Sheriff Bot  <webkit.review.bot@gmail.com>
2491
2492         Unreviewed, rolling out r68574.
2493         http://trac.webkit.org/changeset/68574
2494         https://bugs.webkit.org/show_bug.cgi?id=47433
2495
2496         [chromium] Breaks partial repaint of images while scrolling
2497         (Requested by jamesr on #webkit).
2498
2499         * platform/graphics/skia/ImageSkia.cpp:
2500         (WebCore::computeResamplingMode):
2501         (WebCore::drawResampledBitmap):
2502
2503 2010-10-08  Andy Estes  <aestes@apple.com>
2504
2505         Reviewed by Darin Adler.
2506
2507         REGRESSION (r66223): Crash when using CSS content and -webkit-mask-box-image properties containing cached images.
2508         https://bugs.webkit.org/show_bug.cgi?id=47430
2509
2510         Test: fast/replaced/css-content-and-webkit-mask-box-image-crash.html
2511
2512         * rendering/RenderImage.cpp:
2513         (WebCore::RenderImage::imageChanged): imageChanged() can be called prior
2514         to m_imageResource being set. The appropriate thing to do in this case
2515         is to return early.
2516         (WebCore::RenderImage::notifyFinished): Ditto.
2517
2518 2010-10-08  Andrei Popescu  <andreip@google.com>
2519
2520         Reviewed by Jeremy Orlow.
2521
2522         IndexedDB does not have a quota mechanism.
2523         https://bugs.webkit.org/show_bug.cgi?id=47389
2524
2525         Test: storage/indexeddb/database-quota.html
2526
2527         Add a simple mechanism for enforcing a maximum size
2528         for each origin using IndexedDB. Note that this depends
2529         on having one SQLite database file per origin, which is
2530         addressed in a separate patch.
2531
2532         * page/GroupSettings.cpp:
2533         (WebCore::GroupSettings::GroupSettings):
2534         (WebCore::GroupSettings::setIndexedDBQuotaBytes):
2535         * page/GroupSettings.h:
2536         (WebCore::GroupSettings::indexedDBQuotaBytes):
2537         * storage/IDBDatabaseBackendImpl.cpp:
2538         (WebCore::IDBDatabaseBackendImpl::createObjectStore):
2539         (WebCore::IDBDatabaseBackendImpl::createObjectStoreInternal):
2540         (WebCore::IDBDatabaseBackendImpl::removeObjectStore):
2541         (WebCore::IDBDatabaseBackendImpl::setVersionInternal):
2542         * storage/IDBFactory.cpp:
2543         (WebCore::IDBFactory::open):
2544         * storage/IDBFactoryBackendImpl.cpp:
2545         (WebCore::openSQLiteDatabase):
2546         (WebCore::IDBFactoryBackendImpl::open):
2547         * storage/IDBFactoryBackendImpl.h:
2548         * storage/IDBFactoryBackendInterface.h:
2549         * storage/IDBObjectStoreBackendImpl.cpp:
2550         (WebCore::putObjectStoreData):
2551         (WebCore::putIndexData):
2552         (WebCore::IDBObjectStoreBackendImpl::put):
2553         (WebCore::IDBObjectStoreBackendImpl::putInternal):
2554         (WebCore::IDBObjectStoreBackendImpl::createIndexInternal):
2555         * storage/IDBObjectStoreBackendImpl.h:
2556
2557 2010-10-08  Gavin Peters  <gavinp@chromium.org>
2558
2559         Reviewed by Adam Barth.
2560
2561         Output X-Purpose header for prefetch requests
2562         https://bugs.webkit.org/show_bug.cgi?id=46529
2563
2564         Test: http/tests/misc/prefetch-purpose.html
2565
2566         * loader/loader.cpp:
2567         (WebCore::Loader::Host::servePendingRequests):
2568
2569 2010-10-08  James Kozianski  <koz@chromium.org>
2570
2571         Reviewed by Simon Fraser.
2572
2573         Crash on reload when CSS property 'content' has malformed URL.
2574         https://bugs.webkit.org/show_bug.cgi?id=47322
2575
2576         Make CSSStyleSelector handle the case where a cached image can't be
2577         produced due to a malformed URL.
2578
2579         Test: fast/css-generated-content/malformed-url.html
2580
2581         * css/CSSStyleSelector.cpp:
2582         (WebCore::CSSStyleSelector::loadPendingImages):
2583
2584 2010-10-08  Dirk Schulze  <krit@webkit.org>
2585
2586         Reviewed by Nikolas Zimmermann.
2587
2588         SVG feImage needs absolute subregion for preserveAspectRatio
2589         https://bugs.webkit.org/show_bug.cgi?id=47409
2590
2591         PreserverAspectRatio needs the subregion in absolute coordinates to determine
2592         the destination position and size of the input image. The maxEffectRect() already
2593         stores the absolute subregion, but clipped to the filter region.
2594
2595         Test: svg/W3C-SVG-1.1se/filters-image-03-f.svg
2596
2597         * platform/graphics/filters/FETile.cpp:
2598         (WebCore::FETile::apply):
2599         * platform/graphics/filters/FilterEffect.h: Added enum to differentate sourece inputs, feTile and feImage.
2600         (WebCore::FilterEffect::filterEffectType):
2601         * platform/graphics/filters/SourceAlpha.h: Make use of the new enum in FilterEffect
2602         (WebCore::SourceAlpha::filterEffectType):
2603         * platform/graphics/filters/SourceGraphic.h: Ditto.
2604         (WebCore::SourceGraphic::filterEffectType):
2605         * svg/graphics/filters/SVGFEImage.cpp: Take the absolute subregion to determine the destination rect for input image.
2606         (WebCore::FEImage::apply):
2607         * svg/graphics/filters/SVGFEImage.h: Ditto.
2608         (WebCore::FEImage::setAbsoluteSubregion):
2609         (WebCore::FEImage::filterEffectType):
2610         * svg/graphics/filters/SVGFilter.cpp: Give over subregion in absolute coordinates to feImage. Just feImage makes use of it.
2611         (WebCore::SVGFilter::determineFilterPrimitiveSubregion):
2612
2613 2010-10-08  Nikolas Zimmermann  <nzimmermann@rim.com>
2614
2615         Reviewed by Dirk Schulze.
2616
2617         gradient stroke on lines does not work
2618         https://bugs.webkit.org/show_bug.cgi?id=40985
2619
2620         Correct handling of invalid fill/stroke paint servers / colors according to SVG 1.1 2nd Edition.
2621         Perfectly matches Opera, and now lets us pass three of the new tests.
2622
2623         Fix incorrect svg/custom/invalid-fill* tests:
2624         -> If there's an invalid fill URI, but no fallback specified, it is as if fill="black" was specified. (invalid-fill.svg)
2625         -> If there's an invalid fill color, but no fallback specified, it is as if fill="none" was specified. (invalid-fill-hex.svg)
2626
2627         Needed to refactor some of the gradient/pattern code to properly handle fallback paint servers.
2628         As side effect, we're allowing gradients with gradientUnits="userSpaceOnUse" to apply on 1d objects (lines) again, per SVG 1.1 2nd edition.
2629
2630         Tests: svg/W3C-SVG-1.1-SE/pservers-pattern-03-f.svg
2631                svg/W3C-SVG-1.1-SE/pservers-grad-17-b.svg
2632                svg/W3C-SVG-1.1-SE/pservers-grad-20-b.svg
2633
2634         * rendering/RenderSVGResource.cpp: Rewrite fill/stroke paint resource requests, share all code between the similar functions.
2635         (WebCore::requestPaintingResource):
2636         (WebCore::RenderSVGResource::fillPaintingResource):
2637         (WebCore::RenderSVGResource::strokePaintingResource):
2638         * rendering/RenderSVGResource.h:
2639         * rendering/RenderSVGResourceGradient.cpp: Split collecting gradient properties from building the gradient. We don't need to build it, if it's not applyable (eg. on 1d lines).
2640         (WebCore::RenderSVGResourceGradient::RenderSVGResourceGradient):
2641         (WebCore::RenderSVGResourceGradient::removeAllClientsFromCache):
2642         (WebCore::clipToTextMask):
2643         (WebCore::RenderSVGResourceGradient::applyResource):
2644         * rendering/RenderSVGResourceGradient.h: Stop storing boundingBoxMode & gradientTransform in each GradientData object, it's enough to just store it in the gradient resource, once.
2645         * rendering/RenderSVGResourceLinearGradient.cpp:
2646         (WebCore::RenderSVGResourceLinearGradient::collectGradientAttributes): Splitted from buildGradient.
2647         (WebCore::RenderSVGResourceLinearGradient::buildGradient):
2648         * rendering/RenderSVGResourceLinearGradient.h:
2649         (WebCore::RenderSVGResourceLinearGradient::boundingBoxMode): Return bounding box mode information, from m_attributes instead of storing in gradientData.
2650         (WebCore::RenderSVGResourceLinearGradient::calculateGradientTransform): Ditto.
2651         * rendering/RenderSVGResourcePattern.cpp: Split collecting pattern properties from building the pattern. We don't need to build it, if it's not applyable (eg. on 1d lines).
2652         (WebCore::RenderSVGResourcePattern::RenderSVGResourcePattern):
2653         (WebCore::RenderSVGResourcePattern::removeAllClientsFromCache):
2654         (WebCore::RenderSVGResourcePattern::applyResource):
2655         (WebCore::RenderSVGResourcePattern::buildTileImageTransform):
2656         * rendering/RenderSVGResourcePattern.h:
2657         * rendering/RenderSVGResourceRadialGradient.cpp:
2658         (WebCore::RenderSVGResourceRadialGradient::collectGradientAttributes):
2659         (WebCore::RenderSVGResourceRadialGradient::buildGradient):
2660         * rendering/RenderSVGResourceRadialGradient.h:
2661         (WebCore::RenderSVGResourceRadialGradient::boundingBoxMode):
2662         (WebCore::RenderSVGResourceRadialGradient::calculateGradientTransform):
2663         * rendering/SVGRenderTreeAsText.cpp: Adapt to change, that fill/strokePaintingResource now take a Color& fallbackColor parameter.
2664         (WebCore::writeStyle):
2665         (WebCore::writeSVGResourceContainer):
2666         * rendering/svg/RenderSVGPath.cpp: 
2667         (WebCore::RenderSVGPath::fillContains): Ditto.
2668         (WebCore::RenderSVGPath::strokeContains): Ditto.
2669         (WebCore::RenderSVGPath::fillAndStrokePath): Properly handle fallback color, if an existing (!) paint server failed to apply.
2670         * rendering/svg/SVGInlineTextBox.cpp:
2671         (WebCore::SVGInlineTextBox::acquirePaintingResource): Ditto.
2672         * svg/SVGLinearGradientElement.cpp:
2673         (WebCore::SVGLinearGradientElement::collectGradientAttributes): Pass LinearGradientAttributes by reference, instead of returning a copy.
2674         * svg/SVGLinearGradientElement.h: Rename collectGradientProperties to collectGradientAttributes.
2675         * svg/SVGPatternElement.cpp:
2676         (WebCore::SVGPatternElement::collectPatternAttributes): Pass PatternAttributes by reference, instead of returning.
2677         * svg/SVGPatternElement.h: Rename collectPatternProperties to collectPatternAttributes.
2678         * svg/SVGRadialGradientElement.cpp:
2679         (WebCore::SVGRadialGradientElement::collectGradientAttributes): Pass RadialGradientAttributes by reference, instead of returning a copy.
2680         * svg/SVGRadialGradientElement.h: Rename collectGradientProperties to collectGradientAttributes.
2681
2682 2010-10-08  Benjamin Poulain  <benjamin.poulain@nokia.com>
2683
2684         Reviewed by Andreas Kling.
2685
2686         [Qt] Slider widgets looks bad on Mac
2687         https://bugs.webkit.org/show_bug.cgi?id=47421
2688
2689         This patch change the rendering of the slider to only have the
2690         subcontrols that would be defined by default on a QSlider.
2691
2692         * platform/qt/RenderThemeQt.cpp:
2693         (WebCore::RenderThemeQt::paintSliderTrack):
2694
2695 2010-10-08  Renata Hodovan  <reni@inf.u-szeged.hu>
2696
2697         Reviewed by Andreas Kling.
2698
2699         SVGFEColorMatrixElement doesn't support dynamic invalidation, when attributes change.
2700         https://bugs.webkit.org/show_bug.cgi?id=47342
2701
2702         The dynamic changes are captured by the svgAttributeChange function, and invalidate the filter primitive if necessary.
2703
2704         Tests: svg/dynamic-updates/SVGFEColorMatrixElement-dom-in-attr.html
2705                svg/dynamic-updates/SVGFEColorMatrixElement-dom-type-attr.html
2706                svg/dynamic-updates/SVGFEColorMatrixElement-dom-values-attr.html
2707                svg/dynamic-updates/SVGFEColorMatrixElement-svgdom-in-prop.html
2708                svg/dynamic-updates/SVGFEColorMatrixElement-svgdom-type-prop.html
2709                svg/dynamic-updates/SVGFEColorMatrixElement-svgdom-values-prop.html
2710
2711         * svg/SVGFEColorMatrixElement.cpp:
2712         (WebCore::SVGFEColorMatrixElement::svgAttributeChanged):
2713         * svg/SVGFEColorMatrixElement.h:
2714
2715 2010-10-08  Pavel Podivilov  <podivilov@chromium.org>
2716
2717         Reviewed by Pavel Feldman.
2718
2719         Web Inspector: save InspectorController in instrumentation cookie
2720         https://bugs.webkit.org/show_bug.cgi?id=47406
2721
2722         * bindings/v8/V8Proxy.cpp:
2723         (WebCore::V8Proxy::evaluate):
2724         (WebCore::V8Proxy::callFunction):
2725         * dom/Document.cpp:
2726         (WebCore::Document::recalcStyle):
2727         * dom/Node.cpp:
2728         (WebCore::Node::dispatchGenericEvent):
2729         * html/parser/HTMLDocumentParser.cpp:
2730         (WebCore::HTMLDocumentParser::pumpTokenizer):
2731         * inspector/InspectorInstrumentation.cpp:
2732         * inspector/InspectorInstrumentation.h:
2733         * loader/ResourceLoader.cpp:
2734         (WebCore::ResourceLoader::didReceiveResponse):
2735         (WebCore::ResourceLoader::didReceiveData):
2736         * page/DOMTimer.cpp:
2737         (WebCore::DOMTimer::fired):
2738         * page/DOMWindow.cpp:
2739         (WebCore::DOMWindow::dispatchEvent):
2740         * page/FrameView.cpp:
2741         (WebCore::FrameView::layout):
2742         (WebCore::FrameView::paintContents):
2743         * rendering/RenderLayerBacking.cpp:
2744         (WebCore::RenderLayerBacking::paintContents):
2745         * xml/XMLHttpRequest.cpp:
2746         (WebCore::XMLHttpRequest::callReadyStateChangeListener):
2747
2748 2010-10-08  Adam Roben  <aroben@apple.com>
2749
2750         Windows Release build fix for 32-bit systems
2751
2752         WebCore had once again grown too large for the linker's virtual
2753         address space on 32-bit systems. I combined WebCore/rendering,
2754         WebCore/rendering/style, and WebCore/dom into new *AllInOne.cpp files,
2755         and added a few more files to RenderSVGAllInOne.cpp.
2756
2757         Fixes <http://webkit.org/b/47417> <rdar://problem/8529362>
2758
2759         * WebCore.vcproj/WebCore.vcproj: Added new *AllInOne.cpp files and
2760         excluded the individual files they contain from the build.
2761
2762         * rendering/RenderSVGAllInOne.cpp: Added a few more files to this.
2763
2764         * dom/DOMAllInOne.cpp: Added.
2765         * rendering/RenderingAllInOne.cpp: Added.
2766         * rendering/style/StyleAllInOne.cpp: Added.
2767
2768 2010-10-08  Girish Ramakrishnan  <girish@forwardbias.in>
2769
2770         Reviewed by Andreas Kling.
2771
2772         [Qt] Use constBegin and constEnd when using const iterators
2773
2774         * platform/graphics/qt/GraphicsLayerQt.cpp:
2775         (WebCore::GraphicsLayerQtImpl::~GraphicsLayerQtImpl):
2776         (WebCore::GraphicsLayerQtImpl::updateTransform):
2777         (WebCore::GraphicsLayerQtImpl::flushChanges):
2778
2779 2010-10-07  Pavel Feldman  <pfeldman@chromium.org>
2780
2781         Reviewed by Yury Semikhatsky.
2782
2783         Web Inspector: add resource viewer to the network panel.
2784         https://bugs.webkit.org/show_bug.cgi?id=47346
2785
2786         * inspector/front-end/DataGrid.js:
2787         (WebInspector.DataGrid):
2788         (WebInspector.DataGrid.prototype.autoSizeColumns):
2789         (WebInspector.DataGrid.prototype.updateWidths):
2790         (WebInspector.DataGrid.prototype.columnWidthsMap):
2791         (WebInspector.DataGrid.prototype.applyColumnWidthsMap):
2792         (WebInspector.DataGrid.prototype.isColumnVisible):
2793         (WebInspector.DataGrid.prototype.showColumn):
2794         (WebInspector.DataGrid.prototype.hideColumn):
2795         (WebInspector.DataGrid.prototype._positionResizers):
2796         (WebInspector.DataGrid.prototype._resizerDragging):
2797         * inspector/front-end/NetworkPanel.js:
2798         (WebInspector.NetworkPanel):
2799         (WebInspector.NetworkPanel.prototype.updateSidebarWidth):
2800         (WebInspector.NetworkPanel.prototype.updateMainViewWidth):
2801         (WebInspector.NetworkPanel.prototype.handleShortcut):
2802         (WebInspector.NetworkPanel.prototype._createTable):
2803         (WebInspector.NetworkPanel.prototype._sortItems):
2804         (WebInspector.NetworkPanel.prototype._sortByTimeline):
2805         (WebInspector.NetworkPanel.prototype._createSummaryBar):
2806         (WebInspector.NetworkPanel.prototype._updateDividersIfNeeded):
2807         (WebInspector.NetworkPanel.prototype.hide):
2808         (WebInspector.NetworkPanel.prototype.get searchableViews):
2809         (WebInspector.NetworkPanel.prototype.refresh):
2810         (WebInspector.NetworkPanel.prototype.reset):
2811         (WebInspector.NetworkPanel.prototype.refreshResource):
2812         (WebInspector.NetworkPanel.prototype.canShowSourceLine):
2813         (WebInspector.NetworkPanel.prototype.showSourceLine):
2814         (WebInspector.NetworkPanel.prototype._showResource):
2815         (WebInspector.NetworkPanel.prototype._closeVisibleResource):
2816         (WebInspector.NetworkPanel.prototype._resourceViewForResource):
2817         (WebInspector.NetworkPanel.prototype._resourceViewTypeMatchesResource):
2818         (WebInspector.NetworkPanel.prototype._toggleGridMode):
2819         (WebInspector.NetworkPanel.prototype._toggleViewingResourceMode):
2820         (WebInspector.NetworkDataGridNode):
2821         (WebInspector.NetworkDataGridNode.prototype.select):
2822         (WebInspector.NetworkDataGridNode.prototype._createTimelineCell):
2823         * inspector/front-end/networkPanel.css:
2824         (#network-container):
2825         (#network-views):
2826         (.network.panel .data-grid.full-grid-mode .viewer-column):
2827         (.network.panel .data-grid.brief-grid-mode .time-column):
2828         (.network.panel.viewing-resource .network-timeline-grid):
2829         (.network.panel .data-grid.viewing-resource-mode .timeline-column):
2830         (.network.panel .network-sidebar):
2831         (.network.panel:not(.viewing-resource) .sidebar-resizer-vertical):
2832         (.network.panel.viewing-resource .data-grid-resizer):
2833         (.network.panel .scope-bar):
2834         (.network.panel .resource-view.headers-visible .resource-view-content):
2835         (.network.panel:not(.viewing-resource) .data-grid tr.selected):
2836
2837 2010-10-08  Andreas Kling  <kling@webkit.org>
2838
2839         Reviewed by Nikolas Zimmermann.
2840
2841         SVGTextLayoutAttributesBuilder: "XValue" and "YValue" clash with X11 macros
2842         https://bugs.webkit.org/show_bug.cgi?id=47180
2843
2844         Rename *Value to *ValueAttribute
2845
2846         * rendering/svg/SVGTextLayoutAttributesBuilder.cpp:
2847         (WebCore::SVGTextLayoutAttributesBuilder::nextLayoutValue):
2848         (WebCore::SVGTextLayoutAttributesBuilder::assignLayoutAttributesForCharacter):
2849         * rendering/svg/SVGTextLayoutAttributesBuilder.h:
2850
2851 2010-10-08  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
2852
2853         Reviewed by Kenneth Rohde Christiansen.
2854
2855         [Qt] Don't use -whole-archive to link-in libWebKit2.a except for libQtWebKit.so
2856         https://bugs.webkit.org/show_bug.cgi?id=47347
2857
2858         * WebCore.pro:
2859
2860 2010-10-08  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2861
2862         Reviewed by Kenneth Rohde Christiansen.
2863
2864         [EFL] Implement IntRectEfl.cpp
2865         https://bugs.webkit.org/show_bug.cgi?id=47403
2866
2867         Implement IntRect for Efl Port using Eina_Rectangle.
2868
2869         * platform/graphics/IntRect.h:
2870         * platform/graphics/efl/IntRectEfl.cpp:
2871         (WebCore::IntRect::IntRect):
2872         (WebCore::IntRect::operator Eina_Rectangle):
2873
2874 2010-10-08  Andreas Kling  <andreas.kling@nokia.com>
2875
2876         Reviewed by Nikolas Zimmermann.
2877
2878         SVG: Make RenderPath DRT output platform-independent
2879         https://bugs.webkit.org/show_bug.cgi?id=46051
2880
2881         Move away from using the port-specific Path::debugString() to dump
2882         RenderPath objects. This shrinks the DRT output delta between platforms
2883         and makes it more readable as we now dump only the relevant,
2884         element-specific properties of each object.
2885
2886         * rendering/SVGRenderTreeAsText.cpp:
2887         (WebCore::operator<<):
2888         Generate DRT output for RenderPaths in a platform-independent manner,
2889         dumping the relevant element properties.
2890
2891 2010-10-08  Kinuko Yasuda  <kinuko@chromium.org>
2892
2893         Reviewed by David Levin.
2894
2895         Fix FileSystem path validation order to normalize '..' and '.' before restriction checks
2896         https://bugs.webkit.org/show_bug.cgi?id=47309
2897
2898         Test: fast/filesystem/op-get-entry.html
2899
2900         * fileapi/DOMFileSystemBase.cpp:
2901         (WebCore::DOMFileSystemBase::getFile): Fixed the path validation order.
2902         (WebCore::DOMFileSystemBase::getDirectory): Fixed the path validation order.
2903
2904 2010-10-08  Carlos Garcia Campos  <cgarcia@igalia.com>
2905
2906         Reviewed by Xan Lopez.
2907
2908         [GTK] Port GTK+ theming code to GTK+ 3.x APIs
2909         https://bugs.webkit.org/show_bug.cgi?id=47398
2910
2911         Create a new gtk3drawing file for the widget drawing primitives in
2912         WebKit, using the GTK+ 3.x APIs. It's very similar to the GTK+ 2.x
2913         code at the moment, but we'll evolve it incrementally from here.
2914
2915         * GNUmakefile.am:
2916         * platform/gtk/RenderThemeGtk.cpp:
2917         (WebCore::RenderThemeGtk::partsForDrawable):
2918         (WebCore::RenderThemeGtk::paintMozillaGtkWidget):
2919         * platform/gtk/gtk2drawing.c:
2920         (TSOffsetStyleGCArray):
2921         (TSOffsetStyleGCs):
2922         (moz_gtk_button_paint):
2923         (moz_gtk_scrollbar_thumb_paint):
2924         (moz_gtk_entry_paint):
2925         (moz_gtk_combo_box_paint):
2926         (moz_gtk_get_widget_border):
2927         * platform/gtk/gtk3drawing.c: Added.
2928         * platform/gtk/gtkdrawing.h:
2929
2930 2010-10-07  Daniel Cheng  <dcheng@chromium.org>
2931
2932         Reviewed by Kent Tamura.
2933
2934         [chromium] Fix indentation in ChromiumDataObject.h 
2935         https://bugs.webkit.org/show_bug.cgi?id=47396
2936
2937         Just a cleanup patch to make followup diffs smaller.
2938
2939         * platform/chromium/ChromiumDataObject.h:
2940         (WebCore::ChromiumDataObject::create):
2941         (WebCore::ChromiumDataObject::copy):
2942         (WebCore::ChromiumDataObject::urlTitle):
2943         (WebCore::ChromiumDataObject::setUrlTitle):
2944         (WebCore::ChromiumDataObject::htmlBaseUrl):
2945         (WebCore::ChromiumDataObject::setHtmlBaseUrl):
2946         (WebCore::ChromiumDataObject::containsFilenames):
2947         (WebCore::ChromiumDataObject::filenames):
2948         (WebCore::ChromiumDataObject::setFilenames):
2949         (WebCore::ChromiumDataObject::fileExtension):
2950         (WebCore::ChromiumDataObject::setFileExtension):
2951         (WebCore::ChromiumDataObject::fileContentFilename):
2952         (WebCore::ChromiumDataObject::setFileContentFilename):
2953         (WebCore::ChromiumDataObject::fileContent):
2954         (WebCore::ChromiumDataObject::setFileContent):
2955
2956 2010-10-07  Kent Tamura  <tkent@chromium.org>
2957
2958         Reviewed by Dimitri Glazkov.
2959
2960         Refactor HTMLInputElement: Move valueAsDate and valueAsNumber implementations
2961         https://bugs.webkit.org/show_bug.cgi?id=47327
2962
2963         Move the content of HTMLInputElement::valueAsDate(), setValueAsDate(),
2964         valueAsNumber(), and setValueAsNumber() to InputType, and move
2965         serialize() and serializeForDateTimeTypes() too
2966
2967         * html/BaseDateAndTimeInputType.cpp:
2968         (WebCore::BaseDateAndTimeInputType::valueAsDate):
2969         (WebCore::BaseDateAndTimeInputType::setValueAsDate):
2970         (WebCore::BaseDateAndTimeInputType::valueAsNumber):
2971         (WebCore::BaseDateAndTimeInputType::setValueAsNumber):
2972         (WebCore::BaseDateAndTimeInputType::serialize):
2973         * html/BaseDateAndTimeInputType.h:
2974         * html/DateInputType.cpp:
2975         (WebCore::DateInputType::setMillisecondToDateComponents):
2976         * html/DateInputType.h:
2977         * html/DateTimeInputType.cpp:
2978         (WebCore::DateTimeInputType::setMillisecondToDateComponents):
2979         * html/DateTimeInputType.h:
2980         * html/DateTimeLocalInputType.cpp:
2981         (WebCore::DateTimeLocalInputType::valueAsDate):
2982         (WebCore::DateTimeLocalInputType::setValueAsDate):
2983         (WebCore::DateTimeLocalInputType::setMillisecondToDateComponents):
2984         * html/DateTimeLocalInputType.h:
2985         * html/HTMLInputElement.cpp:
2986         (WebCore::HTMLInputElement::valueAsDate):
2987         (WebCore::HTMLInputElement::setValueAsDate):
2988         (WebCore::HTMLInputElement::valueAsNumber):
2989         (WebCore::HTMLInputElement::setValueAsNumber):
2990         (WebCore::HTMLInputElement::stepUpFromRenderer):
2991         * html/HTMLInputElement.h:
2992         * html/InputType.cpp:
2993         (WebCore::InputType::valueAsDate):
2994         (WebCore::InputType::setValueAsDate):
2995         (WebCore::InputType::valueAsNumber):
2996         (WebCore::InputType::setValueAsNumber):
2997         (WebCore::InputType::serialize):
2998         * html/InputType.h:
2999         * html/MonthInputType.cpp:
3000         (WebCore::MonthInputType::valueAsDate):
3001         (WebCore::MonthInputType::setValueAsDate):
3002         (WebCore::MonthInputType::setMillisecondToDateComponents):
3003         * html/MonthInputType.h:
3004         * html/NumberInputType.cpp:
3005         (WebCore::NumberInputType::valueAsNumber):
3006         (WebCore::NumberInputType::setValueAsNumber):
3007         (WebCore::NumberInputType::serialize):
3008         * html/NumberInputType.h:
3009         * html/RangeInputType.cpp:
3010         (WebCore::RangeInputType::valueAsNumber):
3011         (WebCore::RangeInputType::setValueAsNumber):
3012         (WebCore::RangeInputType::serialize):
3013         * html/RangeInputType.h:
3014         * html/TimeInputType.cpp:
3015         (WebCore::TimeInputType::setMillisecondToDateComponents):
3016         * html/TimeInputType.h:
3017         * html/WeekInputType.cpp:
3018         (WebCore::WeekInputType::setMillisecondToDateComponents):
3019         * html/WeekInputType.h:
3020
3021 2010-10-07  No'am Rosenthal  <noam.rosenthal@nokia.com>
3022
3023         Reviewed by Kenneth Rohde Christiansen.
3024
3025         [Texmap] [Qt] Texture mapper initial implementation
3026         Texture Mapper is an implementation of accelerated compositing that doesn't require a
3027         platform specific scenegraph library like CA or QGraphicsView. The idea is that with
3028         time this would replace GraphicsLayerQt, and could serve as an implementation for other
3029         platforms that don't have a scenegraph library. The first stage of this is to add all the code to trunk,
3030         and enable it in Qt with an opt-in build flag so that it can be easily tested. Once it reaches
3031         an adequate level of stability, we can enable it by default and eventually have it replace GraphicsLayerQt.
3032
3033         This change includes only the common new files and the Qt backend; Still to come: the GL backend and integration layer.
3034
3035         * platform/graphics/qt/TextureMapperQt.cpp: Added.
3036         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp: Added.
3037         * platform/graphics/texmap/GraphicsLayerTextureMapper.h: Added.
3038         * platform/graphics/texmap/TextureMapper.h: Added.
3039         * platform/graphics/texmap/TextureMapperPlatformLayer.h: Added.
3040
3041 2010-10-07  Antonio Gomes  <agomes@rim.com>
3042
3043         Reviewed by Simon Fraser.
3044
3045         [Mac] [DRT] implement setSpatialNavigationEnabled
3046         https://bugs.webkit.org/show_bug.cgi?id=47291
3047
3048         Added Settings::setSpatialNavigationEnabled symbols to WebKit.exp.in
3049         so it can be used from WebKit/mac.
3050
3051         * WebCore.exp.in:
3052
3053 2010-10-07  Eric Uhrhane  <ericu@chromium.org>
3054
3055         Reviewed by Jian Li
3056
3057         [V8] Add FileWriter to active DOM map
3058         https://bugs.webkit.org/show_bug.cgi?id=47380
3059
3060         It's an ActiveDOMObject; it needs to be in the map.
3061
3062         * bindings/scripts/CodeGeneratorV8.pm:
3063
3064 2010-10-07  Nico Weber  <thakis@chromium.org>
3065
3066         Reviewed by James Robinson.
3067
3068         [chromium] Make sure to update the current graphics context when calling out to AppKit.
3069         https://bugs.webkit.org/show_bug.cgi?id=47387
3070
3071         This ports r57741 to ThemeChromiumMac. It also reverts r66975, which is
3072         now no longer necessary.
3073
3074         Should be covered by existing tests. The checkbox at
3075         http://webkit.org/blog-files/3d-transforms/morphing-cubes.html should
3076         now show up correctly.
3077
3078         * platform/chromium/ThemeChromiumMac.mm:
3079         (WebCore::paintCheckbox):
3080         (WebCore::paintRadio):
3081         Create current context.
3082         * platform/graphics/chromium/ContentLayerChromium.cpp:
3083         (WebCore::ContentLayerChromium::updateContents):
3084         Remove LocalCurrentContext, it's now no longer necessary.
3085
3086 2010-10-07  Cris Neckar  <cdn@chromium.org>
3087
3088         Reviewed by Adam Barth.
3089
3090         Postpone clearing the imageLoader when rendering certain fallback content for objects until after the attach().
3091         https://bugs.webkit.org/show_bug.cgi?id=46921
3092
3093         Test: fast/html/object-image-nested-fallback.html
3094
3095         * html/HTMLObjectElement.cpp:
3096         (WebCore::HTMLObjectElement::renderFallbackContent):
3097
3098 2010-10-07  Rafael Antognolli  <antognolli@profusion.mobi>
3099
3100         Reviewed by Kenneth Rohde Christiansen.
3101
3102         [EFL] Fix shared timers on EFL port - make them thread safe.
3103         https://bugs.webkit.org/show_bug.cgi?id=47383
3104
3105         Using ecore_timer_add to create a timer from a thread that is
3106         not the main thread isn't safe. Now we add a pipe that is used
3107         to request a timer to be added in the main thread.
3108
3109         In order to reduce some delay on timers that are added with a
3110         very small interval, the timer callback is called immediately
3111         if the interval is smaller than the mainloop frame time.
3112
3113         No new features, so no tests added.
3114
3115         * platform/efl/SharedTimerEfl.cpp:
3116         (WebCore::setSharedTimerFiredFunction):
3117         (WebCore::timerEvent):
3118         (WebCore::processTimers):
3119         (WebCore::pipeHandlerCb):
3120         (WebCore::stopSharedTimer):
3121         (WebCore::addNewTimer):
3122         (WebCore::setSharedTimerFireTime):
3123
3124 2010-10-07  James Kozianski  <koz@chromium.org>
3125
3126         Reviewed by Adam Barth.
3127
3128         getPropertyValue('border') is incorrect after border-top-width is set
3129         https://bugs.webkit.org/show_bug.cgi?id=45949
3130
3131         Test: fast/dom/css-shorthand-common-value.html
3132
3133         CSSMutableStyleDeclaration::getCommonValue() was ignoring values from
3134         properties that were implicitly set, which led to erroneous results
3135         from getPropertyValue().
3136
3137         * css/CSSMutableStyleDeclaration.cpp:
3138         (WebCore::CSSMutableStyleDeclaration::getCommonValue):
3139
3140 2010-10-07  Ryosuke Niwa  <rniwa@webkit.org>
3141
3142         Reviewed by Tony Chang.
3143
3144         REGRESSION: Indenting pre duplicates content
3145         https://bugs.webkit.org/show_bug.cgi?id=47233
3146
3147         The bug was caused by our not splitting text nodes properly.
3148
3149         In new approach, we split text nodes in each iteration. Added rangeForParagraphSplitingTextNodesIfNeeded
3150         to split text nodes at the start and at the end of paragraph, which also adjusts start and end positions
3151         for moveParagraphWithClones. Added endOfNextParagrahSplittingTextNodesIfNeeded to adjust endOfNextParagraph,
3152         start, and end to work-around moveParagraphWithClones's removing a line feed.
3153
3154         Tests: editing/execCommand/indent-pre-list.html
3155                editing/execCommand/indent-pre-paragraphs.html
3156
3157         * editing/ApplyBlockElementCommand.cpp:
3158         (WebCore::ApplyBlockElementCommand::formatSelection): See above.
3159         (WebCore::isNewLineAtPosition):
3160         (WebCore::renderStyleOfEnclosingTextNode): Added.
3161         (WebCore::ApplyBlockElementCommand::rangeForParagraphSplittingTextNodesIfNeeded): Added.
3162         (WebCore::ApplyBlockElementCommand::endOfNextParagrahSplittingTextNodesIfNeeded): Added.
3163         * editing/ApplyBlockElementCommand.h:
3164         * editing/FormatBlockCommand.cpp:
3165         (WebCore::FormatBlockCommand::formatRange): Takes two Positions instead of one VisiblePosition.
3166         * editing/FormatBlockCommand.h:
3167         * editing/IndentOutdentCommand.cpp:
3168         (WebCore::IndentOutdentCommand::tryIndentingAsListItem): Ditto.
3169         (WebCore::IndentOutdentCommand::indentIntoBlockquote): Ditto.
3170         (WebCore::IndentOutdentCommand::formatRange): Ditto.
3171         * editing/IndentOutdentCommand.h:
3172
3173 2010-10-07  Jian Li  <jianli@chromium.org>
3174
3175         Reviewed by Adam Barth.
3176
3177         Support generating a FormData object based on the data in an existing <form>.
3178         https://bugs.webkit.org/show_bug.cgi?id=45929
3179
3180         Test: http/tests/local/formdata/send-form-data-constructed-from-form.html
3181
3182         * bindings/js/JSDOMFormDataCustom.cpp:
3183         (WebCore::toHTMLFormElement):
3184         (WebCore::JSDOMFormDataConstructor::constructJSDOMFormData):
3185         * bindings/v8/custom/V8DOMFormDataCustom.cpp:
3186         (WebCore::V8DOMFormData::constructorCallback):
3187         * html/DOMFormData.cpp:
3188         (WebCore::DOMFormData::DOMFormData):
3189         * html/DOMFormData.h:
3190         (WebCore::DOMFormData::create):
3191         * html/DOMFormData.idl:
3192
3193 2010-10-07  Abhishek Arya  <inferno@chromium.org>
3194
3195         Reviewed by Dave Hyatt.
3196
3197         Set the m_selectedChildren flag on the root inline box if one of the leaf 
3198         inline box from the bidi runs walk has a selection state. Remove the flag
3199         setting logic from addToLine, since line boxes created in createLinesBoxes
3200         should not be propagating selection state to root inline box.
3201         https://bugs.webkit.org/show_bug.cgi?id=47201
3202
3203         Test: editing/selection/root-inlinebox-selected-children-crash.html
3204
3205         * rendering/InlineFlowBox.cpp:
3206         (WebCore::InlineFlowBox::addToLine):
3207         * rendering/RenderBlockLineLayout.cpp:
3208         (WebCore::RenderBlock::constructLine):
3209
3210 2010-10-07  Benjamin Otte  <otte@gnome.org>
3211
3212         Reviewed by Martin Robinson.
3213
3214         [GTK] Code cleanup in PluginViewGtk.cpp for transparent plugins
3215         https://bugs.webkit.org/show_bug.cgi?id=47361
3216
3217         Reduce some code in PluginViewGtk.cpp by doing things with Cairo instead
3218         of directly with X11. This should work fine with GDK double-buffering, but
3219         if we ever disable it, we'll need to verify that this is still functioning
3220         properly.
3221
3222         * plugins/gtk/PluginViewGtk.cpp:
3223         (WebCore::PluginView::paint): Do a bit of code cleanup.
3224
3225 2010-10-07  Anders Carlsson  <andersca@apple.com>
3226
3227         Reviewed by Sam Weinig.
3228
3229         Add a WKPageFindClient, hook up WKPageCountStringMatches
3230         https://bugs.webkit.org/show_bug.cgi?id=47373
3231
3232         Export find related symbols needed by WebKit2.
3233
3234         * WebCore.exp.in:
3235
3236 2010-10-07  David Hyatt  <hyatt@apple.com>
3237
3238         Reviewed by Sam Weinig.
3239
3240         https://bugs.webkit.org/show_bug.cgi?id=47370
3241         
3242         Make line box placement in the inline direction writing-mode-aware.  Lines now set their y-position instead of x-position
3243         when vertical.
3244         
3245         Refactored shadow overflow to give text-shadow the same helpers in RenderStyle that box-shadow has so that the shadow-walking loop in
3246         placeBoxesInInlineDirection can be replaced with the helper.
3247
3248         Overflow had to be patched to be writing-mode-aware so that the correct physical directions would be set for vertical line
3249         boxes.
3250
3251         Vertical lines are still not testable until they can be placed in the block direction.  Then the render tree dumps
3252         become meaningful (even if the pixel results look horrible).
3253
3254         * rendering/InlineBox.h:
3255         (WebCore::InlineBox::logicalRight):
3256         * rendering/InlineFlowBox.cpp:
3257         (WebCore::InlineFlowBox::placeBoxesInInlineDirection):
3258         * rendering/InlineFlowBox.h:
3259         (WebCore::InlineFlowBox::logicalLeftLayoutOverflow):
3260         (WebCore::InlineFlowBox::logicalRightLayoutOverflow):
3261         (WebCore::InlineFlowBox::logicalLeftVisualOverflow):
3262         (WebCore::InlineFlowBox::logicalRightVisualOverflow):
3263         (WebCore::InlineFlowBox::setInlineDirectionOverflowPositions):
3264         * rendering/RenderBlockLineLayout.cpp:
3265         (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
3266         * rendering/style/RenderStyle.cpp:
3267         (WebCore::RenderStyle::getShadowExtent):
3268         (WebCore::RenderStyle::getShadowHorizontalExtent):
3269         (WebCore::RenderStyle::getShadowVerticalExtent):
3270         * rendering/style/RenderStyle.h:
3271         (WebCore::InheritedFlags::getTextShadowExtent):
3272         (WebCore::InheritedFlags::getTextShadowHorizontalExtent):
3273         (WebCore::InheritedFlags::getTextShadowVerticalExtent):
3274         (WebCore::InheritedFlags::getTextShadowInlineDirectionExtent):
3275         (WebCore::InheritedFlags::getBoxShadowExtent):
3276         (WebCore::InheritedFlags::getBoxShadowHorizontalExtent):
3277         (WebCore::InheritedFlags::getBoxShadowVerticalExtent):
3278         (WebCore::InheritedFlags::getBoxShadowInlineDirectionExtent):
3279         (WebCore::InheritedFlags::getShadowInlineDirectionExtent):
3280
3281 2010-10-07  Dan Bernstein  <mitz@apple.com>
3282
3283         Reviewed by Simon Fraser.
3284
3285         <rdar://problem/8142645> REGRESSION (r47440): Printing Mail messages with large fonts does not fill page
3286         https://bugs.webkit.org/show_bug.cgi?id=47374
3287
3288         In the legacy (paint-time pagination) printing model, when there are overlapping lines,
3289         adjustPageHeightDeprecated() was not idempotent, since the truncation point imposed by line n,
3290         namely the top of line n, was above the bottom of line n-1, so in the next round, line n-1
3291         moved the truncation point up again.
3292
3293         * rendering/RenderLineBoxList.cpp:
3294         (WebCore::RenderLineBoxList::paint): Consider the top of the next line when deciding if the
3295         current line extends below the truncation point.
3296
3297 2010-10-07  Simon Fraser  <simon.fraser@apple.com>
3298
3299         Reviewed by Beth Dakin.
3300
3301         Use isIdentityOrTranslationOrFlipped() in scrollbar code
3302         https://bugs.webkit.org/show_bug.cgi?id=47378
3303
3304         Replace old code that looked at values in the CGAffineTransform
3305         with nicely named method that does the same test.
3306
3307         * platform/mac/ScrollbarThemeMac.mm:
3308         (WebCore::ScrollbarThemeMac::paint):
3309
3310 2010-10-07  Simon Fraser  <simon.fraser@apple.com>
3311
3312         Reviewed by Beth Dakin.
3313
3314         Edge fringe artifact with transformed, masked elements (including reflections)
3315         https://bugs.webkit.org/show_bug.cgi?id=19179
3316         
3317         When drawing the mask images, use a transparency layer if the CTM
3318         has a rotation, scale or skew in it to avoid antialiasing issues at
3319         the edges.
3320
3321         Test: fast/css/transformed-mask.html
3322
3323         * rendering/RenderBox.cpp:
3324         (WebCore::RenderBox::paintMask): Don't bother painting the mask if
3325         painting is disabled, which also avoids an assertion in getCTM().
3326         (WebCore::RenderBox::paintMaskImages):
3327
3328 2010-10-07  Kwang Yul Seo  <skyul@company100.net>
3329
3330         Reviewed by Kent Tamura.
3331
3332         [BREWMP] Map non-alphabet key code to Unicode value
3333         https://bugs.webkit.org/show_bug.cgi?id=46002
3334
3335         Non-alphabet key codes are not equal to the unicode values. Add conversion.
3336
3337         * platform/brew/PlatformKeyboardEventBrew.cpp:
3338         (WebCore::singleCharacterString):
3339
3340 2010-10-05  Martin Robinson  <mrobinson@igalia.com>
3341
3342         Reviewed by Chris Fleizach.
3343
3344         [GTK] The FreeType backend does not respect the FC_EMBOLDEN property
3345         https://bugs.webkit.org/show_bug.cgi?id=46216
3346
3347         Look for the FC_EMBOLDEN property of the FcPattern when constructing
3348         FontPlatformData and use it to enable synthetic bold fonts when necessary.
3349
3350         Test: platform/gtk/fonts/fontconfig-synthetic-bold.html
3351
3352         * platform/graphics/cairo/FontPlatformDataFreeType.cpp:
3353         (WebCore::FontPlatformData::FontPlatformData): Properly handle the FC_EMBOLDEN property.
3354
3355 2010-10-07  James Simonsen  <simonjam@chromium.org>
3356
3357         Reviewed by Pavel Feldman.
3358
3359         [Web Timing] Use platform definition of responseEnd
3360         https://bugs.webkit.org/show_bug.cgi?id=46306
3361
3362         No new tests. Used existing webtiming test.
3363
3364         * loader/MainResourceLoader.cpp:
3365         (WebCore::MainResourceLoader::didFinishLoading):
3366
3367 2010-10-05  Martin Robinson  <mrobinson@igalia.com>
3368
3369         Reviewed by Chris Fleizach.
3370
3371         [Gtk] CSS font-style: italic behavior
3372         https://bugs.webkit.org/show_bug.cgi?id=33299
3373
3374         Properly interpret the FC_MATRIX property from a FontConfig pattern.
3375         FontConfig will use this property when returning fonts which have a
3376         synthetic oblique variant configured in the fonts.conf configuration
3377         file.
3378
3379         Test: platform/gtk/fonts/fontconfig-synthetic-oblique.html
3380
3381         * platform/graphics/cairo/FontPlatformDataFreeType.cpp:
3382         (WebCore::FontPlatformData::FontPlatformData): Added a constructor that
3383         takes an existing FontPlatformData and a font size.
3384         (WebCore::FontPlatformData::initializeWithFontFace): Added this helper
3385         intialization method that properly handles the FC_MATRIX property from
3386         the FcPattern.
3387         * platform/graphics/cairo/FontPlatformDataFreeType.h: Added a declaration
3388         to the new constructor and the initializeWithFontFace.
3389         * platform/graphics/cairo/SimpleFontDataCairo.cpp:
3390         (WebCore::SimpleFontData::smallCapsFontData): Use the new FontPlatformData
3391         constructor.
3392
3393 2010-10-07  David Hyatt  <hyatt@apple.com>
3394
3395         Reviewed by Dan Bernstein.
3396
3397         https://bugs.webkit.org/show_bug.cgi?id=47357
3398         
3399         Make findNextLineBreak and some of the helper functions it also calls writing-mode-aware.
3400
3401         * rendering/InlineFlowBox.cpp:
3402         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
3403         (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
3404         * rendering/RenderBlock.cpp:
3405         (WebCore::RenderBlock::positionNewFloatOnLine):
3406         * rendering/RenderBlockLineLayout.cpp:
3407         (WebCore::getBorderPaddingMargin):
3408         (WebCore::inlineLogicalWidth):
3409         (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
3410         (WebCore::inlineFlowRequiresLineBox):
3411         (WebCore::RenderBlock::skipLeadingWhitespace):
3412         (WebCore::RenderBlock::fitBelowFloats):
3413         (WebCore::RenderBlock::findNextLineBreak):
3414         * rendering/RenderBoxModelObject.h:
3415         (WebCore::RenderBoxModelObject::hasInlineDirectionBordersPaddingOrMargin):
3416         (WebCore::RenderBoxModelObject::hasInlineDirectionBordersOrPadding):
3417
3418 2010-10-07  Luiz Agostini  <luiz.agostini@openbossa.org>
3419
3420         Reviewed by Kenneth Rohde Christiansen.
3421
3422         Fixing viewport meta tag user-scalable handling
3423         https://bugs.webkit.org/show_bug.cgi?id=47330
3424
3425         user-scalable attribute was not considered in viewport meta tag handling.
3426
3427         * dom/ViewportArguments.cpp:
3428         (WebCore::findConfigurationForViewportData):
3429         * dom/ViewportArguments.h:
3430
3431 2010-10-05  Diego Gonzalez  <diegohcg@webkit.org>
3432
3433         Reviewed by Andreas Kling.
3434
3435         [Qt] Hook up accelerometer data via Qt DeviceMotion
3436         https://bugs.webkit.org/show_bug.cgi?id=47105
3437
3438         Get accelerometer necessary data via Qt mobility library using a
3439         provider class. Enable, also the RotationRate using the current device
3440         orientation provider.
3441
3442         * WebCore.pro:
3443
3444 2010-10-07  Luiz Agostini  <luiz.agostini@openbossa.org>
3445
3446         Reviewed by Kenneth Rohde Christiansen.
3447
3448         Some viewport meta tag api refactoring
3449         https://bugs.webkit.org/show_bug.cgi?id=47334
3450
3451         WebCore::findConfigurationForViewportData renamed to computeViewportAttributes.
3452         WebCore::ViewportAttributes::layoutViewport renamed to layoutSize.
3453
3454         * dom/ViewportArguments.cpp:
3455         (WebCore::computeViewportAttributes):
3456         * dom/ViewportArguments.h:
3457
3458 2010-10-07  Carlos Garcia Campos  <cgarcia@igalia.com>
3459
3460         Reviewed by Xan Lopez.
3461
3462         [GTK] Don't use GtkObject
3463         https://bugs.webkit.org/show_bug.cgi?id=47090
3464
3465         GtkObject has been removed in gtk3.
3466
3467         * plugins/gtk/gtk2xtbin.c:
3468         (gtk_xtbin_class_init):
3469         (gtk_xtbin_dispose):
3470
3471 2010-10-07  Pavel Podivilov  <podivilov@chromium.org>
3472
3473         Reviewed by Pavel Feldman.
3474
3475         Web Inspector: highlight XHR breakpoint when hit.
3476         https://bugs.webkit.org/show_bug.cgi?id=47253
3477
3478         * inspector/InspectorController.cpp:
3479         (WebCore::InspectorController::didCommitLoad):
3480         (WebCore::InspectorController::setNativeBreakpoint):
3481         (WebCore::InspectorController::removeNativeBreakpoint):
3482         (WebCore::InspectorController::findEventListenerBreakpoint):
3483         (WebCore::InspectorController::findXHRBreakpoint):
3484         * inspector/InspectorController.h:
3485         * inspector/InspectorInstrumentation.cpp:
3486         (WebCore::InspectorInstrumentation::instrumentWillDispatchEventImpl):
3487         (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequestImpl):
3488         * inspector/front-end/BreakpointManager.js:
3489         (WebInspector.BreakpointManager.prototype.createEventListenerBreakpoint):
3490         (WebInspector.BreakpointManager.prototype.createXHRBreakpoint):
3491         (WebInspector.BreakpointManager.prototype._xhrBreakpointRemoved):
3492         (WebInspector.BreakpointManager.prototype._removeNativeBreakpoint):
3493         (WebInspector.BreakpointManager.prototype._setNativeBreakpointEnabled):
3494         (WebInspector.BreakpointManager.prototype._setNativeBreakpointOnBackend.didSetNativeBreakpoint):
3495         (WebInspector.BreakpointManager.prototype._setNativeBreakpointOnBackend):
3496         (WebInspector.BreakpointManager.prototype._removeNativeBreakpointFromBackend):
3497         (WebInspector.BreakpointManager.prototype.debuggerPaused):
3498         (WebInspector.BreakpointManager.prototype.debuggerResumed):
3499         (WebInspector.NativeBreakpoint):
3500         (WebInspector.NativeBreakpoint.prototype.get enabled):
3501         (WebInspector.NativeBreakpoint.prototype.set enabled):
3502         (WebInspector.NativeBreakpoint.prototype.remove):
3503         * inspector/front-end/BreakpointsSidebarPane.js:
3504         (WebInspector.BreakpointItem):
3505         (WebInspector.BreakpointItem.prototype._breakpointClicked):
3506         (WebInspector.BreakpointItem.prototype._hitStateChanged):
3507         * inspector/front-end/CallStackSidebarPane.js:
3508         (WebInspector.CallStackSidebarPane.prototype.updateStatus):
3509         * inspector/front-end/inspector.css:
3510         (.breakpoint-list .breakpoint-hit):
3511         * inspector/front-end/inspector.js:
3512         (WebInspector.pausedScript):
3513         (WebInspector.resumedScript):
3514
3515 2010-10-07  Carlos Garcia Campos  <cgarcia@igalia.com>
3516
3517         Reviewed by Xan Lopez.
3518
3519         [GTK] Fix the build for GTK+ 3
3520         https://bugs.webkit.org/show_bug.cgi?id=47249
3521
3522         Use GdkVisual instead of GdkColormap. GdkColormap has been removed
3523         in gtk3.
3524
3525         * plugins/gtk/PluginViewGtk.cpp:
3526         (WebCore::PluginView::platformStart):
3527         * plugins/gtk/gtk2xtbin.c:
3528         (gtk_xtbin_new):
3529
3530 2010-10-07  Carlos Garcia Campos  <cgarcia@igalia.com>
3531
3532         Reviewed by Xan Lopez.
3533
3534         [GTK] Fix the build for GTK+ 3
3535         https://bugs.webkit.org/show_bug.cgi?id=47249
3536
3537         Do not use GdkDrawable deprecated API. Some methods of GdkDrawable
3538         are deprecated in gtk2 and have been removed in gtk3. Equivalent
3539         API has been added to GdkWindow.
3540
3541         * platform/gtk/GtkVersioning.c:
3542         (getDefaultGDKPointerDevice):
3543         * platform/gtk/GtkVersioning.h:
3544         * platform/gtk/PlatformScreenGtk.cpp:
3545         (WebCore::getVisual):
3546         (WebCore::screenAvailableRect):
3547
3548 2010-10-06  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
3549
3550         Reviewed by Andreas Kling.
3551
3552         [Qt] Disconnect signals before destroying MediaPlayerPrivateQt
3553
3554         https://bugs.webkit.org/show_bug.cgi?id=47073
3555
3556         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
3557
3558 2010-10-07  Alexander Pavlov  <apavlov@chromium.org>
3559
3560         Unreviewed, release build fix.
3561
3562         * inspector/InspectorStyleSheet.cpp:
3563         (WebCore::InspectorStyleSheetForInlineStyle::setStyleText):
3564         * inspector/InspectorStyleSheet.h:
3565         (WebCore::InspectorStyleSheetForInlineStyle::styleForId):
3566         (WebCore::InspectorStyleSheetForInlineStyle::ruleSourceDataFor):
3567
3568 2010-10-07  Pavel Podivilov  <podivilov@chromium.org>