mirror of
https://github.com/MrUnknownDE/VRCX.git
synced 2026-05-06 06:46:04 +02:00
Fixes and changes
This commit is contained in:
+18
-19
@@ -68,8 +68,6 @@ namespace VRCX
|
|||||||
foreach (var keyValuePair in monitoredProcesses)
|
foreach (var keyValuePair in monitoredProcesses)
|
||||||
{
|
{
|
||||||
var monitoredProcess = keyValuePair.Value;
|
var monitoredProcess = keyValuePair.Value;
|
||||||
var process = monitoredProcess.Process;
|
|
||||||
var name = monitoredProcess.ProcessName;
|
|
||||||
|
|
||||||
if (monitoredProcess.IsRunning)
|
if (monitoredProcess.IsRunning)
|
||||||
{
|
{
|
||||||
@@ -93,13 +91,13 @@ namespace VRCX
|
|||||||
foreach (var monitoredProcess in processesNeedingUpdate)
|
foreach (var monitoredProcess in processesNeedingUpdate)
|
||||||
{
|
{
|
||||||
var process = processes.FirstOrDefault(p => string.Equals(p.ProcessName, monitoredProcess.ProcessName, StringComparison.OrdinalIgnoreCase));
|
var process = processes.FirstOrDefault(p => string.Equals(p.ProcessName, monitoredProcess.ProcessName, StringComparison.OrdinalIgnoreCase));
|
||||||
if (process != null)
|
if (process == null)
|
||||||
{
|
continue;
|
||||||
|
|
||||||
monitoredProcess.ProcessStarted(process);
|
monitoredProcess.ProcessStarted(process);
|
||||||
ProcessStarted?.Invoke(monitoredProcess);
|
ProcessStarted?.Invoke(monitoredProcess);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Checks if a process if currently being monitored and if it is running.
|
/// Checks if a process if currently being monitored and if it is running.
|
||||||
@@ -110,17 +108,14 @@ namespace VRCX
|
|||||||
public bool IsProcessRunning(string processName, bool ensureCheck = false)
|
public bool IsProcessRunning(string processName, bool ensureCheck = false)
|
||||||
{
|
{
|
||||||
processName = processName.ToLower();
|
processName = processName.ToLower();
|
||||||
if (monitoredProcesses.ContainsKey(processName))
|
if (!monitoredProcesses.TryGetValue(processName, out var process))
|
||||||
{
|
return false;
|
||||||
var process = monitoredProcesses[processName];
|
|
||||||
|
|
||||||
if (ensureCheck && process.Process == null)
|
if (ensureCheck && process.Process == null)
|
||||||
return Process.GetProcessesByName(processName).FirstOrDefault() != null;
|
return Process.GetProcessesByName(processName).FirstOrDefault() != null;
|
||||||
|
|
||||||
return process.IsRunning;
|
return process.IsRunning;
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -129,10 +124,11 @@ namespace VRCX
|
|||||||
/// <param name="process"></param>
|
/// <param name="process"></param>
|
||||||
public void AddProcess(Process process)
|
public void AddProcess(Process process)
|
||||||
{
|
{
|
||||||
if (monitoredProcesses.ContainsKey(process.ProcessName.ToLower()))
|
var processName = process.ProcessName.ToLower();
|
||||||
|
if (monitoredProcesses.ContainsKey(processName))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
monitoredProcesses.Add(process.ProcessName.ToLower(), new MonitoredProcess(process));
|
monitoredProcesses.Add(processName, new MonitoredProcess(process));
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -141,10 +137,9 @@ namespace VRCX
|
|||||||
/// <param name="processName"></param>
|
/// <param name="processName"></param>
|
||||||
public void AddProcess(string processName)
|
public void AddProcess(string processName)
|
||||||
{
|
{
|
||||||
if (monitoredProcesses.ContainsKey(processName.ToLower()))
|
processName = processName.ToLower();
|
||||||
{
|
if (monitoredProcesses.ContainsKey(processName))
|
||||||
return;
|
return;
|
||||||
}
|
|
||||||
|
|
||||||
monitoredProcesses.Add(processName, new MonitoredProcess(processName));
|
monitoredProcesses.Add(processName, new MonitoredProcess(processName));
|
||||||
}
|
}
|
||||||
@@ -155,12 +150,10 @@ namespace VRCX
|
|||||||
/// <param name="processName"></param>
|
/// <param name="processName"></param>
|
||||||
public void RemoveProcess(string processName)
|
public void RemoveProcess(string processName)
|
||||||
{
|
{
|
||||||
if (monitoredProcesses.ContainsKey(processName.ToLower()))
|
processName = processName.ToLower();
|
||||||
{
|
|
||||||
monitoredProcesses.Remove(processName);
|
monitoredProcesses.Remove(processName);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
internal class MonitoredProcess
|
internal class MonitoredProcess
|
||||||
{
|
{
|
||||||
@@ -169,7 +162,7 @@ namespace VRCX
|
|||||||
Process = process;
|
Process = process;
|
||||||
ProcessName = process.ProcessName.ToLower();
|
ProcessName = process.ProcessName.ToLower();
|
||||||
|
|
||||||
if (process != null && !WinApi.HasProcessExited(process.Id))
|
if (!WinApi.HasProcessExited(process.Id))
|
||||||
IsRunning = true;
|
IsRunning = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -182,6 +175,7 @@ namespace VRCX
|
|||||||
public Process Process { get; private set; }
|
public Process Process { get; private set; }
|
||||||
public string ProcessName { get; private set; }
|
public string ProcessName { get; private set; }
|
||||||
public bool IsRunning { get; private set; }
|
public bool IsRunning { get; private set; }
|
||||||
|
public DateTime LastExitTime { get; private set; }
|
||||||
|
|
||||||
public bool HasName(string processName)
|
public bool HasName(string processName)
|
||||||
{
|
{
|
||||||
@@ -193,10 +187,15 @@ namespace VRCX
|
|||||||
IsRunning = false;
|
IsRunning = false;
|
||||||
Process?.Dispose();
|
Process?.Dispose();
|
||||||
Process = null;
|
Process = null;
|
||||||
|
LastExitTime = DateTime.Now;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void ProcessStarted(Process process)
|
public void ProcessStarted(Process process)
|
||||||
{
|
{
|
||||||
|
// check last exit time to prevent status flapping
|
||||||
|
if (LastExitTime != DateTime.MinValue && DateTime.Now - LastExitTime < TimeSpan.FromSeconds(5))
|
||||||
|
return;
|
||||||
|
|
||||||
Process = process;
|
Process = process;
|
||||||
ProcessName = process.ProcessName.ToLower();
|
ProcessName = process.ProcessName.ToLower();
|
||||||
IsRunning = true;
|
IsRunning = true;
|
||||||
|
|||||||
+4
-4
@@ -189,13 +189,13 @@
|
|||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="CefSharp.Common">
|
<PackageReference Include="CefSharp.Common">
|
||||||
<Version>116.0.150</Version>
|
<Version>116.0.230</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="CefSharp.OffScreen">
|
<PackageReference Include="CefSharp.OffScreen">
|
||||||
<Version>116.0.150</Version>
|
<Version>116.0.230</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="CefSharp.WinForms">
|
<PackageReference Include="CefSharp.WinForms">
|
||||||
<Version>116.0.150</Version>
|
<Version>116.0.230</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="DiscordRichPresence">
|
<PackageReference Include="DiscordRichPresence">
|
||||||
<Version>1.2.1.24</Version>
|
<Version>1.2.1.24</Version>
|
||||||
@@ -207,7 +207,7 @@
|
|||||||
<Version>13.0.3</Version>
|
<Version>13.0.3</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="NLog">
|
<PackageReference Include="NLog">
|
||||||
<Version>5.2.3</Version>
|
<Version>5.2.4</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="SharpDX.D3DCompiler">
|
<PackageReference Include="SharpDX.D3DCompiler">
|
||||||
<Version>4.2.0</Version>
|
<Version>4.2.0</Version>
|
||||||
|
|||||||
+3
-3
@@ -703,9 +703,9 @@ namespace VRCX
|
|||||||
|
|
||||||
public void Stop()
|
public void Stop()
|
||||||
{
|
{
|
||||||
listener.Stop();
|
listener?.Stop();
|
||||||
listener.Close();
|
listener?.Close();
|
||||||
worldDB.Close();
|
worldDB?.Close();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
+38
-4
@@ -4899,6 +4899,25 @@ speechSynthesis.getVoices();
|
|||||||
$app.instanceQueueReady(instanceId);
|
$app.instanceQueueReady(instanceId);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case 'content-refresh':
|
||||||
|
var contentType = content.contentType;
|
||||||
|
if (contentType === 'icon') {
|
||||||
|
if ($app.galleryDialogVisible) {
|
||||||
|
$app.refreshVRCPlusIconsTable();
|
||||||
|
}
|
||||||
|
} else if (contentType === 'gallery') {
|
||||||
|
if ($app.galleryDialogVisible) {
|
||||||
|
$app.refreshGalleryTable();
|
||||||
|
}
|
||||||
|
} else if (contentType === 'emoji') {
|
||||||
|
if ($app.galleryDialogVisible) {
|
||||||
|
$app.refreshEmojiTable();
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
console.log('Unknown content-refresh', content);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
console.log('Unknown pipeline type', args.json);
|
console.log('Unknown pipeline type', args.json);
|
||||||
}
|
}
|
||||||
@@ -15311,6 +15330,7 @@ speechSynthesis.getVoices();
|
|||||||
return true;
|
return true;
|
||||||
} else if (/^[A-Za-z0-9]{3,6}\.[0-9]{4}$/g.test(input)) {
|
} else if (/^[A-Za-z0-9]{3,6}\.[0-9]{4}$/g.test(input)) {
|
||||||
this.showGroupDialogShortCode(input);
|
this.showGroupDialogShortCode(input);
|
||||||
|
return true;
|
||||||
} else if (
|
} else if (
|
||||||
input.substring(0, 4) === 'usr_' ||
|
input.substring(0, 4) === 'usr_' ||
|
||||||
/^[A-Za-z0-9]{10}$/g.test(input)
|
/^[A-Za-z0-9]{10}$/g.test(input)
|
||||||
@@ -17268,8 +17288,6 @@ speechSynthesis.getVoices();
|
|||||||
this.showPreviousInstancesUserDialog(D.ref);
|
this.showPreviousInstancesUserDialog(D.ref);
|
||||||
} else if (command === 'Manage Gallery') {
|
} else if (command === 'Manage Gallery') {
|
||||||
this.showGalleryDialog();
|
this.showGalleryDialog();
|
||||||
} else if (command === 'Copy User') {
|
|
||||||
this.copyUser(D.id);
|
|
||||||
} else if (command === 'Invite To Group') {
|
} else if (command === 'Invite To Group') {
|
||||||
this.showInviteGroupDialog('', D.id);
|
this.showInviteGroupDialog('', D.id);
|
||||||
} else if (command === 'Hide Avatar') {
|
} else if (command === 'Hide Avatar') {
|
||||||
@@ -19531,7 +19549,15 @@ speechSynthesis.getVoices();
|
|||||||
this.copyToClipboard(worldName);
|
this.copyToClipboard(worldName);
|
||||||
};
|
};
|
||||||
|
|
||||||
$app.methods.copyUser = function (userId) {
|
$app.methods.copyUserId = function (userId) {
|
||||||
|
this.$message({
|
||||||
|
message: 'User ID copied to clipboard',
|
||||||
|
type: 'success'
|
||||||
|
});
|
||||||
|
this.copyToClipboard(userId);
|
||||||
|
};
|
||||||
|
|
||||||
|
$app.methods.copyUserURL = function (userId) {
|
||||||
this.$message({
|
this.$message({
|
||||||
message: 'User URL copied to clipboard',
|
message: 'User URL copied to clipboard',
|
||||||
type: 'success'
|
type: 'success'
|
||||||
@@ -19539,6 +19565,14 @@ speechSynthesis.getVoices();
|
|||||||
this.copyToClipboard(`https://vrchat.com/home/user/${userId}`);
|
this.copyToClipboard(`https://vrchat.com/home/user/${userId}`);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
$app.methods.copyUserDisplayName = function (displayName) {
|
||||||
|
this.$message({
|
||||||
|
message: 'User DisplayName copied to clipboard',
|
||||||
|
type: 'success'
|
||||||
|
});
|
||||||
|
this.copyToClipboard(displayName);
|
||||||
|
};
|
||||||
|
|
||||||
$app.methods.copyGroupId = function (groupId) {
|
$app.methods.copyGroupId = function (groupId) {
|
||||||
this.$message({
|
this.$message({
|
||||||
message: 'Group ID copied to clipboard',
|
message: 'Group ID copied to clipboard',
|
||||||
@@ -22728,7 +22762,7 @@ speechSynthesis.getVoices();
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
// wait a bit for SteamVR to potentially close before deciding to relaunch
|
// wait a bit for SteamVR to potentially close before deciding to relaunch
|
||||||
var restartDelay = 5000;
|
var restartDelay = 8000;
|
||||||
if (this.isGameNoVR) {
|
if (this.isGameNoVR) {
|
||||||
// wait for game to close before relaunching
|
// wait for game to close before relaunching
|
||||||
restartDelay = 2000;
|
restartDelay = 2000;
|
||||||
|
|||||||
+12
-2
@@ -270,7 +270,6 @@ html
|
|||||||
el-button(:type="(userDialog.incomingRequest || userDialog.outgoingRequest) ? 'success' : (userDialog.isBlock || userDialog.isMute) ? 'danger' : 'default'" icon="el-icon-more" circle style="margin-left:5px")
|
el-button(:type="(userDialog.incomingRequest || userDialog.outgoingRequest) ? 'success' : (userDialog.isBlock || userDialog.isMute) ? 'danger' : 'default'" icon="el-icon-more" circle style="margin-left:5px")
|
||||||
el-dropdown-menu(#default="dropdown")
|
el-dropdown-menu(#default="dropdown")
|
||||||
el-dropdown-item(icon="el-icon-refresh" command="Refresh") {{ $t('dialog.user.actions.refresh') }}
|
el-dropdown-item(icon="el-icon-refresh" command="Refresh") {{ $t('dialog.user.actions.refresh') }}
|
||||||
el-dropdown-item(icon="el-icon-s-order" command="Copy User") {{ $t('dialog.user.actions.copy_url') }}
|
|
||||||
template(v-if="userDialog.ref.id === API.currentUser.id")
|
template(v-if="userDialog.ref.id === API.currentUser.id")
|
||||||
el-dropdown-item(icon="el-icon-picture-outline" command="Manage Gallery" divided) {{ $t('dialog.user.actions.manage_gallery_icon') }}
|
el-dropdown-item(icon="el-icon-picture-outline" command="Manage Gallery" divided) {{ $t('dialog.user.actions.manage_gallery_icon') }}
|
||||||
el-dropdown-item(icon="el-icon-s-custom" command="Show Avatar Author") {{ $t('dialog.user.actions.show_avatar_author') }}
|
el-dropdown-item(icon="el-icon-s-custom" command="Show Avatar Author") {{ $t('dialog.user.actions.show_avatar_author') }}
|
||||||
@@ -366,7 +365,7 @@ html
|
|||||||
.x-friend-item(style="width:100%;cursor:default")
|
.x-friend-item(style="width:100%;cursor:default")
|
||||||
.detail
|
.detail
|
||||||
span.name {{ $t('dialog.user.info.represented_group') }}
|
span.name {{ $t('dialog.user.info.represented_group') }}
|
||||||
.extra(v-if="userDialog.representedGroup.isRepresenting")
|
.extra(v-if="userDialog.representedGroup?.isRepresenting")
|
||||||
div(style="display:inline-block;flex:none;margin-right:5px")
|
div(style="display:inline-block;flex:none;margin-right:5px")
|
||||||
el-popover(placement="right" width="500px" trigger="click")
|
el-popover(placement="right" width="500px" trigger="click")
|
||||||
img.x-link(slot="reference" v-lazy="userDialog.representedGroup.iconUrl" style="flex:none;width:60px;height:60px;border-radius:4px;object-fit:cover")
|
img.x-link(slot="reference" v-lazy="userDialog.representedGroup.iconUrl" style="flex:none;width:60px;height:60px;border-radius:4px;object-fit:cover")
|
||||||
@@ -458,6 +457,17 @@ html
|
|||||||
span.extra
|
span.extra
|
||||||
span(v-text="userDialog.$homeLocationName")
|
span(v-text="userDialog.$homeLocationName")
|
||||||
el-button(@click.stop="resetHome()" size="mini" icon="el-icon-delete" circle style="margin-left:5px")
|
el-button(@click.stop="resetHome()" size="mini" icon="el-icon-delete" circle style="margin-left:5px")
|
||||||
|
.x-friend-item(style="width:100%;cursor:default")
|
||||||
|
.detail
|
||||||
|
span.name {{ $t('dialog.user.info.id') }}
|
||||||
|
span.extra {{ userDialog.id }}
|
||||||
|
el-tooltip(placement="top" :content="$t('dialog.user.info.id_tooltip')" :disabled="hideTooltips")
|
||||||
|
el-dropdown(trigger="click" @click.native.stop size="mini" style="margin-left:5px")
|
||||||
|
el-button(type="default" icon="el-icon-s-order" size="mini" circle)
|
||||||
|
el-dropdown-menu(#default="dropdown")
|
||||||
|
el-dropdown-item(@click.native="copyUserId(userDialog.id)") {{ $t('dialog.user.info.copy_id') }}
|
||||||
|
el-dropdown-item(@click.native="copyUserURL(userDialog.id)") {{ $t('dialog.user.info.copy_url') }}
|
||||||
|
el-dropdown-item(@click.native="copyUserDisplayName(userDialog.ref.displayName)") {{ $t('dialog.user.info.copy_display_name') }}
|
||||||
el-tab-pane(:label="$t('dialog.user.groups.header')")
|
el-tab-pane(:label="$t('dialog.user.groups.header')")
|
||||||
el-button(type="default" :loading="userDialog.isGroupsLoading" @click="getUserGroups(userDialog.id)" size="mini" icon="el-icon-refresh" circle)
|
el-button(type="default" :loading="userDialog.isGroupsLoading" @click="getUserGroups(userDialog.id)" size="mini" icon="el-icon-refresh" circle)
|
||||||
span(style="margin-left:5px") {{ $t('dialog.user.groups.total_count', { count: userGroups.groups.length }) }}
|
span(style="margin-left:5px") {{ $t('dialog.user.groups.total_count', { count: userGroups.groups.length }) }}
|
||||||
|
|||||||
@@ -104,6 +104,7 @@
|
|||||||
"clear_tooltip": "Clear",
|
"clear_tooltip": "Clear",
|
||||||
"delete_tooltip": "Delete",
|
"delete_tooltip": "Delete",
|
||||||
"unavailable_tooltip": "Unavailable",
|
"unavailable_tooltip": "Unavailable",
|
||||||
|
"private": "Private",
|
||||||
"sort_by": "Sort By"
|
"sort_by": "Sort By"
|
||||||
},
|
},
|
||||||
"friend_log": {
|
"friend_log": {
|
||||||
@@ -528,7 +529,6 @@
|
|||||||
"favorite_tooltip": "Add to favorites",
|
"favorite_tooltip": "Add to favorites",
|
||||||
"unfavorite_tooltip": "Remove from favorites",
|
"unfavorite_tooltip": "Remove from favorites",
|
||||||
"refresh": "Refresh",
|
"refresh": "Refresh",
|
||||||
"copy_url": "Copy User URL",
|
|
||||||
"invite": "Invite",
|
"invite": "Invite",
|
||||||
"invite_with_message": "Invite With Message",
|
"invite_with_message": "Invite With Message",
|
||||||
"request_invite": "Request Invite",
|
"request_invite": "Request Invite",
|
||||||
@@ -590,6 +590,11 @@
|
|||||||
"avatar_cloning_allow": "Allowed",
|
"avatar_cloning_allow": "Allowed",
|
||||||
"avatar_cloning_deny": "Deny",
|
"avatar_cloning_deny": "Deny",
|
||||||
"home_location": "Home Location",
|
"home_location": "Home Location",
|
||||||
|
"id": "User ID",
|
||||||
|
"id_tooltip": "Copy to clipboard",
|
||||||
|
"copy_id": "Copy ID",
|
||||||
|
"copy_url": "Copy URL",
|
||||||
|
"copy_display_name": "Copy DisplayName",
|
||||||
"accuracy_notice": "Info from local database may not be accurate",
|
"accuracy_notice": "Info from local database may not be accurate",
|
||||||
"instance_full": "full"
|
"instance_full": "full"
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -47,6 +47,8 @@ mixin favoritesTab()
|
|||||||
el-tooltip(placement="right" :content="$t('view.favorite.unfavorite_tooltip')" :disabled="hideTooltips")
|
el-tooltip(placement="right" :content="$t('view.favorite.unfavorite_tooltip')" :disabled="hideTooltips")
|
||||||
el-button(@click.stop="deleteFavorite(favorite.id)" size="mini" icon="el-icon-delete" circle style="margin-left:5px")
|
el-button(@click.stop="deleteFavorite(favorite.id)" size="mini" icon="el-icon-delete" circle style="margin-left:5px")
|
||||||
template(v-else)
|
template(v-else)
|
||||||
|
.avatar
|
||||||
|
.detail
|
||||||
span(v-text="favorite.name || favorite.id")
|
span(v-text="favorite.name || favorite.id")
|
||||||
el-button(type="text" icon="el-icon-close" size="mini" @click.stop="deleteFavorite(favorite.id)" style="margin-left:5px")
|
el-button(type="text" icon="el-icon-close" size="mini" @click.stop="deleteFavorite(favorite.id)" style="margin-left:5px")
|
||||||
el-tab-pane(:label="$t('view.favorite.worlds.header')")
|
el-tab-pane(:label="$t('view.favorite.worlds.header')")
|
||||||
@@ -87,6 +89,8 @@ mixin favoritesTab()
|
|||||||
template(v-else-if="favorite.ref")
|
template(v-else-if="favorite.ref")
|
||||||
el-tooltip(v-if="favorite.deleted" placement="left" :content="$t('view.favorite.unavailable_tooltip')")
|
el-tooltip(v-if="favorite.deleted" placement="left" :content="$t('view.favorite.unavailable_tooltip')")
|
||||||
i.el-icon-warning(style="color:#f56c6c;margin-left:5px")
|
i.el-icon-warning(style="color:#f56c6c;margin-left:5px")
|
||||||
|
el-tooltip(v-if="favorite.ref.releaseStatus === 'private'" placement="left" :content="$t('view.favorite.private')")
|
||||||
|
i.el-icon-warning(style="color:#e6a23c;margin-left:5px")
|
||||||
el-tooltip(placement="left" :content="$t('view.favorite.move_tooltip')" :disabled="hideTooltips")
|
el-tooltip(placement="left" :content="$t('view.favorite.move_tooltip')" :disabled="hideTooltips")
|
||||||
el-dropdown(trigger="click" @click.native.stop size="mini" style="margin-left:5px")
|
el-dropdown(trigger="click" @click.native.stop size="mini" style="margin-left:5px")
|
||||||
el-button(type="default" icon="el-icon-back" size="mini" circle)
|
el-button(type="default" icon="el-icon-back" size="mini" circle)
|
||||||
@@ -96,6 +100,8 @@ mixin favoritesTab()
|
|||||||
el-tooltip(placement="right" :content="$t('view.favorite.unfavorite_tooltip')" :disabled="hideTooltips")
|
el-tooltip(placement="right" :content="$t('view.favorite.unfavorite_tooltip')" :disabled="hideTooltips")
|
||||||
el-button(@click.stop="deleteFavorite(favorite.id)" size="mini" icon="el-icon-delete" circle style="margin-left:5px")
|
el-button(@click.stop="deleteFavorite(favorite.id)" size="mini" icon="el-icon-delete" circle style="margin-left:5px")
|
||||||
template(v-else)
|
template(v-else)
|
||||||
|
.avatar
|
||||||
|
.detail
|
||||||
span(v-text="favorite.name || favorite.id")
|
span(v-text="favorite.name || favorite.id")
|
||||||
el-tooltip(v-if="favorite.deleted" placement="left" :content="$t('view.favorite.unavailable_tooltip')")
|
el-tooltip(v-if="favorite.deleted" placement="left" :content="$t('view.favorite.unavailable_tooltip')")
|
||||||
i.el-icon-warning(style="color:#f56c6c;margin-left:5px")
|
i.el-icon-warning(style="color:#f56c6c;margin-left:5px")
|
||||||
@@ -123,6 +129,8 @@ mixin favoritesTab()
|
|||||||
el-tooltip(placement="right" :content="$t('view.favorite.unfavorite_tooltip')" :disabled="hideTooltips")
|
el-tooltip(placement="right" :content="$t('view.favorite.unfavorite_tooltip')" :disabled="hideTooltips")
|
||||||
el-button(@click.stop="removeLocalWorldFavorite(favorite.id, group)" size="mini" icon="el-icon-delete" circle style="margin-left:5px")
|
el-button(@click.stop="removeLocalWorldFavorite(favorite.id, group)" size="mini" icon="el-icon-delete" circle style="margin-left:5px")
|
||||||
template(v-else)
|
template(v-else)
|
||||||
|
.avatar
|
||||||
|
.detail
|
||||||
span(v-text="favorite.id")
|
span(v-text="favorite.id")
|
||||||
el-button(type="text" icon="el-icon-close" size="mini" @click.stop="removeLocalWorldFavorite(favorite.id, group)" style="margin-left:5px")
|
el-button(type="text" icon="el-icon-close" size="mini" @click.stop="removeLocalWorldFavorite(favorite.id, group)" style="margin-left:5px")
|
||||||
el-tab-pane(:label="$t('view.favorite.avatars.header')")
|
el-tab-pane(:label="$t('view.favorite.avatars.header')")
|
||||||
@@ -155,6 +163,8 @@ mixin favoritesTab()
|
|||||||
template(v-else-if="favorite.ref")
|
template(v-else-if="favorite.ref")
|
||||||
el-tooltip(v-if="favorite.deleted" placement="left" :content="$t('view.favorite.unavailable_tooltip')")
|
el-tooltip(v-if="favorite.deleted" placement="left" :content="$t('view.favorite.unavailable_tooltip')")
|
||||||
i.el-icon-warning(style="color:#f56c6c;margin-left:5px")
|
i.el-icon-warning(style="color:#f56c6c;margin-left:5px")
|
||||||
|
el-tooltip(v-if="favorite.ref.releaseStatus === 'private'" placement="left" :content="$t('view.favorite.private')")
|
||||||
|
i.el-icon-warning(style="color:#e6a23c;margin-left:5px")
|
||||||
el-tooltip(placement="left" :content="$t('view.favorite.move_tooltip')" :disabled="hideTooltips")
|
el-tooltip(placement="left" :content="$t('view.favorite.move_tooltip')" :disabled="hideTooltips")
|
||||||
el-dropdown(trigger="click" @click.native.stop size="mini" style="margin-left:5px")
|
el-dropdown(trigger="click" @click.native.stop size="mini" style="margin-left:5px")
|
||||||
el-button(type="default" icon="el-icon-back" size="mini" circle)
|
el-button(type="default" icon="el-icon-back" size="mini" circle)
|
||||||
@@ -164,6 +174,7 @@ mixin favoritesTab()
|
|||||||
el-tooltip(placement="right" :content="$t('view.favorite.unfavorite_tooltip')" :disabled="hideTooltips")
|
el-tooltip(placement="right" :content="$t('view.favorite.unfavorite_tooltip')" :disabled="hideTooltips")
|
||||||
el-button(@click.stop="deleteFavorite(favorite.id)" size="mini" icon="el-icon-delete" circle style="margin-left:5px")
|
el-button(@click.stop="deleteFavorite(favorite.id)" size="mini" icon="el-icon-delete" circle style="margin-left:5px")
|
||||||
template(v-else)
|
template(v-else)
|
||||||
|
.avatar
|
||||||
.detail
|
.detail
|
||||||
span.name(v-text="favorite.name || favorite.id")
|
span.name(v-text="favorite.name || favorite.id")
|
||||||
el-button(type="text" icon="el-icon-close" size="mini" @click.stop="deleteFavorite(favorite.id)" style="margin-left:5px")
|
el-button(type="text" icon="el-icon-close" size="mini" @click.stop="deleteFavorite(favorite.id)" style="margin-left:5px")
|
||||||
|
|||||||
Reference in New Issue
Block a user