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