fix(web): align sidebar settle hit area - #5333

Closed
IGN-Styly wants to merge 3 commits into
pingdotgg:mainfrom
IGN-Styly:agent/fix-settle-button-hit-area
Closed

fix(web): align sidebar settle hit area#5333
IGN-Styly wants to merge 3 commits into
pingdotgg:mainfrom
IGN-Styly:agent/fix-settle-button-hit-area

Conversation

@IGN-Styly

@IGN-StylyIGN-Styly commented Aug 4, 2026

Copy link
Copy Markdown

Summary

Fixes#5330.

The Sidebar V2 card row showed the Settle control, but its visible label did not match the clickable area. Clicking the gap beside Snooze worked while clicking the displayed Settle text could miss the action.

Root cause

The status label and lifecycle actions share one slot. The action layer remained pointer-active while hidden and could stack above the status label during the hover transition.

Changes

  • Disable pointer events on the hidden action layer.
  • Restore pointer events when hover or keyboard focus reveals the actions.
  • Raise the action layer above the status label.

Validation

  • Web typecheck
  • Sidebar logic tests: 87 passed
  • Targeted lint and formatting
  • Web production build

Note

Fix sidebar row controls to not intercept pointer events when hidden

The controls container in SidebarV2Row was capturing pointer events even when invisible, interfering with adjacent content. Adds pointer-events-none by default and restores pointer-events-auto only on hover, focus-visible, or when the snooze menu is open. Also adds z-10 so the controls render above adjacent content when visible.

Macroscope summarized ed19dd6.


Note

Low Risk
CSS-only interaction fix in sidebar row markup with no API or data changes; behavior is limited to when clicks reach Settle/Snooze vs the status slot.

Overview
Fixes#5330 — on Sidebar V2 card rows, clicks on the visible status/time text could miss while empty space near Snooze still hit Settle, because the lifecycle action strip stayed pointer-active while faded out and could sit above the label during hover transitions.

The Settle/Snooze container in SidebarV2Row now uses pointer-events-none when hidden, pointer-events-auto when shown (row hover, :focus-visible on a control, or open snooze menu), and z-10 so revealed controls stack correctly. The status label already ignored pointer events while invisible; this applies the same idea to the action layer.

Reviewed by Cursor Bugbot for commit ed19dd6. Bugbot is set up for automated code reviews on this repo. Configure here.

@coderabbitai

coderabbitaiBot commented Aug 4, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 7d079b0d-7d7c-499d-9927-1caeda3a73ca

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actionsgithub-actionsBot added size:XS 0-9 changed lines (additions + deletions). vouch:unvouched PR author is not yet trusted in the VOUCHED list. labels Aug 4, 2026
@IGN-Styly
IGN-Styly marked this pull request as ready for review August 4, 2026 12:27
@macroscopeapp

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Approved a9f00fd

This PR makes minor CSS class changes to fix sidebar hit area targeting. The modifications only affect pointer-events and z-index styling with no logic or runtime behavior changes beyond UI interaction.

You can customize Macroscope's approvability policy. Learn more.

@t3-code

t3-codeBot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

closing as superseded by #5486. its merged SidebarV2 changes make hidden action layers ignore pointer events and restore them when the actions are visible, covering the same settle hit-area fix. thanks for the work here.

@t3-codet3-codeBot closed this Aug 6, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XS0-9 changed lines (additions + deletions).vouch:unvouchedPR author is not yet trusted in the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: Settle button not matching display

1 participant

@IGN-Styly
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

fix(web): align sidebar settle hit area - #5333

Closed
IGN-Styly wants to merge 3 commits into
pingdotgg:mainfrom
IGN-Styly:agent/fix-settle-button-hit-area
Closed

fix(web): align sidebar settle hit area#5333
IGN-Styly wants to merge 3 commits into
pingdotgg:mainfrom
IGN-Styly:agent/fix-settle-button-hit-area

Conversation

@IGN-Styly

@IGN-StylyIGN-Styly commented Aug 4, 2026

Copy link
Copy Markdown

Summary

Fixes#5330.

The Sidebar V2 card row showed the Settle control, but its visible label did not match the clickable area. Clicking the gap beside Snooze worked while clicking the displayed Settle text could miss the action.

Root cause

The status label and lifecycle actions share one slot. The action layer remained pointer-active while hidden and could stack above the status label during the hover transition.

Changes

  • Disable pointer events on the hidden action layer.
  • Restore pointer events when hover or keyboard focus reveals the actions.
  • Raise the action layer above the status label.

Validation

  • Web typecheck
  • Sidebar logic tests: 87 passed
  • Targeted lint and formatting
  • Web production build

Note

Fix sidebar row controls to not intercept pointer events when hidden

The controls container in SidebarV2Row was capturing pointer events even when invisible, interfering with adjacent content. Adds pointer-events-none by default and restores pointer-events-auto only on hover, focus-visible, or when the snooze menu is open. Also adds z-10 so the controls render above adjacent content when visible.

Macroscope summarized ed19dd6.


Note

Low Risk
CSS-only interaction fix in sidebar row markup with no API or data changes; behavior is limited to when clicks reach Settle/Snooze vs the status slot.

Overview
Fixes#5330 — on Sidebar V2 card rows, clicks on the visible status/time text could miss while empty space near Snooze still hit Settle, because the lifecycle action strip stayed pointer-active while faded out and could sit above the label during hover transitions.

The Settle/Snooze container in SidebarV2Row now uses pointer-events-none when hidden, pointer-events-auto when shown (row hover, :focus-visible on a control, or open snooze menu), and z-10 so revealed controls stack correctly. The status label already ignored pointer events while invisible; this applies the same idea to the action layer.

Reviewed by Cursor Bugbot for commit ed19dd6. Bugbot is set up for automated code reviews on this repo. Configure here.

@coderabbitai

coderabbitaiBot commented Aug 4, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 7d079b0d-7d7c-499d-9927-1caeda3a73ca

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actionsgithub-actionsBot added size:XS 0-9 changed lines (additions + deletions). vouch:unvouched PR author is not yet trusted in the VOUCHED list. labels Aug 4, 2026
@IGN-Styly
IGN-Styly marked this pull request as ready for review August 4, 2026 12:27
@macroscopeapp

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Approved a9f00fd

This PR makes minor CSS class changes to fix sidebar hit area targeting. The modifications only affect pointer-events and z-index styling with no logic or runtime behavior changes beyond UI interaction.

You can customize Macroscope's approvability policy. Learn more.

@t3-code

t3-codeBot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

closing as superseded by #5486. its merged SidebarV2 changes make hidden action layers ignore pointer events and restore them when the actions are visible, covering the same settle hit-area fix. thanks for the work here.

@t3-codet3-codeBot closed this Aug 6, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XS0-9 changed lines (additions + deletions).vouch:unvouchedPR author is not yet trusted in the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: Settle button not matching display

1 participant

@IGN-Styly
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

fix(web): align sidebar settle hit area - #5333

Closed
IGN-Styly wants to merge 3 commits into
pingdotgg:mainfrom
IGN-Styly:agent/fix-settle-button-hit-area
Closed

fix(web): align sidebar settle hit area#5333
IGN-Styly wants to merge 3 commits into
pingdotgg:mainfrom
IGN-Styly:agent/fix-settle-button-hit-area

Conversation

@IGN-Styly

@IGN-StylyIGN-Styly commented Aug 4, 2026

Copy link
Copy Markdown

Summary

Fixes#5330.

The Sidebar V2 card row showed the Settle control, but its visible label did not match the clickable area. Clicking the gap beside Snooze worked while clicking the displayed Settle text could miss the action.

Root cause

The status label and lifecycle actions share one slot. The action layer remained pointer-active while hidden and could stack above the status label during the hover transition.

Changes

  • Disable pointer events on the hidden action layer.
  • Restore pointer events when hover or keyboard focus reveals the actions.
  • Raise the action layer above the status label.

Validation

  • Web typecheck
  • Sidebar logic tests: 87 passed
  • Targeted lint and formatting
  • Web production build

Note

Fix sidebar row controls to not intercept pointer events when hidden

The controls container in SidebarV2Row was capturing pointer events even when invisible, interfering with adjacent content. Adds pointer-events-none by default and restores pointer-events-auto only on hover, focus-visible, or when the snooze menu is open. Also adds z-10 so the controls render above adjacent content when visible.

Macroscope summarized ed19dd6.


Note

Low Risk
CSS-only interaction fix in sidebar row markup with no API or data changes; behavior is limited to when clicks reach Settle/Snooze vs the status slot.

Overview
Fixes#5330 — on Sidebar V2 card rows, clicks on the visible status/time text could miss while empty space near Snooze still hit Settle, because the lifecycle action strip stayed pointer-active while faded out and could sit above the label during hover transitions.

The Settle/Snooze container in SidebarV2Row now uses pointer-events-none when hidden, pointer-events-auto when shown (row hover, :focus-visible on a control, or open snooze menu), and z-10 so revealed controls stack correctly. The status label already ignored pointer events while invisible; this applies the same idea to the action layer.

Reviewed by Cursor Bugbot for commit ed19dd6. Bugbot is set up for automated code reviews on this repo. Configure here.

@coderabbitai

coderabbitaiBot commented Aug 4, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 7d079b0d-7d7c-499d-9927-1caeda3a73ca

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actionsgithub-actionsBot added size:XS 0-9 changed lines (additions + deletions). vouch:unvouched PR author is not yet trusted in the VOUCHED list. labels Aug 4, 2026
@IGN-Styly
IGN-Styly marked this pull request as ready for review August 4, 2026 12:27
@macroscopeapp

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Approved a9f00fd

This PR makes minor CSS class changes to fix sidebar hit area targeting. The modifications only affect pointer-events and z-index styling with no logic or runtime behavior changes beyond UI interaction.

You can customize Macroscope's approvability policy. Learn more.

@t3-code

t3-codeBot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

closing as superseded by #5486. its merged SidebarV2 changes make hidden action layers ignore pointer events and restore them when the actions are visible, covering the same settle hit-area fix. thanks for the work here.

@t3-codet3-codeBot closed this Aug 6, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XS0-9 changed lines (additions + deletions).vouch:unvouchedPR author is not yet trusted in the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: Settle button not matching display

1 participant

@IGN-Styly
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

fix(web): align sidebar settle hit area - #5333

Closed
IGN-Styly wants to merge 3 commits into
pingdotgg:mainfrom
IGN-Styly:agent/fix-settle-button-hit-area
Closed

fix(web): align sidebar settle hit area#5333
IGN-Styly wants to merge 3 commits into
pingdotgg:mainfrom
IGN-Styly:agent/fix-settle-button-hit-area

Conversation

@IGN-Styly

@IGN-StylyIGN-Styly commented Aug 4, 2026

Copy link
Copy Markdown

Summary

Fixes#5330.

The Sidebar V2 card row showed the Settle control, but its visible label did not match the clickable area. Clicking the gap beside Snooze worked while clicking the displayed Settle text could miss the action.

Root cause

The status label and lifecycle actions share one slot. The action layer remained pointer-active while hidden and could stack above the status label during the hover transition.

Changes

  • Disable pointer events on the hidden action layer.
  • Restore pointer events when hover or keyboard focus reveals the actions.
  • Raise the action layer above the status label.

Validation

  • Web typecheck
  • Sidebar logic tests: 87 passed
  • Targeted lint and formatting
  • Web production build

Note

Fix sidebar row controls to not intercept pointer events when hidden

The controls container in SidebarV2Row was capturing pointer events even when invisible, interfering with adjacent content. Adds pointer-events-none by default and restores pointer-events-auto only on hover, focus-visible, or when the snooze menu is open. Also adds z-10 so the controls render above adjacent content when visible.

Macroscope summarized ed19dd6.


Note

Low Risk
CSS-only interaction fix in sidebar row markup with no API or data changes; behavior is limited to when clicks reach Settle/Snooze vs the status slot.

Overview
Fixes#5330 — on Sidebar V2 card rows, clicks on the visible status/time text could miss while empty space near Snooze still hit Settle, because the lifecycle action strip stayed pointer-active while faded out and could sit above the label during hover transitions.

The Settle/Snooze container in SidebarV2Row now uses pointer-events-none when hidden, pointer-events-auto when shown (row hover, :focus-visible on a control, or open snooze menu), and z-10 so revealed controls stack correctly. The status label already ignored pointer events while invisible; this applies the same idea to the action layer.

Reviewed by Cursor Bugbot for commit ed19dd6. Bugbot is set up for automated code reviews on this repo. Configure here.

@coderabbitai

coderabbitaiBot commented Aug 4, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 7d079b0d-7d7c-499d-9927-1caeda3a73ca

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actionsgithub-actionsBot added size:XS 0-9 changed lines (additions + deletions). vouch:unvouched PR author is not yet trusted in the VOUCHED list. labels Aug 4, 2026
@IGN-Styly
IGN-Styly marked this pull request as ready for review August 4, 2026 12:27
@macroscopeapp

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Approved a9f00fd

This PR makes minor CSS class changes to fix sidebar hit area targeting. The modifications only affect pointer-events and z-index styling with no logic or runtime behavior changes beyond UI interaction.

You can customize Macroscope's approvability policy. Learn more.

@t3-code

t3-codeBot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

closing as superseded by #5486. its merged SidebarV2 changes make hidden action layers ignore pointer events and restore them when the actions are visible, covering the same settle hit-area fix. thanks for the work here.

@t3-codet3-codeBot closed this Aug 6, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XS0-9 changed lines (additions + deletions).vouch:unvouchedPR author is not yet trusted in the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: Settle button not matching display

1 participant

@IGN-Styly
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

fix(web): align sidebar settle hit area - #5333

Closed
IGN-Styly wants to merge 3 commits into
pingdotgg:mainfrom
IGN-Styly:agent/fix-settle-button-hit-area
Closed

fix(web): align sidebar settle hit area#5333
IGN-Styly wants to merge 3 commits into
pingdotgg:mainfrom
IGN-Styly:agent/fix-settle-button-hit-area

Conversation

@IGN-Styly

@IGN-StylyIGN-Styly commented Aug 4, 2026

Copy link
Copy Markdown

Summary

Fixes#5330.

The Sidebar V2 card row showed the Settle control, but its visible label did not match the clickable area. Clicking the gap beside Snooze worked while clicking the displayed Settle text could miss the action.

Root cause

The status label and lifecycle actions share one slot. The action layer remained pointer-active while hidden and could stack above the status label during the hover transition.

Changes

  • Disable pointer events on the hidden action layer.
  • Restore pointer events when hover or keyboard focus reveals the actions.
  • Raise the action layer above the status label.

Validation

  • Web typecheck
  • Sidebar logic tests: 87 passed
  • Targeted lint and formatting
  • Web production build

Note

Fix sidebar row controls to not intercept pointer events when hidden

The controls container in SidebarV2Row was capturing pointer events even when invisible, interfering with adjacent content. Adds pointer-events-none by default and restores pointer-events-auto only on hover, focus-visible, or when the snooze menu is open. Also adds z-10 so the controls render above adjacent content when visible.

Macroscope summarized ed19dd6.


Note

Low Risk
CSS-only interaction fix in sidebar row markup with no API or data changes; behavior is limited to when clicks reach Settle/Snooze vs the status slot.

Overview
Fixes#5330 — on Sidebar V2 card rows, clicks on the visible status/time text could miss while empty space near Snooze still hit Settle, because the lifecycle action strip stayed pointer-active while faded out and could sit above the label during hover transitions.

The Settle/Snooze container in SidebarV2Row now uses pointer-events-none when hidden, pointer-events-auto when shown (row hover, :focus-visible on a control, or open snooze menu), and z-10 so revealed controls stack correctly. The status label already ignored pointer events while invisible; this applies the same idea to the action layer.

Reviewed by Cursor Bugbot for commit ed19dd6. Bugbot is set up for automated code reviews on this repo. Configure here.

@coderabbitai

coderabbitaiBot commented Aug 4, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 7d079b0d-7d7c-499d-9927-1caeda3a73ca

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actionsgithub-actionsBot added size:XS 0-9 changed lines (additions + deletions). vouch:unvouched PR author is not yet trusted in the VOUCHED list. labels Aug 4, 2026
@IGN-Styly
IGN-Styly marked this pull request as ready for review August 4, 2026 12:27
@macroscopeapp

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Approved a9f00fd

This PR makes minor CSS class changes to fix sidebar hit area targeting. The modifications only affect pointer-events and z-index styling with no logic or runtime behavior changes beyond UI interaction.

You can customize Macroscope's approvability policy. Learn more.

@t3-code

t3-codeBot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

closing as superseded by #5486. its merged SidebarV2 changes make hidden action layers ignore pointer events and restore them when the actions are visible, covering the same settle hit-area fix. thanks for the work here.

@t3-codet3-codeBot closed this Aug 6, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XS0-9 changed lines (additions + deletions).vouch:unvouchedPR author is not yet trusted in the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: Settle button not matching display

1 participant

@IGN-Styly
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

fix(web): align sidebar settle hit area - #5333

Closed
IGN-Styly wants to merge 3 commits into
pingdotgg:mainfrom
IGN-Styly:agent/fix-settle-button-hit-area
Closed

fix(web): align sidebar settle hit area#5333
IGN-Styly wants to merge 3 commits into
pingdotgg:mainfrom
IGN-Styly:agent/fix-settle-button-hit-area

Conversation

@IGN-Styly

@IGN-StylyIGN-Styly commented Aug 4, 2026

Copy link
Copy Markdown

Summary

Fixes#5330.

The Sidebar V2 card row showed the Settle control, but its visible label did not match the clickable area. Clicking the gap beside Snooze worked while clicking the displayed Settle text could miss the action.

Root cause

The status label and lifecycle actions share one slot. The action layer remained pointer-active while hidden and could stack above the status label during the hover transition.

Changes

  • Disable pointer events on the hidden action layer.
  • Restore pointer events when hover or keyboard focus reveals the actions.
  • Raise the action layer above the status label.

Validation

  • Web typecheck
  • Sidebar logic tests: 87 passed
  • Targeted lint and formatting
  • Web production build

Note

Fix sidebar row controls to not intercept pointer events when hidden

The controls container in SidebarV2Row was capturing pointer events even when invisible, interfering with adjacent content. Adds pointer-events-none by default and restores pointer-events-auto only on hover, focus-visible, or when the snooze menu is open. Also adds z-10 so the controls render above adjacent content when visible.

Macroscope summarized ed19dd6.


Note

Low Risk
CSS-only interaction fix in sidebar row markup with no API or data changes; behavior is limited to when clicks reach Settle/Snooze vs the status slot.

Overview
Fixes#5330 — on Sidebar V2 card rows, clicks on the visible status/time text could miss while empty space near Snooze still hit Settle, because the lifecycle action strip stayed pointer-active while faded out and could sit above the label during hover transitions.

The Settle/Snooze container in SidebarV2Row now uses pointer-events-none when hidden, pointer-events-auto when shown (row hover, :focus-visible on a control, or open snooze menu), and z-10 so revealed controls stack correctly. The status label already ignored pointer events while invisible; this applies the same idea to the action layer.

Reviewed by Cursor Bugbot for commit ed19dd6. Bugbot is set up for automated code reviews on this repo. Configure here.

@coderabbitai

coderabbitaiBot commented Aug 4, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 7d079b0d-7d7c-499d-9927-1caeda3a73ca

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actionsgithub-actionsBot added size:XS 0-9 changed lines (additions + deletions). vouch:unvouched PR author is not yet trusted in the VOUCHED list. labels Aug 4, 2026
@IGN-Styly
IGN-Styly marked this pull request as ready for review August 4, 2026 12:27
@macroscopeapp

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Approved a9f00fd

This PR makes minor CSS class changes to fix sidebar hit area targeting. The modifications only affect pointer-events and z-index styling with no logic or runtime behavior changes beyond UI interaction.

You can customize Macroscope's approvability policy. Learn more.

@t3-code

t3-codeBot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

closing as superseded by #5486. its merged SidebarV2 changes make hidden action layers ignore pointer events and restore them when the actions are visible, covering the same settle hit-area fix. thanks for the work here.

@t3-codet3-codeBot closed this Aug 6, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XS0-9 changed lines (additions + deletions).vouch:unvouchedPR author is not yet trusted in the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: Settle button not matching display

1 participant

@IGN-Styly
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

fix(web): align sidebar settle hit area - #5333

Closed
IGN-Styly wants to merge 3 commits into
pingdotgg:mainfrom
IGN-Styly:agent/fix-settle-button-hit-area
Closed

fix(web): align sidebar settle hit area#5333
IGN-Styly wants to merge 3 commits into
pingdotgg:mainfrom
IGN-Styly:agent/fix-settle-button-hit-area

Conversation

@IGN-Styly

@IGN-StylyIGN-Styly commented Aug 4, 2026

Copy link
Copy Markdown

Summary

Fixes#5330.

The Sidebar V2 card row showed the Settle control, but its visible label did not match the clickable area. Clicking the gap beside Snooze worked while clicking the displayed Settle text could miss the action.

Root cause

The status label and lifecycle actions share one slot. The action layer remained pointer-active while hidden and could stack above the status label during the hover transition.

Changes

  • Disable pointer events on the hidden action layer.
  • Restore pointer events when hover or keyboard focus reveals the actions.
  • Raise the action layer above the status label.

Validation

  • Web typecheck
  • Sidebar logic tests: 87 passed
  • Targeted lint and formatting
  • Web production build

Note

Fix sidebar row controls to not intercept pointer events when hidden

The controls container in SidebarV2Row was capturing pointer events even when invisible, interfering with adjacent content. Adds pointer-events-none by default and restores pointer-events-auto only on hover, focus-visible, or when the snooze menu is open. Also adds z-10 so the controls render above adjacent content when visible.

Macroscope summarized ed19dd6.


Note

Low Risk
CSS-only interaction fix in sidebar row markup with no API or data changes; behavior is limited to when clicks reach Settle/Snooze vs the status slot.

Overview
Fixes#5330 — on Sidebar V2 card rows, clicks on the visible status/time text could miss while empty space near Snooze still hit Settle, because the lifecycle action strip stayed pointer-active while faded out and could sit above the label during hover transitions.

The Settle/Snooze container in SidebarV2Row now uses pointer-events-none when hidden, pointer-events-auto when shown (row hover, :focus-visible on a control, or open snooze menu), and z-10 so revealed controls stack correctly. The status label already ignored pointer events while invisible; this applies the same idea to the action layer.

Reviewed by Cursor Bugbot for commit ed19dd6. Bugbot is set up for automated code reviews on this repo. Configure here.

@coderabbitai

coderabbitaiBot commented Aug 4, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 7d079b0d-7d7c-499d-9927-1caeda3a73ca

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actionsgithub-actionsBot added size:XS 0-9 changed lines (additions + deletions). vouch:unvouched PR author is not yet trusted in the VOUCHED list. labels Aug 4, 2026
@IGN-Styly
IGN-Styly marked this pull request as ready for review August 4, 2026 12:27
@macroscopeapp

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Approved a9f00fd

This PR makes minor CSS class changes to fix sidebar hit area targeting. The modifications only affect pointer-events and z-index styling with no logic or runtime behavior changes beyond UI interaction.

You can customize Macroscope's approvability policy. Learn more.

@t3-code

t3-codeBot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

closing as superseded by #5486. its merged SidebarV2 changes make hidden action layers ignore pointer events and restore them when the actions are visible, covering the same settle hit-area fix. thanks for the work here.

@t3-codet3-codeBot closed this Aug 6, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XS0-9 changed lines (additions + deletions).vouch:unvouchedPR author is not yet trusted in the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: Settle button not matching display

1 participant

@IGN-Styly
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

fix(web): align sidebar settle hit area - #5333

Closed
IGN-Styly wants to merge 3 commits into
pingdotgg:mainfrom
IGN-Styly:agent/fix-settle-button-hit-area
Closed

fix(web): align sidebar settle hit area#5333
IGN-Styly wants to merge 3 commits into
pingdotgg:mainfrom
IGN-Styly:agent/fix-settle-button-hit-area

Conversation

@IGN-Styly

@IGN-StylyIGN-Styly commented Aug 4, 2026

Copy link
Copy Markdown

Summary

Fixes#5330.

The Sidebar V2 card row showed the Settle control, but its visible label did not match the clickable area. Clicking the gap beside Snooze worked while clicking the displayed Settle text could miss the action.

Root cause

The status label and lifecycle actions share one slot. The action layer remained pointer-active while hidden and could stack above the status label during the hover transition.

Changes

  • Disable pointer events on the hidden action layer.
  • Restore pointer events when hover or keyboard focus reveals the actions.
  • Raise the action layer above the status label.

Validation

  • Web typecheck
  • Sidebar logic tests: 87 passed
  • Targeted lint and formatting
  • Web production build

Note

Fix sidebar row controls to not intercept pointer events when hidden

The controls container in SidebarV2Row was capturing pointer events even when invisible, interfering with adjacent content. Adds pointer-events-none by default and restores pointer-events-auto only on hover, focus-visible, or when the snooze menu is open. Also adds z-10 so the controls render above adjacent content when visible.

Macroscope summarized ed19dd6.


Note

Low Risk
CSS-only interaction fix in sidebar row markup with no API or data changes; behavior is limited to when clicks reach Settle/Snooze vs the status slot.

Overview
Fixes#5330 — on Sidebar V2 card rows, clicks on the visible status/time text could miss while empty space near Snooze still hit Settle, because the lifecycle action strip stayed pointer-active while faded out and could sit above the label during hover transitions.

The Settle/Snooze container in SidebarV2Row now uses pointer-events-none when hidden, pointer-events-auto when shown (row hover, :focus-visible on a control, or open snooze menu), and z-10 so revealed controls stack correctly. The status label already ignored pointer events while invisible; this applies the same idea to the action layer.

Reviewed by Cursor Bugbot for commit ed19dd6. Bugbot is set up for automated code reviews on this repo. Configure here.

@coderabbitai

coderabbitaiBot commented Aug 4, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 7d079b0d-7d7c-499d-9927-1caeda3a73ca

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actionsgithub-actionsBot added size:XS 0-9 changed lines (additions + deletions). vouch:unvouched PR author is not yet trusted in the VOUCHED list. labels Aug 4, 2026
@IGN-Styly
IGN-Styly marked this pull request as ready for review August 4, 2026 12:27
@macroscopeapp

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Approved a9f00fd

This PR makes minor CSS class changes to fix sidebar hit area targeting. The modifications only affect pointer-events and z-index styling with no logic or runtime behavior changes beyond UI interaction.

You can customize Macroscope's approvability policy. Learn more.

@t3-code

t3-codeBot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

closing as superseded by #5486. its merged SidebarV2 changes make hidden action layers ignore pointer events and restore them when the actions are visible, covering the same settle hit-area fix. thanks for the work here.

@t3-codet3-codeBot closed this Aug 6, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XS0-9 changed lines (additions + deletions).vouch:unvouchedPR author is not yet trusted in the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: Settle button not matching display

1 participant

@IGN-Styly