widget/nsIPrinterEnumerator.idl
author Andreas Tolfsen <ato@sny.no>
Thu, 11 Oct 2018 16:40:36 +0000
changeset 443621 9ca2c179e63e292808918158eb778b16bf18e67f
parent 385663 396ff2a152d77a0c28f09fefc8b0a96659f2d4ba
child 470305 0f12aebacdd6845bed9e7f2cbf8e33dbd9b50b8b
permissions -rw-r--r--
bug 1492499: marionette: warn on TimedPromise bailing; r=automatedtester We often use TimedPromise to ensure Marionette does not unexpectedly block on a promise that, for whatever reason, does not resolve. It can however be useful to be alerted when they don't, as it quite often means there is an underlying problem. Depends on D8406 Differential Revision: https://phabricator.services.mozilla.com/D8407

/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

#include "nsISupports.idl"
#include "nsIPrintSettings.idl"

interface nsIStringEnumerator;

[scriptable, uuid(5e738fff-404c-4c94-9189-e8f2cce93e94)]

interface nsIPrinterEnumerator : nsISupports
{
  /**
   * The name of the system default printer. This name should also be
   * present in printerNameList below. This is not necessarily gecko's
   * default printer; see nsIPrintSettingsService.defaultPrinterName
   * for that.
   */
  readonly attribute AString defaultPrinterName;

  /**
   * Initializes certain settings from the native printer into the PrintSettings
   * These settings include, but are not limited to:
   *   Page Orientation
   *   Page Size
   *   Number of Copies
   */
  void initPrintSettingsFromPrinter(in AString aPrinterName,
                                    in nsIPrintSettings aPrintSettings);

  /**
   * The list of printer names
   */
  readonly attribute nsIStringEnumerator printerNameList;
};