fix(desktop): completely disable pinch to zoom
This commit is contained in:
@@ -19,7 +19,7 @@
|
|||||||
"url": "/",
|
"url": "/",
|
||||||
"decorations": true,
|
"decorations": true,
|
||||||
"dragDropEnabled": false,
|
"dragDropEnabled": false,
|
||||||
"zoomHotkeysEnabled": true,
|
"zoomHotkeysEnabled": false,
|
||||||
"titleBarStyle": "Overlay",
|
"titleBarStyle": "Overlay",
|
||||||
"hiddenTitle": true,
|
"hiddenTitle": true,
|
||||||
"trafficLightPosition": { "x": 12.0, "y": 18.0 }
|
"trafficLightPosition": { "x": 12.0, "y": 18.0 }
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
// @refresh reload
|
// @refresh reload
|
||||||
|
import "./webview-zoom"
|
||||||
import { render } from "solid-js/web"
|
import { render } from "solid-js/web"
|
||||||
import { AppBaseProviders, AppInterface, PlatformProvider, Platform } from "@opencode-ai/app"
|
import { AppBaseProviders, AppInterface, PlatformProvider, Platform } from "@opencode-ai/app"
|
||||||
import { open, save } from "@tauri-apps/plugin-dialog"
|
import { open, save } from "@tauri-apps/plugin-dialog"
|
||||||
@@ -303,11 +304,6 @@ const createPlatform = (password: Accessor<string | null>): Platform => ({
|
|||||||
|
|
||||||
createMenu()
|
createMenu()
|
||||||
|
|
||||||
// Stops mousewheel events from reaching Tauri's pinch-to-zoom handler
|
|
||||||
root?.addEventListener("mousewheel", (e) => {
|
|
||||||
e.stopPropagation()
|
|
||||||
})
|
|
||||||
|
|
||||||
render(() => {
|
render(() => {
|
||||||
const [serverPassword, setServerPassword] = createSignal<string | null>(null)
|
const [serverPassword, setServerPassword] = createSignal<string | null>(null)
|
||||||
const platform = createPlatform(() => serverPassword())
|
const platform = createPlatform(() => serverPassword())
|
||||||
|
|||||||
31
packages/desktop/src/webview-zoom.ts
Normal file
31
packages/desktop/src/webview-zoom.ts
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
// Copyright 2019-2024 Tauri Programme within The Commons Conservancy
|
||||||
|
// SPDX-License-Identifier: Apache-2.0
|
||||||
|
// SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
import { invoke } from "@tauri-apps/api/core"
|
||||||
|
import { type as ostype } from "@tauri-apps/plugin-os"
|
||||||
|
|
||||||
|
const OS_NAME = ostype()
|
||||||
|
|
||||||
|
let zoomLevel = 1
|
||||||
|
|
||||||
|
const MAX_ZOOM_LEVEL = 10
|
||||||
|
const MIN_ZOOM_LEVEL = 0.2
|
||||||
|
|
||||||
|
window.addEventListener("keydown", (event) => {
|
||||||
|
if (OS_NAME === "macos" ? event.metaKey : event.ctrlKey) {
|
||||||
|
if (event.key === "-") {
|
||||||
|
zoomLevel -= 0.2
|
||||||
|
} else if (event.key === "=" || event.key === "+") {
|
||||||
|
zoomLevel += 0.2
|
||||||
|
} else if (event.key === "0") {
|
||||||
|
zoomLevel = 1
|
||||||
|
} else {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
zoomLevel = Math.min(Math.max(zoomLevel, MIN_ZOOM_LEVEL), MAX_ZOOM_LEVEL)
|
||||||
|
invoke("plugin:webview|set_webview_zoom", {
|
||||||
|
value: zoomLevel,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
Reference in New Issue
Block a user