From a6113b005908778bebfead6356061b0df13a5ce4 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Sun, 15 Apr 2007 05:01:34 +0000 Subject: [PATCH] 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. --- intern/ghost/intern/GHOST_WindowX11.cpp | 24 ++++++++++++++++++++++-- release/scripts/import_obj.py | 4 ++-- 2 files changed, 24 insertions(+), 4 deletions(-) diff --git a/intern/ghost/intern/GHOST_WindowX11.cpp b/intern/ghost/intern/GHOST_WindowX11.cpp index cb356e0796e..ecba86f9468 100755 --- a/intern/ghost/intern/GHOST_WindowX11.cpp +++ b/intern/ghost/intern/GHOST_WindowX11.cpp @@ -36,6 +36,7 @@ // For standard X11 cursors #include +#include // For obscure full screen mode stuuf // lifted verbatim from blut. @@ -163,9 +164,28 @@ GHOST_WindowX11( XChangeProperty(m_display, m_window, atom, atom, 32, 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 // we want this window treated. diff --git a/release/scripts/import_obj.py b/release/scripts/import_obj.py index 92c795235d1..04b8bd42592 100644 --- a/release/scripts/import_obj.py +++ b/release/scripts/import_obj.py @@ -265,7 +265,7 @@ def split_mesh(verts_loc, faces, unique_materials, filepath, SPLIT_OB_OR_GROUP, def face_key(face): 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): 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) face_split_dict[key]= (verts_split, faces_split, unique_materials_split, vert_remap) - print key + oldkey= key face_vert_loc_indicies= face[0]