summaryrefslogtreecommitdiffhomepage
path: root/packages/tui/internal/util
diff options
context:
space:
mode:
authorRohan Godha <[email protected]>2025-06-19 18:08:56 -0700
committerGitHub <[email protected]>2025-06-19 20:08:56 -0500
commit6674c6083a4f5f6c2a66eeb13bceaaf47d0fc185 (patch)
tree2e7dea8f4a97b18a9d29b858674bbb01b8aadd64 /packages/tui/internal/util
parentf6afa2c6bb20d7b6714bce9dbf6cf0bd157440d2 (diff)
downloadopencode-6674c6083a4f5f6c2a66eeb13bceaaf47d0fc185.tar.gz
opencode-6674c6083a4f5f6c2a66eeb13bceaaf47d0fc185.zip
fix: phantom input bug on wsl (#200)
Diffstat (limited to 'packages/tui/internal/util')
-rw-r--r--packages/tui/internal/util/util.go18
1 files changed, 18 insertions, 0 deletions
diff --git a/packages/tui/internal/util/util.go b/packages/tui/internal/util/util.go
index 537d852d6..c7fd98a8c 100644
--- a/packages/tui/internal/util/util.go
+++ b/packages/tui/internal/util/util.go
@@ -1,6 +1,9 @@
package util
import (
+ "os"
+ "strings"
+
tea "github.com/charmbracelet/bubbletea/v2"
)
@@ -17,3 +20,18 @@ func Clamp(v, low, high int) int {
}
return min(high, max(low, v))
}
+
+func IsWsl() bool {
+ // Check for WSL environment variables
+ if os.Getenv("WSL_DISTRO_NAME") != "" {
+ return true
+ }
+
+ // Check /proc/version for WSL signature
+ if data, err := os.ReadFile("/proc/version"); err == nil {
+ version := strings.ToLower(string(data))
+ return strings.Contains(version, "microsoft") || strings.Contains(version, "wsl")
+ }
+
+ return false
+}