Skip to main content

Posts

Showing posts with the label Edge

Fixing PWA Notification Badges Not Updating in Microsoft Edge on Windows 11

  You have built a Progressive Web App, implemented the necessary background syncing, and deployed your notification logic. On macOS with Chrome, the dock icon updates perfectly. However, when users install your application via Microsoft Edge, the badge counter refuses to appear on the Windows 11 taskbar. Calling  navigator.setAppBadge()  seems to fail silently. There are no console errors, the Service Worker is active, and push messages arrive on time. This is a known architectural quirk regarding how Microsoft Edge handles Progressive Web App desktop integration with the Windows OS shell. Resolving this requires modifying how your Service Worker handles background execution lifecycles and strictly managing API promises. The Root Cause: The Edge and Windows Shell Bridge When a user installs a PWA via Microsoft Edge on Windows 11, the browser does not merely create a shortcut. It generates a lightweight Appx package under the hood. This package binds the web application d...

Building Microsoft Edge Sidebar Apps: Integrating AI Tools with the Copilot Framework

  Developers architecting extensions for modern browsers face a distinct architectural challenge when moving from traditional popups to persistent interfaces. Building native-feeling applications within the Edge Sidebar requires navigating isolated execution contexts, asynchronous message passing, and strict Manifest V3 limitations. When attempting to execute Microsoft Copilot extension development or similar AI browser integration, engineers often encounter state desynchronization. The sidebar interface fails to reflect real-time changes in the active DOM, or the integration introduces severe latency during AI inference, rendering the tool unusable for fast-paced enterprise productivity software. This guide provides a production-ready architecture for building an Edge Sidebar application that securely extracts active tab context, interfaces with an AI endpoint, and manages persistent state without blocking the browser's main thread. The Architectural Root Cause of Disconnected Sid...