mirror of
https://github.com/gnustep/libs-back.git
synced 2025-04-22 15:31:14 +00:00
Fix the brain-dead commits I made this morning.
Looks like I wasn't awake then ... git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@34595 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
fce27ac4bd
commit
074b625584
2 changed files with 24 additions and 55 deletions
|
@ -1,8 +1,7 @@
|
|||
2012-01-19 Wolfgang Lux <wolfgang.lux@gmail.com>
|
||||
|
||||
* Source/x11/XGServerWindow.m (-orderwindow:::,
|
||||
-_sendRoot:type:window:data0:data1:data2:data3:data4:): Introduce
|
||||
new user defaults to respectively make app icons and mini windows
|
||||
* Source/x11/XGServerWindow.m (-orderwindow:::): Introduce new
|
||||
user defaults to respectively make app icons and mini windows
|
||||
sticky (aka omnipresent).
|
||||
|
||||
2012-01-11 Fred Kiefer <FredKiefer@gmx.de>
|
||||
|
|
|
@ -622,33 +622,6 @@ static void setWindowHintsForStyle (Display *dpy, Window window,
|
|||
XFlush(dpy);
|
||||
}
|
||||
|
||||
- (void)_sendRoot: (Window)root
|
||||
type: (Atom)type
|
||||
window: (Window)window
|
||||
data0: (long)data0
|
||||
data1: (long)data1
|
||||
data2: (long)data2
|
||||
data3: (long)data3
|
||||
data4: (long)data4
|
||||
{
|
||||
XEvent event;
|
||||
|
||||
memset(&event, 0, sizeof(event));
|
||||
event.xclient.type = ClientMessage;
|
||||
event.xclient.message_type = type;
|
||||
event.xclient.format = 32;
|
||||
event.xclient.display = dpy;
|
||||
event.xclient.window = window;
|
||||
event.xclient.data.l[0] = data0;
|
||||
event.xclient.data.l[1] = data1;
|
||||
event.xclient.data.l[2] = data2;
|
||||
event.xclient.data.l[3] = data3;
|
||||
event.xclient.data.l[4] = data4;
|
||||
XSendEvent(dpy, root, False,
|
||||
(SubstructureNotifyMask|SubstructureRedirectMask), &event);
|
||||
XFlush(dpy);
|
||||
}
|
||||
|
||||
/*
|
||||
* Check if the window manager supports a feature.
|
||||
*/
|
||||
|
@ -3060,7 +3033,6 @@ static BOOL didCreatePixmaps;
|
|||
((window->win_attrs.window_style &
|
||||
(NSIconWindowMask|NSMiniWindowMask)) != 0))
|
||||
{
|
||||
NSUserDefaults *defs = [NSUserDefaults standardUserDefaults];
|
||||
/*
|
||||
* Make any window which assumes the desktop level act as the
|
||||
* background.
|
||||
|
@ -3075,32 +3047,11 @@ static BOOL didCreatePixmaps;
|
|||
data2: generic.netstates.net_wm_state_sticky_atom
|
||||
data3: 1];
|
||||
}
|
||||
else if (((window->win_attrs.window_style & NSIconWindowMask) != 0)
|
||||
&& [defs boolForKey: @"GSStickyAppIcons"] == YES)
|
||||
{
|
||||
[self _sendRoot: window->root
|
||||
type: generic.netstates.net_wm_state_atom
|
||||
window: window->ident
|
||||
data0: _NET_WM_STATE_ADD
|
||||
data1: generic.netstates.net_wm_state_skip_taskbar_atom
|
||||
data2: generic.netstates.net_wm_state_sticky_atom
|
||||
data3: generic.netstates.net_wm_state_skip_pager_atom
|
||||
data4: 1];
|
||||
}
|
||||
else if (((window->win_attrs.window_style & NSMiniWindowMask) != 0)
|
||||
&& [defs boolForKey: @"GSStickyMiniWindows"] == YES)
|
||||
{
|
||||
[self _sendRoot: window->root
|
||||
type: generic.netstates.net_wm_state_atom
|
||||
window: window->ident
|
||||
data0: _NET_WM_STATE_ADD
|
||||
data1: generic.netstates.net_wm_state_skip_taskbar_atom
|
||||
data2: generic.netstates.net_wm_state_sticky_atom
|
||||
data3: generic.netstates.net_wm_state_skip_pager_atom
|
||||
data4: 1];
|
||||
}
|
||||
else
|
||||
{
|
||||
BOOL sticky = NO;
|
||||
NSUserDefaults *defs = [NSUserDefaults standardUserDefaults];
|
||||
|
||||
[self _sendRoot: window->root
|
||||
type: generic.netstates.net_wm_state_atom
|
||||
window: window->ident
|
||||
|
@ -3108,6 +3059,25 @@ static BOOL didCreatePixmaps;
|
|||
data1: generic.netstates.net_wm_state_skip_taskbar_atom
|
||||
data2: generic.netstates.net_wm_state_skip_pager_atom
|
||||
data3: 1];
|
||||
|
||||
if ((window->win_attrs.window_style & NSIconWindowMask) != 0)
|
||||
{
|
||||
sticky = [defs boolForKey: @"GSStickyAppIcons"];
|
||||
}
|
||||
else if ((window->win_attrs.window_style & NSMiniWindowMask) != 0)
|
||||
{
|
||||
sticky = [defs boolForKey: @"GSStickyMiniWindows"];
|
||||
}
|
||||
if (sticky == YES)
|
||||
{
|
||||
[self _sendRoot: window->root
|
||||
type: generic.netstates.net_wm_state_atom
|
||||
window: window->ident
|
||||
data0: _NET_WM_STATE_ADD
|
||||
data1: generic.netstates.net_wm_state_sticky_atom
|
||||
data2: 0
|
||||
data3: 1];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue