2009-08-18 Maciej Stachowiak <mjs@apple.com>
[WebKit.git] / WebCore / ChangeLog
1 2009-08-18  Maciej Stachowiak  <mjs@apple.com>
2
3         Reviewed by Oliver Hunt.
4
5         convert FormatBlock candidate tag list from if chain to hash lookup
6         https://bugs.webkit.org/show_bug.cgi?id=28448
7
8         No behavior change, just cleanup.
9
10         * editing/htmlediting.cpp:
11         (WebCore::validBlockTag):
12         * editing/htmlediting.h:
13
14 2009-08-19  Mike Fenton  <mike.fenton@torchmobile.com>
15
16         Reviewed by Eric Seidel.
17
18         Update GraphicsContextSkia's version of drawLine to make use of the shared
19         adjustLineToPixelBoundaries function and elimination overlapping code.
20
21         https://bugs.webkit.org/show_bug.cgi?id=28268
22
23         * platform/graphics/skia/GraphicsContextSkia.cpp:
24         (WebCore::GraphicsContext::drawLine):
25
26 2009-08-18  Mike Fenton  <mike.fenton@torchmobile.com>
27
28         Reviewed by Eric Seidel.
29
30         Style fixes based on cpp_style.py and WebKit Style guide for
31         GraphicsContextSkia.cpp
32
33         https://bugs.webkit.org/show_bug.cgi?id=28268
34
35         * platform/graphics/skia/GraphicsContextSkia.cpp:
36         (WebCore::GraphicsContext::addInnerRoundedRectClip):
37         (WebCore::GraphicsContext::drawFocusRing):
38         (WebCore::GraphicsContext::roundToDevicePixels):
39         (WebCore::GraphicsContext::setLineDash):
40         (WebCore::GraphicsContext::setPlatformShadow):
41
42 2009-08-18  Alexey Proskuryakov  <ap@webkit.org>
43
44         Reviewed by Maciej Stachowiak.
45
46         https://bugs.webkit.org/show_bug.cgi?id=28446
47         Custom request headers shouldn't be sent with cross-origin preflight request
48
49         Tests: http/tests/xmlhttprequest/access-control-preflight-headers-async.html
50                http/tests/xmlhttprequest/access-control-preflight-headers-sync.html
51
52         * loader/DocumentThreadableLoader.cpp:
53         (WebCore::DocumentThreadableLoader::makeCrossOriginAccessRequestWithPreflight):
54         Don't copy headers to OPTIONS request. The spec is vague about this, but the intention was
55         that they shouldn't be sent, and Firefox doesn't send them.
56
57 2009-08-18  John Gregg  <johnnyg@google.com>
58
59         Reviewed by Dimitri Glazkov.
60
61         V8 Bindings for Desktop Notifications feature.
62         https://bugs.webkit.org/show_bug.cgi?id=28271
63
64         * WebCore.gypi: 
65         added notification files to build (all still behind a flag that's not on)
66         * bindings/scripts/CodeGeneratorV8.pm:
67         added special case in DOMWindow/AppCache style for named event handlers
68         * bindings/v8/DOMObjectsInclude.h:
69         * bindings/v8/DerivedSourcesAllInOne.cpp:
70         * bindings/v8/V8DOMWrapper.cpp:
71         (WebCore::V8DOMWrapper::getTemplate):
72         (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
73         * bindings/v8/V8Index.cpp:
74         * bindings/v8/V8Index.h:
75         * bindings/v8/V8Proxy.h:
76         * bindings/v8/WorkerContextExecutionProxy.cpp:
77         (WebCore::WorkerContextExecutionProxy::convertToV8Object):
78         * bindings/v8/custom/V8CustomBinding.h:
79         * bindings/v8/custom/V8NotificationCenterCustom.cpp: Added.
80         * notifications/Notification.h:
81         made event handler routines public (as they are in DOMWindow, eg) for
82         binding access.
83         * notifications/NotificationCenter.idl:
84         needed to make methods V8Custom to support different behaviors in 
85         worker/page context in chromium. 
86         * workers/WorkerThread.h:
87         (WebCore::WorkerThread::getNotificationPresenter):
88         (WebCore::WorkerThread::setNotificationPresenter):
89         needed to make these methods public as well so chromium can inject
90         the notification presenter into the worker thread.
91
92 2009-08-13  Maciej Stachowiak  <mjs@apple.com>
93
94         Reviewed by Sam Weinig.
95
96         - Implement HTML5 nav element
97         https://bugs.webkit.org/show_bug.cgi?id=27937
98
99         <nav> should behave essentially the same as <div> for parsing
100         etc. This is implemented by the changes below.
101         
102         Tests: fast/html/nav-element.html
103
104         * css/html.css:
105         * editing/htmlediting.cpp:
106         (WebCore::validBlockTag):
107         * html/HTMLElement.cpp:
108         (WebCore::HTMLElement::tagPriority):
109         (WebCore::blockTagList):
110         * html/HTMLParser.cpp:
111         (WebCore::HTMLParser::getNode):
112         * html/HTMLTagNames.in:
113
114 2009-08-18  Anders Carlsson  <andersca@apple.com>
115
116         Reviewed by Adele Peterson, David Hyatt and Dan Bernstein.
117
118         - Fix <rdar://problem/7152727>
119
120         If a page has custom scroll bars, they will not update correctly when the window is activated/deactivated.
121         
122         * page/FrameView.cpp:
123         (WebCore::FrameView::hasCustomScrollbars):
124         Check if the frame view or any of its subviews have custom scroll bars.
125         
126         (WebCore::FrameView::updateControlTints):
127         Go ahead and update control tints if the frame view has custom scroll bars.
128         
129         * page/FrameView.h:
130
131 2009-08-18  Mark Rowe  <mrowe@apple.com>
132
133         Roll out r47477 as it introduced assertion failures and crashes on the build bots.
134
135         * GNUmakefile.am:
136         * WebCore.gypi:
137         * WebCore.pro:
138         * WebCore.vcproj/WebCore.vcproj:
139         * WebCore.xcodeproj/project.pbxproj:
140         * WebCoreSources.bkl:
141         * storage/Database.cpp:
142         * storage/Database.h:
143         * storage/DatabaseThread.cpp:
144         (WebCore::DatabaseThread::DatabaseThread):
145         * storage/DatabaseThread.h:
146         * storage/SQLTransaction.cpp:
147         (WebCore::SQLTransaction::runCurrentStatement):
148         (WebCore::SQLTransaction::deliverQuotaIncreaseCallback):
149         (WebCore::SQLTransaction::postflightAndCommit):
150         * storage/SQLTransactionClient.cpp: Removed.
151         * storage/SQLTransactionClient.h: Removed.
152
153 2009-08-18  Maxime Simon  <simon.maxime@gmail.com>
154
155         Reviewed by Eric Seidel.
156
157         [Haiku] Adding the SharedTimer file for WebCore.
158         https://bugs.webkit.org/show_bug.cgi?id=28126
159
160         * platform/haiku/SharedTimerHaiku.cpp: Added.
161         (WebCore::):
162         (WebCore::SharedTimerHaiku::SharedTimerHaiku):
163         (WebCore::SharedTimerHaiku::~SharedTimerHaiku):
164         (WebCore::SharedTimerHaiku::instance):
165         (WebCore::SharedTimerHaiku::start):
166         (WebCore::SharedTimerHaiku::stop):
167         (WebCore::SharedTimerHaiku::Filter):
168         (WebCore::setSharedTimerFiredFunction):
169         (WebCore::setSharedTimerFireTime):
170         (WebCore::stopSharedTimer):
171
172 2009-08-18  Mark Rowe  <mrowe@apple.com>
173
174         Release build fix.
175
176         * xml/XMLHttpRequest.cpp: Sprinkle some #ifndef NDEBUG around.
177         (WebCore::XMLHttpRequest::XMLHttpRequest):
178         (WebCore::XMLHttpRequest::~XMLHttpRequest):
179
180 2009-08-18  Aaron Boodman  <aa@chromium.org>
181
182         Reviewed by Maciej Stachowiak.
183
184         https://bugs.webkit.org/show_bug.cgi?id=28412: Leak of WebCore::XMLHttpRequest object during layout tests.
185
186         No new tests: Already covered by existing tests.
187
188         * xml/XMLHttpRequest.cpp:
189         (WebCore::XMLHttpRequest::XMLHttpRequest): Add instrumentation for this kind of leak.
190         (WebCore::XMLHttpRequest::~XMLHttpRequest): Ditto.
191         (WebCore::XMLHttpRequest::createRequest): Only setPendingActivity() if we actually started a request. Also,
192         restore a call to nonCacheRequestInFlight() that got lost in a recent refactor.
193
194 2009-08-18  Dumitru Daniliuc  <dumi@chromium.org>
195
196         Reviewed by Dimitri Glazkov.
197
198         Added a client to SQLTransaction. In addition to being a place to
199         get notifications about certain events in a transaction, it is
200         also an abstraction layer that allows us to plug in different
201         implementations for each port for how transactions interract with
202         the main DB. For example, WebCore's default implementation will
203         make direct calls to DatabaseTracker's methods. At the same time,
204         Chromium's implementation will send IPCs to the browser process
205         whenever a transaction needs something from the main DB.
206
207         All storage tests pass.
208
209         https://bugs.webkit.org/show_bug.cgi?id=27967
210
211         * GNUmakefile.am:
212         * WebCore.gypi:
213         * WebCore.pro:
214         * WebCore.vcproj/WebCore.vcproj:
215         * WebCore.xcodeproj/project.pbxproj:
216         * WebCoreSources.bkl:
217         * storage/Database.cpp:
218         (WebCore::Database::transactionClient):
219         * storage/Database.h:
220         * storage/DatabaseThread.cpp:
221         (WebCore::DatabaseThread::DatabaseThread):
222         * storage/DatabaseThread.h:
223         (WebCore::DatabaseThread::transactionClient):
224         * storage/SQLTransaction.cpp:
225         (WebCore::SQLTransaction::runCurrentStatement):
226         (WebCore::SQLTransaction::deliverQuotaIncreaseCallback):
227         (WebCore::SQLTransaction::postflightAndCommit):
228         * storage/SQLTransactionClient.cpp: Added.
229         * storage/SQLTransactionClient.h: Added.
230
231 2009-08-18  Julie Parent  <jparent@chromium.org>
232
233         Not reviewed, build fix for Chromium.
234
235         Final change for v8 corresponding to http://trac.webkit.org/changeset/47469.
236
237         * bindings/v8/custom/V8HTMLFrameElementCustom.cpp: Added missing using statment
238
239 2009-08-18  Julie Parent  <jparent@chromium.org>
240
241         Not reviewed, build fix for Chromium.
242
243        More corresponding changes to V8 from http://trac.webkit.org/changeset/47469.
244
245         * bindings/v8/custom/V8HTMLIFrameElementCustom.cpp:
246         (WebCore::ACCESSOR_SETTER): Use srcAttr instead of the src function.
247
248 2009-08-18  Julie Parent  <jparent@chromium.org>
249
250         Not reviewed, build fix for Chromium.
251
252         Make corresponding changes to V8 from http://trac.webkit.org/changeset/47469.
253
254         * bindings/v8/custom/V8HTMLFrameElementCustom.cpp:
255         (WebCore::ACCESSOR_SETTER): Use srcAttr instead of the src function.
256
257 2009-08-18  Dan Bernstein  <mitz@apple.com>
258
259         Build fix.
260
261         * editing/ApplyStyleCommand.cpp:
262         (WebCore::getIdentifierValue):
263
264 2009-08-18  Darin Adler  <darin@apple.com>
265
266         Reviewed by Sam Weinig.
267
268         More work on making DOM classes start with reference count of 1
269         https://bugs.webkit.org/show_bug.cgi?id=28068
270
271         Some related clean-up and preparation steps so the subsequent
272         patches will be as small as possible.
273
274         * WebCore.base.exp: Sorted this file.
275
276         * accessibility/AccessibilityRenderObject.cpp:
277         (WebCore::AccessibilityRenderObject::accessibilityDescription):
278         Use nameAttr instead of the name function.
279
280         * bindings/js/JSHTMLFrameElementCustom.cpp:
281         (WebCore::JSHTMLFrameElement::setSrc):
282         Use srcAttr instead of the src function.
283
284         * bindings/js/JSHTMLIFrameElementCustom.cpp:
285         (WebCore::JSHTMLIFrameElement::setSrc):
286         Use srcAttr instead of the src function.
287
288         * bindings/objc/DOM.mm: Sorted includes.
289         * dom/Document.cpp: Ditto.
290
291         * dom/StyledElement.cpp: Made invalidateStyleAttribute inline.
292         * dom/StyledElement.h: Ditto.
293
294         * dom/make_names.pl: Changed default of createWithNew to 0.
295         Eventually all elements will be created with create instead of new.
296
297         * html/HTMLTagNames.in:
298         * svg/svgtags.in:
299         * wml/WMLTagNames.in:
300         Added createWithNew for every tag. We'll remove it as we convert
301         element classes to use create.
302
303         * html/HTMLAppletElement.h: Removed unneeded forward declarations.
304         * html/HTMLFrameElement.h: Ditto.
305
306         * html/HTMLEmbedElement.cpp: Removed many attribute get and
307         set functions.
308         * html/HTMLEmbedElement.h: Ditto.
309         * html/HTMLIFrameElement.cpp: Ditto.
310         * html/HTMLIFrameElement.h: Ditto.
311         * html/HTMLObjectElement.cpp: Ditto.
312         * html/HTMLObjectElement.h: Ditto.
313         * html/HTMLPlugInElement.cpp: Ditto.
314         * html/HTMLPlugInElement.h: Ditto.
315
316         * html/HTMLFrameElementBase.cpp: Removed many attribute get and
317         set functions.
318         (WebCore::HTMLFrameElementBase::location): Changed to use
319         srcAttr instead of src.
320         * html/HTMLFrameElementBase.h: Removed many attribute get and set
321         functions.
322
323         * loader/MediaDocument.cpp:
324         (WebCore::MediaDocument::replaceMediaElementTimerFired):
325         Use srcAttr and typeAttr instead of setSrc and setType.
326         * loader/PluginDocument.cpp:
327         (WebCore::PluginTokenizer::createDocumentStructure): Ditto.
328
329         * rendering/RenderPartObject.cpp:
330         (WebCore::RenderPartObject::updateWidget): Use nameAttr instead
331         of name -- this avoids an extra AtomicString round trip and a little
332         ref count churn too.
333
334 2009-08-18  Drew Wilson  <atwilson@google.com>
335
336         Reviewed by David Levin.
337
338         SharedWorkers need to support loading.
339         https://bugs.webkit.org/show_bug.cgi?id=28342
340
341         Added loader support to shared workers, and refactored worker tests to also test SharedWorkers
342
343         * workers/DefaultSharedWorkerRepository.cpp:
344         (WebCore::SharedWorkerProxy::postTaskToLoader):
345         Forwards load requests to an arbitrary document from the list of worker's documents.
346         (WebCore::SharedWorkerProxy::postTaskForModeToWorkerContext):
347         Posts responses back to the shared worker thread.
348
349 2009-08-18  Ryosuke Niwa  <rniwa@webkit.org>
350
351         Reviewed by Darin Adler.
352
353         StyleChange::init needs clean up before fixing the bug 23892
354         https://bugs.webkit.org/show_bug.cgi?id=27749
355
356         This patch simplifies StyleChange::init by removing the iteration on CSS properties,
357         and adding functions reconcileTextDecorationProperties and extractTextStyle to handle the style.
358
359         Because there is a bug in how text decorations are processes in getPropertiesNotInComputedStyle,
360         this patch simplifies the treatment in order to preserve the original behavior of WebKit.
361         However, the current implementation is not best (adds redundant text-decorations) and we should fix it later.
362
363         No test is added since there is no change in behavior.
364
365         * editing/ApplyStyleCommand.cpp:
366         (WebCore::StyleChange::init): Uses getPropertiesNotInComputedStyle instead of iterating through the properties
367         (WebCore::StyleChange::reconcileTextDecorationProperties): Removes -webkit-text-decorations-in-effects and redundant "none"
368         (WebCore::getIdentifierValue): Obtains the identifier of a CSSPrimitiveValue
369         (WebCore::StyleChange::extractTextStyles): Converts properties in style to m_apply* and removes the property
370         (WebCore::getPropertiesNotInComputedStyle): Fixed a bug with how text decorations are treated
371
372 2009-08-18  Dumitru Daniliuc  <dumi@chromium.org>
373
374         Reviewed by Dimitri Glazkov.
375
376         Fixing a DB file naming bug in Chromium. The origin should come
377         before the DB name in the file name.
378
379         https://bugs.webkit.org/show_bug.cgi?id=28331
380
381         * storage/DatabaseTracker.cpp:
382         (WebCore::DatabaseTracker::fullPathForDatabase):
383
384 2009-08-18  Maxime Simon  <simon.maxime@gmail.com>
385
386         Reviewed by Eric Seidel.
387
388         [Haiku] Adding four image-specific files to WebCore:
389         IconHaiku.cpp, ImageBufferData.h, ImageBufferHaiku.cpp, ImageHaiku.cpp
390         https://bugs.webkit.org/show_bug.cgi?id=28130
391
392         * platform/graphics/Icon.h:
393         * platform/graphics/haiku/IconHaiku.cpp: Added.
394         (WebCore::Icon::~Icon):
395         (WebCore::Icon::createIconForFile):
396         (WebCore::Icon::createIconForFiles):
397         (WebCore::Icon::paint):
398         * platform/graphics/haiku/ImageBufferData.h: Added.
399         * platform/graphics/haiku/ImageBufferHaiku.cpp: Added.
400         (WebCore::ImageBufferData::ImageBufferData):
401         (WebCore::ImageBuffer::ImageBuffer):
402         (WebCore::ImageBuffer::~ImageBuffer):
403         (WebCore::ImageBuffer::context):
404         (WebCore::ImageBuffer::getUnmultipliedImageData):
405         (WebCore::ImageBuffer::getPremultipliedImageData):
406         (WebCore::ImageBuffer::putUnmultipliedImageData):
407         (WebCore::ImageBuffer::putPremultipliedImageData):
408         (WebCore::ImageBuffer::toDataURL):
409         (WebCore::ImageBuffer::image):
410         (WebCore::ImageBuffer::platformTransformColorSpace):
411         * platform/graphics/haiku/ImageHaiku.cpp: Added.
412         (WebCore::FrameData::clear):
413         (WebCore::Image::loadPlatformResource):
414         (WebCore::BitmapImage::initPlatformData):
415         (WebCore::BitmapImage::invalidatePlatformData):
416         (WebCore::BitmapImage::draw):
417         (WebCore::Image::drawPattern):
418         (WebCore::BitmapImage::checkForSolidColor):
419         (WebCore::BitmapImage::getBBitmap):
420
421 2009-08-18  Beth Dakin  <bdakin@apple.com>
422
423         Reviewed by Dan Bernstein.
424
425         Fix for https://bugs.webkit.org/show_bug.cgi?id=27575 [CSS3 
426         Backgrounds and Borders] Drop the prefix from background-size
427
428         * css/CSSComputedStyleDeclaration.cpp:
429         (WebCore::):
430         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
431         * css/CSSParser.cpp:
432         (WebCore::CSSParser::parseValue):
433         (WebCore::CSSParser::parseFillProperty):
434         (WebCore::cssPropertyID):
435         * css/CSSPropertyNames.in:
436         * css/CSSStyleSelector.cpp:
437         (WebCore::CSSStyleSelector::applyProperty):
438         * page/animation/AnimationBase.cpp:
439         (WebCore::FillLayersPropertyWrapper::FillLayersPropertyWrapper):
440         (WebCore::ensurePropertyMap):
441
442 2009-08-18  Drew Wilson  <atwilson@google.com>
443
444         Reviewed by David Levin.
445
446         SharedWorkers need to forward exceptions to parent documents
447         https://bugs.webkit.org/show_bug.cgi?id=28320
448
449         Changed SharedWorkerProxy to have individual mutexes (so workers can interact with their parent documents without contention).
450
451         Updated SharedWorkerProxy to forward exceptions/console messages to all parent documents.
452
453         * bindings/js/JSSharedWorkerConstructor.cpp:
454         Cleaned up bitrot - added missing include.
455         * workers/DefaultSharedWorkerRepository.cpp:
456         (WebCore::postExceptionTask):
457         Callback used to deliver exceptions to a document.
458         (WebCore::SharedWorkerProxy::postExceptionToWorkerObject):
459         Forwards exceptions to all parent documents for presentation to the user.
460         (WebCore::postConsoleMessageTask):
461         (WebCore::SharedWorkerProxy::postConsoleMessageToWorkerObject):
462         Forwards console messages to all parent documents for presentation to the user.
463         (WebCore::SharedWorkerProxy::addToWorkerDocuments):
464         Grabs the mutex before accessing workerDocuments.
465         (WebCore::SharedWorkerProxy::documentDetached):
466         Grabs the mutex before accessing workerDocuments.
467
468 2009-08-18  Anders Carlsson  <andersca@apple.com>
469
470         Reviewed by Adele Peterson.
471
472         <rdar://problem/7135588> HTMLMediaElement should ask WebPolicyLoadDelegate before loading resource
473         
474         * html/HTMLMediaElement.cpp:
475         (WebCore::HTMLMediaElement::isSafeToLoadURL):
476         Call FrameLoaderClient::shouldLoadMediaElementURL.
477         
478         * loader/FrameLoaderClient.h:
479         (WebCore::FrameLoaderClient::shouldLoadMediaElementURL):
480         Return true by default.
481
482 2009-08-18  Dumitru Daniliuc  <dumi@chromium.org>
483
484         Reviewed by Dimitri Glazkov.
485
486         openDatabase() should not execute any SQL statement on the
487         database it's trying to open, unless there are no other open
488         handles to the same database. Otherwise, we might run into a
489         deadlock.
490
491         Test: storage/open-database-while-transaction-in-progress.html
492
493         https://bugs.webkit.org/show_bug.cgi?id=28207
494
495         * storage/Database.cpp:
496         (WebCore::Database::performOpenAndVerify):
497
498 2009-08-18  Dirk Schulze  <krit@webkit.org>
499
500         Reviewed by Oliver Hunt.
501
502         SVG Filter feBlend implementation missing
503         [https://bugs.webkit.org/show_bug.cgi?id=28133]
504
505         Implementation of SVG Filter feBlend.
506
507         FilterEffect.cp needed changes to optimize the rendering. With the old code
508         we drew a subEffect on the current FilterEffect by drawImage, got the PixelArray,
509         cleared the drawing area, drew the next FilterEffect with drawImage and picked this
510         PixelArray again. This was unefficient and slow. Now we calculate the requested area
511         of the subEffect and ask the FilterEffect's ImageBuffer for the PixelArray directly,
512         without any drawing operations on GraphicsContext.
513
514         There is already a test case
515         Test: svg/W3C-SVG-1.1/filters-blend-01-b.svg
516
517         * html/canvas/CanvasPixelArray.h:
518         (WebCore::CanvasPixelArray::set):
519         (WebCore::CanvasPixelArray::get):
520         * platform/graphics/filters/FEBlend.cpp:
521         (WebCore::unknown):
522         (WebCore::normal):
523         (WebCore::multiply):
524         (WebCore::screen):
525         (WebCore::darken):
526         (WebCore::lighten):
527         (WebCore::FEBlend::apply):
528         * platform/graphics/filters/FEBlend.h:
529         * platform/graphics/filters/FilterEffect.cpp:
530         (WebCore::FilterEffect::calculateDrawingIntRect):
531         * platform/graphics/filters/FilterEffect.h:
532
533 2009-08-18  Pavel Feldman  <pfeldman@chromium.org>
534
535         Reviewed by Timothy Hatcher.
536
537         WebInspector: Fix array formatter followup: node formatter.
538
539         https://bugs.webkit.org/show_bug.cgi?id=28427
540
541         * inspector/front-end/ConsoleView.js:
542         (WebInspector.ConsoleView.prototype._format):
543
544 2009-08-18  Pavel Feldman  <pfeldman@chromium.org>
545
546         Reviewed by Timothy Hatcher.
547
548         WebInspector: Metrics sidebar broken
549
550         https://bugs.webkit.org/show_bug.cgi?id=28434
551
552         * inspector/front-end/MetricsSidebarPane.js:
553
554 2009-08-18  Alexey Proskuryakov  <ap@apple.com>
555
556         Reviewed by Darin Adler.
557
558         https://bugs.webkit.org/show_bug.cgi?id=28432
559         String::createCFString() returns a non-retained empty string
560
561         No known change in functionality, so no test.
562
563         * platform/text/cf/StringCF.cpp: (WebCore::String::createCFString): Retain the CFSTR result.
564
565 2009-08-18  Brian Weinstein  <bweinstein@apple.com>
566
567         Reviewed by Oliver Hunt.
568
569         Fix of <https://bugs.webkit.org/show_bug.cgi?id=28326> DRT on Windows doesn't support 
570         LayoutTestController::setQuota or print a callback on UIDelegate::exceededDatabaseQuota.
571         
572         Removed an early return that can cause deleteOrigin or deleteAllDatabases to fail when
573         it doesn't have to.
574
575         * storage/DatabaseTracker.cpp:
576         (WebCore::DatabaseTracker::deleteOrigin):
577
578 2009-08-18  Michelangelo De Simone  <micdesim@gmail.com>
579
580         Reviewed by Adele Peterson.
581
582         https://bugs.webkit.org/show_bug.cgi?id=27357
583         Support for :valid and :invalid CSS selectors, from HTML5 specs.
584         http://www.whatwg.org/specs/web-apps/current-work/#selector-valid
585
586         Tests: fast/css/pseudo-invalid-001.html
587                fast/css/pseudo-invalid-002.html
588                fast/css/pseudo-valid-001.html
589                fast/css/pseudo-valid-002.html
590                fast/css/pseudo-valid-003.html
591                fast/css/pseudo-valid-004.html
592                fast/css/pseudo-valid-005.html
593                fast/css/pseudo-valid-006.html
594                fast/css/pseudo-valid-007.html
595
596         * css/CSSSelector.cpp:
597         (WebCore::CSSSelector::extractPseudoType): extracts new pseudo-classes
598         * css/CSSSelector.h:
599         (WebCore::CSSSelector::):
600         * css/CSSStyleSelector.cpp:
601         (WebCore::CSSStyleSelector::canShareStyleWithElement): Make sure we don't share style between
602 form controls that have different validity states.
603         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): applies
604         style associated to new pseudo-classes
605         * dom/Element.h:
606         (WebCore::Element::willValidate): pushed up in hierarchy
607         (WebCore::Element::isValidFormControlElement): checks for valid form
608         control elements (wraps ValidityState::valid())
609         * html/HTMLFormControlElement.cpp:
610         (WebCore::HTMLFormControlElement::willValidate): minor clean up
611         (WebCore::HTMLFormControlElement::isValidFormControlElement): ditto
612         * html/HTMLFormControlElement.h:
613         * html/HTMLKeygenElement.h:
614         (WebCore::HTMLKeygenElement::willValidate): added
615         * html/HTMLObjectElement.h:
616         (WebCore::HTMLObjectElement::willValidate): added
617         * html/HTMLObjectElement.idl:
618
619 2009-08-18  Pavel Feldman  <pfeldman@chromium.org>
620
621         Reviewed by Timothy Hatcher.
622
623         WebInspector: Fix array formatter.
624
625         https://bugs.webkit.org/show_bug.cgi?id=28427
626
627         * inspector/front-end/ConsoleView.js:
628         (WebInspector.ConsoleView.prototype._formatarray):
629
630 2009-08-17  Joe Mason  <joe.mason@torchmobile.com>
631
632         Reviewed by George Staikos
633
634         Replace repeated string of PLATFORM(FOO) with a single define
635         https://bugs.webkit.org/show_bug.cgi?id=27734
636
637         * loader/CachedFont.cpp:
638         (WebCore::CachedFont::~CachedFont):
639         (WebCore::CachedFont::ensureCustomFontData):
640         (WebCore::CachedFont::platformDataFromCustomData):
641         (WebCore::CachedFont::allClientsRemoved):
642
643 2009-08-16  David Hyatt  <hyatt@apple.com>
644
645         Reviewed by Dan Bernstein.
646
647         https://bugs.webkit.org/show_bug.cgi?id=20329, shadows and reflections incorrectly
648         considered part of scrollable overflow.
649
650         This patch takes the engine's concept of overflow and splits it into two types:
651         layout overflow and visual overflow.
652         
653         Layout overflow is about other boxes that spill out of an enclosing box,  For example,
654         in the inline flow case a tall image could spill out of a line box. Examples of 
655         visual overflow are shadows, text stroke (and eventually outline and
656         border-image).
657
658         Three objects tracked overflow before this patch: RenderBlock had 
659         m_overflowLeft/Top/Width/Height variables.  RootInlineBox had an Overflow*
660         that also had four overflow values.  Finally RenderReplaced elements tracked shadow/reflection
661         overflow using a map that cached four values.
662         
663         This patch takes all of these different overflow models and unifies them into a single
664         new class called RenderOverflow.   This class is now a member variable in RenderBox and
665         InlineFlowBoxes.  It is only allocated if overflow actually exists.  Instead of tracking
666         four values, it tracks eight: left/top/right/bottom for layout overflow and 
667         left/top/right/bottom for visual overflow.
668         
669         Overflow computation is now done after layout is finished rather than during layout
670         (when child objects can be churning and moving around).  A number of layout tests progressed
671         by deferring overflow computation to a separate pass.
672         
673         All inline flow boxes now track overflow (and not just the root line box).  This allows
674         repainting of line boxes to actually be tight and bail early if the overflow rect of a box
675         doesn't intersect.  The old code always visited all object on a line if the root line box
676         intersected at all.
677         
678         Line box overflow no longer propagates across self-painting layers.  This fixes a number of
679         issues with incorrect scrollbars appearing when relative positioned inlines were used in a page.
680         
681         Layer bounds have been modified to exclude visual overflow.  The width/height members only really
682         have one reason for continued existence, and that is that they happen to be used in repaint()
683         when an overflow clip object's height isn't accurate.  In this case, the bounds should exclude
684         visual overflow anyway, so this change tightens that repaint up.
685         
686         Root lines have renamed m_selectionTop/Bottom to m_lineTop/Bottom and positionForPoint methods have
687         been changed to use these instead of relying on overflow (which was totally wrong).
688
689         Significant changes have been made to the "almost strict mode" line box quirk where objects with no
690         text children have no effect on the height of a line.  Instead of making the height() of the objects
691         variable and dependent on overflow, the objects now have their full height and get placed on
692         the baseline properly.  They simply don't contribute to overflow above lineTop/Bottom.
693         
694         Reflections are no longer considered overflow of any kind.  Because reflections have their own layers,
695         it is not necessary to treat them as visual or layout overflow in the RenderObject tree.  The end result
696         of not incorporating them into RenderOverflow is that they have no effect on scrolling.  transparencyClipBox
697         has been extended to support fully reflecting the entire clip box when a reflection exists.  This fixes
698         numerous repaint bugs in transparent objects with reflections when the transparent objects had self-painting
699         sublayers.
700
701         * WebCore.xcodeproj/project.pbxproj:
702         * dom/ContainerNode.cpp:
703         (WebCore::ContainerNode::getUpperLeftCorner):
704         * editing/visible_units.cpp:
705         (WebCore::previousLinePosition):
706         (WebCore::nextLinePosition):
707         * page/FrameView.cpp:
708         (WebCore::FrameView::adjustViewSize):
709         (WebCore::FrameView::adjustPageHeight):
710         * rendering/InlineBox.cpp:
711         (WebCore::InlineBox::height):
712         * rendering/InlineBox.h:
713         * rendering/InlineFlowBox.cpp:
714         (WebCore::InlineFlowBox::adjustPosition):
715         (WebCore::InlineFlowBox::placeBoxesHorizontally):
716         (WebCore::InlineFlowBox::placeBoxesVertically):
717         (WebCore::InlineFlowBox::computeVerticalOverflow):
718         (WebCore::InlineFlowBox::nodeAtPoint):
719         (WebCore::InlineFlowBox::paint):
720         * rendering/InlineFlowBox.h:
721         (WebCore::InlineFlowBox::InlineFlowBox):
722         (WebCore::InlineFlowBox::topCombinedOverflow):
723         (WebCore::InlineFlowBox::bottomCombinedOverflow):
724         (WebCore::InlineFlowBox::leftCombinedOverflow):
725         (WebCore::InlineFlowBox::rightCombinedOverflow):
726         (WebCore::InlineFlowBox::combinedOverflowRect):
727         (WebCore::InlineFlowBox::topLayoutOverflow):
728         (WebCore::InlineFlowBox::bottomLayoutOverflow):
729         (WebCore::InlineFlowBox::leftLayoutOverflow):
730         (WebCore::InlineFlowBox::rightLayoutOverflow):
731         (WebCore::InlineFlowBox::layoutOverflowRect):
732         (WebCore::InlineFlowBox::topVisualOverflow):
733         (WebCore::InlineFlowBox::bottomVisualOverflow):
734         (WebCore::InlineFlowBox::leftVisualOverflow):
735         (WebCore::InlineFlowBox::rightVisualOverflow):
736         (WebCore::InlineFlowBox::visualOverflowRect):
737         (WebCore::InlineFlowBox::setHorizontalOverflowPositions):
738         (WebCore::InlineFlowBox::setVerticalOverflowPositions):
739         * rendering/InlineTextBox.cpp:
740         (WebCore::InlineTextBox::paint):
741         * rendering/RenderBlock.cpp:
742         (WebCore::RenderBlock::RenderBlock):
743         (WebCore::RenderBlock::layout):
744         (WebCore::RenderBlock::layoutBlock):
745         (WebCore::RenderBlock::addOverflowFromBlockChildren):
746         (WebCore::RenderBlock::handleBottomOfBlock):
747         (WebCore::RenderBlock::layoutBlockChildren):
748         (WebCore::RenderBlock::paint):
749         (WebCore::RenderBlock::fillInlineSelectionGaps):
750         (WebCore::RenderBlock::floatRect):
751         (WebCore::RenderBlock::lowestPosition):
752         (WebCore::RenderBlock::rightmostPosition):
753         (WebCore::RenderBlock::leftmostPosition):
754         (WebCore::RenderBlock::addOverhangingFloats):
755         (WebCore::RenderBlock::nodeAtPoint):
756         (WebCore::RenderBlock::positionForPointWithInlineChildren):
757         (WebCore::RenderBlock::layoutColumns):
758         (WebCore::getHeightForLineCount):
759         * rendering/RenderBlock.h:
760         * rendering/RenderBlockLineLayout.cpp:
761         (WebCore::RenderBlock::computeHorizontalPositionsForLine):
762         (WebCore::RenderBlock::computeVerticalPositionsForLine):
763         (WebCore::RenderBlock::layoutInlineChildren):
764         (WebCore::RenderBlock::matchedEndLine):
765         (WebCore::RenderBlock::addOverflowFromInlineChildren):
766         * rendering/RenderBox.cpp:
767         (WebCore::RenderBox::destroy):
768         (WebCore::RenderBox::clippedOverflowRectForRepaint):
769         (WebCore::RenderBox::localCaretRect):
770         (WebCore::RenderBox::addShadowAndReflectionOverflow):
771         (WebCore::RenderBox::addOverflowFromChild):
772         (WebCore::RenderBox::addLayoutOverflow):
773         (WebCore::RenderBox::addVisualOverflow):
774         (WebCore::RenderBox::clearLayoutOverflow):
775         * rendering/RenderBox.h:
776         (WebCore::RenderBox::combinedOverflowRect):
777         (WebCore::RenderBox::topCombinedOverflow):
778         (WebCore::RenderBox::bottomCombinedOverflow):
779         (WebCore::RenderBox::leftCombinedOverflow):
780         (WebCore::RenderBox::rightCombinedOverflow):
781         (WebCore::RenderBox::layoutOverflowRect):
782         (WebCore::RenderBox::topLayoutOverflow):
783         (WebCore::RenderBox::bottomLayoutOverflow):
784         (WebCore::RenderBox::leftLayoutOverflow):
785         (WebCore::RenderBox::rightLayoutOverflow):
786         (WebCore::RenderBox::visualOverflowRect):
787         (WebCore::RenderBox::topVisualOverflow):
788         (WebCore::RenderBox::bottomVisualOverflow):
789         (WebCore::RenderBox::leftVisualOverflow):
790         (WebCore::RenderBox::rightVisualOverflow):
791         * rendering/RenderFlexibleBox.cpp:
792         (WebCore::RenderFlexibleBox::layoutBlock):
793         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
794         (WebCore::RenderFlexibleBox::layoutVerticalBox):
795         * rendering/RenderLayer.cpp:
796         (WebCore::RenderLayer::updateLayerPosition):
797         (WebCore::RenderLayer::localBoundingBox):
798         * rendering/RenderLayerCompositor.cpp:
799         (WebCore::RenderLayerCompositor::updateRootLayerPosition):
800         (WebCore::RenderLayerCompositor::ensureRootPlatformLayer):
801         * rendering/RenderLineBoxList.cpp:
802         (WebCore::RenderLineBoxList::paint):
803         (WebCore::RenderLineBoxList::hitTest):
804         * rendering/RenderListItem.cpp:
805         (WebCore::RenderListItem::positionListMarker):
806         * rendering/RenderObject.cpp:
807         (WebCore::RenderObject::RenderObject):
808         * rendering/RenderObject.h:
809         * rendering/RenderOverflow.h: Added.
810         (WebCore::RenderOverflow::RenderOverflow):
811         (WebCore::RenderOverflow::topLayoutOverflow):
812         (WebCore::RenderOverflow::bottomLayoutOverflow):
813         (WebCore::RenderOverflow::leftLayoutOverflow):
814         (WebCore::RenderOverflow::rightLayoutOverflow):
815         (WebCore::RenderOverflow::topVisualOverflow):
816         (WebCore::RenderOverflow::bottomVisualOverflow):
817         (WebCore::RenderOverflow::leftVisualOverflow):
818         (WebCore::RenderOverflow::rightVisualOverflow):
819         (WebCore::RenderOverflow::setTopLayoutOverflow):
820         (WebCore::RenderOverflow::setBottomLayoutOverflow):
821         (WebCore::RenderOverflow::setLeftLayoutOverflow):
822         (WebCore::RenderOverflow::setRightLayoutOverflow):
823         (WebCore::RenderOverflow::setTopVisualOverflow):
824         (WebCore::RenderOverflow::setBottomVisualOverflow):
825         (WebCore::RenderOverflow::setLeftVisualOverflow):
826         (WebCore::RenderOverflow::setRightVisualOverflow):
827         (WebCore::RenderOverflow::layoutOverflowRect):
828         (WebCore::RenderOverflow::visualOverflowRect):
829         (WebCore::RenderOverflow::combinedOverflowRect):
830         (WebCore::RenderOverflow::move):
831         (WebCore::RenderOverflow::addLayoutOverflow):
832         (WebCore::RenderOverflow::addVisualOverflow):
833         (WebCore::RenderOverflow::resetLayoutOverflow):
834         * rendering/RenderPartObject.cpp:
835         (WebCore::RenderPartObject::layout):
836         * rendering/RenderReplaced.cpp:
837         (WebCore::RenderReplaced::~RenderReplaced):
838         (WebCore::RenderReplaced::layout):
839         (WebCore::RenderReplaced::shouldPaint):
840         (WebCore::RenderReplaced::positionForPoint):
841         (WebCore::RenderReplaced::clippedOverflowRectForRepaint):
842         * rendering/RenderReplaced.h:
843         * rendering/RenderScrollbarPart.cpp:
844         (WebCore::RenderScrollbarPart::layout):
845         (WebCore::RenderScrollbarPart::paintIntoRect):
846         * rendering/RenderSlider.cpp:
847         (WebCore::RenderSlider::layout):
848         * rendering/RenderTable.cpp:
849         (WebCore::RenderTable::layout):
850         (WebCore::RenderTable::paint):
851         * rendering/RenderTableCell.cpp:
852         (WebCore::RenderTableCell::clippedOverflowRectForRepaint):
853         * rendering/RenderTableSection.cpp:
854         (WebCore::RenderTableSection::layoutRows):
855         * rendering/RenderTableSection.h:
856         * rendering/RenderText.cpp:
857         (WebCore::RenderText::positionForPoint):
858         (WebCore::RenderText::localCaretRect):
859         * rendering/RenderView.cpp:
860         (WebCore::RenderView::layout):
861         * rendering/RootInlineBox.cpp:
862         (WebCore::RootInlineBox::addHighlightOverflow):
863         (WebCore::RootInlineBox::adjustPosition):
864         (WebCore::RootInlineBox::verticallyAlignBoxes):
865         (WebCore::RootInlineBox::selectionTop):
866         * rendering/RootInlineBox.h:
867         (WebCore::RootInlineBox::RootInlineBox):
868         (WebCore::RootInlineBox::nextRootBox):
869         (WebCore::RootInlineBox::prevRootBox):
870         (WebCore::RootInlineBox::lineTop):
871         (WebCore::RootInlineBox::lineBottom):
872         (WebCore::RootInlineBox::selectionBottom):
873         (WebCore::RootInlineBox::selectionHeight):
874         (WebCore::RootInlineBox::floats):
875         (WebCore::RootInlineBox::floatsPtr):
876         (WebCore::RootInlineBox::setLineTopBottomPositions):
877         * rendering/SVGRootInlineBox.cpp:
878         (WebCore::SVGRootInlineBox::layoutInlineBoxes):
879
880 2009-08-18  Alexey Proskuryakov  <ap@apple.com>
881
882         Reviewed by Darin Adler.
883
884         https://bugs.webkit.org/show_bug.cgi?id=28431
885         <rdar://problem/7137610> Application Cache doesn't work with HTTP authentication
886
887         Test: http/tests/appcache/auth.html
888
889         * loader/appcache/ApplicationCacheGroup.h:
890         (WebCore::ApplicationCacheGroup::shouldUseCredentialStorage): If appcache is enabled,
891         always allow it to use stored credentials (we can't ask WebKit client, and maybe we
892         shouldn't ask it, because it's not a document that's loading these resources).
893
894 2009-08-18  Anders Carlsson  <andersca@apple.com>
895
896         Reviewed by John Sullivan and David Hyatt.
897
898         Fix <rdar://problem/7147996>
899
900         * platform/ScrollView.cpp:
901         (WebCore::ScrollView::setHasHorizontalScrollbar):
902         (WebCore::ScrollView::setHasVerticalScrollbar):
903         Update the style of the scroll bars.
904         
905         * rendering/RenderScrollbar.cpp:
906         (WebCore::RenderScrollbar::RenderScrollbar):
907         Calculate the size of the scrollbar and set it as the frame size.
908
909 2009-08-18  Eric Carlson  <eric.carlson@apple.com>
910
911         Reviewed by Simon Fraser.
912
913         HTMLMediaElement should fire 'progress' event before 'load'
914         https://bugs.webkit.org/show_bug.cgi?id=28314
915
916         Test: media/progress-event-at-least-one.html
917
918         * html/HTMLMediaElement.cpp:
919         (WebCore::HTMLMediaElement::setNetworkState):
920             Schedule 'progress' event before 'load'.
921
922 2009-08-18  Peter Kasting  <pkasting@google.com>
923
924         Reviewed by Eric Seidel.
925
926         https://bugs.webkit.org/show_bug.cgi?id=28415
927         Set svn:eol-style CRLF on all .sln and .vcproj files that don't already
928         have it.
929
930         * WebCore.vcproj/QTMovieWin.vcproj:
931         * WebCore.vcproj/WebCoreGenerated.vcproj:
932
933 2009-08-18  Drew Wilson  <atwilson@google.com>
934
935         Reviewed by Eric Seidel.
936
937         Need to extend DumpRenderTree to expose number of worker threads
938         https://bugs.webkit.org/show_bug.cgi?id=28292
939
940         Expose WorkerThread::workerThreadCount() for DumpRenderTree so we can write worker lifecycle tests.
941
942         Tests: fast/workers/shared-worker-lifecycle.html-disabled
943                fast/workers/worker-lifecycle.html
944
945         * WebCore.base.exp:
946         Exported WorkerThread::workerThreadCount().
947         * WebCore.xcodeproj/project.pbxproj:
948         * workers/WorkerThread.cpp:
949         Added tracking of the number of worker threads.
950         (WebCore::threadCountMutex):
951         (WebCore::WorkerThread::workerThreadCount):
952         (WebCore::WorkerThread::WorkerThread):
953         (WebCore::WorkerThread::~WorkerThread):
954         * workers/WorkerThread.h:
955
956 2009-08-18  Ariya Hidayat  <ariya.hidayat@nokia.com>
957
958         Unreviewed, build fix.
959
960         [Qt] Add new files I forgot to add in r47424.
961
962 2009-08-18  Markus Goetz <Markus.Goetz@nokia.com>
963
964         Reviewed by Ariya Hidayat.
965
966         [Qt] Implement prefetchDNS() function.
967
968         * WebCore.pro:
969         * platform/qt/TemporaryLinkStubs.cpp:
970
971 2009-08-18  Kent Tamura  <tkent@chromium.org>
972
973         Reviewed by Eric Seidel.
974
975         Support for parsing <datalist> element and generating HTMLDataListElement nodes.
976         https://bugs.webkit.org/show_bug.cgi?id=26915
977
978         Tests: fast/forms/datalist-nonoption-child.html
979                fast/forms/datalist.html
980
981         * WebCore.gypi:
982         * WebCore.pro:
983         * WebCore.vcproj/WebCore.vcproj:
984         * WebCore.vcproj/WebCoreCommon.vsprops:
985         * WebCore.vcproj/build-generated-files.sh:
986         * WebCore.xcodeproj/project.pbxproj:
987         * WebCoreSources.bkl:
988         * css/html.css:
989         * html/CollectionType.h:
990         (WebCore::):
991         * html/HTMLCollection.cpp:
992         (WebCore::HTMLCollection::itemAfter):
993         * html/HTMLDataListElement.cpp: Added.
994         (WebCore::HTMLDataListElement::HTMLDataListElement):
995         (WebCore::HTMLDataListElement::~HTMLDataListElement):
996         (WebCore::HTMLDataListElement::checkDTD):
997         (WebCore::HTMLDataListElement::options):
998         * html/HTMLDataListElement.h: Added.
999         * html/HTMLDataListElement.idl: Added.
1000         * html/HTMLElement.cpp:
1001         (WebCore::inlineTagList):
1002         * html/HTMLParser.cpp:
1003         (WebCore::HTMLParser::isAffectedByResidualStyle):
1004         * html/HTMLTagNames.in:
1005
1006 2009-08-17  Shinichiro Hamaji  <hamaji@chromium.org>
1007
1008         Reviewed by Eric Seidel.
1009
1010         -webkit-box-orient:horizontal doesn't work on <button> tag
1011         https://bugs.webkit.org/show_bug.cgi?id=34445
1012
1013         Make a flexible button's anonymous child flexible and pass the
1014         parent's box-orient to the anonymous child.
1015
1016         Also, added a renderName for anonymous flexible boxes.
1017
1018         Test: fast/flexbox/box-orient-button.html
1019
1020         * rendering/RenderBlock.cpp:
1021         (WebCore::RenderBlock::createAnonymousBlock):
1022         * rendering/RenderBlock.h:
1023         * rendering/RenderButton.cpp:
1024         (WebCore::RenderButton::addChild):
1025         (WebCore::RenderButton::setupInnerStyle):
1026         * rendering/RenderFlexibleBox.cpp:
1027         (WebCore::RenderFlexibleBox::renderName):
1028
1029 2009-08-17  Simon Fraser  <simon.fraser@apple.com>
1030
1031         Reviewed by Dave Hyatt.
1032         
1033         Render -webkit-mask via compositing layers when possible
1034         https://bugs.webkit.org/show_bug.cgi?id=28414
1035         
1036         Implement accelerated compositing of -webkit-mask, when combined
1037         with already-composited content.
1038         
1039         RenderLayerBacking now creates an additional GraphicsLayer for the mask contents,
1040         and sets this as the mask on another GraphicsLayer via the setMaskLayer() method.
1041         GraphicsLayerCA then applies the mask using -[CALayer setMask:].
1042         
1043         The enum values for GraphicsLayerPaintingPhase were renamed to avoid the
1044         confusion with "mask", and a new value, GraphicsLayerPaintMask, was added which
1045         indicates that just the mask is painting.
1046         
1047         When painting the composited mask, we need to paint with the normal compositing
1048         mode rather than CompositeDestinationIn, so InlineFlowBox and RenderBox now consult
1049         layer()->hasCompositedMask() to pick the mode. If the mask is composited, they no longer
1050         need to make transparency layers.
1051         
1052         We no longer have to throw video rendering into software because of masks.
1053         
1054         When a masked element has composited descendants, that element needs to
1055         become composited so that the mask can be applied via compositing.
1056
1057         Tests: compositing/masks/masked-ancestor.html
1058                compositing/masks/simple-composited-mask.html
1059
1060         * platform/graphics/GraphicsLayer.cpp:
1061         (WebCore::GraphicsLayer::GraphicsLayer):
1062         * platform/graphics/GraphicsLayer.h:
1063         (WebCore::GraphicsLayer::maskLayer):
1064         (WebCore::GraphicsLayer::setMaskLayer):
1065         (WebCore::GraphicsLayer::paintingPhase):
1066         (WebCore::GraphicsLayer::setPaintingPhase):
1067         * platform/graphics/GraphicsLayerClient.h:
1068         (WebCore::):
1069         * platform/graphics/mac/GraphicsLayerCA.h:
1070         (WebCore::GraphicsLayerCA::):
1071         * platform/graphics/mac/GraphicsLayerCA.mm:
1072         (WebCore::GraphicsLayerCA::setMaskLayer):
1073         (WebCore::GraphicsLayerCA::recursiveCommitChanges):
1074         (WebCore::GraphicsLayerCA::commitLayerChanges):
1075         (WebCore::GraphicsLayerCA::updateMaskLayer):
1076         * rendering/InlineFlowBox.cpp:
1077         (WebCore::InlineFlowBox::paintMask):
1078         * rendering/RenderBox.cpp:
1079         (WebCore::RenderBox::paintMaskImages):
1080         * rendering/RenderLayer.cpp:
1081         (WebCore::RenderLayer::hasCompositedMask):
1082         * rendering/RenderLayer.h:
1083         (WebCore::RenderLayer::hasCompositedMask):
1084         * rendering/RenderLayerBacking.cpp:
1085         (WebCore::RenderLayerBacking::~RenderLayerBacking):
1086         (WebCore::RenderLayerBacking::destroyGraphicsLayer):
1087         (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
1088         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
1089         (WebCore::RenderLayerBacking::updateForegroundLayer):
1090         (WebCore::RenderLayerBacking::updateMaskLayer):
1091         (WebCore::RenderLayerBacking::paintingPhaseForPrimaryLayer):
1092         (WebCore::RenderLayerBacking::setContentsNeedDisplay):
1093         (WebCore::RenderLayerBacking::setContentsNeedDisplayInRect):
1094         (WebCore::RenderLayerBacking::paintIntoLayer):
1095         (WebCore::RenderLayerBacking::paintContents):
1096         * rendering/RenderLayerBacking.h:
1097         (WebCore::RenderLayerBacking::hasMaskLayer):
1098         * rendering/RenderLayerCompositor.cpp:
1099         (WebCore::RenderLayerCompositor::computeCompositingRequirements):
1100         (WebCore::RenderLayerCompositor::canAccelerateVideoRendering):
1101         (WebCore::RenderLayerCompositor::requiresCompositingWhenDescendantsAreCompositing):
1102         * rendering/RenderLayerCompositor.h:
1103
1104 2009-08-17  Simon Fraser  <simon.fraser@apple.com>
1105
1106         Reviewed by Dave Hyatt.
1107
1108         Layer content misplaced with compositing, z-index and overflow
1109         https://bugs.webkit.org/show_bug.cgi?id=28361
1110         
1111         The foreground GraphicsLayer (used to render element foreground when the element has 
1112         negative z-order children) was misplaced when there is a clipping layer (which clips
1113         children). The foreground layer is parented under the clipping layer so that the foreground
1114         depth-sorts with the layer's children, so its geometry needs to be computed relative to
1115         that clipping layer.
1116         
1117         Also clarified some FIXME comments, and corrected a debug-only layer name.
1118
1119         Test: compositing/geometry/clipping-foreground.html
1120
1121         * platform/graphics/mac/GraphicsLayerCA.mm:
1122         (WebCore::GraphicsLayerCA::updateSublayerList):
1123         * rendering/RenderLayerBacking.cpp:
1124         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
1125         (WebCore::RenderLayerBacking::updateForegroundLayer):
1126         * rendering/RenderLayerCompositor.cpp:
1127         (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
1128
1129 2009-08-17  Mark Rowe  <mrowe@apple.com>
1130
1131         Reviewed by Sam Weinig.
1132
1133         Fix leaks of SVGElementInstance seen during regression tests.
1134
1135         r47313 made TreeShared types start with a ref-count of 1, but SVGElementInstance was mistakenly
1136         not updated to have a create method that adopted the initial reference.  This lead to the instances
1137         of SVGElementInstance allocated by SVGUseElement being leaked.
1138
1139         * svg/SVGElementInstance.h:
1140         (WebCore::SVGElementInstance::create):
1141         * svg/SVGUseElement.cpp:
1142         (WebCore::SVGUseElement::buildPendingResource):
1143         (WebCore::SVGUseElement::buildInstanceTree):
1144         (WebCore::SVGUseElement::handleDeepUseReferencing):
1145
1146 2009-08-17  Brady Eidson  <beidson@apple.com>
1147
1148         Reviewed by Sam Weinig.
1149
1150         Some cleanup towards https://bugs.webkit.org/show_bug.cgi?id=13631
1151         Page Cache should support pages with frames.
1152
1153         - Re-factor all remaining page cache code out of DocumentLoader, as CachedPage/CacheFrame loads
1154           are solely the responsibility of FrameLoader.
1155         - Enhance some page cache related Logging to help development.
1156
1157         * inspector/InspectorController.cpp:
1158         (WebCore::InspectorController::didCommitLoad):
1159         (WebCore::InspectorController::identifierForInitialRequest):
1160
1161         * loader/DocumentLoader.cpp:
1162         (WebCore::DocumentLoader::DocumentLoader):
1163         * loader/DocumentLoader.h:
1164
1165         * loader/FrameLoader.cpp:
1166         (WebCore::FrameLoader::FrameLoader):
1167         (WebCore::FrameLoader::commitProvisionalLoad):
1168         (WebCore::FrameLoader::continueLoadAfterWillSubmitForm):
1169         (WebCore::FrameLoader::loadProvisionalItemFromCachedPage):
1170         * loader/FrameLoader.h:
1171         (WebCore::FrameLoader::isLoadingFromCachedPage):
1172
1173 2009-08-17  Roland Steiner  <rolandsteiner@google.com>
1174
1175         Reviewed by Eric Seidel.
1176
1177         Moved implementation of isAfterContent to RenderObject
1178         (as inline method to avoid potential performance regressions).
1179
1180         BUG 28376 -  [Cleanup] isAfterContent() implemented twice, should be member of RenderObject
1181         (https://bugs.webkit.org/show_bug.cgi?id=28376)
1182
1183         * rendering/RenderBox.cpp:
1184         * rendering/RenderBox.h:
1185         * rendering/RenderInline.cpp:
1186         * rendering/RenderObject.h:
1187         (WebCore::RenderObject::isAfterContent):
1188
1189 2009-08-17  Shinichiro Hamaji  <hamaji@chromium.org>
1190
1191         Reviewed by Darin Adler.
1192
1193         Assertion failure in WebCore::RenderHTMLCanvas::layout
1194         https://bugs.webkit.org/show_bug.cgi?id=12052
1195
1196         Don't handle run-in if the element is not a block element.
1197
1198         Test: fast/runin/nonblock-runin.html
1199
1200         * rendering/RenderBlock.cpp:
1201         (WebCore::RenderBlock::handleRunInChild):
1202
1203 2009-08-17  Benjamin C Meyer  <benjamin.meyer@torchmobile.com>
1204
1205         Reviewed by Darin Adler.
1206
1207         Fix createImageData to raise the NOT_SUPPORTED_ERR exception when
1208         either of the arguments are not finite.
1209
1210         According to
1211         http://www.whatwg.org/specs/web-apps/current-work/#pixel-manipulation:
1212         "If any of the arguments to createImageData() or getImageData() are
1213         infinite or NaN, or if the createImageData()  method is invoked with
1214         only one argument but that argument is null, the method must instead
1215         raise a NOT_SUPPORTED_ERR  exception."
1216
1217         Test: http://philip.html5.org/tests/canvas/suite/tests/2d.imageData.create.nonfinite.html
1218
1219         * html/canvas/CanvasRenderingContext2D.cpp:
1220         (WebCore::CanvasRenderingContext2D::createImageData):
1221         * html/canvas/CanvasRenderingContext2D.h:
1222         * html/canvas/CanvasRenderingContext2D.idl:
1223
1224 2009-08-17  Jeremy Orlow  <jorlow@chromium.org>
1225
1226         Reviewed by Darin Fisher.
1227
1228         Add a way to release the storage lock
1229         https://bugs.webkit.org/show_bug.cgi?id=28411
1230
1231         Two scripts within the same origin that are accessing LocalStorage must not do
1232         it simultaneously, according to the spec.  There are some cases, however, where
1233         a script might want to override this behavior.  navigator.getStorageUpdates()
1234         was added for this reason:
1235         http://dev.w3.org/html5/spec/Overview.html#manually-releasing-the-storage-mutex
1236
1237         Add this function to navigator and hook it up to DOM Storage.
1238
1239         * page/Navigator.cpp:
1240         (WebCore::Navigator::getStorageUpdates):
1241         * page/Navigator.h:
1242         * page/Navigator.idl:
1243         * storage/StorageNamespace.h:
1244         * storage/StorageNamespaceImpl.cpp:
1245         (WebCore::StorageNamespaceImpl::unlock):
1246         * storage/StorageNamespaceImpl.h:
1247
1248 2009-08-17  Mark Rowe  <mrowe@apple.com>
1249
1250         Build fix.
1251
1252         CFNetwork isn't present in the framework search path on Mac OS X so we can't directly include its headers.
1253         We include CoreServices.h, the umbrella framework that contains CFNetwork, from the prefix header which
1254         results in the CFNetwork headers being included on Mac OS X.  CoreServices.h doesn't include CFNetwork.h on
1255         Windows though so we explicitly include this header from the prefix header when on Windows.
1256
1257         * WebCorePrefix.h:
1258         * platform/network/cf/DNSCFNet.cpp: Remove #include that is no longer needed.
1259
1260 2009-08-17  Alexey Proskuryakov  <ap@apple.com>
1261
1262         Trying a better build fix (the previous one broke Leopard bots, although it did build for me).
1263
1264         * platform/network/cf/DNSCFNet.cpp: Include CFNetwork/CFNetwork.h instead.
1265
1266 2009-08-17  Alexey Proskuryakov  <ap@apple.com>
1267
1268         Trying to fix Windows build.
1269
1270         * platform/network/cf/DNSCFNet.cpp: Include CFNetwork/CFHost.h.
1271
1272 2009-08-17  Peter Kasting  <pkasting@google.com>
1273
1274         Reviewed by Steve Falkenburg.
1275
1276         https://bugs.webkit.org/show_bug.cgi?id=27323
1277         Only add Cygwin to the path when it isn't already there.  This avoids
1278         causing problems for people who purposefully have non-Cygwin versions of
1279         executables like svn in front of the Cygwin ones in their paths.
1280
1281         * WebCore.vcproj/QTMovieWin.vcproj:
1282         * WebCore.vcproj/WebCoreCommon.vsprops:
1283         * WebCore.vcproj/WebCoreGenerated.vcproj:
1284
1285 2009-08-17  Alexey Proskuryakov  <ap@apple.com>
1286
1287         Reviewed by Geoff Garen.
1288
1289         https://bugs.webkit.org/show_bug.cgi?id=28401
1290         Add support for DNS prefetching with CFNetwork
1291
1292         This is just an optimization, no behavior change, so no tests.
1293
1294         * platform/network/cf/DNSCFNet.cpp:
1295         (WebCore::clientCallback):
1296         (WebCore::prefetchDNS):
1297         Use async CFHostStartInfoResolution() for implementation.
1298
1299 2009-08-17  Aaron Boodman  <aa@chromium.org>
1300
1301         Reviewed by Alexey Proskuryakov.
1302
1303         https://bugs.webkit.org/show_bug.cgi?id=28313: Combine ThreadableLoaderOptions::crossOriginRequestPolicy and
1304         ThreadableLoaderOptions::crossOriginRedirectPolicy since they are always set the same way.
1305
1306         Also, tightened up behavior of XMLHttpRequest with cross-origin redirects and access control. We have not implemented
1307         redirects access control, so we should never redirect across origins. But in two edge cases, we were:
1308
1309         * Asynchronous XHR: Script on origin A requests resource from origin B. Server redirects (without sending access control
1310           authorization headers) to a resource on origin A.
1311         * Synchronous XHR: Script on origin A requests resource from origin B. Server redirects (without sending access control
1312           authorization headers) to another resource on origin B (this time sending access control authorization headers).
1313
1314         Test: http/tests/xmlhttprequest/access-control-and-redirects.html
1315
1316         * loader/DocumentThreadableLoader.cpp:
1317         (WebCore::DocumentThreadableLoader::willSendRequest): Refactor redirect checking code into shared location.
1318         (WebCore::DocumentThreadableLoader::loadRequest): Ditto.
1319         (WebCore::DocumentThreadableLoader::isAllowedRedirect): Ditto.
1320         * loader/DocumentThreadableLoader.h:
1321         * loader/ThreadableLoader.h:
1322         (WebCore::ThreadableLoaderOptions::ThreadableLoaderOptions): Remove ThreadableLoaderOptions::crossOriginRedirectPolicy.
1323         * page/EventSource.cpp:
1324         (WebCore::EventSource::connect): Ditto.
1325         * workers/Worker.cpp: Ditto.
1326         (WebCore::Worker::Worker): Ditto.
1327         * workers/WorkerContext.cpp: Ditto.
1328         (WebCore::WorkerContext::importScripts): Ditto.
1329         * workers/WorkerScriptLoader.cpp:
1330         (WebCore::WorkerScriptLoader::loadSynchronously): Ditto.
1331         (WebCore::WorkerScriptLoader::loadAsynchronously): Ditto.
1332         * workers/WorkerScriptLoader.h: 
1333         * xml/XMLHttpRequest.cpp:
1334         (WebCore::XMLHttpRequest::createRequest): Ditto.
1335
1336 2009-08-17  Adam Langley  <agl@google.com>
1337
1338         Reviewed by Dan Bernstein (relanding of r47157).
1339
1340         Fix a typo in platform/graphics/skia/PlatformContextSkia.cpp
1341
1342         https://bugs.webkit.org/show_bug.cgi?id=28172
1343
1344         This was originally fixed in r47157, however it triggered a bug in
1345         Skia which caused Chromium Linux to fail layout tests in debug mode.
1346         It was reverted in r47189 while we sorted it out.
1347
1348         The Skia bug was fixed in Skia's r321 [1] and rolled into Chromium in
1349         Chromium's r23523. This is a reland of the original patch.
1350
1351         No new tests because it's a just typo fix.
1352
1353         [1] http://code.google.com/p/skia/source/detail?r=321
1354
1355         * platform/graphics/skia/PlatformContextSkia.cpp:
1356         (PlatformContextSkia::setupPaintCommon):
1357
1358 2009-08-17  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
1359
1360         Reviewed by Xan Lopez.
1361
1362         Protect ResourceHandle for g_file_query_info_async call, using the
1363         same technique we already use for HTTP requests that take the soup
1364         path.
1365
1366         * platform/network/soup/ResourceHandleSoup.cpp:
1367         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
1368         (WebCore::ResourceHandle::~ResourceHandle):
1369         (WebCore::finishedCallback):
1370         (WebCore::):
1371
1372 2009-08-17  Dan Bernstein  <mitz@apple.com>
1373
1374         Reviewed by Darin Adler.
1375
1376         REGRESSION (r47255): MediaWiki's (including Wikipedia) navigation pane
1377         appears below the main content
1378         https://bugs.webkit.org/show_bug.cgi?id=28350
1379
1380         A particular version of the MediaWiki software detects WebKit through
1381         user agent sniffing and imports a style sheet called KHTMLFixes.css,
1382         which contains a single rule that was meant to work around some KHTML
1383         bug, but currently has the sole effect of causing the float containing
1384         the main article content to extend all the way to the left and thus push
1385         down the left navigation pane.
1386
1387         * css/CSSImportRule.cpp:
1388         (WebCore::CSSImportRule::setCSSStyleSheet): If site specific hacks are
1389         enabled, check if the imported style sheet is the MediaWiki
1390         KHTMLFixes.css. If so, remove the offending rule.
1391
1392 2009-08-17  Brent Fulgham  <bfulgham@webkit.org>
1393
1394         Reviewed by Kevin Ollivier.
1395
1396         Correct crash when processing local cancelled requests.
1397
1398         No new tests. Existing fast/images/favicon-as-image.html
1399         displays the problem.
1400
1401         * platform/network/curl/ResourceHandleManager.cpp:
1402         (WebCore::writeCallback): Add check for m_cancelled after
1403           performing local-file processing.
1404         (WebCore::ResourceHandleManager::downloadTimerCallback): Add
1405           check for m_cancelled after performing local-file processing.
1406
1407 2009-08-17  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
1408
1409         Unreviewed. Reverts 47371, since it breaks GTK+.
1410
1411         * platform/graphics/ImageSource.cpp:
1412         (WebCore::ImageSource::setData):
1413         * platform/image-decoders/ImageDecoder.cpp: Removed.
1414         * platform/image-decoders/ImageDecoder.h:
1415         (WebCore::ImageDecoder::ImageDecoder):
1416         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
1417         (WebCore::convertCMYKToRGBA):
1418         (WebCore::convertRGBToRGBA):
1419         (WebCore::JPEGImageDecoder::outputScanlines):
1420         * platform/image-decoders/jpeg/JPEGImageDecoder.h:
1421         * platform/image-decoders/png/PNGImageDecoder.cpp:
1422         (WebCore::PNGImageDecoder::headerAvailable):
1423         (WebCore::PNGImageDecoder::rowAvailable):
1424
1425 2009-08-17  Yong Li  <yong.li@torchmobile.com>
1426
1427         Reviewed by Adam Treat.
1428
1429         Allow image decoders to down-sample the image directly
1430         to scaled output buffer. This can be enabled/disabled by
1431         macro ENABLE(IMAGE_DECODER_DOWN_SAMPLING).
1432         Only JPEG and PNG decoders are modified to support it now.
1433         https://bugs.webkit.org/show_bug.cgi?id=28308
1434
1435         * platform/graphics/ImageSource.cpp:
1436         (WebCore::ImageSource::setData):
1437         * platform/image-decoders/ImageDecoder.cpp: Added.
1438         * platform/image-decoders/ImageDecoder.h:
1439         (WebCore::ImageDecoder::ImageDecoder):
1440         (WebCore::ImageDecoder::setMaxNumPixels):
1441         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
1442         (WebCore::convertCMYKToRGBA):
1443         (WebCore::convertRGBToRGBA):
1444         (WebCore::JPEGImageDecoder::outputScanlines):
1445         * platform/image-decoders/jpeg/JPEGImageDecoder.h:
1446         (WebCore::JPEGImageDecoder::setSize):
1447         * platform/image-decoders/png/PNGImageDecoder.cpp:
1448         (WebCore::PNGImageDecoder::headerAvailable):
1449         (WebCore::PNGImageDecoder::rowAvailable):
1450
1451 2009-08-17  Simon Fraser  <simon.fraser@apple.com>
1452
1453         Build fix: fix float literals to avoid casting warnings.
1454
1455         * rendering/MediaControlElements.cpp:
1456
1457 2009-08-17  Simon Fraser  <simon.fraser@apple.com>
1458
1459         Reviewed by Eric Seidel.
1460
1461         Use OwnPtrs for GraphicsLayers
1462         https://bugs.webkit.org/show_bug.cgi?id=28399
1463
1464         Convert RenderLayerBacking and RenderLayerCompositor to use OwnPtrs
1465         for their references to GraphicsLayers.
1466
1467         * platform/graphics/GraphicsLayer.h:
1468         * platform/graphics/mac/GraphicsLayerCA.mm:
1469         (WebCore::GraphicsLayer::create):
1470         * rendering/RenderLayerBacking.cpp:
1471         (WebCore::RenderLayerBacking::RenderLayerBacking):
1472         (WebCore::RenderLayerBacking::createGraphicsLayer):
1473         (WebCore::RenderLayerBacking::destroyGraphicsLayer):
1474         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
1475         (WebCore::RenderLayerBacking::updateInternalHierarchy):
1476         (WebCore::RenderLayerBacking::updateClippingLayers):
1477         (WebCore::RenderLayerBacking::updateForegroundLayer):
1478         (WebCore::RenderLayerBacking::setContentsNeedDisplayInRect):
1479         * rendering/RenderLayerBacking.h:
1480         (WebCore::RenderLayerBacking::graphicsLayer):
1481         (WebCore::RenderLayerBacking::clippingLayer):
1482         (WebCore::RenderLayerBacking::ancestorClippingLayer):
1483         (WebCore::RenderLayerBacking::foregroundLayer):
1484         (WebCore::RenderLayerBacking::parentForSublayers):
1485         (WebCore::RenderLayerBacking::childForSuperlayers):
1486         * rendering/RenderLayerCompositor.cpp:
1487         (WebCore::RenderLayerCompositor::~RenderLayerCompositor):
1488         (WebCore::RenderLayerCompositor::rootPlatformLayer):
1489         (WebCore::RenderLayerCompositor::didMoveOnscreen):
1490         (WebCore::RenderLayerCompositor::ensureRootPlatformLayer):
1491         (WebCore::RenderLayerCompositor::destroyRootPlatformLayer):
1492         * rendering/RenderLayerCompositor.h:
1493
1494 2009-08-17  Pavel Feldman  <pfeldman@chromium.org>
1495
1496         Reviewed by Timothy Hatcher.
1497
1498         WebInspector: Reset InjectedScript styles cache on document change.
1499
1500         https://bugs.webkit.org/show_bug.cgi?id=28390
1501
1502         * inspector/InspectorController.cpp:
1503         (WebCore::InspectorController::close):
1504         (WebCore::InspectorController::populateScriptObjects):
1505         (WebCore::InspectorController::didCommitLoad):
1506         (WebCore::InspectorController::resetInjectedScript):
1507         * inspector/InspectorController.h:
1508         * inspector/InspectorDOMAgent.cpp:
1509         (WebCore::InspectorDOMAgent::setDocument):
1510         * inspector/InspectorDOMAgent.h:
1511         * inspector/front-end/InjectedScript.js:
1512         (InjectedScript._reset):
1513
1514 2009-08-17  Darin Adler  <darin@apple.com>
1515
1516         Reviewed by Sam Weinig.
1517
1518         * rendering/MediaControlElements.cpp: Removed unneeded include of CString.h,
1519         resorted includes, renamed "doc" to "document" and fixed formatting.
1520
1521 2009-08-17  Darin Adler  <darin@apple.com>
1522
1523         Reviewed by Sam Weinig.
1524
1525         Removed functions now unneeded due to use of Reflect to create
1526         language bindings.
1527
1528         * accessibility/AccessibilityRenderObject.cpp:
1529         (WebCore::AccessibilityRenderObject::accessibilityParentForImageMap):
1530         Get at usemap attribute directly.
1531
1532         * editing/DeleteButtonController.cpp:
1533         (WebCore::DeleteButtonController::createDeletionUI):
1534         Get at id attribute directly.
1535         * editing/EditorCommand.cpp:
1536         (WebCore::executeInsertHorizontalRule): Ditto.
1537
1538         * html/HTMLDocument.cpp:
1539         (WebCore::HTMLDocument::dir): Get at dir attribute of body directly.
1540         (WebCore::HTMLDocument::setDir): Ditto.
1541
1542         * html/HTMLElement.cpp: Deleted unused functions.
1543         * html/HTMLElement.h: Ditto.
1544
1545         * html/HTMLImageElement.cpp: Deleted unused functions.
1546         (WebCore::HTMLImageElement::alt): Changed to return const AtomicString&.
1547         (WebCore::HTMLImageElement::addSubresourceAttributeURLs): Changed to
1548         get at usemap attribute directly, but added a FIXME because although
1549         it is what the old code did, it looks to not be entirely correct.
1550
1551         * html/HTMLImageElement.h: Deleted unused functions.
1552
1553         * rendering/HitTestResult.cpp:
1554         (WebCore::HitTestResult::altDisplayString): Get at alt attribute directly.
1555
1556         * rendering/RenderImage.cpp:
1557         (WebCore::RenderImage::imageMap): Get at usemap attribute directly.
1558
1559         * rendering/RenderLayerBacking.cpp:
1560         (WebCore::RenderLayerBacking::createGraphicsLayer): Get at id attribute
1561         directly.
1562         (WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer): Removed
1563         explicit HTMLNames namespace qualification.
1564
1565 2009-08-17  Darin Adler  <darin@apple.com>
1566
1567         Reviewed by Sam Weinig.
1568
1569         * dom/Document.cpp:
1570         (WebCore::Document::setFocusedNode): Removed unneeded calls
1571         to RefPtr::get.
1572
1573 2009-08-17  Pavel Feldman  <pfeldman@chromium.org>
1574
1575         Reviewed by Timothy Hatcher.
1576
1577         WebInspector: Discard DOM Node bindings on any document change.
1578
1579         https://bugs.webkit.org/show_bug.cgi?id=28389
1580
1581         * inspector/InspectorDOMAgent.cpp:
1582         (WebCore::InspectorDOMAgent::setDocument):
1583
1584 2009-08-13  Joseph Pecoraro  <joepeck02@gmail.com>
1585
1586         Reviewed by Timothy Hatcher.
1587
1588         Inspector: Improve Cookie DataGrid to Show Hidden Data
1589         https://bugs.webkit.org/show_bug.cgi?id=28269
1590
1591         * English.lproj/localizedStrings.js: DataGrid Headers "Name", "Value", "Size", ...
1592         * WebCore.gypi: added missing files
1593
1594           Implemented Bindings for InspectorController.deleteCookie(name)
1595
1596         * inspector/InspectorBackend.idl:
1597         * bindings/js/JSInspectorBackendCustom.cpp:
1598         (WebCore::JSInspectorBackend::cookies):
1599         (WebCore::JSInspectorBackend::deleteCookie):
1600
1601           v8 Bindings Stubs
1602
1603         * bindings/v8/custom/V8CustomBinding.h:
1604         * bindings/v8/custom/V8InspectorBackendCustom.cpp:
1605         (WebCore::CALLBACK_FUNC_DECL):
1606
1607           Removed WebInspector.Cookie
1608
1609         * inspector/front-end/Cookie.js: Removed.
1610         * inspector/front-end/inspector.html:
1611         * inspector/front-end/WebKit.qrc:
1612
1613           Improved DataGrid and Kept Fallback Behavior for Platforms that don't
1614           yet provide access to raw cookies.
1615
1616         * inspector/front-end/CookieItemsView.js:
1617         (WebInspector.CookieItemsView):
1618         (WebInspector.CookieItemsView.prototype.get statusBarItems):
1619         (WebInspector.CookieItemsView.prototype.update):
1620         (WebInspector.CookieItemsView.prototype.buildCookies):
1621         (WebInspector.CookieItemsView.prototype.dataGridForCookies):
1622         (WebInspector.CookieItemsView.prototype.fallbackUpdate.callback):
1623         (WebInspector.CookieItemsView.prototype.fallbackUpdate):
1624         (WebInspector.CookieItemsView.prototype.fallbackBuildCookiesFromString):
1625         (WebInspector.CookieItemsView.prototype.fallbackDataGridForCookies):
1626         (WebInspector.CookieItemsView.prototype._deleteButtonClicked):
1627
1628           Interaction with the page through Injected Script (for fallback behavior)
1629
1630         * inspector/front-end/DOMAgent.js:
1631         (InspectorController.getCookies):
1632         * inspector/front-end/InjectedScript.js:
1633         (InjectedScript.setStyleProperty): style fix
1634         (InjectedScript.getCookies):
1635
1636           Allow alignment of text inside DataGrids.
1637
1638         * inspector/front-end/DataGrid.js:
1639         (WebInspector.DataGrid):
1640         (WebInspector.DataGridNode.prototype.createCell):
1641         * inspector/front-end/DatabasesPanel.js:
1642         (WebInspector.DatabasesPanel.prototype.dataGridForDOMStorage):
1643         * inspector/front-end/inspector.css:
1644
1645           Added deleteCookie(., ., String name)
1646           Modified getRawCookies to return a bool to know if its implemented
1647
1648         * platform/CookieJar.h:
1649
1650
1651           Implemented deleteCookie for Macs
1652
1653         * platform/mac/CookieJar.mm:
1654         (WebCore::getRawCookies):
1655         (WebCore::deleteCookie):
1656
1657           Stub Implementations for Other Platforms
1658
1659         * platform/haiku/CookieJarHaiku.cpp:
1660         (WebCore::getRawCookies):
1661         (WebCore::deleteCookie):
1662         * platform/network/chromium/CookieJarChromium.cpp:
1663         (WebCore::getRawCookies):
1664         (WebCore::deleteCookie):
1665         * platform/network/curl/CookieJarCurl.cpp:
1666         (WebCore::getRawCookies):
1667         (WebCore::deleteCookie):
1668         * platform/network/soup/CookieJarSoup.cpp:
1669         (WebCore::getRawCookies):
1670         (WebCore::deleteCookie):
1671         * platform/network/win/CookieJarCFNetWin.cpp:
1672         (WebCore::getRawCookies):
1673         (WebCore::deleteCookie):
1674         * platform/network/win/CookieJarWin.cpp:
1675         (WebCore::getRawCookies):
1676         (WebCore::deleteCookie):
1677         * platform/qt/CookieJarQt.cpp:
1678         (WebCore::getRawCookies):
1679         (WebCore::deleteCookie):
1680
1681 2009-08-17  Adam Treat  <adam.treat@torchmobile.com>
1682
1683         Blind build fix for Leopard.
1684
1685         * platform/graphics/GraphicsContext.cpp:
1686         (WebCore::GraphicsContext::adjustLineToPixelBoundaries):
1687
1688 2009-08-13  Mike Fenton  <mike.fenton@torchmobile.com>
1689
1690         Reviewed by Adam Treat.
1691
1692         Style fixes based on cpp_style.py and WebKit Style guide for
1693         GraphicsContextCG.cpp
1694
1695         https://bugs.webkit.org/show_bug.cgi?id=28268
1696
1697         * platform/graphics/cg/GraphicsContextCG.cpp:
1698         (WebCore::GraphicsContext::drawLine):
1699         (WebCore::GraphicsContext::drawEllipse):
1700         (WebCore::GraphicsContext::strokeArc):
1701         (WebCore::GraphicsContext::drawConvexPolygon):
1702         (WebCore::GraphicsContext::applyStrokePattern):
1703         (WebCore::GraphicsContext::drawPath):
1704         (WebCore::GraphicsContext::clipOut):
1705         (WebCore::GraphicsContext::clipOutEllipseInRect):
1706         (WebCore::GraphicsContext::addInnerRoundedRectClip):
1707         (WebCore::GraphicsContext::clipToImageBuffer):
1708         (WebCore::GraphicsContext::setPlatformShadow):
1709         (WebCore::GraphicsContext::setLineCap):
1710         (WebCore::GraphicsContext::setLineJoin):
1711         (WebCore::GraphicsContext::roundToDevicePixels):
1712         (WebCore::GraphicsContext::drawLineForText):
1713         (WebCore::GraphicsContext::setURLForRect):
1714         (WebCore::GraphicsContext::setImageInterpolationQuality):
1715         (WebCore::GraphicsContext::imageInterpolationQuality):
1716         (WebCore::GraphicsContext::setPlatformTextDrawingMode):
1717         (WebCore::GraphicsContext::setCompositeOperation):
1718
1719 2009-08-13  Mike Fenton  <mike.fenton@torchmobile.com>
1720
1721         Reviewed by Adam Treat.
1722
1723         Style fixes based on cpp_style.py and WebKit Style guide for
1724         GraphicsContext.cpp/h, GraphicsContextCairo.cpp and GraphicsContextQt.cpp.
1725
1726         https://bugs.webkit.org/show_bug.cgi?id=28268
1727
1728         * platform/graphics/GraphicsContext.cpp:
1729         (WebCore::GraphicsContext::save):
1730         (WebCore::GraphicsContext::restore):
1731         (GraphicsContext::drawText):
1732         (GraphicsContext::initFocusRing):
1733         (GraphicsContext::focusRingBoundingRect):
1734         (GraphicsContext::drawImage):
1735         * platform/graphics/GraphicsContext.h:
1736         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1737         (WebCore::GraphicsContext::drawLine):
1738         (WebCore::GraphicsContext::strokeArc):
1739         (WebCore::GraphicsContext::setLineCap):
1740         (WebCore::GraphicsContext::setLineJoin):
1741         (WebCore::toCairoOperator):
1742         * platform/graphics/qt/GraphicsContextQt.cpp:
1743
1744 2009-08-17  Darin Adler  <darin@apple.com>
1745
1746         Reviewed by Dan Bernstein.
1747
1748         Change HTMLAreaElement to use OwnArrayPtr
1749         https://bugs.webkit.org/show_bug.cgi?id=28386
1750
1751         * html/HTMLAreaElement.cpp:
1752         (WebCore::HTMLAreaElement::HTMLAreaElement): Removed unneeded initializer.
1753         (WebCore::HTMLAreaElement::~HTMLAreaElement): Removed unneeded delete call.
1754         (WebCore::HTMLAreaElement::parseMappedAttribute): Use the set function
1755         instead of deletion followed by assignment.
1756         * html/HTMLAreaElement.h: Use OwnArrayPtr.
1757
1758 2009-08-17  Darin Adler  <darin@apple.com>
1759
1760         Fix Windows build.
1761
1762         * dom/make_names.pl: Add back cast to (void*) needed on Windows.
1763
1764 2009-08-17  Darin Adler  <darin@apple.com>
1765
1766         Reviewed by Dan Bernstein.
1767
1768         Move noResize from HTMLFrameElementBase to HTMLFrameElement
1769         https://bugs.webkit.org/show_bug.cgi?id=28384
1770
1771         * html/HTMLFrameElement.cpp:
1772         (WebCore::HTMLFrameElement::HTMLFrameElement): Initialize m_noResize.
1773         (WebCore::HTMLFrameElement::parseMappedAttribute): Set m_noResize to true
1774         here if noresizeAttr is changed. This code was moved here from
1775         HTMLFrameElementBase, but I added some FIXME comments.
1776         (WebCore::HTMLFrameElement::setNoResize): Set the attribute based on
1777         boolean argument. Moved here from HTMLFrameElementBase.
1778
1779         * html/HTMLFrameElement.h: Moved noResize, setNoResize, and m_noResize
1780         here from HTMLFrameElementBase.
1781
1782         * html/HTMLFrameElementBase.cpp:
1783         (WebCore::HTMLFrameElementBase::HTMLFrameElementBase): Removed m_noResize.
1784         (WebCore::HTMLFrameElementBase::parseMappedAttribute): Removed code to parse
1785         noresizeAttr.
1786
1787         * html/HTMLFrameElementBase.h: Removed noResize, setNoResize, and m_noResize.
1788
1789 2009-08-17  Darin Adler  <darin@apple.com>
1790
1791         Reviewed by Dan Bernstein.
1792
1793         Tweak HTMLFrameElementBase so that m_URL can be private
1794         https://bugs.webkit.org/show_bug.cgi?id=28385
1795
1796         * html/HTMLFrameElement.cpp:
1797         (WebCore::HTMLFrameElement::rendererIsNeeded): Removed m_URL argument.
1798         * html/HTMLFrameElementBase.cpp:
1799         (WebCore::HTMLFrameElementBase::isURLAllowed): Use m_URL instead of
1800         taking an argument.
1801         (WebCore::HTMLFrameElementBase::openURL): Removed m_URL argument.
1802         * html/HTMLFrameElementBase.h: Removed argument from isURLAllowed function.
1803         * html/HTMLIFrameElement.cpp:
1804         (WebCore::HTMLIFrameElement::rendererIsNeeded): Removed m_URL argument.
1805
1806 2009-08-17  Darin Adler  <darin@apple.com>
1807
1808         Reviewed by Dan Bernstein.
1809
1810         HTMLViewSourceDocument should use smart pointers
1811         https://bugs.webkit.org/show_bug.cgi?id=28378
1812
1813         * html/HTMLViewSourceDocument.cpp:
1814         (WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument): Don't initialize
1815         pointers any more since RefPtr starts 0 by default.
1816         (WebCore::HTMLViewSourceDocument::createContainingTable): Use more specific
1817         types for local variables.
1818         (WebCore::HTMLViewSourceDocument::addSpanWithClassName): Return a PassRefPtr,
1819         and use a RefPtr of a more specific type for a local variable.
1820         (WebCore::HTMLViewSourceDocument::addLine): Use more specific types for local
1821         variables, and use RefPtr as well.
1822         (WebCore::HTMLViewSourceDocument::addLink): Return a PassRefPtr, and use a
1823         RefPtr of a more specific type for a local variable.
1824
1825         * html/HTMLViewSourceDocument.h: Change return types to PassRefPtr and
1826         data member types to RefPtr.
1827
1828 2009-08-17  Darin Adler  <darin@apple.com>
1829
1830         Reviewed by Sam Weinig.
1831
1832         DOM attribute getter/setter functions should use const AtomicString& type
1833         https://bugs.webkit.org/show_bug.cgi?id=25425
1834
1835         Convert 4 more classes. These are classes I am going to make other changes
1836         to soon, so it's good to have this use of Reflect in the IDL out of the way.
1837
1838         * html/HTMLEmbedElement.idl: Use Reflect for many attributes.
1839         * html/HTMLFrameElement.idl: Ditto.
1840         * html/HTMLIFrameElement.idl: Ditto.
1841         * html/HTMLObjectElement.idl: Ditto.
1842
1843 2009-08-17  Darin Adler  <darin@apple.com>
1844
1845         Reviewed by Sam Weinig.
1846
1847         Script to create element factory needs changes to accommodate calling create
1848         https://bugs.webkit.org/show_bug.cgi?id=28379
1849
1850         * dom/make_names.pl: Tweak formatting. Remove lots of unneeded quotes
1851         around names used inside {}. Added new createWithNew property for tags
1852         that makes the factory use a create function instead of calling new.
1853         Renamed functions with initialize in their name to have default in their
1854         name, since they return an array full of default values and don't themselves
1855         initialize anything.
1856
1857 2009-08-16  Darin Adler  <darin@apple.com>
1858
1859         Reviewed by Dan Bernstein.
1860
1861         StyledElement should use ASCIICType instead of having its own toHex function
1862         https://bugs.webkit.org/show_bug.cgi?id=28377
1863
1864         * dom/StyledElement.cpp:
1865         (WebCore::StyledElement::addCSSColor): Use isASCIIHexDigit and toASCIIHexValue.
1866
1867 2009-08-16  Darin Adler  <darin@apple.com>
1868
1869         Reviewed by Dan Bernstein.
1870
1871         execCommand("InsertHorizontalRule") inserts a broken <hr> element
1872         https://bugs.webkit.org/show_bug.cgi?id=28375
1873
1874         * editing/EditorCommand.cpp:
1875         (WebCore::executeInsertHorizontalRule): Create an HTMLHRElement
1876         instead of just an HTMLElement.
1877
1878 2009-08-16  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
1879
1880         Reviewed by George Staikos.
1881
1882         [WML] <option> element & 'onpick' events - history navigation is broken
1883         https://bugs.webkit.org/show_bug.cgi?id=28371
1884
1885         After selecting an option element with an 'onpick' event associated with a 'go' task,
1886         the navigation is executed. When going back in history, the same 'onpick' event is fired
1887         again. Fix that problem, add wml/option-element-onpick-recursion.html covering the bug.
1888
1889         Test: wml/option-element-onpick-recursion.html
1890
1891         * wml/WMLOptionElement.cpp:
1892         (WebCore::WMLOptionElement::handleIntrinsicEventIfNeeded):
1893         * wml/WMLSelectElement.cpp:
1894         (WebCore::WMLSelectElement::WMLSelectElement):
1895         (WebCore::WMLSelectElement::selectInitialOptions):
1896         * wml/WMLSelectElement.h:
1897         (WebCore::WMLSelectElement::initialized):
1898
1899 2009-08-16  Anthony Ricaud  <rik@webkit.org>
1900
1901         Reviewed by Timothy Hatcher.
1902
1903         Inspector Resource filtering: keyboard Navigation always uses ALL resources
1904         https://bugs.webkit.org/show_bug.cgi?id=28231
1905         
1906         Determine if a resource is selectable on user action.
1907         
1908         * inspector/front-end/ResourcesPanel.js:
1909         (WebInspector.ResourceSidebarTreeElement.prototype.get selectable):
1910
1911 2009-08-16  David Kilzer  <ddkilzer@apple.com>
1912
1913         <http://webkit.org/b/28355> Replace MAX()/MIN() macros with type-safe std::max()/min() templates
1914
1915         Reviewed by Dan Bernstein.
1916
1917         * accessibility/mac/AccessibilityObjectWrapper.mm:
1918         (AXAttributeStringSetSpelling): Changed MIN() to min().
1919         * platform/graphics/mac/FontMacATSUI.mm:
1920         (WebCore::Font::selectionRectForComplexText): Changed MAX() to
1921         max() and MIN() to min().
1922         (WebCore::Font::floatWidthForComplexText): Ditto.
1923         * platform/graphics/mac/SimpleFontDataMac.mm: Added using
1924         std::max statement.
1925         (WebCore::SimpleFontData::platformInit): Changed MAX() to max().
1926         * platform/text/mac/TextCodecMac.cpp:
1927         (WebCore::TextCodecMac::decode): Changed MIN() to min().
1928
1929 2009-08-16  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
1930
1931         Reviewed by George Staikos.
1932
1933         [WML] Cleanup WMLIntrinsicEventHandling code
1934         https://bugs.webkit.org/show_bug.cgi?id=28358
1935
1936         Remove superflous "Event* evt" parameter from executeTask() methods. It's a leftover from the initial WML merge.
1937
1938         * wml/WMLAnchorElement.cpp:
1939         (WebCore::WMLAnchorElement::defaultEventHandler):
1940         * wml/WMLDoElement.cpp:
1941         (WebCore::WMLDoElement::defaultEventHandler):
1942         * wml/WMLGoElement.cpp:
1943         (WebCore::WMLGoElement::executeTask):
1944         * wml/WMLGoElement.h:
1945         * wml/WMLIntrinsicEventHandler.cpp:
1946         (WebCore::WMLIntrinsicEventHandler::triggerIntrinsicEvent):
1947         * wml/WMLPrevElement.cpp:
1948         (WebCore::WMLPrevElement::executeTask):
1949         * wml/WMLPrevElement.h:
1950         * wml/WMLRefreshElement.cpp:
1951         (WebCore::WMLRefreshElement::executeTask):
1952         * wml/WMLRefreshElement.h:
1953         * wml/WMLTaskElement.h:
1954
1955 2009-08-16  Pavel Feldman  <pfeldman@chromium.org>
1956
1957         Reviewed by Timothy Hatcher.
1958
1959         WebInspector: A handful of DOMAgent-related fixes and cleanups.
1960
1961         - renamed elementId to nodeId in operations on nodes.
1962         - added load listeners to frame owners in InspectorDOMAgent.
1963         - removed InspectorController::inspectedWindowScriptObjectCleared event.
1964         - preserved isViaInspector flag for 'via inspector' marker to survive styles update.
1965         - removed contentDocument-related logic from ElementsPanel since it is handled in
1966             the InspectorDOMAgent.
1967         - removed DOM listeners unregistration and corresponding events from InspectorController.
1968         - made this.styles 'private' in ElementsPanel.
1969         - added TODO for the handleCopy processing.
1970
1971         https://bugs.webkit.org/show_bug.cgi?id=28356
1972
1973         * WebCore.order:
1974         * inspector/InspectorBackend.cpp:
1975         (WebCore::InspectorBackend::getChildNodes):
1976         (WebCore::InspectorBackend::setTextNodeValue):
1977         * inspector/InspectorBackend.h:
1978         * inspector/InspectorBackend.idl:
1979         * inspector/InspectorController.cpp:
1980         * inspector/InspectorController.h:
1981         * inspector/InspectorDOMAgent.cpp:
1982         (WebCore::InspectorDOMAgent::startListening):
1983         (WebCore::InspectorDOMAgent::stopListening):
1984         (WebCore::InspectorDOMAgent::handleEvent):
1985         (WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
1986         (WebCore::InspectorDOMAgent::getChildNodes):
1987         (WebCore::InspectorDOMAgent::pushNodePathToFrontend):
1988         (WebCore::InspectorDOMAgent::setTextNodeValue):
1989         (WebCore::InspectorDOMAgent::buildObjectForNode):
1990         (WebCore::InspectorDOMAgent::buildArrayForContainerChildren):
1991         (WebCore::InspectorDOMAgent::innerParentNode):
1992         * inspector/InspectorDOMAgent.h:
1993         * inspector/InspectorFrontend.cpp:
1994         * inspector/InspectorFrontend.h:
1995         * inspector/front-end/DOMAgent.js:
1996         (WebInspector.DOMDocument.prototype.addEventListener):
1997         (WebInspector.DOMDocument.prototype.removeEventListener):
1998         (WebInspector.DOMDocument.prototype._fireDomEvent):
1999         (WebInspector.DOMAgent.prototype.getChildNodesAsync.mycallback):
2000         (WebInspector.DOMAgent.prototype.getChildNodesAsync):
2001         (WebInspector.DOMAgent.prototype._setChildNodes):
2002         (WebInspector.CSSStyleDeclaration.parseRule):
2003         (WebInspector.childNodeInserted):
2004         (WebInspector.childNodeRemoved):
2005         * inspector/front-end/ElementsPanel.js:
2006         (WebInspector.ElementsPanel):
2007         (WebInspector.ElementsPanel.prototype.reset):
2008         (WebInspector.ElementsPanel.prototype.addStyleChange):
2009         (WebInspector.ElementsPanel.prototype.removeStyleChange):
2010         (WebInspector.ElementsPanel.prototype._updateModifiedNodes):
2011         (WebInspector.ElementsPanel.prototype.updateBreadcrumb):
2012         (WebInspector.ElementsPanel.prototype.handleCopyEvent):
2013         * inspector/front-end/ElementsTreeOutline.js:
2014         (WebInspector.ElementsTreeOutline.prototype.set rootDOMNode):
2015         (WebInspector.ElementsTreeOutline.prototype.findTreeElement):
2016         (WebInspector.ElementsTreeElement):
2017         (WebInspector.ElementsTreeElement.prototype._updateChildren.updateChildrenOfNode):
2018         (WebInspector.ElementsTreeElement.prototype._updateChildren):
2019         (WebInspector.ElementsTreeElement.prototype.onexpand):
2020         * inspector/front-end/InjectedScript.js:
2021         (InjectedScript.addStyleSelector):
2022         (InjectedScript._serializeRule):
2023         * inspector/front-end/StylesSidebarPane.js:
2024         (WebInspector.StylePropertiesSection):
2025         * inspector/front-end/inspector.js:
2026         (WebInspector.set hoveredDOMNode):
2027         * inspector/front-end/treeoutline.js:
2028         (TreeOutline.prototype.findTreeElement):
2029         * inspector/front-end/utilities.js:
2030         (Node.prototype.enclosingNodeOrSelfWithNodeNameInArray):
2031         (Node.prototype.enclosingNodeOrSelfWithClass):
2032         (isAncestorNode):
2033         (firstCommonNodeAncestor):
2034         (traverseNextNode):
2035         (traversePreviousNode):
2036         ():
2037         * loader/FrameLoader.cpp:
2038         (WebCore::FrameLoader::dispatchWindowObjectAvailable):
2039         * page/android/InspectorControllerAndroid.cpp:
2040
2041 2009-08-15  Simon Fraser  <simon.fraser@apple.com>
2042
2043         Reviewed by Dave Hyatt
2044
2045         Optimize updateFillImages() to not add/remove clients every time
2046         https://bugs.webkit.org/show_bug.cgi?id=28334
2047
2048         Optimize the case where old and new just have a single layer pointing to the same (or no)
2049         image.
2050
2051         * rendering/RenderObject.cpp:
2052         (WebCore::RenderObject::updateFillImages):
2053
2054 2009-08-15  Simon Fraser  <simon.fraser@apple.com>
2055
2056         Reviewed by Anders Carlsson.
2057
2058         Implement animations of multiple text-shadows and -webkit-box-shadows.
2059         https://bugs.webkit.org/show_bug.cgi?id=28266
2060         
2061         Test: transitions/multiple-shadow-transitions.html
2062
2063         * page/animation/AnimationBase.cpp:
2064         (WebCore::PropertyWrapperShadow::equals):
2065         (WebCore::PropertyWrapperShadow::blend):
2066
2067 2009-08-15  Simon Fraser  <simon.fraser@apple.com>
2068
2069         Reviewed by Anders Carlsson.
2070
2071         Make transitions work for position and size of multiple backgrounds and masks.
2072         https://bugs.webkit.org/show_bug.cgi?id=28266
2073         
2074         Make background-position, background-size, -webkit-mask-position and -webkit-mask-size
2075         properties animatable with multiple backgrounds, rather than just animating the first one.
2076
2077         Tests: transitions/multiple-background-size-transitions.html
2078                transitions/multiple-background-transitions.html
2079                transitions/multiple-mask-transitions.html
2080
2081         * page/animation/AnimationBase.cpp:
2082         (WebCore::FillLayerPropertyWrapperBase::FillLayerPropertyWrapperBase):
2083         (WebCore::FillLayerPropertyWrapperBase::~FillLayerPropertyWrapperBase):
2084         (WebCore::FillLayerPropertyWrapperGetter::FillLayerPropertyWrapperGetter):
2085         (WebCore::FillLayerPropertyWrapperGetter::equals):
2086         (WebCore::FillLayerPropertyWrapper::FillLayerPropertyWrapper):
2087         (WebCore::FillLayerPropertyWrapper::blend):
2088         (WebCore::FillLayersPropertyWrapper::FillLayersPropertyWrapper):
2089         (WebCore::FillLayersPropertyWrapper::equals):
2090         (WebCore::FillLayersPropertyWrapper::blend):
2091         (WebCore::ensurePropertyMap):
2092         * rendering/style/FillLayer.h:
2093         (WebCore::FillLayer::setXPosition):
2094         (WebCore::FillLayer::setYPosition):
2095         (WebCore::FillLayer::setSize):
2096
2097 2009-08-15  George Staikos  <george.staikos@torchmobile.com>
2098
2099         Reviewed by Jan Alonzo.
2100
2101         Don't crash in fieldset code when WML is enabled.
2102         https://bugs.webkit.org/show_bug.cgi?id=28012
2103
2104         Test: fast/wml/html-fieldset-crash.html
2105
2106         * rendering/RenderFieldset.cpp:
2107         (WebCore::RenderFieldset::findLegend): ++brackets
2108
2109 2009-08-15  Sam Weinig  <sam@webkit.org>
2110
2111         Try and enable EventSource on Windows.
2112
2113         * WebCore.vcproj/WebCoreCommon.vsprops:
2114         * WebCore.vcproj/build-generated-files.sh:
2115
2116 2009-08-15  Sam Weinig  <sam@webkit.org>
2117
2118         Reviewed by Dan Bernstein.
2119
2120         Setting attribute event listeners to the body does not set them on the window
2121         https://bugs.webkit.org/show_bug.cgi?id=28343
2122
2123         Tests: fast/dom/Window/HTMLBodyElement-window-eventListener-attributes.html
2124                fast/dom/Window/HTMLFrameSetElement-window-eventListener-attributes.html
2125
2126         * html/HTMLBodyElement.cpp:
2127         (WebCore::HTMLBodyElement::setOnblur): Use setWindowAttributeEventListener instead of setAttributeEventListener.
2128         (WebCore::HTMLBodyElement::setOnerror): Ditto.
2129         (WebCore::HTMLBodyElement::setOnfocus): Ditto.
2130         (WebCore::HTMLBodyElement::setOnload): Ditto.
2131         (WebCore::HTMLBodyElement::setOnbeforeunload): Ditto.
2132         (WebCore::HTMLBodyElement::setOnmessage): Ditto.
2133         (WebCore::HTMLBodyElement::setOnoffline): Ditto.
2134         (WebCore::HTMLBodyElement::setOnonline): Ditto.
2135         (WebCore::HTMLBodyElement::setOnresize): Ditto.
2136         (WebCore::HTMLBodyElement::setOnstorage): Ditto.
2137         (WebCore::HTMLBodyElement::setOnunload): Ditto.
2138         * html/HTMLFrameSetElement.cpp:
2139         (WebCore::HTMLFrameSetElement::setOnblur): Ditto.
2140         (WebCore::HTMLFrameSetElement::setOnerror): Ditto.
2141         (WebCore::HTMLFrameSetElement::setOnfocus): Ditto.
2142         (WebCore::HTMLFrameSetElement::setOnload): Ditto.
2143         (WebCore::HTMLFrameSetElement::setOnbeforeunload): Ditto.
2144         (WebCore::HTMLFrameSetElement::setOnmessage): Ditto.
2145         (WebCore::HTMLFrameSetElement::setOnoffline): Ditto.
2146         (WebCore::HTMLFrameSetElement::setOnonline): Ditto.
2147         (WebCore::HTMLFrameSetElement::setOnresize): Ditto.
2148         (WebCore::HTMLFrameSetElement::setOnstorage): Ditto.
2149         (WebCore::HTMLFrameSetElement::setOnunload): Ditto.
2150
2151 2009-08-15  Sam Weinig  <sam@webkit.org>
2152
2153         Reviewed by Dan Bernstein.
2154
2155         Fix up some IDL comments.
2156
2157         * html/HTMLBodyElement.idl:
2158         * html/HTMLFrameSetElement.idl:
2159
2160 2009-08-15  Adam Bergkvist  <adam.bergkvist@ericsson.com>
2161
2162         Reviewed by Sam Weinig.
2163
2164         Added implementation of the EventSource object that enables
2165         server-sent events from HTML5.
2166         http://dev.w3.org/html5/eventsource/
2167         https://bugs.webkit.org/show_bug.cgi?id=14997
2168
2169         Tests: fast/eventsource/eventsource-attribute-listeners.html
2170                fast/eventsource/eventsource-constructor.html
2171                http/tests/eventsource/eventsource-bad-mime-type.html
2172                http/tests/eventsource/eventsource-parse-event-stream.html
2173                http/tests/eventsource/eventsource-reconnect.html
2174                http/tests/eventsource/eventsource-status-code-states.html
2175                http/tests/eventsource/workers/eventsource-simple.html
2176
2177         * Configurations/FeatureDefines.xcconfig:
2178         * DerivedSources.cpp:
2179         * DerivedSources.make:
2180         * GNUmakefile.am:
2181         * WebCore.pro:
2182         * WebCore.vcproj/WebCore.vcproj:
2183         * WebCore.xcodeproj/project.pbxproj:
2184         * bindings/js/JSDOMWindowCustom.cpp:
2185         (WebCore::JSDOMWindow::eventSource):
2186         * bindings/js/JSEventSourceConstructor.cpp: Added.
2187         (WebCore::):
2188         (WebCore::JSEventSourceConstructor::JSEventSourceConstructor):
2189         (WebCore::constructEventSource):
2190         (WebCore::JSEventSourceConstructor::getConstructData):
2191         * bindings/js/JSEventSourceConstructor.h: Added.
2192         (WebCore::JSEventSourceConstructor::classInfo):
2193         * bindings/js/JSEventSourceCustom.cpp: Added.
2194         (WebCore::JSEventSource::markChildren):
2195         (WebCore::JSEventSource::addEventListener):
2196         (WebCore::JSEventSource::removeEventListener):
2197         * bindings/js/JSEventTarget.cpp:
2198         (WebCore::toJS):
2199         (WebCore::toEventTarget):
2200         * bindings/js/JSWorkerContextCustom.cpp:
2201         (WebCore::JSWorkerContext::eventSource):
2202         * dom/EventNames.h:
2203         * dom/EventTarget.cpp:
2204         (WebCore::EventTarget::toEventSource):
2205         * dom/EventTarget.h:
2206         * page/DOMWindow.idl:
2207         * page/EventSource.cpp: Added.
2208         (WebCore::EventSource::EventSource):
2209         (WebCore::EventSource::~EventSource):
2210         (WebCore::EventSource::connect):
2211         (WebCore::EventSource::endRequest):
2212         (WebCore::EventSource::scheduleReconnect):
2213         (WebCore::EventSource::reconnectTimerFired):
2214         (WebCore::EventSource::url):
2215         (WebCore::EventSource::readyState):
2216         (WebCore::EventSource::close):
2217         (WebCore::EventSource::scriptExecutionContext):
2218         (WebCore::EventSource::addEventListener):
2219         (WebCore::EventSource::removeEventListener):
2220         (WebCore::EventSource::dispatchEvent):
2221         (WebCore::EventSource::didReceiveResponse):
2222         (WebCore::EventSource::didReceiveData):
2223         (WebCore::EventSource::didFinishLoading):
2224         (WebCore::EventSource::didFail):
2225         (WebCore::EventSource::didFailRedirectCheck):
2226         (WebCore::EventSource::parseEventStream):
2227         (WebCore::EventSource::parseEventStreamLine):
2228         (WebCore::EventSource::dispatchGenericEvent):
2229         (WebCore::EventSource::dispatchMessageEvent):
2230         (WebCore::EventSource::stop):
2231         * page/EventSource.h: Added.
2232         (WebCore::EventSource::create):
2233         (WebCore::EventSource::):
2234         (WebCore::EventSource::setOnopen):
2235         (WebCore::EventSource::onopen):
2236         (WebCore::EventSource::setOnmessage):
2237         (WebCore::EventSource::onmessage):
2238         (WebCore::EventSource::setOnerror):
2239         (WebCore::EventSource::onerror):
2240         (WebCore::EventSource::toEventSource):
2241         (WebCore::EventSource::eventListeners):
2242         (WebCore::EventSource::refEventTarget):
2243         (WebCore::EventSource::derefEventTarget):
2244         * page/EventSource.idl: Added.
2245         * workers/WorkerContext.idl:
2246
2247 2009-08-15  Pavel Feldman  <pfeldman@chromium.org>
2248
2249         Reviewed by Timothy Hatcher.
2250
2251         WebInspector: Minor DOMAgent bugfixes.
2252
2253         https://bugs.webkit.org/show_bug.cgi?id=28177
2254
2255         * inspector/InspectorDOMAgent.cpp:
2256         (WebCore::InspectorDOMAgent::nodeForId):
2257         * inspector/front-end/DOMAgent.js:
2258         (WebInspector.DOMAgent):
2259         * inspector/front-end/ElementsPanel.js:
2260         (WebInspector.ElementsPanel.this.treeOutline.focusedNodeChanged):
2261
2262 2009-08-15  Pavel Feldman  <pfeldman@chromium.org>
2263
2264         Reviewed by Timothy Hatcher.
2265
2266         WebInspector: Evaluating objects while on a breakpoint dumps string
2267         representation instead of live object. 
2268
2269         https://bugs.webkit.org/show_bug.cgi?id=28280
2270
2271         * inspector/front-end/ConsoleView.js:
2272         (WebInspector.ConsoleView.prototype.completions.this._evalInInspectedWindow):
2273         (WebInspector.ConsoleView.prototype.completions):
2274         (WebInspector.ConsoleView.prototype._reportCompletions):
2275         * inspector/front-end/ScriptsPanel.js:
2276         (WebInspector.ScriptsPanel.prototype.doEvalInCallFrame.delayedEvaluation):
2277         (WebInspector.ScriptsPanel.prototype.doEvalInCallFrame):
2278         (WebInspector.ScriptsPanel.prototype.variablesInSelectedCallFrame):
2279
2280 2009-08-15  Maxime Simon  <simon.maxime@gmail.com>
2281
2282         Reviewed by Eric Seidel.
2283
2284         [Haiku] Adding two new files to WebCore/platform/haiku:
2285         LocalizedStringsHaiku.cpp and LoggingHaiku.cpp
2286         https://bugs.webkit.org/show_bug.cgi?id=28129
2287
2288         * platform/haiku/LocalizedStringsHaiku.cpp: Added.
2289         (WebCore::submitButtonDefaultLabel):
2290         (WebCore::inputElementAltText):
2291         (WebCore::resetButtonDefaultLabel):
2292         (WebCore::defaultLanguage):
2293         (WebCore::searchableIndexIntroduction):
2294         (WebCore::fileButtonChooseFileLabel):
2295         (WebCore::fileButtonNoFileSelectedLabel):
2296         (WebCore::contextMenuItemTagOpenLinkInNewWindow):
2297         (WebCore::contextMenuItemTagDownloadLinkToDisk):
2298         (WebCore::contextMenuItemTagCopyLinkToClipboard):
2299         (WebCore::contextMenuItemTagOpenImageInNewWindow):
2300         (WebCore::contextMenuItemTagDownloadImageToDisk):
2301         (WebCore::contextMenuItemTagCopyImageToClipboard):
2302         (WebCore::contextMenuItemTagOpenFrameInNewWindow):
2303         (WebCore::contextMenuItemTagCopy):
2304         (WebCore::contextMenuItemTagGoBack):
2305         (WebCore::contextMenuItemTagGoForward):
2306         (WebCore::contextMenuItemTagStop):
2307         (WebCore::contextMenuItemTagReload):
2308         (WebCore::contextMenuItemTagCut):
2309         (WebCore::contextMenuItemTagPaste):
2310         (WebCore::contextMenuItemTagNoGuessesFound):
2311         (WebCore::contextMenuItemTagIgnoreSpelling):
2312         (WebCore::contextMenuItemTagLearnSpelling):
2313         (WebCore::contextMenuItemTagSearchWeb):
2314         (WebCore::contextMenuItemTagLookUpInDictionary):
2315         (WebCore::contextMenuItemTagOpenLink):
2316         (WebCore::contextMenuItemTagIgnoreGrammar):
2317         (WebCore::contextMenuItemTagSpellingMenu):
2318         (WebCore::contextMenuItemTagShowSpellingPanel):
2319         (WebCore::contextMenuItemTagCheckSpelling):
2320         (WebCore::contextMenuItemTagCheckSpellingWhileTyping):
2321         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
2322         (WebCore::contextMenuItemTagFontMenu):
2323         (WebCore::contextMenuItemTagBold):
2324         (WebCore::contextMenuItemTagItalic):
2325         (WebCore::contextMenuItemTagUnderline):
2326         (WebCore::contextMenuItemTagOutline):
2327         (WebCore::contextMenuItemTagWritingDirectionMenu):
2328         (WebCore::contextMenuItemTagDefaultDirection):
2329         (WebCore::contextMenuItemTagLeftToRight):
2330         (WebCore::contextMenuItemTagRightToLeft):
2331         (WebCore::contextMenuItemTagInspectElement):
2332         (WebCore::searchMenuNoRecentSearchesText):
2333         (WebCore::searchMenuRecentSearchesText):
2334         (WebCore::searchMenuClearRecentSearchesText):
2335         (WebCore::unknownFileSizeText):
2336         (WebCore::AXWebAreaText):
2337         (WebCore::AXLinkText):
2338         (WebCore::AXListMarkerText):
2339         (WebCore::AXImageMapText):
2340         (WebCore::AXHeadingText):
2341         (WebCore::imageTitle):
2342         (WebCore::contextMenuItemTagTextDirectionMenu):
2343         (WebCore::AXButtonActionVerb):
2344         (WebCore::AXTextFieldActionVerb):
2345         (WebCore::AXRadioButtonActionVerb):
2346         (WebCore::AXCheckedCheckBoxActionVerb):
2347         (WebCore::AXUncheckedCheckBoxActionVerb):
2348         (WebCore::AXLinkActionVerb):
2349         (WebCore::AXDefinitionListTermText):
2350         (WebCore::AXDefinitionListDefinitionText):
2351         * platform/haiku/LoggingHaiku.cpp: Added.
2352         (WebCore::InitializeLoggingChannelsIfNecessary):
2353
2354 2009-08-15  Darin Adler  <darin@apple.com>
2355
2356         Fix GTK build.
2357
2358         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2359         (fallbackObject): Pass 0 for document. Should be OK at least for now.
2360
2361 2009-08-15  Darin Adler  <darin@apple.com>
2362
2363         Fix Qt build.
2364
2365         * dom/XMLTokenizerQt.cpp: Use create functions instead of calling new
2366         directly to make CDATASection and Comment nodes.
2367
2368 2009-08-14  Darin Adler  <darin@apple.com>
2369
2370         Reviewed by Sam Weinig.
2371
2372         Make DOM classes start with a reference count of 1, like all other RefCounted
2373         https://bugs.webkit.org/show_bug.cgi?id=28068
2374
2375         First half, everything except for element classes.
2376
2377         * GNUmakefile.am: Removed DocPtr.h.
2378         * WebCore.gypi: Ditto.
2379         * WebCore.vcproj/WebCore.vcproj: Ditto.
2380         * WebCore.xcodeproj/project.pbxproj: Ditto.
2381
2382         * dom/Attr.cpp:
2383         (WebCore::Attr::Attr): Added a call to createTextChild here so callers don't
2384         have to call it explicitly.
2385         (WebCore::Attr::create): Added.
2386         (WebCore::Attr::setValue): Changed to take AtomicString.
2387         (WebCore::Attr::cloneNode): Use create.
2388
2389         * dom/Attr.h: Added a create function. Made the constructor private,
2390         and a lot of other functions private as well.
2391
2392         * dom/Attribute.cpp:
2393         (WebCore::Attribute::createAttrIfNeeded): Use Attr::create.
2394
2395         * dom/CDATASection.cpp:
2396         (WebCore::CDATASection::create): Added.
2397         (WebCore::CDATASection::cloneNode): Use create.
2398         (WebCore::CDATASection::virtualCreate): Ditto.
2399
2400         * dom/CDATASection.h: Added a create function. Made everything private.
2401         Removed unneeded destructor declaration.
2402
2403         * dom/CharacterData.cpp:
2404         (WebCore::CharacterData::CharacterData): Replaced the multiple constructors
2405         with a single one that takes ConstructionType.
2406
2407         * dom/CharacterData.h: Made more functions be protected and private.
2408         Made m_data be private.
2409
2410         * dom/Comment.cpp:
2411         (WebCore::Comment::Comment): Got rid of an extra constructor.
2412         (WebCore::Comment::create): Added.
2413         (WebCore::Comment::cloneNode): Call create.
2414
2415         * dom/Comment.h: Added a create function. Made everything private.
2416
2417         * dom/ContainerNode.cpp:
2418         (WebCore::dispatchChildInsertionEvents): Use RefPtr instead of DocPtr.
2419         (WebCore::dispatchChildRemovalEvents): Ditto.
2420
2421         * dom/ContainerNode.h: Made the constructor protected and passed
2422         ConstructionType instead of an isElement boolean.
2423
2424         * dom/DocPtr.h: Removed.
2425
2426         * dom/Document.cpp:
2427         (WebCore::Document::Document): Simplified the code that sets m_document
2428         since it's no longer a smart pointer.
2429         (WebCore::Document::removedLastRef): Use explicit calls to selfOnlyRef
2430         and selfOnlyDeref instead of a DocPtr in here.
2431         (WebCore::Document::~Document): Simplified the code that sets m_document
2432         since it's no longer a smart pointer.
2433         (WebCore::Document::createDocumentFragment): Call create.
2434         (WebCore::Document::createTextNode): Ditto.
2435         (WebCore::Document::createComment): Ditto.
2436         (WebCore::Document::createCDATASection): Ditto.
2437         (WebCore::Document::createProcessingInstruction): Ditto.
2438         (WebCore::Document::createEntityReference): Ditto.
2439         (WebCore::Document::createEditingTextNode): Ditto.
2440         (WebCore::Document::importNode): Call Attr::create.
2441         (WebCore::Document::createAttributeNS): Ditto.
2442
2443         * dom/Document.h: Call adoptRef. Made a lot of functions private and
2444         protected and sorted them so public functions come first.
2445
2446         * dom/DocumentFragment.cpp:
2447         (WebCore::DocumentFragment::create): Added.
2448         (WebCore::DocumentFragment::cloneNode): Call create.
2449         * dom/DocumentFragment.h: Added create.
2450
2451         * dom/DocumentType.cpp:
2452         (WebCore::DocumentType::DocumentType): Pass type to Node constructor.
2453         (WebCore::DocumentType::cloneNode): Use create.
2454         * dom/DocumentType.h:
2455         (WebCore::DocumentType::create): Call adoptRef.
2456
2457         * dom/EditingText.cpp:
2458         (WebCore::EditingText::create): Added.
2459         * dom/EditingText.h: Added a create function. Made everything private.
2460
2461         * dom/Element.cpp:
2462         (WebCore::Element::Element): Pass CreateElementZeroRefCount to preserve
2463         the zero reference count behavior for classes derived from Element.
2464
2465         * dom/EntityReference.cpp:
2466         (WebCore::EntityReference::create): Added.
2467         (WebCore::EntityReference::cloneNode): Call create.
2468         * dom/EntityReference.h: Added create. Made everything private.
2469
2470         * dom/Node.cpp:
2471         (WebCore::Node::initialRefCount): Added. Inline helper function for
2472         the constructor.
2473         (WebCore::Node::isContainer): Ditto.
2474         (WebCore::Node::isElement): Ditto.
2475         (WebCore::Node::isText): Ditto.
2476         (WebCore::Node::Node): Changed to take a construction type argument.
2477         Since m_document is now a normal pointer, added a call to selfOnlyRef.
2478         (WebCore::Node::~Node): Ditto, but selfOnlyDeref.
2479         (WebCore::Node::setDocument): Added selfOnlyRef/Deref calls.
2480         (WebCore::Node::appendTextContent): Use the data function instead of
2481         calling nodeValue functions, which do the same thing in a roundabout way.
2482
2483         * dom/Node.h: Made the constructor protected and replaced the multiple
2484         arguments iwth a single ConstructionType argument. Sorted the public
2485         things first.
2486
2487         * dom/Notation.h: Made most things private.
2488         * dom/Notation.cpp: Removed extra constructor.
2489
2490         * dom/ProcessingInstruction.cpp:
2491         (WebCore::ProcessingInstruction::create): Added.
2492         (WebCore::ProcessingInstruction::cloneNode): Call create.
2493         * dom/ProcessingInstruction.h: Added create function. Made many other
2494         members private.
2495
2496         * dom/Range.cpp:
2497         (WebCore::Range::processContents): Use DocumentFragment::create.
2498
2499         * dom/Text.cpp:
2500         (WebCore::Text::Text): Updated for base class change.
2501         (WebCore::Text::create): Added.
2502         (WebCore::Text::splitText): Changed to not require access to m_data.
2503         (WebCore::Text::cloneNode): Call create.
2504         (WebCore::Text::createRenderer): Call dataImpl.
2505         (WebCore::Text::attach): Call data.
2506         (WebCore::Text::recalcStyle): Call dataImpl.
2507         (WebCore::Text::virtualCreate): Call create.
2508         (WebCore::Text::createWithLengthLimit): Call create.
2509         (WebCore::Text::formatForDebugger): Call data.
2510
2511         * dom/Text.h: Added a create function. Made many other members private.
2512         Renamed createNew to virtualCreate.
2513
2514         * dom/XMLTokenizer.cpp:
2515         (WebCore::XMLTokenizer::enterText): Call Text::create.
2516
2517         * dom/XMLTokenizerLibxml2.cpp:
2518         (WebCore::XMLTokenizer::cdataBlock): Call CDATASection::create.
2519         (WebCore::XMLTokenizer::comment): Call Comment::create.
2520
2521         * editing/CompositeEditCommand.cpp:
2522         (WebCore::CompositeEditCommand::deleteInsignificantText):
2523         Call data instead of string.
2524
2525         * editing/CreateLinkCommand.cpp:
2526         (WebCore::CreateLinkCommand::doApply): Call Text::create.
2527
2528         * editing/EditorCommand.cpp:
2529         (WebCore::executeInsertNode): Call DocumentFragment::create.
2530
2531         * editing/SplitTextNodeCommand.cpp:
2532         (WebCore::SplitTextNodeCommand::doApply): Call Text::create.
2533
2534         * editing/markup.cpp:
2535         (WebCore::appendStartMarkup): Call data instead of nodeValue.
2536
2537         * html/HTMLDocument.h:
2538         (WebCore::HTMLDocument::create): Call adoptRef.
2539
2540         * html/HTMLElement.cpp:
2541         (WebCore::HTMLElement::createContextualFragment): Call DocumentFragment::create.
2542         (WebCore::replaceChildrenWithFragment): Call data instead of string.
2543         (WebCore::replaceChildrenWithText): Call Text::create.
2544         (WebCore::HTMLElement::setInnerText): Call DocumentFragment::create and
2545         Text::create.
2546         (WebCore::HTMLElement::setOuterText): Call Text::create.
2547
2548         * html/HTMLKeygenElement.cpp:
2549         (WebCore::HTMLKeygenElement::HTMLKeygenElement): Call Text::create.
2550
2551         * html/HTMLOptionElement.cpp:
2552         (WebCore::HTMLOptionElement::setText): Call Text::create.
2553
2554         * html/HTMLParser.cpp:
2555         (WebCore::HTMLParser::textCreateErrorCheck): Call Text::create.
2556         (WebCore::HTMLParser::commentCreateErrorCheck): Call Comment::create.
2557         (WebCore::HTMLParser::handleIsindex): Call Text::create.
2558
2559         * html/HTMLViewSourceDocument.cpp:
2560         (WebCore::HTMLViewSourceDocument::addText): Call Text::create.
2561
2562         * html/HTMLViewSourceDocument.h:
2563         (WebCore::HTMLViewSourceDocument::create): Call adoptRef.
2564
2565         * loader/FTPDirectoryDocument.cpp:
2566         (WebCore::FTPDirectoryTokenizer::appendEntry): Call Text::create.
2567         (WebCore::FTPDirectoryTokenizer::createTDForFilename): Call Text::create.
2568
2569         * loader/FTPDirectoryDocument.h:
2570         (WebCore::FTPDirectoryDocument::create): Call adoptRef.
2571         * loader/ImageDocument.h:
2572         (WebCore::ImageDocument::create): Ditto.
2573         * loader/MediaDocument.h:
2574         (WebCore::MediaDocument::create): Ditto.
2575         * loader/PlaceholderDocument.h:
2576         (WebCore::PlaceholderDocument::create): Ditto.
2577         * loader/PluginDocument.h:
2578         (WebCore::PluginDocument::create): Ditto.
2579         * loader/TextDocument.h:
2580         (WebCore::TextDocument::create): Ditto.
2581
2582         * loader/loader.cpp:
2583         (WebCore::Loader::Host::didFinishLoading): Use RefPtr instead of DocPtr.
2584         (WebCore::Loader::Host::didFail): Ditto.
2585
2586         * platform/TreeShared.h:
2587         (WebCore::TreeShared::TreeShared): Added an initialRefCount argument,
2588         defaulting to 1. Node still sometimes initializes it to 0 instead for now.
2589
2590         * rendering/RenderText.cpp:
2591         (WebCore::RenderText::originalText): Use dataImpl instead of string.
2592
2593         * rendering/RenderTextFragment.cpp:
2594         (WebCore::RenderTextFragment::originalText): Use dataImpl instead of string.
2595         (WebCore::RenderTextFragment::previousCharacter): Ditto.
2596
2597         * svg/SVGDocument.h:
2598         (WebCore::SVGDocument::create): Use adoptRef.
2599
2600         * svg/SVGElementInstance.cpp:
2601         (WebCore::SVGElementInstance::SVGElementInstance): Updated to take a
2602         PassRefPtr.
2603
2604         * svg/SVGElementInstance.h: Made everything private.
2605
2606         * wml/WMLDocument.h:
2607         (WebCore::WMLDocument::create): Called adoptRef.
2608
2609         * xml/XPathNamespace.cpp:
2610         (WebCore::XPathNamespace::XPathNamespace): Take AtomicString arguments.
2611         * xml/XPathNamespace.h: Made everything private.
2612
2613         * xml/XSLTProcessor.cpp:
2614         (WebCore::createFragmentFromSource): Use DocumentFragment::create and
2615         Text::create.
2616
2617 2009-08-13  Jon Honeycutt  <jhoneycutt@apple.com>
2618
2619         Part of <rdar://problem/6218721> No MSAA focus events fired for Webkit
2620         nightly (20866)
2621
2622         https://bugs.webkit.org/show_bug.cgi?id=20866
2623
2624         Reviewed by Oliver Hunt.
2625
2626         * accessibility/AXObjectCache.cpp:
2627         (WebCore::AXObjectCache::AXObjectCache):
2628         Changed to take a pointer to its owner document. This is used by
2629         AXObjectCache::handleFocusedUIElementChanged().
2630         (WebCore::AXObjectCache::focusedUIElementForPage):
2631         Code moved from AccessibilityRenderObject::focusedUIElement(). Modified
2632         to be a static function and to take a pointer to a Page.
2633         (WebCore::AXObjectCache::platformGenerateAXID):
2634         Moved the code to generate the next AXID from getAXID() to here. Added
2635         a #if to make this non-WIN only, because Windows has its own
2636         implementation.
2637         (WebCore::AXObjectCache::getAXID):
2638         Ensure that we generate a positive AXID, ranging from 1 to LONG_MAX.
2639
2640         * accessibility/AXObjectCache.h:
2641         Add a declaration for Document and Page. Removed the declaration of
2642         AccessibilityObject, because we include the header. Reordered the
2643         declaration of Node alphabetically. Moved the typedef for AXID to
2644         AccessibilityObject. Removed some trailing whitespace. Added a member
2645         variable to hold a pointer to the owner Document.
2646         (WebCore::AXObjectCache::AXObjectCache):
2647         Changed to take a pointer to its owner Document.
2648         (WebCore::AXObjectCache::focusedUIElementForPage):
2649         Added; code moved from AccessiblityRenderObject::focusedUIElement().
2650         Returns the focused element with respect to accessibility.
2651         (WebCore::AXObjectCache::platformGenerateAXID):
2652         Declare a function to generate an AXID.
2653         (WebCore::AXObjectCache::objectFromAXID):
2654         Return the AccessibilityObject with the given AXID.
2655
2656         * accessibility/AccessibilityObject.h:
2657         Moved the typedef for AXID from AXObjectCache to here. Made the m_id
2658         member use the typedef.
2659         (WebCore::AccessibilityObject::axObjectID):
2660         Changed the return type to use the typedef.
2661         (WebCore::AccessibilityObject::setAXObjectID):
2662         Changed the argument type to use the typedef.
2663
2664         * accessibility/AccessibilityRenderObject.cpp:
2665         Removed some unneeded #includes.
2666         (WebCore::AccessibilityRenderObject::focusedUIElement):
2667         Moved the code to AXObjectCache::focusedUIElementForPage(), which we now
2668         call.
2669
2670         * accessibility/win/AXObjectCacheWin.cpp:
2671         (WebCore::AXObjectCache::platformGenerateAXID):
2672         Ensure that we generate an AXID that is in the range 1 to LONG_MAX.
2673         (WebCore::AXObjectCache::handleFocusedUIElementChanged):
2674         If the Document has no Page, return. If the Page has not focused
2675         element (respecting accessibility), return. Assert that the
2676         accessibility of the focused element is not ignored, and that the
2677         object's AXID will be negative and fit into a LONG when negated.
2678         Broadcast a focus event for the object.
2679
2680         * dom/Document.cpp:
2681         (WebCore::Document::axObjectCache):
2682         Pass this when creating the AXObjectCache.
2683         (WebCore::Document::setFocusedNode):
2684         Call AXObjectCache::handleFocusedUIElementChanged() on Windows.
2685
2686 2009-08-14  Jiahua Huang  <jhuangjiahua@gmail.com>
2687
2688         Reviewed by Jan Alonzo.
2689
2690         [gtk] Pasteboard/GtkClipboard can't handle the "text/html" target.
2691         https://bugs.webkit.org/show_bug.cgi?id=27028
2692
2693         Remove the improper set of enum WebKitWebViewTargetInfo
2694         by grabbing the target infos via m_helper.
2695
2696         * manual-tests/gtk/copy-htmltext.html: Added.
2697         * platform/Pasteboard.h:
2698         * platform/gtk/PasteboardGtk.cpp:
2699         (WebCore::clipboard_get_contents_cb):
2700         * platform/gtk/PasteboardHelper.h:
2701
2702 2009-08-14  Simon Fraser  <simon.fraser@apple.com>
2703
2704         Reviewed by Dave Hyatt.
2705
2706         Fix an assertion when bringing up the Inspector.
2707         https://bugs.webkit.org/show_bug.cgi?id=28318
2708         
2709         The fix for bug 28295 assumed that image clients count the number of times
2710         addClient/removeClient is called. That was true for CachedResource clients,
2711         but not StyleGeneratedImage clients, which pass the call onto CSSImageGeneratorValue.
2712         
2713         Fix by making CSSImageGeneratorValue count the number of times a client is
2714         added/removed.
2715
2716         * css/CSSCanvasValue.cpp:
2717         (WebCore::CSSCanvasValue::canvasChanged):
2718         (WebCore::CSSCanvasValue::canvasResized):
2719         * css/CSSImageGeneratorValue.cpp:
2720         (WebCore::CSSImageGeneratorValue::addClient):
2721         (WebCore::CSSImageGeneratorValue::removeClient):
2722         (WebCore::CSSImageGeneratorValue::getImage):
2723         * css/CSSImageGeneratorValue.h:
2724
2725 2009-08-14  Brent Fulgham  <bfulgham@webkit.org>
2726
2727         Reviewed by Kevin Ollivier.
2728
2729         Correct libcurl crash when downloading local files.
2730         https://bugs.webkit.org/show_bug.cgi?id=28312
2731
2732         No new tests. Test is covered by fast/encoding/char-encoding-mac.html.
2733
2734         * platform/network/curl/ResourceHandleManager.cpp:
2735         (WebCore::handleLocalReceiveResponse): New static function that
2736           performs the local setting of valid URL and firing didReceiveResponse.
2737           This code was moved from writeCallback.
2738         (WebCore::writeCallback): Move local file handling to static function
2739           (above) and use the function instead.
2740         (WebCore::readCallback): Add check
2741           for responseFired, and handle as a local file if it was not.
2742
2743 2009-08-14  Maxime Simon  <simon.maxime@gmail.com>
2744
2745         Reviewed by Oliver Hunt.
2746
2747         [Haiku] Fix RenderThemeHaiku build.
2748         https://bugs.webkit.org/show_bug.cgi?id=28307
2749
2750         * platform/haiku/RenderThemeHaiku.cpp: Included RenderThemeHaiku.h
2751         instead of RenderTheme.h.
2752         (WebCore::RenderThemeHaiku::paintCheckbox): Removed the wrong 'virtual'
2753         before the function.
2754         (WebCore::RenderThemeHaiku::paintRadio): Removed the wrong 'virtual'
2755         before the function.
2756         * platform/haiku/RenderThemeHaiku.h: Corrected wrong function definitions.
2757
2758 2009-08-14  Maxime Simon  <simon.maxime@gmail.com>
2759
2760         Reviewed by Oliver Hunt.
2761
2762         [Haiku] Adding SharedBufferHaiku to WebCore.
2763         https://bugs.webkit.org/show_bug.cgi?id=28309
2764
2765         * platform/haiku/SharedBufferHaiku.cpp: Added.
2766         (WebCore::SharedBuffer::createWithContentsOfFile):
2767         * platform/haiku/TemporaryLinkStubs.cpp: Removed unnecessary headers
2768         and functions.
2769         (WebCore::signedPublicKeyAndChallengeString):
2770         (WebCore::getSupportedKeySizes):
2771
2772 2009-08-14  Nate Chapin  <japhet@chromium.org>
2773
2774         Reviewed by Dimitri Glazkov.
2775
2776         Ensure we're getting the right v8 context in the V8 DOMWindowEvent custom getter.
2777
2778         https://bugs.webkit.org/show_bug.cgi?id=28311
2779
2780         This should fix Chromium failing LayoutTests/fast/events/set-event-in-another-frame.html.
2781
2782         * bindings/v8/custom/V8DOMWindowCustom.cpp:
2783         (WebCore::ACCESSOR_GETTER):
2784
2785 2009-08-14  Aaron Boodman  <aa@chromium.org>
2786
2787         Reviewed by Alexey Proskuryakov.
2788
2789         BUG 28134: Move the remaining parts of Access Control from XMLHttpRequest to ThreadableDocumentLoader.
2790         https://bugs.webkit.org/show_bug.cgi?id=28134
2791
2792         No new tests added since Access Control was already well tested and this is a pure refactor.
2793
2794         * loader/DocumentThreadableLoader.cpp: Move a lot of the access control code from XHR in, preserving its
2795         basic strategy. Also, modify the synchronous path to not be a special case, but reuse more of the async
2796         path.
2797
2798         (WebCore::DocumentThreadableLoader::loadResourceSynchronously): Go through the async path and pass additional flags.
2799         (WebCore::DocumentThreadableLoader::create): Group enum params into an options struct.
2800         (WebCore::DocumentThreadableLoader::DocumentThreadableLoader): Ditto.
2801         (WebCore::DocumentThreadableLoader::makeSimpleCrossOriginAccessRequest): Brought mostly from XHR.
2802         (WebCore::DocumentThreadableLoader::makeCrossOriginAccessRequestWithPreflight): Ditto.
2803         (WebCore::DocumentThreadableLoader::willSendRequest): Handle preflight case.
2804         (WebCore::DocumentThreadableLoader::didReceiveResponse): Ditto.
2805         (WebCore::DocumentThreadableLoader::didFinishLoading): Ditto.
2806         (WebCore::DocumentThreadableLoader::getShouldUseCredentialStorage): Ditto.
2807         (WebCore::DocumentThreadableLoader::preflightSuccess): Preflight handling.
2808         (WebCore::DocumentThreadableLoader::preflightFailure): Ditto.
2809         (WebCore::DocumentThreadableLoader::loadRequest): Common request function that handles async/sync.
2810         * loader/DocumentThreadableLoader.h: Group enum params into an options struct.
2811         * loader/ThreadableLoader.cpp: Ditto.
2812         (WebCore::ThreadableLoader::create): Ditto.
2813         (WebCore::ThreadableLoader::loadResourceSynchronously): Ditto.
2814         * loader/ThreadableLoader.h: Ditto.
2815         (WebCore::ThreadableLoaderOptions::ThreadableLoaderOptions): Ditto.
2816         * loader/WorkerThreadableLoader.cpp: Ditto.
2817         (WebCore::WorkerThreadableLoader::WorkerThreadableLoader):Ditto.
2818         (WebCore::WorkerThreadableLoader::loadResourceSynchronously): Ditto.
2819         (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge): Ditto.
2820         (WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadCreateLoader): Ditto.
2821         * loader/WorkerThreadableLoader.h: Ditto.
2822         (WebCore::WorkerThreadableLoader::create): Ditto.
2823         * platform/CrossThreadCopier.h: Allow ThreadableLoaderOptions to be copied across threads.
2824         (WebCore::):
2825         * workers/WorkerScriptLoader.cpp: More enum->struct grouping.
2826         (WebCore::WorkerScriptLoader::loadSynchronously): More enum->struct grouping.
2827         (WebCore::WorkerScriptLoader::loadAsynchronously): More enum->struct grouping.
2828         * xml/XMLHttpRequest.cpp: Remove all the access control code and some supporting state.
2829         (WebCore::XMLHttpRequest::XMLHttpRequest): Ditto.
2830         (WebCore::XMLHttpRequest::createRequest): Ditto.
2831         (WebCore::XMLHttpRequest::didFinishLoading): Ditto.
2832         (WebCore::XMLHttpRequest::didReceiveResponse): Ditto.
2833         (WebCore::XMLHttpRequest::didReceiveData): Ditto.
2834         * xml/XMLHttpRequest.h: Ditto.
2835
2836 2009-08-14  Darin Adler  <darin@apple.com>
2837
2838         Reviewed by Sam Weinig.
2839
2840         Rename the confusing isObject(<class>) to inherits(<class>).
2841         It still works on non-objects, returning false.
2842
2843         * bindings/js/JSEventTarget.cpp:
2844         (WebCore::toEventTarget):
2845         * bindings/js/JSGeolocationCustom.cpp:
2846         (WebCore::createPositionCallback):
2847         (WebCore::createPositionErrorCallback):
2848         * bindings/js/JSNodeFilterCustom.cpp:
2849         (WebCore::toNodeFilter):
2850         * bindings/js/JSXMLHttpRequestCustom.cpp:
2851         (WebCore::JSXMLHttpRequest::send):
2852         * bindings/js/JSXSLTProcessorCustom.cpp:
2853         (WebCore::JSXSLTProcessor::importStylesheet):
2854         (WebCore::JSXSLTProcessor::transformToFragment):
2855         (WebCore::JSXSLTProcessor::transformToDocument):
2856         * bindings/scripts/CodeGeneratorJS.pm:
2857         * bridge/objc/objc_runtime.mm:
2858         (JSC::Bindings::callObjCFallbackObject):
2859         * bridge/runtime_method.cpp:
2860         (JSC::callRuntimeMethod):
2861         Updated to new name, inherits, from old name, isObject.
2862
2863 2009-08-14  Yael Aharon  <yael.aharon@nokia.com>
2864
2865         Reviewed by Simon Hausmann.
2866
2867         Allow Qt API to list and to remove URL schemes that were registered as
2868         local URL schemes.
2869         [Qt] Allow applications to register their own local URL scheme.
2870         https://bugs.webkit.org/show_bug.cgi?id=28240
2871
2872         * page/SecurityOrigin.cpp:
2873         (WebCore::SecurityOrigin::removeURLSchemeRegisteredAsLocal):
2874         (WebCore::SecurityOrigin::localURLSchemes):
2875         * page/SecurityOrigin.h:
2876
2877 2009-08-14  Pavel Feldman  <pfeldman@chromium.org>
2878
2879         Reviewed by Timothy Hatcher.
2880
2881         WebInspector: Wrap console objects late (in the frontend) so that injected
2882         script was already in place.
2883
2884         https://bugs.webkit.org/show_bug.cgi?id=28297
2885
2886         * inspector/ConsoleMessage.cpp:
2887         (WebCore::ConsoleMessage::ConsoleMessage):
2888         * inspector/ConsoleMessage.h:
2889         * inspector/InspectorController.cpp:
2890         (WebCore::InspectorController::addMessageToConsole):
2891         (WebCore::InspectorController::startGroup):
2892         (WebCore::InspectorController::setFrontendProxyObject):
2893         * inspector/InspectorController.h:
2894         * inspector/InspectorFrontend.cpp:
2895         (WebCore::InspectorFrontend::InspectorFrontend):
2896         (WebCore::InspectorFrontend::addMessageToConsole):
2897         * inspector/InspectorFrontend.h:
2898
2899 2009-08-13  Simon Fraser  <simon.fraser@apple.com>
2900
2901         Reviewed by Dan Bernstein.
2902
2903         Fix logic in RenderObject::updateFillImages() that led to incorrect client
2904         counts if an image was used twice in the background-image property.
2905         https://bugs.webkit.org/show_bug.cgi?id=28295
2906
2907         Test: fast/backgrounds/multiple-backgrounds-assert.html
2908
2909         * rendering/RenderObject.cpp:
2910         (WebCore::RenderObject::updateFillImages):
2911         Simplify the logic to call addClient()/removeClient() for every background
2912         image, but go through the new layers first to avoid removing all the
2913         clients of an image.
2914
2915 2009-08-13  Oliver Hunt  <oliver@apple.com>
2916
2917         Reviewed by Maciej Stachowiak.
2918
2919         Devirtualise marking
2920         https://bugs.webkit.org/show_bug.cgi?id=28294
2921
2922         Make sure we override the JSObject createStructure method on those
2923         objects that have custom marking routines.
2924
2925         * bindings/scripts/CodeGeneratorJS.pm:
2926
2927 2009-08-13  Darin Adler  <darin@apple.com>
2928
2929         Reviewed by Mark Rowe.
2930
2931         Follow-up to earlier work to remove dependencies on JavaScriptCore.
2932
2933         * ForwardingHeaders/parser/Parser.h: Removed.
2934         * inspector/JavaScriptDebugServer.cpp: Removed now-unneeded includes
2935         of Parser.h.
2936
2937 2009-08-13  Dan Bernstein  <mitz@apple.com>
2938
2939         Reviewed by Eric Seidel.
2940
2941         'box-orient: block-axis' behaves like 'box-orient: horizontal', causes
2942         an assertion failure in debug builds
2943         https://bugs.webkit.org/show_bug.cgi?id=28279
2944
2945         Test: fast/flexbox/block-axis.html
2946
2947         * css/CSSPrimitiveValueMappings.h:
2948         (WebCore::CSSPrimitiveValue::operator EBoxOrient): Map block-axis to
2949         vertical.
2950
2951 2009-08-13  Simon Fraser  <simon.fraser@apple.com>
2952
2953         Reviewed by Dan Bernstein.
2954
2955         Fix crash when removing reflection on an absolutely-positioned image.
2956         https://bugs.webkit.org/show_bug.cgi?id=28289
2957         
2958         Make sure we clean up the reflection layer when removing the reflection,
2959         so that the RenderLayer tree does not contain pointers to deleted layers.
2960
2961         Test: fast/reflections/reflected-img-crash.html
2962
2963         * rendering/RenderLayer.cpp:
2964         (WebCore::RenderLayer::~RenderLayer):
2965         (WebCore::RenderLayer::styleChanged):
2966         (WebCore::RenderLayer::removeReflection):
2967         * rendering/RenderLayer.h:
2968
2969 2009-08-13  Dan Bernstein  <mitz@apple.com>
2970
2971         Reviewed by Simon Fraser.
2972
2973         misalignment because of float:left of <div> tag
2974         https://bugs.webkit.org/show_bug.cgi?id=15869
2975
2976         One section of http://edgar.sec.gov site draws to the right of the rest
2977         of the content
2978         <rdar://problem/7135951>
2979
2980         Tests: fast/block/float/avoidance-percent-width-compat.html
2981                fast/block/float/avoidance-percent-width-strict.html
2982
2983         * rendering/RenderBlock.cpp:
2984         (WebCore::RenderBlock::getClearDelta): Changed to apply the same float
2985             avoidance logic in strict mode and in compatibility mode, which
2986             matches Firefox and IE. Changed to compute and use the computed
2987             width of the child, instead of ignoring non-fixed widths.
2988
2989 2009-08-13  Steve Block  <steveblock@google.com>
2990
2991         Reviewed by Darin Adler.
2992
2993         Geolocation PositionOptions does not use correct default values.
2994         https://bugs.webkit.org/show_bug.cgi?id=27254
2995
2996         Sets the correct default values for the properties of the PositionOptions object
2997         passed to Geolocation methods. See http://www.w3.org/TR/geolocation-API/.
2998
2999         Also adds checking to throw an exception if arguments of the incorrect type are
3000         passed to Geolocation methods. Adds a layout test to test this. This test should
3001         pass on all platforms where Geolocation is implemented.
3002
3003         Test: fast/dom/Geolocation/argument-types.html
3004
3005         * bindings/js/JSGeolocationCustom.cpp:
3006         (WebCore::createPositionCallback): Added. Creates the callback.
3007         (WebCore::createPositionErrorCallback): Added. Creates the calback.
3008         (WebCore::createPositionOptions): Added. Creates the PositionOptions object, setting defaults where required.
3009         (WebCore::JSGeolocation::getCurrentPosition): Modified. Now uses above helper functions.
3010         (WebCore::JSGeolocation::watchPosition): Modified. Now uses above helper functions.
3011         * page/Geolocation.cpp:
3012         (WebCore::Geolocation::GeoNotifier::GeoNotifier): Modified. Asserts that PositionOptions object is present.
3013         (WebCore::Geolocation::GeoNotifier::startTimer): Modified. Only starts timer if timeout has been set.
3014         * page/PositionOptions.h:
3015         (WebCore::PositionOptions::create): Modified. Creates object with default values.
3016         (WebCore::PositionOptions::timeout): Modified. Uses correct type.
3017         (WebCore::PositionOptions::hasTimeout): Added. Determines whether a timeout has been set.
3018         (WebCore::PositionOptions::setTimeout): Modified. Uses correct type.
3019         (WebCore::PositionOptions::maximumAge): Modified. Uses correct type.
3020         (WebCore::PositionOptions::setMaximumAge): Modified. Uses correct type.
3021         (WebCore::PositionOptions::PositionOptions): Modified. Creates object with default values.
3022
3023 2009-08-13  David Levin  <levin@chromium.org>
3024
3025         Unreviewed chromium build fix.
3026
3027         [Chromium] Let CodeGeneratorV8.pm know that RGBColor is ref-counted.
3028
3029         * bindings/scripts/CodeGeneratorV8.pm:
3030
3031 2009-08-13  Drew Wilson  <atwilson@google.com>
3032
3033         Reviewed by David Levin.
3034
3035         Merge error in SharedWorker code
3036         https://bugs.webkit.org/show_bug.cgi?id=28277
3037
3038         Fixed merge error that prevents WebKit from compiling with SHARED_WORKERS enabled.
3039         No new tests needed.
3040
3041         * workers/DefaultSharedWorkerRepository.cpp:
3042         Removed duplicated functions.
3043
3044 2009-08-13  Kyle Prete  <kylep@chromium.org>
3045
3046         Reviewed by Dave Levin.
3047
3048         Chromium: Show a "Playback Disabled" button on media error.
3049         https://bugs.webkit.org/show_bug.cgi?id=28196
3050         Use a disabled play button when the media file cannot be played.
3051
3052         No new tests needed. Covered by LayoutTests/media/video-empty-source.html
3053
3054         * rendering/RenderThemeChromiumSkia.cpp:
3055         (WebCore::RenderThemeChromiumSkia::paintMediaPlayButton):
3056
3057 2009-08-13  Mark Rowe  <mrowe@apple.com>
3058
3059         Try and fix the Qt build.
3060
3061         * bridge/qt/qt_runtime.cpp:
3062
3063 2009-08-13  Zan Dobersek  <zandobersek@gmail.com>
3064
3065         Reviewed by Gustavo Noronha.
3066
3067         [GTK] Drag and drop support
3068         https://bugs.webkit.org/show_bug.cgi?id=23642
3069
3070         Utilizes functions that are being called upon drag and drop actions.
3071         Uses different GTK clipboards that hold different types
3072         of drag data - images, HTML markup, text, URL, URL label.
3073         Also clears each clipboard before setting new data to it.
3074
3075         No new tests - despite some implementations, no new functionality
3076         is added until implementations of the GTK drag and drop protocol
3077         in WebKit part.
3078
3079         * platform/gtk/ClipboardGtk.cpp:
3080         (WebCore::ClipboardGtk::ClipboardGtk):
3081         (WebCore::ClipboardGtk::~ClipboardGtk):
3082         (WebCore::getCachedImage):
3083         (WebCore::ClipboardGtk::declareAndWriteDragImage):
3084         (WebCore::ClipboardGtk::writeURL):
3085         (WebCore::ClipboardGtk::writeRange):
3086         * platform/gtk/ClipboardGtk.h: ClipboardGdk -> ClipboardGtk
3087
3088 2009-08-13  Darin Adler  <darin@apple.com>
3089
3090         Reviewed by David Levin.
3091
3092         JavaScriptCore tweaks to get ready for the parser arena
3093         https://bugs.webkit.org/show_bug.cgi?id=28243
3094
3095         * ForwardingHeaders/runtime/CollectorHeapIterator.h: Removed.
3096
3097         * WebCore.xcodeproj/project.pbxproj: Exposed a couple header
3098         files as Private that are now needed to compile Mac WebKit.
3099
3100         * bindings/js/JSAudioConstructor.cpp:
3101         * bindings/js/JSDOMBinding.cpp:
3102         * bindings/js/JSDOMBinding.h:
3103         * bindings/js/JSDOMWindowCustom.cpp:
3104         * bindings/js/JSHTMLInputElementCustom.cpp:
3105         * bindings/js/JSHistoryCustom.cpp:
3106         * bindings/js/JSImageConstructor.cpp:
3107         * bindings/js/JSLazyEventListener.cpp:
3108         * bindings/js/JSLocationCustom.cpp:
3109         * bindings/js/JSMessageChannelConstructor.cpp:
3110         * bindings/js/JSOptionConstructor.cpp:
3111         * bindings/js/JSWebSocketConstructor.cpp:
3112         * bindings/js/JSWebSocketCustom.cpp:
3113         * bindings/js/JSWorkerConstructor.cpp:
3114         * bindings/js/JSXMLHttpRequestConstructor.cpp:
3115         * bridge/jni/jni_jsobject.mm:
3116         Updated includes.
3117
3118         * inspector/JavaScriptDebugServer.cpp:
3119         (WebCore::JavaScriptDebugServer::sourceParsed):
3120         Change to not assert if this is called with no listeners.
3121         I don't think this was guaranteed before, and we now use
3122         this code path when recompiling. Slightly less efficient,
3123         but this is a one-time cost when turning on the debugger.
3124         (WebCore::JavaScriptDebugServer::recompileAllJSFunctions):
3125         Change to call Debugger::recompileAllJSFunctions.
3126
3127 2009-08-13  Brady Eidson  <beidson@apple.com>
3128
3129         Reviewed by Eric Seidel.
3130
3131         <rdar://problem/7138591> and https://bugs.webkit.org/show_bug.cgi?id=28260
3132         onhashchange property cannot be set from javascript.
3133
3134         Test: fast/loader/onhashchange-attribute-listeners.html
3135
3136         * html/HTMLBodyElement.cpp:
3137         (WebCore::HTMLBodyElement::onhashchange):
3138         (WebCore::HTMLBodyElement::setOnhashchange):
3139         * html/HTMLBodyElement.h:
3140         * html/HTMLBodyElement.idl:
3141
3142         * html/HTMLFrameSetElement.cpp:
3143         (WebCore::HTMLFrameSetElement::onhashchange):
3144         (WebCore::HTMLFrameSetElement::setOnhashchange):
3145         * html/HTMLFrameSetElement.h:
3146         * html/HTMLFrameSetElement.idl:
3147
3148         * page/DOMWindow.cpp:
3149         (WebCore::DOMWindow::onhashchange):
3150         (WebCore::DOMWindow::setOnhashchange):
3151         * page/DOMWindow.h:
3152         * page/DOMWindow.idl:
3153
3154 2009-08-13  Mark Rowe  <mrowe@apple.com>
3155
3156         Reviewed by Geoff Garen.
3157
3158         Fix leaks of RGBColor instances from below SVGColor::rgbColor.
3159
3160         * svg/SVGColor.cpp:
3161         (WebCore::SVGColor::rgbColor): Return a PassRefPtr to ensure that the newly-allocated
3162         RGBColor is cleaned up by the caller.
3163         * svg/SVGColor.h:
3164
3165 2009-08-13  Pavel Feldman  <pfeldman@chromium.org>
3166
3167         Reviewed by Timothy Hatcher.
3168
3169         WebInspector: Migrate to DOMAgent (serialized access to DOM).
3170
3171         https://bugs.webkit.org/show_bug.cgi?id=28177
3172
3173         * bindings/js/JSInspectorBackendCustom.cpp:
3174         (WebCore::JSInspectorBackend::highlightDOMNode):
3175         (WebCore::JSInspectorBackend::nodeForId):
3176         (WebCore::JSInspectorBackend::idForNode):
3177         (WebCore::JSInspectorBackend::wrapObject):
3178         (WebCore::JSInspectorBackend::unwrapObject):
3179         (WebCore::JSInspectorBackend::pushNodePathToFrontend):
3180         (WebCore::JSInspectorBackend::selectDatabase):
3181         (WebCore::JSInspectorBackend::selectDOMStorage):
3182         * bindings/js/ScriptObjectQuarantine.cpp:
3183         (WebCore::getQuarantinedScriptObject):
3184         * bindings/js/ScriptObjectQuarantine.h:
3185         * bindings/js/ScriptValue.cpp:
3186         (WebCore::ScriptValue::isObject):
3187         * bindings/js/ScriptValue.h:
3188         * bindings/v8/ScriptObjectQuarantine.cpp:
3189         (WebCore::getQuarantinedScriptObject):
3190         * bindings/v8/ScriptObjectQuarantine.h:
3191         * bindings/v8/ScriptValue.h:
3192         (WebCore::ScriptValue::isObject):
3193         * bindings/v8/custom/V8CustomBinding.h:
3194         * bindings/v8/custom/V8InspectorBackendCustom.cpp:
3195         (WebCore::CALLBACK_FUNC_DECL):
3196         * inspector/ConsoleMessage.cpp:
3197         (WebCore::ConsoleMessage::ConsoleMessage):
3198         * inspector/ConsoleMessage.h:
3199         * inspector/InspectorBackend.cpp:
3200         (WebCore::InspectorBackend::clearMessages):
3201         (WebCore::InspectorBackend::loaded):
3202         (WebCore::InspectorBackend::highlight):
3203         (WebCore::InspectorBackend::nodeForId):
3204         (WebCore::InspectorBackend::idForNode):
3205         (WebCore::InspectorBackend::wrapObject):
3206         (WebCore::InspectorBackend::unwrapObject):
3207         (WebCore::InspectorBackend::pushNodePathToFrontend):
3208         (WebCore::InspectorBackend::addNodesToSearchResult):
3209         (WebCore::InspectorBackend::selectDatabase):
3210         (WebCore::InspectorBackend::selectDOMStorage):
3211         * inspector/InspectorBackend.h:
3212         * inspector/InspectorBackend.idl:
3213         * inspector/InspectorController.cpp:
3214         (WebCore::InspectorController::InspectorController):
3215         (WebCore::InspectorController::focusNode):
3216         (WebCore::InspectorController::addMessageToConsole):
3217         (WebCore::InspectorController::clearConsoleMessages):
3218         (WebCore::InspectorController::startGroup):
3219         (WebCore::InspectorController::scriptObjectReady):
3220         (WebCore::InspectorController::setFrontendProxyObject):
3221         (WebCore::InspectorController::close):
3222         (WebCore::InspectorController::didCommitLoad):
3223         (WebCore::InspectorController::wrapObject):
3224         (WebCore::InspectorController::unwrapObject):
3225         * inspector/InspectorController.h:
3226         * inspector/InspectorDOMAgent.cpp:
3227         (WebCore::InspectorDOMAgent::setDocument):
3228         (WebCore::InspectorDOMAgent::handleEvent):
3229         (WebCore::InspectorDOMAgent::pushDocumentToFrontend):
3230         (WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
3231         (WebCore::InspectorDOMAgent::nodeForId):
3232         (WebCore::InspectorDOMAgent::pushNodePathToFrontend):
3233         (WebCore::InspectorDOMAgent::buildObjectForNode):
3234         (WebCore::InspectorDOMAgent::buildArrayForContainerChildren):
3235         (WebCore::InspectorDOMAgent::innerParentElement):
3236         * inspector/InspectorDOMAgent.h:
3237         * inspector/InspectorDOMStorageResource.cpp:
3238         (WebCore::InspectorDOMStorageResource::bind):
3239         * inspector/InspectorFrontend.cpp:
3240         (WebCore::InspectorFrontend::clearConsoleMessages):
3241         (WebCore::InspectorFrontend::updateFocusedNode):
3242         (WebCore::InspectorFrontend::setDocument):
3243         (WebCore::InspectorFrontend::selectDatabase):
3244         (WebCore::InspectorFrontend::selectDOMStorage):
3245         (WebCore::InspectorFrontend::addNodesToSearchResult):
3246         * inspector/InspectorFrontend.h:
3247         * inspector/front-end/ConsoleView.js:
3248         (WebInspector.ConsoleView.prototype.clearMessages):
3249         (WebInspector.ConsoleView.prototype.completions):
3250         (WebInspector.ConsoleView.prototype._reportCompletions):
3251         (WebInspector.ConsoleView.prototype._messagesClicked):
3252         (WebInspector.ConsoleView.prototype.doEvalInWindow.evalCallback):
3253         (WebInspector.ConsoleView.prototype.doEvalInWindow):
3254         (WebInspector.ConsoleView.prototype._format):
3255         (WebInspector.ConsoleView.prototype._formatfunction):
3256         (WebInspector.ConsoleView.prototype._formatdate):
3257         (WebInspector.ConsoleView.prototype._formatregexp):
3258         (WebInspector.ConsoleView.prototype._formatnode):
3259         (WebInspector.ConsoleView.prototype._formatobject):
3260         * inspector/front-end/DOMAgent.js:
3261         (WebInspector.DOMNode):
3262         (WebInspector.DOMNode.prototype._renumber):
3263         (WebInspector.DOMDocument):
3264         (WebInspector.DOMAgent):
3265         (WebInspector.DOMAgent.prototype.getChildNodesAsync):
3266         (WebInspector.DOMAgent.prototype.setAttributeAsync):
3267         (WebInspector.DOMAgent.prototype.removeAttributeAsync):
3268         (WebInspector.DOMAgent.prototype.setTextNodeValueAsync):
3269         (WebInspector.DOMAgent.prototype.nodeForId):
3270         (WebInspector.DOMAgent.prototype._setDocument):
3271         (WebInspector.DOMAgent.prototype._setChildNodes):
3272         (WebInspector.DOMAgent.prototype._bindNodes):
3273         (WebInspector.DOMAgent.prototype._childNodeInserted):
3274         (WebInspector.CSSStyleDeclaration):
3275         (WebInspector.CSSStyleDeclaration.parseRule):
3276         (WebInspector.setDocument):
3277         (InspectorController.getStyles):
3278         (InspectorController.getComputedStyle):
3279         (InspectorController.getInlineStyle):
3280         (InspectorController.applyStyleText):
3281         (InspectorController.setStyleText):
3282         (InspectorController.toggleStyleEnabled):
3283         (InspectorController.applyStyleRuleText):
3284         (InspectorController.addStyleSelector):
3285         (InspectorController.setStyleProperty):
3286         (InspectorController.getPrototypes):
3287         (InspectorController.getProperties):
3288         (InspectorController.setPropertyValue):
3289         (InspectorController.evaluate):
3290         (InspectorController.addInspectedNode):
3291         (InspectorController.performSearch):
3292         (InspectorController.searchCanceled):
3293         * inspector/front-end/ElementsPanel.js:
3294         (WebInspector.ElementsPanel.this.treeOutline.focusedNodeChanged):
3295         (WebInspector.ElementsPanel.prototype.searchCanceled):
3296         (WebInspector.ElementsPanel.prototype.performSearch):
3297         (WebInspector.ElementsPanel.prototype._updateMatchesCount):
3298         (WebInspector.ElementsPanel.prototype._updateMatchesCountSoon):
3299         (WebInspector.ElementsPanel.prototype.addNodesToSearchResult):
3300         * inspector/front-end/ElementsTreeOutline.js:
3301         (WebInspector.ElementsTreeOutline.prototype.set focusedDOMNode.restoreHighlightToHoveredNode):
3302         (WebInspector.ElementsTreeOutline.prototype.set focusedDOMNode):
3303         (WebInspector.ElementsTreeElement.prototype.updateChildren):
3304         (WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted):
3305         * inspector/front-end/InjectedScript.js:
3306         (InjectedScript.applyStyleRuleText):
3307         (InjectedScript.addStyleSelector):
3308         (InjectedScript._doesSelectorAffectNode):
3309         (InjectedScript._serializeRule):
3310         (InjectedScript._serializeStyle):
3311         (InjectedScript.getProperties):
3312         (InjectedScript.evaluate):
3313         (InjectedScript.addInspectedNode):
3314         (InjectedScript.performSearch.addNodesToResults):
3315         (InjectedScript.performSearch.matchExactItems):
3316         (InjectedScript.performSearch.matchExactId.addNodesToResults.call):
3317         (InjectedScript.performSearch.matchExactId):
3318         (InjectedScript.performSearch):
3319         (InjectedScript.performSearch.matchExactTagNames):
3320         (InjectedScript.performSearch.matchExactAttributeNames):
3321         (InjectedScript.performSearch.matchPartialTagNames):
3322         (InjectedScript.performSearch.matchStartOfTagNames):
3323         (InjectedScript.performSearch.matchPartialTagNamesAndAttributeValues):
3324         (InjectedScript.performSearch.matchPartialAttributeValues):
3325         (InjectedScript.performSearch.matchStyleSelector):
3326         (InjectedScript.performSearch.matchPlainText):
3327         (InjectedScript.performSearch.matchXPathQuery):
3328         (InjectedScript.performSearch.finishedSearching):
3329         (InjectedScript.performSearch.processChunk):
3330         (InjectedScript.searchCanceled):
3331         (InjectedScript._ensureCommandLineAPIInstalled.inspectObject):
3332         (InjectedScript._ensureCommandLineAPIInstalled):
3333         (InjectedScript._resolveObject):
3334         (InjectedScript._nodeForId):
3335         (InjectedScript._objectForId):
3336         (InjectedScript._createProxyObject):
3337         * inspector/front-end/ObjectPropertiesSection.js:
3338         (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate):
3339         (WebInspector.ObjectPropertyTreeElement.prototype.update):
3340         * inspector/front-end/ObjectProxy.js:
3341         (WebInspector.ObjectProxy):
3342         (WebInspector.ObjectPropertyProxy):
3343         * inspector/front-end/PropertiesSidebarPane.js:
3344         (WebInspector.PropertiesSidebarPane.prototype.update.callback):
3345         (WebInspector.PropertiesSidebarPane.prototype.update):
3346         * inspector/front-end/StylesSidebarPane.js:
3347         (WebInspector.StylesSidebarPane.prototype.update.callback):
3348         (WebInspector.StylesSidebarPane.prototype.update):
3349         (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted):
3350         (WebInspector.StylePropertiesSection.prototype.editingSelectorCancelled):
3351         (WebInspector.BlankStylePropertiesSection.prototype.editingCommitted.callback):
3352         (WebInspector.BlankStylePropertiesSection.prototype.editingCommitted):
3353         (WebInspector.StylePropertyTreeElement.prototype):
3354         * inspector/front-end/inspector.js:
3355         (WebInspector._updateHoverHighlight):
3356         (WebInspector.loaded):
3357         (WebInspector.clearConsoleMessages):
3358         (WebInspector.selectDatabase):
3359         (WebInspector.selectDOMStorage):
3360         (WebInspector.updateFocusedNode):
3361         (WebInspector.addNodesToSearchResult):
3362         * inspector/front-end/utilities.js:
3363         (Object.proxyType):
3364         * storage/Storage.h:
3365         (WebCore::Storage::frame):
3366
3367 2009-08-13  Mark Rowe  <mrowe@apple.com>
3368
3369         Reviewed by Geoff Garen.
3370
3371         Fix leaks of RGBColor instances from below CSSPrimitiveValue::getRGBColorValue.
3372
3373         * css/CSSPrimitiveValue.cpp:
3374         (WebCore::CSSPrimitiveValue::getRGBColorValue): Return a PassRefPtr to ensure that the
3375         newly-allocated RGBColor is cleaned up by the caller.
3376         * css/CSSPrimitiveValue.h:
3377
3378 2009-08-13  Eric Seidel  <eric@webkit.org>
3379
3380         Reviewed by David Hyatt.
3381
3382         wrong font size when css font-family includes monospace
3383         https://bugs.webkit.org/show_bug.cgi?id=19161
3384
3385         Firefox only uses fixed-width default size for exactly "font-family: monospace;".
3386         WebKit has historically used fixed-width default size any time a
3387         font-family includes monospace in the fallback list.
3388
3389         This patch corrects WebKit's behavior to match Firefox.
3390         I also had to fix a bug in WebKit's font-family fallback behavior where
3391         child elements would inherit parts of their parents fallback lists.
3392
3393         This patch is mostly just replacing all cases where we used to check for:
3394         fontDescription.genericFontFamily() == MonospaceFamily
3395         with:
3396         fontDescription.useFixedDefaultSize()
3397
3398         Tests: fast/css/getComputedStyle/computed-style-font-family-monospace.html
3399                fast/css/getComputedStyle/font-family-fallback-reset.html
3400
3401         * css/CSSStyleSelector.cpp:
3402         (WebCore::CSSStyleSelector::applyProperty):
3403            Deploy useFixedDefaultSize().  Also fix the bug where child
3404            FontDescriptions would carry part of the parent font-family fallback list.
3405         (WebCore::CSSStyleSelector::checkForGenericFamilyChange):
3406            It's no longer alright to just check genericFontFamily(),
3407            we have to check to make sure the changed style has a matching useFixedDefaultSize().
3408         * platform/graphics/FontDescription.h:
3409         (WebCore::FontDescription::useFixedDefaultSize):
3410            Only use the fixed default size if we have one font family and it is "monospace".
3411            "-webkit-monospace" is the internal representation of the CSS identifier "monospace".
3412
3413 2009-08-13  Christian Plesner Hansen  <christian.plesner.hansen@gmail.com>
3414
3415         Reviewed by Dimitri Glazkov.
3416
3417         [v8] Fix atomic string externalization crash.
3418         Atomic string externalization assumes that all non-empty strings
3419         can be externalized which is untrue on 64-bit.  This change fixed
3420         that.
3421
3422         https://bugs.webkit.org/show_bug.cgi?id=28215
3423
3424         This bug causes loads of test crashes, no need to add new tests
3425         specifically for this.
3426
3427         * bindings/v8/V8Binding.cpp:
3428         (WebCore::v8StringToAtomicWebCoreString):
3429
3430 2009-08-13  George Staikos  <george.staikos@torchmobile.com>
3431
3432         Rubberstamped by Darin Adler.
3433
3434         Use ASSERT_UNUSED instead of UNUSED_PARAM
3435
3436         * wml/WMLAnchorElement.cpp:
3437         (WebCore::WMLAnchorElement::deregisterTask):
3438         * wml/WMLDoElement.cpp:
3439         (WebCore::WMLDoElement::deregisterTask):
3440
3441 2009-08-13  Steve Block  <steveblock@google.com>
3442
3443         Reviewed by Darin Adler.
3444
3445         Fixes a couple of bugs in SecurityOrigin::createFromDatabaseIdentifier.
3446         https://bugs.webkit.org/show_bug.cgi?id=28262
3447
3448         No new tests possible.
3449
3450         * page/SecurityOrigin.cpp:
3451         (WebCore::SecurityOrigin::createFromDatabaseIdentifier):
3452
3453 2009-08-13  Dirk Schulze  <krit@webkit.org>
3454
3455         Reviewed by Eric Seidel.
3456
3457         [CAIRO] getImageData fails on a given rect bigger than the image rect
3458
3459         The destination image and the source image was mixed up on creating the
3460         imageData.
3461
3462         This is just a clean up and doesn't affect the current behavior. It's not
3463         possible to test this failure in a LayoutTest. Only canvas uses getImageData
3464         at the moment and returns before calling getImageData, if the image rect does
3465         not contain the requested rect.
3466
3467         * platform/graphics/cairo/ImageBufferCairo.cpp:
3468         (WebCore::getImageData):
3469
3470 2009-08-13  Maxime Simon  <simon.maxime@gmail.com>
3471
3472         Reviewed by Eric Seidel.
3473
3474         [Haiku] Adding RenderTheme to WebCore.
3475         https://bugs.webkit.org/show_bug.cgi?id=28258
3476
3477         * platform/haiku/RenderThemeHaiku.cpp: Added.
3478         (WebCore::RenderThemeHaiku::create):
3479         (WebCore::RenderTheme::themeForPage):
3480         (WebCore::RenderThemeHaiku::RenderThemeHaiku):
3481         (WebCore::RenderThemeHaiku::~RenderThemeHaiku):
3482         (WebCore::supportsFocus):
3483         (WebCore::RenderThemeHaiku::supportsFocusRing):
3484         (WebCore::RenderThemeHaiku::platformActiveSelectionBackgroundColor):
3485         (WebCore::RenderThemeHaiku::platformInactiveSelectionBackgroundColor):
3486         (WebCore::RenderThemeHaiku::platformActiveSelectionForegroundColor):
3487         (WebCore::RenderThemeHaiku::platformInactiveSelectionForegroundColor):
3488         (WebCore::RenderThemeHaiku::platformTextSearchHighlightColor):
3489         (WebCore::RenderThemeHaiku::systemFont):
3490         (WebCore::RenderThemeHaiku::paintCheckbox):
3491         (WebCore::RenderThemeHaiku::setCheckboxSize):
3492         (WebCore::RenderThemeHaiku::paintRadio):
3493         (WebCore::RenderThemeHaiku::setRadioSize):
3494         (WebCore::RenderThemeHaiku::adjustMenuListStyle):
3495         (WebCore::RenderThemeHaiku::paintMenuList):
3496         * platform/haiku/RenderThemeHaiku.h: Added.
3497         (WebCore::RenderThemeHaiku::supportsHover):
3498
3499 2009-08-13  Maxime Simon  <simon.maxime@gmail.com>
3500
3501         Reviewed by Eric Seidel.
3502
3503         [Haiku] Remove the "m_point" code from ContextMenuHaiku.cpp
3504         https://bugs.webkit.org/show_bug.cgi?id=28256
3505
3506         * platform/haiku/ContextMenuHaiku.cpp:
3507         (WebCore::ContextMenuReceiver::ContextMenuReceiver):
3508         (WebCore::ContextMenu::ContextMenu):
3509         (WebCore::ContextMenu::appendItem):
3510         (WebCore::ContextMenu::insertItem):
3511
3512 2009-08-13  Joseph Pecoraro  <joepeck02@gmail.com>
3513
3514         Reviewed by Darin Adler.
3515
3516         Inspector: Show Hidden Cookie Data
3517         https://bugs.webkit.org/show_bug.cgi?id=28185
3518
3519           Added new file Cookie.h to the WebCore XCode
3520
3521         * WebCore.xcodeproj/project.pbxproj:
3522
3523           InspectorController.cookies() binding
3524
3525         * bindings/js/JSInspectorBackendCustom.cpp:
3526         (WebCore::JSInspectorBackend::cookies):
3527         * inspector/InspectorBackend.idl:
3528
3529           Struct for static Cookie information
3530           (name, value, path, domain, expires, httpOnly, secure, session)
3531
3532         * platform/Cookie.h: Added.
3533         (WebCore::Cookie::Cookie):
3534         
3535           Getter for the a list of raw Cookies
3536           getRawCookies(., ., out Vector<Cookie>)
3537         
3538         * platform/CookieJar.h:
3539
3540           Implementation of getRawCookies for the mac platform.
3541
3542         * platform/mac/CookieJar.mm:
3543         (WebCore::getRawCookies):
3544
3545           Stub other CookieJar implementations to satisfy the interface.
3546
3547         * platform/haiku/CookieJarHaiku.cpp:
3548         (WebCore::getRawCookies):
3549         * platform/network/chromium/CookieJarChromium.cpp:
3550         (WebCore::getRawCookies):
3551         * platform/network/curl/CookieJarCurl.cpp:
3552         (WebCore::getRawCookies):
3553         * platform/network/soup/CookieJarSoup.cpp:
3554         (WebCore::getRawCookies):
3555         * platform/network/win/CookieJarCFNetWin.cpp:
3556         (WebCore::getRawCookies):
3557         * platform/network/win/CookieJarWin.cpp:
3558         (WebCore::getRawCookies):
3559         * platform/qt/CookieJarQt.cpp:
3560         (WebCore::getRawCookies):
3561
3562 2009-08-13  Patrick Mueller  <Patrick_Mueller@us.ibm.com>
3563
3564         Reviewed by Timothy Hatcher.
3565
3566         Add a new gesture in Web Inspector to remove breakpoints
3567         https://bugs.webkit.org/show_bug.cgi?id=19131
3568         
3569         * inspector/front-end/SourceFrame.js:
3570         (WebInspector.SourceFrame.prototype._documentMouseDown):
3571
3572 2009-08-13  Norbert Leser  <norbert.leser@nokia.com>
3573
3574         Reviewed by Simon Hausmann.
3575
3576         Symbian target components (library and executable files)
3577         require Unique Identifiers (i.e., UID3).
3578         These identifiers are defined in the respective project
3579         file, conditionally for "symbian" platform.
3580
3581         * WebCore.pro:
3582
3583 2009-08-13  Shinichiro Hamaji  <hamaji@chromium.org>
3584
3585         Reviewed by Eric Seidel.
3586
3587         wrong calculation of overflow size for flexbox and table
3588         https://bugs.webkit.org/show_bug.cgi?id=28064
3589
3590         RenderFlexibleBox and RenderTable were using the width of overflow
3591         to update height of overflow, so height became wrong value and
3592         width was not updated. As the corresponding code of RenderBlock
3593         was sane, I factored it out and used from RenderFlexibleBox and
3594         RenderTable.
3595
3596         * rendering/RenderBlock.cpp:
3597         (WebCore::RenderBlock::updateOverflowWithShadowAndReflection): created from code of layoutBlock
3598         (WebCore::RenderBlock::layoutBlock):
3599         * rendering/RenderBlock.h:
3600         * rendering/RenderFlexibleBox.cpp: use updateOverflowWithShadowAndReflection
3601         (WebCore::RenderFlexibleBox::layoutBlock):
3602         * rendering/RenderTable.cpp:
3603         (WebCore::RenderTable::layout): use updateOverflowWithShadowAndReflection
3604
3605 2009-08-13  Mark Rowe  <mrowe@apple.com>
3606
3607         Revert r47185, the fix for <https://bugs.webkit.org/show_bug.cgi?id=28185>, as it broke the
3608         Windows build in a non-obvious manner.
3609
3610         * WebCore.xcodeproj/project.pbxproj:
3611         * bindings/js/JSInspectorBackendCustom.cpp:
3612         * inspector/InspectorBackend.idl:
3613         * platform/Cookie.h: Removed.
3614         * platform/CookieJar.h:
3615         * platform/haiku/CookieJarHaiku.cpp:
3616         (WebCore::setCookies):
3617         (WebCore::cookies):
3618         * platform/mac/CookieJar.mm:
3619         * platform/network/chromium/CookieJarChromium.cpp:
3620         * platform/network/curl/CookieJarCurl.cpp:
3621         * platform/network/soup/CookieJarSoup.cpp:
3622         * platform/network/win/CookieJarCFNetWin.cpp:
3623         * platform/network/win/CookieJarWin.cpp:
3624         * platform/qt/CookieJarQt.cpp:
3625
3626 2009-08-13  Ariya Hidayat  <ariya.hidayat@nokia.com>
3627
3628         Not reviewed: build fix (for r47192), adding new file from
3629         https://bugs.webkit.org/show_bug.cgi?id=28174
3630
3631         * inspector/front-end/StatusBarButton.js: Added.
3632
3633 2009-08-13  Mikhail Naganov  <mnaganov@chromium.org>
3634
3635         Reviewed by Timothy Hatcher.
3636
3637         Introduced StatusBarButton class that encapsulates glyphs support.
3638         Views updated accordingly.
3639
3640         https://bugs.webkit.org/show_bug.cgi?id=28174
3641
3642         * WebCore.gypi:
3643         * WebCore.vcproj/WebCore.vcproj:
3644         * inspector/front-end/CookieItemsView.js:
3645         (WebInspector.CookieItemsView):
3646         (WebInspector.CookieItemsView.prototype.get statusBarItems): Updated to retrieve DOM element from StatusBarButton instance (here and in similar getters below.)
3647         (WebInspector.CookieItemsView.prototype.hide):
3648         (WebInspector.CookieItemsView.prototype.update):
3649         * inspector/front-end/DOMStorageItemsView.js:
3650         (WebInspector.DOMStorageItemsView):
3651         (WebInspector.DOMStorageItemsView.prototype.get statusBarItems):
3652         (WebInspector.DOMStorageItemsView.prototype.hide):
3653         (WebInspector.DOMStorageItemsView.prototype.update):
3654         * inspector/front-end/ElementsPanel.js:
3655         (WebInspector.ElementsPanel):
3656         (WebInspector.ElementsPanel.prototype.get statusBarItems):
3657         (WebInspector.ElementsPanel.prototype.hide):