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

Side by Side Diff: chrome/browser/search/hotword_service.cc

Issue 631913004: Open the launcher when hotword is triggered in always-on mode. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@hotword-google-com-ntp
Patch Set: Fix android build Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « chrome/browser/search/hotword_service.h ('k') | chrome/browser/ui/app_list/app_list_service.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/search/hotword_service.h" 5 #include "chrome/browser/search/hotword_service.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/i18n/case_conversion.h" 8 #include "base/i18n/case_conversion.h"
9 #include "base/metrics/field_trial.h" 9 #include "base/metrics/field_trial.h"
10 #include "base/metrics/histogram.h" 10 #include "base/metrics/histogram.h"
(...skipping 420 matching lines...) Expand 10 before | Expand all | Expand 10 after
431 DoesHotwordSupportLanguage(profile_); 431 DoesHotwordSupportLanguage(profile_);
432 } 432 }
433 433
434 bool HotwordService::IsOptedIntoAudioLogging() { 434 bool HotwordService::IsOptedIntoAudioLogging() {
435 // Do not opt the user in if the preference has not been set. 435 // Do not opt the user in if the preference has not been set.
436 return 436 return
437 profile_->GetPrefs()->HasPrefPath(prefs::kHotwordAudioLoggingEnabled) && 437 profile_->GetPrefs()->HasPrefPath(prefs::kHotwordAudioLoggingEnabled) &&
438 profile_->GetPrefs()->GetBoolean(prefs::kHotwordAudioLoggingEnabled); 438 profile_->GetPrefs()->GetBoolean(prefs::kHotwordAudioLoggingEnabled);
439 } 439 }
440 440
441 bool HotwordService::IsAlwaysOnEnabled() {
442 return
443 profile_->GetPrefs()->HasPrefPath(prefs::kHotwordAlwaysOnSearchEnabled) &&
444 profile_->GetPrefs()->GetBoolean(prefs::kHotwordAlwaysOnSearchEnabled);
445 }
446
441 void HotwordService::EnableHotwordExtension( 447 void HotwordService::EnableHotwordExtension(
442 ExtensionService* extension_service) { 448 ExtensionService* extension_service) {
443 if (extension_service) 449 if (extension_service)
444 extension_service->EnableExtension(extension_misc::kHotwordExtensionId); 450 extension_service->EnableExtension(extension_misc::kHotwordExtensionId);
445 } 451 }
446 452
447 void HotwordService::DisableHotwordExtension( 453 void HotwordService::DisableHotwordExtension(
448 ExtensionService* extension_service) { 454 ExtensionService* extension_service) {
449 if (extension_service) { 455 if (extension_service) {
450 extension_service->DisableExtension( 456 extension_service->DisableExtension(
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
494 HotwordPrivateEventService* event_service = 500 HotwordPrivateEventService* event_service =
495 BrowserContextKeyedAPIFactory<HotwordPrivateEventService>::Get(profile_); 501 BrowserContextKeyedAPIFactory<HotwordPrivateEventService>::Get(profile_);
496 if (event_service) 502 if (event_service)
497 event_service->OnHotwordSessionRequested(); 503 event_service->OnHotwordSessionRequested();
498 } 504 }
499 505
500 void HotwordService::StopHotwordSession(HotwordClient* client) { 506 void HotwordService::StopHotwordSession(HotwordClient* client) {
501 if (!IsServiceAvailable()) 507 if (!IsServiceAvailable())
502 return; 508 return;
503 509
510 // Do nothing if there's no client.
511 if (!client_)
512 return;
504 DCHECK(client_ == client); 513 DCHECK(client_ == client);
505 514
506 client_ = NULL; 515 client_ = NULL;
507 HotwordPrivateEventService* event_service = 516 HotwordPrivateEventService* event_service =
508 BrowserContextKeyedAPIFactory<HotwordPrivateEventService>::Get(profile_); 517 BrowserContextKeyedAPIFactory<HotwordPrivateEventService>::Get(profile_);
509 if (event_service) 518 if (event_service)
510 event_service->OnHotwordSessionStopped(); 519 event_service->OnHotwordSessionStopped();
511 } 520 }
512 521
513 void HotwordService::SetPreviousLanguagePref() { 522 void HotwordService::SetPreviousLanguagePref() {
514 profile_->GetPrefs()->SetString(prefs::kHotwordPreviousLanguage, 523 profile_->GetPrefs()->SetString(prefs::kHotwordPreviousLanguage,
515 GetCurrentLocale(profile_)); 524 GetCurrentLocale(profile_));
516 } 525 }
517 526
518 bool HotwordService::ShouldReinstallHotwordExtension() { 527 bool HotwordService::ShouldReinstallHotwordExtension() {
519 // If there is no previous locale pref, then this is the first install 528 // If there is no previous locale pref, then this is the first install
520 // so no need to uninstall first. 529 // so no need to uninstall first.
521 if (!profile_->GetPrefs()->HasPrefPath(prefs::kHotwordPreviousLanguage)) 530 if (!profile_->GetPrefs()->HasPrefPath(prefs::kHotwordPreviousLanguage))
522 return false; 531 return false;
523 532
524 std::string previous_locale = 533 std::string previous_locale =
525 profile_->GetPrefs()->GetString(prefs::kHotwordPreviousLanguage); 534 profile_->GetPrefs()->GetString(prefs::kHotwordPreviousLanguage);
526 std::string locale = GetCurrentLocale(profile_); 535 std::string locale = GetCurrentLocale(profile_);
527 536
528 // If it's a new locale, then the old extension should be uninstalled. 537 // If it's a new locale, then the old extension should be uninstalled.
529 return locale != previous_locale && 538 return locale != previous_locale &&
530 HotwordService::DoesHotwordSupportLanguage(profile_); 539 HotwordService::DoesHotwordSupportLanguage(profile_);
531 } 540 }
OLDNEW
« no previous file with comments | « chrome/browser/search/hotword_service.h ('k') | chrome/browser/ui/app_list/app_list_service.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698