summaryrefslogtreecommitdiffstats
path: root/webkit/glue/webkitclient_impl.cc
diff options
context:
space:
mode:
authordarin@chromium.org <darin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-07-17 06:21:57 +0000
committerdarin@chromium.org <darin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-07-17 06:21:57 +0000
commit8980a9c9e8e6b61e3d346e4662e00e0859637ca4 (patch)
treeacb717e4f6ba9ce65ffd10b924ad20a7a7642795 /webkit/glue/webkitclient_impl.cc
parent5e6e939f429310fb37d00421f728ecba11bc030e (diff)
downloadchromium_src-8980a9c9e8e6b61e3d346e4662e00e0859637ca4.zip
chromium_src-8980a9c9e8e6b61e3d346e4662e00e0859637ca4.tar.gz
chromium_src-8980a9c9e8e6b61e3d346e4662e00e0859637ca4.tar.bz2
Introduce WebLocalizedString and queryLocalizedString methods
on WebKitClient. This allows glue/localized_strings.cc to move into the WebKit API implementation. BUG=16933 TEST=none R=dglazkov Review URL: http://codereview.chromium.org/149760 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20938 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/glue/webkitclient_impl.cc')
-rw-r--r--webkit/glue/webkitclient_impl.cc73
1 files changed, 73 insertions, 0 deletions
diff --git a/webkit/glue/webkitclient_impl.cc b/webkit/glue/webkitclient_impl.cc
index 1a8a86d..c6bd4c8 100644
--- a/webkit/glue/webkitclient_impl.cc
+++ b/webkit/glue/webkitclient_impl.cc
@@ -9,6 +9,7 @@
#include "base/string_util.h"
#include "base/trace_event.h"
#include "grit/webkit_resources.h"
+#include "grit/webkit_strings.h"
#include "webkit/api/public/WebData.h"
#include "webkit/api/public/WebPluginListBuilder.h"
#include "webkit/api/public/WebString.h"
@@ -17,12 +18,66 @@
#include "webkit/glue/weburlloader_impl.h"
using WebKit::WebData;
+using WebKit::WebLocalizedString;
using WebKit::WebPluginListBuilder;
+using WebKit::WebString;
using WebKit::WebThemeEngine;
using WebKit::WebURLLoader;
namespace webkit_glue {
+static int ToMessageID(WebLocalizedString::Name name) {
+ switch (name) {
+ case WebLocalizedString::SubmitButtonDefaultLabel:
+ return IDS_FORM_SUBMIT_LABEL;
+ case WebLocalizedString::InputElementAltText:
+ return IDS_FORM_INPUT_ALT;
+ case WebLocalizedString::ResetButtonDefaultLabel:
+ return IDS_FORM_RESET_LABEL;
+ case WebLocalizedString::FileButtonChooseFileLabel:
+ return IDS_FORM_FILE_BUTTON_LABEL;
+ case WebLocalizedString::FileButtonNoFileSelectedLabel:
+ return IDS_FORM_FILE_NO_FILE_LABEL;
+ case WebLocalizedString::MultipleFileUploadText:
+ return IDS_FORM_FILE_MULTIPLE_UPLOAD;
+ case WebLocalizedString::SearchableIndexIntroduction:
+ return IDS_SEARCHABLE_INDEX_INTRO;
+ case WebLocalizedString::SearchMenuNoRecentSearchesText:
+ return IDS_RECENT_SEARCHES_NONE;
+ case WebLocalizedString::SearchMenuRecentSearchesText:
+ return IDS_RECENT_SEARCHES;
+ case WebLocalizedString::SearchMenuClearRecentSearchesText:
+ return IDS_RECENT_SEARCHES_CLEAR;
+ case WebLocalizedString::AXWebAreaText:
+ return IDS_AX_ROLE_WEB_AREA;
+ case WebLocalizedString::AXLinkText:
+ return IDS_AX_ROLE_LINK;
+ case WebLocalizedString::AXListMarkerText:
+ return IDS_AX_ROLE_LIST_MARKER;
+ case WebLocalizedString::AXImageMapText:
+ return IDS_AX_ROLE_IMAGE_MAP;
+ case WebLocalizedString::AXHeadingText:
+ return IDS_AX_ROLE_HEADING;
+ case WebLocalizedString::AXButtonActionVerb:
+ return IDS_AX_BUTTON_ACTION_VERB;
+ case WebLocalizedString::AXRadioButtonActionVerb:
+ return IDS_AX_RADIO_BUTTON_ACTION_VERB;
+ case WebLocalizedString::AXTextFieldActionVerb:
+ return IDS_AX_TEXT_FIELD_ACTION_VERB;
+ case WebLocalizedString::AXCheckedCheckBoxActionVerb:
+ return IDS_AX_CHECKED_CHECK_BOX_ACTION_VERB;
+ case WebLocalizedString::AXUncheckedCheckBoxActionVerb:
+ return IDS_AX_UNCHECKED_CHECK_BOX_ACTION_VERB;
+ case WebLocalizedString::AXLinkActionVerb:
+ return IDS_AX_LINK_ACTION_VERB;
+ case WebLocalizedString::KeygenMenuHighGradeKeySize:
+ return IDS_KEYGEN_HIGH_GRADE_KEY;
+ case WebLocalizedString::KeygenMenuMediumGradeKeySize:
+ return IDS_KEYGEN_MED_GRADE_KEY;
+ }
+ return -1;
+}
+
WebKitClientImpl::WebKitClientImpl()
: main_loop_(MessageLoop::current()),
shared_timer_func_(NULL) {
@@ -125,6 +180,24 @@ WebData WebKitClientImpl::loadResource(const char* name) {
return WebData();
}
+WebString WebKitClientImpl::queryLocalizedString(
+ WebLocalizedString::Name name) {
+ int message_id = ToMessageID(name);
+ if (message_id < 0)
+ return WebString();
+ return GetLocalizedString(message_id);
+}
+
+WebString WebKitClientImpl::queryLocalizedString(
+ WebLocalizedString::Name name, int numeric_value) {
+ int message_id = ToMessageID(name);
+ if (message_id < 0)
+ return WebString();
+ return ReplaceStringPlaceholders(GetLocalizedString(message_id),
+ IntToString16(numeric_value),
+ NULL);
+}
+
double WebKitClientImpl::currentTime() {
return base::Time::Now().ToDoubleT();
}