1/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2/* This Source Code Form is subject to the terms of the Mozilla Public
3 * License, v. 2.0. If a copy of the MPL was not distributed with this
4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
5
6#include "nsISupports.idl"
7
8/**
9 * This interface remains only for the constants, for a context, use the
10 * WebIDL/Paris bindings instead (CanvasRenderingContext2D.webidl).
11 * The constants are used by CanvasRenderingContext2D::DrawWindow and are
12 * used in WindowsPreviewPerTab.jsm and some extensions. The constants can
13 * be referenced directly via a canvas context 2d rather than this interface,
14 * and that should be preferred in new code.
15 */
16[uuid(4417cab7-c7eb-4e0c-b00a-c43842f0cba8)]
17interface nsIDOMCanvasRenderingContext2D : nsISupports
18{
19  // Show the caret if appropriate when drawing
20  const unsigned long DRAWWINDOW_DRAW_CARET   = 0x01;
21  // Don't flush pending layout notifications that could otherwise
22  // be batched up
23  const unsigned long DRAWWINDOW_DO_NOT_FLUSH = 0x02;
24  // Draw scrollbars and scroll the viewport if they are present
25  const unsigned long DRAWWINDOW_DRAW_VIEW    = 0x04;
26  // Use the widget layer manager if available. This means hardware
27  // acceleration may be used, but it might actually be slower or
28  // lower quality than normal. It will however more accurately reflect
29  // the pixels rendered to the screen.
30  const unsigned long DRAWWINDOW_USE_WIDGET_LAYERS = 0x08;
31  // Don't synchronously decode images - draw what we have
32  const unsigned long DRAWWINDOW_ASYNC_DECODE_IMAGES = 0x10;
33};
34