]> 127.0.0.1 Git - bili_danmu/.git/commitdiff
gtk v0.5.1
authorqydysky <qydysky@foxmail.com>
Sat, 5 Dec 2020 18:36:24 +0000 (02:36 +0800)
committerqydysky <qydysky@foxmail.com>
Sat, 5 Dec 2020 18:36:24 +0000 (02:36 +0800)
F/api.go
Reply/F.go
Reply/gtk.go
demo/go.mod
demo/go.sum

index ceb74b4799701fb70752c19ee4ed15fc196cb9d7..d53ae62f0375f7a8b809291e4a36ca15281667c8 100644 (file)
--- a/F/api.go
+++ b/F/api.go
@@ -2,6 +2,7 @@ package F
 
 import (
        "time"
+       "fmt"
        "strconv"
        "strings"
 
@@ -355,7 +356,6 @@ func Get_face_src(uid string) (string) {
        return rface.(string) + `@58w_58h`
 }
 
-var user_score_map = make(map[string]float64)
 func (i *api) Get_OnlineGoldRank() {
        if i.Uid == 0 || c.Roomid == 0 {
                apilog.Base(1, "Get_OnlineGoldRank").E("i.Uid == 0 || c.Roomid == 0")
@@ -432,7 +432,7 @@ func (i *api) Get_OnlineGoldRank() {
 
        // apilog.Base(1, "获取score").E("score", self_loop(1))
        self_loop(1)
-       apilog.Base(1, "获取score").W("以往营收获取成功", c.Rev)
+       apilog.Base(1, "获取score").W("以往营收获取成功", fmt.Sprintf("%.2f", c.Rev))
        // c.Danmu_Main_mq.Push(c.Danmu_Main_mq_item{//传入消息队列
        //      Class:`c.Rev_add`,
        //      Data:self_loop(1),
index 29fc58be54e71fd65cc4ce4d62c78bd4441ae5eb..0c159c52259a2f5e3e3c720113448d703e2512f9 100644 (file)
@@ -264,7 +264,8 @@ func Saveflvf(){
                                JustResponseCode:true,
                        }); e != nil{l.W(e)}
 
-                       if rr.Response.StatusCode != 200 {
+                       if rr.Response == nil ||
+                       rr.Response.StatusCode != 200 {
                                saveflv.wait.Done()
                                saveflv.cancel.Done()
                                cuLinkIndex += 1
index 93d1993d01aa0d9889479f2748166d70e2c2daab..3b1b45455177d9cf78e6b6e7366ab81ffa3d3814 100644 (file)
@@ -25,7 +25,7 @@ const (
        max_img = 500
 )
 
-const appId = "com.github.qydysky.bili_danmu.reply"
+var appId = "com.github.qydysky.bili_danmu.reply"+p.Sys().GetTime()//时间戳允许多开
 
 type gtk_list struct {
        text *gtk.TextView
@@ -86,6 +86,10 @@ func Gtk_danmu() {
        gtk.Init(nil)
 
        var y func(string,string)
+       var (
+               danmu_win_running bool//弹幕窗体是否正在运行
+               contrl_win_running bool//控制窗体是否正在运行
+       )
        var win *gtk.Window
        var scrolledwindow0 *gtk.ScrolledWindow
        var viewport0 *gtk.Viewport
@@ -101,7 +105,6 @@ func Gtk_danmu() {
        if err != nil {log.Println(err);return}
 
        application.Connect("startup", func() {
-               log.Println("application startup")      
                var grid0 *gtk.Grid;
 
                builder, err := gtk.BuilderNewFromFile("ui/1.glade")
@@ -122,6 +125,11 @@ func Gtk_danmu() {
                        if err != nil {log.Println(err);return}
                        win, err = isWindow(obj)
                        if err != nil {log.Println(err);return}
+                       danmu_win_running = true
+                       win.Connect("delete-event", func() {
+                               log.Println(`弹幕窗已关闭`)
+                               danmu_win_running = false//关闭后置空
+                       })
                        application.AddWindow(win)
                        defer win.ShowAll()
                }
@@ -130,6 +138,11 @@ func Gtk_danmu() {
                        if err != nil {log.Println(err);return}
                        win2, err := isWindow(obj)
                        if err != nil {log.Println(err);return}
+                       contrl_win_running = true
+                       win2.Connect("delete-event", func() {
+                               log.Println(`弹幕信息窗已关闭`)
+                               contrl_win_running = false//关闭后置空
+                       })
                        application.AddWindow(win2)
                        defer win2.ShowAll()
                }
@@ -367,10 +380,8 @@ func Gtk_danmu() {
        })
 
        application.Connect("activate", func() {
-               log.Println("application activate")
                go func(){
-                       for{
-                               time.Sleep(time.Second)
+                       for danmu_win_running {
                                if len(Gtk_danmuChan) == 0 {continue}
                                for el := keep_list.Front(); el != nil && time.Now().After(el.Value.(time.Time));el = el.Next() {
                                        keep_list.Remove(el)
@@ -380,11 +391,12 @@ func Gtk_danmu() {
                                        y(<-Gtk_danmuChan,load_face(<-Gtk_danmuChan_uid))
                                        return true
                                })
+                               time.Sleep(time.Second)
                        }
                }()
 
                glib.TimeoutAdd(uint(3000), func()(o bool){
-                       o = true
+                       o = contrl_win_running
                        //y("sssss",load_face(""))
                        {//营收
                                if IsOn("ShowRev") {
index 8402bc61abc780f3884f1a50e9ee75dbb7ccc7a7..eac7380af8a5249ff28ae6528e2b43d4e68c79de 100644 (file)
@@ -5,19 +5,19 @@ go 1.14
 require (
        github.com/christopher-dG/go-obs-websocket v0.0.0-20200720193653-c4fed10356a5 // indirect
        github.com/gorilla/websocket v1.4.2 // indirect
-       github.com/gotk3/gotk3 v0.5.0 // indirect
-       github.com/klauspost/compress v1.11.2 // indirect
+       github.com/gotk3/gotk3 v0.5.1 // indirect
+       github.com/klauspost/compress v1.11.3 // indirect
        github.com/miekg/dns v1.1.35 // indirect
-       github.com/mitchellh/mapstructure v1.3.3 // indirect
-       github.com/qydysky/bili_danmu v0.4.0
-       github.com/qydysky/part v0.2.2-0.20201119032922-a6f2c3476095 // indirect
-       github.com/shirou/gopsutil v3.20.10+incompatible // indirect
-       golang.org/x/crypto v0.0.0-20201016220609-9e8e0b390897 // indirect
-       golang.org/x/net v0.0.0-20201110031124-69a78807bb2b // indirect
-       golang.org/x/sys v0.0.0-20201110211018-35f3e6cf4a65 // indirect
+       github.com/mitchellh/mapstructure v1.4.0 // indirect
+       github.com/qydysky/bili_danmu v0.5.2
+       github.com/qydysky/part v0.3.1 // indirect
+       github.com/shirou/gopsutil v3.20.11+incompatible // indirect
+       golang.org/x/crypto v0.0.0-20201203163018-be400aefbc4c // indirect
+       golang.org/x/net v0.0.0-20201202161906-c7110b5ffcbb // indirect
+       golang.org/x/sys v0.0.0-20201204225414-ed752295db88 // indirect
 )
 
 replace (
-       github.com/gotk3/gotk3 v0.5.0 => github.com/qydysky/gotk3 v0.5.1-0.20201114200959-3165c4dc990f
+       github.com/gotk3/gotk3 v0.5.1 => github.com/qydysky/gotk3 v0.5.1-0.20201205180217-ed1a98fbc6dc
        github.com/qydysky/bili_danmu => ../
 )
index ee15fe00d24879fc27f6bd0b95782414c6be6eff..d37f73c3b6e554110707898087de8b1f56b435cc 100644 (file)
@@ -14,11 +14,15 @@ github.com/gopherjs/gopherjs v0.0.0-20190411002643-bd77b112433e/go.mod h1:wJfORR
 github.com/gorilla/websocket v1.4.0/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ=
 github.com/gorilla/websocket v1.4.2 h1:+/TMaTYc4QFitKJxsQ7Yye35DkWvkdLcvGKqM+x0Ufc=
 github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE=
+github.com/gotk3/gotk3 v0.5.1 h1:zIZM2K4gmkGz1idEFVUPTQfAK/pnWoLKrlIjLOc4kzo=
+github.com/gotk3/gotk3 v0.5.1/go.mod h1:/hqFpkNa9T3JgNAE2fLvCdov7c5bw//FHNZrZ3Uv9/Q=
 github.com/klauspost/compress v1.10.10/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs=
 github.com/klauspost/compress v1.11.0 h1:wJbzvpYMVGG9iTI9VxpnNZfd4DzMPoCWze3GgSqz8yg=
 github.com/klauspost/compress v1.11.0/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs=
 github.com/klauspost/compress v1.11.2 h1:MiK62aErc3gIiVEtyzKfeOHgW7atJb5g/KNX5m3c2nQ=
 github.com/klauspost/compress v1.11.2/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs=
+github.com/klauspost/compress v1.11.3 h1:dB4Bn0tN3wdCzQxnS8r06kV74qN/TAfaIS0bVE8h3jc=
+github.com/klauspost/compress v1.11.3/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs=
 github.com/klauspost/pgzip v1.2.5 h1:qnWYvvKqedOF2ulHpMG72XQol4ILEJ8k2wwRl/Km8oE=
 github.com/klauspost/pgzip v1.2.5/go.mod h1:Ch1tH69qFZu15pkjo5kYi6mth2Zzwzt50oCQKQE9RUs=
 github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=
@@ -32,10 +36,18 @@ github.com/mitchellh/mapstructure v1.1.2 h1:fmNYVwqnSfB9mZU6OS2O6GsXM+wcskZDuKQz
 github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y=
 github.com/mitchellh/mapstructure v1.3.3 h1:SzB1nHZ2Xi+17FP0zVQBHIZqvwRN9408fJO8h+eeNA8=
 github.com/mitchellh/mapstructure v1.3.3/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo=
+github.com/mitchellh/mapstructure v1.4.0 h1:7ks8ZkOP5/ujthUsT07rNv+nkLXCQWKNHuwzOAesEks=
+github.com/mitchellh/mapstructure v1.4.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo=
 github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
 github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
 github.com/qydysky/gotk3 v0.5.1-0.20201114200959-3165c4dc990f h1:SRtvlxQctIFma0I1N+9KJbPD1rnr5KjYvNJCbRskwgw=
 github.com/qydysky/gotk3 v0.5.1-0.20201114200959-3165c4dc990f/go.mod h1:/hqFpkNa9T3JgNAE2fLvCdov7c5bw//FHNZrZ3Uv9/Q=
+github.com/qydysky/gotk3 v0.5.1-0.20201129065004-a3dcef64c527 h1:nS8ZR0dTf0KYjYoHsSReOmlneG/HwoD3GDIiM0LB0eo=
+github.com/qydysky/gotk3 v0.5.1-0.20201129065004-a3dcef64c527/go.mod h1:/hqFpkNa9T3JgNAE2fLvCdov7c5bw//FHNZrZ3Uv9/Q=
+github.com/qydysky/gotk3 v0.5.1-0.20201205173019-6b3df1eae0af h1:ZYGrO1NuxNFjoc/z5T+qYdVgfXC1XEhpuBNzAS3sW7o=
+github.com/qydysky/gotk3 v0.5.1-0.20201205173019-6b3df1eae0af/go.mod h1:/hqFpkNa9T3JgNAE2fLvCdov7c5bw//FHNZrZ3Uv9/Q=
+github.com/qydysky/gotk3 v0.5.1-0.20201205180217-ed1a98fbc6dc h1:3ToUjHou0BzvT/PKeWeTFLWoSa00EW9Fk0NxhqbLa2w=
+github.com/qydysky/gotk3 v0.5.1-0.20201205180217-ed1a98fbc6dc/go.mod h1:/hqFpkNa9T3JgNAE2fLvCdov7c5bw//FHNZrZ3Uv9/Q=
 github.com/qydysky/part v0.0.6 h1:DEIziO8d9PT+E1OIij3Ua0H8vO9Z5yqCJGb3m8BOGL0=
 github.com/qydysky/part v0.0.6/go.mod h1:+8N3UgJBVyJj8ar31eZtucwrKpLpay854Y5qq0xk3x0=
 github.com/qydysky/part v0.2.1 h1:D/ZZzKPYA9yFbudzu0HtR7RffEzdacvGr/D4hGNggRI=
@@ -54,11 +66,15 @@ github.com/qydysky/part v0.2.2-0.20201118201147-5c672b694ad4 h1:ROhlxKQCiWfC/d4q
 github.com/qydysky/part v0.2.2-0.20201118201147-5c672b694ad4/go.mod h1:93s9ohLtzULet5ZPEUUWrT9BELC30oDZgRpgGSiDye4=
 github.com/qydysky/part v0.2.2-0.20201119032922-a6f2c3476095 h1:xMahJIwZcpiRWg3Lm2eBmDS6rB4aXdOX5nJXfF4AlME=
 github.com/qydysky/part v0.2.2-0.20201119032922-a6f2c3476095/go.mod h1:93s9ohLtzULet5ZPEUUWrT9BELC30oDZgRpgGSiDye4=
+github.com/qydysky/part v0.3.1 h1:pyRSZQCWPsMSmn3XcEGFdwfhTdMczDomHi2+pfoiBdU=
+github.com/qydysky/part v0.3.1/go.mod h1:93s9ohLtzULet5ZPEUUWrT9BELC30oDZgRpgGSiDye4=
 github.com/shirou/gopsutil v2.20.7+incompatible/go.mod h1:5b4v6he4MtMOwMlS0TUMTu2PcXUg8+E1lC7eC3UO/RA=
 github.com/shirou/gopsutil v2.20.8+incompatible h1:8c7Atn0FAUZJo+f4wYbN0iVpdWniCQk7IYwGtgdh1mY=
 github.com/shirou/gopsutil v2.20.8+incompatible/go.mod h1:5b4v6he4MtMOwMlS0TUMTu2PcXUg8+E1lC7eC3UO/RA=
 github.com/shirou/gopsutil v3.20.10+incompatible h1:kQuRhh6h6y4luXvnmtu/lJEGtdJ3q8lbu9NQY99GP+o=
 github.com/shirou/gopsutil v3.20.10+incompatible/go.mod h1:5b4v6he4MtMOwMlS0TUMTu2PcXUg8+E1lC7eC3UO/RA=
+github.com/shirou/gopsutil v3.20.11+incompatible h1:LJr4ZQK4mPpIV5gOa4jCOKOGb4ty4DZO54I4FGqIpto=
+github.com/shirou/gopsutil v3.20.11+incompatible/go.mod h1:5b4v6he4MtMOwMlS0TUMTu2PcXUg8+E1lC7eC3UO/RA=
 github.com/sirupsen/logrus v1.4.1 h1:GL2rEmy6nsikmW0r8opw9JIRScdMF5hA8cOYLH7In1k=
 github.com/sirupsen/logrus v1.4.1/go.mod h1:ni0Sbl8bgC9z8RoU9G6nDWqqs/fq4eDPysMBDgk/93Q=
 github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
@@ -82,6 +98,8 @@ golang.org/x/crypto v0.0.0-20200820211705-5c72a883971a h1:vclmkQCjlDX5OydZ9wv8rB
 golang.org/x/crypto v0.0.0-20200820211705-5c72a883971a/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
 golang.org/x/crypto v0.0.0-20201016220609-9e8e0b390897 h1:pLI5jrR7OSLijeIDcmRxNmw2api+jEfxLoykJVice/E=
 golang.org/x/crypto v0.0.0-20201016220609-9e8e0b390897/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
+golang.org/x/crypto v0.0.0-20201203163018-be400aefbc4c h1:9HhBz5L/UjnK9XLtiZhYAdue5BVKep3PMmS2LuPDt8k=
+golang.org/x/crypto v0.0.0-20201203163018-be400aefbc4c/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I=
 golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg=
 golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
 golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
@@ -93,6 +111,8 @@ golang.org/x/net v0.0.0-20200904194848-62affa334b73 h1:MXfv8rhZWmFeqX3GNZRsd6vOL
 golang.org/x/net v0.0.0-20200904194848-62affa334b73/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA=
 golang.org/x/net v0.0.0-20201110031124-69a78807bb2b h1:uwuIcX0g4Yl1NC5XAz37xsr2lTtcqevgzYNVt49waME=
 golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
+golang.org/x/net v0.0.0-20201202161906-c7110b5ffcbb h1:eBmm0M9fYhWpKZLjQUUKka/LtIxf46G4fxeEz5KJr9U=
+golang.org/x/net v0.0.0-20201202161906-c7110b5ffcbb/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
 golang.org/x/sync v0.0.0-20190423024810-112230192c58 h1:8gQV6CLnAEikrhgkHFbMAEhagSSnXWGV915qUMm9mrU=
 golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
 golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
@@ -101,6 +121,7 @@ golang.org/x/sys v0.0.0-20190403152447-81d4e9dc473e/go.mod h1:h1NjWce9XRLGQEsW7w
 golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 golang.org/x/sys v0.0.0-20190419153524-e8e3143a4f4a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 golang.org/x/sys v0.0.0-20190924154521-2837fb4f24fe/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
+golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 golang.org/x/sys v0.0.0-20200810151505-1b9f1253b3ed/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 golang.org/x/sys v0.0.0-20200917061948-648f2a039071 h1:t0H7WMwCt9t0LnLSYz5zdZ/OiAtROxc5cHb5iHt3Xyw=
@@ -109,6 +130,9 @@ golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f h1:+Nyd8tzPX9R7BWHguqsrbFdRx
 golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 golang.org/x/sys v0.0.0-20201110211018-35f3e6cf4a65 h1:Qo9oJ566/Sq7N4hrGftVXs8GI2CXBCuOd4S2wHE/e0M=
 golang.org/x/sys v0.0.0-20201110211018-35f3e6cf4a65/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
+golang.org/x/sys v0.0.0-20201204225414-ed752295db88 h1:KmZPnMocC93w341XZp26yTJg8Za7lhb2KhkYmixoeso=
+golang.org/x/sys v0.0.0-20201204225414-ed752295db88/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
+golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw=
 golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
 golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
 golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=