Index: chrome/browser/ui/app_list/search/launcher_search/launcher_search_provider.cc |
diff --git a/chrome/browser/ui/app_list/search/launcher_search/launcher_search_provider.cc b/chrome/browser/ui/app_list/search/launcher_search/launcher_search_provider.cc |
index eddb322a8bdbcdff7ef9f69e2b35273a7b0bf2c4..c4b1c69297e5b722002fe7ad4f4e512d918587e2 100644 |
--- a/chrome/browser/ui/app_list/search/launcher_search/launcher_search_provider.cc |
+++ b/chrome/browser/ui/app_list/search/launcher_search/launcher_search_provider.cc |
@@ -7,6 +7,8 @@ |
#include "base/strings/utf_string_conversions.h" |
#include "chrome/browser/chromeos/launcher_search_provider/service.h" |
+using chromeos::launcher_search_provider::Service; |
+ |
namespace app_list { |
namespace { |
@@ -30,11 +32,17 @@ void LauncherSearchProvider::Start(bool /*is_voice_query*/, |
} |
void LauncherSearchProvider::Stop() { |
+ Service* service = Service::Get(profile_); |
+ |
+ // Since we delay queries and filter out empty string queries, it can happen |
+ // that no query is running at service side. |
Matt Giuca
2015/04/01 07:49:23
If we are delaying a query, and we get a Stop() si
yawano
2015/04/01 11:26:20
Since kLauncherSearchProviderQueryDelayInMs is sma
Matt Giuca
2015/04/01 23:05:04
Since that is a very separate system to this, yes,
yawano
2015/04/02 06:42:20
Done.
|
+ if (service->IsQueryRunning()) |
+ service->OnQueryEnded(); |
} |
void LauncherSearchProvider::DelayQuery(const base::Closure& closure) { |
- base::TimeDelta delay = base::TimeDelta::FromMilliseconds( |
- kLauncherSearchProviderQueryDelayInMs); |
+ base::TimeDelta delay = |
+ base::TimeDelta::FromMilliseconds(kLauncherSearchProviderQueryDelayInMs); |
Matt Giuca
2015/04/01 07:49:23
Why did this get reformatted?
yawano
2015/04/01 11:26:20
Sorry, there is no intention to reformat this line
Matt Giuca
2015/04/01 23:05:04
Acknowledged.
|
if (base::Time::Now() - last_query_time_ > delay) { |
query_timer_.Stop(); |
closure.Run(); |
@@ -46,8 +54,8 @@ void LauncherSearchProvider::DelayQuery(const base::Closure& closure) { |
void LauncherSearchProvider::StartInternal(const base::string16& query) { |
if (!query.empty()) { |
- chromeos::launcher_search_provider::Service::Get(profile_)->OnQueryStarted( |
- base::UTF16ToUTF8(query), kLauncherSearchProviderMaxResults); |
+ Service::Get(profile_)->OnQueryStarted(base::UTF16ToUTF8(query), |
+ kLauncherSearchProviderMaxResults); |
} |
} |