HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
da2x
EdgeDeflector
NSIS2019–2024
da2x / EdgeDeflector · Archived

EdgeDeflector

A tiny helper application to force Windows 10 to use your preferred web browser instead of ignoring the setting to promote Microsoft Edge. Only runs for a microsecond when needed.

7Distinct people
9Mentions
0Explicit recommenders
2.8KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

A tiny helper application to force Windows 10 to use your preferred web browser instead of ignoring the setting to promote Microsoft Edge. Only runs for a microsecond when needed.

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 1:49:46 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year9 dated mentions

Observed mentions: 2019-05-02 07:33:56 UTC to 2024-03-28 19:50:16 UTC.

0123452019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments20192020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 5 mentions; 0 submissions, 5 comments20212022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2024

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC202
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC000
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC505
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC000
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC101
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC101

What Hacker News says

9 sources
> Now I increasingly see it as collaborating with a hostile and adversarial marketing giant. I'm genuinely stunned that they're still getting away with it: flooding the user with "switch to Edge!"[0] popups at every opportunity is begging for legal trouble; they are very clearly using the presence of their OS to boost Edge market share. I'm sure you're aware, but that's just one of the ways they force Edge on the end-user. As of now, they've made it harder to change browsers[1] (which was then reverted), forced Search[2] and Settings (among others) links to open in Edge with Bing, deliberately broke software that undoes this[3] (EdgeDeflector was later abandoned[6]), added full-screen interstitial adverts for Edge[4] and plenty more. Once the media gets wind of the new changes, the most common backpedal is that "this feature is just bein
Read the rest
g tested for Insiders". If they weren't intent upon rolling it out, why would they write the code for the Insiders branch in the first place? A very poor excuse. This is not to mention that most nags are in stable now. All this is monopolistic at best, and downright illegal at worst. With a bit more time, I could probably find more of these. I definitely remember the occassional Edge popup nag when you were using Firefox or Chrome, wherein the nag would proudly proclaim that Edge is much lighter on resources. EDIT: Found it[5]. [0]: https://news.thewindowsclub.com/windows-10-warns-users-to-us... [0.1]: https://www.neowin.net/news/microsoft-says-its-own-edge-brow... [0.2]: https://www.gadgets360.com/laptops/news/microsoft-windows-10... [0.3]: https://www.theregister.com/2024/03/15/chrome_bing_microsoft... [0.4]: https://www.theverge.com/23935029/microsoft-edge-forced-wind... (List of just some nags.) [0.5]: https://old.reddit.com/r/Windows10/comments/f0psu6/this_must... (Inline advert for Edge in Search.) [0.6]: https://imgur.com/vgrZaEp (Image of a different popup in Windows Search encouraging a switch to Edge.) [0.7]: https://www.windowslatest.com/2020/09/30/windows-search-noti... [1]: https://www.howtogeek.com/744102/windows-11-makes-it-hard-to... [1.1]: https://www.theverge.com/2021/12/3/22815209/microsoft-window... [2]: https://superuser.com/questions/1338909/how-to-change-the-br... [3]: https://www.theverge.com/2021/11/15/22782802/microsoft-block... [3.1]: https://www.ghacks.net/2021/11/16/this-simple-script-will-ma... [4]: https://www.techradar.com/news/think-youre-annoying-windows-... (A full-screen advert to switch to Edge. I believe this was after an update restarted the machine.) [5]: https://www.laptopmag.com/articles/windows-10-anti-chrome-al... (Popup of Windows 10 claiming Edge saves battery-life; this is shown when Google Chrome is open.) [6]: https://github.com/da2x/EdgeDeflector (Abandoned on Mar 23, 2022.) (Apologies for the link farm, but I believe it's important to remember what they've done so far.)
In How a Windows shake-up could position Microsoft to capitalize on AI PCs
Great write-up! I did want to share a brief response to the following, however: > The new implementations in Brave and Firefox follow the exact parsing logic I wrote for EdgeDeflector. It’s not the only way to parse them, it’s not the best way to parse them, but it’s the way every third-party implementation now parses them. Neither codebases attribute the code to EdgeDeflector, although both are clearly inspired by it. (Don’t get me wrong, I’m fine with this.) With all due respect to the author, I don't believe this is an accurate statement. While the problem being solved (parsing a microsoft-edge: protocol string) is quite simple, there are still noticeable differences in how EdgeDeflector, Brave, and Firefox have chosen to tackle this process. EdgeDeflector (https://github.com/da2x/EdgeDeflector/blob/469a0c8523c6bb7fb...) checks to see
Read the rest
not only that the string begins with "microsoft-edge:", but also that it does not contain any space character (" "). The latter check *is not* conducted by Brave (https://github.com/brave/brave-core/blob/8a93d29c45800719c9e...) or Firefox (https://phabricator.services.mozilla.com/differential/change...). EdgeDeflector performs an initial case-insensitive check for the protocol, while Brave and Firefox do not (both expect lower-case characters). There is a code path in EdgeDeflector where a case-sensitive check may also be conducted. EdgeDeflector and Brave both remove the "microsoft-edge:" prefix from the input, but Brave performs and additional check at this point. If the resulting string is empty, Brave stops attempting to extract a workable URL. EdgeDeflector performs no such empty-string test, instead proceeding to check whether the resulting string starts with "https://" or "http://" (a case-insensitive match). Firefox also proceeds to check whether the string starts with "https:" or "http:", but in a case-sensitive manner. Brave, on the other hand, proceeds to check whether the resulting string starts with a ? character. If the string doesn't start with a ? character, Brave attempts to parse the string as a URL and initiate navigation. If the string begins with a ? character, Brave removes that character and proceeds to split the string into chunks on occurrences of the & character. With the string split into chunks, Brave cycles over each piece looking for one that starts with "url=". If a match is found, Brave attempts to parse everything after the = character as a URL. If it succeeds, that URL is visited. Firefox and EdgeDeflector do take a similar approach in these later steps. While EdgeDeflector utilizes .NET's `HttpUtility.ParseQueryString` to parse and extract the URL value, Firefox passes the string to the URLSearchParams constructor, and retrieves the "url" parameter from the resulting object. Brave is the odd-man out on this step, opting instead to split the string, and cycle through to the nearest matching chunk. While there are similarities here and there (given the simplicity of the task itself), there are stark differences as well. One thing is certain, however, Brave and Firefox both explicitly refer to EdgeDeflector as leading this effort to restore liberty to users impacted by Microsoft's heavy-handed approach to shoehorning users back into Microsoft Edge.
In Brave and Firefox to intercept links that force-open in Microsoft Edge

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.