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

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

Issue 2952133002: Use task runner in version_updater_win.cc. (Closed)
Patch Set: rebase Created 3 years, 5 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
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 SingleThreadTaskRunner; 17 class SequencedTaskRunner;
gab 2017/07/19 15:15:24 scoped_refptr<Foo> is only defined if Foo is defin
calamity 2017/07/20 03:56:20 scoped_refptr removed.
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 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
80 // state information). |new_version|, if not empty, indicates the version 80 // state information). |new_version|, if not empty, indicates the version
81 // to which an upgrade attempt was made. 81 // to which an upgrade attempt was made.
82 virtual void OnError(GoogleUpdateErrorCode error_code, 82 virtual void OnError(GoogleUpdateErrorCode error_code,
83 const base::string16& html_error_message, 83 const base::string16& html_error_message,
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. 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 thread to provide feedback on the operation, with 94 // invoked on the caller's thread to provide feedback on the operation, with
95 // messages localized to |locale| if possible. 95 // messages localized to |locale| if possible.
96 void BeginUpdateCheck( 96 void BeginUpdateCheck(
97 scoped_refptr<base::SingleThreadTaskRunner> task_runner,
98 const std::string& locale, 97 const std::string& locale,
99 bool install_update_if_possible, 98 bool install_update_if_possible,
100 gfx::AcceleratedWidget elevation_window, 99 gfx::AcceleratedWidget elevation_window,
101 const base::WeakPtr<UpdateCheckDelegate>& delegate); 100 const base::WeakPtr<UpdateCheckDelegate>& delegate);
102 101
103 // A type of callback supplied by tests to provide a custom IGoogleUpdate3Web 102 // A type of callback supplied by tests to provide a custom IGoogleUpdate3Web
104 // implementation (see src/google_update/google_update_idl.idl). 103 // implementation (see src/google_update/google_update_idl.idl).
105 typedef base::Callback<HRESULT(base::win::ScopedComPtr<IGoogleUpdate3Web>*)> 104 typedef base::Callback<HRESULT(base::win::ScopedComPtr<IGoogleUpdate3Web>*)>
106 GoogleUpdate3ClassFactory; 105 GoogleUpdate3ClassFactory;
107 106
108 // For use by tests that wish to provide a custom IGoogleUpdate3Web 107 // For use by tests that wish to provide a custom IGoogleUpdate3Web
109 // implementation independent of Google Update's. 108 // implementation independent of Google Update's.
110 void SetGoogleUpdateFactoryForTesting( 109 void SetGoogleUpdateFactoryForTesting(
111 const GoogleUpdate3ClassFactory& google_update_factory); 110 const GoogleUpdate3ClassFactory& google_update_factory);
112 111
112 void SetUpdateDriverTaskRunnerForTesting(
113 scoped_refptr<base::SequencedTaskRunner> task_runner);
114
113 #endif // CHROME_BROWSER_GOOGLE_GOOGLE_UPDATE_WIN_H_ 115 #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') | chrome/browser/google/google_update_win.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698