diff --git a/meshroom/ui/qml/Viewer/SequencePlayer.qml b/meshroom/ui/qml/Viewer/SequencePlayer.qml index 438ea355..90637ec6 100644 --- a/meshroom/ui/qml/Viewer/SequencePlayer.qml +++ b/meshroom/ui/qml/Viewer/SequencePlayer.qml @@ -23,6 +23,7 @@ FloatingPane { property var sortedViewIds: [] property var viewer: null readonly property alias sync3DSelected: m.sync3DSelected + property alias loading: fetchButton.checked function updateReconstructionView() { if (_reconstruction && m.frame >= 0 && m.frame < sortedViewIds.length) { @@ -323,6 +324,15 @@ FloatingPane { } } + MaterialToolButton { + id: fetchButton + + text: MaterialIcons.download_for_offline + ToolTip.text: "Fetch" + checkable: true + checked: false + } + MaterialToolButton { id: repeatButton diff --git a/meshroom/ui/qml/Viewer/Viewer2D.qml b/meshroom/ui/qml/Viewer/Viewer2D.qml index 47db7702..92af627e 100644 --- a/meshroom/ui/qml/Viewer/Viewer2D.qml +++ b/meshroom/ui/qml/Viewer/Viewer2D.qml @@ -461,7 +461,8 @@ FocusScope { 'cropFisheye': false, 'sequence': Qt.binding(function() { return ((root.enableSequencePlayer && _reconstruction && _reconstruction.viewpoints.count > 0) ? getSequence() : []) }), 'targetSize': Qt.binding(function() { return floatImageViewerLoader.targetSize }), - 'useSequence': Qt.binding(function() { return root.enableSequencePlayer && !useExternal && _reconstruction }) + 'useSequence': Qt.binding(function() { return root.enableSequencePlayer && !useExternal && _reconstruction }), + 'fetchingSequence': Qt.binding(function() { return sequencePlayer.loading }), }) } else { // Forcing the unload (instead of using Component.onCompleted to load it once and for all) is necessary since Qt 5.14 diff --git a/meshroom/ui/qml/WorkspaceView.qml b/meshroom/ui/qml/WorkspaceView.qml index 990a12bd..8b1b3a9a 100644 --- a/meshroom/ui/qml/WorkspaceView.qml +++ b/meshroom/ui/qml/WorkspaceView.qml @@ -157,7 +157,7 @@ Item { id: enableSequencePlayerAction text: "Enable Sequence Player" checkable: true - checked: false + checked: true } } }