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

Side by Side Diff: chrome/browser/google/google_update_win.h

Issue 2318073002: Revert "Move on-demand update checks from the FILE thread to the blocking pool." (Closed)
Patch Set: sync to position 416913 Created 4 years, 3 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 | « no previous file | chrome/browser/google/google_update_win.cc » ('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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 #ifndef CHROME_BROWSER_GOOGLE_GOOGLE_UPDATE_WIN_H_ 5 #ifndef CHROME_BROWSER_GOOGLE_GOOGLE_UPDATE_WIN_H_
6 #define CHROME_BROWSER_GOOGLE_GOOGLE_UPDATE_WIN_H_ 6 #define CHROME_BROWSER_GOOGLE_GOOGLE_UPDATE_WIN_H_
7 7
8 #include "base/callback_forward.h" 8 #include "base/callback_forward.h"
9 #include "base/memory/ref_counted.h" 9 #include "base/memory/ref_counted.h"
10 #include "base/memory/weak_ptr.h" 10 #include "base/memory/weak_ptr.h"
11 #include "base/strings/string16.h" 11 #include "base/strings/string16.h"
12 #include "base/win/scoped_comptr.h" 12 #include "base/win/scoped_comptr.h"
13 #include "google_update/google_update_idl.h" 13 #include "google_update/google_update_idl.h"
14 #include "ui/gfx/native_widget_types.h" 14 #include "ui/gfx/native_widget_types.h"
15 15
16 namespace base { 16 namespace base {
17 class SequencedTaskRunner; 17 class SingleThreadTaskRunner;
18 } // namespace base 18 } // namespace base
19 19
20 // These values are used for a histogram. Do not reorder. 20 // These values are used for a histogram. Do not reorder.
21 enum GoogleUpdateErrorCode { 21 enum GoogleUpdateErrorCode {
22 // The upgrade completed successfully (or hasn't been started yet). 22 // The upgrade completed successfully (or hasn't been started yet).
23 GOOGLE_UPDATE_NO_ERROR = 0, 23 GOOGLE_UPDATE_NO_ERROR = 0,
24 // Google Update only supports upgrading if Chrome is installed in the default 24 // Google Update only supports upgrading if Chrome is installed in the default
25 // location. This error will appear for developer builds and with 25 // location. This error will appear for developer builds and with
26 // installations unzipped to random locations. 26 // installations unzipped to random locations.
27 CANNOT_UPGRADE_CHROME_IN_THIS_DIRECTORY = 1, 27 CANNOT_UPGRADE_CHROME_IN_THIS_DIRECTORY = 1,
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
84 const base::string16& new_version) = 0; 84 const base::string16& new_version) = 0;
85 85
86 protected: 86 protected:
87 UpdateCheckDelegate() {} 87 UpdateCheckDelegate() {}
88 }; 88 };
89 89
90 // Begins an asynchronous update check on |task_runner|. If a new version is 90 // Begins an asynchronous update check on |task_runner|. If a new version is
91 // available and |install_update_if_possible| is true, the new version will be 91 // available and |install_update_if_possible| is true, the new version will be
92 // automatically downloaded and installed. |elevation_window| is the window 92 // automatically downloaded and installed. |elevation_window| is the window
93 // which should own any necessary elevation UI. Methods on |delegate| will be 93 // which should own any necessary elevation UI. Methods on |delegate| will be
94 // invoked on the caller's task runner to provide feedback on the operation, 94 // invoked on the caller's thread to provide feedback on the operation, with
95 // with messages localized to |locale| if possible. 95 // messages localized to |locale| if possible.
96 void BeginUpdateCheck(scoped_refptr<base::SequencedTaskRunner> task_runner, 96 void BeginUpdateCheck(
97 const std::string& locale, 97 scoped_refptr<base::SingleThreadTaskRunner> task_runner,
98 bool install_update_if_possible, 98 const std::string& locale,
99 gfx::AcceleratedWidget elevation_window, 99 bool install_update_if_possible,
100 const base::WeakPtr<UpdateCheckDelegate>& delegate); 100 gfx::AcceleratedWidget elevation_window,
101 101 const base::WeakPtr<UpdateCheckDelegate>& delegate);
102 // A type of callback supplied by tests to provide a custom
103 // IGlobalInterfaceTable implementation.
104 using GlobalInterfaceTableClassFactory =
105 base::Callback<HRESULT(base::win::ScopedComPtr<IGlobalInterfaceTable>*)>;
106 102
107 // A type of callback supplied by tests to provide a custom IGoogleUpdate3Web 103 // A type of callback supplied by tests to provide a custom IGoogleUpdate3Web
108 // implementation (see src/google_update/google_update_idl.idl). 104 // implementation (see src/google_update/google_update_idl.idl).
109 using GoogleUpdate3ClassFactory = 105 typedef base::Callback<HRESULT(base::win::ScopedComPtr<IGoogleUpdate3Web>*)>
110 base::Callback<HRESULT(base::win::ScopedComPtr<IGoogleUpdate3Web>*)>; 106 GoogleUpdate3ClassFactory;
111 107
112 // For use by tests that wish to provide custom IGlobalInterfaceTable and 108 // For use by tests that wish to provide a custom IGoogleUpdate3Web
113 // IGoogleUpdate3Web implementations. 109 // implementation independent of Google Update's.
114 void SetUpdateCheckFactoriesForTesting( 110 void SetGoogleUpdateFactoryForTesting(
115 const GlobalInterfaceTableClassFactory& git_factory,
116 const GoogleUpdate3ClassFactory& google_update_factory); 111 const GoogleUpdate3ClassFactory& google_update_factory);
117 112
118 #endif // CHROME_BROWSER_GOOGLE_GOOGLE_UPDATE_WIN_H_ 113 #endif // CHROME_BROWSER_GOOGLE_GOOGLE_UPDATE_WIN_H_
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/google/google_update_win.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698