From 78b14f7276c1928a9b2dbfd21f861fe5d3dd8aeb Mon Sep 17 00:00:00 2001 From: yumoqing Date: Wed, 12 Nov 2025 14:11:36 +0800 Subject: [PATCH 01/10] bugfix --- bricks/bricks.js | 4 ++- bricks/popup.js | 90 ++++++++++++++++++++---------------------------- 2 files changed, 41 insertions(+), 53 deletions(-) diff --git a/bricks/bricks.js b/bricks/bricks.js index 2632de2..9c021b5 100644 --- a/bricks/bricks.js +++ b/bricks/bricks.js @@ -598,7 +598,9 @@ bricks.App = class extends bricks.Layout { console.log('event=', event); event.preventDefault(); event.stopPropagation() - this.wins_panel = new bricks.WindowsPanel({}) + var opts = bricks.get_popup_default_options(); + this.wins_panel = new bricks.WindowsPanel(opts); + this.wins_panel.open(); } get_color(){ return getComputedStyle(this.dom_element).color; diff --git a/bricks/popup.js b/bricks/popup.js index 3cc9de7..5df64a5 100644 --- a/bricks/popup.js +++ b/bricks/popup.js @@ -1,7 +1,7 @@ var bricks = window.bricks || {}; bricks.get_popup_default_options = function(){ - return { + ret = { timeout:0, archor:'cc', auto_open:true, @@ -11,6 +11,14 @@ bricks.get_popup_default_options = function(){ resizable:false, modal:true } + if (bricks.is_mobile()) { + ret.width = '100%'; + ret.height = '100%'; + } else { + ret.width = '70%'; + ret.height = '70%'; + } + return ret } bricks.Popup = class extends bricks.VBox { /* @@ -364,7 +372,7 @@ bricks.Popup = class extends bricks.VBox { } bricks.get_popupwindow_default_options = function(){ - return { + ret = { timeout:0, archor:'cc', auto_open:true, @@ -374,63 +382,41 @@ bricks.get_popupwindow_default_options = function(){ resizable:true, modal:true } + if (bricks.is_mobile()) { + ret.width = '100%'; + ret.height = '100%'; + } else { + ret.width = '70%'; + ret.height = '70%'; + } + return ret } bricks.WindowsPanel = class extends bricks.Popup { - constructor(opts){ - opts.width = "80%"; - opts.auto_open = false; - opts.auto_dismiss = true; - opts.auto_destroy = true; - opts.height = "80%"; - super(opts); - this.content = new bricks.Cols({ - width: "100%", - height: "100%", - record_view: { - widgettype: "VBox", - options: { - css: "app-icon" - }, - subwidgets: [ - { - widgettype: "Text", - options: { - otext: "${title}", - i18n: true, - wrap: true - } - }, - { - widgettype: "Svg", - options: { - rate: 2, - url: "${url}" - } - } - ] - } - }); - this.content.bind('record_click', this.del_window.bind(this)); - var data = { - total: bricks.app.mwins.length, - rows:[] - }; - for (var i=0; i< bricks.app.mwins.length; i++){ - data.rows.push({ - title: bricks.app.mwins[i].title, - url: bricks.app.mwins[i].url, - pos: i + open(opts){ + super.open(); + this.clear_widgets(); + var dc = new bricks.DynamicColumn({}); + bricks.app.mwins.forEach(x => { + var w = new bricks.VBox({ + "css": "mini-window card" }); - } - this.content.dataHandle(data); - this.add_widget(this.content); + dc.add_widget(w); + w.bind('click', this.reopen_windiw.bind(this, x)); + var tw = new bricks.Title6({label:x.title}); + var iw = new bricks.Svg({url:x.url}); + w.add_widget(iw); + w.add_widget(tw); + }); } - del_window(event){ - var pos = event.params.pos; + del_window(w){ + var nws = []; var w = bricks.app.mwins[pos]; w.open(); - bricks.app.mwins.splice(pos, 1); + bricks.app.mwins.forEach(x => { + if (x != w) nws.push(x); + }); + bricks.app.mwins = nws; this.dismiss(); } } From 81627889e5966d5e2981742fdafcec3f8ba8c582 Mon Sep 17 00:00:00 2001 From: yumoqing Date: Wed, 12 Nov 2025 14:14:16 +0800 Subject: [PATCH 02/10] bugfi --- bricks/css/bricks.css | 6 ++++++ bricks/popup.js | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/bricks/css/bricks.css b/bricks/css/bricks.css index 2eb4c43..1813dc4 100755 --- a/bricks/css/bricks.css +++ b/bricks/css/bricks.css @@ -605,3 +605,9 @@ hr { color: #00aaff; background: #f0faff; } + +.mini-window { + width: 50px; + height: 50px; +} + diff --git a/bricks/popup.js b/bricks/popup.js index 5df64a5..bd6f6cf 100644 --- a/bricks/popup.js +++ b/bricks/popup.js @@ -403,7 +403,7 @@ bricks.WindowsPanel = class extends bricks.Popup { dc.add_widget(w); w.bind('click', this.reopen_windiw.bind(this, x)); var tw = new bricks.Title6({label:x.title}); - var iw = new bricks.Svg({url:x.url}); + var iw = new bricks.Svg({url:x.url, rate:1.5}); w.add_widget(iw); w.add_widget(tw); }); From 2f81d502ad63470ab06fdcdc0b4fa8fd3f0d0b84 Mon Sep 17 00:00:00 2001 From: yumoqing Date: Wed, 12 Nov 2025 14:17:47 +0800 Subject: [PATCH 03/10] bugfix --- bricks/popup.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bricks/popup.js b/bricks/popup.js index bd6f6cf..ddfc213 100644 --- a/bricks/popup.js +++ b/bricks/popup.js @@ -401,7 +401,7 @@ bricks.WindowsPanel = class extends bricks.Popup { "css": "mini-window card" }); dc.add_widget(w); - w.bind('click', this.reopen_windiw.bind(this, x)); + w.bind('click', this.reopen_window.bind(this, x)); var tw = new bricks.Title6({label:x.title}); var iw = new bricks.Svg({url:x.url, rate:1.5}); w.add_widget(iw); @@ -409,7 +409,7 @@ bricks.WindowsPanel = class extends bricks.Popup { }); } - del_window(w){ + reopen_window(w){ var nws = []; var w = bricks.app.mwins[pos]; w.open(); From 5e49265ea75056c484f2c63b87e40d5486743976 Mon Sep 17 00:00:00 2001 From: yumoqing Date: Wed, 12 Nov 2025 14:23:42 +0800 Subject: [PATCH 04/10] bugfix --- bricks/popup.js | 1 + 1 file changed, 1 insertion(+) diff --git a/bricks/popup.js b/bricks/popup.js index ddfc213..3bdadab 100644 --- a/bricks/popup.js +++ b/bricks/popup.js @@ -407,6 +407,7 @@ bricks.WindowsPanel = class extends bricks.Popup { w.add_widget(iw); w.add_widget(tw); }); + this.add_widget(dc); } reopen_window(w){ From cca8c64e4916fb8175b20b991d21af5935c32a26 Mon Sep 17 00:00:00 2001 From: yumoqing Date: Wed, 12 Nov 2025 14:31:46 +0800 Subject: [PATCH 05/10] bugfix --- bricks/popup.js | 1 - 1 file changed, 1 deletion(-) diff --git a/bricks/popup.js b/bricks/popup.js index 3bdadab..d77c3c4 100644 --- a/bricks/popup.js +++ b/bricks/popup.js @@ -394,7 +394,6 @@ bricks.get_popupwindow_default_options = function(){ bricks.WindowsPanel = class extends bricks.Popup { open(opts){ super.open(); - this.clear_widgets(); var dc = new bricks.DynamicColumn({}); bricks.app.mwins.forEach(x => { var w = new bricks.VBox({ From 712550122f47f45461ce4fbf07c4e70e5facb0c3 Mon Sep 17 00:00:00 2001 From: yumoqing Date: Wed, 12 Nov 2025 14:39:17 +0800 Subject: [PATCH 06/10] bugfix --- bricks/popup.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/bricks/popup.js b/bricks/popup.js index d77c3c4..e5269ac 100644 --- a/bricks/popup.js +++ b/bricks/popup.js @@ -392,8 +392,8 @@ bricks.get_popupwindow_default_options = function(){ return ret } bricks.WindowsPanel = class extends bricks.Popup { - open(opts){ - super.open(); + open(){ + this.auto_open = false; var dc = new bricks.DynamicColumn({}); bricks.app.mwins.forEach(x => { var w = new bricks.VBox({ @@ -407,6 +407,7 @@ bricks.WindowsPanel = class extends bricks.Popup { w.add_widget(tw); }); this.add_widget(dc); + super.open(); } reopen_window(w){ From 5892bba1bacc613d2d1a5d4d2d6fde2c0bc8c9d6 Mon Sep 17 00:00:00 2001 From: yumoqing Date: Wed, 12 Nov 2025 14:40:37 +0800 Subject: [PATCH 07/10] bugfix --- bricks/popup.js | 1 - 1 file changed, 1 deletion(-) diff --git a/bricks/popup.js b/bricks/popup.js index e5269ac..e4b7914 100644 --- a/bricks/popup.js +++ b/bricks/popup.js @@ -412,7 +412,6 @@ bricks.WindowsPanel = class extends bricks.Popup { reopen_window(w){ var nws = []; - var w = bricks.app.mwins[pos]; w.open(); bricks.app.mwins.forEach(x => { if (x != w) nws.push(x); From 7bddf6e66cb7a1583068010b3ef1df60894099ba Mon Sep 17 00:00:00 2001 From: yumoqing Date: Wed, 12 Nov 2025 14:44:01 +0800 Subject: [PATCH 08/10] bugfix --- bricks/popup.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bricks/popup.js b/bricks/popup.js index e4b7914..90c842b 100644 --- a/bricks/popup.js +++ b/bricks/popup.js @@ -402,7 +402,7 @@ bricks.WindowsPanel = class extends bricks.Popup { dc.add_widget(w); w.bind('click', this.reopen_window.bind(this, x)); var tw = new bricks.Title6({label:x.title}); - var iw = new bricks.Svg({url:x.url, rate:1.5}); + var iw = new bricks.Svg({url:x.icon, rate:1.5}); w.add_widget(iw); w.add_widget(tw); }); From 04aadcbcddc451c8bc6afd0a94a660f8c3cb8475 Mon Sep 17 00:00:00 2001 From: yumoqing Date: Wed, 12 Nov 2025 14:54:08 +0800 Subject: [PATCH 09/10] bugfix --- bricks/bricks.js | 1 + 1 file changed, 1 insertion(+) diff --git a/bricks/bricks.js b/bricks/bricks.js index 9c021b5..e156d1c 100644 --- a/bricks/bricks.js +++ b/bricks/bricks.js @@ -599,6 +599,7 @@ bricks.App = class extends bricks.Layout { event.preventDefault(); event.stopPropagation() var opts = bricks.get_popup_default_options(); + opts.auto_open = false; this.wins_panel = new bricks.WindowsPanel(opts); this.wins_panel.open(); } From 2b59ec90d3d01c16fcc985013df9890abb54c31d Mon Sep 17 00:00:00 2001 From: yumoqing Date: Wed, 12 Nov 2025 15:23:23 +0800 Subject: [PATCH 10/10] bugfix --- bricks/popup.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/bricks/popup.js b/bricks/popup.js index 90c842b..bfdcb1a 100644 --- a/bricks/popup.js +++ b/bricks/popup.js @@ -401,7 +401,11 @@ bricks.WindowsPanel = class extends bricks.Popup { }); dc.add_widget(w); w.bind('click', this.reopen_window.bind(this, x)); - var tw = new bricks.Title6({label:x.title}); + var tw = new bricks.Title6({ + width:'100%', + wrap:true, + text:x.title + }); var iw = new bricks.Svg({url:x.icon, rate:1.5}); w.add_widget(iw); w.add_widget(tw);