de354245fb43999aec836f2245a961bea39df723
[WebKit-https.git] / WebCore / ChangeLog
1 2010-08-16  Leandro Pereira  <leandro@profusion.mobi>
2
3         [EFL] Build fix after r65366.
4
5         EFL port does not support automated tests yet.
6
7         * CMakeLists.txt: Use if (VAR) instead of if (${VAR}) to check if
8         they're empty.
9
10 2010-08-16  Pavel Feldman  <pfeldman@chromium.org>
11
12         Reviewed by Yury Semikhatsky.
13
14         Web Inspector: Make InjectedScript proto-based.
15         https://bugs.webkit.org/show_bug.cgi?id=44028
16
17         * inspector/front-end/InjectedScript.js:
18         (injectedScriptConstructor):
19         (injectedScriptConstructor.):
20
21 2010-08-16  Csaba Osztrogonác  <ossy@webkit.org>
22
23         Reviewed by Adam Roben.
24
25         Fix warning in WebCore/plugins/win/PluginPackageWin.cpp
26         https://bugs.webkit.org/show_bug.cgi?id=43920
27
28         * plugins/win/PluginPackageWin.cpp:
29         (WebCore::PluginPackage::fetchInfo):
30
31 2010-08-16  Pavel Feldman  <pfeldman@chromium.org>
32
33         Not reviewed. Touch inspector file to force frontend deployment.
34
35         * inspector/InspectorController.cpp:
36
37 2010-08-16  Kevin Ollivier  <kevino@theolliviers.com>
38
39         [wx] Build fix for non-Win ports on Windows.
40
41         * platform/graphics/WOFFFileFormat.cpp:
42
43 2010-08-16  Adam Langley  <agl@chromium.org>
44
45         Reviewed by Tony Chang.
46
47         [chromium] Improve spacing support for complex text on Linux
48
49         https://bugs.webkit.org/show_bug.cgi?id=39014
50
51         Previously, our complex text support ignored word-spacing,
52         justification and letter-spacing. This fixes the first two issues and
53         allows us to render Scribd's HTML5 documents much better.
54
55         Test: fast/text/atsui-spacing-features.html
56
57         * platform/graphics/chromium/FontLinux.cpp:
58         (WebCore::TextRunWalker::TextRunWalker):
59         (WebCore::TextRunWalker::setWordSpacingAdjustment):
60         (WebCore::TextRunWalker::setLetterSpacingAdjustment):
61         (WebCore::TextRunWalker::setPadding):
62         (WebCore::TextRunWalker::setGlyphXPositions):
63         (WebCore::TextRunWalker::isCodepointSpace):
64         (WebCore::Font::drawComplexText):
65         (WebCore::Font::floatWidthForComplexText):
66         (WebCore::Font::offsetForPositionForComplexText):
67         (WebCore::Font::selectionRectForComplexText):
68
69 2010-08-16  Csaba Osztrogonác  <ossy@webkit.org>
70
71         Reviewed by Kenneth Rohde Christiansen.
72
73         Fix warnings: unknown conversion type character 'l' in format
74         https://bugs.webkit.org/show_bug.cgi?id=43359
75
76         * loader/icon/IconDatabase.cpp:
77         (WebCore::IconDatabase::performURLImport): Replace %zu with %lu, because Windows doesn't understand z modifier.
78         (WebCore::IconDatabase::pruneUnretainedIcons): Use %I64i intsead of %lli on Windows.
79         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
80         (WebCore::MediaPlayerPrivate::totalTimeChanged): Use %I64d intsead of %lld on Windows.
81         * platform/sql/SQLiteDatabase.cpp:
82         (WebCore::SQLiteDatabase::setMaximumSize): Use %I64i intsead of %lli on Windows.
83         * storage/DatabaseTracker.cpp:
84         (WebCore::DatabaseTracker::setQuota): Use %I64u intsead of %llu on Windows.
85
86 2010-08-16  Csaba Osztrogonác  <ossy@webkit.org>
87
88         Reviewed by Kenneth Rohde Christiansen.
89
90         Fix warnings: unknown conversion type character 'l' in format
91         https://bugs.webkit.org/show_bug.cgi?id=43359
92
93         * loader/FTPDirectoryParser.cpp: Use %I64u format specifier instead of %llu on Windows.
94         (WebCore::parseOneFTPLine):
95
96 2010-08-16  Ariya Hidayat  <ariya@sencha.com>
97
98         Reviewed by Kenneth Rohde Christiansen.
99
100         [Qt] Shadow blur for rectangle fill
101         https://bugs.webkit.org/show_bug.cgi?id=44025
102
103         The blur implementation follows the approximation of Gaussian blur
104         with three successive box blurs, working on the alpha channel only.
105         (see http://www.w3.org/TR/SVG/filters.html#feGaussianBlur).
106
107         * WebCore.pro: Refer to ContexShadow.* files.
108         * platform/graphics/qt/ContextShadow.cpp: Added.
109         (WebCore::ContextShadow::ContextShadow):
110         (WebCore::ContextShadow::clear):
111         (WebCore::blurHorizontal): Box blurs in horizontal direction, working
112         on QImage (in-place).
113         (WebCore::shadowBlur): Main blur function which just calls the
114         above blurHorizontal function twice, once with transposed image
115         (equivalent as it would have done vertical box blurs).
116         (WebCore::ContextShadow::drawShadowRect):
117         * platform/graphics/qt/ContextShadow.h: Added.
118         (WebCore::ContextShadow::):
119         * platform/graphics/qt/GraphicsContextQt.cpp:
120         (WebCore::GraphicsContextPlatformPrivate::hasShadow):
121         (WebCore::GraphicsContext::restorePlatformState):
122         (WebCore::GraphicsContext::fillRect): Use ContextShadow for the shadow.
123         (WebCore::GraphicsContext::setPlatformShadow):
124
125 2010-08-16  Andras Becsi  <abecsi@webkit.org>
126
127         Rubber-stamped by Gustavo Noronha Silva.
128
129         [GTK] Build fix for MathML code generation.
130
131         No new tests needed.
132
133         * GNUmakefile.am:
134
135 2010-08-16  Sheriff Bot  <webkit.review.bot@gmail.com>
136
137         Unreviewed, rolling out r65414.
138         http://trac.webkit.org/changeset/65414
139         https://bugs.webkit.org/show_bug.cgi?id=44055
140
141         GTL & QT tests failing. (Requested by pfeldman on #webkit).
142
143         * inspector/front-end/InjectedScript.js:
144         (injectedScriptConstructor):
145         (injectedScriptConstructor.):
146
147 2010-08-16  Ariya Hidayat  <ariya@sencha.com>
148
149         Reviewed by Antonio Gomes.
150
151         [Qt] Save and restore shadow state in GraphicsContextQt
152         https://bugs.webkit.org/show_bug.cgi?id=44031
153
154         This is needed after r65362.
155         Use a new class ContextShadowParameter to track and keep the shadow
156         state. We use this rather than using GraphicsContextState to allow
157         possible optimizations (right now only to determine the shadow type,
158         but in future it might cover things like cached scratch image,
159         persistent shader, etc).
160
161         * platform/graphics/qt/GraphicsContextQt.cpp:
162         (WebCore::ContextShadowParameter::):
163         (WebCore::ContextShadowParameter::ContextShadowParameter):
164         (WebCore::ContextShadowParameter::clear):
165         (WebCore::GraphicsContextPlatformPrivate::hasShadow):
166         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
167         (WebCore::GraphicsContext::savePlatformState):
168         (WebCore::GraphicsContext::restorePlatformState):
169         (WebCore::GraphicsContext::drawRect):
170         (WebCore::GraphicsContext::drawLine):
171         (WebCore::GraphicsContext::strokeArc):
172         (WebCore::GraphicsContext::drawConvexPolygon):
173         (WebCore::GraphicsContext::fillPath):
174         (WebCore::GraphicsContext::strokePath):
175         (WebCore::GraphicsContext::fillRect):
176         (WebCore::GraphicsContext::fillRoundedRect):
177         (WebCore::GraphicsContext::setPlatformShadow):
178         (WebCore::GraphicsContext::clearPlatformShadow):
179
180 2010-07-28  Marcus Bulach  <bulach@chromium.org>
181
182         Reviewed by Adam Barth.
183
184         Implement IDBKeyPath parser.
185         https://bugs.webkit.org/show_bug.cgi?id=42976
186
187         IDBKeyPath is an internal class, exposed only for unit tests for now.
188         It'll allow indexed database implementation to traverse a given key path and obtain the corresponding properties
189         from a SerializedScriptValue.
190
191         * WebCore.gypi:
192         * storage/IDBKeyPath.cpp: Added.
193         (WebCore::IDBKeyPath::create):
194         (WebCore::IDBKeyPath::IDBKeyPath):
195         (WebCore::IDBKeyPath::~IDBKeyPath):
196         (WebCore::IDBKeyPath::hasNext):
197         (WebCore::IDBKeyPath::next):
198         (WebCore::IDBKeyPath::identifier):
199         (WebCore::IDBKeyPath::hasIndex):
200         (WebCore::IDBKeyPath::indexValue):
201         (WebCore::IDBKeyPath::parserError):
202         (WebCore::IDBKeyPath::parse):
203         (WebCore::IDBKeyPath::Lexer::lex):
204         (WebCore::isSafeIdentifierStartCharacter):
205         (WebCore::isSafeIdentifierCharacter):
206         (WebCore::IDBKeyPath::Lexer::lexIdentifier):
207         (WebCore::IDBKeyPath::Lexer::lexNumber):
208         * storage/IDBKeyPath.h: Added.
209         (WebCore::IDBKeyPath::Token::Token):
210         (WebCore::IDBKeyPath::):
211         (WebCore::IDBKeyPath::Lexer::Lexer):
212         (WebCore::IDBKeyPath::Lexer::next):
213         (WebCore::IDBKeyPath::Lexer::currentToken):
214
215 2010-08-13  Steve Block  <steveblock@google.com>
216
217         Reviewed by Alexey Proskuryakov.
218
219         Geolocation requests in progress when the frame is disconnected should invoke the error callback
220         https://bugs.webkit.org/show_bug.cgi?id=43974
221
222         If requests are ongoing when the Frame is disconnected, we abort them with a fatal error.
223         To do this, when Geolocation::disconnectFrame() is called we call cancelAllRequests() to
224         set a fatal error on all ongoing requests. Once the requests have made their error
225         callbacks, they are deleted. Note that we check at callback time that the script
226         execution context for the callback is still valid, so it's safe to attempt these
227         callbacks even after the Geolocation object's Frame has gone.
228
229         This requires a change to allow multiple calls to GeoNotifier::setFatalError().
230         For repeated calls, we do not replace the existing error. This ensures that when
231         permission has been denied and the frame is then disconnected, the error callback
232         reports the permission error, as required by the spec.
233
234         Tests: fast/dom/Geolocation/disconnected-frame.html
235                fast/dom/Geolocation/disconnected-frame-permission-denied.html
236
237         * page/Geolocation.cpp:
238         (WebCore::Geolocation::GeoNotifier::setFatalError):
239         (WebCore::Geolocation::disconnectFrame):
240         (WebCore::Geolocation::startRequest):
241         (WebCore::Geolocation::cancelAllRequests):
242         * page/Geolocation.h:
243
244 2010-08-16  Pavel Feldman  <pfeldman@chromium.org>
245
246         Reviewed by Joseph Pecoraro.
247
248         Web Inspector: upstream frontend-side WebSocket transport.
249         https://bugs.webkit.org/show_bug.cgi?id=43970
250
251         Chromium already has an alternate WebSocket-based communication channel with
252         the backend. Upstreaming it in this change. We will agree on the URI
253         of the remote service as the protocol matures.
254
255         * inspector/front-end/inspector.js:
256         (.WebInspector.socket.onmessage):
257         (.WebInspector.socket.onerror):
258         (.WebInspector.socket.onopen):
259         (WebInspector.loaded):
260         (WebInspector.doLoadedDone):
261         (WebInspector_syncDispatch):
262
263 2010-08-16  Pavel Feldman  <pfeldman@chromium.org>
264
265         Reviewed by Yury Semikhatsky.
266
267         Web Inspector: Make InjectedScript proto-based.
268         https://bugs.webkit.org/show_bug.cgi?id=44028
269
270         * inspector/front-end/InjectedScript.js:
271         (injectedScriptConstructor):
272         (injectedScriptConstructor.):
273         * inspector/front-end/inspector.js:
274         (WebInspector.loaded):
275
276 2010-08-16  Pavel Feldman  <pfeldman@chromium.org>
277
278         Reviewed by Joseph Pecoraro.
279
280         Web Inspector: [REGRESSION] console's clear command does not work.
281         https://bugs.webkit.org/show_bug.cgi?id=44027
282
283         Test: inspector/console-command-clear.html
284
285         * inspector/Inspector.idl:
286         * inspector/InspectorBackend.cpp:
287         * inspector/InspectorBackend.h:
288         * inspector/InspectorController.cpp:
289         (WebCore::InspectorController::clearConsoleMessages):
290         * inspector/front-end/ConsoleView.js:
291         (WebInspector.ConsoleView.prototype.requestClearMessages):
292         * inspector/front-end/inspector.js:
293         (WebInspector.consoleMessagesCleared):
294
295 2010-08-16  Jeremy Orlow  <jorlow@chromium.org>
296
297         Ugh, the #if ENABLE() was supposed to be added to Settings not GroupSettings.
298
299         * page/GroupSettings.cpp:
300         (WebCore::GroupSettings::GroupSettings):
301         (WebCore::GroupSettings::setLocalStorageQuotaBytes):
302         * page/GroupSettings.h:
303         * page/Settings.cpp:
304         (WebCore::Settings::Settings):
305         * page/Settings.h:
306
307 2010-08-16  Jeremy Orlow  <jorlow@chromium.org>
308
309         Last build fix?
310
311         * page/PageGroup.cpp:
312         (WebCore::PageGroup::PageGroup):
313
314 2010-08-16  Jeremy Orlow  <jorlow@chromium.org>
315
316         Ugh...another build fix.
317
318         * page/GroupSettings.cpp:
319         (WebCore::GroupSettings::GroupSettings):
320         * page/GroupSettings.h:
321
322 2010-08-16  Jeremy Orlow  <jorlow@chromium.org>
323
324         Build fix.
325
326         * GNUmakefile.am:
327
328 2010-08-16  Jeremy Orlow  <jorlow@chromium.org>
329
330         Build fix.
331
332         * page/PageGroup.cpp:
333         (WebCore::PageGroup::localStorage):
334
335 2010-08-13  Jeremy Orlow  <jorlow@chromium.org>
336
337         Some settings are linked to the PageGroup not the Page.  Create a new class for those.
338         https://bugs.webkit.org/show_bug.cgi?id=43794
339
340         Since persistient storage is shared between pages, there's no way to modify
341         some settings related to it on a per page basis.  As such, it's not technically
342         correct for these settings to be on the Page's settings.  Create a new class
343         called GroupSettings, move  group-wide local storage setting there (the other we
344         can't), and add a new setting for IndexedDB's path (which is prompting this change).
345
346         No behavior has changed, so no tests.
347
348         * Android.mk:
349         * CMakeLists.txt:
350         * GNUmakefile.am:
351         * WebCore.gypi:
352         * WebCore.pro:
353         * WebCore.vcproj/WebCore.vcproj:
354         * WebCore.xcodeproj/project.pbxproj:
355         * page/GroupSettings.cpp: Added.
356         (WebCore::GroupSettings::GroupSettings):
357         (WebCore::GroupSettings::setLocalStorageQuotaBytes):
358         (WebCore::GroupSettings::setLocalStorageDatabasePath):
359         (WebCore::GroupSettings::setIndexedDBDatabasePath):
360         * page/GroupSettings.h: Added.
361         (WebCore::GroupSettings::create):
362         (WebCore::GroupSettings::localStorageQuotaBytes):
363         (WebCore::GroupSettings::localStorageDatabasePath):
364         (WebCore::GroupSettings::indexedDBDatabasePath):
365         * page/PageGroup.cpp:
366         (WebCore::PageGroup::PageGroup):
367         (WebCore::PageGroup::localStorage):
368         * page/PageGroup.h:
369         (WebCore::PageGroup::groupSettings):
370         * page/Settings.cpp:
371         (WebCore::Settings::Settings):
372         (WebCore::Settings::setSessionStorageQuota):
373         * page/Settings.h:
374
375 2010-08-16  Adam Barth  <abarth@webkit.org>
376
377         Reviewed by Alexey Proskuryakov.
378
379         HTML5 fragment parsing doesn't load iframes
380         https://bugs.webkit.org/show_bug.cgi?id=44038
381
382         Previously, this code assumed that every source iframe was actually
383         attached to a render tree.  It tried to "keep the iframe alive" as it
384         moved documents.  However, if the iframe wasn't attached to begin with,
385         it was never "alive," so trying to keep a dead iframe alive lead to a
386         ...  zombie iframe.
387
388         Test: fast/frames/adopt-from-created-document.html
389
390         * dom/Document.cpp:
391         (WebCore::Document::adoptNode):
392
393 2010-08-13  MORITA Hajime  <morrita@google.com>
394
395         Reviewed by Tony Chang.
396
397         https://bugs.webkit.org/show_bug.cgi?id=43778
398         Dropping should fire textInput event
399
400         This change:
401         - added TextEvent::m_isDrop to distinguish drop-initiated events.
402         - added to dispatch TextEvent from DragController before making a side effect
403           and cancel the side effect if the event prevents default
404
405         Tests: editing/pasteboard/drop-text-events-sideeffect.html
406                editing/pasteboard/drop-text-events.html
407
408         * dom/TextEvent.cpp:
409         (WebCore::TextEvent::createForDrop): Added.
410         (WebCore::TextEvent::TextEvent):
411         * dom/TextEvent.h:
412         (WebCore::TextEvent::isDrop): Added.
413         * editing/Editor.cpp:
414         (WebCore::Editor::handleTextEvent):
415         (WebCore::Editor::findEventTargetFrom): Extracted from findEventTargetFromSelection().
416         (WebCore::Editor::findEventTargetFromSelection): 
417         * editing/Editor.h:
418         * page/DragController.cpp:
419         (WebCore::DragController::dispatchTextInputEventFor): Added.
420         (WebCore::DragController::concludeEditDrag): Added an event dispatch path.
421         * page/DragController.h:
422
423 2010-08-15  Ariya Hidayat  <ariya@sencha.com>
424
425         Unreviewed, rolling out r65393.
426         http://trac.webkit.org/changeset/65393
427         https://bugs.webkit.org/show_bug.cgi?id=44031
428
429         Breaks some canvas tests.
430
431         * platform/graphics/qt/GraphicsContextQt.cpp:
432         (WebCore::GraphicsContextPlatformPrivate::):
433         (WebCore::GraphicsContextPlatformPrivate::hasShadow):
434         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
435         (WebCore::GraphicsContext::savePlatformState):
436         (WebCore::GraphicsContext::restorePlatformState):
437         (WebCore::GraphicsContext::strokeArc):
438         (WebCore::GraphicsContext::drawConvexPolygon):
439         (WebCore::GraphicsContext::fillPath):
440         (WebCore::GraphicsContext::strokePath):
441         (WebCore::GraphicsContext::fillRect):
442         (WebCore::GraphicsContext::fillRoundedRect):
443         (WebCore::GraphicsContext::setPlatformShadow):
444         (WebCore::GraphicsContext::clearPlatformShadow):
445
446 2010-08-15  Ariya Hidayat  <ariya@sencha.com>
447
448         Reviewed by Antonio Gomes.
449
450         [Qt] Save and restore shadow state in GraphicsContextQt
451         https://bugs.webkit.org/show_bug.cgi?id=44031
452
453         This is needed after r65362.
454         Use a new class ContextShadowParameter to track and keep the shadow
455         state. We use this rather than using GraphicsContextState to allow
456         possible optimizations (right now only to determine the shadow type,
457         but in future it might cover things like cached scratch image,
458         persistent shader, etc).
459
460         * platform/graphics/qt/GraphicsContextQt.cpp:
461         (WebCore::ContextShadowParameter::):
462         (WebCore::ContextShadowParameter::ContextShadowParameter):
463         (WebCore::ContextShadowParameter::clear):
464         (WebCore::GraphicsContextPlatformPrivate::hasShadow):
465         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
466         (WebCore::GraphicsContext::savePlatformState):
467         (WebCore::GraphicsContext::restorePlatformState):
468         (WebCore::GraphicsContext::drawRect):
469         (WebCore::GraphicsContext::drawLine):
470         (WebCore::GraphicsContext::strokeArc):
471         (WebCore::GraphicsContext::drawConvexPolygon):
472         (WebCore::GraphicsContext::fillPath):
473         (WebCore::GraphicsContext::strokePath):
474         (WebCore::GraphicsContext::fillRect):
475         (WebCore::GraphicsContext::fillRoundedRect):
476         (WebCore::GraphicsContext::setPlatformShadow):
477         (WebCore::GraphicsContext::clearPlatformShadow):
478
479 2010-08-15  Ariya Hidayat  <ariya@sencha.com>
480
481         Reviewed by Antonio Gomes.
482
483         [Qt] Border should not cast shadows
484         https://bugs.webkit.org/show_bug.cgi?id=44015
485
486         Shadows should be not casted except for brush fill (which is not what
487         drawLine and drawRect are supposed to do).
488
489         * platform/graphics/qt/GraphicsContextQt.cpp:
490         (WebCore::GraphicsContext::drawRect): Remove shadow painting,
491         (WebCore::GraphicsContext::drawLine): ditto.
492
493 2010-08-15  Ryuan Choi  <ryuan.choi@samsung.com>
494
495         Reviewed by Antonio Gomes.
496
497         [EFL] Build error on r65378
498         https://bugs.webkit.org/show_bug.cgi?id=44019
499
500         Change build script for HTMLEntityNames.json instead of HTMLEntityNames.gperf
501
502         * CMakeLists.txt:
503
504 2010-08-15  Kevin Ollivier  <kevino@theolliviers.com>
505
506         [wx] Build fix, add missing header.
507
508         * platform/graphics/WOFFFileFormat.cpp:
509
510 2010-08-15  Kevin Ollivier  <kevino@theolliviers.com>
511
512         [wx] Build fix, don't build PluginDataNone.cpp even on GTK as PluginDataWx.cpp compiles.
513
514         * wscript:
515
516 2010-08-15  Adam Barth  <abarth@webkit.org>
517
518         Reviewed by Eric Seidel.
519
520         document.write() doesn't flush plain text
521         https://bugs.webkit.org/show_bug.cgi?id=8961
522
523         Originally I thought we should buffer the character tokens until we've
524         reached the end of the input stream, but that's not how the spec
525         handles things (it emits the character tokens one-by-one).
526
527         Tests: fast/tokenizer/flush-characters-in-document-write-evil.html
528                fast/tokenizer/flush-characters-in-document-write.html
529
530         * html/HTMLTokenizer.cpp:
531         (WebCore::HTMLTokenizer::emitEndOfFile):
532         (WebCore::HTMLTokenizer::nextToken):
533         (WebCore::HTMLTokenizer::haveBufferedCharacterToken):
534             - Renamed this function now that it's simplier.
535         * html/HTMLTokenizer.h:
536
537 2010-08-15  Adam Barth  <abarth@webkit.org>
538
539         Reviewed by Eric Seidel.
540
541         Don't try to replace a non-existent document after executing JavaScript URLs
542         https://bugs.webkit.org/show_bug.cgi?id=44024
543
544         Synchronous JavaScript execution is evil.  Previously, the frame was
545         deleted after executing the JavaScript URL, so we'd get confused when
546         we tried to replace its document.
547
548         Test: fast/frames/javascript-url-for-deleted-frame.html
549
550         * bindings/ScriptControllerBase.cpp:
551         (WebCore::ScriptController::executeIfJavaScriptURL):
552
553 2010-08-14  Sheriff Bot  <webkit.review.bot@gmail.com>
554
555         Unreviewed, rolling out r65374.
556         http://trac.webkit.org/changeset/65374
557         https://bugs.webkit.org/show_bug.cgi?id=44018
558
559         broke a myriad of svg tests (Requested by kling on #webkit).
560
561         * platform/graphics/qt/PathQt.cpp:
562         (WebCore::Path::strokeBoundingRect):
563
564 2010-08-14  Eric Seidel  <eric@webkit.org>
565
566         Reviewed by Adam Barth.
567
568         XSLTProcessor.transformToFragment should not pass contextElement to html/xml document parsers
569         https://bugs.webkit.org/show_bug.cgi?id=44017
570
571         This fixes two tests which otherwise would fail when the
572         HTML5 TreeBuilder is enabled for fragment parsing.
573
574         This revealed a bug in HTMLTreeBuilder() which I fixed as well.
575
576         * html/HTMLTreeBuilder.cpp:
577         (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
578         * xml/XSLTProcessor.cpp:
579         (WebCore::createFragmentFromSource):
580
581 2010-08-14  Andreas Kling  <andreas.kling@nokia.com>
582
583         Reviewed by Ariya Hidayat.
584
585         [Qt] Path: Fast approximation of stroke bounding rects
586         https://bugs.webkit.org/show_bug.cgi?id=44014
587
588         * platform/graphics/qt/PathQt.cpp:
589         (WebCore::Path::strokeBoundingRect): Use QPainterPath::controlPointRect()
590         to calculate a slightly larger bounding rect in a fraction of the time.
591
592 2010-08-14  Eric Seidel  <eric@webkit.org>
593
594         Reviewed by Adam Barth.
595
596         Move innerHTML off of Range::createContextualFragment
597         https://bugs.webkit.org/show_bug.cgi?id=44011
598
599         This makes all the editing tests stop failing under the
600         HTML5 TreeBuilder.
601
602         In a previous patch Adam disabled some of the (wrong) code
603         in createContextualFragment when in html5 treebuilder mode.
604         The problem is that the editing code depends on
605         createContextualFragment (as well as the Range DOM API),
606         so we have to leave this code in until we can figure
607         out if it's right or wrong behavior for the Range API.
608
609         This patch moves innerHTML/outerHTML off of using
610         createContextualFragment and instead calls
611         DocumentFragment::parseHTML directly (which is much simpler).
612
613         I expect Adam and I will end up turning on the HTML5 TreeBuilder
614         in the next couple days, and most of the if branches I added
615         here will go away for good.
616
617         I renamed Element::createContextualFragment to
618         deprecatedCreateContextualFragment, to indicate that it's a
619         dead API.  The editing code should move off of it and consider
620         using DocumentFragment::parseHTML instead.
621
622         * dom/Element.cpp:
623         (WebCore::Element::deprecatedCreateContextualFragment):
624         * dom/Element.h:
625         * dom/Range.cpp:
626         (WebCore::Range::createContextualFragment):
627         * editing/markup.cpp:
628         (WebCore::createFragmentFromMarkup):
629         * html/HTMLElement.cpp:
630         (WebCore::useLegacyTreeBuilder):
631         (WebCore::HTMLElement::deprecatedCreateContextualFragment):
632         (WebCore::HTMLElement::setInnerHTML):
633         (WebCore::HTMLElement::setOuterHTML):
634         * html/HTMLElement.h:
635
636 2010-08-14  Tasuku Suzuki  <tasuku.suzuki@nokia.com>
637
638         Reviewed by Antonio Gomes.
639
640         [Qt] Fix compilation with QT_NO_LINEEDIT
641         https://bugs.webkit.org/show_bug.cgi?id=38324
642
643         * bridge/qt/qt_runtime.cpp:
644         (JSC::Bindings::convertValueToQVariant):
645         (JSC::Bindings::convertQVariantToValue):
646
647 2010-08-14  Rob Buis  <rwlbuis@gmail.com>
648
649         Reviewed by Dirk Schulze.
650
651         IE SVG empty path test fails
652         https://bugs.webkit.org/show_bug.cgi?id=44008
653
654         Change createLine to allow creating zero-length lines. This makes it possible
655         to have markers and line-caps applied to zero-length lines.
656
657         Test: svg/custom/marker-empty-path.svg
658
659         * platform/graphics/Path.cpp:
660         (WebCore::Path::createLine):
661
662 2010-08-14  Patrick Gansterer  <paroga@paroga.com>
663
664         Reviewed by Kenneth Rohde Christiansen.
665
666         [CMake] Move SQL files into a IF (ENABLE_DATABASE) section
667         https://bugs.webkit.org/show_bug.cgi?id=43979
668
669         * CMakeLists.txt:
670
671 2010-08-14  Matthew Delaney  <mdelaney@apple.com>
672
673         Reviewed by Kenneth Rohde Christiansen.
674
675         Canvas is not reset when setting canvas.width
676         https://bugs.webkit.org/show_bug.cgi?id=43341
677
678         * html/HTMLCanvasElement.cpp:
679         (WebCore::HTMLCanvasElement::reset): Moved the call to
680         hasCreatedImageBuffer up *before* the call to setSurface since setSurface
681         sets hasCreatedImageBuffer to false every time.
682
683 2010-08-14  Patrick Gansterer  <paroga@paroga.com>
684
685         Reviewed by Kenneth Rohde Christiansen.
686
687         [CMake] Set target properties only if available
688         https://bugs.webkit.org/show_bug.cgi?id=43978
689
690         * CMakeLists.txt:
691
692 2010-08-14  Dirk Schulze  <krit@webkit.org>
693
694         Unreviewed sort of Xcode project file.
695
696         * WebCore.xcodeproj/project.pbxproj:
697
698 2010-08-14  Ariya Hidayat  <ariya@sencha.com>
699
700         Reviewed by Simon Hausmann and Kenneth Rohde Christiansen.
701
702         [Qt] Refactor shadow state handling in GraphicsContextQt
703         https://bugs.webkit.org/show_bug.cgi?id=44006
704
705         * platform/graphics/qt/GraphicsContextQt.cpp:
706         (WebCore::GraphicsContextPlatformPrivate::): Added shadow states as
707         member variables.
708         (WebCore::GraphicsContextPlatformPrivate::hasShadow): Convenient
709         function to check whether there is shadow or not.
710         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
711         (WebCore::GraphicsContext::drawRect): Use shadow states instead of
712         calling getShadow.
713         (WebCore::GraphicsContext::drawLine): ditto.
714         (WebCore::GraphicsContext::strokeArc): ditto.
715         (WebCore::GraphicsContext::drawConvexPolygon): ditto.
716         (WebCore::GraphicsContext::fillPath): ditto.
717         (WebCore::GraphicsContext::strokePath): ditto.
718         (WebCore::GraphicsContext::fillRect): Removes the use of helper function
719         drawBorderlessRectShadow as the code already becomes a lot simpler.
720         (WebCore::GraphicsContext::fillRoundedRect): Removes the use of helper
721         function drawFilledShadowPath as the code already becomes a lot simpler.
722         (WebCore::GraphicsContext::setPlatformShadow): Store shadow states
723         and find out the shadow type (complexity) for future use.
724         (WebCore::GraphicsContext::clearPlatformShadow): Reset shadow states.
725
726 2010-08-13  Adam Barth  <abarth@webkit.org>
727
728         Reviewed by Eric Seidel.
729
730         Rename some concepts in HTML entity search to be more self-documenting
731         https://bugs.webkit.org/show_bug.cgi?id=44004
732
733         Start and end are now first and last, which lets us use some better
734         names for the statics in HTMLEntityTable.
735
736         * html/HTMLEntityParser.cpp:
737         (WebCore::consumeHTMLEntity):
738         * html/HTMLEntitySearch.cpp:
739         (WebCore::HTMLEntitySearch::HTMLEntitySearch):
740         (WebCore::HTMLEntitySearch::findFirst):
741         (WebCore::HTMLEntitySearch::findLast):
742         (WebCore::HTMLEntitySearch::advance):
743         * html/HTMLEntitySearch.h:
744         (WebCore::HTMLEntitySearch::isEntityPrefix):
745         (WebCore::HTMLEntitySearch::mostRecentMatch):
746         (WebCore::HTMLEntitySearch::fail):
747         * html/HTMLEntityTable.h:
748
749 2010-08-13  Adam Barth  <abarth@webkit.org>
750
751         Fix ASSERT in XML entity parsing.  You can't advance the entity search
752         if you've already discovered that your string is not an entity.
753
754         * html/HTMLEntityParser.cpp:
755         (WebCore::decodeNamedEntity):
756
757 2010-08-13  Eric Seidel  <eric@webkit.org>
758
759         Unreviewed.  Attempt at fixing Chromium build.
760
761         Add support for MathML entities
762         https://bugs.webkit.org/show_bug.cgi?id=43949
763
764         * WebCore.gyp/WebCore.gyp:
765          - I have no clue if this is right or not.
766
767 2010-08-13  Eric Seidel  <eric@webkit.org>
768
769         Unreviewed.  Attempted build fix for Windows.
770
771         Add support for MathML entities
772         https://bugs.webkit.org/show_bug.cgi?id=43949
773
774         * DerivedSources.cpp:
775          - Add HTMLEntityTable.cpp
776
777 2010-08-09  Adam Barth  <abarth@webkit.org>
778
779         Reviewed by Eric Seidel.
780
781         Add support for MathML entities
782         https://bugs.webkit.org/show_bug.cgi?id=43949
783
784         Implementing the HTML5 entity parsing algorithm require refactoring how
785         we search for entity names.  Instead of using a perfect hash, we now
786         use a sorted list.  As we advance through the input, we walk down a
787         binary search of the table looking for an entity.
788
789         Using this data structure lets us keep track of whether the current
790         string is a prefix of an existing entity, which we need for the
791         algorithm.  In a future patch, I plan to add some indices to the
792         table, which should let us narrow down the range of interesting entries
793         more quickly.
794
795         The one nasty piece of the algorithm is if we walk too far down the
796         input and we need to back up to a previous match.  In this patch, we
797         accomplish this by rewinding the input and consuming a known number of
798         characters to resync the source.
799
800         * WebCore.xcodeproj/project.pbxproj:
801         * html/HTMLEntityParser.cpp:
802         (WebCore::consumeHTMLEntity):
803         * html/HTMLEntitySearch.cpp: Added.
804         (WebCore::):
805         (WebCore::HTMLEntitySearch::HTMLEntitySearch):
806         (WebCore::HTMLEntitySearch::compare):
807         (WebCore::HTMLEntitySearch::findStart):
808         (WebCore::HTMLEntitySearch::findEnd):
809         (WebCore::HTMLEntitySearch::advance):
810         * html/HTMLEntitySearch.h: Added.
811         (WebCore::HTMLEntitySearch::isEntityPrefix):
812         (WebCore::HTMLEntitySearch::currentValue):
813         (WebCore::HTMLEntitySearch::lastMatch):
814         (WebCore::HTMLEntitySearch::):
815         (WebCore::HTMLEntitySearch::fail):
816         * html/HTMLEntityTable.h: Added.
817         (WebCore::HTMLEntityTableEntry::lastCharacter):
818
819 2010-08-13  Tony Gentilcore  <tonyg@chromium.org>
820
821         Reviewed by Eric Seidel.
822
823         Refactor HTMLScriptRunner to allow deferred scripts to share code
824         https://bugs.webkit.org/show_bug.cgi?id=43736
825
826         No new tests because no functional change
827
828         * html/HTMLScriptRunner.cpp:
829         (WebCore::HTMLScriptRunner::sourceFromPendingScript): Make const to enforce the idea that it doesn't change m_parsingBlockingScript.
830         (WebCore::HTMLScriptRunner::executeParsingBlockingScript): Rename to make it clear this deals with the parsing blocking script and refactor to use executePendingScriptAndDispatchEvent.
831         (WebCore::HTMLScriptRunner::executePendingScriptAndDispatchEvent): Factored out of executePendingScript, this can be used for executing any external script.
832         (WebCore::HTMLScriptRunner::executeScript): This can be used for executing any inline or external script. ASSERTs moved to the two calling points.
833         (WebCore::HTMLScriptRunner::executeParsingBlockingScripts): Moved method.
834         (WebCore::HTMLScriptRunner::requestParsingBlockingScript): Factored out requestPendingScript.
835         (WebCore::HTMLScriptRunner::requestPendingScript): Factored out from reqeustParsingBlockingScript.
836         (WebCore::HTMLScriptRunner::runScript):
837         * html/HTMLScriptRunner.h:
838
839 2010-08-13  Gavin Barraclough  <barraclough@apple.com>
840
841         Windows build fix.
842
843         * WebCore.xcodeproj/project.pbxproj:
844         * platform/win/SharedBufferWin.cpp:
845
846 2010-08-13  Gavin Barraclough  <barraclough@apple.com>
847
848         Rubber stamped by Sam Weinig.
849         Switch String::/UString::ascii() to return a CString.
850
851         * WebCore.xcodeproj/project.pbxproj:
852         * bridge/c/c_class.cpp:
853         (JSC::Bindings::CClass::methodsNamed):
854         (JSC::Bindings::CClass::fieldNamed):
855         * bridge/jni/jsc/JNIBridgeJSC.cpp:
856         (JavaField::valueFromInstance):
857         (JavaField::setValueToInstance):
858         * bridge/jni/jsc/JavaInstanceJSC.cpp:
859         (JavaInstance::invokeMethod):
860         * bridge/objc/objc_class.mm:
861         (JSC::Bindings::ObjcClass::methodsNamed):
862         (JSC::Bindings::ObjcClass::fieldNamed):
863         * bridge/objc/objc_instance.mm:
864         (ObjcInstance::setValueOfUndefinedField):
865         (ObjcInstance::getValueOfUndefinedField):
866         * loader/icon/IconRecord.cpp:
867         * platform/sql/SQLiteDatabase.cpp:
868         * platform/sql/SQLiteStatement.cpp:
869         * storage/SQLStatement.cpp:
870
871 2010-08-13  Mihai Parparita  <mihaip@chromium.org>
872
873         Reviewed by Dimitri Glazkov.
874
875         Session history should skip over JS redirects
876         https://bugs.webkit.org/show_bug.cgi?id=42861
877         
878         Lock the back/forward list for location changes and form submits that
879         happen before the onload event fires that are not the result of user
880         gestures.
881         
882         Made form submission (at the ScheduledFormSubmission level) more similar
883         to ScheduledURLNavigation by having it call clientRedirected too, fixing
884         a long-standing FIXME.
885
886         Test: fast/history/gesture-before-onload-location-href.html,
887         fast/history/gesture-before-onload-form-submit.html and updated
888         expectations for http/tests/history tests that used to fail.
889
890         * loader/FormSubmission.cpp:
891         (WebCore::FormSubmission::requestURL): 
892         (WebCore::FormSubmission::populateFrameLoadRequest):
893         * loader/FormSubmission.h:
894         * loader/RedirectScheduler.cpp:
895         (WebCore::ScheduledFormSubmission::ScheduledFormSubmission):
896         (WebCore::ScheduledFormSubmission::fire):
897         (WebCore::ScheduledFormSubmission::didStartTimer):
898         (WebCore::ScheduledFormSubmission::didStopTimer):
899         (WebCore::RedirectScheduler::scheduleRedirect):
900         (WebCore::RedirectScheduler::mustLockBackForwardList):
901         (WebCore::RedirectScheduler::scheduleLocationChange):
902         (WebCore::RedirectScheduler::scheduleFormSubmission):
903         * loader/RedirectScheduler.h:
904
905 2010-08-13  Leandro Pereira  <leandro@profusion.mobi>
906
907         [EFL] Unreviewed build fix.
908         These changes were supposed to be landed on r65319, but due to some
909         svn-apply/commit-queue bug it wasn't fully applied. A bug was filed
910         by Patrick Gansterer (author of the changes in this commit):
911         https://bugs.webkit.org/show_bug.cgi?id=43981
912
913         * CMakeLists.txt: Update calls to GENERATE_GPERF and
914         GENERATE_GRAMMAR macros.
915
916 2010-08-13  Chris Fleizach  <cfleizach@apple.com>
917
918         AX: isNativeCheckbox does not work as advertised
919         https://bugs.webkit.org/show_bug.cgi?id=43872
920
921         Re-adding this patch after it was erroneously rolled out.
922
923         Test: platform/mac/accessibility/native-vs-nonnative-checkboxes.html
924
925         * accessibility/AccessibilityRenderObject.cpp:
926         (WebCore::AccessibilityRenderObject::isInputImage):
927         (WebCore::AccessibilityRenderObject::isNativeCheckboxOrRadio):
928         * dom/InputElement.h:
929         * html/HTMLInputElement.h:
930         (WebCore::HTMLInputElement::isCheckbox):
931
932 2010-08-13  Sheriff Bot  <webkit.review.bot@gmail.com>
933
934         Unreviewed, rolling out r65331.
935         http://trac.webkit.org/changeset/65331
936         https://bugs.webkit.org/show_bug.cgi?id=43980
937
938         This patch breaks some shadow tests on Qt Linux release
939         (Requested by ariya on #webkit).
940
941         * platform/graphics/qt/GraphicsContextQt.cpp:
942         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
943         (WebCore::GraphicsContext::drawRect):
944         (WebCore::GraphicsContext::drawLine):
945         (WebCore::GraphicsContext::strokeArc):
946         (WebCore::GraphicsContext::drawConvexPolygon):
947         (WebCore::drawFilledShadowPath):
948         (WebCore::GraphicsContext::fillPath):
949         (WebCore::GraphicsContext::strokePath):
950         (WebCore::drawBorderlessRectShadow):
951         (WebCore::GraphicsContext::fillRect):
952         (WebCore::GraphicsContext::fillRoundedRect):
953         (WebCore::GraphicsContext::setPlatformShadow):
954         (WebCore::GraphicsContext::clearPlatformShadow):
955
956 2010-08-13  Kinuko Yasuda  <kinuko@chromium.org>
957
958         Reviewed by David Levin.
959
960         Update run-bindings-tests expectations
961         https://bugs.webkit.org/show_bug.cgi?id=43944
962
963         The results have become out of sync after changeset 64552 and 65269.
964
965         Test: WebKitTools/Scripts/run-bindings-tests
966
967         * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
968         (webkit_dom_test_callback_callback_with_class1param):
969         (webkit_dom_test_callback_callback_with_class2param):
970         (webkit_dom_test_callback_callback_with_non_bool_return_type):
971         * bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
972         * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
973         (webkit_dom_test_obj_void_method_with_args):
974         (webkit_dom_test_obj_int_method_with_args):
975         (webkit_dom_test_obj_obj_method):
976         (webkit_dom_test_obj_obj_method_with_args):
977         (webkit_dom_test_obj_method_that_requires_all_args):
978         (webkit_dom_test_obj_method_that_requires_all_args_and_throws):
979         (webkit_dom_test_obj_serialized_value):
980         (webkit_dom_test_obj_idb_key):
981         (webkit_dom_test_obj_with_dynamic_frame_and_user_gesture):
982         (webkit_dom_test_obj_with_dynamic_frame_and_user_gesture_asad):
983         (webkit_dom_test_obj_with_script_state_obj):
984         (webkit_dom_test_obj_with_script_state_obj_exception):
985         (webkit_dom_test_obj_get_read_only_string_attr):
986         (webkit_dom_test_obj_get_read_only_test_obj_attr):
987         (webkit_dom_test_obj_get_string_attr):
988         (webkit_dom_test_obj_set_string_attr):
989         (webkit_dom_test_obj_get_test_obj_attr):
990         (webkit_dom_test_obj_set_test_obj_attr):
991         (webkit_dom_test_obj_get_xml_obj_attr):
992         (webkit_dom_test_obj_set_xml_obj_attr):
993         (webkit_dom_test_obj_get_reflected_string_attr):
994         (webkit_dom_test_obj_set_reflected_string_attr):
995         (webkit_dom_test_obj_get_reflected_url_attr):
996         (webkit_dom_test_obj_set_reflected_url_attr):
997         (webkit_dom_test_obj_get_reflected_non_empty_url_attr):
998         (webkit_dom_test_obj_set_reflected_non_empty_url_attr):
999         (webkit_dom_test_obj_get_reflected_custom_url_attr):
1000         (webkit_dom_test_obj_set_reflected_custom_url_attr):
1001         (webkit_dom_test_obj_get_reflected_custom_non_empty_url_attr):
1002         (webkit_dom_test_obj_set_reflected_custom_non_empty_url_attr):
1003         (webkit_dom_test_obj_get_string_attr_with_getter_exception):
1004         (webkit_dom_test_obj_set_string_attr_with_getter_exception):
1005         (webkit_dom_test_obj_get_string_attr_with_setter_exception):
1006         (webkit_dom_test_obj_set_string_attr_with_setter_exception):
1007         (webkit_dom_test_obj_get_script_string_attr):
1008         (webkit_dom_test_obj_get_hash):
1009         (webkit_dom_test_obj_class_init):
1010         * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
1011         * bindings/scripts/test/JS/JSTestObj.cpp:
1012         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod):
1013
1014 2010-08-13  Ariya Hidayat  <ariya@sencha.com>
1015
1016         Reviewed by Simon Hausmann.
1017
1018         [Qt] Canvas and CSS: blur option in shadow not working
1019         https://bugs.webkit.org/show_bug.cgi?id=34479
1020
1021         Patch 1: Refactor shadow states handling.
1022
1023         * platform/graphics/qt/GraphicsContextQt.cpp:
1024         (WebCore::GraphicsContextPlatformPrivate::): Added shadow states as
1025         member variables.
1026         (WebCore::GraphicsContextPlatformPrivate::hasShadow): Convenient
1027         function to check whether there is shadow or not.
1028         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
1029         (WebCore::GraphicsContext::drawRect): Use shadow states instead of
1030         calling getShadow.
1031         (WebCore::GraphicsContext::drawLine): ditto.
1032         (WebCore::GraphicsContext::strokeArc): ditto.
1033         (WebCore::GraphicsContext::drawConvexPolygon): ditto.
1034         (WebCore::GraphicsContext::fillPath): ditto.
1035         (WebCore::GraphicsContext::strokePath): ditto.
1036         (WebCore::GraphicsContext::fillRect): Removes the use of helper function
1037         drawBorderlessRectShadow as the code already becomes a lot simpler.
1038         (WebCore::GraphicsContext::fillRoundedRect): Removes the use of helper
1039         function drawFilledShadowPath as the code already becomes a lot simpler.
1040         (WebCore::GraphicsContext::setPlatformShadow): Store shadow states
1041         and find out the shadow type (complexity) for future use.
1042         (WebCore::GraphicsContext::clearPlatformShadow): Reset shadow states.
1043
1044 2010-08-11  Zhenyao Mo  <zmo@google.com>
1045
1046         Reviewed by Dimitri Glazkov.
1047
1048         Regression in linking of programs
1049         https://bugs.webkit.org/show_bug.cgi?id=43820
1050
1051         Shaders and programs shouldn't be deleted until their attachments are removed, therefore, we need to track the attach/detach/useProgram.
1052
1053         * html/canvas/WebGLObject.cpp: Track the object attachment count and whether it should really be deleted.
1054         (WebCore::WebGLObject::WebGLObject):
1055         (WebCore::WebGLObject::setObject):
1056         (WebCore::WebGLObject::deleteObject):
1057         * html/canvas/WebGLObject.h: Track the object attachment count and whether it should really be deleted.
1058         (WebCore::WebGLObject::onAttached):
1059         (WebCore::WebGLObject::onDetached):
1060         (WebCore::WebGLObject::getAttachmentCount):
1061         * html/canvas/WebGLProgram.cpp: Track the attached shaders.
1062         (WebCore::WebGLProgram::WebGLProgram):
1063         (WebCore::WebGLProgram::deleteObjectImpl):
1064         (WebCore::WebGLProgram::getAttachedShader):
1065         (WebCore::WebGLProgram::attachShader):
1066         (WebCore::WebGLProgram::detachShader):
1067         * html/canvas/WebGLProgram.h: Track the attached shaders.
1068         * html/canvas/WebGLRenderingContext.cpp:
1069         (WebCore::WebGLRenderingContext::attachShader): Track the attachment of a shader to a program.
1070         (WebCore::WebGLRenderingContext::deleteProgram): Detach shaders.
1071         (WebCore::WebGLRenderingContext::detachShader): Track the attachment of a shader to a program.
1072         (WebCore::WebGLRenderingContext::validateWebGLObject): Also check if object == 0.
1073         (WebCore::WebGLRenderingContext::linkProgram): Using the cached attached shaders instead of query from driver.
1074         (WebCore::WebGLRenderingContext::useProgram): Track the attachment of a program to the current rendering pipeline.
1075
1076 2010-08-13  Steve Block  <steveblock@google.com>
1077
1078         Reviewed by Alexey Proskuryakov.
1079
1080         Geolocation activity started after frame has been disconnected can cause crash
1081         https://bugs.webkit.org/show_bug.cgi?id=39879
1082
1083         New requests started after the Frame has been disconnected are ignored. We do
1084         not invoke the error callback as this would allow buggy or malicious pages to
1085         hose the CPU. Such a page could hold a reference to a Geolocation object from
1086         a since closed Page and register new requests from the error callback to
1087         create an infinite loop.
1088
1089         Tests: fast/dom/Geolocation/disconnected-frame-already.html
1090
1091         * page/Geolocation.cpp:
1092
1093 2010-08-13  Satish Sampath  <satish@chromium.org>
1094
1095         Reviewed by Jeremy Orlow.
1096
1097         Support for multiple speech enabled elements in same page.
1098         https://bugs.webkit.org/show_bug.cgi?id=43922
1099
1100         * page/SpeechInput.cpp: Generates request ids as necessary when each speech enabled input element gets
1101         created/destroyed and multiplexes the listener callbacks to the appropriate input element based on the request id.
1102         (WebCore::SpeechInput::SpeechInput):
1103         (WebCore::SpeechInput::~SpeechInput):
1104         (WebCore::SpeechInput::registerListener):
1105         (WebCore::SpeechInput::unregisterListener):
1106         (WebCore::SpeechInput::didCompleteRecording):
1107         (WebCore::SpeechInput::didCompleteRecognition):
1108         (WebCore::SpeechInput::setRecognitionResult):
1109         (WebCore::SpeechInput::startRecognition):
1110         (WebCore::SpeechInput::stopRecording):
1111         (WebCore::SpeechInput::cancelRecognition):
1112         * page/SpeechInput.h:
1113         * page/SpeechInputClient.h: Now requires a one time set for the WebCore::SpeechInputListener and
1114         takes in a 'requestId' for all calls.
1115         * page/SpeechInputListener.h: Now returns the above mentioned requestId in all the listener callbacks for
1116         identifying which input element the event goes to.
1117         * platform/mock/SpeechInputClientMock.cpp:
1118         (WebCore::SpeechInputClientMock::SpeechInputClientMock):
1119         (WebCore::SpeechInputClientMock::setListener):
1120         (WebCore::SpeechInputClientMock::startRecognition):
1121         (WebCore::SpeechInputClientMock::stopRecording):
1122         (WebCore::SpeechInputClientMock::cancelRecognition):
1123         (WebCore::SpeechInputClientMock::timerFired):
1124         * platform/mock/SpeechInputClientMock.h:
1125         * rendering/TextControlInnerElements.cpp:
1126         (WebCore::InputFieldSpeechButtonElement::InputFieldSpeechButtonElement):
1127         (WebCore::InputFieldSpeechButtonElement::~InputFieldSpeechButtonElement):
1128         (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
1129         (WebCore::InputFieldSpeechButtonElement::speechInput):
1130         (WebCore::InputFieldSpeechButtonElement::didCompleteRecording):
1131         (WebCore::InputFieldSpeechButtonElement::didCompleteRecognition):
1132         (WebCore::InputFieldSpeechButtonElement::setRecognitionResult):
1133         * rendering/TextControlInnerElements.h:
1134
1135 2010-08-13  Eric Carlson  <eric.carlson@apple.com>
1136
1137         Reviewed by David Kilzer.
1138
1139         HTMLMediaElement::prepareForLoad should cancel current plug-in proxy media player
1140         https://bugs.webkit.org/show_bug.cgi?id=43923
1141
1142         * html/HTMLMediaElement.cpp:
1143         (WebCore::HTMLMediaElement::prepareForLoad): Tell mediaPlayer to cancel the current load
1144         if it already exists.
1145
1146 2010-08-12  Stephen White  <senorblanco@chromium.org>
1147
1148         Reviewed by David Levin.
1149
1150         [CHROMIUM] Use the BGRA format for canvas 2D accel upload and readbacks.
1151         https://bugs.webkit.org/show_bug.cgi?id=43804
1152
1153         Use the BGRA format from GraphicsContext3D, if supported.  Also keep a
1154         texture around for uploads, rather than re-creating it each time.
1155
1156         Covered by many layout tests (once we're running them).
1157
1158         * platform/graphics/chromium/GLES2Texture.cpp:
1159         (WebCore::convertFormat):
1160         Move convertFormat() ahead of texture creation, so we can check for
1161         BGRA support.
1162         (WebCore::GLES2Texture::create):
1163         Use convertFormat() to determine the correct format and types to use;
1164         use the returned format also for internalFormat, since GLES2 insists
1165         they match.
1166         * platform/graphics/skia/PlatformContextSkia.cpp:
1167         (WebCore::PlatformContextSkia::setGraphicsContext3D):
1168         Clear the upload texture when a new context is set.
1169         (WebCore::PlatformContextSkia::uploadSoftwareToHardware):
1170         Use m_uploadTexture instead of creating a new one each time.
1171         (WebCore::PlatformContextSkia::readbackHardwareToSoftware):
1172         When the context supports it, use the BGRA format for readbacks
1173         instead of swizzling.
1174         * platform/graphics/skia/PlatformContextSkia.h:
1175         Add m_uploadTexture for consecutive uploads.
1176
1177 2010-08-13  Simon Hausmann  <simon.hausmann@nokia.com>
1178
1179         Reviewed by Ariya Hidayat.
1180
1181         [Qt] Clean up mobile feature useage
1182         https://bugs.webkit.org/show_bug.cgi?id=43968
1183
1184         * WebCore.pro: Replaced use of Nokia specific platform scopes with concrete
1185         feature names.
1186
1187 2010-08-13  Pavel Feldman  <pfeldman@chromium.org>
1188
1189         Reviewed by Yury Semikhatsky.
1190
1191         Web Inspector: rename InspectorValue::push and set to
1192         push{Value|Object|Array} and set{...}.
1193         https://bugs.webkit.org/show_bug.cgi?id=43966
1194
1195         * bindings/js/ScriptProfile.cpp:
1196         (WebCore::buildInspectorObjectFor):
1197         * bindings/js/ScriptValue.cpp:
1198         (WebCore::jsToInspectorValue):
1199         * bindings/v8/ScriptCallStack.cpp:
1200         (WebCore::ScriptCallStack::stackTrace):
1201         * bindings/v8/ScriptProfile.cpp:
1202         (WebCore::buildInspectorObjectFor):
1203         * bindings/v8/ScriptValue.cpp:
1204         (WebCore::v8ToInspectorValue):
1205         * inspector/CodeGeneratorInspector.pm:
1206         * inspector/ConsoleMessage.cpp:
1207         (WebCore::ConsoleMessage::addToFrontend):
1208         * inspector/Inspector.idl:
1209         * inspector/InspectorApplicationCacheAgent.cpp:
1210         (WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCache):
1211         (WebCore::InspectorApplicationCacheAgent::buildArrayForApplicationCacheResources):
1212         * inspector/InspectorController.cpp:
1213         (WebCore::InspectorController::buildArrayForCookies):
1214         (WebCore::InspectorController::getDOMStorageEntries):
1215         (WebCore::InspectorController::getProfileHeaders):
1216         (WebCore::InspectorController::getProfile):
1217         * inspector/InspectorDOMAgent.cpp:
1218         (WebCore::InspectorDOMAgent::getEventListenersForNode):
1219         (WebCore::InspectorDOMAgent::buildObjectForNode):
1220         (WebCore::InspectorDOMAgent::buildArrayForContainerChildren):
1221         (WebCore::InspectorDOMAgent::getStyles):
1222         (WebCore::InspectorDOMAgent::getAllStyles):
1223         (WebCore::InspectorDOMAgent::getRuleRanges):
1224         (WebCore::InspectorDOMAgent::buildObjectForAttributeStyles):
1225         (WebCore::InspectorDOMAgent::buildArrayForCSSRules):
1226         (WebCore::InspectorDOMAgent::buildArrayForPseudoElements):
1227         (WebCore::InspectorDOMAgent::buildObjectForStyle):
1228         (WebCore::InspectorDOMAgent::populateObjectWithStyleProperties):
1229         (WebCore::InspectorDOMAgent::buildArrayForDisabledStyleProperties):
1230         (WebCore::InspectorDOMAgent::buildObjectForStyleSheet):
1231         (WebCore::InspectorDOMAgent::buildObjectForRule):
1232         * inspector/InspectorDebuggerAgent.cpp:
1233         (WebCore::InspectorDebuggerAgent::saveBreakpoints):
1234         * inspector/InspectorResource.cpp:
1235         (WebCore::InspectorResource::updateScriptObject):
1236         * inspector/InspectorStorageAgent.cpp:
1237         (WebCore::):
1238         (WebCore::InspectorStorageAgent::executeSQL):
1239         * inspector/InspectorTimelineAgent.cpp:
1240         (WebCore::InspectorTimelineAgent::pushGCEventRecords):
1241         (WebCore::InspectorTimelineAgent::didInstallTimer):
1242         (WebCore::InspectorTimelineAgent::didRemoveTimer):
1243         (WebCore::InspectorTimelineAgent::didScheduleResourceRequest):
1244         (WebCore::InspectorTimelineAgent::willSendResourceRequest):
1245         (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
1246         (WebCore::InspectorTimelineAgent::didMarkTimeline):
1247         (WebCore::InspectorTimelineAgent::addRecordToTimeline):
1248         (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
1249         * inspector/InspectorValues.cpp:
1250         (WebCore::):
1251         (WebCore::InspectorValue::asValue):
1252         (WebCore::InspectorValue::asObject):
1253         (WebCore::InspectorValue::asArray):
1254         (WebCore::InspectorObject::asObject):
1255         (WebCore::InspectorArray::asArray):
1256         * inspector/InspectorValues.h:
1257         (WebCore::InspectorObject::setBool):
1258         (WebCore::InspectorObject::setNumber):
1259         (WebCore::InspectorObject::setString):
1260         (WebCore::InspectorObject::setValue):
1261         (WebCore::InspectorObject::setObject):
1262         (WebCore::InspectorObject::setArray):
1263         (WebCore::InspectorArray::pushValue):
1264         (WebCore::InspectorArray::pushObject):
1265         (WebCore::InspectorArray::pushArray):
1266         * inspector/ScriptBreakpoint.cpp:
1267         (WebCore::ScriptBreakpoint::inspectorObjectFromSourceBreakpoints):
1268         * inspector/TimelineRecordFactory.cpp:
1269         (WebCore::TimelineRecordFactory::createGenericRecord):
1270
1271 2010-08-13  Sheriff Bot  <webkit.review.bot@gmail.com>
1272
1273         Unreviewed, rolling out r65204.
1274         http://trac.webkit.org/changeset/65204
1275         https://bugs.webkit.org/show_bug.cgi?id=43965
1276
1277         Caused a lot of test crashes in Chromium (Requested by yutak
1278         on #webkit).
1279
1280         * accessibility/AccessibilityRenderObject.cpp:
1281         (WebCore::AccessibilityRenderObject::isInputImage):
1282         (WebCore::AccessibilityRenderObject::isNativeCheckboxOrRadio):
1283         * dom/InputElement.h:
1284         * html/HTMLInputElement.h:
1285
1286 2010-08-13  Anton Muhin  <antonm@chromium.org>
1287
1288         Reviewed by Nate Chapin.
1289
1290         Reapplying http://trac.webkit.org/changeset/65284 after fixed include.
1291
1292         [v8] Create callbacks for named access of elements from document object on fly.
1293         https://bugs.webkit.org/show_bug.cgi?id=43725
1294
1295         That should speed up access to methods on document as there is no need to
1296         consult with interceptor before invoking the method.
1297
1298         This reapplies http://trac.webkit.org/changeset/60670 reverted with
1299         http://trac.webkit.org/changeset/63845.  The main difference is in treatment
1300         of removed named elements: we don't remove an accessor any more, but leave it.
1301         Therefore any accessor should be able to treat the case when there is no
1302         expando property.
1303
1304         * bindings/scripts/CodeGeneratorV8.pm:
1305         * bindings/v8/ScriptController.cpp:
1306         (WebCore::ScriptController::namedItemAdded):
1307         (WebCore::ScriptController::namedItemRemoved):
1308         * bindings/v8/V8DOMWindowShell.cpp:
1309         (WebCore::checkDocumentWrapper):
1310         (WebCore::V8DOMWindowShell::updateDocumentWrapperCache):
1311         (WebCore::getter):
1312         (WebCore::V8DOMWindowShell::namedItemAdded):
1313         (WebCore::V8DOMWindowShell::namedItemRemoved):
1314         * bindings/v8/V8DOMWindowShell.h:
1315         * bindings/v8/V8DOMWrapper.cpp:
1316         (WebCore::V8DOMWrapper::instantiateV8Object):
1317         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
1318         (WebCore::V8HTMLDocument::WrapInShadowObject):
1319         (WebCore::V8HTMLDocument::GetNamedProperty):
1320         (WebCore::V8HTMLDocument::allAccessorSetter):
1321         (WebCore::toV8):
1322         * html/HTMLDocument.cpp:
1323         (WebCore::HTMLDocument::removeItemFromMap):
1324
1325 2010-08-13  Pavel Feldman  <pfeldman@chromium.org>
1326
1327         Reviewed by Yury Semikhatsky.
1328
1329         Web Inspector: remove openInInspectorWindow and evaluateAndStringify from InjectedScript.
1330         https://bugs.webkit.org/show_bug.cgi?id=43854
1331
1332         * inspector/Inspector.idl:
1333         * inspector/InspectorController.cpp:
1334         (WebCore::InspectorController::openInInspectedWindow):
1335         * inspector/InspectorController.h:
1336         * inspector/front-end/ExtensionServer.js:
1337         (WebInspector.ExtensionServer.prototype._onEvaluateOnInspectedPage.callback):
1338         (WebInspector.ExtensionServer.prototype._onEvaluateOnInspectedPage):
1339         * inspector/front-end/InjectedScript.js:
1340         (injectedScriptConstructor):
1341         * inspector/front-end/InjectedScriptAccess.js:
1342         * inspector/front-end/InspectorBackendStub.js:
1343         (WebInspector.InspectorBackendStub):
1344         * inspector/front-end/ResourcesPanel.js:
1345         (WebInspector.ResourceSidebarTreeElement.prototype.ondblclick):
1346
1347 2010-08-13  Fumitoshi Ukai  <ukai@chromium.org>
1348
1349         Reviewed by Alexey Proskuryakov.
1350
1351         flaky websocket/tests/frame-length-overflow.html
1352         https://bugs.webkit.org/show_bug.cgi?id=43902
1353
1354         Add m_shouldDiscardReceivedData flag to indicate it will no longer
1355         receive data from network.
1356
1357         * websockets/WebSocketChannel.cpp:
1358         (WebCore::WebSocketChannel::WebSocketChannel):
1359         (WebCore::WebSocketChannel::didReceiveData):
1360         (WebCore::WebSocketChannel::didFail):
1361         (WebCore::WebSocketChannel::processBuffer):
1362         - when frame length overflows, we couldn't process data any more.
1363           clear buffer and mark m_shouldDiscardReceivedData true to make sure
1364           it doesn't process the same buffer again.
1365         * websockets/WebSocketChannel.h:
1366
1367 2010-08-13  Dirk Schulze  <krit@webkit.org>
1368
1369         Reviewed by Nikolas Zimmermann.
1370
1371         Use SVGPathByteStream to animate SVGPath
1372         https://bugs.webkit.org/show_bug.cgi?id=43929
1373
1374         Use SVGPathByteStream to perform animations of Paths. SVGPathBlender blends
1375         the starting point to the end point according to the current progress value.
1376         Cleanup SVGPathSegList, by removing the unnecessary legacy blending code.
1377
1378         No new tests because no functional changes.
1379
1380         * Android.mk:
1381         * CMakeLists.txt:
1382         * GNUmakefile.am:
1383         * WebCore.gypi:
1384         * WebCore.pro:
1385         * WebCore.vcproj/WebCore.vcproj:
1386         * WebCore.xcodeproj/project.pbxproj:
1387         * svg/SVGAllInOne.cpp:
1388         * svg/SVGAnimateElement.cpp:
1389         (WebCore::SVGAnimateElement::SVGAnimateElement):
1390         (WebCore::SVGAnimateElement::calculateAnimatedValue):
1391         (WebCore::SVGAnimateElement::calculateFromAndToValues):
1392         (WebCore::SVGAnimateElement::resetToBaseValue):
1393         (WebCore::SVGAnimateElement::applyResultsToTarget):
1394         * svg/SVGAnimateElement.h:
1395         * svg/SVGPathBlender.cpp: Added.
1396         (WebCore::SVGPathBlender::SVGPathBlender):
1397         (WebCore::SVGPathBlender::~SVGPathBlender):
1398         (WebCore::SVGPathBlender::blendAnimatedFloat):
1399         (WebCore::SVGPathBlender::blendAnimatedFloatPoint):
1400         (WebCore::SVGPathBlender::blendMoveToSegment):
1401         (WebCore::SVGPathBlender::blendLineToSegment):
1402         (WebCore::SVGPathBlender::blendLineToHorizontalSegment):
1403         (WebCore::SVGPathBlender::blendLineToVerticalSegment):
1404         (WebCore::SVGPathBlender::blendCurveToCubicSegment):
1405         (WebCore::SVGPathBlender::blendCurveToCubicSmoothSegment):
1406         (WebCore::SVGPathBlender::blendCurveToQuadraticSegment):
1407         (WebCore::SVGPathBlender::blendCurveToQuadraticSmoothSegment):
1408         (WebCore::SVGPathBlender::blendArcToSegment):
1409         (WebCore::SVGPathBlender::blendAnimatedPath):
1410         (WebCore::SVGPathBlender::cleanup):
1411         * svg/SVGPathBlender.h: Added.
1412         * svg/SVGPathParserFactory.cpp:
1413         (WebCore::globalSVGPathBlender):
1414         (WebCore::SVGPathParserFactory::buildAnimatedSVGPathByteStream):
1415         * svg/SVGPathParserFactory.h:
1416         * svg/SVGPathSegList.cpp:
1417         (WebCore::SVGPathSegList::getPathSegAtLength):
1418         * svg/SVGPathSegList.h:
1419         (WebCore::SVGPathSegList::create):
1420         * svg/SVGPointList.cpp:
1421         (WebCore::adjustAnimatedValue):
1422
1423 2010-08-12  Nikolas Zimmermann  <nzimmermann@rim.com>
1424
1425         Reviewed by Dirk Schulze.
1426
1427         Window size changes + resources on absolute sized content leads to pixelation
1428         https://bugs.webkit.org/show_bug.cgi?id=43921
1429
1430         Avoid pixelation when using resources on absolute sized objects. Be sure to invalidate the used resources if window size changes.
1431         Otherwhise masks etc. will be scaled up and pixelate. As nice side-effect, this fixes run-webkit-tests --singly svg/W3C-SVG-1.1, which
1432         used to produce wrong results for the gradient tests, as the window size change from 800x600 for 480x360 (svg/W3C-SVG-1.1 specific DRT quirk)
1433         didn't invalidate the resources.
1434
1435         Renamed invalidateClient -> removeClientFromCache and invalidateClients -> removeAllClientsFromCache.
1436         Add a boolean "markForInvalidation" parameter, that controls wheter the clients should be marked for repaint/boundaries invalidation/layout
1437         or wheter we only want to notify the parents that the resource changed, to avoid doing unncessary work in SVGRenderSupport::layoutChildren.
1438
1439         Test: svg/custom/absolute-sized-content-with-resources.xhtml
1440
1441         * rendering/RenderSVGGradientStop.cpp:
1442         (WebCore::RenderSVGGradientStop::styleDidChange): Don't do anything for StyleDifferenceEqual.
1443         * rendering/RenderSVGImage.cpp:
1444         (WebCore::RenderSVGImage::imageChanged):
1445         * rendering/RenderSVGResource.cpp:
1446         (WebCore::RenderSVGResource::markForLayoutAndParentResourceInvalidation):
1447         * rendering/RenderSVGResource.h:
1448         * rendering/RenderSVGResourceClipper.cpp:
1449         (WebCore::RenderSVGResourceClipper::removeAllClientsFromCache):
1450         (WebCore::RenderSVGResourceClipper::removeClientFromCache):
1451         * rendering/RenderSVGResourceClipper.h:
1452         * rendering/RenderSVGResourceContainer.cpp:
1453         (WebCore::RenderSVGResourceContainer::layout):
1454         (WebCore::RenderSVGResourceContainer::idChanged):
1455         (WebCore::RenderSVGResourceContainer::markAllClientsForInvalidation):
1456         (WebCore::RenderSVGResourceContainer::markClientForInvalidation):
1457         * rendering/RenderSVGResourceContainer.h:
1458         (WebCore::RenderSVGResourceContainer::):
1459         * rendering/RenderSVGResourceFilter.cpp:
1460         (WebCore::RenderSVGResourceFilter::removeAllClientsFromCache):
1461         (WebCore::RenderSVGResourceFilter::removeClientFromCache):
1462         (WebCore::RenderSVGResourceFilter::postApplyResource):
1463         * rendering/RenderSVGResourceFilter.h:
1464         * rendering/RenderSVGResourceGradient.cpp:
1465         (WebCore::RenderSVGResourceGradient::removeAllClientsFromCache):
1466         (WebCore::RenderSVGResourceGradient::removeClientFromCache):
1467         (WebCore::RenderSVGResourceGradient::applyResource):
1468         * rendering/RenderSVGResourceGradient.h:
1469         * rendering/RenderSVGResourceMarker.cpp:
1470         (WebCore::RenderSVGResourceMarker::layout):
1471         (WebCore::RenderSVGResourceMarker::removeAllClientsFromCache):
1472         (WebCore::RenderSVGResourceMarker::removeClientFromCache):
1473         * rendering/RenderSVGResourceMarker.h:
1474         * rendering/RenderSVGResourceMasker.cpp:
1475         (WebCore::RenderSVGResourceMasker::removeAllClientsFromCache):
1476         (WebCore::RenderSVGResourceMasker::removeClientFromCache):
1477         * rendering/RenderSVGResourceMasker.h:
1478         * rendering/RenderSVGResourcePattern.cpp:
1479         (WebCore::RenderSVGResourcePattern::removeAllClientsFromCache):
1480         (WebCore::RenderSVGResourcePattern::removeClientFromCache):
1481         (WebCore::RenderSVGResourcePattern::applyResource):
1482         * rendering/RenderSVGResourcePattern.h:
1483         * rendering/RenderSVGResourceSolidColor.h:
1484         (WebCore::RenderSVGResourceSolidColor::removeAllClientsFromCache):
1485         (WebCore::RenderSVGResourceSolidColor::removeClientFromCache):
1486         * rendering/SVGRenderSupport.cpp:
1487         (WebCore::invalidateResourcesOfChildren): Add new helper funtion recursively invalidating resources of a sub render tree.
1488         (WebCore::SVGRenderSupport::layoutChildren): Keep track of all objects that didn't need layout, as we still have to invalidate their resources, if window size changes.
1489         * rendering/SVGResources.cpp:
1490         (WebCore::SVGResources::removeClientFromCache):
1491         (WebCore::SVGResources::resourceDestroyed):
1492         * rendering/SVGResources.h:
1493         * rendering/SVGResourcesCache.cpp:
1494         (WebCore::SVGResourcesCache::clientLayoutChanged):
1495
1496 2010-08-13  Pavel Feldman  <pfeldman@chromium.org>
1497
1498         Reviewed by Yury Semikhatsky.
1499
1500         Chromium DevTools: [CRASH] Autocomplete on arrays causes crashes.
1501         https://bugs.webkit.org/show_bug.cgi?id=43955
1502
1503         * bindings/v8/ScriptValue.cpp:
1504         (WebCore::v8ToInspectorValue):
1505
1506 2010-08-13  Gavin Barraclough  <barraclough@apple.com>
1507
1508         Reviewed by Sam Weinig
1509
1510         Unify UString::UTF8String() & String::utf8() methods,
1511         remove UString::cost() & make atArrayIndex a free function.
1512
1513         * WebCore.xcodeproj/project.pbxproj:
1514         * bindings/js/JSDOMWindowCustom.cpp:
1515         (WebCore::JSDOMWindow::getOwnPropertySlot):
1516         (WebCore::JSDOMWindow::getOwnPropertyDescriptor):
1517         * bridge/NP_jsobject.cpp:
1518         (_NPN_Enumerate):
1519         * bridge/c/c_utility.cpp:
1520         (JSC::Bindings::convertValueToNPVariant):
1521         * bridge/jni/JNIBridge.cpp:
1522         (JavaParameter::JavaParameter):
1523         (JavaMethod::JavaMethod):
1524         (JavaMethod::signature):
1525         (JavaMethod::methodID):
1526         * bridge/jni/JNIBridge.h:
1527         (JSC::Bindings::JavaString::utf8):
1528         (JSC::Bindings::JavaParameter::type):
1529         (JSC::Bindings::JavaMethod::returnType):
1530         * bridge/jni/jni_jsobject.mm:
1531         (JavaJSObject::call):
1532         (JavaJSObject::eval):
1533         (JavaJSObject::getMember):
1534         (JavaJSObject::setMember):
1535         (JavaJSObject::removeMember):
1536         (JavaJSObject::convertJObjectToValue):
1537         * bridge/jni/jsc/JNIBridgeJSC.cpp:
1538         (JavaField::JavaField):
1539         (JavaField::valueFromInstance):
1540         (JavaField::setValueToInstance):
1541         * bridge/jni/jsc/JNIBridgeJSC.h:
1542         (JSC::Bindings::JavaField::type):
1543         * bridge/jni/jsc/JavaInstanceJSC.cpp:
1544         (JavaInstance::invokeMethod):
1545         * bridge/jni/jsc/JavaStringJSC.h:
1546         (JSC::Bindings::JavaStringImpl::utf8):
1547         * bridge/runtime_array.cpp:
1548         (JSC::RuntimeArray::getOwnPropertySlot):
1549         (JSC::RuntimeArray::getOwnPropertyDescriptor):
1550         (JSC::RuntimeArray::put):
1551
1552 2010-08-12  Yury Semikhatsky  <yurys@chromium.org>
1553
1554         Reviewed by Pavel Feldman.
1555
1556         Web Inspector: allow interrupting long running JS to execute inspector command
1557         https://bugs.webkit.org/show_bug.cgi?id=43900
1558
1559         * bindings/v8/ScriptDebugServer.cpp:
1560         (WebCore::):
1561         (WebCore::ScriptDebugServer::pause):
1562         (WebCore::ScriptDebugServer::interruptAndRun):
1563         (WebCore::ScriptDebugServer::runPendingTasks):
1564         (WebCore::ScriptDebugServer::handleV8DebugEvent):
1565         * bindings/v8/ScriptDebugServer.h:
1566         (WebCore::ScriptDebugServer::Task::~Task):
1567
1568 2010-08-12  Sheriff Bot  <webkit.review.bot@gmail.com>
1569
1570         Unreviewed, rolling out r65295.
1571         http://trac.webkit.org/changeset/65295
1572         https://bugs.webkit.org/show_bug.cgi?id=43950
1573
1574         It broke 4 sputnik tests (Requested by Ossy on #webkit).
1575
1576         * WebCore.xcodeproj/project.pbxproj:
1577         * bindings/js/JSDOMWindowCustom.cpp:
1578         (WebCore::JSDOMWindow::getOwnPropertySlot):
1579         (WebCore::JSDOMWindow::getOwnPropertyDescriptor):
1580         * bridge/NP_jsobject.cpp:
1581         (_NPN_Enumerate):
1582         * bridge/c/c_utility.cpp:
1583         (JSC::Bindings::convertValueToNPVariant):
1584         * bridge/jni/JNIBridge.cpp:
1585         (JavaParameter::JavaParameter):
1586         (JavaMethod::JavaMethod):
1587         (JavaMethod::signature):
1588         (JavaMethod::methodID):
1589         * bridge/jni/JNIBridge.h:
1590         (JSC::Bindings::JavaString::UTF8String):
1591         (JSC::Bindings::JavaParameter::type):
1592         (JSC::Bindings::JavaMethod::returnType):
1593         * bridge/jni/jni_jsobject.mm:
1594         (JavaJSObject::call):
1595         (JavaJSObject::eval):
1596         (JavaJSObject::getMember):
1597         (JavaJSObject::setMember):
1598         (JavaJSObject::removeMember):
1599         (JavaJSObject::convertJObjectToValue):
1600         * bridge/jni/jsc/JNIBridgeJSC.cpp:
1601         (JavaField::JavaField):
1602         (JavaField::valueFromInstance):
1603         (JavaField::setValueToInstance):
1604         * bridge/jni/jsc/JNIBridgeJSC.h:
1605         (JSC::Bindings::JavaField::type):
1606         * bridge/jni/jsc/JavaInstanceJSC.cpp:
1607         (JavaInstance::invokeMethod):
1608         * bridge/jni/jsc/JavaStringJSC.h:
1609         (JSC::Bindings::JavaStringImpl::UTF8String):
1610         * bridge/runtime_array.cpp:
1611         (JSC::RuntimeArray::getOwnPropertySlot):
1612         (JSC::RuntimeArray::getOwnPropertyDescriptor):
1613         (JSC::RuntimeArray::put):
1614
1615 2010-08-12  Pavel Feldman  <pfeldman@chromium.org>
1616
1617         Not reviewed. Fixed typo in inspector js.
1618         Follow up to r65300.
1619
1620         * inspector/front-end/inspector.js:
1621         (WebInspector.log.isLogAvailable):
1622
1623 2010-08-12  Pavel Feldman  <pfeldman@chromium.org>
1624
1625         Reviewed by Yury Semikhatsky.
1626
1627         Web Inspector: Make getPrototypes return objects, not names.
1628         https://bugs.webkit.org/show_bug.cgi?id=43934
1629
1630         * inspector/front-end/InjectedScript.js:
1631         (injectedScriptConstructor):
1632         (injectedScriptConstructor.):
1633         * inspector/front-end/PropertiesSidebarPane.js:
1634         (WebInspector.PropertiesSidebarPane.prototype.update.callback):
1635         * inspector/front-end/inspector.js:
1636         (WebInspector.log):
1637
1638 2010-08-12  James Robinson  <jamesr@chromium.org>
1639
1640         Unreviewed, rolling out r65284 and r65288.  Broke chromium compile.
1641         https://bugs.webkit.org/show_bug.cgi?id=43725
1642         http://trac.webkit.org/changeset/65284
1643         http://trac.webkit.org/changeset/65288
1644
1645         * bindings/scripts/CodeGeneratorV8.pm:
1646         * bindings/v8/ScriptController.cpp:
1647         (WebCore::ScriptController::namedItemAdded):
1648         (WebCore::ScriptController::namedItemRemoved):
1649         * bindings/v8/V8DOMWindowShell.cpp:
1650         (WebCore::V8DOMWindowShell::updateDocumentWrapperCache):
1651         * bindings/v8/V8DOMWindowShell.h:
1652         * bindings/v8/V8DOMWrapper.cpp:
1653         (WebCore::V8DOMWrapper::instantiateV8Object):
1654         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
1655         (WebCore::V8HTMLDocument::namedPropertyDeleter):
1656         (WebCore::V8HTMLDocument::namedPropertyGetter):
1657         (WebCore::V8HTMLDocument::indexedPropertyGetter):
1658         (WebCore::V8HTMLDocument::allAccessorSetter):
1659         (WebCore::toV8):
1660         * html/HTMLDocument.cpp:
1661         (WebCore::HTMLDocument::removeItemFromMap):
1662
1663 2010-08-12  Gavin Barraclough  <barraclough@apple.com>
1664
1665         Reviewed by Sam Weinig
1666
1667         Unify UString::UTF8String() & String::utf8() methods,
1668         remove UString::cost() & make atArrayIndex a free function.
1669
1670         * WebCore.xcodeproj/project.pbxproj:
1671         * bindings/js/JSDOMWindowCustom.cpp:
1672         (WebCore::JSDOMWindow::getOwnPropertySlot):
1673         (WebCore::JSDOMWindow::getOwnPropertyDescriptor):
1674         * bridge/NP_jsobject.cpp:
1675         (_NPN_Enumerate):
1676         * bridge/c/c_utility.cpp:
1677         (JSC::Bindings::convertValueToNPVariant):
1678         * bridge/jni/JNIBridge.cpp:
1679         (JavaParameter::JavaParameter):
1680         (JavaMethod::JavaMethod):
1681         (JavaMethod::signature):
1682         (JavaMethod::methodID):
1683         * bridge/jni/JNIBridge.h:
1684         (JSC::Bindings::JavaString::utf8):
1685         (JSC::Bindings::JavaParameter::type):
1686         (JSC::Bindings::JavaMethod::returnType):
1687         * bridge/jni/jni_jsobject.mm:
1688         (JavaJSObject::call):
1689         (JavaJSObject::eval):
1690         (JavaJSObject::getMember):
1691         (JavaJSObject::setMember):
1692         (JavaJSObject::removeMember):
1693         (JavaJSObject::convertJObjectToValue):
1694         * bridge/jni/jsc/JNIBridgeJSC.cpp:
1695         (JavaField::JavaField):
1696         (JavaField::valueFromInstance):
1697         (JavaField::setValueToInstance):
1698         * bridge/jni/jsc/JNIBridgeJSC.h:
1699         (JSC::Bindings::JavaField::type):
1700         * bridge/jni/jsc/JavaInstanceJSC.cpp:
1701         (JavaInstance::invokeMethod):
1702         * bridge/jni/jsc/JavaStringJSC.h:
1703         (JSC::Bindings::JavaStringImpl::utf8):
1704         * bridge/runtime_array.cpp:
1705         (JSC::RuntimeArray::getOwnPropertySlot):
1706         (JSC::RuntimeArray::getOwnPropertyDescriptor):
1707         (JSC::RuntimeArray::put):
1708
1709 2010-08-12  Gavin Barraclough  <barraclough@apple.com>
1710
1711         Speculative build fix for chromium bindings (someone added the old include style!).
1712
1713         * bindings/v8/V8DOMWindowShell.h:
1714
1715 2010-08-12  MORITA Hajime  <morrita@google.com>
1716
1717         Reviewed by Tony Chang.
1718
1719         [Refactoring] TextEvent class has to many flags
1720         https://bugs.webkit.org/show_bug.cgi?id=43893
1721
1722         Turned TextEvent::m_isLineBreak, TextEvent::m_isBacktab, TextEvent::m_isPaste 
1723         into single TextEvent::m_inputType enumeration.
1724         
1725         No functional change. No new tests.
1726
1727         * dom/TextEvent.cpp:
1728         (WebCore::TextEvent::selectInputType):
1729         (WebCore::TextEvent::create):
1730         (WebCore::TextEvent::createForPlainTextPaste):
1731         (WebCore::TextEvent::createForFragmentPaste):
1732         (WebCore::TextEvent::TextEvent):
1733         * dom/TextEvent.h:
1734         (WebCore::TextEvent::):
1735         (WebCore::TextEvent::isLineBreak):
1736         (WebCore::TextEvent::isBackTab):
1737         (WebCore::TextEvent::isPaste):
1738         * page/EventHandler.cpp:
1739         (WebCore::EventHandler::handleTextInputEvent):
1740
1741 2010-08-12  Kenneth Russell  <kbr@google.com>
1742
1743         Reviewed by David Levin.
1744
1745         Delete obsolete CanvasNumberArray
1746         https://bugs.webkit.org/show_bug.cgi?id=38619
1747
1748         Deleted unreferenced code. Built WebKit and Chromium to test.
1749
1750         * Android.derived.jscbindings.mk:
1751         * Android.derived.v8bindings.mk:
1752         * Android.jscbindings.mk:
1753         * Android.mk:
1754         * bindings/js/JSCanvasNumberArrayCustom.cpp: Removed.
1755         * html/canvas/CanvasNumberArray.cpp: Removed.
1756         * html/canvas/CanvasNumberArray.h: Removed.
1757         * html/canvas/CanvasNumberArray.idl: Removed.
1758
1759 2010-08-12  Anton Muhin  <antonm@chromium.org>
1760
1761         Reviewed by Nate Chapin.
1762
1763         [v8] Create callbacks for named access of elements from document object on fly.
1764         https://bugs.webkit.org/show_bug.cgi?id=43725
1765
1766         That should speed up access to methods on document as there is no need to
1767         consult with interceptor before invoking the method.
1768
1769         This reapplies http://trac.webkit.org/changeset/60670 reverted with
1770         http://trac.webkit.org/changeset/63845.  The main difference is in treatment
1771         of removed named elements: we don't remove an accessor any more, but leave it.
1772         Therefore any accessor should be able to treat the case when there is no
1773         expando property.
1774
1775         * bindings/scripts/CodeGeneratorV8.pm:
1776         * bindings/v8/ScriptController.cpp:
1777         (WebCore::ScriptController::namedItemAdded):
1778         (WebCore::ScriptController::namedItemRemoved):
1779         * bindings/v8/V8DOMWindowShell.cpp:
1780         (WebCore::checkDocumentWrapper):
1781         (WebCore::V8DOMWindowShell::updateDocumentWrapperCache):
1782         (WebCore::getter):
1783         (WebCore::V8DOMWindowShell::namedItemAdded):
1784         (WebCore::V8DOMWindowShell::namedItemRemoved):
1785         * bindings/v8/V8DOMWindowShell.h:
1786         * bindings/v8/V8DOMWrapper.cpp:
1787         (WebCore::V8DOMWrapper::instantiateV8Object):
1788         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
1789         (WebCore::V8HTMLDocument::WrapInShadowObject):
1790         (WebCore::V8HTMLDocument::GetNamedProperty):
1791         (WebCore::V8HTMLDocument::allAccessorSetter):
1792         (WebCore::toV8):
1793         * html/HTMLDocument.cpp:
1794         (WebCore::HTMLDocument::removeItemFromMap):
1795
1796 2010-08-12  Dimitri Glazkov  <dglazkov@chromium.org>
1797
1798         Reviewed by Adam Barth.
1799
1800         Ensure that parser doesn't attach children that have been removed by JavaScript event handlers.
1801         https://bugs.webkit.org/show_bug.cgi?id=43813
1802
1803         This patch re-fixes bug 40742 in a way that keeps allowing HTMLLinkElement
1804         to lazy-attach.
1805
1806         * html/HTMLConstructionSite.cpp:
1807         (WebCore::HTMLConstructionSite::attach): Added parent check.
1808         * html/HTMLLinkElement.cpp: Basically undoes changes introduced by r61424.
1809         * html/HTMLLinkElement.h: Ditto.
1810
1811 2010-08-12  Justin Schuh  <jschuh@chromium.org>
1812
1813         Reviewed by Dumitru Daniliuc.
1814
1815         Clear PluginData's page pointer on page refresh
1816         https://bugs.webkit.org/show_bug.cgi?id=43888
1817
1818         Test: plugins/access-after-page-destroyed.html
1819
1820         * page/Page.cpp:
1821         (WebCore::Page::refreshPlugins):
1822
1823 2010-08-12  Zhenyao Mo  <zmo@google.com>
1824
1825         Reviewed by Dimitri Glazkov.
1826
1827         getParameter(STENCIL_VALUE_MASK) (and others) returns the wrong value
1828         https://bugs.webkit.org/show_bug.cgi?id=31842
1829
1830         * html/canvas/WebGLRenderingContext.cpp:
1831         (WebCore::WebGLRenderingContext::getUnsignedLongParameter): Casting from int to unsigned long correctly.
1832
1833 2010-08-12  Pavel Feldman  <pfeldman@chromium.org>
1834
1835         Reviewed by Joseph Pecoraro.
1836
1837         Web Inspector: mimic FireBug's array detection.
1838         https://bugs.webkit.org/show_bug.cgi?id=30974
1839
1840         * inspector/front-end/InjectedScript.js:
1841         (injectedScriptConstructor):
1842
1843 2010-08-12  Zhenyao Mo  <zmo@google.com>
1844
1845         Reviewed by Dimitri Glazkov.
1846
1847         regression in generateMipmap
1848         https://bugs.webkit.org/show_bug.cgi?id=43873
1849
1850         * html/canvas/WebGLTexture.cpp:
1851         (WebCore::WebGLTexture::generateMipmapLevelInfo): should set m_needToUseBlackTexture to false if generateMipmapLevelInfo runs through successfully.
1852
1853 2010-08-12  Ariya Hidayat  <ariya@sencha.com>
1854
1855         Reviewed by David Hyatt.
1856
1857         [Qt] Split TransparencyLayer into its own header file.
1858         https://bugs.webkit.org/show_bug.cgi?id=43935
1859
1860         * WebCore.pro: Include TransparencyLayer.h.
1861         * platform/graphics/qt/GraphicsContextQt.cpp:
1862         * platform/graphics/qt/TransparencyLayer.h: Added.
1863         (WebCore::TransparencyLayer::TransparencyLayer):
1864         (WebCore::TransparencyLayer::operator=):
1865
1866 2010-08-12  François Sausset  <sausset@gmail.com>
1867
1868         Reviewed by Beth Dakin.
1869
1870         Horizontal padding should be 0 on mrow elements.
1871         https://bugs.webkit.org/show_bug.cgi?id=43908
1872
1873         Updated tests in /mathml
1874
1875         * css/mathml.css:
1876         (mrow, mfenced):
1877         (mfenced):
1878
1879 2010-08-12  Aaron Boodman  <aa@chromium.org>
1880
1881         Reviewed by David Hyatt.
1882
1883         Make the cascade level of "user" styles configurable
1884         https://bugs.webkit.org/show_bug.cgi?id=43457
1885
1886         * WebCore.exp.in:
1887         * css/CSSStyleSelector.cpp:
1888         (WebCore::CSSStyleSelector::CSSStyleSelector):
1889         * dom/Document.cpp:
1890         (WebCore::Document::pageGroupUserSheets):
1891         * page/PageGroup.cpp:
1892         (WebCore::PageGroup::addUserStyleSheetToWorld):
1893         * page/PageGroup.h:
1894         * page/UserStyleSheet.h:
1895         (WebCore::UserStyleSheet::):
1896         (WebCore::UserStyleSheet::UserStyleSheet):
1897         (WebCore::UserStyleSheet::level):
1898
1899 2010-08-12  Jian Li  <jianli@chromium.org>
1900
1901         Fix qt build break.
1902
1903         * html/ThreadableBlobRegistry.cpp:
1904         (WebCore::postTaskToMainThread):
1905
1906 2010-08-12  Jian Li  <jianli@chromium.org>
1907
1908         Reviewed by David Levin.
1909
1910         Add ThreadableBlobRegistry to support calling BlobRegistry methods in
1911         main thread.
1912         https://bugs.webkit.org/show_bug.cgi?id=43874
1913
1914         * Android.mk:
1915         * CMakeLists.txt:
1916         * GNUmakefile.am:
1917         * WebCore.gypi:
1918         * WebCore.pro:
1919         * WebCore.vcproj/WebCore.vcproj:
1920         * WebCore.xcodeproj/project.pbxproj:
1921         * dom/ScriptExecutionContext.cpp:
1922         (WebCore::ScriptExecutionContext::~ScriptExecutionContext):
1923         (WebCore::ScriptExecutionContext::addBlob):
1924         (WebCore::ScriptExecutionContext::removeBlob):
1925         (WebCore::ScriptExecutionContext::createPublicBlobURL):
1926         (WebCore::ScriptExecutionContext::revokePublicBlobURL):
1927         * dom/ScriptExecutionContext.h:
1928         * html/Blob.cpp:
1929         (WebCore::Blob::Blob):
1930         (WebCore::Blob::~Blob):
1931         (WebCore::Blob::contextDestroyed):
1932         * html/Blob.h:
1933         * html/BlobRegistryImpl.cpp:
1934         (WebCore::BlobRegistryImpl::registerBlobURL):
1935         (WebCore::BlobRegistryImpl::unregisterBlobURL):
1936         (WebCore::BlobRegistryImpl::getBlobDataFromURL):
1937         * html/ThreadableBlobRegistry.cpp: Added.
1938         * html/ThreadableBlobRegistry.h: Added.
1939
1940 2010-08-12  Csaba Osztrogonác  <ossy@webkit.org>
1941
1942         Reviewed by Darin Adler.
1943
1944         generate-bindings.pl should generate warning free code
1945         https://bugs.webkit.org/show_bug.cgi?id=43353
1946
1947         * bindings/scripts/CodeGeneratorJS.pm: Suggested parentheses added around && within ||
1948
1949 2010-08-11  Ryosuke Niwa  <rniwa@webkit.org>
1950
1951         Reviewed by Kent Tamura.
1952
1953         merge MarkupAccumulator and MarkupAccumulatorWrapper
1954         https://bugs.webkit.org/show_bug.cgi?id=43834
1955
1956         Removed MarkupAccumulator and added serializeNodesWithNamespaces to use MarkupAccumulatorWrapper
1957         in both versions of createMarkup.  Accumulation of nodes done manually in serializeNodes is
1958         now done by MarkupAccumulatorWrapper as done in the original MarkupAccumulator.
1959
1960         No new tests added since this is a cleanup.
1961
1962         * editing/markup.cpp:
1963         (WebCore::MarkupAccumulatorWrapper::MarkupAccumulatorWrapper): Takes vector of nodes and set it to m_nodes.
1964         (WebCore::MarkupAccumulatorWrapper::insertOpenTag): Adds node to m_nodes.
1965         (WebCore::MarkupAccumulatorWrapper::wrapWithNode): Adds node to m_nodes.
1966         (WebCore::serializeNodes): Adding node to nodes is moved into MarkupAccumulatorWrapper.
1967         (WebCore::createMarkup): Instantiates MarkupAccumulatorWrapper.
1968         (WebCore::serializeNodesWithNamespaces): Renamed from MarkupAccumulator::appendMarkup.
1969
1970 2010-08-12  Dirk Schulze  <krit@webkit.org>
1971
1972         Unreviewed sort of Xcode project file.
1973
1974         * WebCore.xcodeproj/project.pbxproj:
1975
1976 2010-08-12  Ben Murdoch  <benm@google.com>
1977
1978         Reviewed by Pavel Feldman.
1979
1980         InspectorController.h missing InspectorObject forward declaration
1981         https://bugs.webkit.org/show_bug.cgi?id=43913
1982
1983         Build fix so no new tests.
1984
1985         * inspector/InspectorController.h: Adds the necessary forward declaration.
1986
1987 2010-08-12  Hui Huang  <hui.2.huang@nokia.com>
1988
1989         Reviewed by Eric Seidel.
1990
1991         m_windowRect is not updated because parent of PluginView is not
1992         set when updatePluginWidget is called. plugin gets wrong window
1993         size on setwindow.
1994         https://bugs.webkit.org/show_bug.cgi?id=43635
1995
1996         * plugins/symbian/PluginViewSymbian.cpp:
1997         (WebCore::PluginView::setParent):
1998
1999 2010-08-12  Pavel Feldman  <pfeldman@chromium.org>
2000
2001         Not reviewed, re-apply r65241 and 65243.
2002
2003         Web Inspector: brush up object proxies, introduce remote object model.
2004         https://bugs.webkit.org/show_bug.cgi?id=43847
2005
2006         * WebCore.gypi:
2007         * WebCore.vcproj/WebCore.vcproj:
2008         * inspector/front-end/AuditRules.js:
2009         (WebInspector.AuditRules.CssInHeadRule.prototype.doRun):
2010         (WebInspector.AuditRules.StylesScriptsOrderRule.prototype.doRun):
2011         * inspector/front-end/ConsoleView.js:
2012         (WebInspector.ConsoleView.prototype.doEvalInWindow):
2013         (WebInspector.ConsoleView.prototype._enterKeyPressed.printResult):
2014         (WebInspector.ConsoleView.prototype._enterKeyPressed):
2015         (WebInspector.ConsoleView.prototype._format):
2016         (WebInspector.ConsoleView.prototype._formatarray):
2017         (WebInspector.ConsoleView.prototype._formatAsArrayEntry):
2018         (WebInspector.ConsoleMessage.prototype._format):
2019         (WebInspector.ConsoleCommandResult):
2020         * inspector/front-end/DOMAgent.js:
2021         (WebInspector.DOMNode):
2022         * inspector/front-end/ElementsPanel.js:
2023         (WebInspector.ElementsPanel.prototype.performSearch):
2024         * inspector/front-end/ElementsTreeOutline.js:
2025         (WebInspector.ElementsTreeElement.prototype._createTooltipForNode):
2026         * inspector/front-end/EventListenersSidebarPane.js:
2027         ():
2028         * inspector/front-end/InjectedScript.js:
2029         (injectedScriptConstructor):
2030         (injectedScriptConstructor.):
2031         * inspector/front-end/ObjectPropertiesSection.js:
2032         (WebInspector.ObjectPropertiesSection.prototype.update):
2033         (WebInspector.ObjectPropertiesSection.prototype.updateProperties):
2034         (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate):
2035         (WebInspector.ObjectPropertyTreeElement.prototype.update):
2036         (WebInspector.ObjectPropertyTreeElement.prototype.applyExpression):
2037         * inspector/front-end/ObjectProxy.js: Removed.
2038         * inspector/front-end/PropertiesSidebarPane.js:
2039         (WebInspector.PropertiesSidebarPane.prototype.update.callback):
2040         * inspector/front-end/RemoteObject.js: Added.
2041         (WebInspector.RemoteObjectId):
2042         (WebInspector.RemoteObject):
2043         (WebInspector.RemoteObject.fromPrimitiveValue):
2044         (WebInspector.RemoteObject.fromNode):
2045         (WebInspector.RemoteObject.fromPayload):
2046         (WebInspector.RemoteObject.type):
2047         (WebInspector.RemoteObject.prototype.get objectId):
2048         (WebInspector.RemoteObject.prototype.get type):
2049         (WebInspector.RemoteObject.prototype.get description):
2050         (WebInspector.RemoteObject.prototype.get hasChildren):
2051         (WebInspector.RemoteObject.prototype.isError):
2052         (WebInspector.RemoteObject.prototype.getPropertyValueDescriptions):
2053         (WebInspector.RemoteObject.prototype.getOwnProperties):
2054         (WebInspector.RemoteObject.prototype.getProperties.remoteObjectBinder):
2055         (WebInspector.RemoteObjectProperty):
2056         * inspector/front-end/ScopeChainSidebarPane.js:
2057         (WebInspector.ScopeChainSidebarPane.prototype.update):
2058         * inspector/front-end/ScriptsPanel.js:
2059         (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame.updatingCallbackWrapper):
2060         (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame):
2061         (WebInspector.ScriptsPanel.prototype.doEvalInCallFrame):
2062         * inspector/front-end/SourceFrame.js:
2063         (WebInspector.SourceFrame.prototype._showPopup.evaluateCallback):
2064         (WebInspector.SourceFrame.prototype._showPopup):
2065         (WebInspector.SourceFrame.prototype._evalSelectionInCallFrame):
2066         * inspector/front-end/WatchExpressionsSidebarPane.js:
2067         (WebInspector.WatchExpressionsSection.prototype.update):
2068         (WebInspector.WatchExpressionTreeElement.prototype.update):
2069         * inspector/front-end/WebKit.qrc:
2070         * inspector/front-end/inspector.html:
2071         * inspector/front-end/inspector.js:
2072         (WebInspector.log.logMessage):
2073         (WebInspector.log):
2074         * inspector/front-end/utilities.js:
2075         ():
2076
2077 2010-08-11  Stephen White  <senorblanco@chromium.org>
2078
2079         Reviewed by David Levin.
2080
2081         Add support for BGRA pixel format to GraphicsContext3D.
2082         https://bugs.webkit.org/show_bug.cgi?id=43858
2083
2084         Although this has been standard in desktop GL since 1.2, it's an 
2085         extension in GL ES 2.0, so a query function is provided to check
2086         for support.  Since they differ on semantics (GL ES 2.0 requires 
2087         TexImage2D()'s format and internalFormat to match, while desktop GL
2088         will not accept BGRA as an internalFormat), the stub implementation
2089         returns false until these quirks have been implemented and tested on
2090         each port.
2091
2092         * platform/graphics/GraphicsContext3D.cpp:
2093         (WebCore::GraphicsContext3D::supportsBGRA):
2094         Add implementation for non-chromium platforms which returns false.
2095         * platform/graphics/GraphicsContext3D.h:
2096         (WebCore::GraphicsContext3D::):
2097         Add query function (supportsBGRA()) and the BGRA_EXT token.
2098
2099 2010-08-12  Pavel Feldman  <pfeldman@chromium.org>
2100
2101         Not reviewed. Rolling out r65241 and 65243 for breaking inspector tests.
2102
2103 2010-08-12  Pavel Feldman  <pfeldman@chromium.org>
2104
2105         Not reviewed. Adding the file missing in r65241.
2106
2107         * inspector/front-end/RemoteObject.js: Added.
2108         (WebInspector.RemoteObjectId):
2109         (WebInspector.RemoteObject):
2110         (WebInspector.RemoteObject.fromPrimitiveValue):
2111         (WebInspector.RemoteObject.fromNode):
2112         (WebInspector.RemoteObject.fromPayload):
2113         (WebInspector.RemoteObject.type):
2114         (WebInspector.RemoteObject.prototype.get objectId):
2115         (WebInspector.RemoteObject.prototype.get type):
2116         (WebInspector.RemoteObject.prototype.get description):
2117         (WebInspector.RemoteObject.prototype.get hasChildren):
2118         (WebInspector.RemoteObject.prototype.isError):
2119         (WebInspector.RemoteObject.prototype.getPropertyValueDescriptions):
2120         (WebInspector.RemoteObject.prototype.getOwnProperties):
2121         (WebInspector.RemoteObject.prototype.getProperties.remoteObjectBinder):
2122         (WebInspector.RemoteObjectProperty):
2123
2124 2010-08-12  Pavel Feldman  <pfeldman@chromium.org>
2125
2126         Reviewed by Yury Semikhatsky.
2127
2128         Web Inspector: brush up object proxies, introduce remote object model.
2129         https://bugs.webkit.org/show_bug.cgi?id=43847
2130
2131         * WebCore.gypi:
2132         * WebCore.vcproj/WebCore.vcproj:
2133         * inspector/front-end/AuditRules.js:
2134         (WebInspector.AuditRules.CssInHeadRule.prototype.doRun):
2135         (WebInspector.AuditRules.StylesScriptsOrderRule.prototype.doRun):
2136         * inspector/front-end/ConsoleView.js:
2137         (WebInspector.ConsoleView.prototype.doEvalInWindow):
2138         (WebInspector.ConsoleView.prototype._enterKeyPressed.printResult):
2139         (WebInspector.ConsoleView.prototype._enterKeyPressed):
2140         (WebInspector.ConsoleView.prototype._format):
2141         (WebInspector.ConsoleView.prototype._formatnode):
2142         (WebInspector.ConsoleView.prototype._formatarray):
2143         (WebInspector.ConsoleView.prototype._formatAsArrayEntry):
2144         (WebInspector.ConsoleMessage.prototype._format):
2145         (WebInspector.ConsoleCommandResult):
2146         * inspector/front-end/DOMAgent.js:
2147         (WebInspector.DOMNode):
2148         * inspector/front-end/ElementsTreeOutline.js:
2149         (WebInspector.ElementsTreeElement.prototype._createTooltipForNode):
2150         * inspector/front-end/EventListenersSidebarPane.js:
2151         * inspector/front-end/InjectedScript.js:
2152         (injectedScriptConstructor):
2153         (injectedScriptConstructor.):
2154         * inspector/front-end/ObjectPropertiesSection.js:
2155         (WebInspector.ObjectPropertiesSection.prototype.update):
2156         (WebInspector.ObjectPropertiesSection.prototype.updateProperties):
2157         (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate):
2158         (WebInspector.ObjectPropertyTreeElement.prototype.update):
2159         (WebInspector.ObjectPropertyTreeElement.prototype.applyExpression):
2160         * inspector/front-end/ObjectProxy.js: Removed.
2161         * inspector/front-end/PropertiesSidebarPane.js:
2162         (WebInspector.PropertiesSidebarPane.prototype.update.callback):
2163         * inspector/front-end/RemoteObject.js: Added.
2164         (WebInspector.RemoteObjectId):
2165         (WebInspector.RemoteObject):
2166         (WebInspector.RemoteObject.fromPrimitiveValue):
2167         (WebInspector.RemoteObject.fromErrorMessage):
2168         (WebInspector.RemoteObject.fromNode):
2169         (WebInspector.RemoteObject.fromPayload):
2170         (WebInspector.RemoteObject.type):
2171         (WebInspector.RemoteObject.prototype.get objectId):
2172         (WebInspector.RemoteObject.prototype.get type):
2173         (WebInspector.RemoteObject.prototype.get description):
2174         (WebInspector.RemoteObject.prototype.get hasChildren):
2175         (WebInspector.RemoteObject.prototype.isError):
2176         (WebInspector.RemoteObject.prototype.getPropertyValueDescriptions):
2177         (WebInspector.RemoteObject.prototype.getOwnProperties):
2178         (WebInspector.RemoteObject.prototype.getProperties.remoteObjectBinder):
2179         (WebInspector.RemoteObjectProperty):
2180         * inspector/front-end/ScopeChainSidebarPane.js:
2181         (WebInspector.ScopeChainSidebarPane.prototype.update):
2182         * inspector/front-end/ScriptsPanel.js:
2183         (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame.updatingCallbackWrapper):
2184         (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame):
2185         (WebInspector.ScriptsPanel.prototype.doEvalInCallFrame):
2186         * inspector/front-end/SourceFrame.js:
2187         (WebInspector.SourceFrame.prototype._showPopup.evaluateCallback):
2188         (WebInspector.SourceFrame.prototype._showPopup):
2189         (WebInspector.SourceFrame.prototype._evalSelectionInCallFrame):
2190         * inspector/front-end/WatchExpressionsSidebarPane.js:
2191         (WebInspector.WatchExpressionsSection.prototype.update):
2192         (WebInspector.WatchExpressionTreeElement.prototype.update):
2193         * inspector/front-end/WebKit.qrc:
2194         * inspector/front-end/inspector.html:
2195         * inspector/front-end/inspector.js:
2196         (WebInspector.log.logMessage):
2197         (WebInspector.log):
2198         * inspector/front-end/utilities.js:
2199
2200 2010-08-12  Ben Murdoch  <benm@google.com>
2201
2202         Reviewed by Steve Block.
2203
2204         V8 code generator does not add V8BindingMacros.h include in all places it is needed
2205         https://bugs.webkit.org/show_bug.cgi?id=43907
2206
2207         Adds the V8BindingMacros.h header before using the STRING_TO_V8PARAMETER_EXCEPTION_BLOCK
2208         macro.
2209
2210         Build fix so no new tests.
2211
2212         * bindings/scripts/CodeGeneratorV8.pm: include the header at the right time.
2213
2214 2010-08-12  Jeremy Orlow  <jorlow@chromium.org>
2215
2216         Revert for now
2217         https://bugs.webkit.org/show_bug.cgi?id=43794 
2218
2219         * Android.mk:
2220         * CMakeLists.txt:
2221         * GNUmakefile.am:
2222         * WebCore.exp.in:
2223         * WebCore.gypi:
2224         * WebCore.pro:
2225         * WebCore.vcproj/WebCore.vcproj:
2226         * WebCore.xcodeproj/project.pbxproj:
2227         * page/GroupSettings.cpp: Removed.
2228         * page/GroupSettings.h: Removed.
2229         * page/PageGroup.cpp:
2230         (WebCore::PageGroup::PageGroup):
2231         (WebCore::PageGroup::localStorage):
2232         * page/PageGroup.h:
2233         * page/Settings.cpp:
2234         (WebCore::Settings::Settings):
2235         (WebCore::Settings::setLocalStorageQuota):
2236         (WebCore::Settings::setLocalStorageDatabasePath):
2237         * page/Settings.h:
2238         (WebCore::Settings::localStorageQuota):
2239         (WebCore::Settings::localStorageDatabasePath):
2240
2241 2010-08-12  Nikolas Zimmermann  <nzimmermann@rim.com>
2242
2243         Not reviewed. Follow up to Jeremys fix, just remove the context parameter, it's not needed anymore.
2244
2245         * rendering/RenderSVGResourceGradient.cpp:
2246         (WebCore::createMaskAndSwapContextForTextGradient):
2247         * rendering/RenderSVGResourceMasker.cpp:
2248         (WebCore::RenderSVGResourceMasker::applyResource):
2249         * rendering/SVGImageBufferTools.cpp:
2250         (WebCore::SVGImageBufferTools::createImageBuffer):
2251         * rendering/SVGImageBufferTools.h:
2252
2253 2010-08-12  Jeremy Orlow  <jorlow@chromium.org>
2254
2255         Build fix.
2256
2257         * rendering/SVGImageBufferTools.cpp:
2258         (WebCore::SVGImageBufferTools::createImageBuffer):
2259
2260 2010-08-12  Nikolas Zimmermann  <nzimmermann@rim.com>
2261
2262         Reviewed by Dirk Schulze.
2263
2264         SVG masking performance very slow
2265         https://bugs.webkit.org/show_bug.cgi?id=43622
2266
2267         Create ImageBuffers only as large as the final rendered size on screen. Only gradient on text on CG handled this correctly so far.
2268         Refactored the code into a new SVGImageBufferTools class, and use the code from RenderSVGResourceMasker -> makes the IE9 demo SVG dice usable.
2269         Clippers, Patterns and Filters remain to be converted.
2270
2271         Test: svg/zoom/page/zoom-mask-with-percentages.svg
2272
2273         * Android.mk: Add SVGImageBufferTools.* to build.
2274         * CMakeLists.txt: Ditto.
2275         * GNUmakefile.am: Ditto.
2276         * WebCore.gypi: Ditto.
2277         * WebCore.pro: Ditto.
2278         * WebCore.xcodeproj/project.pbxproj: Ditto.
2279         * rendering/RenderSVGAllInOne.cpp: Ditto.
2280         * rendering/RenderSVGResourceGradient.cpp: Refactored CG gradient specific "create image buffer in absolute coordinates" code into SVGImageBufferTools class.
2281         (WebCore::createMaskAndSwapContextForTextGradient):
2282         (WebCore::clipToTextMask):
2283         (WebCore::RenderSVGResourceGradient::applyResource):
2284         * rendering/RenderSVGResourceMasker.cpp: Use new SVGImageBufferTools class, to avoid pixelation when zooming and to create image buffers as big as the final rendered size on screen, not more.
2285         (WebCore::RenderSVGResourceMasker::invalidateClients):
2286         (WebCore::RenderSVGResourceMasker::applyResource):
2287         (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage):
2288         (WebCore::RenderSVGResourceMasker::calculateMaskContentRepaintRect):
2289         (WebCore::RenderSVGResourceMasker::resourceBoundingBox):
2290         * rendering/RenderSVGResourceMasker.h:
2291         * rendering/SVGImageBufferTools.cpp: Added.
2292         (WebCore::SVGImageBufferTools::absoluteTransformFromContext):
2293         (WebCore::SVGImageBufferTools::createImageBuffer):
2294         (WebCore::SVGImageBufferTools::clipToImageBuffer):
2295         * rendering/SVGImageBufferTools.h: Added.
2296         (WebCore::SVGImageBufferTools::SVGImageBufferTools):
2297         (WebCore::SVGImageBufferTools::~SVGImageBufferTools):
2298
2299 2010-08-10  Jeremy Orlow  <jorlow@chromium.org>
2300
2301         Reviewed by Adam Barth.
2302
2303         Some settings are linked to the PageGroup not the Page.  Create a new class for those.
2304         https://bugs.webkit.org/show_bug.cgi?id=43794
2305
2306         Since persistient storage is shared between pages, there's no way to modify
2307         some settings related to it on a per page basis.  As such, it's not technically
2308         correct for these settings to be on the Page's settings.  Create a new class
2309         called GroupSettings, move the 2 group-wide local storage settings there, and
2310         add a new setting for IndexedDB's path (which is prompting this change).
2311
2312         No behavior has changed, so no tests.
2313
2314         * Android.mk:
2315         * CMakeLists.txt:
2316         * GNUmakefile.am:
2317         * WebCore.exp.in:
2318         * WebCore.gypi:
2319         * WebCore.pro:
2320         * WebCore.vcproj/WebCore.vcproj:
2321         * WebCore.xcodeproj/project.pbxproj:
2322         * page/PageGroup.cpp:
2323         (WebCore::PageGroup::PageGroup):
2324         (WebCore::PageGroup::localStorage):
2325         * page/PageGroup.h:
2326         (WebCore::PageGroup::groupSettings):
2327         * page/Settings.cpp:
2328         (WebCore::Settings::Settings):
2329         (WebCore::Settings::setSessionStorageQuota):
2330         * page/Settings.h:
2331
2332 2010-08-12  Benjamin Poulain  <benjamin.poulain@nokia.com>
2333
2334         Reviewed by Simon Hausmann.
2335
2336         [Qt] Decode images directly to QPixmap
2337         https://bugs.webkit.org/show_bug.cgi?id=40797
2338
2339         Use the new API of Qt 4.7 to decode data from the image
2340         reader directly to QPixmap.
2341
2342         This allow us to use JDCT_IFAST when decoding jpeg images
2343         to pixmap, and to decode animated GIF images, while still
2344         using in-place conversion of color space.
2345
2346         * platform/graphics/qt/ImageDecoderQt.cpp:
2347         (WebCore::ImageDecoderQt::setData):
2348         (WebCore::ImageDecoderQt::internalHandleCurrentImage):
2349
2350 2010-07-14  Marcus Bulach  <bulach@chromium.org>
2351
2352         Reviewed by darin@apple.com.
2353
2354         Removes DontCheckEnums from some IDLs and fixes the corresponding enums.
2355         https://bugs.webkit.org/show_bug.cgi?id=42278
2356
2357         This is a follow-up to https://bugs.webkit.org/show_bug.cgi?id=42250: it fixes some IDL/.h and enables generating compile-time checks for enums.
2358
2359         Tests: idls should generate valid code.
2360
2361         * dom/Node.h:
2362         (WebCore::Node::):
2363         * dom/Node.idl:
2364         * dom/OverflowEvent.h:
2365         (WebCore::OverflowEvent::):
2366         * dom/OverflowEvent.idl:
2367         * html/FileReader.cpp:
2368         (WebCore::FileReader::readyState):
2369         * html/FileReader.h:
2370         (WebCore::FileReader::):
2371         * html/FileReader.idl:
2372
2373 2010-08-12  Alejandro G. Castro  <alex@igalia.com>
2374
2375         Reviewed by David Levin.
2376
2377         The #if clause enabling a feature should avoid the all includes of
2378         the feature
2379         https://bugs.webkit.org/show_bug.cgi?id=43866
2380
2381         Modified the position of the guard to avoid including all the
2382         headers if the feature controlling the guard is not enabled.
2383
2384         * dom/make_names.pl:
2385
2386 2010-08-12  Sheriff Bot  <webkit.review.bot@gmail.com>
2387
2388         Unreviewed, rolling out r65221.
2389         http://trac.webkit.org/changeset/65221
2390         https://bugs.webkit.org/show_bug.cgi?id=43896
2391
2392         Broke snow leopard build. (Requested by dave_levin on
2393         #webkit).
2394
2395         * platform/graphics/GraphicsContext3D.cpp:
2396         * platform/graphics/GraphicsContext3D.h:
2397         (WebCore::GraphicsContext3D::):
2398
2399 2010-08-11  Stephen White  <senorblanco@chromium.org>
2400
2401         Reviewed by David Levin.
2402
2403         Add support for BGRA pixel format to GraphicsContext3D.
2404         https://bugs.webkit.org/show_bug.cgi?id=43858
2405
2406         Although this has been standard in desktop GL since 1.2, it's an 
2407         extension in GL ES 2.0, so a query function is provided to check
2408         for support.  Since they differ on semantics (GL ES 2.0 requires 
2409         TexImage2D()'s format and internalFormat to match, while desktop GL
2410         will not accept BGRA as an internalFormat), the stub implementation
2411         returns false until these quirks have been implemented and tested on
2412         each port.
2413
2414         * platform/graphics/GraphicsContext3D.cpp:
2415         (WebCore::GraphicsContext3D::supportsBGRA):
2416         Add implementation for non-chromium platforms which returns false.
2417         * platform/graphics/GraphicsContext3D.h:
2418         (WebCore::GraphicsContext3D::):
2419         Add query function (supportsBGRA()) and the BGRA_EXT token.
2420
2421 2010-08-11  Satish Sampath  <satish@chromium.org>
2422
2423         Reviewed by Kent Tamura.
2424
2425         Handle clicks and recognition events for the speech input button
2426         https://bugs.webkit.org/show_bug.cgi?id=43857
2427
2428         * rendering/RenderInputSpeech.cpp:
2429         (WebCore::RenderInputSpeech::paintInputFieldSpeechButton): Selects the image based on current state.
2430         * rendering/TextControlInnerElements.cpp:
2431         (WebCore::InputFieldSpeechButtonElement::InputFieldSpeechButtonElement):
2432         (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
2433         (WebCore::InputFieldSpeechButtonElement::set_state): Switch to a new state and update the UI.
2434         (WebCore::InputFieldSpeechButtonElement::didCompleteRecording): 
2435         (WebCore::InputFieldSpeechButtonElement::didCompleteRecognition):
2436         * rendering/TextControlInnerElements.h:
2437         (WebCore::InputFieldSpeechButtonElement::):
2438         (WebCore::InputFieldSpeechButtonElement::state):
2439
2440 2010-08-11  Fumitoshi Ukai  <ukai@chromium.org>
2441
2442         Reviewed by Alexey Proskuryakov.
2443
2444         REGRESSION(65135): format specifier warnings
2445         https://bugs.webkit.org/show_bug.cgi?id=43876
2446
2447         * websockets/WebSocketChannel.cpp:
2448         (WebCore::WebSocketChannel::appendToBuffer): cast size_t to unsigned long for %lu.
2449         (WebCore::WebSocketChannel::processBuffer): cast size_t to unsigned long for %lu.
2450
2451 2010-08-11  Kevin Ollivier  <kevino@theolliviers.com>
2452
2453         [wx] Build fix, don't generate WebDOMEventTarget.h/.cpp as we use the ones in bindings/cpp.
2454         
2455         * DerivedSources.make:
2456
2457 2010-08-11  Tony Gentilcore  <tonyg@chromium.org>
2458
2459         Reviewed by Adam Barth.
2460
2461         Make PendingScript copyable so that it can be stored in containers
2462         https://bugs.webkit.org/show_bug.cgi?id=43875
2463
2464         This will be useful for storing PendingScripts in a Vector or Deque for
2465         async and defer scripts.
2466
2467         No new tests because no functional changes.
2468
2469         * dom/PendingScript.h:
2470         (WebCore::PendingScript::PendingScript):
2471         (WebCore::PendingScript::operator=):
2472
2473 2010-08-11  Victoria Kirst  <vrk@google.com>
2474
2475         Reviewed by David Levin.
2476
2477         Fixing a regression in the UI for Mac default audio/video controls.
2478         https://bugs.webkit.org/show_bug.cgi?id=43750
2479
2480         * rendering/RenderThemeChromiumMac.h:
2481         * rendering/RenderThemeChromiumMac.mm:
2482         (WebCore::RenderThemeChromiumMac::paintMediaVolumeSliderContainer):
2483         (WebCore::RenderThemeChromiumMac::paintMediaSliderThumb):
2484         (WebCore::RenderThemeChromiumMac::volumeSliderOffsetFromMuteButton):
2485
2486 2010-08-11  Adam Barth  <abarth@webkit.org>
2487
2488         Reviewed by Eric Seidel.
2489
2490         HTML TreeBuilder hits ASSERT in fragment case with insertAdjacentHTML and colgroup
2491         https://bugs.webkit.org/show_bug.cgi?id=43758
2492
2493         This patch conditionalizes some LegacyHTMLTreeBuilder-specific code in
2494         HTMLElement::createContextualFragment that interferes with the new
2495         HTMLTreeBuilder.  Doing that exposes the above ASSERT, which I've fixed
2496         in this patch too.  Fixing that ASSERT involved a small refactoring in
2497         ExternalCharacterTokenBuffer.
2498
2499         * html/HTMLElement.cpp:
2500         (WebCore::HTMLElement::createContextualFragment):
2501         * html/HTMLTreeBuilder.cpp:
2502         (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::skipLeadingWhitespace):
2503         (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeLeadingWhitespace):
2504         (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeLeadingNonWhitespace):
2505         (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::skipLeading):
2506         (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeLeading):
2507         (WebCore::HTMLTreeBuilder::processCharacterBuffer):
2508
2509 2010-08-11  Adam Barth  <abarth@webkit.org>
2510
2511         Reviewed by Eric Seidel.
2512
2513         Conditionalize wrong fragment parsing code to pass more HTML5lib tests
2514         https://bugs.webkit.org/show_bug.cgi?id=43877
2515
2516         This code exists to support the LegacyHTMLTreeBuilder.  Unfortunately,
2517         it causes problems for the new HTMLTreeBuilder (which is more
2518         self-contained).
2519
2520         * dom/Element.cpp:
2521         (WebCore::Element::createContextualFragment):
2522
2523 2010-08-11  Ryosuke Niwa  <rniwa@webkit.org>
2524
2525         Reviewed by Tony Chang.
2526
2527         Can't unbold text in div in font-weight span
2528         https://bugs.webkit.org/show_bug.cgi?id=26871
2529
2530         The bug was caused by removeInlineStyle not being able to include styled inline nodes around the start.
2531         Solved this problem by pushing down all inline styles instead of just text-decorations.
2532         This approach allows removeInlineStyle to remove styled ancestors properly and generates compact markups.
2533
2534         Test: editing/style/push-down-inline-styles.html
2535
2536         * editing/ApplyStyleCommand.cpp:
2537         (WebCore::ApplyStyleCommand::removeCSSStyle): No longer removes attributes or node when mode == RemoveNone.
2538         (WebCore::ApplyStyleCommand::highestAncestorWithConflictingInlineStyle): Calls shouldRemoveInlineStyleFromElement
2539         to determine the highest ancestor whose style needs to be pushed down.
2540         (WebCore::ApplyStyleCommand::extractInlineStyleToPushDown): Renamed from extractTextDecorationStyle.
2541         Extracts all inline CSS properties specified instead of just text decorations.
2542         (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown): Renamed from applyTextDecorationStyle.
2543         Applies inline styles using addInlineStyleIfNeeded or adds inline CSS values.
2544         (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode): Renamed from pushDownTextDecorationStyleAroundNode.
2545         (WebCore::ApplyStyleCommand::removeInlineStyle): Calls pushDownTextDecorationStyleAroundNode.
2546         * editing/ApplyStyleCommand.h:
2547         * editing/DeleteSelectionCommand.cpp:
2548         (WebCore::DeleteSelectionCommand::mergeParagraphs): Prevents moveParagraph from preserving
2549         the style of an empty paragraph when merged with the previous paragraph because we don't use that style anyways.
2550
2551 2010-08-11  Julien Chaffraix  <jchaffraix@codeaurora.org>
2552
2553         Reviewed by Ariya Hidayat.
2554
2555         Remove dead code in CSSStyleSelector.
2556         https://bugs.webkit.org/show_bug.cgi?id=43805
2557
2558         * css/CSSStyleSelector.cpp: Remove some debugging code that
2559         was compiled out.
2560
2561 2010-08-11  Chris Fleizach  <cfleizach@apple.com>
2562
2563         Reviewed by Beth Dakin.
2564
2565         AX: isNativeCheckbox does not work as advertised
2566         https://bugs.webkit.org/show_bug.cgi?id=43872
2567
2568         Test: platform/mac/accessibility/native-vs-nonnative-checkboxes.html
2569
2570         * accessibility/AccessibilityRenderObject.cpp:
2571         (WebCore::AccessibilityRenderObject::isInputImage):
2572             Only say it's an input image if its role has not been overriden
2573         (WebCore::AccessibilityRenderObject::isNativeCheckboxOrRadio):
2574         * dom/InputElement.h:
2575             Add methods to query if it's a checkbox or radio button type element.
2576         * html/HTMLInputElement.h:
2577         (WebCore::HTMLInputElement::isCheckbox):
2578
2579 2010-08-11  Kenneth Russell  <kbr@google.com>
2580
2581         Reviewed by David Levin.
2582
2583         Remove obsolete WebGLArray type names
2584         https://bugs.webkit.org/show_bug.cgi?id=43885
2585
2586         Deleted aliases to obsolete WebGLArray type names. Updated
2587         affected layout tests, synchronizing them with the versions in the
2588         Khronos repository where appropriate. Ran all layout tests.
2589
2590         * bindings/js/JSDOMWindowCustom.cpp:
2591         * page/DOMWindow.idl:
2592
2593 2010-08-11  Steve Block  <steveblock@google.com>
2594
2595         Reviewed by David Levin.
2596
2597         [chromium] Geolocation breaks the compile if ENABLE_GEOLOCATION is set to 0
2598         https://bugs.webkit.org/show_bug.cgi?id=43753
2599
2600         This change guards the entire contents of the V8 custom bindings files
2601         with ENABLE(GEOLOCATION) to match JSC.
2602
2603         No new tests, build fix only.
2604
2605         * bindings/v8/custom/V8CustomPositionCallback.cpp:
2606         * bindings/v8/custom/V8CustomPositionErrorCallback.cpp:
2607         * bindings/v8/custom/V8GeolocationCustom.cpp:
2608
2609 2010-08-11  Kwang Yul Seo  <skyul@company100.net>
2610
2611         Reviewed by David Levin.
2612
2613         Include <wtf/UnusedParam.h> in GraphicsContextSkia.cpp
2614         https://bugs.webkit.org/show_bug.cgi?id=43843
2615
2616         wtf/UnusedParam.h must be included because UNUSED_PARAM macro is used.
2617
2618         * platform/graphics/skia/GraphicsContextSkia.cpp:
2619
2620 2010-08-11  Nico Weber  <thakis@chromium.org>
2621
2622         Reviewed by David Levin.
2623
2624         [chromium/mac]: Fix colors in compositing mode
2625         https://bugs.webkit.org/show_bug.cgi?id=43823
2626
2627         The textures are drawn by opengl, which doesn't do any color space
2628         correction -- it assumes everything is in the device color space
2629         already. Hence, when drawing into the memory that will be uploaded
2630         as opengl texture, use the device color space.
2631
2632         * platform/graphics/chromium/ImageLayerChromium.cpp:
2633         (WebCore::ImageLayerChromium::updateTextureContents):
2634         * platform/graphics/chromium/LayerChromium.cpp:
2635         (WebCore::LayerChromium::updateTextureContents):
2636         * platform/graphics/chromium/LayerRendererChromium.cpp:
2637         (WebCore::LayerRendererChromium::setRootLayerCanvasSize):
2638
2639 2010-08-11  Kenneth Russell  <kbr@google.com>
2640
2641         Reviewed by Dimitri Glazkov.
2642
2643         Remove obsolete texImage2D and texSubImage2D entry points
2644         https://bugs.webkit.org/show_bug.cgi?id=40320
2645
2646         No new tests; covered by existing WebGL tests.
2647
2648         * html/canvas/WebGLRenderingContext.cpp:
2649         * html/canvas/WebGLRenderingContext.h:
2650         * html/canvas/WebGLRenderingContext.idl:
2651
2652 2010-08-11  Gavin Barraclough  <barraclough@apple.com>
2653
2654         Windows build fix.
2655
2656         * platform/win/BString.cpp:
2657         (WebCore::BString::BString):
2658
2659 2010-08-11  Gavin Barraclough  <barraclough@apple.com>
2660
2661         Qt build fix II.
2662
2663         * WebCore.xcodeproj/project.pbxproj:
2664         * bridge/qt/qt_runtime.cpp:
2665         (JSC::Bindings::convertValueToQVariant):
2666
2667 2010-08-11  Gavin Barraclough  <barraclough@apple.com>
2668
2669         Qt build fix.
2670
2671         * WebCore.xcodeproj/project.pbxproj:
2672         * bridge/qt/qt_runtime.cpp:
2673         (JSC::Bindings::convertValueToQVariant):
2674
2675 2010-08-11  Steve Block  <steveblock@google.com>
2676
2677         Reviewed by Jeremy Orlow.
2678
2679         Need EmptyDeviceOrientationClient and EmptyDeviceMotionClient for use with SVGImage
2680         https://bugs.webkit.org/show_bug.cgi?id=43848
2681
2682         Tested by existing DeviceOrientation tests.
2683
2684         * loader/EmptyClients.h:
2685         (WebCore::EmptyDeviceMotionClient::setController):
2686         (WebCore::EmptyDeviceMotionClient::startUpdating):
2687         (WebCore::EmptyDeviceMotionClient::stopUpdating):
2688         (WebCore::EmptyDeviceMotionClient::currentDeviceMotion):
2689         (WebCore::EmptyDeviceOrientationClient::setController):
2690         (WebCore::EmptyDeviceOrientationClient::startUpdating):
2691         (WebCore::EmptyDeviceOrientationClient::stopUpdating):
2692         (WebCore::EmptyDeviceOrientationClient::lastOrientation):
2693         * svg/graphics/SVGImage.cpp:
2694         (WebCore::SVGImage::dataChanged):
2695
2696 2010-08-11  Rob Buis  <rwlbuis@gmail.com>
2697
2698         Reviewed by Dan Bernstein.
2699
2700         https://bugs.webkit.org/show_bug.cgi?id=42042
2701         An empty value for xml:lang isn't considered
2702
2703         Revert last line change of my patch ; it happens to
2704         behave correctly and same as before, but makes the
2705         use case of empty values unneededly slower.
2706
2707         No new tests. (No change in behavior)
2708
2709         * css/CSSStyleSelector.cpp:
2710         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
2711
2712 2010-08-11  Kevin Ollivier  <kevino@theolliviers.com>
2713
2714         [wx, WebDOM] Build fix. Fix callback params and WebCore::String -> WTF::String fixes.
2715
2716         * bindings/cpp/WebDOMCustomVoidCallback.cpp: Added.
2717         (WebDOMCustomVoidCallback::WebDOMCustomVoidCallback):
2718         (WebDOMCustomVoidCallback::~WebDOMCustomVoidCallback):
2719         (WebDOMCustomVoidCallback::handleEvent):
2720         (toWebCore):
2721         * bindings/cpp/WebDOMCustomVoidCallback.h: Added.
2722         (WebDOMCustomVoidCallback::create):
2723         * bindings/cpp/WebDOMHTMLDocumentCustom.cpp:
2724         (documentWrite):
2725         * bindings/cpp/WebDOMString.cpp:
2726         (WebDOMString::equals):
2727         * bindings/scripts/CodeGeneratorCPP.pm:
2728         * bindings/scripts/test/CPP/WebDOMTestCallback.cpp:
2729         (WebDOMTestCallback::callbackWithClass1Param):
2730         (WebDOMTestCallback::callbackWithClass2Param):
2731         (WebDOMTestCallback::callbackWithNonBoolReturnType):
2732         * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
2733         * bindings/scripts/test/V8/V8TestInterface.h:
2734         * bindings/scripts/test/V8/V8TestObj.h:
2735         * wscript:
2736
2737 2010-08-11  Gavin Barraclough  <barraclough@apple.com>
2738
2739         Rubber stamps by Darin Adler & Sam Weinig.
2740
2741         Bug 43867 - Some UString cleanup
2742
2743         Change JSC::UString data(), size(), and from(), to characters(), length(), and number() to match WTF::String.
2744         Move string concatenation methods to a new header to simplify down UString.h.  Remove is8Bit().
2745
2746         * WebCore.xcodeproj/project.pbxproj:
2747         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
2748         (WebCore::hasCSSPropertyNamePrefix):
2749         (WebCore::cssPropertyName):
2750         * bindings/js/JSLocationCustom.cpp:
2751         (WebCore::JSLocation::setPort):
2752         * bindings/js/ScriptDebugServer.cpp:
2753         (WebCore::ScriptDebugServer::dispatchDidParseSource):
2754         * bindings/js/ScriptString.h:
2755         (WebCore::ScriptString::size):
2756         * bindings/js/ScriptValue.cpp:
2757         (WebCore::jsToInspectorValue):
2758         * bindings/objc/WebScriptObject.mm:
2759         (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
2760         * bridge/jni/jni_jsobject.mm:
2761         (JavaJSObject::convertValueToJObject):
2762         * bridge/jni/jsc/JNIUtilityPrivate.cpp:
2763         (JSC::Bindings::convertArrayInstanceToJavaArray):
2764         (JSC::Bindings::convertValueToJValue):
2765         * bridge/objc/objc_runtime.mm:
2766         (JSC::Bindings::callObjCFallbackObject):
2767
2768 2010-08-10  David Hyatt  <hyatt@apple.com>
2769
2770         Reviewed by Dan Bernstein.
2771
2772         https://bugs.webkit.org/show_bug.cgi?id=43806, add ability to paginate screen content.
2773         
2774         Add a new boolean to Document to indicate that content should be paginated.  This is checked when doing page breaks
2775         and in a couple of other cases.
2776
2777         * dom/Document.cpp:
2778         (WebCore::Document::Document):
2779         * dom/Document.h:
2780         (WebCore::Document::paginatedForScreen):
2781         (WebCore::Document::setPaginatedForScreen):
2782         (WebCore::Document::paginated):
2783         * rendering/RenderBlock.cpp:
2784         (WebCore::RenderBlock::paintChildren):
2785         (WebCore::RenderBlock::calcColumnWidth):
2786         * rendering/RenderBox.cpp:
2787         (WebCore::RenderBox::calcHeight):
2788         * rendering/RenderView.cpp:
2789         (WebCore::RenderView::paint):
2790
2791 2010-08-11  Adam Barth  <abarth@webkit.org>
2792
2793         Windows build fix.  Turns out we need to unconditionally include
2794         HTMLEntityNames.cpp now that LegacyHTMLDocumentParser doesn't exist.
2795
2796         * html/HTMLEntityParser.cpp:
2797
2798 2010-08-11  Eric Carlson  <eric.carlson@apple.com>
2799
2800         Reviewed by Darin Adler.
2801
2802         Inserting a <source> element should immediately set networkState to NETWORK_NO_SOURCE.
2803         https://bugs.webkit.org/show_bug.cgi?id=42897
2804
2805         A <source> element inserted as a child of a media element with a networkState of NETWORK_EMPTY
2806         should cause the networkState to immediately change to NETWORK_NO_SOURCE.
2807
2808         * WebCore.xcodeproj/project.pbxproj:
2809         * html/HTMLMediaElement.cpp:
2810         (WebCore::HTMLMediaElement::HTMLMediaElement): Remove unused variable m_processingLoad.
2811         (WebCore::HTMLMediaElement::prepareForLoad): Set m_networkState to NETWORK_NO_SOURCE.
2812         (WebCore::HTMLMediaElement::loadInternal): Remove unused variable m_processingLoad.
2813         (WebCore::HTMLMediaElement::selectMediaResource): No need to change m_networkState, it was done in prepareForLoad.
2814         * html/HTMLMediaElement.h:
2815
2816         * html/HTMLSourceElement.cpp:
2817         (WebCore::HTMLSourceElement::insertedIntoTree): Renamed from insertedIntoDocument because we want
2818         to do this setup whether or not the parent media element is in the document.
2819         * html/HTMLSourceElement.h:
2820
2821 2010-08-11  Adam Barth  <abarth@webkit.org>
2822
2823         Rubber-stamped by Eric Seidel.
2824
2825         Delete LegacyHTMLDocumentParser and LegacyPreloadScanner
2826         https://bugs.webkit.org/show_bug.cgi?id=43836
2827
2828         These classes are bit-rotting disturbingly quickly.  We removed the
2829         last dependencies on these classes and so we can remove them.
2830
2831         We might need to preserve some of their particular quirks to handle
2832         some legacy applications, but our current thinking is to do that with
2833         individual settings that affect the new parser.
2834
2835         * Android.mk:
2836         * CMakeLists.txt:
2837         * GNUmakefile.am:
2838         * WebCore.gypi:
2839         * WebCore.pro:
2840         * WebCore.vcproj/WebCore.vcproj:
2841         * WebCore.xcodeproj/project.pbxproj:
2842         * dom/Document.cpp:
2843         * dom/DocumentFragment.cpp:
2844         (WebCore::DocumentFragment::parseHTML):
2845         * dom/DocumentParser.h:
2846         * dom/XMLDocumentParserLibxml2.cpp:
2847         * dom/XMLDocumentParserQt.cpp:
2848         * html/HTMLConstructionSite.cpp:
2849         * html/HTMLDocument.cpp:
2850         (WebCore::HTMLDocument::createParser):
2851         * html/HTMLEntityParser.cpp:
2852         (WebCore::decodeNamedEntity):
2853         * html/HTMLEntityParser.h:
2854         * html/HTMLFormControlElement.cpp:
2855         * html/HTMLTreeBuilder.cpp:
2856         * html/HTMLViewSourceDocument.cpp:
2857         (WebCore::HTMLViewSourceDocument::createParser):
2858         * html/LegacyHTMLDocumentParser.cpp: Removed.
2859         * html/LegacyHTMLDocumentParser.h: Removed.
2860         * html/LegacyHTMLTreeBuilder.cpp:
2861         * html/LegacyPreloadScanner.cpp: Removed.
2862         * html/LegacyPreloadScanner.h: Removed.
2863         * loader/FTPDirectoryDocument.cpp:
2864         (WebCore::FTPDirectoryDocumentParser::FTPDirectoryDocumentParser):
2865         (WebCore::FTPDirectoryDocumentParser::appendEntry):
2866         (WebCore::FTPDirectoryDocumentParser::createTDForFilename):
2867         (WebCore::processFilesizeString):
2868         (WebCore::wasLastDayOfMonth):
2869         (WebCore::processFileDateString):
2870         (WebCore::FTPDirectoryDocumentParser::parseAndAppendOneLine):
2871         (WebCore::FTPDirectoryDocumentParser::loadDocumentTemplate):
2872         (WebCore::FTPDirectoryDocumentParser::createBasicDocument):
2873         (WebCore::FTPDirectoryDocumentParser::append):
2874         (WebCore::FTPDirectoryDocumentParser::finish):
2875         * page/XSSAuditor.cpp:
2876         (WebCore::XSSAuditor::decodeHTMLEntities):
2877         * page/XSSAuditor.h:
2878         * platform/text/SegmentedString.cpp:
2879         (WebCore::SegmentedString::prepend):
2880
2881 2010-08-11  Chris Jerdonek  <cjerdonek@webkit.org>
2882
2883         Reviewed by Adam Barth.
2884
2885         Refactored FrameLoader::createWindow() out of the FrameLoader class
2886         since FrameLoader should not be responsible for creating windows.
2887
2888         https://bugs.webkit.org/show_bug.cgi?id=39156
2889
2890         No new functionality, so no new tests.
2891
2892         * bindings/generic/BindingDOMWindow.h:
2893         (WebCore::::createWindow):
2894           - Updated the call to FrameLoader's createWindow().
2895         * bindings/js/JSDOMWindowCustom.cpp:
2896         (WebCore::createWindow):
2897           - Updated the call to FrameLoader's createWindow().
2898         * loader/FrameLoader.cpp:
2899         (WebCore::createWindowFromFrameLoader):
2900           - Made FrameLoader::createWindow() non-member, non-friend and changed it
2901             to accept Frame* parameters instead of FrameLoader*.
2902         * loader/FrameLoader.h:
2903           - Updated the header file to reflect the above change to FrameLoader.cpp.
2904
2905 2010-08-11  Ilya Tikhonovsky  <loislo@chromium.org>
2906
2907         Reviewed by Pavel Feldman.
2908
2909         WebInspector: small refactoring for CodeGeneratorInspector.
2910         all "notify" methods are generating in InspectorFrontend
2911         the other methods are generating in InspectorBackend.
2912         https://bugs.webkit.org/show_bug.cgi?id=43849
2913
2914         * inspector/CodeGeneratorInspector.pm:
2915
2916 2010-08-11  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
2917
2918         Reviewed by Xan Lopez.
2919
2920         [GTK] Misc improvements to the scrolling code
2921         https://bugs.webkit.org/show_bug.cgi?id=41926
2922
2923         Refactor code that uses deprecated ways of dealing with the
2924         adjustments to use the GtkVersioning infrastructure.
2925
2926         * GNUmakefile.am:
2927         * platform/gtk/GtkVersioning.cpp: Added.
2928         * platform/gtk/GtkVersioning.h:
2929         * platform/gtk/ScrollViewGtk.cpp:
2930         * platform/gtk/ScrollbarGtk.cpp:
2931         (ScrollbarGtk::detachAdjustment):
2932         (ScrollbarGtk::updateThumbPosition):
2933         (ScrollbarGtk::updateThumbProportion):
2934
2935 2010-08-11  Nate Chapin  <japhet@chromium.org>
2936
2937         Chromium mac build fix (variables weren't being initialized).
2938
2939         * platform/graphics/filters/FEGaussianBlur.cpp: 
2940         (WebCore::FEGaussianBlur::apply): Initalize dxLeft, dxRight, dyLeft, dyRight.
2941
2942 2010-08-11  Pavel Feldman  <pfeldman@chromium.org>
2943
2944         Reviewed by Yury Semikhatsky.
2945
2946         Web Inspector: apply correct fix to storage panel status bar buttons.
2947
2948         https://bugs.webkit.org/show_bug.cgi?id=43846
2949
2950         * inspector/front-end/DatabaseTableView.js:
2951         (WebInspector.DatabaseTableView.prototype.get statusBarItems):
2952         * inspector/front-end/StoragePanel.js:
2953         (WebInspector.StoragePanel.prototype._genericViewSetup):
2954
2955 2010-08-11  Kevin Ollivier  <kevino@theolliviers.com>
2956
2957         Reviewed by Adam Barth.
2958
2959         Override operator= for C++ DOM binding classes with private structs
2960         and update C++ DOM bindings test results.
2961         https://bugs.webkit.org/show_bug.cgi?id=43735
2962
2963         * bindings/cpp/WebDOMEventTarget.cpp:
2964         (WebDOMEventTarget::operator=):
2965         * bindings/cpp/WebDOMEventTarget.h:
2966         * bindings/scripts/CodeGeneratorCPP.pm:
2967         * bindings/scripts/test/CPP/WebDOMTestCallback.cpp:
2968         (WebDOMTestCallback::operator=):
2969         * bindings/scripts/test/CPP/WebDOMTestCallback.h:
2970         * bindings/scripts/test/CPP/WebDOMTestInterface.cpp:
2971         (WebDOMTestInterface::operator=):
2972         * bindings/scripts/test/CPP/WebDOMTestInterface.h:
2973         * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
2974         (WebDOMTestObj::operator=):
2975         * bindings/scripts/test/CPP/WebDOMTestObj.h:
2976
2977 2010-08-11  Julie Parent  <jparent@chromium.org>
2978
2979         Reviewed by Justin Garcia.
2980
2981         Crash in replaceSelectionCommand with RTL text.
2982         https://bugs.webkit.org/show_bug.cgi?id=41485
2983         
2984         For text with mixed directionality, sort the text boxes before
2985         computing gaps, since that code assumes the boxes are in order.
2986
2987         Test: editing/execCommand/insert-image-on-top-of-directional-text.html
2988
2989         * editing/CompositeEditCommand.cpp:
2990         (WebCore::CompositeEditCommand::deleteInsignificantText): Sort boxes
2991         like we do in TextIterator before computing gaps.
2992         * editing/TextIterator.cpp:
2993         (WebCore::TextIterator::handleTextNode): Use new compareByStart
2994         rather than compareBoxStart.  No functional change.
2995         * rendering/InlineTextBox.h:
2996         (WebCore::InlineTextBox::compareByStart): Moved compareBoxStart
2997         from TextIterator here so it can be used in multiple places.
2998
2999 2010-08-11  Fumitoshi Ukai  <ukai@chromium.org>
3000
3001         Unreviewed build fix of Leopard Intel Debug (Build)
3002
3003         * websockets/WebSocketChannel.cpp:
3004         (WebCore::WebSocketChannel::processBuffer): use %lu, instead of %ul
3005
3006 2010-08-11  Alejandro G. Castro  <alex@igalia.com>
3007
3008         Reviewed by Dirk Schulze.
3009
3010         Fixes to the gaussian blur algorithm
3011         https://bugs.webkit.org/show_bug.cgi?id=41605
3012
3013         Added the recomendations of SVG regarding the kernel size
3014         calculation for the approximation of the gaussian
3015         blur. http://www.w3.org/TR/SVG/filters.html#feGaussianBlurElement.
3016         Modified also some variable names to clarify algorithm, reviewed
3017         the situation where both standard deviations are 0.
3018
3019         * platform/graphics/filters/FEGaussianBlur.cpp:
3020         (WebCore::FEGaussianBlur::FEGaussianBlur):
3021         (WebCore::FEGaussianBlur::stdDeviationX):
3022         (WebCore::FEGaussianBlur::setStdDeviationX):
3023         (WebCore::FEGaussianBlur::stdDeviationY):
3024         (WebCore::FEGaussianBlur::setStdDeviationY):
3025         (WebCore::boxBlur):
3026         (WebCore::FEGaussianBlur::kernelPosition): Added the SVG kernel
3027         position recomendation.
3028         (WebCore::FEGaussianBlur::apply):
3029         (WebCore::FEGaussianBlur::externalRepresentation):
3030         * platform/graphics/filters/FEGaussianBlur.h:
3031
3032 2010-08-11  Kristian Monsen  <kristianm@google.com>
3033
3034         Reviewed by Steve Block.
3035
3036         Compile fix for Android, added include for <wtf/text/Cstring.h, this
3037         did not get included in Android.
3038         https://bugs.webkit.org/show_bug.cgi?id=41517
3039         
3040         Build fix only, no new tests.
3041
3042         * page/PrintContext.cpp:
3043
3044 2010-08-11  Fumitoshi Ukai  <ukai@chromium.org>
3045
3046         Reviewed by Alexey Proskuryakov.
3047
3048         Fix length calculation to be more robust.
3049         https://bugs.webkit.org/show_bug.cgi?id=43777
3050
3051         Test: websocket/tests/frame-length-overflow.html
3052
3053         * websockets/WebSocketChannel.cpp:
3054         (WebCore::WebSocketChannel::appendToBuffer): len is size_t.
3055          - add sanity check for integer wraps.
3056         (WebCore::WebSocketChannel::skipBuffer): len is size_t.
3057         (WebCore::WebSocketChannel::processBuffer): length is size_t.
3058          - add sanity check for integer wraps.
3059         * websockets/WebSocketChannel.h: change m_bufferSize and len to size_t.
3060
3061 2010-08-10  Eric Seidel  <eric@webkit.org>
3062
3063         Reviewed by Adam Barth.
3064
3065         Fix three ASSERTs hit with the HTML5 TreeBuilder in fragment mode
3066         https://bugs.webkit.org/show_bug.cgi?id=43762
3067
3068         In fixing the insertAdjacentHTML I had to make small changes to
3069         the error logic, which ended up bringing us closer to HTML5.
3070
3071         Test: fast/dom/HTMLElement/insertAdjacentHTML-errors.html
3072
3073         * html/HTMLConstructionSite.cpp:
3074         (WebCore::HTMLConstructionSite::attach):
3075          - This ASSERT was just wrong, the child should not be attached
3076            in the case the parent is not attached.
3077         * html/HTMLElement.cpp:
3078         (WebCore::contextElementForInsertion):
3079          - This is part of HTML5, needed to know what to call the
3080            HTML or XML parsers with.  The previous code always passed
3081            "this" which is wrong in the case of beforeBegin or afterEnd insertion.
3082         (WebCore::HTMLElement::insertAdjacentHTML):
3083          - Use the right contextElement now that we know how to compute it.
3084         * html/HTMLTreeBuilder.cpp:
3085         (WebCore::HTMLTreeBuilder::processEndTagForInCell):
3086          - This ASSERT is direct from the spec, but it's wrong, so I've filed a spec bug.
3087
3088 2010-08-11  Adam Barth  <abarth@webkit.org>
3089
3090         Attempt to fix Windows build.
3091
3092         * platform/win/COMPtr.h:
3093         (WTF::):
3094
3095 2010-08-11  Adam Barth  <abarth@webkit.org>
3096
3097         Reviewed by Eric Seidel.
3098
3099         Port view-source to new parser
3100         https://bugs.webkit.org/show_bug.cgi?id=43746
3101
3102         This patch switches the view-source mode for frames over to using the
3103         new HTML parsing infrastructure.  This patch is an architectural change
3104         to how we parser view source documents.
3105
3106         Previously, the LegacyHTMLDocumentParser would output a "guide string"
3107         that consided of the inter-attribute whitespace and various "control"
3108         characters.  The HTMLViewSourceDocument would then interpret this guide
3109         string to approximately reconstruct the source of the original document
3110         and colorize various syntatic constructs.
3111
3112         Unfortunately, that approach is inherently low-fidelity.  It's not
3113         really feasible to reconstruct the input document from the token
3114         stream.  The old view source mode also had a number of hacks in the old
3115         parser (e.g., to turn of decoding of HTML entities).
3116
3117         Instead of trying to reconstruct the original document from the token
3118         stream, we use the segmentation information given by the tokens to
3119         colorize the input document itself.  Each token now caries information
3120         about where in the input stream it came from and where various
3121         subcomponents (e.g., attribute names and values) are located.  This
3122         approach is higher fidelity because we use this segmentation
3123         information to colorize the original input instead of attempting to
3124         reconstruct the original input.
3125
3126         * Android.mk:
3127         * CMakeLists.txt:
3128         * GNUmakefile.am:
3129         * WebCore.gypi:
3130         * WebCore.pro:
3131         * WebCore.vcproj/WebCore.vcproj:
3132         * WebCore.xcodeproj/project.pbxproj:
3133         * html/HTMLDocumentParser.cpp:
3134         * html/HTMLToken.h:
3135         (WebCore::HTMLToken::clear):
3136         (WebCore::HTMLToken::startIndex):
3137         (WebCore::HTMLToken::length):
3138         (WebCore::HTMLToken::end):
3139         * html/HTMLViewSourceDocument.cpp:
3140         (WebCore::HTMLViewSourceDocument::createParser):
3141         (WebCore::HTMLViewSourceDocument::addSource):
3142         (WebCore::HTMLViewSourceDocument::processDoctypeToken):
3143         (WebCore::HTMLViewSourceDocument::processTagToken):
3144         (WebCore::HTMLViewSourceDocument::processCommentToken):
3145         (WebCore::HTMLViewSourceDocument::processCharacterToken):
3146         (WebCore::HTMLViewSourceDocument::addRange):
3147         * html/HTMLViewSourceDocument.h:
3148         * html/HTMLViewSourceParser.cpp: Added.
3149         (WebCore::HTMLViewSourceParser::~HTMLViewSourceParser):
3150         (WebCore::HTMLViewSourceParser::insert):
3151         (WebCore::HTMLViewSourceParser::pumpTokenizer):
3152         (WebCore::HTMLViewSourceParser::append):
3153         (WebCore::HTMLViewSourceParser::sourceForToken):
3154         (WebCore::HTMLViewSourceParser::updateTokenizerState):
3155         (WebCore::HTMLViewSourceParser::finish):
3156         (WebCore::HTMLViewSourceParser::finishWasCalled):
3157         * html/HTMLViewSourceParser.h: Added.
3158         (WebCore::HTMLViewSourceParser::HTMLViewSourceParser):
3159         (WebCore::HTMLViewSourceParser::document):
3160         * html/LegacyHTMLDocumentParser.cpp:
3161         (WebCore::LegacyHTMLDocumentParser::processToken):
3162         (WebCore::LegacyHTMLDocumentParser::processDoctypeToken):
3163
3164 2010-08-11  Yoshiki Hayashi  <yhayashi@google.com>
3165
3166         Reviewed by Shinichiro Hamaji.
3167
3168         Make form controls, textarea, legend and datagrid treat width:
3169         auto as specified in stretching vertical flexbox.  Otherwise it's
3170         treated as intrinsic as before.
3171         https://bugs.webkit.org/show_bug.cgi?id=17918
3172
3173         Test: fast/flexbox/vertical-box-form-controls.html
3174
3175         * css/CSSStyleSelector.cpp:
3176         (WebCore::CSSStyleSelector::adjustRenderStyle):
3177         * rendering/RenderBox.cpp:
3178         (WebCore::RenderBox::sizesToIntrinsicWidth):
3179
3180 2010-08-10  Darin Adler  <darin@apple.com>
3181
3182         Reviewed by Sam Weinig.
3183
3184         Add leakRef and clear to all RefPtr variants
3185         https://bugs.webkit.org/show_bug.cgi?id=42389
3186
3187         * platform/win/COMPtr.h: Changed all uses of "template <...>" to instead do
3188         "template<...>". Defined many of the inlined functions outside the class
3189         definition, to avoid style checker warnings about multiple statements on
3190         a single line and for slightly better clarity of the class definition itself.
3191         Renamed releaseRef to leakRef. Added a releaseRef that calls leakRef so we
3192         don't have to rename all callers at once. Added a clear function. Changed
3193         the hash table code so it doesn't need to call releaseRef, and so it uses
3194         the hash table deleted value hooks already present within the class.
3195
3196 2010-08-10  Ariya Hidayat  <ariya@sencha.com>
3197
3198         [Qt] Fix build warning: remove reference to html/BlobRegistryImp.h
3199
3200         * WebCore.pro:
3201
3202 2010-08-10  Alexey Proskuryakov  <ap@apple.com>
3203
3204         Reviewed by Darin Adler.
3205
3206         https://bugs.webkit.org/show_bug.cgi?id=43803
3207         <rdar://problem/6988023> Only the last Korean character can be shown if font style is enabled while typing (43803)
3208
3209         Test: platform/mac/editing/input/bold-node.html
3210
3211         * editing/Editor.cpp: (WebCore::Editor::setComposition): It is not clear to me what the
3212         "baseNode == extentNode" check is about in this function , but let's try to make it more
3213         likely that it passes.
3214
3215 2010-08-10  Hayato Ito  <hayato@chromium.org>
3216
3217         Reviewed by Kent Tamura.
3218
3219         Make CSSSelector::specificity() non-recursive.
3220         https://bugs.webkit.org/show_bug.cgi?id=43784
3221
3222         This change is one of the required changes to fix the following master bug:
3223         https://bugs.webkit.org/show_bug.cgi?id=42806
3224
3225         No functional change, thus no tests.
3226
3227         * css/CSSSelector.cpp:
3228         (WebCore::CSSSelector::specificity):
3229         (WebCore::CSSSelector::specificityForOneSelector):
3230         (WebCore::CSSSelector::specificityForPage):
3231         * css/CSSSelector.h:
3232
3233 2010-08-10  Matthew Delaney  <mdelaney@apple.com>
3234
3235         Reviewed by Darin Adler.
3236
3237         2d.path.clip.empty.html test is failing
3238         https://bugs.webkit.org/show_bug.cgi?id=43161
3239
3240         * platform/graphics/cg/GraphicsContextCG.cpp:
3241         (WebCore::GraphicsContext::clip):
3242         Catching the empty path case from being sent directly to 
3243         CGContextClip - which would ignore it. Instead, using 
3244         CGContextClip with a CGRectZero to achieve the desired
3245         behavior of reducing the clipping region to nothing.
3246
3247 2010-08-10  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3248
3249         Reviewed by Antonio Gomes.
3250
3251         [EFL] Add video files to enable video in WebKit EFL
3252         https://bugs.webkit.org/show_bug.cgi?id=43790
3253
3254         Add files regarding html5 video to CMakeList.txt for WebKit Efl.
3255         But, this patch is not run html5 video on WebKit EFL yet.
3256
3257         * CMakeLists.txt: Add files related to html5video.
3258         * platform/efl/LocalizedStringsEfl.cpp: Add functions for html5 video.
3259         (WebCore::localizedMediaControlElementString):
3260         (WebCore::localizedMediaControlElementHelpText):
3261         (WebCore::localizedMediaTimeDescription):
3262         * platform/graphics/MediaPlayer.cpp:
3263         (WebCore::installedMediaEngines): Disable MediaPlayerPrivate::r
3264       egisterMediaEngine for WebKit EFL.
3265
3266 2010-08-10  Patrick Gansterer  <paroga@paroga.com>
3267
3268         Reviewed by Nikolas Zimmermann.
3269
3270         Add a toRenderSVGImage function
3271         https://bugs.webkit.org/show_bug.cgi?id=43789
3272
3273         Add a function for casting to RenderSVGImage and use it.
3274
3275         * rendering/RenderSVGImage.h:
3276         (WebCore::toRenderSVGImage):
3277         * rendering/RenderTreeAsText.cpp:
3278         (WebCore::write):
3279         * rendering/SVGRenderTreeAsText.cpp:
3280         (WebCore::writeSVGImage):
3281         * rendering/SVGRenderTreeAsText.h:
3282         * svg/SVGImageElement.cpp:
3283         (WebCore::SVGImageElement::attach):
3284
3285 2010-08-10  Adam Barth  <abarth@webkit.org>
3286
3287         Reviewed by Eric Seidel.
3288
3289         Clients of HTMLTokenizer should be able to see where characters went in the token
3290         https://bugs.webkit.org/show_bug.cgi?id=43766
3291
3292         When viewing the source of a document, we want to colorize different
3293         parts of the input depending on how they were tokenized.  In this
3294         patch, we expose the internal segmentation of a token by recording the
3295         start and end offsets for each attribute name and each attribute value.
3296
3297         * html/HTMLToken.h:
3298         (WebCore::HTMLToken::addNewAttribute):
3299         (WebCore::HTMLToken::beginAttributeName):
3300         (WebCore::HTMLToken::endAttributeName):
3301         (WebCore::HTMLToken::beginAttributeValue):
3302         (WebCore::HTMLToken::endAttributeValue):
3303         (WebCore::HTMLToken::appendToAttributeName):
3304         (WebCore::HTMLToken::appendToAttributeValue):
3305         (WebCore::AtomicHTMLToken::AtomicHTMLToken):
3306         * html/HTMLTokenizer.cpp:
3307         (WebCore::HTMLTokenizer::nextToken):
3308
3309 2010-08-10  Dumitru Daniliuc  <dumi@chromium.org>
3310
3311         Reviewed by David Levin.
3312
3313         Do not post a sync task to the DB thread if it's terminating.
3314         https://bugs.webkit.org/show_bug.cgi?id=43676
3315
3316         * bindings/generic/ActiveDOMCallback.cpp: The context can
3317         sometimes be NULL. Check if it's NULL instead of asserting that
3318         it's not.
3319         (WebCore::ActiveDOMCallback::ActiveDOMCallback):
3320         * dom/ActiveDOMObject.cpp:
3321         (WebCore::ActiveDOMObject::ActiveDOMObject):
3322
3323         * storage/Database.cpp: Do not post a sync task to the DB thread
3324         if the DB thread is terminating. Also, when a task is destroyed,
3325         ASSERT that it was completed, or that it had no synchronizer.
3326         (WebCore::Database::openAndVerifyVersion):
3327         (WebCore::Database::markAsDeletedAndClose):
3328         (WebCore::Database::tableNames):
3329         * storage/DatabaseTask.cpp:
3330         (WebCore::DatabaseTaskSynchronizer::DatabaseTaskSynchronizer):
3331         (WebCore::DatabaseTask::~DatabaseTask):
3332         (WebCore::DatabaseTask::performTask):
3333         * storage/DatabaseTask.h:
3334         (WebCore::DatabaseTaskSynchronizer::hasCheckedForTermination):
3335         (WebCore::DatabaseTaskSynchronizer::setHasCheckedForTermination):
3336         (WebCore::DatabaseTask::hasSynchronizer):
3337         (WebCore::DatabaseTask::hasCheckedForTermination):
3338         * storage/DatabaseThread.cpp:
3339         (WebCore::DatabaseThread::terminationRequested):
3340         (WebCore::DatabaseThread::scheduleTask):
3341         (WebCore::DatabaseThread::scheduleImmediateTask):
3342         * storage/DatabaseThread.h:
3343
3344 2010-08-10  Gavin Barraclough  <barraclough@apple.com>
3345
3346         Qt build fix.
3347
3348         * bridge/qt/qt_runtime.cpp:
3349         (JSC::Bindings::convertValueToQVariant):
3350
3351 2010-08-10  Jian Li  <jianli@chromium.org>
3352
3353         Fix more build break.
3354
3355         * bindings/v8/SerializedScriptValue.cpp:
3356         (WebCore::ZigZag::Reader::readBlob):
3357         (WebCore::ZigZag::Reader::readFile):
3358         * dom/ScriptExecutionContext.cpp:
3359         (WebCore::ScriptExecutionContext::~ScriptExecutionContext):
3360         (WebCore::ScriptExecutionContext::revokeBlobURL):
3361         * dom/ScriptExecutionContext.h:
3362         * html/Blob.cpp:
3363         (WebCore::Blob::slice):
3364
3365 2010-08-10  Gavin Barraclough  <barraclough@apple.com>
3366
3367         Rubber stamped by Sam Weinig
3368
3369         Bug 43817 - Remove UString::Rep
3370         UString::Rep has for a long time been replaced by UStringImpl (Rep
3371         remaining as a typedef).  UStringImpl has since been removed too
3372         (unified with StringImpl). Remove Rep, rename rep() to impl() and
3373         m_rep to m_impl.  Also add impl() method to Identifier, and rename
3374         its UString member from _ustring to m_string.
3375
3376         * bindings/js/JSDOMBinding.cpp:
3377         (WebCore::findAtomicString):
3378         * bindings/js/JSDOMBinding.h:
3379         (WebCore::ustringToString):
3380         (WebCore::identifierToString):
3381         (WebCore::ustringToAtomicString):
3382         (WebCore::identifierToAtomicString):
3383         * bindings/js/SerializedScriptValue.h:
3384         (WebCore::SerializedScriptValueData::SerializedScriptValueData):
3385         * bridge/IdentifierRep.cpp:
3386         (WebCore::IdentifierRep::get):
3387         * bridge/c/c_class.cpp:
3388         (JSC::Bindings::CClass::methodsNamed):
3389         (JSC::Bindings::CClass::fieldNamed):
3390         * bridge/jni/jsc/JavaClassJSC.cpp:
3391         (JavaClass::JavaClass):
3392         (JavaClass::methodsNamed):
3393         (JavaClass::fieldNamed):
3394         * bridge/jni/jsc/JavaStringJSC.h:
3395         (JSC::Bindings::JavaStringImpl::~JavaStringImpl):
3396         (JSC::Bindings::JavaStringImpl::init):
3397         (JSC::Bindings::JavaStringImpl::UTF8String):
3398         (JSC::Bindings::JavaStringImpl::uchars):
3399         (JSC::Bindings::JavaStringImpl::length):
3400         (JSC::Bindings::JavaStringImpl::uString):
3401         * bridge/jsc/BridgeJSC.h:
3402
3403 2010-08-10  Jian Li  <jianli@chromium.org>
3404
3405         Fix qt build break.
3406
3407         * html/BlobRegistryImpl.cpp:
3408         * html/BlobRegistryImpl.h:
3409         * html/BlobURL.cpp:
3410         * html/BlobURL.h:
3411         * platform/BlobRegistry.h:
3412
3413 2010-08-10  Jian Li  <jianli@chromium.org>
3414
3415         Reviewed by David Levin.
3416
3417         Add the support to register the blob data.
3418         https://bugs.webkit.org/show_bug.cgi?id=43600
3419
3420         This is the first step towards adding Blob URL support. The blob has
3421         an internal URL (used by FileReader) and public URLs (used by Blob.url).
3422         The URL and its associated data are managed by BlobRegistry interface.
3423
3424         This patch does not remove the usage of BlobItem. It will be removed
3425         when all the blob data support is hooked up and the new tests will be
3426         added then.
3427
3428         * CMakeLists.txt:
3429         * GNUmakefile.am:
3430         * WebCore.gypi:
3431         * WebCore.pro:
3432         * WebCore.vcproj/WebCore.vcproj:
3433         * WebCore.xcodeproj/project.pbxproj:
3434         * bindings/js/SerializedScriptValue.cpp:
3435         (WebCore::SerializedBlob::create):
3436         (WebCore::SerializedBlob::url):
3437         (WebCore::SerializedBlob::type):
3438         (WebCore::SerializedBlob::size):
3439         (WebCore::SerializedBlob::SerializedBlob):
3440         (WebCore::SerializedFile::create):
3441         (WebCore::SerializedFile::path):
3442         (WebCore::SerializedFile::url):
3443         (WebCore::SerializedFile::type):
3444         (WebCore::SerializedFile::SerializedFile):
3445         (WebCore::SerializedFileList::item):
3446         (WebCore::SerializedFileList::SerializedFileList):
3447         (WebCore::SerializedScriptValueData::SerializedScriptValueData):
3448         (WebCore::SharedSerializedData::asBlob):
3449         (WebCore::SharedSerializedData::asFile):
3450         (WebCore::SerializingTreeWalker::convertIfTerminal):
3451         (WebCore::DeserializingTreeWalker::convertIfTerminal):
3452         (WebCore::TeardownTreeWalker::convertIfTerminal):
3453         * bindings/js/SerializedScriptValue.h:
3454         (WebCore::SerializedScriptValueData::):
3455         (WebCore::SerializedScriptValueData::asString):
3456         (WebCore::SerializedScriptValueData::asBlob):
3457         (WebCore::SerializedScriptValueData::asFile):
3458         * bindings/v8/SerializedScriptValue.cpp:
3459         (WebCore::ZigZag::Writer::writeBlob):
3460         (WebCore::ZigZag::Writer::writeFile):
3461         (WebCore::ZigZag::Writer::writeFileList):
3462         (WebCore::ZigZag::Writer::doWriteUintHelper):
3463         (WebCore::ZigZag::Writer::doWriteUint32):
3464         (WebCore::ZigZag::Writer::doWriteUint64):
3465         (WebCore::ZigZag::Serializer::writeBlob):
3466         (WebCore::ZigZag::Serializer::writeFile):
3467         (WebCore::ZigZag::Reader::readBlob):
3468         (WebCore::ZigZag::Reader::readFile):
3469         (WebCore::ZigZag::Reader::readFileList):
3470         (WebCore::ZigZag::Reader::doReadUintHelper):
3471         (WebCore::ZigZag::Reader::doReadUint32):
3472         (WebCore::ZigZag::Reader::doReadUint64):
3473         * dom/ScriptExecutionContext.cpp:
3474         (WebCore::ScriptExecutionContext::~ScriptExecutionContext):
3475         (WebCore::ScriptExecutionContext::trackBlobURL):
3476         (WebCore::ScriptExecutionContext::revokeBlobURL):
3477         * dom/ScriptExecutionContext.h:
3478         * html/Blob.cpp:
3479         (WebCore::Blob::Blob):
3480         (WebCore::Blob::~Blob):
3481         (WebCore::Blob::createPublicURL):
3482         * html/Blob.h:
3483         (WebCore::Blob::create):
3484         (WebCore::Blob::url):
3485         * html/BlobRegistryImpl.cpp: Added.
3486         * html/BlobRegistryImpl.h: Added.
3487         * html/BlobStorageData.h: Added.
3488         * html/BlobURL.cpp: Added.
3489         * html/BlobURL.h: Added.
3490         * html/File.cpp:
3491         (WebCore::File::File):
3492         * html/File.h:
3493         (WebCore::File::create):
3494         * platform/BlobData.cpp: Added.
3495         * platform/BlobData.h: Added.
3496         * platform/BlobRegistry.h: Added.
3497
3498 2010-08-10  Adam Barth  <abarth@webkit.org>
3499
3500         Reviewed by Eric Seidel.
3501
3502         SegmentedString should keep track of how many characters it consumes
3503         https://bugs.webkit.org/show_bug.cgi?id=43765
3504
3505         The easiest way to keep track of how many characters we've consumed
3506         would be to increment a counter every time we advance, but that's too
3507         slow.  Instead, we keep track lazily and update our summary durning the
3508         slow case of advance (which is sufficiently rare).
3509
3510         There's some subtly to how this works w.r.t. "unconsuming" characters
3511         by pushing them back on the front of the segmented string.  This isn't
3512         really a "right answer" here because the notion of unconsuming input
3513         isn't present in the API.  This patch makes some assumptions about how
3514         clients of this class use its API.  In a future patch, we might want to
3515         rename some of the method names to make this more explicit.
3516
3517         * platform/text/SegmentedString.cpp:
3518         (WebCore::SegmentedString::operator=):
3519         (WebCore::SegmentedString::append):
3520         (WebCore::SegmentedString::prepend):
3521         (WebCore::SegmentedString::advanceSubstring):
3522         * platform/text/SegmentedString.h:
3523         (WebCore::SegmentedSubstring::numberOfCharactersConsumed):
3524         (WebCore::SegmentedString::SegmentedString):
3525         (WebCore::SegmentedString::numberOfCharactersConsumed):
3526
3527 2010-08-10  Gavin Barraclough  <barraclough@apple.com>
3528
3529         Rubber stamped by Sam Weinig.
3530         
3531         Bug 43816 - Remove UStringImpl
3532         The class was actually removed a long time ago, replaced by StringImpl.
3533         UStringImpl is just a typedef onto StringImpl.  Remove this.
3534
3535         * WebCore.xcodeproj/project.pbxproj:
3536         * bindings/js/JSDOMBinding.cpp:
3537         (WebCore::findAtomicString):
3538
3539 2010-08-09  Stephen White  <senorblanco@chromium.org>
3540
3541         Reviewed by David Levin.
3542
3543         Prefer the medium-quality (bilinear) image resampling for 2D canvas on
3544         Chromium.
3545         https://bugs.webkit.org/show_bug.cgi?id=43646
3546         
3547         This is what the accelerated path is going to do,
3548         so do it in the software path as well.
3549
3550         * html/HTMLCanvasElement.cpp:
3551         (WebCore::HTMLCanvasElement::createImageBuffer):
3552         * platform/graphics/GraphicsContext.h:
3553
3554 2010-08-10  Chris Fleizach  <cfleizach@apple.com>
3555
3556         Reviewed by Dave Hyatt.
3557
3558         Removing an element from an anonymous block causes crash
3559         https://bugs.webkit.org/show_bug.cgi?id=42309
3560
3561         There was a case where a continuation was added as a child, but if you asked
3562         that child who is your parent, it would return the wrong answer.
3563    
3564         The specific scenario was when a sibling of an element who was the start of a 
3565         continuation was present. Retrieving the parent object had then follow the sibling
3566         chain and then follow the originating continuation chain.
3567
3568         Test: accessibility/removed-anonymous-block-child-causes-crash.html
3569
3570         * accessibility/AccessibilityRenderObject.cpp:
3571         (WebCore::AccessibilityRenderObject::nextSibling):
3572             Fix erroneous comment
3573         (WebCore::nextContinuation):
3574         (WebCore::AccessibilityRenderObject::renderParentObject):
3575             Handle unhandled continuation case.
3576         (WebCore::AccessibilityRenderObject::addChildren):
3577             ASSERT that the parentObject() is the same when adding a new child.
3578
3579 2010-08-10  Abhishek Arya  <inferno@chromium.org>
3580
3581         Reviewed by David Hyatt.
3582
3583         Take checks for ruby base existence out of the ASSERTs.
3584         https://bugs.webkit.org/show_bug.cgi?id=43795
3585
3586         Test: fast/ruby/ruby-remove-no-base.html
3587
3588         * rendering/RenderRubyRun.cpp:
3589         (WebCore::RenderRubyRun::addChild):
3590         (WebCore::RenderRubyRun::removeChild):
3591
3592 2010-08-06  Zhenyao Mo  <zmo@google.com>
3593
3594         Reviewed by Dimitri Glazkov.
3595
3596         texture functions should gen INVALID_OPERATION if no texture is bound
3597         https://bugs.webkit.org/show_bug.cgi?id=42907
3598
3599         * html/canvas/WebGLRenderingContext.cpp:
3600         (WebCore::WebGLRenderingContext::copyTexImage2D): Check if a texture is bound to target.
3601         (WebCore::WebGLRenderingContext::copyTexSubImage2D): Ditto.
3602         (WebCore::WebGLRenderingContext::generateMipmap): Ditto.
3603         (WebCore::WebGLRenderingContext::getTexParameter): Ditto.
3604         (WebCore::WebGLRenderingContext::texImage2DBase): Ditto.
3605         (WebCore::WebGLRenderingContext::texParameter): Ditto.
3606         (WebCore::WebGLRenderingContext::texSubImage2DBase): Ditto.
3607         (WebCore::WebGLRenderingContext::validateTextureBinding): Check if target is valid and if a texture is bound to it.
3608         * html/canvas/WebGLRenderingContext.h: Declare validateTextureBinding().
3609
3610 2010-08-10  Patrick Gansterer  <paroga@paroga.com>
3611
3612         Reviewed by Sam Weinig.
3613
3614         [WINCE] Implement Path::currentPoint()
3615         https://bugs.webkit.org/show_bug.cgi?id=42927
3616
3617         * platform/graphics/wince/PathWince.cpp:
3618         (WebCore::Path::currentPoint):
3619
3620 2010-08-10  Ariya Hidayat  <ariya@sencha.com>
3621
3622         [Qt] Warning fix, remove reference to platform/text/StringImpl.h
3623
3624         * WebCore.pro:
3625
3626 2010-08-10  Alice Liu  <alice.liu@apple.com>
3627
3628         Chromium build fix attempt.  not reviewed
3629         
3630         * platform/text/TextBoundaries.cpp: use correct stringimplh include
3631
3632 2010-08-10  Jian Li  <jianli@chromium.org>
3633
3634         Chromium build fix.
3635
3636         * platform/graphics/chromium/FontPlatformDataChromiumWin.h:
3637         * platform/graphics/chromium/FontPlatformDataLinux.cpp:
3638
3639 2010-08-10  Johnny Ding  <jnd@chromium.org>
3640
3641         Reviewed by Adam Barth.
3642
3643         Change the ScriptController::processingUserGesture to static method
3644         and use dynamic(JSC binding)/entered(V8 binding) frame to check the user gesture.
3645         https://bugs.webkit.org/show_bug.cgi?id=42827.
3646
3647         Test: fast/events/popup-blocked-from-iframe-script.html
3648
3649         * WebCore.order:
3650         * bindings/js/JSDOMBinding.cpp:
3651         (WebCore::processingUserGesture):
3652         * bindings/js/JSDOMBinding.h:
3653         * bindings/js/JSDOMWindowCustom.cpp:
3654         (WebCore::JSDOMWindow::setLocation):
3655         (WebCore::createWindow):
3656         (WebCore::domWindowAllowPopUp):
3657         (WebCore::JSDOMWindow::open):
3658         (WebCore::JSDOMWindow::showModalDialog):
3659         * bindings/js/JSDocumentCustom.cpp:
3660         (WebCore::JSDocument::setLocation):
3661         * bindings/js/JSLocationCustom.cpp:
3662         (WebCore::navigateIfAllowed):
3663         (WebCore::JSLocation::reload):
3664         * bindings/js/ScriptController.cpp:
3665         (WebCore::ScriptController::processingUserGesture):
3666         * bindings/js/ScriptController.h:
3667         * bindings/scripts/CodeGeneratorJS.pm:
3668         * bindings/scripts/test/JS/JSTestObj.cpp:
3669         (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGesture):
3670         (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGestureASAD):
3671         * bindings/v8/ScriptController.cpp:
3672         (WebCore::ScriptController::processingUserGesture):
3673         (WebCore::ScriptController::anyPageIsProcessingUserGesture):
3674         * bindings/v8/ScriptController.h:
3675         * bindings/v8/specialization/V8BindingState.cpp:
3676         (WebCore::::processingUserGesture):
3677         * loader/FrameLoader.cpp:
3678         (WebCore::FrameLoader::isProcessingUserGesture):
3679
3680 2010-08-10  Gavin Barraclough  <barraclough@apple.com>
3681
3682         Chromium build fix
3683
3684         * platform/graphics/chromium/FontPlatformDataLinux.h:
3685
3686 2010-08-10  Gavin Barraclough  <barraclough@apple.com>
3687
3688         Rubber stamped by Sam Weinig.
3689
3690         Bug 43786 - Move AtomicStringHash from WebCore to WTF
3691         Also remove deprecated string headers from WebCore/platform/text.
3692
3693         * ForwardingHeaders/wtf/text/AtomicStringHash.h: Added.
3694         * GNUmakefile.am:
3695         * WebCore.gypi:
3696         * WebCore.pro:
3697         * WebCore.vcproj/WebCore.vcproj:
3698         * WebCore.xcodeproj/project.pbxproj:
3699         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
3700         * bindings/cpp/WebDOMHTMLCollectionCustom.cpp:
3701         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
3702         * bindings/js/JSClipboardCustom.cpp:
3703         * bindings/js/JSDOMApplicationCacheCustom.cpp:
3704         * bindings/js/JSDOMMimeTypeArrayCustom.cpp:
3705         * bindings/js/JSDOMPluginArrayCustom.cpp:
3706         * bindings/js/JSDOMPluginCustom.cpp:
3707         * bindings/js/JSDOMStringMapCustom.cpp:
3708         * bindings/js/JSDOMWindowCustom.cpp:
3709         * bindings/js/JSDataGridColumnListCustom.cpp:
3710         * bindings/js/JSHTMLAllCollectionCustom.cpp:
3711         * bindings/js/JSHTMLCollectionCustom.cpp:
3712         * bindings/js/JSMessagePortCustom.cpp:
3713         * bindings/js/JSNodeListCustom.cpp:
3714         * bindings/scripts/CodeGeneratorCPP.pm:
3715         * bindings/scripts/CodeGeneratorJS.pm:
3716         * bindings/scripts/CodeGeneratorV8.pm:
3717         * bindings/scripts/test/CPP/WebDOMTestCallback.cpp:
3718         * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
3719         * bindings/scripts/test/V8/V8TestInterface.h:
3720         * bindings/scripts/test/V8/V8TestObj.h:
3721         * bindings/v8/ScriptDebugServer.h:
3722         * bindings/v8/V8Binding.cpp:
3723         * bindings/v8/V8Binding.h:
3724         * bridge/jni/v8/JavaClassV8.h:
3725         * css/CSSFontFaceSource.h:
3726         * css/CSSFontSelector.cpp:
3727         * css/CSSFontSelector.h:
3728         * css/CSSNamespace.h:
3729         * css/CSSParser.cpp:
3730         * css/CSSParser.h:
3731         * css/CSSParserValues.h:
3732         * css/CSSStyleSelector.h:
3733         * css/CSSVariablesDeclaration.h:
3734         * css/MediaFeatureNames.h:
3735         * css/MediaQueryExp.h:
3736         * css/WebKitCSSKeyframesRule.h:
3737         * dom/CustomEvent.h:
3738         * dom/Document.cpp:
3739         * dom/Event.cpp:
3740         * dom/Event.h:
3741         * dom/EventNames.h:
3742         * dom/EventTarget.h:
3743         * dom/InputElement.h:
3744         * dom/MessagePort.cpp:
3745         * dom/MessagePort.h:
3746         * dom/NameNodeList.h:
3747         * dom/NodeRareData.h:
3748         * dom/QualifiedName.h:
3749         * dom/ScriptElement.cpp:
3750         * dom/SpaceSplitString.h:
3751         * dom/TagNodeList.h:
3752         * dom/XMLDocumentParser.h:
3753         * editing/EditorCommand.cpp:
3754         * history/mac/HistoryItemMac.mm:
3755         * html/BlobBuilder.cpp:
3756         * html/DataGridColumn.h:
3757         * html/DataGridColumnList.cpp:
3758         * html/HTMLDocument.h:
3759         * html/HTMLInputElement.cpp:
3760         * html/HTMLTokenizer.cpp:
3761         * html/HTMLTokenizer.h:
3762         * html/LegacyPreloadScanner.cpp:
3763         * html/LegacyPreloadScanner.h:
3764         * inspector/InspectorCSSStore.h:
3765         * inspector/InspectorController.h:
3766         * inspector/InspectorDOMAgent.cpp:
3767         * inspector/InspectorDOMAgent.h:
3768         * inspector/InspectorDebuggerAgent.h:
3769         * inspector/InspectorValues.h:
3770         * loader/Cache.h:
3771         * loader/CrossOriginAccessControl.cpp:
3772         * loader/CrossOriginPreflightResultCache.h:
3773         * loader/DocLoader.h:
3774         * loader/ImageLoader.h:
3775         * loader/appcache/ApplicationCache.h:
3776         * loader/appcache/ApplicationCacheStorage.h:
3777         * loader/appcache/DOMApplicationCache.h:
3778         * loader/icon/IconDatabase.h:
3779         * loader/icon/IconRecord.h:
3780         * loader/loader.h:
3781         * notifications/Notification.h:
3782         * page/FrameTree.h:
3783         * page/Page.cpp:
3784         * page/PageGroup.h:
3785         * page/SecurityOrigin.h:
3786         * page/Settings.h:
3787         * page/WindowFeatures.cpp:
3788         * page/animation/AnimationBase.h:
3789         * page/animation/AnimationControllerPrivate.h:
3790         * page/animation/CompositeAnimation.h:
3791         * platform/Cookie.h:
3792         * platform/KURL.cpp:
3793         * platform/KURLGoogle.cpp:
3794         * platform/KURLHash.h:
3795         * platform/Length.cpp:
3796         * platform/LinkHash.cpp:
3797         * platform/LinkHash.h:
3798         * platform/MIMETypeRegistry.cpp:
3799         * platform/MIMETypeRegistry.h:
3800         * platform/SchemeRegistry.h:
3801         * platform/ThreadGlobalData.cpp:
3802         * platform/ThreadGlobalData.h:
3803         * platform/cf/BinaryPropertyList.cpp:
3804         * platform/chromium/SearchPopupMenuChromium.cpp:
3805         * platform/efl/ClipboardEfl.cpp:
3806         * platform/efl/CookieJarEfl.cpp:
3807         * platform/efl/PlatformKeyboardEventEfl.cpp:
3808         * platform/graphics/FontCache.cpp:
3809         * platform/graphics/FontFamily.h:
3810         * platform/graphics/MediaPlayer.h:
3811         * platform/graphics/cg/ImageSourceCGWin.cpp:
3812         * platform/graphics/chromium/FontCacheChromiumWin.cpp:
3813         * platform/graphics/chromium/FontCacheLinux.cpp:
3814         * platform/graphics/chromium/FontUtilsChromiumWin.cpp:
3815         * platform/graphics/chromium/LayerChromium.h:
3816         * platform/graphics/filters/Filter.h:
3817         * platform/graphics/mac/FontPlatformData.h:
3818         * platform/graphics/mac/GraphicsLayerCA.h:
3819         * platform/graphics/qt/FontCacheQt.cpp:
3820         * platform/graphics/win/FontCacheWin.cpp:
3821         * platform/graphics/win/FontPlatformDataCGWin.cpp:
3822         * platform/graphics/win/FontPlatformDataCairoWin.cpp:
3823         * platform/graphics/win/FontPlatformDataWin.cpp:
3824         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
3825         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
3826         * platform/graphics/win/WKCACFLayer.h:
3827         * platform/graphics/wince/FontPlatformData.cpp:
3828         * platform/graphics/wx/FontPlatformData.h:
3829         * platform/gtk/ClipboardGtk.cpp:
3830         * platform/gtk/DataObjectGtk.h:
3831         * platform/haiku/ClipboardHaiku.cpp:
3832         * platform/haiku/CookieJarHaiku.cpp:
3833         * platform/haiku/SearchPopupMenuHaiku.cpp:
3834         * platform/mac/SearchPopupMenuMac.mm:
3835         * platform/mac/ThreadCheck.mm:
3836         * platform/network/CredentialStorage.cpp:
3837         * platform/network/HTTPHeaderMap.h:
3838         * platform/network/cf/DNSCFNet.cpp:
3839         * platform/network/curl/CookieJarCurl.cpp:
3840         * platform/qt/ClipboardQt.cpp:
3841         * platform/text/AtomicString.h: Removed.
3842         * platform/text/AtomicStringHash.h: Removed.
3843         * platform/text/AtomicStringImpl.h: Removed.
3844         * platform/text/AtomicStringKeyedMRUCache.h:
3845         * platform/text/StringBuilder.cpp:
3846         * platform/text/StringHash.h: Removed.
3847         * platform/text/StringImpl.h: Removed.
3848         * platform/text/TextCodecLatin1.cpp:
3849         * platform/text/TextCodecUTF16.cpp:
3850         * platform/text/TextCodecUserDefined.cpp:
3851         * platform/text/cf/HyphenationCF.cpp:
3852         * platform/text/cf/StringImplCF.cpp:
3853         * platform/text/mac/HyphenationMac.mm:
3854         * platform/text/mac/StringImplMac.mm:
3855         * platform/text/transcoder/FontTranscoder.h:
3856         * platform/text/wince/TextCodecWinCE.cpp:
3857         * platform/win/BString.cpp:
3858         * platform/win/ClipboardWin.cpp:
3859         * platform/win/SearchPopupMenuWin.cpp:
3860         * platform/wince/SearchPopupMenuWince.cpp:
3861         * platform/wx/ClipboardWx.cpp:
3862         * plugins/DOMMimeTypeArray.cpp:
3863         * plugins/DOMPlugin.cpp:
3864         * plugins/DOMPluginArray.cpp:
3865         * plugins/PluginDatabase.h:
3866         * plugins/PluginPackage.h:
3867         * plugins/PluginStream.h:
3868         * rendering/RenderApplet.h:
3869         * rendering/RenderText.cpp:
3870         * rendering/style/BindingURI.h:
3871         * rendering/style/ContentData.cpp:
3872         * rendering/style/CounterContent.h:
3873         * rendering/style/CounterDirectives.h:
3874         * rendering/style/KeyframeList.h:
3875         * rendering/style/StyleRareInheritedData.h:
3876         * storage/AbstractDatabase.cpp:
3877         * storage/DatabaseAuthorizer.h:
3878         * storage/DatabaseTracker.h:
3879         * storage/IDBDatabaseBackendImpl.h:
3880         * storage/IDBFactoryBackendImpl.h:
3881         * storage/IDBObjectStoreBackendImpl.h:
3882         * storage/OriginQuotaManager.h:
3883         * storage/OriginUsageRecord.h:
3884         * storage/SQLTransactionCoordinator.h:
3885         * storage/StorageAreaSync.h:
3886         * storage/StorageMap.h:
3887         * storage/StorageNamespaceImpl.cpp:
3888         * storage/chromium/QuotaTracker.h:
3889         * svg/SVGAltGlyphElement.h:
3890         * svg/SVGDocumentExtensions.cpp:
3891         * svg/SVGDocumentExtensions.h:
3892         * svg/SVGFitToViewBox.cpp:
3893         * svg/SVGLangSpace.h:
3894         * svg/animation/SMILTimeContainer.h:
3895         * svg/graphics/filters/SVGFilterBuilder.h:
3896         * websockets/WebSocket.h:
3897         * websockets/WebSocketChannel.cpp:
3898         * websockets/WebSocketHandshake.cpp:
3899         * websockets/WebSocketHandshakeResponse.cpp:
3900         * wml/WMLPageState.h:
3901         * workers/AbstractWorker.h:
3902         * workers/DefaultSharedWorkerRepository.h:
3903         * workers/Worker.h:
3904         * workers/WorkerContext.h:
3905         * xml/XMLHttpRequest.h:
3906         * xml/XMLHttpRequestUpload.cpp:
3907         * xml/XMLHttpRequestUpload.h:
3908         * xml/XPathExpressionNode.h:
3909         * xml/XPathNamespace.h:
3910         * xml/XPathParser.cpp:
3911         * xml/XSLTProcessor.h:
3912
3913 2010-08-10  Pavel Feldman  <pfeldman@chromium.org>
3914
3915         Not reviewed. Adding changes that escaped from r65072.
3916
3917         Web Inspector: move database processing to native layer.
3918         https://bugs.webkit.org/show_bug.cgi?id=43788
3919
3920         * inspector/front-end/InspectorBackendStub.js:
3921         (WebInspector.InspectorBackendStub):
3922         * inspector/front-end/StoragePanel.js:
3923         (WebInspector.StoragePanel.prototype._genericViewSetup):
3924
3925 2010-08-10  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
3926
3927         Reviewed by Xan Lopez.
3928
3929         [GTK] Inputs of type 'search' have weird looking checkboxes instead of search/clear icons
3930         https://bugs.webkit.org/show_bug.cgi?id=43760
3931
3932         Draw appropriate GTK+ stock images for search/clear icons in search entries.
3933
3934         * platform/gtk/RenderThemeGtk.cpp:
3935         (WebCore::RenderThemeGtk::paintSearchFieldResultsButton):
3936         (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration):
3937         (WebCore::RenderThemeGtk::paintSearchFieldCancelButton):
3938
3939 2010-08-10  Pavel Feldman  <pfeldman@chromium.org>
3940
3941         Not reviewed. Qt build fix, follow up for r65072.
3942
3943         * inspector/InspectorController.cpp:
3944         (WebCore::InspectorController::releaseFrontendLifetimeAgents):
3945
3946 2010-08-10  Pavel Feldman  <pfeldman@chromium.org>
3947
3948         Reviewed by Yury Semikhatsky.
3949
3950         Web Inspector: move database processing to native layer.
3951
3952         https://bugs.webkit.org/show_bug.cgi?id=43788
3953
3954         * English.lproj/localizedStrings.js:
3955         * WebCore.gypi:
3956         * bindings/js/JSInjectedScriptHostCustom.cpp:
3957         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
3958         * inspector/CodeGeneratorInspector.pm:
3959         * inspector/InjectedScript.cpp:
3960         (WebCore::InjectedScript::dispatch):
3961         * inspector/InjectedScript.h:
3962         * inspector/InjectedScriptHost.cpp:
3963         * inspector/InjectedScriptHost.h:
3964         * inspector/InjectedScriptHost.idl:
3965         * inspector/Inspector.idl:
3966         * inspector/InspectorBackend.cpp:
3967         (WebCore::InspectorBackend::dispatchOnInjectedScript):
3968         (WebCore::InspectorBackend::executeSQL):
3969         * inspector/InspectorBackend.h:
3970         * inspector/InspectorController.cpp:
3971         (WebCore::InspectorController::connectFrontend):
3972         (WebCore::InspectorController::releaseFrontendLifetimeAgents):
3973         * inspector/InspectorController.h:
3974         * inspector/InspectorDebuggerAgent.h:
3975         * inspector/InspectorStorageAgent.cpp: Added.
3976         (WebCore::):
3977         (WebCore::InspectorStorageAgent::InspectorStorageAgent):
3978         (WebCore::InspectorStorageAgent::~InspectorStorageAgent):
3979         (WebCore::InspectorStorageAgent::executeSQL):
3980         (WebCore::InspectorStorageAgent::clearFrontend):
3981         * inspector/InspectorStorageAgent.h: Added.
3982         (WebCore::InspectorStorageAgent::create):
3983         (WebCore::InspectorStorageAgent::frontend):
3984         * inspector/front-end/Database.js:
3985         (WebInspector.Database.prototype.executeSql):
3986         (WebInspector.sqlTransactionSucceeded):
3987         (WebInspector.sqlTransactionFailed):
3988         * inspector/front-end/DatabaseQueryView.js:
3989         (WebInspector.DatabaseQueryView.prototype._queryFinished):
3990         (WebInspector.DatabaseQueryView.prototype._queryError):
3991         * inspector/front-end/DatabaseTableView.js:
3992         (WebInspector.DatabaseTableView.prototype._queryFinished):
3993         * inspector/front-end/InjectedScript.js:
3994         * inspector/front-end/InjectedScriptAccess.js:
3995         (InjectedScriptAccess._installHandler.InjectedScriptAccess.prototype.methodName):
3996         (InjectedScriptAccess._installHandler):
3997         * inspector/front-end/StoragePanel.js:
3998         (WebInspector.StoragePanel.prototype.dataGridForResult):
3999
4000 2010-08-10  Steve Block  <steveblock@google.com>
4001
4002         Reviewed by Jeremy Orlow.
4003
4004         [V8] DeviceMotionEvent can not be used from JavaScript
4005         https://bugs.webkit.org/show_bug.cgi?id=43785
4006
4007         This is tested by the existing tests fast/dom/DeviceMotion/create-event.html
4008         and fast/dom/DeviceMotion/optional-event-properties.html.
4009
4010         * bindings/v8/custom/V8EventCustom.cpp:
4011         (WebCore::toV8):
4012
4013 2010-08-10  Balazs Kelemen  <kb@inf.u-szeged.hu>
4014
4015         Reviewed by Antonio Gomes.
4016
4017         [Qt] Build WebKit2 into a static lib
4018
4019         https://bugs.webkit.org/show_bug.cgi?id=43621
4020
4021         Just build changes so no new tests.
4022
4023         * WebCore.pri: Moved feature detection logic into features.pri since we need this in WebKit2.pro as well.
4024         * WebCore.pro: Moved the specification of the WebKit2 build to WebKit2.pro. Link against the static lib.
4025         * features.pri: Added.
4026
4027 2010-08-10  Yury Semikhatsky  <yurys@chromium.org>
4028
4029         Reviewed by Pavel Feldman.
4030
4031         Web Inspector, Chromium: reloading of inspected page hits assert in InspectorController::enableDebuggerFromFrontend()
4032         https://bugs.webkit.org/show_bug.cgi?id=43780
4033
4034         * inspector/CodeGeneratorInspector.pm:
4035         * inspector/InspectorController.cpp:
4036         (WebCore::InspectorController::enableDebuggerFromFrontend):
4037         * inspector/InspectorController.h:
4038         (WebCore::InspectorController::hasFrontend):
4039         * inspector/InspectorDebuggerAgent.cpp:
4040         (WebCore::InspectorDebuggerAgent::create):
4041         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
4042         (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsState):
4043         (WebCore::InspectorDebuggerAgent::didParseSource):
4044         (WebCore::InspectorDebuggerAgent::failedToParseSource):
4045         (WebCore::InspectorDebuggerAgent::didPause):
4046         (WebCore::InspectorDebuggerAgent::didContinue):
4047         * inspector/InspectorDebuggerAgent.h:
4048
4049 2010-08-10  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
4050
4051         Reviewed by Simon Hausmann.
4052
4053         Make sure NPAPI plugins get an initial setNPWindow on Mac
4054
4055         https://bugs.webkit.org/show_bug.cgi?id=43782
4056
4057         * plugins/mac/PluginViewMac.mm:
4058
4059 2010-08-10  Dirk Schulze  <krit@webkit.org>
4060
4061         Reviewed by Nikolas Zimmermann.
4062
4063         Use SVGPathParser to create SVG paths and to perform path animations
4064         https://bugs.webkit.org/show_bug.cgi?id=43696
4065
4066         Removed toString() functions in all SVGPathSeg* objects as well as toPath() in SVGPathSegList.
4067         These hacks were used to create a SVG path data string or a platform path from a SVGPathSegList.
4068         Use the new SVGPathParser instead.
4069
4070         Doesn't affect any tests.
4071
4072         * svg/SVGAnimateElement.cpp:
4073         (WebCore::SVGAnimateElement::applyResultsToTarget):
4074         * svg/SVGPathElement.cpp:
4075         (WebCore::SVGPathElement::toPathData):
4076         * svg/SVGPathParserFactory.cpp:
4077         (WebCore::SVGPathParserFactory::buildPathFromSVGPathSegList):
4078         (WebCore::SVGPathParserFactory::buildStringFromByteStream):
4079         (WebCore::SVGPathParserFactory::buildStringFromSVGPathSegList):
4080         * svg/SVGPathParserFactory.h:
4081         * svg/SVGPathSeg.cpp:
4082         * svg/SVGPathSeg.h:
4083         * svg/SVGPathSegArc.cpp:
4084         * svg/SVGPathSegArc.h:
4085         * svg/SVGPathSegClosePath.h:
4086         (WebCore::SVGPathSegClosePath::pathSegTypeAsLetter):
4087         * svg/SVGPathSegCurvetoCubic.h:
4088         * svg/SVGPathSegCurvetoCubicSmooth.h:
4089         * svg/SVGPathSegCurvetoQuadratic.h:
4090         * svg/SVGPathSegLinetoHorizontal.h:
4091         * svg/SVGPathSegLinetoVertical.h:
4092         * svg/SVGPathSegList.cpp:
4093         (WebCore::SVGPathSegList::getPathSegAtLength):
4094         * svg/SVGPathSegList.h:
4095
4096 2010-08-10  Sheriff Bot  <webkit.review.bot@gmail.com>
4097
4098         Unreviewed, rolling out r65056.
4099         http://trac.webkit.org/changeset/65056
4100         https://bugs.webkit.org/show_bug.cgi?id=43773
4101
4102         "Clearly I missed something.  I'm too tired to try and fix
4103         now.  Will re-land in the morning." (Requested by eseidel on
4104         #webkit).
4105
4106         * html/HTMLConstructionSite.cpp:
4107         (WebCore::HTMLConstructionSite::attach):
4108         * html/HTMLElement.cpp:
4109         (WebCore::HTMLElement::insertAdjacentHTML):
4110         * html/HTMLTreeBuilder.cpp:
4111         (WebCore::HTMLTreeBuilder::processEndTagForInCell):
4112
4113 2010-08-10  Yoshiki Hayashi  <yhayashi@google.com>
4114
4115         Reviewed by Kent Tamura.
4116
4117         Iterate over :first-letter so that it will be included in innerText.
4118         https://bugs.webkit.org/show_bug.cgi?id=39863
4119
4120         Test: fast/dom/inner-text-first-letter.html
4121
4122         * editing/TextIterator.cpp:
4123         (WebCore::TextIterator::TextIterator):
4124         (WebCore::TextIterator::advance):
4125         (WebCore::TextIterator::handleTextNode):
4126         (WebCore::TextIterator::handleTextBox):
4127         (WebCore::TextIterator::emitText):
4128         * editing/TextIterator.h:
4129
4130 2010-08-10  Kent Tamura  <tkent@chromium.org>
4131
4132         Reviewed by Darin Adler.
4133
4134         Fix crashes by SelectionController::modify().
4135         https://bugs.webkit.org/show_bug.cgi?id=43032
4136
4137         Test: editing/selection/selection-modify-crash.html
4138
4139         * editing/visible_units.cpp:
4140         (WebCore::endOfDocument): Add NULL-check for document()->documentElement().
4141
4142 2010-08-10  Dirk Schulze  <krit@webkit.org>
4143
4144         Reviewed by Nikolas Zimmermann.
4145
4146         Add missing SVGPathSegList source for SVGPathParser
4147         https://bugs.webkit.org/show_bug.cgi?id=43691
4148
4149         Added SVGPathSegListSource to parse normalized or unaltered SVGPathSegLists and transform
4150         them to either a SVG path string, or a SVGPathByteStream. This will be needed to synchronize
4151         all SVGPathSegLists and the SVG path string of the 'd' attribute.
4152         Refactored SVGPathSource code, to read concrete path segments instead of type/flag/coordinates
4153         from the data sources. This is a further abstraction and seperates the reading of content from
4154         the parsing and interpreting.
4155
4156         Doesn't affect any tests.
4157
4158         * Android.mk:
4159         * CMakeLists.txt:
4160         * GNUmakefile.am:
4161         * WebCore.gypi:
4162         * WebCore.pro:
4163         * WebCore.vcproj/WebCore.vcproj:
4164         * WebCore.xcodeproj/project.pbxproj:
4165         * svg/SVGAllInOne.cpp:
4166         * svg/SVGPathByteStreamSource.cpp:
4167         (WebCore::SVGPathByteStreamSource::parseSVGSegmentType):
4168         (WebCore::SVGPathByteStreamSource::nextCommand):
4169         (WebCore::SVGPathByteStreamSource::parseMoveToSegment):
4170         (WebCore::SVGPathByteStreamSource::parseLineToSegment):
4171         (WebCore::SVGPathByteStreamSource::parseLineToHorizontalSegment):
4172         (WebCore::SVGPathByteStreamSource::parseLineToVerticalSegment):
4173         (WebCore::SVGPathByteStreamSource::parseCurveToCubicSegment):
4174         (WebCore::SVGPathByteStreamSource::parseCurveToCubicSmoothSegment):
4175         (WebCore::SVGPathByteStreamSource::parseCurveToQuadraticSegment):
4176         (WebCore::SVGPathByteStreamSource::parseCurveToQuadraticSmoothSegment):
4177         (WebCore::SVGPathByteStreamSource::parseArcToSegment):
4178         * svg/SVGPathByteStreamSource.h:
4179         (WebCore::SVGPathByteStreamSource::moveToNextToken):
4180         * svg/SVGPathParser.cpp:
4181         (WebCore::SVGPathParser::parseMoveToSegment):
4182         (WebCore::SVGPathParser::parseLineToSegment):
4183         (WebCore::SVGPathParser::parseLineToHorizontalSegment):
4184         (WebCore::SVGPathParser::parseLineToVerticalSegment):
4185         (WebCore::SVGPathParser::parseCurveToCubicSegment):
4186         (WebCore::SVGPathParser::parseCurveToCubicSmoothSegment):
4187         (WebCore::SVGPathParser::parseCurveToQuadraticSegment):
4188         (WebCore::SVGPathParser::parseCurveToQuadraticSmoothSegment):
4189         (WebCore::SVGPathParser::parseArcToSegment):
4190         * svg/SVGPathSegListSource.cpp: Added.
4191         (WebCore::SVGPathSegListSource::SVGPathSegListSource):
4192         (WebCore::SVGPathSegListSource::~SVGPathSegListSource):
4193         (WebCore::SVGPathSegListSource::hasMoreData):
4194         (WebCore::SVGPathSegListSource::parseSVGSegmentType):
4195         (WebCore::SVGPathSegListSource::nextCommand):
4196         (WebCore::SVGPathSegListSource::parseMoveToSegment):
4197         (WebCore::SVGPathSegListSource::parseLineToSegment):
4198         (WebCore::SVGPathSegListSource::parseLineToHorizontalSegment):
4199         (WebCore::SVGPathSegListSource::parseLineToVerticalSegment):
4200         (WebCore::SVGPathSegListSource::parseCurveToCubicSegment):
4201         (WebCore::SVGPathSegListSource::parseCurveToCubicSmoothSegment):
4202         (WebCore::SVGPathSegListSource::parseCurveToQuadraticSegment):
4203         (WebCore::SVGPathSegListSource::parseCurveToQuadraticSmoothSegment):
4204         (WebCore::SVGPathSegListSource::parseArcToSegment):
4205         * svg/SVGPathSegListSource.h: Added.
4206         (WebCore::SVGPathSegListSource::create):
4207         (WebCore::SVGPathSegListSource::moveToNextToken):
4208         * svg/SVGPathSource.h:
4209         * svg/SVGPathStringSource.cpp:
4210         (WebCore::SVGPathStringSource::parseMoveToSegment):
4211         (WebCore::SVGPathStringSource::parseLineToSegment):
4212         (WebCore::SVGPathStringSource::parseLineToHorizontalSegment):
4213         (WebCore::SVGPathStringSource::parseLineToVerticalSegment):
4214         (WebCore::SVGPathStringSource::parseCurveToCubicSegment):
4215         (WebCore::SVGPathStringSource::parseCurveToCubicSmoothSegment):
4216         (WebCore::SVGPathStringSource::parseCurveToQuadraticSegment):
4217         (WebCore::SVGPathStringSource::parseCurveToQuadraticSmoothSegment):
4218         (WebCore::SVGPathStringSource::parseArcToSegment):
4219         * svg/SVGPathStringSource.h:
4220
4221 2010-08-09  Ilya Tikhonovsky  <loislo@chromium.org>
4222
4223         Reviewed by Yury Semikhatsky.
4224
4225         Web Inspector: small refactoring for CodeGeneratorInspector.
4226         A number of push calls were replaced by embedded text.
4227         Just for improve code readability.
4228         https://bugs.webkit.org/show_bug.cgi?id=43770
4229
4230         * inspector/CodeGeneratorInspector.pm:
4231
4232 2010-08-09  Eric Seidel  <eric@webkit.org>
4233
4234         Reviewed by Adam Barth.
4235
4236         Fix three ASSERTs hit with the HTML5 TreeBuilder in fragment mode
4237         https://bugs.webkit.org/show_bug.cgi?id=43762
4238
4239         In fixing the insertAdjacentHTML I had to make small changes to
4240         the error logic, which ended up bringing us closer to HTML5.
4241
4242         Test: fast/dom/HTMLElement/insertAdjacentHTML-errors.html