mirror of
				https://github.com/mozilla/gecko-dev.git
				synced 2025-10-31 16:28:05 +02:00 
			
		
		
		
	
		
			
				
	
	
		
			36 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| /* This Source Code Form is subject to the terms of the Mozilla Public
 | |
|  * License, v. 2.0. If a copy of the MPL was not distributed with this
 | |
|  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 | |
| 
 | |
| "use strict";
 | |
| 
 | |
| /**
 | |
|  * Bug 1889326 - Office 365 email handling prompt autohide
 | |
|  *
 | |
|  * This site patch prevents the notification bar on Office 365
 | |
|  * apps from popping up on each page-load, offering to handle
 | |
|  * email with Outlook.
 | |
|  */
 | |
| 
 | |
| /* globals exportFunction */
 | |
| 
 | |
| const warning =
 | |
|   "Office 365 Outlook email handling prompt has been hidden. See https://bugzilla.mozilla.org/show_bug.cgi?id=1889326 for details.";
 | |
| 
 | |
| const localStorageKey = "mailProtocolHandlerAlreadyOffered";
 | |
| 
 | |
| const nav = navigator.wrappedJSObject;
 | |
| const { registerProtocolHandler } = nav;
 | |
| const { localStorage } = window.wrappedJSObject;
 | |
| 
 | |
| Object.defineProperty(navigator.wrappedJSObject, "registerProtocolHandler", {
 | |
|   value: exportFunction(function (scheme, url, title) {
 | |
|     if (localStorage.getItem(localStorageKey)) {
 | |
|       console.info(warning);
 | |
|       return undefined;
 | |
|     }
 | |
|     registerProtocolHandler.call(nav, scheme, url, title);
 | |
|     localStorage.setItem(localStorageKey, true);
 | |
|     return undefined;
 | |
|   }, window),
 | |
| });
 | 
