Linux: Removed change set code again

This commit is contained in:
Elias Naur 2008-04-12 23:09:47 +00:00
parent 6ac8101392
commit 261d453a3e
2 changed files with 7 additions and 32 deletions

View file

@ -404,23 +404,13 @@ final class LinuxDisplay implements DisplayImplementation {
try {
incDisplay();
try {
if (parent != null && !hasXFixes(getDisplay(), 1))
throw new LWJGLException("No XFixes extension available");
ByteBuffer handle = peer_info.lockAndGetHandle();
try {
current_window_mode = getWindowMode(fullscreen);
boolean undecorated = Display.getPrivilegedBoolean("org.lwjgl.opengl.Window.undecorated") || current_window_mode != WINDOWED;
this.parent = parent;
long root_window = getRootWindow(getDisplay(), getDefaultScreen());
current_window = nCreateWindow(getDisplay(), getDefaultScreen(), handle, mode, current_window_mode, x, y, undecorated, root_window);
if (parent != null) {
parent.addFocusListener(focus_listener);
parent_focused = parent.isFocusOwner();
parent_focus_changed = true;
parent_window = getHandle(parent);
changeSaveSet(getDisplay(), current_window, SetModeInsert, SaveSetRoot, SaveSetUnmap);
reparentWindow(getDisplay(), current_window, parent_window, x, y);
}
long parent_window = parent != null ? getHandle(parent) : getRootWindow(getDisplay(), getDefaultScreen());
current_window = nCreateWindow(getDisplay(), getDefaultScreen(), handle, mode, current_window_mode, x, y, undecorated, parent_window);
mapRaised(getDisplay(), current_window);
xembedded = parent != null && isAncestorXEmbedded(parent_window);
blank_cursor = createBlankCursor();
@ -434,6 +424,11 @@ final class LinuxDisplay implements DisplayImplementation {
grab = false;
minimized = false;
dirty = true;
if (parent != null) {
parent.addFocusListener(focus_listener);
parent_focused = parent.isFocusOwner();
parent_focus_changed = true;
}
} finally {
peer_info.unlock();
}
@ -450,9 +445,7 @@ final class LinuxDisplay implements DisplayImplementation {
private static native boolean hasProperty(long display, long window, long property);
private static native long getParentWindow(long display, long window) throws LWJGLException;
private static native void mapRaised(long display, long window);
private static native boolean hasXFixes(long display, int major);
private static native void reparentWindow(long display, long window, long parent, int x, int y);
private static native void changeSaveSet(long display, long window, int mode, int target, int map);
private boolean isAncestorXEmbedded(long window) throws LWJGLException {
long xembed_atom = internAtom("_XEMBED_INFO", true);