| Index: chrome/browser/external_protocol/external_protocol_handler.h
|
| diff --git a/chrome/browser/external_protocol/external_protocol_handler.h b/chrome/browser/external_protocol/external_protocol_handler.h
|
| index 692f2dda0aa88bd2669ad77f4d954617cac66d47..75ff77a874ce1388652539b0a79fddb6d8e740f4 100644
|
| --- a/chrome/browser/external_protocol/external_protocol_handler.h
|
| +++ b/chrome/browser/external_protocol/external_protocol_handler.h
|
| @@ -67,25 +67,6 @@ class ExternalProtocolHandler {
|
| bool has_user_gesture,
|
| Delegate* delegate);
|
|
|
| - // Creates and runs a External Protocol dialog box.
|
| - // |url| - The url of the request.
|
| - // |render_process_host_id| and |routing_id| are used by
|
| - // tab_util::GetWebContentsByID to aquire the tab contents associated with
|
| - // this dialog.
|
| - // NOTE: There is a race between the Time of Check and the Time Of Use for
|
| - // the command line. Since the caller (web page) does not have access
|
| - // to change the command line by itself, we do not do anything special
|
| - // to protect against this scenario.
|
| - // This is implemented separately on each platform.
|
| - static void RunExternalProtocolDialog(const GURL& url,
|
| - int render_process_host_id,
|
| - int routing_id,
|
| - ui::PageTransition page_transition,
|
| - bool has_user_gesture);
|
| -
|
| - // Register the ExcludedSchemes preference.
|
| - static void RegisterPrefs(PrefRegistrySimple* registry);
|
| -
|
| // Starts a url using the external protocol handler with the help
|
| // of shellexecute. Should only be called if the protocol is whitelisted
|
| // (checked in LaunchUrl) or if the user explicitly allows it. (By selecting
|
| @@ -98,16 +79,39 @@ class ExternalProtocolHandler {
|
| int render_process_host_id,
|
| int tab_contents_id);
|
|
|
| - // Prepopulates the dictionary with known protocols to deny or allow, if
|
| - // preferences for them do not already exist.
|
| - static void PrepopulateDictionary(base::DictionaryValue* win_pref);
|
| -
|
| // Allows LaunchUrl to proceed with launching an external protocol handler.
|
| // This is typically triggered by a user gesture, but is also called for
|
| // each extension API function. Note that each call to LaunchUrl resets
|
| // the state to false (not allowed).
|
| static void PermitLaunchUrl();
|
|
|
| + // Prepopulates the dictionary with known protocols to deny or allow, if
|
| + // preferences for them do not already exist.
|
| + static void PrepopulateDictionary(base::DictionaryValue* win_pref);
|
| +
|
| + // Records an UMA metric for the state of the checkbox in the dialog, i.e.
|
| + // whether |selected| is true (checked) or false (unchecked).
|
| + static void RecordMetrics(bool selected);
|
| +
|
| + // Register the ExcludedSchemes preference.
|
| + static void RegisterPrefs(PrefRegistrySimple* registry);
|
| +
|
| + // Creates and runs a External Protocol dialog box.
|
| + // |url| - The url of the request.
|
| + // |render_process_host_id| and |routing_id| are used by
|
| + // tab_util::GetWebContentsByID to aquire the tab contents associated with
|
| + // this dialog.
|
| + // NOTE: There is a race between the Time of Check and the Time Of Use for
|
| + // the command line. Since the caller (web page) does not have access
|
| + // to change the command line by itself, we do not do anything special
|
| + // to protect against this scenario.
|
| + // This is implemented separately on each platform.
|
| + static void RunExternalProtocolDialog(const GURL& url,
|
| + int render_process_host_id,
|
| + int routing_id,
|
| + ui::PageTransition page_transition,
|
| + bool has_user_gesture);
|
| +
|
| private:
|
| DISALLOW_COPY_AND_ASSIGN(ExternalProtocolHandler);
|
| };
|
|
|