nsITouchBarHelper.idl
/* 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 "nsITouchBarInput.idl"
webidl Document;
/**
* Back-to-frontend communication for the Touch Bar
*/
[scriptable, uuid(ea109912-3acc-48de-b679-c23b6a122da5)]
interface nsITouchBarHelper : nsISupports
{
/**
* Returns the active browser's URL.
*/
readonly attribute AString activeUrl;
/**
* Return the active browser's page title.
*/
readonly attribute AString activeTitle;
/**
* Return true if the Urlbar has focus.
*/
readonly attribute boolean isUrlbarFocused;
/**
* Toggles Urlbar focus.
*/
void toggleFocusUrlbar();
/**
* Unfocuses the Urlbar.
*/
void unfocusUrlbar();
/**
* Returns all available Touch Bar Inputs in an nsIArray
* of nsITouchBarInput objects.
*/
attribute nsIArray allItems;
/**
* The context in which this nsITouchBarHelper exists. Required to create
* an imgLoader to load our SVG icons.
*/
readonly attribute Document document;
/**
* Returns the requested TouchBarInput.
* Exposed for testing.
*/
nsITouchBarInput getTouchBarInput(in string aInputName);
/**
* Inserts a search restriction string in the Urlbar.
* Exposed for testing.
*/
void insertRestrictionInUrlbar(in string aToken);
};