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 3 // found in the LICENSE file. 4 // 5 // This file provides utilities for opening files with the browser. 6 7 #ifndef CHROME_BROWSER_CHROMEOS_FILE_MANAGER_OPEN_WITH_BROWSER_H_ 8 #define CHROME_BROWSER_CHROMEOS_FILE_MANAGER_OPEN_WITH_BROWSER_H_ 9 10 #include "base/files/file_path.h" 11 12 class Profile; 13 14 namespace file_manager { 15 namespace util { 16 17 // Opens the file specified by |file_path| with the browser for 18 // |profile|. This function takes care of the following intricacies: 19 // 20 // - If there is no active browser window, open it. 21 // - If the file is a Drive hosted document, the hosted document will be 22 // opened in the browser by extracting the right URL for the file. 23 // - If the file is on Drive, the file will be downloaded from Drive as 24 // needed. 25 // 26 // Returns false if failed to open. This happens if the file type is unknown. 27 bool OpenFileWithBrowser(Profile* profile, const base::FilePath& file_path); 28 29 // Checks whether a pepper plugin for |file_extension| is enabled. 30 bool ShouldBeOpenedWithPlugin( 31 Profile* profile, 32 const base::FilePath::StringType& file_extension); 33 34 } // namespace util 35 } // namespace file_manager 36 37 #endif // CHROME_BROWSER_CHROMEOS_FILE_MANAGER_OPEN_WITH_BROWSER_H_ 38