Home | History | Annotate | Download | only in app_list
      1 // Copyright 2014 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 #include "ui/app_list/search_provider.h"
      6 
      7 #include "ui/app_list/search_result.h"
      8 
      9 namespace app_list {
     10 
     11 SearchProvider::SearchProvider() {
     12 }
     13 SearchProvider::~SearchProvider() {
     14 }
     15 
     16 void SearchProvider::ReleaseResult(std::vector<SearchResult*>* results) {
     17   results_.release(results);
     18 }
     19 
     20 void SearchProvider::Add(scoped_ptr<SearchResult> result) {
     21   results_.push_back(result.release());
     22   FireResultChanged();
     23 }
     24 
     25 void SearchProvider::ClearResults() {
     26   results_.clear();
     27   FireResultChanged();
     28 }
     29 
     30 void SearchProvider::FireResultChanged() {
     31   if (result_changed_callback_.is_null())
     32     return;
     33 
     34   result_changed_callback_.Run();
     35 }
     36 
     37 }  // namespace app_list
     38