summaryrefslogtreecommitdiffhomepage
path: root/packages/tauri/src-tauri/src/lib.rs
diff options
context:
space:
mode:
authorDavid Hill <[email protected]>2025-12-12 09:44:06 +0000
committerDavid Hill <[email protected]>2025-12-12 09:44:06 +0000
commit99158e736bd983ee5c62bfc43032da1bafc45d71 (patch)
tree59b1afc0fff72a8c47ca76c90a767aafae7a5f45 /packages/tauri/src-tauri/src/lib.rs
parent4c02d515a1e15a99fc009587e821087e042bd45b (diff)
parentf9d5e1879056dd9507bb1a1645da5b5ede87fcca (diff)
downloadopencode-99158e736bd983ee5c62bfc43032da1bafc45d71.tar.gz
opencode-99158e736bd983ee5c62bfc43032da1bafc45d71.zip
Merge branch 'dev' of https://github.com/sst/opencode into dev
Diffstat (limited to 'packages/tauri/src-tauri/src/lib.rs')
-rw-r--r--packages/tauri/src-tauri/src/lib.rs12
1 files changed, 10 insertions, 2 deletions
diff --git a/packages/tauri/src-tauri/src/lib.rs b/packages/tauri/src-tauri/src/lib.rs
index d79932574..eb712235e 100644
--- a/packages/tauri/src-tauri/src/lib.rs
+++ b/packages/tauri/src-tauri/src/lib.rs
@@ -4,7 +4,7 @@ use std::{
sync::{Arc, Mutex},
time::{Duration, Instant},
};
-use tauri::{AppHandle, Manager, RunEvent, WebviewUrl, WebviewWindow};
+use tauri::{AppHandle, LogicalSize, Manager, Monitor, RunEvent, WebviewUrl, WebviewWindow};
use tauri_plugin_dialog::{DialogExt, MessageDialogButtons, MessageDialogResult};
use tauri_plugin_shell::process::{CommandChild, CommandEvent};
use tauri_plugin_shell::ShellExt;
@@ -67,6 +67,7 @@ fn spawn_sidecar(app: &AppHandle, port: u16) -> CommandChild {
.sidecar("opencode")
.unwrap()
.env("OPENCODE_EXPERIMENTAL_ICON_DISCOVERY", "true")
+ .env("OPENCODE_CLIENT", "desktop")
.args(["serve", &format!("--port={port}")])
.spawn()
.expect("Failed to spawn opencode");
@@ -106,6 +107,8 @@ pub fn run() {
let updater_enabled = option_env!("TAURI_SIGNING_PRIVATE_KEY").is_some();
let mut builder = tauri::Builder::default()
+ .plugin(tauri_plugin_window_state::Builder::new().build())
+ .plugin(tauri_plugin_store::Builder::new().build())
.plugin(tauri_plugin_dialog::init())
.plugin(tauri_plugin_shell::init())
.plugin(tauri_plugin_process::init())
@@ -166,10 +169,15 @@ pub fn run() {
None
};
+ let primary_monitor = app.primary_monitor().ok().flatten();
+ let size = primary_monitor
+ .map(|m| m.size().to_logical(m.scale_factor()))
+ .unwrap_or(LogicalSize::new(1920, 1080));
+
let mut window_builder =
WebviewWindow::builder(&app, "main", WebviewUrl::App("/".into()))
.title("OpenCode")
- .inner_size(800.0, 600.0)
+ .inner_size(size.width as f64, size.height as f64)
.decorations(true)
.zoom_hotkeys_enabled(true)
.initialization_script(format!(