gecko-dev/widget/android/nsIAndroidBridge.idl
Nathan Froyd eea241e75d Bug 906088 - part 5 - send preference requests to JS through JNI and XPConnect rather than JSON; r=blassey,mfinkle
Small fix to notifyPrefObservers to call getPreferences with the new argument style.
Carrying over r+.
2013-09-04 09:58:23 -04:00

60 lines
2.2 KiB
Plaintext

/* 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"
#include "nsIDOMWindow.idl"
[scriptable, uuid(0843f3c1-043e-4c64-9d8c-091370548c05)]
interface nsIBrowserTab : nsISupports {
readonly attribute nsIDOMWindow window;
readonly attribute float scale;
};
[scriptable, uuid(7508b826-4129-40a0-91da-2a6bba33681f)]
interface nsIAndroidBrowserApp : nsISupports {
nsIBrowserTab getBrowserTab(in int32_t tabId);
void getPreferences(in int32_t requestId,
[array, size_is(count)] in wstring prefNames,
in unsigned long count);
void observePreferences(in int32_t requestId,
[array, size_is(count)] in wstring prefNames,
in unsigned long count);
void removePreferenceObservers(in int32_t requestId);
};
[scriptable, uuid(59cfcb35-69b7-47b2-8155-32b193272666)]
interface nsIAndroidViewport : nsISupports {
readonly attribute float x;
readonly attribute float y;
readonly attribute float width;
readonly attribute float height;
readonly attribute float pageLeft;
readonly attribute float pageTop;
readonly attribute float pageRight;
readonly attribute float pageBottom;
readonly attribute float cssPageLeft;
readonly attribute float cssPageTop;
readonly attribute float cssPageRight;
readonly attribute float cssPageBottom;
readonly attribute float zoom;
};
[scriptable, uuid(e1bfbc07-dbae-409d-a5b5-ef57522c1f15)]
interface nsIAndroidDisplayport : nsISupports {
attribute float left;
attribute float top;
attribute float right;
attribute float bottom;
attribute float resolution;
};
[scriptable, uuid(5aa0cfa5-377c-4f5e-8dcf-59ebd9482d65)]
interface nsIAndroidBridge : nsISupports
{
AString handleGeckoMessage(in AString message);
attribute nsIAndroidBrowserApp browserApp;
nsIAndroidDisplayport getDisplayPort(in boolean aPageSizeUpdate, in boolean isBrowserContentDisplayed, in int32_t tabId, in nsIAndroidViewport metrics);
void contentDocumentChanged();
boolean isContentDocumentDisplayed();
};