1f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)// Copyright 2014 The Chromium Authors. All rights reserved. 290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// found in the LICENSE file. 490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) 5f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)#include "ui/app_list/search_provider.h" 690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) 790dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)#include "ui/app_list/search_result.h" 890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) 990dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)namespace app_list { 1090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) 11f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)SearchProvider::SearchProvider() { 12f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)} 13f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)SearchProvider::~SearchProvider() { 14f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)} 15f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 16f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)void SearchProvider::ReleaseResult(std::vector<SearchResult*>* results) { 17f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) results_.release(results); 18f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)} 1990dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) 20f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)void SearchProvider::Add(scoped_ptr<SearchResult> result) { 2190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) results_.push_back(result.release()); 2290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) FireResultChanged(); 2390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)} 2490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) 2590dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)void SearchProvider::ClearResults() { 2690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) results_.clear(); 2790dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) FireResultChanged(); 2890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)} 2990dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) 3090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)void SearchProvider::FireResultChanged() { 3190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) if (result_changed_callback_.is_null()) 3290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) return; 3390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) 3490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) result_changed_callback_.Run(); 3590dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)} 3690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) 3790dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)} // namespace app_list 38