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

Issue 10832256: Experimental AutocompleteProvider for zerosuggest. (Closed)

Created:
8 years, 4 months ago by Jered
Modified:
8 years, 4 months ago
CC:
chromium-reviews, James Su
Base URL:
http://git.chromium.org/chromium/src.git@master
Visibility:
Public.

Description

Experimental AutocompleteProvider for zerosuggest. Zerosuggest is an experimental feature which would offer query suggestions when a user focuses in the omnibox prior to typing any text. The goal of this change is to allow us to do a limited dogfood of this feature in canary to assess data quality and UX in situ. This experimental implementation uses the existing AutocompleteProvider framework and attempts to make minimal changes to omnibox interaction. The provider is behind a new --zerosuggest-url-prefix flag which must be explicitly pointed to a suggestion server for testing. The provider goes to some pains to mimic the current focus behavior of the omnibox by inserting a placeholder suggestion for the current URL which is filled and completed inline. "Enter" still refreshes the page, and the url can still be copy+pasted or replaced; however, backspace does not work, and it's complicated to deal with the case where the user unfocuses the omnibox and then focuses again. BUG=

Patch Set 1 #

Total comments: 2

Patch Set 2 : Rebase. #

Patch Set 3 : Rip out timer. #

Total comments: 12

Patch Set 4 : Rename flag and add comments. #

Total comments: 2

Patch Set 5 : Zerosuggest->ZeroSuggest. #

Patch Set 6 : Hyphenate flag name. #

Total comments: 30

Patch Set 7 : Address comments. #

Patch Set 8 : Fix constant name. #

Total comments: 2

Patch Set 9 : Qualify todo. #

Patch Set 10 : Address comments. #

Total comments: 15

Patch Set 11 : Rebase. #

Patch Set 12 : Address comments, avoid stale matches. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+430 lines, -12 lines) Patch
M chrome/browser/autocomplete/autocomplete_controller.h View 1 2 3 4 5 6 7 8 9 10 11 4 chunks +16 lines, -0 lines 0 comments Download
M chrome/browser/autocomplete/autocomplete_controller.cc View 1 2 3 4 5 6 7 8 9 10 11 7 chunks +42 lines, -5 lines 0 comments Download
A chrome/browser/autocomplete/zero_suggest_provider.h View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +120 lines, -0 lines 0 comments Download
A chrome/browser/autocomplete/zero_suggest_provider.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +223 lines, -0 lines 0 comments Download
M chrome/browser/ui/omnibox/omnibox_edit_model.cc View 1 2 3 4 5 6 7 8 9 10 11 4 chunks +21 lines, -7 lines 0 comments Download
M chrome/chrome_browser.gypi View 1 2 3 4 5 6 7 8 9 10 1 chunk +2 lines, -0 lines 0 comments Download
M chrome/common/chrome_switches.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +1 line, -0 lines 0 comments Download
M chrome/common/chrome_switches.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +5 lines, -0 lines 0 comments Download

Messages

Total messages: 31 (0 generated)
Jered
8 years, 4 months ago (2012-08-10 21:17:48 UTC) #1
Peter Kasting
This tries too hard to use the current query-running model for a UX that it ...
8 years, 4 months ago (2012-08-10 21:33:33 UTC) #2
David Black
Yeah, we know that this isn't the best way of building this UI. It's not ...
8 years, 4 months ago (2012-08-10 21:52:34 UTC) #3
Peter Kasting
That should be OK, I think. You might want comments in various places like TODO: ...
8 years, 4 months ago (2012-08-10 21:53:38 UTC) #4
Peter Kasting
I still think the focus thingy should be investigated and fixed in the mac code ...
8 years, 4 months ago (2012-08-10 21:54:29 UTC) #5
David Black
On 2012/08/10 21:54:29, Peter Kasting wrote: > I still think the focus thingy should be ...
8 years, 4 months ago (2012-08-10 21:55:48 UTC) #6
Jered
On 2012/08/10 21:54:29, Peter Kasting wrote: > I still think the focus thingy should be ...
8 years, 4 months ago (2012-08-10 21:58:43 UTC) #7
Jered
Added a bunch of TODOs that should scare people away from thinking this is for ...
8 years, 4 months ago (2012-08-10 23:05:23 UTC) #8
samarth
FYI, there are some issues if you turn this on along with the extended api ...
8 years, 4 months ago (2012-08-13 17:42:37 UTC) #9
Jered
https://chromiumcodereview.appspot.com/10832256/diff/12001/chrome/browser/autocomplete/autocomplete_match.h File chrome/browser/autocomplete/autocomplete_match.h (right): https://chromiumcodereview.appspot.com/10832256/diff/12001/chrome/browser/autocomplete/autocomplete_match.h#newcode92 chrome/browser/autocomplete/autocomplete_match.h:92: SEARCH_ZEROSUGGEST_URL, // A URL suggested by zerosuggest. On 2012/08/13 ...
8 years, 4 months ago (2012-08-13 22:23:59 UTC) #10
Jered
+sky for chrome/ Peter/David, can you guys give this another look? On 2012/08/13 22:23:59, Jered ...
8 years, 4 months ago (2012-08-14 16:06:30 UTC) #11
sky
c/b c/c LGTM I did not look at the omnibox changes though, wait for Peter ...
8 years, 4 months ago (2012-08-14 17:14:38 UTC) #12
Jered
https://chromiumcodereview.appspot.com/10832256/diff/17/chrome/browser/autocomplete/zerosuggest_provider.h File chrome/browser/autocomplete/zerosuggest_provider.h (right): https://chromiumcodereview.appspot.com/10832256/diff/17/chrome/browser/autocomplete/zerosuggest_provider.h#newcode49 chrome/browser/autocomplete/zerosuggest_provider.h:49: class ZerosuggestProvider : public AutocompleteProvider, On 2012/08/14 17:14:38, sky ...
8 years, 4 months ago (2012-08-14 17:46:28 UTC) #13
Peter Kasting
https://chromiumcodereview.appspot.com/10832256/diff/2015/chrome/browser/autocomplete/autocomplete_match.h File chrome/browser/autocomplete/autocomplete_match.h (right): https://chromiumcodereview.appspot.com/10832256/diff/2015/chrome/browser/autocomplete/autocomplete_match.h#newcode92 chrome/browser/autocomplete/autocomplete_match.h:92: SEARCH_ZEROSUGGEST_URL, // A URL suggested by zerosuggest. SEARCH_ZEROSUGGEST_URL is ...
8 years, 4 months ago (2012-08-14 19:20:02 UTC) #14
samarth
https://chromiumcodereview.appspot.com/10832256/diff/2015/chrome/common/chrome_switches.cc File chrome/common/chrome_switches.cc (right): https://chromiumcodereview.appspot.com/10832256/diff/2015/chrome/common/chrome_switches.cc#newcode680 chrome/common/chrome_switches.cc:680: // this prefix of a URL. On 2012/08/14 19:20:02, ...
8 years, 4 months ago (2012-08-14 21:43:50 UTC) #15
Jered
https://chromiumcodereview.appspot.com/10832256/diff/2015/chrome/browser/autocomplete/autocomplete_match.h File chrome/browser/autocomplete/autocomplete_match.h (right): https://chromiumcodereview.appspot.com/10832256/diff/2015/chrome/browser/autocomplete/autocomplete_match.h#newcode92 chrome/browser/autocomplete/autocomplete_match.h:92: SEARCH_ZEROSUGGEST_URL, // A URL suggested by zerosuggest. On 2012/08/14 ...
8 years, 4 months ago (2012-08-14 22:27:11 UTC) #16
Peter Kasting
https://chromiumcodereview.appspot.com/10832256/diff/2015/chrome/browser/autocomplete/zero_suggest_provider.cc File chrome/browser/autocomplete/zero_suggest_provider.cc (right): https://chromiumcodereview.appspot.com/10832256/diff/2015/chrome/browser/autocomplete/zero_suggest_provider.cc#newcode45 chrome/browser/autocomplete/zero_suggest_provider.cc:45: if (spec.empty() || url.scheme() != chrome::kHttpScheme) On 2012/08/14 22:27:11, ...
8 years, 4 months ago (2012-08-15 05:30:39 UTC) #17
Jered
https://chromiumcodereview.appspot.com/10832256/diff/2015/chrome/browser/autocomplete/zero_suggest_provider.cc File chrome/browser/autocomplete/zero_suggest_provider.cc (right): https://chromiumcodereview.appspot.com/10832256/diff/2015/chrome/browser/autocomplete/zero_suggest_provider.cc#newcode45 chrome/browser/autocomplete/zero_suggest_provider.cc:45: if (spec.empty() || url.scheme() != chrome::kHttpScheme) On 2012/08/15 05:30:39, ...
8 years, 4 months ago (2012-08-15 16:32:12 UTC) #18
Jered
On 2012/08/15 16:32:12, Jered wrote: > https://chromiumcodereview.appspot.com/10832256/diff/2015/chrome/browser/autocomplete/zero_suggest_provider.cc > File chrome/browser/autocomplete/zero_suggest_provider.cc (right): > > https://chromiumcodereview.appspot.com/10832256/diff/2015/chrome/browser/autocomplete/zero_suggest_provider.cc#newcode45 > ...
8 years, 4 months ago (2012-08-15 16:40:31 UTC) #19
Peter Kasting
https://chromiumcodereview.appspot.com/10832256/diff/2015/chrome/browser/autocomplete/zero_suggest_provider.cc File chrome/browser/autocomplete/zero_suggest_provider.cc (right): https://chromiumcodereview.appspot.com/10832256/diff/2015/chrome/browser/autocomplete/zero_suggest_provider.cc#newcode45 chrome/browser/autocomplete/zero_suggest_provider.cc:45: if (spec.empty() || url.scheme() != chrome::kHttpScheme) On 2012/08/15 16:32:12, ...
8 years, 4 months ago (2012-08-15 17:35:31 UTC) #20
Jered
https://chromiumcodereview.appspot.com/10832256/diff/2015/chrome/browser/autocomplete/zero_suggest_provider.cc File chrome/browser/autocomplete/zero_suggest_provider.cc (right): https://chromiumcodereview.appspot.com/10832256/diff/2015/chrome/browser/autocomplete/zero_suggest_provider.cc#newcode45 chrome/browser/autocomplete/zero_suggest_provider.cc:45: if (spec.empty() || url.scheme() != chrome::kHttpScheme) On 2012/08/15 17:35:31, ...
8 years, 4 months ago (2012-08-15 18:15:21 UTC) #21
Peter Kasting
https://chromiumcodereview.appspot.com/10832256/diff/5013/chrome/browser/autocomplete/zero_suggest_provider.cc File chrome/browser/autocomplete/zero_suggest_provider.cc (right): https://chromiumcodereview.appspot.com/10832256/diff/5013/chrome/browser/autocomplete/zero_suggest_provider.cc#newcode45 chrome/browser/autocomplete/zero_suggest_provider.cc:45: if (!url.is_valid() || url.scheme() != chrome::kHttpScheme) Nit: Remove "!url.is_valid() ...
8 years, 4 months ago (2012-08-15 21:52:44 UTC) #22
Jered
https://chromiumcodereview.appspot.com/10832256/diff/5013/chrome/browser/autocomplete/zero_suggest_provider.cc File chrome/browser/autocomplete/zero_suggest_provider.cc (right): https://chromiumcodereview.appspot.com/10832256/diff/5013/chrome/browser/autocomplete/zero_suggest_provider.cc#newcode45 chrome/browser/autocomplete/zero_suggest_provider.cc:45: if (!url.is_valid() || url.scheme() != chrome::kHttpScheme) On 2012/08/15 21:52:44, ...
8 years, 4 months ago (2012-08-15 23:13:00 UTC) #23
Peter Kasting
https://chromiumcodereview.appspot.com/10832256/diff/5013/chrome/browser/autocomplete/zero_suggest_provider.cc File chrome/browser/autocomplete/zero_suggest_provider.cc (right): https://chromiumcodereview.appspot.com/10832256/diff/5013/chrome/browser/autocomplete/zero_suggest_provider.cc#newcode155 chrome/browser/autocomplete/zero_suggest_provider.cc:155: // gets dropped as soon as the user types ...
8 years, 4 months ago (2012-08-16 00:24:41 UTC) #24
jered1
On Aug 15, 2012 5:24 PM, <pkasting@chromium.org> wrote: > > > https://chromiumcodereview.appspot.com/10832256/diff/5013/chrome/browser/autocomplete/zero_suggest_provider.cc > File chrome/browser/autocomplete/zero_suggest_provider.cc ...
8 years, 4 months ago (2012-08-16 00:42:20 UTC) #25
Peter Kasting
On 2012/08/16 00:42:20, jered1 wrote: > Problem is I'm seeing suggestions from the last search ...
8 years, 4 months ago (2012-08-16 00:46:57 UTC) #26
Jered
On 2012/08/16 00:46:57, Peter Kasting wrote: > On 2012/08/16 00:42:20, jered1 wrote: > > Problem ...
8 years, 4 months ago (2012-08-16 17:25:57 UTC) #27
Jered
On 2012/08/16 17:25:57, Jered wrote: > On 2012/08/16 00:46:57, Peter Kasting wrote: > > On ...
8 years, 4 months ago (2012-08-16 17:28:52 UTC) #28
Jered
On 2012/08/16 17:28:52, Jered wrote: > On 2012/08/16 17:25:57, Jered wrote: > > On 2012/08/16 ...
8 years, 4 months ago (2012-08-17 15:14:23 UTC) #29
Jered
pkasting@ friendly ping. Hoping to merge this before I disappear into the desert for a ...
8 years, 4 months ago (2012-08-20 17:16:35 UTC) #30
samarth
8 years, 4 months ago (2012-08-22 18:13:40 UTC) #31
Hi Peter,

FYI, Jered is out for a couple of weeks, so I'm going to take this change over.
Continuing review at https://chromiumcodereview.appspot.com/10877021.

Thanks,
Samarth

On 2012/08/20 17:16:35, Jered wrote:
> pkasting@ friendly ping. Hoping to merge this before I disappear into the
desert
> for a few weeks... :-)
> 
> On 2012/08/17 15:14:23, Jered wrote:
> > On 2012/08/16 17:28:52, Jered wrote:
> > > On 2012/08/16 17:25:57, Jered wrote:
> > > > On 2012/08/16 00:46:57, Peter Kasting wrote:
> > > > > On 2012/08/16 00:42:20, jered1 wrote:
> > > > > > Problem is I'm seeing suggestions from the last search on
> > StartZeroSuggest
> > > > > > because at the moment they are cleared out in Start. Most of these
> have
> > > > > > scores above 100. I want to get rid of them so they don't show up
with
> > > zero
> > > > > > suggestions.
> > > > > 
> > > > > Ugh.  This is an artifact of trying to wire through the
> > > AutocompleteController
> > > > > something that totally doesn't fit its processing pattern.
> > > > > 
> > > > > I suggest not plumbing these results through the standard "provider
> > updated"
> > > > > callbacks and instead having a custom zerosuggest-specific callback in
> the
> > > > > controller that just routes the zerosuggest provider's results
directly
> to
> > > > > listeners, bypassing everything else the controller does.
> > > > 
> > > > I tried a couple options. Adding a new callback proved tricky because we
> > want
> > > to
> > > > keep zero suggestions around if the user begins to type them (even if
they
> > are
> > > > really low scoring). How is this way? Seemed least invasive to me.
> > > 
> > > (Sorry, I messed up my git repo somehow and ended up rebasing as part of
> > > my struggle to fix it, so this patch includes the rebase.)
> > 
> > (sreeram@ helped me fix this so the last patch set is a clean diff again.)

Powered by Google App Engine
This is Rietveld 408576698