28 lines
574 B
Go
28 lines
574 B
Go
package dock
|
|
|
|
import (
|
|
"golang.org/x/sys/windows"
|
|
"os"
|
|
)
|
|
|
|
func getTerminalSize(fd int) (int, int, error) {
|
|
hOut, err := windows.GetStdHandle(windows.STD_OUTPUT_HANDLE)
|
|
if err != nil {
|
|
return 0, 0, err
|
|
}
|
|
|
|
var info windows.ConsoleScreenBufferInfo
|
|
err = windows.GetConsoleScreenBufferInfo(hOut, &info)
|
|
if err != nil {
|
|
return 0, 0, err
|
|
}
|
|
|
|
width := int(info.Window.Right - info.Window.Left + 1)
|
|
height := int(info.Window.Bottom - info.Window.Top + 1)
|
|
return width, height, nil
|
|
}
|
|
|
|
func syscallsigwin() os.Signal {
|
|
return nil // No signal equivalent for Windows
|
|
}
|