mirror of
https://github.com/glfw/glfw.git
synced 2024-11-23 10:35:10 +00:00
Removed support for primary and secondary selections.
This commit is contained in:
parent
cbe29b4963
commit
d55616661d
@ -142,8 +142,7 @@ void _glfwPlatformSetClipboardData(void *data, size_t size, int format)
|
|||||||
XSetSelectionOwner(_glfwLibrary.X11.display, XA_PRIMARY,
|
XSetSelectionOwner(_glfwLibrary.X11.display, XA_PRIMARY,
|
||||||
_glfwLibrary.activeWindow->X11.handle, CurrentTime);
|
_glfwLibrary.activeWindow->X11.handle, CurrentTime);
|
||||||
XSetSelectionOwner(_glfwLibrary.X11.display,
|
XSetSelectionOwner(_glfwLibrary.X11.display,
|
||||||
_glfwLibrary.X11.selection.atoms.clipboard
|
_glfwLibrary.X11.selection.atom,
|
||||||
[_GLFW_CLIPBOARD_ATOM_CLIPBOARD],
|
|
||||||
_glfwLibrary.activeWindow->X11.handle, CurrentTime);
|
_glfwLibrary.activeWindow->X11.handle, CurrentTime);
|
||||||
XFlush(_glfwLibrary.X11.display);
|
XFlush(_glfwLibrary.X11.display);
|
||||||
}
|
}
|
||||||
@ -162,24 +161,20 @@ size_t _glfwPlatformGetClipboardData(void *data, size_t size, int format)
|
|||||||
|
|
||||||
// Try different clipboards and formats that relate to the GLFW
|
// Try different clipboards and formats that relate to the GLFW
|
||||||
// format with preference for more appropriate formats first
|
// format with preference for more appropriate formats first
|
||||||
Atom *xcbrd = _glfwLibrary.X11.selection.atoms.clipboard;
|
|
||||||
Atom *xcbrdend = _glfwLibrary.X11.selection.atoms.clipboard +
|
|
||||||
_GLFW_CLIPBOARD_ATOM_COUNT;
|
|
||||||
Atom *xfmt = getInternalFormat(format);
|
Atom *xfmt = getInternalFormat(format);
|
||||||
Atom *xfmtend = xfmt + _GLFW_STRING_ATOM_COUNT;
|
Atom *xfmtend = xfmt + _GLFW_STRING_ATOM_COUNT;
|
||||||
|
|
||||||
// Get the currently active window
|
// Get the currently active window
|
||||||
Window window = _glfwLibrary.activeWindow->X11.handle;
|
Window window = _glfwLibrary.activeWindow->X11.handle;
|
||||||
|
|
||||||
for ( ; xcbrd != xcbrdend; xcbrd++)
|
|
||||||
{
|
|
||||||
for ( ; xfmt != xfmtend; xfmt++)
|
for ( ; xfmt != xfmtend; xfmt++)
|
||||||
{
|
{
|
||||||
// Specify the format we would like.
|
// Specify the format we would like.
|
||||||
_glfwLibrary.X11.selection.request = *xfmt;
|
_glfwLibrary.X11.selection.request = *xfmt;
|
||||||
|
|
||||||
// Convert the selection into a format we would like.
|
// Convert the selection into a format we would like.
|
||||||
XConvertSelection(_glfwLibrary.X11.display, *xcbrd,
|
XConvertSelection(_glfwLibrary.X11.display,
|
||||||
|
_glfwLibrary.X11.selection.atom,
|
||||||
*xfmt, None, window, CurrentTime);
|
*xfmt, None, window, CurrentTime);
|
||||||
XFlush(_glfwLibrary.X11.display);
|
XFlush(_glfwLibrary.X11.display);
|
||||||
|
|
||||||
@ -194,11 +189,7 @@ size_t _glfwPlatformGetClipboardData(void *data, size_t size, int format)
|
|||||||
|
|
||||||
// Successful?
|
// Successful?
|
||||||
if (_glfwLibrary.X11.selection.converted == 1)
|
if (_glfwLibrary.X11.selection.converted == 1)
|
||||||
{
|
|
||||||
_glfwLibrary.X11.selection.converted = 0;
|
_glfwLibrary.X11.selection.converted = 0;
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Unsuccessful conversion, bail with no clipboard data
|
// Unsuccessful conversion, bail with no clipboard data
|
||||||
if (_glfwLibrary.X11.selection.converted)
|
if (_glfwLibrary.X11.selection.converted)
|
||||||
|
@ -456,13 +456,9 @@ static GLboolean initDisplay(void)
|
|||||||
// the keyboard mapping.
|
// the keyboard mapping.
|
||||||
updateKeyCodeLUT();
|
updateKeyCodeLUT();
|
||||||
|
|
||||||
// Find or create clipboard atoms
|
// Find or create clipboard atom
|
||||||
_glfwLibrary.X11.selection.atoms.clipboard[_GLFW_CLIPBOARD_ATOM_PRIMARY] =
|
_glfwLibrary.X11.selection.atom =
|
||||||
XA_PRIMARY;
|
|
||||||
_glfwLibrary.X11.selection.atoms.clipboard[_GLFW_CLIPBOARD_ATOM_CLIPBOARD] =
|
|
||||||
XInternAtom(_glfwLibrary.X11.display, "CLIPBOARD", False);
|
XInternAtom(_glfwLibrary.X11.display, "CLIPBOARD", False);
|
||||||
_glfwLibrary.X11.selection.atoms.clipboard[_GLFW_CLIPBOARD_ATOM_SECONDARY] =
|
|
||||||
XA_SECONDARY;
|
|
||||||
|
|
||||||
// Find or create selection atoms
|
// Find or create selection atoms
|
||||||
_glfwLibrary.X11.selection.atoms.string[_GLFW_STRING_ATOM_UTF8] =
|
_glfwLibrary.X11.selection.atoms.string[_GLFW_STRING_ATOM_UTF8] =
|
||||||
|
@ -85,12 +85,6 @@
|
|||||||
#define _GLFW_PLATFORM_LIBRARY_STATE _GLFWlibraryX11 X11
|
#define _GLFW_PLATFORM_LIBRARY_STATE _GLFWlibraryX11 X11
|
||||||
#define _GLFW_PLATFORM_CONTEXT_STATE _GLFWcontextGLX GLX
|
#define _GLFW_PLATFORM_CONTEXT_STATE _GLFWcontextGLX GLX
|
||||||
|
|
||||||
// Clipboard atoms
|
|
||||||
#define _GLFW_CLIPBOARD_ATOM_PRIMARY 0
|
|
||||||
#define _GLFW_CLIPBOARD_ATOM_CLIPBOARD 1
|
|
||||||
#define _GLFW_CLIPBOARD_ATOM_SECONDARY 2
|
|
||||||
#define _GLFW_CLIPBOARD_ATOM_COUNT 3
|
|
||||||
|
|
||||||
// String atoms
|
// String atoms
|
||||||
#define _GLFW_STRING_ATOM_UTF8 0
|
#define _GLFW_STRING_ATOM_UTF8 0
|
||||||
#define _GLFW_STRING_ATOM_COMPOUND 1
|
#define _GLFW_STRING_ATOM_COMPOUND 1
|
||||||
@ -236,8 +230,8 @@ typedef struct _GLFWlibraryX11
|
|||||||
|
|
||||||
// Selection data
|
// Selection data
|
||||||
struct {
|
struct {
|
||||||
|
Atom atom;
|
||||||
struct {
|
struct {
|
||||||
Atom clipboard[_GLFW_CLIPBOARD_ATOM_COUNT];
|
|
||||||
Atom string[_GLFW_STRING_ATOM_COUNT];
|
Atom string[_GLFW_STRING_ATOM_COUNT];
|
||||||
} atoms;
|
} atoms;
|
||||||
struct {
|
struct {
|
||||||
|
Loading…
Reference in New Issue
Block a user