driver: Remove Touch struct

This commit is contained in:
Hajime Hoshi 2019-04-07 19:21:17 -04:00
parent 08308a7edf
commit 099c7bd5c9
4 changed files with 13 additions and 15 deletions

View File

@ -29,10 +29,3 @@ type Input interface {
TouchPosition(id int) (x, y int) TouchPosition(id int) (x, y int)
Wheel() (xoff, yoff float64) Wheel() (xoff, yoff float64)
} }
// TODO: Remove this for API simplicity.
type Touch struct {
ID int
X int
Y int
}

View File

@ -104,7 +104,7 @@ func (i *Input) IsMouseButtonPressed(key driver.MouseButton) bool {
return false return false
} }
func (i *Input) update(touches []*driver.Touch) { func (i *Input) update(touches []*Touch) {
i.m.Lock() i.m.Lock()
i.touches = map[int]pos{} i.touches = map[int]pos{}
for _, t := range touches { for _, t := range touches {

View File

@ -104,7 +104,7 @@ func getDeviceScale() float64 {
// appMain is the main routine for gomobile-build mode. // appMain is the main routine for gomobile-build mode.
func (u *UserInterface) appMain(a app.App) { func (u *UserInterface) appMain(a app.App) {
var glctx gl.Context var glctx gl.Context
touches := map[touch.Sequence]*driver.Touch{} touches := map[touch.Sequence]*Touch{}
for e := range a.Events() { for e := range a.Events() {
switch e := a.Filter(e).(type) { switch e := a.Filter(e).(type) {
case lifecycle.Event: case lifecycle.Event:
@ -137,7 +137,7 @@ func (u *UserInterface) appMain(a app.App) {
s := getDeviceScale() s := getDeviceScale()
x, y := float64(e.X)/s, float64(e.Y)/s x, y := float64(e.X)/s, float64(e.Y)/s
// TODO: Is it ok to cast from int64 to int here? // TODO: Is it ok to cast from int64 to int here?
touches[e.Sequence] = &driver.Touch{ touches[e.Sequence] = &Touch{
ID: int(e.Sequence), ID: int(e.Sequence),
X: int(x), X: int(x),
Y: int(y), Y: int(y),
@ -145,7 +145,7 @@ func (u *UserInterface) appMain(a app.App) {
case touch.TypeEnd: case touch.TypeEnd:
delete(touches, e.Sequence) delete(touches, e.Sequence)
} }
ts := []*driver.Touch{} ts := []*Touch{}
for _, t := range touches { for _, t := range touches {
ts = append(ts, t) ts = append(ts, t)
} }
@ -409,6 +409,12 @@ func (u *UserInterface) Input() driver.Input {
return &u.input return &u.input
} }
func (u *UserInterface) UpdateInput(touches []*driver.Touch) { type Touch struct {
ID int
X int
Y int
}
func (u *UserInterface) UpdateInput(touches []*Touch) {
u.input.update(touches) u.input.update(touches)
} }

View File

@ -17,7 +17,6 @@
package mobile package mobile
import ( import (
"github.com/hajimehoshi/ebiten/internal/driver"
"github.com/hajimehoshi/ebiten/internal/uidriver/mobile" "github.com/hajimehoshi/ebiten/internal/uidriver/mobile"
) )
@ -31,9 +30,9 @@ var (
) )
func updateTouches() { func updateTouches() {
ts := []*driver.Touch{} ts := []*mobile.Touch{}
for id, position := range touches { for id, position := range touches {
ts = append(ts, &driver.Touch{ ts = append(ts, &mobile.Touch{
ID: id, ID: id,
X: position.x, X: position.x,
Y: position.y, Y: position.y,