media: Refactor PlatformVerificationFlow.
commitc84739eb25ab0d91e55ee4bfbe0bdcc91c014467
authorxhwang <xhwang@chromium.org>
Sat, 14 Mar 2015 01:02:46 +0000 (13 18:02 -0700)
committerCommit bot <commit-bot@chromium.org>
Sat, 14 Mar 2015 01:03:40 +0000 (14 01:03 +0000)
treef0924953572f09e1fb4e68338f11577072395d1d
parent294849f9606faaea3cc279751565a086057d5129
media: Refactor PlatformVerificationFlow.

Highlight of this CL:
- PlatformVerificationDialog and PlatformVerificationFlow are independant of
  each other now.
- PlatformVerificationDialog is only triggered from
  ProtectedMediaIdentifierPermissionContext::RequestPermission().
- ProxyDecryptor requests permission in certain conditions.
- PlatformVerificationFlow always checks permission before doing RA.
- ProtectedMediaIdentifierPermissionContext is the central place checking all
  related settings and conditions, and handling the UI for ChromeOS.

This CL doesn't change the behavior on Android yet, which will be done in the
next CL.

BUG=455271,455262,446263
TBR=bauerb@chromium.org
TEST=Tested local test player and existing content providers's site/app.

Review URL: https://codereview.chromium.org/1001723002

Cr-Commit-Position: refs/heads/master@{#320628}
chrome/browser/chromeos/attestation/platform_verification_dialog.cc
chrome/browser/chromeos/attestation/platform_verification_dialog.h
chrome/browser/chromeos/attestation/platform_verification_flow.cc
chrome/browser/chromeos/attestation/platform_verification_flow.h
chrome/browser/chromeos/attestation/platform_verification_flow_unittest.cc
chrome/browser/media/protected_media_identifier_permission_context.cc
chrome/browser/media/protected_media_identifier_permission_context.h
chrome/browser/prefs/browser_prefs.cc
media/cdm/proxy_decryptor.cc
media/cdm/proxy_decryptor.h