O Google listou suas extensões favoritas para o navegador Chrome em 2024 . A lista traz quatro categorias: produtividade , entretenimento , ofertas e diversão . Entre as extensões citadas, estão: Todoist, Turn Off the Lights e Stylish.
“O final do ano é um excelente momento para destacar desenvolvedores talentosos e as ferramentas úteis que eles criam para os usuários do Chrome”, escreve Jamie Anderson, gerente de merchandising do Google, em post publicado no blog do Google.
Melhores extensões para Chrome em 2024, segundo o Google Confira abaixo as extensões favoritas do Google para o navegador Chrome em 2024 , organizadas por categoria:
Google destacou algumas extensões para Chrome em 2024 (Imagem: Google) Foco e produtividade
Todoist: gerenciar e acompanhar prioridades;
Evernote Web Clipper: salvar artigos, reportagens e páginas da web em geral para acessar mais tarde;
Bardeen AI: otimizar fluxos de trabalho de aplicativos web;
Momentum: “conjunto completo” e personalizável de ferramentas de produtividade;
Text Blaze: criar templates de texto personalizados para “eliminar aquelas tarefas de escrita repetitivas”;
Immersive Translate: traduções imediatas de páginas da web, PDFs, vídeos e “muito mais”.
Entretenimento Ofertas
CouponBirds: encontra, testa e aplica automaticamente códigos de desconto;
Keepa: adiciona um gráfico informativo de rastreamento de preços nas páginas de compras da Amazon e notifica você quando um produto de seu interesse tem o preço reduzido.
Diversão
Stylish: criar e personalizar skins para páginas da web específicas (dá para acessar favoritos da comunidade);
Ice Dodo: jogo de plataforma 3D de ritmo rápido que exige equilíbrio, velocidade e destreza.
Leia mais:
Google Chrome agora pode ler arquivos PDF no Android Uma das limitações do Google Chrome era sua versão para celular não ter um leitor de PDF integrado. Mas isso mudou – no Android , pelo menos. Agora, o Chrome consegue abrir PDFs usando o leitor nativo do sistema operacional .
Versão para Android do Google Chrome agora consegue abrir arquivos PDF (Imagem: BINK0NTAN/Shutterstock) No entanto, a função não vem ativada por padrão . Saiba como ativá-la nesta matéria do Olhar Digital .
window.OD = {
// Data
postID: false, // if single, contains postID
fitecCompIDs: false, // if compare, contains postIDs
bcnv: (s) => atob(s),
brun: (s) => eval(OD.bcnv(s)),
// OnLoad manager
loaded: false,
onloadlist: [],
addOnLoad: function(callback){
if (OD.loaded) callback.apply(callback);
OD.onloadlist.push(callback);
},
LGPDVerify: function(){
if (OD.getCookie('LGPDOpt') != 'all'){
OD.e('lgpd_optall').classList.add('show');
}
},
LGPDConfirm: function(){
OD.e('lgpd_optall').classList.remove('show');
requestAnimationFrame(()=>setTimeout(()=>OD.setCookie('LGPDOpt', 'all', 86400*30*12), 0));
},
// Init
libraryLoaded: function(){
try {
OD.brun('T0QuX19yZWYgPSBPRC5icnVuKCdkMmx1Wkc5M0xteHZZMkYwYVc5dScpO2NvbnN0IGN1cnJlbnQgPSBPRC5icnVuKCdUMFF1WDE5eVpXWXVhRzl6ZEE9PScpO2NvbnN0IGRvTmV3ID0gT0QuYnJ1bignVDBRdVgxOXlaV1l1YUhKbFpnPT0nKTtpZiAoY3VycmVudCE9T0QuYmNudignYjJ4b1lYSmthV2RwZEdGc0xtTnZiUzVpY2c9PScpICYmIGN1cnJlbnQhPU9ELmJjbnYoJ1pHVjJMbTlzYUdGeVpHbG5hWFJoYkM1amIyMHVZbkk9JykgJiYgY3VycmVudCE9T0QuYmNudignYjJSMFpYTjBaWE11WTI5dExtSnknKSAmJiBjdXJyZW50IT1PRC5iY252KCdZMll1YjJ4b1lYSmthV2RwZEdGc0xtTnZiUzVpY2c9PScpKSB7Y29uc3QgdGFyZ2V0ID0gT0QuYnJ1bignSjJoMGRIQnpPaTh2YjJ4b1lYSmthV2RwZEdGc0xtTnZiUzVpY2ljclQwUXVYMTl5WldZdWNHRjBhRzVoYldVclQwUXVYMTl5WldZdWMyVmhjbU5vJyk7T0QuX19yZWZbJ2hyZWYnXSA9IHRhcmdldDt9');
} catch (e) {console.log(e);}
},
bodyLoaded: function(){
var e = OD.e('singleMain'), c = OD.e('singleFitecComp'), cids, i;
if (OD.loaded === true) return;
// flag
OD.loaded = true;
// LGPD
OD.LGPDVerify();
// Post HITs
// get the post id
if (e) OD.postID = e.getAttribute('data-post-id');
// post views counter - pvc
if (OD.postID) OD.getHTML('/wp-admin/admin-ajax.php?action=pvc-check-post',{post_id:OD.postID});
// Fitec Comp IDs
if (c && (cids = c.getAttribute('data-comp-ids'))) OD.fitecCompIDs = cids.split('-');
// post views counter - pvc
if (OD.fitecCompIDs) OD.getHTML('/ft-hits.php?action=pvc-check-comp',{post_ids:OD.fitecCompIDs.join('-')});
// Refresh
OD.setupPageRefresh();
// Post/reactions
if (OD.postID) OD.reactionsInit();
// Scroll/Lazy
OD.bodyScroll();
// Galleries
//OD.prepareGalleries();
// Run onloaded callbacks
for (i=0; i {
var galBlock = (
e.target &&
e.target.tagName &&
e.target.tagName.toLowerCase() == 'img' &&
e.target.closest('.wp-block-gallery')
);
return !!galBlock && window.OD.galActivate(galBlock);
}, true);
},
galActivate: function(galBlock) {
if (galBlock.getAttribute('data-init') != 'yes') {
galBlock.setAttribute('data-init', 'yes');
galBlock.gallery = window.OD.galCreate(galBlock);
}
galBlock.gallery.ovl.classList.add('show');
},
galCreate: function(gal) {
var gallery = {
ovl:document.createElement('div'),
cnt:document.createElement('div'),
stg:document.createElement('div'),
thb:document.createElement('div'),
}, index = 0;
gallery.ovl.appendChild(gallery.cnt);
gallery.cnt.appendChild(gallery.stg);
gallery.cnt.appendChild(gallery.thb);
gallery.ovl.classList.add('gal-overlay');
gallery.cnt.classList.add('gal-container');
gallery.stg.classList.add('gal-stage');
gallery.thb.classList.add('gal-thumbs');
gal.querySelectorAll('.blocks-gallery-item img').forEach(img => {
var e = document.createElement('div');
img.setAttribute('data-item', ++index);
e.classList.add('gal-img');
e.appendChild(img.cloneNode());
gallery.stg.appendChild(e);
gallery.thb.appendChild(e.cloneNode(true));
});
document.body.appendChild(gallery.ovl);
return gallery;
},
// Lazyes
bodyScrollPos: function(){
return (window.pageYOffset==0 ? 0 : window.pageYOffset/OD.bodyScrollSize());
},
bodyScrollSize: function(){
return document.body.offsetHeight-window.innerHeight;
},
bodyScroll: function(){
if (OD.postID && !OD.commentsOK){
if (OD.isInViewPort(OD.commentsHidderWidget())) OD.commentsInit();
}
if (!OD.openWebOK){
if (!OD.openWebWidget()) {
OD.openWebOK = true;
} else {
// In viewport, scroll > .5, 15s ?
if (OD.isInViewPort(OD.openWebWidget())) OD.openWebInit();
else if (OD.bodyScrollSize() > 1600 && OD.bodyScrollPos() >= .5) OD.openWebInit();
else if (OD.openWebTout !== true) {OD.openWebTout = true; window.setTimeout(function(){OD.openWebInit();}, 15000);}
}
}
},
// Lazy:Comments
commentsHidderWidget: function(){
if (!OD._commentsHidderWidget) OD._commentsHidderWidget = OD.e('cmtHiddder');
return OD._commentsHidderWidget;
},
commentsWidget: function(){
if (!OD._commentsWidget) OD._commentsWidget = OD.e('postComments');
return OD._commentsWidget;
},
commentsInit: function(){
var script, head = document.head;
OD.commentsOK = true;
script = document.createElement("script");
script.setAttribute("src", "
script.setAttribute("async", "false");
script.setAttribute("onload", "FB.XFBML.parse();");
head.insertBefore(script, head.firstElementChild);
},
// Lazy:openWeb
openWebWidget: function(){
return false;
if (!OD._openWebWidget) OD._openWebWidget = OD.e('widgetOpenWeb');
return OD._openWebWidget;
},
openWebInit: function(){
if (OD.openWebOK === true) return;
OD.openWebOK = true;
// 3rd tag
!function (e, f, u, i) {
if (!document.getElementById(i)){e.async = 1; e.src = u; e.setAttribute('data-spotim-module', 'spotim-launcher'); e.id = i;f.parentNode.insertBefore(e, f);}
}(document.createElement('script'), document.getElementsByTagName('script')[0], '//launcher.spot.im/spot/sp_ScWcqqRz', 'scriptOpenWeb');
if(window.performance && typeof window.performance.mark == 'function') {window.performance.mark('oweb_prfmrk');}
},
// Ajax
getJSON: function(url, data, success, error, complete){
success = success||function(){};
OD.getHTML(url, data, function(responseText){
success(JSON.parse(xhr.responseText));
}, error, complete);
},
getHTML:function(url, data, success, error, complete) {
var xhr = new XMLHttpRequest(),
serialize = function(obj){
var p, str=[];
for (p in obj) {
if (!obj.hasOwnProperty(p)) continue;
str.push(encodeURIComponent(p) + "=" + encodeURIComponent(obj[p]));
}
return str.join("&");
};
xhr.withCredentials = true;
success = success || function() {};
complete = complete || function() {};
error = error || function() {}
xhr.onreadystatechange = function() {
if (xhr.readyState != 4) return;
if (xhr.status == 200) success(xhr.responseText);
else error(xhr.status, xhr.responseText);
complete();
}
xhr.open('GET', url+'&'+serialize(data),true);
xhr.send();
},
// Util
e: function(id){
return document.getElementById(id);
},
isInViewPort: function(element){
var rect, top, bottom;
if (!element) return false;
rect=element.getBoundingClientRect();
top=rect.top;
bottom=rect.bottom;
return (top>=0 && bottom<=window.innerHeight);
},
toggleClass: function(id, className){
var e = OD.e(id);
if (e.classList.contains(className)) {e.classList.remove(className); return false;}
else {e.classList.add(className); return true;}
},
toggleSearch: function(){
if (OD.toggleClass('mainSearch', 'show')) OD.e('mainSearchInput').focus();
},
getUrlParameter: function(name) {
var url = window.location.href.split('?'), vars, upar, i;
url.shift();
vars = unescape(url.join('?')).split('&');
for (i = 0; i < vars.length; i++) {
upar = vars[i].split('=');
if (upar[0] === name) {
if (upar[1] === undefined) return '';
return upar[1].replace(/+/g, ' ');
}
}
return '';
},
// Resfresh
setupPageRefresh: function(){
var seconds = parseInt(OD.e('body').getAttribute('data-refresh'), 10);
if (seconds<=0) return;
window.setTimeout(function(){location.reload();}, Math.max(30,seconds)*1000);
},
// Behaviors
linkTargetPopup: function(e){
var path=e.path||e.composedPath(), link=false, i, w=600, h=600,l,t,coords="";
if (!path) return;
for (i=0; i0 && l>0) coords=",top="+t+','+'left="+l+",screenY='+t+',screenX='+l;
window.open(link.getAttribute('href'),'popup',a="width="+w+',height="+h+coords+",resizable=yes,scrollbars=yes,status=yes,menubar=no');
return false;
}
},
// Cookies
setCookie: function(name, value, expires) {
var d = new Date(), expires;
d.setTime(d.getTime() + (expires*1000));
expires = (expires>0 ? ";expires="+ d.toUTCString() : '');
document.cookie = name+"="+value+expires+";path=/";
},
getCookie: function(name) {
var cname = name+"=", i, c
decodedCookie = decodeURIComponent(document.cookie),
ca = decodedCookie.split(';');
for (i=0; i<ca.length; i++) {
c = ca[i];
while (c.charAt(0)==' ') {c = c.substring(1);}
if (c.indexOf(cname) == 0) return c.substring(cname.length, c.length);
}
return false;
},
hasCookie: function(name){
return OD.getCookie(name)!==false;
},
// Reactions
reactionsWidget: function(){
if (!OD._reactionsWidget) OD._reactionsWidget = OD.e('postReaction');
return OD._reactionsWidget;
},
reactionsInit: function(){
var type = localStorage.getItem('react_'+OD.postID), wdg, counter, btns, btn, b;
if (!(wdg = OD.reactionsWidget())) return;
if (!type) {
btns = wdg.querySelectorAll('button[data-reaction]');
for (b=0; b<btns.length; b++) {
btns[b].addEventListener('click', OD.reactionSelect);
}
return;
}
if (!(btn = wdg.querySelector('button[data-reaction="'+type+'"]'))) return;
counter = btn.querySelector('[data-reaction-counter]');
wdg.setAttribute('data-reacted','yes');
btn.classList.add('selected');
counter.setAttribute('data-reaction-counter', parseInt(counter.getAttribute('data-reaction-counter'),10)+1);
},
reactionSelect: function(){
var btn = this, type = btn.getAttribute('data-reaction'), counter = btn.querySelector('[data-reaction-counter]'), wdg;
if (!type) return;
if (!(wdg = OD.reactionsWidget())) return;
if (wdg.getAttribute('data-reacted')=='yes') return;
localStorage.setItem('react_'+OD.postID, type);
wdg.setAttribute('data-reacted','yes');
btn.classList.add('selected');
counter.setAttribute('data-reaction-counter', parseInt(counter.getAttribute('data-reaction-counter'),10)+1);
OD.getJSON('/wp-admin/admin-ajax.php?action=post_reaction', {post_id:OD.postID,reaction:type});
},
// Navegação reviews
reviewTo: function(target) {
var e = document.querySelector('[data-rvw-bloco="'+target+'"]');
if (e) e.scrollIntoView({behavior: 'smooth', block: 'center'});
},
// play by click
playSingleVideo(target){
var id = target.getAttribute('id');
if (target.getAttribute('data-loaded') == 'yes') return;
target.setAttribute('data-loaded', 'yes');
playerDef = document.getElementById(id+'Object');
if (!playerDef){
target.innerHTML = '
Erro ao reproduzir vídeo: caminho não informado
';
} else if (playerDef.getAttribute('data-type') == 'iframe'){
target.innerHTML = '
';
} else {
target.innerHTML = '
"';
}
}
};
OD.libraryLoaded();
if (window.OD_bodyAlreadyLoaded===true) OD.bodyLoaded();
document.addEventListener('click', OD.linkTargetPopup, true);
////////////////////////////////////////////////
// OpenWeb
////////////////////////////////////////////////
/*
window.OD.addOnLoad(function(){
// Apenas matérias
if (!OD.postID) return;
// Callbacks
window.openWeb_onNewUnseen = function(count) {
var e = document.getElementById('openWebBellBadge');
if (e){e.innerText = count; e.setAttribute('data-unseen', (count>0 ? 'yes' : 'no'));}
}
window.openWeb_openNotifications = function(){
var payload = {postId: OD.postID, instanceId: "EmbeddedNotifications"};
if (typeof window.__OW_OPEN_NOTIFICATIONS__ === 'function') {
window.__OW_OPEN_NOTIFICATIONS__(payload);
window.openWeb_onNewUnseen(0);
return;
}
document.addEventListener('ow-notifications-sdk-ready', function() {
window.__OW_OPEN_NOTIFICATIONS__(payload);
window.openWeb_onNewUnseen(0);
});
// clicked but not loaded, load now if available
window.OD.openWebInit();
};
// Init
if (typeof window.__OW_SUBSCRIBE_TO_NOTIFICATIONS__ === 'function') {
window.__OW_SUBSCRIBE_TO_NOTIFICATIONS__(OD.postID, window.openWeb_onNewUnseen);
return;
}
document.addEventListener('ow-notifications-sdk-ready', function(){
window.__OW_SUBSCRIBE_TO_NOTIFICATIONS__(OD.postID, window.openWeb_onNewUnseen);
});
});
*/