mirror of
https://github.com/overte-org/overte.git
synced 2025-08-11 07:25:43 +02:00
allow movement during .gif recording
This commit is contained in:
parent
5188de924f
commit
2c9046742e
1 changed files with 16 additions and 7 deletions
|
@ -14,6 +14,7 @@ var SNAPSHOT_DELAY = 500; // 500ms
|
||||||
var toolBar = Toolbars.getToolbar("com.highfidelity.interface.toolbar.system");
|
var toolBar = Toolbars.getToolbar("com.highfidelity.interface.toolbar.system");
|
||||||
var resetOverlays;
|
var resetOverlays;
|
||||||
var reticleVisible;
|
var reticleVisible;
|
||||||
|
var clearOverlayWhenMoving;
|
||||||
var button = toolBar.addButton({
|
var button = toolBar.addButton({
|
||||||
objectName: "snapshot",
|
objectName: "snapshot",
|
||||||
imageURL: Script.resolvePath("assets/images/tools/snap.svg"),
|
imageURL: Script.resolvePath("assets/images/tools/snap.svg"),
|
||||||
|
@ -100,8 +101,13 @@ function snapshotShared(errorMessage) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function onClicked() {
|
function onClicked() {
|
||||||
|
// Raising the desktop for the share dialog at end will interact badly with clearOverlayWhenMoving.
|
||||||
|
// Turn it off now, before we start futzing with things (and possibly moving).
|
||||||
|
clearOverlayWhenMoving = MyAvatar.getClearOverlayWhenMoving(); // Do not use Settings. MyAvatar keeps a separate copy.
|
||||||
|
MyAvatar.setClearOverlayWhenMoving(false);
|
||||||
|
|
||||||
// update button states
|
// update button states
|
||||||
resetOverlays = Menu.isOptionChecked("Overlays");
|
resetOverlays = Menu.isOptionChecked("Overlays"); // For completness. Certainly true if the button is visible to be clicke.
|
||||||
reticleVisible = Reticle.visible;
|
reticleVisible = Reticle.visible;
|
||||||
Reticle.visible = false;
|
Reticle.visible = false;
|
||||||
Window.snapshotTaken.connect(resetButtons);
|
Window.snapshotTaken.connect(resetButtons);
|
||||||
|
@ -109,7 +115,7 @@ function onClicked() {
|
||||||
button.writeProperty("buttonState", 0);
|
button.writeProperty("buttonState", 0);
|
||||||
button.writeProperty("defaultState", 0);
|
button.writeProperty("defaultState", 0);
|
||||||
button.writeProperty("hoverState", 2);
|
button.writeProperty("hoverState", 2);
|
||||||
|
|
||||||
// hide overlays if they are on
|
// hide overlays if they are on
|
||||||
if (resetOverlays) {
|
if (resetOverlays) {
|
||||||
Menu.setIsOptionChecked("Overlays", false);
|
Menu.setIsOptionChecked("Overlays", false);
|
||||||
|
@ -145,10 +151,6 @@ function isDomainOpen(id) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function resetButtons(pathStillSnapshot, pathAnimatedSnapshot, notify) {
|
function resetButtons(pathStillSnapshot, pathAnimatedSnapshot, notify) {
|
||||||
// show overlays if they were on
|
|
||||||
if (resetOverlays) {
|
|
||||||
Menu.setIsOptionChecked("Overlays", true);
|
|
||||||
}
|
|
||||||
// show hud
|
// show hud
|
||||||
toolBar.writeProperty("visible", true);
|
toolBar.writeProperty("visible", true);
|
||||||
Reticle.visible = reticleVisible;
|
Reticle.visible = reticleVisible;
|
||||||
|
@ -158,6 +160,10 @@ function resetButtons(pathStillSnapshot, pathAnimatedSnapshot, notify) {
|
||||||
button.writeProperty("defaultState", 1);
|
button.writeProperty("defaultState", 1);
|
||||||
button.writeProperty("hoverState", 3);
|
button.writeProperty("hoverState", 3);
|
||||||
Window.snapshotTaken.disconnect(resetButtons);
|
Window.snapshotTaken.disconnect(resetButtons);
|
||||||
|
// show overlays if they were on
|
||||||
|
if (resetOverlays) {
|
||||||
|
Menu.setIsOptionChecked("Overlays", true);
|
||||||
|
}
|
||||||
|
|
||||||
// A Snapshot Review dialog might be left open indefinitely after taking the picture,
|
// A Snapshot Review dialog might be left open indefinitely after taking the picture,
|
||||||
// during which time the user may have moved. So stash that info in the dialog so that
|
// during which time the user may have moved. So stash that info in the dialog so that
|
||||||
|
@ -172,7 +178,10 @@ function resetButtons(pathStillSnapshot, pathAnimatedSnapshot, notify) {
|
||||||
openFeedAfterShare: shouldOpenFeedAfterShare()
|
openFeedAfterShare: shouldOpenFeedAfterShare()
|
||||||
}
|
}
|
||||||
]);
|
]);
|
||||||
}
|
if (clearOverlayWhenMoving) {
|
||||||
|
MyAvatar.setClearOverlayWhenMoving(true); // not until after the share dialog
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
button.clicked.connect(onClicked);
|
button.clicked.connect(onClicked);
|
||||||
Window.snapshotShared.connect(snapshotShared);
|
Window.snapshotShared.connect(snapshotShared);
|
||||||
|
|
Loading…
Reference in a new issue