GLOB_ORIG = "glob_orig_v2" function FS_dec_proto_v2(fn,fn_name) { return function() { clog("fdp0",fn_name,glob_react.Filmstrip._getThumbs()) dec_fns[fn_name] && dec_fns[fn_name].pre ? dec_fns[fn_name].pre({that:this, arguments}) : 1 if (fn_name == "updateDOMLocation") { this.updateDOMLocation2() } const ret = fn.apply(this, arguments); // console.log('FSD',fn_name,ret, [this,...arguments]); // console.log('FSD',fn_name); // console.trace('FSD_trc '+fn_name); // log_tb() // window.log_tb(new Error(),fn_name) // clog("rtscv1",glob_react.Filmstrip._getThumbs()) // resizeThumbnailsForCustomView(this,fn_name,arguments) clog("fdp2",fn_name,glob_react.Filmstrip._getThumbs()) const ret2 = dec_fns[fn_name] && dec_fns[fn_name].post ? dec_fns[fn_name].post({that:this, arguments}) : 0 if (ret2){ return ret2.ret } // const result = fn.apply(this, arguments); // console.log('Finished'); // clog("rtscv2",glob_react.Filmstrip._getThumbs()) return ret; } } function undec_class_v2(cls,cls_orig,cname){ var k,v var proto = cls_orig // var proto = glob_react.vidClass.LocalVideo.prototype // for ([k,v] of iter_desc(proto)){ for ([k,v] of Object.entries(proto)){ // glob_react.Filmstrip[k] = v // clog(k,v) cls.prototype[k] = v.value // clog(k,v) } } function _method_dec_v2(fn,fn_name){ return function() { // clog("fdp0",fn_name,glob_react.Filmstrip._getThumbs()) const ret1 = dec_fns[fn_name] && dec_fns[fn_name].pre ? dec_fns[fn_name].pre({that:this, args:arguments}) : 0 // if (fn_name == "updateDOMLocation") { // this.updateDOMLocation2() // } if (ret1){ return ret1.ret } const ret = fn.apply(this, arguments); // clog("MDV2",fn_name,{that:this, args:arguments,ret:ret}) // clog("MDV2 xyz",fn_name,{that:this, args:arguments,ret:ret}) // console.log('FSD',fn_name,ret, [this,...arguments]); // console.log('FSD',fn_name); // console.trace('FSD_trc '+fn_name); // log_tb() // window.log_tb(new Error(),fn_name) // clog("rtscv1",glob_react.Filmstrip._getThumbs()) // resizeThumbnailsForCustomView(this,fn_name,arguments) // clog("fdp2",fn_name,glob_react.Filmstrip._getThumbs()) const ret2 = dec_fns[fn_name] && dec_fns[fn_name].post ? dec_fns[fn_name].post({that:this, arguments}) : 0 // clog("MDEX",{ret1,ret2}) if (ret2){ return ret2.ret } // const result = fn.apply(this, arguments); // console.log('Finished'); // clog("rtscv2",glob_react.Filmstrip._getThumbs()) return ret; } } function dec_class_v2(cls,cls_orig,cname){ var k,v var proto = cls_orig // var proto = glob_react.vidClass.LocalVideo.prototype // for ([k,v] of iter_desc(proto)){ for ([k,v] of Object.entries(proto)){ // glob_react.Filmstrip[k] = v // clog(k,v) cls.prototype[k] = _method_dec_v2(v.value,k) // clog(k,v) } } function save_orig_class(cls){ var i,k,v var i2,k2,v2 var o var ret = {} // o = glob_react.vidClass.LocalVideo.prototype // o = tobj // o = glob_react.vidClass.LocalVideo // for ([k,v] of Object.entries(glob_react.vidClass)){ // for ([k,v] of Object.entries(o)){ // for ([k2,v2] of Object.entries(glob_react.vidClass)){ // for ([k2,v2] of Object.entries(classes)){ // clog("...",k2) // ret[k2] = {} o = cls.prototype for ([k,v] of iter_desc(o)){ // clog(k,v) ret[k]=v // clog(k2,k,v) } // } // clog("><",Object.getOwnPropertyDescriptors(o)) return ret } // dec_fns function init_cdec(){ let runonce = !window[GLOB_ORIG] // runonce = 1 // if (!window[GLOB_ORIG]){ // } window[GLOB_ORIG] = window[GLOB_ORIG] || { classes:{} } cdec.glob_orig = window[GLOB_ORIG] if (runonce){ window[GLOB_ORIG].classes["SharedVideoManager"] = cdec.get_class_methods(glob_react.SharedVideoManager) } } function undec_svm(){ cdec.undec_class(glob_react.SharedVideoManager,cdec.glob_orig.classes.SharedVideoManager) } function dec_svm(){ cdec.dec_class(glob_react.SharedVideoManager,cdec.glob_orig.classes.SharedVideoManager) } // function dec_svm(){} function onSharedVideoUpdate_mod(id, url, attributes) { // if we are sending the event ignore if (APP.conference.isLocalId(this.from)) { return; } if (!this.isSharedVideoShown) { this.onSharedVideoStart(id, url, attributes); return; } // eslint-disable-next-line no-negated-condition if (!this.player) { this.initialAttributes = attributes; } else { this.processVideoUpdate(this.player, attributes); } } dec_fns_v2 = { onSharedVideoUpdate:{ pre(o){ try { if (!o.that.player){ window.autoplay_probably_disabled ? autoplay_probably_disabled(o) : clog("NO fix implemented") clog("...autoplay_probably_disabled...") } /* clog("onSharedVideoUpdate pre arg",[...o.args]) // clog("onSharedVideoUpdate pre",o.args[2],o.that.isSharedVideoShown,!this.player) clog("onSharedVideoUpdate pre",o.args[2],!o.that.isSharedVideoShown,!o.that.player) // onSharedVideoUpdate_mod.apply(o.that, o.args); try { clog("osvu player",o.that.player) o.that.player.g.g.playerVars } catch (err){ clog("osvu err") } clog("onSharedVideoUpdate...",o.that.player) */ // return {} } catch (err){clog("dec fn err svm",err)} // return onSharedVideoUpdate_mod.apply(o.that, o.args); // return onSharedVideoUpdate_mod.apply(o.that, o.args); }, post_x(o){ try { // clog("onSharedVideoUpdate post",o) } catch (err){clog("dec fn err svm")} }, } } cdec = { get_class_methods:save_orig_class, undec_class:undec_class_v2, dec_class:dec_class_v2, glob_orig:window[GLOB_ORIG], } dec_fns = window.dec_fns || {} Object.assign(dec_fns,dec_fns_v2) init_cdec() dec_svm()