cuu il y a 5 ans
Parent
commit
a1a32ba626
3 fichiers modifiés avec 33 ajouts et 16 suppressions
  1. 17 11
      Menu/GameShell/10_Settings/Wifi/plugin_init.go
  2. 11 2
      main.go
  3. 5 3
      sysgo/DBUS/dbus.go

+ 17 - 11
Menu/GameShell/10_Settings/Wifi/plugin_init.go

@@ -1,6 +1,7 @@
 package main 
 
 import (
+  gotime "time"
 /*
 	"github.com/veandco/go-sdl2/ttf"
 
@@ -35,20 +36,25 @@ func (self *WifiPlugin) Init( main_screen *UI.MainScreen ) {
   self.ScanPage.Screen = main_screen
   
   self.ScanPage.Init()
- 
-  if self.ScanPage.Daemon != nil {
-    self.ScanPage.Daemon.EnableSignal("StatusChanged")
-    self.ScanPage.Daemon.EnableSignal("ConnectResultsSent")
-    self.ScanPage.Wireless.EnableSignal("SendStartScanSignal")
-    self.ScanPage.Wireless.EnableSignal("SendEndScanSignal")
+  
+  go func() {
+    gotime.Sleep(2000 * gotime.Millisecond)
+    
+    if self.ScanPage.Daemon != nil {
     
-    self.ScanPage.Daemon.SigFuncs["StatusChanged"] = self.ScanPage.DbusDaemonStatusChangedSig
-    self.ScanPage.Daemon.SigFuncs["ConnectResultSent"] = self.ScanPage.DbusConnectResultsSent
+      self.ScanPage.Daemon.EnableSignal("StatusChanged")
+      self.ScanPage.Daemon.EnableSignal("ConnectResultsSent")
+      self.ScanPage.Wireless.EnableSignal("SendStartScanSignal")
+      self.ScanPage.Wireless.EnableSignal("SendEndScanSignal")
     
-    self.ScanPage.Wireless.SigFuncs["SendStartScanSignal"] = self.ScanPage.WifiDbusScanStarted
-    self.ScanPage.Wireless.SigFuncs["SendEndScanSignal"]   = self.ScanPage.WifiDbusScanFinishedSig
+      self.ScanPage.Daemon.SigFuncs["StatusChanged"] = self.ScanPage.DbusDaemonStatusChangedSig
+      self.ScanPage.Daemon.SigFuncs["ConnectResultSent"] = self.ScanPage.DbusConnectResultsSent
     
-  }
+      self.ScanPage.Wireless.SigFuncs["SendStartScanSignal"] = self.ScanPage.WifiDbusScanStarted
+      self.ScanPage.Wireless.SigFuncs["SendEndScanSignal"]   = self.ScanPage.WifiDbusScanFinishedSig
+    }
+  }()
+  
 }
 
 func (self *WifiPlugin) Run( main_screen *UI.MainScreen ) {

+ 11 - 2
main.go

@@ -10,6 +10,7 @@ import (
   "strings"
   "runtime"
   "path/filepath"
+  "os/exec"
   
 	gotime "time"
 	"github.com/veandco/go-sdl2/sdl"
@@ -289,8 +290,16 @@ func run() int {
           exec_app_cmd += ev.Data["Msg"]
           exec_app_cmd +="; sync & cd "+UI.GetExePath()+"; "+os.Args[0]
           fmt.Println(exec_app_cmd)
-          
-          
+          cmd := exec.Command("/bin/sh","-c",exec_app_cmd)
+          err := cmd.Start()
+          if err != nil {
+            fmt.Println(err)
+          }
+          err = cmd.Process.Release()
+          if err != nil {
+            fmt.Println(err)
+          }
+          os.Exit(0)
       }
       
       

+ 5 - 3
sysgo/DBUS/dbus.go

@@ -214,9 +214,11 @@ func (self *DBus) ListenSignal() {
 var DBusHandler *DBus //global 
 
 func init() {
-  DBusHandler = NewDBus()
-  DBusHandler.Init()
+  if DBusHandler == nil {
+    DBusHandler = NewDBus()
+    DBusHandler.Init()
   
-  go DBusHandler.ListenSignal()
+    go DBusHandler.ListenSignal()
+  }
   
 }