]> 127.0.0.1 Git - bili_danmu/.git/commitdiff
获取队列
authorqydysky <qydysky@foxmail.com>
Sat, 14 Nov 2020 18:26:18 +0000 (02:26 +0800)
committerqydysky <qydysky@foxmail.com>
Sat, 14 Nov 2020 18:26:18 +0000 (02:26 +0800)
.gitignore
Reply/gtk.go

index 56f4cb522504b01e897ed35c0c435c6b3758b2d7..626e18ee0b7e2086bc76fbac4a64c3dba07ab4f4 100644 (file)
@@ -13,3 +13,4 @@ demo/*.mkv
 demo/qtbox
 demo/main
 demo/face/*
+demo/demo.run
index e5bb400f1f632ff6c71108981392924fdc1bbc08..895caba43fe8cfde36139463a955ccacdf4430f2 100644 (file)
@@ -159,7 +159,12 @@ func Gtk_danmu() {
                                        pixbuf,e = gdk.PixbufCopy(v)
                                } else {
                                        pixbuf,e = gdk.PixbufNewFromFileAtSize(img_src, 40, 40);
-                                       if e == nil {imgbuf[img_src],e = gdk.PixbufCopy(pixbuf)}
+                                       if e == nil {
+                                               if len(imgbuf) > max_img {
+                                                       for k,_ := range imgbuf {delete(imgbuf,k);break}
+                                               }
+                                               imgbuf[img_src],e = gdk.PixbufCopy(pixbuf)
+                                       }
                                }
                                if e == nil {tmp_list.img.SetFromPixbuf(pixbuf)}
                        }
@@ -206,33 +211,6 @@ func Gtk_danmu() {
                                }
                        }
 
-                       glib.TimeoutAdd(uint(3000), func()(o bool){
-                               o = true
-
-                               if gtkGetList.Len() == 0 {return}
-                               el := gtkGetList.Front()
-                               if el == nil {return}
-                               if uid,ok := gtkGetList.Remove(el).(string);ok{
-                                       go func(){
-                                               src := F.Get_face_src(uid)
-                                               if src == "" {return}
-                                               req := p.Req()
-                                               if e := req.Reqf(p.Rval{
-                                                       Url:src,
-                                                       SaveToPath:Gtk_img_path + `/` + uid,
-                                                       Timeout:3,
-                                               }); e != nil{log.Println(e);}
-                                       }()
-                               }
-
-                               {
-                                       if len(imgbuf) > max_img {
-                                               for k,_ := range imgbuf {delete(imgbuf,k);break}
-                                       }
-                               }
-                               return
-                       })
-
                        win.ShowAll()
                }
 
@@ -255,6 +233,28 @@ func Gtk_danmu() {
                                })
                        }
                }()
+               
+               glib.TimeoutAdd(uint(3000), func()(o bool){
+                       o = true
+
+                       if gtkGetList.Len() == 0 {return}
+                       el := gtkGetList.Front()
+                       if el == nil {return}
+                       if uid,ok := gtkGetList.Remove(el).(string);ok{
+                               go func(){
+                                       src := F.Get_face_src(uid)
+                                       if src == "" {return}
+                                       req := p.Req()
+                                       if e := req.Reqf(p.Rval{
+                                               Url:src,
+                                               SaveToPath:Gtk_img_path + `/` + uid,
+                                               Timeout:3,
+                                       }); e != nil{log.Println(e);}
+                               }()
+                       }
+
+                       return
+               })
        })
 
        application.Connect("shutdown", func() {