@girs/gnome-shell
Version:
GJS TypeScript type definitions for GNOME Shell Extensions
57 lines (47 loc) • 1.6 kB
TypeScript
// https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/main/js/ui/status/dwellClick.js
import Clutter from '@girs/clutter-16';
import Gio from '@girs/gio-2.0';
import GLib from '@girs/glib-2.0';
import St from '@girs/st-16';
import * as PanelMenu from '../panelMenu.js';
/**
* Interface for dwell click modes.
*/
export interface DwellClickMode {
name: string;
icon: string;
type: Clutter.PointerA11yDwellClickType;
}
/**
* Indicator for dwell click accessibility feature.
* Extends `PanelMenu.Button`.
*/
export declare class DwellClickIndicator extends PanelMenu.Button {
private _icon: St.Icon;
private _a11ySettings: Gio.Settings;
private _seat: Clutter.Seat;
/**
* Initializes a new instance of `DwellClickIndicator`.
*/
_init(): void;
/**
* Syncs the menu visibility based on the accessibility settings.
*/
private _syncMenuVisibility(): typeof GLib.SOURCE_REMOVE;
/**
* Adds a dwell action to the menu.
* @param mode - The mode for the dwell action.
*/
private _addDwellAction(mode: { name: string; icon: string; type: DwellClickMode }): void;
/**
* Updates the click type icon based on the provided click type.
* @param manager - The Clutter manager.
* @param clickType - The type of click.
*/
private _updateClickType(manager: any, clickType: DwellClickMode): void;
/**
* Sets the click type for the dwell action.
* @param mode - The mode to set for the click type.
*/
private _setClickType(mode: { type: DwellClickMode; icon: string }): void;
}