Quiero hacer que la nueva pestaña se anule en una extensión de Chrome opcional. Un usuario debería poder ver un tablero en su página de nueva pestaña O, si no quiere, desactivarlo y usar el estándar de Chrome (u otra extensión).
Sin embargo, estoy teniendo problemas con esto.
Anteriormente, verificábamos esta configuración cada vez que se abría una nueva pestaña con la API actualizada de chrome.tabs.onUpdated . Sin embargo, a Google no le gustó esto sin el permiso de manifiesto chrome_url_overrides y sacó la extensión de la tienda web.
Después de agregar chrome_url_overrides , la configuración que muestra/oculta el tablero en la nueva pestaña se rompe y muestra el tablero en el 100 % de las pestañas nuevas.
¿Alguien tiene una solución para esto?
debe mantener chrome_url_overrides en el manifiesto y almacenar la elección del usuario (panel o predeterminado) en una variable localStorage o chrome.storage. Luego, deberá verificar esa variable en su archivo javascript de nueva página. Algo como esto:
if (typeof localStorage.behaviour !== 'undefined' && localStorage.behaviour == 'default' ) chrome.tabs.update({url:"chrome-search://local-ntp/local-ntp.html"}) else { //other stuff }si el usuario elige mantener la página predeterminada, deberá proporcionar una forma alternativa de cambiar de opinión agregando otra ruta al tablero. Una buena idea podría ser a través de una ventana emergente de extensión.