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