/* -*- Mode: C++; tab-width: 2; 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 "nsISupports.idl" /** * @status UNDER_DEVELOPMENT */ interface imgIRequest; [scriptable, uuid(87c27f98-37dc-4b64-a8cd-92003624bcee)] interface nsIImageDocument : nsISupports { /* Whether the pref for image resizing has been set. */ readonly attribute boolean imageResizingEnabled; /* Whether the image is overflowing visible area. */ readonly attribute boolean imageIsOverflowing; /* Whether the image has been resized to fit visible area. */ readonly attribute boolean imageIsResized; /* The image request being displayed in the content area */ readonly attribute imgIRequest imageRequest; /* Resize the image to fit visible area. */ [binaryname(DOMShrinkToFit)] void shrinkToFit(); /* Restore image original size. */ [binaryname(DOMRestoreImage)] void restoreImage(); /* Restore the image, trying to keep a certain pixel in the same position. * The coordinate system is that of the shrunken image. */ [binaryname(DOMRestoreImageTo)] void restoreImageTo(in long x, in long y); /* A helper method for switching between states. * The switching logic is as follows. If the image has been resized * restore image original size, otherwise if the image is overflowing * current visible area resize the image to fit the area. */ [binaryname(DOMToggleImageSize)] void toggleImageSize(); };