apply gravity to the chosen coords, bound the undermouse placement
[dana/openbox.git] / ChangeLog
1 2003-09-09  Ben Jansens  <xor@zed.orodu.net>
2
3         * openbox/event.c, openbox/keyboard.c, openbox/keyboard.h:
4         save teh client for interactive actions cuz after teh keyboard is grabbed there is no client
5
6         * configure.ac: beta2
7
8         * ChangeLog: recent changes
9
10         * openbox/action.c, openbox/action.h, openbox/event.c, openbox/keyboard.c, openbox/keyboard.h, openbox/mouse.c, openbox/mouse.h, openbox/screen.c:
11         no more interactive mouse actions, they are evil etc. actions now "feel" much more solid. if move/resizing a window while changing workspaces, it will follow.
12
13         * openbox/action.c: no mouse interactive actions. no bugs.
14
15 2003-09-08  Ben Jansens  <xor@zed.orodu.net>
16
17         * openbox/client.c: remove debug prints
18
19         * render/theme.c: allow a padding.width of 0
20
21         * tools/themeupdate/themeupdate.py: warn about the right shit
22
23         * openbox/focus.h: remove comment that isnt right anymore
24
25         * openbox/frame.c, openbox/framerender.c, openbox/popup.c, render/theme.c, render/theme.h, themes/allegro/themerc, themes/artwiz/themerc, themes/blah41/themerc, themes/om4ob/themerc, themes/thebear/themerc, tools/themeupdate/themeupdate.py:
26         bigtime theme changes. bigtime.
27
28         * openbox/focus.c, openbox/focus.h: expose focus_cycle_client
29
30         * openbox/event.c:
31         act on the visibly focused window when that differs from the actual focused window
32
33         * openbox/client.c: round 2 for this shit
34
35         * openbox/client.c: flush after resizing a client
36
37         * openbox/client.c:
38         if the client is growing, resize it before the frame. if its shrinking, then resize the frame first. reduces flicker lots.
39
40         * openbox/client.c:
41         watch for windows with titlecounts changing their title and getting an incorrect titlecount
42
43         * openbox/client.c: oops
44
45         * openbox/client.c: some simpler code
46
47         * openbox/action.c:
48         grab the pointer befoer shading a window to prevent focus moving in sloppy focus
49
50         * openbox/client.c:
51         dont reset all the states to FALSE in client_get_state, this made an initial IconicState get ignored
52
53         * data/rc.xml: oops missed a capitalization
54
55         * data/menu.xml: add obconf to the menu
56
57         * openbox/menuframe.c: flush after drawing each menu item
58
59         * openbox/config.h: timeouts are all in millisecond
60
61         * openbox/menu.c:
62         if the menu path starts with a /, then just load it, don't try the prefixes
63
64         * openbox/dock.c: fix autohiding
65
66         * openbox/dock.c: dont modify the time from the config parser
67
68         * openbox/config.c:
69         make both focusDelay and hideTimeout in milliseconds
70
71         * openbox/dock.c:
72         fix crash when reconfigure changes the stacking layer of the dock
73
74         * data/rc.xml: capitalize mouse actions
75
76         * openbox/screen.c:
77         move windows around before removing the focus order lists to prevent nasty segfault when it removes a window from an already freed list
78
79 2003-09-07  Ben Jansens  <xor@zed.orodu.net>
80
81         * parser/parse.c: dont use obsolete xmlChildrenNode
82
83         * po/Makevars: add my email address
84
85         * Makefile.am, configure.ac, parser/.cvsignore, parser/obparser-3.0.pc.in, render/.cvsignore, render/obrender-3.0.pc.in:
86         remove obconf from this tree.
87         add versioning for the libraries and pkgconfig files for them.
88
89         * openbox/config.c, openbox/menu.c, openbox/session.c:
90         dont use obsolete xmlChildrenNode
91
92         * openbox/framerender.c, openbox/menuframe.c: xflush after rendering
93
94         * data/rc.xml, openbox/action.c, openbox/action.h, openbox/client_list_menu.c, openbox/client_menu.c, openbox/config.c, openbox/event.c, openbox/keyboard.c, openbox/menu.c, openbox/menu.h, openbox/menuframe.c, openbox/menuframe.h, openbox/misc.h, openbox/mouse.c, openbox/mouse.h:
95         little bit of an actions overhaul, added action_run* so that duplicated code can all be in the same place now woot.
96         allow actions to specify when they can be used (ShowMenu cant in the OB_USER_ACTION_MENU_SELECTION case)
97         remove KeyboardMove ad KeyboardResize. Instead, just use Move and Resize and determine if it should be a keyboard move/resize in the code
98
99 2003-09-06  Ben Jansens  <xor@zed.orodu.net>
100
101         * openbox/plugin.c, openbox/plugin.h:
102         these shoulda been removed long ago
103
104         * openbox/event.c: \n's at the end of strings passed to ob_debg
105
106         * openbox/client.c: Closes #799. i think im too high to say more.
107
108         * openbox/screen.c:
109         sync before removing all the enter events. this way it actually catches them
110
111         * render/theme.c:
112         add the margins to the label_height so that the text doesnt cover the bevel/border
113
114 2003-09-04  Ben Jansens  <xor@zed.orodu.net>
115
116         * openbox/menu.c: code style fix
117
118         * openbox/menu.c:
119         optimization. don't need a glist where a simple pointer will suffice.
120
121         * openbox/openbox.c: was adding an extra / in ob_expand_tilde
122
123         * openbox/menu.c, openbox/menu.h:
124         when a pipe menu is killed, kill all its submenus as well
125
126         * openbox/geom.h: fix RECT_CONTAINS, name clash
127
128         * render/image.h, render/render.c:
129         new scaling based on the Bresenham algorithm
130
131         * render/image.c: new scaling, based on the Bresenham algorithm
132
133         * openbox/moveresize.c:
134         off by one caused clients to be resized a little during a move
135
136         * openbox/menuframe.c: oops missed a !
137
138         * data/rc.xml, openbox/config.c: turn off focusDelay by default
139
140         * openbox/openbox.c, openbox/session.c, openbox/session.h, po/POTFILES.in:
141         move session code out of openbox.c all into session.c
142         remove --sm-save-file and --sm-client-id from argv so that they dont get reused when doing a restart.
143
144         * openbox/grab.h: match the declarations in the header
145
146         * openbox/keyboard.c: ungrab only as many times as we grabbed
147
148         * openbox/openbox.c: remove the reconfigure popup
149
150         * openbox/grab.c: match the func prototypes in the header
151
152 2003-09-03  Ben Jansens  <xor@zed.orodu.net>
153
154         * ChangeLog: recent changes
155
156         * openbox/startupnotify.c: fix for not using startup notification
157
158         * ChangeLog: recent changes
159
160         * configure.ac: beta1 time. fuck yah.
161
162         * openbox/openbox.c:
163         kill the window mapping.. its not doing anything anyways? whatever..
164
165         * openbox/mouse.c:
166         dont ungrab/grab all the mouse bindings every time a new one is added. just do it once on startup.
167
168         * openbox/openbox.c:
169         dont exit when a theme can't be loaded during reconfigure
170
171         * openbox/client.c:
172         handle the case where a transient is a child of a dockapp
173
174         * openbox/moveresize.c:
175         don't let move/resize occur on non-visible clients
176
177         * openbox/openbox.c:
178         display a popup and perform a smooth transition when reconfiguring
179
180         * openbox/keyboard.c: grab keys on the client windows themselves
181
182         * openbox/frame.c:
183         only remove one flash timer at a time, so all frames dont stop flashing just cuz a window closed
184
185         * openbox/client_list_menu.c: remove from desktop_menus when freed
186
187         * openbox/event.c:
188         use the ob_main_loop_timeout_remove_data to only remove one timer
189
190         * openbox/dock.c: dont set a strut when there are no apps in the dock
191
192         * openbox/client.c:
193         support getting the desktop from the startup notification protocol
194         pass on to the startup notification code that a window has mapped with a given wmclass
195
196         * openbox/client.h: add the startup_id
197
198         * openbox/openbox.c, openbox/openbox.h: add the NONE cursor.
199         remove startup notification code from openbox.c and openbox.h
200         call the new sn_startup/shutdown for startupnotification.c
201
202         * openbox/moveresize.c: use NONE cursor when not specifying one
203
204         * Makefile.am:
205         remove startup hacks and add startup notification in its own files
206
207         * openbox/event.c:
208         remove the startup notification code from event.c, it all lives in its own file now
209
210         * openbox/startupnotify.c, openbox/startupnotify.h:
211         add startup notification in its own .c/.h files
212
213         * openbox/menuframe.c: use the NONE cursor when not specifying one
214
215         * openbox/mainloop.c, openbox/mainloop.h:
216         add ob_main_loop_timeout_remove_data.
217         make the timeout remove functions remove *all* timeouts that match
218
219         * openbox/startup.c, openbox/startup.h:
220         remove teh startup state saving hacks since we can reconfigure now. no more restarting for the average user anymore.
221
222         * openbox/grab.c: use the NONE cursor when not specifying one
223
224         * openbox/screen.c, openbox/screen.h:
225         remove all the startup notification code from screen.c
226
227         * openbox/prop.c, openbox/prop.h: add the startup_id atom
228
229         * openbox/action.c, openbox/keyboard.c, openbox/mouse.c:
230         use the NONE cursor when not specifying a cursor
231
232         * openbox/misc.h: add a NONE cursor, to not change the cursor at all
233
234         * data/menu.xml: add reconfigure to the menu
235
236         * openbox/action.c, openbox/action.h, openbox/client.c, openbox/client.h, openbox/dock.c, openbox/dock.h, openbox/event.c, openbox/event.h, openbox/focus.c, openbox/focus.h, openbox/frame.c, openbox/frame.h, openbox/grab.h, openbox/group.c, openbox/group.h, openbox/keyboard.c, openbox/keyboard.h, openbox/menu.c, openbox/menu.h, openbox/mouse.c, openbox/mouse.h, openbox/moveresize.c, openbox/moveresize.h, openbox/openbox.c, openbox/openbox.h, openbox/screen.c, openbox/screen.h, openbox/window.c, openbox/window.h:
237         add a reconfigure action, also reconfigure on SIGUSR2.
238         support reconfiguring throughout the entire codebase.
239
240         * themes/thebear/themerc: updates for thebear from merry
241
242         * openbox/event.c:
243         make focusDelay check the destroying window properly before killing the timer
244
245         * data/rc.xml: add default A-space binding for the client menu
246
247         * AUTHORS: add teh focusDelay option for mikachu
248
249         * openbox/menuframe.c, openbox/menuframe.h:
250         track the maximum margin of menu items. use this to keep icons in the menus inside the bevel/borders of the menu items
251
252         * ChangeLog: recent changes
253
254         * configure.ac: alpha8
255
256         * data/rc.xml, openbox/config.c, openbox/config.h, openbox/event.c:
257         add the focusDelay option
258
259         * openbox/mouse.c:
260         dont grab frame context mouse bindings on desktop windows
261
262         * openbox/client.c, openbox/client.h, openbox/menu.c, openbox/moveresize.c:
263         make the client destructor a GDestroyNotify
264
265         * Makefile.am: add themeupdate.py to the distribution
266
267         * data/rc.xml: add focus the desktop on left click binding
268
269         * openbox/menuframe.c: rm empty line
270
271         * openbox/menuframe.c: limit menus' width to 400px
272
273         * data/rc.xml, openbox/config.c:
274         rename the theme name node from 'theme' to 'name'
275
276         * data/rc.xml: fix capitalization and empty tags. cleanup.
277
278         * data/rc.xml: remove obsolete placement/remember option
279
280         * openbox/moveresize.c:
281         only show resize popups for clients with size increments. no move popup at all. waste of screen space.
282
283         * openbox/popup.c: use the provided margins to layout the popup better
284
285         * render/render.c, render/render.h:
286         provide a function to give the margins for an appearance
287
288         * data/rc.xml, openbox/config.c:
289         make the default screen-edge resistance 20 (double what it is for windows)
290
291         * render/render.c:
292         we use the offsets we get from the server, we should use the byte order too..
293
294         * render/color.c: remove bad comment
295
296 2003-09-03  Ben Jansens  <xor@zed.orodu.net>
297
298         * openbox/startupnotify.c: fix for not using startup notification
299
300         * ChangeLog: recent changes
301
302         * configure.ac: beta1 time. fuck yah.
303
304         * openbox/openbox.c:
305         kill the window mapping.. its not doing anything anyways? whatever..
306
307         * openbox/mouse.c:
308         dont ungrab/grab all the mouse bindings every time a new one is added. just do it once on startup.
309
310         * openbox/openbox.c:
311         dont exit when a theme can't be loaded during reconfigure
312
313         * openbox/client.c:
314         handle the case where a transient is a child of a dockapp
315
316         * openbox/moveresize.c:
317         don't let move/resize occur on non-visible clients
318
319         * openbox/openbox.c:
320         display a popup and perform a smooth transition when reconfiguring
321
322         * openbox/keyboard.c: grab keys on the client windows themselves
323
324         * openbox/frame.c:
325         only remove one flash timer at a time, so all frames dont stop flashing just cuz a window closed
326
327         * openbox/client_list_menu.c: remove from desktop_menus when freed
328
329         * openbox/event.c:
330         use the ob_main_loop_timeout_remove_data to only remove one timer
331
332         * openbox/dock.c: dont set a strut when there are no apps in the dock
333
334         * openbox/client.c:
335         support getting the desktop from the startup notification protocol
336         pass on to the startup notification code that a window has mapped with a given wmclass
337
338         * openbox/client.h: add the startup_id
339
340         * openbox/openbox.c, openbox/openbox.h: add the NONE cursor.
341         remove startup notification code from openbox.c and openbox.h
342         call the new sn_startup/shutdown for startupnotification.c
343
344         * openbox/moveresize.c: use NONE cursor when not specifying one
345
346         * Makefile.am:
347         remove startup hacks and add startup notification in its own files
348
349         * openbox/event.c:
350         remove the startup notification code from event.c, it all lives in its own file now
351
352         * openbox/startupnotify.c, openbox/startupnotify.h:
353         add startup notification in its own .c/.h files
354
355         * openbox/menuframe.c: use the NONE cursor when not specifying one
356
357         * openbox/mainloop.c, openbox/mainloop.h:
358         add ob_main_loop_timeout_remove_data.
359         make the timeout remove functions remove *all* timeouts that match
360
361         * openbox/startup.c, openbox/startup.h:
362         remove teh startup state saving hacks since we can reconfigure now. no more restarting for the average user anymore.
363
364         * openbox/grab.c: use the NONE cursor when not specifying one
365
366         * openbox/screen.c, openbox/screen.h:
367         remove all the startup notification code from screen.c
368
369         * openbox/prop.c, openbox/prop.h: add the startup_id atom
370
371         * openbox/action.c, openbox/keyboard.c, openbox/mouse.c:
372         use the NONE cursor when not specifying a cursor
373
374         * openbox/misc.h: add a NONE cursor, to not change the cursor at all
375
376         * data/menu.xml: add reconfigure to the menu
377
378         * openbox/action.c, openbox/action.h, openbox/client.c, openbox/client.h, openbox/dock.c, openbox/dock.h, openbox/event.c, openbox/event.h, openbox/focus.c, openbox/focus.h, openbox/frame.c, openbox/frame.h, openbox/grab.h, openbox/group.c, openbox/group.h, openbox/keyboard.c, openbox/keyboard.h, openbox/menu.c, openbox/menu.h, openbox/mouse.c, openbox/mouse.h, openbox/moveresize.c, openbox/moveresize.h, openbox/openbox.c, openbox/openbox.h, openbox/screen.c, openbox/screen.h, openbox/window.c, openbox/window.h:
379         add a reconfigure action, also reconfigure on SIGUSR2.
380         support reconfiguring throughout the entire codebase.
381
382         * themes/thebear/themerc: updates for thebear from merry
383
384         * openbox/event.c:
385         make focusDelay check the destroying window properly before killing the timer
386
387         * data/rc.xml: add default A-space binding for the client menu
388
389         * AUTHORS: add teh focusDelay option for mikachu
390
391         * openbox/menuframe.c, openbox/menuframe.h:
392         track the maximum margin of menu items. use this to keep icons in the menus inside the bevel/borders of the menu items
393
394         * ChangeLog: recent changes
395
396         * configure.ac: alpha8
397
398         * data/rc.xml, openbox/config.c, openbox/config.h, openbox/event.c:
399         add the focusDelay option
400
401         * openbox/mouse.c:
402         dont grab frame context mouse bindings on desktop windows
403
404         * openbox/client.c, openbox/client.h, openbox/menu.c, openbox/moveresize.c:
405         make the client destructor a GDestroyNotify
406
407         * Makefile.am: add themeupdate.py to the distribution
408
409         * data/rc.xml: add focus the desktop on left click binding
410
411         * openbox/menuframe.c: rm empty line
412
413         * openbox/menuframe.c: limit menus' width to 400px
414
415         * data/rc.xml, openbox/config.c:
416         rename the theme name node from 'theme' to 'name'
417
418         * data/rc.xml: fix capitalization and empty tags. cleanup.
419
420         * data/rc.xml: remove obsolete placement/remember option
421
422         * openbox/moveresize.c:
423         only show resize popups for clients with size increments. no move popup at all. waste of screen space.
424
425         * openbox/popup.c: use the provided margins to layout the popup better
426
427         * render/render.c, render/render.h:
428         provide a function to give the margins for an appearance
429
430         * data/rc.xml, openbox/config.c:
431         make the default screen-edge resistance 20 (double what it is for windows)
432
433         * render/render.c:
434         we use the offsets we get from the server, we should use the byte order too..
435
436         * render/color.c: remove bad comment
437
438 2003-09-03  Ben Jansens  <xor@zed.orodu.net>
439
440         * ChangeLog: recent changes
441
442         * configure.ac: beta1 time. fuck yah.
443
444         * openbox/openbox.c:
445         kill the window mapping.. its not doing anything anyways? whatever..
446
447         * openbox/mouse.c:
448         dont ungrab/grab all the mouse bindings every time a new one is added. just do it once on startup.
449
450         * openbox/openbox.c:
451         dont exit when a theme can't be loaded during reconfigure
452
453         * openbox/client.c:
454         handle the case where a transient is a child of a dockapp
455
456         * openbox/moveresize.c:
457         don't let move/resize occur on non-visible clients
458
459         * openbox/openbox.c:
460         display a popup and perform a smooth transition when reconfiguring
461
462         * openbox/keyboard.c: grab keys on the client windows themselves
463
464         * openbox/frame.c:
465         only remove one flash timer at a time, so all frames dont stop flashing just cuz a window closed
466
467         * openbox/client_list_menu.c: remove from desktop_menus when freed
468
469         * openbox/event.c:
470         use the ob_main_loop_timeout_remove_data to only remove one timer
471
472         * openbox/dock.c: dont set a strut when there are no apps in the dock
473
474         * openbox/client.c:
475         support getting the desktop from the startup notification protocol
476         pass on to the startup notification code that a window has mapped with a given wmclass
477
478         * openbox/client.h: add the startup_id
479
480         * openbox/openbox.c, openbox/openbox.h: add the NONE cursor.
481         remove startup notification code from openbox.c and openbox.h
482         call the new sn_startup/shutdown for startupnotification.c
483
484         * openbox/moveresize.c: use NONE cursor when not specifying one
485
486         * Makefile.am:
487         remove startup hacks and add startup notification in its own files
488
489         * openbox/event.c:
490         remove the startup notification code from event.c, it all lives in its own file now
491
492         * openbox/startupnotify.c, openbox/startupnotify.h:
493         add startup notification in its own .c/.h files
494
495         * openbox/menuframe.c: use the NONE cursor when not specifying one
496
497         * openbox/mainloop.c, openbox/mainloop.h:
498         add ob_main_loop_timeout_remove_data.
499         make the timeout remove functions remove *all* timeouts that match
500
501         * openbox/startup.c, openbox/startup.h:
502         remove teh startup state saving hacks since we can reconfigure now. no more restarting for the average user anymore.
503
504         * openbox/grab.c: use the NONE cursor when not specifying one
505
506         * openbox/screen.c, openbox/screen.h:
507         remove all the startup notification code from screen.c
508
509         * openbox/prop.c, openbox/prop.h: add the startup_id atom
510
511         * openbox/action.c, openbox/keyboard.c, openbox/mouse.c:
512         use the NONE cursor when not specifying a cursor
513
514         * openbox/misc.h: add a NONE cursor, to not change the cursor at all
515
516         * data/menu.xml: add reconfigure to the menu
517
518         * openbox/action.c, openbox/action.h, openbox/client.c, openbox/client.h, openbox/dock.c, openbox/dock.h, openbox/event.c, openbox/event.h, openbox/focus.c, openbox/focus.h, openbox/frame.c, openbox/frame.h, openbox/grab.h, openbox/group.c, openbox/group.h, openbox/keyboard.c, openbox/keyboard.h, openbox/menu.c, openbox/menu.h, openbox/mouse.c, openbox/mouse.h, openbox/moveresize.c, openbox/moveresize.h, openbox/openbox.c, openbox/openbox.h, openbox/screen.c, openbox/screen.h, openbox/window.c, openbox/window.h:
519         add a reconfigure action, also reconfigure on SIGUSR2.
520         support reconfiguring throughout the entire codebase.
521
522         * themes/thebear/themerc: updates for thebear from merry
523
524         * openbox/event.c:
525         make focusDelay check the destroying window properly before killing the timer
526
527         * data/rc.xml: add default A-space binding for the client menu
528
529         * AUTHORS: add teh focusDelay option for mikachu
530
531         * openbox/menuframe.c, openbox/menuframe.h:
532         track the maximum margin of menu items. use this to keep icons in the menus inside the bevel/borders of the menu items
533
534         * ChangeLog: recent changes
535
536         * configure.ac: alpha8
537
538         * data/rc.xml, openbox/config.c, openbox/config.h, openbox/event.c:
539         add the focusDelay option
540
541         * openbox/mouse.c:
542         dont grab frame context mouse bindings on desktop windows
543
544         * openbox/client.c, openbox/client.h, openbox/menu.c, openbox/moveresize.c:
545         make the client destructor a GDestroyNotify
546
547         * Makefile.am: add themeupdate.py to the distribution
548
549         * data/rc.xml: add focus the desktop on left click binding
550
551         * openbox/menuframe.c: rm empty line
552
553         * openbox/menuframe.c: limit menus' width to 400px
554
555         * data/rc.xml, openbox/config.c:
556         rename the theme name node from 'theme' to 'name'
557
558         * data/rc.xml: fix capitalization and empty tags. cleanup.
559
560         * data/rc.xml: remove obsolete placement/remember option
561
562         * openbox/moveresize.c:
563         only show resize popups for clients with size increments. no move popup at all. waste of screen space.
564
565         * openbox/popup.c: use the provided margins to layout the popup better
566
567         * render/render.c, render/render.h:
568         provide a function to give the margins for an appearance
569
570         * data/rc.xml, openbox/config.c:
571         make the default screen-edge resistance 20 (double what it is for windows)
572
573         * render/render.c:
574         we use the offsets we get from the server, we should use the byte order too..
575
576         * render/color.c: remove bad comment
577
578 2003-09-02  Ben Jansens  <xor@zed.orodu.net>
579
580         * openbox/moveresize.c:
581         more fixes to keep the pointer stuff aligned when doing keyboard move/resize
582
583         * openbox/moveresize.c:
584         fix flashing when using keyboard move against the edge of the screen
585
586         * render/gradient.c:
587         interlace is drawn first, so bevels n shit cover it
588
589         * openbox/client_menu.c, openbox/menu.h, openbox/menuframe.c, openbox/menuframe.h:
590         use new menu.bullet.selected.imageColor. use the text colors for the menu mask icons instead of teh bullet color, and set it based on selected/disabled/normal like the text.
591
592         * render/theme.c, render/theme.h: add menu.bullet.selected.imageColor
593
594         * openbox/action.c:
595         grab the mouse before any move/resizes in actions, preventing focus from moving when followMouse is on and the window moves/resizes out from under the pointer
596
597         * Makefile.am, data/menu, data/menu.xml, data/rc.xml, openbox/menu.c:
598         move the default menu to menu.xml
599
600         * openbox/session.c: remove debug prints
601
602         * render/render.c: remove debug print
603
604         * render/color.c: remove XXX comment, it was right, now its done :>
605
606         * render/color.c, render/color.h:
607         use the new color hash to cache RrColors
608
609         * render/instance.c, render/instance.h, render/render.h:
610         move some internal functions from render.h to instance.h
611         add a color hash table to the RrInstance
612
613         * openbox/resist.c: remove debug print
614
615         * openbox/mainloop.c: make the segfault swearing more clear
616
617         * openbox/moveresize.c:
618         add comment about the new code in moveresize for size increment windows
619
620         * openbox/client.c, openbox/moveresize.c:
621         stop doing stupid shit for the size increments in client_configure, it belongs in the moveresize code. add it there.
622
623         * openbox/resist.c, openbox/resist.h:
624         separate window and screen snapping so only one or the other can be used
625
626         * openbox/action.c: grow to edge is a move and a resize, oops
627
628 2003-09-01  Ben Jansens  <xor@zed.orodu.net>
629
630         * Makefile.am, data/rc.xml, data/rc3, parser/parse.c:
631         move rc3 to rc.xml
632
633         * Makefile.am: update for the new theme selections
634
635         * data/rc3: make thebear the default theme
636
637         * themes/thebear/themerc:
638         add a menu overlap and smaller font size for the menu items
639
640         * themes/allegro/bullet.xbm, themes/allegro/themerc, themes/artwiz/themerc, themes/blah41/themerc, themes/om4ob/themerc, themes/thebear/themerc:
641         add/fix themes for 3.0
642
643         * openbox/menuframe.c, openbox/popup.c, render/theme.c, render/theme.h:
644         rename back the app_selected appearances to app_hilite
645
646         * tools/themeupdate/themeupdate.py: some stuff is exact
647
648         * tools/themeupdate/themeupdate.py: remove menu.bullet from themes
649
650         * tools/themeupdate/themeupdate.py: show errors on stderr
651
652         * tools/themeupdate/themeupdate.py: nicer usage output
653
654         * openbox/moveresize.c: this move is not final
655
656         * openbox/openbox.c:
657         make ob_expand_tilde expand all tildes in the string
658
659         * tools/themeupdate/themeupdate.py: global valid
660
661         * tools/themeupdate/themeupdate.py: more checks, for pixelsize fonts
662
663         * tools/themeupdate/themeupdate.py:
664         add more checks, for fonts, and for missing stuff
665
666         * tools/themeupdate/themeupdate.py:
667         update oldschool .xft.font options from ob2
668
669         * tools/themeupdate/themeupdate.py: enable all the tests
670
671         * tools/themeupdate/themeupdate.py: check for oldschool fonts
672
673         * tools/themeupdate/themeupdate.py: check window.button.pressed
674
675         * tools/themeupdate/themeupdate.py:
676         themeupdate already fixes some recent changes
677
678         * openbox/popup.c: couple more xrdb theme format cleanups:
679         window.focus.font -> window.label.focus.font
680         window.unfocus.font -> window.label.unfocus.font
681         window.justify -> window.label.justify
682         menu.frame.* -> menu.items.*
683         menu.hilite.* -> menu.selected.*
684         *.picColor -> *.imageColor
685
686         * openbox/client_list_menu.c: remove an old plugin call
687
688         * openbox/menuframe.c, render/theme.c, render/theme.h:
689         couple more xrdb theme format cleanups:
690         window.focus.font -> window.label.focus.font
691         window.unfocus.font -> window.label.unfocus.font
692         window.justify -> window.label.justify
693         menu.frame.* -> menu.items.*
694         menu.hilite.* -> menu.selected.*
695         *.picColor -> *.imageColor
696
697         * data/rc3: remove the urgent options
698
699         * openbox/frame.c:
700         dont crash when flashing a window when it goes away, remove the timer when dying
701
702         * openbox/client.c: flash when urgent
703
704         * openbox/action.c, openbox/action.h: remove vibrate and flash actions
705
706         * openbox/frame.c, openbox/frame.h:
707         improved frame flashing code, can start and stop it on command
708
709         * openbox/config.c, openbox/config.h: remove the urgent actions
710
711         * render/render.c: i rul.. at typos..
712
713         * render/render.c: copy/free the new interlaced color
714
715         * render/gradient.c, render/render.h, render/theme.c:
716         add interlaceColor, and support interlaced gradients
717
718         * data/rc3: add flashing urgent windows
719
720         * openbox/action.c, openbox/action.h: add flash action
721
722         * openbox/frame.c, openbox/frame.h: add code to flash the frame
723
724         * openbox/menuframe.c:
725         make separators span the width of the entire menu
726
727         * openbox/action.c, openbox/action.h, openbox/client.c, openbox/client.h, openbox/config.c, openbox/config.h, openbox/moveresize.c:
728         add urgent actions
729         add some macros for moving/resizing clients
730         add 'vibrate' action
731
732         * openbox/action.c: s/expand_tile/ob_expand_tilde/
733
734         * openbox/config.h: missing 'extern' for a bunch of vars
735
736         * openbox/action.c, openbox/config.c, openbox/menu.c, openbox/openbox.c, openbox/openbox.h:
737         move expand_tilde to ob_expand_tilde in openbox.c to make it global.
738         use it on the command read in the menu parsing for pipe menus.
739         use it on the command read for execute/restart actions.
740
741 2003-08-31  Ben Jansens  <xor@zed.orodu.net>
742
743         * openbox/menu.c: parse all the menu files specified
744
745         * openbox/mainloop.c: oops, now is in the loop :>
746
747         * openbox/mainloop.c: get the current time when adding timers
748
749         * configure.ac: i dont use sed for anything, no need to check for it
750
751         * Makefile.am: rm some plugin stuff that i missed
752
753         * configure.ac: alpha7
754
755         * ChangeLog: changes
756
757         * openbox/action.c, openbox/action.h, openbox/screen.c, openbox/screen.h:
758         add the DesktopLast action, props to marius nita for this one
759
760         * openbox/event.c: remove debug print
761
762         * openbox/client_list_menu.c:
763         add a separator in the client-list-menus above iconic windows
764
765         * openbox/menuframe.c:
766         dont lose the menu selection while puttin the mouse over a separator (properly)
767
768         * openbox/event.c: compress events properly
769
770         * openbox/menuframe.c:
771         only hide menus if theyre supposed to when executing
772
773         * openbox/action.c, openbox/action.h:
774         make directional focusing an interactive action
775
776         * data/rc3: the <interactive> tags are no longer needed
777
778         * openbox/screen.c:
779         make desktop cycling work properly when non-interactive
780
781         * openbox/keyboard.c, openbox/mouse.c:
782         when no modifiers are in a binding, then make it non-interactive
783
784         * openbox/focus.c, openbox/focus.h:
785         make focus cycling work when not interactive
786         add focus_directional_cycle
787
788         * AUTHORS: tore did some more actions :)
789
790         * openbox/keyboard.c:
791         ungrab keys before grabbnig keys at the next chain level
792
793         * openbox/grab.c:
794         grab the pointer Async for key grabs, lets key bindings like <execute>xkill</execute> work
795
796         * openbox/menuframe.c, openbox/menuframe.h: draw menu separators
797
798         * render/render.c, render/render.h: add RrColorGC
799         add a LineArt texture type for drawing a line, this is used for drawing the menu separators
800
801         * render/gradient.c, render/mask.c: use RrColorGC
802
803         * render/color.c: add RrColorGC
804
805         * openbox/stacking.c: kill a warning
806
807         * openbox/client.c:
808         move_onscreen was supposed to go away.. :) thanks mikachu
809
810 2003-08-30  woodblock  <woodblock@zed>
811
812         * AUTHORS: *** empty log message ***
813
814 2003-08-30  Ben Jansens  <xor@zed.orodu.net>
815
816         * openbox/client_menu.c:
817         add masks from the titlebar buttons to the client menu's options
818
819         * openbox/menu.h, openbox/menuframe.c, openbox/menuframe.h:
820         add suppot for showing pixmap masks in menus where the rgba icons go too
821
822         * openbox/client.c: use the nwe theme's show_handle value
823
824         * render/theme.c, render/theme.h:
825         allow handlewidth of 0, which sets show_handle to false
826
827         * openbox/event.c: compress motion events
828
829         * render/theme.c: bugz, wrong vars
830
831         * openbox/menuframe.c: add padding in the menu title too
832
833         * openbox/client.c, openbox/client.h, openbox/menu.c, openbox/moveresize.c:
834         add destructor functions for clients that you acn subscribe with, and use these instead of hardcoding special cases in the unmanage code
835
836         * data/rc3, openbox/action.c, openbox/action.h, openbox/client_list_menu.c, openbox/config.c, openbox/config.h, openbox/focus.c, openbox/focus.h, openbox/keyboard.c, openbox/mouse.c, openbox/screen.c, openbox/screen.h:
837         make interactive actions a type and not special cases.
838         add the <interactive> option to them to turn off interactivity
839
840         * openbox/grab.c: remove debug print
841
842         * Makefile.am, openbox/dock.c, openbox/dock.h, openbox/event.c, openbox/event.h, openbox/grab.c, openbox/keyboard.c, openbox/mainloop.c, openbox/mainloop.h, openbox/openbox.c, openbox/openbox.h, openbox/screen.c, openbox/timer.c, openbox/timer.h:
843         using the ObMainLoop, which rulz the planet
844
845         * data/rc3: put debian menu file first
846
847         * openbox/menu.c, openbox/menu.h: add pipe-menus
848
849         * openbox/menuframe.c: fix grabbing and not releasing with menus
850
851 2003-08-29  Ben Jansens  <xor@zed.orodu.net>
852
853         * openbox/menuframe.c: dont ungrab twice when hiding menus
854
855         * openbox/event.c:
856         properly select the first menu item in the child menu when using the 'right' keycode
857
858         * openbox/menuframe.c: dont keyboard nav onto disabled menu items
859
860         * openbox/event.c:
861         missing break would be bad in future if added more cases
862
863         * Makefile.am, configure.ac: dont need gmodule anymore
864
865         * openbox/event.c, openbox/menu.c, openbox/menuframe.c, openbox/menuframe.h:
866         ultra-keyboard-controlled-menus
867
868         * openbox/translate.c, openbox/client_list_menu.c, openbox/client_menu.c:
869         fix includes
870
871         * po/POTFILES.in: update which files have translatable strings
872
873         * Makefile.am, configure.ac: the kernel/ dir has been moved to openbox/
874
875         * openbox/openbox.c: remove the plugin stuffs
876
877         * openbox/resist.c: remove a dispatch.h
878
879         * openbox/action.c, openbox/menu.c, openbox/menu.h:
880         remove plugins from the menu parsing
881
882         * Makefile.am, data/menu, data/rc3, openbox/client_list_menu.c, openbox/client_list_menu.h, openbox/client_menu.c, openbox/client_menu.h:
883         move the client and client-list menus into the 'kernel'
884
885         * Makefile.am, openbox/client.c, openbox/dispatch.c, openbox/dispatch.h, openbox/event.c, openbox/focus.c, openbox/moveresize.c, openbox/openbox.c, openbox/screen.c:
886         remove the event dispatcher
887
888         * openbox/action.c:
889         typo, reading from the wrong member of the actiondata union
890
891         * Makefile.am, openbox/place.c, openbox/place.h:
892         add window placement routines to the kernel
893
894         * openbox/menuframe.c:
895         place submenus with their borders over the parent's
896
897         * render/theme.c: nicer default bullets
898
899 2003-08-28  Ben Jansens  <xor@zed.orodu.net>
900
901         * render/theme.c:
902         only left-justify menus, remove the menu.frame.justify option
903
904         * openbox/menu.c, openbox/menuframe.c, openbox/openbox.c, openbox/prop.c, openbox/screen.c, render/color.c, render/font.c, render/theme.c:
905         fix a bunch of memleaks from valgrind and stuff
906
907         * render/render.c: free rgba texture caches
908
909         * openbox/menuframe.c: only execute enabled items
910
911         * data/rc3, openbox/config.h, openbox/event.c, openbox/event.h, openbox/menu.c, openbox/menu.h:
912         new method for loading menu files etc
913
914         * openbox/config.c: fix crash bug is parsing menu section of the rc3
915
916         * openbox/menuframe.c: missed one thing, using invalid mem still
917
918         * openbox/menu.c, openbox/menu.h, openbox/menuframe.c:
919         fix for using freed memory to exec stuff
920
921         * openbox/menuframe.c: free the menu entry frames
922
923         * openbox/action.c: rm double ;;
924
925         * openbox/menu.h, openbox/menuframe.c:
926         add icons to the client-list-menu
927
928         * data/menu, data/rc3: load the plugins in the rc3 for the menus
929
930         * openbox/menu.c, openbox/menu.h, openbox/menuframe.c:
931         make submenus not require the menu to exist when they are created, not until they are shown.
932         crash fix in client_menu
933
934         * Makefile.am, data/menu, openbox/action.c, openbox/action.h, openbox/config.c, openbox/event.c, openbox/menu.c, openbox/menu.h, openbox/menuframe.c, openbox/menuframe.h:
935         make client-list-menu work too
936         more menu cleanups
937
938         * data/menu, openbox/menu.c, openbox/menu.h, openbox/menuframe.c, openbox/plugin.c, openbox/plugin.h, openbox/screen.c, openbox/session.c, parser/parse.c:
939         load menu plugins automatically from whats in the menu file
940         menu fixups
941         move enabled into the 'normal menu item' specific data stuff
942
943         * Makefile.am, data/menu, openbox/client.c, openbox/event.c, openbox/menu.c, openbox/menu.h, openbox/menuframe.c, openbox/menuframe.h, openbox/openbox.c, openbox/plugin.c, openbox/plugin.h:
944         change the menu plugin interface, no need for the create/destroy functions any more.
945         redo the client-menu plugin to work with the new menu api
946
947         * openbox/action.c, openbox/action.h:
948         add follow option back for sendto actions
949
950         * data/menu: split the menus out so they aren't nested in the example
951
952         * Makefile.am, openbox/client.c, openbox/event.c, openbox/menu.c, openbox/menu.h, openbox/menu_render.c, openbox/menuframe.c, openbox/menuframe.h, openbox/popup.c, openbox/window.c, openbox/window.h, render/font.c, render/theme.c, render/theme.h:
953         half way through the changes to new menu code/design. hot shit. static menus work, on to plugins next.
954
955 2003-08-27  Ben Jansens  <xor@zed.orodu.net>
956
957         * openbox/geom.h: oooops RECT_SET_POINT was broken
958
959         * openbox/event.c: more typo :)
960
961         * openbox/event.c: typo :)
962
963         * openbox/client.c, openbox/event.c:
964         dont be rude to non-normal windows with keeping them onscreen
965
966         * openbox/frame.c: fix border on shaded maximized windows
967
968         * openbox/event.c: double deref, props to 'mmj' for spotting this
969
970 2003-08-25  Ben Jansens  <xor@zed.orodu.net>
971
972         * openbox/client.c:
973         remove the last of the cool stuff thanks to GTK fuck fuck. no more not focusing windows in groups that arent focused on map
974
975         * openbox/session.c: blef
976
977         * openbox/session.c: type change
978
979         * openbox/session.c: make --disable-session-management work i think
980
981         * openbox/focus.c: dont force fallbacks within groups
982
983         * openbox/client.c, openbox/frame.c, openbox/frame.h:
984         better handling of maximizing, wrt changing decorations on the windows, and showing the correct decor for the max state especially for windows which dont change size (Xnest) when maximized cuz they are at their maximum size already
985
986         * openbox/geom.h: add STRUT_EQUAL
987
988         * openbox/frame.c:
989         set the client decorations to match the frame's so that there is not thot to be changes later on whene there were actually none
990
991         * openbox/client.c, openbox/client.h:
992         restore the stacking order of a saved session
993
994         * openbox/session.c, openbox/session.h:
995         save the stacking order of the windows, and sort the saved session data based on stacking when it is loaded. make the list public.
996
997         * openbox/screen.c:
998         dont put #define values into the supported atoms list
999
1000         * openbox/stacking.h: clarify that stacking_below sucks
1001
1002         * openbox/stacking.c, openbox/stacking.h:
1003         add stacking_below which moves a window to immediately below another window. use with care it doesn't enforce transient shit etc..
1004
1005 2003-08-23  Ben Jansens  <xor@zed.orodu.net>
1006
1007         * openbox/keyboard.c: better handling of multiple niteractive actions
1008
1009         * m4/x11.m4: better ac macro usage
1010
1011         * configure.ac: alpha6
1012
1013         * ChangeLog: recent changes
1014
1015         * openbox/keyboard.c:
1016         end the other action when starting a new interactive action while one was in place
1017
1018         * render/render.c: formatting
1019
1020         * render/render.c: 80 cols
1021
1022         * render/render.c: stupid function name die
1023
1024 2003-08-22  Ben Jansens  <xor@zed.orodu.net>
1025
1026         * render/theme.c: nevermind
1027
1028         * render/theme.c:
1029         default font size one smaller to make default bitmaps fit better
1030
1031         * openbox/action.c:
1032         only use visible windows when calcing for raiselower
1033
1034         * openbox/action.c: maybe smarter
1035
1036         * openbox/action.c: make the raiselower action smarter
1037
1038         * render/theme.c, render/theme.h, themes/om4ob/themerc, themes/thebear/themerc:
1039         make focus and unfocus fonts for window titles. change 'xftfont' to 'font' in the themes.
1040
1041 2003-08-20  Ben Jansens  <xor@zed.orodu.net>
1042
1043         * ChangeLog: recent changes
1044
1045         * openbox/keyboard.c:
1046         better handling of starting a new interactive grab while one is in progress
1047
1048         * data/rc3, openbox/frame.c, openbox/frame.h, openbox/mouse.c:
1049         rename the 'root' context to 'desktop'
1050
1051         * openbox/action.c, openbox/action.h:
1052         add the 'raiselower' action for raising obscured windows and lowering fully visible ones
1053
1054         * openbox/event.c, openbox/frame.c, openbox/frame.h:
1055         add an obscured flag that tracks if the frame is at all obscured
1056
1057         * openbox/mouse.c: use the result from XGetGeometry correctly
1058
1059         * openbox/mouse.c: handle the XGetGeomtry failing for button releases
1060
1061         * openbox/mouse.c:
1062         dont grab client context stuff on desktop windows. check that clint is non-null
1063
1064         * openbox/frame.c, openbox/mouse.c:
1065         grab root mouse bindings on desktop windows also, since they are conceptually the desktop.
1066
1067         * openbox/screen.c:
1068         reset first to TRUE properly when the desktop popup is off
1069
1070         * openbox/moveresize.c:
1071         move the pointer while doing a keyboard move/resize
1072
1073 2003-08-16  Ben Jansens  <xor@zed.orodu.net>
1074
1075         * openbox/keyboard.c: fix whitespace
1076
1077 2003-08-14  Ben Jansens  <xor@zed.orodu.net>
1078
1079         * render/theme.c:
1080         was reading the menu bullet color into the wrong place
1081
1082         * openbox/focus.c:
1083         skip windows in the alt-tabbing which have the SKIP_TASKBAR hint set on them
1084
1085         * README.CVS: add the gettext version
1086
1087         * ChangeLog: recent changes
1088
1089         * openbox/menu.c: fix the offsets used to keep the menus on screen
1090
1091         * openbox/menu_render.c:
1092         dont show titles on submenus. kill the extra 1px at the top of titleless menus
1093
1094         * openbox/menu.c:
1095         make putting plugin menus in a menu closer to working..
1096
1097         * data/menu: rename root to root-menu
1098
1099         * data/rc3: add the client-list-menu
1100
1101         * Makefile.am, openbox/plugin.c: add the client_list_menu plugin
1102
1103         * openbox/menu.c, openbox/menu.h: add a menu destructor callback.
1104         fix a possible crasher where a callback was called with a different menu.
1105
1106         * openbox/stacking.c: 80 cols
1107
1108         * openbox/openbox.c: shutdown the menus before the plugins are unloaded
1109
1110         * openbox/focus.c, openbox/event.c, openbox/client.c, openbox/client.h:
1111         make activate take a here parameter
1112
1113         * openbox/action.c: parse <here>true</here> for the activate action
1114
1115         * openbox/action.c, openbox/action.h:
1116         make the activate action have a 'here' parameter
1117
1118         * openbox/action.c, openbox/action.h: add an 'activate' action
1119
1120 2003-08-12  Ben Jansens  <xor@zed.orodu.net>
1121
1122         * Makefile.am, openbox/config.c, openbox/config.h, openbox/moveresize.c, openbox/plugin.c, openbox/resist.c, openbox/resist.h:
1123         move the resistance plugin into the kernel. dont resist when move/resizing with the keyboard, only when doing it with the mouse.
1124
1125         * openbox/client.c: oops i fucked up tore's patch. better.
1126
1127         * openbox/action.c, openbox/client.c:
1128         bug fixes for growtoedge from tore. props to tore for all the growtoedge and movetoedge code, and directional focus code also since i dont think i mentioned his name before in the changelogs woot.
1129
1130         * Makefile.am, data/menu, data/rc3, openbox/config.c, openbox/config.h, openbox/menu.c, openbox/menu.h, openbox/mouse.c, openbox/openbox.c, openbox/plugin.c, openbox/plugin.h:
1131         adjust for changes to the parsing api.
1132         split the menu into its own file.
1133
1134         * parser/parse.c, parser/parse.h:
1135         create ObParseInst structuer which can be then used to parse more than one file/memory thing at a time.
1136         add function to parse memory block.
1137
1138         * openbox/config.c, openbox/mouse.c, openbox/mouse.h:
1139         prefix/capitalize the mouse actions enum
1140
1141         * openbox/config.c:
1142         oops read the mouse cnofig vars into the right place
1143
1144         * data/rc3, openbox/config.c, openbox/config.h, openbox/keyboard.c:
1145         add the chainQuitKey option to teh <keyboard> section of the rc3
1146
1147         * render/font.h, render/render.h, render/test.c:
1148         add Xutil includes for these badboys on older X versions/solaris
1149
1150         * render/theme.c:
1151         make all the masks unsigned chars for consistancy woot
1152
1153         * render/theme.c: kill some warnings
1154
1155         * openbox/extensions.h: include Xutil for shape.h on old X versions
1156
1157         * openbox/menu_render.c, render/theme.c:
1158         rendering fixups for submenu bullets
1159
1160         * data/rc3: add the cyclingDialog option
1161
1162         * data/rc3:
1163         remove the scrolling on root without alt since that fucks up with the dialog since there are no modifiers
1164
1165         * openbox/config.c, openbox/config.h, openbox/mouse.c, openbox/screen.c:
1166         add an option for if the popup is used for desktop cycling. defaults on.
1167
1168         * openbox/client.c: dont move windows when starting
1169
1170         * ChangeLog: recent changes
1171
1172         * configure.ac: alpha5
1173
1174         * openbox/screen.c: when cancelling return the first desktop
1175
1176         * openbox/action.c, openbox/action.h:
1177         use the new client_directional_edge_search for the movetoedge actions.
1178         add new growtoedge actions.
1179
1180         * openbox/client.c, openbox/client.h:
1181         small bugfix to the directional focus code.
1182         add the client_directional_edge_search function.
1183
1184         * openbox/keyboard.c:
1185         only do shit with the grabbed_* when a grab is in place
1186
1187         * openbox/action.c, openbox/mouse.c, openbox/screen.c:
1188         remove debug printings
1189
1190         * ChangeLog, Makefile.am, openbox/.cvsignore, openbox/action.c, openbox/action.h, openbox/client.c, openbox/config.c, openbox/config.h, openbox/event.c, openbox/focus.c, openbox/keyboard.c, openbox/keyboard.h, openbox/keytree.c, openbox/keytree.h, openbox/menu.c, openbox/menu.h, openbox/mouse.c, openbox/mouse.h, openbox/openbox.c, openbox/plugin.c, openbox/screen.c, openbox/screen.h, openbox/translate.c, openbox/translate.h:
1191         move the keyboard and mouse plugins into the kernel for mucho sexiness.
1192         make workspace changing a grabbed/interactive process like focus cycling is, with the popup and all.
1193         this is some hot shit.
1194
1195         * openbox/event.c:
1196         keep event_lasttime at the last time an event has come in so far, don't regress when events come out of order. props to shrimpx for this patch.
1197
1198 2003-08-11  woodblock  <woodblock@zed>
1199
1200         * openbox/menu.c, openbox/menu.h, openbox/menu_render.c, render/theme.c, render/theme.h:
1201         Some fixes and new bugs. Someone else can do the menus because it is
1202         clear no one gives a fuck what I think and no one else wants a window
1203         manager that doesn't suck the same balls as every other window manager.
1204
1205 2003-08-10  Ben Jansens  <xor@zed.orodu.net>
1206
1207         * openbox/client.c:
1208         save the frame decorations in client_configure_full before causing the fake frame adjust, since that loses its old value.
1209
1210         * openbox/framerender.c:
1211         clear the window after setting the background color, this isnt implicit
1212
1213 2003-08-09  Ben Jansens  <xor@zed.orodu.net>
1214
1215         * openbox/focus.c, openbox/popup.c, openbox/popup.h, openbox/screen.c, openbox/timer.c, openbox/timer.h:
1216         changes to the timer api, pass the timer to the callback function.
1217         add a desktop-switch popup with the desktop's name
1218
1219 2003-08-08  Ben Jansens  <xor@zed.orodu.net>
1220
1221         * render/render.h: include Xlib.h for other platforms
1222
1223 2003-08-07  woodblock  <woodblock@zed>
1224
1225         * openbox/event.c:
1226         Fix lock up when not using a session manager and doing fd management.
1227
1228 2003-08-06  Ben Jansens  <xor@zed.orodu.net>
1229
1230         * data/rc3:
1231         remove the <windows> option from the resistance plugin since window and edge resistance have been separated, a 0 value will work now
1232
1233 2003-08-05  Ben Jansens  <xor@zed.orodu.net>
1234
1235         * openbox/screen.c: dont ignore topleft layouts
1236
1237         * openbox/frame.c:
1238         dont map the tl/tr invisible grips when the grip decors are turned off
1239
1240         * render/gradient.c: split the increment into a separate macro
1241
1242         * openbox/client.c, openbox/frame.c, openbox/frame.h, openbox/framerender.c:
1243         a couple frame layout bugfixes hidden inside all this.. wee
1244         fixes for maximizing windows:
1245          - when you toggledecor, it will reconfigure once, but the new constraints from the decor changes would not be in effect when the window was resized to the contranits. fixed by calling frame_adjust_area first thing ni client_configure_fulll with fake=TRUE which will recalc all the frame geometry without resizing/redrawing anything in the frame. this way the decor can take effect in the geometries.
1246          - when maxed horizontally, make the client fill the screen, but dont do this by just making it wider than the screen, fit it to the screen and adjust the titlebar/handle as appropriate to keep it all on the screen.
1247          - when maxed horizontally and vertically, remove the handle from the decorations
1248
1249         * openbox/client.c:
1250         when setting up decor on a window, it needs to reconfigure twice if the decor changes, cuz the constraints need the new frame sizes to work right
1251
1252         * openbox/moveresize.c:
1253         make the position dislpayed in the moving popup offset by the top/left struts so that 0,0 is inside teh struts not neccessarily at the screen edge
1254
1255 2003-08-03  Ben Jansens  <xor@zed.orodu.net>
1256
1257         * tools/obconf/main.c: add more widgets to the main window
1258
1259         * ChangeLog: recent changes
1260
1261         * data/rc3, openbox/client.c, openbox/config.c, openbox/config.h, openbox/moveresize.c:
1262         kill non-opaque move/resize
1263         add an option for redrawing/resizing the client window while resizing, when disabled the client is not touched until the resize is complete.
1264
1265         * openbox/framerender.c:
1266         give the plate the same background color as its border
1267
1268 2003-08-02  Ben Jansens  <xor@zed.orodu.net>
1269
1270         * tools/obconf/main.c: has a pane and list and workarea
1271
1272         * tools/obconf/main.c: has a menu and a treeview
1273
1274         * openbox/client.c, openbox/event.c:
1275         use the frame size not the client size when figuring out if stuff fits on the screen
1276
1277         * themes/om4ob/themerc: add disabled button styles (from miklos)
1278
1279         * tools/kdetrayproxy/kdetrayproxy.c: missing sys/time.h
1280
1281         * configure.ac: alpha4
1282
1283         * ChangeLog: recent changes
1284
1285         * Makefile.am, themes/om4ob/close.xbm, themes/om4ob/close_hover.xbm, themes/om4ob/desk.xbm, themes/om4ob/desk_hover.xbm, themes/om4ob/desk_toggled.xbm, themes/om4ob/iconify.xbm, themes/om4ob/iconify_hover.xbm, themes/om4ob/iconify_pressed.xbm, themes/om4ob/max.xbm, themes/om4ob/max_disabled.xbm, themes/om4ob/max_hover.xbm, themes/om4ob/max_pressed.xbm, themes/om4ob/max_toggled.xbm, themes/om4ob/shade.xbm, themes/om4ob/shade_disabled.xbm, themes/om4ob/shade_hover.xbm, themes/om4ob/shade_toggled.xbm, themes/om4ob/themerc:
1286         add the om4ob theme
1287
1288         * ChangeLog: recent changes
1289
1290         * render/theme.c: oops indenting
1291
1292         * render/theme.c:
1293         look in theme dirs first, use the theme as the path as a last attempt only!
1294
1295         * openbox/frame.c: the grips go below the titlebar buttons
1296
1297         * openbox/client.h, openbox/dock.c, openbox/dock.h, openbox/geom.h, openbox/prop.c, openbox/prop.h:
1298         add partial struts tho they arent useful eyt
1299
1300         * data/rc3, openbox/frame.c, openbox/frame.h, openbox/framerender.c, render/theme.h:
1301         invisible resizing areas/grips in the top corners of the window
1302
1303         * render/theme.c: use the toggled mask for shade and desk buttons
1304
1305         * openbox/client.c: that line ended up in teh if somehow...
1306
1307 2003-08-01  Ben Jansens  <xor@zed.orodu.net>
1308
1309         * openbox/grab.c: oops buttons not keycodes
1310
1311         * openbox/grab.c:
1312         if a dock app has a button grabbed already then dont die
1313
1314         * render/theme.c: look for masks only where the themerc was read from
1315
1316         * Makefile.am: rename stick buttons to desk
1317
1318         * render/theme.c, render/theme.h:
1319         add pressed bitmaps. rename stick bitmaps to desk
1320
1321         * openbox/framerender.c, render/theme.c, render/theme.h:
1322         add toggled textuers for titlebar buttons
1323
1324         * Makefile.am: make obconf_interface.h belong to the obconf sources
1325
1326         * data/openbox.desktop, openbox/openbox.desktop, render/gradient.c, render/render.c, render/render.h:
1327         move the dekstop file to data/
1328
1329         * Makefile.am: install the .desktop file again
1330
1331         * themes/thebear/themerc: remove old stuff
1332
1333         * Makefile.am: install greenz theme
1334
1335         * Makefile.am: s/_t.xbm/_toggled.xbm/
1336
1337         * render/theme.c, render/theme.h:
1338         renamed the _t bitmaps, and added disabled and hover bitmaps
1339
1340         * Makefile.am, render/theme.c, themes/bbs, themes/bluebox, themes/cthulhain, themes/deep, themes/ebox, themes/fieron, themes/fieron2, themes/flux, themes/frobozz, themes/frobust, themes/mbdtex, themes/miklos, themes/nyz, themes/nyzclone, themes/ob20, themes/operation, themes/outcomes, themes/paper, themes/purplehaaze, themes/shade, themes/steelblue, themes/steelblue2, themes/the_orange, themes/thebear/themerc, themes/trisb, themes/twice, themes/warp-xp:
1341         make themes inside a directory
1342
1343         * Makefile.am, tools/kdetrayproxy/.cvsignore, tools/kdetrayproxy/Makefile, tools/kdetrayproxy/kdetrayproxy.c:
1344         add the kdetrayproxy tool
1345
1346         * openbox/screen.c:
1347         configre teh dock after finding the new screen sizes
1348
1349         * openbox/session.c: compile fixes
1350
1351         * render/theme.c: add missing includes
1352
1353 2003-07-31  Ben Jansens  <xor@zed.orodu.net>
1354
1355         * ChangeLog: recent changes
1356
1357         * configure.ac: alpha3
1358
1359         * openbox/frame.c: fix a long-lurknig gravity bug
1360
1361         * tools/obconf/main.c: dont inlcude these headers they arent needed yet
1362
1363         * ChangeLog: recent changes
1364
1365         * openbox/openbox.c: oops missed one
1366
1367         * openbox/openbox.c, openbox/openbox.h: expose exit_with_error
1368
1369         * openbox/session.c: kill some output
1370
1371         * openbox/openbox.c:
1372         only load the session from file if a file was provided
1373
1374         * render/font.c: missing a header
1375
1376         * README.CVS: remove shit i no longer use
1377
1378         * parser/parse.c: always return a string from parse_string
1379
1380         * openbox/client.c:
1381         set the desktop hint if the desktop is changed by the session code
1382
1383         * openbox/client.c:
1384         set the desktop hint after everything is read/setup even session stuff
1385
1386         * openbox/client.c:
1387         add the window to the lists before setting the client list hint
1388
1389         * openbox/session.c:
1390         declare functions that are needed when built without session support
1391
1392         * openbox/session.c:
1393         use the new sm_client_id function so all windows who should save state do. session save/load seems to be working with gnome-session rather well.
1394
1395         * openbox/client.c, openbox/client.h:
1396         add a function to retrieve the sm_client_id value
1397
1398 2003-07-30  Ben Jansens  <xor@zed.orodu.net>
1399
1400         * openbox/client.c, openbox/prop.c, openbox/prop.h, openbox/session.c, openbox/session.h:
1401         restore saved session data for applications
1402
1403         * data/rc3, openbox/config.c, openbox/config.h, openbox/frame.c, render/theme.c, render/theme.h:
1404         move the titlebar layout from the theme to the rc file
1405
1406         * openbox/client.c: attemp #3
1407
1408         * openbox/client.c: attempt #2 at better logical size values
1409
1410         * openbox/client.c: include the base size in the logical size
1411
1412         * ChangeLog: recent changes
1413
1414         * openbox/client.c: the size can be 0 when there is a base size
1415
1416         * openbox/client.c, openbox/client.h, openbox/event.c:
1417         improved ICCCM compliance!
1418           a) send ConfigureNotify back to the client as required by the ICCCM in all sitatuations.
1419           b) send the corrent coords in the ConfigureNotify, including the border width
1420           c) remove the WM_STATE property when unmanaging a window
1421
1422         * openbox/frame.c: code cleaning
1423
1424         * openbox/menu.c: only ignore wheel buttons
1425
1426 2003-07-29  Ben Jansens  <xor@zed.orodu.net>
1427
1428         * openbox/event.c: i am the king of copy/paste errors
1429
1430 2003-07-29  woodblock  <woodblock@zed>
1431
1432         * openbox/event.c: more menu fixes.
1433         I hate menus.
1434
1435         * openbox/menu.c: Clear current_menu when hiding menus.
1436
1437         * openbox/event.c, openbox/menu.c: Close menu properly on unbound keys.
1438
1439         * openbox/menu.c: Fix some keyboard control issues.
1440
1441 2003-07-28  Ben Jansens  <xor@zed.orodu.net>
1442
1443         * openbox/client.c, openbox/event.c:
1444         base rudeness on if they have a strut even smarter!
1445
1446         * openbox/client.c, openbox/event.c:
1447         base rudeness on if they have a strut or not
1448
1449         * openbox/client.c, openbox/event.c, openbox/screen.c:
1450         make the new placement restrictions not affect !normal windows like panels
1451
1452         * openbox/menu.c: use plugin_open_reopen not plugin_open_full
1453
1454         * render/theme.c: typo thanks merry
1455
1456         * openbox/event.c, openbox/frame.c, openbox/frame.h, openbox/framerender.c:
1457         hover theme elements for window titlebar buttons
1458
1459         * openbox/client.c, openbox/client.h, openbox/event.c, openbox/screen.c:
1460         make those apps stay/map on screen!! fuck stupid apps. thats right im talking to you mozilla and you too java.
1461
1462         * openbox/event.c: make things compile again. hover does not work yet.
1463
1464         * openbox/client.c: use the macro
1465
1466         * openbox/client.c, openbox/event.c:
1467         keep apps from moving/maping their titlebar underneath left/top panels
1468
1469         * openbox/session.c: set teh clone comamnd
1470
1471         * openbox/session.c:
1472         use char not a long, since we're telling the SM that its 1 byte lone
1473
1474         * openbox/session.c: save the commands on startup
1475
1476         * openbox/session.c: use the path properly for the session file
1477
1478         * openbox/session.c: use teh save file not the session id
1479
1480 2003-07-28  woodblock  <woodblock@zed>
1481
1482         * openbox/menu.c: demand load plugins from the menu
1483
1484         * openbox/event.c, openbox/menu.c: Menu stuff.
1485         Testing may begin.
1486
1487 2003-07-27  Ben Jansens  <xor@zed.orodu.net>
1488
1489         * render/theme.c, render/theme.h: fix mem leaks/crashes
1490
1491         * render/theme.c, render/theme.h: add pressed colors for buttons
1492
1493 2003-07-26  woodblock  <woodblock@zed>
1494
1495         * openbox/event.c: Close menu on click if outside the menu.
1496         I think, haven't tested.
1497
1498         * openbox/menu.c: more fixes
1499
1500 2003-07-26  Ben Jansens  <xor@zed.orodu.net>
1501
1502         * tools/obconf/main.c: make errors non-modal
1503
1504         * Makefile.am, configure.ac, tools/obconf/.cvsignore, tools/obconf/Makefile, tools/obconf/main.c:
1505         restarting work on obconf
1506
1507         * ChangeLog: recent changes
1508
1509         * data/rc3:
1510         split resistance strengths for screen edges and windows. also a fix for parsing changes,
1511
1512         * openbox/stacking.c: dont stack groups together
1513
1514 2003-07-26  woodblock  <woodblock@zed>
1515
1516         * openbox/event.c, openbox/menu.c, openbox/menu.h: Some menu updates.
1517         Don't talk to me about menus.
1518
1519 2003-07-25  Ben Jansens  <xor@zed.orodu.net>
1520
1521         * openbox/client.c, openbox/client.h:
1522         add client_search_transient which searches the tree from a client down for a client
1523
1524         * render/theme.c: dont allow parentrelative on top-level appearances
1525
1526         * openbox/stacking.c: stacking fixes
1527
1528 2003-07-24  Ben Jansens  <xor@zed.orodu.net>
1529
1530         * Makefile.am, openbox/openbox.c, openbox/openbox.h, openbox/session.c, openbox/session.h:
1531         save and load the session save file, though its data is not used yet!
1532
1533 2003-07-24  woodblock  <woodblock@zed>
1534
1535         * openbox/event.c, openbox/menu.c, openbox/menu.h, openbox/menu_render.c:
1536         I had a commit message but my commit got stepped on so fuck it.
1537         No one cares what I think anyway.
1538         If the menu navigation isn't EXACTLY FUCKING RIGHT I WILL REMOVE IT
1539         AND SOME OTHER POOR FUCK CAN PUT UP WITH ALL THE FUCKING BULLSHIT.
1540
1541 2003-07-24  Ben Jansens  <xor@zed.orodu.net>
1542
1543         * ChangeLog: updates to changelog
1544
1545         * configure.ac:
1546         dont display the build type at the end its already in the output
1547
1548         * configure.ac, openbox/action.c, openbox/client.c, openbox/debug.h, openbox/dock.c, openbox/event.c, openbox/focus.c, openbox/menu.c, openbox/menu_render.c, openbox/openbox.c, openbox/screen.c, parser/parse.c, render/color.c, render/gradient.c, render/instance.c, render/theme.c, tools/obconf/main.c:
1549         use ob_debug for any debug printing and only display the output when its a debug build or when --debug is passed to it
1550
1551         * render/gradient.c:
1552         draw the bevel stuff in the pixel data buffer so parent-relative stuff can use it.
1553
1554         * render/render.c: space
1555
1556 2003-07-23  Ben Jansens  <xor@zed.orodu.net>
1557
1558         * render/render.c:
1559         init the parent shit in the surface when making a copy
1560
1561         * Makefile.am: use rm -f
1562
1563         * Makefile.am: include obconf_interface.h in the dist
1564
1565         * Makefile.am: remove headers that dont exist
1566
1567         * m4/Makefile.am: add the new m4s
1568
1569         * openbox/menu.c: unhilite the entry for the submenu when it is closed
1570
1571         * configure.ac: alpha2
1572
1573         * DESIGN/themes.txt: add hover
1574
1575 2003-07-23  woodblock  <woodblock@zed>
1576
1577         * Makefile.am:
1578         Added include_menu.c as an example of how one could write a plugin.
1579
1580         * openbox/config.c, openbox/menu.c, parser/parse.c:
1581         * Change xml parsing to pass the parent node, rather than the first
1582         child.
1583         * Add x,y co-ordinates on showmenu action so we can place menus on keypress.
1584
1585 2003-07-22  Ben Jansens  <xor@zed.orodu.net>
1586
1587         * openbox/event.c, openbox/openbox.c, openbox/openbox.h, openbox/screen.c:
1588         add the --replace command line option, and support for the WM_Sn selection
1589
1590         * openbox/prop.c, openbox/prop.h: add the MANAGER atom.
1591         allow prop_message to be used with a user-defined mask instead of only with the NetWM mask
1592
1593         * openbox/client.c: stop shownig the desktop when a new window maps
1594
1595         * openbox/menu.c: add a func to find a menu entry from a submenu.
1596         keep menu entries highlighted while they have their submenu open
1597
1598         * openbox/menu.h: add a func to find a menu entry from a submenu
1599
1600         * openbox/menu.c, render/theme.c, render/theme.h:
1601         add a menuOverlap property to themes, and use it in the submenu placement
1602
1603         * configure.ac: update to new version of gettext
1604
1605         * m4/.cvsignore, po/.cvsignore: more stuff to ignore
1606
1607 2003-07-21  woodblock  <woodblock@zed>
1608
1609         * openbox/event.c, openbox/menu.c, openbox/menu.h:
1610         Keyboard navigatable menus
1611
1612 2003-07-19  woodblock  <woodblock@zed>
1613
1614         * openbox/action.c, openbox/menu.c: Fix a couple memory leaks.
1615
1616 2003-07-17  woodblock  <woodblock@zed>
1617
1618         * openbox/menu.c, openbox/menu.h, openbox/plugin.c, openbox/plugin.h:
1619         Menu parsing updates for plugins.
1620
1621         FIFO menus are the only plugin that takes advantage of this.
1622         Example:
1623         <menu id="root" label="Openbox 3">
1624           <menu id="fonk" label="fonk" plugin="fifo_menu">
1625           </menu>
1626         </menu>
1627
1628         This creates a FIFO ~/.openbox/fifo_menu/fonk to which you can send
1629         menus to. The menus sent to it must be like
1630         <fifo>
1631           <item>
1632            etc...
1633         </fifo>
1634
1635         I think. If my memory serves me right.
1636
1637         It is all hideous, but I just wanted to experiment and see if it was
1638         possible.
1639
1640 2003-07-12  Ben Jansens  <xor@zed.orodu.net>
1641
1642         * render/theme.c: useless code move
1643
1644         * openbox/client.c: simple code cleanup
1645
1646 2003-07-11  Ben Jansens  <xor@zed.orodu.net>
1647
1648         * render/color.c, render/render.c:
1649         removed the RrEndian so using LSBFirst always now. hopefully this works!
1650
1651         * openbox/client.c:
1652         when a transient maps on another desktop, give it focus when it deserves it
1653
1654         * render/render.h: same default offsets for all endian machines
1655
1656         * DESIGN/themes.txt: some input from woobie and changed the menu stuff
1657
1658         * DESIGN/themes.txt: extra menu tag
1659
1660         * openbox/openbox.c: add --g-fatal-warnings
1661
1662         * openbox/dock.c:
1663         fix a seggie i introduced, going too far in the dockapps list
1664
1665         * DESIGN/themes.txt: attempt #2
1666
1667         * DESIGN/themes.txt: oops extra menu_layout
1668
1669         * DESIGN/themes.txt: a full style defn..
1670
1671         * openbox/client.c: move to the desktop of the activated window
1672
1673 2003-07-10  Ben Jansens  <xor@zed.orodu.net>
1674
1675         * openbox/action.c, openbox/client.c, openbox/client.h, openbox/frame.c, openbox/frame.h, openbox/framerender.c, openbox/openbox.c, render/theme.c, render/theme.h, tests/.cvsignore, tests/noresize.c:
1676         add disabled buttons, instead of now showing buttons at all when they wont do anything, now show a disabled button instead. this severely breaks compatibility with blackbox themes since there is no good way to automiatically create a disabled button that i can think of, so if they dont exist in the theme you get black and white for the button.
1677
1678         when a window cant be resized, its handle is not removed but its grips are.
1679
1680         change allowing the user to disable individual decorations as that is overkill,
1681         instead allow a toggle through the client.decorate boolean.
1682
1683         * tests/Makefile: readd the Makefile
1684
1685         * openbox/focus.c: simply startup/shutdown
1686
1687         * AUTHORS: add some more contributors
1688
1689         * openbox/openbox.c: sync is in unistd.h
1690
1691         * openbox/client.c, openbox/event.c, openbox/menu.c, openbox/menu.h, openbox/menu_render.c, openbox/window.c, openbox/window.h:
1692         prefix and capitalize ObMenu ObMenuEntry and ObMenuEntryRenderType
1693         make the ObMenuEntryRenderType a standard enum instead bitflags
1694
1695         * openbox/focus.c, openbox/openbox.c, openbox/openbox.h, openbox/screen.c, openbox/screen.h:
1696         move ob_pointer_pos to screen_pointer_pos
1697
1698         * openbox/client.c, openbox/dock.c, openbox/event.c, openbox/focus.c, openbox/frame.c, openbox/openbox.c, openbox/openbox.h, openbox/screen.c, openbox/stacking.c:
1699         make ob_state a function so it cant be changed outside of openbox.c
1700
1701         * openbox/client.c, openbox/dock.c, openbox/event.c, openbox/focus.c, openbox/frame.c, openbox/grab.c, openbox/menu.c, openbox/moveresize.c, openbox/openbox.c, openbox/openbox.h, openbox/popup.c, openbox/prop.c, openbox/screen.c, openbox/stacking.c, openbox/startup.c:
1702         remove the ob_root var, its redundant of what Xlib already provides
1703
1704         * openbox/openbox.c, openbox/openbox.h: use gint
1705
1706         * openbox/openbox.c, openbox/openbox.h:
1707         ob_remote has been killed, remove ob_sync from the public header, its only used internally
1708
1709         * openbox/openbox.c, openbox/openbox.h:
1710         the --rc arg and rc_path var wasnt even being used so just rm it
1711
1712         * openbox/action.c, openbox/event.c, openbox/openbox.c, openbox/openbox.h:
1713         make the ob_restart/shutdown stuff static vars and expose them only through functions ob_restart_other(), ob_restart() and ob_exit()
1714
1715         * openbox/stacking.c: remove useless include
1716
1717         * openbox/focus.c, openbox/focus.h, openbox/screen.c, openbox/screen.h, openbox/stacking.c:
1718         replace the focus_backup with the screen_support_win, we dont need 2 offscreen windows.
1719
1720         * openbox/screen.c:
1721         use the xerror stuff to trap errors instead of dupliacted the effort here
1722
1723         * openbox/dock.c, openbox/dock.h, openbox/screen.c, openbox/timer.c, openbox/timer.h:
1724         prefix the Timer->ObTimer and TimeoutHandler->ObTimeoutHandler shitz
1725
1726         * openbox/action.h, openbox/client.c, openbox/client.h, openbox/config.c, openbox/config.h, openbox/dispatch.c, openbox/dispatch.h, openbox/dock.c, openbox/event.c, openbox/extensions.h, openbox/framerender.c, openbox/framerender.h, openbox/menu.c, openbox/menu.h, openbox/menu_render.c, openbox/moveresize.c, openbox/popup.h, openbox/screen.h, openbox/stacking.c, openbox/stacking.h, openbox/window.c, openbox/window.h:
1727         prefixing and capitalizing the StackLayer -> ObStackingLayer enum.
1728         less includes in headers for less rebuilding on changes
1729
1730         * openbox/client.c, openbox/event.c, openbox/focus.c, openbox/focus.h, openbox/screen.c:
1731         prefix and capitalize the ObFocusFallbackType enum
1732
1733         * openbox/config.c, openbox/config.h, openbox/dock.c:
1734         use the ObOrientation enum instead of a horz bool for configuring the dock's orientation
1735
1736         * openbox/config.c, openbox/config.h, openbox/dock.c, openbox/dock.h, openbox/event.c, openbox/window.c, openbox/window.h:
1737         prefixing for the dock. use ObDirection instead of dupliacting it in another enum for the dock's placement
1738
1739         * openbox/popup.c, openbox/popup.h:
1740         prefixing for the Popup->ObPopup struct
1741
1742         * openbox/moveresize.h: dont need client.h in this header
1743
1744         * openbox/client.h, openbox/event.c, openbox/frame.c, openbox/frame.h, openbox/framerender.c, openbox/framerender.h, openbox/popup.c:
1745         prefixing and capitalization for the Frame->ObFrame struct and the Context->ObFrameContext enum and its constants.
1746
1747         * openbox/client.h, openbox/group.c, openbox/group.h:
1748         prefix Group to ObGroup
1749
1750         * openbox/client.c, openbox/client.h, openbox/focus.c, openbox/stacking.c:
1751         prefix TRAN_GROUP to OB_TRAN_GROUP
1752
1753         * openbox/action.c, openbox/client.c, openbox/client.h, openbox/frame.h, openbox/screen.c:
1754         prefix and capitalize some more constants/enums in client.h (Function -> ObFunctions and WindowType -> ObClientType)
1755
1756         * openbox/action.c, openbox/action.h, openbox/client.c, openbox/client.h, openbox/dispatch.c, openbox/dispatch.h, openbox/event.c, openbox/focus.c, openbox/focus.h, openbox/frame.c, openbox/frame.h, openbox/framerender.c, openbox/group.c, openbox/group.h, openbox/menu.c, openbox/menu.h, openbox/moveresize.c, openbox/moveresize.h, openbox/popup.c, openbox/popup.h, openbox/screen.c, openbox/screen.h, openbox/stacking.c, openbox/window.c, openbox/window.h:
1757         rename the Client struct to ObClient
1758
1759         * Makefile.am: add the new misc.h and mwm.h to the kernel sources
1760
1761         * openbox/client.c, openbox/client.h, openbox/mwm.h:
1762         add a mwm.h for the mwm hint structure and flags.
1763         use proper prefixing and capitalization for the new mwm stuff.
1764
1765         * openbox/action.c, openbox/action.h, openbox/client.c, openbox/client.h, openbox/dispatch.c, openbox/dispatch.h, openbox/dock.c, openbox/event.c, openbox/focus.c, openbox/frame.c, openbox/grab.c, openbox/grab.h, openbox/misc.h, openbox/moveresize.c, openbox/openbox.c, openbox/openbox.h, openbox/screen.c, openbox/screen.h, openbox/stacking.c:
1766         add misc.h with some standard enumerations with proper prefixing and capitalizations.
1767
1768         use the new enums throughout.
1769
1770         provide keycodes and cursors through ob_cursor and ob_keycode functions, which use the new misc.h enums for picking the cursor and keycode.
1771
1772         * openbox/client.c, openbox/client.h, openbox/event.c, openbox/extensions.c, openbox/focus.c, openbox/menu.c, openbox/moveresize.c, openbox/screen.c, openbox/screen.h:
1773         rename 'xinerama' stuff to 'monitors' to be more generic and descriptive.
1774
1775         * openbox/stacking.c: speed up pick_group_windows too
1776
1777         * openbox/stacking.c: make pick_windows waaaay faster
1778
1779         * openbox/openbox.c:
1780         remove the use of the BINARY define. kill a compiler warning.
1781
1782         * openbox/stacking.c: allow restacking of transients above one another
1783
1784         * openbox/focus.c:
1785         put the transient's title before the parent's in the focus popup
1786
1787         * openbox/extensions.c, openbox/extensions.h:
1788         remove the xinerama active boolean, just count the extension as not present if it is not active
1789
1790         * openbox/client.c, openbox/client.h: add client_search_top_transient.
1791         keep transients all on the same desktop together. use client_search_top_transient where possible in client.c
1792
1793         * openbox/debug.c, openbox/debug.h:
1794         add ob_debug for printing stuff only when debug is enabled
1795
1796         * render/color.c, render/font.c, render/font.h, render/geom.h, render/image.c, render/image.h, render/mask.c, render/mask.h, render/render.c, render/render.h:
1797         remove rependancy on geom.h from the kernel, provide what is used in its own geom.h
1798
1799         * Makefile.am, configure.ac, data/.cvsignore, data/Makefile, data/Makefile.am, openbox/.cvsignore, openbox/Makefile, openbox/Makefile.am, parser/.cvsignore, parser/Makefile, parser/Makefile.am, render/.cvsignore, render/Makefile, render/Makefile.am, themes/.cvsignore, themes/Makefile, themes/Makefile.am, tools/Makefile.am, tools/obconf/Makefile.am:
1800         update the build system, using a single Makefile.am for a sexyass non-recursive make. booyah!
1801
1802         * gettext.h, openbox/gettext.h:
1803         move the gettext header out to the root source dir
1804
1805 2003-07-07  Ben Jansens  <xor@zed.orodu.net>
1806
1807         * render/font.c: include stdlib for exit()
1808
1809 2003-07-06  Ben Jansens  <xor@zed.orodu.net>
1810
1811         * bootstrap: add ACLOCAL_FLAGS to the aclocal call.
1812
1813 2003-07-05  Ben Jansens  <xor@zed.orodu.net>
1814
1815         * openbox/openbox.c: use --foo instead of -foo for cmd line arguments
1816
1817         * render/color.c, render/render.h:
1818         try some better default offsets for big endian machines.
1819         print what the conversion is so i can see what it should be if im wrong though
1820
1821         * render/color.c:
1822         used RrColorShift when RrColorOffset was what we wanted
1823
1824         * configure.ac, openbox/Makefile.am, render/Makefile.am, render/color.c, render/color.h, render/gradient.c, render/instance.c, render/instance.h, render/render.c, render/render.h:
1825         use the gdk-pixbuf-xlib library to render with
1826
1827         * configure.ac: coment the USE_LIBSN defined variable
1828
1829 2003-07-02  Ben Jansens  <xor@zed.orodu.net>
1830
1831         * openbox/stacking.c:
1832         rename the raise and lower functions. raise is claimed by signal.h already
1833
1834 2003-06-30  Ben Jansens  <xor@zed.orodu.net>
1835
1836         * openbox/dock.c: set te strut smaller when autohide is on
1837
1838 2003-06-30  woodblock  <woodblock@zed>
1839
1840         * openbox/event.c:
1841         Makes a simple click not so accidently annoying by making it not
1842         execute a menu action if nothing is highlighted.
1843
1844 2003-06-30  Ben Jansens  <xor@zed.orodu.net>
1845
1846         * openbox/extensions.c:
1847         messed up the indexes while finding the combined size of all xineerama heads
1848
1849         * openbox/extensions.c:
1850         oops, i want the max edges to find the full area
1851
1852         * CHANGELOG, ChangeLog: using a changelog generated off of CVS
1853
1854 2003-06-29  Ben Jansens  <xor@zed.orodu.net>
1855
1856         * openbox/prop.c:
1857         the prop_get_strings_locale function looked for a utf8 typed property
1858
1859         * openbox/focus.c, openbox/openbox.c, openbox/stacking.c:
1860         add some comments and asserts to make sure I don't ever add this bug again
1861
1862         * openbox/popup.c:
1863         create the popup's window before adding it to the stacking list, so that it is stacked properly and doesnt wreck everything
1864
1865         * Makefile.am, configure.ac, data/Makefile.am, openbox/Makefile.am, parser/Makefile.am, render/Makefile.am, themes/Makefile.am, tools/obconf/Makefile.am:
1866         prepare for alpha1 release.
1867         make 'make dist' work.
1868
1869         * m4/.cvsignore, m4/Makefile.am:
1870         add a makefile so i can put stuff into the make dist
1871
1872         * m4/python.m4: python support is gone
1873
1874         * po/POTFILES.in:
1875         we dont really have any translatable stuff yet but this was pointing at old cpp shit
1876
1877         * render/gradient.c:
1878         missed setting 'current' at the end of the pyramid gradient
1879
1880         * openbox/stacking.c:
1881         waste of energy in stacking_add, and it even caused bugs. woops.
1882
1883 2003-06-29  woodblock  <woodblock@zed>
1884
1885         * openbox/menu.c, openbox/menu_render.c:
1886         Handle menu events a little better: don't bother updating a submenu on
1887         mouseover if it is already open, and call update on menus, even if
1888         they aren't marked as invalid.
1889
1890 2003-06-28  Ben Jansens  <xor@zed.orodu.net>
1891
1892         * openbox/openbox.c:
1893         use fprintf not g_message in the signal handler. no mallocing allowed.
1894
1895         * render/font.c: remove debug print
1896
1897         * openbox/prop.c: set the values of the array at teh right indexes
1898
1899         * openbox/prop.c: fix memory bugs
1900
1901         * data/rc3: remove the switch to... menu
1902
1903         * render/font.c:
1904         don't destroy font patterns, i think this is a double free
1905
1906         * openbox/stacking.c:
1907         put group members above the window when lowering it
1908
1909         * openbox/stacking.c: set the stacking list when stacking changes
1910
1911         * render/theme.h:
1912         add the themes path to the struct. make the name never include a path
1913
1914         * configure.ac, themes/Makefile.am:
1915         adjust the themes with buttons to match how they are read now
1916
1917         * AUTHORS: simplify this shit
1918
1919         * render/theme.c: hardcode the button names for themes
1920
1921         * openbox/popup.c: dont need to raise after adding
1922
1923         * render/theme.c: rename the button_dir var to data_dir.. pointless :>
1924
1925 2003-06-27  Ben Jansens  <xor@zed.orodu.net>
1926
1927         * openbox/Makefile.am: build 'openbox' instead of 'openbox3'.
1928         add the openbox.desktop file for gnome compat.
1929
1930         * openbox/screen.c: set "Openbox" as the name no "Openbox3"
1931
1932         * openbox/openbox.desktop:
1933         add a .desktop file which gets installed for gnome
1934
1935         * openbox/.cvsignore: add the openbox binary
1936
1937         * openbox/openbox.c: add a call to g_set_prgname
1938
1939         * openbox/stacking.c:
1940         stacking changes, its more like the old code without being shitty and with support for raising groups at a time.
1941
1942         * openbox/stacking.c: core when the list gets out of order
1943
1944         * openbox/client.c, openbox/client.h, openbox/dock.c, openbox/extensions.c, openbox/extensions.h, openbox/focus.c, openbox/geom.h, openbox/menu.c, openbox/menu.h, openbox/moveresize.c, openbox/screen.c, openbox/screen.h:
1945         xinerama support
1946
1947         * data/rc3: root menu on right click
1948
1949         * openbox/event.c: 4 space indents
1950
1951 2003-06-26  Ben Jansens  <xor@zed.orodu.net>
1952
1953         * openbox/grab.c:
1954         return true when ungrabbing so that it can ungrab them all on shutdown
1955
1956         * openbox/grab.c:
1957         set ret to true when grabbing and we alerady have it grabbed
1958
1959         * render/font.c:
1960         dont destroy the match pattern, it seems that Xft holds onto the pointer
1961
1962         * openbox/client.c:
1963         check that extensions_vidmode is set before trying to use the vidmode functions
1964
1965         * openbox/grab.c, openbox/grab.h: return FALSE if a grab fails
1966
1967         * openbox/client.c:
1968         set the desktop hint when the window already has a hint but its out of range
1969
1970         * openbox/event.c: clear the over item in the menu when executing shit
1971
1972         * openbox/stacking.h:
1973         add NUM_STACKLAYER, fix some comments that dont apply
1974
1975         * openbox/menu.c: remove unused variable
1976
1977         * openbox/client.c:
1978         remove/add instead of raising to put a window into a new layer
1979
1980         * openbox/stacking.c:
1981         new stacking code that doesnt suck ass to look at, woot
1982
1983         * openbox/dock.c:
1984         use the minsize to keep the stuff ni the dock off of the bevel edges etc
1985
1986         * render/theme.c: add comment
1987
1988         * render/font.c, render/font.h, render/render.c, render/render.h, render/theme.c, render/theme.h:
1989         read fonts and titlebar layout from theme files
1990
1991 2003-06-25  Ben Jansens  <xor@zed.orodu.net>
1992
1993         * data/rc3: add right click on icon to open the client menu
1994
1995         * render/font.c: set teh X so it gets used right
1996
1997         * render/font.c:
1998         keep a small space on the sides of windows between the edge and the text
1999
2000         * openbox/event.c: only render if there was an over existing
2001
2002         * openbox/event.c, openbox/menu.c, openbox/menu.h, openbox/menu_render.c:
2003         menus grab the keyboard and pointer, thus making only one menu visible at a time, and making them act like gtk menus and * menus do, where you can click and drag and release to select something as well as click-release to elave it open while you search around the menu
2004
2005         * data/rc3: show the client meun on "press" on the icon
2006
2007         * openbox/grab.c: grab all motion events for pointer grabs
2008
2009 2003-06-24  Ben Jansens  <xor@zed.orodu.net>
2010
2011         * openbox/menu.c: position submenus correctly horizontally
2012
2013         * openbox/menu_render.c: menus were too short by a border width
2014
2015         * openbox/client.c:
2016         check to make sure the window is on screen *after* positioning it
2017
2018         * render/gradient.c: do horz grads without any multipliaction
2019
2020         * render/gradient.c, render/render.h, render/test.c, render/theme.c:
2021         made all the gradients work with integer math. removed the pipecross and rectangle gradietns tho cuz they are ugly and i dont want to code that bullshit cuz they are ugly.
2022
2023         * render/gradient.c, render/test.c:
2024         integer math for gradients. horz vert and diags and pipecross work so far.
2025
2026 2003-06-22  Ben Jansens  <xor@zed.orodu.net>
2027
2028         * openbox/menu.c, openbox/menu_render.c: add a simple menu parser.
2029         while menu parsing, the theme does not exist so we can't do any theme stuff while creating menu stuff, so put that off for later, i.e when the menu is shown.
2030
2031         * openbox/openbox.c: reorder startup so menu goes before config parsing
2032
2033         * data/rc3: add a root menu
2034
2035 2003-06-21  Ben Jansens  <xor@zed.orodu.net>
2036
2037         * openbox/client.c, openbox/frame.c, openbox/frame.h:
2038         add decoration state to the frame struct. make client_configure adjust the frame if the decorations do not match between the client and the frame, so that when they change it can send a configurenotify to the client.
2039
2040         * openbox/client.c:
2041         make client_reconfigure a non-user-type client_configure
2042
2043         * openbox/action.c:
2044         strdup the exec path cuz it gets freed by the time we restart otherwise
2045
2046         * openbox/event.c: moveresize messages are not user-requests
2047
2048         * openbox/client.c: remove debug print
2049
2050         * openbox/client.c:
2051         send teh configure event to client on user-requested final configures even if not moved, cuz usualy the final isnt sent with a change, but just to end the move process.
2052
2053         * render/render.c:
2054         always create the bg pixmap, X seems to not like it if i dont?
2055
2056         * openbox/openbox.c:
2057         always use the session id from the session manager when setting the restart property
2058
2059         * openbox/openbox.c: add -sm-disable option
2060
2061         * openbox/openbox.c:
2062         only show -sm-client-id in the help when session management is build in
2063
2064         * openbox/openbox.c:
2065         session management works, and it can resume with its old ID, so it works with gnome-session
2066
2067         * configure.ac, m4/x11.m4, openbox/Makefile.am, openbox/event.c, openbox/openbox.c:
2068         make session management optional
2069
2070         * openbox/openbox.c:
2071         set the required properties so that session managers see openbox
2072
2073         * render/font.c, render/theme.c:
2074         don't exit in the render lib, rather return a NULL font/theme on failure
2075
2076         * openbox/event.c, openbox/openbox.c:
2077         add libSM *client* support, so we should work with gnome-session now!
2078
2079         * render/instance.c, render/render.c: more namespacing with Rr*
2080
2081         * render/color.c: use the pseudo shit in the instance now
2082
2083         * render/gradient.c, render/gradient.h, render/render.c, render/color.c, render/color.h, render/image.c, render/image.h, openbox/client.c, openbox/screen.c, render/font.c, render/render.h, render/theme.h:
2084         more namespacing with Rr*
2085
2086         * openbox/menu.h, openbox/menu.c: kill a warning
2087
2088         * openbox/openbox.c, render/font.c, render/font.h, render/render.c, render/render.h, render/theme.c, render/theme.h:
2089         more namespacing to Rr*
2090
2091         * openbox/menu.c: fix a warning
2092
2093         * openbox/client.c, openbox/client.h, render/color.c, render/color.h, render/gradient.c, render/gradient.h, render/image.c, render/image.h, render/render.c, render/render.h:
2094         rename pixel32/16 to RrPixel32/16
2095
2096         * render/color.c, render/color.h, render/render.h, render/theme.c, render/theme.h:
2097         rename color_rgb to RrColor
2098
2099         * openbox/dock.c, openbox/frame.c, openbox/framerender.c, openbox/menu.c, openbox/menu_render.c, openbox/moveresize.c, openbox/openbox.c, openbox/openbox.h, openbox/popup.c, render/font.c, render/font.h, render/theme.c, render/theme.h:
2100         put the render theme into a struct
2101
2102         * openbox/client.c, openbox/dock.c, openbox/dock.h, openbox/frame.c, openbox/frame.h, openbox/framerender.c, openbox/menu.c, openbox/menu.h, openbox/menu_render.c, openbox/moveresize.c, openbox/openbox.c, openbox/openbox.h, openbox/popup.c, openbox/screen.c:
2103         fixed to accomodate the changes to the render/ API.
2104
2105 2003-06-20  Ben Jansens  <xor@zed.orodu.net>
2106
2107         * render/.cvsignore, render/Makefile.am, render/color.c, render/color.h, render/font.c, render/font.h, render/gradient.c, render/gradient.h, render/image.c, render/image.h, render/instance.c, render/instance.h, render/mask.c, render/mask.h, render/render.c, render/render.h, render/test.c, render/theme.c, render/theme.h:
2108         this is going to break the kernel/ building.
2109
2110         lots of modifications to the render API, prefixing everything, making proper
2111         names for everything. the structures are not hidden/opaque yet, but the naming scheme of the public API works much better now.
2112
2113         * render/font.c: oops typo
2114
2115         * render/font.c:
2116         take the bevel width into account for the width available
2117
2118         * openbox/dock.c, openbox/frame.c, openbox/framerender.c, openbox/menu_render.c, openbox/popup.c, render/font.c, render/gradient.c, render/image.c, render/image.h, render/render.c, render/render.h, render/test.c, render/theme.c, render/theme.h:
2119         simply the render interface by not requiring the setting of all the areas. only take a w and h in paint(). best font layout ever.
2120
2121         * AUTHORS: miklos does themes like mad
2122
2123         * render/gradient.c:
2124         slight optimizations, and make the last 4 gradients work properly
2125
2126         * render/font.c:
2127         center text vertically. use the font's height because all that space is needed for some charcters
2128
2129         * openbox/frame.c, openbox/framerender.c, openbox/menu_render.c, openbox/popup.c, openbox/screen.c, render/gradient.c, render/render.c, render/render.h, render/test.c, render/theme.c:
2130         remove non-planar surfaces
2131
2132 2003-06-19  Ben Jansens  <xor@zed.orodu.net>
2133
2134         * configure.ac, m4/gl.m4: remove --enable-gl
2135
2136         * openbox/client.c:
2137         fix for how base-size is used to comply with the icccm
2138
2139 2003-06-18  Ben Jansens  <xor@zed.orodu.net>
2140
2141         * openbox/framerender.c: copy the frame's surface from the prototype
2142
2143 2003-06-17  Ben Jansens  <xor@zed.orodu.net>
2144
2145         * bootstrap: export the WANT_AUTOMAKE var before running acloacl
2146
2147 2003-06-17  manmower  <manmower@zed>
2148
2149         * openbox/client.c: wake up old icon grabbing code
2150
2151         * render/color.c: remove unneeded/uncompiled junk
2152
2153 2003-06-09  manmower  <manmower@zed>
2154
2155         * openbox/client.c: try swapping bytes on textures
2156
2157         * openbox/client.c: | != &
2158
2159         * openbox/client.c: fix? color on icons
2160
2161         * openbox/client.c: remove bogus byte permutations in icon code
2162
2163 2003-06-08  Ben Jansens  <xor@zed.orodu.net>
2164
2165         * openbox/focus.c:
2166         remove an extra useless call to focus_set_client(NULL)
2167
2168         * openbox/client.c: describe the complicated if a bit :)
2169
2170         * openbox/client.c: more checks for when to do an XResizeWindow
2171
2172         * openbox/client.c:
2173         send the configure notify for resizes too, just to be a little more safe
2174
2175         * openbox/client.c:
2176         onlt send configurenotify if the client actually moved, to work around emacs, hopefully :)
2177
2178         * openbox/client.c:
2179         some more fixes for resizing clients. aspect ratio is not the last thing checked and so rules all, that might need to change.. however, it now uses base-size only for aspect ratios and base-size/min-size for other sizing shit, as per the ICCCM.
2180
2181         * openbox/client.c: from icccm:
2182         If a base size is not provided, the minimum size is to be used in its place and vice versa.
2183
2184         Added support for this.
2185
2186         * openbox/frame.c: missing another bwidth
2187
2188         * openbox/frame.c: position titlebars better, was missing a bwidth
2189
2190         * openbox/client.c: i was backwards
2191
2192         * openbox/event.c: this cnofigure is FINAL!
2193
2194         * openbox/client.c:
2195         don't resize the client itself while doing a resize if its not final when config_opaque_resize is not on
2196
2197 2003-06-04  Ben Jansens  <xor@zed.orodu.net>
2198
2199         * openbox/client.c:
2200         better VIDMODE support, handle the cases where the functions fail
2201
2202         * openbox/client.c:
2203         size fullscreen applications to the resolution with the VIDMODE extension
2204
2205         * openbox/client.c, openbox/client.h, openbox/screen.c:
2206         remove the client_remaximize function, and replace it with the client_reconfigure function, which just calls client_configure with the window's current location and dimensions, user=TRUE and final=TRUE.
2207
2208         add support for the VIDMODE extension in client_configure, namely, fullscreen windows are positioned at the point of the viewport rather than at 0,0.
2209         call client_reconfigure when uniconifying a window, so that fullscreen windows are put at the point of the view port.
2210
2211         * data/rc3:
2212         remove that fancy new leftHanded option, it should be done via xmodmap instead
2213
2214         * data/rc3:
2215         add a leftHanded option for mouse bindings, reverses the left/right keywords
2216
2217         * openbox/grab.c, openbox/grab.h:
2218         make key grabbing per window instead of always root
2219
2220         * openbox/focus.c: allow cycling to iconic windows
2221
2222         * openbox/client.c:
2223         use client_can_focus from client_focus to always get the same result
2224
2225         * openbox/client.c, openbox/client.h, openbox/focus.c:
2226         reverting the transient focus cycle change, its just not.. right. add the parent's title to the transient's for the popup instead of just relpacing it
2227
2228         * openbox/focus.c:
2229         better focus cycling for transients. use the parent instead of the transients in the list in case it has more than one, then after choosing it try focus a transient instead
2230
2231         * openbox/focus.c:
2232         dont try change focus while looping thru the focus list
2233
2234         * openbox/client.c, openbox/client.h, openbox/focus.c:
2235         allow focus_fallback to query if a client can be focused without changing the focus order on it
2236
2237 2003-06-03  Ben Jansens  <xor@zed.orodu.net>
2238
2239         * openbox/event.c, openbox/frame.c, openbox/frame.h, openbox/framerender.c, openbox/popup.c:
2240         modifications to keep up with libobrender2
2241
2242         * openbox/popup.c: use theme stuff for the gfx/font
2243
2244         * openbox/frame.c: layout fixes
2245
2246         * openbox/frame.c: position the grips
2247
2248         * openbox/framerender.c: fix some theme colors/display
2249
2250         * m4/gl.m4, openbox/Makefile.am, openbox/client.c, openbox/client.h, openbox/dock.c, openbox/dock.h, openbox/event.c, openbox/frame.c, openbox/frame.h, openbox/framerender.c, openbox/menu.c, openbox/menu.h, openbox/menu_render.c, openbox/moveresize.c, openbox/openbox.c, openbox/openbox.h, openbox/popup.c, openbox/screen.c, openbox/window.c, render/.cvsignore, render/Makefile.am, render/color.h, render/font.c, render/font.h, render/gradient.c, render/gradient.h, render/image.c, render/image.h, render/mask.c, render/mask.h, render/render.c, render/render.h, render/test.c, render/theme.c, render/theme.h, COPYING, COPYING.FDL, COPYING.GPL, COPYING.LGPL, Makefile.am, README, configure.ac:
2251         the kernel is using th gl shit to render itself, but with the old style frame shit here. in practice, the render and glft libraries needed some changes to be used better, these are incorporated.
2252
2253         * openbox/stacking.c: remove debug print
2254
2255         * render/color.c:
2256         more unique error for unhandles image bit depths, remove debug prints
2257
2258         * render/color.c: handle increase_depth on 1bpp images
2259
2260         * openbox/client.c:
2261         ignore xerrors while using the pixmaps specified by the client, since they can certainly be invalid and there's nothing i can do about it.
2262
2263         * openbox/client.c: rm g_messages.. ones that segfault.. :>
2264
2265 2003-06-02  Ben Jansens  <xor@zed.orodu.net>
2266
2267         * openbox/client.c: also dont increment the nicons if the w*h is 0
2268
2269         * openbox/client.c: watch out for 0x0 icons, and skip them
2270
2271         * openbox/menu_render.c, openbox/popup.c:
2272         create some temporary fonts to use for rendering text
2273
2274         * openbox/frame.c, openbox/menu_render.c, openbox/popup.c:
2275         set colors for text
2276
2277         * openbox/frame.c, openbox/popup.c:
2278         adjust for some api extensions in render2
2279
2280         * bootstrap: add env var to get automake 1.7
2281
2282 2003-06-01  Ben Jansens  <xor@zed.orodu.net>
2283
2284         * COPYING, COPYING.FDL, COPYING.GPL, COPYING.LGPL, Makefile.am, README, configure.ac, m4/gl.m4, openbox/Makefile.am, openbox/client.c, openbox/client.h, openbox/dock.c, openbox/dock.h, openbox/event.c, openbox/frame.c, openbox/frame.h, openbox/framerender.c, openbox/menu.c, openbox/menu.h, openbox/menu_render.c, openbox/moveresize.c, openbox/openbox.c, openbox/openbox.h, openbox/popup.c, openbox/screen.c, openbox/window.c, openbox/window.h, render/.cvsignore, render/Makefile.am, render/color.c, render/color.h, render/font.c, render/font.h, render/gradient.c, render/gradient.h, render/image.c, render/image.h, render/mask.c, render/mask.h, render/render.c, render/render.h, render/test.c, render/theme.c, render/theme.h:
2285         Merging in th gl2 branch. Adding a --enable-gl option to the configure script, which defaults off.
2286
2287 2003-05-30  manmower  <manmower@zed>
2288
2289         * openbox/frame.c: adjust title bar text
2290
2291 2003-05-30  Ben Jansens  <xor@zed.orodu.net>
2292
2293         * openbox/client.c:
2294         adjust what gets raised on map a bit, a little less selective.
2295
2296 2003-05-30  manmower  <manmower@zed>
2297
2298         * openbox/frame.c: add some test cases for the font crap
2299
2300 2003-05-29  Ben Jansens  <xor@zed.orodu.net>
2301
2302         * m4/openbox.m4: better alpha/beta check :)
2303
2304         * m4/openbox.m4: look for 'alpha' and 'beta' releases also
2305
2306         * openbox/stacking.c:
2307         only add non-nonintrusively when both windows share a stacking layer
2308
2309         * data/rc3: raise on client clicks
2310
2311 2003-05-28  Ben Jansens  <xor@zed.orodu.net>
2312
2313         * COPYING: remove the generic COPYING
2314
2315         * COPYING.FDL, COPYING.GPL, COPYING.LGPL: New file.
2316
2317         * COPYING.FDL, COPYING.GPL, COPYING.LGPL, README:
2318         specify different licenses for different directories
2319
2320         * openbox/action.c, openbox/action.h:
2321         rm the 'focusraise' action, it is redundant.
2322
2323         * openbox/frame.c: use the new shape API from the render libs
2324
2325         * openbox/event.c:
2326         pass expose events like i was before. cleanups in rendering to not render areas anymore. pass the surface's absx/y to planar's paint func
2327
2328         * openbox/frame.c:
2329         no button mask on the plate, and some cleanups with redundant if's
2330
2331 2003-05-28  manmower  <manmower@zed>
2332
2333         * openbox/frame.c: slightly improved theme
2334
2335 2003-05-28  Ben Jansens  <xor@zed.orodu.net>
2336
2337         * openbox/popup.c: proper centering of the text in popups without icons
2338
2339 2003-05-27  manmower  <manmower@zed>
2340
2341         * openbox/frame.c, openbox/frame.h: fixed the flicker in shape
2342         (we use a shapewindow now.  it rules, I rule, fuck X, blah blah MOOOOOOO)
2343
2344 2003-05-27  Ben Jansens  <xor@zed.orodu.net>
2345
2346         * openbox/frame.c: and typod
2347
2348         * openbox/frame.c, openbox/frame.h:
2349         some cleanups, got rid of the border shit
2350
2351         * openbox/event.c: toss out expose events to render
2352
2353         * openbox/popup.c: no more seg
2354
2355         * openbox/frame.c, openbox/frame.h: some cleanups
2356
2357 2003-05-27  manmower  <manmower@zed>
2358
2359         * openbox/frame.c: free decor when removing frame
2360
2361         * openbox/frame.c: HOW DO YOU LIKE MY SEXY NEW DECOR?!?
2362
2363         * openbox/frame.c: I get my events on decor again
2364         and probably ruined exposure for some weird case. bwa ha ha
2365
2366         * openbox/frame.c, openbox/frame.h: how about some UGLY decor!
2367
2368 2003-05-27  Ben Jansens  <xor@zed.orodu.net>
2369
2370         * openbox/popup.c: paints are now recursive
2371
2372 2003-05-27  manmower  <manmower@zed>
2373
2374         * openbox/frame.h: surface pointer please
2375
2376 2003-05-27  Ben Jansens  <xor@zed.orodu.net>
2377
2378         * openbox/popup.c: proper layout
2379
2380         * openbox/popup.c: i suck so much
2381
2382         * openbox/event.c, openbox/menu.c, openbox/popup.c: DRAWS!!
2383
2384 2003-05-27  manmower  <manmower@zed>
2385
2386         * openbox/frame.c, openbox/frame.h: added shape support for decor
2387
2388 2003-05-27  Ben Jansens  <xor@zed.orodu.net>
2389
2390         * openbox/popup.c: dont try use an icon when where isnt one
2391
2392         * openbox/client.c, openbox/client.h, openbox/dock.c, openbox/dock.h, openbox/frame.c, openbox/frame.h, openbox/framerender.c, openbox/menu.c, openbox/menu.h, openbox/menu_render.c, openbox/moveresize.c, openbox/openbox.c, openbox/openbox.h, openbox/popup.c, openbox/screen.c, openbox/window.c:
2393         port to the new render stuff.. but this isnt complte since we don't have themes yet.
2394
2395         * Makefile.am, configure.ac, render/.cvsignore, render/Makefile.am, render/color.c, render/color.h, render/font.c, render/font.h, render/gradient.c, render/gradient.h, render/image.c, render/image.h, render/mask.c, render/mask.h, render/render.c, render/render.h, render/test.c, render/theme.c, render/theme.h:
2396         removing the old render stuffs
2397
2398 2003-05-27  manmower  <manmower@zed>
2399
2400         * openbox/frame.c, openbox/frame.h: added % based decoration sizes
2401
2402         * openbox/frame.c, openbox/frame.h: fixed right decor anchors properly
2403
2404         * openbox/frame.c: fix right anchor point offsets
2405
2406         * openbox/frame.c: position windows for all anchor types
2407
2408         * openbox/frame.c: all decor anchors supported
2409
2410         * openbox/event.c, openbox/frame.c:
2411         change event.c to use a frame pointer instead of client pointer in framedecor
2412         frame.c now supports more decor anchors
2413
2414         yay for 1 to many commit logs
2415
2416 2003-05-26  Ben Jansens  <xor@zed.orodu.net>
2417
2418         * openbox/Makefile.am: link render version 2
2419
2420 2003-05-26  manmower  <manmower@zed>
2421
2422         * openbox/frame.c, openbox/frame.h:
2423         frame pointer in framedecor instead of client pointer
2424
2425 2003-05-26  Ben Jansens  <xor@zed.orodu.net>
2426
2427         * openbox/event.c, openbox/window.c: add case for Window_Decoration
2428
2429 2003-05-26  manmower  <manmower@zed>
2430
2431         * openbox/frame.c, openbox/frame.h: client pointer in framedecor
2432
2433         * openbox/frame.c: crap
2434
2435         * openbox/frame.c, openbox/frame.h:
2436         I can now map arbitrarily sized invalid space above my windows!
2437         I suck.
2438
2439         * openbox/frame.c:
2440         we now have no decor at all, but are otherwise functional
2441
2442 2003-05-26  Ben Jansens  <xor@zed.orodu.net>
2443
2444         * openbox/client.c:
2445         use frame->visible, not the desktop number, other states exist too, like show_desktop
2446
2447         * openbox/dock.c, openbox/frame.c, openbox/frame.h, openbox/framerender.c, openbox/menu.c, openbox/popup.c, openbox/screen.c, openbox/window.h:
2448         merge in the changes made in the gl branch
2449
2450         * Makefile.am, configure.ac:
2451         create the glft library. it will be using freetype and fontconfig to render fonts in GL.
2452         flesh out render2 a bit more.. actually just in comments
2453
2454         * Makefile.am, configure.ac:
2455         add a new render2 lib, which has a proper API and uses only OpenGL to render.
2456
2457         * render/render.c: remove GL from the old render lib for now
2458
2459         * configure.ac, m4/gl.m4:
2460         gl support in configure, fontconfig instead of xft
2461
2462 2003-05-26  manmower  <manmower@zed>
2463
2464         * openbox/frame.c: add back some frame adjust stuff
2465
2466         * openbox/frame.c, openbox/frame.h, openbox/framerender.c, openbox/window.h:
2467         complete destruction of all current frame functionality.
2468         you're welcome.
2469
2470 2003-05-25  manmower  <manmower@zed>
2471
2472         * render/gradient.c, render/mask.c, render/render.c, render/render.h, render/test.c, render/theme.c, render/theme.h, openbox/dock.c, openbox/frame.c, openbox/framerender.c, openbox/menu.c, openbox/popup.c, openbox/screen.c, render/color.c, render/color.h:
2473         everything compiles.  everything is broken.
2474
2475         rendertest works, yay.
2476
2477         * render/render.c: now it even links.
2478
2479         * render/font.c, render/font.h, render/gradient.c, render/gradient.h, render/render.c, render/render.h:
2480         once again it compiles.
2481
2482         no, it does not work
2483
2484         much has been removed.
2485
2486 2003-05-25  Ben Jansens  <xor@zed.orodu.net>
2487
2488         * configure.ac, m4/gl.m4:
2489         right branch. no more xft. fontconfig. gl. woot.
2490
2491         * configure.ac, m4/gl.m4: omg wrong branch!
2492
2493         * configure.ac, m4/gl.m4: always gl. fontconfig instead of xft.
2494
2495 2003-05-25  manmower  <manmower@zed>
2496
2497         * render/gradient.c: gl.h shouldn't be required when not enabling gl
2498
2499 2003-05-25  Ben Jansens  <xor@zed.orodu.net>
2500
2501         * README.CVS: add the glade/gtk deps for debian
2502
2503 2003-05-25  manmower  <manmower@zed>
2504
2505         * render/gradient.c, render/test.c: all grads done
2506
2507         * render/gradient.c, render/test.c: pipecross
2508
2509         * render/gradient.c, render/test.c: rectangle and diagonal grads yay
2510
2511         gl > *
2512
2513 2003-05-25  Ben Jansens  <xor@zed.orodu.net>
2514
2515         * data/rc3: Shade not Shaded
2516
2517         * README.CVS: add debian package list
2518
2519         * README.CVS: automake 1.7
2520
2521         * README.CVS: mention glib, xml, gtk and glade
2522
2523         * configure.ac:
2524         make autoconf 2.54 required. makes automake1.6 get used on some systems
2525
2526 2003-05-25  manmower  <manmower@zed>
2527
2528         * render/gradient.c, render/gradient.h, render/render.c, render/render.h, render/test.c:
2529         gl is starting.  it's gonna get really ugly really fast, folks
2530
2531 2003-05-24  Ben Jansens  <xor@zed.orodu.net>
2532
2533         * Makefile.am, configure.ac, openbox/Makefile.am, openbox/action.c, openbox/action.h, openbox/config.c, openbox/focus.c, openbox/openbox.c, openbox/parse.c, openbox/parse.h, openbox/plugin.c, parser/.cvsignore, parser/Makefile.am, parser/parse.c, parser/parse.h, tools/.cvsignore, tools/Makefile.am, tools/obconf/.cvsignore, tools/obconf/Makefile.am, tools/obconf/about.c, tools/obconf/main.c, tools/obconf/obconf.glade, tools/obconf/obconf.gladep, tools/obconf/obconf.h, tools/obconf/plugins.c, tools/obconf/plugins.h:
2534         this is a big one! im putting stats in here just cuz!
2535          59 files changed, 1691 insertions(+), 607 deletions(-)
2536         Adding the beginings of ObConf. Adding a resistance-config plugin for ObConf.
2537         Creating an obparser library that obrender can use, the kernel can use, plugins can use, and ObConf and its plugins can use. (its just code for using libXml2)
2538
2539         * openbox/action.c:
2540         convert shit from utf8 to filename before execing it
2541
2542         * configure.ac, data/rc3, openbox/Makefile.am, openbox/config.c, openbox/openbox.c, openbox/parse.c, openbox/parse.h, openbox/parse.l, openbox/parse.y:
2543         ECKS EM ELL
2544
2545         * openbox/action.c, openbox/action.h:
2546         add actions for showing the desktop
2547
2548         * openbox/action.c, openbox/action.h: soem changes to desktop actions.
2549         instead of having *wrap actions, just default to having wrap on, and let it be optionally placed into the rc to disable it.
2550         instead of next/prev desktop, just have actions for desktop to the right/left/up/down. this applies to sendtodesktop actions too.
2551
2552         * openbox/focus.c: add a DEBUG_FOCUS print
2553
2554         * openbox/event.c:
2555         there's this case where we DONT want to ignore both events or we end up without anything we know of being focused, even tho something is. this case is now covered. ps i hate focus so much.
2556
2557         * openbox/client.c: use the user friendly desktop number
2558
2559         * openbox/focus.c: clarify comment
2560
2561 2003-05-23  Ben Jansens  <xor@zed.orodu.net>
2562
2563         * openbox/event.c:
2564         dont refocus the focused window, that just causes so many problems (with alt-tab :)
2565
2566         * openbox/prop.c: validate utf8 strings before using them
2567
2568         * configure.ac, m4/gl.m4, openbox/Makefile.am, render/Makefile.am:
2569         add --enable-gl support, and put the flags/libs in the appropriate makefiles
2570
2571         * openbox/focus.c: remove a todo item that seems to be.. done!
2572
2573         * openbox/focus.c:
2574         missed a case of using the stacking list and assuming that its all clients still. fixed that assumption now.
2575
2576         * openbox/event.c:
2577         ignore ancestor FocusIn events. i get them sometimes when hitting alt-tab and that totally fucks it up cuz it cancels teh alt-tab process.
2578
2579 2003-05-22  manmower  <manmower@zed>
2580
2581         * render/test.c: fix cut'n'paste bug
2582
2583 2003-05-22  Ben Jansens  <xor@zed.orodu.net>
2584
2585         * openbox/event.c: only button 1 can use menu items
2586
2587 2003-05-22  manmower  <manmower@zed>
2588
2589         * render/render.c: removed a piece of code I suspect has never been run
2590         this is for XServers that report less than 8 bpp default visual and support
2591         8bpp or higher visuals
2592
2593         hopefully nothing is really that stupid.  we'll see.
2594
2595         * render/render.h, render/render.c:
2596         keep XVisualInfo around in preparation for opengl stuff
2597
2598 2003-05-22  Ben Jansens  <xor@zed.orodu.net>
2599
2600         * configure.ac:
2601         remove shit for my own makefiles that i dont need no more
2602
2603         * openbox/event.c: a missing break!
2604
2605 2003-05-22  woodblock  <woodblock@zed>
2606
2607         * openbox/menu.c: layers submenu on client
2608
2609 2003-05-22  Ben Jansens  <xor@zed.orodu.net>
2610
2611         * openbox/action.c, openbox/action.h, openbox/client.c, openbox/client.h:
2612         add actions for changing client layers to abov/below/normal
2613
2614         * openbox/client.c: typo
2615
2616         * openbox/plugin.c: load the client_menu by default for nowc
2617
2618 2003-05-21  woodblock  <woodblock@zed>
2619
2620         * data/rc3, openbox/client.c, openbox/event.c, openbox/menu.c, openbox/menu.h:
2621         Client menus
2622         Add "client_menu" to pluginrc to use.
2623
2624 2003-05-21  Ben Jansens  <xor@zed.orodu.net>
2625
2626         * render/font.c: optimize it a bit
2627
2628         * render/font.c:
2629         pass the number of bytes, not characters to the xft draw functions
2630
2631         * openbox/action.c, openbox/action.h: add 'movetoedge' actions
2632
2633         * openbox/screen.c: add xerror.h
2634
2635         * openbox/screen.c:
2636         Openbox3 in the WM name, FUCK OFF XINE, YA YOU HEARD ME.
2637
2638         * render/gradient.c: allocate the border_color's gc
2639
2640 2003-05-20  Ben Jansens  <xor@zed.orodu.net>
2641
2642         * render/color.c, render/render.c:
2643         put the devation back how it used to be, it aws definately no better..
2644
2645 2003-05-20  manmower  <manmower@zed>
2646
2647         * render/gradient.c:
2648         of by one error in pyramid, rectangle, and crosspipe
2649
2650 2003-05-20  Ben Jansens  <xor@zed.orodu.net>
2651
2652         * render/gradient.c: remove debug prints
2653
2654         * render/gradient.c: reindent the file....
2655         but while i'm at it:
2656           - add support for bevels/borders on solid textures.
2657           - reverse the colors in the rectangle gradient, the pipecross and pyramid
2658             ones may need to be reversed as well.
2659
2660         * render/render.c, render/render.h: remove the elliptic gradient type.
2661         add bevel light/dark colors for solid textures with bevels
2662
2663         * render/theme.c:
2664         use the rectangle gradient when the theme asks for elipse
2665
2666         * m4/openbox.m4: argh put it back right!*(
2667
2668         * m4/openbox.m4: fuck it, put it back
2669
2670         * m4/openbox.m4: smarter default debug value :)
2671
2672         * m4/openbox.m4: default debug off (for non-cvs builds!)
2673
2674         * openbox/screen.c:
2675         ignore errors when playing with application defined colormaps
2676
2677 2003-05-19  Ben Jansens  <xor@zed.orodu.net>
2678
2679         * openbox/dock.c: get the size for all the apps before positioning them
2680
2681         * openbox/dock.c:
2682         set teh dock sizes before the app uses it for positioning
2683
2684         * openbox/dock.c: center dock apps
2685
2686         * openbox/action.c: use the resize increment when resizing relative
2687
2688         * openbox/action.c, openbox/action.h, openbox/client.c, openbox/client.h:
2689         2 in 1 again..
2690         a) directional focus actions
2691         b) action system changes i.e. use structs/arrays for convertings strings to actions instead of gross if-else chains
2692
2693 2003-05-18  woodblock  <woodblock@zed>
2694
2695         * openbox/menu.c: Added a fifo_menu plugin
2696
2697 2003-05-18  manmower  <manmower@zed>
2698
2699         * render/gradient.c, render/test.c: PipeCross
2700
2701         * render/gradient.c: there's the rect grad.  now stop bugging me :(
2702
2703         * render/gradient.c: is that a rectangle grad?  damned if I know
2704
2705 2003-05-18  Ben Jansens  <xor@zed.orodu.net>
2706
2707         * openbox/client.c, openbox/client.h, render/color.c, render/color.h, render/image.c, render/render.c, render/render.h:
2708         make icons use pixel32 data, and image_draw takes pixel32 data.
2709         client.c gets pixmap icons as a backup to netwm ones, and they are converted into pixel32 data.
2710
2711         * openbox/focus.c: include grab.h
2712
2713 2003-05-18  manmower  <manmower@zed>
2714
2715         * render/test.c: whatever, it's a junk file.
2716
2717         * render/gradient.c: change badly named offsets
2718         add stubs for rectangle and pipecross
2719
2720         * render/image.c: rename poorly named offsets
2721
2722         * render/gradient.h: add stubs for pipecross and rectangle
2723
2724         * render/color.h: fix poor naming of default offset
2725
2726         * render/color.c: fix poor naming of the default offset
2727
2728 2003-05-18  woodblock  <woodblock@zed>
2729
2730         * openbox/client.c:
2731         this is actually xor :) - fixing the focus search function to not return NULL if no valid group members exist to be a transient for
2732
2733 2003-05-18  Ben Jansens  <xor@zed.orodu.net>
2734
2735         * openbox/stacking.c:
2736         proper check to see if something was raised, the it==NULL would cause it to always return, incorrectly.
2737
2738         * openbox/client.c, openbox/client.h, openbox/event.c, openbox/stacking.c, render/render.c, render/render.h:
2739         2 in 1 deal :\
2740
2741         client.c stacking.c: fixing looping transient case for group transient windows. now a window which is transient for a group is *not* transient for any other transient windows in the group (perviously the other window had to be transient for the group to be excluded, now it can be transient for anything).
2742
2743         client.c/h event.c render.c/h: adjustnig icon handling a bit. will be converting the legacy pixmap icons into rgba data so they can be handled the same as netwm icons.
2744
2745 2003-05-18  woodblock  <woodblock@zed>
2746
2747         * HACKING: Indentation stuff
2748
2749 2003-05-18  Ben Jansens  <xor@zed.orodu.net>
2750
2751         * configure.ac: actually optional now.
2752
2753         * configure.ac: make LIBSN optional
2754
2755         * openbox/focus.c:
2756         grab the mouse during focus cycling. this removes the bug of focusing following the mouse when the popup disappears and fuck up your cycling.
2757
2758         * render/Makefile.am: need the libsn flags
2759
2760         * configure.ac, openbox/Makefile.am, openbox/event.c, openbox/openbox.c, openbox/openbox.h, openbox/screen.c:
2761         add (optional) support for showing a busy cursor via startup notification
2762
2763 2003-05-17  Ben Jansens  <xor@zed.orodu.net>
2764
2765         * openbox/event.c: disallow drag events on title buttons.
2766         dont redraw title button when the wheel buttons are used on them.
2767
2768 2003-05-16  Ben Jansens  <xor@zed.orodu.net>
2769
2770         * openbox/client.c: print the class not the name
2771
2772         * openbox/prop.c: get all the strings!
2773
2774         * openbox/client.c, openbox/dock.c, openbox/dock.h:
2775         save the dock's class/name for future evil purposes!
2776         also print names of windows being managed/unmanaged
2777
2778         * data/rc3: discourage floating a bit, capitalize better.
2779
2780         * openbox/dock.c: FUCK dock is not an array anymore!
2781
2782         * openbox/dock.c, openbox/dock.h, openbox/screen.c:
2783         give the dock a strut and use it
2784
2785         * openbox/event.c: remove debug prints
2786
2787         * openbox/dock.c, openbox/dock.h, openbox/event.c:
2788         dockapps are ObWindows now.
2789         set the type when creating new dockapps.
2790
2791         * data/rc3, openbox/Makefile.am, openbox/client.c, openbox/client.h, openbox/config.c, openbox/config.h, openbox/dock.c, openbox/dock.h, openbox/event.c, openbox/frame.c, openbox/menu.c, openbox/menu.h, openbox/openbox.c, openbox/screen.c, openbox/slit.c, openbox/slit.h, openbox/window.c, openbox/window.h:
2792         rename "Slit" to "Dock".
2793         add config options to the rc3 for the dock.
2794         create a window_map, add DockApps to the ObWindow types, use the window_map for translating windows into objects for event handling (only one lookup now) and remove the old maps (client_map, menu_map).
2795
2796         * openbox/client.c, openbox/menu.c, openbox/moveresize.c, openbox/popup.c, openbox/slit.c, openbox/stacking.c, openbox/stacking.h:
2797         add anotehr stacking_add function.
2798         make stacking_add take care of raising also.
2799         make new windows that dont get focus also not raise above the focused window.
2800
2801         * openbox/event.c: movnig shit around
2802
2803 2003-05-14  Ben Jansens  <xor@zed.orodu.net>
2804
2805         * openbox/menu.c: watch out for not loading the timed_menu plugin
2806
2807         * openbox/client.c: pass teh correct values for config notify events
2808
2809 2003-05-14  woodblock  <woodblock@zed>
2810
2811         * openbox/event.c, openbox/event.h, openbox/menu.c:
2812         Added a menu to read from a pipe.
2813         File descriptors added to the event loop.
2814
2815 2003-05-12  woodblock  <woodblock@zed>
2816
2817         * openbox/event.c, openbox/event.h, openbox/menu.c:
2818         woodblock's failed attempt at making pipes work
2819
2820 2003-05-11  Ben Jansens  <xor@zed.orodu.net>
2821
2822         * data/rc3, openbox/config.c, openbox/config.h, openbox/moveresize.c:
2823         add opaque move/resize to the rc3
2824
2825         * openbox/stacking.c:
2826         was using the frame window in the stacking list hint
2827
2828         * openbox/event.c, openbox/menu.c, openbox/moveresize.c, openbox/popup.c, openbox/stacking.c, openbox/window.c, openbox/window.h:
2829         add internal popups n shit to the stacking list.
2830         some cleanups for the stacking order hint.
2831         add non-opaque move/resize. cant toggle it yet.
2832
2833         * openbox/menu.c: rm comment for shit i fixed
2834
2835         * TODO: updated... it sucks tho anyways
2836
2837         * openbox/screen.c:
2838         not everything in the stacking_list is a client anymore
2839
2840         * openbox/event.c, openbox/menu.c:
2841         Menus put themselves into the stacking list.
2842         Clicking on the menu (but not on an entry) will raise it.
2843
2844         * openbox/Makefile.am, openbox/action.c, openbox/client.c, openbox/client.h, openbox/config.h, openbox/event.c, openbox/focus.c, openbox/menu.c, openbox/menu.h, openbox/openbox.c, openbox/slit.c, openbox/slit.h, openbox/stacking.c, openbox/stacking.h, openbox/window.c, openbox/window.h:
2845         Clients Menus and Slits are all 'ObWindow's now.
2846         Stacking is done with ObWindows.
2847         Slits add themselves to the stacking order, as do clients of course.
2848         Added some macros for adding/removing to the stacking order.
2849
2850         * openbox/slit.c:
2851         garb press events so they dont break bindings... X sucks
2852
2853         * openbox/slit.c:
2854         grab button events on the slit so they dont go through to root
2855
2856         * openbox/client.c, openbox/slit.c, openbox/slit.h:
2857         use the size of the icon window for slit apps, not the client window
2858
2859         * openbox/event.c, openbox/grab.c, openbox/grab.h, openbox/slit.c, openbox/slit.h:
2860         can drag slit-apps around in the slit
2861
2862 2003-05-10  Ben Jansens  <xor@zed.orodu.net>
2863
2864         * openbox/event.c, openbox/slit.c, openbox/slit.h, openbox/timer.h:
2865         add autohiding to the slit
2866
2867         * openbox/event.c, openbox/slit.c, openbox/slit.h:
2868         some slit fixes, support resizing slitapps
2869
2870         * Makefile.am, configure.ac: rm the tools dir
2871
2872         * tools/Makefile.am: rm this garbage...
2873
2874         * openbox/Makefile.am, openbox/client.c, openbox/event.c, openbox/frame.c, openbox/openbox.c, openbox/screen.c, openbox/slit.c, openbox/slit.h:
2875         add a slit to the kernel
2876
2877         * doc/.cvsignore: add the sgml dir
2878
2879         * openbox/menu.c: make the client menu not have a title
2880
2881         * openbox/event.c:
2882         be more careful about ignoring focusin/out event pairs
2883
2884 2003-05-10  woodblock  <woodblock@zed>
2885
2886         * openbox/menu.c: Turn off timed_menu by default
2887
2888         * openbox/menu.c, openbox/menu.h:
2889         Timed menu that reads output from a process while the window is hidden
2890
2891         * openbox/event.c, openbox/menu_render.c: whitespace
2892
2893 2003-05-09  Ben Jansens  <xor@zed.orodu.net>
2894
2895         * configure.ac: nice merge
2896
2897 2003-05-09  woodblock  <woodblock@zed>
2898
2899         * configure.ac, openbox/event.c, openbox/menu.c, openbox/menu.h, openbox/menu_render.c, openbox/plugin.c, openbox/plugin.h, openbox/timer.c:
2900         Menu uber patch
2901         Since we have no menu parser see menu_startup() to customize
2902
2903 2003-05-09  Ben Jansens  <xor@zed.orodu.net>
2904
2905         * openbox/client.c, openbox/client.h, openbox/event.c, openbox/focus.c:
2906         add a client_activate function, use it for net_wm_active mesgs and for focus cycling.
2907
2908         * openbox/focus.c: unshade windows when you cycle focus to them
2909
2910         * openbox/openbox.c, openbox/popup.c, openbox/popup.h, tools/Makefile.am:
2911         add shit that i made in the last week!
2912
2913         * HACKING, Makefile.am, configure.ac, data/rc3, m4/x11.m4, openbox/Makefile.am, openbox/client.c, openbox/client.h, openbox/config.c, openbox/config.h, openbox/event.c, openbox/extensions.c, openbox/extensions.h, openbox/focus.c, openbox/framerender.c, openbox/framerender.h, openbox/menu.c, openbox/moveresize.c, openbox/moveresize.h, openbox/openbox.c, openbox/parse.h, openbox/parse.l, openbox/parse.y, openbox/screen.c, openbox/screen.h, openbox/stacking.c, render/font.c, render/image.c, render/render.c, render/render.h, render/theme.c, render/theme.h:
2914         all my changes while i was offline.
2915         better alt-tabbing. better transient handling. i dont even know. lots of fucking cool shit so WATCH the FUCK OUT.
2916
2917 2003-04-28  Ben Jansens  <xor@zed.orodu.net>
2918
2919         * openbox/screen.c:
2920         move windows before calcing struts. watch for windows on DESKTOP_ALL when removeing a desktop
2921
2922 2003-04-27  Ben Jansens  <xor@zed.orodu.net>
2923
2924         * openbox/client.c, openbox/stacking.c:
2925         a more correct for the missing frame problem. don't restack windows when changing the window's layer while it is being managed.
2926
2927         * openbox/stacking.c:
2928         watch for windows without frames, they can be in the transient order before they get fully managed
2929
2930         * doc/themerc.txt: no longer pertinent
2931
2932         * render/image.c, render/image.h, render/render.c:
2933         fix window icon rendering, was using incorrect size.
2934
2935         * render/color.h: its G_BYTE_ORDER not G_ENDIAN.
2936
2937 2003-04-26  Ben Jansens  <xor@zed.orodu.net>
2938
2939         * openbox/moveresize.c:
2940         show the move coords for where the window will actually be
2941
2942 2003-04-25  Ben Jansens  <xor@zed.orodu.net>
2943
2944         * openbox/client.c: only focus on startup if focus_new is true
2945
2946         * openbox/Makefile.am, openbox/client.c, openbox/openbox.c, openbox/screen.c, openbox/startup.c, openbox/startup.h:
2947         restore the desktop and focused window on restarts if possible
2948
2949         * openbox/action.c, openbox/client.c, openbox/client.h, openbox/focus.c, openbox/focus.h:
2950         add helper functions for manipulating the focus_order list.
2951         move the focus popup into focus.c, out of action.c
2952         allow cycling to iconic windows, which are kept at the bottom of the focus_order lists.
2953
2954         * openbox/event.c, openbox/focus.c, openbox/frame.c, openbox/frame.h, openbox/framerender.c:
2955         let the frame hold a focus state so that it can lie.
2956         dont focus windows while cycling, just highlight them as if they are focused
2957
2958         * openbox/framerender.c: icons are not at +1 anymore
2959
2960 2003-04-24  Ben Jansens  <xor@zed.orodu.net>
2961
2962         * openbox/client.c:
2963         some more checks for transients looping on eachother when they are transients of a group
2964
2965 2003-04-22  Ben Jansens  <xor@zed.orodu.net>
2966
2967         * openbox/prop.c:
2968         client side shit ISNT 32 bits on 64 bit platforms, its 64 bits. fuck X so hard.
2969
2970 2003-04-22  woodblock  <woodblock@zed>
2971
2972         * CHANGELOG: NLS update
2973
2974 2003-04-22  Ben Jansens  <xor@zed.orodu.net>
2975
2976         * openbox/client.c:
2977         even better checks for when to focus new windows. focus dialogs when they are the only member of their group
2978
2979 2003-04-22  woodblock  <woodblock@zed>
2980
2981         * openbox/menu.c, openbox/menu.h, openbox/menu_render.c:
2982         More menu changes to facilitate plugins.
2983
2984         * openbox/Makefile.am, openbox/menu.c, openbox/menu.h, openbox/menu_render.c:
2985         Render menus only when they are invalid.
2986
2987 2003-04-21  Ben Jansens  <xor@zed.orodu.net>
2988
2989         * README.CVS: add automake
2990
2991         * data/rc3: focus on press onm the titlebar buttons
2992
2993         * openbox/client.c:
2994         yet more changes to choosing to focus windows when they mapp
2995
2996         * openbox/parse.h, openbox/parse.y:
2997         try avoid cicular includes with the bison shit
2998
2999 2003-04-20  woodblock  <woodblock@zed>
3000
3001         * CHANGELOG: tyop
3002
3003 2003-04-20  Ben Jansens  <xor@zed.orodu.net>
3004
3005         * openbox/frame.c, openbox/framerender.c:
3006         make the icon larger than the buttons by one pixel in each direction, this makes it as tall as the label and lets it fit more image in
3007
3008         * openbox/client.c: new focus-new rules
3009
3010 2003-04-20  woodblock  <woodblock@zed>
3011
3012         * CHANGELOG: Update log
3013
3014 2003-04-19  Ben Jansens  <xor@zed.orodu.net>
3015
3016         * openbox/client.c: i lied.. fuck @ those gnome dialogs
3017
3018         * openbox/client.c: lighten up a bit on the focus new windows criteria
3019
3020         * openbox/event.c: rm invalid comment
3021
3022         * openbox/event.c: only look for FocusOut events on the same window
3023
3024         * openbox/prop.c:
3025         convert STRING properties from "ISO-8859-1" instead of from the current locale, since this is what they apparently are, according to gdk.
3026
3027         * openbox/prop.c: check the string not the pointer to it
3028
3029 2003-04-18  Ben Jansens  <xor@zed.orodu.net>
3030
3031         * openbox/event.c: the mouse grab screws that up
3032
3033         * openbox/event.c: dispatch presses and releases during a move/resize
3034
3035         * openbox/event.c: kill the debug prints for now
3036
3037         * openbox/event.c: nm cant do it.. damn
3038
3039         * openbox/event.c:
3040         ignore another type of crossing event, caused when leaving gtk popup menus
3041
3042         * openbox/focus.c: just formatting
3043
3044         * openbox/event.c:
3045         yet MORE changes to how focusin/out's are handled. more edge case fixing, this time with focus fallback when unmapping a window in sloppy focus mode.
3046
3047         * openbox/client.c:
3048         adjust choosing to focus new windows, make it more strict.
3049         eat all Enter events when unmapping a window so focus fallback can be more smarter..
3050
3051         * openbox/screen.c: dont need to sync
3052
3053         * openbox/focus.c: check for client_normal before focusing
3054
3055         * openbox/focus.c:
3056         when unfocusing a window (e.g. unmanaging) try fallback to transient relations, if that fails, try group relations, then fallback to other window.
3057
3058         * openbox/focus.c:
3059         try focus other transients of the parent window when a transient falls back before focusing the parent
3060
3061         * openbox/moveresize.c: unset it AFTER using it...
3062
3063         * openbox/moveresize.c: unset the client when done moveresizing
3064
3065         * openbox/openbox.c:
3066         don't wait(), the glib function does that for us woot.
3067
3068         * openbox/client.c:
3069         more strict rules on what will be focused by the focusNew option in the rc3. only strictly NORMAL windows will be focused, not dialogs or anything else when they are mapped.
3070
3071         * openbox/focus.h: comment typo
3072
3073         * openbox/client.c, openbox/moveresize.c, openbox/moveresize.h:
3074         watch out when unmanaging a window, that it is not being move/resized
3075
3076 2003-04-17  Ben Jansens  <xor@zed.orodu.net>
3077
3078         * openbox/client.c:
3079         a) put transient windows on the same desktop as their parent
3080         b) if a window is attempted to be focused but it is not on the current desktop,
3081            then move it to the top of the focus order on its desktop
3082
3083         * openbox/screen.c:
3084         distribute focus when entering/leaving show-the-desktop mode
3085
3086         * openbox/event.c: remove debug print
3087
3088         * openbox/moveresize.c, openbox/openbox.c, openbox/openbox.h:
3089         add the left/right/top/bottom direction arrows and use them for resizing those ways
3090
3091         * openbox/event.c: dont ignore all Virtual pointer events
3092
3093         * openbox/action.c: 02:33 (@xor) omg yes
3094         02:33 (@xor) grid workspace cycling of d3th
3095
3096         * openbox/action.c: fix grip workspace cycling
3097
3098         * openbox/event.c, openbox/grab.c, openbox/grab.h, openbox/moveresize.c, openbox/moveresize.h:
3099         fix up support for moveresize. make keyboard grabs Async so that i can hit escape to cancel a moveresize process.
3100
3101         * openbox/openbox.c: do not shadow parameter pls
3102
3103         * openbox/moveresize.c: initialize start_x/y
3104
3105         * openbox/focus.c, openbox/moveresize.c, openbox/moveresize.h, openbox/openbox.c, openbox/openbox.h:
3106         add support for interactive/keyboard move/resize
3107
3108         * openbox/event.c, openbox/prop.c, openbox/prop.h, openbox/screen.c:
3109         add support for net_moveresize_window and net_wm_moveresize
3110
3111         * openbox/frame.c: use the new cursor defn's
3112
3113         * openbox/screen.c: use the new ptr cursor defn
3114
3115         * openbox/Makefile.am, openbox/action.c, openbox/action.h, openbox/event.c, openbox/moveresize.c, openbox/moveresize.h, openbox/prop.c, openbox/prop.h:
3116         move the move/resize functionality into moveresize.c, for use with the netwm atoms. use it from teh plugins. combine the two actions.
3117
3118         * openbox/framerender.c: put text centered in the popup dialog properly
3119
3120         * data/rc3: make alt-middle the default resize binding
3121
3122         * openbox/openbox.c, openbox/openbox.h:
3123         add more cursors for move/resizing, and use the arrows not the angle brackets
3124
3125         * openbox/action.c:
3126         grab pointer during cycling to remove focus screwups from focus-follows-mouse.
3127         grab during move/resize and assign a cursor while doing the move/resize too!
3128
3129         * openbox/event.c: ignore virtual crossing events..
3130
3131         * openbox/focus.c: that was dumb, it was metacity's fault
3132
3133         * openbox/focus.c: only cycle to visible windows
3134
3135 2003-04-16  Ben Jansens  <xor@zed.orodu.net>
3136
3137         * openbox/event.c: dont send menu events to plugins
3138
3139         * data/rc3: show the root menu on right click
3140
3141         * openbox/event.c, openbox/grab.c, openbox/grab.h, openbox/menu.c, openbox/menu.h:
3142         menus works on some level. add a built-in root menu
3143
3144         * openbox/client.c: code cleanup
3145
3146         * openbox/client.c: when flags are not set assume bette defaults
3147
3148         * openbox/event.c, openbox/focus.c, openbox/menu.c, openbox/menu.h, openbox/openbox.c, openbox/stacking.c, openbox/stacking.h:
3149         raise menus above clients.
3150         hilight menu entries as the cursor passes over them.
3151
3152         * openbox/menu.c, openbox/menu.h:
3153         save the window ids in a map for the menus
3154
3155         * openbox/client.c: only change the group info if the group flag is set
3156
3157         * openbox/client.c: only add transients if we are IN a group
3158
3159         * openbox/client.c: oops nm
3160
3161         * openbox/client.c: less ()s cleanup
3162
3163         * openbox/client.c:
3164         remove transients before removing ourlselves from teh group
3165
3166         * openbox/client.c:
3167         set the group to null when removeing ourselves from it
3168
3169 2003-04-15  Ben Jansens  <xor@zed.orodu.net>
3170
3171         * openbox/action.c: watch out for missing a name
3172
3173         * render/theme.c: make menu font smaller and !bold for now
3174
3175         * openbox/action.c, openbox/action.h, openbox/framerender.c, openbox/menu.c, openbox/menu.h, openbox/openbox.c:
3176         start of showing/rendering menus. woot!
3177
3178         * render/theme.c, render/theme.h: load menu style stuff
3179
3180         * render/render.c, render/render.h:
3181         make minsize take int*'s not a Size*
3182
3183         * openbox/client.c:
3184         remove transients of the group from teh window when it leaves the group
3185
3186         * openbox/client.c: add group transients when setting up the group
3187
3188         * openbox/client.c: bug in the search for transient_for's
3189
3190         * data/rc3: update the theme stuff
3191
3192 2003-04-15  manmower  <manmower@zed>
3193
3194         * render/gradient.c: PYRAMID PARTY PART 2!!!
3195
3196         * render/gradient.c, render/gradient.h: PYRAMID PARTY!!!
3197
3198 2003-04-15  Ben Jansens  <xor@zed.orodu.net>
3199
3200         * openbox/screen.c: remove debug print
3201
3202 2003-04-14  Ben Jansens  <xor@zed.orodu.net>
3203
3204         * openbox/client.c, openbox/prop.c, openbox/screen.c:
3205         fixes for handling char**s
3206
3207         * render/font.c: indenting oopsie
3208
3209         * openbox/prop.c:
3210         dont get a null at the end of the data, so use strndup
3211
3212         * openbox/screen.c: fix a seg from ignoreing PROP_GETSS failure
3213
3214         * openbox/screen.c: more fixes for working with char**s
3215
3216         * openbox/screen.c: nullify the ends of the char**
3217
3218         * openbox/client.c, openbox/prop.h, openbox/screen.c:
3219         remove casts from PROP defines. use proper vars and cast elsewhere if needed.
3220
3221         * render/font.c: text justification
3222
3223         * render/render.c:
3224         shrink the area that the textures are rendered into by the bevels/borders
3225
3226         * openbox/client.c, openbox/prop.c, openbox/prop.h, openbox/screen.c, openbox/screen.h, openbox/stacking.c:
3227         rip the prop code i wrote in cwmcc out and make it all 64bit friendly (i think!). stop using gulong for values from the xserver, using guint32 instead.
3228
3229         * openbox/menu.c, openbox/menu.h:
3230         these menus should not be removed, they are good and will be used.
3231
3232         * openbox/event.c: clean up this mess of crap a lot
3233
3234         * openbox/prop.c, openbox/prop.h:
3235         do not commit bad char* foo that breaks on !32 bit platforms
3236
3237 2003-04-14  woodblock  <woodblock@zed>
3238
3239         * openbox/menu.c, openbox/menu.h: *** empty log message ***
3240
3241 2003-04-14  Ben Jansens  <xor@zed.orodu.net>
3242
3243         * openbox/parse.l: allow _'s in identifiers
3244
3245         * openbox/stacking.c: raise and lower all transients along with parents
3246
3247         * openbox/client.c:
3248         apply layers to all transients. only raise once on the highest window who's layer changed after applying layers to them all
3249
3250 2003-04-13  Ben Jansens  <xor@zed.orodu.net>
3251
3252         * openbox/client.c: ifdef not ifndef
3253
3254         * openbox/stacking.c: keep all transient windows above their parents
3255
3256         * openbox/client.c: simple cleanups for the client_iconify function.
3257         also dont follow into other groups when searching up the transient_for tree
3258
3259         * openbox/client.c: rm the unused vars
3260
3261         * openbox/client.c: onyl focus 'normal' windows on map
3262
3263         * openbox/client.c:
3264         only keep fullscreen windows on top while they are focused
3265
3266         * openbox/client.c, openbox/client.h:
3267         make fullscreen decorations and functions be calculated by the setup_decor_and_functions func
3268
3269         * openbox/group.c: rm the group debug prints
3270
3271         * openbox/client.c: only print that when debuggin focus
3272
3273         * .cvsignore, openbox/.cvsignore, render/.cvsignore:
3274         ignore the remaining new shit from automaking everything again
3275
3276         * .cvsignore, INSTALL, Makefile.am, Makefile.in, bootstrap, configure.ac, data/.cvsignore, data/Makefile.am, openbox/.cvsignore, openbox/Makefile, openbox/Makefile.am, po/.cvsignore, render/.cvsignore, render/Makefile, render/Makefile.am, tests/Makefile, themes/.cvsignore, themes/Makefile.am:
3277         back to automake
3278
3279         * AUTHORS: shrimpx above miklos?
3280
3281         * openbox/event.c, openbox/frame.c, openbox/frame.h:
3282         pass the Client for frame_context cuz the client might be NULL
3283
3284         * themes/ebox: comment properly
3285
3286         * render/theme.c: load the font shadow stuff from the old ob2 shitz
3287
3288         * openbox/config.c, openbox/config.h, openbox/openbox.c:
3289         let specify theme in the rc3 file. rm the other old engine options
3290
3291         * Makefile.in: break on errors
3292
3293         * Makefile.in, openbox/.cvsignore, openbox/action.c, openbox/client.c, openbox/config.h, openbox/engine.c, openbox/engine.h, openbox/event.c, openbox/focus.c, openbox/frame.c, openbox/frame.h, openbox/framerender.c, openbox/framerender.h, openbox/openbox.c, openbox/parse.l, openbox/parse.y, openbox/screen.c, render/.cvsignore, render/font.h, render/mask.h, render/render.h, render/theme.c, render/theme.h:
3294         move the openbox engine into librender and the kernel. the theme is loaded and stored inside librender. the frame is decorated and managed inside the kernel.
3295
3296         * themes/ob20, themes/operation, themes/outcomes, themes/bbs, themes/bluebox, themes/cthulhain, themes/deep, themes/ebox, themes/fieron, themes/fieron2, themes/flux, themes/frobozz, themes/frobust, themes/mbdtex, themes/miklos, themes/nyz, themes/nyzclone, themes/paper, themes/purplehaaze, themes/shade, themes/steelblue, themes/steelblue2, themes/the_orange, themes/trisb, themes/twice, themes/warp-xp:
3297         move the themes
3298
3299         * render/render.c: allow freeing NULL appearances
3300
3301         * render/font.c: allow closing NULL fonts
3302
3303         * render/mask.c: allow freeing NULL pixmap masks
3304
3305         * render/color.c: dont fux self in color_free if the color is NULL
3306
3307 2003-04-12  Ben Jansens  <xor@zed.orodu.net>
3308
3309         * tests/fullscreen.c: set the right mask for the client msg!
3310
3311 2003-04-12  woodblock  <woodblock@zed>
3312
3313         * CHANGELOG: Fixed another damned focus bug. Pray.
3314
3315 2003-04-11  Ben Jansens  <xor@zed.orodu.net>
3316
3317         * data/rc3: add right click in client focuses
3318
3319         * openbox/client.c: make utility windows able to be resized
3320
3321         * Makefile.in: rm the main Makefile in a distclean
3322
3323 2003-04-10  Ben Jansens  <xor@zed.orodu.net>
3324
3325         * openbox/client.c:
3326         deiconify transient parents when a child is deiconified.
3327
3328         * openbox/client.h: no fuck that it was working fine
3329
3330         * openbox/client.h: make the TRAN_GROUP an unsigned long
3331
3332         * openbox/event.c: add MapRequest print
3333
3334         * openbox/client.c:
3335         some smarter rules for focusing new window when focus_new is not set
3336
3337 2003-04-09  Ben Jansens  <xor@zed.orodu.net>
3338
3339         * Makefile.in, render/.cvsignore: add libcwmcc and libobcl
3340
3341         * HACKING: describe the code subdirs
3342
3343         * openbox/action.c:
3344         dont show the focus popup when theres no target client
3345
3346 2003-04-08  Ben Jansens  <xor@zed.orodu.net>
3347
3348         * openbox/event.c: rm debug print
3349
3350         * tests/.cvsignore: add override
3351
3352         * tests/override.c: add a test that maps an override redirect window
3353
3354         * openbox/client.c, openbox/config.c, openbox/config.h, openbox/engine.c, openbox/engine.h, openbox/event.c, openbox/focus.c, openbox/focus.h, openbox/openbox.c, openbox/prop.c, openbox/screen.c:
3355         move config option loading for the kernel into config.c/h
3356         add options for the number of desktops and the names of the desktops
3357
3358         * data/rc3: add the desktops options
3359
3360         * data/rc3: better clickfocus friendliness
3361
3362         * openbox/client.c: check for focus before unfocusing
3363
3364         * openbox/client.c, openbox/event.c, openbox/focus.c, openbox/focus.h, openbox/screen.c:
3365         add more options for focus fallback, use an enum for all the types of fallbacks.
3366
3367         * openbox/focus.c: only cycle focus to normal windows
3368
3369         * data/rc3: make stacked cycling the default
3370
3371         * openbox/action.c: show a popup with the focus target while cycling
3372
3373         * openbox/focus.c, openbox/focus.h:
3374         fallback to transients' parents when possible.
3375         return the Client* which was focused from focus_cycle
3376
3377         * openbox/client.c: fallback focus while unmanaging the window
3378
3379 2003-04-07  Ben Jansens  <xor@zed.orodu.net>
3380
3381         * data/rc3: FocusRaise to be more clickfocus friendly too
3382
3383         * data/rc3, openbox/focus.c, openbox/focus.h:
3384         add focusLast and focusLastOnDesktop options in the [focus] section of the rc3. allows more customizaton of the focus model. default to click-focus style. add handling for focus cycling when nothing on the desktop is focused.
3385
3386         * openbox/event.c: ignore inferior enternotifies
3387         add anotehr focusdebug print
3388
3389         * openbox/client.c: check for new windows always being onscreen.
3390         rename the client pointer to self in teh manage unmanage functions for consistancy
3391
3392         * openbox/grab.c: rm debug prints
3393
3394 2003-04-07  woodblock  <woodblock@zed>
3395
3396         * configure.in: bump version string
3397
3398 2003-04-07  Ben Jansens  <xor@zed.orodu.net>
3399
3400         * HACKING: add comment about the two different area Rects
3401
3402         * HACKING: add new HACKING!
3403         warn about Client.transient_for
3404
3405         * openbox/client.h, openbox/stacking.c, openbox/client.c:
3406         support for transients of groups
3407
3408         * openbox/event.c: missed one
3409
3410         * openbox/event.c: put focus messages in ifdefs
3411
3412         * openbox/focus.c: remove debug print
3413
3414         * openbox/client.c, openbox/client.h, openbox/group.c, openbox/group.h, openbox/openbox.c:
3415         track window groups
3416         iconify all its transients when a window is iconified
3417
3418         * openbox/action.c, openbox/client.c, openbox/client.h, openbox/focus.c, openbox/focus.h:
3419         put focus_cycle into focus.c, use it there in the action. improved it as well to handle odd cases like modal windows. added functions to client.c which are needed by the focus cycling routine.
3420
3421         * openbox/grab.c: grab the other device in Sync for button/key grabs
3422
3423 2003-04-06  Ben Jansens  <xor@zed.orodu.net>
3424
3425         * render/render.c: ifndef NOT IFNDEF GAH
3426
3427         * openbox/action.c: dont toggle when no client was passed to teh action
3428
3429         * openbox/event.c: nm that, pointless...
3430
3431         * openbox/event.c:
3432         disable keyboard and mouse input while ob is starting or exiting
3433
3434 2003-04-06  manmower  <manmower@zed>
3435
3436         * render/color.c, render/render.c:
3437         Fix reduce color depth to not use original data
3438         (and break parentrel)
3439
3440 2003-04-06  Ben Jansens  <xor@zed.orodu.net>
3441
3442         * openbox/engine.c: print the error when the engine cant load
3443
3444         * render/render.c: add stdlib.h for exit()
3445
3446         * .cvsignore, configure.ac, install-sh:
3447         stop using build/ dir configure shits all over itself for other people
3448
3449         * m4/x11.m4, m4/openbox.m4:
3450         build fixes for finding Xlibs and for setting vars based on found Xlib info and Xinerama info
3451
3452         * configure.ac: more build system fixups
3453
3454         * .cvsignore, Makefile, Makefile.in, configure.ac, install-sh, m4/openbox.m4, render/.cvsignore:
3455         fixes for build system. add themes to the install process. use the build/ dir for configures trash dump
3456
3457         * openbox/engine.c: clean up the module if load() fails
3458
3459         * render/render.c, render/render.h:
3460         add function to give the minimum size of an appearance to fully render it's data
3461
3462         * openbox/action.c: add a coords popup for moving and resizing
3463
3464         * openbox/geom.h: add ()'s to the macros for more safety
3465
3466         * openbox/engine.c, openbox/engine.h:
3467         add the ability to render and size text labels for non-window-decorations
3468
3469 2003-04-06  woodblock  <woodblock@zed>
3470
3471         * bootstrap: Remove woodblock's local changes :P
3472
3473         * bootstrap: Moved to DESIGN/
3474
3475         * DESIGN/menu-thoughts.txt: some thoughts on menu stuff
3476
3477 2003-04-06  manmower  <manmower@zed>
3478
3479         * render/gradient.c: remove asserts pending sanity check.
3480
3481         * render/gradient.c:
3482         added flakey parentrel for solids and some mean spirited asserts
3483
3484         * render/color.c, render/color.h, render/render.c, render/render.h:
3485         added superb pseudo-color (8bpp) support
3486
3487 2003-04-06  Ben Jansens  <xor@zed.orodu.net>
3488
3489         * data/rc3, openbox/engine.c: make NLIMC the default titlebar layout
3490
3491 2003-04-06  woodblock  <woodblock@zed>
3492
3493         * configure.in: Huge i18n patch from Mike Fabian.
3494         We use utf8 everywhere now.
3495
3496 2003-04-05  Ben Jansens  <xor@zed.orodu.net>
3497
3498         * openbox/action.c, openbox/focus.c, openbox/focus.h:
3499         allow specifying that some focus events should be ignored for the focus order list
3500
3501         * openbox/action.c: stacked and linear cycling
3502
3503         * openbox/action.c, openbox/action.h: linear focus cycling of the gods
3504
3505         * openbox/client.c: typo
3506
3507         * openbox/client.c: put it back
3508
3509         * openbox/client.c: make unfocus really unfocus everything
3510
3511         * data/rc3: add linear cycling for now
3512
3513         * data/rc3: rm the [foo] section
3514
3515         * data/rc3: update teh rc3 to reflect how the code works now
3516
3517         * openbox/engine.c: dont default to NULL for the engine name
3518
3519         * openbox/engine.c: add engine options to the new rc file
3520
3521         * Makefile, openbox/focus.c, openbox/openbox.c, openbox/parse.c:
3522         add focus options to the new rc file
3523
3524         * openbox/action.c, openbox/action.h, openbox/client.c, openbox/client.h, openbox/config.c, openbox/config.h, openbox/engine.c, openbox/engine.h, openbox/event.c, openbox/focus.c, openbox/focus.h, openbox/openbox.c, openbox/parse.c, openbox/parse.h, openbox/parse.l, openbox/parse.y, openbox/screen.c:
3525         change how rc parsing will work. a=b will be parsed in any [section] and given to a separate parsing callback. no more general config infrastructure needed/
3526
3527         * render/render.h: make tint signed
3528
3529         * data/rc3: typo
3530
3531         * Makefile, data/rc3: add an rc3 which gets installed
3532
3533         * Makefile: make love
3534
3535         * openbox/frame.c, openbox/frame.h:
3536         use a context enum instead of quarks
3537
3538 2003-04-04  Ben Jansens  <xor@zed.orodu.net>
3539
3540         * openbox/openbox.c:
3541         reorder startup so that grabs are set up before parsing teh rc
3542
3543         * openbox/parse.c, openbox/parse.y:
3544         add the keyboard plugin into the build systems
3545         keyboard bindings are parsed from the rc file
3546
3547         * configure.ac: clean up output
3548
3549         * configure.ac: properly
3550
3551         * configure.ac: add -DENABLE_NLS
3552
3553         * openbox/parse.c: more using of new token struct
3554
3555         * openbox/parse.c: use new token structs. free token lists.
3556
3557         * openbox/parse.c, openbox/parse.h, openbox/parse.y:
3558         attempting to parse lists
3559
3560         * README.CVS: reflect the current requirements for building/using cvs
3561
3562 2003-04-03  Ben Jansens  <xor@zed.orodu.net>
3563
3564         * openbox/parse.l: allow '-' in identifiers
3565
3566         * Makefile: engine builds
3567
3568         * Makefile: build the resistance/placement plugins
3569
3570         * openbox/parse.h: use the values from the yacc parser
3571
3572         * Makefile, openbox/.cvsignore, openbox/parse.y:
3573         more build fixes, calling the other makefiles instead of including them
3574
3575         * openbox/parse.y: try accomidate more versions of bison
3576
3577         * .cvsignore, Makefile, openbox/.cvsignore: more build fixes
3578
3579         * configure.ac: use PACKAGE_FOO vars
3580
3581         * openbox/action.c: double break statements :) oops
3582
3583         * .cvsignore: add stuff that should be ignored at the toplevel
3584
3585         * bootstrap, install-sh: some build fixes
3586
3587         * .cvsignore, Makefile, Makefile.am, bootstrap, configure.ac, doc/.cvsignore, doc/Makefile.am, doc/doxygen/.cvsignore, doc/doxygen/Makefile.am, m4/openbox.m4, openbox/.cvsignore, openbox/Makefile, openbox/Makefile.am, openbox/openbox.c, openbox/parse.h, po/.cvsignore, render/.cvsignore, render/Makefile, render/Makefile.am, themes/.cvsignore, themes/Makefile.am:
3588         new build system without automake
3589
3590         * data/.cvsignore, data/Makefile.am, data/README, data/README.menu, data/README.style, data/menu.in:
3591         rm the data dir
3592
3593 2003-04-02  Ben Jansens  <xor@zed.orodu.net>
3594
3595         * openbox/Makefile.am: BLEF HATE DIE
3596
3597         * openbox/Makefile.am: bison doesnt use y.tab.*
3598
3599         * configure.ac: use bison not yacc
3600
3601         * openbox/Makefile.am, openbox/parse.y, openbox/parse.yacc:
3602         rename the parse.yacc to parse.y
3603
3604         * openbox/Makefile.am: make parse.h depend on y.tab.h
3605
3606         * openbox/parse.h, openbox/parse.l: this should seriously work
3607
3608         * openbox/parse.h, openbox/parse.yacc: undo that
3609
3610         * openbox/.cvsignore: ignore new lex/yacc gen'd files
3611
3612         * openbox/parse.h, openbox/parse.yacc:
3613         don't include the y.tab.h inside the yacc file
3614
3615         * openbox/Makefile.am: add y.tab.h to the headers so the yacc shit runs
3616
3617         * openbox/Makefile.am: rm the generated files on clean
3618
3619         * openbox/Makefile.am: wrong .h for the make rule
3620
3621         * openbox/Makefile.am: deps the lex h on the c
3622
3623         * openbox/Makefile.am, openbox/config.c, openbox/config.h, openbox/cparse.l, openbox/openbox.c, openbox/parse.c, openbox/parse.h, openbox/parse.l, openbox/parse.yacc:
3624         create a generic tokenizer/sectionizer for the config file. pass off the token to functions registered for each section to parse them further. some fixes for the engine irt font shadows, and fixed a bug with rendering the iconify button when it was not in the layout
3625
3626         * render/font.c: whitespace
3627
3628         * render/font.c: kill debug print
3629
3630         * render/font.c: use the tint properly for the shadow
3631
3632         * openbox/client.c: rm debug print
3633
3634         * render/render.c: will seg again
3635
3636         * render/render.c: stop copying. still segfault?
3637
3638         * render/render.c:
3639         find the right offset in the source data for parent relative
3640
3641 2003-04-02  manmower  <manmower@zed>
3642
3643         * render/render.c: let there be parentrelative
3644
3645 2003-04-01  Ben Jansens  <xor@zed.orodu.net>
3646
3647         * TODO: more updates to current status
3648
3649 2003-03-31  Ben Jansens  <xor@zed.orodu.net>
3650
3651         * openbox/client.c, openbox/client.h: add a shaded button
3652
3653         * TODO: add some current states
3654
3655         * openbox/client.c:
3656         only disallow shading when the function is not enabled, dont disallow unshading
3657
3658         * openbox/action.c: disallow resizing of windows which are shaded
3659
3660         * openbox/client.c:
3661         use the frame's position in the maximize function since they're converted to the client coords before getting to client_configure
3662
3663         * openbox/frame.c:
3664         was not using the pointer properly. leaving the value untouched
3665
3666         * openbox/client.c:
3667         set fullscreen and max positions properly for all gravities
3668
3669         * openbox/focus.c: rm a no-longer-valid comment
3670
3671         * openbox/event.c:
3672         yet more haxes to make focus events work the way i want. this is rough shit.
3673
3674 2003-03-30  Ben Jansens  <xor@zed.orodu.net>
3675
3676         * render/font.c: use 'sans' as the fallback font instead of 'fixed'
3677
3678         * openbox/event.c, openbox/focus.c:
3679         yet more focus fixings. RevertToPointerRoot could mess things up focusing a client and us ignoring the FocusIn of Pointer type. this is all handled now.
3680