1
0
Fork 0

messagesoverlay - Handle listeners added using prependListener

master
Martin Boonk 2024-04-30 00:11:40 +02:00
parent ddab537ea2
commit 297283a77c
1 changed files with 12 additions and 0 deletions

View File

@ -467,6 +467,16 @@ const backupOn = function(event, handler){
else origOn.call(Bangle, event, handler); else origOn.call(Bangle, event, handler);
}; };
const origPrependListener = Bangle.prependListener;
const backupPrependListener = function(event, handler){
if (EVENTS.includes(event)){
if (!backup[event])
backup[event] = [];
backup[event].unshift(handler);
}
else origPrependListener.call(Bangle, event, handler);
};
const origClearWatch = clearWatch; const origClearWatch = clearWatch;
const backupClearWatch = function(w) { const backupClearWatch = function(w) {
if (w) if (w)
@ -541,6 +551,7 @@ const restoreHandlers = function(){
global.setWatch = origSetWatch; global.setWatch = origSetWatch;
global.clearWatch = origClearWatch; global.clearWatch = origClearWatch;
Bangle.on = origOn; Bangle.on = origOn;
Bangle.prependListener = origPrependListener;
Bangle.removeListener = origRemove; Bangle.removeListener = origRemove;
Bangle.removeAllListeners = origRemoveAll; Bangle.removeAllListeners = origRemoveAll;
@ -588,6 +599,7 @@ const backupHandlers = function(){
global.setWatch = backupSetWatch; global.setWatch = backupSetWatch;
global.clearWatch = backupClearWatch; global.clearWatch = backupClearWatch;
Bangle.on = backupOn; Bangle.on = backupOn;
Bangle.prependListener = backupPrependListener;
Bangle.removeListener = backupRemove; Bangle.removeListener = backupRemove;
Bangle.removeAllListeners = backupRemoveAll; Bangle.removeAllListeners = backupRemoveAll;