WebKit can erroneously strip font-size CSS property from font element with size attribute
https://bugs.webkit.org/show_bug.cgi?id=110657

Reviewed by Justin Garcia.

Source/WebCore: 

The bug was caused by ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline
erroneously removing style attributes even on an element such as font that implicitly adds
editing style.

Fixed the bug by removing these elements or attributes when they conflict with the inline
style of the element. This is always safe because implicit style of an element is always
overridden by that of inline style.

Note that when the font element becomes "empty" (i.e. doesn't have any attributes), then
we also want to delete this font element as it doesn't contribute anything to the style.

Test: editing/pasteboard/insert-u-with-text-decoration-none.html
      editing/pasteboard/insert-font-with-size-and-css.html

* editing/ApplyStyleCommand.cpp:
(WebCore::isEmptyFontTag): Added ShouldStyleAttributeBeEmpty as an argument. This will
allow removeRedundantStylesAndKeepStyleSpanInline to ignore style attribute when we know
the attribute can be removed.

* editing/ApplyStyleCommand.h: Expose isEmptyFontTag and ShouldStyleAttributeBeEmpty.

* editing/ReplaceSelectionCommand.cpp:
(WebCore::ReplaceSelectionCommand::InsertedNodes::didReplaceNode): Added.
(WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline): See above.
* editing/ReplaceSelectionCommand.h:
(InsertedNodes): Added a declaration of didReplaceNode.

LayoutTests: 

Added two regression tests to ensure WebKit doesn't erroneously remove inline styles of an element
when its implicit styles differ from the inline styles. Also rebaselined some tests as their results
have progressed.

* editing/pasteboard/insert-u-with-text-decoration-none-expected.txt: Added.
* editing/pasteboard/insert-u-with-text-decoration-none.html: Added.
* editing/pasteboard/insert-font-with-size-and-css-expected.txt: Added.
* editing/pasteboard/insert-font-with-size-and-css.html: Added.
* editing/pasteboard/4744008-expected.txt:
* editing/pasteboard/paste-text-with-style-5-expected.txt:
* editing/pasteboard/paste-text-with-style-5.html:
* editing/pasteboard/style-from-rules-expected.txt:
* editing/pasteboard/style-from-rules.html:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@143821 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Disable MediaSource on Apple Windows port
https://bugs.webkit.org/show_bug.cgi?id=110494

Reviewed by Tim Horton.

Source/WebKit:

* WebKit.vcxproj/FeatureDefines.props:

WebKitLibraries:

* win/tools/vsprops/FeatureDefines.vsprops:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@143822 268f45cc-cd09-0410-ab3c-d52691b4dbfc