Home | History | Annotate | Download | only in autocomplete
      1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #ifndef CHROME_BROWSER_AUTOCOMPLETE_AUTOCOMPLETE_PROVIDER_LISTENER_H_
      6 #define CHROME_BROWSER_AUTOCOMPLETE_AUTOCOMPLETE_PROVIDER_LISTENER_H_
      7 
      8 class AutocompleteProviderListener {
      9  public:
     10   // Called by a provider as a notification that something has changed.
     11   // |updated_matches| should be true iff the matches have changed in some
     12   // way (they may not have changed if, for example, the provider did an
     13   // asynchronous query to get more matches, came up with none, and is now
     14   // giving up).
     15   //
     16   // NOTE: Providers MUST only call this method while processing asynchronous
     17   // queries.  Do not call this for a synchronous query.
     18   //
     19   // NOTE: There's no parameter to tell the listener _which_ provider is
     20   // calling it.  Because the AutocompleteController (the typical listener)
     21   // doesn't cache the providers' individual matches locally, it has to get
     22   // them all again when this is called anyway, so such a parameter wouldn't
     23   // actually be useful.
     24   virtual void OnProviderUpdate(bool updated_matches) = 0;
     25 
     26  protected:
     27   virtual ~AutocompleteProviderListener() {}
     28 };
     29 
     30 #endif  // CHROME_BROWSER_AUTOCOMPLETE_AUTOCOMPLETE_PROVIDER_LISTENER_H_
     31