mirror of
https://github.com/clockworkpi/LauncherGoDev.git
synced 2025-12-12 16:08:52 +01:00
bluetooth code updated with latest github.com/muka/go-bluetooth@v0.0.0-20210812063148-b6c83362e27d
This commit is contained in:
parent
b4680f1a3e
commit
0461450ea9
@ -6,6 +6,7 @@ import (
|
|||||||
"log"
|
"log"
|
||||||
"strings"
|
"strings"
|
||||||
//"errors"
|
//"errors"
|
||||||
|
gotime "time"
|
||||||
"github.com/fatih/structs"
|
"github.com/fatih/structs"
|
||||||
|
|
||||||
"github.com/veandco/go-sdl2/ttf"
|
"github.com/veandco/go-sdl2/ttf"
|
||||||
@ -23,7 +24,9 @@ import (
|
|||||||
//"github.com/muka/go-bluetooth/bluez"
|
//"github.com/muka/go-bluetooth/bluez"
|
||||||
// "github.com/muka/go-bluetooth/bluez/profile"
|
// "github.com/muka/go-bluetooth/bluez/profile"
|
||||||
"github.com/muka/go-bluetooth/bluez/profile/device"
|
"github.com/muka/go-bluetooth/bluez/profile/device"
|
||||||
|
"github.com/muka/go-bluetooth/bluez/profile/adapter"
|
||||||
|
|
||||||
|
logrus "github.com/sirupsen/logrus"
|
||||||
"github.com/clockworkpi/LauncherGoDev/sysgo/UI"
|
"github.com/clockworkpi/LauncherGoDev/sysgo/UI"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -169,8 +172,6 @@ func (self *BleInfoPage) Init() {
|
|||||||
self.Ps = ps
|
self.Ps = ps
|
||||||
self.PsIndex = 0
|
self.PsIndex = 0
|
||||||
|
|
||||||
//self.GenList()
|
|
||||||
|
|
||||||
self.Scroller = UI.NewListScroller()
|
self.Scroller = UI.NewListScroller()
|
||||||
self.Scroller.Parent = self
|
self.Scroller.Parent = self
|
||||||
self.Scroller.PosX = 2
|
self.Scroller.PosX = 2
|
||||||
@ -211,8 +212,6 @@ func (self *BleInfoPage) GenList() {
|
|||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
li := UI.NewInfoPageListItem()
|
li := UI.NewInfoPageListItem()
|
||||||
li.Parent = self
|
li.Parent = self
|
||||||
li.PosX = start_x
|
li.PosX = start_x
|
||||||
@ -566,8 +565,6 @@ func (self *BluetoothPage) Init() {
|
|||||||
self.Scroller.PosY = 2
|
self.Scroller.PosY = 2
|
||||||
self.Scroller.Init()
|
self.Scroller.Init()
|
||||||
|
|
||||||
self.GenNetworkList()
|
|
||||||
|
|
||||||
self.InfoPage = NewBleInfoPage()
|
self.InfoPage = NewBleInfoPage()
|
||||||
self.InfoPage.Screen = self.Screen
|
self.InfoPage.Screen = self.Screen
|
||||||
self.InfoPage.Name = "BluetoothInfo"
|
self.InfoPage.Name = "BluetoothInfo"
|
||||||
@ -664,7 +661,7 @@ func (self *BluetoothPage) GetDevices() ([]*device.Device1, error) {
|
|||||||
func (self *BluetoothPage) RefreshDevices() {
|
func (self *BluetoothPage) RefreshDevices() {
|
||||||
|
|
||||||
// sync the cached devices
|
// sync the cached devices
|
||||||
self.Devices = nil
|
self.Devices = self.Devices[:0]
|
||||||
|
|
||||||
devices, err := self.GetDevices()
|
devices, err := self.GetDevices()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -683,7 +680,6 @@ func (self *BluetoothPage) GenNetworkList() {
|
|||||||
start_x := 0
|
start_x := 0
|
||||||
start_y := 0
|
start_y := 0
|
||||||
|
|
||||||
|
|
||||||
for i, v := range self.Devices { // v == bleapi.Device
|
for i, v := range self.Devices { // v == bleapi.Device
|
||||||
|
|
||||||
props, err := v.GetProperties()
|
props, err := v.GetProperties()
|
||||||
@ -716,29 +712,56 @@ func (self *BluetoothPage) GenNetworkList() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
func (self *BluetoothPage) Rescan() {
|
func (self *BluetoothPage) Rescan() {
|
||||||
|
|
||||||
|
if self.Scanning == true {
|
||||||
|
self.ShowBox("Bluetooth scanning")
|
||||||
|
self.Screen.FootBar.UpdateNavText("Scanning")
|
||||||
|
}
|
||||||
|
|
||||||
|
a, err := adapter.GetAdapter(adapterID)
|
||||||
|
if err != nil {
|
||||||
|
fmt.Println(err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
discovery, cancel, err := bleapi.Discover(a, nil)
|
||||||
|
if err != nil {
|
||||||
|
fmt.Println(err)
|
||||||
|
}
|
||||||
|
|
||||||
|
defer cancel()
|
||||||
|
|
||||||
|
wait := make(chan error)
|
||||||
self.Scanning = true
|
self.Scanning = true
|
||||||
self.ShowBox("Bluetooth scanning")
|
self.ShowBox("Bluetooth scanning")
|
||||||
self.Screen.FootBar.UpdateNavText("Scanning")
|
self.Screen.FootBar.UpdateNavText("Scanning")
|
||||||
a,nil := bleapi.GetAdapter(adapterID)
|
|
||||||
|
|
||||||
err := a.StopDiscovery()
|
go func() {
|
||||||
|
for dev := range discovery {
|
||||||
|
if dev == nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
wait <- nil
|
||||||
|
}
|
||||||
|
}()
|
||||||
|
|
||||||
|
go func() {
|
||||||
|
sleep := 5
|
||||||
|
gotime.Sleep(gotime.Duration(sleep) * gotime.Second)
|
||||||
|
logrus.Debugf("Discovery timeout exceeded (%ds)", sleep)
|
||||||
|
wait <- nil
|
||||||
|
}()
|
||||||
|
|
||||||
|
err = <-wait
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Println(err)
|
fmt.Println(err)
|
||||||
}
|
}
|
||||||
|
self.Scanning = false
|
||||||
err = a.StartDiscovery()
|
self.HideBox()
|
||||||
if err != nil {
|
self.Screen.FootBar.ResetNavText()
|
||||||
fmt.Println(err)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fmt.Println("Started discovery")
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
func (self *BluetoothPage) OnLoadCb() {
|
func (self *BluetoothPage) OnLoadCb() {
|
||||||
self.Offline = false
|
self.Offline = false
|
||||||
|
|
||||||
@ -748,6 +771,7 @@ func (self *BluetoothPage) OnLoadCb() {
|
|||||||
self.Offline = true
|
self.Offline = true
|
||||||
fmt.Println("Bluetooth OnLoadCb ,can not find hci0 alive,try to reboot")
|
fmt.Println("Bluetooth OnLoadCb ,can not find hci0 alive,try to reboot")
|
||||||
}else {
|
}else {
|
||||||
|
self.Rescan()
|
||||||
self.RefreshDevices()
|
self.RefreshDevices()
|
||||||
self.GenNetworkList()
|
self.GenNetworkList()
|
||||||
}
|
}
|
||||||
@ -860,6 +884,7 @@ func (self *BluetoothPage) KeyDown(ev *event.Event) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (self *BluetoothPage) Draw() {
|
func (self *BluetoothPage) Draw() {
|
||||||
|
|
||||||
self.ClearCanvas()
|
self.ClearCanvas()
|
||||||
|
|
||||||
if len(self.MyList) == 0 {
|
if len(self.MyList) == 0 {
|
||||||
|
|||||||
@ -4,13 +4,13 @@ import (
|
|||||||
"fmt"
|
"fmt"
|
||||||
//"log"
|
//"log"
|
||||||
//"os"
|
//"os"
|
||||||
"time"
|
//"time"
|
||||||
"github.com/godbus/dbus/v5"
|
"github.com/godbus/dbus/v5"
|
||||||
"github.com/muka/go-bluetooth/api"
|
//"github.com/muka/go-bluetooth/api"
|
||||||
"github.com/muka/go-bluetooth/hw"
|
"github.com/muka/go-bluetooth/hw"
|
||||||
//"github.com/muka/go-bluetooth/bluez/profile"
|
//"github.com/muka/go-bluetooth/bluez/profile"
|
||||||
"github.com/muka/go-bluetooth/bluez/profile/agent"
|
"github.com/muka/go-bluetooth/bluez/profile/agent"
|
||||||
"github.com/muka/go-bluetooth/bluez/profile/adapter"
|
//"github.com/muka/go-bluetooth/bluez/profile/adapter"
|
||||||
/*
|
/*
|
||||||
"github.com/veandco/go-sdl2/ttf"
|
"github.com/veandco/go-sdl2/ttf"
|
||||||
|
|
||||||
@ -76,7 +76,7 @@ func (self *BluetoothPlugin) Init( main_screen *UI.MainScreen ) {
|
|||||||
|
|
||||||
self.InitAgent()
|
self.InitAgent()
|
||||||
|
|
||||||
|
/*
|
||||||
a, err := adapter.GetAdapter(adapterID)
|
a, err := adapter.GetAdapter(adapterID)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Println(err)
|
fmt.Println(err)
|
||||||
@ -112,12 +112,12 @@ func (self *BluetoothPlugin) Init( main_screen *UI.MainScreen ) {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Println(err)
|
fmt.Println(err)
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
//self.BluetoothPage.RefreshDevices()
|
||||||
|
//self.BluetoothPage.GenNetworkList()
|
||||||
|
|
||||||
|
|
||||||
self.BluetoothPage.RefreshDevices()
|
|
||||||
self.BluetoothPage.GenNetworkList()
|
|
||||||
main_screen.Draw()
|
|
||||||
main_screen.SwapAndShow()
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -402,6 +402,7 @@ func (self *MainScreen) Draw() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if self.TitleBar != nil {
|
if self.TitleBar != nil {
|
||||||
|
//every plugin_init should not do any Draw actions since CurrentPage might be nil at that time
|
||||||
self.TitleBar.Draw( self.CurrentPage.GetName())
|
self.TitleBar.Draw( self.CurrentPage.GetName())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -64,7 +64,7 @@ func (self *SkinManager) Init() {
|
|||||||
self.Colors["White"] = &color.Color{255,255,255,255}
|
self.Colors["White"] = &color.Color{255,255,255,255}
|
||||||
self.Colors["Black"] = &color.Color{0,0,0,255}
|
self.Colors["Black"] = &color.Color{0,0,0,255}
|
||||||
|
|
||||||
fname := "skin/"+sysgo.SKIN+"/config.ini"
|
fname := sysgo.SKIN+"/config.ini"
|
||||||
|
|
||||||
load_opts := ini.LoadOptions{
|
load_opts := ini.LoadOptions{
|
||||||
IgnoreInlineComment:true,
|
IgnoreInlineComment:true,
|
||||||
|
|||||||
@ -9,7 +9,8 @@ type PowerLevel struct {
|
|||||||
var PowerLevels map[string]*PowerLevel
|
var PowerLevels map[string]*PowerLevel
|
||||||
|
|
||||||
var (
|
var (
|
||||||
CurKeySet = "GameShell" // PC or GameShell
|
//CurKeySet = "PC" // PC or GameShell
|
||||||
|
CurKeySet = "GameShell"
|
||||||
DontLeave = false
|
DontLeave = false
|
||||||
BackLight = "/proc/driver/backlight"
|
BackLight = "/proc/driver/backlight"
|
||||||
Battery = "/sys/class/power_supply/axp20x-battery/uevent"
|
Battery = "/sys/class/power_supply/axp20x-battery/uevent"
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user