mirror of
https://github.com/vrcx-team/VRCX.git
synced 2026-04-06 00:32:02 +02:00
Fixes
This commit is contained in:
@@ -42,6 +42,9 @@ namespace VRCX
|
||||
cefSettings.CefCommandLineArgs.Add("disable-web-security");
|
||||
cefSettings.SetOffScreenRenderingBestPerformanceArgs();
|
||||
|
||||
if (Program.LaunchDebug)
|
||||
cefSettings.RemoteDebuggingPort = 8088;
|
||||
|
||||
// CefSharpSettings.WcfEnabled = true; // TOOD: REMOVE THIS LINE YO (needed for synchronous configRepository)
|
||||
CefSharpSettings.ShutdownOnExit = false;
|
||||
|
||||
|
||||
@@ -1186,6 +1186,17 @@ speechSynthesis.getVoices();
|
||||
API.$on('USER:CURRENT', function (args) {
|
||||
var {json} = args;
|
||||
args.ref = this.applyCurrentUser(json);
|
||||
var location = '';
|
||||
var travelingToLocation = '';
|
||||
if (json.presence?.world && $app.isRealInstance(json.presence.world)) {
|
||||
location = `${json.presence.world}:${json.presence.instance}`;
|
||||
}
|
||||
if (
|
||||
json.presence?.travelingToWorld &&
|
||||
$app.isRealInstance(json.presence.travelingToWorld)
|
||||
) {
|
||||
travelingToLocation = `${json.presence.travelingToWorld}:${json.presence.travelingToInstance}`;
|
||||
}
|
||||
this.applyUser({
|
||||
id: json.id,
|
||||
displayName: json.displayName,
|
||||
@@ -1207,10 +1218,14 @@ speechSynthesis.getVoices();
|
||||
fallbackAvatar: json.fallbackAvatar,
|
||||
profilePicOverride: json.profilePicOverride,
|
||||
isFriend: false,
|
||||
location: json.location,
|
||||
travelingToInstance: json.travelingToInstance,
|
||||
travelingToLocation: json.travelingToLocation,
|
||||
travelingToWorld: json.travelingToWorld
|
||||
|
||||
// Presence
|
||||
location,
|
||||
travelingToLocation,
|
||||
instanceId: json.presence?.instance,
|
||||
worldId: json.presence?.world,
|
||||
travelingToInstance: json.presence?.travelingToInstance,
|
||||
travelingToWorld: json.presence?.travelingToWorld
|
||||
});
|
||||
});
|
||||
|
||||
@@ -1451,6 +1466,7 @@ speechSynthesis.getVoices();
|
||||
username: '',
|
||||
displayName: '',
|
||||
userIcon: '',
|
||||
profilePicOverride: '',
|
||||
bio: '',
|
||||
bioLinks: [],
|
||||
pastDisplayNames: [],
|
||||
@@ -1459,6 +1475,7 @@ speechSynthesis.getVoices();
|
||||
currentAvatarThumbnailImageUrl: '',
|
||||
currentAvatar: '',
|
||||
currentAvatarAssetUrl: '',
|
||||
fallbackAvatar: '',
|
||||
homeLocation: '',
|
||||
twoFactorAuthEnabled: false,
|
||||
status: '',
|
||||
@@ -1474,9 +1491,22 @@ speechSynthesis.getVoices();
|
||||
onlineFriends: [],
|
||||
activeFriends: [],
|
||||
offlineFriends: [],
|
||||
travelingToInstance: '',
|
||||
travelingToLocation: '',
|
||||
travelingToWorld: '',
|
||||
presence: {
|
||||
avatarThumbnail: '',
|
||||
displayName: '',
|
||||
groups: [],
|
||||
id: '',
|
||||
instance: '',
|
||||
instanceType: '',
|
||||
isRejoining: '0',
|
||||
platform: '',
|
||||
profilePicOverride: '',
|
||||
status: '',
|
||||
travelingToInstance: '',
|
||||
travelingToWorld: '',
|
||||
world: '',
|
||||
...json.presence
|
||||
},
|
||||
// VRCX
|
||||
$online_for: Date.now(),
|
||||
$offline_for: '',
|
||||
@@ -1592,10 +1622,12 @@ speechSynthesis.getVoices();
|
||||
id: '',
|
||||
displayName: '',
|
||||
userIcon: '',
|
||||
profilePicOverride: '',
|
||||
bio: '',
|
||||
bioLinks: [],
|
||||
currentAvatarImageUrl: '',
|
||||
currentAvatarThumbnailImageUrl: '',
|
||||
fallbackAvatar: '',
|
||||
status: '',
|
||||
statusDescription: '',
|
||||
state: '',
|
||||
@@ -5679,7 +5711,7 @@ speechSynthesis.getVoices();
|
||||
if (noty.thumbnailImageUrl) {
|
||||
imageUrl = noty.thumbnailImageUrl;
|
||||
} else if (noty.details && noty.details.imageUrl) {
|
||||
imageUrl = noty.details.imageURL;
|
||||
imageUrl = noty.details.imageUrl;
|
||||
} else if (noty.imageUrl) {
|
||||
imageUrl = noty.imageUrl;
|
||||
} else if (userId) {
|
||||
@@ -7615,7 +7647,7 @@ speechSynthesis.getVoices();
|
||||
);
|
||||
}
|
||||
var newRef = args.ref;
|
||||
if (ctx.state !== newState && ctx.ref !== 'undefined') {
|
||||
if (ctx.state !== newState && typeof ctx.ref !== 'undefined') {
|
||||
if (
|
||||
(newState === 'offline' || newState === 'active') &&
|
||||
ctx.state === 'online'
|
||||
@@ -9784,7 +9816,7 @@ speechSynthesis.getVoices();
|
||||
showGroupBadgeToOthers: user.showGroupBadgeToOthers,
|
||||
showSocialRank: user.showSocialRank
|
||||
});
|
||||
this.photonUserJoin(id, user.avatarDict, gameLogDate);
|
||||
this.photonUserJoin(id, user, gameLogDate);
|
||||
}
|
||||
} else {
|
||||
console.log('oldSetUserProps', data);
|
||||
@@ -9821,7 +9853,7 @@ speechSynthesis.getVoices();
|
||||
user.user.showGroupBadgeToOthers,
|
||||
showSocialRank: user.user.showSocialRank
|
||||
});
|
||||
this.photonUserJoin(id, user.avatarDict, gameLogDate);
|
||||
this.photonUserJoin(id, user, gameLogDate);
|
||||
}
|
||||
break;
|
||||
case 42:
|
||||
@@ -9904,7 +9936,7 @@ speechSynthesis.getVoices();
|
||||
});
|
||||
this.photonUserJoin(
|
||||
data.Parameters[254],
|
||||
data.Parameters[249].avatarDict,
|
||||
data.Parameters[249],
|
||||
gameLogDate
|
||||
);
|
||||
this.checkPhotonBotJoin(
|
||||
@@ -10442,10 +10474,19 @@ speechSynthesis.getVoices();
|
||||
this.photonLobbyUserData.set(photonId, photonUser);
|
||||
};
|
||||
|
||||
$app.methods.photonUserJoin = function (photonId, avatar, gameLogDate) {
|
||||
$app.methods.photonUserJoin = function (photonId, user, gameLogDate) {
|
||||
if (photonId === this.photonLobbyCurrentUser) {
|
||||
return;
|
||||
}
|
||||
var avatar = user.avatarDict;
|
||||
var platform = '';
|
||||
if (user.last_platform === 'android') {
|
||||
platform = 'Quest';
|
||||
} else if (user.inVRMode) {
|
||||
platform = 'VR';
|
||||
} else {
|
||||
platform = 'Desktop';
|
||||
}
|
||||
this.checkVRChatCache(avatar).then((cacheInfo) => {
|
||||
var inCache = false;
|
||||
if (cacheInfo[0] > 0) {
|
||||
@@ -10457,7 +10498,8 @@ speechSynthesis.getVoices();
|
||||
type: 'OnPlayerJoined',
|
||||
created_at: gameLogDate,
|
||||
avatar,
|
||||
inCache
|
||||
inCache,
|
||||
platform
|
||||
});
|
||||
});
|
||||
};
|
||||
@@ -10620,6 +10662,7 @@ speechSynthesis.getVoices();
|
||||
}
|
||||
var {groupOnNameplate} = this.photonLobbyJointime.get(photonId);
|
||||
if (
|
||||
groupOnNameplate &&
|
||||
groupOnNameplate !== groupId &&
|
||||
photonId !== this.photonLobbyCurrentUser
|
||||
) {
|
||||
@@ -15643,6 +15686,10 @@ speechSynthesis.getVoices();
|
||||
|
||||
$app.methods.refreshUserDialogTreeData = function () {
|
||||
var D = this.userDialog;
|
||||
if (D.id === API.currentUser.id) {
|
||||
D.treeData = buildTreeData(API.currentUser);
|
||||
return;
|
||||
}
|
||||
D.treeData = buildTreeData(D.ref);
|
||||
};
|
||||
|
||||
@@ -20154,7 +20201,7 @@ speechSynthesis.getVoices();
|
||||
workerTimers.setTimeout(() => this.restartVRCX(), 2000);
|
||||
} else {
|
||||
this.downloadDialog.visible = false;
|
||||
this.pendingVRCXUpdate = this.downloadCurrent.ref.name;
|
||||
this.pendingVRCXInstall = this.downloadCurrent.ref.name;
|
||||
this.showVRCXUpdateDialog();
|
||||
}
|
||||
}
|
||||
@@ -20765,7 +20812,8 @@ speechSynthesis.getVoices();
|
||||
};
|
||||
|
||||
$app.data.checkingForVRCXUpdate = false;
|
||||
$app.data.pendingVRCXUpdate = '';
|
||||
$app.data.pendingVRCXInstall = '';
|
||||
$app.data.pendingVRCXUpdate = false;
|
||||
|
||||
$app.data.branches = {
|
||||
Stable: {
|
||||
@@ -20893,7 +20941,7 @@ speechSynthesis.getVoices();
|
||||
D.releases = releases;
|
||||
D.release = json[0].name;
|
||||
this.VRCXUpdateDialog.updatePendingIsLatest = false;
|
||||
if (D.release === this.pendingVRCXUpdate) {
|
||||
if (D.release === this.pendingVRCXInstall) {
|
||||
// update already downloaded and latest version
|
||||
this.VRCXUpdateDialog.updatePendingIsLatest = true;
|
||||
}
|
||||
@@ -20903,6 +20951,9 @@ speechSynthesis.getVoices();
|
||||
};
|
||||
|
||||
$app.methods.saveAutoUpdateVRCX = function () {
|
||||
if (this.autoUpdateVRCX === 'Off') {
|
||||
this.pendingVRCXUpdate = false;
|
||||
}
|
||||
configRepository.setString('VRCX_autoUpdateVRCX', this.autoUpdateVRCX);
|
||||
};
|
||||
|
||||
@@ -20925,6 +20976,7 @@ speechSynthesis.getVoices();
|
||||
url,
|
||||
method: 'GET'
|
||||
});
|
||||
this.pendingVRCXUpdate = false;
|
||||
this.checkingForVRCXUpdate = false;
|
||||
var json = JSON.parse(response.data);
|
||||
if (this.debugWebRequests) {
|
||||
@@ -20934,7 +20986,7 @@ speechSynthesis.getVoices();
|
||||
this.latestAppVersion = json.name;
|
||||
var name = json.name;
|
||||
this.VRCXUpdateDialog.updatePendingIsLatest = false;
|
||||
if (name === this.pendingVRCXUpdate) {
|
||||
if (name === this.pendingVRCXInstall) {
|
||||
// update already downloaded
|
||||
this.VRCXUpdateDialog.updatePendingIsLatest = true;
|
||||
} else if (name > this.appVersion) {
|
||||
@@ -20953,12 +21005,13 @@ speechSynthesis.getVoices();
|
||||
if (!downloadUrl) {
|
||||
return;
|
||||
}
|
||||
this.pendingVRCXUpdate = true;
|
||||
this.notifyMenu('settings');
|
||||
var type = 'Auto';
|
||||
if (!API.isLoggedIn) {
|
||||
this.showVRCXUpdateDialog();
|
||||
} else if (this.autoUpdateVRCX === 'Notify') {
|
||||
this.showVRCXUpdateDialog();
|
||||
// this.showVRCXUpdateDialog();
|
||||
} else if (this.autoUpdateVRCX === 'Auto Download') {
|
||||
var autoInstall = false;
|
||||
this.downloadVRCXUpdate(
|
||||
|
||||
@@ -54,9 +54,11 @@ html
|
||||
|
||||
//- menu
|
||||
.x-menu-container
|
||||
//- download progress
|
||||
//- download progress, update pending
|
||||
div(v-if="downloadInProgress" @click="showDownloadDialog" style="margin:7px;height:50px;cursor:pointer")
|
||||
el-progress(type="circle" width="50" stroke-width="3" :percentage="downloadProgress" :format="downloadProgressText")
|
||||
div(v-else-if="pendingVRCXUpdate || pendingVRCXInstall" style="margin:7px;height:50px;width:50px")
|
||||
el-button(type="default" @click="showVRCXUpdateDialog" size="mini" icon="el-icon-download" circle style="font-size:14px;height:50px;width:50px")
|
||||
|
||||
el-menu(ref="menu" collapse @select="selectMenu")
|
||||
mixin menuitem(index, name, icon)
|
||||
@@ -186,6 +188,9 @@ html
|
||||
location(:location="scope.row.location" :hint="scope.row.worldName" :grouphint="scope.row.groupName" :link="false")
|
||||
span(v-else-if="scope.row.type === 'ChatBoxMessage'" v-text="scope.row.text")
|
||||
span(v-else-if="scope.row.type === 'OnPlayerJoined'")
|
||||
span(v-if="scope.row.platform === 'Desktop'" style="color:#409eff") PC
|
||||
span(v-else-if="scope.row.platform === 'VR'" style="color:#409eff") VR
|
||||
span(v-else-if="scope.row.platform === 'Quest'" style="color:#67c23a") Q
|
||||
span.x-link(v-text="scope.row.avatar.name" @click="showAvatarDialog(scope.row.avatar.id)")
|
||||
|
|
||||
span(v-if="!scope.row.inCache" style="color:#aaa") #[i.el-icon-download]
|
||||
@@ -247,6 +252,9 @@ html
|
||||
location(:location="scope.row.location" :hint="scope.row.worldName" :grouphint="scope.row.groupName" :link="false")
|
||||
span(v-else-if="scope.row.type === 'ChatBoxMessage'" v-text="scope.row.text")
|
||||
span(v-else-if="scope.row.type === 'OnPlayerJoined'")
|
||||
span(v-if="scope.row.platform === 'Desktop'" style="color:#409eff") PC
|
||||
span(v-else-if="scope.row.platform === 'VR'" style="color:#409eff") VR
|
||||
span(v-else-if="scope.row.platform === 'Quest'" style="color:#67c23a") Q
|
||||
span.x-link(v-text="scope.row.avatar.name" @click="showAvatarDialog(scope.row.avatar.id)")
|
||||
|
|
||||
span(v-if="!scope.row.inCache" style="color:#aaa") #[i.el-icon-download]
|
||||
|
||||
@@ -375,7 +375,9 @@ Vue.component('marquee-text', MarqueeText);
|
||||
if (this.nowPlaying.playing) {
|
||||
length -= 1;
|
||||
}
|
||||
this.wristFeed.length = length;
|
||||
if (length < this.wristFeed.length) {
|
||||
this.wristFeed.length = length;
|
||||
}
|
||||
};
|
||||
|
||||
$app.methods.updateStatsLoop = async function () {
|
||||
|
||||
@@ -481,13 +481,13 @@ html
|
||||
div(v-for="feed in hudFeed")
|
||||
.item #[span(v-if="feed.isMaster") 👑]<strong>{{ feed.displayName }}</strong>
|
||||
template(v-if="feed.type === 'ChangeAvatar'")
|
||||
span(style="margin-left:10px") ChangeAvatar
|
||||
span(style="margin-left:10px;color:#a3a3a3") ChangeAvatar
|
||||
span(v-if="!feed.inCache" style="color:#aaa;margin-left:10px") #[i.el-icon-download]
|
||||
span(v-text="feed.avatar.name" style="margin-left:10px")
|
||||
span(v-if="feed.avatar.releaseStatus === 'public'" style="margin-left:10px;color:#67c23a") (Public)
|
||||
span(v-else-if="feed.avatar.releaseStatus === 'private'" style="margin-left:10px;color:#e6a23c") (Private)
|
||||
template(v-else-if="feed.type === 'ChangeStatus'")
|
||||
span(style="margin-left:10px") ChangeStatus
|
||||
span(style="margin-left:10px;color:#a3a3a3") ChangeStatus
|
||||
template(v-if="feed.status !== feed.previousStatus")
|
||||
i.x-user-status(:class="statusClass(feed.previousStatus)" style="margin-left:10px;width:20px;height:20px")
|
||||
span
|
||||
@@ -495,23 +495,26 @@ html
|
||||
i.x-user-status(:class="statusClass(feed.status)" style="width:20px;height:20px")
|
||||
span(v-if="feed.statusDescription !== feed.previousStatusDescription" v-text="feed.statusDescription" style="margin-left:10px")
|
||||
template(v-else-if="feed.type === 'ChangeGroup'")
|
||||
span(style="margin-left:10px") ChangeGroup
|
||||
span(style="margin-left:10px;color:#a3a3a3") ChangeGroup
|
||||
span(v-text="feed.groupName" style="margin-left:10px")
|
||||
template(v-else-if="feed.type === 'ChatBoxMessage'")
|
||||
span(style="margin-left:10px") ChatBox
|
||||
span(style="margin-left:10px;color:#a3a3a3") ChatBox
|
||||
span(v-text="feed.text" style="margin-left:10px;white-space:normal")
|
||||
template(v-else-if="feed.type === 'PortalSpawn'")
|
||||
span(style="margin-left:10px") PortalSpawn
|
||||
span(style="margin-left:10px;color:#a3a3a3") PortalSpawn
|
||||
location(:location="feed.location" :hint="feed.worldName" :link="false" style="margin-left:10px")
|
||||
template(v-else-if="feed.type === 'OnPlayerJoined'")
|
||||
span(style="margin-left:10px") has joined -
|
||||
span(style="margin-left:10px;color:#a3a3a3") has joined
|
||||
span(v-if="feed.platform === 'Desktop'" style="color:#409eff;margin-left:10px") PC
|
||||
span(v-else-if="feed.platform === 'VR'" style="color:#409eff;margin-left:10px") VR
|
||||
span(v-else-if="feed.platform === 'Quest'" style="color:#67c23a;margin-left:10px") Q
|
||||
span(v-if="!feed.inCache" style="color:#aaa;margin-left:10px") #[i.el-icon-download]
|
||||
span(v-text="feed.avatar.name" style="margin-left:10px")
|
||||
template(v-else-if="feed.type === 'SpawnEmoji'")
|
||||
span(style="margin-left:10px") SpawnEmoji
|
||||
span(style="margin-left:10px;color:#a3a3a3") SpawnEmoji
|
||||
span(v-text="feed.text" style="margin-left:10px")
|
||||
span(v-else-if="feed.color === 'yellow'" v-text="feed.text" style="color:yellow;margin-left:10px")
|
||||
span(v-else style="margin-left:10px" v-text="feed.text")
|
||||
span(v-else style="margin-left:10px;color:#a3a3a3" v-text="feed.text")
|
||||
template(v-if="feed.combo > 1")
|
||||
span.combo(style="margin-left:10px") x{{ feed.combo }}
|
||||
.hud-timeout(v-if="hudTimeout.length > 0")
|
||||
|
||||
Reference in New Issue
Block a user