| Index: chrome/browser/download/download_target_determiner.h
|
| ===================================================================
|
| --- chrome/browser/download/download_target_determiner.h (revision 283043)
|
| +++ chrome/browser/download/download_target_determiner.h (working copy)
|
| @@ -79,6 +79,13 @@
|
| // Returns a .crdownload intermediate path for the |suggested_path|.
|
| static base::FilePath GetCrDownloadPath(const base::FilePath& suggested_path);
|
|
|
| +#if defined(OS_WIN)
|
| + // Returns true if Adobe Reader is up to date. This information refreshed
|
| + // only when Start() gets called for a PDF and Adobe Reader is the default
|
| + // System PDF viewer.
|
| + static bool IsAdobeReaderUpToDate();
|
| +#endif
|
| +
|
| private:
|
| // The main workflow is controlled via a set of state transitions. Each state
|
| // has an associated handler. The handler for STATE_FOO is DoFoo. Each handler
|
| @@ -93,6 +100,7 @@
|
| STATE_DETERMINE_LOCAL_PATH,
|
| STATE_DETERMINE_MIME_TYPE,
|
| STATE_DETERMINE_IF_HANDLED_SAFELY_BY_BROWSER,
|
| + STATE_DETERMINE_IF_ADOBE_READER_UP_TO_DATE,
|
| STATE_CHECK_DOWNLOAD_URL,
|
| STATE_CHECK_VISITED_REFERRER_BEFORE,
|
| STATE_DETERMINE_INTERMEDIATE_PATH,
|
| @@ -205,13 +213,27 @@
|
| // Determine if the file type can be handled safely by the browser if it were
|
| // to be opened via a file:// URL.
|
| // Next state:
|
| - // - STATE_CHECK_DOWNLOAD_URL.
|
| + // - STATE_DETERMINE_IF_ADOBE_READER_UP_TO_DATE.
|
| Result DoDetermineIfHandledSafely();
|
|
|
| +#if defined(ENABLE_PLUGINS)
|
| // Callback invoked when a decision is available about whether the file type
|
| // can be handled safely by the browser.
|
| void DetermineIfHandledSafelyDone(bool is_handled_safely);
|
| +#endif
|
|
|
| + // Determine if Adobe Reader is up to date. Only do the check on Windows for
|
| + // .pdf file targets.
|
| + // Next state:
|
| + // - STATE_CHECK_DOWNLOAD_URL.
|
| + Result DoDetermineIfAdobeReaderUpToDate();
|
| +
|
| +#if defined(OS_WIN)
|
| + // Callback invoked when a decision is available about whether Adobe Reader
|
| + // is up to date.
|
| + void DetermineIfAdobeReaderUpToDateDone(bool adobe_reader_up_to_date);
|
| +#endif
|
| +
|
| // Checks whether the downloaded URL is malicious. Invokes the
|
| // DownloadProtectionService via the delegate.
|
| // Next state:
|
|
|