Index: chrome/android/java/src/org/chromium/chrome/browser/Tab.java |
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/Tab.java b/chrome/android/java/src/org/chromium/chrome/browser/Tab.java |
index 38abe1ca22d6028b7adc2b072a2ca22826c5ee70..2b68bd8459f01703b7357398f9a52548ff4df91b 100644 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/Tab.java |
+++ b/chrome/android/java/src/org/chromium/chrome/browser/Tab.java |
@@ -8,6 +8,7 @@ import android.app.Activity; |
import android.content.Context; |
import android.graphics.Bitmap; |
import android.graphics.Color; |
+import android.util.Log; |
import android.view.ContextMenu; |
import android.view.View; |
@@ -26,6 +27,7 @@ import org.chromium.chrome.browser.contextmenu.EmptyChromeContextMenuItemDelegat |
import org.chromium.chrome.browser.dom_distiller.DomDistillerFeedbackReporter; |
import org.chromium.chrome.browser.infobar.AutoLoginProcessor; |
import org.chromium.chrome.browser.infobar.InfoBarContainer; |
+import org.chromium.chrome.browser.printing.TabPrinter; |
import org.chromium.chrome.browser.profiles.Profile; |
import org.chromium.chrome.browser.toolbar.ToolbarModel; |
import org.chromium.content.browser.ContentView; |
@@ -34,6 +36,9 @@ import org.chromium.content.browser.ContentViewCore; |
import org.chromium.content.browser.WebContentsObserver; |
import org.chromium.content_public.browser.LoadUrlParams; |
import org.chromium.content_public.browser.WebContents; |
+import org.chromium.printing.PrintManagerDelegateImpl; |
+import org.chromium.printing.PrintingController; |
+import org.chromium.printing.PrintingControllerImpl; |
import org.chromium.ui.base.Clipboard; |
import org.chromium.ui.base.WindowAndroid; |
import org.chromium.ui.gfx.DeviceDisplayInfo; |
@@ -74,9 +79,14 @@ import java.util.concurrent.atomic.AtomicInteger; |
public class Tab { |
public static final int INVALID_TAB_ID = -1; |
+ /** Tag used for logging */ |
+ private static final String TAG = "Tab"; |
+ |
/** Used for automatically generating tab ids. */ |
private static final AtomicInteger sIdCounter = new AtomicInteger(); |
+ private final boolean mDebug = true; |
+ |
private long mNativeTabAndroid; |
/** Unique id of this tab (within its container). */ |
@@ -543,6 +553,18 @@ public class Tab { |
return nativePrint(mNativeTabAndroid); |
} |
+ @CalledByNative |
+ public void showPrintDialog() { |
+ // TODO Is that considered private data and should not be logged? |
+ if (mDebug) Log.d(TAG, "Showing print dialog for tab " + this.getTitle() |
+ + " (" + this.getUrl() + ")"); |
+ PrintingController printingController = PrintingControllerImpl.getInstance(); |
+ if (printingController != null) { |
+ printingController.startPrint(new TabPrinter(this), |
+ new PrintManagerDelegateImpl(mContext)); |
+ } |
+ } |
+ |
/** |
* Reloads the current page content. |
*/ |