diff --git a/scripts/simplifiedUI/ui/simplifiedNametag/resources/modules/nameTagListManager.js b/scripts/simplifiedUI/ui/simplifiedNametag/resources/modules/nameTagListManager.js index 4700d7528c..f9bb5de9b0 100644 --- a/scripts/simplifiedUI/ui/simplifiedNametag/resources/modules/nameTagListManager.js +++ b/scripts/simplifiedUI/ui/simplifiedNametag/resources/modules/nameTagListManager.js @@ -22,6 +22,31 @@ var SECONDS_IN_MINUTE = 60; // Delete after 5 minutes in case a nametag is hanging around in on mode var ALWAYS_ON_MAX_LIFETIME_IN_SECONDS = 5 * SECONDS_IN_MINUTE; +// ************************************* +// START STARTUP/SHUTDOWN +// ************************************* +// #region STARTUP/SHUTDOWN + + +// Connect the camera mode updated signal on startup +function startup() { + Camera.modeUpdated.connect(handleCameraModeChanged); + cameraModeUpdatedSignalConnected = true; + + Script.scriptEnding.connect(shutdown); +} + +startup(); + +function shutdown() { + maybeDisconnectCameraModeUpdatedSignal(); +} + + +// ************************************* +// END STARTUP/SHUTDOWN +// ************************************* + // ************************************* // START UTILTY // ************************************* @@ -688,14 +713,11 @@ var avatarNametagMode = "on"; function handleAvatarNametagMode(newAvatarNametagMode) { if (avatarNametagMode === "alwaysOn") { handleAlwaysOnMode(false); - maybeDisconnectCameraModeUpdatedSignal(); } avatarNametagMode = newAvatarNametagMode; if (avatarNametagMode === "alwaysOn") { handleAlwaysOnMode(true); - Camera.modeUpdated.connect(handleCameraModeChanged); - cameraModeUpdatedSignalConnected = true; } if (avatarNametagMode === "off" || avatarNametagMode === "on") {