diff --git a/cmake/templates/NSIS.template.in b/cmake/templates/NSIS.template.in index 568418afe1..d65612351c 100644 --- a/cmake/templates/NSIS.template.in +++ b/cmake/templates/NSIS.template.in @@ -571,7 +571,9 @@ Function HandlePostInstallOptions ; both launches use the explorer trick in case the user has elevated permissions for the installer ; it won't be possible to use this approach if either application should be launched with a command line param ${If} ${SectionIsSelected} ${@SERVER_COMPONENT_NAME@} - Exec '"$WINDIR\explorer.exe" "$INSTDIR\@CONSOLE_INSTALL_SUBDIR@\@CONSOLE_WIN_EXEC_NAME@"' + ; create shortcut with ARGUMENTS + CreateShortCut "$TEMP\SandboxShortcut.lnk" "$INSTDIR\@CONSOLE_INSTALL_SUBDIR@\@CONSOLE_WIN_EXEC_NAME@" "-- --launchInterface" + Exec '"$WINDIR\explorer.exe" "$TEMP\SandboxShortcut.lnk"' ${Else} Exec '"$WINDIR\explorer.exe" "$INSTDIR\@INTERFACE_WIN_EXEC_NAME@"' ${EndIf} diff --git a/cmake/templates/VersionInfo.rc.in b/cmake/templates/VersionInfo.rc.in new file mode 100644 index 0000000000..ad192ed87d --- /dev/null +++ b/cmake/templates/VersionInfo.rc.in @@ -0,0 +1,22 @@ +// Language and character set information as described at +// https://msdn.microsoft.com/en-us/library/windows/desktop/aa381049(v=vs.85).aspx +#define US_ENGLISH_UNICODE "040904B0" + +// More information about the format of this file can be found at +// https://msdn.microsoft.com/en-us/library/windows/desktop/aa381058(v=vs.85).aspx +1 VERSIONINFO +BEGIN + BLOCK "StringFileInfo" + BEGIN + BLOCK US_ENGLISH_UNICODE + BEGIN + VALUE "CompanyName", "@BUILD_ORGANIZATION@" + VALUE "FileDescription", "@APP_FULL_NAME@" + VALUE "FileVersion", "@BUILD_VERSION@" + VALUE "InternalName", "@TARGET_NAME@" + VALUE "OriginalFilename", "@TARGET_NAME@.exe" + VALUE "ProductName", "@APP_FULL_NAME@" + VALUE "ProductVersion", "@BUILD_VERSION@" + END + END +END diff --git a/interface/CMakeLists.txt b/interface/CMakeLists.txt index b43376c374..131c4ee509 100644 --- a/interface/CMakeLists.txt +++ b/interface/CMakeLists.txt @@ -133,8 +133,12 @@ elseif (WIN32) set(CONFIGURE_ICON_RC_OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/Icon.rc") configure_file("${HF_CMAKE_DIR}/templates/Icon.rc.in" ${CONFIGURE_ICON_RC_OUTPUT}) + set(APP_FULL_NAME "High Fidelity Interface") + set(CONFIGURE_VERSION_INFO_RC_OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/VersionInfo.rc") + configure_file("${HF_CMAKE_DIR}/templates/VersionInfo.rc.in" ${CONFIGURE_VERSION_INFO_RC_OUTPUT}) + # add an executable that also has the icon itself and the configured rc file as resources - add_executable(${TARGET_NAME} WIN32 ${INTERFACE_SRCS} ${QM} ${CONFIGURE_ICON_RC_OUTPUT}) + add_executable(${TARGET_NAME} WIN32 ${INTERFACE_SRCS} ${QM} ${CONFIGURE_ICON_RC_OUTPUT} ${CONFIGURE_VERSION_INFO_RC_OUTPUT}) if (NOT DEV_BUILD) add_custom_command( diff --git a/interface/resources/qml/UpdateDialog.qml b/interface/resources/qml/UpdateDialog.qml index ca3a2da577..5e05601ce4 100644 --- a/interface/resources/qml/UpdateDialog.qml +++ b/interface/resources/qml/UpdateDialog.qml @@ -20,10 +20,10 @@ ScrollingWindow { anchors.centerIn: parent UpdateDialog { id: updateDialog - + implicitWidth: backgroundRectangle.width implicitHeight: backgroundRectangle.height - + readonly property int contentWidth: 500 readonly property int logoSize: 60 readonly property int borderWidth: 30 @@ -36,7 +36,7 @@ ScrollingWindow { signal triggerBuildDownload signal closeUpdateDialog - + Rectangle { id: backgroundRectangle color: "#ffffff" @@ -47,7 +47,7 @@ ScrollingWindow { Image { id: logo - source: "../images/interface-logo.svg" + source: "../images/hifi-logo.svg" width: updateDialog.logoSize height: updateDialog.logoSize anchors { @@ -65,7 +65,7 @@ ScrollingWindow { topMargin: updateDialog.borderWidth top: parent.top } - + Rectangle { id: header width: parent.width - updateDialog.logoSize - updateDialog.inputSpacing diff --git a/server-console/packager.js b/server-console/packager.js index bc3b8989d2..89bcd7cb71 100644 --- a/server-console/packager.js +++ b/server-console/packager.js @@ -37,7 +37,7 @@ if (osType == "Darwin") { } else if (osType == "Windows_NT") { options["version-string"] = { CompanyName: "High Fidelity, Inc.", - FileDescription: SHORT_NAME, + FileDescription: FULL_NAME, ProductName: FULL_NAME, OriginalFilename: EXEC_NAME + ".exe" } diff --git a/server-console/src/main.js b/server-console/src/main.js index d8a6f30ac1..6c82230601 100644 --- a/server-console/src/main.js +++ b/server-console/src/main.js @@ -868,6 +868,12 @@ function onContentLoaded() { homeServer.start(); } + // If we were launched with the launchInterface option, then we need to launch interface now + if (argv.launchInterface) { + log.debug("Interface launch requested... argv.launchInterface:", argv.launchInterface); + startInterface(); + } + // If we were launched with the shutdownWatcher option, then we need to watch for the interface app // shutting down. The interface app will regularly update a running state file which we will check. // If the file doesn't exist or stops updating for a significant amount of time, we will shut down. diff --git a/tutorial/tutorial.js b/tutorial/tutorial.js index 4908465779..6c824d7bbb 100644 --- a/tutorial/tutorial.js +++ b/tutorial/tutorial.js @@ -971,6 +971,7 @@ TutorialManager = function() { var currentStep = null; var startedTutorialAt = 0; var startedLastStepAt = 0; + var didFinishTutorial = false; var wentToEntryStepNum; var VERSION = 1; @@ -1032,6 +1033,7 @@ TutorialManager = function() { info("DONE WITH TUTORIAL"); currentStepNum = -1; currentStep = null; + didFinishTutorial = true; return false; } else { info("Starting step", currentStepNum); @@ -1069,8 +1071,11 @@ TutorialManager = function() { // This is a message sent from the "entry" portal in the courtyard, // after the tutorial has finished. this.enteredEntryPortal = function() { - info("Got enteredEntryPortal, tracking"); - this.trackStep("wentToEntry", wentToEntryStepNum); + info("Got enteredEntryPortal"); + if (didFinishTutorial) { + info("Tracking wentToEntry"); + this.trackStep("wentToEntry", wentToEntryStepNum); + } } }