Master merge cleanup

This commit is contained in:
Brad Davis 2019-01-29 14:45:05 -08:00
parent 60912b7c76
commit efff296398
4 changed files with 18 additions and 21 deletions

View file

@ -3255,9 +3255,9 @@ void Application::onDesktopRootItemCreated(QQuickItem* rootItem) {
surfaceContext->setContextProperty("AnimStats", AnimStats::getInstance()); surfaceContext->setContextProperty("AnimStats", AnimStats::getInstance());
#if !defined(Q_OS_ANDROID) #if !defined(Q_OS_ANDROID)
// auto offscreenUi = getOffscreenUI(); auto offscreenUi = getOffscreenUI();
// auto qml = PathUtils::qmlUrl("AvatarInputsBar.qml"); auto qml = PathUtils::qmlUrl("AvatarInputsBar.qml");
// offscreenUi->show(qml, "AvatarInputsBar"); offscreenUi->show(qml, "AvatarInputsBar");
#endif #endif
} }
@ -5102,7 +5102,7 @@ void Application::calibrateEyeTracker5Points() {
#endif #endif
bool Application::exportEntities(const QString& filename, bool Application::exportEntities(const QString& filename,
const QVector<EntityItemID>& entityIDs, const QVector<QUuid>& entityIDs,
const glm::vec3* givenOffset) { const glm::vec3* givenOffset) {
QHash<EntityItemID, EntityItemPointer> entities; QHash<EntityItemID, EntityItemPointer> entities;
@ -5177,16 +5177,12 @@ bool Application::exportEntities(const QString& filename, float x, float y, floa
glm::vec3 minCorner = center - vec3(scale); glm::vec3 minCorner = center - vec3(scale);
float cubeSize = scale * 2; float cubeSize = scale * 2;
AACube boundingCube(minCorner, cubeSize); AACube boundingCube(minCorner, cubeSize);
QVector<EntityItemPointer> entities; QVector<QUuid> entities;
QVector<EntityItemID> ids;
auto entityTree = getEntities()->getTree(); auto entityTree = getEntities()->getTree();
entityTree->withReadLock([&] { entityTree->withReadLock([&] {
entityTree->findEntities(boundingCube, entities); entityTree->evalEntitiesInCube(boundingCube, PickFilter(), entities);
foreach(EntityItemPointer entity, entities) {
ids << entity->getEntityItemID();
}
}); });
return exportEntities(filename, ids, &center); return exportEntities(filename, entities, &center);
} }
void Application::loadSettings() { void Application::loadSettings() {
@ -7253,7 +7249,7 @@ void Application::registerScriptEngineWithApplicationServices(ScriptEnginePointe
bool clientScript = scriptEngine->isClientScript(); bool clientScript = scriptEngine->isClientScript();
scriptEngine->registerFunction("OverlayWindow", clientScript ? QmlWindowClass::constructor : QmlWindowClass::restricted_constructor); scriptEngine->registerFunction("OverlayWindow", clientScript ? QmlWindowClass::constructor : QmlWindowClass::restricted_constructor);
#if !defined(DISABLE_QML) #if !defined(Q_OS_ANDROID) && !defined(DISABLE_QML)
scriptEngine->registerFunction("OverlayWebWindow", clientScript ? QmlWebWindowClass::constructor : QmlWebWindowClass::restricted_constructor); scriptEngine->registerFunction("OverlayWebWindow", clientScript ? QmlWebWindowClass::constructor : QmlWebWindowClass::restricted_constructor);
#endif #endif
scriptEngine->registerFunction("QmlFragment", clientScript ? QmlFragmentClass::constructor : QmlFragmentClass::restricted_constructor); scriptEngine->registerFunction("QmlFragment", clientScript ? QmlFragmentClass::constructor : QmlFragmentClass::restricted_constructor);
@ -8302,6 +8298,9 @@ void Application::loadDomainConnectionDialog() {
void Application::toggleLogDialog() { void Application::toggleLogDialog() {
#ifndef Q_OS_ANDROID #ifndef Q_OS_ANDROID
if (getLoginDialogPoppedUp()) {
return;
}
if (! _logDialog) { if (! _logDialog) {
bool keepOnTop =_keepLogWindowOnTop.get(); bool keepOnTop =_keepLogWindowOnTop.get();

View file

@ -359,7 +359,7 @@ signals:
public slots: public slots:
QVector<EntityItemID> pasteEntities(float x, float y, float z); QVector<EntityItemID> pasteEntities(float x, float y, float z);
bool exportEntities(const QString& filename, const QVector<EntityItemID>& entityIDs, const glm::vec3* givenOffset = nullptr); bool exportEntities(const QString& filename, const QVector<QUuid>& entityIDs, const glm::vec3* givenOffset = nullptr);
bool exportEntities(const QString& filename, float x, float y, float z, float scale); bool exportEntities(const QString& filename, float x, float y, float z, float scale);
bool importEntities(const QString& url, const bool isObservable = true, const qint64 callerId = -1); bool importEntities(const QString& url, const bool isObservable = true, const qint64 callerId = -1);
void updateThreadPoolCount() const; void updateThreadPoolCount() const;

View file

@ -3683,17 +3683,15 @@ bool MyAvatar::requiresSafeLanding(const glm::vec3& positionIn, glm::vec3& bette
OctreeElementPointer element; OctreeElementPointer element;
float distance; float distance;
BoxFace face; BoxFace face;
const bool visibleOnly = false;
// This isn't quite what we really want here. findRayIntersection always works on mesh, skipping entirely based on collidable.
// What we really want is to use the collision hull!
// See https://highfidelity.fogbugz.com/f/cases/5003/findRayIntersection-has-option-to-use-collidableOnly-but-doesn-t-actually-use-colliders
const bool collidableOnly = true;
const bool precisionPicking = true;
const auto lockType = Octree::Lock; // Should we refactor to take a lock just once? const auto lockType = Octree::Lock; // Should we refactor to take a lock just once?
bool* accurateResult = NULL; bool* accurateResult = NULL;
// This isn't quite what we really want here. findRayIntersection always works on mesh, skipping entirely based on collidable.
// What we really want is to use the collision hull!
// See https://highfidelity.fogbugz.com/f/cases/5003/findRayIntersection-has-option-to-use-collidableOnly-but-doesn-t-actually-use-colliders
QVariantMap extraInfo; QVariantMap extraInfo;
EntityItemID entityID = entityTree->findRayIntersection(startPointIn, directionIn, include, ignore, visibleOnly, collidableOnly, precisionPicking, EntityItemID entityID = entityTree->evalRayIntersection(startPointIn, directionIn, include, ignore,
PickFilter(PickFilter::getBitMask(PickFilter::FlagBit::COLLIDABLE) | PickFilter::getBitMask(PickFilter::FlagBit::PRECISE)),
element, distance, face, normalOut, extraInfo, lockType, accurateResult); element, distance, face, normalOut, extraInfo, lockType, accurateResult);
if (entityID.isNull()) { if (entityID.isNull()) {
return false; return false;

View file

@ -138,7 +138,7 @@ void LoginDialog::login(const QString& username, const QString& password) const
void LoginDialog::loginThroughOculus() { void LoginDialog::loginThroughOculus() {
qDebug() << "Attempting to login through Oculus"; qDebug() << "Attempting to login through Oculus";
if (auto oculusPlatformPlugin = PluginManager::getInstance()->getOculusPlatformPlugin()) { if (auto oculusPlatformPlugin = PluginManager::getInstance()->getOculusPlatformPlugin()) {
oculusPlatformPlugin->requestNonceAndUserID([this] (QString nonce, QString oculusID) { oculusPlatformPlugin->requestNonceAndUserID([] (QString nonce, QString oculusID) {
DependencyManager::get<AccountManager>()->requestAccessTokenWithOculus(nonce, oculusID); DependencyManager::get<AccountManager>()->requestAccessTokenWithOculus(nonce, oculusID);
}); });
} }