move crate root feature module files into folders

This commit is contained in:
2026-09-01 22:04:36 +08:00
parent 9041283b65
commit 3c1cc256c7
11 changed files with 25 additions and 17 deletions
@@ -51,7 +51,7 @@ pub fn reconcile_cursor(handle: &AppHandle) {
return;
}
if let Err(error) = crate::cursor::init(handle) {
if let Err(error) = crate::cursor::start_tracking(handle) {
eprintln!("failed to initialize cursor tracking; will retry: {error}");
}
}
+7 -3
View File
@@ -34,7 +34,7 @@ pub struct CursorPositionChanged {
}
#[derive(Default)]
pub struct CursorState(RwLock<HashMap<String, CursorPositions>>);
pub(crate) struct CursorState(RwLock<HashMap<String, CursorPositions>>);
impl CursorState {
fn update(
@@ -113,8 +113,12 @@ lazy_static! {
pub static ref CURSOR_TASK: Mutex<Option<CursorTask>> = Mutex::new(None);
}
/// Initialize cursor tracking.
pub fn init(app: &AppHandle) -> Result<(), String> {
pub fn init(app: &AppHandle) {
app.manage(CursorState::default());
}
/// Starts cursor tracking after Accessibility permission is available.
pub fn start_tracking(app: &AppHandle) -> Result<(), String> {
println!("init_cursor_tracking called");
if !crate::macos::accessibility_permission_granted(app) {
+5 -1
View File
@@ -53,7 +53,11 @@ impl SeenInteractions {
}
#[derive(Default)]
pub struct InteractionState(Mutex<SeenInteractions>);
pub(crate) struct InteractionState(Mutex<SeenInteractions>);
pub fn init(handle: &AppHandle) {
handle.manage(InteractionState::default());
}
pub(crate) fn receive(
handle: &AppHandle,
+4 -7
View File
@@ -19,20 +19,17 @@ mod ui;
mod updater;
mod user;
use tauri::Manager;
async fn launch_app(app: &tauri::App) -> Result<(), Box<dyn std::error::Error>> {
let handle = app.handle();
updater::init(handle).await;
db::init(handle).await?;
scene_configuration::init(handle).await?;
keypair::init(handle).await?;
app.manage(interactions::InteractionState::default());
app.manage(ufa::ForegroundAppState::default());
app.manage(cursor::CursorState::default());
app.manage(puppet::PuppetStateStore::default());
network::init(handle).await?;
interactions::init(handle);
ufa::init(handle);
cursor::init(handle);
network::init(handle).await?;
ufa::start(handle);
puppet::init(handle)?;
application::init(handle).await?;
Ok(())
+2 -1
View File
@@ -33,7 +33,7 @@ pub struct PuppetStatesChanged {
}
#[derive(Default)]
pub struct PuppetStateStore(RwLock<HashMap<String, PuppetState>>);
pub(crate) struct PuppetStateStore(RwLock<HashMap<String, PuppetState>>);
impl PuppetStateStore {
fn update(
@@ -75,6 +75,7 @@ pub fn list_puppet_states(state: State<'_, PuppetStateStore>) -> Result<Vec<Pupp
}
pub fn init(handle: &AppHandle) -> Result<(), String> {
handle.manage(PuppetStateStore::default());
let monitor = handle
.primary_monitor()
.map_err(|error| error.to_string())?
+6 -4
View File
@@ -28,7 +28,7 @@ pub struct FriendForegroundAppChanged {
}
#[derive(Default)]
pub struct ForegroundAppState(RwLock<HashMap<String, AppMeta>>);
pub(crate) struct ForegroundAppState(RwLock<HashMap<String, AppMeta>>);
impl ForegroundAppState {
fn update(&self, user_id: String, meta: AppMeta) -> Result<(), String> {
@@ -103,10 +103,12 @@ where
// no-op on unsupported platforms
}
/// Initializes the foreground app change listener
/// and emits events to the Tauri app on changes.
/// Used for app to emit user foreground app to peers.
pub fn init(handle: &AppHandle) {
handle.manage(ForegroundAppState::default());
}
/// Starts the foreground app change listener after network state is available.
pub fn start(handle: &AppHandle) {
update_local_app(handle, current_app());
let handle = handle.clone();