mirror of
https://github.com/HifiExperiments/overte.git
synced 2025-06-25 07:58:45 +02:00
Insure spectator camera preview is up when reopening tablet
This commit is contained in:
parent
1c9c36a8c8
commit
b87d69b15d
3 changed files with 12 additions and 6 deletions
|
@ -251,8 +251,8 @@ Rectangle {
|
||||||
// Spectator Camera Preview
|
// Spectator Camera Preview
|
||||||
Hifi.ResourceImageItem {
|
Hifi.ResourceImageItem {
|
||||||
id: spectatorCameraPreview;
|
id: spectatorCameraPreview;
|
||||||
visible: false;
|
visible: cameraToggleCheckbox.checked;
|
||||||
url: "resource://spectatorCameraFrame";
|
url: monitorShowsSwitch.checked ? "resource://spectatorCameraFrame" : "resource://hmdPreviewFrame";
|
||||||
ready: cameraToggleCheckBox.checked;
|
ready: cameraToggleCheckBox.checked;
|
||||||
mirrorVertically: true;
|
mirrorVertically: true;
|
||||||
anchors.fill: parent;
|
anchors.fill: parent;
|
||||||
|
|
|
@ -66,15 +66,20 @@ void ResourceImageItemRenderer::synchronize(QQuickFramebufferObject* item) {
|
||||||
_ready = resourceImageItem->getReady();
|
_ready = resourceImageItem->getReady();
|
||||||
readyChanged = true;
|
readyChanged = true;
|
||||||
}
|
}
|
||||||
|
bool visibleChanged = false;
|
||||||
|
if (_visible != resourceImageItem->isVisible()) {
|
||||||
|
_visible = resourceImageItem->isVisible();
|
||||||
|
visibleChanged=true;
|
||||||
|
}
|
||||||
_window = resourceImageItem->window();
|
_window = resourceImageItem->window();
|
||||||
if (_ready && !_url.isNull() && !_url.isEmpty() && (urlChanged || readyChanged || !_networkTexture)) {
|
|
||||||
|
if (_ready && _visible && !_url.isNull() && !_url.isEmpty() && (visibleChanged || urlChanged || readyChanged || !_networkTexture)) {
|
||||||
_networkTexture = DependencyManager::get<TextureCache>()->getTexture(_url);
|
_networkTexture = DependencyManager::get<TextureCache>()->getTexture(_url);
|
||||||
}
|
}
|
||||||
static const int UPDATE_TIMER_DELAY_IN_MS = 100; // 100 ms = 10 hz for now
|
static const int UPDATE_TIMER_DELAY_IN_MS = 100; // 100 ms = 10 hz for now
|
||||||
if (_ready && !_updateTimer.isActive()) {
|
if (_ready && _visible && !_updateTimer.isActive()) {
|
||||||
_updateTimer.start(UPDATE_TIMER_DELAY_IN_MS);
|
_updateTimer.start(UPDATE_TIMER_DELAY_IN_MS);
|
||||||
} else if (!_ready && _updateTimer.isActive()) {
|
} else if (!(_ready && _visible) && _updateTimer.isActive()) {
|
||||||
_updateTimer.stop();
|
_updateTimer.stop();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -30,6 +30,7 @@ public:
|
||||||
private:
|
private:
|
||||||
bool _ready;
|
bool _ready;
|
||||||
QString _url;
|
QString _url;
|
||||||
|
bool _visible;
|
||||||
|
|
||||||
NetworkTexturePointer _networkTexture;
|
NetworkTexturePointer _networkTexture;
|
||||||
QQuickWindow* _window;
|
QQuickWindow* _window;
|
||||||
|
|
Loading…
Reference in a new issue