summaryrefslogtreecommitdiffstats
path: root/chrome/chrome_tests_unit.gypi
diff options
context:
space:
mode:
authorjered@chromium.org <jered@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-04-24 18:14:01 +0000
committerjered@chromium.org <jered@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-04-24 18:14:01 +0000
commitbc9c14cbebf55619b12e47abf819cca908b806c9 (patch)
tree35c630b4b256c7649f8e3a7cd82e9cf7259355dc /chrome/chrome_tests_unit.gypi
parent126696461f8b12bdca9a7ab583ad91ac8ec62107 (diff)
downloadchromium_src-bc9c14cbebf55619b12e47abf819cca908b806c9.zip
chromium_src-bc9c14cbebf55619b12e47abf819cca908b806c9.tar.gz
chromium_src-bc9c14cbebf55619b12e47abf819cca908b806c9.tar.bz2
Fixing iframe jank in the local omnibox popup.
1) Previously we created and loaded a new iframe for each suggestion. Suggestion data was served from the renderer by rewriting chrome-search://suggestion to data: URLs. This turned out not to be performant and suffered from other issues like showing a load spinner. Instead, this change creates one set of iframes with the chrome-search origin and uses a controlling iframe to coordinate updating their DOMs with new suggestions. To preserve the chrome-search origin for all the communicating iframes, it no longer rewrites them as data: URLs and instead serves data from a URLDataSource in the browser. 2) For flicker free rendering, old suggestion iframes must be hidden in the same JS context as new ones are shown. Since postMessage() is async, this necessarily means we must render one set of suggestions while showing another (i.e. double buffer). This change modifies the local omnibox popup JS to do that. 3) Several styling and rendering issues are resolved, such as hover, resize and overflow behavior and positioning. I only tested LTR and not RTL, so this change may not address any LTR issues. TEST=Open an incognito window and start typing. Click on suggestions, arrow up/down, hover, and generally try to break things. BUG=223608 Review URL: https://codereview.chromium.org/13375003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@196184 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/chrome_tests_unit.gypi')
-rw-r--r--chrome/chrome_tests_unit.gypi1
1 files changed, 1 insertions, 0 deletions
diff --git a/chrome/chrome_tests_unit.gypi b/chrome/chrome_tests_unit.gypi
index a234ef1..c5a90ff 100644
--- a/chrome/chrome_tests_unit.gypi
+++ b/chrome/chrome_tests_unit.gypi
@@ -1047,6 +1047,7 @@
'browser/safe_browsing/signature_util_win_unittest.cc',
'browser/safe_browsing/two_phase_uploader_unittest.cc',
'browser/search/search_unittest.cc',
+ 'browser/search/suggestion_source_unittest.cc',
'browser/search_engines/search_host_to_urls_map_unittest.cc',
'browser/search_engines/search_provider_install_data_unittest.cc',
'browser/search_engines/template_url_fetcher_unittest.cc',