6cc645c525c53781974cdcd0d0eb824872f30d2f
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-08-30  Dawit Alemayehu  <adawit@kde.org>
2
3         [Qt] Replace QLibrary("libgtk-x11-2.0.so.0") with QLibrary("libgtk-x11-2.0", 0)
4         https://bugs.webkit.org/show_bug.cgi?id=66627
5
6         Reviewed by Simon Hausmann.
7
8         * plugins/qt/PluginPackageQt.cpp:
9         (WebCore::initializeGtk):
10
11 2011-08-29  Oliver Hunt  <oliver@apple.com>
12
13         TypedArrays don't ensure that denormalised values are normalised
14         https://bugs.webkit.org/show_bug.cgi?id=67178
15
16         Reviewed by Gavin Barraclough.
17
18         Ensure that we convert singaling nans to silent nans when loading
19         from a typed array. 
20
21         * bindings/scripts/CodeGeneratorJS.pm:
22         (GenerateImplementation):
23
24 2011-08-29  Alexey Proskuryakov  <ap@apple.com>
25
26         DumpRenderTree should begin each test with an empty cookie store
27         https://bugs.webkit.org/show_bug.cgi?id=63545
28         <rdar://problem/5666907>
29
30         Reviewed by Darin Adler.
31
32         Use a clean CFURLStorageSession when this functionality is available.
33
34         * WebCore.exp.in: Added exports.
35
36         * WebCore.xcodeproj/project.pbxproj: Made CookieStorageCFNet.h private, as currentCFHTTPCookieStorage
37         is used in WebKit.
38
39         * platform/mac/CookieJar.mm:
40         (WebCore::cookies):
41         (WebCore::cookieRequestHeaderFieldValue):
42         (WebCore::setCookies):
43         (WebCore::cookiesEnabled):
44         (WebCore::getRawCookies):
45         (WebCore::deleteCookie):
46         Updated to use currentCFHTTPCookieStorage().
47
48         * platform/network/CookieStorage.h: Moved CFNetwork specific declarations to CookieStorageCFNet.h.
49
50         * platform/network/ResourceHandle.cpp: Moved CFNetwork specific code to ResourceHandleCFNet.cpp.
51
52         * platform/network/ResourceHandle.h: Exposed default session support on Mac, too. Made
53         privateBrowsingStorageSession() private, as callers shouldn't be concerned about where the
54         current sssion came from.
55
56         * platform/network/cf/CookieJarCFNet.cpp:
57         (WebCore::setCookies):
58         (WebCore::cookies):
59         (WebCore::cookieRequestHeaderFieldValue):
60         (WebCore::cookiesEnabled):
61         (WebCore::getRawCookies):
62         (WebCore::deleteCookie):
63         (WebCore::getHostnamesWithCookies):
64         (WebCore::deleteCookiesForHostname):
65         (WebCore::deleteAllCookies):
66         Updated to use currentCFHTTPCookieStorage().
67
68         * platform/network/cf/CookieStorageCFNet.cpp:
69         (WebCore::cookieStorageOverride): Make it clear that this override is only for a Windows API.
70         (WebCore::overrideCookieStorage): Ditto.
71         (WebCore::currentCFHTTPCookieStorage): We no longer store a cookie storage in a static variable,
72         unless it has been overridden on Windows. We can always get it from a session.
73         (WebCore::setCookieStoragePrivateBrowsingEnabled): There is nothing to do here - we'll just
74         use private session's storage. Note that Mac has a separate code path for OS versions that
75         don't support sessions.
76         (WebCore::startObservingCookieChanges): Updated to use currentCFHTTPCookieStorage().
77         (WebCore::stopObservingCookieChanges): Ditto.
78
79         * platform/network/cf/CookieStorageCFNet.h: Changed exposed methods for more clarity.
80
81         * platform/network/cf/ResourceHandleCFNet.cpp:
82         (WebCore::makeFinalRequest): Updated for currentCookieStorage->currentCFHTTPCookieStorage change.
83         (WebCore::ResourceHandle::createPrivateBrowsingStorageSession): Moved out of USE(CFNETWORK),
84         as this function is also used with NSURLConnection when sessions are enabled.
85         (WebCore::ResourceHandle::currentStorageSession): Ditto. Removed an #if since default session
86         is now supported on Mac, too.
87         (WebCore::defaultCFURLStorageSession): Moved out of USE(CFNETWORK).
88         (WebCore::ResourceHandle::setDefaultStorageSession): Moved out of USE(CFNETWORK). No longer
89         adopt the session, because nothing in method name says that it will steal a reference from
90         the caller.
91         (WebCore::ResourceHandle::defaultStorageSession): Moved out of USE(CFNETWORK).
92         (WebCore::privateStorageSession): Moved from ResourceHandle.cpp.
93         (WebCore::privateBrowsingStorageSessionIdentifierBase): Moved from ResourceHandle.cpp.
94         (WebCore::ResourceHandle::setPrivateBrowsingEnabled): Moved from ResourceHandle.cpp.
95         (WebCore::ResourceHandle::privateBrowsingStorageSession): Moved from ResourceHandle.cpp.
96         (WebCore::ResourceHandle::setPrivateBrowsingStorageSessionIdentifierBase): Moved from ResourceHandle.cpp.
97         (WebCore::ResourceHandle::privateBrowsingStorageSessionIdentifierDefaultBase): Moved from ResourceHandle.cpp.
98
99         * platform/network/mac/CookieStorageMac.mm: (WebCore::setCookieStoragePrivateBrowsingEnabled):
100         We no longer store a reference to cookie storage in a static variable, so nothing to do here.
101         On older OS versiosn, we still need to enable legacy private browsing mode.
102
103         * platform/network/mac/ResourceHandleMac.mm:
104         (WebCore::shouldRelaxThirdPartyCookiePolicy): Updated to use the new currentCFHTTPCookieStorage function.
105         (WebCore::ResourceHandle::createNSURLConnection): Updated to use currentStorageSession()
106         instead of privateBrowsingStorageSession().
107         (WebCore::ResourceHandle::willSendRequest): Ditto.
108
109 2011-08-30  David Hyatt  <hyatt@apple.com>
110
111         <rdar://problem/10002140> 9A309: Text gets clipped in book because of overflow:auto
112         
113         https://bugs.webkit.org/show_bug.cgi?id=67212 - Text gets clipped in multi-column layouts when overflow:auto
114         is used.
115         
116         Revise our overflow:auto pagination behavior. If the overflow block doesn't specify any logical height
117         information, then we'll just assume the plan is for it to enclose its contents, and we will be willing
118         to paginate in those circumstances.
119
120         Reviewed by Dan Bernstein.
121
122         Added overflow-across-columns.html and overflow-unsplittable.html
123
124         * rendering/LayoutState.cpp:
125         (WebCore::LayoutState::LayoutState):
126         * rendering/RenderBlock.cpp:
127         (WebCore::RenderBlock::adjustForUnsplittableChild):
128         * rendering/RenderBox.cpp:
129         (WebCore::RenderBox::hasUnsplittableScrollingOverflow):
130         * rendering/RenderBox.h:
131
132 2011-08-30  Antti Koivisto  <antti@apple.com>
133
134         querySelector/querySelectorAll should use selector checker fast path 
135         https://bugs.webkit.org/show_bug.cgi?id=67161
136
137         Reviewed by Sam Weinig.
138
139         Descendant and child selectors can be matches substantially faster using
140         SelectorChecker::fastCheckSelector() path. Currently it is used for style matching only.  
141         
142         Add SelectorQuery class that can do both querySelector and querySelectorAll efficiently using
143         fast path. Use inlined loop for DOM traversal.
144         
145         The patch is ~25% speedup in the overall native score of http://www.webkit.org/perf/slickspeed/.
146         Some individual subtests (using child or descendant selectors) execute twice as fast.
147
148         * CMakeLists.txt:
149         * GNUmakefile.list.am:
150         * WebCore.gypi:
151         * WebCore.pro:
152         * WebCore.vcproj/WebCore.vcproj:
153         * WebCore.xcodeproj/project.pbxproj:
154         * css/CSSStyleSelector.cpp:
155         (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
156         (WebCore::CSSStyleSelector::SelectorChecker::isFastCheckableSelector):
157         (WebCore::RuleData::RuleData):
158         * css/CSSStyleSelector.h:
159         
160             Make fast path checking available outside CSSStyleSelector.
161             
162         * dom/DOMAllInOne.cpp:
163         * dom/Node.cpp:
164         (WebCore::Node::querySelector):
165         (WebCore::Node::querySelectorAll):
166         
167             Switch to SelectorQuery.
168         
169         * dom/SelectorNodeList.cpp: Removed.
170         * dom/SelectorNodeList.h: Removed.
171         
172             SelectorQuery makes these obsolete.
173
174         * dom/SelectorQuery.cpp: Added.
175         (WebCore::SelectorQuery::SelectorQuery):
176         (WebCore::SelectorQuery::queryAll):
177         (WebCore::SelectorQuery::queryFirst):
178         (WebCore::SelectorQuery::canUseIdLookup):
179         (WebCore::SelectorQuery::execute):
180         * dom/SelectorQuery.h: Added.
181         
182             Class for selector matching in tree.
183     
184 2011-08-30  Dmitry Titov  <dimich@chromium.org>
185
186         REGRESSION (r93913): Failures in fast/replaced/frame-removed-during-resize.html and scrollbars/scrollable-iframe-remove-crash.html
187         https://bugs.webkit.org/show_bug.cgi?id=67074
188
189         Reviewed by Darin Adler.
190
191         Added flag m_isClosed to prevent events that cause Frame to be destroyed
192         from posting more events into EventQueue of a dying Document.
193
194         The tests mentioned above should now pass.
195
196         * dom/Document.cpp:
197         (WebCore::Document::detach):
198         * dom/EventQueue.cpp:
199         (WebCore::EventQueue::EventQueue):
200         (WebCore::EventQueue::enqueueEvent):
201         (WebCore::EventQueue::close): Renamed method to reflect better what it does.
202         * dom/EventQueue.h:
203
204 2011-08-30  Tony Chang  <tony@chromium.org>
205
206         Fix compile warning on clang:
207         error: 'WebKit::ChromeClientImpl::scrollRectIntoView' hides overloaded virtual function [-Werror,-Woverloaded-virtual]
208             virtual void scrollRectIntoView(
209                              ^
210         ../../WebCore/page/ChromeClient.h:171:22: note: hidden overloaded virtual function 'WebCore::ChromeClient::scrollRectIntoView' declared here
211             virtual void scrollRectIntoView(const IntRect&) { }; // Currently only Mac has a non empty implementation.
212
213         * page/ChromeClient.h:
214         (WebCore::ChromeClient::scrollRectIntoView):
215
216 2011-08-30  David Hyatt  <hyatt@apple.com>
217
218         <rdar://problem/8832814> With large line-height, column break can happen anywhere in the
219         inter-line gap, causing staggered lines.
220         
221         https://bugs.webkit.org/show_bug.cgi?id=67202 Handle positive leading when paginating lines.
222         
223         Technically we should paginate lines based solely off their line top and line bottom with
224         leading included. However there are two issues with always doing so. The first is that overflow
225         can cause lines to overlap, and the second is that negative leading can cause lines to overlap.
226
227         Since we're incapable of dealing with overlap until we stop clipping column boxes and allow them
228         to have a form of specialized overflow, we still have to at least factor in overflow and ignore
229         negative leading for now. However we can at least honor positive leading when the lines don't
230         overlap. This patch provides basic support for paginating when positive leading is involved.
231
232         Reviewed by Dan Bernstein.
233
234         Added fast/multicol/positive-leading.html.
235
236         * rendering/RenderBlock.cpp:
237         (WebCore::RenderBlock::markLinesDirtyInBlockRange):
238         Renamed blockLogicalHeight() to lineBottomWithLeading(). The value is the same.
239
240         (WebCore::RenderBlock::adjustLinePositionForPagination):
241         Grow the top and extent of the line to include our leading when deciding how to paginate
242         the line.
243
244         * rendering/RenderBlockLineLayout.cpp:
245         (WebCore::RenderBlock::computeBlockDirectionPositionsForLine):
246         (WebCore::RenderBlock::layoutRunsAndFloatsInRange):
247         (WebCore::RenderBlock::linkToEndLineIfNeeded):
248         (WebCore::RenderBlock::checkFloatsInCleanLine):
249         (WebCore::RenderBlock::determineStartPosition):
250         (WebCore::RenderBlock::determineEndPosition):
251         (WebCore::RenderBlock::matchedEndLine):
252         Renamed blockLogicalHeight() to lineBottomWithLeading(). The value is the same.
253
254         * rendering/RootInlineBox.cpp:
255         (WebCore::RootInlineBox::RootInlineBox):
256         (WebCore::RootInlineBox::adjustPosition):
257         (WebCore::RootInlineBox::alignBoxesInBlockDirection):
258         * rendering/RootInlineBox.h:
259         (WebCore::RootInlineBox::lineTopWithLeading):
260         (WebCore::RootInlineBox::lineBottomWithLeading):
261         (WebCore::RootInlineBox::setLineTopBottomPositions):
262         Instead of one member variable, blockLogicalHeight(), RootInlineBoxes now know both their top and
263         bottom including leading. These values are obtainable using lineTopWithLeading() and lineBottomWithLeading().
264         Add these two values to the setLineTopBottomPositions setter and remove setBlockLogicalHeight.
265
266         * rendering/svg/SVGRootInlineBox.cpp:
267         (WebCore::SVGRootInlineBox::layoutRootBox):
268         Renamed blockLogicalHeight() to lineBottomWithLeading(). The value is the same.
269
270 2011-08-29  Chris Marrin  <cmarrin@apple.com>
271
272         Rename GraphicsContext3DInternal to GraphicsContext3DPrivate and add a dummy version of this class for Mac
273         https://bugs.webkit.org/show_bug.cgi?id=67172
274
275         Reviewed by Kenneth Russell.
276
277         * GNUmakefile.list.am:
278         * platform/graphics/GraphicsContext3D.h:
279         * platform/graphics/chromium/Extensions3DChromium.h:
280         * platform/graphics/gtk/GraphicsContext3DGtk.cpp:
281         (WebCore::GraphicsContext3D::create):
282         (WebCore::GraphicsContext3D::GraphicsContext3D):
283         (WebCore::GraphicsContext3D::~GraphicsContext3D):
284         (WebCore::GraphicsContext3D::makeContextCurrent):
285         (WebCore::GraphicsContext3D::platformGraphicsContext3D):
286         * platform/graphics/gtk/GraphicsContext3DInternal.h: Removed.
287         * platform/graphics/gtk/GraphicsContext3DPrivate.h: Copied from Source/WebCore/platform/graphics/gtk/GraphicsContext3DInternal.h.
288         * platform/graphics/mac/GraphicsContext3DMac.mm:
289         (WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
290         (WebCore::GraphicsContext3DPrivate::~GraphicsContext3DPrivate):
291         (WebCore::GraphicsContext3D::GraphicsContext3D):
292         * platform/graphics/qt/GraphicsContext3DQt.cpp:
293         (WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
294         (WebCore::GraphicsContext3DPrivate::~GraphicsContext3DPrivate):
295         (WebCore::GraphicsContext3DPrivate::getViewportGLWidget):
296         (WebCore::GraphicsContext3DPrivate::paintToTextureMapper):
297         (WebCore::GraphicsContext3DPrivate::boundingRect):
298         (WebCore::GraphicsContext3DPrivate::paint):
299         (WebCore::GraphicsContext3DPrivate::blitMultisampleFramebuffer):
300         (WebCore::GraphicsContext3DPrivate::blitMultisampleFramebufferAndRestoreContext):
301         (WebCore::GraphicsContext3D::create):
302         (WebCore::GraphicsContext3D::GraphicsContext3D):
303         (WebCore::GraphicsContext3D::~GraphicsContext3D):
304         (WebCore::GraphicsContext3D::platformGraphicsContext3D):
305         (WebCore::GraphicsContext3D::platformLayer):
306         (WebCore::GraphicsContext3D::makeContextCurrent):
307         (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas):
308         (WebCore::GraphicsContext3D::reshape):
309         (WebCore::GraphicsContext3D::activeTexture):
310         (WebCore::GraphicsContext3D::attachShader):
311         (WebCore::GraphicsContext3D::getAttachedShaders):
312         (WebCore::GraphicsContext3D::bindAttribLocation):
313         (WebCore::GraphicsContext3D::bindBuffer):
314         (WebCore::GraphicsContext3D::bindFramebuffer):
315         (WebCore::GraphicsContext3D::bindRenderbuffer):
316         (WebCore::GraphicsContext3D::bindTexture):
317         (WebCore::GraphicsContext3D::blendColor):
318         (WebCore::GraphicsContext3D::blendEquation):
319         (WebCore::GraphicsContext3D::blendEquationSeparate):
320         (WebCore::GraphicsContext3D::blendFunc):
321         (WebCore::GraphicsContext3D::blendFuncSeparate):
322         (WebCore::GraphicsContext3D::bufferData):
323         (WebCore::GraphicsContext3D::bufferSubData):
324         (WebCore::GraphicsContext3D::checkFramebufferStatus):
325         (WebCore::GraphicsContext3D::clearColor):
326         (WebCore::GraphicsContext3D::clear):
327         (WebCore::GraphicsContext3D::clearDepth):
328         (WebCore::GraphicsContext3D::clearStencil):
329         (WebCore::GraphicsContext3D::colorMask):
330         (WebCore::GraphicsContext3D::compileShader):
331         (WebCore::GraphicsContext3D::copyTexImage2D):
332         (WebCore::GraphicsContext3D::copyTexSubImage2D):
333         (WebCore::GraphicsContext3D::cullFace):
334         (WebCore::GraphicsContext3D::depthFunc):
335         (WebCore::GraphicsContext3D::depthMask):
336         (WebCore::GraphicsContext3D::depthRange):
337         (WebCore::GraphicsContext3D::detachShader):
338         (WebCore::GraphicsContext3D::disable):
339         (WebCore::GraphicsContext3D::disableVertexAttribArray):
340         (WebCore::GraphicsContext3D::drawArrays):
341         (WebCore::GraphicsContext3D::drawElements):
342         (WebCore::GraphicsContext3D::enable):
343         (WebCore::GraphicsContext3D::enableVertexAttribArray):
344         (WebCore::GraphicsContext3D::finish):
345         (WebCore::GraphicsContext3D::flush):
346         (WebCore::GraphicsContext3D::framebufferRenderbuffer):
347         (WebCore::GraphicsContext3D::framebufferTexture2D):
348         (WebCore::GraphicsContext3D::frontFace):
349         (WebCore::GraphicsContext3D::generateMipmap):
350         (WebCore::GraphicsContext3D::getActiveAttrib):
351         (WebCore::GraphicsContext3D::getActiveUniform):
352         (WebCore::GraphicsContext3D::getAttribLocation):
353         (WebCore::GraphicsContext3D::getError):
354         (WebCore::GraphicsContext3D::getString):
355         (WebCore::GraphicsContext3D::hint):
356         (WebCore::GraphicsContext3D::isBuffer):
357         (WebCore::GraphicsContext3D::isEnabled):
358         (WebCore::GraphicsContext3D::isFramebuffer):
359         (WebCore::GraphicsContext3D::isProgram):
360         (WebCore::GraphicsContext3D::isRenderbuffer):
361         (WebCore::GraphicsContext3D::isShader):
362         (WebCore::GraphicsContext3D::isTexture):
363         (WebCore::GraphicsContext3D::lineWidth):
364         (WebCore::GraphicsContext3D::linkProgram):
365         (WebCore::GraphicsContext3D::pixelStorei):
366         (WebCore::GraphicsContext3D::polygonOffset):
367         (WebCore::GraphicsContext3D::readPixels):
368         (WebCore::GraphicsContext3D::releaseShaderCompiler):
369         (WebCore::GraphicsContext3D::renderbufferStorage):
370         (WebCore::GraphicsContext3D::sampleCoverage):
371         (WebCore::GraphicsContext3D::scissor):
372         (WebCore::GraphicsContext3D::shaderSource):
373         (WebCore::GraphicsContext3D::stencilFunc):
374         (WebCore::GraphicsContext3D::stencilFuncSeparate):
375         (WebCore::GraphicsContext3D::stencilMask):
376         (WebCore::GraphicsContext3D::stencilMaskSeparate):
377         (WebCore::GraphicsContext3D::stencilOp):
378         (WebCore::GraphicsContext3D::stencilOpSeparate):
379         (WebCore::GraphicsContext3D::texParameterf):
380         (WebCore::GraphicsContext3D::texParameteri):
381         (WebCore::GraphicsContext3D::uniform1f):
382         (WebCore::GraphicsContext3D::uniform1fv):
383         (WebCore::GraphicsContext3D::uniform2f):
384         (WebCore::GraphicsContext3D::uniform2fv):
385         (WebCore::GraphicsContext3D::uniform3f):
386         (WebCore::GraphicsContext3D::uniform3fv):
387         (WebCore::GraphicsContext3D::uniform4f):
388         (WebCore::GraphicsContext3D::uniform4fv):
389         (WebCore::GraphicsContext3D::uniform1i):
390         (WebCore::GraphicsContext3D::uniform1iv):
391         (WebCore::GraphicsContext3D::uniform2i):
392         (WebCore::GraphicsContext3D::uniform2iv):
393         (WebCore::GraphicsContext3D::uniform3i):
394         (WebCore::GraphicsContext3D::uniform3iv):
395         (WebCore::GraphicsContext3D::uniform4i):
396         (WebCore::GraphicsContext3D::uniform4iv):
397         (WebCore::GraphicsContext3D::uniformMatrix2fv):
398         (WebCore::GraphicsContext3D::uniformMatrix3fv):
399         (WebCore::GraphicsContext3D::uniformMatrix4fv):
400         (WebCore::GraphicsContext3D::useProgram):
401         (WebCore::GraphicsContext3D::validateProgram):
402         (WebCore::GraphicsContext3D::vertexAttrib1f):
403         (WebCore::GraphicsContext3D::vertexAttrib1fv):
404         (WebCore::GraphicsContext3D::vertexAttrib2f):
405         (WebCore::GraphicsContext3D::vertexAttrib2fv):
406         (WebCore::GraphicsContext3D::vertexAttrib3f):
407         (WebCore::GraphicsContext3D::vertexAttrib3fv):
408         (WebCore::GraphicsContext3D::vertexAttrib4f):
409         (WebCore::GraphicsContext3D::vertexAttrib4fv):
410         (WebCore::GraphicsContext3D::vertexAttribPointer):
411         (WebCore::GraphicsContext3D::viewport):
412         (WebCore::GraphicsContext3D::getBooleanv):
413         (WebCore::GraphicsContext3D::getBufferParameteriv):
414         (WebCore::GraphicsContext3D::getFloatv):
415         (WebCore::GraphicsContext3D::getFramebufferAttachmentParameteriv):
416         (WebCore::GraphicsContext3D::getIntegerv):
417         (WebCore::GraphicsContext3D::getProgramiv):
418         (WebCore::GraphicsContext3D::getProgramInfoLog):
419         (WebCore::GraphicsContext3D::getRenderbufferParameteriv):
420         (WebCore::GraphicsContext3D::getShaderiv):
421         (WebCore::GraphicsContext3D::getShaderInfoLog):
422         (WebCore::GraphicsContext3D::getShaderSource):
423         (WebCore::GraphicsContext3D::getTexParameterfv):
424         (WebCore::GraphicsContext3D::getTexParameteriv):
425         (WebCore::GraphicsContext3D::getUniformfv):
426         (WebCore::GraphicsContext3D::getUniformiv):
427         (WebCore::GraphicsContext3D::getUniformLocation):
428         (WebCore::GraphicsContext3D::getVertexAttribfv):
429         (WebCore::GraphicsContext3D::getVertexAttribiv):
430         (WebCore::GraphicsContext3D::getVertexAttribOffset):
431         (WebCore::GraphicsContext3D::texImage2D):
432         (WebCore::GraphicsContext3D::texSubImage2D):
433         (WebCore::GraphicsContext3D::createBuffer):
434         (WebCore::GraphicsContext3D::createFramebuffer):
435         (WebCore::GraphicsContext3D::createProgram):
436         (WebCore::GraphicsContext3D::createRenderbuffer):
437         (WebCore::GraphicsContext3D::createShader):
438         (WebCore::GraphicsContext3D::createTexture):
439         (WebCore::GraphicsContext3D::deleteBuffer):
440         (WebCore::GraphicsContext3D::deleteFramebuffer):
441         (WebCore::GraphicsContext3D::deleteProgram):
442         (WebCore::GraphicsContext3D::deleteRenderbuffer):
443         (WebCore::GraphicsContext3D::deleteShader):
444         (WebCore::GraphicsContext3D::deleteTexture):
445
446 2011-08-30  Tony Chang  <tony@chromium.org>
447
448         Remove webcore_bindings (including DerivedSources##.cpp) from the critical path
449         https://bugs.webkit.org/show_bug.cgi?id=67168
450
451         Reviewed by Adam Barth.
452
453         webcore_bindings_sources generates various files (e.g., CSSPropertyNames,
454         DerivedSources, HTMLNames, etc).  webcore_bindings depends on webcore_bindings_sources
455         and compiles these files.  Previously, the other webcore libs (webcore_svg,
456         webcore_html, webcore_remaining, etc) depended on webcore_bindings.  This changes the
457         dependency on webocre_bindings_sources so the build can parallelize the compile of
458         webcore_bindings and the other webcore_* libs.
459
460         No new tests, just changing the build dependencies.  Manually copy over the
461         include dirs that we used to get from webcore_bindings' direct_dependent_settings.
462
463         * WebCore.gyp/WebCore.gyp:
464
465 2011-08-30  Kaustubh Atrawalkar  <kaustubh@motorola.com>
466
467         The unused ScrollView* argument can and should be removed from
468         scrollRectIntoView.
469         https://bugs.webkit.org/show_bug.cgi?id=67117
470
471         Reviewed by Darin Adler.
472
473         * loader/EmptyClients.h:
474         (WebCore::EmptyChromeClient::scrollRectIntoView):
475         * page/Chrome.cpp:
476         (WebCore::Chrome::scrollRectIntoView):
477         * page/ChromeClient.h:
478         (WebCore::ChromeClient::scrollRectIntoView):
479
480 2011-08-30  Ben Wells  <benwells@chromium.org>
481
482         Update registerProtocolHandler scheme whitelist to match spec
483         https://bugs.webkit.org/show_bug.cgi?id=67104
484
485         Reviewed by Darin Adler.
486
487         * page/Navigator.cpp:
488         (WebCore::initProtocolHandlerWhitelist):
489
490 2011-08-30  Vsevolod Vlasov  <vsevik@chromium.org>
491
492         Web Inspector: Inspected page sometimes crashes in InspectorResourceAgent::didFailLoading
493         https://bugs.webkit.org/show_bug.cgi?id=67193
494
495         Reviewed by Pavel Feldman.
496
497         * inspector/InspectorResourceAgent.cpp:
498         (WebCore::InspectorResourceAgent::didFailLoading):
499
500 2011-08-30  Ademar de Souza Reis Jr.  <ademar.reis@openbossa.org>
501
502         [Qt] Do not unconditionally use pkg-config in .pro files
503         https://bugs.webkit.org/show_bug.cgi?id=67055
504
505         Reviewed by Andreas Kling.
506
507         Original patch from Rohan McGovern <rohan.mcgovern@nokia.com>
508
509         Using the first pkg-config in PATH is prone to errors when cross
510         compiling inside the Qt repository (using Qt's build-system).
511
512         This patch protect calls for pkg-config with
513         !contains(QT_CONFIG, no-pkg-config). no-pkg-config is added to
514         QT_CONFIG by Qt's 'configure' when cross-compiling on systems
515         without pkg-config.
516
517         The respective change in Qt's configure has been submited already.
518
519         No new tests as this is just a build change.
520
521         * features.pri: protect pkg-config calls
522
523 2011-08-30  Andreas Kling  <kling@webkit.org>
524
525         HTMLImageElement: Don't cache "ismap" and "usemap" attributes.
526         https://bugs.webkit.org/show_bug.cgi?id=66784
527
528         Reviewed by Darin Adler.
529
530         * html/HTMLImageElement.h: Remove the "ismap" and "usemap" members,
531         shrinking HTMLImageElement by 16 bytes (on 64-bit.)
532         * html/HTMLImageElement.cpp:
533         (WebCore::HTMLImageElement::HTMLImageElement):
534         (WebCore::HTMLImageElement::parseMappedAttribute): Most of the logic
535         for "ismap" and "usemap" moved into isServerMap().
536         (WebCore::HTMLImageElement::isServerMap): Out-of-lined and implemented
537         using fast*Attribute().
538
539 2011-08-30  Ryosuke Niwa  <rniwa@webkit.org>
540
541         lastChangeWasUserEdit continues to return true when innerText or textContent is modified
542         https://bugs.webkit.org/show_bug.cgi?id=67183
543
544         Reviewed by Kent Tamura.
545
546         Fixed the bug by calling setLastChangeWasNotUserEdit in HTMLTextAreaElement::childrenChanged.
547
548         Also got rid of HTMLTextFormControlElement::subtreeHasChanged because it was a needless indirection.
549
550         * html/HTMLInputElement.cpp:
551         (WebCore::HTMLInputElement::subtreeHasChanged): No longer calls HTMLTextFormControlElement::subtreeHasChanged.
552         * html/HTMLTextAreaElement.cpp:
553         (WebCore::HTMLTextAreaElement::childrenChanged): Calls setLastChangeWasNotUserEdit.
554         (WebCore::HTMLTextAreaElement::subtreeHasChanged): No longer calls HTMLTextFormControlElement::subtreeHasChanged.
555         * html/HTMLTextFormControlElement.cpp:
556         (WebCore::HTMLTextFormControlElement::defaultEventHandler): Merged subtreeHasChanged.
557         (WebCore::HTMLTextFormControlElement::setInnerTextValue): No longer set m_lastChangeWasUserEdit to false
558         since this is now done when renderers are set dirty.
559         * html/HTMLTextFormControlElement.h: Made subtreeHasChanged a pure virtual function.
560
561 2011-08-29  Yury Semikhatsky  <yurys@chromium.org>
562
563         Web Inspector: wrong script display name when there is a slash in its URL query parameters
564         https://bugs.webkit.org/show_bug.cgi?id=67120
565
566         Fixed folder name computation in ScriptsPanel. Now search query is ignored
567         when searching for the script folder name.
568
569         Reviewed by Pavel Feldman.
570
571         * inspector/front-end/ScriptsPanel.js:
572         (WebInspector.ScriptsPanel.prototype._folderAndDisplayNameForScriptURL):
573
574 2011-08-29  Yury Semikhatsky  <yurys@chromium.org>
575
576         Return value of window.onerror has inverted semantics
577         https://bugs.webkit.org/show_bug.cgi?id=67119
578
579         Error is now treated as handled only when window.onerror function returns true.
580
581         Reviewed by Darin Adler.
582
583         Test: fast/events/window-onerror13.html
584
585         * bindings/js/JSErrorHandler.cpp:
586         (WebCore::JSErrorHandler::handleEvent):
587         * bindings/v8/V8WindowErrorHandler.cpp:
588         (WebCore::V8WindowErrorHandler::callListenerFunction):
589         * bindings/v8/V8WorkerContextErrorHandler.cpp:
590         (WebCore::V8WorkerContextErrorHandler::callListenerFunction):
591
592 2011-08-29  Ryosuke Niwa  <rniwa@webkit.org>
593
594         Touch Internals.cpp in an attempt to fix GTK+ build.
595
596         * testing/Internals.cpp:
597
598 2011-08-29  Ryosuke Niwa  <rniwa@webkit.org>
599
600         Move setInnerTextValue from RenderTextControl to HTMLTextFormControlElement
601         https://bugs.webkit.org/show_bug.cgi?id=67152
602
603         Reviewed by Darin Adler.
604
605         Moved setInnerTextValue from RenderTextControl to HTMLTextFormControlElement.
606
607         Also moved m_lastChangeWasUserEdit from RenderTextControl to HTMLTextFormControlElement
608         and related inline functions from RenderTextControl to HTMLTextFormControlElement.
609         Because m_lastChangeWasUserEdit is no longer reset when RenderTextControl is recreated,
610         added explicit calls to setLastChangeWasNotUserEdit in setValue functions of HTMLInputElement
611         and HTMLTextAreaElement.
612
613         This patch also fixes the bug that lastChangeWasUserEdit() incorrectly returns false
614         when input or textarea don't have renderer (e.g. invisible).
615
616         Unfortunately, there is no way to test this behavioral change from layout tests.
617
618         * WebCore.exp.in: Exports lastChangeWasUserEdit in HTMLTextFormControlElement instead of
619         that of HTMLInputElement and HTMLTextAreaElement.
620         * html/HTMLInputElement.cpp:
621         (WebCore::HTMLInputElement::setValue): Explicitly calls setLastChangeWasNotUserEdit.
622         * html/HTMLInputElement.h:
623         * html/HTMLTextAreaElement.cpp:
624         (WebCore::HTMLTextAreaElement::setValueCommon): Ditto.
625         * html/HTMLTextAreaElement.h:
626         * html/HTMLTextFormControlElement.cpp:
627         (WebCore::HTMLTextFormControlElement::HTMLTextFormControlElement):
628         (WebCore::HTMLTextFormControlElement::subtreeHasChanged): Sets m_lastChangeWasUserEdit true
629         as it used to do via respondToChangeByUser.
630         (WebCore::HTMLTextFormControlElement::lastChangeWasUserEdit): Moved from HTMLInputElement
631         and HTMLTextAreaElement.
632         (WebCore::HTMLTextFormControlElement::setInnerTextValue): Moved from RenderTextControl.
633         * html/HTMLTextFormControlElement.h:
634         (WebCore::HTMLTextFormControlElement::setLastChangeWasNotUserEdit): Added.
635         * rendering/RenderTextControl.cpp:
636         (WebCore::RenderTextControl::RenderTextControl): No longer initializes m_lastChangeWasUserEdit.
637         * rendering/RenderTextControl.h:
638         * rendering/RenderTextControlSingleLine.cpp:
639         (WebCore::RenderTextControlSingleLine::updateFromElement): Calls setInnerTextValue.
640         * rendering/RenderTextControlMultiLine.cpp:
641         (WebCore::RenderTextControlMultiLine::updateFromElement): Ditto.
642
643 2011-08-25  Kent Tamura  <tkent@chromium.org>
644
645         REGRESSION(r88115): Disabling a file upload control causes an endless busyloop.
646         https://bugs.webkit.org/show_bug.cgi?id=66659
647
648         Reviewed by Darin Adler.
649
650         Test: fast/forms/file/disabling-file-busy-loop.html
651
652         * rendering/RenderFileUploadControl.cpp:
653         (WebCore::RenderFileUploadControl::updateFromElement):
654         Don't call setDisabled() if the disabled status is not changed.
655         setDisabled() causes styleRecalc(), and
656         HTMLFormControlElement::styleRecalc() causes
657         updateFromElement(). updateFromElement() should not call
658         setDisabled() again.
659
660 2011-08-29  Daniel Bates  <dbates@webkit.org>
661
662         Add HAVE(VASPRINTF) macro to test for vasprintf() support
663         https://bugs.webkit.org/show_bug.cgi?id=67156
664
665         Reviewed by Darin Adler.
666
667         * xml/parser/XMLDocumentParserLibxml2.cpp:
668         (WebCore::XMLDocumentParser::error): Modified to use HAVE(VASPRINTF).
669
670 2011-08-29  Yuta Kitamura  <yutak@chromium.org>
671
672         WebSocket: Receive binary message as Blob
673         https://bugs.webkit.org/show_bug.cgi?id=67115
674
675         Reviewed by Kent Tamura.
676
677         Make WebSocketChannel be able to receive WebSocket binary messages and deliver them via
678         didReceiveBinaryData() callback of WebSocketChannelClient.
679
680         Tests: http/tests/websocket/tests/hybi/fragmented-binary-frames.html
681                http/tests/websocket/tests/hybi/receive-blob.html
682                http/tests/websocket/tests/hybi/workers/receive-blob.html
683
684         * bindings/js/JSMessageEventCustom.cpp:
685         (WebCore::JSMessageEvent::data): Convert Blob to JSValue.
686         * bindings/v8/custom/V8MessageEventCustom.cpp:
687         (WebCore::V8MessageEvent::dataAccessorGetter): Convert Blob to v8::Value.
688         * dom/MessageEvent.cpp:
689         (WebCore::MessageEvent::MessageEvent):
690         * dom/MessageEvent.h:
691         Added DataTypeBlob and Blob-related functions.
692         (WebCore::MessageEvent::create):
693         (WebCore::MessageEvent::dataAsBlob):
694         * websockets/ThreadableWebSocketChannelClientWrapper.cpp:
695         (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveBinaryData):
696         (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveBinaryDataCallback):
697         * websockets/ThreadableWebSocketChannelClientWrapper.h:
698         * websockets/WebSocket.cpp:
699         (WebCore::WebSocket::didReceiveBinaryData):
700         If binaryType attribute is "blob", construct a Blob using BlobData filled with the given
701         binary message.
702         * websockets/WebSocket.h:
703         * websockets/WebSocketChannel.cpp:
704         (WebCore::WebSocketChannel::processFrame):
705         Create continuousFrameData as OwnPtr<> rather than stack-allocated value so we can easily
706         pass it to didReceiveBinaryData() callback.
707         Save the content of a fragmented message even if it is a binary opcode.
708         * websockets/WebSocketChannelClient.h:
709         (WebCore::WebSocketChannelClient::didReceiveBinaryData):
710         * websockets/WorkerThreadableWebSocketChannel.cpp:
711         (WebCore::workerContextDidReceiveBinaryData):
712         (WebCore::WorkerThreadableWebSocketChannel::Peer::didReceiveBinaryData):
713         Pass binaryData as PassOwnPtr<Vector<char> > to deliver the value efficiently (without
714         copying the content) across threads.
715         * websockets/WorkerThreadableWebSocketChannel.h:
716
717 2011-08-29  Ryosuke Niwa  <rniwa@webkit.org>
718
719         Add a test for lastChangeWasUserEdit in HTMLInputElement and HTMLTextAreaElement
720         https://bugs.webkit.org/show_bug.cgi?id=67173
721
722         Reviewed by Darin Adler.
723
724         Exposed HTMLInputElement::lastChangeWasUserEdit and HTMLTextAreaElement::lastChangeWasUserEdit
725         via internals.wasLastChangeUserEdit(Element*, ExceptionCode&). The first argument must be
726         an input element or a textarea element lastChangeWasUserEdit is called upon.
727
728         Test: fast/forms/textfield-lastchange-was-useredit.html
729
730         * testing/Internals.cpp:
731         (WebCore::Internals::wasLastChangeUserEdit):
732         * testing/Internals.h:
733         * testing/Internals.idl:
734
735 2011-08-29  Luke Macpherson   <macpherson@chromium.org>
736
737         Implement CSSPropertyWebkitColumns in CSSStyleApplyProperty.
738         https://bugs.webkit.org/show_bug.cgi?id=67106
739
740         Reviewed by Darin Adler.
741
742         Tests:
743         LayoutTests/fast/multicol/inherit-column-values.html
744         LayoutTests/fast/multicol/initial-column-values.html
745
746         * css/CSSStyleApplyProperty.cpp:
747         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
748         Initialize handler for CSSPropertyWebkitColumns.
749         * css/CSSStyleSelector.cpp:
750         (WebCore::CSSStyleSelector::applyProperty):
751         Remove existing implementation for CSSPropertyWebkitColumns.
752
753 2011-08-29  Mark Hahnenberg  <mhahnenberg@apple.com>
754
755         Unzip initialization lists and constructors in JSCell hierarchy (3/7)
756         https://bugs.webkit.org/show_bug.cgi?id=67064
757
758         Reviewed by Darin Adler.
759
760         No new tests.
761
762         Completed the third level of the refactoring to add finishCreation() 
763         methods to all classes within the JSCell hierarchy with non-trivial 
764         constructor bodies.
765
766         This primarily consists of pushing the calls to finishCreation() down 
767         into the constructors of the subclasses of the second level of the hierarchy 
768         as well as pulling the finishCreation() calls out into the class's corresponding
769         create() method if it has one.  Doing both simultaneously allows us to 
770         maintain the invariant that the finishCreation() method chain is called exactly 
771         once during the creation of an object, since calling it any other number of 
772         times (0, 2, or more) will cause an assertion failure.
773
774         * bindings/js/JSDOMWindowShell.cpp:
775         (WebCore::JSDOMWindowShell::JSDOMWindowShell):
776         (WebCore::JSDOMWindowShell::finishCreation):
777         * bindings/js/JSDOMWindowShell.h:
778
779 2011-08-29  John Bauman  <jbauman@chromium.org>
780
781         Speed up texImage from BGRA
782         https://bugs.webkit.org/show_bug.cgi?id=66884
783
784         Reviewed by Kenneth Russell.
785
786         BGRA input is common coming from skia, so optimize BGRA->RGBA
787         conversion and also avoid the pointless RGBA to RGBA conversion.
788
789         * platform/graphics/GraphicsContext3D.cpp:
790         (WebCore::doUnpackingAndPacking):
791
792 2011-08-29  Matthew Delaney  <mdelaney@apple.com>
793
794         [CG] ImageBufferCG should handle IOSurface allocation failure gracefully
795         https://bugs.webkit.org/show_bug.cgi?id=67099
796
797         Reviewed by Simon Fraser.
798
799         No new tests. Testing the "fallback to old path" behavior is not easily testable.
800
801         * platform/graphics/cg/ImageBufferCG.cpp: Rearranged backing store creation to fall back to
802           old path if IOSurface creation path fails.
803         (WebCore::ImageBuffer::ImageBuffer):
804
805 2011-08-29  Cary Clark  <caryclark@google.com>
806
807         Only enable font smoothing as requested (Skia on Mac)
808         https://bugs.webkit.org/show_bug.cgi?id=67143
809
810         This adjusts LayoutTest pixel output to more closely
811         match other platforms.
812
813         Reviewed by Kenneth Russell.
814
815         No new tests. This platform is not yet enabled.
816
817         * platform/graphics/skia/FontSkia.cpp:
818         (WebCore::setupPaint):
819         LCD text was always enabled to test the code path. With this change,
820         it is only enabled when instructed by the font state.
821
822 2011-08-29  Julien Chaffraix  <jchaffraix@webkit.org>
823
824         Assertion failure in RenderLayer::computeRepaintRects when scrolling
825         https://bugs.webkit.org/show_bug.cgi?id=67140
826
827         Reviewed by David Hyatt.
828
829         Test: fast/repaint/scroll-fixed-layer-with-no-visible-content.html
830
831         * rendering/RenderLayer.cpp:
832         (WebCore::RenderLayer::computeRepaintRects): Fixed style after r93837.
833
834         (WebCore::RenderLayer::updateLayerPositionsAfterScroll): Tweaked the code
835         to bail early if our layer has no visible content. This avoids the ASSERT
836         and also makes sense as we shouldn't repaint / update empty layers.
837
838 2011-08-29  Anna Cavender  <annacc@chromium.org>
839
840         Implement WebVTT Cue Text Parsing rules and DOM construction
841         https://bugs.webkit.org/show_bug.cgi?id=64132
842
843         Reviewed by Adam Barth.
844
845         Tests in media/track, particularly track-webvtt-tc[022 - 028]*.
846
847         * CMakeLists.txt:
848         * GNUmakefile.list.am:
849         * WebCore.gypi:
850         * WebCore.pro:
851         * WebCore.xcodeproj/project.pbxproj:
852         * html/TextTrackCue.cpp:
853         * html/TextTrackCue.h:
854         * platform/track/CueParser.cpp:
855         * platform/track/CueParser.h:
856         * platform/track/WebVTTParser.cpp:
857         * platform/track/WebVTTParser.h:
858         * platform/track/WebVTTToken.h: Added.
859         * platform/track/WebVTTTokenizer.cpp: Added.
860         * platform/track/WebVTTTokenizer.h: Added.
861
862 2011-08-29  Patrick Gansterer  <paroga@webkit.org>
863
864         Add parsing support for extended attributes on IDL constants
865         https://bugs.webkit.org/show_bug.cgi?id=65046
866
867         Reviewed by Brent Fulgham.
868
869         With support for extended attributes on constants we can
870         replace some preprocessor lines from the IDL files with
871         the corresponding [Conditional=XXX] later.
872         Using the preprocessor causes much pain on native windows.
873
874         CodeGenerator support will be added in separate patches.
875
876         * bindings/scripts/IDLParser.pm:
877         * bindings/scripts/IDLStructure.pm:
878
879 2011-08-29  Ryosuke Niwa  <rniwa@webkit.org>
880
881         Cleanup: notifyFormStateChanged, formControlValueMatchesRenderer, and setFormControlValueMatchesRenderer
882         https://bugs.webkit.org/show_bug.cgi?id=67141
883
884         Reviewed by Eric Seidel.
885
886         No new tests since this is a refactoring.
887
888         * dom/Element.h: Removed formControlValueMatchesRenderer and setFormControlValueMatchesRenderer.
889         * html/HTMLInputElement.cpp: Removed notifyFormStateChanged.
890         * html/HTMLInputElement.h:
891         * html/HTMLTextAreaElement.cpp:
892         (WebCore::HTMLTextAreaElement::updateValue): Calls notifyFormStateChanged; modifies m_wasModifiedByUser.
893         (WebCore::HTMLTextAreaElement::setValueCommon): Calls notifyFormStateChanged; also renamed value to newValue
894         to avoid the conflict with value().
895         * html/HTMLTextAreaElement.h: Made m_wasModifiedByUser mutable.
896         * html/HTMLTextFormControlElement.cpp:
897         (WebCore::HTMLTextFormControlElement::notifyFormStateChanged): Extracted from notifyFormStateChanged in
898         HTMLInputElement.cpp and HTMLTextAreaElement.cpp.
899         * html/HTMLTextFormControlElement.h:
900         * rendering/RenderTextControl.cpp:
901         (WebCore::RenderTextControl::setInnerTextValue): Calls setFormControlValueMatchesRenderer.
902
903 2011-08-29  Sheriff Bot  <webkit.review.bot@gmail.com>
904
905         Unreviewed, rolling out r93987, r93992, r93995, r93998, and
906         r93999.
907         http://trac.webkit.org/changeset/93987
908         http://trac.webkit.org/changeset/93992
909         http://trac.webkit.org/changeset/93995
910         http://trac.webkit.org/changeset/93998
911         http://trac.webkit.org/changeset/93999
912         https://bugs.webkit.org/show_bug.cgi?id=67147
913
914         Many failing tests (Requested by ap on #webkit).
915
916         * WebCore.exp.in:
917         * platform/mac/CookieJar.mm:
918         (WebCore::cookies):
919         (WebCore::cookieRequestHeaderFieldValue):
920         (WebCore::setCookies):
921         (WebCore::cookiesEnabled):
922         (WebCore::getRawCookies):
923         (WebCore::deleteCookie):
924         * platform/network/CookieStorage.h:
925         * platform/network/ResourceHandle.cpp:
926         (WebCore::privateStorageSession):
927         (WebCore::privateBrowsingStorageSessionIdentifierBase):
928         (WebCore::ResourceHandle::setPrivateBrowsingEnabled):
929         (WebCore::ResourceHandle::privateBrowsingStorageSession):
930         (WebCore::ResourceHandle::setPrivateBrowsingStorageSessionIdentifierBase):
931         * platform/network/ResourceHandle.h:
932         * platform/network/cf/CookieJarCFNet.cpp:
933         (WebCore::setCookies):
934         (WebCore::cookies):
935         (WebCore::cookieRequestHeaderFieldValue):
936         (WebCore::cookiesEnabled):
937         (WebCore::getRawCookies):
938         (WebCore::deleteCookie):
939         (WebCore::getHostnamesWithCookies):
940         (WebCore::deleteCookiesForHostname):
941         (WebCore::deleteAllCookies):
942         * platform/network/cf/CookieStorageCFNet.cpp:
943         (WebCore::privateBrowsingCookieStorage):
944         (WebCore::defaultSessionCookieStorage):
945         (WebCore::defaultCookieStorage):
946         (WebCore::currentCookieStorage):
947         (WebCore::setCurrentCookieStorage):
948         (WebCore::setCookieStoragePrivateBrowsingEnabled):
949         (WebCore::startObservingCookieChanges):
950         (WebCore::stopObservingCookieChanges):
951         * platform/network/cf/CookieStorageCFNet.h:
952         * platform/network/cf/ResourceHandleCFNet.cpp:
953         (WebCore::makeFinalRequest):
954         (WebCore::ResourceHandle::createPrivateBrowsingStorageSession):
955         (WebCore::ResourceHandle::privateBrowsingStorageSessionIdentifierDefaultBase):
956         (WebCore::ResourceHandle::currentStorageSession):
957         (WebCore::defaultCFURLStorageSession):
958         (WebCore::ResourceHandle::setDefaultStorageSession):
959         (WebCore::ResourceHandle::defaultStorageSession):
960         * platform/network/mac/CookieStorageMac.mm:
961         (WebCore::setCookieStoragePrivateBrowsingEnabled):
962         * platform/network/mac/ResourceHandleMac.mm:
963         (WebCore::shouldRelaxThirdPartyCookiePolicy):
964         (WebCore::ResourceHandle::createPrivateBrowsingStorageSession):
965
966 2011-08-29  Nayan Kumar K  <nayankk@motorola.com>
967
968         As per HTML specification, default font style of dfn tag should be italic.
969         https://bugs.webkit.org/show_bug.cgi?id=56670
970
971         Reviewed by Adam Barth.
972
973         Test: fast/css/dfn-default-font-style.html
974
975         * css/html.css:
976         (i, cite, em, var, address, dfn):
977
978 2011-08-29  Patrick Gansterer  <paroga@webkit.org>
979
980         Consider Conditional attribute in CodeGeneratorJS' JSValueToNative and NativeToJSValue function
981         https://bugs.webkit.org/show_bug.cgi?id=65040
982
983         Reviewed by Brent Fulgham.
984
985         JSValueToNative and NativeToJSValue add additional include statements
986         to the implementation and need to handle the Conditional attribute from
987         the IDL file. The Conditional attribute adds appropriate #if ENABLE()
988         lines for the preprocessor around the include statements to remove
989         some unneeded build dependencies.
990
991         * bindings/scripts/CodeGeneratorJS.pm:
992
993 2011-08-29  Nate Chapin  <japhet@chromium.org>
994
995         Plumb ResourceLoaderOptions out to CachedResourceLoader::requestResource().
996         This will be needed in order for DocumentThreadableLoader to become a CachedResourceClient.
997         https://bugs.webkit.org/show_bug.cgi?id=66018
998
999         Reviewed by Antti Koivisto.
1000
1001         No new tests, refactor only.
1002
1003         * loader/cache/CachedImage.cpp:
1004         (WebCore::CachedImage::load):
1005         * loader/cache/CachedResource.cpp:
1006         (WebCore::CachedResource::CachedResource):
1007         (WebCore::CachedResource::load):
1008         * loader/cache/CachedResource.h:
1009        (WebCore::CachedResource::load):
1010         (WebCore::CachedResource::setResourceLoaderOptions):
1011         (WebCore::CachedResource::sendResourceLoadCallbacks):
1012         * loader/cache/CachedResourceLoader.cpp:
1013         (WebCore::CachedResourceLoader::requestUserCSSStyleSheet):
1014         (WebCore::CachedResourceLoader::requestResource):
1015         (WebCore::CachedResourceLoader::loadResource):
1016         * loader/cache/CachedResourceLoader.h:
1017         * loader/cache/CachedResourceRequest.cpp:
1018         (WebCore::CachedResourceRequest::load):
1019         * loader/cache/CachedResourceRequest.h:
1020
1021 2011-08-29  Chris Palmer  <palmer@google.com>
1022
1023         Fix failures when FFT size is changed.
1024         https://bugs.webkit.org/show_bug.cgi?id=66916
1025
1026         Reviewed by Kenneth Russell.
1027
1028         Test: webaudio/fft-sizing.html
1029
1030         * webaudio/RealtimeAnalyser.cpp:
1031         (WebCore::RealtimeAnalyser::setFftSize): Assert size sanity.
1032         (WebCore::RealtimeAnalyser::doFFTAnalysis): Iterate the correct number of times over magnitudeBuffer.
1033         * webaudio/RealtimeAnalyser.h: Put member fields in the correct order (Min before Max).
1034
1035 2011-08-29  Abhishek Arya  <inferno@chromium.org>
1036
1037         Crash in InlineBox::deleteLine due to accessing removed
1038         renderer.
1039         https://bugs.webkit.org/show_bug.cgi?id=66015
1040
1041         Reviewed by Simon Fraser.
1042
1043         Test: fast/block/line-layout/inline-box-wrapper-crash.html
1044
1045         * rendering/RenderBox.cpp:
1046         (WebCore::RenderBox::positionLineBox): Make sure that the
1047         previous inline box wrapper is destroyed properly, before
1048         setting a new one.
1049
1050 2011-08-29  Alexey Proskuryakov  <ap@apple.com>
1051
1052         Lion build fix.
1053
1054         * WebCore.exp.in: We have different definitions of CFURLStorageSessionRef on different versions
1055         of Mac OS X, and need separate exports.
1056
1057 2011-08-29  Tony Chang  <tony@chromium.org>
1058
1059         Implement -webkit-flex-pack for horizontal flexboxen
1060         https://bugs.webkit.org/show_bug.cgi?id=66898
1061
1062         Reviewed by Ojan Vafai.
1063
1064         Test: css3/flexbox/004.html
1065
1066         * rendering/RenderFlexibleBox.cpp:
1067         (WebCore::RenderFlexibleBox::layoutHorizontalBlock):
1068         (WebCore::hasPackingSpace):
1069         (WebCore::RenderFlexibleBox::runFreeSpaceAllocationAlgorithmHorizontal):
1070
1071 2011-08-29  Alexey Proskuryakov  <ap@apple.com>
1072
1073         Windows build fix.
1074
1075         * platform/network/cf/CookieJarCFNet.cpp:
1076         (WebCore::setCookies):
1077         (WebCore::cookies):
1078         (WebCore::cookieRequestHeaderFieldValue):
1079         (WebCore::cookiesEnabled):
1080         (WebCore::getRawCookies):
1081         (WebCore::deleteCookie):
1082         (WebCore::getHostnamesWithCookies):
1083         (WebCore::deleteCookiesForHostname):
1084         (WebCore::deleteAllCookies):
1085         Updated for new function name and signature: currentCFHTTPCookieStorage().
1086
1087 2011-08-29  Alexey Proskuryakov  <ap@apple.com>
1088
1089         Mac build fix.
1090
1091         * platform/network/cf/CookieStorageCFNet.cpp: Move Windows specific includes into PLATFORM(WIN).
1092
1093 2011-08-29  Andreas Kling  <kling@webkit.org>
1094
1095         Viewing a post on reddit.com wastes a lot of memory on event listeners.
1096         https://bugs.webkit.org/show_bug.cgi?id=67133
1097
1098         Reviewed by Darin Adler.
1099
1100         Specialize the HashMap used to store registered listeners on an EventTarget
1101         to have a minimum size of 32 (rather than the default 64.)
1102         It's very rare for pages to register listeners for so many different events
1103         and this cuts memory consumption in half for the common case.
1104
1105         As an example, for a typical post on the reddit.com front page,
1106         this reduces memory used by ~700kB on 64-bit.
1107
1108         * dom/EventTarget.h:
1109
1110 2011-08-29  Stephen White  <senorblanco@chromium.org>
1111
1112         Skia's accelerated canvas 2D implementation should use GrTexture, not DrawingBuffer
1113         https://bugs.webkit.org/show_bug.cgi?id=67050
1114
1115         Reviewed by Kenneth Russell.
1116
1117         Covered by existing tests.
1118
1119         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
1120         (WebCore::Canvas2DLayerChromium::create):
1121         (WebCore::Canvas2DLayerChromium::Canvas2DLayerChromium):
1122         (WebCore::Canvas2DLayerChromium::drawsContent):
1123         Construct Canvas2DLayerChromium with a GraphicsContext3D, not a
1124         DrawingBuffer.
1125         (WebCore::Canvas2DLayerChromium::updateCompositorResources):
1126         Flush the GrContext and GraphicsContext3D on compositor update.
1127         * platform/graphics/chromium/Canvas2DLayerChromium.h:
1128         * platform/graphics/chromium/CanvasLayerChromium.cpp:
1129         (WebCore::CanvasLayerChromium::CanvasLayerChromium):
1130         * platform/graphics/chromium/CanvasLayerChromium.h:
1131         Put textureId() back on the base class (CanvasLayerChromium) and
1132         de-virtualize it.
1133         (WebCore::CanvasLayerChromium::textureId):
1134         (WebCore::CanvasLayerChromium::setTextureId):
1135         Move m_textureId from WebGLLayerChromium, since canvas2D now uses
1136         it too.  Provide getters and setters.
1137         * platform/graphics/chromium/DrawingBufferChromium.cpp:
1138         (WebCore::DrawingBuffer::DrawingBuffer):
1139         (WebCore::DrawingBuffer::~DrawingBuffer):
1140         Remove all Canvas2D-related calls from DrawingBuffer.
1141         (WebCore::DrawingBuffer::publishToPlatformLayer):
1142         Remove GrContext::flush call, since it's now handled by the platform layer.
1143         (WebCore::DrawingBuffer::platformLayer):
1144         Return NULL for now (WebGL may rescussitate this later).
1145         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
1146         Remove a useless #include.
1147         * platform/graphics/chromium/ImageBufferDataSkia.h:
1148         Add ownership of the Canvas2DLayerChromium.
1149         * platform/graphics/chromium/WebGLLayerChromium.cpp:
1150         (WebCore::WebGLLayerChromium::WebGLLayerChromium):
1151         * platform/graphics/chromium/WebGLLayerChromium.h:
1152         Remove all texture ID stuff (now on base class).
1153         * platform/graphics/gpu/DrawingBuffer.h:
1154         Remove Canvas2DLayerChromium and all Ganesh datatypes from
1155         DrawingBuffer, since it's no longer used by canvas2D.
1156         * platform/graphics/skia/ImageBufferSkia.cpp:
1157         (WebCore::ImageBuffer::ImageBuffer):
1158         On accelerated ImageBuffer creation, create a GrTexture instead of a
1159         DrawingBuffer.  If all is cool, create and set the SkGpuDevice here,
1160         and create a Canvas2DLayerChromium platform layer.
1161         (WebCore::ImageBuffer::platformLayer):
1162         * platform/graphics/skia/PlatformContextSkia.cpp:
1163         (WebCore::PlatformContextSkia::setGraphicsContext3D):
1164         * platform/graphics/skia/PlatformContextSkia.h:
1165         Remove all GrContext creation and DrawingBuffer "scraping" from 
1166         PlatformContextSkia::setGraphicsContext3D().  This is handled in
1167         the ImageBuffer constructor instead.
1168
1169 2011-08-26  Alexey Proskuryakov  <ap@apple.com>
1170
1171         DumpRenderTree should begin each test with an empty cookie store
1172         https://bugs.webkit.org/show_bug.cgi?id=63545
1173         <rdar://problem/5666907>
1174
1175         Reviewed by Darin Adler.
1176
1177         Use a clean CFURLStorageSession when this functionality is available.
1178
1179         * WebCore.exp.in: Added exports
1180
1181         * platform/mac/CookieJar.mm:
1182         (WebCore::cookies):
1183         (WebCore::cookieRequestHeaderFieldValue):
1184         (WebCore::setCookies):
1185         (WebCore::cookiesEnabled):
1186         (WebCore::getRawCookies):
1187         (WebCore::deleteCookie):
1188         Updated for privateBrowsingCookieStorage->currentCFHTTPCookieStorage change.
1189
1190         * platform/network/CookieStorage.h: Moved CFNetwork specific declarations to CookieStorageCFNet.h.
1191
1192         * platform/network/ResourceHandle.cpp: Moved CFNetwork specific code to ResourceHandleCFNet.cpp.
1193         This file contains cross platform functionality, and we no longer need to put code in it to
1194         share it between Mac and Windows.
1195
1196         * platform/network/ResourceHandle.h: Expose methods to manipulate default session on Mac, too.
1197
1198         * platform/network/cf/CookieStorageCFNet.cpp:
1199         (WebCore::cookieStorageOverride): Make it clear that this override is only for a Windows API.
1200         (WebCore::overrideCookieStorage): Ditto.
1201         (WebCore::currentCFHTTPCookieStorage): We no longer store a cookie storage in a static variable,
1202         unless it has been overridden on Windows. We can always get it from a session.
1203         (WebCore::setCookieStoragePrivateBrowsingEnabled): There is nothing to do here - we'll just
1204         use private session's storage. Note that Mac has a separate code path for OS versions that
1205         don't support sessions.
1206
1207         * platform/network/cf/CookieStorageCFNet.h: Changed exposed methods for more clarity.
1208
1209         * platform/network/cf/ResourceHandleCFNet.cpp:
1210         (WebCore::makeFinalRequest): Updated for currentCookieStorage->currentCFHTTPCookieStorage change.
1211         (WebCore::ResourceHandle::createPrivateBrowsingStorageSession): Moved out of USE(CFNETWORK),
1212         as this function is also used with NSURLConnection when sessions are enabled.
1213         (WebCore::ResourceHandle::currentStorageSession): Ditto. Removed an #if since default session
1214         is now supported on Mac, too.
1215         (WebCore::defaultCFURLStorageSession): Moved out of USE(CFNETWORK).
1216         (WebCore::ResourceHandle::setDefaultStorageSession): Moved out of USE(CFNETWORK). No longer
1217         adopt the session, because nothing in method name says that it will steal a reference from
1218         the caller.
1219         (WebCore::ResourceHandle::defaultStorageSession): Moved out of USE(CFNETWORK).
1220         (WebCore::privateStorageSession): Moved from ResourceHandle.cpp.
1221         (WebCore::privateBrowsingStorageSessionIdentifierBase): Moved from ResourceHandle.cpp.
1222         (WebCore::ResourceHandle::setPrivateBrowsingEnabled): Moved from ResourceHandle.cpp.
1223         (WebCore::ResourceHandle::privateBrowsingStorageSession): Moved from ResourceHandle.cpp.
1224         (WebCore::ResourceHandle::setPrivateBrowsingStorageSessionIdentifierBase): Moved from ResourceHandle.cpp.
1225         (WebCore::ResourceHandle::privateBrowsingStorageSessionIdentifierDefaultBase): Moved from ResourceHandle.cpp.
1226
1227         * platform/network/mac/CookieStorageMac.mm: (WebCore::setCookieStoragePrivateBrowsingEnabled):
1228         We no longer store a reference to cookie storage in a static variable, so nothing to do here.
1229         On older OS versiosn, we still need to enable legacy private browsing mode.
1230
1231         * platform/network/mac/ResourceHandleMac.mm: (WebCore::shouldRelaxThirdPartyCookiePolicy):
1232         Updated to use the new currentCFHTTPCookieStorage function.
1233
1234 2011-08-22  David Levin  <levin@chromium.org>
1235
1236         postMessage raises INVALID_STATE_ERR instead of DATA_CLONE_ERR in many cases.
1237         https://bugs.webkit.org/show_bug.cgi?id=66713
1238
1239         Reviewed by Dmitry Titov.
1240
1241         See http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#posting-messages for postMessage
1242
1243         * bindings/js/JSMessagePortCustom.cpp:
1244         (WebCore::fillMessagePortArray):
1245         * bindings/v8/custom/V8MessagePortCustom.cpp:
1246         (WebCore::getMessagePortArray):
1247         * dom/MessagePort.cpp:
1248         (WebCore::MessagePort::postMessage):
1249         (WebCore::MessagePort::disentanglePorts):
1250
1251 2011-08-29  Tom Zakrajsek  <tomz@codeaurora.org>
1252
1253         canvas arc() missing line to start of arc if swing is zero
1254         https://bugs.webkit.org/show_bug.cgi?id=55696
1255
1256         Reviewed by Andreas Kling.
1257
1258         Test: fast/canvas/canvas-arc-zero-lineto.html
1259
1260         * html/canvas/CanvasRenderingContext2D.cpp:
1261         (WebCore::CanvasRenderingContext2D::arc):
1262
1263 2011-08-23  Chris Marrin  <cmarrin@apple.com>
1264
1265         [mac] requestAnimationFrame support for mac port
1266         https://bugs.webkit.org/show_bug.cgi?id=59146
1267
1268         Reviewed by Simon Fraser.
1269
1270         Enable REQUEST_ANIMATION_FRAME logic and add ScriptedAnimationController
1271         to build. Added JavaScript support for Mac, too.
1272
1273         * CodeGenerators.pri:
1274         * Configurations/FeatureDefines.xcconfig:
1275         * DerivedSources.make:
1276         * WebCore.exp.in:
1277         * WebCore.xcodeproj/project.pbxproj:
1278         * bindings/js/JSRequestAnimationFrameCallbackCustom.cpp: Added.
1279         (WebCore::JSRequestAnimationFrameCallback::handleEvent):
1280         * bindings/scripts/CodeGeneratorJS.pm:
1281         (AddIncludesForType):
1282         * dom/RequestAnimationFrameCallback.idl:
1283
1284 2011-08-29  Alexander Pavlov  <apavlov@chromium.org>
1285
1286         Web Inspector: <button hidden>..</button> has a different computed "display" value than "none"
1287         https://bugs.webkit.org/show_bug.cgi?id=67124
1288
1289         Attribute styles have a higher priority than user agent styles and thus should be rendered above them.
1290
1291         Reviewed by Yury Semikhatsky.
1292
1293         * inspector/front-end/StylesSidebarPane.js:
1294         (WebInspector.StylesSidebarPane.prototype._rebuildStyleRules):
1295         (WebInspector.StylesSidebarPane.prototype._rebuildStyleRules.get continue):
1296
1297 2011-08-25  Pavel Podivilov  <podivilov@chromium.org>
1298
1299         Web Inspector: rename sourceFile to (raw|ui)SourceCode in DebuggerPresentationModel.
1300         https://bugs.webkit.org/show_bug.cgi?id=66769
1301
1302         Reviewed by Pavel Feldman.
1303
1304         * inspector/front-end/DebuggerPresentationModel.js:
1305         (WebInspector.DebuggerPresentationModel):
1306         (WebInspector.DebuggerPresentationModel.prototype.uiSourceCode):
1307         (WebInspector.DebuggerPresentationModel.prototype._scriptLocationToUILocation.didCreateSourceMapping):
1308         (WebInspector.DebuggerPresentationModel.prototype._scriptLocationToUILocation):
1309         (WebInspector.DebuggerPresentationModel.prototype._uiLocationToScriptLocation.didCreateSourceMapping):
1310         (WebInspector.DebuggerPresentationModel.prototype._uiLocationToScriptLocation):
1311         (WebInspector.DebuggerPresentationModel.prototype.linkifyLocation.updateAnchor.didGetLocation):
1312         (WebInspector.DebuggerPresentationModel.prototype.linkifyLocation.updateAnchor):
1313         (WebInspector.DebuggerPresentationModel.prototype.linkifyLocation):
1314         (WebInspector.DebuggerPresentationModel.prototype._addScript.didCreateSourceMapping):
1315         (WebInspector.DebuggerPresentationModel.prototype._addScript):
1316         (WebInspector.DebuggerPresentationModel.prototype._uiSourceCodeReplaced):
1317         (WebInspector.DebuggerPresentationModel.prototype.canEditScriptSource):
1318         (WebInspector.DebuggerPresentationModel.prototype.setScriptSource.didEditScriptSource):
1319         (WebInspector.DebuggerPresentationModel.prototype.setScriptSource):
1320         (WebInspector.DebuggerPresentationModel.prototype._updateBreakpointsAfterLiveEdit):
1321         (WebInspector.DebuggerPresentationModel.prototype.setFormatSourceFiles):
1322         (WebInspector.DebuggerPresentationModel.prototype._addConsoleMessage.didGetUILocation):
1323         (WebInspector.DebuggerPresentationModel.prototype._addConsoleMessage):
1324         (WebInspector.DebuggerPresentationModel.prototype._consoleCleared):
1325         (WebInspector.DebuggerPresentationModel.prototype.continueToLine):
1326         (WebInspector.DebuggerPresentationModel.prototype.breakpointsForSourceFileId):
1327         (WebInspector.DebuggerPresentationModel.prototype.setBreakpoint):
1328         (WebInspector.DebuggerPresentationModel.prototype.setBreakpointEnabled):
1329         (WebInspector.DebuggerPresentationModel.prototype.updateBreakpoint):
1330         (WebInspector.DebuggerPresentationModel.prototype.removeBreakpoint):
1331         (WebInspector.DebuggerPresentationModel.prototype.findBreakpoint):
1332         (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded):
1333         (WebInspector.DebuggerPresentationModel.prototype._breakpointRemoved):
1334         (WebInspector.DebuggerPresentationModel.prototype._debuggerPaused):
1335         (WebInspector.DebuggerPresentationModel.prototype._rawSourceCodeForScript):
1336         (WebInspector.DebuggerPresentationModel.prototype._scriptForRawSourceCode):
1337         (WebInspector.DebuggerPresentationModel.prototype._createRawSourceCodeId):
1338         (WebInspector.DebuggerPresentationModel.prototype._debuggerReset):
1339         (WebInspector.PresentationBreakpoint):
1340         (WebInspector.PresenationCallFrame.prototype.sourceLine.didGetUILocation):
1341         (WebInspector.PresenationCallFrame.prototype.sourceLine):
1342         (WebInspector.DebuggerPresentationModelResourceBinding.prototype.canSetContent):
1343         (WebInspector.DebuggerPresentationModelResourceBinding.prototype.setContent):
1344         (WebInspector.DebuggerPresentationModelResourceBinding.prototype._setContentWithInitialContent):
1345         * inspector/front-end/ScriptsPanel.js:
1346         (WebInspector.ScriptsPanel.prototype.canShowAnchorLocation):
1347         (WebInspector.ScriptsPanel.prototype._createSourceFrame):
1348         (WebInspector.ScriptsPanel.prototype._sourceFrameLoaded):
1349         (WebInspector.ScriptsPanel.prototype._callFrameSelected.didGetSourceLocation):
1350         (WebInspector.ScriptsPanel.prototype._callFrameSelected):
1351         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.requestContent):
1352         (WebInspector.SourceFrameDelegateForScriptsPanel.prototype.suggestedFileName):
1353         * inspector/front-end/SourceFile.js:
1354         (WebInspector.RawSourceCode.prototype.rawLocationToUILocation):
1355         (WebInspector.UILocation):
1356
1357 2011-08-29  Ilya Tikhonovsky  <loislo@chromium.org>
1358
1359         Web Inspector: cached permanent redirects don't show redirect code and text in Network panel.
1360         https://bugs.webkit.org/show_bug.cgi?id=67126
1361
1362         Reviewed by Yury Semikhatsky.
1363
1364         * inspector/InspectorResourceAgent.cpp:
1365         (WebCore::buildObjectForResourceResponse):
1366         * inspector/front-end/NetworkPanel.js:
1367         (WebInspector.NetworkDataGridNode.prototype._refreshStatusCell):
1368
1369 2011-08-25  Pavel Podivilov  <podivilov@chromium.org>
1370
1371         Web Inspector: extract FormattedContentProvider from RawSourceCode.
1372         https://bugs.webkit.org/show_bug.cgi?id=66938
1373
1374         Reviewed by Pavel Feldman.
1375
1376         * inspector/front-end/SourceFile.js:
1377         (WebInspector.RawSourceCode.prototype._setContentProvider):
1378         (WebInspector.RawSourceCode.prototype._loadResourceContent):
1379         (WebInspector.RawSourceCode.prototype._loadScriptContent):
1380         (WebInspector.RawSourceCode.prototype._loadAndConcatenateScriptsContent):
1381         (WebInspector.RawSourceCode.prototype._didRequestContent):
1382         (WebInspector.FormattedContentProvider):
1383         (WebInspector.FormattedContentProvider.prototype.requestContent.didRequestContent.didFormatContent):
1384         (WebInspector.FormattedContentProvider.prototype.requestContent):
1385
1386 2011-08-25  Pavel Podivilov  <podivilov@chromium.org>
1387
1388         Web Inspector: link UISourceCode to RawSourceCode.
1389         https://bugs.webkit.org/show_bug.cgi?id=66944
1390
1391         Reviewed by Pavel Feldman.
1392
1393         * inspector/front-end/UISourceCode.js:
1394         (WebInspector.UISourceCode):
1395         (WebInspector.UISourceCode.prototype.get rawSourceCode):
1396
1397 2011-08-25  Pavel Podivilov  <podivilov@chromium.org>
1398
1399         Web Inspector: remove RawSourceCode.setFormatted.
1400         https://bugs.webkit.org/show_bug.cgi?id=66947
1401
1402         Reviewed by Pavel Feldman.
1403
1404         * inspector/front-end/DebuggerPresentationModel.js:
1405         * inspector/front-end/SourceFile.js:
1406         (WebInspector.RawSourceCode):
1407
1408 2011-08-26  Pavel Podivilov  <podivilov@chromium.org>
1409
1410         Web Inspector: Debugger.setBreakpointByUrl should return error when setting breakpoint on the same location twice.
1411         https://bugs.webkit.org/show_bug.cgi?id=67030
1412
1413         Reviewed by Pavel Feldman.
1414
1415         Test: inspector/debugger/set-breakpoint.html
1416
1417         * inspector/InspectorDebuggerAgent.cpp:
1418         (WebCore::InspectorDebuggerAgent::setBreakpointByUrl):
1419
1420 2011-08-29  Matthew Delaney  <mdelaney@apple.com>
1421
1422         fast/canvas/shadow-offset-*.html fail on Leopard/Snow Leopard when removing the work around for <rdar://problem/5539388>.
1423         https://bugs.webkit.org/show_bug.cgi?id=67107
1424
1425         Reviewed by David Levin.
1426
1427         No new tests. Effectively reverting the change from https://bugs.webkit.org/show_bug.cgi?id=67052 for Leopard and SL
1428         because it caused test regressions on Leopard and SL, but not Lion.
1429
1430         * platform/graphics/cg/GraphicsContextCG.cpp:
1431         (WebCore::GraphicsContext::setPlatformShadow):
1432
1433 2011-08-29  Zoltan Herczeg  <zherczeg@webkit.org>
1434
1435         [Qt] Unreviewed minimal-build buildfix after r93937.
1436
1437         * platform/qt/RenderThemeQt.cpp:
1438         (WebCore::RenderThemeQt::paintInnerSpinButton):
1439         * platform/qt/RenderThemeQt.h:
1440
1441 2011-08-28  Keishi Hattori  <keishi@webkit.org>
1442
1443         Chromium Win: Setting square-button appearance reaches NOTREACHED
1444         https://bugs.webkit.org/show_bug.cgi?id=66918
1445
1446         Reviewed by Kent Tamura.
1447
1448         Test: fast/css/square-button-appearance.html
1449
1450         * rendering/RenderThemeChromiumWin.cpp:
1451         (WebCore::supportsFocus): Add case for SquareButtonPart.
1452         (WebCore::RenderThemeChromiumWin::supportsFocusRing): Add case for SquareButtonPart.
1453         (WebCore::RenderThemeChromiumWin::getThemeData): Add case for SquareButtonPart.
1454
1455 2011-08-28  Luke Macpherson   <macpherson@chromium.org>
1456
1457         Fix reference counting of values in CSSSelector.
1458         https://bugs.webkit.org/show_bug.cgi?id=66452
1459
1460         Reviewed by Darin Adler.
1461
1462         No new tests / no functionality changed.
1463
1464         Call deref when reassigning the value.
1465
1466         * css/CSSSelector.h:
1467         (WebCore::CSSSelector::setValue):
1468
1469 2011-08-28  Sam Weinig  <sam@webkit.org>
1470
1471         Add support for constructor syntax for Events
1472         https://bugs.webkit.org/show_bug.cgi?id=63878
1473
1474         Reviewed by Oliver Hunt.
1475
1476         Add basic support for Event constructors, starting with just supporting
1477         the constructor for the base Event class and just JSC support.  This lays
1478         the infrastructure for the other events as well.
1479
1480         Test: fast/events/event-constructors.html
1481
1482         * GNUmakefile.list.am:
1483         * UseJSC.cmake:
1484         * WebCore.gypi:
1485         * WebCore.pro:
1486         * WebCore.vcproj/WebCore.vcproj:
1487         * WebCore.xcodeproj/project.pbxproj:
1488         * bindings/js/JSBindingsAllInOne.cpp:
1489         Add files.
1490
1491         * bindings/generic/EventConstructors.h: Added.
1492         Add binding agnostic header that defines the Event initializers
1493         using a macro based DSL.
1494
1495         * bindings/js/JSEventConstructors.cpp: Added.
1496         (WebCore::convertValue):
1497         (WebCore::tryGetProperty):
1498         (WebCore::constructJSEventWithInitializer):
1499         Add JSC implementation of Event initializer DSL.
1500
1501         * dom/Event.cpp:
1502         (WebCore::EventInit::EventInit):
1503         (WebCore::Event::Event):
1504         * dom/Event.h:
1505         (WebCore::Event::create):
1506         Add Event initializer interface for base Event.
1507
1508         * dom/Event.idl:
1509         Mark Event as having a custom constructor function.
1510
1511 2011-08-27  Andreas Kling  <kling@webkit.org>
1512
1513         SQLiteStatement::getColumnText() could construct WTF::String result more efficiently.
1514         https://bugs.webkit.org/show_bug.cgi?id=67090
1515
1516         Reviewed by Darin Adler.
1517
1518         * platform/sql/SQLiteStatement.cpp:
1519         (WebCore::SQLiteStatement::getColumnText): Use sqlite3_column_bytes16()
1520         to get the length of the column text without looking for the null terminator.
1521
1522 2011-08-07  Robert Hogan  <robert@webkit.org>
1523
1524         The child div element with position:absolute will overlap with its parent div when a 'break' element is present in between
1525         https://bugs.webkit.org/show_bug.cgi?id=21934
1526
1527         Reviewed by David Hyatt.
1528
1529         Test: fast/block/positioning/absolute-appended-to-inline.html
1530
1531         Appending a positioned child node to an inline flow should dirty the lines in the flow, just as
1532         inserting a positioned child node does. Treating an appended and inserted node differently meant that updating the display type
1533         from 'none' to 'block' for the following markup would result in the div getting positioned correctly under
1534         the line block:
1535
1536             <div><a onMouseOver="mopen()">Hover</a><div style="display:none; position:absolute; background:#4682b4; height:10px; width:20px"><br></div></div>
1537
1538         but this would not happen with the following markup (the <br> is before the child div rather than after it):
1539
1540             <div><a onMouseOver="mopen()">Hover</a><br><div style="display:none; position:absolute; background:#4682b4; height:10px; width:20px"></div></div>
1541
1542         This problem is specific to cases where an object is appended to a line block whose last child is a <br>. When the line is relaid out after appending
1543         the positioned object the last line in the line block is always considered dirty unless it broke cleanly (ie. with a <br>, see RenderBlock::determineStartPosition),
1544         So in the second case above, the clean break and failing to dirty any lines in the block when appending the object means that the line block doesn't get relaid out
1545         to position the new positioned object relative to its containing line block.
1546
1547         So the change could special-case appending a node when the previous sibling isBR(), but it seems just as well to behave the same way as insertChildNode().
1548
1549         * rendering/RenderObjectChildList.cpp:
1550         (WebCore::RenderObjectChildList::appendChildNode):
1551             Call dirtyLinesFromChangedChild() if the child is positioned, just like insertChildNode().
1552
1553 2011-08-27  Anders Carlsson  <andersca@apple.com>
1554
1555         iChat: Receiving a message containing only a single-quote (') causes bubble to fail
1556         https://bugs.webkit.org/show_bug.cgi?id=67076
1557         <rdar://problem/10026089>
1558
1559         Reviewed by Dan Bernstein.
1560
1561         Test: fast/borders/border-fit-2.html
1562
1563         * rendering/RenderBlock.cpp:
1564         (WebCore::RenderBlock::borderFitAdjust):
1565         Make sure that the resulting rect isn't smaller than the border + padding.
1566
1567         (WebCore::RenderBlock::clearTruncation):
1568         Fix blatant coding style violations.
1569
1570 2011-08-27  Andreas Kling  <kling@webkit.org>
1571
1572         Shrink RenderLayer.
1573         https://bugs.webkit.org/show_bug.cgi?id=67089
1574
1575         Reviewed by Antonio Gomes.
1576
1577         * rendering/RenderLayer.cpp:
1578         (WebCore::RenderLayer::RenderLayer):
1579         * rendering/RenderLayer.h: Make m_inResizeMode a bitfield,
1580         shrinking RenderLayer by 8 bytes (on 64-bit.)
1581
1582 2011-08-27  Young Han Lee  <joybro@company100.net>
1583
1584         Reviewed by Dirk Schulze.
1585
1586         SVG animation fill="freeze" doesn't set baseVal to current animVal if animation stops before reaching the end
1587         https://bugs.webkit.org/show_bug.cgi?id=63553
1588
1589         calculateAnimationPercentAndRepeat() is returning 1, which means 100%, whenever
1590         elapsed >= m_intervalEnd, but this is wrong because m_intervalEnd can be in the middle
1591         of the animation duration. (e.g. begin="0s" end="2s" dur="3s")
1592
1593         This change makes the function return the animations's true progress instead of 100%
1594         when the animation ends.
1595
1596         Test: svg/animations/animate-end-attribute.html
1597
1598         * svg/animation/SVGSMILElement.cpp:
1599         (WebCore::SVGSMILElement::calculateAnimationPercentAndRepeat):
1600
1601 2011-08-27  Jarred Nicholls  <jarred@sencha.com>
1602
1603         [Qt] Need spin-button implementation
1604         https://bugs.webkit.org/show_bug.cgi?id=65896
1605
1606         Reviewed by Kenneth Rohde Christiansen.
1607
1608         * platform/qt/RenderThemeQt.cpp:
1609         (WebCore::RenderThemeQt::adjustInnerSpinButtonStyle):
1610         (WebCore::RenderThemeQt::paintInnerSpinButton):
1611         * platform/qt/RenderThemeQt.h:
1612
1613 2011-08-26  Xiaomei Ji  <xji@chromium.org>
1614
1615         Regression(91788): Bad cast in WebCore::blockWithNextLineBox
1616         https://bugs.webkit.org/show_bug.cgi?id=66090
1617
1618         Reviewed by Ryosuke Niwa.
1619
1620         This is more like (but not exactly) a revert of r91788.
1621         It does not search for previous or next root inline box in different
1622         render object, which completely eliminates the cause of this issue.
1623         And it removes createPositionAvoidingIgnoredNode(), changed its caller
1624         to use createLegacyEditingPosition(). createPositionAvoidingIgnoredNode
1625         is not correct when node is a replaced element whose caretMaxOffset
1626         could be greater than 1.
1627
1628         Tests: editing/selection/move-by-word-visually-crash-test-1.html
1629                editing/selection/move-by-word-visually-crash-test-2.html
1630                editing/selection/move-by-word-visually-crash-test-3.html
1631                editing/selection/move-by-word-visually-crash-test-4.html
1632
1633         * editing/htmlediting.cpp:
1634         * editing/htmlediting.h:
1635         * editing/visible_units.cpp:
1636         (WebCore::previousWordBreakInBoxInsideBlockWithSameDirectionality):
1637         (WebCore::leftmostPositionInRTLBoxInLTRBlock):
1638         (WebCore::rightmostPositionInLTRBoxInRTLBlock):
1639         (WebCore::nextWordBreakInBoxInsideBlockWithDifferentDirectionality):
1640         (WebCore::appendPositionAtLogicalEndOfLine):
1641         (WebCore::leftInlineBox):
1642         (WebCore::rightInlineBox):
1643
1644 2011-08-26  James Robinson  <jamesr@chromium.org>
1645
1646         [Chromium] Possible leak of LayerRendererChromium
1647         https://bugs.webkit.org/show_bug.cgi?id=66981
1648
1649         Reviewed by Kenneth Russell.
1650
1651         Fix a number of reference cycle leaks that prevent LayerRendererChromiums from being destroyed when a tab is
1652         closed.
1653
1654         Not possible to write a layout test where an entire WebView goes away.
1655
1656         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
1657         (WebCore::GraphicsLayerChromium::~GraphicsLayerChromium):
1658         * platform/graphics/chromium/LayerRendererChromium.cpp:
1659         (WebCore::LayerRendererChromium::clearRenderSurfacesOnCCLayerImplRecursive):
1660         (WebCore::LayerRendererChromium::clearRootCCLayerImpl):
1661         (WebCore::LayerRendererChromium::cleanupSharedObjects):
1662         * platform/graphics/chromium/LayerRendererChromium.h:
1663         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
1664         (WebCore::CCLayerTreeHost::setRootLayer):
1665
1666 2011-08-26  Nate Chapin  <japhet@chromium.org>
1667
1668         Move allowCredentials from ThreadableLoaderOptions down
1669         to ResourceLoaderOptions. This allows us to remove
1670         getShouldUseCredentialStorage() from SubresourceLoaderClient
1671         and check allowCredentials in ResourceLoader.
1672         https://bugs.webkit.org/show_bug.cgi?id=65330
1673
1674         Reviewed by Alexey Proskuryakov.
1675
1676         No new tests, refractor only.
1677
1678         * loader/DocumentThreadableLoader.cpp:
1679         * loader/DocumentThreadableLoader.h:
1680         * loader/MainResourceLoader.cpp:
1681         * loader/NetscapePlugInStreamLoader.cpp:
1682         * loader/ResourceLoadScheduler.h:
1683         * loader/ResourceLoader.cpp:
1684         (WebCore::ResourceLoader::shouldUseCredentialStorage): Check
1685             m_options.allowCredentials instead of calling a client.
1686         * loader/ResourceLoaderOptions.h:
1687         * loader/SubresourceLoader.cpp:
1688         * loader/SubresourceLoader.h:
1689         * loader/SubresourceLoaderClient.h:
1690         * loader/ThreadableLoader.h:
1691         * loader/cache/CachedResourceRequest.cpp:
1692
1693 2011-08-26  Ojan Vafai  <ojan@chromium.org>
1694
1695         change the default preferred width of the flex() function to 0px per the new spec
1696         https://bugs.webkit.org/show_bug.cgi?id=67067
1697
1698         Reviewed by Tony Chang.
1699
1700         * css/CSSParser.cpp:
1701         (WebCore::CSSParser::parseFlex):
1702
1703 2011-08-26  Matthew Delaney  <mdelaney@apple.com>
1704
1705         Remove offset hack from GraphicsContextCG setShadow code
1706         https://bugs.webkit.org/show_bug.cgi?id=67052
1707
1708         Reviewed by Simon Fraser.
1709
1710         No new tests - current tests cover it.
1711
1712         * platform/graphics/cg/GraphicsContextCG.cpp:
1713         Removing the offset hack introduced in http://trac.webkit.org/changeset/28714
1714         for an issue with offsets in an old version of CoreGraphics that's long since been fixed.
1715
1716 2011-08-26  Alexey Proskuryakov  <ap@apple.com>
1717
1718         Get rid of frame life support timer
1719         https://bugs.webkit.org/show_bug.cgi?id=66874
1720
1721         Reviewed by Geoff Garen. V8 fixes courtesy of Dmitry Titov.
1722
1723         Test: fast/frames/detached-frame-property.html
1724
1725         * bindings/js/JSDOMWindowBase.cpp:
1726         * bindings/js/JSDOMWindowBase.h:
1727         * bindings/js/ScriptController.cpp: (WebCore::ScriptController::evaluateInWorld):
1728         * bindings/v8/ScriptController.cpp: (WebCore::ScriptController::evaluate):
1729         * bindings/v8/V8Proxy.cpp:
1730         (WebCore::V8Proxy::runScript):
1731         (WebCore::V8Proxy::callFunction):
1732         (WebCore::V8Proxy::newInstance):
1733         * page/Frame.cpp:
1734         (WebCore::Frame::Frame):
1735         (WebCore::Frame::~Frame):
1736         (WebCore::Frame::pageDestroyed):
1737         * page/Frame.h:
1738         * page/Page.cpp: (WebCore::Page::~Page):
1739         Removed all code that dealt with the life support timer. Protect Frame inside runScript()
1740         and callFunction() for v8 bindings.
1741
1742         * bindings/js/JSEventListener.cpp: (WebCore::JSEventListener::handleEvent):
1743         Replaced ref/deref calls on self with a RefPtr.
1744
1745 2011-08-26  Ned Holbrook  <nholbrook@apple.com>
1746
1747         RenderText::computePreferredLogicalWidths() should measure words with trailing spaces
1748         https://bugs.webkit.org/show_bug.cgi?id=66733
1749
1750         Reviewed by Dan Bernstein.
1751
1752         Test: fast/text/complex-preferred-logical-widths.html
1753
1754         * rendering/RenderText.cpp:
1755         (WebCore::RenderText::computePreferredLogicalWidths): Apply logic from RenderBlock::LineBreaker::nextLineBreak().
1756
1757 2011-08-26  Tony Chang  <tony@chromium.org>
1758
1759         Add CSS parsing for -webkit-flex-align
1760         https://bugs.webkit.org/show_bug.cgi?id=66726
1761
1762         Reviewed by Ojan Vafai.
1763
1764         * css/CSSComputedStyleDeclaration.cpp:
1765         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1766         * css/CSSParser.cpp:
1767         (WebCore::CSSParser::parseValue):
1768         * css/CSSPrimitiveValueMappings.h:
1769         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1770         (WebCore::CSSPrimitiveValue::operator EFlexAlign):
1771         * css/CSSPropertyNames.in:
1772         * css/CSSStyleApplyProperty.cpp:
1773         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
1774         * css/CSSStyleSelector.cpp:
1775         (WebCore::CSSStyleSelector::applyProperty):
1776         * css/CSSValueKeywords.in:
1777         * rendering/style/RenderStyle.h:
1778         (WebCore::InheritedFlags::flexAlign):
1779         (WebCore::InheritedFlags::setFlexAlign):
1780         (WebCore::InheritedFlags::initialFlexAlign):
1781         * rendering/style/RenderStyleConstants.h:
1782         * rendering/style/StyleFlexibleBoxData.cpp:
1783         (WebCore::StyleFlexibleBoxData::StyleFlexibleBoxData):
1784         (WebCore::StyleFlexibleBoxData::operator==):
1785         * rendering/style/StyleFlexibleBoxData.h:
1786
1787 2011-08-26  Nate Chapin  <japhet@chromium.org>
1788
1789         Fix http/tests/misc/willCacheResponse-delegate-callback.html
1790         after r93886. We're implicitly converting an enum to a bool.
1791
1792         Rubber-stamped by David Levin.
1793
1794         * loader/mac/ResourceLoaderMac.mm:
1795         (WebCore::ResourceLoader::willCacheResponse):
1796
1797 2011-08-26  Chris Rogers  <crogers@google.com>
1798
1799         Add MediaPlayer::audioSourceProvider() method for audio stream access by the Web Audio API.
1800         https://bugs.webkit.org/show_bug.cgi?id=66398
1801
1802         Reviewed by Eric Carlson.
1803
1804         * html/HTMLMediaElement.cpp:
1805         (WebCore::HTMLMediaElement::HTMLMediaElement):
1806         (WebCore::HTMLMediaElement::prepareForLoad):
1807         (WebCore::HTMLMediaElement::loadNextSourceChild):
1808         (WebCore::HTMLMediaElement::ensureMediaPlayer):
1809         (WebCore::HTMLMediaElement::createMediaPlayer):
1810             MediaPlayer creation has now been put into createMediaPlayer() instead of it being created
1811             separately in these various methods.  It has been made thread-safe for use with the Web Audio API
1812             in conjunction with an MediaElementAudioSourceNode.
1813         (WebCore::HTMLMediaElement::setAudioSourceNode):
1814         (WebCore::HTMLMediaElement::audioSourceProvider):
1815         * html/HTMLMediaElement.h:
1816         (WebCore::HTMLMediaElement::audioSourceNode):
1817             The HTMLMediaElement now keeps track of an optional MediaElementAudioSourceNode if
1818             the audio stream is being processed using the Web Audio API.
1819         
1820         * platform/graphics/MediaPlayer.cpp:
1821         (WebCore::MediaPlayer::audioSourceProvider):
1822         * platform/graphics/MediaPlayer.h:
1823         * platform/graphics/MediaPlayerPrivate.h:
1824         (WebCore::MediaPlayerPrivateInterface::audioSourceProvider):
1825             MediaPlayer now has an audioSourceProvider() method with a default "empty" implementation.
1826             audioSourceProvider() returns an AudioSourceProvider object which the Web Audio API's
1827             MediaElementAudioSourceNode uses (indirectly through an HTMLMediaElement method) to get the rendered audio stream.
1828
1829         * webaudio/AudioContext.cpp:
1830         (WebCore::AudioContext::createMediaElementSource):
1831         * webaudio/AudioContext.h:
1832         * webaudio/AudioContext.idl:
1833             AudioContext::createMediaElementSource() is now more careful to check that an HTMLMediaElement
1834             doesn't already have a MediaElementAudioSourceNode attached to it.
1835             
1836         * webaudio/MediaElementAudioSourceNode.cpp:
1837         (WebCore::MediaElementAudioSourceNode::MediaElementAudioSourceNode):
1838         (WebCore::MediaElementAudioSourceNode::~MediaElementAudioSourceNode):
1839         (WebCore::MediaElementAudioSourceNode::process):
1840         (WebCore::MediaElementAudioSourceNode::lock):
1841         (WebCore::MediaElementAudioSourceNode::unlock):
1842         * webaudio/MediaElementAudioSourceNode.h:
1843             Implement thread-safe processing (replacing the old stub implementation).
1844
1845 2011-08-23  Stephen White  <senorblanco@chromium.org>
1846
1847         Assertion fires if canvas is resized while save() active
1848         https://bugs.webkit.org/show_bug.cgi?id=66710
1849
1850         Reviewed by Simon Fraser.
1851
1852         Test: fast/canvas/resize-while-save-active.html
1853
1854         * html/HTMLCanvasElement.cpp:
1855         (WebCore::HTMLCanvasElement::reset):
1856         Call CanvasRenderingContext2D::reset() before resizing the canvas,
1857         so that the GraphicsContext state stack can be unwound.
1858         * html/canvas/CanvasRenderingContext2D.cpp:
1859         (WebCore::CanvasRenderingContext2D::unwindStateStack):
1860         (WebCore::CanvasRenderingContext2D::~CanvasRenderingContext2D):
1861         Refactor the state stack unwinding code from the destructor to 
1862         unwindStateStack() (new).
1863         (WebCore::CanvasRenderingContext2D::reset):
1864         Unwind the GraphicsContext state stack when the context is reset.
1865         * html/canvas/CanvasRenderingContext2D.h:
1866
1867 2011-08-26  Darin Adler  <darin@apple.com>
1868
1869         [Mac] Use the progress cursor instead of the wristwatch for CSS "wait" cursor
1870         https://bugs.webkit.org/show_bug.cgi?id=67049
1871
1872         Reviewed by Beth Dakin.
1873
1874         * platform/mac/CursorMac.mm:
1875         (WebCore::Cursor::ensurePlatformCursor): Use BusyButClickable cursor for wait
1876         as well as for Progress.
1877
1878 2011-08-26  Nate Chapin  <japhet@chromium.org>
1879
1880         Fix gtk build after r93886.
1881
1882         * platform/track/CueParser.cpp:
1883         (WebCore::CueParser::load):
1884
1885 2011-08-26  Raphael Kubo da Costa  <kubo@profusion.mobi>
1886
1887         [EFL] Update searchableIndexIntroduction() to match GTK+'s.
1888         https://bugs.webkit.org/show_bug.cgi?id=66885
1889
1890         Reviewed by Gustavo Noronha Silva.
1891
1892         Using this new string allows us to share the test expectations with
1893         other ports, and thus makes
1894         fast/replaced/table-percent-height-text-controls.html pass.
1895
1896         No new tests, as this is covered by an existing one.
1897
1898         * platform/efl/LocalizedStringsEfl.cpp:
1899         (WebCore::searchableIndexIntroduction):
1900
1901 2011-08-26  Raphael Kubo da Costa  <kubo@profusion.mobi>
1902
1903         [EFL] Do not log an error if a fallback cursor cannot be found.
1904         https://bugs.webkit.org/show_bug.cgi?id=67037
1905
1906         Reviewed by Gustavo Noronha Silva.
1907
1908         Ecore_X does not necessarily have to be used (DumpRenderTree does not
1909         use it, for example), so showing an error message here is bogus.
1910
1911         No new tests, as it just removes erroneous error messages from
1912         when running DRT with existing tests.
1913
1914         * platform/efl/WidgetEfl.cpp:
1915         (WebCore::Widget::applyFallbackCursor):
1916
1917 2011-08-26  Nate Chapin  <japhet@chromium.org>
1918
1919         Change a bunch of nondescript bools to
1920         descriptive enums in ResourceLoaderOptions and
1921         ThreadableLoaderOptions.
1922         https://bugs.webkit.org/show_bug.cgi?id=66984
1923
1924         Reviewed by David Levin.
1925
1926         No new tests, no functionality change intended.
1927
1928         * WebCore.exp.in:
1929         * fileapi/FileReaderLoader.cpp:
1930         * html/MediaDocument.cpp:
1931         * html/PluginDocument.cpp:
1932         * loader/CrossOriginAccessControl.cpp:
1933         * loader/CrossOriginAccessControl.h:
1934         * loader/CrossOriginPreflightResultCache.cpp:
1935         * loader/CrossOriginPreflightResultCache.h:
1936         * loader/DocumentThreadableLoader.cpp:
1937         * loader/FrameLoader.h:
1938         * loader/ImageLoader.cpp:
1939         * loader/MainResourceLoader.cpp:
1940         * loader/NetscapePlugInStreamLoader.cpp:
1941         * loader/ResourceLoadScheduler.h:
1942         * loader/ResourceLoader.cpp:
1943         * loader/ResourceLoader.h:
1944         * loader/ResourceLoaderOptions.h:
1945         * loader/ThreadableLoader.h:
1946         * loader/cache/CachedResource.cpp:
1947         * loader/cache/CachedResourceRequest.cpp:
1948         * loader/cf/ResourceLoaderCFNet.cpp:
1949         * loader/mac/ResourceLoaderMac.mm:
1950         * page/EventSource.cpp:
1951         * platform/network/ResourceHandle.h:
1952         * workers/WorkerScriptLoader.cpp:
1953         * xml/XMLHttpRequest.cpp:
1954
1955 2011-08-26  Andreas Kling  <kling@webkit.org>
1956
1957         HTMLMetaElement: Don't cache "http-equiv" and "content" attributes.
1958         https://bugs.webkit.org/show_bug.cgi?id=67040
1959
1960         Reviewed by Darin Adler.
1961
1962         * html/HTMLMetaElement.h: Remove m_equiv and m_content members,
1963         shrinking HTMLMetaElement by 16 bytes (on 64-bit.)
1964         * html/HTMLMetaElement.cpp:
1965         (WebCore::HTMLMetaElement::parseMappedAttribute):
1966         (WebCore::HTMLMetaElement::process): Implemented using fastGetAttribute().
1967
1968 2011-08-26  Pavel Feldman  <pfeldman@google.com>
1969
1970         Web Inspector: [REGRESSION] No way to expand hovered objects while debugging.
1971         https://bugs.webkit.org/show_bug.cgi?id=67039
1972
1973         Reviewed by Yury Semikhatsky.
1974
1975         * inspector/front-end/Popover.js:
1976         (WebInspector.Popover):
1977         (WebInspector.Popover.prototype.show):
1978         (WebInspector.PopoverHelper.prototype._mouseDown):
1979         (WebInspector.PopoverHelper.prototype._hidePopover):
1980         (WebInspector.PopoverHelper.prototype._mouseHover):
1981         (WebInspector.PopoverHelper.prototype._killHidePopoverTimer):
1982
1983 2011-08-26  Pavel Podivilov  <podivilov@chromium.org>
1984
1985         Unreviewed, rolling out r93870.
1986         http://trac.webkit.org/changeset/93870
1987         https://bugs.webkit.org/show_bug.cgi?id=65203
1988
1989         Broke i18n chromium tests
1990
1991         * platform/graphics/chromium/FontChromiumWin.cpp:
1992         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::TransparencyAwareFontPainter):
1993         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::init):
1994         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::initializeForGDI):
1995         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::~TransparencyAwareFontPainter):
1996         (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::TransparencyAwareGlyphPainter):
1997         (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::~TransparencyAwareGlyphPainter):
1998         (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::drawGlyphs):
1999         (WebCore::TransparencyAwareFontPainter::TransparencyAwareUniscribePainter::hdc):
2000         (WebCore::TransparencyAwareFontPainter::TransparencyAwareUniscribePainter::TransparencyAwareUniscribePainter):
2001         (WebCore::TransparencyAwareFontPainter::TransparencyAwareUniscribePainter::~TransparencyAwareUniscribePainter):
2002         (WebCore::drawGlyphsWin):
2003         (WebCore::Font::drawComplexText):
2004         * platform/graphics/chromium/UniscribeHelper.cpp:
2005         (WebCore::UniscribeHelper::draw):
2006         * platform/graphics/skia/PlatformContextSkia.cpp:
2007         (WebCore::PlatformContextSkia::isNativeFontRenderingAllowed):
2008         * platform/graphics/skia/PlatformContextSkia.h:
2009         * platform/graphics/skia/SkiaFontWin.cpp:
2010         (WebCore::windowsCanHandleDrawTextShadow):
2011         (WebCore::windowsCanHandleTextDrawing):
2012         (WebCore::windowsCanHandleTextDrawingWithoutShadow):
2013         * platform/graphics/skia/SkiaFontWin.h:
2014
2015 2011-08-26  Alexei Svitkine  <asvitkine@chromium.org>
2016
2017         Chromium Mac: Use a custom pattern image for rubber banding overhang area
2018         https://bugs.webkit.org/show_bug.cgi?id=66707
2019
2020         Also roll Chromium revision to 98101, to include dependency: http://codereview.chromium.org/7714036/
2021
2022         Reviewed by Dimitri Glazkov.
2023
2024         No new tests since its just changing the Chromium-specific overhang pattern.
2025
2026         * platform/chromium/ScrollbarThemeChromiumMac.mm:
2027         (WebCore::ScrollbarThemeChromiumMac::ScrollbarThemeChromiumMac):
2028         (WebCore::ScrollbarThemeChromiumMac::paintOverhangAreas):
2029
2030 2011-08-26  Eric Carlson  <eric.carlson@apple.com>
2031
2032         <video> playlist can not advance when playing in background tab
2033         https://bugs.webkit.org/show_bug.cgi?id=66978
2034
2035         Reviewed by Darin Adler.
2036
2037         No new tests added because it isn't possible to simulate a background tab in DRT.
2038
2039         * html/HTMLMediaElement.cpp:
2040         (WebCore::HTMLMediaElement::HTMLMediaElement): Set RequirePageConsentToLoadMedia restriction.
2041         (WebCore::HTMLMediaElement::loadInternal): Don't consider page->canStartMedia if it has ever
2042             allowed a file to load.
2043         * html/HTMLMediaElement.h:
2044         (WebCore::HTMLMediaElement::requirePageConsentToLoadMedia): New.
2045         (WebCore::HTMLMediaElement::removeBehaviorRestriction): New.
2046
2047 2011-08-26  Andreas Kling  <kling@webkit.org>
2048
2049         [Qt] Path::boundingRect() is unnecessarily slow.
2050         https://bugs.webkit.org/show_bug.cgi?id=66854
2051
2052         Reviewed by Benjamin Poulain.
2053
2054         * html/canvas/CanvasRenderingContext2D.cpp:
2055         (WebCore::CanvasRenderingContext2D::stroke): Remove Qt-specific optimization
2056         since calling Path::boundingRect() will now do exactly the same thing.
2057         * platform/graphics/qt/PathQt.cpp:
2058         (WebCore::Path::boundingRect): Return QPainterPath::controlPointRect() since
2059         that is much faster than computing the (precise) QPainterPath::boundingRect()
2060         and Path::boundingRect() is not expected to be 100% precise anyway.
2061
2062 2011-08-26  Gavin Peters  <gavinp@chromium.org>
2063
2064         add a state enumeration to track down cause of null CachedScript execution
2065         https://bugs.webkit.org/show_bug.cgi?id=66939
2066
2067         Reviewed by Alexey Proskuryakov.
2068
2069         Over in http://code.google.com/p/chromium/issues/detail?id=75604 I
2070         have a bug I cannot reproduce.  I added an earlier crash in
2071         https://bugs.webkit.org/show_bug.cgi?id=65563 , and we've since
2072         gotten many good stacks, all coming in through a failed request that
2073         eventually calls notifyFinished() on a ScriptElement with a NULL
2074         m_cachedScript.
2075
2076         I'd like to know how this got NULL.  This enumeration should let
2077         me find that in stack dumps from reproductions.
2078
2079         No new tests, as my goal here is to get telemetry on a bug that I cannot reproduce.
2080
2081         * dom/ScriptElement.cpp:
2082         (WebCore::ScriptElement::ScriptElement):
2083         (WebCore::ScriptElement::requestScript):
2084         (WebCore::ScriptElement::stopLoadRequest):
2085         (WebCore::ScriptElement::notifyFinished):
2086         * dom/ScriptElement.h:
2087
2088 2011-08-26  Mike Reed  <reed@google.com>
2089
2090         [skia] never draw with GDI, so that all text can be gpu-accelerated
2091         https://bugs.webkit.org/show_bug.cgi?id=65203
2092
2093         Reviewed by Kenneth Russell.
2094
2095         * platform/graphics/chromium/FontChromiumWin.cpp:
2096         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::TransparencyAwareFontPainter):
2097         (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::TransparencyAwareGlyphPainter):
2098         (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::drawGlyphs):
2099         (WebCore::TransparencyAwareFontPainter::TransparencyAwareUniscribePainter::TransparencyAwareUniscribePainter):
2100         (WebCore::drawGlyphsWin):
2101         (WebCore::Font::drawComplexText):
2102         * platform/graphics/chromium/UniscribeHelper.cpp:
2103         (WebCore::UniscribeHelper::draw):
2104         * platform/graphics/skia/PlatformContextSkia.cpp:
2105         * platform/graphics/skia/PlatformContextSkia.h:
2106         * platform/graphics/skia/SkiaFontWin.cpp:
2107         * platform/graphics/skia/SkiaFontWin.h:
2108
2109 2011-08-26  Ilya Tikhonovsky  <loislo@chromium.org>
2110
2111         Web Inspector: in some cases Popover code is failing to calculate popover box position.
2112         https://bugs.webkit.org/show_bug.cgi?id=67029
2113
2114         Reviewed by Yury Semikhatsky.
2115
2116         * inspector/front-end/Popover.js:
2117         (WebInspector.Popover.prototype._positionElement):
2118
2119 2011-08-26  Nikolas Zimmermann  <nzimmermann@rim.com>
2120
2121         [Qt] http/tests/misc/object-embedding-svg-delayed-size-negotiation-2.htm fails intermittently
2122         https://bugs.webkit.org/show_bug.cgi?id=65969
2123
2124         Reviewed by Zoltan Herczeg.
2125
2126         Fix intrinsic size negotiation flakiness, most visible on the Qt port.
2127
2128         The http/tests/misc/object-embedding-svg-delayed-size-negotiation-2.htm testcase triggered
2129         an assertion on a Qt debug build indicating that the HashSet updateLayoutAndStyleIfNeededRecursive()
2130         operates on is mutated while its iterated, leading to an assertion/crash. Due the new forceLayoutParentViewIfNeeded()
2131         logic it's no longer safe to directly use the children() HashSet in that method - we have to make a copy first.
2132
2133         The second part of the fix is to stop entering forceLayoutParentViewIfNeeded(), if the origin of that call
2134         is forceLayoutParentViewIfNeeded() itself. Set m_inLayoutParentView to true before calling FrameView::layout()
2135         on our parent frame view - this is only an optimization to avoid doing layout() twice.
2136
2137         The third part of the fix is to call updateWidgetPositions() on the parent FrameView, _before_ calling layout()
2138         on the parent view itself, as the SVG document needs to report the correct intrinsic size (which can depend
2139         on the host object/embed/iframe) when we're running RenderReplaced::layout() on the host renderer.
2140
2141         * page/FrameView.cpp:
2142         (WebCore::FrameView::FrameView):
2143         (WebCore::collectFrameViewChildren):
2144         (WebCore::FrameView::forceLayoutParentViewIfNeeded):
2145         (WebCore::FrameView::updateLayoutAndStyleIfNeededRecursive):
2146         * page/FrameView.h:
2147
2148 2011-08-26  Mikhail Naganov  <mnaganov@chromium.org>
2149
2150         Web Inspector: [Chromium] Double clicking on numbers in Count & size columns doesn't toggle between values and percents in the Heap Snapshot.
2151         https://bugs.webkit.org/show_bug.cgi?id=66988
2152
2153         Reviewed by Pavel Feldman.
2154
2155         * inspector/front-end/DetailedHeapshotView.js:
2156         (WebInspector.DetailedHeapshotView.prototype._mouseClickInContentsGrid):
2157         (WebInspector.DetailedHeapshotView.prototype._mouseDownInContentsGrid):
2158
2159 2011-08-26  Shinya Kawanaka  <shinyak@google.com>
2160
2161         REGRESSION(r93390): Empty or invalid maxlength of an input tag should be ignored.
2162         https://bugs.webkit.org/show_bug.cgi?id=67015
2163
2164         Reviewed by Kent Tamura.
2165
2166         * html/HTMLInputElement.cpp:
2167         (WebCore::HTMLInputElement::parseMaxLengthAttribute):
2168           Checks the validity of maxlength attribute when converting it to integer.
2169
2170 2011-08-25  Yuta Kitamura  <yutak@chromium.org>
2171
2172         WebSocket: Fix indentation of WebSocket header files
2173         https://bugs.webkit.org/show_bug.cgi?id=67018
2174
2175         Reviewed by Kent Tamura.
2176
2177         No new tests. Style fix only.
2178
2179         * websockets/WebSocket.h:
2180         (WebCore::WebSocket::create):
2181         (WebCore::WebSocket::toWebSocket):
2182         (WebCore::WebSocket::refEventTarget):
2183         (WebCore::WebSocket::derefEventTarget):
2184         * websockets/WebSocketChannel.h:
2185         Removed formal parameter name of resumeTimerFired().
2186         (WebCore::WebSocketChannel::create):
2187         (WebCore::WebSocketChannel::refThreadableWebSocketChannel):
2188         (WebCore::WebSocketChannel::derefThreadableWebSocketChannel):
2189         (WebCore::WebSocketChannel::isNonControlOpCode):
2190         (WebCore::WebSocketChannel::isControlOpCode):
2191         (WebCore::WebSocketChannel::isReservedOpCode):
2192         * websockets/WebSocketHandshake.h:
2193         Removed formal parameter name of setClientProtocol().
2194
2195 2011-08-25  Martin Robinson  <mrobinson@igalia.com>
2196
2197         Touch GtkVersioning.c so that the release bot rebuilds it. This
2198         is necessary because of the switch to GTK+ 3.x.
2199
2200         * platform/gtk/GtkVersioning.c: Touch this file.
2201
2202 2011-08-25  Ben Wells  <benwells@chromium.org>
2203
2204         Use PATH_BASED_BORDER_RADIUS_DRAWING for skia
2205         https://bugs.webkit.org/show_bug.cgi?id=65583
2206
2207         This change brings in the new border rendering for Skia. To support this without aliasing the skia
2208         graphics context has been updated to support anti-aliased clipping around convex polygons and also
2209         anti-aliased clipping outside a path.
2210
2211         Reviewed by James Robinson.
2212
2213         * platform/graphics/skia/GraphicsContextSkia.cpp:
2214         (WebCore::GraphicsContext::clipOut):
2215         (WebCore::GraphicsContext::clipConvexPolygon):
2216         * platform/graphics/skia/PlatformContextSkia.cpp:
2217         (WebCore::PlatformContextSkia::clipPathAntiAliased):
2218         * rendering/RenderObject.h:
2219
2220 2011-08-25  Luke Macpherson   <macpherson@chromium.org>
2221
2222         Implement animation and transition properties in CSSStyleApplyProperty.
2223         https://bugs.webkit.org/show_bug.cgi?id=66126
2224
2225         Reviewed by Dean Jackson.
2226
2227         No new tests. This is essentially a refactoring of the HANDLE_ANIMATION* and HANDLE_TRANSITION* macros in CSSStyleSelector.cpp.
2228         The only functional change is to iterate correctly over the lists instead of setting only the first element. See bug 66118 for details on that.
2229
2230         * css/CSSStyleApplyProperty.cpp:
2231         Added new class ApplyPropertyAnimation to handle animation and transition properties.
2232         (WebCore::ApplyPropertyAnimation::ApplyPropertyAnimation):
2233         (WebCore::ApplyPropertyAnimation::applyInheritValue):
2234         (WebCore::ApplyPropertyAnimation::applyInitialValue):
2235         (WebCore::ApplyPropertyAnimation::applyValue):
2236         (WebCore::ApplyPropertyAnimation::setValue):
2237         (WebCore::ApplyPropertyAnimation::value):
2238         (WebCore::ApplyPropertyAnimation::test):
2239         (WebCore::ApplyPropertyAnimation::clear):
2240         (WebCore::ApplyPropertyAnimation::initial):
2241         (WebCore::ApplyPropertyAnimation::map):
2242         (WebCore::ApplyPropertyAnimation::accessAnimations):
2243         (WebCore::ApplyPropertyAnimation::animations):
2244         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
2245         * css/CSSStyleSelector.cpp:
2246         Removed animation and transition macros (celebrate!)
2247         (WebCore::CSSStyleSelector::applyProperty):
2248         Removed old implementations of animation and transition properties.
2249         * platform/animation/Animation.h:
2250         Changed return types of initial values to match the setters and getters.
2251         (WebCore::Animation::initialAnimationDelay):
2252         (WebCore::Animation::initialAnimationName):
2253         (WebCore::Animation::initialAnimationTimingFunction):
2254
2255 2011-08-25  Julien Chaffraix  <jchaffraix@webkit.org>
2256
2257         Concentrate RenderLayer repaint rects updates
2258         https://bugs.webkit.org/show_bug.cgi?id=64993
2259
2260         Reviewed by David Hyatt.
2261
2262         The change moves the update of the repaint rects to 2 methods
2263         (computeRepaintRects and clearRepaintRects) to better track
2264         those changes.
2265
2266         No new test, refactoring covered by the existing test cases.
2267
2268         * rendering/RenderLayer.cpp:
2269         (WebCore::RenderLayer::updateLayerPositions): Reverse the logic and
2270         calculate the new bounds upfront. This should have no impact as none
2271         of the methods rely on the internal value.
2272
2273         (WebCore::RenderLayer::computeRepaintRects): Added the cachedOffset parameter
2274         to avoid breaking the performance optimization in updateLayerPositions. Added
2275         some ASSERTS.
2276
2277         (WebCore::RenderLayer::clearRepaintRects): Added some ASSERTs here.
2278         (WebCore::RenderLayer::updateRepaintRectsAfterScroll): Added a FIXME as this
2279         method could use the cachedOffset trick too.
2280
2281         (WebCore::RenderLayer::setHasVisibleContent): Changed the code to use
2282         computeRepaintRects.
2283
2284         * rendering/RenderLayer.h: Updated the signature of computeRepaintRects and moved
2285         those 2 methods into the private section of the class.
2286
2287 2011-08-25  Van Lam  <vanlam@google.com>
2288
2289         Remove use of magic number -1 in WebCore/editing/visible_units.cpp
2290         https://bugs.webkit.org/show_bug.cgi?id=66980
2291
2292         Reviewed by Ryosuke Niwa.
2293
2294         Replaced use of magic number -1 with constant offsetNotFound.
2295
2296         * editing/visible_units.cpp:
2297         (WebCore::greatestOffsetUnder):
2298         (WebCore::smallestOffsetAbove):
2299
2300 2011-08-25  Igor Oliveira  <igor.oliveira@openbossa.org>
2301
2302         Rollout r93799: Caused bad clipping on the bottom of tall glyphs inside a button label
2303
2304         * rendering/RenderBlockLineLayout.cpp:
2305         (WebCore::RenderBlock::layoutInlineChildren):
2306         * rendering/RenderBox.cpp:
2307         * rendering/RenderBox.h:
2308         (WebCore::RenderBox::hasControlClip):
2309         (WebCore::RenderBox::controlClipRect):
2310         * rendering/RenderButton.cpp:
2311         (WebCore::RenderButton::setupInnerStyle):
2312
2313 2011-08-25  Ademar de Souza Reis Jr.  <ademar.reis@openbossa.org>
2314
2315         [Qt] Enable password echo on Symbian builds
2316         https://bugs.webkit.org/show_bug.cgi?id=66954
2317
2318         Reviewed by Chang Shu.
2319
2320         No tests, as this is just a build change.
2321
2322         * config.h:
2323
2324 2011-08-25  Nate Chapin  <japhet@chromium.org>
2325
2326         Windows build fix after r93811.
2327
2328         * loader/cf/ResourceLoaderCFNet.cpp:
2329         (WebCore::ResourceLoader::shouldCacheResponse):
2330
2331 2011-08-25  Nate Chapin  <japhet@chromium.org>
2332
2333         Split some of the variables out of ThreadableLoaderOptions
2334         into a superclass, ResourceLoaderOptions. Use ResourceLoaderOptions
2335         all the way down to ResourceLoader.
2336         https://bugs.webkit.org/show_bug.cgi?id=63301
2337
2338         Reviewed by David Levin.
2339
2340         No new tests, refractor only.
2341
2342         * GNUmakefile.list.am:
2343         * WebCore.gypi:
2344         * WebCore.vcproj/WebCore.vcproj:
2345         * WebCore.xcodeproj/project.pbxproj:
2346         * loader/DocumentThreadableLoader.cpp:
2347         * loader/MainResourceLoader.cpp:
2348         * loader/NetscapePlugInStreamLoader.cpp:
2349         * loader/ResourceLoadScheduler.cpp:
2350         * loader/ResourceLoadScheduler.h:
2351         * loader/ResourceLoader.cpp:
2352         * loader/ResourceLoader.h:
2353         * loader/ResourceLoaderOptions.h: Added.
2354         * loader/SubresourceLoader.cpp:
2355         * loader/SubresourceLoader.h:
2356         * loader/ThreadableLoader.h:
2357         * loader/cache/CachedResourceRequest.cpp:
2358         * loader/mac/ResourceLoaderMac.mm:
2359
2360 2011-08-25  Adam Klein  <adamk@chromium.org>
2361
2362         use strict in CodeGeneratorJS and CodeGeneratorV8
2363         https://bugs.webkit.org/show_bug.cgi?id=66915
2364
2365         Reviewed by Darin Adler.
2366
2367         Making these files "use strict" makes changing them less
2368         time-consuming and error-prone, and helps avoid accidentally
2369         adding dead code (added a FIXME for one such case).
2370
2371         No expected change in behavior.
2372
2373         * bindings/scripts/CodeGeneratorJS.pm:
2374         (AddIncludesForType):
2375         (GenerateParametersCheckExpression):
2376         (GenerateFunctionParametersCheck):
2377         (GenerateImplementation):
2378         (GenerateImplementationFunctionCall):
2379         (NativeToJSValue):
2380         (GenerateHashValue):
2381         * bindings/scripts/CodeGeneratorV8.pm:
2382         (AddIncludesForType):
2383         (GenerateHeaderNamedAndIndexedPropertyAccessors):
2384         (GenerateNormalAttrSetter):
2385         (GetFunctionTemplateCallbackName):
2386         (GenerateNewFunctionTemplate):
2387         (GenerateParametersCheckExpression):
2388         (GenerateFunctionParametersCheck):
2389         (GenerateImplementation):
2390         ():
2391
2392 2011-08-25  Dean Jackson  <dino@apple.com>
2393
2394         https://bugs.webkit.org/show_bug.cgi?id=21586
2395         Apply CSS animations and transitions to SVG properties
2396
2397         Reviewed by Simon Fraser.
2398
2399         Expose the applicable SVG properties from SVGRenderStyle to
2400         RenderStyle and add them to the list of animatable
2401         properties. There aren't many SVG properties that are
2402         animatable directly. SVGPaint (used in "fill" and "stroke")
2403         is supported only when both ends of the animation are
2404         a Color. Also updated SVGLength to have some methods
2405         for converting to and from user space units.
2406
2407         Test: transitions/svg-transitions.html
2408
2409         * page/animation/AnimationBase.cpp:
2410         (WebCore::blendFunc):
2411             Calls the blend method on SVGLength
2412         (WebCore::PropertyWrapperSVGPaint::PropertyWrapperSVGPaint):
2413             New property wrapper type for SVGPaint
2414         (WebCore::PropertyWrapperSVGPaint::equals):
2415         (WebCore::PropertyWrapperSVGPaint::blend):
2416         (WebCore::AnimationBase::ensurePropertyMap):
2417         * rendering/style/RenderStyle.h:
2418         (WebCore::InheritedFlags::fillPaintType):
2419         (WebCore::InheritedFlags::fillPaintColor):
2420         (WebCore::InheritedFlags::setFillPaintColor):
2421         (WebCore::InheritedFlags::strokePaintType):
2422         (WebCore::InheritedFlags::strokePaintColor):
2423         (WebCore::InheritedFlags::setStrokePaintColor):
2424         (WebCore::InheritedFlags::strokeWidth):
2425         (WebCore::InheritedFlags::setStrokeWidth):
2426         (WebCore::InheritedFlags::strokeDashOffset):
2427         (WebCore::InheritedFlags::setStrokeDashOffset):
2428         (WebCore::InheritedFlags::strokeMiterLimit):
2429         (WebCore::InheritedFlags::setStrokeMiterLimit):
2430         (WebCore::InheritedFlags::stopOpacity):
2431         (WebCore::InheritedFlags::setStopOpacity):
2432         (WebCore::InheritedFlags::setStopColor):
2433         (WebCore::InheritedFlags::setFloodColor):
2434         (WebCore::InheritedFlags::setLightingColor):
2435         (WebCore::InheritedFlags::baselineShiftValue):
2436         (WebCore::InheritedFlags::setBaselineShiftValue):
2437         (WebCore::InheritedFlags::kerning):
2438         (WebCore::InheritedFlags::setKerning):
2439         (WebCore::InheritedFlags::stopColor):
2440         (WebCore::InheritedFlags::floodColor):
2441         (WebCore::InheritedFlags::lightingColor):
2442         * rendering/style/SVGRenderStyle.h:
2443         (WebCore::SVGRenderStyle::stopColor):
2444         (WebCore::SVGRenderStyle::floodColor):
2445         (WebCore::SVGRenderStyle::lightingColor):
2446         * svg/SVGLength.cpp:
2447         (WebCore::SVGLength::value):
2448         (WebCore::SVGLength::setValue):
2449         (WebCore::SVGLength::convertValueFromUserUnits):
2450         (WebCore::SVGLength::convertValueToUserUnits):
2451             New conversion functions used when setting and getting values
2452         * svg/SVGLength.h:
2453         (WebCore::SVGLength::isZero):
2454         (WebCore::SVGLength::blend):
2455             Custom blend function that takes into account
2456             whether the units of a length can be converted
2457             in an animation, where you don't necessarily have
2458             an SVGElement for context.
2459
2460 2011-08-25  Kent Tamura  <tkent@chromium.org>
2461
2462         REGRESSION(r90971): Fix an assertion failure with textarea placeholder.
2463         https://bugs.webkit.org/show_bug.cgi?id=66164
2464
2465         Reviewed by Dave Hyatt.
2466          
2467         Minor patch nits addressed by inferno@chromium.org, on Hyatt's
2468         review.
2469
2470         Test: fast/forms/textarea-placeholder-relayout-assertion.html
2471
2472         * rendering/RenderTextControl.cpp:
2473         (WebCore::RenderTextControl::layoutSpecialExcludedChild):
2474         Pass 'false' to the 'markParents' argument of setChildNeedsLayout().
2475         We don't need to propagate needsLayout for ancestors because
2476         layoutSpecialExcludedChild() is called from layout() of the
2477         parent.
2478
2479 2011-08-25  Igor Oliveira  <igor.oliveira@openbossa.org>
2480
2481         Text-overflow is broken for button elements
2482         https://bugs.webkit.org/show_bug.cgi?id=53438
2483
2484         Fix text-overflow for button elements. Make the element inside
2485         the button inherit the button controlClip.
2486
2487         Reviewed by David Hyatt.
2488
2489         Test: fast/css/button-overflow-ellipsis.html
2490
2491         * rendering/RenderBlockLineLayout.cpp:
2492         (WebCore::RenderBlock::layoutInlineChildren):
2493         * rendering/RenderBox.cpp:
2494         (WebCore::RenderBox::controlClipRect):
2495         * rendering/RenderBox.h:
2496         (WebCore::RenderBox::hasControlClip):
2497         * rendering/RenderButton.cpp:
2498         (WebCore::RenderButton::setupInnerStyle):
2499
2500 2011-08-24  Adrienne Walker  <enne@google.com>
2501
2502         [chromium] Update VideoLayerChromium to not access GC3D on the main thread
2503         https://bugs.webkit.org/show_bug.cgi?id=66434
2504
2505         Reviewed by James Robinson.
2506
2507         Covered by existing tests.
2508
2509         This change allows the main thread VideoLayerChromium to not depend on
2510         compositor thread resources (GC3D, LayerRendererChromium). The texture
2511         allocation in VideoLayerChromium was changed to use ManagedTexture so
2512         that textures can now be evicted when there is texture memory pressure
2513         and so that destruction can be automatically deferred until a GC3D is
2514         available.
2515
2516         * platform/graphics/chromium/LayerRendererChromium.cpp:
2517         * platform/graphics/chromium/LayerRendererChromium.h:
2518         * platform/graphics/chromium/ManagedTexture.cpp:
2519         * platform/graphics/chromium/ManagedTexture.h:
2520         (WebCore::ManagedTexture::size):
2521         (WebCore::ManagedTexture::format):
2522         * platform/graphics/chromium/VideoLayerChromium.cpp:
2523         (WebCore::VideoLayerChromium::VideoLayerChromium):
2524         (WebCore::VideoLayerChromium::~VideoLayerChromium):
2525         (WebCore::VideoLayerChromium::cleanupResources):
2526         (WebCore::VideoLayerChromium::updateCompositorResources):
2527         (WebCore::VideoLayerChromium::pushPropertiesTo):
2528         (WebCore::VideoLayerChromium::setLayerTreeHost):
2529         (WebCore::VideoLayerChromium::determineTextureFormat):
2530         (WebCore::VideoLayerChromium::reserveTextures):
2531         (WebCore::VideoLayerChromium::updateTexture):
2532         (WebCore::VideoLayerChromium::releaseCurrentFrame):
2533         * platform/graphics/chromium/VideoLayerChromium.h:
2534         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
2535         (WebCore::CCLayerTreeHost::contentsTextureManager):
2536         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
2537         * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
2538         (WebCore::CCVideoLayerImpl::setTexture):
2539         (WebCore::CCVideoLayerImpl::drawYUV):
2540         (WebCore::CCVideoLayerImpl::drawRGBA):
2541         * platform/graphics/chromium/cc/CCVideoLayerImpl.h:
2542
2543 2011-08-25  Abhishek Arya  <inferno@chromium.org>
2544
2545         Incorrect layout of :before and :after content, with display
2546         table, table-row and table-cell.
2547         https://bugs.webkit.org/show_bug.cgi?id=66699
2548
2549         Reviewed by David Hyatt.
2550
2551         Tests: fast/table/table-after-child-in-table.html
2552                fast/table/table-before-child-in-table.html
2553                fast/table/table-cell-after-child-in-block.html
2554                fast/table/table-cell-after-child-in-table.html
2555                fast/table/table-cell-before-child-in-block.html
2556                fast/table/table-cell-before-child-in-table.html
2557                fast/table/table-row-after-child-in-block.html
2558                fast/table/table-row-after-child-in-table.html
2559                fast/table/table-row-before-child-in-block.html
2560                fast/table/table-row-before-child-in-table.html
2561
2562         * rendering/RenderBlock.cpp:
2563         (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
2564         Fix the looping condition to detect :after child correctly.
2565         isAnonymousBlock() does not apply to tables, instead
2566         using isAnonymous().
2567         * rendering/RenderTableRow.cpp:
2568         (WebCore::RenderTableRow::addChild): Don't add the new child
2569         in the generatedContainer with :before, :after content.
2570         * rendering/RenderTableSection.cpp:
2571         (WebCore::RenderTableSection::addChild): Don't add the new child
2572         in the generatedContainer with :before, :after content.
2573
2574 2011-08-25  Sam Weinig  <sam@webkit.org>
2575
2576         JSHTMLImageElement (and associated Node) is abandoned when image load is canceled via beforeload
2577         <rdar://problem/9925630>
2578         https://bugs.webkit.org/show_bug.cgi?id=66906
2579
2580         Reviewed by Darin Adler.
2581
2582         * loader/ImageLoader.cpp:
2583         (WebCore::ImageLoader::dispatchPendingBeforeLoadEvent):
2584         Very similar fix to the one in r93717 except this patches the case where the image load was
2585         canceled via beforeload.
2586
2587 2011-08-25  John Bates  <jbates@google.com>
2588
2589         [chromium] Leaking SkBitmaps for background images
2590         https://bugs.webkit.org/show_bug.cgi?id=66488
2591
2592         Reviewed by Stephen White.
2593
2594         This patch simply changes NativeImageSkia to have a SkBitmap instead of
2595         deriving from SkBitmap. All dependent code updated to access the member
2596         instead of calling SkBitmap methods on NativeImageSkia objects. This
2597         may or may not fix the memory leak, but it's definitely a bug that could
2598         cause memory leaks.
2599
2600         * platform/chromium/DragImageChromiumSkia.cpp:
2601         (WebCore::createDragImageFromImage):
2602         * platform/graphics/chromium/PlatformImage.cpp:
2603         (WebCore::PlatformImage::updateFromImage):
2604         * platform/graphics/skia/BitmapImageSingleFrameSkia.h:
2605         (WebCore::BitmapImageSingleFrameSkia::currentFrameHasAlpha):
2606         (WebCore::BitmapImageSingleFrameSkia::size):
2607         (WebCore::BitmapImageSingleFrameSkia::notSolidColor):
2608         * platform/graphics/skia/GraphicsContext3DSkia.cpp:
2609         (WebCore::GraphicsContext3D::getImageData):
2610         * platform/graphics/skia/ImageSkia.cpp:
2611         (WebCore::paintSkBitmap):
2612         (WebCore::Image::drawPattern):
2613         (WebCore::BitmapImage::checkForSolidColor):
2614         * platform/graphics/skia/NativeImageSkia.cpp:
2615         (WebCore::NativeImageSkia::NativeImageSkia):
2616         (WebCore::NativeImageSkia::decodedSize):
2617         (WebCore::NativeImageSkia::resizedBitmap):
2618         * platform/graphics/skia/NativeImageSkia.h:
2619         (WebCore::NativeImageSkia::bitmap):
2620         * platform/graphics/skia/PatternSkia.cpp:
2621         (WebCore::Pattern::platformPattern):
2622         * platform/image-decoders/ImageDecoder.h:
2623         (WebCore::ImageFrame::getAddr):
2624         * platform/image-decoders/skia/ImageDecoderSkia.cpp:
2625         (WebCore::ImageFrame::operator=):
2626         (WebCore::ImageFrame::clearPixelData):
2627         (WebCore::ImageFrame::zeroFillPixelData):
2628         (WebCore::ImageFrame::copyBitmapData):
2629         (WebCore::ImageFrame::setSize):
2630         (WebCore::ImageFrame::hasAlpha):
2631         (WebCore::ImageFrame::setHasAlpha):
2632         (WebCore::ImageFrame::width):
2633         (WebCore::ImageFrame::height):
2634
2635 2011-08-25  Sheriff Bot  <webkit.review.bot@gmail.com>
2636
2637         Unreviewed, rolling out r93774.
2638         http://trac.webkit.org/changeset/93774
2639         https://bugs.webkit.org/show_bug.cgi?id=66945
2640
2641         It broke 26 tests on the Qt bot (Requested by ossy on
2642         #webkit).
2643
2644         * html/canvas/CanvasRenderingContext2D.cpp:
2645         (WebCore::CanvasRenderingContext2D::stroke):
2646         * platform/graphics/qt/PathQt.cpp:
2647         (WebCore::Path::boundingRect):
2648
2649 2011-08-25  Andrey Kosyakov  <caseq@chromium.org>
2650
2651         Web Inspector: [refactoring] use PopoverHelper to implement popup in the SourceFrame
2652         https://bugs.webkit.org/show_bug.cgi?id=66858
2653
2654         Reviewed by Pavel Feldman.
2655
2656         * inspector/front-end/DetailedHeapshotView.js:
2657         (WebInspector.DetailedHeapshotView.prototype._showStringContentPopover):
2658         * inspector/front-end/NetworkPanel.js:
2659         (WebInspector.NetworkLogView.prototype.initializeView):
2660         (WebInspector.NetworkLogView.prototype.willHide):
2661         (WebInspector.NetworkLogView.prototype._reset):
2662         (WebInspector.NetworkLogView.prototype.switchToBriefView):
2663         (WebInspector.NetworkLogView.prototype._showPopover):
2664         * inspector/front-end/Popover.js:
2665         (WebInspector.Popover):
2666         (WebInspector.Popover.prototype.show):
2667         (WebInspector.Popover.prototype.dispose):
2668         (WebInspector.PopoverHelper):
2669         (WebInspector.PopoverHelper.prototype._mouseMove.doHide):
2670         (WebInspector.PopoverHelper.prototype._mouseMove):
2671         (WebInspector.PopoverHelper.prototype.hidePopover):
2672         (WebInspector.PopoverHelper.prototype._hidePopover):
2673         (WebInspector.PopoverHelper.prototype._mouseHover):
2674         (WebInspector.PopoverHelper.prototype._killHidePopupTimer):
2675         * inspector/front-end/SourceFrame.js:
2676         (WebInspector.SourceFrame.prototype.willHide):
2677         (WebInspector.SourceFrame.prototype._initializeTextViewer):
2678         (WebInspector.SourceFrame.prototype._scroll):
2679         (WebInspector.SourceFrame.prototype._mouseDown):
2680         (WebInspector.SourceFrame.prototype._onHidePopover):
2681         (WebInspector.SourceFrame.prototype._shouldShowPopover):
2682         (WebInspector.SourceFrame.prototype._getPopoverAnchor):
2683         (WebInspector.SourceFrame.prototype._highlightExpression):
2684         (WebInspector.SourceFrame.prototype._onShowPopover.showObjectPopover):
2685         (WebInspector.SourceFrame.prototype._onShowPopover):
2686         * inspector/front-end/TimelinePanel.js:
2687         (WebInspector.TimelinePanel):
2688         (WebInspector.TimelinePanel.prototype._showPopover):
2689         (WebInspector.TimelinePanel.prototype._closeRecordDetails):
2690
2691 2011-08-25  Pavel Feldman  <pfeldman@google.com>
2692
2693         [Qt] REGRESSION(93769): inspector/console/console-tests.html fails
2694         https://bugs.webkit.org/show_bug.cgi?id=66930
2695
2696         Reviewed by Yury Semikhatsky.
2697
2698         Test: inspector/console/console-repeat-count.html
2699
2700         * inspector/front-end/ConsoleModel.js:
2701         (WebInspector.ConsoleModel):
2702         (WebInspector.ConsoleModel.prototype.addMessage):
2703         (WebInspector.ConsoleModel.prototype.clearMessages):
2704         (WebInspector.ConsoleModel.prototype.interruptRepeatCount):
2705         (WebInspector.ConsoleModel.prototype._messageRepeatCountUpdated):
2706         (WebInspector.ConsoleDispatcher.prototype.messageRepeatCountUpdated):
2707         * inspector/front-end/ConsoleView.js:
2708         (WebInspector.ConsoleView.prototype._consoleMessageAdded):
2709         * inspector/front-end/inspector.js:
2710
2711 2011-08-25  Mikhail Naganov  <mnaganov@chromium.org>
2712
2713         Chromium: expose MemoryCache::prune and FontCache::purgeInactiveFontData.
2714         https://bugs.webkit.org/show_bug.cgi?id=66132
2715
2716         Reviewed by Tony Gentilcore.
2717
2718         * loader/cache/MemoryCache.cpp:
2719         (WebCore::MemoryCache::prune):
2720         (WebCore::MemoryCache::pruneToPercentage):
2721         * loader/cache/MemoryCache.h: Methods moved from .h to .cpp to work around compilation problem with the Win Chromium port.
2722
2723 2011-08-25  Sheriff Bot  <webkit.review.bot@gmail.com>
2724
2725         Unreviewed, rolling out r93771.
2726         http://trac.webkit.org/changeset/93771
2727         https://bugs.webkit.org/show_bug.cgi?id=66933
2728
2729         Broke css3/font-feature-settings-rendering.html on chromium
2730         mac 10.5 (Requested by podivilov on #webkit).
2731
2732         * platform/graphics/mac/FontCustomPlatformData.cpp:
2733         (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
2734         (WebCore::createFontCustomPlatformData):
2735         * platform/graphics/mac/FontCustomPlatformData.h:
2736         (WebCore::FontCustomPlatformData::FontCustomPlatformData):
2737
2738 2011-08-23  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
2739
2740         [Qt][WK2] Drive tiling from the WebProcess and reuse TiledBackingStore.
2741         https://bugs.webkit.org/show_bug.cgi?id=66771
2742
2743         Reviewed by Tor Arne Vestbø.
2744
2745         We need the tiling logic to be moved to the web process to allow invalidated tile rects to be
2746         rendered with the same layout. This also allows the web process to render tiles into
2747         buffers readable directly by the GPU (on supported platforms). We also take the opportunity
2748         to use the TiledBackingStore in WebCore to have only one tiling implementation.
2749
2750         Before this patch:
2751         - TiledDrawingAreaProxy manages tiles from the UI process.
2752         - TiledDrawingArea received rendering requests for a rect and returns the result
2753           to the proxy through shared memory.
2754
2755         After this patch:
2756         - TiledDrawingArea uses a TiledBackingStore to manage tiles from the web process.
2757         - TiledBackingStoreRemoteTile forwards tile creations, update and removals to the proxy.
2758         - TiledDrawingAreaProxy updates the scene graph directly from requests.
2759
2760         It also implements tile buffer swapping correctly in SGTileNode, triggered by the DidRenderFrame message.
2761         Render throttling is implemented by waiting in TiledDrawingArea for the UI process to
2762         notify us when the last rendered frame is ready to make it to the screen.
2763         TiledDrawingAreaTileSets have been replaced by using two instances of TiledBackingStore instead.
2764
2765         * platform/graphics/TiledBackingStore.cpp:
2766         (WebCore::TiledBackingStore::updateTileBuffers):
2767         (WebCore::TiledBackingStore::coverageRatio):
2768         (WebCore::TiledBackingStore::startTileBufferUpdateTimer):
2769         * platform/graphics/TiledBackingStore.h:
2770         * platform/graphics/TiledBackingStoreClient.h:
2771         (WebCore::TiledBackingStoreClient::tiledBackingStoreIsUpdatingAllowed):
2772
2773 2011-08-23  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
2774
2775         TiledBackingStore: Untie the tile implementation from the platform.
2776         https://bugs.webkit.org/show_bug.cgi?id=66760
2777
2778         Reviewed by Kenneth Rohde Christiansen.
2779
2780         Make the Tile class polymorphic and introduce TiledBackingStoreBackend as a Tile factory.
2781
2782         * platform/graphics/Tile.h:
2783         (WebCore::Tile::~Tile):
2784         * platform/graphics/TiledBackingStore.cpp:
2785         (WebCore::TiledBackingStore::TiledBackingStore):
2786         (WebCore::TiledBackingStore::paint):
2787         (WebCore::TiledBackingStore::createTiles):
2788         * platform/graphics/TiledBackingStore.h:
2789         (WebCore::TiledBackingStore::client):
2790         * platform/graphics/TiledBackingStoreBackend.h: Added.
2791         (WebCore::TiledBackingStoreBackend::create):
2792         (WebCore::TiledBackingStoreBackend::~TiledBackingStoreBackend):
2793         (WebCore::TiledBackingStoreBackend::TiledBackingStoreBackend):
2794         * platform/graphics/qt/TileQt.cpp:
2795         (WebCore::TileQt::TileQt):
2796         (WebCore::TileQt::~TileQt):
2797         (WebCore::TileQt::isDirty):
2798         (WebCore::TileQt::isReadyToPaint):
2799         (WebCore::TileQt::invalidate):
2800         (WebCore::TileQt::updateBackBuffer):
2801         (WebCore::TileQt::swapBackBufferToFront):
2802         (WebCore::TileQt::paint):
2803         (WebCore::TiledBackingStoreBackend::paintCheckerPattern):
2804         (WebCore::TiledBackingStoreBackend::createTile):
2805         * platform/graphics/qt/TileQt.h: Copied from Source/WebCore/platform/graphics/Tile.h.
2806         (WebCore::TileQt::create):
2807         (WebCore::TileQt::coordinate):
2808         (WebCore::TileQt::rect):
2809
2810 2011-08-25  Andreas Kling  <kling@webkit.org>
2811
2812         [Qt] Path::boundingRect() is unnecessarily slow.
2813         https://bugs.webkit.org/show_bug.cgi?id=66854
2814
2815         Reviewed by Benjamin Poulain.
2816
2817         * html/canvas/CanvasRenderingContext2D.cpp:
2818         (WebCore::CanvasRenderingContext2D::stroke): Remove Qt-specific optimization
2819         since calling Path::boundingRect() will now do exactly the same thing.
2820         * platform/graphics/qt/PathQt.cpp:
2821         (WebCore::Path::boundingRect): Return QPainterPath::controlPointRect() since
2822         that is much faster than computing the (precise) QPainterPath::boundingRect()
2823         and Path::boundingRect() is not expected to be 100% precise anyway.
2824
2825 2011-08-25  Yuta Kitamura  <yutak@chromium.org>
2826
2827         WebSocket: Queue messages to be sent
2828         https://bugs.webkit.org/show_bug.cgi?id=66298
2829
2830         Reviewed by Kent Tamura.
2831
2832         Blobs must be read asynchronously and thus cannot be sent immediately. Therefore, we need to
2833         create a queue of messages to be sent in order to handle pending requests.
2834
2835         No new tests. Strictly speaking, there is a small change in behavior but it is hard to
2836         reproduce in tests. See description of WebSocketChannel::send below.
2837
2838         * websockets/WebSocketChannel.cpp:
2839         (WebCore::WebSocketChannel::WebSocketChannel):
2840         (WebCore::WebSocketChannel::send):
2841         Now, this function always returns true if hybi-10 protocol is selected. The impact of this change
2842         should be minimum, because the current WebSocket API defines the return type of WebSocket.send()
2843         is void (see also bug 65850).
2844         It's hard to make SocketStreamHandle::send() fail deliberately, therefore it's difficult to write
2845         a test to detect this behavior change.
2846         (WebCore::WebSocketChannel::didCloseSocketStream):
2847         (WebCore::WebSocketChannel::startClosingHandshake):
2848         (WebCore::WebSocketChannel::processFrame):
2849         (WebCore::WebSocketChannel::enqueueTextFrame):
2850         (WebCore::WebSocketChannel::enqueueRawFrame):
2851         (WebCore::WebSocketChannel::processOutgoingFrameQueue):
2852         (WebCore::WebSocketChannel::abortOutgoingFrameQueue):
2853         * websockets/WebSocketChannel.h:
2854
2855 2011-08-24  Alexander Pavlov  <apavlov@chromium.org>
2856
2857         Web Inspector: Directional arrow on element info box looks terrible
2858         https://bugs.webkit.org/show_bug.cgi?id=66819
2859
2860         Beautify the tooltip arrow, give it a better alignment in some edge cases,
2861         and fix the tooltip font on Macs.
2862
2863         Reviewed by Pavel Feldman.
2864
2865         * inspector/DOMNodeHighlighter.cpp:
2866
2867 2011-08-25  Jeremy Moskovich  <jeremy@chromium.org>
2868
2869         Remove ATSFont*() functions in favor of CGFont in FontCustomPlatformData.cpp
2870         https://bugs.webkit.org/show_bug.cgi?id=66629
2871
2872         As of r72774 and dropping support for OS X 10.4, we can safely
2873         remove the ATS APIs from FontCustomPlatformData.cpp in favor of just the
2874         CGFont code.
2875
2876         This change is motivated by a bug in ATSFontDeactivite() on 10.7 which
2877         affects the Chromium port, due to its compiling once against the 10.5
2878         SDK for all platforms - See crbug.com/93191 or rdar://9976774 .
2879
2880         Reviewed by Dan Bernstein.
2881
2882         No new tests - covered by existing tests.
2883
2884         * platform/graphics/mac/FontCustomPlatformData.cpp:
2885         (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
2886         (WebCore::createFontCustomPlatformData):
2887         * platform/graphics/mac/FontCustomPlatformData.h:
2888         (WebCore::FontCustomPlatformData::FontCustomPlatformData):
2889
2890 2011-08-25  Pavel Feldman  <pfeldman@google.com>
2891
2892         Not reviewed: rollout r93768 for breaking build.
2893
2894         * inspector/DOMNodeHighlighter.cpp:
2895
2896 2011-08-24  Pavel Feldman  <pfeldman@google.com>
2897
2898         Web Inspector: split ConsoleView into the View and the Model.
2899         https://bugs.webkit.org/show_bug.cgi?id=66861
2900
2901         Reviewed by Yury Semikhatsky.
2902
2903         * WebCore.gypi:
2904         * WebCore.vcproj/WebCore.vcproj:
2905         * inspector/compile-front-end.sh:
2906         * inspector/front-end/BreakpointManager.js:
2907         * inspector/front-end/ConsoleMessage.js:
2908         (WebInspector.ConsoleMessage.prototype._format):
2909         * inspector/front-end/ConsoleModel.js: Added.
2910         (WebInspector.ConsoleModel):
2911         (WebInspector.ConsoleModel.prototype._setConsoleMessageExpiredCount):
2912         (WebInspector.ConsoleModel.prototype.addMessage):
2913         (WebInspector.ConsoleModel.prototype._incrementErrorWarningCount):
2914         (WebInspector.ConsoleModel.prototype.requestClearMessages):
2915         (WebInspector.ConsoleModel.prototype.clearMessages):
2916         (WebInspector.ConsoleDispatcher):
2917         (WebInspector.ConsoleDispatcher.prototype.messageAdded):
2918         (WebInspector.ConsoleDispatcher.prototype.messageRepeatCountUpdated):
2919         * inspector/front-end/ConsolePanel.js:
2920         (WebInspector.ConsolePanel):
2921         (WebInspector.ConsolePanel.prototype.performSearch):
2922         * inspector/front-end/ConsoleView.js:
2923         (WebInspector.ConsoleView):
2924         (WebInspector.ConsoleView.prototype._consoleMessageAdded):
2925         (WebInspector.ConsoleView.prototype._appendConsoleCommand):
2926         (WebInspector.ConsoleView.prototype._appendConsoleCommandResult):
2927         (WebInspector.ConsoleView.prototype._appendConsoleMessage):
2928         (WebInspector.ConsoleView.prototype._consoleCleared):
2929         (WebInspector.ConsoleView.prototype._registerShortcuts):
2930         (WebInspector.ConsoleView.prototype._requestClearMessages):
2931         * inspector/front-end/DebuggerModel.js:
2932         * inspector/front-end/DebuggerPresentationModel.js:
2933         (WebInspector.DebuggerPresentationModel):
2934         (WebInspector.DebuggerPresentationModel.prototype.addSourceMappingListener):
2935         (WebInspector.DebuggerPresentationModel.prototype.removeSourceMappingListener):
2936         * inspector/front-end/NetworkLog.js: Copied from Source/WebCore/inspector/front-end/externs.js.
2937         (WebInspector.NetworkLog):
2938         (WebInspector.NetworkLog.prototype.get resources):
2939         (WebInspector.NetworkLog.prototype._frameNavigated):
2940         (WebInspector.NetworkLog.prototype._onResourceStarted):
2941         * inspector/front-end/NetworkManager.js:
2942         (WebInspector.NetworkDispatcher.prototype._updateResourceWithResponse):
2943         (WebInspector.NetworkDispatcher.prototype._mimeTypeIsConsistentWithType):
2944         * inspector/front-end/Resource.js:
2945         (WebInspector.Resource.prototype.set finished):
2946         * inspector/front-end/ResourceTreeModel.js:
2947         (WebInspector.ResourceTreeModel):
2948         * inspector/front-end/SourceFile.js:
2949         (WebInspector.RawSourceCode.prototype._scriptForRawLocation):
2950         (WebInspector.ScriptContentProvider.prototype.requestContent):
2951         (WebInspector.ConcatenatedScriptsContentProvider.prototype._concatenateScriptsContent.appendChunk):
2952         (WebInspector.ConcatenatedScriptsContentProvider.prototype._concatenateScriptsContent):
2953         * inspector/front-end/UISourceCode.js:
2954         (WebInspector.ContentProvider):
2955         (WebInspector.ContentProvider.prototype.requestContent):
2956         * inspector/front-end/WatchExpressionsSidebarPane.js:
2957         (WebInspector.WatchExpressionsSection.prototype.update):
2958         * inspector/front-end/WebKit.qrc:
2959         * inspector/front-end/externs.js:
2960         (WebInspector.linkifyURLAsNode):
2961         (WebInspector.formatLinkText):
2962         * inspector/front-end/inspector.html:
2963         * inspector/front-end/inspector.js:
2964         (WebInspector._createGlobalStatusBarItems):
2965         (WebInspector._updateErrorAndWarningCounts):
2966         (WebInspector.showConsole):
2967
2968 2011-08-24  Alexander Pavlov  <apavlov@chromium.org>
2969
2970         Web Inspector: Directional arrow on element info box looks terrible
2971         https://bugs.webkit.org/show_bug.cgi?id=66819
2972
2973         Beautify the tooltip arrow, give it a better alignment in some edge cases,
2974         and fix the tooltip font on Macs.
2975
2976         Reviewed by Pavel Feldman.
2977
2978         * inspector/DOMNodeHighlighter.cpp:
2979
2980 2011-08-25  Yuta Kitamura  <yutak@chromium.org>
2981
2982         Let MessageEvent.data hold SerializedScriptValue or String selectively
2983         https://bugs.webkit.org/show_bug.cgi?id=66841
2984
2985         Reviewed by Adam Barth.
2986
2987         MessageEvent from WebSocket contains a String in its "data" attribute, but it does not have
2988         to be serialized.
2989
2990         No new tests are added, because this is refactoring and the behavior should not change.
2991
2992         * bindings/js/JSMessageEventCustom.cpp:
2993         (WebCore::JSMessageEvent::data):
2994         To call putAnonymousValue(), "this" needs to be converted to non-const using const_cast<>.
2995         (WebCore::JSMessageEvent::initMessageEvent):
2996         Update the cache value as well.
2997         * bindings/v8/custom/V8MessageEventCustom.cpp:
2998         (WebCore::V8MessageEvent::dataAccessorGetter):
2999         ForceSet() is used to cache a value. This is the same as what the code generated by
3000         CodeGeneratorV8 does.
3001         (WebCore::V8MessageEvent::initMessageEventCallback):
3002         * dom/MessageEvent.cpp:
3003         (WebCore::MessageEvent::MessageEvent):
3004         (WebCore::MessageEvent::initMessageEvent):
3005         (WebCore::MessageEvent::data):
3006         This is only used within the Objective-C bindings (JSC and V8 have the custom functions).
3007         Since Objective-C code generator does not support [CustomGetter] IDL attribute, there is
3008         no good way to return a variant value for Objective-C bindings.
3009         * dom/MessageEvent.h:
3010         (WebCore::MessageEvent::create):
3011         (WebCore::MessageEvent::dataType):
3012         (WebCore::MessageEvent::dataAsSerializedScriptValue):
3013         (WebCore::MessageEvent::dataAsString):
3014         * dom/MessageEvent.idl:
3015         * websockets/WebSocket.cpp:
3016         (WebCore::WebSocket::didReceiveMessage):
3017         Construct a MessageEvent without serializing the received message.
3018
3019 2011-08-25  MORITA Hajime  <morrita@google.com>
3020
3021         Unreviewed, rolling out r93762.
3022         http://trac.webkit.org/changeset/93762
3023         https://bugs.webkit.org/show_bug.cgi?id=66756
3024
3025         IndexedDb tests crash
3026
3027         * WebCore.gypi:
3028         * WebCore.pro:
3029         * bindings/generic/EventConstructors.h: Removed.
3030         * bindings/v8/OptionsObject.cpp:
3031         * bindings/v8/OptionsObject.h:
3032         * bindings/v8/custom/V8EventConstructors.cpp: Removed.
3033         * dom/Event.cpp:
3034         * dom/Event.h:
3035         (WebCore::Event::create):
3036         * dom/Event.idl:
3037
3038 2011-08-24  Kentaro Hara  <haraken@google.com>
3039
3040         Implement an Event constructor.
3041         https://bugs.webkit.org/show_bug.cgi?id=66756
3042
3043         Reviewed by Adam Barth.
3044
3045         The spec of the Event constructor is here:
3046         http://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html#concept-event-constructor.
3047         This patch added the Event constructor to EventConstructors.h using
3048         JavaScript implementation-independent macros. This patch also added the V8
3049         implementation of these macros to V8EventConstructors.cpp.
3050
3051         The bug 63878 has been implementing the Event constructors for JSC.
3052         Our plan is to first implement all the Event constructors for V8
3053         using EventConstructors.h proposed in the JSC patch, and then merge
3054         the JSC patch with these V8 patches. In any case, we are going to split
3055         the patches for V8 and those for JSC in order to avoid hard regression.
3056
3057         Test: fast/events/event-constructors.html
3058
3059         * WebCore.gypi: Added V8EventConstructors.cpp.
3060         * WebCore.pro: Added V8EventConstructors.cpp.
3061         * bindings/generic/EventConstructors.h: Added. The Event constructor. This is written using JavaScript implementation-independent macros. The V8 implementation of these macros is written in bindings/v8/custom/V8EventConstructors.cpp.
3062         * bindings/v8/OptionsObject.cpp:
3063         (WebCore::OptionsObject::getKeyDouble): Returns the value of a given key of type double.
3064         (WebCore::OptionsObject::getKey): Returns true whenever the given key is found, even if the value is null or undefined.
3065         * bindings/v8/OptionsObject.h:
3066         (WebCore::OptionsObject::getKeyValue): Returns the value of the given key. We need to overload getKeyValue() for all types required to EventConfiguration members.
3067         * bindings/v8/custom/V8EventConstructors.cpp: Added. Implemented macros used in EventConstructors.h.
3068         (WebCore::constructV8Event): The Event constructor.
3069         * dom/Event.cpp:
3070         (WebCore::EventConfiguration::EventConfiguration): A constructor of EventConfiguration.
3071         (WebCore::Event::Event): A constructor of the Event class.
3072         * dom/Event.h: Added EventConfiguration, which manages attributes of the Event class.
3073         (WebCore::Event::create): A factory method of the Event class with EventConfiguration.
3074         * dom/Event.idl: Added 'CanBeConstructed' and 'V8CustomConstructor'.
3075
3076 2011-08-24  Philippe Normand  <pnormand@igalia.com>
3077
3078         [GTK] bump GStreamer requirement to 0.10.30
3079         https://bugs.webkit.org/show_bug.cgi?id=66860
3080
3081         Reviewed by Martin Robinson.
3082
3083         Use fast element linking by default.
3084
3085         * platform/graphics/gstreamer/GStreamerGWorld.cpp:
3086         (WebCore::GStreamerGWorld::enterFullscreen):
3087         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
3088         (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
3089
3090 2011-08-24  James Robinson  <jamesr@chromium.org>
3091
3092         Some layerTreeAsText compositing tests are flaky
3093         https://bugs.webkit.org/show_bug.cgi?id=66913
3094
3095         Reviewed by Simon Fraser.
3096
3097         Remove compositingLayerUpdatePending() and unconditionally update compositing layers when
3098         RenderLayerCompositor::layerTreeAsText().  compositingLayerUpdatePending() was only used by test code and is
3099         unreliable.
3100
3101         Covered by compositing/ layerTreeAsText tests.
3102
3103         * rendering/RenderLayerCompositor.cpp:
3104         (WebCore::RenderLayerCompositor::layerTreeAsText):
3105         * rendering/RenderLayerCompositor.h:
3106
3107 2011-08-24  Kentaro Hara  <haraken@google.com>
3108
3109         Implement a keypath parser strictly following the specification
3110         https://bugs.webkit.org/show_bug.cgi?id=62288
3111
3112         Reviewed by Tony Chang.
3113
3114         Implemented a keypath parser that accepts either an empty string, a JavaScript
3115         identifier, or multiple JavaScript identifiers separated by periods.
3116         We fixed createObjectStore() and createIndex() so that they parse and check
3117         their |keypath| argument and return an appropriate exception if the |keypath|
3118         is not valid. We also added unit tests for the new keypath parser in keypath-basics.html.
3119
3120         Tests: storage/indexeddb/keypath-fetch-key.html
3121                storage/indexeddb/keypath-basics.html
3122
3123         * bindings/v8/IDBBindingUtilities.cpp:
3124         (WebCore::createIDBKeyFromSerializedValueAndKeyPath): Replaced IDBKeyPathElement with String
3125         (WebCore::injectIDBKeyIntoSerializedValue): Replaced IDBKeyPathElement with String
3126         * bindings/v8/IDBBindingUtilities.h:
3127         * bindings/v8/OptionsObject.cpp:
3128         (WebCore::OptionsObject::getKeyStringWithUndefinedOrNullCheck): Returns false when a given value is null or undefined
3129         (WebCore::OptionsObject::getKey): Removed undefined check
3130         * storage/IDBDatabase.cpp:
3131         (WebCore::IDBDatabase::createObjectStore): Checks if a |keypath| argument is valid, and returns a NON_TRANSIENT_ERR if it is not valid
3132         * storage/IDBDatabaseBackendImpl.cpp:
3133         (WebCore::IDBDatabaseBackendImpl::createObjectStore): Removed null check of a keypath
3134         * storage/IDBKeyPath.cpp:
3135         (WebCore::IDBKeyPathLexer::currentElement): Part of the keypath parser
3136         (WebCore::IDBKeyPathLexer::lex): Part of the keypath parser
3137         (WebCore::IDBKeyPathLexer::lexIdentifier): Part of the keypath parser
3138         (WebCore::IDBIsValidKeyPath): Checks if a keypath is valid
3139         (WebCore::IDBParseKeyPath): Part of the keypath parser
3140         * storage/IDBKeyPath.h: Replaced IDBKeyPathElement with String
3141         * storage/IDBObjectStore.cpp:
3142         (WebCore::IDBObjectStore::createIndex): Checks if a |keypath| argument is valid, and returns a NON_TRANSIENT_ERR if it is not valid
3143         * storage/IDBObjectStore.idl:
3144
3145 2011-08-24  Eric Uhrhane  <ericu@chromium.org>
3146
3147         Reviewed by Adam Barth.
3148
3149         [filesystem/Chromium] Filesystem paths need proper URL escaping
3150         https://bugs.webkit.org/show_bug.cgi?id=62811
3151
3152         Fix http://code.google.com/p/chromium/issues/detail?id=78860 by making
3153         KURLChromium.cpp's escaping code actually work.
3154
3155         Make encodeWithURLEscapeSequences call into googleurl to do proper
3156         escaping.  Tested in WebKit/chromium/tests/KURLTest.cpp.
3157         * platform/KURLGoogle.cpp:
3158         (WebCore::encodeWithURLEscapeSequences):
3159
3160 2011-08-24  Chris Palmer  <palmer@google.com>
3161
3162         Resolve potential integer overflow in memory allocation, and ensure
3163         that allocation succeeds.
3164
3165         Reviewed by Kenneth Russell.
3166
3167         * platform/audio/AudioArray.h:
3168         (WebCore::AudioArray::allocate): Check for integer overflow.
3169         (WebCore::AudioArray::at): Document the safety assertion.
3170         (WebCore::AudioArray::zero): Document the safety assertion.
3171         (WebCore::AudioArray::zeroRange): Document the safety assertion.
3172         (WebCore::AudioArray::copyToRange): Document the safety assertion.
3173
3174 2011-08-24  Raphael Kubo da Costa  <kubo@profusion.mobi>
3175
3176         [EFL] Fix build with ENABLE_GEOLOCATION.
3177         https://bugs.webkit.org/show_bug.cgi?id=66881
3178
3179         Use adoptPtr() to create a new GeolocationService instance, otherwise
3180         the build will fail when creating the PassOwnPtr object.
3181
3182         * platform/efl/GeolocationServiceEfl.cpp:
3183         (WebCore::GeolocationServiceEfl::create):
3184
3185 2011-08-24  Raphael Kubo da Costa  <kubo@profusion.mobi>
3186
3187         [CMake] Fix build with ENABLE_BLOB or ENABLE_FILE_SYSTEM.
3188         https://bugs.webkit.org/show_bug.cgi?id=66880
3189
3190         Generate and build some additional files required by these options.
3191
3192         No new tests, as this is a build fix for some build options.
3193
3194         * CMakeLists.txt:
3195
3196 2011-08-24  Iain Merrick  <husky@google.com>
3197
3198         [chromium] Don't call glDeleteTexture(0) in TextureManager
3199         https://bugs.webkit.org/show_bug.cgi?id=66862
3200
3201         Delete(0) is allowed in standard OpenGL, but not in Chrome.
3202         See http://code.google.com/p/chromium/issues/detail?id=85268
3203
3204         Reviewed by James Robinson.
3205
3206         * platform/graphics/chromium/TextureManager.cpp:
3207         (WebCore::TextureManager::deleteEvictedTextures):
3208
3209 2011-08-24  Adrienne Walker  <enne@google.com>
3210
3211         [chromium] Properly initialize CCTiledLayerImpl::m_skipsDraw
3212         https://bugs.webkit.org/show_bug.cgi?id=66889
3213
3214         Reviewed by James Robinson.
3215
3216         * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
3217         (WebCore::CCTiledLayerImpl::CCTiledLayerImpl):
3218
3219 2011-08-24  Tom Sepez  <tsepez@chromium.org>
3220
3221         chromium WebFrameImpl - don't load javascript URLs against chrome internal
3222         pages.  Adds a mechanism for registering sensitive schemes which should 
3223         not be subject to manipulation by javascript urls typed into a location bar
3224         or, more importantly, their bookmarklet equivalents.
3225         https://bugs.webkit.org/show_bug.cgi?id=66720
3226
3227         Reviewed by Adam Barth.
3228
3229         Test: Chromium WebKit API unit test in chromium specific directory.
3230         
3231         * platform/SchemeRegistry.cpp:
3232         (WebCore::notAllowingJavascriptURLsSchemes):
3233         (WebCore::SchemeRegistry::registerURLSchemeAsNotAllowingJavascriptURLs):
3234         (WebCore::SchemeRegistry::shouldTreatURLSchemeAsNotAllowingJavascriptURLs):
3235         * platform/SchemeRegistry.h:
3236
3237 2011-08-24  Alexandru Chiculita  <achicu@adobe.com>
3238
3239         [CSSRegions] Fix Element::getBoundingClientRect and Element::getClientRects for content flow
3240         https://bugs.webkit.org/show_bug.cgi?id=66641
3241
3242         Original author of the patch is Mihnea Ovidenie <mihnea@adobe.com>.
3243
3244         Redirected the mapLocalToContainer method to the appropriate RenderRegion.
3245
3246         Note: RenderObject::absoluteQuads method needs some refactor to support multiple regions,
3247         will do that in a separate bug.
3248
3249         Reviewed by David Hyatt.
3250
3251         Tests: fast/regions/flowed-content-bounding-client-rect-horizontal-bt.html
3252                fast/regions/flowed-content-bounding-client-rect-vertical-rl.html
3253                fast/regions/flowed-content-bounding-client-rect-vertical.html
3254                fast/regions/flowed-content-bounding-client-rect.html
3255                fast/regions/flowed-content-transform-bounding-client-rect.html
3256
3257         * rendering/RenderBox.cpp:
3258         (WebCore::RenderBox::mapLocalToContainer):
3259         * rendering/RenderFlowThread.cpp:
3260         (WebCore::RenderFlowThread::renderRegionForLine):
3261         (WebCore::RenderFlowThread::mapFromFlowToRegion):
3262         * rendering/RenderFlowThread.h:
3263
3264 2011-08-24  Alok Priyadarshi  <alokp@chromium.org>
3265
3266         [chromium] Root layer is not updated when only a portion of tile is updated
3267         https://bugs.webkit.org/show_bug.cgi?id=66506
3268
3269         This only happened in the accelerated path which changes stencil state.
3270         Incorrect stencil state was used to draw the root layer.
3271
3272         Reviewed by James Robinson.
3273
3274         Test: compositing/overflow/overflow-scroll.html (existing)
3275
3276         * platform/graphics/chromium/LayerRendererChromium.cpp:
3277         (WebCore::LayerRendererChromium::drawLayersInternal):
3278         * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
3279         (WebCore::LayerTextureUpdaterSkPicture::updateTextureRect):
3280
3281 2011-08-24  Nate Chapin  <japhet@chromium.org>
3282
3283         Fix an intermittent crash in EventSource, when a
3284         reconnect timer triggers after a navigation
3285         away from the current page begins.
3286         https://bugs.webkit.org/show_bug.cgi?id=45202
3287
3288         Reviewed by Alexey Proskuryakov.
3289
3290         Test: http/tests/eventsource/eventsource-reconnect-during-navigate-crash.html
3291
3292         * page/EventSource.cpp:
3293         (WebCore::EventSource::connect): Don't set m_requestInFlight
3294             to true if ThreadableLoader::create() failed.
3295
3296 2011-08-24  Mike Reed  <reed@google.com>
3297
3298         Change clip routine to promote the clipbounds up to (local) floats and then perform the intersection,
3299         rather than rounding the srcRect down to integers.
3300         https://bugs.webkit.org/show_bug.cgi?id=66810
3301
3302         Reviewed by Kenneth Russell.
3303
3304         No new tests. Existing tests that resize images will exercise this code path
3305
3306         * platform/graphics/skia/SkiaUtils.cpp:
3307         (WebCore::ClipRectToCanvas):
3308
3309 2011-08-24  Alexandru Chiculita  <achicu@adobe.com>
3310
3311         [CSSRegions] RenderRegion is not used if there's another renderer after it
3312         https://bugs.webkit.org/show_bug.cgi?id=66844
3313
3314         There was no call to attachRegion in RenderObjectChildList::insertChildNode, so
3315         the region was not added to the RenderFlowThread.
3316
3317         Reviewed by David Hyatt.
3318
3319         Test: fast/regions/content-flowed-into-regions-dynamically-inserted.html
3320
3321         * rendering/RenderObjectChildList.cpp:
3322         (WebCore::RenderObjectChildList::insertChildNode):
3323
3324 2011-08-24  Sam Weinig  <sam@webkit.org>
3325
3326         JSHTMLImageElement (and associated Node) is abandoned when image load is canceled
3327         <rdar://problem/9925630>
3328         https://bugs.webkit.org/show_bug.cgi?id=66864
3329
3330         Reviewed by Anders Carlsson.
3331
3332         In the JSC bindings, we use HTMLImageElement::hasPendingActivity() (which in turn calls
3333         HTMLImageLoader::haveFiredLoadEvent()) to reason about the liveness of JSHTMLImageElements.
3334         In the case that an image load is canceled, the haveFiredLoadEvent never true, so the
3335         JSHTMLImageElement is kept alive forever (and since it references the global object, it
3336         keeps the entire graph alive as well).
3337
3338         * loader/ImageLoader.cpp:
3339         (WebCore::ImageLoader::notifyFinished):
3340         Set m_firedLoad to true in the case of a canceled load, to reset the state back to
3341         its initial values.
3342
3343 2011-08-24  Tommy Widenflycht  <tommyw@google.com>
3344
3345         MediaStream API: add createObjectURL functionality
3346         https://bugs.webkit.org/show_bug.cgi?id=65925
3347
3348         This patch introduces the functionality for generating the url associated with a MediaStream,
3349         which can then be assigned to the src attribute of the <video> tag for example.
3350
3351         Reviewed by Adam Barth.
3352
3353         * CMakeLists.txt:
3354         * GNUmakefile.list.am:
3355         * WebCore.gypi:
3356         * WebCore.pro:
3357         * WebCore.vcproj/WebCore.vcproj:
3358         * WebCore.xcodeproj/project.pbxproj:
3359         * dom/ScriptExecutionContext.cpp:
3360         (WebCore::ScriptExecutionContext::~ScriptExecutionContext):
3361         (WebCore::ScriptExecutionContext::createPublicBlobURL):
3362         (WebCore::ScriptExecutionContext::revokePublicBlobURL):
3363         * dom/ScriptExecutionContext.h:
3364         * html/DOMURL.cpp:
3365         (WebCore::DOMURL::createObjectURL):
3366         * html/DOMURL.h:
3367         * html/DOMURL.idl:
3368         * platform/MediaStreamRegistry.cpp: Added.
3369         (WebCore::MediaStreamRegistry::registry):
3370         (WebCore::MediaStreamRegistry::registerMediaStreamURL):
3371         (WebCore::MediaStreamRegistry::unregisterMediaStreamURL):
3372         (WebCore::MediaStreamRegistry::mediaStream):
3373         * platform/MediaStreamRegistry.h: Copied from Source/WebCore/html/DOMURL.h.
3374
3375         Tests for the Media Stream API will be provided by the bug 56587, pending enough landed code.
3376
3377 2011-08-23  David Levin  <levin@chromium.org>
3378
3379         MessageEvent.ports shouldn't ever be null.
3380         https://bugs.webkit.org/show_bug.cgi?id=66789
3381
3382         Reviewed by Darin Adler.
3383
3384         * bindings/js/JSMessageEventCustom.cpp:
3385         (WebCore::JSMessageEvent::ports): Never return null.
3386         * bindings/v8/custom/V8MessageEventCustom.cpp:
3387         (WebCore::V8MessageEvent::portsAccessorGetter): Ditto.
3388
3389 2011-08-24  Alexandru Chiculita  <achicu@adobe.com>
3390
3391         https://bugs.webkit.org/show_bug.cgi?id=66799
3392         RenderFlowThread creates a list of child elements, so that it can search
3393         the insertion point of a new element without searching the whole DOM.
3394         The issue is that it used addChild/removeChild, but that wasn't taking care of
3395         elements added in anonymous blocks created inside the RenderFlowThread.
3396
3397         Reviewed by David Hyatt.
3398
3399         Test: fast/regions/flow-anonymous-children.html
3400
3401         * rendering/RenderFlowThread.cpp:
3402         (WebCore::RenderFlowThread::nextRendererForNode):
3403         (WebCore::RenderFlowThread::previousRendererForNode):
3404         (WebCore::RenderFlowThread::addFlowChild):
3405         (WebCore::RenderFlowThread::removeFlowChild):
3406         * rendering/RenderFlowThread.h:
3407         * rendering/RenderObjectChildList.cpp:
3408         (WebCore::renderFlowThreadContainer):
3409         (WebCore::RenderObjectChildList::removeChildNode):
3410         (WebCore::RenderObjectChildList::appendChildNode):
3411         (WebCore::RenderObjectChildList::insertChildNode):
3412
3413 2011-08-24  Pavel Feldman  <pfeldman@google.com>
3414
3415         Web Inspector: Add 9 more javascript files to the compilation.
3416         https://bugs.webkit.org/show_bug.cgi?id=66847
3417
3418         Reviewed by Yury Semikhatsky.
3419
3420         * WebCore.gypi:
3421         * WebCore.vcproj/WebCore.vcproj:
3422         * inspector/compile-front-end.sh:
3423         * inspector/front-end/BreakpointManager.js:
3424         * inspector/front-end/CSSStyleModel.js:
3425         * inspector/front-end/Checkbox.js:
3426         * inspector/front-end/ConsoleMessage.js: Added.
3427         (WebInspector.ConsoleStackFrame):
3428         (WebInspector.ConsoleMessage):
3429         (WebInspector.ConsoleMessage.createTextMessage):
3430         (WebInspector.ConsoleMessage.prototype.get stackTrace):
3431         * inspector/front-end/ConsoleView.js:
3432         (WebInspector.ConsoleView.prototype._registerConsoleDomainDispatcher.dispatcher.messageAdded):
3433         (WebInspector.ConsoleView.prototype._registerConsoleDomainDispatcher.dispatcher.messageRepeatCountUpdated):
3434         * inspector/front-end/CookieParser.js:
3435         * inspector/front-end/DOMAgent.js:
3436         * inspector/front-end/DOMStorage.js:
3437         * inspector/front-end/Database.js:
3438         * inspector/front-end/DebuggerModel.js:
3439         * inspector/front-end/DebuggerPresentationModel.js:
3440         * inspector/front-end/InspectorFrontendHostStub.js:
3441         (WebInspector.isMac):
3442         * inspector/front-end/NetworkManager.js:
3443         * inspector/front-end/RemoteObject.js:
3444         (WebInspector.RemoteObject.prototype.setPropertyValue):
3445         * inspector/front-end/Resource.js:
3446         (WebInspector.Resource):
3447         (WebInspector.Resource.Type.Document.0.Stylesheet.1.Image.2.Font.3.Script.4.XHR.5.WebSocket.7.Other.8.isTextType):
3448         (WebInspector.Resource.Type.toUIString):
3449         (WebInspector.Resource.Type.toString):
3450         (WebInspector.Resource.prototype._checkWarnings):
3451         (WebInspector.ResourceDomainModelBinding):
3452         (WebInspector.ResourceDomainModelBinding.prototype.canSetContent):
3453         (WebInspector.ResourceDomainModelBinding.prototype.setContent):
3454         * inspector/front-end/ResourceCategory.js:
3455         (WebInspector.ResourceCategory):
3456         (WebInspector.ResourceCategory.prototype.toString):
3457         (WebInspector.ResourceCategory.prototype.get title):
3458         * inspector/front-end/ResourceTreeModel.js:
3459         * inspector/front-end/ScriptFormatter.js:
3460         (WebInspector.ScriptFormatter.prototype._didFormatContent):
3461         (WebInspector.FormatterMappingPayload):
3462         * inspector/front-end/TimelineManager.js:
3463         * inspector/front-end/WebKit.qrc:
3464         * inspector/front-end/externs.js:
3465         (console.assert):
3466         (WebInspector.linkifyURLAsNode):
3467         (WebInspector.linkifyStringAsFragment):
3468         (WebInspector.UIString):
3469         (Element.prototype.scrollIntoViewIfNeeded):
3470         * inspector/front-end/inspector.html:
3471         * inspector/front-end/inspector.js:
3472         (WebInspector.UIString):
3473         * inspector/front-end/treeoutline.js:
3474         * inspector/front-end/utilities.js:
3475         * inspector/generate-protocol-externs:
3476
3477 2011-08-24  Pavel Feldman  <pfeldman@google.com>
3478
3479         Web Inspector: extract ConsoleMessage into a separate file.
3480         https://bugs.webkit.org/show_bug.cgi?id=66853
3481
3482         Reviewed by Yury Semikhatsky.
3483
3484         * WebCore.gypi:
3485         * WebCore.vcproj/WebCore.vcproj:
3486         * inspector/front-end/ConsoleMessage.js: Added.
3487         (WebInspector.ConsoleMessage):
3488         (WebInspector.ConsoleMessage.createTextMessage):
3489         (WebInspector.ConsoleMessage.prototype._formatMessage):
3490         (WebInspector.ConsoleMessage.prototype._linkifyLocation):
3491         (WebInspector.ConsoleMessage.prototype._linkifyCallFrame):
3492         (WebInspector.ConsoleMessage.prototype.isErrorOrWarning):
3493         (WebInspector.ConsoleMessage.prototype._format):
3494         (WebInspector.ConsoleMessage.prototype._formatWithSubstitutionString.valueFormatter):
3495         (WebInspector.ConsoleMessage.prototype._formatWithSubstitutionString.append):
3496         (WebInspector.ConsoleMessage.prototype.clearHighlight):
3497         (WebInspector.ConsoleMessage.prototype.highlightSearchResults):
3498         (WebInspector.ConsoleMessage.prototype.matchesRegex):
3499         (WebInspector.ConsoleMessage.prototype.toMessageElement):
3500         (WebInspector.ConsoleMessage.prototype._populateStackTraceTreeElement):
3501         (WebInspector.ConsoleMessage.prototype._updateRepeatCount):
3502         (WebInspector.ConsoleMessage.prototype.toString):
3503         (WebInspector.ConsoleMessage.prototype.isEqual):
3504         (WebInspector.ConsoleMessage.prototype.get stackTrace):
3505         * inspector/front-end/ConsoleView.js:
3506         * inspector/front-end/WebKit.qrc:
3507
3508 2011-08-24  Tatiana Meshkova  <tatiana.meshkova@nokia.com>
3509
3510         Paint SliderTrack and SliderThumb independently.
3511         https://bugs.webkit.org/show_bug.cgi?id=50453
3512         Also fixes https://bugs.webkit.org/show_bug.cgi?id=65456 crash.
3513
3514         Reviewed by Kenneth Rohde Christiansen.
3515
3516         RenderSlider works only with <input type=range>. Nowadays RenderTheme
3517         supports painting of SliderTrack and SliderThumb without range input.
3518         In order to be in sync with other platforms this patch gets rid of
3519         upcasting in RenderThemeQt::paintSliderTrack and allows to paint
3520         SliderTrack and SliderThumb independently.
3521
3522         Test: platform/qt/fast/forms/range/slider-crash.html
3523
3524         * platform/qt/RenderThemeQt.cpp:
3525         (WebCore::RenderThemeQt::paintSliderTrack): Draw SC_SliderGroove.
3526         Allow paintSliderThumb() to care about SC_SliderHandle. We don't need
3527         to setup value and position anymore, since handle is drawn separately.
3528         Draw focus explicitly, since QStyleOptionSlider doesn't allow to focus
3529         on CC_Slider without handle subcontrol.
3530         (WebCore::RenderThemeQt::paintSliderThumb): Draw SC_SliderHandle.
3531
3532 2011-08-23  Pavel Feldman  <pfeldman@google.com>
3533
3534         Web Inspector: annotate and prepare for compilation first 14 JavaScript files within 4 modules.
3535         https://bugs.webkit.org/show_bug.cgi?id=66776
3536
3537         Reviewed by Yury Semikhatsky.
3538
3539         * inspector/compile-front-end.sh:
3540         * inspector/front-end/ContextMenu.js:
3541         * inspector/front-end/DOMAgent.js:
3542         (WebInspector.DOMAgent.prototype._loadNodeAttributes):
3543         (WebInspector.DOMAgent.prototype._childNodeRemoved):
3544         (WebInspector.DOMAgent.prototype._inspectElementRequested):
3545         (WebInspector.DOMDispatcher.prototype.inspectElementRequested):
3546         * inspector/front-end/DebuggerModel.js:
3547         (WebInspector.DebuggerModel.Location):
3548         * inspector/front-end/ElementsPanel.js:
3549         (WebInspector.ElementsPanel):
3550         (WebInspector.ElementsPanel.prototype._inspectElementRequested):
3551         * inspector/front-end/InspectorFrontendHostStub.js:
3552         * inspector/front-end/KeyboardShortcut.js:
3553         * inspector/front-end/Object.js:
3554         (WebInspector.Object.prototype.addEventListener):
3555         (WebInspector.Object.prototype.removeEventListener):
3556         (WebInspector.Object.prototype.hasEventListeners):
3557         * inspector/front-end/Panel.js:
3558         (WebInspector.Panel):
3559         * inspector/front-end/Placard.js:
3560         * inspector/front-end/Popover.js:
3561         (WebInspector.Popover.prototype.show):
3562         * inspector/front-end/ResourcesPanel.js:
3563         (WebInspector.ResourcesPanel):
3564         (WebInspector.StorageCategoryTreeElement):
3565         * inspector/front-end/Script.js:
3566         (WebInspector.Script.prototype.editSource):
3567         * inspector/front-end/ScriptsPanel.js:
3568         * inspector/front-end/Settings.js:
3569         (WebInspector.Settings):
3570         (WebInspector.Settings.prototype.createSetting):
3571         * inspector/front-end/SoftContextMenu.js:
3572         (.WebInspector.SoftContextMenu.prototype._menuItemMouseUp):
3573         (.WebInspector.SoftContextMenu.prototype._triggerAction):
3574         (.WebInspector.SoftContextMenu.prototype._menuKeyDown):
3575         * inspector/front-end/TabbedPane.js:
3576         * inspector/front-end/TextPrompt.js:
3577         * inspector/front-end/UserMetrics.js:
3578         * inspector/front-end/View.js:
3579         * inspector/front-end/externs.js:
3580         (JSON.parse):
3581         (JSON.stringify):
3582         * inspector/front-end/inspector.js:
3583         ():
3584         * inspector/generate-protocol-externs:
3585
3586 2011-08-24  Andreas Kling  <kling@webkit.org>
3587
3588         SelectElementData: Reorder members to reduce memory usage.
3589         https://bugs.webkit.org/show_bug.cgi?id=66787
3590
3591         Reviewed by Darin Adler.
3592
3593         Reduced the size of SelectElementData by 24 bytes on 64-bit by rearranging
3594         its data members.
3595
3596         Also added missing initialization of m_userDrivenChange.
3597
3598         * dom/SelectElement.cpp:
3599         (WebCore::SelectElementData::SelectElementData):
3600         * dom/SelectElement.h:
3601
3602 2011-08-24  Pavel Feldman  <pfeldman@google.com>
3603
3604         Web Inspector: clearPseudoState should retain Element while clearing
3605         its state.
3606         https://bugs.webkit.org/show_bug.cgi?id=66790
3607
3608         Reviewed by Yury Semikhatsky.
3609
3610         * inspector/InspectorCSSAgent.cpp:
3611         (WebCore::InspectorCSSAgent::clearPseudoState):
3612
3613 2011-08-23  Mark Hahnenberg  <mhahnenberg@apple.com>
3614
3615         Add checks to ensure allocation does not take place during initialization of GC-managed objects
3616         https://bugs.webkit.org/show_bug.cgi?id=65288
3617
3618         Reviewed by Darin Adler.
3619
3620         No new tests.
3621
3622         Adding the new validation functionality.  In its current state, it will performs checks, 
3623         but they don't fail unless you do allocation in the arguments to the parent constructor in the 
3624         initialization list of a class.  The allocateCell() method turns on the global flag disallowing any new 
3625         allocations, and the constructorBody() method in JSCell turns it off.  This way, allocation is still 
3626         allowed in constructor bodies while other refactoring efforts continue.
3627
3628         * bindings/js/JSDOMWindowShell.cpp:
3629         (WebCore::JSDOMWindowShell::operator new):
3630         * bindings/js/JSDOMWindowShell.h:
3631
3632 2011-08-23  Scott Byer  <scottbyer@chromium.org>
3633
3634         ScrollAnimatorNone coasting implementation
3635         https://bugs.webkit.org/show_bug.cgi?id=66258
3636
3637         Increase the animation time based on the velocity of the scroll, up to a
3638         maximum amount. Fix bugs found by additional unit testing.
3639
3640         Reviewed by James Robinson.
3641
3642         Additional tests in ScrollAnimatorNoneTest: CurveMathQuartic, CurveMathCoast,
3643         ScrollOnceQuartic, ScrollTwiceCubic, ScrollLotsCubic, ScrollLotsCubicSmoothed,
3644         ScrollUpToBumperCoast, ScrollDownToBumperCoast, VaryingInputsEquivalency,
3645         VaryingInputsEquivalencyCoast, VaryingInputsEquivalencyCoastLarge,
3646         VaryingInputsEquivalencyCoastSteep
3647
3648         * platform/ScrollAnimatorNone.cpp:
3649         (WebCore::ScrollAnimatorNone::Parameters::Parameters):
3650         (WebCore::ScrollAnimatorNone::PerAxisData::curveAt):
3651         (WebCore::ScrollAnimatorNone::PerAxisData::coastCurve):
3652         (WebCore::ScrollAnimatorNone::PerAxisData::curveIntegralAt):
3653         (WebCore::ScrollAnimatorNone::PerAxisData::attackArea):
3654         (WebCore::ScrollAnimatorNone::PerAxisData::releaseArea):
3655         (WebCore::ScrollAnimatorNone::PerAxisData::PerAxisData):
3656         (WebCore::ScrollAnimatorNone::PerAxisData::updateDataFromParameters):
3657         (WebCore::ScrollAnimatorNone::PerAxisData::updateVisibleLength):
3658         (WebCore::ScrollAnimatorNone::ScrollAnimatorNone):
3659         (WebCore::ScrollAnimatorNone::scroll):
3660         (WebCore::ScrollAnimatorNone::willEndLiveResize):
3661         (WebCore::ScrollAnimatorNone::didAddVerticalScrollbar):
3662         (WebCore::ScrollAnimatorNone::didAddHorizontalScrollbar):
3663         (WebCore::ScrollAnimatorNone::updateVisibleLengths):
3664         * platform/ScrollAnimatorNone.h:
3665
3666 2011-08-23  James Robinson  <jamesr@chromium.org>
3667
3668         [chromium] Need a way to test lost compositor context recovery
3669         https://bugs.webkit.org/show_bug.cgi?id=66820
3670
3671         Reviewed by Kenneth Russell.
3672
3673         Adds support for recreating a context as if it was lost, and fixes
3674         compositeAndReadback() to attempt context recovery.
3675
3676         Test: platform/chromium/compositing/lost-compositor-context.html
3677
3678         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
3679         (WebCore::CCLayerTreeHost::compositeAndReadback):
3680         (WebCore::CCLayerTreeHost::loseCompositorContext):
3681         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
3682
3683 2011-08-23  Nat Duca  <nduca@chromium.org>
3684
3685         [chromium] Implement CCThread in terms of WebThread
3686         https://bugs.webkit.org/show_bug.cgi?id=66610
3687
3688         Reviewed by Darin Fisher.
3689
3690         * WebCore.gypi:
3691         * platform/graphics/chromium/cc/CCCompletionEvent.h:
3692         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
3693         (WebCore::CCLayerTreeHost::client):
3694         * platform/graphics/chromium/cc/CCLayerTreeHostImplProxy.cpp:
3695         (WebCore::CCLayerTreeHostImplProxy::CCLayerTreeHostImplProxy):
3696         * platform/graphics/chromium/cc/CCThread.h:
3697         (WebCore::CCThread::~CCThread):
3698
3699 2011-08-23  Iain Merrick  <husky@google.com>
3700
3701         [chromium] Renderer crashes when about:gpucrash is loaded
3702         https://bugs.webkit.org/show_bug.cgi?id=66814
3703
3704         WebViewImpl::didRecreateGraphicsContext() was calling
3705         setRootLayer() on the CC layer tree, but the root layer 
3706         doesn't actually change and the code wasn't defensive        
3707         against this. This CL adds some asserts to catch tree
3708         corruption and removes the unnecessary calls.
3709
3710         Reviewed by James Robinson.
3711
3712         * platform/graphics/GraphicsLayer.cpp:
3713         (WebCore::GraphicsLayer::setParent):
3714         * platform/graphics/GraphicsLayer.h:
3715         * platform/graphics/chromium/LayerChromium.cpp:
3716         (WebCore::LayerChromium::setParent):
3717         (WebCore::LayerChromium::hasAncestor):
3718         * platform/graphics/chromium/LayerChromium.h:
3719
3720 2011-08-23  Sheriff Bot  <webkit.review.bot@gmail.com>
3721
3722         Unreviewed, rolling out r93645.
3723         http://trac.webkit.org/changeset/93645
3724         https://bugs.webkit.org/show_bug.cgi?id=66828
3725
3726         Broke webkit_unit_tests on chromium mac (Requested by jamesr
3727         on #webkit).
3728
3729         * platform/chromium/ScrollbarThemeChromiumMac.mm:
3730         (WebCore::ScrollbarThemeChromiumMac::ScrollbarThemeChromiumMac):
3731         (WebCore::ScrollbarThemeChromiumMac::paintOverhangAreas):
3732
3733 2011-08-23  Beth Dakin  <bdakin@apple.com>
3734
3735         https://bugs.webkit.org/show_bug.cgi?id=66244
3736         Cached pages don't fully update when going back after changing the display scale 
3737         factor
3738         -and corresponding-
3739         <rdar://problem/9955656>
3740
3741         Reviewed by Darin Adler.
3742
3743         This patch adds a generalized concept of needing a full style recalc to the 
3744         BackForwardController. So when the display scale factor is changed, the 
3745         BackForwardController can be informed that all pages will need a full style recalc 
3746         when they come out of the cache. This same mechanism is also used to fix a long-
3747         standing bug with full-page/text zoom.
3748
3749         Iterate through the HistoryItems and mark all CachedPages as needing a full style 
3750         recalc.
3751         * history/BackForwardController.cpp:
3752         (WebCore::BackForwardController::markPagesForFullStyleRecalc):
3753         * history/BackForwardController.h:
3754
3755         ChachedPage has a new bool -- m_needsFullStyleRecalc -- to track whether a full 
3756         style recalc is needed when the CachedPage is restored.
3757         * history/CachedPage.cpp:
3758         (WebCore::CachedPage::CachedPage):
3759         (WebCore::CachedPage::restore):
3760         (WebCore::CachedPage::clear):
3761         * history/CachedPage.h:
3762         (WebCore::CachedPage::markForFullStyleRecalc):
3763
3764         HistoryItem actually takes care of calling into CachedPage.
3765         * history/HistoryItem.cpp:
3766         (WebCore::HistoryItem::markForFullStyleRecalc):
3767         * history/HistoryItem.h:
3768
3769         Fix style recalc issues for full-page/text zoom by calling our new function on 
3770         PageCache.
3771         * page/Frame.cpp:
3772         (WebCore::Frame::setPageAndTextZoomFactors):
3773
3774         Fix style recalc issues for display scale factor changes by calling our new 
3775         function on PageCache.
3776         * page/Page.cpp:
3777         (WebCore::Page::setDeviceScaleFactor):
3778
3779 2011-08-23  Anders Carlsson  <andersca@apple.com>
3780
3781         Fix build.
3782
3783         * inspector/InstrumentingAgents.cpp:
3784
3785 2011-08-23  Chang Shu  <cshu@webkit.org>
3786
3787         Added support for momentarily revealing last typed character in password input.
3788         Code change was partially based on Apple's iOS code and Samuel Nevala's work.
3789         https://bugs.webkit.org/show_bug.cgi?id=32509
3790
3791         Reviewed by Alexey Proskuryakov.
3792
3793         * editing/InsertIntoTextNodeCommand.cpp:
3794         (WebCore::InsertIntoTextNodeCommand::doApply):
3795         * rendering/RenderText.cpp:
3796         (WebCore::SecureTextTimer::SecureTextTimer):
3797         (WebCore::SecureTextTimer::restartWithNewText):
3798         (WebCore::SecureTextTimer::invalidate):
3799         (WebCore::SecureTextTimer::lastTypedCharacterOffset):
3800         (WebCore::SecureTextTimer::fired):
3801         (WebCore::RenderText::willBeDestroyed):
3802         (WebCore::RenderText::setTextInternal):
3803         (WebCore::RenderText::secureText):
3804         (WebCore::RenderText::momentarilyRevealLastTypedCharacter):
3805         * rendering/RenderText.h:
3806         (WebCore::RenderText::isSecure):
3807         * testing/Internals.cpp:
3808         (WebCore::Internals::setPasswordEchoEnabled): Fixed some silly coding in Internals.
3809         (WebCore::Internals::setPasswordEchoDurationInSeconds):
3810         (WebCore::Internals::reset):
3811
3812 2011-08-23  Dmitry Lomov  <Dmitry Lomov (dslomov@google.com)>
3813
3814         https://bugs.webkit.org/show_bug.cgi?id=66751 
3815         [Chromium]WebWorkerClientImpl should always invoke
3816         InspectorIntrumentation on main thread.
3817         The fix moves calls to InspectorInstrumentation from
3818         WebWorkerClientImpl to unedrlying WorkerMessagingProxy.
3819
3820         Reviewed by Pavel Feldman.
3821
3822         Covered by existing tests.
3823
3824         * inspector/InstrumentingAgents.cpp:
3825         (WebCore::instrumentationForPage):
3826         * workers/WorkerMessagingProxy.cpp:
3827         (WebCore::WorkerMessagingProxy::workerContextDestroyedInternal):
3828         (WebCore::WorkerMessagingProxy::terminateWorkerContext):
3829
3830 2011-08-23  Misha Tyutyunik  <michael.tyutyunik@nokia.com>
3831
3832         [Qt] Button text is invisible when mobile theme is in use and application palette set to use light text color.
3833         https://bugs.webkit.org/show_bug.cgi?id=66635
3834
3835         When mobile theme is in use and application palette is using light 
3836         color to display text button text becomes invisible. The reason for 
3837         that is that in RenderThemeQt::systemFont() we are using application 
3838         pallete while when are painting buttons lightGrayPalette is used.
3839         Calling setPaletteFromPageClientIfExists() takes care of the issue.
3840         
3841         Reviewed by Andreas Kling.
3842
3843         Covered by existing tests.
3844
3845         * platform/qt/RenderThemeQt.cpp:
3846         (WebCore::RenderThemeQt::systemColor):
3847
3848 2011-08-23  Tony Chang  <tony@chromium.org>
3849
3850         Add handling of mix-width and max-width for flexitems
3851         https://bugs.webkit.org/show_bug.cgi?id=66723
3852
3853         Reviewed by David Hyatt.
3854
3855         If we flex past a min/max width value, we need to mark the flexitem as
3856         a fixed width and re-start the flexing algorithm.  We use a HashMap to
3857         keep track of fixed width items.
3858
3859         This patch also split out the size computation from the actual layout
3860         to avoid unnecessary layouts caused by restarting the flexing algorithm.
3861
3862         Test: css3/flexbox/003.html
3863
3864         * rendering/RenderFlexibleBox.cpp:
3865         (WebCore::RenderFlexibleBox::layoutHorizontalBlock):
3866         (WebCore::RenderFlexibleBox::runFreeSpaceAllocationAlgorithm):
3867         * rendering/RenderFlexibleBox.h:
3868
3869 2011-08-23  Pratik Solanki  <psolanki@apple.com>
3870
3871         ResourceRequest::setStorageSession should update NSURLRequest as well
3872         https://bugs.webkit.org/show_bug.cgi?id=66811
3873
3874         Reviewed by Darin Adler.
3875
3876         * platform/network/cf/ResourceRequestCFNet.cpp:
3877         (WebCore::ResourceRequest::setStorageSession): Update the m_nsRequest field as well since we
3878         have a new CFURLRequestRef.
3879
3880 2011-08-23  James Robinson  <jamesr@chromium.org>
3881
3882         [chromium] Remove obsolete child context list from LayerRendererChromium
3883         https://bugs.webkit.org/show_bug.cgi?id=66743
3884
3885         Reviewed by Kenneth Russell.
3886
3887         Before we had proper semantics for flush() in the command buffer, we
3888         used a scheme of latches across contexts to ensure consistent frames
3889         were presented for WebGL and canvas. We no longer have latches and
3890         flush is a proper synchronization primative, so the child context list
3891         no longer does anything. Canvas2DLayerChromium and
3892         WebGLLayerChromium's implementations of updateCompositorResources() do
3893         flushes on the appropriate context already - canvas layers via
3894         DrawingBuffer::publishToPlatformLayer(), and WebGL layers via the call
3895         to prepareTexture().
3896
3897         No new tests since the code being removed doesn't do anything.
3898
3899         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
3900         (WebCore::Canvas2DLayerChromium::~Canvas2DLayerChromium):
3901         (WebCore::Canvas2DLayerChromium::setDrawingBuffer):
3902         * platform/graphics/chromium/Canvas2DLayerChromium.h:
3903         * platform/graphics/chromium/LayerRendererChromium.cpp:
3904         (WebCore::LayerRendererChromium::drawLayers):
3905         * platform/graphics/chromium/LayerRendererChromium.h:
3906         * platform/graphics/chromium/WebGLLayerChromium.cpp:
3907         (WebCore::WebGLLayerChromium::~WebGLLayerChromium):
3908         (WebCore::WebGLLayerChromium::setContext):
3909         * platform/graphics/chromium/WebGLLayerChromium.h:
3910
3911 2011-08-23  Alexei Svitkine  <asvitkine@chromium.org>
3912
3913         Chromium Mac: Use a custom pattern image for rubber banding overhang area
3914         https://bugs.webkit.org/show_bug.cgi?id=66707
3915
3916         Reviewed by Dimitri Glazkov.
3917
3918         No new tests since its just changing the Chromium-specific overhang pattern.
3919
3920         * platform/chromium/ScrollbarThemeChromiumMac.mm:
3921         (WebCore::ScrollbarThemeChromiumMac::ScrollbarThemeChromiumMac):
3922         (WebCore::ScrollbarThemeChromiumMac::paintOverhangAreas):
3923
3924 2011-08-23  Tatiana Meshkova  <tatiana.meshkova@nokia.com>
3925
3926         Prepare to paint slider thumb separately.
3927         Provide proper size values for vertical SliderThumb.
3928         https://bugs.webkit.org/show_bug.cgi?id=66732
3929
3930         Reviewed by Kenneth Rohde Christiansen.
3931
3932         * platform/qt/RenderThemeQt.cpp:
3933         (WebCore::RenderThemeQt::adjustSliderThumbSize):
3934         Swap length and thickness for sliderthumb-vertical.
3935
3936 2011-08-23  Adrienne Walker  <enne@google.com>
3937
3938         [chromium] Fix potential nullptr deref in TiledLayerChromium::pushPropertiesTo
3939         https://bugs.webkit.org/show_bug.cgi?id=66808
3940
3941         Reviewed by James Robinson.
3942
3943         * platform/graphics/chromium/TiledLayerChromium.cpp:
3944         (WebCore::TiledLayerChromium::pushPropertiesTo):
3945         * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
3946         (WebCore::CCTiledLayerImpl::draw):
3947
3948 2011-08-23  Peter Kasting  <pkasting@google.com>
3949
3950         Unreviewed, rolling out r93452.
3951         http://trac.webkit.org/changeset/93452
3952         https://bugs.webkit.org/show_bug.cgi?id=66423
3953
3954         Broke Leopard, Snowleopard, and Chromium bots
3955
3956         * xml/parser/XMLDocumentParserLibxml2.cpp:
3957         (WebCore::XMLDocumentParser::XMLDocumentParser):
3958
3959 2011-08-23  Ahmad Sharif  <asharif@chromium.org>
3960
3961         Fixed warnings produced by gcc-4.6.0.
3962         https://bugs.webkit.org/show_bug.cgi?id=62168
3963
3964         Reviewed by Adam Barth.
3965
3966         * dom/Element.cpp:
3967         (WebCore::Element::recalcStyle):
3968         * platform/ScrollAnimatorNone.cpp:
3969         (WebCore::ScrollAnimatorNone::PerAxisData::curveAt):
3970         (WebCore::ScrollAnimatorNone::PerAxisData::curveDerivativeAt):
3971         * thirdparty: Copied from Source/WebCore/thirdparty.
3972
3973 2011-08-23  Alexandru Chiculita  <achicu@adobe.com>
3974
3975         Text overlaps with the floats
3976         https://bugs.webkit.org/show_bug.cgi?id=66671
3977
3978         The problem was that LineWidth::fitBelowFloats is not updating the m_left and m_right fields. 
3979         Next time LineWidth::shrinkAvailableWidthForNewFloatIfNeeded was called the width was recalculated 
3980         using the old values, making the line bigger.
3981
3982         Reviewed by David Hyatt.
3983
3984         Test: fast/block/float/fit_line_below_floats.html
3985
3986         * rendering/RenderBlockLineLayout.cpp:
3987         (WebCore::LineWidth::fitBelowFloats):
3988
3989 2011-08-23  Alexandru Chiculita  <achicu@adobe.com>
3990
3991         [CSSRegions] RenderFlowThread layout should use the attached region sizes
3992         https://bugs.webkit.org/show_bug.cgi?id=66143
3993
3994         When RenderFlowThread is doing the layout it also sets the current RenderFlowThread on
3995         the RenderView. RenderFlowThread cannot be nested inside a single RenderView, so there's no 
3996         need to put that on the LayoutState.
3997
3998         The right offset used to layout the inlines inside a RenderFlowThread
3999         is now adjusted to fit inside the current region.
4000
4001         Reviewed by David Hyatt.
4002
4003         Tests: fast/regions/webkit-flow-floats-inside-regions-bounds.html
4004                fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-rl.html
4005                fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical.html
4006                fast/regions/webkit-flow-inlines-inside-regions-bounds.html
4007
4008         * rendering/LayoutState.cpp:
4009         (WebCore::LayoutState::LayoutState):
4010         * rendering/RenderBlock.cpp:
4011         (WebCore::RenderBlock::layoutBlock):
4012         (WebCore::RenderBlock::adjustForRegionFittingIfNeeded):
4013         (WebCore::RenderBlock::logicalRightOffsetForLine):
4014         * rendering/RenderBlock.h:
4015         * rendering/RenderFlowThread.cpp:
4016         (WebCore::RenderFlowThread::RenderFlowThread):
4017         (WebCore::CurrentRenderFlowThreadMaintainer::CurrentRenderFlowThreadMaintainer):
4018         (WebCore::CurrentRenderFlowThreadMaintainer::~CurrentRenderFlowThreadMaintainer):
4019         (WebCore::RenderFlowThread::layout):
4020         (WebCore::RenderFlowThread::renderRegionForLine):
4021         (WebCore::RenderFlowThread::regionLogicalWidthForLine):
4022         * rendering/RenderFlowThread.h:
4023         (WebCore::RegionFittingDisabler::RegionFittingDisabler):
4024         (WebCore::RegionFittingDisabler::~RegionFittingDisabler):
4025         * rendering/RenderRegion.cpp:
4026         (WebCore::RenderRegion::layout):
4027         * rendering/RenderRegion.h:
4028         * rendering/RenderView.cpp:
4029         (WebCore::RenderView::RenderView):
4030         * rendering/RenderView.h:
4031         (WebCore::RenderView::hasRenderFlowThread):
4032         (WebCore::RenderView::currentRenderFlowThread):
4033         (WebCore::RenderView::setCurrentRenderFlowThread):
4034         (WebCore::RenderView::pushLayoutState):
4035
4036 2011-08-23  Alexandru Chiculita  <achicu@adobe.com>
4037
4038         Text-indent and floats push the text out of the container box
4039         https://bugs.webkit.org/show_bug.cgi?id=66662
4040
4041         Text indent was not propagated when a new float was pushed on the line.
4042         It was only calculated when the logicalLeft/RightOffsetForLine was called.
4043         Because of that RenderBlock::LineBreaker::nextLineBreak used a bigger width
4044         than actually available and made the line render on top of the borders.
4045
4046         Reviewed by David Hyatt.
4047
4048         Tests: fast/block/float/floats-and-text-indent-rl.html
4049                fast/block/float/floats-and-text-indent.html
4050
4051         * rendering/RenderBlock.cpp:
4052         (WebCore::RenderBlock::textIndentOffset):
4053         (WebCore::RenderBlock::logicalLeftOffsetForLine):
4054         (WebCore::RenderBlock::logicalRightOffsetForLine):
4055         * rendering/RenderBlock.h:
4056         * rendering/RenderBlockLineLayout.cpp:
4057         (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded):
4058
4059 2011-08-23  Al Patrick  <apatrick@chromium.org>