48ac3c0f73822c18fe6de222ef054c639b8e023b
[WebKit-https.git] / WebCore / ChangeLog
1 2010-04-01  James Robinson  <jamesr@chromium.org>
2
3         Reviewed by Simon Fraser.
4
5         Keeps a transient optimistic offset to the root in RenderLayer::updateLayerPositions
6         https://bugs.webkit.org/show_bug.cgi?id=33520
7
8         RenderLayer::updateLayerPositions() makes a recursive walk through all RenderLayers and updates the repaint rectangles on each.
9         These rectangles have to be calculated in the repaint container's coordinates using RenderObject::mapLocalToContainer to walk
10         up to the repaint container.  This patch keeps track of the offset to the root and uses that offset instead of walking back up to
11         the root every time.
12
13         Tests: fast/layers/nested-layers-1.html
14                fast/layers/nested-layers-2.html
15                fast/layers/nested-layers-3.html
16                fast/layers/nested-layers-4.html
17
18         * page/FrameView.cpp:
19         (WebCore::FrameView::layout):
20         * rendering/RenderBox.cpp:
21         (WebCore::RenderBox::outlineBoundsForRepaint):
22         * rendering/RenderBox.h:
23         * rendering/RenderLayer.cpp:
24         (WebCore::RenderLayer::updateLayerPositions):
25         * rendering/RenderLayer.h:
26         * rendering/RenderObject.h:
27         (WebCore::RenderObject::outlineBoundsForRepaint):
28         * rendering/RenderSVGModelObject.cpp:
29         (WebCore::RenderSVGModelObject::outlineBoundsForRepaint):
30         * rendering/RenderSVGModelObject.h:
31
32 2010-04-01  Daniel Bates  <dbates@rim.com>
33
34         Reviewed by Darin Adler.
35
36         https://bugs.webkit.org/show_bug.cgi?id=36901
37
38         Removed functions Range::operator == and Range::operator != as they
39         were using C++ code that was not sound and hence may have undefined
40         behavior.
41
42         Test case: manual-tests/crash-on-find-with-no-selection.html
43
44         * dom/Range.cpp:
45         (WebCore::areRangesEqual): Added.
46         * dom/Range.h:
47         * editing/markup.cpp:
48         (WebCore::createMarkup): Modified to call WebCore::areRangesEqual.
49         * manual-tests/crash-on-find-with-no-selection.html: Added.
50         * page/Frame.cpp:
51         (WebCore::Frame::findString): Modified to call WebCore::areRangesEqual.
52
53 2010-04-01  Geoffrey Garen  <ggaren@apple.com>
54
55         Reviewed by Sam Weinig.
56
57         Synchronous rendering when setting form control values slows down JavaScript
58         https://bugs.webkit.org/show_bug.cgi?id=36967
59
60         This patch basically reverts http://trac.webkit.org/changeset/19006.
61         
62         Dan asked me to investigate why 19006 is no longer needed. I have two answers:
63
64             (1) I was also able to remove the synchronous call to updateFromElement().
65             That call was the proximate cause of the crash that 19006 fixed.
66
67             (2) updateFromElement() no longer calls HTMLElement::setInnerText()
68             in the way that it used to. (However, it doesn't seem prudent to
69             rely on this happy coincidence.)
70
71         * html/HTMLInputElement.cpp:
72         (WebCore::HTMLInputElement::setValue): Simplified some logic here. Moved
73         setNeedsValidityCheck() outside of individual 'if' clauses, since they all
74         called it.
75         
76         Removed call to updateStyleIfNeeded(), which does rendering synchronously,
77         since that was the performance problem. (setNeedsStyleRecalc() ensures
78         that rendering will happen asynchronously.) Also removed comment about
79         ordering dangers introduced by updateStyleIfNeeded().
80         
81         Removed call to updateFromElement(), since it's dangerous and also a minor
82         performance problem. (setNeedsStyleRecalc() ensures that updateFromElement()
83         will happen asynchronously, too.)
84
85         * html/HTMLTextAreaElement.cpp:
86         (WebCore::HTMLTextAreaElement::setNonDirtyValue): Ditto. Here, I had to
87         add a call to setNeedsStyleRecalc(), since there wasn't one before.
88
89 2010-04-01  Ilya Tikhonovsky  <loislo@chromium.org>
90
91         Reviewed by Pavel Feldman.
92
93         Web Inspector: Sometimes js code can detach page from it's frame and in that case
94         Dispatch Events will stay in the TimelineAgent's events stack. Only immediate events will
95         appear at frontend.
96         https://bugs.webkit.org/show_bug.cgi?id=36890
97
98         * bindings/v8/V8Proxy.cpp:
99         (WebCore::V8Proxy::callFunction):
100         * dom/Node.cpp:
101         (WebCore::Node::dispatchGenericEvent):
102         * page/DOMWindow.cpp:
103         (WebCore::DOMWindow::dispatchEvent):
104
105 2010-04-01  Chris Fleizach  <cfleizach@apple.com>
106
107         Reviewed by Beth Dakin.
108
109         Bug 36977 - aria-label doesn't work on image map area
110         https://bugs.webkit.org/show_bug.cgi?id=36977
111
112         Test: platform/mac/accessibility/area-with-aria-label.html
113
114         * accessibility/AccessibilityImageMapLink.cpp:
115         (WebCore::AccessibilityImageMapLink::accessibilityDescription):
116
117 2010-04-01  Simon Fraser  <simon.fraser@apple.com>
118
119         Reviewed by Dan Bernstein.
120
121         Assertion failure: !repaintContainer || repaintContainer == this
122         https://bugs.webkit.org/show_bug.cgi?id=36672
123         
124         RenderText's implementation of clippedOverflowRectForRepaint() uses containingBlock()
125         to get the renderer to use for computing the repaint rect. However, the renderer returned
126         by containingBlock() may be an ancestor of the repaintContainer, and containingBlock()
127         doesn't have the 'repaintContainerSkipped' logic that container() has.
128         
129         So in this case, check to see whether repaintContainer is actually a descendant of the
130         containing block, and in that case just repaint the entire repaintContainer.
131
132         Test: compositing/repaint/inline-repaint-container.html
133
134         * rendering/RenderText.cpp:
135         (WebCore::RenderText::clippedOverflowRectForRepaint):
136
137 2010-04-01  Csaba Osztrogonác  <ossy@webkit.org>
138
139         Reviewed by Jian Li.
140
141         [Qt] REGRESSION(r56869): Windows build is broken
142         https://bugs.webkit.org/show_bug.cgi?id=36929
143
144         * WebCore.pro: LIBS += -lOle32 added.
145         * platform/UUID.cpp: Define ARRAYSIZE macro if it isn't defined before.
146
147 2010-04-01  Chris Fleizach  <cfleizach@apple.com>
148
149         Reviewed by Beth Dakin.
150
151         Bug 36968 - 1 crash in Safari at com.apple.WebCore: WebCore::Element::getAttribute const
152         https://bugs.webkit.org/show_bug.cgi?id=36968
153
154         Test: accessibility/crash-with-noelement-selectbox.html
155
156         When a <select> element had no options, the selectedIndex == -1 and that was being
157         used to index into an empty array.
158
159         * accessibility/AccessibilityRenderObject.cpp:
160         (WebCore::AccessibilityRenderObject::stringValue):
161
162 2010-04-01  MORITA Hajime  <morrita@google.com>
163
164         Reviewed by Shinichiro Hamaji.
165
166         https://bugs.webkit.org/show_bug.cgi?id=36948
167         Refactoring: Position::primaryDirection() should be extracted.
168
169         No new tests. No functinal change.
170
171         * dom/Position.cpp:
172         (WebCore::Position::getInlineBoxAndOffset):
173         (WebCore::Position::primaryDirection): Added
174         * dom/Position.h:
175         * editing/VisiblePosition.cpp:
176         (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
177         (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
178
179 2010-04-01  Alexander Pavlov  <apavlov@chromium.org>
180
181         Reviewed by Pavel Feldman.
182
183         Web Inspector: Audits: fix parsing of injected script-evaluated result for CssInHeadRule
184         https://bugs.webkit.org/show_bug.cgi?id=36952
185
186         * inspector/front-end/AuditRules.js:
187         (WebInspector.AuditRules.CssInHeadRule.prototype.doRun):
188
189 2010-03-31  Jeremy Orlow  <jorlow@chromium.org>
190
191         Reviewed by Nate Chapin.
192
193         Misc IndexedDatabase cleanup
194         https://bugs.webkit.org/show_bug.cgi?id=36889
195
196         No functional changes.
197
198         * bindings/v8/custom/V8CustomIDBCallbacks.h:  
199         (WebCore::V8CustomIDBCallbacks::onSuccess):
200         (WebCore::V8CustomIDBCallbacks::onError):
201         (WebCore::V8CustomIDBCallbacks::V8CustomIDBCallbacks):
202             Get rid of 2 largely redundant bools
203
204         * storage/IndexedDatabase.h:
205         * storage/IndexedDatabaseImpl.cpp:
206         (WebCore::IndexedDatabaseImpl::open):
207         * storage/IndexedDatabaseImpl.h:
208         * storage/IndexedDatabaseRequest.cpp:
209         (WebCore::IndexedDatabaseRequest::open):
210         * storage/IndexedDatabaseRequest.h:
211             Plumb the Frame* and style cleanups.
212
213 2010-03-31  Nikolas Zimmermann  <nzimmermann@rim.com>
214
215         Reviewed by Dirk Schulze.
216
217         REGRESSION: document.documentElement.getScreenCTM() returns incorrect matrix.
218         https://bugs.webkit.org/show_bug.cgi?id=27183
219
220         Rewrite getCTM() / getScreenCTM() handling in an iterative way, fixing all known problems/limitations.
221         The bug mentioned above is actually not a regression, getScreenCTM() only worked before, because we
222         did not handle non-SVG CSS box parents properly. When support was added to handle those cases, the
223         getScreenCTM() handling was completly off, causing a lot of trouble in real-life SVG applications (carto.net for instance)
224
225         Tests: svg/custom/svgsvgelement-ctm.xhtml (fixed typo, missing unit identifier in CSS 'height' property, leading to incorrect results)
226                svg/custom/svgsvgelement-ctm2.xhtml
227                svg/custom/svgsvgelement-ctm3.xhtml
228                svg/custom/svgsvgelement-ctm4.xhtml
229                svg/custom/svgsvgelement-ctm5.xhtml
230
231         * svg/SVGLocatable.cpp:
232         (WebCore::SVGLocatable::getBBox):
233         (WebCore::SVGLocatable::computeCTM):
234         * svg/SVGLocatable.h:
235         (WebCore::SVGLocatable::localCoordinateSpaceTransform):
236         * svg/SVGSVGElement.cpp:
237         (WebCore::SVGSVGElement::localCoordinateSpaceTransform):
238         (WebCore::SVGSVGElement::createRenderer):
239         * svg/SVGSVGElement.h:
240         * svg/SVGStyledElement.cpp:
241         (WebCore::SVGStyledElement::localCoordinateSpaceTransform):
242         * svg/SVGStyledElement.h:
243         * svg/SVGStyledLocatableElement.cpp:
244         (WebCore::SVGStyledLocatableElement::getCTM):
245         (WebCore::SVGStyledLocatableElement::getScreenCTM):
246         * svg/SVGStyledLocatableElement.h:
247         (WebCore::SVGStyledLocatableElement::localCoordinateSpaceTransform):
248         * svg/SVGStyledTransformableElement.cpp:
249         (WebCore::SVGStyledTransformableElement::getCTM):
250         (WebCore::SVGStyledTransformableElement::getScreenCTM):
251         * svg/SVGStyledTransformableElement.h:
252         (WebCore::SVGStyledTransformableElement::localCoordinateSpaceTransform):
253         * svg/SVGTextElement.cpp:
254         (WebCore::SVGTextElement::getCTM):
255         (WebCore::SVGTextElement::getScreenCTM):
256         * svg/SVGTextElement.h:
257         (WebCore::SVGTextElement::localCoordinateSpaceTransform):
258         * svg/SVGTransformable.cpp:
259         (WebCore::SVGTransformable::SVGTransformable):
260         * svg/SVGTransformable.h:
261         (WebCore::SVGTransformable::localCoordinateSpaceTransform):
262
263 2010-04-01  Vitaly Repeshko  <vitalyr@chromium.org>
264
265         Reviewed by Darin Fisher.
266
267         [V8] Quick fix for failure in SerializedScriptValue
268         https://bugs.webkit.org/show_bug.cgi?id=36943
269
270         This allows the web worker layout tests to pass again.
271
272         * bindings/v8/SerializedScriptValue.h:
273         (WebCore::SerializedScriptValue::deserializeAndSetProperty):
274
275 2010-03-31  MORITA Hajime  <morrita@google.com>
276         
277         Reviewed by Darin Adler.
278
279         Crash when writing into a detached TITLE element
280         https://bugs.webkit.org/show_bug.cgi?id=25567
281         
282         Document::setTitle() invoked HTMLTitleElement::setText(), which
283         contains DOM tree modification, even when setTitle() is called
284         from HTMLTitleElement::childrenChanged().  Fix to skip setText()
285         when setTitle() is called childrenChanged() to avoid cascading
286         DOM mutations between Document and HTMLTitleElement.
287
288         Test: fast/dom/title-content-write-set.html
289
290         * dom/Document.cpp:
291         (WebCore::Document::setTitle):
292
293 2010-04-01  Roland Steiner  <rolandsteiner@chromium.org>
294
295         Reviewed by Darin Adler.
296
297         Bug 36803 - 'Inline-table' workaround for <ruby> broken with ruby support
298         https://bugs.webkit.org/show_bug.cgi?id=36803
299
300         Don't use ruby rendering if the underlying 'display' property has been
301         changed into a value other than 'inline' or 'block' (such as 'inline-table').
302
303         Test: fast/ruby/ruby-inline-table.html
304
305         * rendering/RenderObject.cpp:
306         (WebCore::RenderObject::createObject):
307
308 2010-03-31  Geoffrey Garen  <ggaren@apple.com>
309
310         Reviewed by Darin Adler.
311
312         Crash submitting display:none textarea in a form
313         https://bugs.webkit.org/show_bug.cgi?id=36905
314
315         Test: fast/forms/textarea-submit-crash.html
316
317         * html/HTMLTextAreaElement.cpp:
318         (WebCore::HTMLTextAreaElement::appendFormData): Do update layout before
319         asking our renderer for its text, since we can't rely on our renderer's
320         text if layout is needed.
321
322         * rendering/RenderTextControl.cpp:
323         (WebCore::RenderTextControl::textWithHardLineBreaks): Don't update layout
324         while being asked for our text, since doing so may delete us, causing a crash.
325
326 2010-03-31  Chris Fleizach  <cfleizach@apple.com>
327
328         Reviewed by Darin Adler.
329
330         Bug 36845 - AX: need a way to set the label of a AXWebArea through WebKit
331         https://bugs.webkit.org/show_bug.cgi?id=36845
332
333         Provide a way through WebKit to set an accessible label that describes the web area.
334
335         Test: platform/mac/accessibility/html-with-aria-label.html
336
337         * accessibility/AccessibilityObject.h:
338         (WebCore::AccessibilityObject::setAccessibleName):
339         * accessibility/AccessibilityRenderObject.cpp:
340         (WebCore::AccessibilityRenderObject::accessibilityDescription):
341         (WebCore::AccessibilityRenderObject::setAccessibleName):
342         * accessibility/AccessibilityRenderObject.h:
343
344 2010-03-31  Mark Rowe  <mrowe@apple.com>
345
346         Reviewed by Darin Adler.
347
348         <http://webkit.org/b/36878> REGRESSION: Trailing colon on hostnames (with no port specified) causes "Not allowed to use restricted network port"
349
350         * platform/KURL.cpp:
351         (WebCore::KURL::port): Explicitly handle the case of a colon being present in the URL after the host name but with
352         no port number before the path.  This is handled in the same manner as the colon and port being omitted completely.
353
354 2010-03-31  Gavin Barraclough  <barraclough@apple.com>
355
356         Reviewed by Oliver Hunt.
357
358         Remove dependency on TextBreakIterator from StringImpl.cpp,
359         and from member methods of String.
360
361         Make 'numGraphemeClusters' & 'numCharactersInGraphemeClusters'
362         global function defined in PlatformString.h, rather than
363         member methods on String (these can be implemented purely
364         using the characters() and length() public interface),
365         and make 'makeCapitalized' a static function in RenderText.cpp.
366
367         * dom/InputElement.cpp:
368         (WebCore::InputElement::sanitizeUserInputValue):
369         (WebCore::InputElement::handleBeforeTextInsertedEvent):
370         * html/HTMLInputElement.cpp:
371         (WebCore::HTMLInputElement::tooLong):
372         * html/HTMLTextAreaElement.cpp:
373         (WebCore::HTMLTextAreaElement::handleBeforeTextInsertedEvent):
374         (WebCore::HTMLTextAreaElement::sanitizeUserInputValue):
375         (WebCore::HTMLTextAreaElement::tooLong):
376         * platform/text/PlatformString.h:
377         (WebCore::String::makeSecure):
378         * platform/text/String.cpp:
379         (WebCore::numGraphemeClusters):
380         (WebCore::numCharactersInGraphemeClusters):
381         * platform/text/StringImpl.cpp:
382         * platform/text/StringImpl.h:
383         * rendering/RenderText.cpp:
384         (WebCore::makeCapitalized):
385         (WebCore::RenderText::setTextInternal):
386
387 2010-03-31  Vitaly Repeshko  <vitalyr@chromium.org>
388
389         Reviewed by David Levin.
390
391         [V8] SerializedScriptValue must be deserialized only once and in the right context
392         https://bugs.webkit.org/show_bug.cgi?id=36892
393
394         See also https://bugs.webkit.org/show_bug.cgi?id=34227 for the
395         corresponding JSC change.
396
397         General idea: SerializedScriptValue must be deserialized only once
398         and in the context of the intended MessageEvent recepient. The
399         approach we take for now is to eagerly deserialize when a
400         JavaScript wrapper for MessageEvent is created.
401
402         A better fix would be to keep a reference to the context in
403         MessageEvent and use it when lazily deserializing. It's harder to
404         do since the API doesn't have a clean method to have such a reference.
405
406         Tested by fast/dom/Window/window-postmessage-clone-frames.html. This
407         test still fails but only for the types which we can't serialize yet.
408
409         * bindings/scripts/CodeGeneratorV8.pm:
410         * bindings/v8/SerializedScriptValue.h:
411         (WebCore::SerializedScriptValue::deserializeAndSetProperty):
412         * bindings/v8/custom/V8MessageEventCustom.cpp:
413         (WebCore::V8MessageEvent::initMessageEventCallback):
414
415 2010-03-31  Adam Barth  <abarth@webkit.org>
416
417         Reviewed by Darin Fisher.
418
419         Cleanup RedirectScheduler
420         https://bugs.webkit.org/show_bug.cgi?id=36874
421
422         Removed the nutty ScheduledRedirection struct in favor of a hierarchy
423         of classes to represent the various kinds of scheduled redirects.
424         Doing this lets us get rid of the pseudo RTTI switch statements on
425         "type" in favour of calling virtual functions.
426
427         No new tests because this change should be API identical with the
428         existing RedirectScheduler.
429
430         * loader/RedirectScheduler.cpp:
431         (WebCore::ScheduledNavigation::ScheduledNavigation):
432         (WebCore::ScheduledNavigation::~ScheduledNavigation):
433         (WebCore::ScheduledNavigation::isLocationChange):
434         (WebCore::ScheduledNavigation::shouldStartTimer):
435         (WebCore::ScheduledNavigation::didStartTimer):
436         (WebCore::ScheduledNavigation::didStopTimer):
437         (WebCore::ScheduledNavigation::delay):
438         (WebCore::ScheduledNavigation::lockHistory):
439         (WebCore::ScheduledNavigation::lockBackForwardList):
440         (WebCore::ScheduledNavigation::wasDuringLoad):
441         (WebCore::ScheduledURLNavigation::ScheduledURLNavigation):
442         (WebCore::ScheduledURLNavigation::fire):
443         (WebCore::ScheduledURLNavigation::didStartTimer):
444         (WebCore::ScheduledURLNavigation::didStopTimer):
445         (WebCore::ScheduledURLNavigation::url):
446         (WebCore::ScheduledURLNavigation::referrer):
447         (WebCore::ScheduledURLNavigation::wasUserGesture):
448         (WebCore::ScheduledRedirect::ScheduledRedirect):
449         (WebCore::ScheduledRedirect::isLocationChange):
450         (WebCore::ScheduledRedirect::shouldStartTimer):
451         (WebCore::ScheduledLocationChange::ScheduledLocationChange):
452         (WebCore::ScheduledRefresh::ScheduledRefresh):
453         (WebCore::ScheduledRefresh::fire):
454         (WebCore::ScheduledHistoryNavigation::ScheduledHistoryNavigation):
455         (WebCore::ScheduledHistoryNavigation::fire):
456         (WebCore::ScheduledFormSubmission::ScheduledFormSubmission):
457         (WebCore::ScheduledFormSubmission::fire):
458         (WebCore::RedirectScheduler::redirectScheduledDuringLoad):
459         (WebCore::RedirectScheduler::clear):
460         (WebCore::RedirectScheduler::scheduleRedirect):
461         (WebCore::RedirectScheduler::mustLockBackForwardList):
462         (WebCore::RedirectScheduler::scheduleLocationChange):
463         (WebCore::RedirectScheduler::scheduleFormSubmission):
464         (WebCore::RedirectScheduler::scheduleRefresh):
465         (WebCore::RedirectScheduler::locationChangePending):
466         (WebCore::RedirectScheduler::scheduleHistoryNavigation):
467         (WebCore::RedirectScheduler::timerFired):
468         (WebCore::RedirectScheduler::schedule):
469         (WebCore::RedirectScheduler::startTimer):
470         (WebCore::RedirectScheduler::cancel):
471         * loader/RedirectScheduler.h:
472
473 2010-03-31  Zhenyao Mo  <zmo@google.com>
474
475         Reviewed by Darin Fisher.
476
477         Hook up WebGLContextAttributes to OpenGL context creation code
478         https://bugs.webkit.org/show_bug.cgi?id=33416
479
480         Test: fast/canvas/webgl/context-attributes-alpha-depth-stencil-antialias.html
481
482         * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp: Fix an index bug.
483         (WebCore::V8HTMLCanvasElement::getContextCallback):
484         * platform/graphics/GraphicsContext3D.h: Add members/functions for multisampling/stencil buffer purpose.
485         * platform/graphics/mac/Canvas3DLayer.h: Add GraphicsContext3D as a member of Canvas3DLayer.
486         * platform/graphics/mac/Canvas3DLayer.mm: Add multisampling support.
487         (-[Canvas3DLayer drawInCGLContext:pixelFormat:forLayerTime:displayTime:]):
488         * platform/graphics/mac/GraphicsContext3DMac.cpp: Hook up WebGLContextAttributes to OpenGL context creation code for Mac.
489         (WebCore::GraphicsContext3D::GraphicsContext3D):
490         (WebCore::GraphicsContext3D::~GraphicsContext3D):
491         (WebCore::GraphicsContext3D::validateAttributes):
492         (WebCore::GraphicsContext3D::reshape):
493         (WebCore::GraphicsContext3D::prepareTexture):
494         (WebCore::GraphicsContext3D::bindFramebuffer):
495         (WebCore::GraphicsContext3D::readPixels):
496         * platform/graphics/mac/GraphicsLayerCA.mm: Adjust to modified Canvas3DLayer init call.
497         (WebCore::GraphicsLayerCA::setContentsToGraphicsContext3D):
498
499 2010-03-31  Jian Li  <jianli@chromium.org>
500
501         Reviewed by Dmitry Titov.
502
503         Add support to create UUID string.
504         https://bugs.webkit.org/show_bug.cgi?id=36472
505
506         * GNUmakefile.am:
507         * WebCore.gypi:
508         * WebCore.pro:
509         * WebCore.vcproj/WebCore.vcproj:
510         * WebCore.xcodeproj/project.pbxproj:
511         * platform/UUID.cpp: Added.
512         (WebCore::createCanonicalUUIDString):
513         * platform/UUID.h: Added.
514
515 2010-03-31  Darin Adler  <darin@apple.com>
516
517         * rendering/RenderThemeChromiumWin.h: Fix inconsistent line endings.
518
519 2010-03-31  Luiz Agostini  <luiz.agostini@openbossa.org>
520
521         Reviewed by Kenneth Rohde Christiansen.
522
523         [Qt] Maemo5 theme - form controls style
524         https://bugs.webkit.org/show_bug.cgi?id=36370
525
526         Adjusting Mameo5 form elements rendering.
527
528         * WebCore.pri:
529         * WebCore.pro:
530         * css/themeQtMaemo5.css: Added.
531         (select):
532         (select:disabled):
533         (select:active):
534         (select:active:disabled):
535         (textarea):
536         (textarea:disabled):
537         (textarea:active):
538         * platform/qt/Maemo5Webstyle.cpp: Added.
539         (Maemo5WebStyle::Maemo5WebStyle):
540         (drawRectangularControlBackgorund):
541         (Maemo5WebStyle::drawChecker):
542         (Maemo5WebStyle::findChecker):
543         (Maemo5WebStyle::drawRadio):
544         (Maemo5WebStyle::findRadio):
545         (Maemo5WebStyle::drawControl):
546         (Maemo5WebStyle::drawComplexControl):
547         * platform/qt/Maemo5Webstyle.h: Added.
548         * platform/qt/RenderThemeQt.cpp:
549         (WebCore::RenderThemeQt::RenderThemeQt):
550         (WebCore::RenderThemeQt::isControlStyled):
551         (WebCore::RenderThemeQt::popupInternalPaddingBottom):
552         (WebCore::RenderThemeQt::extraDefaultStyleSheet):
553         (WebCore::RenderThemeQt::adjustMenuListButtonStyle):
554         * platform/qt/RenderThemeQt.h:
555
556 2010-03-31  Alexey Proskuryakov  <ap@apple.com>
557
558         https://bugs.webkit.org/show_bug.cgi?id=36897
559         <rdar://problem/7804018> REGRESSION (r56429): Flash ads are clipped when main page is scrolled (boxofficemojo.com)
560
561         Addressing additional review comments.
562
563         * rendering/RenderWidget.cpp: Removed an unneeded include.
564         * rendering/RenderWidget.h: Reworded the new comment.
565
566 2010-03-31  Alexey Proskuryakov  <ap@apple.com>
567
568         Reviewed by Dan Bernstein.
569
570         https://bugs.webkit.org/show_bug.cgi?id=36897
571         <rdar://problem/7804018> REGRESSION (r56429): Flash ads are clipped when main page is scrolled (boxofficemojo.com)
572
573         * manual-tests/plugin-in-iframe-scroll.html: Added.
574         * manual-tests/resources/plugin-in-iframe-scroll-iframe.html: Added.
575
576         * rendering/RenderWidget.cpp:
577         (WebCore::RenderWidget::setWidgetGeometry): This method isn't called when an iframe containing
578         the widget moves, so we should store a value that is not dependent on current scroll offset.
579         (WebCore::RenderWidget::windowClipRect): Apply scroll offset and window clip now.
580
581         * rendering/RenderWidget.h: Renamed m_windowClipRect to m_clipRect, because it is no longer
582         in window coordinates.
583
584         * WebCore.base.exp: Export RenderWidget::windowClipRect(), since it's no longer inline.
585
586 2010-03-31  Kenneth Rohde Christiansen  <kenneth@webkit.org>
587
588         Unreviewed crash fix.
589
590         Crash with frame flattening on after r56854
591         https://bugs.webkit.org/show_bug.cgi?id=36894
592
593         Solution tested by Greg Bolsinga, thanks.
594
595         * page/FrameView.cpp:
596         (WebCore::FrameView::avoidScrollbarCreation):
597         * platform/ScrollView.cpp:
598         (WebCore::ScrollView::setHasHorizontalScrollbar):
599         (WebCore::ScrollView::setHasVerticalScrollbar):
600
601 2010-03-31  Kenneth Rohde Christiansen  <kenneth@webkit.org>
602
603         Reviewed by Antti Koivisto.
604
605         iframe flattening doesn't flatten
606         https://bugs.webkit.org/show_bug.cgi?id=36798
607
608         Do not draw scrollbars for subframes when frame flattening is
609         enabled. Implemented using a virtual method in ScrollView as
610         suggested by Dave Hyatt.
611
612         Do not suppress scrollbars as that is wrong according to
613         Dave Hyatt.
614
615         Covered by current tests.
616
617         * page/FrameView.cpp:
618         (WebCore::FrameView::avoidScrollbarCreation):
619         * page/FrameView.h:
620         * platform/ScrollView.cpp:
621         (WebCore::ScrollView::setHasHorizontalScrollbar):
622         (WebCore::ScrollView::setHasVerticalScrollbar):
623         * platform/ScrollView.h:
624         (WebCore::ScrollView::avoidScrollbarCreation):
625         * rendering/RenderPart.cpp:
626         (WebCore::RenderPart::layoutWithFlattening):
627
628 2010-03-30  Kenneth Rohde Christiansen  <kenneth@webkit.org>
629
630         Reviewed by Antti Koivisto.
631
632         iframe flattening doesn't flatten
633         https://bugs.webkit.org/show_bug.cgi?id=36798
634
635         Fix wrongly reversing logic in frame flattening check.
636
637         Tests:
638         fast/frames/flattening/iframe-flattening-fixed-height.html
639         fast/frames/flattening/iframe-flattening-fixed-width.html
640         fast/frames/flattening/iframe-flattening-fixed-width-and-height.html
641         fast/frames/flattening/iframe-flattening-fixed-width-and-height-no-scrolling.html
642
643         * rendering/RenderPartObject.cpp:
644         (WebCore::RenderPartObject::flattenFrame):
645
646 2010-03-31  Marcus Bulach  <bulach@chromium.org>
647
648         Reviewed by Jeremy Orlow.
649
650         Implements cancelGeolocationPermissionRequestForFrame.
651         Similar to requestGeolocationPermissionForFrame(), passes Geolocation* to cancelGeolocationPermissionRequestForFrame(),
652         so that the embedder can identify which Geolocation object is cancelling the pending permission request.
653         Calls cancelGeolocationPermissionRequestForFrame() before stopUpdating() so it better matches the startUpdating() / requestPermission() flow.
654         https://bugs.webkit.org/show_bug.cgi?id=35031
655
656         * loader/EmptyClients.h:
657         (WebCore::EmptyChromeClient::cancelGeolocationPermissionRequestForFrame):
658         * page/Chrome.cpp:
659         (WebCore::Chrome::cancelGeolocationPermissionRequestForFrame):
660         * page/Chrome.h:
661         * page/ChromeClient.h:
662         * page/Geolocation.cpp:
663         (WebCore::Geolocation::disconnectFrame):
664
665 2010-03-31  Yael Aharon  <yael.aharon@nokia.com>
666
667         Reviewed by Antti Koivisto.
668
669         Add animation to progress element
670         https://bugs.webkit.org/show_bug.cgi?id=36664
671
672         Add a timer to control the animation. The timer is started after painting
673         or a state change in the progress bar, to prevent animation from running
674         when the progress bar is not visible.
675
676         * html/HTMLProgressElement.cpp:
677         (WebCore::HTMLProgressElement::createRenderer):
678         * manual-tests/dom: Added.
679         * manual-tests/dom/progressbar.html: Added.
680         * platform/qt/RenderThemeQt.cpp:
681         (WebCore::RenderThemeQt::animationRepeatIntervalForProgressBar):
682         (WebCore::RenderThemeQt::animationDurationForProgressBar):
683         (WebCore::RenderThemeQt::paintProgressBar):
684         * platform/qt/RenderThemeQt.h:
685         * rendering/RenderProgress.cpp:
686         (WebCore::RenderProgress::RenderProgress):
687         (WebCore::RenderProgress::layout):
688         (WebCore::RenderProgress::updateFromElement):
689         (WebCore::RenderProgress::animationProgress):
690         (WebCore::RenderProgress::animationTimerFired):
691         (WebCore::RenderProgress::paint):
692         (WebCore::RenderProgress::updateAnimationState):
693         * rendering/RenderProgress.h:
694         * rendering/RenderTheme.cpp:
695         (WebCore::RenderTheme::animationRepeatIntervalForProgressBar):
696         (WebCore::RenderTheme::animationDurationForProgressBar):
697         * rendering/RenderTheme.h:
698
699 2010-03-31  Pavel Feldman  <pfeldman@chromium.org>
700
701         Not reviewed. Rolling out r56829 since it broke chromium layout tests.
702
703         [REGRESSION] Inspector tests started crashing since r56829
704         https://bugs.webkit.org/show_bug.cgi?id=36888
705
706         * bindings/scripts/CodeGeneratorV8.pm:
707         * bindings/v8/V8Utilities.cpp:
708         * bindings/v8/V8Utilities.h:
709         * loader/FrameLoaderClient.h:
710
711 2010-03-31  Pavel Feldman  <pfeldman@chromium.org>
712
713         Reviewed by Timothy Hatcher.
714
715         Web Inspector: creating new style bugfixing.
716
717         https://bugs.webkit.org/show_bug.cgi?id=36884
718
719         - InspectorDOMAgent should clear internal state upon reset (we are re-using
720           single dom agent instance throughout entire inspector controller lifetime) 
721         - Brought back blank style 'refresh' processing logic - remove it by mistake earlier
722         - Blocked couple of click handlers so that double-click to edit was not
723           expanding / collapsing the pane
724         - There is no need to reach out for matched rules upon 'refresh' update -
725           getting computed style is sufficient.
726
727         * css/CSSStyleSelector.cpp:
728         (WebCore::CSSStyleSelector::matchRulesForList):
729         * inspector/InspectorDOMAgent.cpp:
730         (WebCore::InspectorDOMAgent::discardBindings):
731         * inspector/front-end/StylesSidebarPane.js:
732         (WebInspector.StylesSidebarPane.prototype.update.getStylesCallback):
733         (WebInspector.StylesSidebarPane.prototype.update.getComputedStyleCallback):
734         (WebInspector.StylesSidebarPane.prototype.update):
735         (WebInspector.StylesSidebarPane.prototype._refreshUpdate):
736         (WebInspector.StylesSidebarPane.prototype._rebuildUpdate):
737         (WebInspector.StylesSidebarPane.prototype._refreshStyleRules):
738         (WebInspector.StylesSidebarPane.prototype.addBlankSection):
739         (WebInspector.StylePropertiesSection.prototype._dblclickEmptySpace):
740         (WebInspector.StylePropertiesSection.prototype._clickSelector):
741
742 2010-03-31  Yury Semikhatsky  <yurys@chromium.org>
743
744         Unreviewed. Chromium build fix: create missing v8::HandleScope.
745
746         https://bugs.webkit.org/show_bug.cgi?id=36828
747
748         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
749         (WebCore::InjectedScriptHost::canAccessInspectedWindow):
750
751 2010-03-31  Yury Semikhatsky  <yurys@chromium.org>
752
753         Reviewed by Pavel Feldman.
754
755         Check that injected script can still access inspected window object when wrapping console object. When the window cannot be access serialize objects as strings. Also don't call InjectedScript.dispatch if the window cannot be accessed (due to frame navigation).
756
757         https://bugs.webkit.org/show_bug.cgi?id=36828
758
759         * bindings/js/JSInjectedScriptHostCustom.cpp:
760         (WebCore::InjectedScriptHost::canAccessInspectedWindow):
761         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
762         (WebCore::InjectedScriptHost::canAccessInspectedWindow):
763         * inspector/InjectedScript.cpp:
764         (WebCore::InjectedScript::wrapForConsole):
765         * inspector/InjectedScriptHost.h:
766         * inspector/front-end/InjectedScript.js:
767         (injectedScriptConstructor):
768
769 2010-03-31  Mattias Nissler  <mnissler@google.com>
770
771         Reviewed by Pavel Feldman.
772
773         Allow generic resource URLs for cookie handling in the inspector. This
774         enables display of all cookies, not only those that are associated
775         with resources accessed through http, https or file.
776         https://bugs.webkit.org/show_bug.cgi?id=36877
777
778         * inspector/front-end/CookieItemsView.js:
779         (WebInspector.CookieItemsView.prototype._filterCookiesForDomain):
780         * inspector/front-end/DOMAgent.js:
781         (WebInspector.Cookies.cookieMatchesResourceURL):
782         * inspector/front-end/inspector.js:
783         (WebInspector.updateResource):
784
785 2010-03-30  Jeremy Orlow  <jorlow@chromium.org>
786
787         Reviewed by Nate Chapin.
788
789         IndexedDB: Finish hooking up bindings for IndexedDatabaseRequest
790         https://bugs.webkit.org/show_bug.cgi?id=36830
791
792         Still not enough hooked up to test.  Soon!
793
794         * WebCore.gypi:
795         * bindings/v8/custom/V8CustomIDBCallback.h: Removed.
796         * bindings/v8/custom/V8CustomIDBCallbacks.h: Added.
797         (WebCore::V8CustomIDBCallbacks::create):
798         (WebCore::V8CustomIDBCallbacks::~V8CustomIDBCallbacks):
799         (WebCore::V8CustomIDBCallbacks::onSuccess):
800         (WebCore::V8CustomIDBCallbacks::onError):
801         (WebCore::V8CustomIDBCallbacks::V8CustomIDBCallbacks):
802         * bindings/v8/custom/V8IndexedDatabaseRequestCustom.cpp:
803         (WebCore::V8IndexedDatabaseRequest::openCallback):
804         * storage/IDBDatabaseRequest.cpp: Added.
805         (WebCore::IDBDatabaseRequest::IDBDatabaseRequest):
806         (WebCore::IDBDatabaseRequest::~IDBDatabaseRequest):
807         * storage/IDBDatabaseRequest.h:
808         (WebCore::IDBDatabaseRequest::create):
809         * storage/IndexedDatabaseRequest.cpp:
810         (WebCore::IndexedDatabaseRequest::open):
811         * storage/IndexedDatabaseRequest.h:
812
813 2010-03-31  Zhenyao Mo  <zmo@google.com>
814
815         Reviewed by Darin Fisher.
816
817         Implement memmove behavior for WebGLArray set()
818         https://bugs.webkit.org/show_bug.cgi?id=35619
819
820         New test cases are added to fast/canvas/webgl/array-setters.html.
821
822         * html/canvas/WebGLArray.cpp: Use memmove instead of memcpy; with memmove, copying takes place as if an intermediate buffer was used, allowing the destination and source to overlap.
823         (WebCore::WebGLArray::setImpl):
824
825 2010-03-31  Benjamin Poulain  <benjamin.poulain@nokia.com>
826
827         Reviewed by Darin Adler.
828
829         tryLayoutDoingPositionedMovementOnly does not have to be in RenderObject or be virtual
830         https://bugs.webkit.org/show_bug.cgi?id=36810
831
832         Move tryLayoutDoingPositionedMovementOnly as a regular method of RenderBox
833
834         * rendering/RenderBox.h:
835         (WebCore::RenderBox::tryLayoutDoingPositionedMovementOnly):
836         * rendering/RenderObject.h:
837
838 2010-03-31  John Gregg  <johnnyg@google.com>
839
840         Reviewed by Darin Fisher.
841
842         [chromium] add logging of cross-frame property accesses for site isolation
843         https://bugs.webkit.org/show_bug.cgi?id=35773
844
845         No new tests as no new functionality.
846
847         * bindings/scripts/CodeGeneratorV8.pm:
848         * bindings/v8/V8Utilities.cpp:
849         (WebCore::logPropertyAccess):
850         * bindings/v8/V8Utilities.h:
851         * loader/FrameLoaderClient.h:
852         (WebCore::FrameLoaderClient::logCrossFramePropertyAccess):
853
854 2010-03-30  Gavin Barraclough  <barraclough@apple.com>
855
856         Rubber stamped by Sam Weinig.
857
858         https://bugs.webkit.org/show_bug.cgi?id=36866
859         Move CString to WTF
860
861         * Android.mk:
862         * ForwardingHeaders/wtf/text: Added.
863         * ForwardingHeaders/wtf/text/CString.h: Added.
864         * GNUmakefile.am:
865         * WebCore.base.exp:
866         * WebCore.gypi:
867         * WebCore.order:
868         * WebCore.pro:
869         * WebCore.vcproj/WebCore.vcproj:
870         * WebCore.xcodeproj/project.pbxproj:
871         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
872         * bindings/js/JSDOMWindowBase.cpp:
873         * bindings/js/ScheduledAction.cpp:
874         * bindings/js/ScriptController.cpp:
875         * bindings/v8/ScriptController.cpp:
876         * bindings/v8/V8Binding.cpp:
877         * bindings/v8/V8DOMWindowShell.cpp:
878         * bridge/jni/JNIBridge.cpp:
879         * bridge/jni/v8/JavaStringV8.h:
880         (JSC::Bindings::JavaStringImpl::init):
881         * css/CSSParser.cpp:
882         * dom/CharacterData.cpp:
883         * dom/Document.cpp:
884         * dom/Element.cpp:
885         * dom/Node.cpp:
886         * dom/Position.cpp:
887         * dom/Range.cpp:
888         * dom/Text.cpp:
889         * dom/XMLTokenizer.cpp:
890         * dom/XMLTokenizerLibxml2.cpp:
891         * dom/XMLTokenizerQt.cpp:
892         * editing/SelectionController.cpp:
893         * editing/VisiblePosition.cpp:
894         * editing/VisibleSelection.cpp:
895         * history/CachedFrame.cpp:
896         * history/HistoryItem.cpp:
897         * history/qt/HistoryItemQt.cpp:
898         * html/FormDataList.h:
899         (WebCore::FormDataList::appendData):
900         (WebCore::FormDataList::Item::Item):
901         (WebCore::FormDataList::Item::data):
902         * html/HTMLDocument.cpp:
903         * html/PreloadScanner.cpp:
904         * inspector/InspectorController.cpp:
905         * inspector/InspectorDOMAgent.cpp:
906         * loader/DocLoader.cpp:
907         * loader/FTPDirectoryDocument.cpp:
908         * loader/FrameLoader.cpp:
909         * loader/HistoryController.cpp:
910         * loader/ProgressTracker.cpp:
911         * loader/appcache/ApplicationCacheStorage.cpp:
912         * loader/archive/cf/LegacyWebArchive.cpp:
913         * loader/icon/wince/IconDatabaseWince.cpp:
914         * loader/loader.cpp:
915         * page/Console.cpp:
916         * page/DOMWindow.cpp:
917         * page/SecurityOrigin.cpp:
918         * page/XSSAuditor.cpp:
919         * page/animation/AnimationBase.cpp:
920         * platform/ContextMenu.cpp:
921         * platform/FileSystem.h:
922         * platform/KURL.cpp:
923         * platform/KURLGoogle.cpp:
924         * platform/KURLGooglePrivate.h:
925         * platform/Pasteboard.h:
926         * platform/android/FileSystemAndroid.cpp:
927         * platform/android/TemporaryLinkStubs.cpp:
928         * platform/brew/KURLBrew.cpp:
929         * platform/cf/FileSystemCF.cpp:
930         * platform/chromium/MIMETypeRegistryChromium.cpp:
931         * platform/efl/FileSystemEfl.cpp:
932         * platform/efl/PasteboardEfl.cpp:
933         * platform/efl/PlatformKeyboardEventEfl.cpp:
934         * platform/efl/PlatformScreenEfl.cpp:
935         * platform/efl/RenderThemeEfl.cpp:
936         * platform/efl/ScrollbarEfl.cpp:
937         * platform/efl/SharedBufferEfl.cpp:
938         * platform/efl/WidgetEfl.cpp:
939         * platform/graphics/GlyphPageTreeNode.cpp:
940         * platform/graphics/cairo/FontPlatformDataCairo.cpp:
941         * platform/graphics/cg/ImageBufferCG.cpp:
942         * platform/graphics/chromium/FontCacheLinux.cpp:
943         * platform/graphics/chromium/FontPlatformDataLinux.h:
944         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
945         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
946         * platform/graphics/gtk/FontPlatformDataPango.cpp:
947         * platform/graphics/gtk/IconGtk.cpp:
948         * platform/graphics/gtk/ImageGtk.cpp:
949         * platform/graphics/haiku/GraphicsContextHaiku.cpp:
950         * platform/graphics/mac/GraphicsContext3DMac.cpp:
951         * platform/graphics/mac/GraphicsLayerCA.mm:
952         * platform/graphics/qt/GraphicsContext3DQt.cpp:
953         * platform/graphics/qt/ImageBufferQt.cpp:
954         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
955         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
956         * platform/graphics/skia/GraphicsLayerSkia.cpp:
957         * platform/graphics/win/GraphicsLayerCACF.cpp:
958         * platform/graphics/win/WKCACFLayer.cpp:
959         * platform/graphics/wx/FontPlatformData.h:
960         * platform/gtk/ClipboardGtk.cpp:
961         * platform/gtk/ContextMenuItemGtk.cpp:
962         * platform/gtk/DataObjectGtk.h:
963         * platform/gtk/FileChooserGtk.cpp:
964         * platform/gtk/FileSystemGtk.cpp:
965         * platform/gtk/GeolocationServiceGtk.cpp:
966         * platform/gtk/KURLGtk.cpp:
967         * platform/gtk/Language.cpp:
968         * platform/gtk/LocalizedStringsGtk.cpp:
969         * platform/gtk/PasteboardGtk.cpp:
970         * platform/gtk/PopupMenuGtk.cpp:
971         * platform/gtk/RenderThemeGtk.cpp:
972         * platform/gtk/SharedBufferGtk.cpp:
973         * platform/haiku/FileSystemHaiku.cpp:
974         * platform/haiku/PlatformKeyboardEventHaiku.cpp:
975         * platform/network/CredentialStorage.cpp:
976         * platform/network/FormData.cpp:
977         * platform/network/FormData.h:
978         * platform/network/FormDataBuilder.cpp:
979         * platform/network/FormDataBuilder.h:
980         * platform/network/HTTPParsers.cpp:
981         * platform/network/android/ResourceHandleAndroid.cpp:
982         * platform/network/cf/FormDataStreamCFNet.cpp:
983         * platform/network/cf/ResourceHandleCFNet.cpp:
984         * platform/network/chromium/ResourceResponse.h:
985         * platform/network/curl/FormDataStreamCurl.cpp:
986         * platform/network/curl/ResourceHandleManager.cpp:
987         * platform/network/curl/ResourceHandleManager.h:
988         * platform/network/mac/FormDataStreamMac.mm:
989         * platform/network/mac/ResourceHandleMac.mm:
990         * platform/network/qt/QNetworkReplyHandler.cpp:
991         * platform/network/soup/CookieJarSoup.cpp:
992         * platform/network/soup/ResourceHandleSoup.cpp:
993         * platform/network/soup/ResourceRequestSoup.cpp:
994         * platform/network/soup/ResourceResponseSoup.cpp:
995         * platform/network/win/ResourceHandleWin.cpp:
996         * platform/posix/FileSystemPOSIX.cpp:
997         * platform/qt/FileSystemQt.cpp:
998         * platform/qt/KURLQt.cpp:
999         * platform/qt/TemporaryLinkStubs.cpp:
1000         * platform/sql/chromium/SQLiteFileSystemChromium.cpp:
1001         * platform/text/CString.cpp: Removed.
1002         * platform/text/CString.h: Removed.
1003         * platform/text/PlatformString.h:
1004         * platform/text/String.cpp:
1005         * platform/text/StringImpl.cpp:
1006         * platform/text/TextCodec.h:
1007         * platform/text/TextCodecICU.cpp:
1008         * platform/text/TextCodecLatin1.cpp:
1009         * platform/text/TextCodecUTF16.cpp:
1010         * platform/text/TextCodecUserDefined.cpp:
1011         * platform/text/TextEncoding.cpp:
1012         * platform/text/TextEncoding.h:
1013         * platform/text/chromium/TextBreakIteratorInternalICUChromium.cpp:
1014         * platform/text/gtk/TextCodecGtk.cpp:
1015         * platform/text/haiku/StringHaiku.cpp:
1016         * platform/text/mac/TextCodecMac.cpp:
1017         * platform/text/qt/TextCodecQt.cpp:
1018         * platform/text/wx/StringWx.cpp:
1019         * platform/win/ClipboardUtilitiesWin.cpp:
1020         * platform/win/ClipboardWin.cpp:
1021         * platform/win/ContextMenuItemWin.cpp:
1022         * platform/win/ContextMenuWin.cpp:
1023         * platform/win/FileSystemWin.cpp:
1024         * platform/win/GDIObjectCounter.cpp:
1025         * platform/win/Language.cpp:
1026         * platform/win/PasteboardWin.cpp:
1027         * platform/wince/FileSystemWince.cpp:
1028         * platform/wince/KeygenWince.cpp:
1029         * platform/wince/PasteboardWince.cpp:
1030         * platform/wx/FileSystemWx.cpp:
1031         * platform/wx/LoggingWx.cpp:
1032         * plugins/PluginDebug.h:
1033         * plugins/PluginPackage.cpp:
1034         * plugins/PluginStream.cpp:
1035         * plugins/PluginStream.h:
1036         * plugins/PluginView.h:
1037         * plugins/gtk/PluginPackageGtk.cpp:
1038         * plugins/mac/PluginPackageMac.cpp:
1039         * plugins/qt/PluginPackageQt.cpp:
1040         * plugins/symbian/PluginPackageSymbian.cpp:
1041         * plugins/win/PluginPackageWin.cpp:
1042         * rendering/RenderLayer.cpp:
1043         * rendering/RenderLayerCompositor.cpp:
1044         * rendering/RenderTreeAsText.cpp:
1045         * storage/Database.cpp:
1046         * storage/SQLTransactionCoordinator.cpp:
1047         * storage/SQLTransactionCoordinator.h:
1048         * storage/StorageAreaSync.cpp:
1049         * storage/StorageSyncManager.cpp:
1050         * storage/chromium/DatabaseTrackerChromium.cpp:
1051         * storage/chromium/QuotaTracker.cpp:
1052         * storage/chromium/QuotaTracker.h:
1053         * svg/SVGFontFaceElement.cpp:
1054         * svg/SVGStyledElement.cpp:
1055         * svg/SVGUseElement.cpp:
1056         * websockets/WebSocket.cpp:
1057         * websockets/WebSocketChannel.cpp:
1058         * websockets/WebSocketHandshake.cpp:
1059         * wml/WMLErrorHandling.cpp:
1060         * wml/WMLGoElement.cpp:
1061         * wml/WMLPageState.cpp:
1062         * wml/WMLPostfieldElement.cpp:
1063         * wml/WMLSelectElement.cpp:
1064         * xml/XMLHttpRequest.cpp:
1065         * xml/XSLStyleSheetLibxslt.cpp:
1066         * xml/XSLTProcessorLibxslt.cpp:
1067
1068 2010-03-30  Kent Tamura  <tkent@chromium.org>
1069
1070         Reviewed by Brady Eidson.
1071
1072         REGRESSION (r56439) - Crash when a renderer for a file upload control
1073         with a selected file is recreated
1074         https://bugs.webkit.org/show_bug.cgi?id=36723
1075
1076         RenderFileUploadControl::chooseIconForFiles was called before
1077         m_fileChooser was initialized.
1078
1079         * platform/FileChooser.cpp:
1080         (WebCore::FileChooser::FileChooser): Introduce m_isInitializing flag to
1081           avoid FileChooserClient::repaint() call.
1082         (WebCore::FileChooser::loadIcon):
1083         (WebCore::FileChooser::iconLoaded):
1084         * platform/FileChooser.h: Add a FielChooser parameter to
1085           FileChooserClient::chooseIconForFiles().
1086         * rendering/RenderFileUploadControl.cpp:
1087         (WebCore::RenderFileUploadControl::chooseIconForFiles):
1088         (WebCore::RenderFileUploadControl::paintObject): Add an assertion.
1089         * rendering/RenderFileUploadControl.h:
1090
1091 2010-03-30  Stanislav Paltis  <Stanislav.Paltis@nokia.com>
1092
1093         Reviewed by Laszlo Gombos.
1094
1095         [Qt] qmake/symbian build failure
1096         https://bugs.webkit.org/show_bug.cgi?id=36745
1097
1098         Fix build break in Symbian build introduced in r56714,
1099         by modifying comment escape character from ";" to "#".
1100
1101         * WebCore.pro:
1102
1103 2010-03-30  Kevin Ollivier  <kevino@theolliviers.com>
1104
1105         [wx] Build fix after new localized string addition.
1106
1107         * platform/wx/LocalizedStringsWx.cpp:
1108         (WebCore::missingPluginText):
1109
1110 2010-03-30  Sam Weinig  <sam@webkit.org>
1111
1112         Reviewed by Anders Carlsson.
1113
1114         Add missing export.
1115
1116         * WebCore.base.exp:
1117
1118 2010-03-30  Enrica Casucci  <enrica@apple.com>
1119
1120         Reviewed by Darin Adler.
1121
1122         Incorrect insertion position after typing THAI CHARACTER SARA AM = 0E33.
1123         <rdar://problem/7810749>
1124         https://bugs.webkit.org/show_bug.cgi?id=36858
1125
1126         Test: fast/text/multiglyph-characters.html
1127
1128         Characters with multiple glyph were not supported correctly.
1129         Computing the advance width was producing a division by zero.
1130         
1131         * platform/graphics/mac/ComplexTextController.cpp:
1132         (WebCore::ComplexTextController::advance):
1133
1134 2010-03-30  Chris Evans  <cevans@chromium.org>
1135
1136         Reviewed by Adam Barth.
1137
1138         Taint the canvas if an SVG-derived pattern is rendered into it.
1139
1140         https://bugs.webkit.org/show_bug.cgi?id=36838
1141
1142         Test: fast/canvas/svg-taint.html
1143
1144         * html/canvas/CanvasRenderingContext2D.cpp:
1145         (WebCore::CanvasRenderingContext2D::createPattern):
1146           Take into account the image's hasSingleSecurityOrigin() property.
1147
1148 2010-03-30  Alexey Proskuryakov  <ap@apple.com>
1149
1150         Reviewed by Darin Adler.
1151
1152         https://bugs.webkit.org/show_bug.cgi?id=36616
1153         Dvorak-Qwerty keyboard layout gives unexpected results in javascript keydown
1154
1155         https://bugs.webkit.org/show_bug.cgi?id=36797
1156         For non-Roman layouts, keydown Event.keyCode is always 0
1157
1158         * platform/cocoa/KeyEventCocoa.mm:
1159         (WebCore::windowsKeyCodeForKeyCode): This is now the primary function for determining
1160         Windows key code - there is no reason to round trip a virtual key code via character code to
1161         get Windows virtual key code, and this can't work for non-Roman alphabets.
1162         (WebCore::windowsKeyCodeForCharCode): Removed keys that are now handled in windowsKeyCodeForKeyCode(),
1163         only keeping those for which we don't have known key codes (yet?).
1164
1165         * platform/mac/KeyEventMac.mm: (WebCore::windowsKeyCodeForKeyEvent): Added comments.
1166
1167 2010-03-30  Marcus Bulach  <bulach@chromium.org>
1168
1169         Reviewed by Darin Fisher.
1170
1171         Rename / tidy up Geolocation bridge
1172         Uses Geoposition instead of individual params for setLastPosition.
1173         https://bugs.webkit.org/show_bug.cgi?id=36535
1174
1175         * platform/chromium/GeolocationServiceChromium.cpp:
1176         (WebCore::GeolocationServiceChromium::GeolocationServiceChromium):
1177         (WebCore::GeolocationServiceChromium::setIsAllowed):
1178         (WebCore::GeolocationServiceChromium::setLastPosition):
1179         * platform/chromium/GeolocationServiceChromium.h:
1180
1181 2010-03-30  Adam Langley  <agl@chromium.org>
1182
1183         Reviewed by David Levin.
1184
1185         [chromium] linux: prefer the "hinting" fontconfig preference.
1186
1187         fontconfig can give contradictory hinting information, setting
1188         "hinting" to zero and "hintstyle" to non-zero. In this case we
1189         should take the "hinting" preference.
1190
1191         https://bugs.webkit.org/show_bug.cgi?id=36602
1192
1193         * platform/graphics/chromium/FontPlatformDataLinux.cpp:
1194         (WebCore::FontPlatformData::setupPaint):
1195
1196 2010-03-30  Pavel Feldman  <pfeldman@chromium.org>
1197
1198         Reviewed by Timothy Hatcher.
1199
1200         Web Inspector: Copying from the Content tab in Resources includes line numbers.
1201
1202         https://bugs.webkit.org/show_bug.cgi?id=35104
1203
1204         * inspector/front-end/TextViewer.js:
1205         (WebInspector.TextViewer):
1206         (WebInspector.TextViewer.prototype._beforeCopy):
1207         (WebInspector.TextViewer.prototype._copy):
1208
1209 2010-03-30  Pavel Feldman  <pfeldman@chromium.org>
1210
1211         Reviewed by Timothy Hatcher.
1212
1213         Web Inspector: Do not send empty matching rules for pseudo elements to frontend.
1214
1215         https://bugs.webkit.org/show_bug.cgi?id=36834
1216
1217         * inspector/InspectorDOMAgent.cpp:
1218         (WebCore::InspectorDOMAgent::buildArrayForPseudoElements):
1219         * inspector/front-end/StylesSidebarPane.js:
1220         (WebInspector.StylesSidebarPane.prototype._update):
1221
1222 2010-03-30  Dirk Schulze  <krit@webkit.org>
1223
1224         Reviewed by Nikolas Zimmermann.
1225
1226         Cannot animate "points" attribute for <svg:polygon>
1227         https://bugs.webkit.org/show_bug.cgi?id=21371
1228
1229         Add animation support for 'points' on polygons in SVG. 
1230
1231         Test: svg/animations/animate-points.html
1232
1233         * svg/SVGAnimateElement.cpp:
1234         (WebCore::SVGAnimateElement::determinePropertyType):
1235         (WebCore::SVGAnimateElement::calculateAnimatedValue):
1236         (WebCore::SVGAnimateElement::calculateFromAndToValues):
1237         (WebCore::SVGAnimateElement::resetToBaseValue):
1238         (WebCore::SVGAnimateElement::applyResultsToTarget):
1239         * svg/SVGAnimateElement.h:
1240         (WebCore::SVGAnimateElement::): added PropertyType PointsProperty
1241         * svg/SVGPointList.cpp:
1242         (WebCore::blendFunc):
1243         (WebCore::SVGPointList::createAnimated): calculates animated PointList
1244         * svg/SVGPointList.h:
1245
1246 2010-03-30  Alexander Pavlov  <apavlov@chromium.org>
1247
1248         Reviewed by Pavel Feldman.
1249
1250         Web Inspector: Audits: bad CSS selector results in exception inside evaluated code
1251         https://bugs.webkit.org/show_bug.cgi?id=36821
1252
1253         * inspector/front-end/AuditRules.js:
1254         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.routine):
1255         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback):
1256
1257 2010-03-29  Janne Koskinen  <janne.p.koskinen@digia.com>
1258
1259         Reviewed by Simon Hausmann.
1260
1261         [Qt] Package build fixes for Symbian
1262
1263         * enable building standalone QtWebkit for Symbian using qtlibinfix configuration option
1264
1265         qtlibinfix adds possibility having multiple versions of Qt in Symbian devices.
1266         Fix also allows unfrozen DLL exports during development.
1267
1268         * Removed heap size configuration. DLLs don't have a heap.
1269
1270         * Removed enforcement to def files for package builds. Instead inherit the setting from
1271         Qt's qconfig.pri whether to use def files or not. It's still possible to override this
1272         also at qmake time by passing CONFIG+=def_files.
1273
1274         * WebCore.pro:
1275
1276 2010-03-30  Ilya Tikhonovsky  <loislo@chromium.org>
1277
1278         Reviewed by Pavel Feldman.
1279
1280         Web Inspector: Title for show/hide short records button was adjusted.
1281         Some unused code was removed.
1282         https://bugs.webkit.org/show_bug.cgi?id=36823
1283
1284         * inspector/front-end/TimelinePanel.js:
1285         (WebInspector.TimelinePanel.prototype._createStatusbarButtons):
1286         (WebInspector.TimelinePanel.prototype._toggleFilterButtonClicked):
1287         (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
1288
1289 2010-03-30  Adam Roben  <aroben@apple.com>
1290
1291         Enable extra Direct3D debugging information in Debug builds
1292
1293         This makes it easier to track down memory leaks and misuses of the D3D
1294         APIs in Debug builds.
1295
1296         Fixes <http://webkit.org/b/36820>
1297
1298         Reviewed by John Sullivan.
1299
1300         * platform/graphics/win/WKCACFLayerRenderer.cpp: Define D3D_DEBUG_INFO
1301         in Debug builds before #including d3d9.h so that extra D3D debugging
1302         information will be enabled.
1303
1304 2010-03-30  Luiz Agostini  <luiz.agostini@openbossa.org>
1305
1306         Reviewed by Kenneth Rohde Christiansen.
1307
1308         [Qt] Maemo5 theme - QtMaemoWebPopup class
1309         https://bugs.webkit.org/show_bug.cgi?id=36790
1310
1311         Moving maemo5 theme related code from WebCore.pri to WebCore.pro and adding
1312         new maemo menu lists popup class source and header to the project.
1313
1314         The code was in .pri file because of a theme css that was conditionally included.
1315         As the css file is been included unconditionally there is no need to this
1316         code to be kept in webcore.pri.
1317
1318         * WebCore.pri:
1319         * WebCore.pro:
1320
1321 2010-03-30  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
1322
1323         Reviewed by David Kilzer.
1324
1325         Guard Geolocation files with ENABLE_GEOLOCATION
1326         https://bugs.webkit.org/show_bug.cgi?id=25756
1327
1328         The intent is to guard the Geolocation implementation files 
1329         and minimize the impact on on clients/call sites.
1330
1331         * DerivedSources.make:
1332         * WebCore.Geolocation.exp: Added. Exported interfaces if GEOLOCATION
1333         is enabled.
1334         * WebCore.base.exp:
1335         * bindings/js/JSCustomPositionCallback.cpp:
1336         * bindings/js/JSCustomPositionErrorCallback.cpp:
1337         * bindings/js/JSGeolocationCustom.cpp:
1338         * page/Geolocation.cpp:
1339         (WebCore::Geolocation::disconnectFrame): Stub implementation if
1340         GEOLOCATION is turned off.
1341         (WebCore::Geolocation::Geolocation): Ditto.
1342         (WebCore::Geolocation::~Geolocation): Ditto.
1343         (WebCore::Geolocation::setIsAllowed): Ditto.
1344         * page/Geolocation.h: 
1345         * page/Geolocation.idl:
1346         * page/GeolocationPositionCache.cpp:
1347         * page/Geoposition.idl:
1348         * page/PositionError.idl:
1349         * platform/GeolocationService.cpp:
1350         * platform/mock/GeolocationServiceMock.cpp:
1351
1352 2010-03-30  Andrey Kosyakov  <caseq@chromium.org>
1353
1354         Reviewed by Pavel Feldman.
1355
1356         Support EventTarget interface in fake workers (both for Worker object
1357         and WorkerContext). Use MessagePort to implement message passing to
1358         support passing ports in PostMessage.
1359         https://bugs.webkit.org/show_bug.cgi?id=36763
1360
1361         * inspector/front-end/InjectedFakeWorker.js:
1362         (InjectedFakeWorker.Worker.onmessageGetter):
1363         (InjectedFakeWorker.Worker.onmessageSetter):
1364         (InjectedFakeWorker.Worker):
1365         (InjectedFakeWorker.FakeWorker):
1366         (InjectedFakeWorker.FakeWorker.prototype.postMessage):
1367         (InjectedFakeWorker.FakeWorker.prototype.terminate):
1368         (InjectedFakeWorker.FakeWorker.prototype._onWorkerFrameLoaded):
1369         (InjectedFakeWorker.FakeWorker.prototype._setupWorkerContext.onmessageGetter):
1370         (InjectedFakeWorker.FakeWorker.prototype._setupWorkerContext.onmessageSetter):
1371         (InjectedFakeWorker.FakeWorker.prototype._setupWorkerContext):
1372         (InjectedFakeWorker.FakeWorker.prototype._addEventListener):
1373         (InjectedFakeWorker.FakeWorker.prototype._removeEventListener):
1374         (InjectedFakeWorker.FakeWorker.prototype._callbackWrapper):
1375         (InjectedFakeWorker.FakeWorker.prototype._handleException):
1376
1377 2010-03-30  Kristian Monsen  <kristianm@google.com>
1378
1379         Reviewed by David Levin.
1380
1381         [v8] Add if ENABLE guard for Worker specific code.
1382         https://bugs.webkit.org/show_bug.cgi?id=36597
1383
1384         Build fix only, no new tests.
1385
1386         * bindings/v8/V8DOMWrapper.h:
1387
1388 2010-03-29  Jeremy Orlow  <jorlow@chromium.org>
1389
1390         Reviewed by Darin Fisher.
1391
1392         More IndexedDB work
1393         https://bugs.webkit.org/show_bug.cgi?id=36770
1394
1395         Add the "singleton" IndexedDatabase object to PageGroup
1396         IndexedDatabase now has a create() method since PageGroup can own the instance (at least for now)
1397         Rip out the IDBRequest stuff (now obsolete).
1398         DOMWindow now can instantiate indexedDatabase objects on demand.
1399
1400         New layout tests starting with the next patch (which should make indexedDB.open() "work").
1401
1402         * WebCore.gypi:
1403         * bindings/v8/custom/V8IDBRequestCustom.cpp: Removed.
1404         * page/DOMWindow.cpp:
1405         (WebCore::DOMWindow::indexedDB):
1406         * page/DOMWindow.h:
1407         * page/PageGroup.cpp:
1408         (WebCore::PageGroup::indexedDatabase):
1409         * page/PageGroup.h:
1410         * storage/IDBDatabase.cpp:
1411         * storage/IDBDatabaseRequest.h:
1412         (WebCore::IDBDatabaseRequest::createObjectStore):
1413         * storage/IDBDatabaseRequest.idl:
1414         * storage/IDBRequest.cpp: Removed.
1415         * storage/IDBRequest.h: Removed.
1416         * storage/IDBRequest.idl: Removed.
1417         * storage/IndexedDatabase.cpp:
1418         (WebCore::IndexedDatabase::create):
1419         * storage/IndexedDatabase.h:
1420         * storage/IndexedDatabaseImpl.cpp:
1421         (WebCore::IndexedDatabaseImpl::create):
1422         (WebCore::IndexedDatabaseImpl::IndexedDatabaseImpl):
1423         (WebCore::IndexedDatabaseImpl::~IndexedDatabaseImpl):
1424         * storage/IndexedDatabaseImpl.h:
1425         * storage/IndexedDatabaseRequest.cpp:
1426         (WebCore::IndexedDatabaseRequest::IndexedDatabaseRequest):
1427         * storage/IndexedDatabaseRequest.h:
1428         (WebCore::IndexedDatabaseRequest::create):
1429         * storage/IndexedDatabaseRequest.idl:
1430         * storage/chromium/IndexedDatabase.cpp:
1431         (WebCore::IndexedDatabase::create):
1432
1433 2010-03-30  Dirk Schulze  <krit@webkit.org>
1434
1435         Reviewed by Nikolas Zimmermann.
1436
1437         SVG Glyph transformations wrong on use of SVGFont
1438         https://bugs.webkit.org/show_bug.cgi?id=36731
1439
1440         Kerning on SVGFonts should be applied to the userSpace of the current Char
1441         and not to the userSpace of the viewport. This means scaling the kerning
1442         to match the current userSpace.
1443
1444         Test: svg/custom/glyph-transformation-with-hkern.svg
1445
1446         * rendering/SVGRootInlineBox.cpp:
1447         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
1448
1449 2010-03-30  Dirk Schulze  <krit@webkit.org>
1450
1451         Reviewed by Nikolas Zimmermann.
1452
1453         SVG Animation doesn't respect 'currentColor'
1454         https://bugs.webkit.org/show_bug.cgi?id=36695
1455
1456         Test: svg/custom/animation-currentColor.svg
1457
1458         SVG Animation can't handle currentColor at the moment. This patch catches the
1459         color value of the target element and replaces 'currentColor' with it's color string.
1460
1461         * svg/SVGAnimationElement.cpp:
1462         (WebCore::adjustForCurrentColor):
1463         (WebCore::SVGAnimationElement::startedActiveInterval):
1464
1465 2010-03-30  Ilya Tikhonovsky  <loislo@chromium.org>
1466
1467         Reviewed by Pavel Feldman.
1468
1469         Web Inspector: Visible/captured records counter should be implemented in Timeline panel.
1470         https://bugs.webkit.org/show_bug.cgi?id=36708
1471
1472         * English.lproj/localizedStrings.js:
1473         * inspector/front-end/TimelinePanel.js:
1474         (WebInspector.TimelinePanel.prototype.get statusBarItems):
1475         (WebInspector.TimelinePanel.prototype._createStatusbarButtons):
1476         (WebInspector.TimelinePanel.prototype._updateRecordsCounter):
1477         (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
1478         (WebInspector.TimelinePanel.prototype._createRootRecord):
1479         (WebInspector.TimelinePanel.prototype._refresh):
1480         (WebInspector.TimelinePanel.prototype._filterRecords):
1481         * inspector/front-end/inspector.css:
1482         (.timeline-records-counter):
1483
1484 2010-03-30  Philippe Normand  <pnormand@igalia.com>
1485
1486         [GStreamer] define static variables with DEFINE_STATIC_LOCAL macro
1487         https://bugs.webkit.org/show_bug.cgi?id=36653
1488
1489         Unreviewed, don't define the bool variable with
1490         DEFINE_STATIC_LOCAL, it makes sense only for objects which have a
1491         destructor. Thanks to Dan Bernstein for spotting this.
1492
1493         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1494         (WebCore::mimeTypeCache):
1495
1496 2010-03-29  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1497
1498         Reviewed by Eric Seidel.
1499
1500         There is a build break due to the disabled() when wml feature is
1501         enabled. This break comes from the Bug 35056 - Disabled menu options
1502         are still submitted.(https://bugs.webkit.org/show_bug.cgi?id=35056)
1503         The WMLOptionElement.h needs to define the disabled() as well.
1504         And, there is an additional break due to Bug 36177 -  Multiselect Popup
1505         - Listbox click simulation. (https://bugs.webkit.org/show_bug.cgi?id=36177)
1506         virtual void listBoxSelectItem() should be added to WMLSelectElement.h as well.
1507
1508         https://bugs.webkit.org/show_bug.cgi?id=36698
1509
1510         * wml/WMLOptionElement.h:
1511         (WebCore::WMLOptionElement::disabled):
1512         * wml/WMLSelectElement.h:
1513         (WebCore::WMLSelectElement::listBoxSelectItem):
1514
1515 2010-03-29  Shinichiro Hamaji  <hamaji@chromium.org>
1516
1517         Reviewed by David Hyatt.
1518
1519         No vertical scrollbar after the CSS class change
1520         https://bugs.webkit.org/show_bug.cgi?id=36461
1521
1522         Don't suppress scrollbar change for non-first layouts.
1523         In the first layout, the scrollbar change will happen in later
1524         adjustViewSize() call, but in other layouts, adjustViewSize() may
1525         not be called when the size of contents doesn't change.
1526
1527         * page/FrameView.cpp:
1528         (WebCore::FrameView::layout):
1529
1530 2010-03-29  Chris Evans  <cevans@chromium.org>
1531
1532         Reviewed by Adam Barth.
1533
1534         Don't use unique domains for file:// separation: it breaks local
1535         databases, and access to your own same-origin iframes. Instead, use
1536         path-based access checks.
1537
1538         https://bugs.webkit.org/show_bug.cgi?id=36692
1539
1540         Test: fast/xmlhttprequest/xmlhttprequest-no-file-access.html
1541
1542         * dom/Document.cpp:
1543         (WebCore::Document::initSecurityContext): renamed API.
1544         * page/SecurityOrigin.h:
1545         * page/SecurityOrigin.cpp:
1546         (WebCore::SecurityOrigin::SecurityOrigin):
1547           Initialize new flag. Take note of file:// path.
1548           Copy new fields in copy constructor.
1549         (WebCore::SecurityOrigin::canAccess):
1550           Take into account path-based origin separation for file://
1551         (WebCore::SecurityOrigin::enforceFilePathSeparation):
1552           New method to enable file:// path origin separation.
1553         (WebCore::SecurityOrigin::toString):
1554           Return a null domain for an isolated file origin.
1555         (WebCore::SecurityOrigin::isSameSchemeHostPort):
1556           Take into account path-based origin separation for file://
1557         (WebCore::SecurityOrigin::passesFileCheck):
1558           Abstraction of common logic for file:// access checks.
1559
1560 2010-03-29  Rafael Weinstein  <rafaelw@chromium.org>
1561
1562         Reviewed by Adam Barth.
1563
1564         Change NotificationPresenter::checkPermission() to take the source frames full KURL,
1565         rather than its SecurityOrigin. This will aid chromium in having more fine grained
1566         permissions to control notification spam.
1567
1568         * notifications/Notification.cpp:
1569         (WebCore::Notification::Notification):
1570         * notifications/NotificationCenter.cpp:
1571         (WebCore::NotificationCenter::checkPermission):
1572         * notifications/NotificationPresenter.h:
1573
1574 2010-03-29  Luiz Agostini  <luiz.agostini@openbossa.org>
1575
1576         Reviewed by Kenneth Rohde Christiansen.
1577
1578         [Qt] Multiselect - Adding method itemIsSelected() to QtAbstractWebPopup
1579         https://bugs.webkit.org/show_bug.cgi?id=36769
1580
1581         Adding method itemIsSelected() to QtAbstractWebPopup.
1582
1583         * platform/qt/QtAbstractWebPopup.h:
1584         (WebCore::QtAbstractWebPopup::itemIsSelected):
1585
1586 2010-03-29  Dawit Alemayehu  <adawit@kde.org>
1587
1588         Reviewed by Simon Hausmann.
1589
1590         Added a function, WebCore::shouldTreatAsAttachment, to HTTPParsers.*
1591
1592         https://bugs.webkit.org/show_bug.cgi?id=36395
1593
1594         This function, which was moved from WebKit/chromium/src/FrameClientImpl.cpp,
1595         is used to check whether or not a request is supposed to be rendered or
1596         simply downloaded based on the "Content-Disposition" header sent by the
1597         web server. The intent of code refactoring is to avoid code duplication
1598         so that this piece of code can be used by other implementations such as
1599         QtWebKit.
1600
1601         * platform/network/HTTPParsers.cpp:
1602         (WebCore::shouldTreatAsAttachment):
1603         * platform/network/HTTPParsers.h:
1604
1605 2010-03-29  Chris Fleizach  <cfleizach@apple.com>
1606
1607         Reviewed by Beth Dakin.
1608
1609         Bug 36735 - Live regions don't send out notifications when the element changing is the live region
1610         https://bugs.webkit.org/show_bug.cgi?id=36735
1611
1612         Test: platform/mac/accessibility/aria-liveregion-on-image.html
1613
1614         * accessibility/AccessibilityRenderObject.cpp:
1615         (WebCore::AccessibilityRenderObject::contentChanged):
1616
1617 2010-03-29  Stephen White  <senorblanco@chromium.org>
1618
1619         Reviewed by Dave Hyatt.
1620
1621         In order to speed up multiple calls to CSSPrimitiveValue::cssText(),
1622         this CL caches the String result.  When m_value is changed, the
1623         cached string is cleared.  This gives a good speedup on benchmarks
1624         which do a lot of CSS property gets, such as Peacekeeper.
1625         The processing cost should be negligible, since the strings are 
1626         refcounted.  The memory cost is an additional 4 bytes per
1627         CSSPrimitiveValue, and the extended lifetime of the computed string
1628         (potentially, the same as the lifetime of the CSSPrimitiveValue).
1629
1630         https://bugs.webkit.org/show_bug.cgi?id=36556
1631
1632         Covered by fast/css/cssText-cache.html, and more.
1633
1634         * css/CSSPrimitiveValue.cpp:
1635         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1636         (WebCore::CSSPrimitiveValue::cleanup):
1637         (WebCore::CSSPrimitiveValue::cssText):
1638         * css/CSSPrimitiveValue.h:
1639
1640 2010-03-22  Kenneth Rohde Christiansen  <kenneth@webkit.org>
1641
1642         Reviewed by Simon Fraser.
1643
1644         Add support for Widgets 1.0: View Mode Media Feature
1645         https://bugs.webkit.org/show_bug.cgi?id=35446
1646
1647         When enabling Web Widgets, add support for the view-mode media
1648         feature (http://www.w3.org/TR/widgets-vmmf/).
1649
1650         Test: fast/media/media-feature-wgt-view-mode.html
1651
1652         * css/CSSValueKeywords.in:
1653         * css/MediaFeatureNames.h:
1654         * css/MediaQueryEvaluator.cpp:
1655         (WebCore::view_modeMediaFeatureEval):
1656         * page/ChromeClient.h:
1657         (WebCore::ChromeClient::isDocked):
1658         (WebCore::ChromeClient::isFloating):
1659         (WebCore::ChromeClient::isApplication):
1660         (WebCore::ChromeClient::isFullscreen):
1661
1662 2010-03-29  Kenneth Russell  <kbr@google.com>
1663
1664         Reviewed by Darin Fisher.
1665
1666         Eliminate use of GL_BGRA in GraphicsContext3DSkia.cpp
1667         https://bugs.webkit.org/show_bug.cgi?id=36737
1668
1669         No new tests; ran WebGL demos in Chromium on Windows to verify fix.
1670
1671         * platform/graphics/skia/GraphicsContext3DSkia.cpp:
1672         (WebCore::GraphicsContext3D::getImageData):
1673
1674 2010-03-29  Alexander Pavlov  <apavlov@chromium.org>
1675
1676         Reviewed by Pavel Feldman.
1677
1678         Web Inspector: Cover the Audits panel with tests
1679         https://bugs.webkit.org/show_bug.cgi?id=36613
1680
1681         Sort results, add a few drive-by fixes and refactorings to improve testability.
1682
1683         Test: inspector/audits-panel-functional.html
1684
1685         * English.lproj/localizedStrings.js:
1686         * inspector/front-end/AuditResultView.js:
1687         (WebInspector.AuditResultView):
1688         (WebInspector.AuditCategoryResultPane.ruleSorter):
1689         (WebInspector.AuditCategoryResultPane):
1690         * inspector/front-end/AuditRules.js:
1691         (WebInspector.AuditRules.GzipRule.prototype.doRun):
1692         (WebInspector.AuditRules.CombineExternalResourcesRule.prototype.doRun):
1693         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.selectorsCallback):
1694         (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun):
1695         (WebInspector.AuditRules.CssInHeadRule.prototype.doRun):
1696         (WebInspector.AuditRules.CookieSizeRule.prototype.processCookies):
1697         * inspector/front-end/AuditsPanel.js:
1698         (WebInspector.AuditRuleResult.linkifyDisplayName):
1699         (WebInspector.AuditRuleResult.resourceDomain):
1700         (WebInspector.AuditRuleResult.prototype.addURL):
1701         * inspector/front-end/inspector.js:
1702         (WebInspector.displayNameForURL):
1703
1704 2010-03-29  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
1705
1706         Reviewed by nobody, build fix.
1707
1708         [Qt] Fix build break introduced in r56724.
1709
1710         * WebCore.pro:
1711
1712 2010-03-29  Alexander Pavlov  <apavlov@chromium.org>
1713
1714         Reviewed by Pavel Feldman.
1715
1716         Web Inspector should highlight when clicking a node's closing tag
1717         https://bugs.webkit.org/show_bug.cgi?id=16258
1718
1719         * inspector/front-end/ElementsTreeOutline.js:
1720         (WebInspector.ElementsTreeOutline.prototype.set suppressRevealAndSelect):
1721         (WebInspector.ElementsTreeOutline.prototype.revealAndSelectNode):
1722         (WebInspector.ElementsTreeOutline.prototype._keyDown):
1723         (WebInspector.ElementsTreeOutline.prototype._onmousemove):
1724         (WebInspector.ElementsTreeElement):
1725         (WebInspector.ElementsTreeElement.prototype.showChild):
1726         (WebInspector.ElementsTreeElement.prototype.onpopulate):
1727         (WebInspector.ElementsTreeElement.prototype.updateChildren):
1728         (WebInspector.ElementsTreeElement.prototype.insertChildElement):
1729         (WebInspector.ElementsTreeElement.prototype.moveChild):
1730         (WebInspector.ElementsTreeElement.prototype._updateChildren):
1731         (WebInspector.ElementsTreeElement.prototype.onexpand):
1732         (WebInspector.ElementsTreeElement.prototype.oncollapse):
1733         (WebInspector.ElementsTreeElement.prototype.onselect):
1734         (WebInspector.ElementsTreeElement.prototype.ondblclick):
1735         ():
1736
1737 2010-03-29  Marcus Bulach  <bulach@chromium.org>
1738
1739         Reviewed by Jeremy Orlow.
1740
1741         https://bugs.webkit.org/show_bug.cgi?id=36315
1742
1743         Remove obsolete Geolocation::m_currentPosition
1744         (follow up on https://bugs.webkit.org/show_bug.cgi?id=30676)
1745
1746         * page/Geolocation.cpp:
1747         (WebCore::Geolocation::positionChanged):
1748         (WebCore::Geolocation::makeSuccessCallbacks):
1749         * page/Geolocation.h:
1750         * platform/chromium/GeolocationServiceChromium.cpp:
1751         (WebCore::GeolocationServiceChromium::GeolocationServiceChromium):
1752
1753 2010-03-29  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
1754
1755         Reviewed by Simon Hausmann.
1756
1757         [Qt] Do not generate INSTALLS for webkit when building inside Qt.
1758         Qt will do this for us.
1759
1760         * WebCore.pro:
1761
1762 2010-03-29  Antti Koivisto  <koivisto@iki.fi>
1763
1764         Reviewed by Kenneth Rohde Christiansen.
1765
1766         https://bugs.webkit.org/show_bug.cgi?id=36703
1767         Timer restart loop during page loading
1768         
1769         Fix regression introduced in http://trac.webkit.org/changeset/54526. 
1770         Restarting the request timer unconditionally from the timer callback is a bad idea. 
1771         Instead, start the timer when a non-cached request completes.
1772
1773         * loader/loader.cpp:
1774         (WebCore::Loader::Host::nonCacheRequestComplete):
1775         (WebCore::Loader::Host::servePendingRequests):
1776
1777 2010-03-29  Thomas Zander  <t.zander@nokia.com>
1778
1779         Reviewed by Simon Hausmann.
1780
1781         [Qt] Shadowbuilds of WebCore with Qt on Symbian fails.
1782
1783         https://bugs.webkit.org/show_bug.cgi?id=36749
1784
1785         Doing a 'make sis' expects the dll in the libdir, so place it
1786         there. This fixes out-of-source building to always put the dll
1787         in the expected dir.
1788
1789         * WebCore.pro: Fix for shadow builds inside Qt.
1790
1791 2010-03-26  Kenneth Rohde Christiansen  <kenneth@webkit.org>
1792
1793         Reviewed by Antti Koivisto.
1794
1795         Implement flattening for iframes.
1796
1797         Refactoring of frameset flattening code to reuse it for
1798         iframe flattening.
1799
1800         Tests: fast/frames/flattening/iframe-flattening-simple.html
1801
1802         * WebCore.base.exp:
1803         * page/FrameView.cpp:
1804         (WebCore::FrameView::layout):
1805         (WebCore::FrameView::scheduleRelayout):
1806         * page/Settings.cpp:
1807         (WebCore::Settings::Settings):
1808         (WebCore::Settings::setFrameFlatteningEnabled):
1809         * page/Settings.h:
1810         (WebCore::Settings::frameFlatteningEnabled):
1811         * rendering/RenderFrame.cpp:
1812         * rendering/RenderFrame.h:
1813         * rendering/RenderFrameSet.cpp:
1814         (WebCore::RenderFrameSet::flattenFrameSet):
1815         * rendering/RenderFrameSet.h:
1816         * rendering/RenderPart.cpp:
1817         (WebCore::RenderPart::layoutWithFlattening):
1818         * rendering/RenderPart.h:
1819         * rendering/RenderPartObject.cpp:
1820         (WebCore::RenderPartObject::flattenFrame):
1821         (WebCore::RenderPartObject::calcHeight):
1822         (WebCore::RenderPartObject::calcWidth):
1823         (WebCore::RenderPartObject::layout):
1824         * rendering/RenderPartObject.h:
1825
1826 2010-03-29  Andrei Popescu  <andreip@google.com>
1827
1828         Reviewed by Adam Barth.
1829
1830         Page Cache does not work on Android with V8
1831         https://bugs.webkit.org/show_bug.cgi?id=36665
1832
1833         No new tests, existing tests should suffice, this is platform code.
1834
1835         This implementation simply saves the context and the global object
1836         just before the frame is navigated to a new url. At restore time,
1837         the global object is reattached to the context and the context
1838         is attached to the window shell of the frame.
1839
1840         Note that isolated worlds are not taken into account in any way,
1841         as Android does not use them.
1842
1843         * bindings/v8/ScriptCachedFrameData.cpp: Added.
1844         (WebCore::ScriptCachedFrameData::ScriptCachedFrameData):
1845         (WebCore::ScriptCachedFrameData::domWindow):
1846         (WebCore::ScriptCachedFrameData::~ScriptCachedFrameData):
1847         (WebCore::ScriptCachedFrameData::restore):
1848         (WebCore::ScriptCachedFrameData::clear):
1849         * bindings/v8/ScriptCachedFrameData.h:
1850         * bindings/v8/V8DOMWindowShell.cpp:
1851         (WebCore::V8DOMWindowShell::setContext):
1852         * bindings/v8/V8DOMWindowShell.h:
1853
1854 2010-03-29  Thomas Zander  <t.zander@nokia.com>
1855
1856         Reviewed by Simon Hausmann.
1857
1858         [Qt] Make it possible to build using both Windows and Linux for Symbian
1859         https://bugs.webkit.org/show_bug.cgi?id=36748
1860
1861         * WebCore.pro: don't assume Windows buildsystem is the only one
1862         and exclude the windows-only setters from the linux builds.
1863
1864 2010-03-29  Thomas Zander  <t.zander@nokia.com>
1865
1866         Reviewed by Simon Hausmann.
1867
1868         https://bugs.webkit.org/show_bug.cgi?id=36745
1869
1870         [Qt] Fix def file builds with Qt 4.7.
1871
1872         Switched to using DEF_FILE, which is the official variable.
1873
1874         * WebCore.pro: Use DEF_FILE
1875
1876 2010-03-24  Jeremy Orlow  <jorlow@chromium.org>
1877
1878         Reviewed by Darin Fisher.
1879
1880         A few more steps towards IndexedDB
1881         https://bugs.webkit.org/show_bug.cgi?id=36546
1882
1883         Add a callback interface to be used by all async methods.
1884         Add the first fragments of IDBDatabase.
1885         Clean up on IDBDatabaseError.
1886         Flesh out IndexedDatabase further.
1887
1888         Not enough hooked up yet to test.  Soon though...
1889
1890         * WebCore.gypi:
1891         * storage/IDBCallbacks.h: Added.
1892         (WebCore::IDBCallbacks::~IDBCallbacks):
1893         * storage/IDBDatabase.cpp: Added.
1894         * storage/IDBDatabase.h: Added.
1895         (WebCore::IDBDatabase::~IDBDatabase):
1896         * storage/IDBDatabaseError.h:
1897         (WebCore::IDBDatabaseError::create):
1898         (WebCore::IDBDatabaseError::message):
1899         (WebCore::IDBDatabaseError::IDBDatabaseError):
1900         * storage/IndexedDatabase.h:
1901         * storage/IndexedDatabaseImpl.cpp:
1902         (WebCore::IndexedDatabaseImpl::IndexedDatabaseImpl):
1903         (WebCore::IndexedDatabaseImpl::~IndexedDatabaseImpl):
1904         (WebCore::IndexedDatabaseImpl::open):
1905         * storage/IndexedDatabaseImpl.h:
1906         * storage/IndexedDatabaseRequest.cpp:
1907         (WebCore::IndexedDatabaseRequest::open):
1908
1909 2010-03-29  Mikhail Naganov  <mnaganov@chromium.org>
1910
1911         Reviewed by Pavel Feldman.
1912
1913         Remove a possibility of confusion from Profiles panel Welcome screen
1914         by turning buttons into non-clickable glyphs. Also, span instructions
1915         alongside panel width.
1916
1917         https://bugs.webkit.org/show_bug.cgi?id=34319
1918
1919         * English.lproj/localizedStrings.js:
1920         * inspector/front-end/ProfileView.js:
1921         (WebInspector.CPUProfileType.prototype.get welcomeMessage):
1922         * inspector/front-end/ProfilesPanel.js:
1923         (WebInspector.ProfilesPanel.prototype._addWelcomeMessage):
1924         * inspector/front-end/inspector.css:
1925         (.panel-enabler-view.welcome .instructions):
1926         (.panel-enabler-view.welcome button.status-bar-item):
1927
1928 2010-03-26  Philippe Normand  <pnormand@igalia.com>
1929
1930         Reviewed by Eric Seidel.
1931
1932         [GStreamer] define static variables with DEFINE_STATIC_LOCAL macro
1933         https://bugs.webkit.org/show_bug.cgi?id=36653
1934
1935         Defined the static variables using DEFINE_STATIC_GLOBAL.
1936
1937         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1938         (WebCore::mimeTypeCache):
1939
1940 2010-03-26  Philippe Normand  <pnormand@igalia.com>
1941
1942         Reviewed by Eric Seidel.
1943
1944         [GStreamer] player header cleanups
1945         https://bugs.webkit.org/show_bug.cgi?id=36656
1946
1947         Destructor made private and added missing
1948         mediaPlayerPrivateMuteChangedCallback declaration.
1949
1950         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
1951
1952 2010-03-29  Yury Semikhatsky  <yurys@chromium.org>
1953
1954         Reviewed by Pavel Feldman.
1955
1956         Protect global object from being GC'ed if there are messages written to console from the iframe with that global object.
1957
1958         Whent serializing objects in the injected script check that global object properties are still defined before using them as arguments. The may become undefined if owning frame navigated to a different domain.
1959
1960         https://bugs.webkit.org/show_bug.cgi?id=36612
1961
1962         Test: http/tests/inspector-enabled/console-log-before-frame-navigation.html
1963
1964         * bindings/js/ScriptState.h:
1965         (WebCore::ScriptStateProtectedPtr::ScriptStateProtectedPtr):
1966         (WebCore::ScriptStateProtectedPtr::get):
1967         * bindings/v8/ScriptState.h:
1968         (WebCore::ScriptStateProtectedPtr::ScriptStateProtectedPtr):
1969         (WebCore::ScriptStateProtectedPtr::~ScriptStateProtectedPtr):
1970         (WebCore::ScriptStateProtectedPtr::get):
1971         * inspector/ConsoleMessage.cpp:
1972         (WebCore::ConsoleMessage::addToFrontend):
1973         * inspector/ConsoleMessage.h:
1974         * inspector/front-end/InjectedScript.js:
1975         (injectedScriptConstructor):
1976         (injectedScriptConstructor.):
1977
1978 2010-03-26  Philippe Normand  <pnormand@igalia.com>
1979
1980         Reviewed by Eric Carlson.
1981
1982         It should be possible to use GStreamer in addition to another media engine
1983         https://bugs.webkit.org/show_bug.cgi?id=36654
1984
1985         Renamed gstreamer player and added a WTF_USE_GSTREAMER
1986         define. Made the MediaPlayer register the GStreamer backend only
1987         if it's enabled (true by default on WebKitGTK+).
1988
1989         * GNUmakefile.am:
1990         * platform/graphics/MediaPlayer.cpp:
1991         (WebCore::installedMediaEngines):
1992         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1993         (WebCore::mediaPlayerPrivateMessageCallback):
1994         (WebCore::mediaPlayerPrivateSourceChangedCallback):
1995         (WebCore::mediaPlayerPrivateVolumeChangedCallback):
1996         (WebCore::mediaPlayerPrivateMuteChangedCallback):
1997         (WebCore::mediaPlayerPrivateRepaintCallback):
1998         (WebCore::MediaPlayerPrivateGStreamer::create):
1999         (WebCore::MediaPlayerPrivateGStreamer::registerMediaEngine):
2000         (WebCore::MediaPlayerPrivateGStreamer::isAvailable):
2001         (WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
2002         (WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer):
2003         (WebCore::MediaPlayerPrivateGStreamer::load):
2004         (WebCore::MediaPlayerPrivateGStreamer::commitLoad):
2005         (WebCore::MediaPlayerPrivateGStreamer::changePipelineState):
2006         (WebCore::MediaPlayerPrivateGStreamer::prepareToPlay):
2007         (WebCore::MediaPlayerPrivateGStreamer::play):
2008         (WebCore::MediaPlayerPrivateGStreamer::pause):
2009         (WebCore::MediaPlayerPrivateGStreamer::duration):
2010         (WebCore::MediaPlayerPrivateGStreamer::currentTime):
2011         (WebCore::MediaPlayerPrivateGStreamer::seek):
2012         (WebCore::MediaPlayerPrivateGStreamer::startEndPointTimerIfNeeded):
2013         (WebCore::MediaPlayerPrivateGStreamer::cancelSeek):
2014         (WebCore::MediaPlayerPrivateGStreamer::endPointTimerFired):
2015         (WebCore::MediaPlayerPrivateGStreamer::paused):
2016         (WebCore::MediaPlayerPrivateGStreamer::seeking):
2017         (WebCore::MediaPlayerPrivateGStreamer::naturalSize):
2018         (WebCore::MediaPlayerPrivateGStreamer::hasVideo):
2019         (WebCore::MediaPlayerPrivateGStreamer::hasAudio):
2020         (WebCore::MediaPlayerPrivateGStreamer::setVolume):
2021         (WebCore::MediaPlayerPrivateGStreamer::volumeChangedTimerFired):
2022         (WebCore::MediaPlayerPrivateGStreamer::volumeChanged):
2023         (WebCore::MediaPlayerPrivateGStreamer::setRate):
2024         (WebCore::MediaPlayerPrivateGStreamer::networkState):
2025         (WebCore::MediaPlayerPrivateGStreamer::readyState):
2026         (WebCore::MediaPlayerPrivateGStreamer::buffered):
2027         (WebCore::MediaPlayerPrivateGStreamer::processBufferingStats):
2028         (WebCore::MediaPlayerPrivateGStreamer::fillTimerFired):
2029         (WebCore::MediaPlayerPrivateGStreamer::maxTimeSeekable):
2030         (WebCore::MediaPlayerPrivateGStreamer::maxTimeLoaded):
2031         (WebCore::MediaPlayerPrivateGStreamer::bytesLoaded):
2032         (WebCore::MediaPlayerPrivateGStreamer::totalBytes):
2033         (WebCore::MediaPlayerPrivateGStreamer::cancelLoad):
2034         (WebCore::MediaPlayerPrivateGStreamer::updateStates):
2035         (WebCore::MediaPlayerPrivateGStreamer::mediaLocationChanged):
2036         (WebCore::MediaPlayerPrivateGStreamer::loadNextLocation):
2037         (WebCore::MediaPlayerPrivateGStreamer::loadStateChanged):
2038         (WebCore::MediaPlayerPrivateGStreamer::sizeChanged):
2039         (WebCore::MediaPlayerPrivateGStreamer::timeChanged):
2040         (WebCore::MediaPlayerPrivateGStreamer::didEnd):
2041         (WebCore::MediaPlayerPrivateGStreamer::durationChanged):
2042         (WebCore::MediaPlayerPrivateGStreamer::supportsMuting):
2043         (WebCore::MediaPlayerPrivateGStreamer::setMuted):
2044         (WebCore::MediaPlayerPrivateGStreamer::muteChangedTimerFired):
2045         (WebCore::MediaPlayerPrivateGStreamer::muteChanged):
2046         (WebCore::MediaPlayerPrivateGStreamer::loadingFailed):
2047         (WebCore::MediaPlayerPrivateGStreamer::setSize):
2048         (WebCore::MediaPlayerPrivateGStreamer::setVisible):
2049         (WebCore::MediaPlayerPrivateGStreamer::repaint):
2050         (WebCore::MediaPlayerPrivateGStreamer::paint):
2051         (WebCore::MediaPlayerPrivateGStreamer::getSupportedTypes):
2052         (WebCore::MediaPlayerPrivateGStreamer::supportsType):
2053         (WebCore::MediaPlayerPrivateGStreamer::hasSingleSecurityOrigin):
2054         (WebCore::MediaPlayerPrivateGStreamer::supportsFullscreen):
2055         (WebCore::MediaPlayerPrivateGStreamer::setPreload):
2056         (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
2057         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
2058
2059 2010-03-28  Alexey Proskuryakov  <ap@apple.com>
2060
2061         Reviewed by Sam Weinig.
2062
2063         https://bugs.webkit.org/show_bug.cgi?id=36733
2064         Use a common header for Windows virtual key codes on all platforms
2065
2066         No change in functionality, so no new tests.
2067
2068         * platform/WindowsKeyboardCodes.h: Added. Define VK_* key codes as macros, matching Windows.
2069
2070         * platform/KeyboardCodes.h: Removed.
2071         * platform/android/KeyboardCodes.h: Removed.
2072         * platform/chromium/KeyboardCodesPosix.h: Removed.
2073         * platform/chromium/KeyboardCodesWin.h: Removed.
2074         * platform/haiku/KeyboardCodes.h: Removed.
2075         * platform/wx/KeyboardCodes.h: Removed.
2076         Removed platform specific attempts to do the same thing. In fact, platform/KeyboardCodes.h
2077         was supposed to be cross-platform, but it didn't have a sufficiently descriptive name, and
2078         its name was the same as platform-specific versions, so I chose a new one.
2079
2080         * platform/chromium/KeyboardCodes.h: Copied from WebCore/platform/chromium/KeyboardCodesWin.h.
2081         Chromium redefines Windows constants to different names; keeping the header doing that to
2082         avoid breaking Chromium code.
2083
2084         * GNUmakefile.am:
2085         * WebCore.gypi:
2086         Replaced KeyboardCodes.h with WindowsKeyboardCodes.h.
2087
2088         * WebCore.xcodeproj/project.pbxproj:
2089         * platform/cocoa/KeyEventCocoa.mm:
2090         (WebCore::windowsKeyCodeForKeyCode):
2091         (WebCore::windowsKeyCodeForCharCode):
2092         Mac used to hardcode the key codes; changed to use VK_* macros.
2093
2094         * config.h: Removed a hack to include KeyboardCodes.h, it shouldn't be necessary any more.
2095
2096         * platform/android/KeyEventAndroid.cpp:
2097         * platform/brew/PlatformKeyboardEventBrew.cpp:
2098         * platform/efl/PlatformKeyboardEventEfl.cpp:
2099         * platform/gtk/KeyEventGtk.cpp:
2100         * platform/haiku/PlatformKeyboardEventHaiku.cpp:
2101         * platform/qt/PlatformKeyboardEventQt.cpp:
2102         * platform/wx/KeyboardEventWx.cpp:
2103         Changed to include WindowsKeyboardCodes.h.
2104
2105 2010-03-28  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
2106
2107         Reviewed by Simon Hausmann.
2108
2109         [Qt] Remove the definition of WTF_CHANGES guards from the build system
2110         https://bugs.webkit.org/show_bug.cgi?id=31670
2111
2112         No new tests as there is no new functionality.
2113
2114         * WebCore.pri: Remove the definition of WTF_CHANGES
2115         as it is already defined in config.h
2116
2117 2010-03-28  Sam Weinig  <sam@webkit.org>
2118
2119         Reviewed by Dan Bernstein.
2120
2121         Clean up the Xcode project a bit.
2122
2123         * WebCore.xcodeproj/project.pbxproj:
2124
2125 2010-03-28  Pavel Feldman  <pfeldman@chromium.org>
2126
2127         Reviewed by Timothy Hatcher.
2128
2129         Web Inspector: Toggling style properties on/off does not always work.
2130
2131         https://bugs.webkit.org/show_bug.cgi?id=36720
2132
2133         * inspector/InspectorController.cpp:
2134         * inspector/InspectorDOMAgent.cpp:
2135         (WebCore::InspectorDOMAgent::toggleStyleEnabled):
2136         (WebCore::InspectorDOMAgent::buildObjectForStyle):
2137         (WebCore::InspectorDOMAgent::buildArrayForDisabledStyleProperties):
2138         * inspector/InspectorDOMAgent.h:
2139         * inspector/front-end/DOMAgent.js:
2140         (WebInspector.CSSStyleDeclaration):
2141
2142 2010-03-28  Pavel Feldman  <pfeldman@chromium.org>
2143
2144         Reviewed by Timothy Hatcher.
2145
2146         Web Inspector: resource links should navigate to resource panel enabler when resource tracking is off.
2147
2148         https://bugs.webkit.org/show_bug.cgi?id=36722
2149
2150         * English.lproj/localizedStrings.js:
2151         * inspector/front-end/inspector.js:
2152         (WebInspector.documentMouseOver):
2153         (WebInspector.documentClick.followLink):
2154         (WebInspector.documentClick):
2155
2156 2010-03-28  Dirk Schulze  <krit@webkit.org>
2157
2158         Unreviewed build-fix for chromium linux.
2159
2160         SVGResourceMarker needs to be moved to RenderersSVGResourceMarker
2161         https://bugs.webkit.org/show_bug.cgi?id=36185
2162
2163         * svg/SVGStyledElement.cpp:
2164         (WebCore::SVGStyledElement::invalidateResources):
2165
2166 2010-03-28  Dirk Schulze  <krit@webkit.org>
2167
2168         Reviewed by Nikolas Zimmermann.
2169
2170         SVGResourceMarker needs to be moved to RenderersSVGResourceMarker
2171         https://bugs.webkit.org/show_bug.cgi?id=36185
2172
2173         This moves SVGResourceMarker to RenderersSVGResourceMarker. This follows other
2174         SVG resources like masker and clipper and makes DRT results more readable and
2175         adds additonal informations.
2176         Some marker specific code also moved out from RenderSVGViewportContainer to 
2177         RenderersSVGResourceMarker.
2178
2179         * Android.mk:
2180         * GNUmakefile.am:
2181         * WebCore.gypi:
2182         * WebCore.pro:
2183         * WebCore.vcproj/WebCore.vcproj:
2184         * WebCore.xcodeproj/project.pbxproj:
2185         * rendering/RenderPath.cpp:
2186         (WebCore::RenderPath::calculateMarkerBoundsIfNeeded):
2187         * rendering/RenderSVGImage.cpp:
2188         (WebCore::RenderSVGImage::destroy):
2189         * rendering/RenderSVGResource.h:
2190         (WebCore::):
2191         * rendering/RenderSVGResourceMarker.cpp: Added.
2192         (WebCore::RenderSVGResourceMarker::RenderSVGResourceMarker):
2193         (WebCore::RenderSVGResourceMarker::~RenderSVGResourceMarker):
2194         (WebCore::RenderSVGResourceMarker::layout):
2195         (WebCore::RenderSVGResourceMarker::addClient):
2196         (WebCore::RenderSVGResourceMarker::invalidateClients):
2197         (WebCore::RenderSVGResourceMarker::invalidateClient):
2198         (WebCore::RenderSVGResourceMarker::applyViewportClip):
2199         (WebCore::RenderSVGResourceMarker::markerBoundaries):
2200         (WebCore::RenderSVGResourceMarker::localToParentTransform):
2201         (WebCore::RenderSVGResourceMarker::referencePoint):
2202         (WebCore::RenderSVGResourceMarker::angle):
2203         (WebCore::RenderSVGResourceMarker::markerTransformation):
2204         (WebCore::RenderSVGResourceMarker::draw):
2205         (WebCore::RenderSVGResourceMarker::markerContentTransformation):
2206         (WebCore::RenderSVGResourceMarker::viewportTransform):
2207         (WebCore::RenderSVGResourceMarker::calcViewport):
2208         * rendering/RenderSVGResourceMarker.h: Added.
2209         (WebCore::RenderSVGResourceMarker::renderName):
2210         (WebCore::RenderSVGResourceMarker::applyResource):
2211         (WebCore::RenderSVGResourceMarker::resourceBoundingBox):
2212         (WebCore::RenderSVGResourceMarker::markerUnits):
2213         (WebCore::RenderSVGResourceMarker::resourceType):
2214         * rendering/RenderSVGViewportContainer.cpp:
2215         (WebCore::RenderSVGViewportContainer::calcViewport):
2216         (WebCore::RenderSVGViewportContainer::viewportTransform):
2217         * rendering/RenderSVGViewportContainer.h:
2218         * rendering/SVGMarkerData.h:
2219         (WebCore::SVGMarkerData::SVGMarkerData):
2220         (WebCore::SVGMarkerData::marker):
2221         (WebCore::SVGMarkerData::updateTypeAndMarker):
2222         * rendering/SVGMarkerLayoutInfo.cpp:
2223         (WebCore::processStartAndMidMarkers):
2224         (WebCore::SVGMarkerLayoutInfo::calculateBoundaries):
2225         (WebCore::SVGMarkerLayoutInfo::addLayoutedMarker):
2226         * rendering/SVGMarkerLayoutInfo.h:
2227         (WebCore::MarkerLayout::MarkerLayout):
2228         (WebCore::SVGMarkerLayoutInfo::midMarker):
2229         * rendering/SVGRenderSupport.cpp:
2230         (WebCore::deregisterFromResources):
2231         * rendering/SVGRenderSupport.h:
2232         * rendering/SVGRenderTreeAsText.cpp:
2233         (WebCore::operator<<):
2234         (WebCore::writeSVGResource):
2235         * svg/SVGMarkerElement.cpp:
2236         (WebCore::SVGMarkerElement::svgAttributeChanged):
2237         (WebCore::SVGMarkerElement::childrenChanged):
2238         (WebCore::SVGMarkerElement::setOrientToAuto):
2239         (WebCore::SVGMarkerElement::setOrientToAngle):
2240         (WebCore::SVGMarkerElement::createRenderer):
2241         * svg/SVGMarkerElement.h:
2242         (WebCore::SVGMarkerElement::):
2243         * svg/SVGStyledElement.cpp:
2244         (WebCore::SVGStyledElement::invalidateResources):
2245         * svg/graphics/SVGResource.h:
2246         (WebCore::):
2247         (WebCore::SVGResource::isFilter):
2248         * svg/graphics/SVGResourceMarker.cpp: Removed.
2249         * svg/graphics/SVGResourceMarker.h: Removed.
2250
2251 2010-03-28  Joseph Pecoraro  <joepeck@webkit.org>
2252
2253         Reviewed by Pavel Feldman.
2254
2255         Web Inspector: Consolidate Tree Hierarchy Attribute HTML Generation
2256         https://bugs.webkit.org/show_bug.cgi?id=36719
2257
2258           Consolidates the generation of Element Tree Hierarchy attribute code
2259           generation to a single function: _attributeHTML.
2260
2261         * inspector/front-end/ElementsTreeOutline.js:
2262         (WebInspector.ElementsTreeElement.prototype._addNewAttribute): convert to use attributeHTML.
2263         (WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted.regenerateStyledAttribute): convert to use attributeHTML.
2264         (WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted):
2265         (WebInspector.ElementsTreeElement.prototype._attributeHTML): a single point for generating the html for attributes.
2266
2267 2010-03-28  Joseph Pecoraro  <joepeck@webkit.org>
2268
2269         Reviewed by Pavel Feldman.
2270
2271         Web Inspector: Edit Tag Names
2272         https://bugs.webkit.org/show_bug.cgi?id=36481
2273
2274           Ensure blacklisting happens by checking it in _startEditingTagName
2275           instead of all the possible entry points.
2276
2277         * inspector/front-end/ElementsTreeOutline.js:
2278         (WebInspector.ElementsTreeElement.prototype._startEditingFromEvent): don't check blacklist here.
2279         (WebInspector.ElementsTreeElement.prototype._startEditingTagName): check blacklist here.
2280
2281 2010-03-28  Kim Grönholm  <kim.gronholm@nomovok.com>
2282
2283         Reviewed by Simon Hausmann.
2284
2285         [Qt] GraphicsLayer: Timing functions don't work with transitions
2286         https://bugs.webkit.org/show_bug.cgi?id=36589
2287
2288         If the animation value doesn't have timing function set, we need to
2289         use the animation's timing function.
2290         
2291         Fixed also a bug in passing the duration to solveCubicBezierFunction.
2292         The duration was divided two times by 1000 and meanwhile casted to int.
2293         It needs to be kept as double and divided by 1000 only once.
2294
2295         Test case: https://bugs.webkit.org/attachment.cgi?id=51619
2296
2297         * platform/graphics/qt/GraphicsLayerQt.cpp:
2298         (WebCore::applyTimingFunction):
2299         (WebCore::AnimationQt:::AnimationQtBase):
2300         (WebCore::AnimationQt::updateCurrentTime):
2301
2302 2010-03-27  Joseph Pecoraro  <joepeck@webkit.org>
2303
2304         Reviewed by Pavel Feldman.
2305
2306         Web Inspector: Edit Tag Names
2307         https://bugs.webkit.org/show_bug.cgi?id=36481
2308
2309         Allow tabbing back and forth between the tag name and element
2310         attributes when editing. Also, fixed a number of minor issues with
2311         editing attributes and tabbing.
2312
2313         * inspector/front-end/ElementsTreeOutline.js:
2314         (WebInspector.ElementsTreeElement.prototype._startEditingTagName): find the tag name if it wasn't provided.
2315         (WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted): fix tabbing issues, enable tab to tag name.
2316         (WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted.regenerateStyledAttribute): cleanup styles when tabbing.
2317         * inspector/front-end/inspector.css: do not display <br>s while editing
2318
2319 2010-03-27  Joseph Pecoraro  <joepeck@webkit.org>
2320
2321         Reviewed by Pavel Feldman.
2322
2323         Web Inspector: Edit Tag Names
2324         https://bugs.webkit.org/show_bug.cgi?id=36481
2325         
2326         Allow editing an Element's Tag Name by double clicking
2327         on the tag name in the Element's Tree Hierarchy.
2328         
2329           The usual asynchronous InspectorBackend, InspectorDOMAgent, InspectorFrontend flow.
2330
2331         * inspector/InspectorBackend.cpp: moved DOM manipulation to InspectorDOMAgent
2332         (WebCore::InspectorBackend::removeNode):
2333         (WebCore::InspectorBackend::changeTagName):
2334         * inspector/InspectorBackend.h:
2335         * inspector/InspectorBackend.idl:
2336         * inspector/InspectorDOMAgent.cpp:
2337         (WebCore::InspectorDOMAgent::removeNode):
2338         (WebCore::InspectorDOMAgent::changeTagName):
2339         * inspector/InspectorDOMAgent.h:
2340         * inspector/InspectorFrontend.cpp:
2341         (WebCore::InspectorFrontend::didChangeTagName):
2342         * inspector/InspectorFrontend.h:
2343
2344         * inspector/front-end/DOMAgent.js:
2345
2346           Handle the UI for editing an Element's tag name.
2347
2348         * inspector/front-end/ElementsTreeOutline.js:
2349         (WebInspector.ElementsTreeElement.prototype._startEditingFromEvent): allow editing from double click.
2350         (WebInspector.ElementsTreeElement.prototype._startEditingTagName.keyupListener): update the closing tag
2351         (WebInspector.ElementsTreeElement.prototype._startEditingTagName.editingComitted): remove extra listener and commit
2352         (WebInspector.ElementsTreeElement.prototype._startEditingTagName.editingCancelled): remove extra listener and cancel
2353         (WebInspector.ElementsTreeElement.prototype._startEditingTagName):
2354         (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted.cancel):
2355         (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted.moveToNextAttributeIfNeeded):
2356         (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted.editTagNameCallback):
2357         (WebInspector.ElementsTreeElement.prototype._tagNameEditingCommitted):
2358         (WebInspector.ElementsTreeElement.prototype._distinctClosingTagElement): get the closing tag for an opening tag
2359         (WebInspector.ElementsTreeElement.prototype._nodeTitleInfo): wrap the tagName in span.webkit-html-tag-name
2360
2361           Miscellaneous updates.
2362
2363         * inspector/front-end/treeoutline.js: fixed a typo.
2364
2365 2010-03-27  Dmitry Gorbik  <socket.h@gmail.com>
2366
2367         Reviewed by Pavel Feldman.
2368
2369         Fix the regression caused by r28078: a global variable
2370         definition masks a local one in an inspector console
2371         https://bugs.webkit.org/show_bug.cgi?id=32442
2372
2373         * inspector/front-end/InjectedScript.js:
2374         (injectedScriptConstructor):
2375
2376 2010-03-27  Dan Bernstein  <mitz@apple.com>
2377
2378         Reviewed by Darin Adler.
2379
2380         <rdar://problem/7801598> REGRESSION (r56182): iWeb shadow drawn around image rectangle, not around opaque part of the image
2381         https://bugs.webkit.org/show_bug.cgi?id=36700
2382
2383         * css/CSSPrimitiveValue.cpp:
2384         (WebCore::CSSPrimitiveValue::createColor): Reverted to returning an RGB color value rather than an
2385         identifier for the transparent color.
2386
2387 2010-03-26  Joseph Pecoraro  <joepeck@webkit.org>
2388
2389         Reviewed by Pavel Feldman.
2390
2391         Web Inspector: Converge Inspector ids to be long, not ints
2392         https://bugs.webkit.org/show_bug.cgi?id=36706
2393
2394           Part 1: Converge on `long` for callIds, nodeIds, and other Ids.
2395
2396         * inspector/InspectorController.cpp:
2397         * inspector/InspectorController.h:
2398         * inspector/InspectorDOMAgent.cpp:
2399         * inspector/InspectorFrontend.cpp:
2400         * inspector/InspectorFrontend.h:
2401
2402 2010-03-27  Pavel Feldman  <pfeldman@chromium.org>
2403
2404         Reviewed by Timothy Hatcher.
2405
2406         Web Inspector: add layout test for styles panel.
2407
2408         https://bugs.webkit.org/show_bug.cgi?id=36699
2409
2410         Test: inspector/elements-panel-styles.html
2411
2412         * inspector/front-end/inspector.css:
2413         (#elements-content):
2414         (#elements-sidebar):
2415         * inspector/front-end/inspector.js:
2416         (WebInspector.displayNameForURL):
2417         * inspector/front-end/utilities.js:
2418         (String.prototype.trimURL):
2419
2420 2010-03-27  Mark Rowe  <mrowe@apple.com>
2421
2422         Reviewed by Darin Adler.
2423
2424         CSSPrimitiveValue::setFloatValue/setStringValue should throw an exception if passed an incorrect unit type.
2425         <http://webkit.org/b/36680> / <rdar://problem/7801016>
2426
2427         Test: fast/dom/setPrimitiveValue-exceptions.html
2428
2429         * css/CSSPrimitiveValue.cpp:
2430         (WebCore::CSSPrimitiveValue::setFloatValue): Throw an INVALID_ACCESS_ERR if either of our type or the passed-in
2431         type is not a numeric type.
2432         (WebCore::CSSPrimitiveValue::setStringValue): Throw an INVALID_ACCESS_ERR if either of our type or the passed-in
2433         type is not a string type.
2434
2435 2010-03-27  Robert Hogan  <robert@webkit.org>
2436
2437         Reviewed by nobody, fix typo in previous commit.
2438
2439         Allow plugins implemented by the application, such as mimetype 'x-qt-plugin',
2440          when pluginsEnabled is false
2441
2442         Fix parentheses typo in r56661. This happened while rebasing and was not present
2443         in the reviewed patch, so committing unreviewed.
2444
2445         https://bugs.webkit.org/attachment.cgi?id=49515
2446
2447         * loader/FrameLoader.cpp:
2448         (WebCore::FrameLoader::requestObject):
2449
2450 2010-03-26  Robert Hogan  <robert@roberthogan.net>
2451
2452         Reviewed by Simon Hausmann.
2453
2454         Allow plugins implemented by the application, such as mimetype 'x-qt-plugin',
2455          when pluginsEnabled is false.
2456
2457         The purpose of disabling plugins is to prevent the execution of third-party code
2458         that may be untrustworthy. Qt plugins are implemented by the client rather than
2459         loaded from an external source, so the client should have the opportunity to
2460         consider them separately from other plugins.
2461
2462         Add a function MimeTypeRegistry::isApplicationPluginMIMEType() that WebKit
2463         uses in conjunction with arePluginsEnabled() to determine if it should attempt
2464         to load a plugin. If isApplicationPluginMIMEType() returns true, WebKit will load
2465         the plugin even if arePluginsEnabled() is false.
2466
2467         Currently, only Qt has application-implemented plugins: these use the mimetype
2468         'x-qt-plugin' and 'x-qt-styled-widget'. This patch permits Qt clients'
2469         reimplementation of QWebPage::createPlugin() to decide whether or not
2470         to create a Qt plugin, even when arePluginsEnabled is false.
2471
2472         For all platforms apart from Qt, isApplicationPluginMIMEType() returns false.
2473
2474         https://bugs.webkit.org/show_bug.cgi?id=32196
2475
2476         Test: plugins/application-plugin-plugins-disabled.html
2477
2478         * loader/FrameLoader.cpp:
2479         (WebCore::FrameLoader::requestObject):
2480         * platform/MIMETypeRegistry.h:
2481         * platform/brew/MIMETypeRegistryBrew.cpp:
2482         (WebCore::MIMETypeRegistry::isApplicationPluginMIMEType):
2483         * platform/chromium/MIMETypeRegistryChromium.cpp:
2484         (WebCore::MIMETypeRegistry::isApplicationPluginMIMEType):
2485         * platform/gtk/MIMETypeRegistryGtk.cpp:
2486         (WebCore::MIMETypeRegistry::isApplicationPluginMIMEType):
2487         * platform/haiku/MIMETypeRegistryHaiku.cpp:
2488         (WebCore::MIMETypeRegistry::isApplicationPluginMIMEType):
2489         * platform/mac/MIMETypeRegistryMac.mm:
2490         (WebCore::MIMETypeRegistry::isApplicationPluginMIMEType):
2491         * platform/qt/MIMETypeRegistryQt.cpp:
2492         (WebCore::MIMETypeRegistry::isApplicationPluginMIMEType):
2493         * platform/win/MIMETypeRegistryWin.cpp:
2494         (WebCore::MIMETypeRegistry::isApplicationPluginMIMEType):
2495         * platform/wince/MIMETypeRegistryWince.cpp:
2496         (WebCore::MIMETypeRegistry::isApplicationPluginMIMEType):
2497         * platform/wx/MimeTypeRegistryWx.cpp:
2498         (WebCore::MIMETypeRegistry::isApplicationPluginMIMEType):
2499
2500 2010-03-27  Dan Bernstein  <mitz@apple.com>
2501
2502         Reviewed by Mark Rowe.
2503
2504         Fix Acid3 text-shadow rendering regression introduced in r56597.
2505
2506         * platform/graphics/mac/FontMac.mm:
2507         (WebCore::Font::drawGlyphs): Revert to using the simple shadow logic for zero-blur shadows,
2508         except for color bitmap fonts.
2509
2510 2010-03-26  Daniel Bates  <dbates@rim.com>
2511
2512         Reviewed by Beth Dakin.
2513
2514         https://bugs.webkit.org/show_bug.cgi?id=9268
2515
2516         As per sections 14.2 (http://www.w3.org/TR/CSS2/colors.html#background)
2517         and 17.5.1 (http://www.w3.org/TR/CSS2/tables.html#table-layers) of the
2518         CSS 2.1 spec., the background-image of a table-row should span the
2519         entire area of the table-row (i.e cover all the <td>'s). Moreover,
2520         fixes background image painting with respect to row-groups, columns
2521         and column-groups (*).
2522
2523         Currently, the background-image of a table row, row-group, and column-group
2524         is inherited by the table cells. This directly contradicts section 14.2.
2525         Instead, the background-image should cover the entire area of the table row,
2526         row-group, column, or column-group, respectively as described in section 17.5.1.
2527
2528         (*) A follow up patch to compute the absolute content box of a column, and
2529         column-group is needed so that background image positioning for these table
2530         elements works. See bug #36104.
2531
2532         Tests: fast/table/table-background.html
2533                fast/table/table-cell-border-draws-on-top-of-col-background.html
2534                fast/table/table-cell-border-draws-on-top-of-col-group-background.html
2535                fast/table/table-cell-border-draws-on-top-of-row-background.html
2536                fast/table/table-cell-border-draws-on-top-of-row-group-background.html
2537                fast/table/table-cell-overrides-row-background.html
2538                fast/table/table-col-background.html
2539                fast/table/table-col-group-background.html
2540                fast/table/table-col-group-col-span-background.html
2541                fast/table/table-col-group-span-background.html
2542                fast/table/table-col-span-background.html
2543                fast/table/table-row-background-left-50px.html
2544                fast/table/table-row-background-right-100percent.html
2545                fast/table/table-row-background-right-50px.html
2546                fast/table/table-row-background.html
2547                fast/table/table-row-group-background-positioned.html
2548                fast/table/table-row-group-background.html
2549
2550         * rendering/RenderBoxModelObject.cpp:
2551         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
2552         (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry): Modified
2553         to call RenderObject::adjustBackgroundImagePosition.
2554         * rendering/RenderBoxModelObject.h:
2555         * rendering/RenderObject.h:
2556         (WebCore::RenderObject::adjustBackgroundImagePosition): Added.
2557         * rendering/RenderTableCell.cpp:
2558         (WebCore::RenderTableCell::adjustBackgroundImagePosition): Added.
2559         * rendering/RenderTableCell.h:
2560
2561 2010-03-26  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
2562
2563         Unreviewed, minor build fix.
2564
2565         [Gtk] Guard defined but not used function
2566         
2567         Eliminate the "defined but not used" warning after r52684.
2568         No new tests as there is no new functionality.
2569
2570         * platform/ContextMenu.cpp:
2571
2572 2010-03-26  Justin Schuh  <jschuh@chromium.org>
2573
2574         Reviewed by Adam Barth.
2575
2576         Security: iFrame.src accepts JavaScript URL via nodeValue or textContent
2577         https://bugs.webkit.org/show_bug.cgi?id=36502
2578
2579         Overrode inherited nodeValue and textContent in Attr.idl so they proxy 
2580         to value, which performs a security check.
2581
2582         Test: http/tests/security/xss-DENIED-iframe-src-alias.html
2583
2584         * bindings/js/JSAttrCustom.cpp:
2585         (WebCore::JSAttr::nodeValue):
2586         (WebCore::JSAttr::setNodeValue):
2587         (WebCore::JSAttr::textContent):
2588         (WebCore::JSAttr::setTextContent):
2589         * bindings/v8/custom/V8AttrCustom.cpp:
2590         (WebCore::V8Attr::nodeValueAccessorSetter):
2591         (WebCore::V8Attr::nodeValueAccessorGetter):
2592         (WebCore::V8Attr::textContentAccessorSetter):
2593         (WebCore::V8Attr::textContentAccessorGetter):
2594         * dom/Attr.idl:
2595
2596 2010-03-26  Eric Carlson  <eric.carlson@apple.com>
2597
2598         <rdar://problem/7320584> 
2599         https://bugs.webkit.org/show_bug.cgi?id=36681
2600         "new Audio()" doesn't work with plug-in backed media engine.
2601
2602         Don't require plug-in backed <video> and <audio> elements to be in the document to play.
2603
2604         * html/HTMLMediaElement.cpp:
2605         (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_proxyWidget
2606         (WebCore::HTMLMediaElement::createRenderer): Set renderer widget if it has already been
2607         allocated.
2608         (WebCore::HTMLMediaElement::scheduleLoad): Call createMediaPlayerProxy to make sure we
2609         have a plug-in proxy.
2610         (WebCore::HTMLMediaElement::loadResource): Ditto.
2611         (WebCore::HTMLMediaElement::ensureMediaPlayer): Allocate media player.
2612         (WebCore::HTMLMediaElement::setMediaPlayerProxy): Call ensureMediaPlayer.
2613         (WebCore::HTMLMediaElement::getPluginProxyParams): New, return the url and params vectors.
2614         (WebCore::HTMLMediaElement::finishParsingChildren): Call createMediaPlayerProxy.
2615         (WebCore::HTMLMediaElement::createMediaPlayerProxy): New, allocate the proxy widget if necessary.
2616         * html/HTMLMediaElement.h:
2617
2618         * loader/EmptyClients.h:
2619         (WebCore::EmptyFrameLoaderClient::createMediaPlayerProxyPlugin): Add declaration.
2620
2621         * loader/FrameLoader.cpp:
2622         (WebCore::toPlugInElement): Don't allow an audio or video element to be cast to a plug-in element.
2623         (WebCore::FrameLoader::loadPlugin):
2624         (WebCore::FrameLoader::loadMediaPlayerProxyPlugin): New, allocate a media player proxy plug-in.
2625
2626         * loader/FrameLoader.h: Declare loadMediaPlayerProxyPlugin.
2627
2628         * loader/FrameLoaderClient.h: Declare createMediaPlayerProxyPlugin.
2629
2630         * rendering/RenderEmbeddedObject.cpp:
2631         (WebCore::RenderEmbeddedObject::updateWidget): Call loadMediaPlayerProxyPlugin when passed an
2632         audio or video node.
2633
2634         * rendering/RenderLayerCompositor.cpp:
2635         (WebCore::RenderLayerCompositor::requiresCompositingForVideo):
2636
2637          * rendering/RenderVideo.cpp:
2638          (WebCore::RenderVideo::RenderVideo): Get default width and height from defaultSize.
2639          (WebCore::RenderVideo::defaultSize): New, return the spec defined default width and height.
2640          * rendering/RenderVideo.h:
2641
2642 2010-03-26  Simon Fraser  <simon.fraser@apple.com>
2643
2644         Reviewed by Dan Bernstein, Darin Adler.
2645
2646         Re-entrant layout via plug-ins may cause crashes with bad RenderWidgets
2647         https://bugs.webkit.org/show_bug.cgi?id=36675
2648         <rdar://problem/7787617>
2649         
2650         Fix two places in the code where RenderWidgets can get destroyed while being iterated over.
2651         This can happen when plug-ins execute script from NPP_SetWindow, and that script makes a change
2652         to the page that destroys a RenderWidget.
2653
2654         Tests: plugins/reentrant-update-widget-positions.html
2655                plugins/update-widgets-crash.html
2656
2657         * page/FrameView.cpp:
2658         (WebCore::FrameView::updateWidgets): ref() the RenderEmbeddedObjects that are put into the
2659         vector before iterating of them, and deref() them at the end. Rather than checking the m_widgetUpdateSet
2660         to see if the RenderWidget is still live, test object->node().
2661         
2662         * rendering/RenderView.cpp:
2663         (WebCore::RenderView::RenderView): Initialize some data members to make it more obvious in the debugger
2664         that the object is not garbage.
2665         (WebCore::RenderView::updateWidgetPositions): Use a Vector of RenderWidget* to keep the RenderWidgets
2666         alive during iteration, by reffing and dereffing them.
2667         * rendering/RenderWidget.h:
2668         (WebCore::RenderWidget::ref): Make this and deref() public.
2669
2670 2010-03-26 Beth Dakin <bdakin@apple.com>
2671
2672         Reviewed by Darin Adler.
2673
2674         Partial fix for https://bugs.webkit.org/show_bug.cgi?id=36564 
2675         Performance regression for setting content of <text> in SVG
2676         -and corresponding-
2677         <rdar://problem/7693963>
2678
2679         toClipPath() is extremely inefficient, so this patch removes the 
2680         call to it from RenderSVGResourceClipper::resourceBoundingBox() 
2681         which is very hot code in SVG with clip-paths. It is sufficient to 
2682         call unite with the objectBoundingBox(), which will return early if 
2683         objectBoundingBox() is empty.
2684
2685         * rendering/RenderSVGResourceClipper.cpp:
2686         (WebCore::RenderSVGResourceClipper::resourceBoundingBox):
2687
2688 2010-03-26  Joseph Pecoraro  <joepeck@webkit.org>
2689
2690         Reviewed by Dave Hyatt.
2691
2692         Generated run-in Content is Mistakenly Getting Deleted
2693         https://bugs.webkit.org/show_bug.cgi?id=36505
2694         <rdar://problem/7767161>
2695
2696         Test: fast/runin/generated2.html
2697         Test: fast/runin/generated3.html
2698         Test: fast/runin/generated4.html
2699
2700         Do not destroy :before/:after generated content with display run-in
2701         when relaying out different nodes. Have their real owners correctly
2702         handle them.
2703
2704         * rendering/RenderObjectChildList.cpp:
2705         (WebCore::RenderObjectChildList::updateBeforeAfterContent): simplified logic
2706         (WebCore::RenderObjectChildList::beforeAfterContainer): skip generated run-ins when checking children, check for them in grandchildren
2707
2708 2010-03-25  Ojan Vafai  <ojan@chromium.org>
2709
2710         Reviewed by Darin Adler.
2711
2712         shift+home/end and cmd+shift+left/right don't extend the selection correctly
2713         https://bugs.webkit.org/show_bug.cgi?id=36539
2714
2715         * WebCore.base.exp:
2716         * editing/SelectionController.cpp:
2717         (WebCore::SelectionController::modify):
2718         * editing/SelectionController.h:
2719
2720 2010-03-26  Janne Koskinen  <janne.p.koskinen@digia.com>
2721
2722         Reviewed by Laszlo Gombos.
2723
2724         Don't undefine SKIP_STATIC_CONSTRUCTORS_ON_GCC for Symbian HW targets.
2725         https://bugs.webkit.org/show_bug.cgi?id=34081
2726
2727         Defining StringImpl instances as globals will cause a crash on process exit as 
2728         StringImpl::Remove expects TLS which was already deleted at time of exiting main and ends up
2729         constructing one exiting thread.
2730
2731         * config.h:
2732
2733 2010-03-26  Andrey Kosyakov  <caseq@chromium.org>
2734
2735         Reviewed by Pavel Feldman.
2736
2737
2738         Send worker resource content to inspector to enable display of web
2739         workers in inspector's resource tab.
2740         https://bugs.webkit.org/show_bug.cgi?id=36658
2741
2742         * inspector/InspectorController.cpp:
2743         (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
2744         (WebCore::InspectorController::scriptImported):
2745         * inspector/InspectorResource.cpp:
2746         (WebCore::InspectorResource::type):
2747         (WebCore::InspectorResource::setOverrideContent):
2748         (WebCore::InspectorResource::sourceString):
2749         * inspector/InspectorResource.h:
2750         * workers/DefaultSharedWorkerRepository.cpp:
2751         (WebCore::SharedWorkerScriptLoader::notifyFinished):
2752         * workers/Worker.cpp:
2753         (WebCore::Worker::notifyFinished):
2754
2755 2010-03-26  Yael Aharon  <yael.aharon@nokia.com>
2756
2757         Reviewed by Antti Koivisto.
2758
2759         Fix the rendering of HTMLProgressElement
2760         https://bugs.webkit.org/show_bug.cgi?id=36206
2761
2762         Update the rendering and css to conform to
2763         http://www.whatwg.org/specs/web-apps/current-work/complete.html#the-progress-element-0.
2764         Updated the tests and the expected results accordingly.
2765
2766         * css/html.css:
2767         (progress):
2768         * rendering/RenderProgress.cpp:
2769         (WebCore::RenderProgress::RenderProgress):
2770         (WebCore::RenderProgress::updateFromElement):
2771         * rendering/RenderProgress.h:
2772         (WebCore::RenderProgress::isProgress):
2773
2774 2010-03-26  Julien Chaffraix  <jchaffraix@webkit.org>
2775
2776         Unreviewed build fix.
2777
2778         FontPlatformDataPango.cpp: prototype for
2779         'WebCore::FontPlatformData::FontPlatformData(cairo_font_face_t*, int, bool, bool)'
2780         does not match any in class
2781         https://bugs.webkit.org/show_bug.cgi?id=36496
2782
2783         * platform/graphics/gtk/FontPlatformDataPango.cpp:
2784         (WebCore::FontPlatformData::FontPlatformData): The 'size' parameter
2785         should be a float to match the declaration and the other definitions.
2786
2787 2010-03-26  Shu Chang  <chang.shu@nokia.com>
2788
2789         Reviewed by Eric Seidel.
2790
2791         [Qt] Prevent referring d->m_job in the future because calling abort()
2792         deletes the instance itself.
2793         https://bugs.webkit.org/show_bug.cgi?id=36618
2794
2795         Test: http/tests/appcache/fallback.html
2796
2797         * platform/network/qt/ResourceHandleQt.cpp:
2798         (WebCore::ResourceHandle::cancel):
2799
2800 2010-03-26  Stephen White  <senorblanco@chromium.org>
2801
2802         Unreviewed; build fix.
2803
2804         Rolling out 56620; too many layout test failures.
2805
2806         Covered by fast/css/*.
2807
2808         * css/CSSPrimitiveValue.cpp:
2809         (WebCore::CSSPrimitiveValue::cleanup):
2810         (WebCore::CSSPrimitiveValue::cssText):
2811         * css/CSSPrimitiveValue.h:
2812         (WebCore::CSSPrimitiveValue::):
2813
2814 2010-03-26  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
2815
2816         Reviewed by Simon Hausmann.
2817
2818         [Qt] Build JavaScriptCore as a static library.
2819         https://bugs.webkit.org/show_bug.cgi?id=36590
2820
2821         This patch takes what was left of the unused JavaScriptCore.pro
2822         and moved the compilation logic from JavaScriptCore.pri to
2823         JavaScriptCore.pro.
2824
2825         * WebCore.pro:
2826
2827 2010-03-26  Olivier Goffart  <ogoffart@trolltech.com>
2828
2829         Reviewed by Simon Hausmann.
2830
2831         [Qt] Fix compilation on Windows
2832
2833         For some reason, the MSVC compiler choose the
2834         operator+(const QString &, const QString &) instead of
2835         operator+(const WebCore::String &, const WebCore::String &)
2836         resulting in errors when QT_USE_FAST_OPERATOR_PLUS is used.
2837
2838         * dom/XMLTokenizerQt.cpp:
2839         (WebCore::handleElementNamespaces):
2840
2841 2010-03-24  Stephen White  <senorblanco@chromium.org>
2842
2843         Reviewed by Darin Adler.
2844
2845         In order to speed up multiple calls to CSSPrimitiveValue::cssText(),
2846         this CL caches the String result.  When m_value is changed, the
2847         cached string is cleared.  This gives a good speedup on benchmarks
2848         which do a lot of CSS property gets, such as Peacekeeper.
2849         The processing cost should be negligible, since the strings are 
2850         refcounted.  The memory cost is an additional 4 bytes per
2851         CSSPrimitiveValue, and the extended lifetime of the computed string
2852         (potentially, the same as the lifetime of the CSSPrimitiveValue).
2853
2854         https://bugs.webkit.org/show_bug.cgi?id=36556
2855
2856         Covered by fast/css/large-number-round-trip.html, and more.
2857
2858         * css/CSSPrimitiveValue.cpp:
2859         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2860         (WebCore::CSSPrimitiveValue::cleanup):
2861         (WebCore::CSSPrimitiveValue::cssText):
2862         * css/CSSPrimitiveValue.h:
2863
2864 2010-03-26  Qi Zhang  <qi.2.zhang@nokia.com>
2865
2866         Reviewed by Laszlo Gombos.
2867
2868         [Qt] fast/canvas/drawImage-with-negative-source-destination.html failed
2869         https://bugs.webkit.org/show_bug.cgi?id=35005
2870
2871         To support negative width or height at context.drawImage
2872
2873         * platform/graphics/qt/StillImageQt.cpp:
2874         (WebCore::StillImage::draw):
2875
2876 2010-03-08  Philippe Normand  <pnormand@igalia.com>
2877
2878         Reviewed by Gustavo Noronha.
2879
2880         [GStreamer] soften dependency on libsoup in the http src element
2881         https://bugs.webkit.org/show_bug.cgi?id=35864
2882
2883         Replaced SoupURI calls with KURL and pause/resume internal soup
2884         messages only if the element is compiled for a port depending on
2885         libsoup.
2886
2887         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
2888         (webkit_web_src_init):
2889         (webKitWebSrcSetUri):
2890         (webKitWebSrcNeedDataMainCb):
2891         (webKitWebSrcEnoughDataMainCb):
2892
2893 2010-03-25  Ilya Tikhonovsky  <loislo@chromium.org>
2894
2895         Reviewed by Pavel Feldman.
2896
2897         Web Inspector: Shot record filter is implemented in Timeline Panel.
2898         https://bugs.webkit.org/show_bug.cgi?id=36606
2899
2900         * English.lproj/localizedStrings.js:
2901         * inspector/front-end/TimelinePanel.js:
2902         (WebInspector.TimelinePanel):
2903         (WebInspector.TimelinePanel.prototype.get statusBarItems):
2904         (WebInspector.TimelinePanel.prototype._createStatusbarButtons):
2905         (WebInspector.TimelinePanel.prototype._toggleFilterButtonClicked):
2906         (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
2907         (WebInspector.TimelinePanel.prototype._addToRecordsWindow):
2908         (WebInspector.TimelineRecordGraphRow.prototype.update):
2909         (WebInspector.TimelinePanel.FormattedRecord.prototype.get _isLongEvent):
2910         * inspector/front-end/inspector.css:
2911
2912 2010-03-25  Pavel Feldman  <pfeldman@chromium.org>
2913
2914         Reviewed by Timothy Hatcher.
2915
2916         Web Inspector: Implement CSSStyleSelector::pseudoStyleForElement and use it in the InspectorDOMAgent.
2917
2918         https://bugs.webkit.org/show_bug.cgi?id=36509
2919
2920         This change provides pseudo elements information into the inspector styles sidebar pane.
2921         Changes applied:
2922         - CSSStyleSelector::pseudoStyleRulesForElement implemented. I changed the signature to accept
2923           PseudoId instead of a String since it better reflected the needs;
2924         - Accompanied elementStyle checks with m_collectRulesOnly checks;
2925         - Removed pseudoStyleRulesForElement usage from DOMWindow::getMatchedCSSRules. It was anyways
2926           returning 0, while I would need to convert String to PseudoId in order to leave the call in place;
2927         - Needed to introduce AFTER_LAST_INTERNAL_PSEUDOID marker const in RenderStyleConstants' PseudoId enum
2928         - InspectorDOMAgent is now iterating over all pseudo ids to get all styles (including internal ones).
2929         - Brushed up front-end code so that proper overriding took place locally within pseudo id categories.
2930
2931         * English.lproj/localizedStrings.js:
2932         * css/CSSStyleSelector.cpp:
2933         (WebCore::CSSStyleSelector::styleRulesForElement):
2934         (WebCore::CSSStyleSelector::pseudoStyleRulesForElement):
2935         (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
2936         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
2937         * css/CSSStyleSelector.h:
2938         * inspector/InspectorDOMAgent.cpp:
2939         (WebCore::InspectorDOMAgent::getStyles):
2940         (WebCore::InspectorDOMAgent::buildObjectForAttributeStyles):
2941         (WebCore::InspectorDOMAgent::buildArrayForCSSRules):
2942         (WebCore::InspectorDOMAgent::buildArrayForPseudoElements):
2943         * inspector/InspectorDOMAgent.h:
2944         * inspector/front-end/StylesSidebarPane.js:
2945         (WebInspector.StylesSidebarPane.prototype.update.callback):
2946         (WebInspector.StylesSidebarPane.prototype.update):
2947         (WebInspector.StylesSidebarPane.prototype._update):
2948         (WebInspector.StylesSidebarPane.prototype._refreshStyleRules):
2949         (WebInspector.StylesSidebarPane.prototype._rebuildStyleRules.insertInheritedNodeSeparator):
2950         (WebInspector.StylesSidebarPane.prototype._rebuildStyleRules):
2951         (WebInspector.StylesSidebarPane.prototype._markUsedProperties):
2952         (WebInspector.StylesSidebarPane.prototype._refreshSectionsForStyleRules):
2953         (WebInspector.StylesSidebarPane.prototype._rebuildSectionsForStyleRules):
2954         (WebInspector.StylesSidebarPane.prototype._changeColorFormat):
2955         (WebInspector.StylesSidebarPane.prototype.addBlankSection):
2956         (WebInspector.StylesSidebarPane.prototype.removeSection):
2957         * inspector/front-end/inspector.css:
2958         (.styles-sidebar-separator):
2959         * page/DOMWindow.cpp:
2960         (WebCore::DOMWindow::getMatchedCSSRules):
2961         * rendering/style/RenderStyleConstants.h:
2962         (WebCore::):
2963
2964 2010-03-25  Charlie Reis  <creis@chromium.org>
2965
2966         Reviewed by Adam Barth.
2967
2968         onbeforeunload not called at window close + frame or iframe focused
2969         https://bugs.webkit.org/show_bug.cgi?id=27481
2970
2971         Test: fast/events/onbeforeunload-focused-iframe.html
2972
2973         Replaces initial manual tests with a layout test.
2974
2975         * manual-tests/onbeforeunload-focused-iframe.html: Removed.
2976         * manual-tests/resources/focused-iframe.html: Removed.
2977
2978 2010-03-25  Eric Uhrhane  <ericu@chromium.org>
2979
2980         Reviewed by David Levin.
2981
2982         Missing lock in call to doneCreatingDatabase
2983         https://bugs.webkit.org/show_bug.cgi?id=36473
2984
2985         Added new test storage/open-database-over-quota.html.
2986
2987         * storage/DatabaseTracker.cpp:
2988         (WebCore::DatabaseTracker::canEstablishDatabase):  Added missing lock call.
2989
2990 2010-03-25  Ojan Vafai  <ojan@chromium.org>
2991
2992         Reviewed by Eric Seidel.
2993
2994         [chromium] REGRESSION: Some LayoutTests fail after r56567
2995         https://bugs.webkit.org/show_bug.cgi?id=36630
2996
2997         Fix boolean logic goofup. This was a last minute code review
2998         change that didn't get tested on Windows before commit.
2999
3000         * editing/SelectionController.cpp:
3001         (WebCore::SelectionController::setIsDirectional):
3002
3003 2010-03-25  Dan Bernstein  <mitz@apple.com>
3004
3005         Reviewed by Darin Adler.
3006
3007         <rdar://problem/7728903> Support color bitmap fonts
3008
3009         Test: platform/mac/fonts/color-bitmap.html
3010
3011         * platform/graphics/mac/FontMac.mm:
3012         (WebCore::showGlyphsWithAdvances): Added. Calls CGContextShowGlyphsWithAdvances()
3013         or CTFontShowGlyphs() depending on whether the font is a color bitmap font.
3014         (WebCore::Font::drawGlyphs): Use showGlyphsWithAdvances(). Don’t include the font’s matrix in
3015         the context’s text matrix when drawing with a color bitmap font, because CTFontShowGlyphs()
3016         factors it in.
3017         * platform/graphics/mac/FontPlatformData.h:
3018         (WebCore::FontPlatformData::FontPlatformData): Added m_isColorBitmapFont member
3019         and initialized it in constructors.
3020         (WebCore::FontPlatformData::isColorBitmapFont): Added this getter.
3021         * platform/graphics/mac/FontPlatformDataMac.mm:
3022         (WebCore::FontPlatformData::FontPlatformData): Initialize m_isColorBitmapFont.
3023         (WebCore::FontPlatformData::operator=): Copy m_isColorBitmapFont.
3024         (WebCore::FontPlatformData::setFont): Set m_isColorBitmapFont.
3025
3026 2010-03-25  Adam Barth  <abarth@webkit.org>
3027
3028         Reviewed by Sam Weinig.
3029
3030         Implement allow-top-navigation for HTML5 sandbox attribute
3031         https://bugs.webkit.org/show_bug.cgi?id=36549
3032
3033         Tests: fast/frames/sandboxed-iframe-navigation-top-by-constant-name.html
3034                fast/frames/sandboxed-iframe-navigation-top-by-constant-name2.html
3035                fast/frames/sandboxed-iframe-navigation-top-by-name-denied.html
3036                fast/frames/sandboxed-iframe-navigation-top-by-name.html
3037                fast/frames/sandboxed-iframe-navigation-top-denied.html
3038                fast/frames/sandboxed-iframe-navigation-top.html
3039
3040         * bindings/generic/BindingDOMWindow.h:
3041         (WebCore::::createWindow):
3042         * bindings/js/JSDOMWindowCustom.cpp:
3043         (WebCore::createWindow):
3044           Moved the security check to FrameLoader because we need to allow
3045           window.open navigation to succeed sometimes when the
3046           SandboxNavigation bit is set.
3047         * html/HTMLIFrameElement.cpp:
3048         (WebCore::parseSandboxAttribute):
3049           Added allow-top-navigation to the parser.
3050         * loader/FrameLoader.cpp:
3051         (WebCore::FrameLoader::createWindow):
3052           The SandboxNavigation check now occurs after we search for the frame
3053           by name.  Notice that the named frame navigation case is caught by
3054           the generic navigation access check.
3055         (WebCore::FrameLoader::shouldAllowNavigation):
3056           Update the navigation access check to allow navigating of top unless
3057           it's forbidden.
3058         * loader/FrameLoaderTypes.h:
3059           Introduce a bit for SandboxedTopNavigation.
3060         (WebCore::):
3061
3062 2010-03-25  Dumitru Daniliuc  <dumi@chromium.org>
3063
3064         Unreviewed, Chromium build fix.
3065
3066         V8CustomVoidCallback should not check if a return value is a
3067         boolean. It should only convert the value to a boolean.
3068
3069         * bindings/v8/custom/V8CustomVoidCallback.cpp:
3070         (WebCore::invokeCallback):
3071
3072 2010-03-25  Dmitry Titov  <dimich@chromium.org>
3073
3074         No review, rolling out r56585.
3075         http://trac.webkit.org/changeset/56585
3076         https://bugs.webkit.org/show_bug.cgi?id=36621
3077
3078         Broke Chromium builds on waterfall
3079
3080         * plugins/PluginView.cpp:
3081         (WebCore::PluginView::getValue):
3082         * plugins/PluginView.h:
3083         * plugins/PluginViewNone.cpp:
3084         (WebCore::PluginView::setJavaScriptPaused):
3085
3086 2010-03-25  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
3087
3088         Reviewed by Darin Adler.
3089
3090         Fix build if NPAPI support is disabled
3091         https://bugs.webkit.org/show_bug.cgi?id=36621
3092
3093         No new tests, this is a build fix.
3094
3095         * plugins/PluginView.cpp: Guard getValueStatic() with
3096         NETSCAPE_PLUGIN_API
3097         (WebCore::PluginView::getValue):
3098         * plugins/PluginView.h: Guard getValue() with NETSCAPE_PLUGIN_API
3099         * plugins/PluginViewNone.cpp: Guard platformGetValue() and
3100         platformGetValueStatic with NETSCAPE_PLUGIN_API;
3101         Guard privateBrowsingStateChanged() and setJavaScriptPaused() with
3102         PLATFORM(MAC)
3103
3104 2010-03-25  Drew Wilson  <atwilson@chromium.org>
3105
3106         Reviewed by Nate Chapin.
3107
3108         [v8] Error in getScriptExecutionContext() when worker context is terminating.
3109         https://bugs.webkit.org/show_bug.cgi?id=36565
3110
3111         Removed WorkerScriptExecutionProxy::retrieve() and added WorkerScriptController::controllerForContext(). This allows
3112         callers to differentiate between "the current context is shutting down" vs "the current context is not a worker context".
3113
3114         Test: Existing worker tests suffice.
3115
3116         * bindings/v8/V8DOMWrapper.cpp:
3117         (WebCore::V8DOMWrapper::getConstructor):
3118         Changed to use WorkerScriptController::controllerForContext() instead of WorkerScriptExecutionProxy::retrieve().
3119         * bindings/v8/V8Utilities.cpp:
3120         (WebCore::getScriptExecutionContext):
3121         Changed to use WorkerScriptController::controllerForContext() instead of WorkerScriptExecutionProxy::retrieve().
3122         * bindings/v8/WorkerContextExecutionProxy.cpp:
3123         Removed WorkerScriptExecutionProxy::retrieve().
3124         * bindings/v8/WorkerContextExecutionProxy.h:
3125         Removed WorkerScriptExecutionProxy::retrieve().
3126         * bindings/v8/WorkerScriptController.cpp:
3127         (WebCore::WorkerScriptController::controllerForContext):
3128         Added helper function to get the WorkerScriptController for the current context.
3129         * bindings/v8/WorkerScriptController.h:
3130         Added declaration for controllerForContext().
3131
3132 2010-03-25  Simon Hausmann  <simon.hausmann@nokia.com>
3133
3134         Reviewed by Kenneth Rohde Christiansen.
3135
3136         [Qt] Fix the package build on Maemo 5
3137
3138         https://bugs.webkit.org/show_bug.cgi?id=36607
3139
3140         Always embed the stylesheet for the no-listbox rendering. This way it'll be
3141         included in the generated files for the package generation.
3142
3143         * WebCore.pri:
3144
3145 2010-03-24  Dumitru Daniliuc  <dumi@chromium.org>
3146
3147         Reviewed by Dimitri Glazkov.
3148
3149         Changing the V8 and JSC implementations of
3150         SQLStatementErrorCallback to interpret as false all results that
3151         could be converted to a false boolean. Pretty much a revert of
3152         r54981.
3153
3154         https://bugs.webkit.org/show_bug.cgi?id=36569
3155
3156         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
3157         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
3158         * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp:
3159         (WebCore::V8CustomSQLStatementErrorCallback::handleEvent):
3160         * bindings/v8/custom/V8CustomVoidCallback.cpp:
3161         (WebCore::invokeCallback):
3162         * bindings/v8/custom/V8CustomVoidCallback.h:
3163
3164 2010-03-25  Dmitry Titov  <dimich@chromium.org>
3165
3166         Unreviewed, fix Chromium tests.
3167
3168         Recent http://trac.webkit.org/changeset/56489 made all urls in Chromium that
3169         have unspecified port to return invalidPortNumber from KURL::port().
3170
3171         * platform/KURLGoogle.cpp: Return 0 for unspecified ports, mimic WebKit KURL behavior for invalid ports.
3172         (WebCore::KURL::port):
3173
3174 2010-03-25  Dirk Schulze  <krit@webkit.org>
3175
3176         Reviewed by Nikolas Zimmermann.
3177
3178         This is a follow up of:
3179         https://bugs.webkit.org/show_bug.cgi?id=30055
3180         Bad DOM performance in large SVG files
3181
3182         Just save and restore the GraphicsContext, if we realy modify it.
3183         (Cairo)Path::contains checks if a point is in the boundingBox
3184         as a heuristic. The intention was to make the process faster for
3185         points outside of this rect, but it rather causes the
3186         opposite.
3187
3188         No new test cases added. No change in functionality.
3189
3190         * platform/graphics/cairo/PathCairo.cpp:
3191         (WebCore::Path::contains):
3192         * rendering/RenderPath.cpp:
3193         (WebCore::RenderPath::paint):
3194
3195 2010-03-25  Ojan Vafai  <ojan@chromium.org>
3196
3197         Reviewed by David Levin.
3198
3199         mouse-based selections are always directional on Windows/Linux
3200         https://bugs.webkit.org/show_bug.cgi?id=25195
3201
3202         Change m_lastChangeWasHorizontalExtension to m_isDirectional
3203         and make m_isDirectional always be true for Windows/Linux.
3204
3205         * editing/SelectionController.cpp:
3206         (WebCore::SelectionController::SelectionController):
3207         (WebCore::SelectionController::setSelection):
3208         (WebCore::SelectionController::setIsDirectional):
3209         (WebCore::SelectionController::willBeModified):
3210         When double-clicking, the base/extent will be in the middle
3211         of the selection instead of the start/end of it. Changed to
3212         maintain that modifications after double-click still move the
3213         start/end of the selection, not the base/extent.
3214         (WebCore::SelectionController::modify):
3215         * editing/SelectionController.h:
3216         * page/EventHandler.cpp:
3217         (WebCore::EventHandler::handleMousePressEventSingleClick):
3218         (WebCore::EventHandler::updateSelectionForMouseDrag):
3219
3220 2010-03-25  Simon Fraser  <simon.fraser@apple.com>
3221
3222         Revert r56565 which was based on an incorrect premise.
3223
3224         * page/animation/CompositeAnimation.cpp:
3225         (WebCore::CompositeAnimation::clearRenderer):
3226         (WebCore::CompositeAnimation::updateKeyframeAnimations):
3227         (WebCore::CompositeAnimation::getAnimatedStyle):
3228         (WebCore::CompositeAnimation::setAnimating):
3229         (WebCore::CompositeAnimation::timeToNextService):
3230         (WebCore::CompositeAnimation::getAnimationForProperty):
3231         (WebCore::CompositeAnimation::suspendAnimations):
3232         (WebCore::CompositeAnimation::resumeAnimations):
3233         (WebCore::CompositeAnimation::isAnimatingProperty):
3234         (WebCore::CompositeAnimation::pauseAnimationAtTime):
3235         (WebCore::CompositeAnimation::numberOfActiveAnimations):
3236
3237 2010-03-25  Simon Fraser  <simon.fraser@apple.com>
3238
3239         Reviewed by Eric Carlson.
3240
3241         Make calls to m_keyframeAnimations.checkConsistency() debug-only
3242         https://bugs.webkit.org/show_bug.cgi?id=36555
3243
3244         Remove lots of calls to m_keyframeAnimations.checkConsistency(); which were left after some earlier
3245         debugging. Leave one in CompositeAnimation::animate() to catch any future issues, which is OK since
3246         these calls are no-ops in release builds.
3247         
3248         * page/animation/CompositeAnimation.cpp:
3249         (WebCore::CompositeAnimation::clearRenderer):
3250         (WebCore::CompositeAnimation::updateKeyframeAnimations):
3251         (WebCore::CompositeAnimation::getAnimatedStyle):
3252         (WebCore::CompositeAnimation::setAnimating):
3253         (WebCore::CompositeAnimation::timeToNextService):
3254         (WebCore::CompositeAnimation::getAnimationForProperty):
3255         (WebCore::CompositeAnimation::suspendAnimations):
3256         (WebCore::CompositeAnimation::resumeAnimations):
3257         (WebCore::CompositeAnimation::isAnimatingProperty):
3258         (WebCore::CompositeAnimation::pauseAnimationAtTime):
3259         (WebCore::CompositeAnimation::numberOfActiveAnimations):
3260
3261 2010-03-25  Simon Fraser  <simon.fraser@apple.com>
3262
3263         Reviewed by Geoffrey Garen.
3264
3265         https://bugs.webkit.org/show_bug.cgi?id=36557
3266         Animations use the wrong timing-function sometimes
3267         
3268         Fix an issue where animations picked the wrong style for their "unanimated" value.
3269         
3270         Previously, the "unanimated" style was considered to be the style before the animation
3271         was applied. This caused us to pick up stale values for animation timing functions, for
3272         blending when a property is missing from the first keyframe, and for resuming transitions
3273         once an animation ends.
3274         
3275         Instead, we need to use the "current" style, which is the one that causes the animation
3276         to kick off.
3277
3278         Tests: animations/longhand-timing-function.html
3279                animations/transition-and-animation-3.html
3280                animations/unanimated-style.html
3281
3282         * page/animation/CompositeAnimation.cpp:
3283         (WebCore::CompositeAnimation::updateKeyframeAnimations):
3284
3285 2010-03-25  Gavin Barraclough  <barraclough@apple.com>
3286
3287         Reviewed by Geoff Garen.
3288
3289         Bug 36611 - Cleanup JSC::CString
3290         Rename CString::c_str() -> CString::data(), CString::size() -> CString::length(),
3291         remove UString::getCString() (all uses are wrong, should use UString::UTF8String()).
3292
3293         * bridge/NP_jsobject.cpp:
3294         (_NPN_Enumerate):
3295         * bridge/c/c_utility.cpp:
3296         (JSC::Bindings::convertValueToNPVariant):
3297         * bridge/jni/jsc/JNIBridgeJSC.cpp:
3298         (JavaField::valueFromInstance):
3299         (JavaField::setValueToInstance):
3300         * bridge/jni/jsc/JavaInstanceJSC.cpp:
3301         (JavaInstance::invokeMethod):
3302         * bridge/jni/jsc/JavaStringJSC.h:
3303         (JSC::Bindings::JavaStringImpl::UTF8String):
3304
3305 2010-03-25  Jakub Wieczorek  <jwieczorek@webkit.org>
3306
3307         Reviewed by Eric Seidel.
3308
3309         [Qt] RenderTheme: fix size adjustment for text fields
3310         https://bugs.webkit.org/show_bug.cgi?id=36413
3311
3312         To match other ports, remove the hardcoded dimensions for text fields so that
3313         the default ones from WebCore can be used.
3314         Properly apply the correct padding to text areas - this fixes their appearance
3315         with the Oxygen style.
3316
3317         * platform/qt/RenderThemeQt.cpp:
3318         (WebCore::RenderThemeQt::computeSizeBasedOnStyle):
3319
3320 2010-03-25  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
3321
3322         Reviewed by Simon Hausmann.
3323
3324         [Qt] Implement ChromeClient::windowResizerRect()
3325
3326         https://bugs.webkit.org/show_bug.cgi?id=21300
3327
3328         The helper function geometryRelativeToOwnerWidget() in the page
3329         client is used to clip the resize rect to the actual size of the
3330         viewport, not the size of the QGraphicsView.
3331
3332         * platform/qt/QWebPageClient.h:
3333
3334 2010-03-25  Joseph Pecoraro  <joepeck@webkit.org>
3335
3336         Reviewed by Pavel Feldman.
3337
3338         Web Inspector: reloading debug target window with cmd-R from inspector window produces beep.
3339         https://bugs.webkit.org/show_bug.cgi?id=36554
3340
3341         * inspector/front-end/inspector.js:
3342         (WebInspector.documentKeyDown): prevent the default behavior, if handled, which would result in a system beep.
3343
3344 2010-03-25  Jochen Eisinger  <jochen@chromium.org>
3345
3346         Reviewed by Jeremy Orlow.
3347
3348         Forward DatabaseTracker::canEstablishDatabase to chromium layer.
3349         https://bugs.webkit.org/show_bug.cgi?id=36595
3350
3351         * storage/chromium/DatabaseObserver.h:
3352         * storage/chromium/DatabaseTrackerChromium.cpp:
3353         (WebCore::DatabaseTracker::canEstablishDatabase):
3354
3355 2010-03-25  yael aharon  <yael.aharon@nokia.com>
3356
3357         Reviewed by Laszlo Gombos.
3358
3359         [Qt] Windowed netscape plugins don't work with QGraphicsWebView on Symbian
3360         https://bugs.webkit.org/show_bug.cgi?id=35112
3361
3362         Add a proxy widget when loading a QWidget based plugin in a QGraphicsWebView.
3363
3364         * plugins/symbian/PluginContainerSymbian.cpp:
3365         (PluginContainerSymbian::PluginContainerSymbian):
3366         (PluginContainerSymbian::focusInEvent):
3367         * plugins/symbian/PluginContainerSymbian.h:
3368         (WebCore::PluginContainerSymbian::proxy):
3369         * plugins/symbian/PluginViewSymbian.cpp:
3370         (WebCore::PluginView::updatePluginWidget):
3371         (WebCore::PluginView::platformStart):
3372         (WebCore::PluginView::platformDestroy):
3373
3374 2010-03-25  Simon Fraser  <simon.fraser@apple.com>
3375
3376         Reviewed by Adele Peterson.
3377
3378         https://bugs.webkit.org/show_bug.cgi?id=35714
3379         Computed style on delayed transform animations is incorrect
3380         
3381         When fetching computed style while a delayed accelerated animation is in effect,
3382         we would get the value form the first keyframe, rather than getting the current
3383         style.
3384         
3385         Fix by checking to see whether we've in the delay phase (with no backwards-fill)
3386         in KeyframeAnimation::getAnimatedStyle().
3387
3388         Test: compositing/animation/computed-style-during-delay.html
3389
3390         * page/animation/KeyframeAnimation.cpp:
3391         (WebCore::KeyframeAnimation::getAnimatedStyle):
3392
3393 2010-03-25  Yury Semikhatsky  <yurys@chromium.org>
3394
3395         Reviewed by Pavel Feldman.
3396
3397         Initialize Web Inspector title with inspected page URL when opening Web Inspector.
3398
3399         https://bugs.webkit.org/show_bug.cgi?id=36534
3400
3401         * inspector/InspectorController.cpp:
3402         (WebCore::InspectorController::setFrontend):
3403
3404 2010-03-25  Antti Koivisto  <koivisto@iki.fi>
3405
3406         Reviewed by Kenneth Rohde Christiansen.
3407
3408         https://bugs.webkit.org/show_bug.cgi?id=36316
3409         Tiles of selected content do not update if not in viewport
3410         
3411         Don't clip repaints to viewport when tiling is enabled.
3412
3413         * page/Frame.cpp:
3414         (WebCore::Frame::setView):
3415         (WebCore::Frame::setTiledBackingStoreEnabled):
3416
3417 2010-03-25  Diego Gonzalez  <diego.gonzalez@openbossa.org>
3418
3419         Reviewed by Eric Seidel.
3420
3421         Missing forward ENABLE_DATALIST macro to JavaScript enabled features macros
3422         on WebKit.pri
3423
3424         [Qt] Forward ENABLE_DATALIST macro to JavaScript enabled macros
3425         https://bugs.webkit.org/show_bug.cgi?id=36547
3426
3427         * WebCore.pri:
3428
3429 2010-03-25  Pavel Feldman  <pfeldman@chromium.org>
3430
3431         Reviewed by Timothy Hatcher.
3432
3433         Web Inspector: Expect console object wrapping to fail.
3434
3435         https://bugs.webkit.org/show_bug.cgi?id=36587
3436
3437         * inspector/front-end/InjectedScript.js:
3438         (injectedScriptConstructor):
3439
3440 2010-03-25  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
3441
3442         Reviewed by Eric Seidel.
3443
3444         https://bugs.webkit.org/show_bug.cgi?id=36371
3445         [Gtk] Elements with a title attribute should not be ignored
3446
3447         * accessibility/AccessibilityRenderObject.cpp:
3448         (AccessibilityRenderObject::accessibilityIsIgnored):
3449
3450 2010-03-24  Steve Block  <steveblock@google.com>
3451
3452         Reviewed by David Levin.
3453
3454         Adds a missing ENABLE(WORKERS) guards to the V8 bindings.
3455         https://bugs.webkit.org/show_bug.cgi?id=36550
3456
3457         Build fix only, no new tests.
3458
3459         * bindings/v8/V8DOMWrapper.cpp:
3460         (WebCore::V8DOMWrapper::instantiateV8Object):
3461
3462 2010-03-25  Leandro Pereira  <leandro@profusion.mobi>
3463
3464         Reviewed by Eric Seidel.
3465
3466         Add EFL-specific code to platform/ScrollView.cpp and
3467         platform/Scrollbar.cpp.
3468         http://webkit.org/b/36305
3469
3470         * platform/ScrollView.cpp:
3471         * platform/Scrollbar.cpp:
3472
3473 2010-03-25  Tasuku Suzuki  <tasuku.suzuki@nokia.com>
3474
3475         Reviewed by Eric Seidel.
3476
3477         [Qt]Fix compile error with QT_NO_LIBRARY
3478         https://bugs.webkit.org/show_bug.cgi?id=36533
3479
3480         * platform/FileSystem.h:
3481         * platform/qt/FileSystemQt.cpp:
3482         (WebCore::unloadModule):
3483
3484 2010-03-25  Tasuku Suzuki  <tasuku.suzuki@nokia.com>
3485
3486         Reviewed by Eric Seidel.
3487
3488         [Qt]Fix compile error with QT_NO_ANIMATION
3489         https://bugs.webkit.org/show_bug.cgi?id=36526
3490
3491         * platform/graphics/qt/GraphicsLayerQt.cpp:
3492         (WebCore::GraphicsLayerQtImpl::~GraphicsLayerQtImpl):
3493         * platform/graphics/qt/GraphicsLayerQt.h:
3494
3495 2010-03-25  Tony Chang  <tony@chromium.org>
3496
3497         Reviewed by Eric Seidel.
3498
3499         https://bugs.webkit.org/show_bug.cgi?id=33697
3500         Have dragOpFromIEOp("move") return DragOperationGeneric | DragOperationMove
3501         because only returning Generic doesn't work for platforms that don't
3502         have a generic operation.
3503
3504         Covered by existing tests (fast/events/drag-and-drop.html).
3505
3506         * dom/Clipboard.cpp:
3507         (WebCore::dragOpFromIEOp):
3508         (WebCore::Clipboard::destinationOperation):
3509         (WebCore::Clipboard::setDestinationOperation):
3510
3511 2010-03-25  Fumitoshi Ukai  <ukai@chromium.org>
3512
3513         Reviewed by Eric Seidel.
3514
3515         [Qt] websocket/tests/long-invalid-header.html fails
3516         https://bugs.webkit.org/show_bug.cgi?id=36492
3517
3518         trim message at most 128 bytes from the current position.
3519         I believe it's enough data to investigate the error reason and
3520         it makes test not depend on buffered size.
3521
3522         * websockets/WebSocketHandshake.cpp:
3523         (WebCore::trimConsoleMessage):
3524         (WebCore::WebSocketHandshake::readServerHandshake):
3525         (WebCore::WebSocketHandshake::readHTTPHeaders):
3526
3527 2010-03-24  Jon Honeycutt  <jhoneycutt@apple.com>
3528
3529         <rdar://problem/7780798> Missing plug-ins should be represented by text
3530         only, instead of lego block
3531
3532         https://bugs.webkit.org/show_bug.cgi?id=36583
3533
3534         Reviewed by Dan Bernstein.
3535
3536         * rendering/RenderEmbeddedObject.cpp:
3537         (WebCore::RenderEmbeddedObject::paintReplaced):
3538         Set the font rendering mode and the computed size, so that the text will
3539         draw properly on Windows.
3540
3541 2010-03-24  Vangelis Kokkevis  <vangelis@chromium.org>
3542
3543         Reviewed by Dimitri Glazkov.
3544
3545         Removing unecessary redraws of LayerSkia contents:
3546         https://bugs.webkit.org/show_bug.cgi?id=36470
3547
3548         Test: No new functionality added, no tests.
3549
3550         * platform/graphics/skia/LayerRendererSkia.cpp:
3551         (WebCore::LayerRendererSkia::drawLayerInCanvasRecursive):
3552         Debug borders now rendered at composite time rather than update time.
3553         * platform/graphics/skia/LayerSkia.cpp:
3554         (WebCore::LayerSkia::updateContents):
3555         (WebCore::LayerSkia::drawDebugBorder):
3556         Debug border drawing removed from updateContents and split into a separate method that
3557         can be called at composite time.
3558         (WebCore::LayerSkia::setBounds):
3559         Resetting the bounds causes the layer to redraw its contents.
3560         (WebCore::LayerSkia::setNeedsDisplay):
3561         * platform/graphics/skia/LayerSkia.h:
3562         Added declaration for drawDebugBorders method.
3563
3564 2010-03-24  Mark Rowe  <mrowe@apple.com>
3565
3566         Revert the portion of r56489 that dealt with port zero as it introduced some test failures.
3567
3568         * platform/KURL.cpp:
3569         (WebCore::KURL::port): Use the "ok" argument to charactersToUIntStrict to determine whether
3570         it was able to successfully parse the string as an unsigned integer, rather than relying on
3571         the fact it returned zero when it failed.
3572
3573 2010-03-24  Gavin Barraclough  <barraclough@apple.com>
3574
3575         Reviewed by Sam Weinig.
3576
3577         * platform/text/String.cpp:
3578         (WebCore::putUTF8Triple): Correct capitalization of function name.
3579         (WebCore::String::utf8): Fix C-style casts.
3580         (WebCore::String::fromUTF8): Remove unnecessary newline.
3581         (WebCore::String::fromUTF8WithLatin1Fallback): Use early return.
3582
3583 2010-03-24  Mark Rowe  <mrowe@apple.com>
3584
3585         Reviewed by Darin Adler.
3586
3587         WebKit should treat port numbers outside the valid range as being blacklisted
3588         <http://webkit.org/b/36571> / <rdar://problem/7790908>
3589
3590         * platform/KURL.cpp:
3591         (WebCore::KURL::port): Map invalid port numbers to invalidPortNumber.
3592         (WebCore::portAllowed): Add invalidPortNumber to the blacklist.
3593         * platform/KURLGoogle.cpp:  invalid port numbers to invalidPortNumber.
3594         (WebCore::KURL::port): Add invalidPortNumber to the blacklist.
3595         Also bring this in to sync with KURL.  Having this identical code in two places is stupid.
3596
3597 2010-03-24  Sam Weinig  <sam@webkit.org>
3598
3599         Reviewed by Mark Rowe.
3600
3601         Add some missing exports.
3602
3603         * WebCore.base.exp:
3604
3605 2010-03-24  Gavin Barraclough  <barraclough@apple.com>
3606
3607         Reviewed by Sam Weinig.
3608
3609         Switch String::latin1, String::utf8, String::fromUTF8 to
3610         use WTF's Unicode conversion methods rather than TextEncoder.
3611         These methods only perform simple conversion, and don't need
3612         really require TextEncoder's full capability (to look up arbitrary
3613         encodings by name), switching to only be dependent on WTF will
3614         make it easier if we chose to move WebCore::String to WTF.
3615
3616         * platform/text/String.cpp:
3617         (WebCore::String::latin1):
3618         (WebCore::putUTF8triple):
3619         (WebCore::String::utf8):
3620         (WebCore::String::fromUTF8):
3621
3622 2010-03-24  Dmitry Titov  <dimich@chromium.org>
3623
3624         No review, rolling out r56453.
3625         http://trac.webkit.org/changeset/56453
3626         https://bugs.webkit.org/show_bug.cgi?id=36426
3627
3628         In Chromium port, it broke invalid-image-data-standalone.html
3629         invalid-image-data.html multipart-wait-before-boundary.html
3630         stop-crash.html win-boundary-crash.html
3631
3632         * loader/FrameLoader.cpp:
3633         (WebCore::FrameLoader::finishedLoadingDocument):
3634
3635 2010-03-24  Ilya Tikhonovsky  <loislo@chromium.org>
3636
3637         Reviewed by Pavel Feldman.
3638
3639         Web Inspector: Significant scroll speed degradation if Timeline has
3640         an expanded record with significant number of children.
3641         https://bugs.webkit.org/show_bug.cgi?id=36543
3642
3643
3644         * inspector/front-end/TimelinePanel.js:
3645         (WebInspector.TimelinePanel.prototype._updateBoundaries):
3646         (WebInspector.TimelinePanel.prototype._addToRecordsWindow):
3647         (WebInspector.TimelinePanel.prototype._filterRecords):
3648         (WebInspector.TimelinePanel.prototype._refreshRecords):
3649
3650 2010-03-24  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
3651
3652         Reviewed by Eric Carlson.
3653
3654         [GStreamer] Fails to go to Loaded state because of floating point discrepancies
3655         https://bugs.webkit.org/show_bug.cgi?id=35891
3656
3657         Use the m_fillStatus variable, which is more reliable, instead of
3658         using the calculation, for the completed case.
3659
3660         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
3661         (WebCore::MediaPlayerPrivate::fillTimerFired):
3662
3663 2010-03-24  Dmitry Titov  <dimich@chromium.org>
3664
3665         Unreviewed, Chromium test fix.
3666
3667         Recent r56445 added CustomEvent and a test but it didn't work on Chromium bots.
3668         Test crashed due to infinte recursion because the compiler did not have the right definition of toV8(CustomEvent*)
3669         and was substituting toV8(Event*).
3670
3671         Fixing test fast/events/custom-event.html
3672
3673         * bindings/v8/custom/V8EventCustom.cpp:
3674
3675 2010-03-24  MORITA Hajime  <morrita@google.com>
3676
3677         Reviewed by Darin Adler.
3678
3679         Refactoring: HTMLFormControlElement should not have redundant null check
3680         https://bugs.webkit.org/show_bug.cgi?id=36487
3681         
3682         No new tests as there is no new functionality.        
3683
3684         * html/HTMLFormControlElement.cpp:
3685         (WebCore::HTMLFormControlElement::dispatchFocusEvent):
3686         (WebCore::HTMLFormControlElement::dispatchBlurEvent):
3687
3688 2010-03-24  Eric Uhrhane  <ericu@chromium.org>
3689
3690         Reviewed by Alexey Proskuryakov.
3691
3692         DOMCoreException needs NoStaticTables modifier
3693         https://bugs.webkit.org/show_bug.cgi?id=36458
3694
3695         No new tests, but this shows up in tests of Database accesses from the
3696         Worker thread that I'll be checking in soon.  The symptom is that
3697         DOMCoreException.toString() returns [object DOMException] instead of
3698         something more helpful.
3699
3700         * dom/DOMCoreException.idl:  Added NoStaticTables.
3701
3702 2010-03-24  Drew Wilson  <atwilson@chromium.org>
3703
3704         Reviewed by Dmitry Titov.
3705
3706         Failed assertion in V8Proxy::setDOMException() if worker is shutting down.
3707         https://bugs.webkit.org/show_bug.cgi?id=36514
3708
3709         Test: none (existing worker tests suffice)
3710
3711         * bindings/v8/V8Proxy.cpp:
3712         (WebCore::V8Proxy::setDOMException):
3713         Updated setDOMException() to check for an empty exception (due to no active context) and avoid throwing in that case.
3714
3715 2010-03-23  Evan Martin  <evan@chromium.org>
3716
3717         Reviewed by Dmitry Titov.
3718
3719         [chromium] use integral glyph widths
3720         https://bugs.webkit.org/show_bug.cgi?id=36510
3721
3722         Despite WebKit (and Skia, to an extent) supporting non-integral
3723         glyph widths, the font code path we hit in Skia only supports
3724         integral glyph positions.  This means that we would accumulate
3725         offsets when drawing a sequence up non-integer-width glyphs
3726         which would cause gaps when snapped to the pixel grid when drawing.
3727
3728         * platform/graphics/chromium/SimpleFontDataLinux.cpp:
3729         (WebCore::SimpleFontData::platformWidthForGlyph):
3730         round glyph widths to integers.
3731
3732 2010-03-24  Dean Jackson  <dino@apple.com>
3733
3734         Reviewed by Kevin Decker.
3735
3736         <rdar://problem/7785305>
3737         Fix regression caused by r55576. It turned out that ensuring
3738         CoreAnimation always gets a correct fill parameter caused flashing
3739         as non-filled animations ended (CA briefly showed the initial animation
3740         value before the style system set the final value).
3741
3742         * platform/graphics/mac/GraphicsLayerCA.mm:
3743         (WebCore::GraphicsLayerCA::setupAnimation):
3744
3745 2010-03-24  Hayato Ito  <hayato@chromium.org>
3746
3747         Reviewed by Shinichiro Hamaji.
3748
3749         Refactor computePageRects so that Mac can make use of it.
3750         https://bugs.webkit.org/show_bug.cgi?id=36159
3751
3752         Refactoring only, so no new tests.
3753
3754         * WebCore.base.exp:
3755         * page/PrintContext.cpp:
3756         (WebCore::PrintContext::computePageRects):
3757         (WebCore::PrintContext::computePageRectsWithPageSize):
3758         (WebCore::PrintContext::computePageRectsWithPageSizeInternal):
3759         (WebCore::PrintContext::pageNumberForElement):
3760         (WebCore::PrintContext::numberOfPages):
3761         * page/PrintContext.h:
3762
3763 2010-03-24  Jeremy Moskovich  <jeremy@chromium.org>
3764
3765         Reviewed by Jeremy Orlow.
3766
3767         Add some diagnostics to try to track down cause of crash in ArchiveFactory::isArchiveMimeType().
3768
3769         https://bugs.webkit.org/show_bug.cgi?id=36426
3770
3771         No new tests as there is no new functionality.
3772
3773         * loader/FrameLoader.cpp:
3774         (WebCore::FrameLoader::finishedLoadingDocument): Make copy of mimeType string to isolate crash.
3775
3776 2010-03-24  Anton Muhin  <antonm@chromium.org>
3777
3778         Reviewed by Nate Chapin.
3779
3780         Use newly introduced SetPrototype method to deal with global objects.
3781         https://bugs.webkit.org/show_bug.cgi?id=36497
3782
3783         No new tests, should be covered by the current test infrastructure.
3784
3785         * bindings/v8/V8DOMWindowShell.cpp:
3786         (WebCore::V8DOMWindowShell::installDOMWindow):
3787         * bindings/v8/V8DOMWrapper.cpp:
3788         (WebCore::V8DOMWrapper::getConstructor):
3789         * bindings/v8/WorkerContextExecutionProxy.cpp:
3790         (WebCore::WorkerContextExecutionProxy::initContextIfNeeded):
3791
3792 2010-03-24  Dmitry Titov  <dimich@chromium.org>
3793
3794         Unreviewed, Chromium build fix.
3795
3796         * platform/chromium/PopupMenuChromium.cpp:
3797         (WebCore::PopupContainer::PopupContainer): Fix order of initializers.
3798         (WebCore::PopupContainer::layout): Remove unused variable.
3799
3800 2010-03-23  Kenneth Rohde Christiansen  <kenneth@webkit.org>
3801
3802         Reviewed by Simon Hausmann.
3803
3804         Add a way to check if the page client is making use of
3805         a QWidget.
3806
3807         * platform/qt/QWebPageClient.h:
3808         (QWebPageClient::isQWidgetClient):
3809
3810 2010-03-24  Jay Campan  <jcampan@google.com>
3811
3812         Reviewed by Darin Fisher.
3813
3814         Making Chromium select popups not steal activation from the browser.
3815         Select popups are now like autocomplete popups, shown in non-activated
3816         windows.
3817         https://bugs.webkit.org/show_bug.cgi?id=36062
3818
3819         * page/chromium/ChromeClientChromium.h:
3820         * platform/chromium/PopupMenuChromium.cpp:
3821         (WebCore::):
3822         (WebCore::PopupListBox::setMaxHeight):
3823         (WebCore::PopupListBox::disconnectClient):
3824         (WebCore::PopupListBox::PopupListBox):
3825         (WebCore::PopupContainer::create):
3826         (WebCore::PopupContainer::PopupContainer):
3827         (WebCore::PopupContainer::showPopup):
3828         (WebCore::PopupContainer::showExternal):
3829         (WebCore::PopupContainer::hidePopup):
3830         (WebCore::PopupContainer::layout):
3831         (WebCore::PopupContainer::chromeClientChromium):
3832         (WebCore::PopupListBox::hidePopup):
3833         (WebCore::PopupListBox::layout):
3834         (WebCore::PopupMenu::~PopupMenu):
3835         (WebCore::PopupMenu::show):
3836         * platform/chromium/PopupMenuChromium.h:
3837         (WebCore::PopupItem::):
3838         (WebCore::PopupItem::PopupItem):
3839         (WebCore::PopupContainerSettings::):
3840         (WebCore::PopupContainer::):
3841         (WebCore::PopupContainer::listBox):
3842         (WebCore::PopupContainer::popupType):
3843
3844 2010-03-10  David Levin  <levin@chromium.org>
3845
3846         Reviewed by Oliver Hunt.
3847
3848         Need to move items that CanvasRenderingContext2D depends on into CanvasSurface.
3849         https://bugs.webkit.org/show_bug.cgi?id=35453
3850
3851         Prepartory changes to allow for an OffscreenCanvas which may be used in a worker
3852         or outside of the DOM.
3853
3854         No change in functionality, so new tests.
3855
3856         * dom/CanvasSurface.cpp: Moved functionality that CanvasRenderingContext2D depends on
3857         into this class (and removed dependencies on document/html element).
3858         (WebCore::CanvasSurface::CanvasSurface):
3859         (WebCore::CanvasSurface::~CanvasSurface): Put the desctructor in the cpp file
3860         to avoid needing access to ~ImageBuffer in the header file.
3861         (WebCore::CanvasSurface::setSurfaceSize): Does basic items needed
3862         when the size changes. It is protected to force outside callers to go
3863         through HTMLCanvasElement::setSize.
3864         (WebCore::CanvasSurface::toDataURL): Just moved from HTMLCanvasElement and
3865         made a note about a method to fix for worker usage.
3866         (WebCore::CanvasSurface::willDraw): Made this virtual to allow an overide
3867         which uses the renderbox and tracks a dirtyRect.
3868         (WebCore::CanvasSurface::convertLogicalToDevice): Moved and changed to
3869         rely on a member variable for page scale (to avoid using the document).
3870         (WebCore::CanvasSurface::createImageBuffer):
3871         (WebCore::CanvasSurface::drawingContext): Simple move from HTMLCanvasElement.
3872         (WebCore::CanvasSurface::buffer): Ditto.
3873         (WebCore::CanvasSurface::baseTransform): Ditto.
3874         * dom/CanvasSurface.h:
3875         (WebCore::CanvasSurface::width): Simple move from HTMLCanvasElement.
3876         (WebCore::CanvasSurface::height): Ditto.
3877         (WebCore::CanvasSurface::size): Ditto.
3878         (WebCore::CanvasSurface::setOriginTainted): Ditto.
3879         (WebCore::CanvasSurface::originClean): Ditto.
3880         (WebCore::CanvasSurface::hasCreatedImageBuffer): Ditto (with small name change).
3881         * html/HTMLCanvasElement.cpp:
3882         (WebCore::HTMLCanvasElement::HTMLCanvasElement): Pass in the scale factor to CanvasSurface
3883         so it doesn't need the document.
3884         (WebCore::HTMLCanvasElement::willDraw): Moved the relevant portion to CanvasSurface.
3885         (WebCore::HTMLCanvasElement::reset): Small changes due to refactoring.
3886         (WebCore::HTMLCanvasElement::paint): Ditto.
3887         * html/HTMLCanvasElement.h:
3888         (WebCore::HTMLCanvasElement::setSize): Ditto.
3889         * platform/MIMETypeRegistry.cpp:
3890         (WebCore::MIMETypeRegistry::isSupportedImageMIMETypeForEncoding): Added assert
3891         to verify that this is only called on the main thread.
3892         * platform/graphics/Image.cpp:
3893         (WebCore::Image::nullImage): Ditto.
3894         * platform/graphics/cg/ImageBufferCG.cpp:
3895         (WebCore::utiFromMIMEType): Ditto.
3896
3897 2010-03-24  Alexander Pavlov  <apavlov@chromium.org>
3898
3899         Reviewed by Pavel Feldman.
3900
3901         Inspector: XML Tags should not be converted to lowercase
3902         https://bugs.webkit.org/show_bug.cgi?id=28600
3903
3904         * inspector/front-end/ElementsPanel.js:
3905         (WebInspector.ElementsPanel.prototype.updateBreadcrumb):
3906         (WebInspector.ElementsPanel.prototype.decorateNodeLabel):
3907         * inspector/front-end/ElementsTreeOutline.js:
3908         (WebInspector.ElementsTreeOutline.prototype.nodeNameToCorrectCase):
3909         (WebInspector.ElementsTreeElement.prototype._updateChildren):
3910         (WebInspector.ElementsTreeElement.prototype._nodeTitleInfo):
3911
3912 2010-03-03  Kenneth Rohde Christiansen  <kenneth@webkit.org>
3913
3914         Reviewed by Antti Koivisto.
3915
3916         Add support for DOM Level 3 Custom Event
3917         http://www.w3.org/TR/DOM-Level-3-Events
3918
3919         V8 Generator change by Nate Chapin <japhet@chromium.org>, Thanks!
3920
3921         Test: fast/events/custom-event.html
3922
3923         * DerivedSources.cpp:
3924         * GNUmakefile.am:
3925         * WebCore.gypi:
3926         * WebCore.pri:
3927         * WebCore.pro:
3928         * WebCore/DerivedSources.make:
3929         * WebCore.vcproj/WebCore.vcproj:
3930         * WebCore.xcodeproj/project.pbxproj:
3931         * bindings/js/JSEventCustom.cpp:
3932         (WebCore::toJS):
3933         * bindings/scripts/CodeGeneratorJS.pm:
3934         * bindings/scripts/CodeGeneratorV8.pm:
3935         * dom/CustomEvent.cpp: Added.
3936         (WebCore::CustomEvent::CustomEvent):
3937         (WebCore::CustomEvent::initCustomEvent):
3938         (WebCore::CustomEvent::isCustomEvent):
3939         * dom/CustomEvent.h: Added.
3940         (WebCore::CustomEvent::create):
3941         (WebCore::CustomEvent::detail):
3942         * dom/Document.cpp:
3943         (WebCore::Document::createEvent):
3944         * dom/Event.cpp:
3945         (WebCore::Event::isCustomEvent):
3946         * dom/Event.h:
3947
3948 2010-03-24  Alexander Pavlov  <apavlov@chromium.org>
3949
3950         Reviewed by Pavel Feldman.
3951
3952         Web Inspector: Error when highlighting JavaScript with an invalid mime type
3953         https://bugs.webkit.org/show_bug.cgi?id=36530
3954
3955         * inspector/front-end/SourceTokenizer.js:
3956         (WebInspector.SourceTokenizer.Registry):
3957         * inspector/front-end/SourceView.js:
3958         (WebInspector.SourceView.prototype._contentLoaded):
3959         (WebInspector.SourceView.prototype._canonicalMimeType):
3960         * inspector/front-end/TextEditorHighlighter.js:
3961         (WebInspector.TextEditorHighlighter):
3962
3963 2010-03-24  Pavel Feldman  <pfeldman@chromium.org>
3964
3965         Not reviewed. Chromium test fix: added a frameCount check to the
3966         debugger function call.
3967
3968         * bindings/v8/V8Proxy.cpp:
3969         (WebCore::V8Proxy::createUtilityContext):
3970
3971 2010-03-19  Miikka Heikkinen  <miikka.heikkinen@digia.com>
3972
3973         Reviewed by Simon Hausmann.
3974
3975         [Qt] Support for QT_LIBINFIX in Symbian builds
3976
3977         Configuring Qt with -qtlibinfix parameter will enable installing
3978         an alternate version of Qt on devices that already have it on ROM.
3979         This patch provides support for infixed builds of Webkit.
3980
3981         * WebCore.pro:
3982
3983 2010-03-24  Kent Tamura  <tkent@chromium.org>
3984
3985         Reviewed by Darin Adler.
3986
3987         Make Icon::createIconForFiles() optional.
3988         https://bugs.webkit.org/show_bug.cgi?id=35072
3989
3990         r54923 made Icon::createIconForFiles() deprecated. However moving
3991         existing icon loading code to outside of WebCore is not good.  So,
3992         we assume:
3993         - ChromeClient::chooseIconForFiles(), renamed from iconForFiles(), is
3994           the primary API to load icons.
3995         - Icon::createIconForFiles() is an optional API to help
3996           implementing ChromeClient::iconForFiles().
3997
3998         This patch removes a call to Icon::createIconForFiles() from
3999         FileChooser::loadIcon(), and ChromeClient::chooseIconForFiles() of
4000         non-Chromium ports calls Icon::createIconForFiles().
4001
4002         * WebCore.base.exp: Export FileChooser::iconLoaded(),
4003           Icon::createIconForFiles(), and Icon::~Icon().
4004         * WebCore.xcodeproj/project.pbxproj: Export Icon.h
4005         * loader/EmptyClient.h: Rename iconForFiles() to chooseIconForFiles().
4006         * page/Chrome.cpp: ditto.
4007         * page/Chrome.h: ditto.
4008         * page/ChromeClient.h: ditto.
4009         * platform/FileChooser.cpp:
4010         (WebCore::FileChooser::loadIcon):
4011         * platform/graphics/Icon.h: Remove a comment on createIconForFiles().
4012         * platform/graphics/chromium/IconChromiumLinux.cpp: Remove createIconForFiles().
4013         * platform/graphics/chromium/IconChromiumMac.cpp: ditto.
4014         * platform/graphics/chromium/IconChromiumWin.cpp: ditto.
4015         * rendering/RenderFileUploadControl.cpp: Rename iconForFiles() to chooseIconForFiles().
4016         * rendering/RenderFileUploadControl.h: ditto.
4017
4018 2010-03-23  Dan Bernstein  <mitz@apple.com>
4019
4020         Fixed typos.
4021
4022         * manual-tests/plugin-visible-rect-change.html:
4023
4024 2010-03-23  Dan Bernstein  <mitz@apple.com>
4025
4026         Reviewed by John Sullivan.
4027
4028         WebCore part of
4029         <rdar://problem/7197736> Plug-in clip rect does not update when overflow
4030         clip changes
4031         https://bugs.webkit.org/show_bug.cgi?id=36479.
4032
4033         * manual-tests/plugin-visible-rect-change.html: Added.
4034         * platform/mac/WidgetMac.mm:
4035         (WebCore::WidgetPrivate::WidgetPrivate): Added previousVisibleRect.
4036         (WebCore::Widget::setFrameRect): If the visible rect changed but the
4037         frame rect did not, send a -visibleRectDidChange message to the view,
4038         if it responds to it.
4039         (WebCore::Widget::releasePlatformWidget): Reset previousVisibleRect.
4040         * rendering/RenderWidget.cpp:
4041         (WebCore::RenderWidget::setWidgetGeometry): Track changes to the clip rect
4042         imposed by the enclosing layer. Call Widget::setFrameRect when it changes,
4043         even if the frame rect did not.
4044         * rendering/RenderWidget.h:
4045         (WebCore::RenderWidget::windowClipRect): Added this accessor.
4046
4047 2010-03-23  Simon Fraser  <simon.fraser@apple.com>
4048
4049         Reviewed by Dan Bernstein.
4050
4051         Assertion ASSERTION FAILED: rootLayer == m_clipRectsRoot at hulu.com
4052         https://bugs.webkit.org/show_bug.cgi?id=34065
4053         
4054         Fix another cause of assertions related to the clip rects root. Embeds
4055         with zero size caused the overlap testing to fail, yet we require them to work
4056         for correct compositing, so when the composited bounds is empty, use a 1x1 rect
4057         for overlap testing.
4058
4059         Test: compositing/geometry/empty-embed-rects.html
4060
4061         * rendering/RenderLayerCompositor.cpp:
4062         (WebCore::RenderLayerCompositor::addToOverlapMap):
4063         (WebCore::RenderLayerCompositor::computeCompositingRequirements):
4064
4065 2010-03-23  David Levin  <levin@chromium.org>
4066
4067         Reviewed by Nate Chapin.
4068
4069         [chromium] XMLHttpRequest.send sends 'undefined' string when passed undefined value.
4070         https://bugs.webkit.org/show_bug.cgi?id=36506
4071
4072         Test: http/tests/xmlhttprequest/send-undefined-and-null.html
4073
4074         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
4075         (WebCore::isDocumentType): Unrelated style fix: fixed the casing of the method.
4076         (WebCore::V8XMLHttpRequest::sendCallback): Added check for null/undefined to do the send.
4077         This mirrors what is done in the JSC bindings. Previously, sending 'null' worked because
4078         the last case, which did "toWebCoreStringWithNullCheck", resulted in sending an empty
4079         request body.
4080
4081 2010-03-23  Chris Evans  <cevans@chromium.org>
4082
4083         Reviewed by Darin Adler.
4084
4085         Fix hard-to-see crash due to incorrect libxml API usage.
4086
4087         https://bugs.webkit.org/show_bug.cgi?id=36000
4088
4089         Test: fast/text/bad-encoding.html
4090
4091         * dom/XMLTokenizerLibxml2.cpp:
4092         (WebCore::XMLTokenizer::doEnd): Avoid operations on a closed context.
4093
4094 2010-03-23  Nate Chapin  <japhet@chromium.org>
4095
4096         Unreviewed, revert r56376.
4097
4098         This revision introduced a crash in a couple of layout tests
4099         on Chromium Linux.
4100
4101         * page/chromium/ChromeClientChromium.h:
4102         * platform/chromium/PopupMenuChromium.cpp:
4103         (WebCore::):
4104         (WebCore::PopupContainer::create):
4105         (WebCore::PopupContainer::PopupContainer):
4106         (WebCore::PopupContainer::showPopup):
4107         (WebCore::PopupContainer::showExternal):
4108         (WebCore::PopupContainer::hidePopup):
4109         (WebCore::PopupMenu::show):
4110         * platform/chromium/PopupMenuChromium.h:
4111         (WebCore::PopupItem::):
4112         (WebCore::PopupItem::PopupItem):
4113         (WebCore::PopupContainerSettings::):
4114         (WebCore::PopupContainer::listBox):
4115
4116 2010-03-23  David Hyatt  <hyatt@apple.com>
4117
4118         Reviewed by Simon Fraser and Darin Adler.
4119
4120         https://bugs.webkit.org/show_bug.cgi?id=36272, make sure nth-child can work when the portion with "n" is omitted.
4121
4122         Added fast/css/nth-child-implied-step.html
4123
4124         * css/CSSGrammar.y:
4125         * css/tokenizer.flex:
4126
4127 2010-03-23  Darin Adler  <darin@apple.com>
4128
4129         Reviewed by Sam Weinig.
4130
4131         Reduce and straighten internal use of DOMImplementation
4132         https://bugs.webkit.org/show_bug.cgi?id=36501
4133
4134         * WebCore.xcodeproj/project.pbxproj: Xcode decided to
4135         re-sort this file.
4136
4137         * dom/Clipboard.cpp: Removed unneeded include of DOMImplementation.h.
4138
4139         * dom/DOMImplementation.cpp: Removed unneeded createDocument and
4140         createHTMLDocument functions. These should be done directly instead
4141         of involving the DOMImplementation class.
4142         * dom/DOMImplementation.h: Ditto.
4143
4144         * dom/DocumentType.cpp: Removed unneeded include of DOMImplementation.h.
4145
4146         * html/HTMLViewSourceDocument.cpp:
4147         (WebCore::HTMLViewSourceDocument::createTokenizer): Don't allocate a
4148         DOMImplementation object just to use a class member function.
4149
4150         * loader/CachedFont.cpp: Removed unneeded include of DOMImplementation.h.
4151
4152         * xml/XMLHttpRequest.cpp:
4153         (WebCore::XMLHttpRequest::responseXML): Use Document::create to create a
4154         new document instead of involving DOMImplementation.
4155         * xml/XSLTProcessor.cpp:
4156         (WebCore::XSLTProcessor::createDocumentFromSource): Ditto. And in the case
4157         where we do need to call DOMImplementation to interpret the MIME type,
4158         don't allocate a DOMImplementation object just to use a class member
4159         function.
4160
4161 2010-03-23  Luiz Agostini  <luiz.agostini@openbossa.org>
4162
4163         Reviewed by Kenneth Rohde Christiansen.
4164
4165         [Qt] Maemo5 theme - all <select> elements should be rendered as menu lists.
4166         https://bugs.webkit.org/show_bug.cgi?id=36367
4167
4168         Enabling NO_LISTBOX_RENDERING in WebCore.pri for Maemo5.
4169
4170         * WebCore.pri:
4171
4172 2010-03-22  Joseph Pecoraro  <joepeck@webkit.org>
4173
4174         Reviewed by David Kilzer.
4175
4176         Upstream iPhone KeyEvent platform code and share with Mac platform
4177         https://bugs.webkit.org/show_bug.cgi?id=35870
4178
4179         * platform/iphone/KeyEventCodesIPhone.h: Improper comment for #endif.
4180         * platform/iphone/KeyEventIPhone.mm: Fixed headers.
4181
4182 2010-03-23  David Hyatt  <hyatt@apple.com>
4183
4184         Reviewed by Jeremy Orlow.
4185
4186         https://bugs.webkit.org/show_bug.cgi?id=36277, make sure nth-child supports the positive unary prefix (+) as well as the negative
4187         one (-).
4188
4189         Added fast/css/nth-child-unary-prefix.html
4190
4191         * css/tokenizer.flex:
4192
4193 2010-03-23  Andrey Kosyakov  <caseq@chromium.org>
4194
4195         Reviewed by Dmitry Titov.
4196
4197         Change notification sent to inspector frontend on workers creation / destruction
4198         to be posted asynchronously to avoid JS reenterability problems. Also, renamed
4199         willDestroyWorker to didDestroyWorker to reflect that it gets called later and got
4200         rid of explicit IDs for workers (use addresses instead).
4201         https://bugs.webkit.org/show_bug.cgi?id=36213
4202
4203         * inspector/InjectedScriptHost.cpp:
4204         (WebCore::InjectedScriptHost::didDestroyWorker):
4205         * inspector/InjectedScriptHost.h:
4206         * inspector/InjectedScriptHost.idl:
4207         * inspector/InspectorController.cpp:
4208         (WebCore::PostWorkerNotificationToFrontendTask::create):
4209         (WebCore::PostWorkerNotificationToFrontendTask::PostWorkerNotificationToFrontendTask):
4210         (WebCore::PostWorkerNotificationToFrontendTask::performTask):
4211         (WebCore::InspectorController::postWorkerNotificationToFrontend):
4212         (WebCore::InspectorController::didCreateWorker):
4213         (WebCore::InspectorController::didDestroyWorker):
4214         * inspector/InspectorController.h:
4215         (WebCore::InspectorController::):
4216         * inspector/InspectorFrontend.cpp:
4217         (WebCore::InspectorFrontend::didDestroyWorker):
4218         * inspector/InspectorFrontend.h:
4219         * inspector/InspectorWorkerResource.h:
4220         (WebCore::InspectorWorkerResource::create):
4221         (WebCore::InspectorWorkerResource::id):
4222         (WebCore::InspectorWorkerResource::InspectorWorkerResource):
4223         * inspector/front-end/InjectedFakeWorker.js:
4224         (InjectedFakeWorker.FakeWorker.prototype.terminate):
4225         * inspector/front-end/WorkersSidebarPane.js:
4226         (WebInspector.didDestroyWorker):
4227         * workers/AbstractWorker.cpp:
4228         (WebCore::AbstractWorker::AbstractWorker):
4229         (WebCore::AbstractWorker::onDestroyWorker):
4230         * workers/AbstractWorker.h:
4231         (WebCore::AbstractWorker::asID):
4232         * workers/SharedWorker.cpp:
4233         (WebCore::SharedWorker::SharedWorker):
4234         * workers/Worker.cpp:
4235         (WebCore::Worker::Worker):
4236
4237 2010-03-22  David Hyatt  <hyatt@apple.com>
4238
4239         Reviewed by Sam Weinig.
4240
4241         https://bugs.webkit.org/show_bug.cgi?id=36266, support DOM Level 3 focusin/focusout events.  Add support for
4242         IE onfocusin/onfocusout extensions to HTML.  The old DOM level 2 names (DOMFocusIn/DOMFocusOut are still supported).
4243
4244         Added fast/events/focusinout.html
4245
4246         * dom/Document.cpp:
4247         (WebCore::Document::setFocusedNode):
4248         * dom/Event.cpp:
4249         (WebCore::Event::aliasedType):
4250         (WebCore::Event::hasAliasedType):
4251         * dom/Event.h:
4252         * dom/EventNames.h:
4253         * dom/EventTarget.cpp:
4254         (WebCore::EventTarget::fireEventListeners):
4255         * dom/EventTarget.h:
4256         * dom/Node.cpp:
4257         (WebCore::Node::dispatchUIEvent):
4258         * html/HTMLAttributeNames.in:
4259         * html/HTMLButtonElement.cpp:
4260         (WebCore::HTMLButtonElement::parseMappedAttribute):
4261         * html/HTMLElement.cpp: