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

Unified Diff: chrome/browser/ui/webui/collected_cookies_ui_delegate.h

Issue 6644002: [ChromeOS] Implement collected cookies in webui. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: sync, address evan and oshima's comemnts #1 Created 9 years, 9 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/webui/collected_cookies_ui_delegate.h
diff --git a/chrome/browser/ui/webui/collected_cookies_ui_delegate.h b/chrome/browser/ui/webui/collected_cookies_ui_delegate.h
new file mode 100644
index 0000000000000000000000000000000000000000..2fff70bcd5048deffc4cf556d6800a5f2dd969be
--- /dev/null
+++ b/chrome/browser/ui/webui/collected_cookies_ui_delegate.h
@@ -0,0 +1,89 @@
+// Copyright (c) 2011 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_WEBUI_COLLECTED_COOKIES_UI_DELEGATE_H_
+#define CHROME_BROWSER_UI_WEBUI_COLLECTED_COOKIES_UI_DELEGATE_H_
+#pragma once
+
+#include <string>
+#include <vector>
+
+#include "base/scoped_ptr.h"
+#include "chrome/browser/ui/webui/html_dialog_ui.h"
+#include "chrome/browser/ui/webui/cookies_tree_model_adapter.h"
oshima 2011/03/10 17:46:11 sort include
xiyuan 2011/03/10 17:54:50 Done.
+#include "chrome/common/content_settings.h"
+#include "chrome/common/notification_observer.h"
+#include "chrome/common/notification_registrar.h"
+
+class GURL;
+class TabContents;
+
+namespace gfx {
+class Size;
+}
+
+class CollectedCookiesUIDelegate : public HtmlDialogUIDelegate,
+ WebUIMessageHandler,
+ NotificationObserver {
+ public:
+ virtual ~CollectedCookiesUIDelegate();
+
+ // static factory method that shows CollectedCookiesUI for |tab_contents|.
+ static void Show(TabContents* tab_contents);
+
+ // HtmlDialogUIDelegate implementation:
+ virtual bool IsDialogModal() const;
+ virtual std::wstring GetDialogTitle() const;
+ virtual GURL GetDialogContentURL() const;
+ virtual void GetWebUIMessageHandlers(
+ std::vector<WebUIMessageHandler*>* handlers) const;
+ virtual void GetDialogSize(gfx::Size* size) const;
+ virtual std::string GetDialogArgs() const;
+ virtual void OnDialogClosed(const std::string& json_retval);
+ virtual void OnCloseContents(TabContents* source, bool* out_close_dialog) {}
+ virtual bool ShouldShowDialogTitle() const;
+
+ // WebUIMessageHandler implementation:
+ virtual void RegisterMessages();
+
+ private:
+ explicit CollectedCookiesUIDelegate(TabContents* tab_contents);
+
+ // Closes the dialog from javascript.
+ void CloseDialog();
+
+ // Sets infobar label text.
+ void SetInfobarLabel(const std::string& text);
+
+ // Add content exception.
+ void AddContentException(CookieTreeOriginNode* origin_node,
+ ContentSetting setting);
+
+ // Notification Observer implementation.
+ void Observe(NotificationType type,
+ const NotificationSource& source,
+ const NotificationDetails& details);
+
+ // JS callback to bind cookies tree models with JS trees.
+ void BindCookiesTreeModel(const ListValue* args);
+
+ // JS callback to block/allow cookies from given site.
+ void Block(const ListValue* args);
+ void Allow(const ListValue* args);
+ void AllowThisSession(const ListValue* args);
+
+ NotificationRegistrar registrar_;
+ TabContents* tab_contents_;
+ bool closed_;
+
+ scoped_ptr<CookiesTreeModel> allowed_cookies_tree_model_;
+ scoped_ptr<CookiesTreeModel> blocked_cookies_tree_model_;
+
+ CookiesTreeModelAdapter allowed_cookies_adapter_;
+ CookiesTreeModelAdapter blocked_cookies_adapter_;
+
+ DISALLOW_COPY_AND_ASSIGN(CollectedCookiesUIDelegate);
+};
+
+#endif // CHROME_BROWSER_UI_WEBUI_COLLECTED_COOKIES_UI_DELEGATE_H_

Powered by Google App Engine
This is Rietveld 408576698