fix: prevent Learn More from suppressing sunset toast and fix popup clipping - #549

Merged
ashishrp-aws merged 4 commits into
Amazon-Q-Developer:mainfrom
Will-ShaoHua:fix/sunset-notification-ux
Apr 29, 2026
Merged

fix: prevent Learn More from suppressing sunset toast and fix popup clipping#549
ashishrp-aws merged 4 commits into
Amazon-Q-Developer:mainfrom
Will-ShaoHua:fix/sunset-notification-ux

Conversation

@Will-ShaoHua

@Will-ShaoHuaWill-ShaoHua commented Apr 29, 2026

Copy link
Copy Markdown
Contributor

Summary

Two fixes for thesunset notification toast (PR #545):

  1. Learn More no longer suppresses future notifications — clicking "Learn More" previously called dismiss() which persisted the kiroSunsetNotificationDismissed key. Now it only opens the URL. The notification will reappear on next Eclipse launch until the user explicitly clicks "Dismiss".

  2. Fix notification popup height clipping — the button row (Learn More / Dismiss) was cut off because initializeBounds() computed height with unconstrained width (computeSize(SWT.DEFAULT, SWT.DEFAULT)). Since the popup is capped at MAX_WIDTH=400, text wraps and the actual height is taller than the unconstrained estimate. Now computes height with the constrained width so the layout engine accounts for wrapping + buttons.

Testing

  • Built and installed via dropins
  • Verified notification shows on every Eclipse launch until Dismiss is clicked
  • Verified Learn More opens the correct URL without suppressing future appearances
  • Verified buttons are fully visible (no clipping)

Add upload-artifact steps to the Maven build workflow so the plugin
JAR and p2 update site ZIP are downloadable from the Actions tab on
every PR and main push. Retained for 30 days.
…and fix popup clipping
- Learn More now opens the URL and closes the popup without persisting
the dismissed key, so the notification reappears on next launch
- Only the explicit Dismiss button suppresses future appearances
- Fix notification popup height calculation to use width-constrained
computeSize so wrapped text and button row are not clipped
- Learn More now only opens the URL without closing the popup
- Users can click Learn More, read the page, then come back and Dismiss
@Will-ShaoHuaWill-ShaoHua changed the title fix(notifications): prevent Learn More from suppressing sunset toast and fix popup clippingfix: prevent Learn More from suppressing sunset toast and fix popup clippingApr 29, 2026
@ashishrp-aws
ashishrp-aws merged commit 7b12d46 into Amazon-Q-Developer:mainApr 29, 2026
1 check passed
@Will-ShaoHua
Will-ShaoHua deleted the fix/sunset-notification-ux branch April 29, 2026 22:18
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@Will-ShaoHua@laileni-aws@ashishrp-aws
, '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: prevent Learn More from suppressing sunset toast and fix popup clipping - #549

Merged
ashishrp-aws merged 4 commits into
Amazon-Q-Developer:mainfrom
Will-ShaoHua:fix/sunset-notification-ux
Apr 29, 2026
Merged

fix: prevent Learn More from suppressing sunset toast and fix popup clipping#549
ashishrp-aws merged 4 commits into
Amazon-Q-Developer:mainfrom
Will-ShaoHua:fix/sunset-notification-ux

Conversation

@Will-ShaoHua

@Will-ShaoHuaWill-ShaoHua commented Apr 29, 2026

Copy link
Copy Markdown
Contributor

Summary

Two fixes for thesunset notification toast (PR #545):

  1. Learn More no longer suppresses future notifications — clicking "Learn More" previously called dismiss() which persisted the kiroSunsetNotificationDismissed key. Now it only opens the URL. The notification will reappear on next Eclipse launch until the user explicitly clicks "Dismiss".

  2. Fix notification popup height clipping — the button row (Learn More / Dismiss) was cut off because initializeBounds() computed height with unconstrained width (computeSize(SWT.DEFAULT, SWT.DEFAULT)). Since the popup is capped at MAX_WIDTH=400, text wraps and the actual height is taller than the unconstrained estimate. Now computes height with the constrained width so the layout engine accounts for wrapping + buttons.

Testing

  • Built and installed via dropins
  • Verified notification shows on every Eclipse launch until Dismiss is clicked
  • Verified Learn More opens the correct URL without suppressing future appearances
  • Verified buttons are fully visible (no clipping)

Add upload-artifact steps to the Maven build workflow so the plugin
JAR and p2 update site ZIP are downloadable from the Actions tab on
every PR and main push. Retained for 30 days.
…and fix popup clipping
- Learn More now opens the URL and closes the popup without persisting
the dismissed key, so the notification reappears on next launch
- Only the explicit Dismiss button suppresses future appearances
- Fix notification popup height calculation to use width-constrained
computeSize so wrapped text and button row are not clipped
- Learn More now only opens the URL without closing the popup
- Users can click Learn More, read the page, then come back and Dismiss
@Will-ShaoHuaWill-ShaoHua changed the title fix(notifications): prevent Learn More from suppressing sunset toast and fix popup clippingfix: prevent Learn More from suppressing sunset toast and fix popup clippingApr 29, 2026
@ashishrp-aws
ashishrp-aws merged commit 7b12d46 into Amazon-Q-Developer:mainApr 29, 2026
1 check passed
@Will-ShaoHua
Will-ShaoHua deleted the fix/sunset-notification-ux branch April 29, 2026 22:18
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@Will-ShaoHua@laileni-aws@ashishrp-aws
, '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: prevent Learn More from suppressing sunset toast and fix popup clipping - #549

Merged
ashishrp-aws merged 4 commits into
Amazon-Q-Developer:mainfrom
Will-ShaoHua:fix/sunset-notification-ux
Apr 29, 2026
Merged

fix: prevent Learn More from suppressing sunset toast and fix popup clipping#549
ashishrp-aws merged 4 commits into
Amazon-Q-Developer:mainfrom
Will-ShaoHua:fix/sunset-notification-ux

Conversation

@Will-ShaoHua

@Will-ShaoHuaWill-ShaoHua commented Apr 29, 2026

Copy link
Copy Markdown
Contributor

Summary

Two fixes for thesunset notification toast (PR #545):

  1. Learn More no longer suppresses future notifications — clicking "Learn More" previously called dismiss() which persisted the kiroSunsetNotificationDismissed key. Now it only opens the URL. The notification will reappear on next Eclipse launch until the user explicitly clicks "Dismiss".

  2. Fix notification popup height clipping — the button row (Learn More / Dismiss) was cut off because initializeBounds() computed height with unconstrained width (computeSize(SWT.DEFAULT, SWT.DEFAULT)). Since the popup is capped at MAX_WIDTH=400, text wraps and the actual height is taller than the unconstrained estimate. Now computes height with the constrained width so the layout engine accounts for wrapping + buttons.

Testing

  • Built and installed via dropins
  • Verified notification shows on every Eclipse launch until Dismiss is clicked
  • Verified Learn More opens the correct URL without suppressing future appearances
  • Verified buttons are fully visible (no clipping)

Add upload-artifact steps to the Maven build workflow so the plugin
JAR and p2 update site ZIP are downloadable from the Actions tab on
every PR and main push. Retained for 30 days.
…and fix popup clipping
- Learn More now opens the URL and closes the popup without persisting
the dismissed key, so the notification reappears on next launch
- Only the explicit Dismiss button suppresses future appearances
- Fix notification popup height calculation to use width-constrained
computeSize so wrapped text and button row are not clipped
- Learn More now only opens the URL without closing the popup
- Users can click Learn More, read the page, then come back and Dismiss
@Will-ShaoHuaWill-ShaoHua changed the title fix(notifications): prevent Learn More from suppressing sunset toast and fix popup clippingfix: prevent Learn More from suppressing sunset toast and fix popup clippingApr 29, 2026
@ashishrp-aws
ashishrp-aws merged commit 7b12d46 into Amazon-Q-Developer:mainApr 29, 2026
1 check passed
@Will-ShaoHua
Will-ShaoHua deleted the fix/sunset-notification-ux branch April 29, 2026 22:18
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@Will-ShaoHua@laileni-aws@ashishrp-aws
, '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: prevent Learn More from suppressing sunset toast and fix popup clipping - #549

Merged
ashishrp-aws merged 4 commits into
Amazon-Q-Developer:mainfrom
Will-ShaoHua:fix/sunset-notification-ux
Apr 29, 2026
Merged

fix: prevent Learn More from suppressing sunset toast and fix popup clipping#549
ashishrp-aws merged 4 commits into
Amazon-Q-Developer:mainfrom
Will-ShaoHua:fix/sunset-notification-ux

Conversation

@Will-ShaoHua

@Will-ShaoHuaWill-ShaoHua commented Apr 29, 2026

Copy link
Copy Markdown
Contributor

Summary

Two fixes for thesunset notification toast (PR #545):

  1. Learn More no longer suppresses future notifications — clicking "Learn More" previously called dismiss() which persisted the kiroSunsetNotificationDismissed key. Now it only opens the URL. The notification will reappear on next Eclipse launch until the user explicitly clicks "Dismiss".

  2. Fix notification popup height clipping — the button row (Learn More / Dismiss) was cut off because initializeBounds() computed height with unconstrained width (computeSize(SWT.DEFAULT, SWT.DEFAULT)). Since the popup is capped at MAX_WIDTH=400, text wraps and the actual height is taller than the unconstrained estimate. Now computes height with the constrained width so the layout engine accounts for wrapping + buttons.

Testing

  • Built and installed via dropins
  • Verified notification shows on every Eclipse launch until Dismiss is clicked
  • Verified Learn More opens the correct URL without suppressing future appearances
  • Verified buttons are fully visible (no clipping)

Add upload-artifact steps to the Maven build workflow so the plugin
JAR and p2 update site ZIP are downloadable from the Actions tab on
every PR and main push. Retained for 30 days.
…and fix popup clipping
- Learn More now opens the URL and closes the popup without persisting
the dismissed key, so the notification reappears on next launch
- Only the explicit Dismiss button suppresses future appearances
- Fix notification popup height calculation to use width-constrained
computeSize so wrapped text and button row are not clipped
- Learn More now only opens the URL without closing the popup
- Users can click Learn More, read the page, then come back and Dismiss
@Will-ShaoHuaWill-ShaoHua changed the title fix(notifications): prevent Learn More from suppressing sunset toast and fix popup clippingfix: prevent Learn More from suppressing sunset toast and fix popup clippingApr 29, 2026
@ashishrp-aws
ashishrp-aws merged commit 7b12d46 into Amazon-Q-Developer:mainApr 29, 2026
1 check passed
@Will-ShaoHua
Will-ShaoHua deleted the fix/sunset-notification-ux branch April 29, 2026 22:18
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@Will-ShaoHua@laileni-aws@ashishrp-aws
, '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: prevent Learn More from suppressing sunset toast and fix popup clipping - #549

Merged
ashishrp-aws merged 4 commits into
Amazon-Q-Developer:mainfrom
Will-ShaoHua:fix/sunset-notification-ux
Apr 29, 2026
Merged

fix: prevent Learn More from suppressing sunset toast and fix popup clipping#549
ashishrp-aws merged 4 commits into
Amazon-Q-Developer:mainfrom
Will-ShaoHua:fix/sunset-notification-ux

Conversation

@Will-ShaoHua

@Will-ShaoHuaWill-ShaoHua commented Apr 29, 2026

Copy link
Copy Markdown
Contributor

Summary

Two fixes for thesunset notification toast (PR #545):

  1. Learn More no longer suppresses future notifications — clicking "Learn More" previously called dismiss() which persisted the kiroSunsetNotificationDismissed key. Now it only opens the URL. The notification will reappear on next Eclipse launch until the user explicitly clicks "Dismiss".

  2. Fix notification popup height clipping — the button row (Learn More / Dismiss) was cut off because initializeBounds() computed height with unconstrained width (computeSize(SWT.DEFAULT, SWT.DEFAULT)). Since the popup is capped at MAX_WIDTH=400, text wraps and the actual height is taller than the unconstrained estimate. Now computes height with the constrained width so the layout engine accounts for wrapping + buttons.

Testing

  • Built and installed via dropins
  • Verified notification shows on every Eclipse launch until Dismiss is clicked
  • Verified Learn More opens the correct URL without suppressing future appearances
  • Verified buttons are fully visible (no clipping)

Add upload-artifact steps to the Maven build workflow so the plugin
JAR and p2 update site ZIP are downloadable from the Actions tab on
every PR and main push. Retained for 30 days.
…and fix popup clipping
- Learn More now opens the URL and closes the popup without persisting
the dismissed key, so the notification reappears on next launch
- Only the explicit Dismiss button suppresses future appearances
- Fix notification popup height calculation to use width-constrained
computeSize so wrapped text and button row are not clipped
- Learn More now only opens the URL without closing the popup
- Users can click Learn More, read the page, then come back and Dismiss
@Will-ShaoHuaWill-ShaoHua changed the title fix(notifications): prevent Learn More from suppressing sunset toast and fix popup clippingfix: prevent Learn More from suppressing sunset toast and fix popup clippingApr 29, 2026
@ashishrp-aws
ashishrp-aws merged commit 7b12d46 into Amazon-Q-Developer:mainApr 29, 2026
1 check passed
@Will-ShaoHua
Will-ShaoHua deleted the fix/sunset-notification-ux branch April 29, 2026 22:18
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@Will-ShaoHua@laileni-aws@ashishrp-aws
, '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: prevent Learn More from suppressing sunset toast and fix popup clipping - #549

Merged
ashishrp-aws merged 4 commits into
Amazon-Q-Developer:mainfrom
Will-ShaoHua:fix/sunset-notification-ux
Apr 29, 2026
Merged

fix: prevent Learn More from suppressing sunset toast and fix popup clipping#549
ashishrp-aws merged 4 commits into
Amazon-Q-Developer:mainfrom
Will-ShaoHua:fix/sunset-notification-ux

Conversation

@Will-ShaoHua

@Will-ShaoHuaWill-ShaoHua commented Apr 29, 2026

Copy link
Copy Markdown
Contributor

Summary

Two fixes for thesunset notification toast (PR #545):

  1. Learn More no longer suppresses future notifications — clicking "Learn More" previously called dismiss() which persisted the kiroSunsetNotificationDismissed key. Now it only opens the URL. The notification will reappear on next Eclipse launch until the user explicitly clicks "Dismiss".

  2. Fix notification popup height clipping — the button row (Learn More / Dismiss) was cut off because initializeBounds() computed height with unconstrained width (computeSize(SWT.DEFAULT, SWT.DEFAULT)). Since the popup is capped at MAX_WIDTH=400, text wraps and the actual height is taller than the unconstrained estimate. Now computes height with the constrained width so the layout engine accounts for wrapping + buttons.

Testing

  • Built and installed via dropins
  • Verified notification shows on every Eclipse launch until Dismiss is clicked
  • Verified Learn More opens the correct URL without suppressing future appearances
  • Verified buttons are fully visible (no clipping)

Add upload-artifact steps to the Maven build workflow so the plugin
JAR and p2 update site ZIP are downloadable from the Actions tab on
every PR and main push. Retained for 30 days.
…and fix popup clipping
- Learn More now opens the URL and closes the popup without persisting
the dismissed key, so the notification reappears on next launch
- Only the explicit Dismiss button suppresses future appearances
- Fix notification popup height calculation to use width-constrained
computeSize so wrapped text and button row are not clipped
- Learn More now only opens the URL without closing the popup
- Users can click Learn More, read the page, then come back and Dismiss
@Will-ShaoHuaWill-ShaoHua changed the title fix(notifications): prevent Learn More from suppressing sunset toast and fix popup clippingfix: prevent Learn More from suppressing sunset toast and fix popup clippingApr 29, 2026
@ashishrp-aws
ashishrp-aws merged commit 7b12d46 into Amazon-Q-Developer:mainApr 29, 2026
1 check passed
@Will-ShaoHua
Will-ShaoHua deleted the fix/sunset-notification-ux branch April 29, 2026 22:18
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@Will-ShaoHua@laileni-aws@ashishrp-aws
, '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: prevent Learn More from suppressing sunset toast and fix popup clipping - #549

Merged
ashishrp-aws merged 4 commits into
Amazon-Q-Developer:mainfrom
Will-ShaoHua:fix/sunset-notification-ux
Apr 29, 2026
Merged

fix: prevent Learn More from suppressing sunset toast and fix popup clipping#549
ashishrp-aws merged 4 commits into
Amazon-Q-Developer:mainfrom
Will-ShaoHua:fix/sunset-notification-ux

Conversation

@Will-ShaoHua

@Will-ShaoHuaWill-ShaoHua commented Apr 29, 2026

Copy link
Copy Markdown
Contributor

Summary

Two fixes for thesunset notification toast (PR #545):

  1. Learn More no longer suppresses future notifications — clicking "Learn More" previously called dismiss() which persisted the kiroSunsetNotificationDismissed key. Now it only opens the URL. The notification will reappear on next Eclipse launch until the user explicitly clicks "Dismiss".

  2. Fix notification popup height clipping — the button row (Learn More / Dismiss) was cut off because initializeBounds() computed height with unconstrained width (computeSize(SWT.DEFAULT, SWT.DEFAULT)). Since the popup is capped at MAX_WIDTH=400, text wraps and the actual height is taller than the unconstrained estimate. Now computes height with the constrained width so the layout engine accounts for wrapping + buttons.

Testing

  • Built and installed via dropins
  • Verified notification shows on every Eclipse launch until Dismiss is clicked
  • Verified Learn More opens the correct URL without suppressing future appearances
  • Verified buttons are fully visible (no clipping)

Add upload-artifact steps to the Maven build workflow so the plugin
JAR and p2 update site ZIP are downloadable from the Actions tab on
every PR and main push. Retained for 30 days.
…and fix popup clipping
- Learn More now opens the URL and closes the popup without persisting
the dismissed key, so the notification reappears on next launch
- Only the explicit Dismiss button suppresses future appearances
- Fix notification popup height calculation to use width-constrained
computeSize so wrapped text and button row are not clipped
- Learn More now only opens the URL without closing the popup
- Users can click Learn More, read the page, then come back and Dismiss
@Will-ShaoHuaWill-ShaoHua changed the title fix(notifications): prevent Learn More from suppressing sunset toast and fix popup clippingfix: prevent Learn More from suppressing sunset toast and fix popup clippingApr 29, 2026
@ashishrp-aws
ashishrp-aws merged commit 7b12d46 into Amazon-Q-Developer:mainApr 29, 2026
1 check passed
@Will-ShaoHua
Will-ShaoHua deleted the fix/sunset-notification-ux branch April 29, 2026 22:18
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@Will-ShaoHua@laileni-aws@ashishrp-aws
, '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: prevent Learn More from suppressing sunset toast and fix popup clipping - #549

Merged
ashishrp-aws merged 4 commits into
Amazon-Q-Developer:mainfrom
Will-ShaoHua:fix/sunset-notification-ux
Apr 29, 2026
Merged

fix: prevent Learn More from suppressing sunset toast and fix popup clipping#549
ashishrp-aws merged 4 commits into
Amazon-Q-Developer:mainfrom
Will-ShaoHua:fix/sunset-notification-ux

Conversation

@Will-ShaoHua

@Will-ShaoHuaWill-ShaoHua commented Apr 29, 2026

Copy link
Copy Markdown
Contributor

Summary

Two fixes for thesunset notification toast (PR #545):

  1. Learn More no longer suppresses future notifications — clicking "Learn More" previously called dismiss() which persisted the kiroSunsetNotificationDismissed key. Now it only opens the URL. The notification will reappear on next Eclipse launch until the user explicitly clicks "Dismiss".

  2. Fix notification popup height clipping — the button row (Learn More / Dismiss) was cut off because initializeBounds() computed height with unconstrained width (computeSize(SWT.DEFAULT, SWT.DEFAULT)). Since the popup is capped at MAX_WIDTH=400, text wraps and the actual height is taller than the unconstrained estimate. Now computes height with the constrained width so the layout engine accounts for wrapping + buttons.

Testing

  • Built and installed via dropins
  • Verified notification shows on every Eclipse launch until Dismiss is clicked
  • Verified Learn More opens the correct URL without suppressing future appearances
  • Verified buttons are fully visible (no clipping)

Add upload-artifact steps to the Maven build workflow so the plugin
JAR and p2 update site ZIP are downloadable from the Actions tab on
every PR and main push. Retained for 30 days.
…and fix popup clipping
- Learn More now opens the URL and closes the popup without persisting
the dismissed key, so the notification reappears on next launch
- Only the explicit Dismiss button suppresses future appearances
- Fix notification popup height calculation to use width-constrained
computeSize so wrapped text and button row are not clipped
- Learn More now only opens the URL without closing the popup
- Users can click Learn More, read the page, then come back and Dismiss
@Will-ShaoHuaWill-ShaoHua changed the title fix(notifications): prevent Learn More from suppressing sunset toast and fix popup clippingfix: prevent Learn More from suppressing sunset toast and fix popup clippingApr 29, 2026
@ashishrp-aws
ashishrp-aws merged commit 7b12d46 into Amazon-Q-Developer:mainApr 29, 2026
1 check passed
@Will-ShaoHua
Will-ShaoHua deleted the fix/sunset-notification-ux branch April 29, 2026 22:18
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@Will-ShaoHua@laileni-aws@ashishrp-aws