mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-10-03 05:47:29 +09:00
import FIREFOX_52_6_0esr_RELEASE from mozilla-esr52 hg repo
This commit is contained in:
commit
dcd9973243
150858 changed files with 23884658 additions and 0 deletions
152
widget/nsIDragService.idl
Normal file
152
widget/nsIDragService.idl
Normal file
|
|
@ -0,0 +1,152 @@
|
|||
/* -*- Mode: IDL; 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 "nsIArray.idl"
|
||||
#include "nsISupports.idl"
|
||||
#include "nsIDragSession.idl"
|
||||
#include "nsIScriptableRegion.idl"
|
||||
#include "nsIContentPolicyBase.idl"
|
||||
|
||||
interface nsIDOMNode;
|
||||
interface nsIDOMDragEvent;
|
||||
interface nsIDOMDataTransfer;
|
||||
interface nsISelection;
|
||||
|
||||
%{C++
|
||||
#include "mozilla/EventForwards.h"
|
||||
|
||||
namespace mozilla {
|
||||
namespace dom {
|
||||
class ContentParent;
|
||||
} // namespace dom
|
||||
} // namespace mozilla
|
||||
%}
|
||||
|
||||
[ptr] native ContentParentPtr(mozilla::dom::ContentParent);
|
||||
native EventMessage(mozilla::EventMessage);
|
||||
|
||||
[scriptable, uuid(ebd6b3a2-af16-43af-a698-3091a087dd62), builtinclass]
|
||||
interface nsIDragService : nsISupports
|
||||
{
|
||||
const long DRAGDROP_ACTION_NONE = 0;
|
||||
const long DRAGDROP_ACTION_COPY = 1;
|
||||
const long DRAGDROP_ACTION_MOVE = 2;
|
||||
const long DRAGDROP_ACTION_LINK = 4;
|
||||
const long DRAGDROP_ACTION_UNINITIALIZED = 64;
|
||||
|
||||
/**
|
||||
* Starts a modal drag session with an array of transaferables.
|
||||
*
|
||||
* Note: This method is deprecated for non-native code.
|
||||
*
|
||||
* @param aTransferables - an array of transferables to be dragged
|
||||
* @param aRegion - a region containing rectangles for cursor feedback,
|
||||
* in window coordinates.
|
||||
* @param aActionType - specified which of copy/move/link are allowed
|
||||
* @param aContentPolicyType - the contentPolicyType that will be
|
||||
* passed to the loadInfo when creating a new channel
|
||||
* (defaults to TYPE_OTHER)
|
||||
*/
|
||||
void invokeDragSession (in nsIDOMNode aDOMNode,
|
||||
in nsIArray aTransferables,
|
||||
in nsIScriptableRegion aRegion,
|
||||
in unsigned long aActionType,
|
||||
[optional] in nsContentPolicyType aContentPolicyType);
|
||||
|
||||
/**
|
||||
* Starts a modal drag session using an image. The first four arguments are
|
||||
* the same as invokeDragSession.
|
||||
*
|
||||
* Note: This method is deprecated for non-native code.
|
||||
*
|
||||
* A custom image may be specified using the aImage argument. If this is
|
||||
* supplied, the aImageX and aImageY arguments specify the offset within
|
||||
* the image where the cursor would be positioned. That is, when the image
|
||||
* is drawn, it is offset up and left the amount so that the cursor appears
|
||||
* at that location within the image.
|
||||
*
|
||||
* If aImage is null, aImageX and aImageY are not used and the image is instead
|
||||
* determined from the source node aDOMNode, and the offset calculated so that
|
||||
* the initial location for the image appears in the same screen position as
|
||||
* where the element is located. The node must be within a document.
|
||||
*
|
||||
* Currently, supported images are all DOM nodes. If this is an HTML <image> or
|
||||
* <canvas>, the drag image is taken from the image data. If the element is in
|
||||
* a document, it will be rendered at its displayed size, othewise, it will be
|
||||
* rendered at its real size. For other types of elements, the element is
|
||||
* rendered into an offscreen buffer in the same manner as it is currently
|
||||
* displayed. The document selection is hidden while drawing.
|
||||
*
|
||||
* The aDragEvent must be supplied as the current screen coordinates of the
|
||||
* event are needed to calculate the image location.
|
||||
*/
|
||||
void invokeDragSessionWithImage(in nsIDOMNode aDOMNode,
|
||||
in nsIArray aTransferableArray,
|
||||
in nsIScriptableRegion aRegion,
|
||||
in unsigned long aActionType,
|
||||
in nsIDOMNode aImage,
|
||||
in long aImageX,
|
||||
in long aImageY,
|
||||
in nsIDOMDragEvent aDragEvent,
|
||||
in nsIDOMDataTransfer aDataTransfer);
|
||||
|
||||
/**
|
||||
* Start a modal drag session using the selection as the drag image.
|
||||
* The aDragEvent must be supplied as the current screen coordinates of the
|
||||
* event are needed to calculate the image location.
|
||||
*
|
||||
* Note: This method is deprecated for non-native code.
|
||||
*/
|
||||
void invokeDragSessionWithSelection(in nsISelection aSelection,
|
||||
in nsIArray aTransferableArray,
|
||||
in unsigned long aActionType,
|
||||
in nsIDOMDragEvent aDragEvent,
|
||||
in nsIDOMDataTransfer aDataTransfer);
|
||||
|
||||
/**
|
||||
* Returns the current Drag Session
|
||||
*/
|
||||
nsIDragSession getCurrentSession ( ) ;
|
||||
|
||||
/**
|
||||
* Tells the Drag Service to start a drag session. This is called when
|
||||
* an external drag occurs
|
||||
*/
|
||||
void startDragSession ( ) ;
|
||||
|
||||
/**
|
||||
* Tells the Drag Service to end a drag session. This is called when
|
||||
* an external drag occurs
|
||||
*
|
||||
* If aDoneDrag is true, the drag has finished, otherwise the drag has
|
||||
* just left the window.
|
||||
*/
|
||||
void endDragSession ( in boolean aDoneDrag ) ;
|
||||
|
||||
/**
|
||||
* Fire a drag event at the source of the drag
|
||||
*/
|
||||
[noscript] void fireDragEventAtSource(in EventMessage aEventMessage);
|
||||
|
||||
/**
|
||||
* Increase/decrease dragging suppress level by one.
|
||||
* If level is greater than one, dragging is disabled.
|
||||
*/
|
||||
void suppress();
|
||||
void unsuppress();
|
||||
|
||||
/**
|
||||
* aX and aY are in LayoutDevice pixels.
|
||||
*/
|
||||
[noscript] void dragMoved(in long aX, in long aY);
|
||||
|
||||
[notxpcom, nostdcall] boolean maybeAddChildProcess(in ContentParentPtr aChild);
|
||||
};
|
||||
|
||||
|
||||
%{ C++
|
||||
|
||||
%}
|
||||
Loading…
Add table
Add a link
Reference in a new issue