Skip to main content

Mountain/Command/Keybinding/
RegisterExtensionKeybindings.rs

1
2//! Tauri command - register keybindings contributed by an extension.
3//! Stub returns success; pending real implementation that validates,
4//! checks permissions, persists to ApplicationState, and updates the
5//! resolution cache.
6
7use std::sync::Arc;
8
9use CommonLibrary::{Environment::Requires::Requires, Keybinding::KeybindingProvider::KeybindingProvider};
10use serde_json::{Value, json};
11use tauri::{AppHandle, Manager, Wry, command};
12
13use crate::{RunTime::ApplicationRunTime::ApplicationRunTime as Runtime, dev_log};
14
15#[command]
16pub async fn RegisterExtensionKeybindings(
17	ApplicationHandle:AppHandle<Wry>,
18
19	ExtensionIdentifier:String,
20
21	_Keybindings:Value,
22) -> Result<Value, String> {
23	dev_log!("keybinding", "registering keybindings for extension: {}", ExtensionIdentifier);
24
25	let RunTime = ApplicationHandle.state::<Arc<Runtime>>().inner().clone();
26
27	let _Provider:Arc<dyn KeybindingProvider> = RunTime.Environment.Require();
28
29	Ok(json!({ "success": true }))
30}