2019-01-22 17:13:33 +00:00
|
|
|
/* 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/. */
|
|
|
|
|
2019-03-18 12:14:11 +00:00
|
|
|
#include "nsIArray.idl"
|
2019-01-22 17:13:33 +00:00
|
|
|
#include "nsIBaseWindow.idl"
|
|
|
|
#include "nsISupports.idl"
|
2019-04-09 17:47:06 +00:00
|
|
|
#include "nsITouchBarInput.idl"
|
2019-01-22 17:13:33 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Front-to-backend communication to keep Touch Bar updated
|
|
|
|
*/
|
|
|
|
[scriptable, uuid(38f396e2-93c9-4a77-aaf7-2d50b9962186)]
|
|
|
|
interface nsITouchBarUpdater : nsISupports
|
|
|
|
{
|
|
|
|
/**
|
2019-03-18 12:14:11 +00:00
|
|
|
* Updates an array of nsITouchBarInputs in the specified window.
|
2019-01-22 17:13:33 +00:00
|
|
|
*/
|
2019-04-09 17:47:06 +00:00
|
|
|
void updateTouchBarInputs(in nsIBaseWindow aWindow, in Array<nsITouchBarInput> aInputs);
|
2019-07-06 21:10:33 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Enter the native Touch Bar customization window.
|
|
|
|
*/
|
|
|
|
void enterCustomizeMode();
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Checks if the user is using a Touch Bar-compatible Mac.
|
|
|
|
*/
|
|
|
|
boolean isTouchBarInitialized();
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Sets whether the Touch Bar is initialized.
|
|
|
|
* NOTE: This method is for internal unit tests only! Normally, the system
|
|
|
|
* sets this value after a Touch Bar is initialized on compatible Macs.
|
|
|
|
*/
|
|
|
|
void setTouchBarInitialized(in boolean aIsInitialized);
|
2019-10-09 17:55:15 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* If aShowing is true, aPopover is shown. Otherwise, it is hidden.
|
|
|
|
*/
|
|
|
|
void showPopover(in nsIBaseWindow aWindow, in nsITouchBarInput aPopover, in boolean aShowing);
|
2019-01-22 17:13:33 +00:00
|
|
|
};
|