@tobq/boardclip 2.1.113 → 2.1.115
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -2
- package/editor-preload.js +2 -0
- package/editor.html +12 -0
- package/index.html +115 -58
- package/lib/clipboard-model.js +588 -23
- package/lib/mcp-core.js +240 -69
- package/lib/sync-delta.js +5 -2
- package/lib/windows-hook-policy.js +245 -0
- package/lib/windows-hook-worker.js +18 -77
- package/lib/windows-hook.js +32 -9
- package/main.js +865 -202
- package/mcp/boardclip-mcp.js +68 -39
- package/mcp-approval.html +4 -2
- package/package.json +1 -1
- package/preload.js +11 -2
- package/site/index.html +108 -37
- package/site/shared/clip-search.js +291 -134
- package/site/shared/clipboard-popup.css +8 -20
- package/site/shared/clipboard-ui-core.js +405 -329
- package/viewer.html +1 -1
|
@@ -402,29 +402,12 @@
|
|
|
402
402
|
.np-btn.current { background: var(--accent-bg); color: var(--accent-text); font-weight: var(--fw-strong); }
|
|
403
403
|
.np-btn.current:hover { background: var(--accent-bg-strong); }
|
|
404
404
|
.bc-menu.bc-keypad, .bc-menu .tag-submenu.bc-keypad { min-width: 0; }
|
|
405
|
-
.filter-tag.virtual { opacity: .82; font-style: italic; }
|
|
406
405
|
.tag-caret { flex: 0 0 auto; font-size: var(--icon-md); line-height: 1; opacity: .72; margin-left: auto; }
|
|
407
|
-
.filter-tag .tag-caret { margin-left: var(--sp-1); margin-right: calc(-1 * var(--sp-1)); }
|
|
408
406
|
.tag-label { display: block; min-width: 0; overflow: hidden; text-overflow: ellipsis; line-height: var(--lh-ui); }
|
|
409
407
|
.tag-menu-node { position: relative; display: block; }
|
|
410
|
-
.
|
|
411
|
-
.tag-submenu { display: none; position: absolute;
|
|
412
|
-
.tag-menu-node:hover > .tag-submenu
|
|
413
|
-
.tag-submenu .tag-submenu { top: calc(-1 * var(--sp-2)); left: calc(100% - 1px); }
|
|
414
|
-
/* A chip's submenu in the top layer (popover="manual", placed and shown by
|
|
415
|
-
installSubmenuAutoflip): its own box, and shown only while it is open (the
|
|
416
|
-
:hover rule above would otherwise show it in place inside the strip). */
|
|
417
|
-
.group-filters .tag-menu-node > .tag-submenu[popover] { position: fixed; inset: auto; margin: 0; border: 0; overflow: visible; color: inherit; }
|
|
418
|
-
.group-filters .tag-menu-node > .tag-submenu[popover]:not(:popover-open) { display: none; }
|
|
419
|
-
.group-filters .tag-menu-node > .tag-submenu[popover]:popover-open { display: block; }
|
|
420
|
-
/* A group chip's dropdown holds menu rows (renderTagTreeMenuNode, depth > 0):
|
|
421
|
-
an excluded group is struck through like its chip, a greyed one dims in the
|
|
422
|
-
chips' two tiers, and a parent row stays lit while its submenu is out. */
|
|
423
|
-
.bc-menu-item.excluded > .bc-menu-label { color: var(--text-dim); text-decoration: line-through; }
|
|
424
|
-
.bc-menu-item.is-disabled { opacity: .4; cursor: default; }
|
|
425
|
-
.bc-menu-item.is-disabled.dis-structural { opacity: .25; }
|
|
426
|
-
.bc-menu-item.is-disabled:hover { background: none; }
|
|
427
|
-
.group-filters .tag-menu-node:hover > .bc-menu-item { background: var(--menu-hover); }
|
|
408
|
+
/* Every submenu sits in a menu (.bc-menu .tag-submenu places it beside its row). */
|
|
409
|
+
.tag-submenu { display: none; position: absolute; min-width: 150px; max-width: 240px; z-index: 70; }
|
|
410
|
+
.tag-menu-node:hover > .tag-submenu { display: block; }
|
|
428
411
|
.content { flex: 1; min-width: 0; }
|
|
429
412
|
/* Row anatomy (Core.renderClipItem): the primary line (a real title at the
|
|
430
413
|
strong weight, or an untitled clip's first line at the regular weight), the
|
|
@@ -1040,6 +1023,11 @@ input.bc-bar-title::placeholder { color: var(--text-dim); font-weight: var(--fw-
|
|
|
1040
1023
|
.bc-menu-hint { flex-shrink: 0; color: var(--text-dim); font-size: var(--fs-meta); font-variant-numeric: tabular-nums; }
|
|
1041
1024
|
.bc-menu-item > .tag-caret { margin-left: 0; font-size: var(--icon-sm); color: var(--text-dim); opacity: 1; }
|
|
1042
1025
|
.bc-menu-sep { height: 1px; margin: var(--sp-2) 0; background: var(--line); }
|
|
1026
|
+
/* A group list's tag rows are their own part: once the window cannot hold
|
|
1027
|
+
them all it scrolls (Core.capGroupRows sets its max-height from the window,
|
|
1028
|
+
Core.attachScrollFade fades its edges), with "New group..." below it, always
|
|
1029
|
+
in view. */
|
|
1030
|
+
.bc-group-rows { overflow-y: auto; overscroll-behavior: contain; }
|
|
1043
1031
|
/* A submenu opens beside its row (the row and its .tag-submenu share one
|
|
1044
1032
|
.tag-menu-node): on hover, or .open from the keyboard (Right / Enter). Focus
|
|
1045
1033
|
on a parent row alone does not open it. */
|