[iOS] Input type=time elements styled with SVG fonts have 0 width
https://bugs.webkit.org/show_bug.cgi?id=133524

Reviewed by Simon Fraser.

Source/WebCore:
Refactor how the LocalizedDateCache returns maximum widths for input elements. Currently,
measuring the width of an SVG font requires a RenderObject for context, which the
LocalizedDateCache can't know about (it would be a platform violation). Instead, the
LocalizedDateCache can return the strings that it would use to measure the width, and the
caller can actually run the width computation.

Test: fast/forms/time-input-svg-font.html

* platform/text/PlatformLocale.h:
* platform/text/ios/LocalizedDateCache.h:
* platform/text/ios/LocalizedDateCache.mm:
(WebCore::LocalizedDateCache::maximumWidthForDateType): Take a delegate which can
measure text
(WebCore::LocalizedDateCache::calculateMaximumWidth): Perform maximum width
computation using delegate.
* platform/text/mac/LocaleMac.h:
* platform/text/mac/LocaleMac.mm:
(WebCore::LocaleMac::formatDateTime):
(WebCore::LocaleMac::maximumWidthForDateType): Deleted. Short-circuit this and go
directly to the LocalizedDateCache. This makes sense because we have to explicitly
insert computed values back into the cache in this new model.
* rendering/RenderThemeIOS.mm:
(WebCore::adjustInputElementButtonStyle): Create a delegate and pass it to the
LocalizedDateCache

LayoutTests:
Simply render a variety of input elements with SVG fonts, and make sure they have sane widths. Note that this
test is not platform-specific, even though the bug is.

* fast/forms/time-input-svg-font-expected.txt: Added.
* fast/forms/time-input-svg-font.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170072 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed.  Added self to list of committers.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170073 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove unnecessary Structure flags from generated bindings
https://bugs.webkit.org/show_bug.cgi?id=133992

Reviewed by Daniel Bates.

- Remove OverridesVisitChildren flag from DOM prototype objects. They never
  implement visitChildren.
- Remove OverridesGetOwnPropertySlot and ImplementsHasInstance from DOM constructor
  objects. getOwnPropertySlot is never implemented and ImplementsHasInstance is inherited
  automatically from DOMConstructorObject.
- If we are not changing any flags, we now don't emit StructureFlags at all for the class.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
(GeneratePrototypeDeclaration):
(GenerateConstructorDeclaration):
* bindings/scripts/test/JS/JSTestActiveDOMObject.h:
(WebCore::JSTestActiveDOMObjectPrototype::JSTestActiveDOMObjectPrototype):
(WebCore::JSTestActiveDOMObjectConstructor::createStructure):
* bindings/scripts/test/JS/JSTestCustomNamedGetter.h:
(WebCore::JSTestCustomNamedGetterPrototype::JSTestCustomNamedGetterPrototype):
(WebCore::JSTestCustomNamedGetterConstructor::createStructure):
* bindings/scripts/test/JS/JSTestEventConstructor.h:
(WebCore::JSTestEventConstructorPrototype::JSTestEventConstructorPrototype):
* bindings/scripts/test/JS/JSTestEventTarget.h:
(WebCore::JSTestEventTargetPrototype::JSTestEventTargetPrototype):
(WebCore::JSTestEventTargetConstructor::createStructure):
* bindings/scripts/test/JS/JSTestException.h:
(WebCore::JSTestExceptionPrototype::JSTestExceptionPrototype):
(WebCore::JSTestExceptionConstructor::createStructure):
* bindings/scripts/test/JS/JSTestGenerateIsReachable.h:
(WebCore::JSTestGenerateIsReachablePrototype::JSTestGenerateIsReachablePrototype):
(WebCore::JSTestGenerateIsReachableConstructor::createStructure):
* bindings/scripts/test/JS/JSTestInterface.h:
(WebCore::JSTestInterfacePrototype::JSTestInterfacePrototype):
* bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
(WebCore::JSTestMediaQueryListListenerPrototype::JSTestMediaQueryListListenerPrototype):
(WebCore::JSTestMediaQueryListListenerConstructor::createStructure):
* bindings/scripts/test/JS/JSTestNamedConstructor.h:
(WebCore::JSTestNamedConstructorPrototype::JSTestNamedConstructorPrototype):
(WebCore::JSTestNamedConstructorConstructor::createStructure):
* bindings/scripts/test/JS/JSTestNode.h:
(WebCore::JSTestNodePrototype::JSTestNodePrototype):
* bindings/scripts/test/JS/JSTestNondeterministic.h:
(WebCore::JSTestNondeterministicPrototype::JSTestNondeterministicPrototype):
(WebCore::JSTestNondeterministicConstructor::createStructure):
* bindings/scripts/test/JS/JSTestObj.h:
(WebCore::JSTestObjPrototype::JSTestObjPrototype):
* bindings/scripts/test/JS/JSTestOverloadedConstructors.h:
(WebCore::JSTestOverloadedConstructorsPrototype::JSTestOverloadedConstructorsPrototype):
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
(WebCore::JSTestSerializedScriptValueInterfacePrototype::JSTestSerializedScriptValueInterfacePrototype):
(WebCore::JSTestSerializedScriptValueInterfaceConstructor::createStructure):
* bindings/scripts/test/JS/JSTestTypedefs.h:
(WebCore::JSTestTypedefsPrototype::JSTestTypedefsPrototype):
* bindings/scripts/test/JS/JSattribute.h:
(WebCore::JSattributePrototype::JSattributePrototype):
(WebCore::JSattributeConstructor::createStructure):
* bindings/scripts/test/JS/JSreadonly.h:
(WebCore::JSreadonlyPrototype::JSreadonlyPrototype):
(WebCore::JSreadonlyConstructor::createStructure):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170074 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[iOS] enable background audio in WK2
https://bugs.webkit.org/show_bug.cgi?id=133996

Reviewed by Jer Noble.

* WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info-iOS.plist: Mark as
    allowed to play audio when in the background.
* WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-iOS.plist: Ditto.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170075 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fixes bug where building JSC sometimes crashes at build-symbol-table-index.py. Also adds licenses. 
https://bugs.webkit.org/show_bug.cgi?id=133814

Reviewed by Filip Pizlo.
        
Adds the "shopt -s nullglob" line necessary to prevent the loop in the shell 
script from using "*.o" as a file when no other files in the directory exist. 
        
* build-symbol-table-index.sh: Added license.
* copy-llvm-ir-to-derived-sources.sh: Added license and "shopt -s nullglob" line.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170076 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: style declaration editor: visual highlight doesn't match actual selected text
https://bugs.webkit.org/show_bug.cgi?id=133965

Reviewed by Joseph Pecoraro.

Update styles for css style editor to fix highlighting visual mismatch glitch.

* UserInterface/Views/CSSStyleDeclarationTextEditor.css:
(.css-style-text-editor > .CodeMirror .CodeMirror-placeholder):
(.css-style-text-editor > .CodeMirror pre):
(.css-style-text-editor.read-only > .CodeMirror pre):
Updated styles to eliminate highlight mismatch by adjusting the padding and
text-indent values.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170077 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] Fix the handling of resize events after r169505.
https://bugs.webkit.org/show_bug.cgi?id=133517

Patch by Carlos Alberto Lopez Perez <clopez@igalia.com> on 2014-06-17
Reviewed by Martin Robinson.

Tools:
* Scripts/webkitpy/port/xvfbdriver.py:
(XvfbDriver._start): Set the resolution of Xvfb to XGA (1024x768).
The tests css3/viewport-percentage-lengths/viewport-percentage-lengths-*.html
need at least 900x640 pixels to pass.
* Scripts/webkitpy/port/xvfbdriver_unittest.py:
(XvfbDriverTest.test_start_no_pixel_tests): Update resolution.
(XvfbDriverTest.test_start_pixel_tests): Update resolution.
(XvfbDriverTest.test_start_arbitrary_worker_number): Update resolution.
(XvfbDriverTest.test_start_next_worker): Update resolution.
* WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
(WTR::PlatformWebView::PlatformWebView): gtk_widget_size_allocate should
be requested over the main widget instead of the window.
(WTR::PlatformWebView::resizeTo): Changed this to call setWindowFrame like
the Mac port.
(WTR::PlatformWebView::windowFrame): Remove legacy ifdef for GTK2.
(WTR::PlatformWebView::setWindowFrame): Set the size and position
of the Window and the web view.

LayoutTests:
* platform/gtk/TestExpectations: Remove the expectations for the
tests that now pass.
* platform/gtk/fast/dom/rtl-scroll-to-leftmost-and-resize-expected.txt:
Rebaseline results.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170078 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix error messages for incorrect hex literals
https://bugs.webkit.org/show_bug.cgi?id=133998

Reviewed by Mark Lam.

Source/JavaScriptCore:
Ensure that the error messages for bogus hex literals actually
make sense.

* parser/Lexer.cpp:
(JSC::Lexer<T>::lex):
* parser/ParserTokens.h:

LayoutTests:
Update tests for sane error messages.

* sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.3_Numeric_Literals/S7.8.3_A6.1_T1-expected.txt:
* sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.3_Numeric_Literals/S7.8.3_A6.1_T2-expected.txt:
* sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.3_Numeric_Literals/S7.8.3_A6.2_T1-expected.txt:
* sputnik/Conformance/07_Lexical_Conventions/7.8_Literals/7.8.3_Numeric_Literals/S7.8.3_A6.2_T2-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170079 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: Two lines in CSS rule are hidden until resize or click
https://bugs.webkit.org/show_bug.cgi?id=133951

Reviewed by Joseph Pecoraro.

Update to CodeMirror 4.2 fixed the issue.

* Tools/PrettyPrinting/codemirror.js:
* Tools/PrettyPrinting/css.js:
* Tools/PrettyPrinting/javascript.js:
* UserInterface/External/CodeMirror/clojure.js:
* UserInterface/External/CodeMirror/closebrackets.js:
* UserInterface/External/CodeMirror/codemirror.js:
* UserInterface/External/CodeMirror/coffeescript.js:
* UserInterface/External/CodeMirror/comment.js:
* UserInterface/External/CodeMirror/css.js:
* UserInterface/External/CodeMirror/htmlmixed.js:
* UserInterface/External/CodeMirror/javascript.js:
* UserInterface/External/CodeMirror/livescript.js:
* UserInterface/External/CodeMirror/matchbrackets.js:
* UserInterface/External/CodeMirror/overlay.js:
* UserInterface/External/CodeMirror/placeholder.js:
* UserInterface/External/CodeMirror/runmode.js:
* UserInterface/External/CodeMirror/sass.js:
* UserInterface/External/CodeMirror/searchcursor.js:
* UserInterface/External/CodeMirror/sql.js:
* UserInterface/External/CodeMirror/xml.js:
Update CodeMirror 4.1 to CodeMirror 4.2.0.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170080 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Misused PLATFORM(MIDDLE_ENDIAN) and PLATFORM(BIG_ENDIAN).
https://bugs.webkit.org/show_bug.cgi?id=128301

Reviewed by Daniel Bates.

Endianness is a CPU attribute, not a PLATFORM. PLATFORM() macro is replaced to CPU().

* wtf/text/ASCIIFastPath.h:
(WTF::copyLCharsFromUCharSource):


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