chrome/nsIToolkitChromeRegistry.idl
author Jonathan Watt <jwatt@jwatt.org>
Mon, 09 Jan 2017 19:12:02 +0000
changeset 340973 b6959c93a4f797df7a6ce95e79a5490bc9004f04
parent 195584 76be62e9944c0ff34e9a30258fa48b2c73b8cc32
child 471297 7a5177cca40350267da21fdd3dd0025a172db51f
permissions -rw-r--r--
Bug 1058040, part 6 - When copying SVGImageContexts use the copy ctor. r=dholbert Prior to this patch whenever we wanted to pass on a modified SVGImageContext we would pass on a new object initialized with some of the data of the object we were given and with the new data we wanted to change. Unfortunately we were sometimes failing to faithfully copy member data that we do not want to modify (because of default arguments). This patch fixes that by making us fully copy the object we were given using its copy constructor and then explicitly override the data we want to change.

/* -*- Mode: C++; tab-width; 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* 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 "nsIChromeRegistry.idl"

interface nsIURI;
interface nsIUTF8StringEnumerator;

[scriptable, uuid(8727651c-9530-45a0-b81e-0e0690c30c50)]
interface nsIToolkitChromeRegistry : nsIXULChromeRegistry
{
  /**
   * If the OS has a "high-visibility" or "disabled-friendly" theme set,
   * we want to force mozilla into the classic theme, which (for the most part
   * obeys the system color/font settings. We cannot do this at initialization,
   * because it depends on the toolkit (GTK2) being initialized, which is
   * not the case in some embedding situations. Embedders have to manually
   * call this method during the startup process.
   */
  void checkForOSAccessibility();

  /**
   * Get a list of locales available for the specified package.
   */
  nsIUTF8StringEnumerator getLocalesForPackage(in AUTF8String aPackage);
};