| Index: chrome/browser/dom_ui/new_tab_page_sync_handler.h
|
| ===================================================================
|
| --- chrome/browser/dom_ui/new_tab_page_sync_handler.h (revision 0)
|
| +++ chrome/browser/dom_ui/new_tab_page_sync_handler.h (revision 0)
|
| @@ -0,0 +1,61 @@
|
| +// Copyright (c) 2006-2008 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.
|
| +
|
| +#ifdef CHROME_PERSONALIZATION
|
| +
|
| +#ifndef CHROME_BROWSER_DOM_UI_NEW_TAB_PAGE_SYNC_HANDLER_H_
|
| +#define CHROME_BROWSER_DOM_UI_NEW_TAB_PAGE_SYNC_HANDLER_H_
|
| +
|
| +#include <string>
|
| +
|
| +#include "chrome/browser/dom_ui/dom_ui.h"
|
| +#include "chrome/browser/sync/profile_sync_service.h"
|
| +#include "chrome/browser/sync/sync_status_ui_helper.h"
|
| +
|
| +class Value;
|
| +
|
| +// Sends sync-state changes to the New Tab Page for UI updating and forwards
|
| +// link clicks on the page to the sync service.
|
| +class NewTabPageSyncHandler : public DOMMessageHandler,
|
| + public ProfileSyncServiceObserver {
|
| + public:
|
| + NewTabPageSyncHandler();
|
| + virtual ~NewTabPageSyncHandler();
|
| +
|
| + // DOMMessageHandler implementation.
|
| + virtual DOMMessageHandler* Attach(DOMUI* dom_ui);
|
| + virtual void RegisterMessages();
|
| +
|
| + // Callback for "GetSyncMessage".
|
| + void HandleGetSyncMessage(const Value* value);
|
| + // Callback for "SyncLinkClicked".
|
| + void HandleSyncLinkClicked(const Value* value);
|
| + // Callback for "ResizeP13N"
|
| + void HandleResizeP13N(const Value* value);
|
| +
|
| + // ProfileSyncServiceObserver
|
| + virtual void OnStateChanged();
|
| +
|
| + private:
|
| + // Helper to invoke |renderSyncMessage| JS function on the new tab page.
|
| + void SendSyncMessageToPage(SyncStatusUIHelper::MessageType type,
|
| + std::string msg, const std::string& linktext);
|
| +
|
| + // Helper to query the sync service and figure out what to send to
|
| + // the page, and send it via SendSyncMessageToPage.
|
| + // NOTE: precondition: sync must be enabled.
|
| + void BuildAndSendSyncStatus();
|
| +
|
| + // Cached pointer to ProfileSyncService.
|
| + ProfileSyncService* sync_service_;
|
| +
|
| + // Used to make sure we don't register ourselves twice if the user refreshes
|
| + // the new tab page.
|
| + bool waiting_for_initial_page_load_;
|
| +
|
| + DISALLOW_COPY_AND_ASSIGN(NewTabPageSyncHandler);
|
| +};
|
| +
|
| +#endif // CHROME_BROWSER_DOM_UI_NEW_TAB_PAGE_SYNC_HANDLER_H_
|
| +#endif // CHROME_PERSONALIZATION
|
|
|
| Property changes on: chrome\browser\dom_ui\new_tab_page_sync_handler.h
|
| ___________________________________________________________________
|
| Added: svn:eol-style
|
| + LF
|
|
|
|
|