25 lines
538 B
Go
25 lines
538 B
Go
package pointer
|
|
|
|
import (
|
|
"os/exec"
|
|
"strconv"
|
|
"strings"
|
|
)
|
|
|
|
func Positions() (float64, float64) {
|
|
location := exec.Command("xdotool", "getmouselocation")
|
|
output, _ := location.Output()
|
|
position := string(output)
|
|
currentX := 0.0
|
|
currentY := 0.0
|
|
|
|
for key, value := range strings.Split(position, " ") {
|
|
if key == 0 {
|
|
currentX, _ = strconv.ParseFloat(strings.Replace(value, "x:", "", 1), 32)
|
|
} else if key == 1 {
|
|
currentY, _ = strconv.ParseFloat(strings.Replace(value, "y:", "", 1), 32)
|
|
}
|
|
}
|
|
|
|
return currentX, currentY
|
|
}
|