From 30cd24ed10019aca2ef03babc3e35a85a599b0f1 Mon Sep 17 00:00:00 2001 From: Tomi Korpipaa Date: Wed, 21 Feb 2018 14:07:56 +0200 Subject: Fix remote deployment for main uip Task-number: QT3DS-1194 Change-Id: I75c6fca664bfc43da400ec25bda201d5cb9a487a Reviewed-by: Miikka Heikkinen --- src/Viewer/Qt3DViewer/viewer.cpp | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) (limited to 'src/Viewer') diff --git a/src/Viewer/Qt3DViewer/viewer.cpp b/src/Viewer/Qt3DViewer/viewer.cpp index 087a6f61..28896ad9 100644 --- a/src/Viewer/Qt3DViewer/viewer.cpp +++ b/src/Viewer/Qt3DViewer/viewer.cpp @@ -95,14 +95,26 @@ void Viewer::disconnectRemote() m_remoteDeploymentReceiver->disconnectRemote(); } -// Used to load files via command line +// Used to load files via command line and when using remote deployment void Viewer::loadFile(const QString &filename) { - QFileInfo fileInfo(filename); + QString targetFilename = filename; + // Try to find the application (*.uia) file for loading instead of the presentation (*.uip) + // in case we are connected to remote sender. + if (isConnected() && targetFilename.endsWith(QStringLiteral(".uip"))) { + targetFilename.chop(4); + targetFilename.append(QStringLiteral(".uia")); + QFileInfo targetfileInfo(targetFilename); + // uia not found, revert to given uip + if (!targetfileInfo.exists()) + targetFilename = filename; + } + + QFileInfo fileInfo(targetFilename); if (!fileInfo.exists()) { setContentView(DefaultView); m_qmlRootObject->setProperty( - "error", QVariant(tr("Tried to load nonexistent file %1").arg(filename))); + "error", QVariant(tr("Tried to load nonexistent file %1").arg(targetFilename))); return; } -- cgit v1.2.3