diff -r 000000000000 -r 6474c204b198 content/html/document/public/nsIImageDocument.idl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/content/html/document/public/nsIImageDocument.idl Wed Dec 31 06:09:35 2014 +0100 @@ -0,0 +1,50 @@ +/* -*- 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(); +};