Title: [129903] trunk/Source
Revision
129903
Author
[email protected]
Date
2012-09-28 08:51:52 -0700 (Fri, 28 Sep 2012)

Log Message

Clean up Localizer-related functions
https://bugs.webkit.org/show_bug.cgi?id=97899

Reviewed by Kentaro Hara.

Source/WebCore:

- Rename Document::getLocalizer to getCachedLocalizer
- Add default argument to getCachedLocalizer
- Add Element::localizer to reduce code size
- Rename DateTimeNumericFieldElement::localizer to localizerForOwner to
  avoid conflict with Element::localizer
- Add Localizer::createDefault to improve code readability

No new tests. This shouldn't make any behavior change.

* dom/Document.h:
(Document): Rename getLocalizer to getCachedLocalizer, and add default
argument.
* dom/Document.cpp:
(WebCore::Document::getCachedLocalizer): ditto.

* dom/Element.h:
(Element): Add localizer function.
* dom/Element.cpp:
(WebCore::Element::localizer): Added

* html/shadow/DateTimeNumericFieldElement.h:
(DateTimeNumericFieldElement): Rename localizer to localizerForOwner.
* html/shadow/DateTimeNumericFieldElement.cpp: ditto.
(WebCore::DateTimeNumericFieldElement::handleKeyboardEvent):
(WebCore::DateTimeNumericFieldElement::localizerForOwner):
(WebCore::DateTimeNumericFieldElement::value):

* platform/text/Localizer.h:
(Localizer): Add createDefault
(WebCore::Localizer::createDefault): Implemented.

* html/BaseMultipleFieldsDateAndTimeInputType.cpp:
(WebCore::BaseMultipleFieldsDateAndTimeInputType::updateInnerTextValue):
Use Element::localizer.
* html/NumberInputType.cpp:
(WebCore::NumberInputType::localizeValue): ditto.
(WebCore::NumberInputType::convertFromVisibleValue): ditto.

Source/WebKit/blackberry:

* WebCoreSupport/ColorPickerClient.cpp:
(WebCore::ColorPickerClient::localizer): Follow Document::getLocalizer renaming.
* WebCoreSupport/DatePickerClient.cpp:
(WebCore::SelectPopupClient::localizer): ditto.
* WebCoreSupport/SelectPopupClient.cpp:
(WebCore::SelectPopupClient::localizer): ditto.

Source/WebKit/chromium:

* src/ColorChooserUIController.cpp:
(WebKit::ColorChooserUIController::ColorChooserUIController):
Use Localizer::createDefault
* src/DateTimeChooserImpl.cpp:
(WebKit::DateTimeChooserImpl::DateTimeChooserImpl): ditto.

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (129902 => 129903)


--- trunk/Source/WebCore/ChangeLog	2012-09-28 15:51:16 UTC (rev 129902)
+++ trunk/Source/WebCore/ChangeLog	2012-09-28 15:51:52 UTC (rev 129903)
@@ -1,3 +1,48 @@
+2012-09-28  Kent Tamura  <[email protected]>
+
+        Clean up Localizer-related functions
+        https://bugs.webkit.org/show_bug.cgi?id=97899
+
+        Reviewed by Kentaro Hara.
+
+        - Rename Document::getLocalizer to getCachedLocalizer
+        - Add default argument to getCachedLocalizer
+        - Add Element::localizer to reduce code size
+        - Rename DateTimeNumericFieldElement::localizer to localizerForOwner to
+          avoid conflict with Element::localizer
+        - Add Localizer::createDefault to improve code readability
+
+        No new tests. This shouldn't make any behavior change.
+
+        * dom/Document.h:
+        (Document): Rename getLocalizer to getCachedLocalizer, and add default
+        argument.
+        * dom/Document.cpp:
+        (WebCore::Document::getCachedLocalizer): ditto.
+
+        * dom/Element.h:
+        (Element): Add localizer function.
+        * dom/Element.cpp:
+        (WebCore::Element::localizer): Added
+
+        * html/shadow/DateTimeNumericFieldElement.h:
+        (DateTimeNumericFieldElement): Rename localizer to localizerForOwner.
+        * html/shadow/DateTimeNumericFieldElement.cpp: ditto.
+        (WebCore::DateTimeNumericFieldElement::handleKeyboardEvent):
+        (WebCore::DateTimeNumericFieldElement::localizerForOwner):
+        (WebCore::DateTimeNumericFieldElement::value):
+
+        * platform/text/Localizer.h:
+        (Localizer): Add createDefault
+        (WebCore::Localizer::createDefault): Implemented.
+
+        * html/BaseMultipleFieldsDateAndTimeInputType.cpp:
+        (WebCore::BaseMultipleFieldsDateAndTimeInputType::updateInnerTextValue):
+        Use Element::localizer.
+        * html/NumberInputType.cpp:
+        (WebCore::NumberInputType::localizeValue): ditto.
+        (WebCore::NumberInputType::convertFromVisibleValue): ditto.
+
 2012-09-28  Pavel Feldman  <[email protected]>
 
         Web Inspector: define ChunkedReader interface for compilation

Modified: trunk/Source/WebCore/dom/Document.cpp (129902 => 129903)


--- trunk/Source/WebCore/dom/Document.cpp	2012-09-28 15:51:16 UTC (rev 129902)
+++ trunk/Source/WebCore/dom/Document.cpp	2012-09-28 15:51:52 UTC (rev 129903)
@@ -5992,7 +5992,7 @@
     return !m_styleSheetCollection->hasPendingSheets() || m_ignorePendingStylesheets;
 }
 
-Localizer& Document::getLocalizer(const AtomicString& locale)
+Localizer& Document::getCachedLocalizer(const AtomicString& locale)
 {
     AtomicString localeKey = locale;
     if (locale.isEmpty() || !RuntimeEnabledFeatures::langAttributeAwareFormControlUIEnabled())

Modified: trunk/Source/WebCore/dom/Document.h (129902 => 129903)


--- trunk/Source/WebCore/dom/Document.h	2012-09-28 15:51:16 UTC (rev 129902)
+++ trunk/Source/WebCore/dom/Document.h	2012-09-28 15:51:52 UTC (rev 129903)
@@ -1160,7 +1160,8 @@
 
     bool inStyleRecalc() { return m_inStyleRecalc; }
 
-    Localizer& getLocalizer(const AtomicString& locale);
+    // Return a Localizer for the default locale if the argument is null or empty.
+    Localizer& getCachedLocalizer(const AtomicString& locale = nullAtom);
 
 protected:
     Document(Frame*, const KURL&, bool isXHTML, bool isHTML);

Modified: trunk/Source/WebCore/dom/Element.cpp (129902 => 129903)


--- trunk/Source/WebCore/dom/Element.cpp	2012-09-28 15:51:16 UTC (rev 129902)
+++ trunk/Source/WebCore/dom/Element.cpp	2012-09-28 15:51:52 UTC (rev 129903)
@@ -1773,6 +1773,11 @@
     return value;
 }
 
+Localizer& Element::localizer() const
+{
+    return document()->getCachedLocalizer(computeInheritedLanguage());
+}
+
 void Element::cancelFocusAppearanceUpdate()
 {
     if (hasRareData())

Modified: trunk/Source/WebCore/dom/Element.h (129902 => 129903)


--- trunk/Source/WebCore/dom/Element.h	2012-09-28 15:51:16 UTC (rev 129902)
+++ trunk/Source/WebCore/dom/Element.h	2012-09-28 15:51:52 UTC (rev 129903)
@@ -42,6 +42,7 @@
 class ElementRareData;
 class ElementShadow;
 class IntSize;
+class Localizer;
 class RenderRegion;
 class ShadowRoot;
 class WebKitAnimationList;
@@ -291,6 +292,7 @@
     bool isInCanvasSubtree() const;
 
     AtomicString computeInheritedLanguage() const;
+    Localizer& localizer() const;
 
     virtual void accessKeyAction(bool /*sendToAnyEvent*/) { }
 

Modified: trunk/Source/WebCore/html/BaseMultipleFieldsDateAndTimeInputType.cpp (129902 => 129903)


--- trunk/Source/WebCore/html/BaseMultipleFieldsDateAndTimeInputType.cpp	2012-09-28 15:51:16 UTC (rev 129902)
+++ trunk/Source/WebCore/html/BaseMultipleFieldsDateAndTimeInputType.cpp	2012-09-28 15:51:52 UTC (rev 129903)
@@ -223,8 +223,7 @@
     if (!m_dateTimeEditElement)
         return;
 
-    Localizer& localizer = element()->document()->getLocalizer(element()->computeInheritedLanguage());
-    DateTimeEditElement::LayoutParameters layoutParameters(localizer, createStepRange(AnyIsDefaultStep));
+    DateTimeEditElement::LayoutParameters layoutParameters(element()->localizer(), createStepRange(AnyIsDefaultStep));
 
     DateComponents date;
     const bool hasValue = parseToDateComponents(element()->value(), &date);

Modified: trunk/Source/WebCore/html/NumberInputType.cpp (129902 => 129903)


--- trunk/Source/WebCore/html/NumberInputType.cpp	2012-09-28 15:51:16 UTC (rev 129902)
+++ trunk/Source/WebCore/html/NumberInputType.cpp	2012-09-28 15:51:52 UTC (rev 129903)
@@ -235,7 +235,7 @@
     // We don't localize scientific notations.
     if (proposedValue.find(isE) != notFound)
         return proposedValue;
-    return element()->document()->getLocalizer(element()->computeInheritedLanguage()).convertToLocalizedNumber(proposedValue);
+    return element()->localizer().convertToLocalizedNumber(proposedValue);
 }
 
 String NumberInputType::visibleValue() const
@@ -250,7 +250,7 @@
     // We don't localize scientific notations.
     if (visibleValue.find(isE) != notFound)
         return visibleValue;
-    return element()->document()->getLocalizer(element()->computeInheritedLanguage()).convertFromLocalizedNumber(visibleValue);
+    return element()->localizer().convertFromLocalizedNumber(visibleValue);
 }
 
 bool NumberInputType::isAcceptableValue(const String& proposedValue)

Modified: trunk/Source/WebCore/html/shadow/DateTimeNumericFieldElement.cpp (129902 => 129903)


--- trunk/Source/WebCore/html/shadow/DateTimeNumericFieldElement.cpp	2012-09-28 15:51:16 UTC (rev 129902)
+++ trunk/Source/WebCore/html/shadow/DateTimeNumericFieldElement.cpp	2012-09-28 15:51:52 UTC (rev 129903)
@@ -95,7 +95,7 @@
     DOMTimeStamp delta = keyboardEvent->timeStamp() - m_lastDigitCharTime;
     m_lastDigitCharTime = 0;
 
-    String number = localizer().convertFromLocalizedNumber(String(&charCode, 1));
+    String number = localizerForOwner().convertFromLocalizedNumber(String(&charCode, 1));
     const int digit = number[0] - '0';
     if (digit < 0 || digit > 9)
         return;
@@ -113,9 +113,9 @@
     return m_hasValue;
 }
 
-Localizer& DateTimeNumericFieldElement::localizer() const
+Localizer& DateTimeNumericFieldElement::localizerForOwner() const
 {
-    return document()->getLocalizer(localeIdentifier());
+    return document()->getCachedLocalizer(localeIdentifier());
 }
 
 int DateTimeNumericFieldElement::maximum() const
@@ -171,7 +171,7 @@
     if (!m_hasValue)
         return emptyString();
 
-    Localizer& localizer = this->localizer();
+    Localizer& localizer = localizerForOwner();
     if (m_range.maximum > 999)
         return localizer.convertToLocalizedNumber(String::format("%04d", m_value));
 

Modified: trunk/Source/WebCore/html/shadow/DateTimeNumericFieldElement.h (129902 => 129903)


--- trunk/Source/WebCore/html/shadow/DateTimeNumericFieldElement.h	2012-09-28 15:51:16 UTC (rev 129902)
+++ trunk/Source/WebCore/html/shadow/DateTimeNumericFieldElement.h	2012-09-28 15:51:52 UTC (rev 129903)
@@ -75,7 +75,7 @@
     virtual void stepUp() OVERRIDE FINAL;
     virtual String value() const OVERRIDE FINAL;
 
-    Localizer& localizer() const;
+    Localizer& localizerForOwner() const;
 
     DOMTimeStamp m_lastDigitCharTime;
     const String m_placeholder;

Modified: trunk/Source/WebCore/platform/text/Localizer.h (129902 => 129903)


--- trunk/Source/WebCore/platform/text/Localizer.h	2012-09-28 15:51:16 UTC (rev 129902)
+++ trunk/Source/WebCore/platform/text/Localizer.h	2012-09-28 15:51:52 UTC (rev 129903)
@@ -26,6 +26,8 @@
 #ifndef Localizer_h
 #define Localizer_h
 
+#include "Language.h"
+#include <wtf/PassOwnPtr.h>
 #include <wtf/text/WTFString.h>
 
 namespace WebCore {
@@ -34,10 +36,11 @@
     WTF_MAKE_NONCOPYABLE(Localizer);
 
 public:
-    static PassOwnPtr<Localizer> create(const AtomicString&);
+    static PassOwnPtr<Localizer> create(const AtomicString& localeIdentifier);
+    static PassOwnPtr<Localizer> createDefault();
 
     // Converts the specified number string to another number string localized
-    // for the browser's current locale. The input string must conform to HTML
+    // for this Localizer locale. The input string must conform to HTML
     // floating-point numbers, and is not empty.
     String convertToLocalizedNumber(const String&);
 
@@ -114,5 +117,10 @@
     bool m_hasLocalizerData;
 };
 
+inline PassOwnPtr<Localizer> Localizer::createDefault()
+{
+    return Localizer::create(defaultLanguage());
 }
+
+}
 #endif

Modified: trunk/Source/WebKit/blackberry/ChangeLog (129902 => 129903)


--- trunk/Source/WebKit/blackberry/ChangeLog	2012-09-28 15:51:16 UTC (rev 129902)
+++ trunk/Source/WebKit/blackberry/ChangeLog	2012-09-28 15:51:52 UTC (rev 129903)
@@ -1,3 +1,17 @@
+2012-09-28  Kent Tamura  <[email protected]>
+
+        Clean up Localizer-related functions
+        https://bugs.webkit.org/show_bug.cgi?id=97899
+
+        Reviewed by Kentaro Hara.
+
+        * WebCoreSupport/ColorPickerClient.cpp:
+        (WebCore::ColorPickerClient::localizer): Follow Document::getLocalizer renaming.
+        * WebCoreSupport/DatePickerClient.cpp:
+        (WebCore::SelectPopupClient::localizer): ditto.
+        * WebCoreSupport/SelectPopupClient.cpp:
+        (WebCore::SelectPopupClient::localizer): ditto.
+
 2012-09-28  Genevieve Mak  <[email protected]>
 
         [BLACKBERRY] Add isVisible method to WebTapHighlight

Modified: trunk/Source/WebKit/blackberry/WebCoreSupport/ColorPickerClient.cpp (129902 => 129903)


--- trunk/Source/WebKit/blackberry/WebCoreSupport/ColorPickerClient.cpp	2012-09-28 15:51:16 UTC (rev 129902)
+++ trunk/Source/WebKit/blackberry/WebCoreSupport/ColorPickerClient.cpp	2012-09-28 15:51:52 UTC (rev 129903)
@@ -85,7 +85,7 @@
 
 Localizer& ColorPickerClient::localizer()
 {
-    return m_element->document()->getLocalizer(nullAtom);
+    return m_element->document()->getCachedLocalizer();
 }
 
 void ColorPickerClient::setValueAndClosePopup(int, const String& value)

Modified: trunk/Source/WebKit/blackberry/WebCoreSupport/DatePickerClient.cpp (129902 => 129903)


--- trunk/Source/WebKit/blackberry/WebCoreSupport/DatePickerClient.cpp	2012-09-28 15:51:16 UTC (rev 129902)
+++ trunk/Source/WebKit/blackberry/WebCoreSupport/DatePickerClient.cpp	2012-09-28 15:51:52 UTC (rev 129903)
@@ -120,7 +120,7 @@
 
 Localizer& SelectPopupClient::localizer()
 {
-    return m_element->document()->getLocalizer(nullAtom);
+    return m_element->document()->getCachedLocalizer();
 }
 
 void DatePickerClient::setValueAndClosePopup(int, const String& value)

Modified: trunk/Source/WebKit/blackberry/WebCoreSupport/SelectPopupClient.cpp (129902 => 129903)


--- trunk/Source/WebKit/blackberry/WebCoreSupport/SelectPopupClient.cpp	2012-09-28 15:51:16 UTC (rev 129902)
+++ trunk/Source/WebKit/blackberry/WebCoreSupport/SelectPopupClient.cpp	2012-09-28 15:51:52 UTC (rev 129903)
@@ -152,7 +152,7 @@
 
 Localizer& SelectPopupClient::localizer()
 {
-    return m_element->document()->getLocalizer(nullAtom);
+    return m_element->document()->getCachedLocalizer();
 }
 
 void SelectPopupClient::setValueAndClosePopup(int, const String& stringValue)

Modified: trunk/Source/WebKit/chromium/ChangeLog (129902 => 129903)


--- trunk/Source/WebKit/chromium/ChangeLog	2012-09-28 15:51:16 UTC (rev 129902)
+++ trunk/Source/WebKit/chromium/ChangeLog	2012-09-28 15:51:52 UTC (rev 129903)
@@ -1,3 +1,16 @@
+2012-09-28  Kent Tamura  <[email protected]>
+
+        Clean up Localizer-related functions
+        https://bugs.webkit.org/show_bug.cgi?id=97899
+
+        Reviewed by Kentaro Hara.
+
+        * src/ColorChooserUIController.cpp:
+        (WebKit::ColorChooserUIController::ColorChooserUIController):
+        Use Localizer::createDefault
+        * src/DateTimeChooserImpl.cpp:
+        (WebKit::DateTimeChooserImpl::DateTimeChooserImpl): ditto.
+
 2012-09-28  Sheriff Bot  <[email protected]>
 
         Unreviewed, rolling out r129882.

Modified: trunk/Source/WebKit/chromium/src/ColorChooserUIController.cpp (129902 => 129903)


--- trunk/Source/WebKit/chromium/src/ColorChooserUIController.cpp	2012-09-28 15:51:16 UTC (rev 129902)
+++ trunk/Source/WebKit/chromium/src/ColorChooserUIController.cpp	2012-09-28 15:51:52 UTC (rev 129903)
@@ -53,7 +53,7 @@
     : m_chromeClient(chromeClient)
     , m_client(client)
     , m_popup(0)
-    , m_localizer(WebCore::Localizer::create(nullAtom))
+    , m_localizer(WebCore::Localizer::createDefault())
 {
     if (m_client->shouldShowSuggestions())
         openPopup();

Modified: trunk/Source/WebKit/chromium/src/DateTimeChooserImpl.cpp (129902 => 129903)


--- trunk/Source/WebKit/chromium/src/DateTimeChooserImpl.cpp	2012-09-28 15:51:16 UTC (rev 129902)
+++ trunk/Source/WebKit/chromium/src/DateTimeChooserImpl.cpp	2012-09-28 15:51:52 UTC (rev 129903)
@@ -56,7 +56,7 @@
     , m_client(client)
     , m_popup(0)
     , m_parameters(parameters)
-    , m_localizer(WebCore::Localizer::create(nullAtom))
+    , m_localizer(WebCore::Localizer::createDefault())
 {
     ASSERT(m_chromeClient);
     ASSERT(m_client);
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to