mirror of
https://github.com/jamiepine/voicebox.git
synced 2026-10-03 09:05:17 -07:00
fix: gate macOS-only keyboard_layout symbols behind cfg (#831)
* fix: gate macOS-only keyboard_layout symbols behind cfg to suppress dead_code warnings * chore: sync bun.lock with package.json
This commit is contained in:
@@ -19,19 +19,23 @@
|
|||||||
//! regardless of the active layout — most Windows apps treat that as
|
//! regardless of the active layout — most Windows apps treat that as
|
||||||
//! Ctrl+V. AutoHotkey relies on the same behaviour.
|
//! Ctrl+V. AutoHotkey relies on the same behaviour.
|
||||||
|
|
||||||
|
#[cfg(target_os = "macos")]
|
||||||
use std::sync::atomic::{AtomicU16, Ordering};
|
use std::sync::atomic::{AtomicU16, Ordering};
|
||||||
|
|
||||||
/// `kVK_ANSI_V` — the keycode for the physical V key on a US QWERTY
|
/// `kVK_ANSI_V` — the keycode for the physical V key on a US QWERTY
|
||||||
/// layout. Used as the fallback whenever live resolution can't produce a
|
/// layout. Used as the fallback whenever live resolution can't produce a
|
||||||
/// better answer (no Unicode key layout data, lookup failure, non-macOS).
|
/// better answer (no Unicode key layout data, lookup failure, non-macOS).
|
||||||
|
#[cfg(target_os = "macos")]
|
||||||
const FALLBACK_V_KEYCODE: u16 = 9;
|
const FALLBACK_V_KEYCODE: u16 = 9;
|
||||||
|
|
||||||
|
#[cfg(target_os = "macos")]
|
||||||
static V_KEYCODE: AtomicU16 = AtomicU16::new(FALLBACK_V_KEYCODE);
|
static V_KEYCODE: AtomicU16 = AtomicU16::new(FALLBACK_V_KEYCODE);
|
||||||
|
|
||||||
/// Returns the keycode whose current-layout translation is `'v'`. Falls
|
/// Returns the keycode whose current-layout translation is `'v'`. Falls
|
||||||
/// back to `kVK_ANSI_V` when resolution hasn't run, the active input
|
/// back to `kVK_ANSI_V` when resolution hasn't run, the active input
|
||||||
/// source carries no Unicode key layout data, or no keycode in the layout
|
/// source carries no Unicode key layout data, or no keycode in the layout
|
||||||
/// produces `v`.
|
/// produces `v`.
|
||||||
|
#[cfg(target_os = "macos")]
|
||||||
pub fn paste_keycode_v() -> u16 {
|
pub fn paste_keycode_v() -> u16 {
|
||||||
V_KEYCODE.load(Ordering::Relaxed)
|
V_KEYCODE.load(Ordering::Relaxed)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user