@ -450,16 +450,9 @@ Ext.define('Rambox.ux.WebView',{
css _inject += custom _css ;
}
}
}
// Prevent Title blinking (some services have) and only allow when the title have an unread regex match: "(3) Title"
if ( Ext . getStore ( 'ServicesList' ) . getById ( me . record . get ( 'type' ) ) . get ( 'titleBlink' ) ) {
var js _preventBlink = 'var originalTitle=document.title;Object.defineProperty(document,"title",{configurable:!0,set:function(a){null===a.match(new RegExp("[(]([0-9•]+)[)][ ](.*)","g"))&&a!==originalTitle||(document.getElementsByTagName("title")[0].innerHTML=a)},get:function(){return document.getElementsByTagName("title")[0].innerHTML}});' ;
js _inject += js _preventBlink ;
}
// Use passive listeners by default
if ( me . record . get ( 'passive_event_listeners' ) )
let passive _event _listeners = Ext . getStore ( 'ServicesList' ) . getById ( me . record . get ( 'type' ) ) . get ( 'passive_event_listeners' ) ;
if ( passive _event _listeners && me . record . get ( 'passive_event_listeners' ) )
{
// 3rdparty: This uses npm 'default-passive-events' 1.0.10 inline. Link to license:
// https://github.com/zzarcon/default-passive-events/blob/master/LICENSE
@ -468,11 +461,20 @@ Ext.define('Rambox.ux.WebView',{
}
// Use slowed timers by default
if ( me . record . get ( 'slowed_timers' ) )
let slowed _timers = Ext . getStore ( 'ServicesList' ) . getById ( me . record . get ( 'type' ) ) . get ( 'slowed_timers' ) ;
if ( slowed _timers && me . record . get ( 'slowed_timers' ) )
{
const slowed _timers = ` window.setTimeout=window.setTimeout;const __setTimeout=window.setTimeout;window.setTimeout=function(func,time){let a=time;return a<100&&(a=100),__setTimeout(func,a)}; ` ;
js _inject += '{' + slowed _timers + '}' ;
}
}
// Prevent Title blinking (some services have) and only allow when the title have an unread regex match: "(3) Title"
if ( Ext . getStore ( 'ServicesList' ) . getById ( me . record . get ( 'type' ) ) . get ( 'titleBlink' ) ) {
var js _preventBlink = 'var originalTitle=document.title;Object.defineProperty(document,"title",{configurable:!0,set:function(a){null===a.match(new RegExp("[(]([0-9•]+)[)][ ](.*)","g"))&&a!==originalTitle||(document.getElementsByTagName("title")[0].innerHTML=a)},get:function(){return document.getElementsByTagName("title")[0].innerHTML}});' ;
js _inject += js _preventBlink ;
}
// Scroll always to top (bug)
js _inject += 'document.body.scrollTop=0;' ;