From da3a8f7ed5f56ea02014cfb19638cac70ff5b409 Mon Sep 17 00:00:00 2001 From: yumoqing Date: Thu, 30 Jan 2025 11:05:37 +0800 Subject: [PATCH 1/4] bugfix --- bricks/cols.js | 19 +++++++++++-------- bricks/layout.js | 41 +++++++++++++++++++++++++---------------- bricks/wterm.js | 18 ++++++++++++------ 3 files changed, 48 insertions(+), 30 deletions(-) diff --git a/bricks/cols.js b/bricks/cols.js index e9bd64f..7ca1cf5 100644 --- a/bricks/cols.js +++ b/bricks/cols.js @@ -78,9 +78,9 @@ bricks.Cols = class extends bricks.VBox { data.reverse(); } for (var i=0;i { term.write(JSON.parse(msg.data).data); }; - + ws.onopen = function(){ + term.paste('ls -l\n') + }; term.onData(function(key) { //Enter let msg = { @@ -35,13 +42,12 @@ bricks.Wterm = class extends bricks.JsWidget { ws.send(key); }); term.focus(); - term.paste("ls -l\n"); } term_resize(){ try { this.fitAddon.fit(); } catch(e){ - bricks.debug('resize error', e); + console.log('resize error', e); } } } From 359f177de679a334323507892acac287bab4c059 Mon Sep 17 00:00:00 2001 From: yumoqing Date: Fri, 31 Jan 2025 16:34:31 +0800 Subject: [PATCH 2/4] bugfix --- bricks/cols.js | 12 +++++------- bricks/dataviewer.js | 4 ++-- bricks/layout.js | 3 +++ bricks/video.js | 16 ++++++++++++++++ 4 files changed, 26 insertions(+), 9 deletions(-) diff --git a/bricks/cols.js b/bricks/cols.js index 7ca1cf5..5574c69 100644 --- a/bricks/cols.js +++ b/bricks/cols.js @@ -74,7 +74,8 @@ bricks.Cols = class extends bricks.VBox { if (!data){ return; } - if (! this.loader.is_max_page(page)){ + var rev = ! this.loader.is_max_page(page); + if (rev){ data.reverse(); } for (var i=0;i Date: Mon, 3 Feb 2025 18:07:57 +0800 Subject: [PATCH 3/4] bugfix --- bricks/video.js | 40 +++++++++++++++++++++++++++++++++------- 1 file changed, 33 insertions(+), 7 deletions(-) diff --git a/bricks/video.js b/bricks/video.js index 8a6e59d..32d6cbd 100644 --- a/bricks/video.js +++ b/bricks/video.js @@ -63,15 +63,32 @@ bricks.Video = class extends bricks.Layout { } } } + findVideoButtonByClass(cls){ + var e = this.dom_element; + return e.querySelector('.' + cls); + } + auto_play(){ return; - schedule_once(this._auto_play.bind(this), 0.5); + schedule_once(this._auto_play.bind(this), 0.8); } _auto_play(){ + var play_btn = this.findVideoButtonByClass('vjs-big-play-button'); + if (!play_btn){ + console.log('vjs-big-play-button not found'); + return; + } console.log('video ready, auto_playing ....'); - schedule_once(this.disable_captions.bind(this), 2); - this.hidedbtn.dispatch('click'); + var clickevent = new MouseEvent('click', { + 'bubbles': true, // 事件是否冒泡 + 'cancelable': true // 事件是否可取消 + }); + play_btn.dispatchEvent(clickevent); + if (this.autounmute && this.player.muted){ + schedule_once(this.dispatch_mute.bind(this), 0.8); + } } + play(){ console.log('Video:play() called....'); this.player.play(); @@ -92,17 +109,19 @@ bricks.Video = class extends bricks.Layout { } } dispatch_mute(){ - var e = this.video_body.dom_element; - var mute_btn = e.querySelector(".vjs-mute-control"); + var mute_btn = this.findVideoButtonByClass("vjs-mute-control"); if (!mute_btn){ - console.log('there is not mute button found') + bricks.test_element = e; + console.log(e, 'there is not mute button found') return; } var clickevent = new MouseEvent('click', { 'bubbles': true, // 事件是否冒泡 'cancelable': true // 事件是否可取消 }); - mute_btn.dispatchEvent(clickEvent); + if (this.player.muted && this.autounmute){ + mute_btn.dispatchEvent(clickevent); + } } create_player(){ @@ -139,6 +158,12 @@ bricks.Video = class extends bricks.Layout { } this.play_status = 'playok'; console.log(this.video_body.cur_url, 'play ok'); + if (this.autounmute && this.player.muted){ + schedule_once(this.dispatch_mute.bind(this), 1); + console.log('mute btn clicked'); + } else { + console.log(this.autounmute, 'player.muted=', this.player.muted); + } this.dispatch('play_ok', {src:this.video_body.cur_url,type:this.video_body.cur_vtype}); } report_error(){ @@ -208,6 +233,7 @@ bricks.Iptv = class extends bricks.VBox { console.log('this.user_data =', this.user_data); this.video = new bricks.Video({ autoplay:true, + autounmute:this.autounmute, url:this.user_data.url }); this.title_w = new bricks.Text({text:this.user_data.tv_name, wrap:false}); From 6e2b8075c97e639b524b3b676be7cba1f501e837 Mon Sep 17 00:00:00 2001 From: yumoqing Date: Wed, 5 Feb 2025 10:50:05 +0800 Subject: [PATCH 4/4] bugfix --- bricks/video.js | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/bricks/video.js b/bricks/video.js index 32d6cbd..fdc9489 100644 --- a/bricks/video.js +++ b/bricks/video.js @@ -69,7 +69,6 @@ bricks.Video = class extends bricks.Layout { } auto_play(){ - return; schedule_once(this._auto_play.bind(this), 0.8); } _auto_play(){ @@ -78,15 +77,21 @@ bricks.Video = class extends bricks.Layout { console.log('vjs-big-play-button not found'); return; } + if (play_btn.style.display == 'none'){ + console.log('playing .............already'); + return; + } console.log('video ready, auto_playing ....'); var clickevent = new MouseEvent('click', { 'bubbles': true, // 事件是否冒泡 'cancelable': true // 事件是否可取消 }); play_btn.dispatchEvent(clickevent); + /* if (this.autounmute && this.player.muted){ - schedule_once(this.dispatch_mute.bind(this), 0.8); + schedule_once(this.dispatch_mute.bind(this), 1); } + */ } play(){ @@ -159,7 +164,7 @@ bricks.Video = class extends bricks.Layout { this.play_status = 'playok'; console.log(this.video_body.cur_url, 'play ok'); if (this.autounmute && this.player.muted){ - schedule_once(this.dispatch_mute.bind(this), 1); + schedule_once(this.dispatch_mute.bind(this), 1.5); console.log('mute btn clicked'); } else { console.log(this.autounmute, 'player.muted=', this.player.muted);