soiz1's picture
Upload folder using huggingface_hub
d46f4a3 verified
package com.mojang.blaze3d.platform;
import com.google.common.base.Charsets;
import java.nio.ByteBuffer;
import net.minecraft.util.StringDecomposer;
import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.api.distmarker.OnlyIn;
import org.lwjgl.BufferUtils;
import org.lwjgl.glfw.GLFW;
import org.lwjgl.glfw.GLFWErrorCallback;
import org.lwjgl.glfw.GLFWErrorCallbackI;
import org.lwjgl.system.MemoryUtil;
@OnlyIn(Dist.CLIENT)
public class ClipboardManager {
public static final int FORMAT_UNAVAILABLE = 65545;
private final ByteBuffer clipboardScratchBuffer = BufferUtils.createByteBuffer(8192);
public String getClipboard(long p_83996_, GLFWErrorCallbackI p_83997_) {
GLFWErrorCallback glfwerrorcallback = GLFW.glfwSetErrorCallback(p_83997_);
String s = GLFW.glfwGetClipboardString(p_83996_);
s = s != null ? StringDecomposer.filterBrokenSurrogates(s) : "";
GLFWErrorCallback glfwerrorcallback1 = GLFW.glfwSetErrorCallback(glfwerrorcallback);
if (glfwerrorcallback1 != null) {
glfwerrorcallback1.free();
}
return s;
}
private static void pushClipboard(long p_83992_, ByteBuffer p_83993_, byte[] p_83994_) {
p_83993_.clear();
p_83993_.put(p_83994_);
p_83993_.put((byte)0);
p_83993_.flip();
GLFW.glfwSetClipboardString(p_83992_, p_83993_);
}
public void setClipboard(long p_83989_, String p_83990_) {
byte[] abyte = p_83990_.getBytes(Charsets.UTF_8);
int i = abyte.length + 1;
if (i < this.clipboardScratchBuffer.capacity()) {
pushClipboard(p_83989_, this.clipboardScratchBuffer, abyte);
} else {
ByteBuffer bytebuffer = MemoryUtil.memAlloc(i);
try {
pushClipboard(p_83989_, bytebuffer, abyte);
} finally {
MemoryUtil.memFree(bytebuffer);
}
}
}
}