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