| Index: chrome/renderer/print_web_view_helper.h
 | 
| ===================================================================
 | 
| --- chrome/renderer/print_web_view_helper.h	(revision 71495)
 | 
| +++ chrome/renderer/print_web_view_helper.h	(working copy)
 | 
| @@ -45,8 +45,11 @@
 | 
|  // this class because it will cause flicker.
 | 
|  class PrepareFrameAndViewForPrint {
 | 
|   public:
 | 
| +  // Prints |frame|.  If |node| is not NULL, then only that node will be
 | 
| +  // printed.
 | 
|    PrepareFrameAndViewForPrint(const ViewMsg_Print_Params& print_params,
 | 
|                                WebKit::WebFrame* frame,
 | 
| +                              WebKit::WebNode* node,
 | 
|                                WebKit::WebView* web_view);
 | 
|    ~PrepareFrameAndViewForPrint();
 | 
|  
 | 
| @@ -83,8 +86,14 @@
 | 
|    explicit PrintWebViewHelper(RenderView* render_view);
 | 
|    virtual ~PrintWebViewHelper();
 | 
|  
 | 
| -  void Print(WebKit::WebFrame* frame, bool script_initiated, bool is_preview);
 | 
| +  void PrintFrame(WebKit::WebFrame* frame,
 | 
| +                  bool script_initiated,
 | 
| +                  bool is_preview);
 | 
|  
 | 
| +  void PrintNode(WebKit::WebNode* node,
 | 
| +                 bool script_initiated,
 | 
| +                 bool is_preview);
 | 
| +
 | 
|    // Is there a background print in progress?
 | 
|    bool IsPrinting() {
 | 
|      return print_web_view_ != NULL;
 | 
| @@ -112,7 +121,8 @@
 | 
|    // Prints all the pages listed in |params|.
 | 
|    // It will implicitly revert the document to display CSS media type.
 | 
|    void PrintPages(const ViewMsg_PrintPages_Params& params,
 | 
| -                  WebKit::WebFrame* frame);
 | 
| +                  WebKit::WebFrame* frame,
 | 
| +                  WebKit::WebNode* node);
 | 
|  
 | 
|    // IPC::Message::Sender
 | 
|    bool Send(IPC::Message* msg);
 | 
| @@ -134,14 +144,22 @@
 | 
|        double* margin_bottom_in_points,
 | 
|        double* margin_left_in_points);
 | 
|  
 | 
| +  void Print(WebKit::WebFrame* frame,
 | 
| +             WebKit::WebNode* node,
 | 
| +             bool script_initiated,
 | 
| +             bool is_preview);
 | 
| +
 | 
|    void UpdatePrintableSizeInPrintParameters(WebKit::WebFrame* frame,
 | 
| +                                            WebKit::WebNode* node,
 | 
|                                              ViewMsg_Print_Params* params);
 | 
|  
 | 
|    // Initialize print page settings with default settings.
 | 
| -  bool InitPrintSettings(WebKit::WebFrame* frame);
 | 
| +  bool InitPrintSettings(WebKit::WebFrame* frame,
 | 
| +                         WebKit::WebNode* node);
 | 
|  
 | 
|    // Get the default printer settings.
 | 
|    bool GetDefaultPrintSettings(WebKit::WebFrame* frame,
 | 
| +                               WebKit::WebNode* node,
 | 
|                                 ViewMsg_Print_Params* params);
 | 
|  
 | 
|    // Get final print settings from the user.
 | 
| @@ -151,7 +169,8 @@
 | 
|                                  bool use_browser_overlays);
 | 
|  
 | 
|    // Render the frame for printing.
 | 
| -  void RenderPagesForPrint(WebKit::WebFrame* frame);
 | 
| +  void RenderPagesForPrint(WebKit::WebFrame* frame,
 | 
| +                           WebKit::WebNode* node);
 | 
|  
 | 
|    // Render the frame for preview.
 | 
|    void RenderPagesForPreview(WebKit::WebFrame* frame);
 | 
| 
 |