diff --git a/bundled-addons/aegis/panel.js b/bundled-addons/aegis/panel.js
index f88cec7d..38b5b55e 100644
--- a/bundled-addons/aegis/panel.js
+++ b/bundled-addons/aegis/panel.js
@@ -378,6 +378,19 @@ $("pickerBtn").addEventListener("click", (e) => {
d.hidden = false;
fillPicker();
});
+// 0.8.4: separate netchip row. Click jumps straight to the browse:chain
+// view for the current wallet's chain — the network-chip strip at the
+// top of that view is what actually switches networks.
+$("hNet").addEventListener("click", (e) => {
+ e.stopPropagation();
+ const w = (state?.wallets || []).find((x) => x.id === state?.selectedWalletId);
+ if (!w) return;
+ pickerTab = "browse:" + w.chain;
+ const d = $("drop");
+ positionDropBelowTabs(d);
+ d.hidden = false;
+ fillPicker();
+});
// + Add and ⋯ More chips moved from the wallet strip into the header
// (0.6.31). Same handlers as before — fillPicker for the Add-only picker,
// openMoreMenu for Import/Connect/About. Each stopsPropagation so the
@@ -426,6 +439,11 @@ document.addEventListener("click", (e) => {
// user who opens the picker → picks Import → cancels → reopens returns to
// Wallets (the sane default).
let pickerTab = "wallets";
+// 0.8.4: coin catalogue search query + one-shot preselected chain for the
+// Add pane (set when the browse view routes into "add" for a specific
+// unowned coin).
+let browseQuery = "";
+let pickerAddChain = null;
function fillPicker() {
const d = $("drop");
@@ -508,42 +526,94 @@ function fillPicker() {
walletsByChain.get(w.chain).push(w);
}
if (!focused) {
- // COINS: one row per chain user has a wallet for.
- const rows = [];
- for (const [chain, ws] of walletsByChain) {
- const first = ws[0];
- const nets = Array.from(new Set(ws.map((w) => w.network)));
- let active = activeNetworkByChain.get(chain);
- if (!active || !nets.includes(active)) active = nets.includes("mainnet") ? "mainnet" : nets[0];
- const netLbl = networkLabelFor(chain, active, active);
- const totalUnits = sumGroupUnits(ws.filter((w) => w.network === active));
- const dec = first.decimals || 8;
- const bal = fmtBig(totalUnits || 0, dec) + " " + esc(first.ticker || chain.toUpperCase());
- const usd = usdOf(chain, totalUnits || 0, dec);
- const fiat = usd != null ? `