From: Arthur Diniz <arthurbdiniz@gmail.com>
Date: Mon, 10 Jun 2024 12:06:53 +0100
Subject: Remove erikgeiser/coninput windows library

Forwarded: not-needed
Signed-off-by: Arthur Diniz <arthurbdiniz@gmail.com>
---
 exp/term/input/driver.go     |  5 -----
 exp/term/input/parse.go      | 16 +---------------
 exp/term/input/win32input.go |  3 +++
 input/driver.go              |  9 ---------
 input/parse.go               | 21 +--------------------
 input/win32input.go          |  3 +++
 6 files changed, 8 insertions(+), 49 deletions(-)

diff --git a/exp/term/input/driver.go b/exp/term/input/driver.go
index 8339f1f..a203ef1 100644
--- a/exp/term/input/driver.go
+++ b/exp/term/input/driver.go
@@ -5,7 +5,6 @@ import (
 	"io"
 	"unicode/utf8"
 
-	"github.com/erikgeiser/coninput"
 	"github.com/muesli/cancelreader"
 )
 
@@ -24,10 +23,6 @@ type Driver struct {
 
 	buf [256]byte // do we need a larger buffer?
 
-	// prevMouseState keeps track of the previous mouse state to determine mouse
-	// up button events.
-	prevMouseState coninput.ButtonState // nolint: unused
-
 	flags int // control the behavior of the driver.
 }
 
diff --git a/exp/term/input/parse.go b/exp/term/input/parse.go
index 914382d..1197f00 100644
--- a/exp/term/input/parse.go
+++ b/exp/term/input/parse.go
@@ -7,7 +7,6 @@ import (
 
 	"github.com/charmbracelet/x/exp/term/ansi"
 	"github.com/charmbracelet/x/exp/term/ansi/parser"
-	"github.com/erikgeiser/coninput"
 )
 
 // Flags to control the behavior of the parser.
@@ -364,20 +363,7 @@ func parseCsi(b []byte) (int, Event) {
 			rc = 1
 		}
 
-		event := parseWin32InputKeyEvent(
-			coninput.VirtualKeyCode(csi.Param(0)),  // Vk wVirtualKeyCode
-			coninput.VirtualKeyCode(csi.Param(1)),  // Sc wVirtualScanCode
-			rune(csi.Param(2)),                     // Uc UnicodeChar
-			csi.Param(3) == 1,                      // Kd bKeyDown
-			coninput.ControlKeyState(csi.Param(4)), // Cs dwControlKeyState
-			rc,                                     // Rc wRepeatCount
-		)
-
-		if event == nil {
-			return i, UnknownCsiEvent(b[:])
-		}
-
-		return i, event
+		return i, UnknownCsiEvent(b[:])
 	case '@', '^', '~':
 		if paramsLen == 0 {
 			return i, UnknownCsiEvent(b[:i])
diff --git a/exp/term/input/win32input.go b/exp/term/input/win32input.go
index 6fb55ac..aeb52fe 100644
--- a/exp/term/input/win32input.go
+++ b/exp/term/input/win32input.go
@@ -1,3 +1,6 @@
+//go:build windows
+// +build windows
+
 package input
 
 import (
diff --git a/input/driver.go b/input/driver.go
index 7043c31..a203ef1 100644
--- a/input/driver.go
+++ b/input/driver.go
@@ -5,7 +5,6 @@ import (
 	"io"
 	"unicode/utf8"
 
-	"github.com/erikgeiser/coninput"
 	"github.com/muesli/cancelreader"
 )
 
@@ -24,14 +23,6 @@ type Driver struct {
 
 	buf [256]byte // do we need a larger buffer?
 
-	// prevMouseState keeps track of the previous mouse state to determine mouse
-	// up button events.
-	prevMouseState coninput.ButtonState // nolint: unused
-
-	// lastWinsizeEvent keeps track of the last window size event to prevent
-	// multiple size events from firing.
-	lastWinsizeEvent coninput.WindowBufferSizeEventRecord // nolint: unused
-
 	flags int // control the behavior of the driver.
 }
 
diff --git a/input/parse.go b/input/parse.go
index 4625f63..937a9a3 100644
--- a/input/parse.go
+++ b/input/parse.go
@@ -7,7 +7,6 @@ import (
 
 	"github.com/charmbracelet/x/ansi"
 	"github.com/charmbracelet/x/ansi/parser"
-	"github.com/erikgeiser/coninput"
 )
 
 // Flags to control the behavior of the parser.
@@ -359,25 +358,7 @@ func parseCsi(b []byte) (int, Event) {
 			return i, UnknownCsiEvent(b[:i])
 		}
 
-		rc := uint16(csi.Param(5))
-		if rc == 0 {
-			rc = 1
-		}
-
-		event := parseWin32InputKeyEvent(
-			coninput.VirtualKeyCode(csi.Param(0)),  // Vk wVirtualKeyCode
-			coninput.VirtualKeyCode(csi.Param(1)),  // Sc wVirtualScanCode
-			rune(csi.Param(2)),                     // Uc UnicodeChar
-			csi.Param(3) == 1,                      // Kd bKeyDown
-			coninput.ControlKeyState(csi.Param(4)), // Cs dwControlKeyState
-			rc,                                     // Rc wRepeatCount
-		)
-
-		if event == nil {
-			return i, UnknownCsiEvent(b[:])
-		}
-
-		return i, event
+		return i, UnknownCsiEvent(b[:])
 	case '@', '^', '~':
 		if paramsLen == 0 {
 			return i, UnknownCsiEvent(b[:i])
diff --git a/input/win32input.go b/input/win32input.go
index 6fb55ac..aeb52fe 100644
--- a/input/win32input.go
+++ b/input/win32input.go
@@ -1,3 +1,6 @@
+//go:build windows
+// +build windows
+
 package input
 
 import (
