1f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)// Copyright 2013 The Chromium Authors. All rights reserved.
2f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
3f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)// found in the LICENSE file.
4f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
5f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)package org.chromium.chrome.browser.printing;
6f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
75f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)import android.content.Context;
8f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
9f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)import org.chromium.base.ApiCompatibilityUtils;
10f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)import org.chromium.chrome.R;
11a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)import org.chromium.printing.PrintDocumentAdapterWrapper;
12f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)import org.chromium.printing.PrintingController;
13f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)import org.chromium.printing.PrintingControllerImpl;
14f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
15f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)/**
16f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) * Creates a {@link PrintingControllerImpl}.
17f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) *
18f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) * Also, sets the default title of {@link TabPrinter}.
19f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) */
20f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)public class PrintingControllerFactory {
215f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)    public static PrintingController create(Context context) {
22f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)        if (ApiCompatibilityUtils.isPrintingSupported()) {
235f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)            String defaultJobTitle = context.getResources().getString(R.string.menu_print);
24f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)            TabPrinter.setDefaultTitle(defaultJobTitle);
25f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
265f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)            String errorText = context.getResources().getString(R.string.error_printing_failed);
27a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)            return PrintingControllerImpl.create(new PrintDocumentAdapterWrapper(), errorText);
28f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)        }
29f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)        return null;
30f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    }
31f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)}
32