private static void HandleUpdate(ClipboardData data) { if (data.IsEmpty) { return; } if (SameAsLast(data)) { return; } if (IsEnabled) { if (Time.Now <= lastUpdate + updateTimeout) { History[0] = data; } else { History.Push(data); GuiTool.Tooltip("saved", 500); } lastUpdate = Time.Now; } }
public static bool SameAsLast(ClipboardData data) { if (History.Count == 0) { return(false); } if (data.HasText && History[0].HasText && data.GetText() == History[0].GetText()) { return(true); } if (data.HasImage && SameAsLast(data.GetImage())) { return(true); } return(false); }