Index: chrome/browser/ui/intents/web_intent_picker_model.h |
diff --git a/chrome/browser/ui/intents/web_intent_picker_model.h b/chrome/browser/ui/intents/web_intent_picker_model.h |
deleted file mode 100644 |
index 171e4973e34695e286ac7b0df3be7c7436d7be1a..0000000000000000000000000000000000000000 |
--- a/chrome/browser/ui/intents/web_intent_picker_model.h |
+++ /dev/null |
@@ -1,259 +0,0 @@ |
-// Copyright (c) 2012 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#ifndef CHROME_BROWSER_UI_INTENTS_WEB_INTENT_PICKER_MODEL_H_ |
-#define CHROME_BROWSER_UI_INTENTS_WEB_INTENT_PICKER_MODEL_H_ |
- |
-#include <vector> |
- |
-#include "base/basictypes.h" |
-#include "base/string16.h" |
-#include "chrome/browser/extensions/extension_install_prompt.h" |
-#include "googleurl/src/gurl.h" |
-#include "ui/gfx/image/image.h" |
-#include "webkit/glue/web_intent_service_data.h" |
- |
-namespace content { |
-class DownloadItem; |
-} |
- |
-class WebIntentPickerModelObserver; |
- |
-// Model for the WebIntentPicker. |
-class WebIntentPickerModel { |
- public: |
- // An intent service to display in the picker. |
- struct InstalledService { |
- InstalledService( |
- const string16& title, |
- const GURL& url, |
- webkit_glue::WebIntentServiceData::Disposition disposition); |
- ~InstalledService(); |
- |
- // The title of this service. |
- string16 title; |
- |
- // The URL of this service. |
- GURL url; |
- |
- // A favicon of this service. |
- gfx::Image favicon; |
- |
- // The disposition to use when displaying this service. |
- webkit_glue::WebIntentServiceData::Disposition disposition; |
- }; |
- |
- // A suggested extension to display in the picker. |
- struct SuggestedExtension { |
- SuggestedExtension(const string16& title, |
- const std::string& id, |
- double average_rating); |
- ~SuggestedExtension(); |
- |
- // The title of the intent service. |
- string16 title; |
- |
- // The id of the extension that provides the intent service. |
- std::string id; |
- |
- // The average rating of the extension. |
- double average_rating; |
- |
- // The extension's icon. |
- gfx::Image icon; |
- }; |
- |
- WebIntentPickerModel(); |
- ~WebIntentPickerModel(); |
- |
- void set_observer(WebIntentPickerModelObserver* observer) { |
- observer_ = observer; |
- } |
- |
- const string16& action() const { return action_; } |
- void set_action(const string16& action) { action_ = action; } |
- |
- const string16& type() const { return type_; } |
- void set_type(const string16& type) { type_ = type; } |
- |
- const GURL& default_service_url() const { return default_service_url_; } |
- void set_default_service_url(const GURL& default_url) { |
- default_service_url_ = default_url; |
- } |
- |
- // Add a new installed service with |title|, |url| and |disposition| to the |
- // picker. |
- void AddInstalledService( |
- const string16& title, |
- const GURL& url, |
- webkit_glue::WebIntentServiceData::Disposition disposition); |
- |
- // Remove an installed service from the picker at |index|. |
- void RemoveInstalledServiceAt(size_t index); |
- |
- // Remove all installed services from the picker, and resets to not |
- // displaying inline disposition. Note that this does not clear the |
- // observer. |
- void Clear(); |
- |
- // Return the intent service installed at |index|. |
- const InstalledService& GetInstalledServiceAt(size_t index) const; |
- |
- // Return the intent service that uses |url| as its service url, or NULL. |
- const InstalledService* GetInstalledServiceWithURL(const GURL& url) const; |
- |
- // Return the number of intent services in the picker. |
- size_t GetInstalledServiceCount() const; |
- |
- // Update favicon for the intent service with service URL |url| to |image|. |
- void UpdateFaviconForServiceWithURL(const GURL& url, const gfx::Image& image); |
- |
- // Add a list of suggested extensions to the model. |
- void AddSuggestedExtensions( |
- const std::vector<SuggestedExtension>& suggestions); |
- |
- // Remove the suggested extension with this id. |
- void RemoveSuggestedExtension(const std::string& id); |
- |
- // Return the suggested extension at |index|. |
- const SuggestedExtension& GetSuggestedExtensionAt(size_t index) const; |
- |
- // Return the suggested extension for the given id or NULL if none. |
- const SuggestedExtension* GetSuggestedExtensionWithId( |
- const std::string& id) const; |
- |
- // Return the number of suggested extensions to be displayed. |
- size_t GetSuggestedExtensionCount() const; |
- |
- // Return the text to use in the "Get more suggestions" link. Returns UTF8. |
- // Will return an empty string if the link should not be shown. |
- string16 GetSuggestionsLinkText() const; |
- |
- // Set the icon image for the suggested extension with |id|. |
- void SetSuggestedExtensionIconWithId(const std::string& id, |
- const gfx::Image& image); |
- |
- // Set the picker to display the intent service with |url| inline. |
- // To clear the current inline disposition set |url| to an empty URL. |
- void SetInlineDisposition(const GURL& url); |
- |
- // Returns true if the picker is currently displaying an inline service. |
- bool IsInlineDisposition() const; |
- |
- // Returns true if there is still a pending request for suggestions from CWS. |
- bool IsWaitingForSuggestions() const; |
- |
- // Set the "waiting for suggestions" status to |waiting| |
- void SetWaitingForSuggestions(bool waiting); |
- |
- // Returns the url of the intent service that is being displayed inline, or |
- // GURL::EmptyGURL() if none. |
- const GURL& inline_disposition_url() const { return inline_disposition_url_; } |
- |
- // Sets the ID of the extension currently being installed. |
- void SetPendingExtensionInstallId(const std::string& id); |
- |
- // Gets the ID of the extension currently being installed. |
- const std::string& pending_extension_install_id() const { |
- return pending_extension_install_id_; |
- } |
- |
- // Updates the pending install download state. |
- void UpdateExtensionDownloadState(content::DownloadItem* item); |
- |
- // Sets the download progress of the extension currently being downloaded. |
- void SetPendingExtensionInstallDownloadProgress(int progress); |
- |
- // Gets the download progress of the extension currently being downloaded. |
- // Returns -1 if progress is indeterminate, otherwise a value from 0 to 100. |
- int pending_extension_install_download_progress() const { |
- return pending_extension_install_download_progress_; |
- } |
- |
- // Sets the status of extension install process. |
- void SetPendingExtensionInstallStatusString(const string16& status); |
- |
- // Gets the status of extension install process. |
- const string16& pending_extension_install_status_string() const { |
- return pending_extension_install_status_string_; |
- } |
- |
- // Sets the extension install delegate. |
- void SetPendingExtensionInstallDelegate( |
- ExtensionInstallPrompt::Delegate* delegate); |
- |
- // Gets the extension install delegate. |
- ExtensionInstallPrompt::Delegate* pending_extension_install_delegate() const { |
- return pending_extension_install_delegate_; |
- } |
- |
- // Sets the extension install prompt. |
- void SetPendingExtensionInstallPrompt( |
- const ExtensionInstallPrompt::Prompt& prompt); |
- |
- // Gets the extension install prompt. |
- const ExtensionInstallPrompt::Prompt* pending_extension_install_prompt() |
- const { |
- return pending_extension_install_prompt_.get(); |
- } |
- |
- // Removes any pending extension install state. |
- void ClearPendingExtensionInstall(); |
- |
- // Set whether the picker should be showing the use-another-app control. |
- void set_show_use_another_service(bool show) { |
- show_use_another_service_ = show; |
- } |
- |
- // Whether or not the picker should show the use-another-app control. |
- bool show_use_another_service() const { |
- return show_use_another_service_; |
- } |
- |
- private: |
- // Delete all elements in |installed_services_| and |suggested_extensions_|. |
- // Note that this method does not reset the observer. |
- void DestroyAll(); |
- |
- // A vector of all installed services in the picker. Each installed service |
- // is owned by this model. |
- std::vector<InstalledService*> installed_services_; |
- |
- // A vector of all suggested extensions in the picker. |
- std::vector<SuggestedExtension> suggested_extensions_; |
- |
- // The observer to send notifications to, or NULL if none. Not owned. |
- WebIntentPickerModelObserver* observer_; |
- |
- // The url of the intent service that is being displayed inline, or |
- // GURL::EmptyGURL() if none. |
- GURL inline_disposition_url_; |
- |
- // A cached copy of the action that instantiated the picker. |
- string16 action_; |
- |
- // A cached copy of the type that instantiated the picker. |
- string16 type_; |
- |
- // The non-empty url of the default service if the WebIntentsRegistry |
- // finds a default service matching the intent being dispatched. |
- GURL default_service_url_; |
- |
- // Indicates that there are still open requests to CWS. |
- bool waiting_for_suggestions_; |
- |
- // Information about the pending extension install. |
- std::string pending_extension_install_id_; |
- int pending_extension_install_download_progress_; |
- string16 pending_extension_install_status_string_; |
- ExtensionInstallPrompt::Delegate* pending_extension_install_delegate_; |
- scoped_ptr<ExtensionInstallPrompt::Prompt> pending_extension_install_prompt_; |
- |
- // Indicates the use-another-service control should be shown. |
- bool show_use_another_service_; |
- |
- DISALLOW_COPY_AND_ASSIGN(WebIntentPickerModel); |
-}; |
- |
-#endif // CHROME_BROWSER_UI_INTENTS_WEB_INTENT_PICKER_MODEL_H_ |