Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(268)

Side by Side Diff: chrome/renderer/searchbox/searchbox_extension.cc

Issue 11889003: Fixing ESC in instant-extended. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebased Created 7 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « chrome/renderer/searchbox/searchbox_extension.h ('k') | chrome/test/data/instant_extended.html » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/renderer/searchbox/searchbox_extension.h" 5 #include "chrome/renderer/searchbox/searchbox_extension.h"
6 6
7 #include "base/i18n/rtl.h" 7 #include "base/i18n/rtl.h"
8 #include "base/stringprintf.h" 8 #include "base/stringprintf.h"
9 #include "base/strings/string_number_conversions.h" 9 #include "base/strings/string_number_conversions.h"
10 #include "chrome/common/extensions/extension.h" 10 #include "chrome/common/extensions/extension.h"
(...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after
148 " window.chrome.embeddedSearch &&" 148 " window.chrome.embeddedSearch &&"
149 " window.chrome.embeddedSearch.searchBox &&" 149 " window.chrome.embeddedSearch.searchBox &&"
150 " window.chrome.embeddedSearch.searchBox.onkeypress &&" 150 " window.chrome.embeddedSearch.searchBox.onkeypress &&"
151 " typeof window.chrome.embeddedSearch.searchBox.onkeypress ==" 151 " typeof window.chrome.embeddedSearch.searchBox.onkeypress =="
152 " 'function') {" 152 " 'function') {"
153 " for (var i = 0; i < %d; ++i)" 153 " for (var i = 0; i < %d; ++i)"
154 " window.chrome.embeddedSearch.searchBox.onkeypress({keyCode: %d});" 154 " window.chrome.embeddedSearch.searchBox.onkeypress({keyCode: %d});"
155 " true;" 155 " true;"
156 "}"; 156 "}";
157 157
158 // Takes one printf-style replaceable value: key_code.
159 static const char kDispatchEscKeyPressEventScript[] =
160 "if (window.chrome &&"
161 " window.chrome.searchBox &&"
162 " window.chrome.searchBox.onkeypress &&"
163 " typeof window.chrome.searchBox.onkeypress == 'function') {"
164 " window.chrome.searchBox.onkeypress({keyCode: %d});"
165 " true;"
166 "}";
167
158 static const char kDispatchKeyCaptureChangeScript[] = 168 static const char kDispatchKeyCaptureChangeScript[] =
159 "if (window.chrome &&" 169 "if (window.chrome &&"
160 " window.chrome.embeddedSearch &&" 170 " window.chrome.embeddedSearch &&"
161 " window.chrome.embeddedSearch.searchBox &&" 171 " window.chrome.embeddedSearch.searchBox &&"
162 " window.chrome.embeddedSearch.searchBox.onkeycapturechange &&" 172 " window.chrome.embeddedSearch.searchBox.onkeycapturechange &&"
163 " typeof window.chrome.embeddedSearch.searchBox.onkeycapturechange ==" 173 " typeof window.chrome.embeddedSearch.searchBox.onkeycapturechange =="
164 " 'function') {" 174 " 'function') {"
165 " window.chrome.embeddedSearch.searchBox.onkeycapturechange();" 175 " window.chrome.embeddedSearch.searchBox.onkeycapturechange();"
166 " true;" 176 " true;"
167 "}"; 177 "}";
(...skipping 755 matching lines...) Expand 10 before | Expand all | Expand 10 after
923 933
924 // static 934 // static
925 void SearchBoxExtension::DispatchUpOrDownKeyPress(WebKit::WebFrame* frame, 935 void SearchBoxExtension::DispatchUpOrDownKeyPress(WebKit::WebFrame* frame,
926 int count) { 936 int count) {
927 Dispatch(frame, WebKit::WebString::fromUTF8( 937 Dispatch(frame, WebKit::WebString::fromUTF8(
928 base::StringPrintf(kDispatchUpOrDownKeyPressEventScript, abs(count), 938 base::StringPrintf(kDispatchUpOrDownKeyPressEventScript, abs(count),
929 count < 0 ? ui::VKEY_UP : ui::VKEY_DOWN))); 939 count < 0 ? ui::VKEY_UP : ui::VKEY_DOWN)));
930 } 940 }
931 941
932 // static 942 // static
943 void SearchBoxExtension::DispatchEscKeyPress(WebKit::WebFrame* frame) {
944 Dispatch(frame, WebKit::WebString::fromUTF8(
945 base::StringPrintf(kDispatchEscKeyPressEventScript, ui::VKEY_ESCAPE)));
946 }
947
948 // static
933 void SearchBoxExtension::DispatchKeyCaptureChange(WebKit::WebFrame* frame) { 949 void SearchBoxExtension::DispatchKeyCaptureChange(WebKit::WebFrame* frame) {
934 Dispatch(frame, kDispatchKeyCaptureChangeScript); 950 Dispatch(frame, kDispatchKeyCaptureChangeScript);
935 } 951 }
936 952
937 // static 953 // static
938 void SearchBoxExtension::DispatchMarginChange(WebKit::WebFrame* frame) { 954 void SearchBoxExtension::DispatchMarginChange(WebKit::WebFrame* frame) {
939 Dispatch(frame, kDispatchMarginChangeEventScript); 955 Dispatch(frame, kDispatchMarginChangeEventScript);
940 } 956 }
941 957
942 // static 958 // static
943 void SearchBoxExtension::DispatchThemeChange(WebKit::WebFrame* frame) { 959 void SearchBoxExtension::DispatchThemeChange(WebKit::WebFrame* frame) {
944 Dispatch(frame, kDispatchThemeChangeEventScript); 960 Dispatch(frame, kDispatchThemeChangeEventScript);
945 } 961 }
946 962
947 // static 963 // static
948 void SearchBoxExtension::DispatchThemeAreaHeightChange( 964 void SearchBoxExtension::DispatchThemeAreaHeightChange(
949 WebKit::WebFrame* frame) { 965 WebKit::WebFrame* frame) {
950 Dispatch(frame, kDispatchThemeAreaHeightChangeEventScript); 966 Dispatch(frame, kDispatchThemeAreaHeightChangeEventScript);
951 } 967 }
952 968
953 } // namespace extensions_v8 969 } // namespace extensions_v8
OLDNEW
« no previous file with comments | « chrome/renderer/searchbox/searchbox_extension.h ('k') | chrome/test/data/instant_extended.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698