forked from bartvdbraak/blender
Made X11 use _NET_WM_STATE_MAXIMIZED_HORZ and _NET_WM_STATE_MAXIMIZED_VERT when opening (if -p isnt given as an arg)
gsr and myself both wrote a patch for this, using gsr's. import_obj - another error in splitting fixed.
This commit is contained in:
parent
c9a54805a5
commit
a6113b0059
@ -36,6 +36,7 @@
|
|||||||
|
|
||||||
// For standard X11 cursors
|
// For standard X11 cursors
|
||||||
#include <X11/cursorfont.h>
|
#include <X11/cursorfont.h>
|
||||||
|
#include <X11/Xatom.h>
|
||||||
|
|
||||||
// For obscure full screen mode stuuf
|
// For obscure full screen mode stuuf
|
||||||
// lifted verbatim from blut.
|
// lifted verbatim from blut.
|
||||||
@ -164,6 +165,25 @@ GHOST_WindowX11(
|
|||||||
atom, atom, 32,
|
atom, atom, 32,
|
||||||
PropModeReplace, (unsigned char *) &hints, 4);
|
PropModeReplace, (unsigned char *) &hints, 4);
|
||||||
}
|
}
|
||||||
|
} else if (state == GHOST_kWindowStateMaximized) {
|
||||||
|
// With this, xprop should report the following just after launch
|
||||||
|
// _NET_WM_STATE(ATOM) = _NET_WM_STATE_MAXIMIZED_VERT, _NET_WM_STATE_MAXIMIZED_HORZ
|
||||||
|
// After demaximization the right side is empty, though (maybe not the most correct then?)
|
||||||
|
Atom state, atomh, atomv;
|
||||||
|
|
||||||
|
state = XInternAtom(m_display, "_NET_WM_STATE", False);
|
||||||
|
atomh = XInternAtom(m_display, "_NET_WM_STATE_MAXIMIZED_HORZ", False);
|
||||||
|
atomv = XInternAtom(m_display, "_NET_WM_STATE_MAXIMIZED_VERT", False);
|
||||||
|
if (state == None ) {
|
||||||
|
GHOST_PRINT("Atom _NET_WM_STATE requested but not avaliable nor created.\n");
|
||||||
|
} else {
|
||||||
|
XChangeProperty(m_display, m_window,
|
||||||
|
state, XA_ATOM, 32,
|
||||||
|
PropModeAppend, (unsigned char *) &atomh, 1);
|
||||||
|
XChangeProperty(m_display, m_window,
|
||||||
|
state, XA_ATOM, 32,
|
||||||
|
PropModeAppend, (unsigned char *) &atomv, 1);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Create some hints for the window manager on how
|
// Create some hints for the window manager on how
|
||||||
|
@ -265,7 +265,7 @@ def split_mesh(verts_loc, faces, unique_materials, filepath, SPLIT_OB_OR_GROUP,
|
|||||||
def face_key(face):
|
def face_key(face):
|
||||||
return face[4] # object
|
return face[4] # object
|
||||||
|
|
||||||
if not SPLIT_OB_OR_GROUP and SPLIT_MATERIALS:
|
elif not SPLIT_OB_OR_GROUP and SPLIT_MATERIALS:
|
||||||
def face_key(face):
|
def face_key(face):
|
||||||
return face[2] # material
|
return face[2] # material
|
||||||
|
|
||||||
@ -293,7 +293,7 @@ def split_mesh(verts_loc, faces, unique_materials, filepath, SPLIT_OB_OR_GROUP,
|
|||||||
vert_remap= [-1]*len(verts_loc)
|
vert_remap= [-1]*len(verts_loc)
|
||||||
|
|
||||||
face_split_dict[key]= (verts_split, faces_split, unique_materials_split, vert_remap)
|
face_split_dict[key]= (verts_split, faces_split, unique_materials_split, vert_remap)
|
||||||
print key
|
|
||||||
oldkey= key
|
oldkey= key
|
||||||
|
|
||||||
face_vert_loc_indicies= face[0]
|
face_vert_loc_indicies= face[0]
|
||||||
|
Loading…
Reference in New Issue
Block a user