Cache style declaration CSSOM wrappers directly on MutableStylePropertySet.
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-07-19  Andreas Kling  <akling@apple.com>
2
3         Cache style declaration CSSOM wrappers directly on MutableStylePropertySet.
4         <http://webkit.org/b/118883>
5
6         Reviewed by Gavin Barraclough
7
8         Merge https://chromium.googlesource.com/chromium/blink/+/183bcd51eb0e79cab930cf46695df05dc793630f
9         From Blink r153700 by <ager@chromium.org>:
10
11         In my measurements the mapping is adding more overhead than just having a field
12         in all MutableStylePropertySet objects. So this saves memory and makes access
13         faster.
14
15         * css/StylePropertySet.cpp:
16         (WebCore::MutableStylePropertySet::MutableStylePropertySet):
17         (WebCore::MutableStylePropertySet::~MutableStylePropertySet):
18         (WebCore::StylePropertySet::hasCSSOMWrapper):
19         (WebCore::MutableStylePropertySet::cssStyleDeclaration):
20         (WebCore::MutableStylePropertySet::ensureCSSStyleDeclaration):
21         (WebCore::MutableStylePropertySet::ensureInlineCSSStyleDeclaration):
22         * css/StylePropertySet.h:
23         (WebCore::StylePropertySet::StylePropertySet):
24
25 2013-07-19  Brent Fulgham  <bfulgham@apple.com>
26
27         [Windows] Avoid passing addresses of temporaries to Windows API.
28         https://bugs.webkit.org/show_bug.cgi?id=118917
29
30         Reviewed by Anders Carlsson.
31
32         The temporary Vector returned by String::charactersWithNullTermination
33         was going out of scope before its first use, causing Windows API to
34         receive garbage memory.
35
36         * platform/win/ContextMenuWin.cpp:
37         (WebCore::ContextMenu::createPlatformContextMenuFromItems):
38         * platform/win/PasteboardWin.cpp:
39         (WebCore::createGlobalHDropContent):
40         * platform/win/SSLKeyGeneratorWin.cpp:
41         (WebCore::WebCore::signedPublicKeyAndChallengeString):
42
43 2013-07-19  Zoltan Horvath  <zoltan@webkit.org>
44
45         [CSS Shapes] Remove lineWithinShapeBounds() from ShapeInfo since it's no longer used
46         https://bugs.webkit.org/show_bug.cgi?id=118913
47
48         Reviewed by Andreas Kling.
49
50         No new tests, no behavior change.
51
52         * rendering/shapes/ShapeInfo.h: Remove lineWithinShapeBounds().
53
54 2013-07-19  Alex Christensen  <achristensen@apple.com>
55
56         Added x64 configuration to Visual Studio build.
57         https://bugs.webkit.org/show_bug.cgi?id=118888
58
59         Reviewed by Brent Fulgham.
60
61         * WebCore.vcxproj/QTMovieWin/QTMovieWin.vcxproj:
62         * WebCore.vcxproj/WebCore.vcxproj:
63         * WebCore.vcxproj/WebCoreGenerated.vcxproj:
64         * WebCore.vcxproj/WebCoreTestSupport.vcxproj:
65
66 2013-07-19  Abhijeet Kandalkar  <abhijeet.k@samsung.com>
67
68         Spatial Navigation handling of space key in <select> appears to confuse listIndex and optionIndex.
69         https://bugs.webkit.org/show_bug.cgi?id=99525
70
71         HTMLSelect Element inherently contains the logic to focus option node and thus, implementing an explicit logic to find the focus index is not required.
72
73         Reviewed by Joseph Pecoraro.
74
75         Test: fast/spatial-navigation/snav-multiple-select-optgroup.html
76
77         * html/HTMLSelectElement.cpp:
78         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
79         * page/SpatialNavigation.cpp:
80         (WebCore::canScrollInDirection):
81         * rendering/RenderListBox.cpp:
82         (WebCore::RenderListBox::addFocusRingRects):
83
84 2013-07-19  David Hyatt  <hyatt@apple.com>
85
86         OSX: ePub: Unable to select text in vertical Japanese book
87         https://bugs.webkit.org/show_bug.cgi?id=118864
88         <rdar://problem/14109351>
89
90         Reviewed by Dan Bernstein and Sam Weinig.
91
92         This patch fixes all of the various writing-mode and pagination combinations
93         so that the columns are painted in the correct location. The code that sets up
94         the initial painting translation offset in the block direction and that advances
95         that offset has been pulled into two helper functions, initialBlockOffsetForPainting
96         and blockDeltaForPaintingNextColumn, and that code is now shared by the four call
97         sites that need it (painting and hit testing in RenderBlock and painting and hit testing
98         in RenderLayer).
99         
100         This patch also backs out the maximumScrollPosition change, since it only occurred because
101         of incorrect sizing of the RenderView, and this sizing issue has now been corrected by
102         ensuring that computeLogicalHeight() always makes sure you are the size of the viewport
103         and does not shrink you to the column height.
104         
105         There was also a race condition that caused pagination to be incorrect if layout occurred
106         before the html/body renderer that set the writing-mode were available. When this happened,
107         the writing mode got propagated up to the view, but the column styles didn't get
108         adjusted to compensate for the writing mode change.
109
110         Added tests for every pagination and writing-mode combination in fast/multicol/pagination.
111
112         * css/StyleResolver.cpp:
113         (WebCore::StyleResolver::styleForDocument):
114         (WebCore::StyleResolver::adjustRenderStyle):
115         Move setStylesForPaginationMode into RenderStyle and make it a member function. This is
116         necessary so that the style can be adjusted dynamically to fix the race condition mentioned
117         above.
118
119         * page/FrameView.cpp:
120         (WebCore::FrameView::maximumScrollPosition):
121         Back out this change since the symptom it was fixing only occurred because the logical
122         height of the view was being set incorrectly.
123
124         * rendering/RenderBlock.cpp:
125         (WebCore::RenderBlock::checkForPaginationLogicalHeightChange):
126         Patch the column code that sets up the initial page height to use the pagination API's
127         page height rather than the viewport logical height. This allows the view to still match
128         the viewport in dimensions rather than being incorrectly sized to the column height.
129         
130         (WebCore::RenderBlock::initialBlockOffsetForPainting):
131         (WebCore::RenderBlock::blockDeltaForPaintingNextColumn):
132         Two new helper functions used to set up the block direction paint/hit testing translation.
133         The major bug fix that occurred in this code is that the old block axis code didn't handle
134         reversal correctly and it also used physical coordinates to try to determine the translation
135         offset, when you really need to use logical coordinates in the original writing mode coordinate
136         system to determine the offset.
137
138         (WebCore::RenderBlock::paintColumnContents):
139         Patched to call the new helper functions.
140
141         (WebCore::ColumnRectIterator::ColumnRectIterator):
142         (WebCore::ColumnRectIterator::adjust):
143         (WebCore::ColumnRectIterator::update):
144         Patched to call the new helper functions.
145
146         * rendering/RenderBlock.h:
147         Add the two new helper functions to the RenderBlock header.
148
149         * rendering/RenderBox.cpp:
150         (WebCore::RenderBox::styleDidChange):
151         If the writing mode of the html/body propagates to the viewport and changes its writing mode,
152         also change our column styles to match if we're in paginated mode.
153
154         (WebCore::RenderBox::computeLogicalHeight):
155         (WebCore::RenderBox::computePercentageLogicalHeight):
156         Call the new pageOrViewLogicalHeight function on RenderView instead of
157         RenderBox::viewLogicalHeightForPercentages (which is now removed).
158
159         * rendering/RenderLayer.cpp:
160         (WebCore::RenderLayer::paintChildLayerIntoColumns):
161         (WebCore::RenderLayer::hitTestChildLayerColumns):
162         Patched to use the two new helper functions for block direction paint offset setup and
163         advancement.
164
165         * rendering/RenderView.cpp:
166         (WebCore::RenderView::pageOrViewLogicalHeight):
167         New helper function that does what viewLogicalHeightForPercentages used to do but also
168         handles returning the page length for block axis column progression. Again, this is to
169         allow the view to retain its correct size (matching the viewport).
170
171         (WebCore::RenderView::viewLogicalHeight):
172         Back out the code that made the view grow or shrink to the size of the Pagination API page
173         length when the progression was block axis. This was the source of most of the scroll origin
174         and scrolling issues.
175
176         * rendering/RenderView.h:
177         Add the new pageOrViewLogicalHeight() function.
178
179         * rendering/style/RenderStyle.cpp:
180         (WebCore::RenderStyle::setColumnStylesFromPaginationMode):
181         This is the old StyleResolver function for setting up the column styles. It's in RenderStyle
182         now so that it can be called at any time to change a style rather than only at style resolution
183         time.
184
185         * rendering/style/RenderStyle.h:
186         Declaration of the setColumnStylesFromPaginationMode function.
187
188 2013-07-19  peavo@outlook.com  <peavo@outlook.com>
189
190         [Curl] Http response code 401 (Authentication required) is not handled.
191         https://bugs.webkit.org/show_bug.cgi?id=118849
192
193         Reviewed by Brent Fulgham.
194
195         The current Curl implementation does not handle a 401 response.
196         When receiving http code 401, we need to give a notification that authorization is required, by calling the appropriate notification method.
197         This gives a WebKit client the possibility to present a password dialog to the user.
198         In response to this, we should provide Curl with the given username and password, so another request can be sent with the given credentials.
199
200         * platform/network/ResourceHandle.h:
201             Added method to check if credential storage should be used.
202         * platform/network/ResourceHandleInternal.h:
203             Added member to keep track of number of authentication failures.
204         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
205         * platform/network/curl/ResourceHandleCurl.cpp:
206         (WebCore::ResourceHandle::shouldUseCredentialStorage):
207             Added method to check if credential storage should be used.
208         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
209             Implement method; notify client when authentication is required.
210         (WebCore::ResourceHandle::receivedCredential):
211             Implement method; provide Curl with password and username when available.
212         (WebCore::ResourceHandle::receivedRequestToContinueWithoutCredential):
213             Implement method; reset Curl username and password.
214         (WebCore::ResourceHandle::receivedCancellation):
215             Implement method; notify client that authorization has been cancelled.
216         * platform/network/curl/ResourceHandleManager.cpp:
217         (WebCore::isHttpAuthentication):
218             Added function to check if http code is an 'Authorization required' code.
219         (WebCore::getProtectionSpace):
220             Added function to initialize a protection space object from a Curl handle and a response object. 
221         (WebCore::headerCallback):
222             Notify client when authorization is required.
223         (WebCore::ResourceHandleManager::applyAuthenticationToRequest):
224             Added method to set Curl username and password.
225         (WebCore::ResourceHandleManager::initializeHandle):
226             Use method to set Curl username and password.
227         * platform/network/curl/ResourceHandleManager.h:
228             Added method to set Curl username and password.
229
230 2013-07-19  Radu Stavila  <stavila@adobe.com>
231
232         Hover doesn't work for block elements inside a href element
233         https://bugs.webkit.org/show_bug.cgi?id=118907
234
235         Reviewed by David Hyatt.
236
237         Added test for hovering block elements inside a href element.
238
239         Test: fast/css/hover-display-block.html
240
241         * rendering/RenderObject.cpp:
242         (WebCore::RenderObject::hoverAncestor):
243
244 2013-07-19  Zoltan Horvath  <zoltan@webkit.org>
245
246         [CSS Shapes] Clear overflowing line's segments in pushShapeContentOverflowBelowTheContentBox
247         https://bugs.webkit.org/show_bug.cgi?id=118002
248
249         Reviewed by David Hyatt.
250
251         When the last line in the shape overlaps with the shape bottom boundaries we need to clear the computed segments. (We need to compute
252         the segments anyway, since shape-outside's code uses the same code path to determine its segments and the line containing is not a
253         requirement in that case.) Rather then doing the job in RenderBlock::LineBreaker::nextLineBreak I moved the functionality to its correct
254         place to pushShapeContentOverflowBelowTheContentBox. Now all the overflow related functionality is located in one function. I fixed the
255         corresponding layout test.
256
257         Tests: I modified shape-inside-overflow.html.
258
259         * rendering/RenderBlockLineLayout.cpp:
260         (WebCore::pushShapeContentOverflowBelowTheContentBox): Remove segments if line overlaps with the shape's boundaries.
261         (WebCore::RenderBlock::LineBreaker::nextLineBreak): Move segments clear logic to pushShapeContentOverflowBelowContentBox.
262
263 2013-07-19  Geoffrey Garen  <ggaren@apple.com>
264
265         TrailingObjects shouldn't shrink vector capacity in a loop
266         https://bugs.webkit.org/show_bug.cgi?id=118322
267
268         Reviewed by Darin Adler.
269
270         This seems to take about 3% off the profile of loading a large text file.
271
272         * rendering/RenderBlockLineLayout.cpp:
273         (WebCore::TrailingObjects::clear): clear() has the built-in side effect
274         of throwing away existing capacity. Use shrink(0) to indicate that we
275         want to keep our existing capacity.
276
277 2013-07-19  Diego Pino Garcia  <dpino@igalia.com>
278
279         [GTK] Merge decamelizations fix ups in the GObject DOM bindings code generator
280         https://bugs.webkit.org/show_bug.cgi?id=117543
281
282         Reviewed by Carlos Garcia Campos.
283
284         Ensure that all the code that calls to decamelize() applies the same fix ups
285
286         Now all functions that need to decamelize a string should simply call
287         to decamelize(). This function calls to FixUpDecamelize to apply some
288         fix ups.
289
290         * bindings/scripts/CodeGeneratorGObject.pm:
291         (decamelize): decamelizes a string and applies fix ups
292         (FixUpDecamelize): applies a series of fix ups to a decamelized string
293         (GetParentGObjType): moved fix ups to FixUpDecamelize()
294         (GenerateProperties): simply call to decamelize
295         (GenerateHeader): simply call to decamelize
296         (GetGReturnMacro): simply call to decamelize
297         (GenerateFunction): simply call to decamelize
298         (GenerateCFile): simply call to decamelize
299         (GenerateEventTargetIface): simply call to decamelize
300
301 2013-07-19  Kwang Yul Seo  <skyul@company100.net>
302
303         Unreviewed.
304
305         Fix an assertion failure which causes debug bots to fail.
306
307         * platform/network/NetworkStateNotifier.cpp:
308         (WebCore::NetworkStateNotifier::addNetworkStateChangeListener):
309
310 2013-07-19  Miguel Gomez  <magomez@igalia.com>
311
312         [GTK] media/video-seek-multiple.html is failing
313         https://bugs.webkit.org/show_bug.cgi?id=117580
314
315         Reviewed by Philippe Normand.
316
317         When receiving several seek calls in a row, ensure that the final position
318         is the one requested in the last call received.
319
320         Already covered in test media/video-seek-multiple.html
321
322         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
323         (WebCore::MediaPlayerPrivateGStreamer::seek):
324
325 2013-07-19  Kangil Han  <kangil.han@samsung.com>
326
327         Use explicit HTMLFrameElementBase cast and introduce toHTMLFrameElementBase
328         https://bugs.webkit.org/show_bug.cgi?id=118873
329
330         Reviewed by Ryosuke Niwa.
331
332         It should be HTMLFrameElementBase that embraces both HTMLFrameElement and HTMLIFrameElement.
333         This also makes correct toFooElement possible.
334         Next, to avoid direct use of static_cast, this patch introduces toHTMLFrameElementBase for code cleanup.
335
336         * editing/FrameSelection.cpp:
337         (WebCore::scanForForm):
338         * html/HTMLBodyElement.cpp:
339         (WebCore::HTMLBodyElement::didNotifySubtreeInsertions):
340         * html/HTMLFrameElementBase.h:
341         (WebCore::toHTMLFrameElementBase):
342         * loader/SubframeLoader.cpp:
343         (WebCore::SubframeLoader::loadSubframe):
344         * page/EventHandler.cpp:
345         (WebCore::targetIsFrame):
346         * page/FrameView.cpp:
347         (WebCore::FrameView::init):
348         * rendering/RenderFrameBase.cpp:
349         (WebCore::RenderFrameBase::layoutWithFlattening):
350         * rendering/RenderLayer.cpp:
351         (WebCore::frameElementAndViewPermitScroll):
352         (WebCore::RenderLayer::scrollRectToVisible):
353
354 2013-07-18  Christophe Dumez  <ch.dumez@sisa.samsung.com>
355
356         Bindings generation tests are failing
357         https://bugs.webkit.org/show_bug.cgi?id=118877
358
359         Reviewed by Kentaro Hara.
360
361         I inadvertently removed the wrong part of the if statement
362         in r152845, causing hasAttribute() to be used unconditionally
363         for reflected boolean attributes instead of fastHasAttribute().
364         This patch fixes the issue.
365
366         No new tests, covered by bindings tests.
367
368         * bindings/scripts/CodeGenerator.pm:
369         (GetterExpression):
370
371 2013-07-18  Kwang Yul Seo  <skyul@company100.net>
372
373         WorkerGlobalScope should support onoffline/ononline event handlers
374         https://bugs.webkit.org/show_bug.cgi?id=118832
375
376         Reviewed by Alexey Proskuryakov.
377
378         HTML5 spec says that WorkerGlobalScope should support
379         onoffline/ononline event handlers as stated in
380         http://www.whatwg.org/specs/web-apps/current-work/multipage/offline.html#event-offline
381
382         Modified NetworkStateNotifier to support multiple callbacks and added a
383         callback to dispatch offline and online events to WorkerGlobalScope
384         when network state is changed.
385
386         No new test because the current test infrastructure does not provide a
387         mock network state notifier.
388
389         * page/Page.cpp:
390         (WebCore::networkStateChanged):
391         Change the function to take an additional argument, isOnLine so that we
392         can remove a call to NetworkStateNotifier::onLine().
393         (WebCore::Page::Page):
394         Use NetworkStateNotifier::addNetworkStateChangeListener which
395         allows us to add multiple callbacks.
396
397         * platform/network/NetworkStateNotifier.cpp:
398         (WebCore::NetworkStateNotifier::addNetworkStateChangeListener):
399         Replace NetworkStateNotifier::setNetworkStateChangedFunction with
400         NetworkStateNotifier::addNetworkStateChangeListener.
401         (WebCore::NetworkStateNotifier::notifyNetworkStateChange):
402         A helper method to notify all registered network state change
403         callbacks.
404         * platform/network/NetworkStateNotifier.h:
405         (WebCore::NetworkStateNotifier::NetworkStateNotifier):
406         * platform/network/blackberry/NetworkStateNotifierBlackBerry.cpp:
407         (WebCore::NetworkStateNotifier::NetworkStateNotifier):
408         (WebCore::NetworkStateNotifier::networkStateChange):
409         * platform/network/efl/NetworkStateNotifierEfl.cpp:
410         (WebCore::NetworkStateNotifier::networkInterfaceChanged):
411         (WebCore::NetworkStateNotifier::NetworkStateNotifier):
412         * platform/network/mac/NetworkStateNotifierMac.cpp:
413         (WebCore::NetworkStateNotifier::networkStateChangeTimerFired):
414         (WebCore::NetworkStateNotifier::NetworkStateNotifier):
415         * platform/network/qt/NetworkStateNotifierQt.cpp:
416         (WebCore::NetworkStateNotifier::updateState):
417         (WebCore::NetworkStateNotifier::NetworkStateNotifier):
418         * platform/network/win/NetworkStateNotifierWin.cpp:
419         (WebCore::NetworkStateNotifier::addressChanged):
420         (WebCore::NetworkStateNotifier::NetworkStateNotifier):
421         Replace m_networkStateChangedFunction() with notifyNetworkStateChange().
422
423         * workers/Worker.cpp:
424         (WebCore::networkStateChanged):
425         Notify network state change by iterating all Workers.
426         (WebCore::Worker::Worker):
427         Initialize allWorkers and add networkStateChanged to
428         NetworkStateNotifier in first invocation. Add this Worker to
429         allWorkers.
430         (WebCore::Worker::~Worker):
431         Remove this Worker from allWorkers.
432         (WebCore::Worker::notifyNetworkStateChange):
433         * workers/Worker.h:
434         * workers/WorkerGlobalScope.h:
435         Add onoffline and ononline event handlers.
436         * workers/WorkerGlobalScope.idl:
437         Add onoffline and ononline event handlers
438         * workers/WorkerGlobalScopeProxy.h:
439
440         * workers/WorkerMessagingProxy.cpp:
441         (WebCore::NotifyNetworkStateChangeTask::create):
442         (WebCore::NotifyNetworkStateChangeTask::NotifyNetworkStateChangeTask):
443         (WebCore::NotifyNetworkStateChangeTask::performTask):
444         A subclass of ScriptExecutionContext::Task to dispatch offline and
445         online events to WorkerGlobalScope.
446         (WebCore::WorkerMessagingProxy::notifyNetworkStateChange):
447         Notify network state change using ScriptExecutionContext::postTask to
448         dispatch events across threads.
449         * workers/WorkerMessagingProxy.h:
450
451 2013-07-18  Ryosuke Niwa  <rniwa@webkit.org>
452
453         Build fix after r152876.
454
455         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
456         (WebCore::MediaPlayerPrivateAVFoundation::processNewAndRemovedTextTracks):
457
458 2013-07-18  Brent Fulgham  <bfulgham@apple.com>
459
460         [Media] Share more code between Mac and Windows implementation files.
461         https://bugs.webkit.org/show_bug.cgi?id=118801
462
463         Reviewed by Eric Carlson.
464
465         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
466         (WebCore::MediaPlayerPrivateAVFoundation::clearTextTracks): Move
467         implementation from ObjC file to parent file.
468         (WebCore::MediaPlayerPrivateAVFoundation::processNewAndRemovedTextTracks):
469         Ditto.
470         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
471         Remove duplicate implementation.
472         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
473         Ditto.
474         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h:
475         Ditto.
476         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
477         Ditto.
478         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
479         Ditto.
480
481 2013-07-18  Alex Christensen  <achristensen@apple.com>
482
483         Fixed compile errors for non-Cairo platforms using EGL.
484         https://bugs.webkit.org/show_bug.cgi?id=118536
485
486         Reviewed by Brent Fulgham.
487
488         * platform/graphics/egl/GLContextEGL.cpp: Added #if USE(CAIRO) around cairo.h.
489         (WebCore::GLContextEGL::~GLContextEGL): Added #if USE(CAIRO) around cairo_device_destroy call. 
490
491 2013-07-18  Jer Noble  <jer.noble@apple.com>
492
493         New PDFPlugin doesn't support WebKitOmitPDFSupport, acts as if Plug-ins are off
494         https://bugs.webkit.org/show_bug.cgi?id=118858
495
496         Reviewed by Eric Carlson.
497
498         Expand the scope of rejecting non video/ or audio/ MIME types when
499         filling the MIME type cache.
500
501         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
502         (WebCore::shouldRejectMIMEType): Added utility function.
503
504 2013-07-17  Brent Fulgham  <bfulgham@apple.com>
505
506         [Windows] Support in-band text tracks.
507         https://bugs.webkit.org/show_bug.cgi?id=103770
508
509         Reviewed by Eric Carlson.
510
511         Existing media tests cover these features.
512
513         * WebCore.vcxproj/WebCore.vcxproj: Add new files for Windows captions
514         * WebCore.vcxproj/WebCore.vcxproj.filters: ditto.
515         * config.h: Make sure proper buid flags are turned on when building
516         with AVCF_LEGIBLE_OUTPUT.
517         * page/CaptionUserPreferencesMediaAF.cpp: Revise to reduce soft linking
518         duplication between Mac and Windows.
519         * platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp: Update
520         to support Windows platform by removing compiler guards and adding
521         Windows declarations for soft-link functions.
522         * platform/graphics/avfoundation/InbandTextTrackPrivateAVF.h: Ditto.
523         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
524         Remove build guards preventing Windows from using LegibleOutput
525         features.
526         (WebCore::MediaPlayerPrivateAVFoundation::MediaPlayerPrivateAVFoundation):
527         (WebCore::MediaPlayerPrivateAVFoundation::seek):
528         (WebCore::MediaPlayerPrivateAVFoundation::seekCompleted):
529         (WebCore::MediaPlayerPrivateAVFoundation::dispatchNotification):
530         (WebCore::MediaPlayerPrivateAVFoundation::trackModeChanged):
531         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
532         (WebCore::MediaPlayerPrivateAVFoundation::contentsNeedsDisplay): Ditto
533         * platform/graphics/avfoundation/cf/AVFoundationCFSoftLinking.h:
534         Add new LegibleOutput support functions, and try to reduce duplication
535         between Windows and Mac soft link declarations.
536         * platform/graphics/avfoundation/cf/CoreMediaSoftLinking.h: Ditto.
537         * platform/graphics/avfoundation/cf/InbandTextTrackPrivateAVCF.cpp: Added.
538         (WebCore::InbandTextTrackPrivateAVCF::InbandTextTrackPrivateAVCF):
539         (WebCore::InbandTextTrackPrivateAVCF::disconnect):
540         (WebCore::InbandTextTrackPrivateAVCF::kind):
541         (WebCore::InbandTextTrackPrivateAVCF::isClosedCaptions):
542         (WebCore::InbandTextTrackPrivateAVCF::isSDH):
543         (WebCore::InbandTextTrackPrivateAVCF::containsOnlyForcedSubtitles):
544         (WebCore::InbandTextTrackPrivateAVCF::isMainProgramContent):
545         (WebCore::InbandTextTrackPrivateAVCF::isEasyToRead):
546         (WebCore::InbandTextTrackPrivateAVCF::label):
547         (WebCore::InbandTextTrackPrivateAVCF::language):
548         (WebCore::InbandTextTrackPrivateAVCF::isDefault):
549         * platform/graphics/avfoundation/cf/InbandTextTrackPrivateAVCF.h: Added.
550         (WebCore::InbandTextTrackPrivateAVCF::create):
551         (WebCore::InbandTextTrackPrivateAVCF::~InbandTextTrackPrivateAVCF):
552         (WebCore::InbandTextTrackPrivateAVCF::mediaSelectionOption):
553         * platform/graphics/avfoundation/cf/InbandTextTrackPrivateLegacyAVCF.cpp: Added.
554         (WebCore::InbandTextTrackPrivateLegacyAVCF::InbandTextTrackPrivateLegacyAVCF):
555         (WebCore::InbandTextTrackPrivateLegacyAVCF::disconnect):
556         (WebCore::InbandTextTrackPrivateLegacyAVCF::kind):
557         (WebCore::InbandTextTrackPrivateLegacyAVCF::isClosedCaptions):
558         (WebCore::InbandTextTrackPrivateLegacyAVCF::containsOnlyForcedSubtitles):
559         (WebCore::InbandTextTrackPrivateLegacyAVCF::isMainProgramContent):
560         (WebCore::InbandTextTrackPrivateLegacyAVCF::isEasyToRead):
561         (WebCore::InbandTextTrackPrivateLegacyAVCF::label):
562         (WebCore::InbandTextTrackPrivateLegacyAVCF::language):
563         * platform/graphics/avfoundation/cf/InbandTextTrackPrivateLegacyAVCF.h: Added.
564         (WebCore::InbandTextTrackPrivateLegacyAVCF::create):
565         (WebCore::InbandTextTrackPrivateLegacyAVCF::~InbandTextTrackPrivateLegacyAVCF):
566         (WebCore::InbandTextTrackPrivateLegacyAVCF::avPlayerItemTrack):
567         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
568         Update to support LegibleOutput features for the Windows port.
569         (WebCore::AVFWrapper::currentTrack): Added.
570         (WebCore::AVFWrapper::legibleOutput): Added.
571         (WebCore::createMetadataKeyNames): Added missing key names.
572         (WebCore::avLegibleOutput): Added.
573         (WebCore::safeMediaSelectionGroupForLegibleMedia): Added.
574         (WebCore::MediaPlayerPrivateAVFoundationCF::cancelLoad): Clear text
575         tracks when cancelling.
576         (WebCore::MediaPlayerPrivateAVFoundationCF::setCurrentTrack): Added.
577         (WebCore::MediaPlayerPrivateAVFoundationCF::currentTrack): Added.
578         (WebCore::MediaPlayerPrivateAVFoundationCF::platformDuration): Revised
579         to match logic in Objective C implementation.
580         (WebCore::MediaPlayerPrivateAVFoundationCF::currentTime): Revised
581         to match logic in Objective C implementation.
582         (WebCore::MediaPlayerPrivateAVFoundationCF::paintCurrentFrameInContext):
583         Check presence of metadata before proceeding. Revised to match logic
584         in Objective C implementation.
585         (WebCore::MediaPlayerPrivateAVFoundationCF::paint): Ditto.
586         (WebCore::MediaPlayerPrivateAVFoundationCF::tracksChanged): Update for
587         in-band text tracks.
588         (WebCore::MediaPlayerPrivateAVFoundationCF::clearTextTracks): Added.
589         (WebCore::MediaPlayerPrivateAVFoundationCF::processLegacyClosedCaptionsTracks):
590         Added.
591         (WebCore::MediaPlayerPrivateAVFoundationCF::processNewAndRemovedTextTracks):
592         Added.
593         (WebCore::MediaPlayerPrivateAVFoundationCF::processMediaSelectionOptions):
594         Added.
595         (WebCore::AVFWrapper::setCurrentTrack): Added.
596         (WebCore::MediaPlayerPrivateAVFoundationCF::languageOfPrimaryAudioTrack):
597         Added.
598         (WebCore::AVFWrapper::AVFWrapper): Add new initializers.
599         (WebCore::AVFWrapper::~AVFWrapper): Clean up text track information.
600         (WebCore::AVFWrapper::createPlayer): Add Legible Output support.
601         (WebCore::AVFWrapper::createPlayerItem): Ditto.
602         (WebCore::LegibleOutputData::LegibleOutputData): Added.
603         (WebCore::AVFWrapper::processCue): Added.
604         (WebCore::AVFWrapper::legibleOutputCallback): Added.
605         (WebCore::AVFWrapper::safeMediaSelectionGroupForLegibleMedia): Added.
606         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h:
607         Update to support LegibleOutput features for the Windows port.
608         * platform/win/SoftLinking.h: Change signature of variable accessor
609         to match Mac so reduce duplicate code.
610
611 2013-07-18  Christophe Dumez  <ch.dumez@sisa.samsung.com>
612
613         Make atob() / btoa() argument non optional
614         https://bugs.webkit.org/show_bug.cgi?id=118844
615
616         Reviewed by Kentaro Hara.
617
618         According to the latest specification, the argument to atob() / btoa()
619         should not be optional:
620         http://www.whatwg.org/specs/web-apps/current-work/multipage/webappapis.html#windowbase64
621
622         This patch makes WebKit behave according to the specification. The argument
623         is also mandatory in Firefox, IE10 and Blink.
624
625         atob() / btoa() are also moved to their own WindowBase64 interface which
626         the Window interface implements. This does not change the behavior but
627         this is closer to the specification and it will make exposing those
628         methods to workers easier later on.
629
630         No new tests, already covered by:
631         fast/dom/Window/atob-btoa.html
632
633         * CMakeLists.txt:
634         * DerivedSources.make:
635         * DerivedSources.pri:
636         * GNUmakefile.list.am:
637         * page/DOMWindow.idl:
638         * page/WindowBase64.idl: Added.
639
640 2013-07-18  Antoine Quint  <graouts@apple.com>
641
642         Crash in WebCore::createMarkup()
643         https://bugs.webkit.org/show_bug.cgi?id=118847
644
645         Reviewed by Ryosuke Niwa.
646
647         Also check that we have a containingBlock() for the renderer() so that we
648         may safely call node() on it.
649
650         * editing/markup.cpp:
651         (WebCore::highestAncestorToWrapMarkup):
652
653 2013-07-18  Praveen R Jadhav  <praveen.j@samsung.com>
654
655         Only the first call to 'stop' method of AudioBufferSourceNode must be entertained.
656         https://bugs.webkit.org/show_bug.cgi?id=118776
657
658         Reviewed by Jer Noble.
659
660         Subsequent calls to 'stop' for a AudioSourceBufferNode throws an exception.
661         End time set by first 'stop' method is used for processing.
662
663         No new tests. audiobuffersource-exception.html is updated.
664
665         * Modules/webaudio/AudioScheduledSourceNode.cpp:
666         (WebCore::AudioScheduledSourceNode::stop):
667
668 2013-07-18  Christophe Dumez  <ch.dumez@sisa.samsung.com>
669
670         Simplify SVG animated type handling in the JSC bindings generator
671         https://bugs.webkit.org/show_bug.cgi?id=118845
672
673         Reviewed by Kentaro Hara.
674
675         Simplify IsSVGAnimatedType subroutine in the bindings generator so that
676         we no longer need to hardcode SVG animated types. Also remove the
677         CanUseFastAttribute subroutine as it is equivalent to IsSVGAnimatedType.
678         This allows us to simplify the GetterExpression subroutine so that
679         we can use fastHasAttribute() unconditionally for boolean type.
680
681         No new tests, no behavior change.
682
683         * bindings/scripts/CodeGenerator.pm:
684         (IsSVGAnimatedType):
685         (GetterExpression):
686
687 2013-07-18  Christophe Dumez  <ch.dumez@sisa.samsung.com>
688
689         Use [ImplementedAs] instead of special casing in the bindings generators
690         https://bugs.webkit.org/show_bug.cgi?id=118848
691
692         Reviewed by Kentaro Hara.
693
694         In several instances, special casing were used in the bindings generator to avoid
695         name clashes in the implementation. The [ImplementedBy] IDL extended attribute is
696         meant to solve this issue so we now use it instead.
697
698         No new tests, no behavior change.
699
700         * bindings/scripts/CodeGenerator.pm:
701         (WK_ucfirst):
702         (AttributeNameForGetterAndSetter):
703         * bindings/scripts/CodeGeneratorJS.pm:
704         (GenerateImplementation):
705         (NativeToJSValue):
706         * bindings/scripts/CodeGeneratorObjC.pm:
707         (GenerateHeader):
708         (GenerateImplementation):
709         * svg/SVGAElement.idl:
710         * svg/SVGFECompositeElement.cpp:
711         (WebCore::SVGFECompositeElement::SVGFECompositeElement):
712         (WebCore::SVGFECompositeElement::parseAttribute):
713         (WebCore::SVGFECompositeElement::setFilterEffectAttribute):
714         (WebCore::SVGFECompositeElement::build):
715         * svg/SVGFECompositeElement.h:
716         * svg/SVGFECompositeElement.idl:
717         * svg/SVGFEMorphologyElement.cpp:
718         (WebCore::SVGFEMorphologyElement::SVGFEMorphologyElement):
719         (WebCore::SVGFEMorphologyElement::parseAttribute):
720         (WebCore::SVGFEMorphologyElement::setFilterEffectAttribute):
721         (WebCore::SVGFEMorphologyElement::build):
722         * svg/SVGFEMorphologyElement.h:
723         * svg/SVGFEMorphologyElement.idl:
724         * svg/SVGTransform.cpp:
725         (WebCore::SVGTransform::updateSVGMatrix):
726         * svg/SVGTransform.h:
727         * svg/SVGTransform.idl:
728
729 2013-07-18  Zalan Bujtas  <zalan@apple.com>
730
731         Incorrect calculated width for mspace.
732         https://bugs.webkit.org/show_bug.cgi?id=118601
733
734         Reviewed by Chris Fleizach.
735
736         Use intrinsic logical widths to size <mspace> properly.
737         This patch also fixes an assert on isPreferredLogicalHeightDirty() which occurs
738         while layouting <mspace>. The assert fix is required, so that the sizing can be
739         fixed.
740
741         Test: mathml/presentation/mspace-prefered-width.html
742
743         * rendering/mathml/RenderMathMLBlock.cpp:
744         (WebCore::parseMathMLLength): switch to LayoutUnits.
745         (WebCore::parseMathMLNamedSpace): switch to LayoutUnits.
746         * rendering/mathml/RenderMathMLBlock.h:
747         * rendering/mathml/RenderMathMLFraction.cpp:
748         (WebCore::RenderMathMLFraction::updateFromElement):
749         * rendering/mathml/RenderMathMLFraction.h:
750         * rendering/mathml/RenderMathMLSpace.cpp:
751         (WebCore::RenderMathMLSpace::computeIntrinsicLogicalWidths):
752         * rendering/mathml/RenderMathMLSpace.h:
753
754 2013-07-18  Ryosuke Niwa  <rniwa@webkit.org>
755
756         willWriteSelectionToPasteboard and willPerformDragSourceAction editing callbacks are not called for drag and drop
757         https://bugs.webkit.org/show_bug.cgi?id=118828
758
759         Reviewed by Gavin Barraclough.
760
761         Call these two callbacks when we start a drag and drop.
762
763         No new tests for now but we should start logging these callbacks in DRT and WTR's EditorClients.
764
765         * page/DragController.cpp:
766         (WebCore::DragController::startDrag):
767
768 2013-07-18  Santosh Mahto  <santosh.ma@samsung.com>
769
770         ASSERTION FAILED: !listItems().size() || m_activeSelectionAnchorIndex >= 0 in WebCore::HTMLSelectElement::updateListBoxSelection
771         https://bugs.webkit.org/show_bug.cgi?id=118591
772
773         Reviewed by Kent Tamura.
774
775         Test: fast/forms/select/selectall-command-crash.html
776
777         * html/HTMLSelectElement.cpp:
778         (WebCore::HTMLSelectElement::selectAll):
779         We should return this function if activeSelectionAnchorIndex is not valid index
780
781 2013-07-18  Ryuan Choi  <ryuan.choi@samsung.com>
782
783         [EFL] Refactor spin.edc not to use offset
784         https://bugs.webkit.org/show_bug.cgi?id=118830
785
786         Reviewed by Gyuyoung Kim.
787
788         EDJE allows offset to specify the pixel based position,
789         but it's not good way if you want to locate object like arrow top or bottom.
790
791         Instead, this patch uses align property.
792
793         * platform/efl/DefaultTheme/widget/spinner/spinner.edc:
794
795 2013-07-18  Nick Diego Yamane  <nick.yamane@openbossa.org>
796
797         [gstreamer] Avoid calls to g_slist_index in webKitWebAudioSrcLoop()
798         https://bugs.webkit.org/show_bug.cgi?id=118827
799
800         Reviewed by Philippe Normand.
801
802         webKitWebAudioSrcLoop() currently calls g_slist_index for each element 
803         to get its index in a list it's iterating over. g_list_index function uses
804         a sequential search to find that element, which is clearly unecessary.
805         This patch adds a local variable to store the current index and use it 
806         instead of calling g_slist_index function.
807
808         No new tests, no behavior changes.
809
810         * platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:
811         (webKitWebAudioSrcLoop):
812
813 2013-07-17  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
814
815         Introduce toSVGInlineFlowBox() and use it
816         https://bugs.webkit.org/show_bug.cgi?id=118794
817
818         Reviewed by Andreas Kling.
819
820         As a step to change static_cast with toSVGXXX, static_cast<SVGInlineFlowBox*> can
821         be changed with toSVGInlineFlowBox().
822
823         Blink merge from https://src.chromium.org/viewvc/blink?view=rev&revision=154385
824
825         No new tests, no behavior change.
826
827         * rendering/svg/SVGInlineFlowBox.cpp:
828         (WebCore::SVGInlineFlowBox::paintSelectionBackground):
829         * rendering/svg/SVGInlineFlowBox.h:
830         (WebCore::toSVGInlineFlowBox):
831         * rendering/svg/SVGRootInlineBox.cpp:
832         (WebCore::SVGRootInlineBox::paint):
833         (WebCore::SVGRootInlineBox::layoutCharactersInTextBoxes):
834         (WebCore::SVGRootInlineBox::layoutChildBoxes):
835
836 2013-07-17  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
837
838         Use toSVGMarkerElement() instead of static_cast<>
839         https://bugs.webkit.org/show_bug.cgi?id=118800
840
841         Reviewed by Andreas Kling.
842
843         Though there is toSVGMarkerElement(), some files still use static_cast<SVGMarkerElement*>.
844         To remove all static_cast<> use, we need to change argument from SVGElement to Node.
845
846         No new tests, no behavior changes.
847
848         * rendering/svg/RenderSVGResourceMarker.cpp:
849         (WebCore::RenderSVGResourceMarker::referencePoint):
850         (WebCore::RenderSVGResourceMarker::angle):
851         (WebCore::RenderSVGResourceMarker::markerTransformation):
852         (WebCore::RenderSVGResourceMarker::viewportTransform):
853         (WebCore::RenderSVGResourceMarker::calcViewport):
854         * rendering/svg/RenderSVGResourceMarker.h:
855         (WebCore::RenderSVGResourceMarker::markerUnits):
856         * svg/SVGMarkerElement.h:
857         (WebCore::toSVGMarkerElement):
858
859 2013-07-17  Jacky Jiang  <zhajiang@blackberry.com>
860
861         Dereference null pointer crash in Length::decrementCalculatedRef()
862         https://bugs.webkit.org/show_bug.cgi?id=118686
863
864         Reviewed by Simon Fraser.
865
866         Length(Calculated) won't insert any CalculationValue to CalculationValueHandleMap;
867         therefore, we dereference null CalculationValue pointer when the temporary
868         Length object goes out of the scope.
869         Length(Calculated) is not allowed as it doesn't make sense that we construct
870         a Calculated Length object with uninitialized calc expression.
871         The code just wants to blend with zero. To fix the bug, we can just blend
872         with Length(0, Fixed) here as we currently can blend different type units
873         and zero has the same behavior regardless of unit.
874
875         Test: transitions/transition-transform-translate-calculated-length-crash.html
876
877         * platform/graphics/transforms/TranslateTransformOperation.cpp:
878         (WebCore::TranslateTransformOperation::blend):
879
880 2013-07-17  Tim Horton  <timothy_horton@apple.com>
881
882         Update blocked/missing plug-in UI
883         https://bugs.webkit.org/show_bug.cgi?id=118347
884         <rdar://problem/14209318>
885
886         Reviewed by Sam Weinig.
887
888         * WebCore.exp.in:
889         Export RenderEmbeddedObject::setPluginUnavailabilityReasonWithDescription.
890
891         * rendering/RenderEmbeddedObject.cpp:
892         (WebCore::replacementTextRoundedRectPressedColor):
893         (WebCore::replacementTextRoundedRectColor):
894         (WebCore::replacementTextColor):
895         Change colors to new design and add some more constants.
896
897         (WebCore::shouldUnavailablePluginMessageBeButton): Added.
898
899         (WebCore::RenderEmbeddedObject::setPluginUnavailabilityReasonWithDescription): Added.
900         (WebCore::RenderEmbeddedObject::setPluginUnavailabilityReason):
901         Call through to the -WithDescription variant.
902
903         (WebCore::RenderEmbeddedObject::paintReplaced):
904         Fill the background, and otherwise match the new design.
905
906         (WebCore::addReplacementArrowPath):
907         Add an arrow to the given path, inside the given rect.
908
909         (WebCore::RenderEmbeddedObject::getReplacementTextGeometry):
910         Add a 1px padding to the bottom of the text.
911         Add a circle and an arrow into the indicator as per the new design.
912
913         (WebCore::RenderEmbeddedObject::isInUnavailablePluginIndicator):
914         Hit-test the indicator arrow as well; otherwise, the fact that the arrow
915         is a hole in the path means it won't be hit.
916
917         * rendering/RenderEmbeddedObject.h:
918
919 2013-07-17  Commit Queue  <commit-queue@webkit.org>
920
921         Unreviewed, rolling out r152701, r152703, r152739, r152754,
922         and r152756.
923         http://trac.webkit.org/changeset/152701
924         http://trac.webkit.org/changeset/152703
925         http://trac.webkit.org/changeset/152739
926         http://trac.webkit.org/changeset/152754
927         http://trac.webkit.org/changeset/152756
928         https://bugs.webkit.org/show_bug.cgi?id=118821
929
930         this was a buggy fix and we're going to try something
931         different (Requested by thorton on #webkit).
932
933         * CMakeLists.txt:
934         * DerivedSources.make:
935         * DerivedSources.pri:
936         * GNUmakefile.am:
937         * WebCore.exp.in:
938         * WebCore.vcxproj/WebCore.vcxproj:
939         * WebCore.vcxproj/WebCore.vcxproj.filters:
940         * WebCore.xcodeproj/project.pbxproj:
941         * css/CSSDefaultStyleSheets.cpp:
942         (WebCore::CSSDefaultStyleSheets::ensureDefaultStyleSheetsForElement):
943         * css/unavailablePlugIns.css: Removed.
944         * dom/EventListener.h:
945         * html/HTMLAppletElement.cpp:
946         (WebCore::HTMLAppletElement::updateWidget):
947         * html/HTMLPlugInElement.cpp:
948         (WebCore::HTMLPlugInElement::defaultEventHandler):
949         * html/HTMLPlugInImageElement.cpp:
950         (WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot):
951         * loader/SubframeLoader.cpp:
952         (WebCore::SubframeLoader::createJavaAppletWidget):
953         * page/ChromeClient.h:
954         (WebCore::ChromeClient::shouldUnavailablePluginMessageBeButton):
955         * rendering/RenderEmbeddedObject.cpp:
956         (WebCore::replacementTextRoundedRectPressedColor):
957         (WebCore::RenderEmbeddedObject::RenderEmbeddedObject):
958         (WebCore::RenderEmbeddedObject::setPluginUnavailabilityReason):
959         (WebCore::RenderEmbeddedObject::setUnavailablePluginIndicatorIsPressed):
960         (WebCore::RenderEmbeddedObject::paint):
961         (WebCore::RenderEmbeddedObject::paintReplaced):
962         (WebCore::RenderEmbeddedObject::getReplacementTextGeometry):
963         (WebCore::RenderEmbeddedObject::replacementTextRect):
964         (WebCore::RenderEmbeddedObject::isReplacementObscured):
965         (WebCore::RenderEmbeddedObject::layout):
966         (WebCore::RenderEmbeddedObject::isInUnavailablePluginIndicator):
967         (WebCore::shouldUnavailablePluginMessageBeButton):
968         (WebCore::RenderEmbeddedObject::handleUnavailablePluginIndicatorEvent):
969         (WebCore::RenderEmbeddedObject::getCursor):
970         (WebCore::RenderEmbeddedObject::canHaveChildren):
971         * rendering/RenderEmbeddedObject.h:
972         * rendering/RenderWidget.h:
973
974 2013-07-17  Simon Fraser  <simon.fraser@apple.com>
975
976         Optimize RenderLayerCompositor's OverlapMap
977         https://bugs.webkit.org/show_bug.cgi?id=118764
978
979         Reviewed by Tim Horton.
980
981         Overlap stack items can have RectLists with hundreds of rectangles.
982         This makes the linear search in OverlapMap::overlapsLayers() very slow.
983         
984         Optimize by storing the bounding rect of the list of rects, and doing an early
985         check on that. This reduces time spent in RenderLayer::scrollTo() by 13% in some
986         content with lots of layers inside an overflow:scroll.
987
988         * rendering/RenderLayerCompositor.cpp:
989         (WebCore::RenderLayerCompositor::OverlapMap::overlapsLayers):
990         (WebCore::RenderLayerCompositor::OverlapMap::popCompositingContainer):
991         (WebCore::RenderLayerCompositor::OverlapMap::RectList::append):
992         (WebCore::RenderLayerCompositor::OverlapMap::RectList::intersects):
993
994 2013-07-17  Bem Jones-Bey  <bjonesbe@adobe.com>
995
996         [CSS Shapes] Port refactoring of shape-outside code from Blink
997         https://bugs.webkit.org/show_bug.cgi?id=118757
998
999         Reviewed by Dean Jackson.
1000
1001         Refactor the left and right offset methods to reduce the number of
1002         arguments by splitting the methods into smaller methods. This
1003         refactoring was requested as part of porting support for stacked
1004         floats with shape-outside to Blink.
1005
1006         Also add a variable when calling computeSegmentsForLine to make it
1007         more readable and easier to follow the coordinate system change.
1008
1009         No new tests, no behavior change.
1010
1011         * rendering/RenderBlock.cpp:
1012         (WebCore::RenderBlock::computeLogicalLocationForFloat): Update to use
1013             the refactored IgnoringShapeOutside methods.
1014         (WebCore::RenderBlock::logicalLeftFloatOffsetForLine): New method to
1015             compute the offset contributed by left floats.
1016         (WebCore::RenderBlock::adjustLogicalLeftOffsetForLine): New method to
1017             compute misc adjustments to the left offset.
1018         (WebCore::RenderBlock::logicalRightFloatOffsetForLine): New method to
1019             compute the offset contributed by right floats.
1020         (WebCore::RenderBlock::adjustLogicalRightOffsetForLine): New method to
1021             compute misc adjustments to the right offset.
1022         * rendering/RenderBlock.h:
1023         (WebCore::RenderBlock::logicalRightOffsetForLine): Implement original
1024             method in terms of the float offset computation method and the
1025             offset adjustment method. This method takes into account the
1026             shape-outside on any floats when computing the offset.
1027         (WebCore::RenderBlock::logicalLeftOffsetForLine): Ditto.
1028         (WebCore::RenderBlock::logicalRightOffsetForLineIgnoringShapeOutside):
1029             Compute the right offset as if there was no shape-outside on any
1030             of the floats.
1031         (WebCore::RenderBlock::logicalLeftOffsetForLineIgnoringShapeOutside):
1032             Compute the left offset as if there was no shape-outside on any
1033             of the floats.
1034         * rendering/RenderBlockLineLayout.cpp:
1035         (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded): Update
1036             to use a variable to make the calls to computeSegmentsForLine more
1037             explicit about the coordinate system conversion.
1038
1039 2013-07-17  Zalan Bujtas  <zalan@apple.com>
1040
1041         Wrong linebox height, when block element parent has vertical-align property defined.
1042         https://bugs.webkit.org/show_bug.cgi?id=118245
1043
1044         Reviewed by David Hyatt.
1045
1046         Do not push the current element to the next, when it is still considered empty, even with
1047         some object(s) in front. Behave as if it was actually empty.
1048         Inline elements like <span></span> generate such lines.
1049
1050         Test: fast/css/empty-span-with-parent-div-and-vertical-align.html
1051
1052         * rendering/RenderBlockLineLayout.cpp:
1053         (WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
1054
1055 2013-07-17  Andreas Kling  <akling@apple.com>
1056
1057         CSS selector list splitting should be by component, not by selector.
1058         <http://webkit.org/b/118761>
1059         <rdar://problem/14421609>
1060
1061         Reviewed by Antti Koivisto.
1062
1063         Test (amended): fast/css/rule-selector-overflow.html
1064
1065         * css/CSSSelectorList.h:
1066         * css/CSSSelectorList.cpp:
1067         (WebCore::CSSSelectorList::CSSSelectorList):
1068         (WebCore::CSSSelectorList::componentCount):
1069         * css/CSSStyleRule.cpp:
1070         (WebCore::CSSStyleRule::setSelectorText):
1071
1072             Renamed CSSSelectorList::length() to componentCount() and made it public.
1073
1074         * css/RuleSet.h:
1075
1076             maximumSelectorCount => maximumSelectorComponentCount
1077
1078         * css/StyleRule.cpp:
1079         (WebCore::StyleRule::splitIntoMultipleRulesWithMaximumSelectorComponentCount):
1080
1081             Make the splits after accumulating 'maximumSelectorComponentCount' components.
1082
1083         * css/StyleRule.h:
1084         * css/StyleSheetContents.cpp:
1085         (WebCore::StyleSheetContents::parserAppendRule):
1086
1087             splitIntoMultipleRulesWithMaximumSelectorCount => splitIntoMultipleRulesWithMaximumSelectorComponentCount
1088
1089 2013-07-17  Rob Buis  <rwlbuis@webkit.org>
1090
1091         [Mac] REGRESSION(r152685): svg/custom/xlink-prefix-in-attributes.html failed unexpectedly
1092         https://bugs.webkit.org/show_bug.cgi?id=118701
1093
1094         Reviewed by Ryosuke Niwa.
1095
1096         Use the computed attribute prefix, otherwise href being in xlink namespace but not having any prefix
1097         will cause outputting the xlink namespace in appendNamespace.
1098
1099         Patch fixes svg/custom/xlink-prefix-in-attributes.html.
1100
1101         * editing/MarkupAccumulator.cpp:
1102         (WebCore::MarkupAccumulator::appendAttribute):
1103
1104 2013-07-17  Chris Fleizach  <cfleizach@apple.com>
1105
1106         Regression: columnheader/rowheader roles not exposed correctly
1107         https://bugs.webkit.org/show_bug.cgi?id=113628
1108
1109         Reviewed by Tim Horton.
1110
1111         When we determine the row and column headers we look at the ARIA role being returned, but
1112         since TableCell overrides the determineAccessibilityRole method, the ARIA role is never set.
1113
1114         Test: platform/mac/accessibility/aria-columnrowheaders.html
1115
1116         * accessibility/AccessibilityTableCell.cpp:
1117         (WebCore::AccessibilityTableCell::determineAccessibilityRole):
1118
1119 2013-07-17  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1120
1121         Get rid of SVGPoint special case from the bindings generator
1122         https://bugs.webkit.org/show_bug.cgi?id=118783
1123
1124         Reviewed by Kentaro Hara.
1125
1126         Get rid of SVGPoint special case from the bindings generator by adding a
1127         new SVGPoint.h header that contains a typedef to FloatPoint.
1128
1129         Also use SVGPoint type in the implementation API for consistency with
1130         the IDL.
1131
1132         No new tests, no behavior change.
1133
1134         * bindings/scripts/CodeGenerator.pm:
1135         (SkipIncludeHeader):
1136         * bindings/scripts/test/JS/JSTestObj.cpp:
1137         (WebCore::jsTestObjMutablePoint):
1138         (WebCore::jsTestObjImmutablePoint):
1139         (WebCore::setJSTestObjMutablePoint):
1140         (WebCore::setJSTestObjImmutablePoint):
1141         (WebCore::jsTestObjPrototypeFunctionMutablePointFunction):
1142         (WebCore::jsTestObjPrototypeFunctionImmutablePointFunction):
1143         * bindings/scripts/test/JS/JSTestTypedefs.cpp:
1144         (WebCore::jsTestTypedefsPrototypeFunctionImmutablePointFunction):
1145         * bindings/scripts/test/ObjC/DOMTestObj.mm:
1146         (-[DOMTestObj mutablePoint]):
1147         (-[DOMTestObj immutablePoint]):
1148         (-[DOMTestObj mutablePointFunction]):
1149         (-[DOMTestObj immutablePointFunction]):
1150         * bindings/scripts/test/ObjC/DOMTestTypedefs.mm:
1151         (-[DOMTestTypedefs immutablePointFunction]):
1152         * rendering/svg/RenderSVGRoot.cpp:
1153         (WebCore::RenderSVGRoot::buildLocalToBorderBoxTransform):
1154         * rendering/svg/SVGTextQuery.cpp:
1155         (WebCore::SVGTextQuery::startPositionOfCharacter):
1156         (WebCore::SVGTextQuery::endPositionOfCharacter):
1157         (WebCore::SVGTextQuery::characterNumberAtPosition):
1158         * rendering/svg/SVGTextQuery.h:
1159         * svg/SVGPathElement.cpp:
1160         (WebCore::SVGPathElement::getPointAtLength):
1161         * svg/SVGPathElement.h:
1162         * svg/SVGPathTraversalStateBuilder.cpp:
1163         (WebCore::SVGPathTraversalStateBuilder::currentPoint):
1164         * svg/SVGPathTraversalStateBuilder.h:
1165         * svg/SVGPathUtilities.cpp:
1166         (WebCore::getPointAtLengthOfSVGPathByteStream):
1167         * svg/SVGPathUtilities.h:
1168         * svg/SVGPoint.h: Added.
1169         * svg/SVGPointList.cpp:
1170         (WebCore::SVGPointList::valueAsString):
1171         * svg/SVGPointList.h:
1172         * svg/SVGSVGElement.cpp:
1173         (WebCore::SVGSVGElement::createSVGPoint):
1174         * svg/SVGSVGElement.h:
1175         * svg/SVGTextContentElement.cpp:
1176         (WebCore::SVGTextContentElement::getStartPositionOfChar):
1177         (WebCore::SVGTextContentElement::getEndPositionOfChar):
1178         (WebCore::SVGTextContentElement::getCharNumAtPosition):
1179         * svg/SVGTextContentElement.h:
1180         * svg/SVGZoomEvent.cpp:
1181         (WebCore::SVGZoomEvent::previousTranslate):
1182         (WebCore::SVGZoomEvent::newTranslate):
1183         * svg/SVGZoomEvent.h:
1184
1185 2013-07-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1186
1187         [GStreamer] webkitwebsrc: use SubResourceLoader
1188         https://bugs.webkit.org/show_bug.cgi?id=73743
1189
1190         Reviewed by Philippe Normand.
1191
1192         * GNUmakefile.list.am: Add new files to compilation.
1193         * PlatformEfl.cmake: Ditto.
1194         * PlatformGTK.cmake: Ditto.
1195         * loader/SubresourceLoader.h: Add getOrCreateReadBuffer() when
1196         using SOUP.
1197         * loader/cache/CachedRawResource.h:
1198         * loader/cache/CachedRawResourceClient.h:
1199         (WebCore::CachedRawResourceClient::getOrCreateReadBuffer): Added
1200         to allow the client to allocate the read buffer.
1201         * loader/cache/CachedResource.h:
1202         (WebCore::CachedResource::getOrCreateReadBuffer):
1203         * loader/soup/CachedRawResourceSoup.cpp: Added.
1204         (WebCore::CachedRawResource::getOrCreateReadBuffer): Iterate the
1205         clients until one returns a valid read buffer or return NULL to
1206         fallback to the default read buffer.
1207         * loader/soup/SubresourceLoaderSoup.cpp: Added.
1208         (WebCore::SubresourceLoader::getOrCreateReadBuffer): Call
1209         CachedResource::getOrCreateReadBuffer().
1210         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
1211         (StreamingClient): Make this a CachedRawResourceClient.
1212         (_WebKitWebSrcPrivate): Remove frame and resourceHandle and add a
1213         cached resource handle.
1214         (webKitWebSrcDispose): Clear the player pointer.
1215         (webKitWebSrcStop): Remove the client from the cached resource.
1216         (webKitWebSrcStart): Use CachedResourceLoader to schedule a
1217         CachedRawResource load for the media without buffering the data.
1218         (webKitWebSrcNeedDataMainCb): Call CachedResource::setDefersLoading.
1219         (webKitWebSrcEnoughDataMainCb): Ditto.
1220         (webKitWebSrcSetMediaPlayer): Simply update the player pointer.
1221         (StreamingClient::responseReceived): Update to the
1222         CachedRawResourceClient API.
1223         (StreamingClient::dataReceived): Ditto.
1224         (StreamingClient::getOrCreateReadBuffer): Ditto.
1225         (StreamingClient::notifyFinished): Ditto.
1226
1227 2013-07-17  Kwang Yul Seo  <skyul@company100.net>
1228
1229         Remove unused member variable m_domURL from WorkerGlobalScope
1230         https://bugs.webkit.org/show_bug.cgi?id=118784
1231
1232         Reviewed by Christophe Dumez.
1233
1234         WorkerContext::webkitURL() was removed in r107082, and this was the
1235         only place where the member variable |m_domURL| in WorkerContext was
1236         mutated. This variable is no longer needed and so it should be removed.
1237
1238         No behavior change.
1239
1240         * workers/WorkerGlobalScope.h:
1241
1242 2013-07-17  Mihai Maerean  <mmaerean@adobe.com>
1243
1244         ASSERTION FAILED: layoutState->m_renderer == this in WebCore::RenderBlock::offsetFromLogicalTopOfFirstPage
1245         https://bugs.webkit.org/show_bug.cgi?id=118587
1246
1247         Reviewed by David Hyatt.
1248
1249         The fix consists in not calling containingBlockLogicalHeightForPositioned for flow threads (in
1250         RenderBox::availableLogicalHeightUsing) as it gets to handle the RenderView as it would have been flowed into
1251         the flow thread.
1252
1253         Test: fast/regions/crash-div-outside-body-vertical-rl.html
1254
1255         * rendering/RenderBox.cpp:
1256         (WebCore::RenderBox::availableLogicalHeightUsing):
1257
1258 2013-07-17  Kangil Han  <kangil.han@samsung.com>
1259
1260         Use toHTMLMediaElement
1261         https://bugs.webkit.org/show_bug.cgi?id=118727
1262
1263         Reviewed by Ryosuke Niwa.
1264
1265         To avoid direct use of static_cast, this patch uses toHTMLMediaElement for code cleanup.
1266
1267         * bindings/js/JSHTMLMediaElementCustom.cpp:
1268         (WebCore::JSHTMLMediaElement::setController):
1269         * html/HTMLMediaElement.h:
1270         (WebCore::toHTMLMediaElement):
1271         * html/HTMLSourceElement.cpp:
1272         (WebCore::HTMLSourceElement::insertedInto):
1273         (WebCore::HTMLSourceElement::removedFrom):
1274         * html/HTMLTrackElement.cpp:
1275         (WebCore::HTMLTrackElement::removedFrom):
1276         (WebCore::HTMLTrackElement::mediaElement):
1277         * html/shadow/MediaControlElementTypes.cpp:
1278         (WebCore::toParentMediaElement):
1279         * loader/SubframeLoader.cpp:
1280         (WebCore::SubframeLoader::loadMediaPlayerProxyPlugin):
1281         * page/FrameView.cpp:
1282         (WebCore::FrameView::updateWidget):
1283         * platform/efl/RenderThemeEfl.cpp:
1284         (WebCore::RenderThemeEfl::paintMediaFullscreenButton):
1285         (WebCore::RenderThemeEfl::paintMediaMuteButton):
1286         (WebCore::RenderThemeEfl::paintMediaToggleClosedCaptionsButton):
1287         * platform/graphics/wince/MediaPlayerProxy.cpp:
1288         (WebCore::WebMediaPlayerProxy::initEngine):
1289         (WebCore::WebMediaPlayerProxy::element):
1290         * platform/gtk/RenderThemeGtk.cpp:
1291         (WebCore::getMediaElementFromRenderObject):
1292         * rendering/HitTestResult.cpp:
1293         (WebCore::HitTestResult::mediaElement):
1294         * rendering/RenderLayerBacking.cpp:
1295         (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
1296         * rendering/RenderLayerCompositor.cpp:
1297         (WebCore::RenderLayerCompositor::requiresCompositingForVideo):
1298         * rendering/RenderMedia.cpp:
1299         (WebCore::RenderMedia::mediaElement):
1300         * rendering/RenderThemeMac.mm:
1301         (WebCore::RenderThemeMac::paintMediaSliderTrack):
1302         * rendering/RenderThemeWinCE.cpp:
1303         (WebCore::mediaElementParent):
1304         * testing/Internals.cpp:
1305         (WebCore::Internals::simulateAudioInterruption):
1306
1307 2013-07-16  Ryuan Choi  <ryuan.choi@samsung.com>
1308
1309         Remove Platform(EFL) guard from Widget::frameRectsChanged
1310         https://bugs.webkit.org/show_bug.cgi?id=118782
1311
1312         Reviewed by Christophe Dumez.
1313
1314         Since r58487, Widget::frameRectsChanged was moved to cpp and guarded.
1315         But we can move back to header because WebKit/Efl refactored related code in r145710.
1316
1317         No new tests, refactoring.
1318
1319         * platform/Widget.cpp: Removed platform guard and move frameRectsChangd() back to header.
1320         * platform/Widget.h:
1321         (WebCore::Widget::frameRectsChanged):
1322         * platform/efl/WidgetEfl.cpp:
1323
1324 2013-07-16  Alex Christensen  <achristensen@apple.com>
1325
1326         Update ANGLE to r2426.
1327         https://bugs.webkit.org/show_bug.cgi?id=118550
1328
1329         Reviewed by Dean Jackson.
1330
1331         * CMakeLists.txt: Renamed DetectRecursion to DetectCallDepth and added builtin_symbol_table.
1332
1333 2013-07-16  Tim Horton  <timothy_horton@apple.com>
1334
1335         Many crashes loading Java applets after r152701
1336         https://bugs.webkit.org/show_bug.cgi?id=118760
1337         <rdar://problem/14462836>
1338
1339         Reviewed by Dean Jackson.
1340
1341         * html/HTMLAppletElement.cpp:
1342         (WebCore::HTMLAppletElement::updateWidget):
1343         Re-acquire the renderer after calling createJavaAppletWidget,
1344         because it can cause reattach, leaving our renderer pointer stale.
1345
1346         * loader/SubframeLoader.cpp:
1347         (WebCore::SubframeLoader::createJavaAppletWidget):
1348         Null-check renderer, as element->renderEmbeddedObject() can very clearly
1349         return null in some cases.
1350
1351 2013-07-16  Pratik Solanki  <psolanki@apple.com>
1352
1353         Missing break in WebGLRenderingContext::validateCompressedTexFuncData()
1354         https://bugs.webkit.org/show_bug.cgi?id=118742
1355
1356         Reviewed by Ryosuke Niwa.
1357
1358         * html/canvas/WebGLRenderingContext.cpp:
1359         (WebCore::WebGLRenderingContext::validateCompressedTexFuncData):
1360
1361 2013-07-16  Andreas Kling  <akling@apple.com>
1362
1363         Atomicize HTMLAnchorElement.hash before passing it to JS.
1364         <http://webkit.org/b/118748>
1365         <rdar://problem/14459780>
1366
1367         Reviewed by Sam Weinig.
1368
1369         Instead of generating a unique string from '#' + the URL hash every time HTMLAnchorElement.hash
1370         is queried, turn it into an AtomicString. This prevents massive memory usage in scripts that
1371         fetch .hash a lot.
1372
1373         Reduces memory consumption by 4.65 MB when viewing the full HTML5 spec at <http://whatwg.org/c>
1374
1375         * html/HTMLAnchorElement.cpp:
1376         (WebCore::HTMLAnchorElement::hash):
1377
1378 2013-07-16  Brendan Long  <b.long@cablelabs.com>
1379
1380         Make WebVTTParser return cue data instead of cue DOM objects
1381         https://bugs.webkit.org/show_bug.cgi?id=118687
1382
1383         Reviewed by Eric Carlson.
1384
1385         No new tests because this doesn't change functionality.
1386
1387         * html/track/InbandTextTrack.cpp:
1388         Make TextTrackCueMap handle WebVTTCues instead of just generic cues.
1389         m_dataToCueMap and m_cueToDataMap were renamed m_genericDataToCueMap
1390         and m_genericCueToDataMap. The cue maps were turned into pointers so we
1391         only allocate the ones we need.
1392         (WebCore::TextTrackCueMap::TextTrackCueMap): Initialize maps to 0.
1393         (WebCore::TextTrackCueMap::~TextTrackCueMap): Delete allocated maps.
1394         (WebCore::TextTrackCueMap::add): Changed to allocate cue maps as needed, and added WebVTT version.
1395         (WebCore::TextTrackCueMap::find): Checked to check if cue maps are allocated, and added WebVTT version.
1396         (WebCore::TextTrackCueMap::findGenericData): Changed to accept TextTrackCue instead of TextTrackCueGeneric.
1397         (WebCore::TextTrackCueMap::findWebVTTData): Same as findGenericData, except for WebVTTCueData.
1398         (WebCore::TextTrackCueMap::remove): Accept TextTrackCue instead of TextTrackCueGeneric, and look in both maps.
1399         (WebCore::InbandTextTrack::addWebVTTCue): Added, based on addGenericCue.
1400         (WebCore::InbandTextTrack::removeWebVTTCue): Added, almost identical to removeGenericCue.
1401         (WebCore::InbandTextTrack::removeCue): m_cueMap.remove() takes a TextTrackCue now so it can remove both types of cue.
1402         (WebCore::InbandTextTrack::willRemoveTextTrackPrivate): Use ASSERT_UNUSED instead of UNUSED_PARAM + ASSERT.
1403         * html/track/InbandTextTrack.h: Add new functions above, change maps to pointers and add maps for holding WebVTT cues.
1404         * html/track/WebVTTParser.cpp:
1405         (WebCore::WebVTTParser::getNewCues): Return WebVTTCueData instead of TextTrackCue.
1406         (WebCore::WebVTTParser::createNewCue): Create WebVTTCueData instead of TextTrackCue.
1407         * html/track/WebVTTParser.h: Add WebVTTCueData class, based on GenericCueData.
1408         The following functions are just constructors, destructors, getters, or setters.
1409         (WebCore::WebVTTCueData::create):
1410         (WebCore::WebVTTCueData::~WebVTTCueData):
1411         (WebCore::WebVTTCueData::startTime):
1412         (WebCore::WebVTTCueData::setStartTime):
1413         (WebCore::WebVTTCueData::endTime):
1414         (WebCore::WebVTTCueData::setEndTime):
1415         (WebCore::WebVTTCueData::id):
1416         (WebCore::WebVTTCueData::setId):
1417         (WebCore::WebVTTCueData::content):
1418         (WebCore::WebVTTCueData::setContent):
1419         (WebCore::WebVTTCueData::settings):
1420         (WebCore::WebVTTCueData::setSettings):
1421         (WebCore::WebVTTCueData::WebVTTCueData):
1422         * loader/TextTrackLoader.cpp:
1423         (WebCore::TextTrackLoader::getNewCues): Convert WebVTTCueData to TextTrackCue when we get them.
1424         * platform/graphics/InbandTextTrackPrivateClient.h: Add addWebVTTCue and removeWebVTTCue functions to the interface.
1425
1426 2013-07-16  Tim Horton  <timothy_horton@apple.com>
1427
1428         Use the correct cursor value for the unavailable plugin indicator
1429         https://bugs.webkit.org/show_bug.cgi?id=118747
1430         <rdar://problem/14456498>
1431
1432         Reviewed by Dean Jackson.
1433
1434         CSS says "pointer" is the hand cursor, not "hand".
1435
1436         * css/unavailablePlugIns.css:
1437         (object::-webkit-unavailable-plugin-content > div):
1438         (object::-webkit-unavailable-plugin-content > div > span):
1439
1440 2013-07-16  Simon Fraser  <simon.fraser@apple.com>
1441
1442         Protect against the LayerFlushController being deleted inside its flushLayers() callback
1443         https://bugs.webkit.org/show_bug.cgi?id=118741
1444
1445         Reviewed by Tim Horton.
1446
1447         It's possible (especially on iOS) for the LayerFlushController to be destroyed
1448         inside its callback, via -[WebView _close]. Protect against this by making
1449         it refcounted, and holding a ref across the callback.
1450         
1451         Due to the odd relationship in which LayerFlushController owns its LayerFlushScheduler
1452         by value, we achieve this by allowing subclasses of LayerFlushScheduler
1453         to override runLoopObserverCallback(). WebViewLayerFlushScheduler uses the
1454         override to protect the owner of the LayerFlushScheduler, which is the
1455         LayerFlushController, when the callback is firing.
1456
1457         * WebCore.exp.in:
1458         * platform/graphics/ca/LayerFlushScheduler.h: Make runLoopObserverCallback() and the dtor virtual.
1459
1460 2013-07-16  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1461
1462         Get rid of multiple inheritance support from the bindings generators
1463         https://bugs.webkit.org/show_bug.cgi?id=118353
1464
1465         Reviewed by Kentaro Hara.
1466
1467         Remove multiple inheritance support from the bindings generators (except
1468         the ObjC one which still needs it for now). Multiple inheritance is no
1469         longer supported in Web IDL and it makes the scripts more complex than
1470         they needs to be.
1471
1472         Multiple inheritance support is no longer needed now that our SVG
1473         interfaces have been updated to use the simpler SVG2 inheritance model
1474         and use Web IDL 'implements' statements.
1475
1476         Note that the IDL parser still support multiple inheritance for now in
1477         order not to break the ObjC bindings generator.
1478
1479         No new tests, no behavior change.
1480
1481         * bindings/scripts/CodeGenerator.pm:
1482         * bindings/scripts/CodeGeneratorCPP.pm:
1483         (GetParentImplClassName):
1484         (GetParent):
1485         (GenerateImplementation):
1486         * bindings/scripts/CodeGeneratorGObject.pm:
1487         (GetParentClassName):
1488         (GetParentImplClassName):
1489         (GetParentGObjType):
1490         * bindings/scripts/CodeGeneratorJS.pm:
1491         (GetParentClassName):
1492         (GenerateHeader):
1493         (GenerateImplementation):
1494         (GenerateConstructorDefinition):
1495         * bindings/scripts/CodeGeneratorObjC.pm:
1496         (AddMethodsConstantsAndAttributesFromParentInterfaces):
1497         (GenerateImplementation):
1498         * bindings/scripts/IDLParser.pm:
1499         (parseInterface):
1500         (parseException):
1501         (parseInheritance):
1502
1503 2013-07-16  Eric Carlson  <eric.carlson@apple.com>
1504
1505         HTMLMediaElement should not add cues for disabled text tracks
1506         https://bugs.webkit.org/show_bug.cgi?id=118682
1507
1508         Reviewed by Ryosuke Niwa.
1509
1510         Merge https://src.chromium.org/viewvc/blink?view=rev&revision=153810
1511
1512         Tests: media/track/track-disabled-addcue.html
1513                media/track/track-disabled.html
1514
1515         * html/HTMLMediaElement.cpp:
1516         (WebCore::HTMLMediaElement::textTrackAddCues): Do nothing if the track is disabled.
1517         (WebCore::HTMLMediaElement::textTrackAddCue): Ditto.
1518
1519 2013-07-16  Krzysztof Czech  <k.czech@ymail.com>
1520
1521         [ATK] Adds support for aria-haspopup property.
1522         https://bugs.webkit.org/show_bug.cgi?id=117834
1523
1524         Reviewed by Christophe Dumez.
1525
1526         Adds support for aria-haspopup property.
1527
1528         Tests: accessibility/element-haspopup.html
1529                accessibility/popup-button-title.html
1530
1531         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
1532         (webkitAccessibleGetAttributes):
1533
1534 2013-07-16  Víctor Manuel Jáquez Leal  <vjaquez@igalia.com>
1535
1536         [texmap][GStreamer] upload onto the texture only the buffer to be painted
1537         https://bugs.webkit.org/show_bug.cgi?id=118471
1538
1539         Reviewed by Philippe Normand.
1540
1541         Right now all the buffers are uploaded onto the texture. With this
1542         logic pose situations where buffers that will not be painted are
1543         uploaded.
1544
1545         This patch uploads only the buffers that are going to be shown.
1546
1547         With this approach, the buffers may arrive before a GraphicsLayer is
1548         set, so we should be more cautious with GraphicsLayerTextureMapper's
1549         client.
1550
1551         No new tests, covered by existing tests.
1552
1553         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
1554         (WebCore::MediaPlayerPrivateGStreamerBase::MediaPlayerPrivateGStreamerBase):
1555         (WebCore::MediaPlayerPrivateGStreamerBase::updateTexture):
1556         (WebCore::MediaPlayerPrivateGStreamerBase::triggerRepaint):
1557         (WebCore::MediaPlayerPrivateGStreamerBase::paint):
1558         (WebCore::MediaPlayerPrivateGStreamerBase::paintToTextureMapper):
1559         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
1560         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
1561         (WebCore::GraphicsLayerTextureMapper::~GraphicsLayerTextureMapper):
1562         (WebCore::GraphicsLayerTextureMapper::setContentsToMedia):
1563
1564 2013-07-16  Víctor Manuel Jáquez Leal  <vjaquez@igalia.com>
1565
1566         [GStreamer] verify and log the received caps in the video sink
1567         https://bugs.webkit.org/show_bug.cgi?id=118559
1568
1569         Reviewed by Philippe Normand.
1570
1571         Verify the correctness of the received caps in the video sink, and
1572         also log them for debugging purposes.
1573
1574         No new tests, no behavior change.
1575
1576         * platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
1577         (webkitVideoSinkSetCaps):
1578
1579 2013-07-16  Kangil Han  <kangil.han@samsung.com>
1580
1581         Use toHTMLSelectElement and dismiss isHTMLSelectElement
1582         https://bugs.webkit.org/show_bug.cgi?id=118714
1583
1584         Reviewed by Ryosuke Niwa.
1585
1586         To avoid direct use of static_cast, this patch introduces toHTMLIFrameElement for code cleanup.
1587         Additionally, this patch removes isHTMLSelectElement because not all element subclasses can be checked by a combination of tag names.
1588
1589         * html/HTMLSelectElement.h:
1590         (WebCore::toHTMLSelectElement):
1591         * testing/Internals.cpp:
1592         (WebCore::Internals::isSelectPopupVisible):
1593
1594 2013-07-15  Yuta Kitamura  <yutak@chromium.org>
1595
1596         Fix a crash in Range::processContents().
1597
1598         NULL ptr in WebCore::Range::processAncestorsAndTheirSiblings
1599         https://bugs.webkit.org/show_bug.cgi?id=77614
1600
1601         Reviewed by Ryosuke Niwa.
1602
1603         This change is ported from Blink revision 153483:
1604         https://src.chromium.org/viewvc/blink?revision=153483&view=revision
1605
1606         This crash can be initiated by calling Range.detach() while deleteContents()
1607         is processing the same range. Range::processContents() should save the state
1608         of the range since mutation events can change the state of the range.
1609
1610         Test: fast/dom/Range/detach-range-during-deletecontents.html
1611
1612         * dom/Range.cpp:
1613         (WebCore::Range::processContents):
1614         * dom/RangeBoundaryPoint.h:
1615         (WebCore::RangeBoundaryPoint::RangeBoundaryPoint):
1616
1617 2013-07-15  Ryosuke Niwa  <rniwa@webkit.org>
1618
1619         Input element that becomes visible during a simulated click event from an associated label element doesn't get focused
1620         https://bugs.webkit.org/show_bug.cgi?id=118700
1621
1622         Reviewed by Kent Tamura.
1623
1624         Inspired by https://chromium.googlesource.com/chromium/blink/+/6435f70d53403b250e261a914f30d55142f81476.
1625
1626         The bug was caused by isMouseFocusable() check in HTMLLabelElement::defaultEventHandler not updating the layout even
1627         though the call to dispatchSimulatedClick may have dirtied the render tree.
1628
1629         Explicitly update the layout so that we have up-to-date render tree.
1630
1631         Test: fast/forms/label/label-becomes-visible-while-clicking-on-label.html
1632
1633         * html/HTMLLabelElement.cpp:
1634         (WebCore::HTMLLabelElement::defaultEventHandler):
1635
1636 2013-07-15  Kangil Han  <kangil.han@samsung.com>
1637
1638         Introduce toHTMLIFrameElement
1639         https://bugs.webkit.org/show_bug.cgi?id=118672
1640
1641         Reviewed by Ryosuke Niwa.
1642
1643         To avoid direct use of static_cast, this patch introduces toHTMLIFrameElement for code cleanup.
1644
1645         * bindings/js/JSHTMLDocumentCustom.cpp:
1646         (WebCore::JSHTMLDocument::nameGetter):
1647         * css/StyleResolver.cpp:
1648         (WebCore::StyleResolver::adjustRenderStyle):
1649         * dom/Document.cpp:
1650         (WebCore::Document::seamlessParentIFrame):
1651         * html/HTMLIFrameElement.h:
1652         (WebCore::toHTMLIFrameElement):
1653         * rendering/RenderEmbeddedObject.cpp:
1654         (WebCore::RenderEmbeddedObject::viewCleared):
1655         * rendering/RenderIFrame.cpp:
1656         (WebCore::RenderIFrame::isSeamless):
1657         (WebCore::RenderIFrame::flattenFrame):
1658
1659 2013-07-15  Chris Rogers  <crogers@google.com>
1660
1661         Add support for WaveShaperNode.oversample
1662         https://bugs.webkit.org/show_bug.cgi?id=117435
1663
1664         Reviewed by Kenneth Russell.
1665
1666         Adapted from Blink:
1667         https://codereview.chromium.org/15619003/
1668
1669         Please see specification for details:
1670         https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html#WaveShaperNode
1671
1672         .oversample specifies what type of oversampling (if any) should be used when applying the shaping curve.
1673         The default value is "none", meaning the curve will be applied directly to the input samples.
1674         A value of "2x" or "4x" can improve the quality of the processing by avoiding some aliasing,
1675         with the "4x" value yielding the highest quality.
1676
1677         Tests: webaudio/waveshaper-oversample-2x.html
1678                webaudio/waveshaper-oversample-4x.html
1679
1680         * CMakeLists.txt:
1681         * GNUmakefile.list.am:
1682         * Modules/webaudio/WaveShaperDSPKernel.cpp:
1683         (WebCore::WaveShaperDSPKernel::WaveShaperDSPKernel):
1684         (WebCore::WaveShaperDSPKernel::lazyInitializeOversampling):
1685         (WebCore::WaveShaperDSPKernel::process):
1686         (WebCore::WaveShaperDSPKernel::processCurve):
1687         (WebCore::WaveShaperDSPKernel::processCurve2x):
1688         (WebCore::WaveShaperDSPKernel::processCurve4x):
1689         (WebCore::WaveShaperDSPKernel::reset):
1690         (WebCore::WaveShaperDSPKernel::latencyTime):
1691         * Modules/webaudio/WaveShaperDSPKernel.h:
1692         * Modules/webaudio/WaveShaperNode.cpp:
1693         (WebCore::WaveShaperNode::WaveShaperNode):
1694         (WebCore::WaveShaperNode::setOversample):
1695         (WebCore::WaveShaperNode::oversample):
1696         * Modules/webaudio/WaveShaperNode.h:
1697         (WebCore::WaveShaperNode::latency):
1698         * Modules/webaudio/WaveShaperNode.idl:
1699         * Modules/webaudio/WaveShaperProcessor.cpp:
1700         (WebCore::WaveShaperProcessor::WaveShaperProcessor):
1701         (WebCore::WaveShaperProcessor::setOversample):
1702         * Modules/webaudio/WaveShaperProcessor.h:
1703         (WebCore::WaveShaperProcessor::oversample):
1704         * WebCore.xcodeproj/project.pbxproj:
1705         * platform/audio/DownSampler.cpp: Added.
1706         (WebCore::DownSampler::DownSampler):
1707         (WebCore::DownSampler::initializeKernel):
1708         (WebCore::DownSampler::process):
1709         (WebCore::DownSampler::reset):
1710         (WebCore::DownSampler::latencyFrames):
1711         * platform/audio/DownSampler.h: Added.
1712         * platform/audio/UpSampler.cpp: Added.
1713         (WebCore::UpSampler::UpSampler):
1714         (WebCore::UpSampler::initializeKernel):
1715         (WebCore::UpSampler::process):
1716         (WebCore::UpSampler::reset):
1717         (WebCore::UpSampler::latencyFrames):
1718         * platform/audio/UpSampler.h: Added.
1719
1720 2013-07-15  Tim Horton  <timothy_horton@apple.com>
1721
1722         Update blocked/missing plug-in UI
1723         https://bugs.webkit.org/show_bug.cgi?id=118347
1724         <rdar://problem/14209318>
1725
1726         Reviewed by Sam Weinig.
1727         Patch by Anders Carlsson, Antoine Quint, Sam Weinig, and myself.
1728
1729         * CMakeLists.txt:
1730         * DerivedSources.make:
1731         * DerivedSources.pri:
1732         * GNUmakefile.am:
1733         * WebCore.exp.in:
1734         * WebCore.vcxproj/WebCore.vcxproj:
1735         * WebCore.vcxproj/WebCore.vcxproj.filters:
1736         * WebCore.xcodeproj/project.pbxproj:
1737         * css/CSSDefaultStyleSheets.cpp:
1738         * css/unavailablePlugIns.css: Added.
1739         Add new Source/WebCore/css/unavailablePlugIns.css stylesheet.
1740
1741         * dom/EventListener.h:
1742         New event listener type to support the creation of an event listener
1743         for the label and icon for missing / blocked plug-in UI.
1744
1745         * html/HTMLPlugInElement.cpp:
1746         (WebCore::HTMLPlugInElement::defaultEventHandler):
1747         Remove explicit event handling since we're now using a DOM event handler
1748         on the label and icon in the shadow root.
1749
1750         * html/HTMLPlugInImageElement.cpp:
1751         (WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot):
1752         Don't populate the shadow root with plugin snapshotting elements
1753         if we're not planning on showing a snapshot, because this means that
1754         the shadow root was created for the unavailable plugin indicator instead.
1755
1756         * page/ChromeClient.h:
1757         (WebCore::ChromeClient::shouldUnavailablePluginMessageIncludeButton):
1758         * rendering/RenderEmbeddedObject.cpp:
1759         (WebCore::RenderEmbeddedObject::RenderEmbeddedObject):
1760         (WebCore::shouldUnavailablePluginMessageIncludeButton):
1761         Rename from shouldUnavailablePluginMessageBeButton to
1762         shouldUnavailablePluginMessageIncludeButton for accuracy.
1763
1764         (WebCore::RenderEmbeddedObject::setPluginUnavailabilityReasonDescription):
1765         Set custom text to be displayed in the unavailability indicator.
1766
1767         (WebCore::RenderEmbeddedObject::setPluginUnavailabilityReason):
1768         (WebCore::RenderEmbeddedObject::handleUnavailablePluginButtonClickEvent):
1769         (WebCore::RenderEmbeddedObject::willBeDestroyed):
1770         (WebCore::RenderEmbeddedObject::isReplacementObscured):
1771         (WebCore::RenderEmbeddedObjectEventListener::handleEvent):
1772         (WebCore::RenderEmbeddedObjectEventListener::operator==):
1773         Remove the old code used to render the missing / blocked plug-in UI in C++ in favor
1774         of populating a shadow root in setPluginUnavailabilityReason(). We add a DOM event
1775         listener in the shadow root to eventually call into unavailablePluginButtonClicked()
1776         on the ChromeClient.
1777
1778         (WebCore::RenderEmbeddedObject::paint):
1779         (WebCore::RenderEmbeddedObject::layout):
1780         Paint and lay out UA shadow root children.
1781
1782         (WebCore::RenderEmbeddedObject::canHaveChildren):
1783         canHaveChildren can use the existence of a UA shadow root to decide
1784         whether a RenderEmbeddedObject can have children.
1785
1786         * rendering/RenderEmbeddedObject.h:
1787         (WebCore::RenderEmbeddedObjectEventListener::create):
1788         (WebCore::RenderEmbeddedObjectEventListener::cast):
1789         (WebCore::RenderEmbeddedObjectEventListener::RenderEmbeddedObjectEventListener):
1790         Create the new event listener class necessary to handle events in the shadow root.
1791
1792         (WebCore::RenderEmbeddedObject::pluginUnavailabilityReasonDescription): Added.
1793
1794         * rendering/RenderWidget.h:
1795         Promote willBeDestroyed() to be public so we may override it in the RenderEmbeddedObject subclass.
1796
1797 2013-07-15  Andreas Kling  <akling@apple.com>
1798
1799         Pack WebCore::Font slightly better.
1800         <http://webkit.org/b/118681>
1801         <rdar://problem/14446014>
1802
1803         Reviewed by Sam Weinig.
1804
1805         Knock 8 bytes off of Font by packing the members better. Reduces memory consumption by 429 kB when
1806         viewing the full HTML5 spec at <http://whatwg.org/c>
1807
1808         * platform/graphics/Font.h:
1809         (WebCore::Font::typesettingFeatures):
1810
1811 2013-07-15  Rob Buis  <rwlbuis@webkit.org>
1812
1813         XMLSerializer doesn't include namespaces on nodes in HTML documents
1814         https://bugs.webkit.org/show_bug.cgi?id=16496
1815
1816         Reviewed by Ryosuke Niwa.
1817
1818         Introduce a xml fragment serialization mode as indicated by
1819         http://html5.org/specs/dom-parsing.html#xmlserializer (commit 00b84d2). In this mode
1820         the XML fragment serialization algorithm is respected, the changes in this patch do the following:
1821
1822         - elements are self-closing if otherwise this would lead to invalid xml syntax.
1823         - the resulting xml is XML namespace-well-formed (http://www.w3.org/TR/xml-names11/#Conformance).
1824         This is achieved by always, when in xml fragment serialization mode, attempting to write out the element/attribute namespace,
1825         preventing using the XML namespace as a default namespace and special casing the use of element's in XML namespace by using the xml prefix.
1826
1827         The chosen approach matches FireFox 25 behavior.
1828
1829         Test: fast/dom/dom-serialize-namespace.html
1830
1831         * WebCore.order: Adapt to changed createMarkup signature.
1832         * editing/MarkupAccumulator.cpp:
1833         (WebCore::MarkupAccumulator::MarkupAccumulator):
1834         (WebCore::MarkupAccumulator::serializeNodesWithNamespaces): makes sure xml namespace/prefix is known so it is never used in namespace declarations.
1835         (WebCore::MarkupAccumulator::appendNamespace): Avoid adding namespace declarations that do not differ from current default namespace.
1836         (WebCore::MarkupAccumulator::appendOpenTag): Print xml prefix if the element's namespace is XML to avoid conflicts.
1837         (WebCore::MarkupAccumulator::appendAttribute):
1838         (WebCore::MarkupAccumulator::shouldAddNamespaceAttribute): Also take into account xmlns attributes with no namespace.
1839         (WebCore::MarkupAccumulator::shouldSelfClose): Force self-closing to create well-formed XML elements.
1840         * editing/MarkupAccumulator.h: Use EFragmentSerialization.
1841         (WebCore::MarkupAccumulator::inXMLFragmentSerialization):
1842         * editing/markup.cpp:
1843         (WebCore::createMarkup):
1844         * editing/markup.h: Add EFragmentSerialization enum.
1845         * xml/XMLSerializer.cpp:
1846         (WebCore::XMLSerializer::serializeToString):
1847
1848 2013-07-15  Ryosuke Niwa  <rniwa@webkit.org>
1849
1850         MediaFragmentURIParser::parseFragments shouldn't upconvert 8-bit string
1851         https://bugs.webkit.org/show_bug.cgi?id=118692
1852
1853         Reviewed by Michael Saboff.
1854
1855         Merge https://chromium.googlesource.com/chromium/blink/+/2aa17cc56a807f7e05d386d6eb66cda25e6b0542.
1856
1857         * html/MediaFragmentURIParser.cpp:
1858         (WebCore::MediaFragmentURIParser::parseFragments):
1859
1860 2013-07-15  Kwang Yul Seo  <skyul@company100.net>
1861
1862         NetworkStorageSession::createDefaultSession is only implemented by Soup
1863         https://bugs.webkit.org/show_bug.cgi?id=118679
1864
1865         Reviewed by Alexey Proskuryakov.
1866
1867         Remove NetworkStorageSession::createDefaultSession() because
1868         NetworkStorageSession::defaultStorageSession() returns the default
1869         session.
1870
1871         No new tests, no behavior change.
1872
1873         * platform/network/NetworkStorageSession.h:
1874         * platform/network/soup/NetworkStorageSessionSoup.cpp:
1875
1876 2013-07-15  Ryosuke Niwa  <rniwa@webkit.org>
1877
1878         compositionstart event should contain the text to be replaced
1879         https://bugs.webkit.org/show_bug.cgi?id=118684
1880
1881         Reviewed by Alexey Proskuryakov.
1882
1883         Merge https://chromium.googlesource.com/chromium/blink/+/9e04f728a95ad7d4783b1d31c3cdc1412dd6cc4d.
1884
1885         DOM3 level 3 specifies compositionstart event's data to be the text to be replaced.
1886         http://www.w3.org/TR/DOM-Level-3-Events/#event-type-compositionstart
1887
1888         According to the author of the Blink change, IE10 on Windows and Firefox22 on Linux confirms
1889         to the specified behavior.
1890
1891         Test: fast/events/ime-composition-events-001.html
1892
1893         * editing/Editor.cpp:
1894         (WebCore::Editor::setComposition):
1895
1896 2013-07-15  Ryosuke Niwa  <rniwa@webkit.org>
1897
1898         xmlDocPtrForString shouldn't upconvert 8-bit string
1899         https://bugs.webkit.org/show_bug.cgi?id=118693
1900
1901         Reviewed by Michael Saboff.
1902
1903         Merge https://chromium.googlesource.com/chromium/blink/+/5d9b240db74591c3689415c7b7c5180fadb379e9
1904
1905         Prior to this changeset, we were upconverting the entire XML document.
1906         Let xmllib2 parse a document as iso-8859-1 when it's a 8-bit string.
1907
1908         * xml/parser/XMLDocumentParserLibxml2.cpp:
1909         (WebCore::nativeEndianUTF16Encoding):
1910         (WebCore::xmlDocPtrForString):
1911
1912 2013-07-15  Roger Fong  <roger_fong@apple.com>
1913
1914         Replace WKCACFTypes include with d3d9 include.
1915
1916         Rubberstamped by Eric Carlson.
1917
1918         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
1919
1920 2013-07-15  Antoine Quint  <graouts@apple.com>
1921
1922         Text with "text-overflow:ellipsis" and an SVG font do not render correctly
1923         https://bugs.webkit.org/show_bug.cgi?id=118669
1924
1925         Reviewed by David Kilzer.
1926
1927         Partial runs may be routed through the complex path in several Font functions. While incomplete,
1928         we can check for a non-NULL run.renderingContext() and exempt runs that have it from being forced
1929         down the complex path. A more thorough fix is already tracked by http://webkit.org/b/100050.
1930
1931         Adding a new testcase which is a copy of svg/text/text-overflow-ellipsis-svgfont.html with kerning
1932         and ligatures turned on explicitly since DRT runs with those off by default and this option is required
1933         to be on for the issue to reproduce.
1934
1935         Fix courtesy of Dan Bernstein.
1936
1937         Test: svg/text/text-overflow-ellipsis-svgfont-kerning-ligatures.html
1938
1939         * platform/graphics/Font.cpp:
1940         (WebCore::Font::drawText):
1941         (WebCore::Font::drawEmphasisMarks):
1942         (WebCore::Font::selectionRectForText):
1943
1944 2013-07-15  peavo@outlook.com  <peavo@outlook.com>
1945
1946         [Curl] Download does not replace existing file.
1947         https://bugs.webkit.org/show_bug.cgi?id=118356
1948
1949         Reviewed by Brent Fulgham.
1950
1951         If the download target file already exists, it is not replaced after the download has finished.
1952         At this point, the user would have already approved to replace the file, so it should be replaced.
1953
1954         * platform/network/curl/CurlDownload.cpp:
1955         (CurlDownload::moveFileToDestination): Move file and replace it if it already exists.
1956         If the new file is on a different volume, do a copy/delete operation.
1957
1958 2013-07-15  Luciano Wolf  <luciano.wolf@openbossa.org>
1959
1960         [CoordinatedGraphics] Crash at CoordinatedGraphicsScene::updateImageBacking
1961         https://bugs.webkit.org/show_bug.cgi?id=118613
1962
1963         The operations of creating/removing/updating/clearing weren't in the
1964         right sequence. Changing the order solves the issue because when an image is
1965         replaced the old one is deleted before the new one is created, and IDs are
1966         not unique in cairo (they're based on the image pointer).
1967
1968         Reviewed by Noam Rosenthal.
1969
1970         * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
1971         (WebCore::CoordinatedGraphicsScene::syncImageBackings):
1972
1973 2013-07-15  Brian Holt  <brian.holt@samsung.com>
1974
1975         [ATK] Leak: Leak in WebKitAccessibleTextGetText
1976         https://bugs.webkit.org/show_bug.cgi?id=118596
1977
1978         Reviewed by Carlos Garcia Campos.
1979
1980         Fixed memory leak.
1981
1982         * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
1983         (getGailTextUtilForAtk):
1984
1985 2013-07-14  Jon Lee  <jonlee@apple.com>
1986
1987         Origins with invalid ports are not marked as unique (118652)
1988         https://bugs.webkit.org/show_bug.cgi?id=118652
1989         <rdar://problem/14437753>
1990
1991         Reviewed by Sam Weinig.
1992
1993         * page/SecurityOrigin.cpp:
1994         (WebCore::SecurityOrigin::create): Return a unique origin if the port is out of range.
1995
1996 2013-07-14  Ryosuke Niwa  <rniwa@webkit.org>
1997
1998         Another Qt build fix attempt after r152619.
1999
2000         * dom/QualifiedName.cpp:
2001         (WebCore::QualifiedName::toString):
2002
2003 2013-07-14  Ryosuke Niwa  <rniwa@webkit.org>
2004
2005         Qt build fix attempt after r152619.
2006
2007         * dom/QualifiedName.cpp:
2008         (WebCore::QualifiedName::toString):
2009
2010 2013-07-14  Ryosuke Niwa  <rniwa@webkit.org>
2011
2012         Mac build fix attempt after r152615.
2013
2014         * svg/SVGFilterElement.h:
2015
2016 2013-07-14  Ryosuke Niwa  <rniwa@webkit.org>
2017
2018         Modernize QualifiedName by wrapping gNameCache in a function and using more early exits
2019         https://bugs.webkit.org/show_bug.cgi?id=118299
2020
2021         Reviewed by Andreas Kling.
2022
2023         Address Ben's review comment.
2024
2025         * dom/QualifiedName.cpp:
2026         (WebCore::QualifiedName::toString):
2027
2028 2013-07-14  Ryosuke Niwa  <rniwa@webkit.org>
2029
2030         HTMLTextFormControlElement::valueWithHardLineBreaks shouldn't upconvert 8-bit string
2031         https://bugs.webkit.org/show_bug.cgi?id=118631
2032
2033         Reviewed by Andreas Kling.
2034
2035         Merge https://chromium.googlesource.com/chromium/blink/+/2c7c70a7bd3d61bfbf97de95c459ec9f40b46e31.
2036
2037         * html/HTMLTextFormControlElement.cpp:
2038         (WebCore::HTMLTextFormControlElement::valueWithHardLineBreaks):
2039
2040 2013-07-14  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2041
2042         Add toSVGFilterElement() and use it.
2043         https://bugs.webkit.org/show_bug.cgi?id=118653
2044
2045         Reviewed by Ryosuke Niwa.
2046
2047         We can use toSVGFilterElement() instead of using static_cast<..> to improve readability.
2048         Blink also uses it.
2049
2050         No new tests, no behavior change.
2051
2052         * rendering/svg/RenderSVGResourceFilter.cpp:
2053         (WebCore::RenderSVGResourceFilter::buildPrimitives):
2054         (WebCore::RenderSVGResourceFilter::applyResource):
2055         (WebCore::RenderSVGResourceFilter::resourceBoundingBox):
2056         * rendering/svg/RenderSVGResourceFilter.h:
2057         (WebCore::RenderSVGResourceFilter::filterUnits):
2058         (WebCore::RenderSVGResourceFilter::primitiveUnits):
2059         * rendering/svg/SVGResources.cpp:
2060         (WebCore::targetReferenceFromResource):
2061         * svg/SVGFilterElement.h:
2062         (WebCore::toSVGFilterElement):
2063
2064 2013-07-14  Kangil Han  <kangil.han@samsung.com>
2065
2066         Introduce toHTMLVideoElement
2067         https://bugs.webkit.org/show_bug.cgi?id=118582
2068
2069         Reviewed by Ryosuke Niwa.
2070
2071         To avoid direct use of static_cast, this patch introduces toHTMLVideoElement.
2072
2073         * html/HTMLMediaElement.cpp:
2074         (WebCore::HTMLMediaElement::getPluginProxyParams):
2075         * html/HTMLVideoElement.h:
2076         (WebCore::toHTMLVideoElement):
2077         * html/MediaDocument.cpp:
2078         (WebCore::MediaDocumentParser::createDocumentStructure):
2079         (WebCore::descendentVideoElement):
2080         (WebCore::ancestorVideoElement):
2081         * html/shadow/MediaControlElements.cpp:
2082         (WebCore::MediaControlTextTrackContainerElement::updateDisplay):
2083         * rendering/HitTestResult.cpp:
2084         (WebCore::HitTestResult::enterFullscreenForVideo):
2085         * rendering/RenderVideo.cpp:
2086         (WebCore::RenderVideo::videoElement):
2087
2088 2013-07-13  Commit Queue  <commit-queue@webkit.org>
2089
2090         Unreviewed, rolling out r151978.
2091         http://trac.webkit.org/changeset/151978
2092         https://bugs.webkit.org/show_bug.cgi?id=118651
2093
2094         Caused regressions at least 3 websites (Requested by rniwa on
2095         #webkit).
2096
2097         * bindings/js/JSDOMBinding.cpp:
2098         * bindings/js/JSDOMBinding.h:
2099         * bindings/scripts/CodeGeneratorJS.pm:
2100         (GetNativeTypeFromSignature):
2101         (JSValueToNative):
2102         * bindings/scripts/IDLAttributes.txt:
2103         * bindings/scripts/test/JS/JSTestObj.cpp:
2104         (WebCore::setJSTestObjReflectedStringAttr):
2105         (WebCore::setJSTestObjReflectedURLAttr):
2106         (WebCore::setJSTestObjReflectedCustomURLAttr):
2107         * dom/Document.idl:
2108         * dom/Element.idl:
2109         * dom/Node.idl:
2110
2111 2013-07-13  Joone Hur  <joone.hur@intel.com>
2112
2113         Caret should respect text background color
2114         https://bugs.webkit.org/show_bug.cgi?id=117493
2115
2116         Reviewed by Ryosuke Niwa.
2117
2118         This patch allows the caret to become visible in the black background
2119         by getting the caret color from the color of the element containing
2120         the text, not the parent element that has the contentEditable attribute.
2121
2122         Test: editing/caret/caret-color.html
2123
2124         * editing/FrameSelection.cpp:
2125         (WebCore::CaretBase::paintCaret):
2126
2127 2013-07-13  Ryosuke Niwa  <rniwa@webkit.org>
2128
2129         Avoid upconverting strings in various places in WebCore
2130         https://bugs.webkit.org/show_bug.cgi?id=118632
2131
2132         Reviewed by Andreas Kling.
2133
2134         Avoid calling String::characters() in various places since it upconverts 8-bit strings to 16-bit strings.
2135
2136         Merge
2137         https://chromium.googlesource.com/chromium/blink/+/a6162e2ad7c7870e22445d3c463d17e7ac871e80
2138         https://chromium.googlesource.com/chromium/blink/+/18095209b3f467758b83894e7b14f813f6953f81
2139         https://chromium.googlesource.com/chromium/blink/+/fefcf2b95d55f24c60fd2e95978cf4544f3c92ca
2140         https://chromium.googlesource.com/chromium/blink/+/8e0527b0fb33998318aedfd74b3511025f7ff294
2141         https://chromium.googlesource.com/chromium/blink/+/feaf798b04597b0849b4000fc305264895d3eac5
2142         https://chromium.googlesource.com/chromium/blink/+/bd1a49103a6e07b1023d2c742d8217769efbffb4
2143
2144         * css/CSSParser.cpp:
2145         (WebCore::CSSParser::setupParser):
2146         (WebCore::CSSParser::parseImageSet):
2147         (WebCore::CSSParser::rewriteSpecifiers):
2148         * css/CSSParserValues.h:
2149         (WebCore::CSSParserString::init):
2150         (WebCore::CSSParserString::clear):
2151         * dom/DatasetDOMStringMap.cpp:
2152         (WebCore::isValidAttributeName):
2153         (WebCore::convertAttributeNameToPropertyName):
2154         (WebCore::propertyNameMatchesAttributeName):
2155         (WebCore::isValidPropertyName):
2156         (WebCore::convertPropertyNameToAttributeName):
2157         * dom/Range.cpp:
2158         (WebCore::Range::toString):
2159         * dom/SecurityContext.cpp:
2160         (WebCore::SecurityContext::parseSandboxPolicy):
2161         * html/canvas/CanvasRenderingContext2D.cpp:
2162         (WebCore::CanvasRenderingContext2D::measureText):
2163         * html/track/TextTrackCue.cpp:
2164         (WebCore::TextTrackCue::markFutureAndPastNodes):
2165
2166 2013-07-13  Ryosuke Niwa  <rniwa@webkit.org>
2167
2168         parseHTMLInteger shouldn't upconvert 8-bit string
2169         https://bugs.webkit.org/show_bug.cgi?id=118629
2170
2171         Reviewed by Sam Weinig.
2172
2173         Merge https://chromium.googlesource.com/chromium/blink/+/e0ebab23e0c16b49dc90c9c39b8bbbf4f243a01e.
2174
2175         * html/parser/HTMLParserIdioms.cpp:
2176         (WebCore::parseHTMLInteger):
2177
2178 2013-07-12  Eric Carlson  <eric.carlson@apple.com>
2179
2180         [iOS] TextTrackRepresentation not cleared when captions are disabled
2181         https://bugs.webkit.org/show_bug.cgi?id=118623
2182
2183         Reviewed by Dean Jackson.
2184
2185         * html/shadow/MediaControlElements.cpp:
2186         (WebCore::MediaControlTextTrackContainerElement::updateDisplay): Do not return immediately
2187             when captions are disabled so the necessary cleanup happens.
2188
2189 2013-07-12  Brent Fulgham  <bfulgham@apple.com>
2190
2191         [Windows] Attempt to satisfy the Open Source Windows bots.
2192
2193         * DerivedSources.make: Restore the HAVE_AVCF macro detection.
2194         * config.h: Return to using HAVE_AVCF to activate AVFoundation code.
2195
2196 2013-07-12  peavo@outlook.com  <peavo@outlook.com>
2197
2198         [WinCairo] Compile fix.
2199         https://bugs.webkit.org/show_bug.cgi?id=118461
2200
2201         Reviewed by Brent Fulgham.
2202
2203         * config.h: Only enable AVFOUNDATION for Windows if CoreGraphics is used.
2204
2205 2013-07-12  Oleg Beletski  <oleg.beletski@gmail.com>
2206
2207         [EFL] --minimal build fails while linking libwebcore_efl.so
2208         https://bugs.webkit.org/show_bug.cgi?id=118549
2209
2210         Reviewed by Christophe Dumez.
2211
2212         * CMakeLists.txt:
2213         Moving file plugins/PluginPackage.cpp to ENABLE_NETSCAPE_PLUGIN_API block.
2214
2215 2013-07-12  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2216
2217         Insufficient viewport repaints when FrameView::paintsEntireContents
2218         https://bugs.webkit.org/show_bug.cgi?id=118562
2219
2220         Reviewed by Simon Fraser.
2221
2222         When the frameview paints entire content, the visualOverflowRect of RenderView
2223         should be the same as the layoutOverflowRect.
2224
2225         This affects the requested repaints on resize of the frameview.
2226
2227         * rendering/RenderView.cpp:
2228         (WebCore::RenderView::visualOverflowRect):
2229         * rendering/RenderView.h:
2230
2231 2013-07-10  Roger Fong  <roger_fong@apple.com>
2232
2233         Plugins that don't support snapshotting should not all autostart.
2234         https://bugs.webkit.org/show_bug.cgi?id=118572
2235         <rdar://problem/14324391>.
2236
2237         Reviewed by Dean Jackson.
2238
2239         Test: plugins/snapshotting/quicktime-plugin-snapshotted.html
2240
2241         * html/HTMLPlugInImageElement.cpp:
2242         (WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot): Pass in information about whether or not a snapshot exists
2243         to the shadow dom.
2244         * plugins/PluginViewBase.h:
2245         (WebCore::PluginViewBase::shouldNotAddLayer): This method determines whether or not we should add the plugin's layer to the tree.
2246         It should not be added if the plugin is in it's snapshotted state but does not actually support snapshotting.
2247         * rendering/RenderLayerBacking.cpp:
2248         (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration): We should only add the layer to the tree when the plugin
2249         is actually playing. Otherwise we run into an issue where the contents of the layer initially appear on the screen briefly 
2250         on page load before we display the substitute for a plugin that doesn't support snapshotting.
2251
2252 2013-07-11  Dan Bernstein  <mitz@apple.com>
2253
2254         [mac] No API for getting the page visibility state of a WebView
2255         https://bugs.webkit.org/show_bug.cgi?id=118578
2256
2257         Reviewed by Simon Fraser.
2258
2259         * WebCore.exp.in: Export WebCore::Page::visibilityState().
2260
2261 2013-07-11  Mario Sanchez Prada  <mario.prada@samsung.com>
2262
2263         [GTK] Layout Test accessibility/deleting-iframe-destroys-axcache.html, platform/gtk/accessibility/replaced-objects-in-anonymous-blocks.html are failing
2264         https://bugs.webkit.org/show_bug.cgi?id=118552
2265
2266         Reviewed by Chris Fleizach.
2267
2268         Do not assume always that we have a RenderText renderer when
2269         calling to toRenderText(), since we might be executing that part
2270         of the code due to have requested to include all the children.
2271
2272         * accessibility/AccessibilityRenderObject.cpp:
2273         (WebCore::AccessibilityRenderObject::textUnderElement): Add
2274         missing guard for RenderText, needed after r152537.
2275
2276 2013-07-11  Andrei Bucur  <abucur@adobe.com>
2277
2278         [CSS Regions] In a region chain with auto-height regions, lines get their length based only on the first region
2279         https://bugs.webkit.org/show_bug.cgi?id=118531
2280
2281         Reviewed by Alexandru Chiculita.
2282
2283         When computing the height a flow thread it's possible to overflow the maximum LayoutUnit and obtain a negative value.
2284         This leads to invalid results during layout when computing the region range and the RenderBoxRegion info for the
2285         descendant boxes of the flow thread.
2286     
2287         This issue appears especially during the auto-height algorithm because it initializes the auto-height regions
2288         height with the LayoutUnit::max() / 2 value. Summing two such regions overflows and results in a negative value.
2289
2290         The fix clamps the maximum height of the flow thread to LayoutUnit::max() / 2. This doesn't affect the auto-height
2291         algorithm because regionAtBlockOffset() will still return the correct values as the auto-height regions content
2292         is established and their height updated.
2293
2294         Tests: fast/regions/autoheight-correct-region-for-lines-2.html
2295                fast/regions/autoheight-correct-region-for-lines.html
2296
2297         * rendering/RenderBlock.cpp:
2298         (WebCore::RenderBlock::updateRegionsAndShapesBeforeChildLayout):
2299         * rendering/RenderFlowThread.cpp:
2300         (WebCore::RenderFlowThread::computeLogicalHeight):
2301         (WebCore::RenderFlowThread::setRegionRangeForBox):
2302         (WebCore::RenderFlowThread::updateRegionsFlowThreadPortionRect):
2303         * rendering/RenderFlowThread.h:
2304         * rendering/RenderRegion.cpp:
2305         (WebCore::RenderRegion::maxPageLogicalHeight):
2306
2307 2013-07-11  Timothy Hatcher  <timothy@apple.com>
2308
2309         Revert r152267 and soft link WebInspectorUI.framework again.
2310
2311         https://bugs.webkit.org/show_bug.cgi?id=118544
2312
2313         Reviewed by David Kilzer.
2314
2315         * platform/mac/SoftLinking.h: Rename SOFT_LINK_STAGED_FRAMEWORK_OPTIONAL
2316         to SOFT_LINK_STAGED_FRAMEWORK and ASSERT since we don't want to silently
2317         fail anymore when using this macro.
2318
2319 2013-07-11  Jae Hyun Park  <jae.park@company100.net>
2320
2321         [Coordinated Graphics] Parameter of commitSceneState should be const
2322         https://bugs.webkit.org/show_bug.cgi?id=118564
2323
2324         Reviewed by Noam Rosenthal.
2325
2326         Parameter of commitSceneState should be const as there should not be any
2327         modifications to the passed CoordinatedGraphicsState.
2328
2329         * platform/graphics/texmap/coordinated/CompositingCoordinator.h:
2330
2331 2013-07-11  Radu Stavila  <stavila@adobe.com>
2332
2333         NamedFlowCollection getters should follow the same pattern as HTMLCollection
2334         https://bugs.webkit.org/show_bug.cgi?id=118561
2335
2336         Reviewed by Christophe Dumez.
2337
2338         Modified item and namedItem methods from DOMNamedFlowCollection to return null instead of undefined.
2339         https://www.w3.org/Bugs/Public/show_bug.cgi?id=22617
2340         Completely removed the TreatReturnedNullObjectAs attribute as it was only used by the DOMNamedFlowCollection interface.
2341
2342         Test: fast/regions/webkit-named-flow-collection-empty-getters.html
2343
2344         * bindings/scripts/CodeGeneratorJS.pm:
2345         (GenerateImplementationFunctionCall):
2346         * bindings/scripts/IDLAttributes.txt:
2347         * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
2348         (WebDOMTestObj::treatReturnedNullObjectAsUndefined):
2349         * bindings/scripts/test/CPP/WebDOMTestObj.h:
2350         * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
2351         (webkit_dom_test_obj_treat_returned_null_object_as_undefined):
2352         * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
2353         * bindings/scripts/test/JS/JSTestObj.cpp:
2354         (WebCore::jsTestObjPrototypeFunctionTreatReturnedNullObjectAsUndefined):
2355         * bindings/scripts/test/JS/JSTestObj.h:
2356         * bindings/scripts/test/ObjC/DOMTestObj.h:
2357         * bindings/scripts/test/ObjC/DOMTestObj.mm:
2358         (-[DOMTestObj treatReturnedNullObjectAsUndefined]):
2359         * bindings/scripts/test/TestObj.idl:
2360         * dom/DOMNamedFlowCollection.idl:
2361
2362 2013-07-11  Andreas Kling  <akling@apple.com>
2363
2364         Revert r149313: Don't check for @media rules affected by viewport changes in every layout.
2365         <rdar://problem/14277905>
2366
2367         Rubber-stamped by Antti Koivisto.
2368
2369         This changed caused more harm than good. setFrameRect() is not the only path in FrameView
2370         that can cause media queries to need invalidation.
2371
2372         * page/FrameView.cpp:
2373         (WebCore::FrameView::setFrameRect):
2374         (WebCore::FrameView::layout):
2375
2376 2013-07-11  Kangil Han  <kangil.han@samsung.com>
2377
2378         Introduce isHTMLTitleElement and toHTMLTitleElement
2379         https://bugs.webkit.org/show_bug.cgi?id=118558
2380
2381         Reviewed by Andreas Kling.
2382
2383         To enhance readability, this patch introduces isHTMLTitleElement and toHTMLTitleElement.
2384         This also helps out to reduce duplicated use of static_cast.
2385
2386         * dom/Document.cpp:
2387         (WebCore::Document::setTitle):
2388         (WebCore::Document::removeTitle):
2389         * editing/ReplaceSelectionCommand.cpp:
2390         (WebCore::removeHeadContents):
2391         * html/HTMLTitleElement.h:
2392         (WebCore::isHTMLTitleElement):
2393         (WebCore::toHTMLTitleElement):
2394
2395 2013-07-11  Patrick Gansterer  <paroga@webkit.org>
2396
2397         Remove unused Windows CE files
2398         https://bugs.webkit.org/show_bug.cgi?id=118557
2399
2400         Reviewed by Andreas Kling.
2401
2402         * platform/wince/CursorWinCE.cpp: Removed.
2403         * platform/wince/PasteboardWinCE.cpp: Removed.
2404         * platform/wince/SearchPopupMenuWinCE.cpp: Removed.
2405
2406 2013-07-11  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2407
2408         Get rid of SVGPathSeg* special casing in the bindings generator
2409         https://bugs.webkit.org/show_bug.cgi?id=118525
2410
2411         Reviewed by Kentaro Hara.
2412
2413         Have one header per SVGPathSeg* type so that we no longer need special casing
2414         for them in the JSC bindings generator.
2415
2416         No new tests, no behavior change.
2417
2418         * GNUmakefile.list.am:
2419         * Target.pri:
2420         * WebCore.vcxproj/WebCore.vcxproj:
2421         * WebCore.vcxproj/WebCore.vcxproj.filters:
2422         * WebCore.xcodeproj/project.pbxproj:
2423         * bindings/js/JSSVGPathSegCustom.cpp:
2424         * bindings/scripts/CodeGeneratorJS.pm:
2425         (AddIncludesForType):
2426         (NativeToJSValue):
2427         * svg/SVGPathElement.cpp:
2428         * svg/SVGPathSegArc.h:
2429         * svg/SVGPathSegArcAbs.h: Added.
2430         (WebCore::SVGPathSegArcAbs::create):
2431         (WebCore::SVGPathSegArcAbs::SVGPathSegArcAbs):
2432         (WebCore::SVGPathSegArcAbs::pathSegType):
2433         (WebCore::SVGPathSegArcAbs::pathSegTypeAsLetter):
2434         * svg/SVGPathSegArcRel.h: Added.
2435         (WebCore::SVGPathSegArcRel::create):
2436         (WebCore::SVGPathSegArcRel::SVGPathSegArcRel):
2437         (WebCore::SVGPathSegArcRel::pathSegType):
2438         (WebCore::SVGPathSegArcRel::pathSegTypeAsLetter):
2439         * svg/SVGPathSegCurvetoCubic.h:
2440         * svg/SVGPathSegCurvetoCubicAbs.h: Added.
2441         (WebCore::SVGPathSegCurvetoCubicAbs::create):
2442         (WebCore::SVGPathSegCurvetoCubicAbs::SVGPathSegCurvetoCubicAbs):
2443         (WebCore::SVGPathSegCurvetoCubicAbs::pathSegType):
2444         (WebCore::SVGPathSegCurvetoCubicAbs::pathSegTypeAsLetter):
2445         * svg/SVGPathSegCurvetoCubicRel.h: Added.
2446         (WebCore::SVGPathSegCurvetoCubicRel::create):
2447         (WebCore::SVGPathSegCurvetoCubicRel::SVGPathSegCurvetoCubicRel):
2448         (WebCore::SVGPathSegCurvetoCubicRel::pathSegType):
2449         (WebCore::SVGPathSegCurvetoCubicRel::pathSegTypeAsLetter):
2450         * svg/SVGPathSegCurvetoCubicSmooth.h:
2451         * svg/SVGPathSegCurvetoCubicSmoothAbs.h: Copied from Source/WebCore/svg/SVGPathSegCurvetoCubicSmooth.h.
2452         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::create):
2453         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::SVGPathSegCurvetoCubicSmoothAbs):
2454         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::pathSegType):
2455         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::pathSegTypeAsLetter):
2456         * svg/SVGPathSegCurvetoCubicSmoothRel.h: Copied from Source/WebCore/svg/SVGPathSegCurvetoCubicSmooth.h.
2457         (WebCore::SVGPathSegCurvetoCubicSmoothRel::create):
2458         (WebCore::SVGPathSegCurvetoCubicSmoothRel::SVGPathSegCurvetoCubicSmoothRel):
2459         (WebCore::SVGPathSegCurvetoCubicSmoothRel::pathSegType):
2460         (WebCore::SVGPathSegCurvetoCubicSmoothRel::pathSegTypeAsLetter):
2461         * svg/SVGPathSegCurvetoQuadratic.h:
2462         * svg/SVGPathSegCurvetoQuadraticAbs.h: Copied from Source/WebCore/svg/SVGPathSegCurvetoQuadratic.h.
2463         (WebCore::SVGPathSegCurvetoQuadraticAbs::create):
2464         (WebCore::SVGPathSegCurvetoQuadraticAbs::SVGPathSegCurvetoQuadraticAbs):
2465         (WebCore::SVGPathSegCurvetoQuadraticAbs::pathSegType):
2466         (WebCore::SVGPathSegCurvetoQuadraticAbs::pathSegTypeAsLetter):
2467         * svg/SVGPathSegCurvetoQuadraticRel.h: Copied from Source/WebCore/svg/SVGPathSegCurvetoQuadratic.h.
2468         (WebCore::SVGPathSegCurvetoQuadraticRel::create):
2469         (WebCore::SVGPathSegCurvetoQuadraticRel::SVGPathSegCurvetoQuadraticRel):
2470         (WebCore::SVGPathSegCurvetoQuadraticRel::pathSegType):
2471         (WebCore::SVGPathSegCurvetoQuadraticRel::pathSegTypeAsLetter):
2472         * svg/SVGPathSegCurvetoQuadraticSmoothAbs.h: Copied from Source/WebCore/svg/SVGPathSegCurvetoQuadraticSmooth.h.
2473         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::create):
2474         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::SVGPathSegCurvetoQuadraticSmoothAbs):
2475         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::pathSegType):
2476         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::pathSegTypeAsLetter):
2477         * svg/SVGPathSegCurvetoQuadraticSmoothRel.h: Renamed from Source/WebCore/svg/SVGPathSegCurvetoQuadraticSmooth.h.
2478         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::create):
2479         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::SVGPathSegCurvetoQuadraticSmoothRel):
2480         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::pathSegType):
2481         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::pathSegTypeAsLetter):
2482         * svg/SVGPathSegLinetoAbs.h: Copied from Source/WebCore/svg/SVGPathSegLineto.h.
2483         (WebCore::SVGPathSegLinetoAbs::create):
2484         (WebCore::SVGPathSegLinetoAbs::SVGPathSegLinetoAbs):
2485         (WebCore::SVGPathSegLinetoAbs::pathSegType):
2486         (WebCore::SVGPathSegLinetoAbs::pathSegTypeAsLetter):
2487         * svg/SVGPathSegLinetoHorizontal.h:
2488         * svg/SVGPathSegLinetoHorizontalAbs.h: Copied from Source/WebCore/svg/SVGPathSegLinetoHorizontal.h.
2489         (WebCore::SVGPathSegLinetoHorizontalAbs::create):
2490         (WebCore::SVGPathSegLinetoHorizontalAbs::SVGPathSegLinetoHorizontalAbs):
2491         (WebCore::SVGPathSegLinetoHorizontalAbs::pathSegType):
2492         (WebCore::SVGPathSegLinetoHorizontalAbs::pathSegTypeAsLetter):
2493         * svg/SVGPathSegLinetoHorizontalRel.h: Copied from Source/WebCore/svg/SVGPathSegLinetoHorizontal.h.
2494         (WebCore::SVGPathSegLinetoHorizontalRel::create):
2495         (WebCore::SVGPathSegLinetoHorizontalRel::SVGPathSegLinetoHorizontalRel):
2496         (WebCore::SVGPathSegLinetoHorizontalRel::pathSegType):
2497         (WebCore::SVGPathSegLinetoHorizontalRel::pathSegTypeAsLetter):
2498         * svg/SVGPathSegLinetoRel.h: Renamed from Source/WebCore/svg/SVGPathSegLineto.h.
2499         (WebCore::SVGPathSegLinetoRel::create):
2500         (WebCore::SVGPathSegLinetoRel::SVGPathSegLinetoRel):
2501         (WebCore::SVGPathSegLinetoRel::pathSegType):
2502         (WebCore::SVGPathSegLinetoRel::pathSegTypeAsLetter):
2503         * svg/SVGPathSegLinetoVertical.h:
2504         * svg/SVGPathSegLinetoVerticalAbs.h: Copied from Source/WebCore/svg/SVGPathSegLinetoVertical.h.
2505         (WebCore::SVGPathSegLinetoVerticalAbs::create):
2506         (WebCore::SVGPathSegLinetoVerticalAbs::SVGPathSegLinetoVerticalAbs):
2507         (WebCore::SVGPathSegLinetoVerticalAbs::pathSegType):
2508         (WebCore::SVGPathSegLinetoVerticalAbs::pathSegTypeAsLetter):
2509         * svg/SVGPathSegLinetoVerticalRel.h: Copied from Source/WebCore/svg/SVGPathSegLinetoVertical.h.
2510         (WebCore::SVGPathSegLinetoVerticalRel::create):
2511         (WebCore::SVGPathSegLinetoVerticalRel::SVGPathSegLinetoVerticalRel):
2512         (WebCore::SVGPathSegLinetoVerticalRel::pathSegType):
2513         (WebCore::SVGPathSegLinetoVerticalRel::pathSegTypeAsLetter):
2514         * svg/SVGPathSegListBuilder.cpp:
2515         * svg/SVGPathSegMovetoAbs.h: Copied from Source/WebCore/svg/SVGPathSegMoveto.h.
2516         (WebCore::SVGPathSegMovetoAbs::create):
2517         (WebCore::SVGPathSegMovetoAbs::SVGPathSegMovetoAbs):
2518         (WebCore::SVGPathSegMovetoAbs::pathSegType):
2519         (WebCore::SVGPathSegMovetoAbs::pathSegTypeAsLetter):
2520         * svg/SVGPathSegMovetoRel.h: Renamed from Source/WebCore/svg/SVGPathSegMoveto.h.
2521         (WebCore::SVGPathSegMovetoRel::create):
2522         (WebCore::SVGPathSegMovetoRel::SVGPathSegMovetoRel):
2523         (WebCore::SVGPathSegMovetoRel::pathSegType):
2524         (WebCore::SVGPathSegMovetoRel::pathSegTypeAsLetter):
2525
2526 2013-07-11  Patrick Gansterer  <paroga@webkit.org>
2527
2528         Build fix for WinCE after r152426.
2529
2530         * config.h:
2531
2532 2013-07-11  Fabienne Semeria   <fsemeria@nds.com>
2533
2534         [Qt] memory leak in WebCore::FontCache::getLastResortFallbackFont
2535         https://bugs.webkit.org/show_bug.cgi?id=118532
2536
2537         Reviewed by Allan Sandfeld Jensen.
2538
2539         * platform/graphics/qt/FontCacheQt.cpp:
2540         (WebCore::FontCache::getLastResortFallbackFont):
2541
2542 2013-07-11  Mario Sanchez Prada  <mario.prada@samsung.com>
2543
2544         [ATK] Refactor code for translating offsets between WebCore a11y and ATK
2545         https://bugs.webkit.org/show_bug.cgi?id=118179
2546
2547         Reviewed by Chris Fleizach.
2548
2549         Encapsulate better and make more clear the translation of offsets
2550         between our ATK implementation and WebCore's accessibility layer.
2551
2552         Values for offsets can differ sometimes between those two worlds
2553         due to some extra flattening we need to do in ATK based ports to
2554         properly expose the accessibility hierarchy to ATs, which
2555         sometimes means adding extra text elements in the exposed text
2556         through the AtkText interface (e.g. list items markers).
2557
2558         * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
2559         (offsetAdjustmentForListItem): Helper function to refactor code
2560         needed to translate offsets from WebCore to ATK worlds. Currently
2561         related to considering list item markers in LTR text only.
2562         (webCoreOffsetToAtkOffset): Convenience function for code
2563         readability purposes. It just calls offsetAdjustmentForListItem.
2564         (atkOffsetToWebCoreOffset): Likewise.
2565         (getSelectionOffsetsForObject): Use webCoreOffsetToAtkOffset.
2566         (webkitAccessibleTextGetCaretOffset): Use webCoreOffsetToAtkOffset
2567         to translate an offset from WebCore to ATK before returning it.
2568         (webkitAccessibleTextSetSelection): Use atkOffsetToWebCoreOffset
2569         to translate an offset from WebCore to ATK before using it.
2570         (webkitAccessibleTextSetCaretOffset): Likewise.
2571
2572 2013-07-10  Sam Weinig  <sam@webkit.org>
2573
2574         Range.getClientRects() not working correctly for partially contained vertically styled text nodes
2575         <rdar://problem/14305675>
2576         https://bugs.webkit.org/show_bug.cgi?id=118447
2577
2578         Reviewed by David Hyatt.
2579
2580         Original patch by Mac Murrett, tweaked by me.
2581
2582         Test: fast/dom/Range/getClientRects-vertical.html
2583
2584         * rendering/RenderText.cpp:
2585         (WebCore::localQuadForTextBox):
2586         Use the physical accessors rather than the logical ones to get the correct metrics.
2587
2588 2013-07-10  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2589
2590         Reduce number of header includes in SVG
2591         https://bugs.webkit.org/show_bug.cgi?id=118474
2592
2593         Reviewed by Rob Buis.
2594
2595         Reduce number of header includes in SVG. In particular, SVGAnimatedPropertyMacros.h
2596         no longer brings SVGElement.h header include. This means that the SVGElement
2597         class can now have animated properties.
2598
2599         This patch is a prerequirement to merge SVGStyledElement into SVGElement.
2600
2601         No new tests, no behavior change.
2602
2603         * CMakeLists.txt:
2604         * GNUmakefile.list.am:
2605         * Target.pri:
2606         * WebCore.vcxproj/WebCore.vcxproj:
2607         * WebCore.vcxproj/WebCore.vcxproj.filters:
2608         * WebCore.xcodeproj/project.pbxproj:
2609         * svg/GradientAttributes.h:
2610         * svg/SVGAllInOne.cpp:
2611         * svg/SVGAnimateMotionElement.cpp:
2612         * svg/SVGAnimateMotionElement.h:
2613         * svg/SVGAnimatedTypeAnimator.cpp: Added.
2614         (WebCore::SVGElementAnimatedProperties::SVGElementAnimatedProperties):
2615         (WebCore::SVGAnimatedTypeAnimator::SVGAnimatedTypeAnimator):
2616         (WebCore::SVGAnimatedTypeAnimator::~SVGAnimatedTypeAnimator):
2617         (WebCore::SVGAnimatedTypeAnimator::calculateFromAndToValues):
2618         (WebCore::SVGAnimatedTypeAnimator::calculateFromAndByValues):
2619         (WebCore::SVGAnimatedTypeAnimator::findAnimatedPropertiesForAttributeName):
2620         * svg/SVGAnimatedTypeAnimator.h:
2621         * svg/SVGAnimationElement.h:
2622         * svg/SVGCursorElement.cpp:
2623         * svg/SVGDocumentExtensions.h:
2624         * svg/SVGElement.cpp:
2625         * svg/SVGElementInstanceList.cpp:
2626         * svg/SVGElementInstanceList.h:
2627         * svg/SVGElementRareData.h:
2628         * svg/SVGFEImageElement.cpp:
2629         * svg/SVGFilterElement.cpp:
2630         * svg/SVGFitToViewBox.h:
2631         * svg/SVGFontData.cpp:
2632         * svg/SVGFontData.h:
2633         * svg/SVGFontElement.h:
2634         * svg/SVGForeignObjectElement.cpp:
2635         * svg/SVGGlyphMap.h:
2636         * svg/SVGGradientElement.cpp:
2637         * svg/SVGMPathElement.cpp:
2638         * svg/SVGMPathElement.h:
2639         * svg/SVGPathBlender.cpp:
2640         * svg/SVGPathBlender.h:
2641         * svg/SVGPathBuilder.cpp:
2642         * svg/SVGPathBuilder.h:
2643         * svg/SVGPathParser.cpp:
2644         * svg/SVGPathParser.h:
2645         * svg/SVGPathSegListBuilder.h:
2646         * svg/SVGPathTraversalStateBuilder.cpp:
2647         * svg/SVGPathTraversalStateBuilder.h:
2648         * svg/SVGPathUtilities.h:
2649         * svg/SVGPatternElement.cpp:
2650         * svg/SVGPointList.h:
2651         * svg/SVGScriptElement.cpp:
2652         * svg/SVGStyledElement.h:
2653         * svg/SVGTests.h:
2654         * svg/SVGTextElement.h:
2655         * svg/SVGTextPathElement.cpp:
2656         * svg/SVGTransformable.h:
2657         * svg/SVGURIReference.cpp:
2658         * svg/SVGURIReference.h:
2659         * svg/SVGVKernElement.cpp:
2660         * svg/SVGVKernElement.h:
2661         * svg/SVGZoomAndPan.h:
2662         * svg/properties/SVGAnimatedProperty.cpp: Added.
2663         (WebCore::SVGAnimatedProperty::SVGAnimatedProperty):
2664         (WebCore::SVGAnimatedProperty::~SVGAnimatedProperty):
2665         (WebCore::SVGAnimatedProperty::commitChange):
2666         (WebCore::SVGAnimatedProperty::animatedPropertyCache):
2667         * svg/properties/SVGAnimatedProperty.h:
2668         * svg/properties/SVGAnimatedPropertyMacros.h:
2669         (WebCore::SVGSynchronizableAnimatedProperty::synchronize):
2670         * svg/properties/SVGAnimatedStaticPropertyTearOff.h:
2671         * svg/properties/SVGListProperty.h:
2672
2673 2013-07-10  Dominique Leuenberger  <dimstar@opensuse.org>
2674
2675         Fix build against GTK+ 2.0
2676         https://bugs.webkit.org/show_bug.cgi?id=117895
2677
2678         Reviewed by Martin Robinson.
2679
2680         GTK2 build fails for undefined GDK_IS_X11_DISPLAY
2681         GTK 2.0 does define GDK_WINDOWING_X11,but GDK_IS_X11_DISPLAY is not
2682         present in GTK+ 2.0. A dummy defines is sufficient, as GTK 2.0 is not
2683         that multiple backend aware anyway...
2684
2685         * platform/gtk/GtkVersioning.h: Define GDK_IS_X11_DISPLAY for GTK+ 2.0
2686           and compatibility for gtk_widget_get_preferred_size()
2687         * plugins/gtk/gtk2xtbin.c: Include config.h
2688
2689 2013-07-10  Tim Horton  <timothy_horton@apple.com>
2690
2691         Deferring layer flushes can cause painting without layout being done
2692         https://bugs.webkit.org/show_bug.cgi?id=118493
2693
2694         Reviewed by Simon Fraser.
2695
2696         r147797 added a mechanism for the TileController to inform RenderLayerCompositor
2697         that it had performed an action (setNeedsDisplay, etc.) that would cause CoreAnimation
2698         to call back into us to paint in this runloop, and that it shouldn't throttle the next
2699         layer flush.
2700
2701         However, if tiles were created and left unparented (because the TileController was
2702         out-of-window), when they are later parented, we failed to inform RenderLayerCompositor
2703         that they were about to call back for painting, and so it would happily throttle the
2704         next layer flush, and layout would be out of date, and garbage and corruption could result.
2705
2706         To resolve this, rework the logic surrounding parenting existing-but-unparented tiles
2707         to ensure that they get added to the TileController's dirtyRect.
2708
2709         No new tests; the bug only reproduces under specific timing circumstances, and
2710         manifests itself as an assertion failure or garbage on the screen, so it's quite
2711         hard to make a workable test.
2712
2713         * platform/graphics/ca/mac/TileController.mm:
2714         (WebCore::TileController::revalidateTiles):
2715         - Factor out the code to parent unparented tiles so that it is shared between the
2716             created-new-tile and reparenting-existing-tile cases.
2717         - Keep track of whether we updated the frame of a pre-existing tile.
2718         - If the tile is dirty and needed to be parented (because either it's new
2719             or hadn't been parented before), add it to the dirty rect list.
2720         - If the tile changed size, add it to the dirty rect list.
2721
2722         (WebCore::TileController::ensureTilesForRect):
2723         Ditto everything from revalidateTiles.
2724
2725         (WebCore::TileController::createTileLayer):
2726         - Explicitly mark fresh tiles as needing display, so that we can depend on
2727             [WebTileLayer needsDisplay] in revalidateTiles to tell us that it's dirty.
2728
2729 2013-07-10  Eric Carlson  <eric.carlson@apple.com>
2730
2731         [Mac] every enabled text track should be listed in the track menu
2732         https://bugs.webkit.org/show_bug.cgi?id=118477
2733
2734         Reviewed by Jer Noble.
2735
2736         Test: media/video-controls-captions-trackmenu-includes-enabled-track.html
2737
2738         * html/shadow/MediaControlElements.cpp:
2739         (WebCore::MediaControlClosedCaptionsTrackListElement::updateDisplay): Don't select the
2740             "Off" menu item if a track is enabled.
2741
2742         * page/CaptionUserPreferencesMediaAF.cpp:
2743         (WebCore::CaptionUserPreferencesMediaAF::sortedTrackListForMenu): Always include a track
2744             that is showing in the menu. Add more diagnostic logging.
2745
2746 2013-07-10  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2747
2748         Remove ElementTimeControl and expose SVGAnimationElement
2749         https://bugs.webkit.org/show_bug.cgi?id=118349
2750
2751         Reviewed by Rob Buis.
2752
2753         Remove ElementTimeControl IDL interface and move its attributes
2754         to the SVGAnimationElement IDL interface as per the latest SVG2
2755         specification:
2756         https://svgwg.org/svg2-draft/animate.html#InterfaceSVGAnimationElement
2757
2758         Also remove [NoInterfaceObject] IDL extended attribute from
2759         SVGAnimationElement as it is not present in the specification.
2760
2761         This is one step towards removing IDL multiple inheritance in SVG and
2762         complying with the latest SVG2 specification.
2763
2764         No new tests, covered by existing test cases.
2765
2766         * DerivedSources.make:
2767         * GNUmakefile.list.am:
2768         * WebCore.vcxproj/WebCore.vcxproj:
2769         * WebCore.vcxproj/WebCore.vcxproj.filters:
2770         * WebCore.xcodeproj/project.pbxproj:
2771         * bindings/scripts/CodeGeneratorObjC.pm:
2772         * svg/ElementTimeControl.h: Removed.
2773         * svg/ElementTimeControl.idl: Removed.
2774         * svg/SVGAnimationElement.h:
2775         * svg/SVGAnimationElement.idl:
2776
2777 2013-07-10  Arnaud Renevier  <a.renevier@sisa.samsung.com>
2778
2779         Web Inspector: "Always enable" profiling does not work
2780         https://bugs.webkit.org/show_bug.cgi?id=118487
2781
2782         Enable profiler when loading panel if profiler is enabled in inspector
2783         settings.
2784
2785         Reviewed by Timothy Hatcher.
2786
2787         * inspector/front-end/ProfilesPanel.js:
2788
2789 2013-07-09  Roger Fong  <roger_fong@apple.com>
2790
2791         HTMLPluginElement's state should be Playing before firing mouse click event.
2792         https://bugs.webkit.org/show_bug.cgi?id=118398.
2793         <rdar://problem/14262126>
2794
2795         Reviewed by Dean Jackson.
2796
2797         Test: plugins/snapshotting/plugin-receives-click-event.html
2798
2799         * html/HTMLPlugInImageElement.cpp:
2800         (WebCore::HTMLPlugInImageElement::simulatedMouseClickTimerFired):
2801         The defaultEventHandler returns early if the state is not Playing.
2802         This is because we only want the plugin to deal with user interaction normally if the
2803         plugin is actually enabled (not being snapshotted).
2804         When we click on the snapshotted plugin to start it, we mimic what would happen to the plugin
2805         normally by dispatching another click event on top of where we just clicked.
2806         However, we were sending the click event before setting the state to Playing which meant that our
2807         simulated click was not being handled. 
2808         We should be setting this state before sending the click, not after.
2809
2810 2013-07-10  Nick Diego Yamane  <nick.yamane@openbossa.org>
2811
2812         Fix a bug in MediaStreamDescriptor::removeVideoComponent
2813         https://bugs.webkit.org/show_bug.cgi?id=118446
2814
2815         Reviewed by Eric Carlson.
2816
2817         MediaStreamDescriptor::removeVideoComponent is currently trying to
2818         remove the 'videoComponent' from the wrong vector.
2819
2820         * platform/mediastream/MediaStreamDescriptor.h:
2821         (WebCore::MediaStreamDescriptor::removeVideoComponent):
2822
2823 2013-07-10  Mario Sanchez Prada  <mario.prada@samsung.com>
2824
2825         AX: Allow requesting the full plain text for an object with textUnderElement()
2826         https://bugs.webkit.org/show_bug.cgi?id=105214
2827
2828         Reviewed by Chris Fleizach.
2829
2830         Allow specifying different function modes for textUnderElement(),
2831         so we can effectively ask for the "normal" result (e.g to retrieve
2832         test to be exposed as the 'title') or for the full text under the
2833         element (without omitting any child in the subtree). This is
2834         needed for the implementation of atk_text_get_text() in GTK/EFL.
2835
2836         * accessibility/AccessibilityObject.h: Add new enumeration to
2837         specify the different modes for textUnderElement().
2838         (WebCore::AccessibilityObject::textUnderElement): Added parameter.
2839
2840         * accessibility/AccessibilityNodeObject.cpp:
2841         (WebCore::shouldUseAccessiblityObjectInnerText): Always return
2842         'true' when using the "include all children" mode.
2843         (WebCore::AccessibilityNodeObject::textUnderElement): Updated call
2844         to shouldUseAccessiblityObjectInnerText().
2845         * accessibility/AccessibilityNodeObject.h:
2846
2847         * accessibility/AccessibilityRenderObject.cpp:
2848         (WebCore::AccessibilityRenderObject::textUnderElement): Removed
2849         GTK specific code and expand the usage of text iterators beyond
2850         text render objects, using it also when in the "include all
2851         children" mode.
2852         * accessibility/AccessibilityRenderObject.h:
2853
2854         * accessibility/atk/AccessibilityObjectAtk.cpp:
2855         (WebCore::AccessibilityObject::getLengthForTextRange): Updated
2856         call to textUnderElement(), preserving the previous behavior.
2857
2858         * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
2859         (webkitAccessibleTextGetText): Updated call to textUnderElement(),
2860         using the "include all children" mode.
2861
2862 2013-07-10  Sergio Correia  <sergio.correia@openbossa.org>
2863
2864         Remove the meshType from CoordinatedCustomFilterOperation
2865         https://bugs.webkit.org/show_bug.cgi?id=118529
2866
2867         Reviewed by Noam Rosenthal.
2868
2869         Following the removal of the meshType from CustomFilterOperation in r149153,
2870         remove also the meshType from CoordinatedCustomFilterOperation.
2871
2872         No new tests, no new functionality.
2873
2874         * platform/graphics/texmap/coordinated/CoordinatedCustomFilterOperation.h:
2875         (WebCore::CoordinatedCustomFilterOperation::create): Remove unused meshType parameter.
2876         (WebCore::CoordinatedCustomFilterOperation::CoordinatedCustomFilterOperation): Ditto.
2877  Ditto.
2878 2013-07-10  James Craig  <james@cookiecrook.com>
2879
2880         AX: AccessibilityNodeObject::supportsRequiredAttribute() should switch on CellRole
2881         https://bugs.webkit.org/show_bug.cgi?id=117817
2882
2883         Reviewed by Chris Fleizach.
2884
2885         CellRole supports the required attribute now for accessibility, according to ARIA spec. 
2886         Updated existing test coverage.
2887
2888         * accessibility/AccessibilityNodeObject.cpp:
2889         (WebCore::AccessibilityNodeObject::supportsRequiredAttribute):
2890
2891 2013-07-10  Csaba Osztrogonác  <ossy@webkit.org>
2892
2893         REGRESSION(r151957): WebGL textures do not show
2894         https://bugs.webkit.org/show_bug.cgi?id=118464
2895
2896         Reviewed by Christophe Dumez.
2897
2898         After r151957 decoder.frameIsCompleteAtIndex(0) doesn't trigger image decoding,
2899         we have to call decoder.createFrameAtIndex(0) explicitly to ensure it.
2900
2901         * platform/graphics/cairo/GraphicsContext3DCairo.cpp:
2902         (WebCore::GraphicsContext3D::ImageExtractor::extractImage):
2903         * platform/graphics/efl/GraphicsContext3DEfl.cpp:
2904         (WebCore::GraphicsContext3D::ImageExtractor::extractImage):
2905
2906 2013-07-10  Karol Świniarski  <k.swiniarsk2@samsung.com>
2907
2908         Change recently ratified extensions prefixes from WEBKIT_WEBGL_ to WEBGL_
2909         https://bugs.webkit.org/show_bug.cgi?id=117786
2910
2911         Reviewed by Dean Jackson.
2912
2913         According to WebGL's revision 10, extensions should be named: WEBGL_lose_context,
2914         WEBGL_depth_texture, WEBGL_compressed_texture_s3tc.
2915
2916         No new tests. Covered by existing tests:
2917         LayoutTests/webgl/conformance/extensions/get-extension.html
2918         LayoutTests/webgl/conformance/context/context-lost.html
2919         LayoutTests/webgl/conformance/extensions/webgl-depth-texture.html
2920         LayoutTests/webgl/conformance/extensions/webgl-compressed-texture-s3tc.html
2921
2922         * html/canvas/WebGLRenderingContext.cpp:
2923         (WebCore::WebGLRenderingContext::getExtension):
2924         (WebCore::WebGLRenderingContext::getSupportedExtensions):
2925
2926 2013-07-09  Byungwoo Lee  <bw80.lee@samsung.com>
2927
2928         Unreviewed build fix.
2929
2930         * svg/SVGImageElement.cpp:
2931         (WebCore::SVGImageElement::SVGImageElement):
2932
2933 2013-07-09  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2934
2935         Introduce isSVGFontElement() and isSVGImageElement(), use them
2936         https://bugs.webkit.org/show_bug.cgi?id=118504
2937
2938         Reviewed by Benjamin Poulain.
2939
2940         Let's use isFoo() to enhance readibility in svg element classes along with html's.
2941
2942         No new tests, there is no behavior changes.
2943
2944         * loader/cache/CachedFont.cpp:
2945         (WebCore::CachedFont::getSVGFontById):
2946         * rendering/HitTestResult.cpp:
2947         (WebCore::HitTestResult::absoluteImageURL):
2948         * svg/SVGAnimateMotionElement.cpp:
2949         (WebCore::SVGAnimateMotionElement::hasValidAttributeType):
2950         * svg/SVGElement.cpp:
2951         (WebCore::SVGElement::viewportElement):
2952         * svg/SVGFontElement.cpp:
2953         (WebCore::SVGFontElement::SVGFontElement):
2954         * svg/SVGFontElement.h:
2955         (WebCore::toSVGFontElement):
2956         (WebCore::isSVGFontElement):
2957         * svg/SVGFontFaceElement.cpp:
2958         (WebCore::SVGFontFaceElement::associatedFontElement):
2959         (WebCore::SVGFontFaceElement::rebuildFontFace):
2960         * svg/SVGGlyphElement.cpp:
2961         (WebCore::SVGGlyphElement::invalidateGlyphCache):
2962         * svg/SVGHKernElement.cpp:
2963         (WebCore::SVGHKernElement::insertedInto):
2964         (WebCore::SVGHKernElement::removedFrom):
2965         * svg/SVGImageElement.cpp:
2966         (WebCore::SVGImageElement::SVGImageElement):
2967         * svg/SVGImageElement.h:
2968         (WebCore::toSVGImageElement):
2969         (WebCore::isSVGImageElement):
2970         * svg/SVGLocatable.cpp:
2971         (WebCore::isViewportElement):
2972         * svg/SVGVKernElement.cpp:
2973         (WebCore::SVGVKernElement::insertedInto):
2974         (WebCore::SVGVKernElement::removedFrom):
2975
2976 2013-07-09  Ryuan Choi  <ryuan.choi@samsung.com>
2977
2978         [EFL] Add ewk_view_device_pixel_ratio_set
2979         https://bugs.webkit.org/show_bug.cgi?id=118521
2980
2981         Reviewed by Gyuyoung Kim.
2982
2983         No new tests, covered by existing tests.
2984
2985         * dom/ViewportArguments.cpp: Remove PLATFORM(EFL) not to use deprecatedTargetDPI
2986         * dom/ViewportArguments.h: Ditto.
2987         * platform/efl/EflScreenUtilities.cpp: Removed getDPI() which is not used anymore.
2988         * platform/efl/EflScreenUtilities.h: Ditto.
2989
2990 2013-07-09  James Craig  <james@cookiecrook.com>
2991
2992         @readonly and @aria-readonly="false" are not exposed correctly to accessibility
2993         https://bugs.webkit.org/show_bug.cgi?id=118475
2994
2995         Reviewed by Chris Fleizach.
2996
2997         Account for implicit and explicit @readonly/@aria-readonly mismatches. Updated existing test coverage.
2998
2999         * accessibility/AccessibilityRenderObject.cpp:
3000         (WebCore::AccessibilityRenderObject::canSetValueAttribute):
3001
3002 2013-07-09  Jer Noble  <jer.noble@apple.com>
3003
3004         Reviewed by Simon Fraser.
3005
3006         Remember the scroll position and restore after exiting full-screen mode.
3007         https://bugs.webkit.org/show_bug.cgi?id=61956
3008
3009         No new tests, adds a client callback used by WebKit and WebKit2 win.
3010
3011         * platform/graphics/win/FullScreenController.cpp:
3012         (FullScreenController::enterFullScreen):
3013         (FullScreenController::exitFullScreen):
3014         * platform/graphics/win/FullScreenControllerClient.h:
3015
3016 2013-07-09  Jeff Miller  <jeffm@apple.com>
3017
3018         AuthenticationMac.mm does not handle NSURLAuthenticationMethodNegotiate in WebCore::mac()
3019         https://bugs.webkit.org/show_bug.cgi?id=118518
3020
3021         Reviewed by Alexey Proskuryakov.
3022
3023         * platform/network/mac/AuthenticationMac.mm:
3024         (WebCore::mac):
3025         Map ProtectionSpaceAuthenticationSchemeNegotiate to NSURLAuthenticationMethodNegotiate.
3026
3027 2013-07-09  Jeff Miller  <jeffm@apple.com>
3028
3029         AuthenticationMac.mm does not handle NSURLAuthenticationMethodNegotiate
3030         https://bugs.webkit.org/show_bug.cgi?id=118517
3031
3032         Reviewed by Brady Eidson.
3033
3034         * platform/network/mac/AuthenticationMac.mm:
3035         (WebCore::core):
3036         Map "NSURLAuthenticationMethodNegotiate" to ProtectionSpaceAuthenticationSchemeNegotiate.
3037
3038 2013-07-09  peavo@outlook.com  <peavo@outlook.com>
3039
3040         [Windows] Compile fix.
3041         https://bugs.webkit.org/show_bug.cgi?id=106558
3042
3043         Reviewed by Brent Fulgham.
3044
3045         On Windows, dispatch.h needs to be included before certain CFNetwork headers.
3046
3047         * WebCorePrefix.h: Include dispatch.h.
3048
3049 2013-07-09  Mark Lam  <mark.lam@apple.com>
3050
3051         Fix 30% JSBench regression (caused by adding column numbers to stack traces).
3052         https://bugs.webkit.org/show_bug.cgi?id=118481.
3053
3054         Reviewed by Mark Hahnenberg and Geoffrey Garen.
3055
3056         Test: fast/js/line-column-numbers.html
3057
3058         Updated the bindings to use StackFrame::computeLineAndColumn(). The old
3059         StackFrame::line() and StackFrame::column() has been removed. The new
3060         algorithm always computes the 2 values together anyway. Hence it is more
3061         efficient to return them as a pair instead of doing the same computation
3062         twice for each half of the result.
3063
3064         * bindings/js/ScriptCallStackFactory.cpp:
3065         (WebCore::createScriptCallStack):
3066         (WebCore::createScriptCallStackFromException):
3067         * bindings/js/ScriptSourceCode.h:
3068         (WebCore::ScriptSourceCode::ScriptSourceCode):
3069
3070 2013-07-09  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3071
3072         Use toSVGFontElement() instead of static_cast<SVGFontElement*>
3073         https://bugs.webkit.org/show_bug.cgi?id=118496
3074
3075         Reviewed by Andreas Kling.
3076
3077         As a step to change static_cast with toXXX, static_cast<SVGFontElement*> can
3078         be changed with toSVGFontElement().
3079
3080         Blink merge from https://src.chromium.org/viewvc/blink?view=rev&revision=153761
3081
3082         * svg/SVGFontElement.h:
3083         (WebCore::toSVGFontElement):
3084         * svg/SVGFontFaceElement.cpp:
3085         (WebCore::SVGFontFaceElement::rebuildFontFace):
3086         * svg/SVGGlyphElement.cpp:
3087         (WebCore::SVGGlyphElement::invalidateGlyphCache):
3088         * svg/SVGHKernElement.cpp:
3089         (WebCore::SVGHKernElement::insertedInto):
3090         (WebCore::SVGHKernElement::removedFrom):
3091         * svg/SVGVKernElement.cpp:
3092         (WebCore::SVGVKernElement::insertedInto):
3093         (WebCore::SVGVKernElement::removedFrom):
3094
3095 2013-07-09  Christophe Dumez  <ch.dumez@sisa.samsung.com>
3096
3097         Remove support for [PassThisToCallback] extended attribute
3098         https://bugs.webkit.org/show_bug.cgi?id=118391
3099
3100         Reviewed by Kentaro Hara.
3101
3102         The [PassThisToCallback] Webkit-specific IDL extended attribute is supported
3103         by the JSC bindings generator but is no longer used. The attribute is not
3104         even documented.
3105
3106         We can therefore drop support for this from the generator to simplify the
3107         code.
3108
3109         No new tests, no behavior change.
3110
3111         * bindings/scripts/CodeGeneratorJS.pm:
3112         (GenerateCallbackImplementation):
3113         * bindings/scripts/IDLAttributes.txt:
3114         * bindings/scripts/test/JS/JSTestCallback.cpp:
3115         (WebCore::JSTestCallback::callbackRequiresThisToPass):
3116         * bindings/scripts/test/TestCallback.idl:
3117
3118 2013-07-09  Praveen R Jadhav  <praveen.j@samsung.com>
3119
3120         Update Exception handling in WebAudio.
3121         https://bugs.webkit.org/show_bug.cgi?id=118405.
3122
3123         Reviewed by Chris Rogers.
3124
3125         AudioBufferSourceNode, OscillatorNode and AnalyserNode don't
3126         propagate exception mentioned in WebAudio spec.
3127         Code updated to throw DOM exception as expected.
3128
3129         Tests: webaudio/analyser-exception.html
3130                webaudio/audiobuffersource-exception.html
3131
3132         * Modules/webaudio/AnalyserNode.cpp:
3133         (WebCore::AnalyserNode::setFftSize):
3134         (WebCore::AnalyserNode::setMinDecibels):
3135         (WebCore::AnalyserNode::setMaxDecibels):
3136         (WebCore::AnalyserNode::setSmoothingTimeConstant):
3137         * Modules/webaudio/AnalyserNode.h:
3138         * Modules/webaudio/AnalyserNode.idl:
3139         * Modules/webaudio/AudioBufferSourceNode.cpp:
3140         (WebCore::AudioBufferSourceNode::startGrain):
3141         (WebCore::AudioBufferSourceNode::noteGrainOn):
3142         * Modules/webaudio/AudioBufferSourceNode.h:
3143         * Modules/webaudio/AudioBufferSourceNode.idl:
3144         * Modules/webaudio/AudioContext.cpp:
3145         (WebCore::AudioContext::createBuffer):
3146         (WebCore::AudioContext::createScriptProcessor):
3147         (WebCore::AudioContext::createPeriodicWave):
3148         * Modules/webaudio/AudioScheduledSourceNode.cpp:
3149         (WebCore::AudioScheduledSourceNode::start):
3150         (WebCore::AudioScheduledSourceNode::stop):
3151         (WebCore::AudioScheduledSourceNode::noteOn):
3152         (WebCore::AudioScheduledSourceNode::noteOff):
3153         * Modules/webaudio/AudioScheduledSourceNode.h:
3154         * Modules/webaudio/OscillatorNode.idl:
3155
3156 2013-07-08  Martin Robinson  <mrobinson@igalia.com>
3157
3158         [CSS Grid Layout] Rename grid-{rows|columns} to grid-definition-{rows|columns}
3159         https://bugs.webkit.org/show_bug.cgi?id=103336
3160
3161         Reviewed by Tony Chang.
3162
3163         Rename -webkit-grid-{rows|columns} to -webkit-grid-definition-{rows|columns}.
3164         The latest version of the spec has renamed these properties.
3165
3166         * css/CSSComputedStyleDeclaration.cpp:
3167         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Handle the new names.
3168         * css/CSSParser.cpp:
3169         (WebCore::CSSParser::parseValue): Ditto.
3170         * css/CSSProperty.cpp:
3171         (WebCore::CSSProperty::isInheritedProperty): Ditto.
3172         * css/CSSPropertyNames.in: Add support for the new names.
3173         * css/StyleResolver.cpp:
3174         (WebCore::StyleResolver::applyProperty): Handle the new names.
3175
3176 2013-07-08  Enrica Casucci  <enrica@apple.com>
3177
3178         DeleteSelectionCommand does not handle correctly deletion with two consecutive BR element.
3179         https://bugs.webkit.org/show_bug.cgi?id=118457
3180         <rdar://problem/14160912>
3181
3182         Reviewed by Simon Fraser.
3183
3184         In DeleteSelectionCommand::handleSpecialCareBRDelete we did not
3185         handle correctly the case where we had <br><br> in the markup and
3186         nothing was being deleted. We should consider this like
3187         the case where the <br> is on the line by itself and remove it.
3188
3189         Test: editing/deleting/delete-image-followed-by-two-br.html
3190
3191         * editing/DeleteSelectionCommand.cpp:
3192         (WebCore::DeleteSelectionCommand::handleSpecialCaseBRDelete):
3193
3194 2013-07-08  Radu Stavila  <stavila@adobe.com>
3195
3196         NamedFlowCollection getters should return undefined when there's no NamedFlow
3197         https://bugs.webkit.org/show_bug.cgi?id=118463
3198
3199         Reviewed by Christophe Dumez.
3200
3201         Added new TreatReturnedNullObjectAs attribute for generated methods and set it to Undefined
3202         for the item and namedItem methods of DOMNamedFlowCollection.
3203
3204         Test: fast/regions/webkit-named-flow-collection-undefined.html
3205
3206         * bindings/scripts/CodeGeneratorJS.pm:
3207         (GenerateImplementationFunctionCall):
3208         * bindings/scripts/IDLAttributes.txt:
3209         * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
3210         (WebDOMTestObj::treatReturnedNullObjectAsUndefined):
3211         * bindings/scripts/test/CPP/WebDOMTestObj.h:
3212         * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
3213         (webkit_dom_test_obj_treat_returned_null_object_as_undefined):
3214         * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
3215         * bindings/scripts/test/JS/JSTestObj.cpp:
3216         (WebCore::jsTestObjPrototypeFunctionTreatReturnedNullObjectAsUndefined):
3217         * bindings/scripts/test/JS/JSTestObj.h:
3218         * bindings/scripts/test/ObjC/DOMTestObj.h:
3219         * bindings/scripts/test/ObjC/DOMTestObj.mm:
3220         (-[DOMTestObj treatReturnedNullObjectAsUndefined]):
3221         * bindings/scripts/test/TestObj.idl:
3222         * dom/DOMNamedFlowCollection.idl:
3223
3224 2013-07-06 Changhun Kang <temoochin@company100.net>
3225
3226         Remove unused variables in FocusCandidate.
3227         https://bugs.webkit.org/show_bug.cgi?id=118449
3228
3229         Reviewed by Antonio Gomes.
3230
3231         The variables for parent in FocusCandidate are not used anymore.
3232
3233         No new tests. No change in behavior.
3234
3235         * page/SpatialNavigation.cpp:
3236         (WebCore::FocusCandidate::FocusCandidate):
3237         * page/SpatialNavigation.h:
3238         (WebCore::FocusCandidate::FocusCandidate):
3239
3240 2013-07-08  Chris Fleizach  <cfleizach@apple.com>
3241
3242         AX: iOS: SVG paths are not offset by the parent bounding box
3243         https://bugs.webkit.org/show_bug.cgi?id=118433
3244
3245         The path for SVG shapes is in terms of its parent's view space. We need to offset
3246         the path by that amount so that it's in the right location.
3247
3248         Reviewed by Tim Horton.
3249
3250         * accessibility/AccessibilityRenderObject.cpp:
3251         (WebCore::AccessibilityRenderObject::elementPath):
3252
3253 2013-07-08  Carlos Garcia Campos  <cgarcia@igalia.com>
3254
3255         Unreviewed. Fix make distcheck.
3256
3257         * GNUmakefile.list.am: Add missing header files.
3258
3259 2013-07-08  Ruth Fong  <ruth_fong@apple.com>
3260
3261         Fix TextTrackCue::cueIndex() to handle the null case of TextTrack::cues(() properly
3262         https://bugs.webkit.org/show_bug.cgi?id=117815
3263         <rdar://problem/14211041>
3264
3265         Reviewed by Eric Carlson.
3266
3267         Merge https://src.chromium.org/viewvc/blink?revision=153206&view=revision
3268         
3269         No new tests, only behavior change is preventing a crash in the release build.
3270         cueIndex() is only used for sorting cues, so returning an invalidCueIndex in the case
3271         where track()->cues() is null makes sense and won't modify behavior.
3272
3273         * html/track/TextTrackCue.cpp:
3274         (WebCore::TextTrackCue::cueIndex):
3275
3276 2013-07-08  Commit Queue  <commit-queue@webkit.org>
3277
3278         Unreviewed, rolling out r152416.
3279         http://trac.webkit.org/changeset/152416
3280         https://bugs.webkit.org/show_bug.cgi?id=118476
3281
3282         Wrong fix for the bug (Requested by ap on #webkit).
3283
3284         * platform/text/TextEncodingRegistry.cpp:
3285         (WebCore::newTextCodec):
3286
3287 2013-07-08  Andreas Kling  <akling@apple.com>
3288
3289         REGRESSION(r125294): A style rule with more than 8192 selectors can cause style corruption.
3290         <http://webkit.org/b/118369>
3291         <rdar://problem/14291428>
3292
3293         Reviewed by Antti Koivisto.
3294
3295         Add a semi-hard cap of 8192 selectors per CSS rule. Rules with longer selector lists will be split into
3296         multiple rules (with 8192 selectors per rule.) The style properties are shared behind the scenes
3297         so it's all pretty efficient.
3298
3299         This does generate a different CSSOM for gigantic selector lists, I've added a test to document this.
3300         Note that setting CSSStyleRule.selectorText with over 8192 selectors will now fail, the splitting into
3301         multiple rules only happens when parsing full style sheets.
3302
3303         Test: fast/css/rule-selector-overflow.html
3304
3305         * css/CSSSelectorList.cpp:
3306         (WebCore::CSSSelectorList::selectorCount):
3307
3308             Add a helper to count the number of selectors in a list (not the number of raw selector components.)
3309
3310         * css/RuleSet.h:
3311         * css/CSSStyleRule.cpp:
3312         (WebCore::CSSStyleRule::setSelectorText):
3313
3314             Add RuleData::maximumSelectorCount constant and cap CSSStyleRule.selectorText to that many selectors.
3315
3316         * css/CSSSelectorList.h:
3317         (WebCore::CSSSelectorList::adoptSelectorArray):
3318         * css/StyleRule.cpp:
3319         (WebCore::StyleRule::create):
3320         (WebCore::StyleRule::splitIntoMultipleRulesWithMaximumSelectorCount):
3321         * css/StyleRule.h:
3322         (WebCore::StyleRule::parserAdoptSelectorArray):
3323         * css/StyleSheetContents.cpp:
3324         (WebCore::StyleSheetContents::parserAppendRule):
3325
3326             The meat of this change. Split rules with >8K selectors into multiple rules with 8K selectors in each.
3327
3328         * css/StyleRule.h:
3329         (WebCore::toStyleRule):
3330
3331             Added a toStyleRule() helper for good measure.
3332
3333 2013-07-08  Christophe Dumez  <ch.dumez@sisa.samsung.com>
3334
3335         Introduce DECLARE_FORWARDING_ATTRIBUTE_EVENT_LISTENER() macro
3336         https://bugs.webkit.org/show_bug.cgi?id=118408
3337
3338         Reviewed by Philip Rogers.
3339
3340         Split DEFINE_FORWARDING_ATTRIBUTE_EVENT_LISTENER() macro into separate
3341         DECLARE and DEFINE macros to reduce the number of header includes in
3342         SVG.
3343
3344         No new tests, no behavior change.
3345
3346         * dom/EventTarget.h:
3347         * svg/SVGElementInstance.cpp:
3348         (WebCore::SVGElementInstance::create):
3349         (WebCore::SVGElementInstance::toNode):
3350         (WebCore::SVGElementInstance::ownerDocument):
3351         * svg/SVGElementInstance.h:
3352
3353 2013-07-08  Jae Hyun Park  <jae.park@company100.net>
3354
3355         [Coordinated Graphics] Rename variables in UpdateAtlas
3356         https://bugs.webkit.org/show_bug.cgi?id=118403
3357
3358         Reviewed by Noam Rosenthal.
3359
3360         As of r149292, non-composited contents layer was removed from
3361         CoordinatedGraphics. So, the variables should be renamed for
3362         clarification.
3363
3364         * platform/graphics/texmap/coordinated/CompositingCoordinator.cpp:
3365         (WebCore::CompositingCoordinator::releaseInactiveAtlasesTimerFired):
3366
3367 2013-07-08  Ádám Kallai  <kadam@inf.u-szeged.hu>
3368
3369         [Qt] Incremental build fix after r145712.
3370         https://bugs.webkit.org/show_bug.cgi?id=112576.
3371
3372         Reviewed by Jocelyn Turcotte.
3373
3374         * DerivedSources.pri: Added dependence to INSPECTOR_JSON.
3375         * inspector/front-end/WebKit.qrc: Added missing JS file.
3376
3377 2013-07-08  Kihong Kwon  <kihong.kwon@samsung.com>
3378
3379         vibrate function have to return boolean value.
3380         https://bugs.webkit.org/show_bug.cgi?id=118288
3381
3382         Reviewed by Gyuyoung Kim.
3383
3384         According to latest Vibration API which is LC, vibrate() needs to return boolean value
3385         and exception code is removed also. In addition, remove condition for canceling vibration
3386         can be called when visibility state is hidden.
3387         http://www.w3.org/TR/vibration/
3388
3389         No new tests. vibration/navigator-vibration.html is changed.
3390
3391         * Modules/vibration/NavigatorVibration.cpp:
3392         (WebCore::NavigatorVibration::vibrate):
3393         * Modules/vibration/NavigatorVibration.h:
3394         * Modules/vibration/NavigatorVibration.idl:
3395         * Modules/vibration/Vibration.cpp:
3396         (WebCore::Vibration::vibrate):
3397         * Modules/vibration/Vibration.h:
3398
3399 2013-07-07  Kangil Han  <kangil.han@samsung.com>
3400
3401         Adopt is/toHTMLTableElement for code cleanup
3402         https://bugs.webkit.org/show_bug.cgi?id=118393
3403
3404         Reviewed by Andreas Kling.
3405
3406         To enhance readability, this patch adopts is/toHTMLTableElement.
3407         This also helps out to reduce duplicated use of static_cast.
3408
3409         * accessibility/AccessibilityRenderObject.cpp:
3410         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
3411         * accessibility/AccessibilityTable.cpp:
3412         (WebCore::AccessibilityTable::isDataTable):
3413         (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
3414         (WebCore::AccessibilityTable::title):
3415         * accessibility/atk/WebKitAccessibleInterfaceTable.cpp:
3416         (webkitAccessibleTableGetCaption):
3417         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
3418         (webkitAccessibleGetDescription):
3419         * css/StyleResolver.cpp:
3420         (WebCore::StyleResolver::adjustRenderStyle):
3421         * dom/Position.cpp:
3422         (WebCore::endsOfNodeAreVisuallyDistinctPositions):
3423         * editing/DeleteSelectionCommand.cpp:
3424         (WebCore::DeleteSelectionCommand::handleGeneralDelete):
3425         * editing/InsertLineBreakCommand.cpp:
3426         (WebCore::InsertLineBreakCommand::doApply):
3427         * editing/htmlediting.cpp:
3428         (WebCore::isNonTableCellHTMLBlockElement):
3429         * editing/markup.cpp:
3430         (WebCore::ancestorToRetainStructureAndAppearanceForBlock):
3431         * html/FTPDirectoryDocument.cpp:
3432         (WebCore::FTPDirectoryDocumentParser::loadDocumentTemplate):
3433         (WebCore::FTPDirectoryDocumentParser::createBasicDocument):
3434         * html/HTMLFormElement.cpp:
3435         (WebCore::HTMLFormElement::rendererIsNeeded):
3436         * html/HTMLTableElement.h:
3437         (WebCore::isHTMLTableElement):
3438         (WebCore::toHTMLTableElement):
3439         * html/HTMLTablePartElement.cpp:
3440         (WebCore::HTMLTablePartElement::findParentTable):
3441         * html/HTMLTableRowElement.cpp:
3442         (WebCore::HTMLTableRowElement::rowIndex):
3443         * html/HTMLTableRowsCollection.cpp:
3444         (WebCore::HTMLTableRowsCollection::HTMLTableRowsCollection):
3445         (WebCore::HTMLTableRowsCollection::virtualItemAfter):
3446         * html/parser/HTMLElementStack.cpp:
3447         (WebCore::HTMLNames::isScopeMarker):
3448         (WebCore::HTMLNames::isTableScopeMarker):
3449         * html/parser/HTMLTreeBuilder.cpp:
3450         (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
3451         (WebCore::HTMLTreeBuilder::processCharacterBuffer):
3452         * platform/mac/HTMLConverter.mm:
3453         (-[WebHTMLConverter _computedStringForNode:property:]):
3454         * rendering/RenderObject.cpp:
3455         (WebCore::RenderObject::offsetParent):
3456         * rendering/RenderTable.cpp:
3457         (WebCore::RenderTable::convertStyleLogicalWidthToComputedWidth):
3458         (WebCore::RenderTable::convertStyleLogicalHeightToComputedHeight):
3459
3460 2013-07-06  Rob Buis  <rbuis@rim.com>
3461
3462         createElement("image") creates an HTMLImageElement, although this hack should exist in parser only
3463         https://bugs.webkit.org/show_bug.cgi?id=88360
3464
3465         Reviewed by Sam Weinig.
3466
3467         Create a HTMLElement when using createElement('image'), but keep the HTML5 parser constructing HTMLImageelement for it.
3468
3469         * html/HTMLTagNames.in:
3470
3471 2013-07-06  Christophe Dumez  <ch.dumez@sisa.samsung.com>
3472
3473         Stop hardcoding interfaces that have indexed getters returning strings
3474         https://bugs.webkit.org/show_b