blob: 9f691f165671afc7b04c1293e3aadfb5d32c9ca0 [file] [log] [blame]
// Copyright 2021 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
/// This library contains the APIs used to manage and distribute user's
/// preferences related to keymap choice.
library fuchsia.input.keymap;
/// Keymaps that should always be present and selectable. The fallback keymaps
/// may be useful on their own but are mainly here to ensure that at least some
/// keymap is present if no other custom keymaps have been defined or in use.
type Id = flexible enum {
/// The US_QWERTY keymap. This is also the default if no settings are
/// ever applied.
US_QWERTY = 0;
/// The FR AZERTY keymap.
FR_AZERTY = 1;
/// The US Dvorak keymap.
US_DVORAK = 2;
};
/// Mutator interface to the keymap configuration.
@discoverable
protocol Configuration {
/// Set a keymap by ID.
/// If a keymap has never been set before, "US_QWERTY" is the assumed default.
SetLayout(struct {
keymap Id;
}) -> ();
};