Display All Friends When Grouped by Instance (#1119)

This commit is contained in:
pa
2025-02-10 03:19:01 +09:00
committed by GitHub
parent 266468fd57
commit 179a572c7c
3 changed files with 42 additions and 25 deletions
+22 -11
View File
@@ -23309,20 +23309,12 @@ console.log(`isLinux: ${LINUX}`);
// - SidebarGroupByInstance // - SidebarGroupByInstance
$app.methods.handleSwitchGroupByInstance = async function () {
this.isSidebarGroupByInstance = !this.isSidebarGroupByInstance;
await configRepository.setBool(
'VRCX_sidebarGroupByInstance',
this.isSidebarGroupByInstance
);
};
$app.data.isSidebarGroupByInstance = await configRepository.getBool( $app.data.isSidebarGroupByInstance = await configRepository.getBool(
'VRCX_sidebarGroupByInstance', 'VRCX_sidebarGroupByInstance',
true true
); );
$app.methods.handleSwitchGroupByInstance = function () { $app.methods.toggleGroupByInstance = function () {
this.isSidebarGroupByInstance = !this.isSidebarGroupByInstance; this.isSidebarGroupByInstance = !this.isSidebarGroupByInstance;
configRepository.setBool( configRepository.setBool(
'VRCX_sidebarGroupByInstance', 'VRCX_sidebarGroupByInstance',
@@ -23330,6 +23322,19 @@ console.log(`isLinux: ${LINUX}`);
); );
}; };
$app.data.isHideFriendsInSameInstance = await configRepository.getBool(
'VRCX_hideFriendsInSameInstance',
false
);
$app.methods.toggleHideFriendsInSameInstance = function () {
this.isHideFriendsInSameInstance = !this.isHideFriendsInSameInstance;
configRepository.setBool(
'VRCX_hideFriendsInSameInstance',
this.isHideFriendsInSameInstance
);
};
$app.data.isSidebarGroupByInstanceCollapsed = $app.data.isSidebarGroupByInstanceCollapsed =
await configRepository.getBool( await configRepository.getBool(
'VRCX_sidebarGroupByInstanceCollapsed', 'VRCX_sidebarGroupByInstanceCollapsed',
@@ -23374,7 +23379,10 @@ console.log(`isLinux: ${LINUX}`);
}; };
$app.computed.onlineFriendsByGroupStatus = function () { $app.computed.onlineFriendsByGroupStatus = function () {
if (!this.isSidebarGroupByInstance) { if (
!this.isSidebarGroupByInstance ||
(this.isSidebarGroupByInstance && !this.isHideFriendsInSameInstance)
) {
return this.onlineFriends; return this.onlineFriends;
} }
@@ -23390,7 +23398,10 @@ console.log(`isLinux: ${LINUX}`);
}; };
$app.computed.vipFriendsByGroupStatus = function () { $app.computed.vipFriendsByGroupStatus = function () {
if (!this.isSidebarGroupByInstance) { if (
!this.isSidebarGroupByInstance ||
(this.isSidebarGroupByInstance && !this.isHideFriendsInSameInstance)
) {
return this.vipFriends; return this.vipFriends;
} }
+3 -1
View File
@@ -386,6 +386,8 @@
"width": "Width", "width": "Width",
"group_by_instance": "Group by Instance", "group_by_instance": "Group by Instance",
"group_by_instance_tooltip": "Enabling this will group friends by instance when there is more than one friend in the same instance.", "group_by_instance_tooltip": "Enabling this will group friends by instance when there is more than one friend in the same instance.",
"hide_friends_in_same_instance": "Hide Friends in Same Instance",
"hide_friends_in_same_instance_tooltip": "Hide Friends from Friend List When They Are in the Same Instance.",
"split_favorite_friends": "Split Favorite Friends", "split_favorite_friends": "Split Favorite Friends",
"split_favorite_friends_tooltip": "Separate favorite friends into their individual groups." "split_favorite_friends_tooltip": "Separate favorite friends into their individual groups."
}, },
@@ -635,7 +637,7 @@
"friends": "Friends", "friends": "Friends",
"me": "ME", "me": "ME",
"favorite": "FAVORITES", "favorite": "FAVORITES",
"same_instance": "Same Instance", "same_instance": "SAME INSTANCE",
"online": "ONLINE", "online": "ONLINE",
"active": "ACTIVE", "active": "ACTIVE",
"offline": "OFFLINE", "offline": "OFFLINE",
+16 -12
View File
@@ -414,18 +414,22 @@ mixin settingsTab
:min='200' :min='200'
:max='500' :max='500'
style='display: inline-block; width: 300px') style='display: inline-block; width: 300px')
.options-container-item simple-switch(
simple-switch( :label='$t("view.settings.appearance.side_panel.group_by_instance")'
:label='$t("view.settings.appearance.side_panel.group_by_instance")' :value='isSidebarGroupByInstance'
:value='isSidebarGroupByInstance' @change='toggleGroupByInstance'
@change='handleSwitchGroupByInstance' :tooltip='$t("view.settings.appearance.side_panel.group_by_instance_tooltip")')
:tooltip='$t("view.settings.appearance.side_panel.group_by_instance_tooltip")') simple-switch(
.options-container-item v-if='isSidebarGroupByInstance'
simple-switch( :label='$t("view.settings.appearance.side_panel.hide_friends_in_same_instance")'
:label='$t("view.settings.appearance.side_panel.split_favorite_friends")' :value='isHideFriendsInSameInstance'
:value='isSidebarDivideByFriendGroup' @change='toggleHideFriendsInSameInstance'
@change='handleSwitchDivideByFriendGroup' :tooltip='$t("view.settings.appearance.side_panel.hide_friends_in_same_instance_tooltip")')
:tooltip='$t("view.settings.appearance.side_panel.split_favorite_friends_tooltip")') simple-switch(
:label='$t("view.settings.appearance.side_panel.split_favorite_friends")'
:value='isSidebarDivideByFriendGroup'
@change='handleSwitchDivideByFriendGroup'
:tooltip='$t("view.settings.appearance.side_panel.split_favorite_friends_tooltip")')
//- Appearance | User Dialog //- Appearance | User Dialog
.options-container .options-container
span.header {{ $t('view.settings.appearance.user_dialog.header') }} span.header {{ $t('view.settings.appearance.user_dialog.header') }}