| Index: chrome/browser/printing/background_printing_manager.h
|
| ===================================================================
|
| --- chrome/browser/printing/background_printing_manager.h (revision 110058)
|
| +++ chrome/browser/printing/background_printing_manager.h (working copy)
|
| @@ -35,6 +35,13 @@
|
| // hides it from the user.
|
| void OwnPrintPreviewTab(TabContentsWrapper* preview_tab);
|
|
|
| + // Takes ownership of |initiator_tab| and deletes it when its preview tab is
|
| + // destroyed by either being canceled, closed or finishing printing. This
|
| + // removes the TabContentsWrapper from its TabStrip and hides it from the
|
| + // user. Returns true if content has an associated print preview tab,
|
| + // otherwise, returns false and does not take ownership of |initiator_tab|.
|
| + bool OwnInitiatorTab(TabContentsWrapper* initiator_tab);
|
| +
|
| // Let others iterate over the list of background printing tabs.
|
| TabContentsWrapperSet::const_iterator begin();
|
| TabContentsWrapperSet::const_iterator end();
|
| @@ -48,11 +55,17 @@
|
| const content::NotificationDetails& details) OVERRIDE;
|
|
|
| private:
|
| + typedef std::map<TabContentsWrapper*, TabContentsWrapper*>
|
| + TabContentsWrapperMap;
|
| +
|
| // Notifications handlers.
|
| void OnRendererProcessClosed(RenderProcessHost* rph);
|
| void OnPrintJobReleased(TabContentsWrapper* preview_tab);
|
| void OnTabContentsDestroyed(TabContentsWrapper* preview_tab);
|
|
|
| + // Removes |tab| from its tab strip.
|
| + void RemoveFromTabStrip(TabContentsWrapper* tab);
|
| +
|
| // Add |tab| to the pending deletion set and schedule deletion.
|
| void DeletePreviewTab(TabContentsWrapper* tab);
|
|
|
| @@ -68,6 +81,13 @@
|
| // are pending deletion.
|
| TabContentsWrapperSet printing_tabs_pending_deletion_;
|
|
|
| + // 1:1 mapping between an initiator tab managed by BackgroundPrintingManager
|
| + // and its associated print preview tab. The print preview tab need not be in
|
| + // |printing_tabs_|.
|
| + // Key: print preview tab.
|
| + // Value: initiator tab.
|
| + TabContentsWrapperMap map_;
|
| +
|
| content::NotificationRegistrar registrar_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(BackgroundPrintingManager);
|
|
|