Re-add customUrl.startWith

This commit is contained in:
Konstantin 2014-04-29 20:59:33 +02:00
parent 14b91aa04b
commit 65706ae5f7

View file

@ -3577,31 +3577,33 @@ void Application::takeSnapshot() {
void Application::urlGoTo(int argc, const char * constArgv[]) { void Application::urlGoTo(int argc, const char * constArgv[]) {
//Gets the url (hifi://domain/destination/orientation) //Gets the url (hifi://domain/destination/orientation)
QString customUrl = getCmdOption(argc, constArgv, "-url"); QString customUrl = getCmdOption(argc, constArgv, "-url");
QStringList urlParts = customUrl.remove(0, CUSTOM_URL_SCHEME.length() + 2).split('/', QString::SkipEmptyParts); if(customUrl.startsWith(CUSTOM_URL_SCHEME + "//")) {
if (urlParts.count() == 1) { QStringList urlParts = customUrl.remove(0, CUSTOM_URL_SCHEME.length() + 2).split('/', QString::SkipEmptyParts);
// location coordinates or place name if (urlParts.count() == 1) {
QString domain = urlParts[0]; // location coordinates or place name
Menu::goToDomain(domain); QString domain = urlParts[0];
} else if (urlParts.count() > 1) { Menu::goToDomain(domain);
// if url has 2 or more parts, the first one is domain name } else if (urlParts.count() > 1) {
QString domain = urlParts[0]; // if url has 2 or more parts, the first one is domain name
QString domain = urlParts[0];
// second part is either a destination coordinate or
// a place name // second part is either a destination coordinate or
QString destination = urlParts[1]; // a place name
QString destination = urlParts[1];
// any third part is an avatar orientation.
QString orientation = urlParts.count() > 2 ? urlParts[2] : QString(); // any third part is an avatar orientation.
QString orientation = urlParts.count() > 2 ? urlParts[2] : QString();
Menu::goToDomain(domain);
Menu::goToDomain(domain);
// goto either @user, #place, or x-xx,y-yy,z-zz
// style co-ordinate. // goto either @user, #place, or x-xx,y-yy,z-zz
Menu::goTo(destination); // style co-ordinate.
Menu::goTo(destination);
if (!orientation.isEmpty()) {
// location orientation if (!orientation.isEmpty()) {
Menu::goToOrientation(orientation); // location orientation
} Menu::goToOrientation(orientation);
} }
}
}
} }