Index: chrome/browser/android/voice_search_tab_helper.cc |
diff --git a/chrome/browser/android/voice_search_tab_helper.cc b/chrome/browser/android/voice_search_tab_helper.cc |
index 417741647ac0ad134bfda791e2566f855e29b983..f934070071ae8c8296b3eb7279caccc41415a8df 100644 |
--- a/chrome/browser/android/voice_search_tab_helper.cc |
+++ b/chrome/browser/android/voice_search_tab_helper.cc |
@@ -17,11 +17,11 @@ DEFINE_WEB_CONTENTS_USER_DATA_KEY(VoiceSearchTabHelper); |
// requirements like this. |
VoiceSearchTabHelper::VoiceSearchTabHelper(content::WebContents* contents) |
: content::WebContentsObserver(contents) { |
- base::CommandLine* command_line = base::CommandLine::ForCurrentProcess(); |
+ const base::CommandLine* command_line = |
+ base::CommandLine::ForCurrentProcess(); |
gesture_requirement_for_playback_disabled_ = |
- command_line->HasSwitch(switches::kIgnoreAutoplayRestrictionsForTests) || |
- command_line->GetSwitchValueASCII(switches::kAutoplayPolicy) != |
- switches::autoplay::kNoUserGestureRequiredPolicy; |
+ media::GetEffectiveAutoplayPolicy(*command_line) == |
+ switches::autoplay::kNoUserGestureRequiredPolicy; |
} |
VoiceSearchTabHelper::~VoiceSearchTabHelper() { |
@@ -39,11 +39,17 @@ void VoiceSearchTabHelper::NavigationEntryCommitted( |
bool gesture_required = |
!google_util::IsGoogleSearchUrl(web_contents()->GetLastCommittedURL()); |
+ bool gesture_requiref_by_prefs = |
Bernhard Bauer
2017/05/09 12:47:17
Nit: |gesture_required_by_prefs|
mlamouri (slow - plz ping)
2017/05/09 17:24:35
Done.
|
+ prefs.autoplay_policy == content::AutoplayPolicy::kUserGestureRequired; |
- if (gesture_required != prefs.user_gesture_required_for_media_playback) { |
+ if (gesture_required != gesture_requiref_by_prefs) { |
// TODO(chrishtr): this is wrong. user_gesture_required_for_media_playback |
// will be reset the next time a preference changes. |
- prefs.user_gesture_required_for_media_playback = gesture_required; |
+ // TODO(mlamouri): this is even more wrong because it makes assumptions with |
+ // regards to the default autoplay policy. |
+ prefs.autoplay_policy = |
+ gesture_required ? content::AutoplayPolicy::kUserGestureRequired |
+ : content::AutoplayPolicy::kNoUserGestureRequired; |
host->UpdateWebkitPreferences(prefs); |
} |
} |