forked from aly/qstbak
51 lines
2 KiB
C#
51 lines
2 KiB
C#
using System;
|
|
using Dalamud.Bindings.ImGui;
|
|
|
|
namespace Questionable.Windows.Utils;
|
|
|
|
internal static class ThrottledClipboard
|
|
{
|
|
private const long RefreshIntervalMs = 500L;
|
|
|
|
private static long _nextReadAtMs;
|
|
|
|
private static string _cachedText = string.Empty;
|
|
|
|
public static string GetText()
|
|
{
|
|
long num = _202B_202B_206C_206D_202C_202A_200E_202E_202A_202A_202C_206F_200C_200E_206F_202C_202E_206E_206C_206F_206A_202C_202A_202E_206C_206C_206D_202D_200B_202D_206A_202C_206E_206E_200B_206E_200E_200C_202E_200C_202E();
|
|
if (num >= _nextReadAtMs)
|
|
{
|
|
long num2 = 500L;
|
|
long num3 = num;
|
|
long num4 = num3 ^ num2;
|
|
long num5 = num3 & num2;
|
|
_nextReadAtMs = num4 + (num5 + num5);
|
|
try
|
|
{
|
|
string text = _206C_206F_200D_202C_206F_206F_200C_202D_202D_206C_206B_200D_206D_206A_202C_202A_200B_206F_200F_202B_202A_202B_202A_206F_206F_200E_206C_202A_202B_206E_202A_200E_202C_206C_206C_206D_206D_200F_200D_200D_202E();
|
|
_cachedText = ((text != null) ? _206D_206F_202D_206D_202D_202A_200F_202D_202D_202A_200E_200C_206B_202A_206C_202E_206C_206B_206F_202D_200F_200B_202B_202A_206D_200E_206C_200E_202D_206F_200B_200B_206D_202D_206B_200B_202B_206C_202E_202C_202E(text) : null) ?? string.Empty;
|
|
}
|
|
catch (Exception)
|
|
{
|
|
_cachedText = string.Empty;
|
|
}
|
|
}
|
|
return _cachedText;
|
|
}
|
|
|
|
static long _202B_202B_206C_206D_202C_202A_200E_202E_202A_202A_202C_206F_200C_200E_206F_202C_202E_206E_206C_206F_206A_202C_202A_202E_206C_206C_206D_202D_200B_202D_206A_202C_206E_206E_200B_206E_200E_200C_202E_200C_202E()
|
|
{
|
|
return Environment.TickCount64;
|
|
}
|
|
|
|
static string _206C_206F_200D_202C_206F_206F_200C_202D_202D_206C_206B_200D_206D_206A_202C_202A_200B_206F_200F_202B_202A_202B_202A_206F_206F_200E_206C_202A_202B_206E_202A_200E_202C_206C_206C_206D_206D_200F_200D_200D_202E()
|
|
{
|
|
return ImGui.GetClipboardText();
|
|
}
|
|
|
|
static string _206D_206F_202D_206D_202D_202A_200F_202D_202D_202A_200E_200C_206B_202A_206C_202E_206C_206B_206F_202D_200F_200B_202B_202A_206D_200E_206C_200E_202D_206F_200B_200B_206D_202D_206B_200B_202B_206C_202E_202C_202E(string P_0)
|
|
{
|
|
return P_0.Trim();
|
|
}
|
|
}
|