]> icculus.org git repositories - mikachu/openbox.git/blob - ChangeLog
recent changes
[mikachu/openbox.git] / ChangeLog
1 2003-08-02  xor@zed.orodu.net  <xor@zed>
2
3         * 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:
4         add the om4ob theme
5
6         * ChangeLog: recent changes
7
8         * render/theme.c: oops indenting
9
10         * render/theme.c:
11         look in theme dirs first, use the theme as the path as a last attempt only!
12
13         * kernel/frame.c: the grips go below the titlebar buttons
14
15         * plugins/placement/placement.c: place transients better
16
17         * kernel/client.h, kernel/dock.c, kernel/dock.h, kernel/geom.h, kernel/prop.c, kernel/prop.h:
18         add partial struts tho they arent useful eyt
19
20         * data/rc3, kernel/frame.c, kernel/frame.h, kernel/framerender.c, render/theme.h:
21         invisible resizing areas/grips in the top corners of the window
22
23         * plugins/mouse/mouse.c:
24         omg i found the bug that would make the mouse cursor end up way far from where you started the drag.
25
26         * render/theme.c: use the toggled mask for shade and desk buttons
27
28         * kernel/client.c: that line ended up in teh if somehow...
29
30 2003-08-02  xor@zed.orodu.net  <xor@zed>
31
32         * theme.c: oops indenting
33
34         * theme.c:
35         look in theme dirs first, use the theme as the path as a last attempt only!
36
37         * theme.h:
38         invisible resizing areas/grips in the top corners of the window
39
40         * theme.c: use the toggled mask for shade and desk buttons
41
42 2003-08-01  xor@zed.orodu.net  <xor@zed>
43
44         * theme.c: look for masks only where the themerc was read from
45
46         * theme.c, theme.h: add pressed bitmaps. rename stick bitmaps to desk
47
48         * theme.c, theme.h: add toggled textuers for titlebar buttons
49
50         * gradient.c, render.c, render.h: move the dekstop file to data/
51
52         * theme.c, theme.h:
53         renamed the _t bitmaps, and added disabled and hover bitmaps
54
55         * theme.c: make themes inside a directory
56
57         * theme.c: add missing includes
58
59 2003-07-31  xor@zed.orodu.net  <xor@zed>
60
61         * font.c: missing a header
62
63 2003-07-31  xor@zed.orodu.net  <xor@zed>
64
65         * configure.ac: alpha3
66
67         * kernel/frame.c: fix a long-lurknig gravity bug
68
69         * tools/obconf/main.c: dont inlcude these headers they arent needed yet
70
71         * ChangeLog: recent changes
72
73         * kernel/openbox.c: oops missed one
74
75         * kernel/openbox.c, kernel/openbox.h: expose exit_with_error
76
77         * plugins/placement/history.c: kill warnings
78
79         * kernel/session.c: kill some output
80
81         * kernel/openbox.c:
82         only load the session from file if a file was provided
83
84         * render/font.c: missing a header
85
86         * README.CVS: remove shit i no longer use
87
88         * parser/parse.c: always return a string from parse_string
89
90         * kernel/client.c:
91         set the desktop hint if the desktop is changed by the session code
92
93         * kernel/client.c:
94         set the desktop hint after everything is read/setup even session stuff
95
96         * kernel/client.c:
97         add the window to the lists before setting the client list hint
98
99         * kernel/session.c:
100         declare functions that are needed when built without session support
101
102         * kernel/session.c:
103         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.
104
105         * kernel/client.c, kernel/client.h:
106         add a function to retrieve the sm_client_id value
107
108         * plugins/placement/history.c:
109         dont save/load history. its slow and its stupid.
110
111 2003-07-31  xor@zed.orodu.net  <xor@zed>
112
113         * kernel/openbox.c: oops missed one
114
115         * kernel/openbox.c, kernel/openbox.h: expose exit_with_error
116
117         * plugins/placement/history.c: kill warnings
118
119         * kernel/session.c: kill some output
120
121         * kernel/openbox.c:
122         only load the session from file if a file was provided
123
124         * render/font.c: missing a header
125
126         * README.CVS: remove shit i no longer use
127
128         * parser/parse.c: always return a string from parse_string
129
130         * kernel/client.c:
131         set the desktop hint if the desktop is changed by the session code
132
133         * kernel/client.c:
134         set the desktop hint after everything is read/setup even session stuff
135
136         * kernel/client.c:
137         add the window to the lists before setting the client list hint
138
139         * kernel/session.c:
140         declare functions that are needed when built without session support
141
142         * kernel/session.c:
143         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.
144
145         * kernel/client.c, kernel/client.h:
146         add a function to retrieve the sm_client_id value
147
148         * plugins/placement/history.c:
149         dont save/load history. its slow and its stupid.
150
151 2003-07-30  xor@zed.orodu.net  <xor@zed>
152
153         * kernel/client.c, kernel/prop.c, kernel/prop.h, kernel/session.c, kernel/session.h:
154         restore saved session data for applications
155
156         * plugins/placement/placement.c: center transients
157
158         * data/rc3, kernel/config.c, kernel/config.h, kernel/frame.c, render/theme.c, render/theme.h:
159         move the titlebar layout from the theme to the rc file
160
161         * kernel/client.c: attemp #3
162
163         * kernel/client.c: attempt #2 at better logical size values
164
165         * kernel/client.c: include the base size in the logical size
166
167         * ChangeLog: recent changes
168
169         * kernel/client.c: the size can be 0 when there is a base size
170
171         * kernel/client.c, kernel/client.h, kernel/event.c:
172         improved ICCCM compliance!
173           a) send ConfigureNotify back to the client as required by the ICCCM in all sitatuations.
174           b) send the corrent coords in the ConfigureNotify, including the border width
175           c) remove the WM_STATE property when unmanaging a window
176
177         * kernel/frame.c: code cleaning
178
179         * kernel/menu.c: only ignore wheel buttons
180
181 2003-07-30  xor@zed.orodu.net  <xor@zed>
182
183         * client.c: the size can be 0 when there is a base size
184
185         * client.c, client.h, event.c: improved ICCCM compliance!
186           a) send ConfigureNotify back to the client as required by the ICCCM in all sitatuations.
187           b) send the corrent coords in the ConfigureNotify, including the border width
188           c) remove the WM_STATE property when unmanaging a window
189
190         * frame.c: code cleaning
191
192         * menu.c: only ignore wheel buttons
193
194 2003-07-29  xor@zed.orodu.net  <xor@zed>
195
196         * event.c: i am the king of copy/paste errors
197
198 2003-07-29  woodblock  <woodblock@zed>
199
200         * event.c: more menu fixes.
201         I hate menus.
202
203         * menu.c: Clear current_menu when hiding menus.
204
205         * event.c, menu.c: Close menu properly on unbound keys.
206
207         * menu.c: Fix some keyboard control issues.
208
209 2003-07-28  xor@zed.orodu.net  <xor@zed>
210
211         * client.c, event.c:
212         base rudeness on if they have a strut even smarter!
213
214         * client.c, event.c: base rudeness on if they have a strut or not
215
216         * client.c, event.c, screen.c:
217         make the new placement restrictions not affect !normal windows like panels
218
219         * menu.c: use plugin_open_reopen not plugin_open_full
220
221         * event.c, frame.c, frame.h, framerender.c:
222         hover theme elements for window titlebar buttons
223
224         * client.c, client.h, event.c, screen.c:
225         make those apps stay/map on screen!! fuck stupid apps. thats right im talking to you mozilla and you too java.
226
227         * event.c: make things compile again. hover does not work yet.
228
229         * client.c: use the macro
230
231         * client.c, event.c:
232         keep apps from moving/maping their titlebar underneath left/top panels
233
234         * session.c: set teh clone comamnd
235
236         * session.c:
237         use char not a long, since we're telling the SM that its 1 byte lone
238
239         * session.c: save the commands on startup
240
241         * session.c: use the path properly for the session file
242
243         * session.c: use teh save file not the session id
244
245 2003-07-28  woodblock  <woodblock@zed>
246
247         * menu.c: demand load plugins from the menu
248
249         * event.c, menu.c: Menu stuff.
250         Testing may begin.
251
252 2003-07-26  woodblock  <woodblock@zed>
253
254         * event.c: Close menu on click if outside the menu.
255         I think, haven't tested.
256
257         * menu.c: more fixes
258
259 2003-07-26  xor@zed.orodu.net  <xor@zed>
260
261         * stacking.c: dont stack groups together
262
263 2003-07-26  woodblock  <woodblock@zed>
264
265         * event.c, menu.c, menu.h: Some menu updates.
266         Don't talk to me about menus.
267
268 2003-07-26  xor@zed.orodu.net  <xor@zed>
269
270         * stacking.c: dont stack groups together
271
272 2003-07-26  woodblock  <woodblock@zed>
273
274         * event.c, menu.c, menu.h: Some menu updates.
275         Don't talk to me about menus.
276
277 2003-07-25  xor@zed.orodu.net  <xor@zed>
278
279         * client.c, client.h:
280         add client_search_transient which searches the tree from a client down for a client
281
282         * stacking.c: stacking fixes
283
284 2003-07-24  xor@zed.orodu.net  <xor@zed>
285
286         * openbox.c, openbox.h, session.c, session.h:
287         save and load the session save file, though its data is not used yet!
288
289 2003-07-24  woodblock  <woodblock@zed>
290
291         * event.c, menu.c, menu.h, menu_render.c:
292         I had a commit message but my commit got stepped on so fuck it.
293         No one cares what I think anyway.
294         If the menu navigation isn't EXACTLY FUCKING RIGHT I WILL REMOVE IT
295         AND SOME OTHER POOR FUCK CAN PUT UP WITH ALL THE FUCKING BULLSHIT.
296
297 2003-07-24  xor@zed.orodu.net  <xor@zed>
298
299         * action.c, client.c, debug.h, dock.c, event.c, focus.c, menu.c, menu_render.c, openbox.c, screen.c:
300         use ob_debug for any debug printing and only display the output when its a debug build or when --debug is passed to it
301
302 2003-07-24  xor@zed.orodu.net  <xor@zed>
303
304         * configure.ac:
305         dont display the build type at the end its already in the output
306
307         * configure.ac, kernel/action.c, kernel/client.c, kernel/debug.h, kernel/dock.c, kernel/event.c, kernel/focus.c, kernel/menu.c, kernel/menu_render.c, kernel/openbox.c, kernel/screen.c, parser/parse.c, plugins/keyboard/keyboard.c, plugins/keyboard/translate.c, plugins/menu/client_menu.c, plugins/placement/history.c, render/color.c, render/gradient.c, render/instance.c, render/theme.c, tools/obconf/main.c:
308         use ob_debug for any debug printing and only display the output when its a debug build or when --debug is passed to it
309
310         * render/gradient.c:
311         draw the bevel stuff in the pixel data buffer so parent-relative stuff can use it.
312
313         * render/render.c: space
314
315 2003-07-23  xor@zed.orodu.net  <xor@zed>
316
317         * render/render.c:
318         init the parent shit in the surface when making a copy
319
320         * Makefile.am: use rm -f
321
322         * plugins/menu/include_menu.c: declare vars at top
323
324         * plugins/menu/timed_menu.c:
325         i already fixed this once :) var declarations go first
326
327         * Makefile.am: include obconf_interface.h in the dist
328
329         * Makefile.am: remove headers that dont exist
330
331         * plugins/menu/.cvsignore: add the include menu plugin
332
333         * m4/Makefile.am: add the new m4s
334
335 2003-07-23  woodblock  <woodblock@zed>
336
337         * plugins/menu/timed_menu.c: Timed menu updates. Still needs work.
338
339         * plugins/menu/client_menu.c:
340         Better placement of the client window. Might need some tweaking.
341
342 2003-07-23  xor@zed.orodu.net  <xor@zed>
343
344         * kernel/menu.c: unhilite the entry for the submenu when it is closed
345
346         * configure.ac: alpha2
347
348         * DESIGN/themes.txt: add hover
349
350 2003-07-23  woodblock  <woodblock@zed>
351
352         * Makefile.am, plugins/menu/include_menu.c:
353         Added include_menu.c as an example of how one could write a plugin.
354
355         * kernel/config.c, kernel/menu.c, parser/parse.c, plugins/keyboard/keyboard.c, plugins/menu/fifo_menu.c, plugins/mouse/mouse.c, plugins/placement/history.c:
356         * Change xml parsing to pass the parent node, rather than the first
357         child.
358         * Add x,y co-ordinates on showmenu action so we can place menus on keypress.
359
360 2003-07-22  xor@zed.orodu.net  <xor@zed>
361
362         * kernel/event.c, kernel/openbox.c, kernel/openbox.h, kernel/screen.c:
363         add the --replace command line option, and support for the WM_Sn selection
364
365         * kernel/prop.c, kernel/prop.h: add the MANAGER atom.
366         allow prop_message to be used with a user-defined mask instead of only with the NetWM mask
367
368         * plugins/keyboard/keyboard.c:
369         set the x/y values in the moveresize struct for moveresize key actions
370
371         * kernel/client.c: stop shownig the desktop when a new window maps
372
373         * kernel/menu.c: add a func to find a menu entry from a submenu.
374         keep menu entries highlighted while they have their submenu open
375
376         * kernel/menu.h: add a func to find a menu entry from a submenu
377
378         * plugins/menu/fifo_menu.c: declare vars at the top of the block
379
380         * kernel/menu.c, render/theme.c, render/theme.h:
381         add a menuOverlap property to themes, and use it in the submenu placement
382
383         * configure.ac: update to new version of gettext
384
385         * m4/.cvsignore, po/.cvsignore: more stuff to ignore
386
387 2003-07-21  woodblock  <woodblock@zed>
388
389         * kernel/event.c, kernel/menu.c, kernel/menu.h:
390         Keyboard navigatable menus
391
392 2003-07-19  woodblock  <woodblock@zed>
393
394         * kernel/action.c, kernel/menu.c: Fix a couple memory leaks.
395
396         * plugins/menu/fifo_menu.c:
397         If there is a pid="true" attribute in the <menu plugin="fifo_menu">
398         tag, append .pid to the fifo files. This allows for more than one
399         openbox to be run by the same user and use fifo menus.
400
401 2003-07-17  woodblock  <woodblock@zed>
402
403         * kernel/menu.c, kernel/menu.h, kernel/plugin.c, kernel/plugin.h, plugins/menu/fifo_menu.c:
404         Menu parsing updates for plugins.
405
406         FIFO menus are the only plugin that takes advantage of this.
407         Example:
408         <menu id="root" label="Openbox 3">
409           <menu id="fonk" label="fonk" plugin="fifo_menu">
410           </menu>
411         </menu>
412
413         This creates a FIFO ~/.openbox/fifo_menu/fonk to which you can send
414         menus to. The menus sent to it must be like
415         <fifo>
416           <item>
417            etc...
418         </fifo>
419
420         I think. If my memory serves me right.
421
422         It is all hideous, but I just wanted to experiment and see if it was
423         possible.
424
425 2003-07-12  xor@zed.orodu.net  <xor@zed>
426
427         * render/theme.c: useless code move
428
429         * kernel/client.c: simple code cleanup
430
431 2003-07-11  xor@zed.orodu.net  <xor@zed>
432
433         * render/color.c, render/render.c:
434         removed the RrEndian so using LSBFirst always now. hopefully this works!
435
436         * kernel/client.c:
437         when a transient maps on another desktop, give it focus when it deserves it
438
439         * render/render.h: same default offsets for all endian machines
440
441         * DESIGN/themes.txt: some input from woobie and changed the menu stuff
442
443         * DESIGN/themes.txt: extra menu tag
444
445         * kernel/openbox.c: add --g-fatal-warnings
446
447         * kernel/dock.c:
448         fix a seggie i introduced, going too far in the dockapps list
449
450         * DESIGN/themes.txt: attempt #2
451
452         * DESIGN/themes.txt: oops extra menu_layout
453
454         * DESIGN/themes.txt: a full style defn..
455
456         * kernel/client.c: move to the desktop of the activated window
457
458 2003-07-10  xor@zed.orodu.net  <xor@zed>
459
460         * kernel/action.c, kernel/client.c, kernel/client.h, kernel/frame.c, kernel/frame.h, kernel/framerender.c, kernel/openbox.c, render/theme.c, render/theme.h, tests/.cvsignore, tests/noresize.c:
461         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.
462
463         when a window cant be resized, its handle is not removed but its grips are.
464
465         change allowing the user to disable individual decorations as that is overkill,
466         instead allow a toggle through the client.decorate boolean.
467
468         * tests/Makefile: readd the Makefile
469
470         * kernel/focus.c: simply startup/shutdown
471
472         * AUTHORS: add some more contributors
473
474         * kernel/openbox.c: sync is in unistd.h
475
476         * kernel/client.c, kernel/event.c, kernel/menu.c, kernel/menu.h, kernel/menu_render.c, kernel/window.c, kernel/window.h, plugins/menu/client_menu.c, plugins/menu/fifo_menu.c, plugins/menu/timed_menu.c:
477         prefix and capitalize ObMenu ObMenuEntry and ObMenuEntryRenderType
478         make the ObMenuEntryRenderType a standard enum instead bitflags
479
480         * kernel/focus.c, kernel/openbox.c, kernel/openbox.h, kernel/screen.c, kernel/screen.h:
481         move ob_pointer_pos to screen_pointer_pos
482
483         * kernel/client.c, kernel/dock.c, kernel/event.c, kernel/focus.c, kernel/frame.c, kernel/openbox.c, kernel/openbox.h, kernel/screen.c, kernel/stacking.c, plugins/placement/history.c, plugins/placement/placement.c:
484         make ob_state a function so it cant be changed outside of openbox.c
485
486         * kernel/client.c, kernel/dock.c, kernel/event.c, kernel/focus.c, kernel/frame.c, kernel/grab.c, kernel/menu.c, kernel/moveresize.c, kernel/openbox.c, kernel/openbox.h, kernel/popup.c, kernel/prop.c, kernel/screen.c, kernel/stacking.c, kernel/startup.c:
487         remove the ob_root var, its redundant of what Xlib already provides
488
489         * kernel/openbox.c, kernel/openbox.h: use gint
490
491         * kernel/openbox.c, kernel/openbox.h:
492         ob_remote has been killed, remove ob_sync from the public header, its only used internally
493
494         * kernel/openbox.c, kernel/openbox.h:
495         the --rc arg and rc_path var wasnt even being used so just rm it
496
497         * kernel/action.c, kernel/event.c, kernel/openbox.c, kernel/openbox.h:
498         make the ob_restart/shutdown stuff static vars and expose them only through functions ob_restart_other(), ob_restart() and ob_exit()
499
500         * kernel/stacking.c: remove useless include
501
502         * kernel/focus.c, kernel/focus.h, kernel/screen.c, kernel/screen.h, kernel/stacking.c, plugins/keyboard/keyboard.c:
503         replace the focus_backup with the screen_support_win, we dont need 2 offscreen windows.
504
505         * kernel/screen.c:
506         use the xerror stuff to trap errors instead of dupliacted the effort here
507
508         * kernel/dock.c, kernel/dock.h, kernel/screen.c, kernel/timer.c, kernel/timer.h, plugins/keyboard/keyboard.c, plugins/menu/timed_menu.c:
509         prefix the Timer->ObTimer and TimeoutHandler->ObTimeoutHandler shitz
510
511         * kernel/action.h, kernel/client.c, kernel/client.h, kernel/config.c, kernel/config.h, kernel/dispatch.c, kernel/dispatch.h, kernel/dock.c, kernel/event.c, kernel/extensions.h, kernel/framerender.c, kernel/framerender.h, kernel/menu.c, kernel/menu.h, kernel/menu_render.c, kernel/moveresize.c, kernel/popup.h, kernel/screen.h, kernel/stacking.c, kernel/stacking.h, kernel/window.c, kernel/window.h, plugins/keyboard/keyboard.c:
512         prefixing and capitalizing the StackLayer -> ObStackingLayer enum.
513         less includes in headers for less rebuilding on changes
514
515         * kernel/client.c, kernel/event.c, kernel/focus.c, kernel/focus.h, kernel/screen.c:
516         prefix and capitalize the ObFocusFallbackType enum
517
518         * kernel/config.c, kernel/config.h, kernel/dock.c:
519         use the ObOrientation enum instead of a horz bool for configuring the dock's orientation
520
521         * kernel/config.c, kernel/config.h, kernel/dock.c, kernel/dock.h, kernel/event.c, kernel/window.c, kernel/window.h:
522         prefixing for the dock. use ObDirection instead of dupliacting it in another enum for the dock's placement
523
524         * kernel/popup.c, kernel/popup.h:
525         prefixing for the Popup->ObPopup struct
526
527         * kernel/moveresize.h: dont need client.h in this header
528
529         * kernel/client.h, kernel/event.c, kernel/frame.c, kernel/frame.h, kernel/framerender.c, kernel/framerender.h, kernel/popup.c, plugins/mouse/mouse.c:
530         prefixing and capitalization for the Frame->ObFrame struct and the Context->ObFrameContext enum and its constants.
531
532         * kernel/client.h, kernel/group.c, kernel/group.h:
533         prefix Group to ObGroup
534
535         * kernel/client.c, kernel/client.h, kernel/focus.c, kernel/stacking.c:
536         prefix TRAN_GROUP to OB_TRAN_GROUP
537
538         * kernel/action.c, kernel/client.c, kernel/client.h, kernel/frame.h, kernel/screen.c:
539         prefix and capitalize some more constants/enums in client.h (Function -> ObFunctions and WindowType -> ObClientType)
540
541         * plugins/menu/client_menu.c, plugins/menu/fifo_menu.c, plugins/menu/timed_menu.c:
542         kill warnings
543
544         * kernel/action.c, kernel/action.h, kernel/client.c, kernel/client.h, kernel/dispatch.c, kernel/dispatch.h, kernel/event.c, kernel/focus.c, kernel/focus.h, kernel/frame.c, kernel/frame.h, kernel/framerender.c, kernel/group.c, kernel/group.h, kernel/menu.c, kernel/menu.h, kernel/moveresize.c, kernel/moveresize.h, kernel/popup.c, kernel/popup.h, kernel/screen.c, kernel/screen.h, kernel/stacking.c, kernel/window.c, kernel/window.h, plugins/keyboard/keyboard.c, plugins/mouse/mouse.c, plugins/placement/history.c, plugins/placement/history.h, plugins/placement/placement.c, plugins/resistance/resistance.c:
545         rename the Client struct to ObClient
546
547         * Makefile.am: add the new misc.h and mwm.h to the kernel sources
548
549         * kernel/client.c, kernel/client.h, kernel/mwm.h:
550         add a mwm.h for the mwm hint structure and flags.
551         use proper prefixing and capitalization for the new mwm stuff.
552
553         * kernel/action.c, kernel/action.h, kernel/client.c, kernel/client.h, kernel/dispatch.c, kernel/dispatch.h, kernel/dock.c, kernel/event.c, kernel/focus.c, kernel/frame.c, kernel/grab.c, kernel/grab.h, kernel/misc.h, kernel/moveresize.c, kernel/openbox.c, kernel/openbox.h, kernel/screen.c, kernel/screen.h, kernel/stacking.c, plugins/keyboard/keyboard.c, plugins/placement/history.c, plugins/placement/placement.c, plugins/resistance/resistance.c:
554         add misc.h with some standard enumerations with proper prefixing and capitalizations.
555
556         use the new enums throughout.
557
558         provide keycodes and cursors through ob_cursor and ob_keycode functions, which use the new misc.h enums for picking the cursor and keycode.
559
560         * kernel/client.c, kernel/client.h, kernel/event.c, kernel/extensions.c, kernel/focus.c, kernel/menu.c, kernel/moveresize.c, kernel/screen.c, kernel/screen.h, plugins/menu/client_menu.c, plugins/placement/placement.c, plugins/resistance/resistance.c:
561         rename 'xinerama' stuff to 'monitors' to be more generic and descriptive.
562
563         * kernel/stacking.c: speed up pick_group_windows too
564
565         * kernel/stacking.c: make pick_windows waaaay faster
566
567         * kernel/openbox.c:
568         remove the use of the BINARY define. kill a compiler warning.
569
570         * kernel/stacking.c: allow restacking of transients above one another
571
572         * kernel/focus.c:
573         put the transient's title before the parent's in the focus popup
574
575         * kernel/extensions.c, kernel/extensions.h:
576         remove the xinerama active boolean, just count the extension as not present if it is not active
577
578         * kernel/client.c, kernel/client.h: add client_search_top_transient.
579         keep transients all on the same desktop together. use client_search_top_transient where possible in client.c
580
581         * kernel/debug.c, kernel/debug.h:
582         add ob_debug for printing stuff only when debug is enabled
583
584         * plugins/mouse/mouseparse.c, plugins/mouse/mouseparse.h:
585         these havent been used for a long time.. ;) old parsing shit be gone
586
587         * 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:
588         remove rependancy on geom.h from the kernel, provide what is used in its own geom.h
589
590         * Makefile.am, configure.ac, data/.cvsignore, data/Makefile, data/Makefile.am, kernel/.cvsignore, kernel/Makefile, kernel/Makefile.am, parser/.cvsignore, parser/Makefile, parser/Makefile.am, plugins/.cvsignore, plugins/Makefile.am, plugins/keyboard/.cvsignore, plugins/keyboard/Makefile, plugins/keyboard/Makefile.am, plugins/menu/.cvsignore, plugins/menu/Makefile, plugins/menu/Makefile.am, plugins/mouse/.cvsignore, plugins/mouse/Makefile, plugins/mouse/Makefile.am, plugins/placement/.cvsignore, plugins/placement/Makefile, plugins/placement/Makefile.am, plugins/resistance/.cvsignore, plugins/resistance/Makefile, plugins/resistance/Makefile.am, render/.cvsignore, render/Makefile, render/Makefile.am, themes/.cvsignore, themes/Makefile, themes/Makefile.am, themes/ebox_data/.cvsignore, themes/ebox_data/Makefile.am, themes/fieron2_data/.cvsignore, themes/fieron2_data/Makefile.am, themes/fieron_data/.cvsignore, themes/fieron_data/Makefile.am, tools/Makefile.am, tools/obconf/Makefile.am:
591         update the build system, using a single Makefile.am for a sexyass non-recursive make. booyah!
592
593         * gettext.h, kernel/gettext.h:
594         move the gettext header out to the root source dir
595
596 2003-07-07  xor@zed.orodu.net  <xor@zed>
597
598         * render/font.c: include stdlib for exit()
599
600 2003-07-06  xor@zed.orodu.net  <xor@zed>
601
602         * bootstrap: add ACLOCAL_FLAGS to the aclocal call.
603
604 2003-07-05  xor@zed.orodu.net  <xor@zed>
605
606         * kernel/openbox.c: use --foo instead of -foo for cmd line arguments
607
608         * render/color.c, render/render.h:
609         try some better default offsets for big endian machines.
610         print what the conversion is so i can see what it should be if im wrong though
611
612         * render/color.c:
613         used RrColorShift when RrColorOffset was what we wanted
614
615         * configure.ac, kernel/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:
616         use the gdk-pixbuf-xlib library to render with
617
618         * configure.ac: coment the USE_LIBSN defined variable
619
620 2003-07-02  xor@zed.orodu.net  <xor@zed>
621
622         * kernel/stacking.c:
623         rename the raise and lower functions. raise is claimed by signal.h already
624
625 2003-06-30  xor@zed.orodu.net  <xor@zed>
626
627         * kernel/dock.c: set te strut smaller when autohide is on
628
629 2003-06-30  woodblock  <woodblock@zed>
630
631         * kernel/event.c:
632         Makes a simple click not so accidently annoying by making it not
633         execute a menu action if nothing is highlighted.
634
635 2003-06-30  xor@zed.orodu.net  <xor@zed>
636
637         * kernel/extensions.c:
638         messed up the indexes while finding the combined size of all xineerama heads
639
640         * kernel/extensions.c: oops, i want the max edges to find the full area
641
642         * CHANGELOG, ChangeLog: using a changelog generated off of CVS
643
644 2003-06-30  woodblock  <woodblock@zed>
645
646         * plugins/menu/Makefile.am:
647         Remove menu plugins because they are stupid and don't work.
648
649 2003-06-29  xor@zed.orodu.net  <xor@zed>
650
651         * kernel/prop.c:
652         the prop_get_strings_locale function looked for a utf8 typed property
653
654         * kernel/focus.c, kernel/openbox.c, kernel/stacking.c:
655         add some comments and asserts to make sure I don't ever add this bug again
656
657         * kernel/popup.c:
658         create the popup's window before adding it to the stacking list, so that it is stacked properly and doesnt wreck everything
659
660         * Makefile.am, configure.ac, data/Makefile.am, kernel/Makefile.am, parser/Makefile.am, plugins/Makefile.am, plugins/keyboard/Makefile.am, plugins/menu/Makefile.am, plugins/mouse/Makefile.am, plugins/placement/Makefile.am, plugins/resistance/Makefile.am, render/Makefile.am, themes/Makefile.am, themes/ebox_data/Makefile.am, themes/fieron2_data/Makefile.am, themes/fieron_data/Makefile.am, tools/obconf/Makefile.am:
661         prepare for alpha1 release.
662         make 'make dist' work.
663
664         * m4/.cvsignore, m4/Makefile.am:
665         add a makefile so i can put stuff into the make dist
666
667         * m4/python.m4: python support is gone
668
669         * po/POTFILES.in:
670         we dont really have any translatable stuff yet but this was pointing at old cpp shit
671
672         * plugins/placement/history.c:
673         use strcmp instead of collate, since collate is slower and we're only doing an == check
674
675         * plugins/keyboard/keyparse.c, plugins/keyboard/keyparse.h:
676         these are old and not used anymore
677
678         * render/gradient.c:
679         missed setting 'current' at the end of the pyramid gradient
680
681         * kernel/stacking.c:
682         waste of energy in stacking_add, and it even caused bugs. woops.
683
684 2003-06-29  xor@zed  <xor@zed>
685
686         * kernel/stacking.c:
687         waste of energy in stacking_add, and it even caused bugs. woops.
688
689 2003-06-29  woodblock  <woodblock@zed>
690
691         * plugins/menu/client_menu.c:
692         Update the send-to window only if the workspaces have changed.
693
694         * kernel/menu.c, kernel/menu_render.c:
695         Handle menu events a little better: don't bother updating a submenu on
696         mouseover if it is already open, and call update on menus, even if
697         they aren't marked as invalid.
698
699 2003-06-28  xor@zed  <xor@zed>
700
701         * kernel/openbox.c:
702         use fprintf not g_message in the signal handler. no mallocing allowed.
703
704         * render/font.c: remove debug print
705
706         * kernel/prop.c: set the values of the array at teh right indexes
707
708         * kernel/prop.c: fix memory bugs
709
710         * data/rc3: remove the switch to... menu
711
712         * render/font.c:
713         don't destroy font patterns, i think this is a double free
714
715         * kernel/stacking.c:
716         put group members above the window when lowering it
717
718         * kernel/stacking.c: set the stacking list when stacking changes
719
720         * themes/ebox_data/.cvsignore, themes/fieron2_data/.cvsignore, themes/fieron_data/.cvsignore:
721         ignore the generated makefiles
722
723         * themes/ebox_data/Makefile.am, themes/fieron2_data/Makefile.am, themes/fieron_data/Makefile.am:
724         add the makefiles for the themes' data dirs
725
726         * render/theme.h:
727         add the themes path to the struct. make the name never include a path
728
729         * configure.ac, themes/Makefile.am, themes/ebox_data/close.xbm, themes/ebox_data/iconify.xbm, themes/ebox_data/max.xbm, themes/fieron2_data/close.xbm, themes/fieron2_data/iconify.xbm, themes/fieron2_data/max.xbm, themes/fieron2_data/stick.xbm, themes/fieron_data/close.xbm, themes/fieron_data/iconify.xbm, themes/fieron_data/max.xbm, themes/fieron_data/stick.xbm:
730         adjust the themes with buttons to match how they are read now
731
732         * AUTHORS: simplify this shit
733
734         * render/theme.c: hardcode the button names for themes
735
736         * kernel/popup.c: dont need to raise after adding
737
738         * render/theme.c: rename the button_dir var to data_dir.. pointless :>
739
740         * plugins/resistance/resistance.c:
741         snap to all heads the window is present on
742
743 2003-06-27  xor@zed  <xor@zed>
744
745         * kernel/Makefile.am: build 'openbox' instead of 'openbox3'.
746         add the openbox.desktop file for gnome compat.
747
748         * kernel/screen.c: set "Openbox" as the name no "Openbox3"
749
750         * kernel/openbox.desktop:
751         add a .desktop file which gets installed for gnome
752
753         * kernel/.cvsignore: add the openbox binary
754
755         * kernel/openbox.c: add a call to g_set_prgname
756
757         * kernel/stacking.c:
758         stacking changes, its more like the old code without being shitty and with support for raising groups at a time.
759
760         * kernel/stacking.c: core when the list gets out of order
761
762         * kernel/client.c, kernel/client.h, kernel/dock.c, kernel/extensions.c, kernel/extensions.h, kernel/focus.c, kernel/geom.h, kernel/menu.c, kernel/menu.h, kernel/moveresize.c, kernel/screen.c, kernel/screen.h, plugins/menu/client_menu.c, plugins/placement/placement.c, plugins/resistance/resistance.c:
763         xinerama support
764
765         * data/rc3: root menu on right click
766
767         * kernel/event.c: 4 space indents
768
769 2003-06-26  xor@zed  <xor@zed>
770
771         * kernel/grab.c:
772         return true when ungrabbing so that it can ungrab them all on shutdown
773
774         * kernel/grab.c:
775         set ret to true when grabbing and we alerady have it grabbed
776
777         * render/font.c:
778         dont destroy the match pattern, it seems that Xft holds onto the pointer
779
780         * kernel/client.c:
781         check that extensions_vidmode is set before trying to use the vidmode functions
782
783         * plugins/keyboard/keyboard.c: if grab fails dont set grabbed_key
784
785         * kernel/grab.c, kernel/grab.h: return FALSE if a grab fails
786
787         * kernel/client.c:
788         set the desktop hint when the window already has a hint but its out of range
789
790         * kernel/event.c: clear the over item in the menu when executing shit
791
792         * kernel/stacking.h:
793         add NUM_STACKLAYER, fix some comments that dont apply
794
795         * kernel/menu.c: remove unused variable
796
797         * kernel/client.c:
798         remove/add instead of raising to put a window into a new layer
799
800         * kernel/stacking.c:
801         new stacking code that doesnt suck ass to look at, woot
802
803         * kernel/dock.c:
804         use the minsize to keep the stuff ni the dock off of the bevel edges etc
805
806         * render/theme.c: add comment
807
808         * render/font.c, render/font.h, render/render.c, render/render.h, render/theme.c, render/theme.h:
809         read fonts and titlebar layout from theme files
810
811 2003-06-25  xor@zed  <xor@zed>
812
813         * data/rc3: add right click on icon to open the client menu
814
815         * render/font.c: set teh X so it gets used right
816
817         * render/font.c:
818         keep a small space on the sides of windows between the edge and the text
819
820         * kernel/event.c: only render if there was an over existing
821
822         * kernel/event.c, kernel/menu.c, kernel/menu.h, kernel/menu_render.c:
823         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
824
825         * data/rc3: show the client meun on "press" on the icon
826
827         * plugins/menu/client_menu.c:
828         use the stock shownig method for the client menu for now, makes it pop up under the cursor so a click-release works like expected
829
830         * plugins/mouse/mouse.c:
831         use the alst button press for clicks instead of teh fisrt. it make sno diff to me really and this makes it work when you grab the pointer on the click, without leaving the mouse plugin in a weird state.
832
833         * kernel/grab.c: grab all motion events for pointer grabs
834
835 2003-06-24  xor@zed  <xor@zed>
836
837         * kernel/menu.c: position submenus correctly horizontally
838
839         * kernel/menu_render.c: menus were too short by a border width
840
841         * kernel/client.c:
842         check to make sure the window is on screen *after* positioning it
843
844         * render/gradient.c: do horz grads without any multipliaction
845
846         * render/gradient.c, render/render.h, render/test.c, render/theme.c:
847         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.
848
849         * render/gradient.c, render/test.c:
850         integer math for gradients. horz vert and diags and pipecross work so far.
851
852 2003-06-22  xor@zed  <xor@zed>
853
854         * kernel/menu.c, kernel/menu_render.c: add a simple menu parser.
855         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.
856
857         * kernel/openbox.c: reorder startup so menu goes before config parsing
858
859         * data/rc3: add a root menu
860
861 2003-06-21  xor@zed  <xor@zed>
862
863         * kernel/client.c, kernel/frame.c, kernel/frame.h:
864         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.
865
866         * kernel/client.c:
867         make client_reconfigure a non-user-type client_configure
868
869         * kernel/action.c:
870         strdup the exec path cuz it gets freed by the time we restart otherwise
871
872         * kernel/event.c: moveresize messages are not user-requests
873
874         * kernel/client.c: remove debug print
875
876         * kernel/client.c:
877         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.
878
879         * render/render.c:
880         always create the bg pixmap, X seems to not like it if i dont?
881
882         * kernel/openbox.c:
883         always use the session id from the session manager when setting the restart property
884
885         * kernel/openbox.c: add -sm-disable option
886
887         * kernel/openbox.c:
888         only show -sm-client-id in the help when session management is build in
889
890         * kernel/openbox.c:
891         session management works, and it can resume with its old ID, so it works with gnome-session
892
893         * configure.ac, kernel/Makefile.am, kernel/event.c, kernel/openbox.c, m4/x11.m4:
894         make session management optional
895
896         * kernel/openbox.c:
897         set the required properties so that session managers see openbox
898
899         * render/font.c, render/theme.c:
900         don't exit in the render lib, rather return a NULL font/theme on failure
901
902         * kernel/event.c, kernel/openbox.c:
903         add libSM *client* support, so we should work with gnome-session now!
904
905         * render/instance.c, render/render.c: more namespacing with Rr*
906
907         * render/color.c: use the pseudo shit in the instance now
908
909         * render/gradient.c, render/gradient.h, render/render.c, render/color.c, render/color.h:
910         more namespacing with Rr*
911
912         * plugins/keyboard/translate.c, plugins/mouse/translate.c:
913         dont use .. in include paths
914
915         * render/image.c, render/image.h, render/render.c, kernel/client.c, kernel/screen.c, render/color.c, render/color.h, render/font.c, render/gradient.c, render/render.h, render/theme.h:
916         more namespacing with Rr*
917
918         * kernel/menu.h, kernel/menu.c: kill a warning
919
920         * kernel/openbox.c, render/font.c, render/font.h, render/render.c, render/render.h, render/theme.c, render/theme.h:
921         more namespacing to Rr*
922
923         * kernel/menu.c: fix a warning
924
925         * kernel/client.c, kernel/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:
926         rename pixel32/16 to RrPixel32/16
927
928         * render/color.c, render/color.h, render/render.h, render/theme.c, render/theme.h:
929         rename color_rgb to RrColor
930
931         * kernel/dock.c, kernel/frame.c, kernel/framerender.c, kernel/menu.c, kernel/menu_render.c, kernel/moveresize.c, kernel/openbox.c, kernel/openbox.h, kernel/popup.c, plugins/menu/client_menu.c, render/font.c, render/font.h, render/theme.c, render/theme.h:
932         put the render theme into a struct
933
934         * kernel/client.c, kernel/dock.c, kernel/dock.h, kernel/frame.c, kernel/frame.h, kernel/framerender.c, kernel/menu.c, kernel/menu.h, kernel/menu_render.c, kernel/moveresize.c, kernel/openbox.c, kernel/openbox.h, kernel/popup.c, kernel/screen.c:
935         fixed to accomodate the changes to the render/ API.
936
937 2003-06-20  xor@zed  <xor@zed>
938
939         * 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:
940         this is going to break the kernel/ building.
941
942         lots of modifications to the render API, prefixing everything, making proper
943         names for everything. the structures are not hidden/opaque yet, but the naming scheme of the public API works much better now.
944
945         * render/font.c: oops typo
946
947         * render/font.c:
948         take the bevel width into account for the width available
949
950         * plugins/menu/client_menu.c: position the client menu right
951
952         * kernel/dock.c, kernel/frame.c, kernel/framerender.c, kernel/menu_render.c, kernel/popup.c, plugins/menu/client_menu.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:
953         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.
954
955         * AUTHORS: miklos does themes like mad
956
957         * render/gradient.c:
958         slight optimizations, and make the last 4 gradients work properly
959
960         * render/font.c:
961         center text vertically. use the font's height because all that space is needed for some charcters
962
963         * kernel/frame.c, kernel/framerender.c, kernel/menu_render.c, kernel/popup.c, kernel/screen.c, render/gradient.c, render/render.c, render/render.h, render/test.c, render/theme.c:
964         remove non-planar surfaces
965
966 2003-06-19  xor@zed  <xor@zed>
967
968         * configure.ac, m4/gl.m4: remove --enable-gl
969
970         * kernel/client.c:
971         fix for how base-size is used to comply with the icccm
972
973 2003-06-18  xor@zed  <xor@zed>
974
975         * kernel/framerender.c: copy the frame's surface from the prototype
976
977 2003-06-17  xor@zed  <xor@zed>
978
979         * bootstrap: export the WANT_AUTOMAKE var before running acloacl
980
981 2003-06-17  manmower  <manmower@zed>
982
983         * kernel/client.c: wake up old icon grabbing code
984
985         * render/color.c: remove unneeded/uncompiled junk
986
987 2003-06-09  manmower  <manmower@zed>
988
989         * kernel/client.c: try swapping bytes on textures
990
991         * kernel/client.c: | != &
992
993         * kernel/client.c: fix? color on icons
994
995         * kernel/client.c: remove bogus byte permutations in icon code
996
997 2003-06-08  xor@zed  <xor@zed>
998
999         * kernel/focus.c:
1000         remove an extra useless call to focus_set_client(NULL)
1001
1002         * kernel/client.c: describe the complicated if a bit :)
1003
1004         * kernel/client.c: more checks for when to do an XResizeWindow
1005
1006         * kernel/client.c:
1007         send the configure notify for resizes too, just to be a little more safe
1008
1009         * kernel/client.c:
1010         onlt send configurenotify if the client actually moved, to work around emacs, hopefully :)
1011
1012         * kernel/client.c:
1013         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.
1014
1015         * kernel/client.c: from icccm:
1016         If a base size is not provided, the minimum size is to be used in its place and vice versa.
1017
1018         Added support for this.
1019
1020         * kernel/frame.c: missing another bwidth
1021
1022         * kernel/frame.c: position titlebars better, was missing a bwidth
1023
1024         * kernel/client.c: i was backwards
1025
1026         * kernel/event.c: this cnofigure is FINAL!
1027
1028         * kernel/client.c:
1029         don't resize the client itself while doing a resize if its not final when config_opaque_resize is not on
1030
1031 2003-06-04  xor@zed  <xor@zed>
1032
1033         * kernel/client.c:
1034         better VIDMODE support, handle the cases where the functions fail
1035
1036         * kernel/client.c:
1037         size fullscreen applications to the resolution with the VIDMODE extension
1038
1039         * kernel/client.c, kernel/client.h, kernel/screen.c:
1040         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.
1041
1042         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.
1043         call client_reconfigure when uniconifying a window, so that fullscreen windows are put at the point of the view port.
1044
1045         * data/rc3, plugins/mouse/mouse.c, plugins/mouse/mouse.h, plugins/mouse/translate.c:
1046         remove that fancy new leftHanded option, it should be done via xmodmap instead
1047
1048         * data/rc3, plugins/mouse/mouse.c, plugins/mouse/mouse.h, plugins/mouse/translate.c:
1049         add a leftHanded option for mouse bindings, reverses the left/right keywords
1050
1051         * kernel/grab.c, kernel/grab.h:
1052         make key grabbing per window instead of always root
1053
1054         * plugins/keyboard/keyboard.c:
1055         grab bindings on each client's frame (and the focus_backup) instead of on the root window
1056
1057         * kernel/focus.c: allow cycling to iconic windows
1058
1059         * kernel/client.c:
1060         use client_can_focus from client_focus to always get the same result
1061
1062         * kernel/client.c, kernel/client.h, kernel/focus.c:
1063         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
1064
1065         * kernel/focus.c:
1066         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
1067
1068         * kernel/focus.c:
1069         dont try change focus while looping thru the focus list
1070
1071         * kernel/client.c, kernel/client.h, kernel/focus.c:
1072         allow focus_fallback to query if a client can be focused without changing the focus order on it
1073
1074         * plugins/keyboard/keyboard.c:
1075         grab the keybaord before cycling focus for reduced latency
1076
1077 2003-06-03  xor@zed  <xor@zed>
1078
1079         * kernel/event.c, kernel/frame.c, kernel/frame.h, kernel/framerender.c, kernel/popup.c:
1080         modifications to keep up with libobrender2
1081
1082         * kernel/popup.c: use theme stuff for the gfx/font
1083
1084         * kernel/frame.c: layout fixes
1085
1086         * kernel/frame.c: position the grips
1087
1088         * kernel/framerender.c: fix some theme colors/display
1089
1090         * kernel/Makefile.am, kernel/client.c, kernel/client.h, kernel/dock.c, kernel/dock.h, kernel/event.c, kernel/frame.c, kernel/frame.h, kernel/framerender.c, kernel/menu.c, kernel/menu.h, kernel/menu_render.c, kernel/moveresize.c, kernel/openbox.c, kernel/openbox.h, kernel/popup.c, kernel/screen.c, kernel/window.c, m4/gl.m4, plugins/menu/client_menu.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:
1091         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.
1092
1093         * kernel/stacking.c: remove debug print
1094
1095         * render/color.c:
1096         more unique error for unhandles image bit depths, remove debug prints
1097
1098         * render/color.c: handle increase_depth on 1bpp images
1099
1100         * kernel/client.c:
1101         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.
1102
1103         * kernel/client.c: rm g_messages.. ones that segfault.. :>
1104
1105 2003-06-02  xor@zed  <xor@zed>
1106
1107         * kernel/client.c: also dont increment the nicons if the w*h is 0
1108
1109         * kernel/client.c: watch out for 0x0 icons, and skip them
1110
1111         * kernel/menu_render.c, kernel/popup.c:
1112         create some temporary fonts to use for rendering text
1113
1114         * kernel/frame.c, kernel/menu_render.c, kernel/popup.c:
1115         set colors for text
1116
1117         * kernel/frame.c, kernel/popup.c:
1118         adjust for some api extensions in render2
1119
1120         * bootstrap: add env var to get automake 1.7
1121
1122 2003-06-01  xor@zed  <xor@zed>
1123
1124         * COPYING, COPYING.FDL, COPYING.GPL, COPYING.LGPL, Makefile.am, README, configure.ac, kernel/Makefile.am, kernel/client.c, kernel/client.h, kernel/dock.c, kernel/dock.h, kernel/event.c, kernel/frame.c, kernel/frame.h, kernel/framerender.c, kernel/menu.c, kernel/menu.h, kernel/menu_render.c, kernel/moveresize.c, kernel/openbox.c, kernel/openbox.h, kernel/popup.c, kernel/screen.c, kernel/window.c, kernel/window.h, m4/gl.m4, plugins/menu/client_menu.c, 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:
1125         Merging in th gl2 branch. Adding a --enable-gl option to the configure script, which defaults off.
1126
1127 2003-05-30  manmower  <manmower@zed>
1128
1129         * kernel/frame.c: adjust title bar text
1130
1131 2003-05-30  xor@zed  <xor@zed>
1132
1133         * kernel/client.c:
1134         adjust what gets raised on map a bit, a little less selective.
1135
1136 2003-05-30  manmower  <manmower@zed>
1137
1138         * kernel/frame.c: add some test cases for the font crap
1139
1140 2003-05-29  xor@zed  <xor@zed>
1141
1142         * m4/openbox.m4: better alpha/beta check :)
1143
1144         * m4/openbox.m4: look for 'alpha' and 'beta' releases also
1145
1146         * kernel/stacking.c:
1147         only add non-nonintrusively when both windows share a stacking layer
1148
1149         * data/rc3: raise on client clicks
1150
1151 2003-05-28  xor@zed  <xor@zed>
1152
1153         * COPYING: remove the generic COPYING
1154
1155         * COPYING.FDL, COPYING.GPL, COPYING.LGPL: New file.
1156
1157         * COPYING.FDL, COPYING.GPL, COPYING.LGPL, README:
1158         specify different licenses for different directories
1159
1160         * kernel/action.c, kernel/action.h:
1161         rm the 'focusraise' action, it is redundant.
1162
1163         * kernel/frame.c: use the new shape API from the render libs
1164
1165         * kernel/event.c:
1166         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
1167
1168         * kernel/frame.c:
1169         no button mask on the plate, and some cleanups with redundant if's
1170
1171 2003-05-28  manmower  <manmower@zed>
1172
1173         * kernel/frame.c: slightly improved theme
1174
1175 2003-05-28  xor@zed  <xor@zed>
1176
1177         * kernel/popup.c: proper centering of the text in popups without icons
1178
1179 2003-05-27  manmower  <manmower@zed>
1180
1181         * kernel/frame.c, kernel/frame.h: fixed the flicker in shape
1182         (we use a shapewindow now.  it rules, I rule, fuck X, blah blah MOOOOOOO)
1183
1184 2003-05-27  xor@zed  <xor@zed>
1185
1186         * kernel/frame.c: and typod
1187
1188         * kernel/frame.c, kernel/frame.h:
1189         some cleanups, got rid of the border shit
1190
1191         * kernel/event.c: toss out expose events to render
1192
1193         * kernel/popup.c: no more seg
1194
1195         * kernel/frame.c, kernel/frame.h: some cleanups
1196
1197 2003-05-27  manmower  <manmower@zed>
1198
1199         * kernel/frame.c: free decor when removing frame
1200
1201         * kernel/frame.c: HOW DO YOU LIKE MY SEXY NEW DECOR?!?
1202
1203         * kernel/frame.c: I get my events on decor again
1204         and probably ruined exposure for some weird case. bwa ha ha
1205
1206         * kernel/frame.c, kernel/frame.h: how about some UGLY decor!
1207
1208 2003-05-27  xor@zed  <xor@zed>
1209
1210         * kernel/popup.c: paints are now recursive
1211
1212 2003-05-27  manmower  <manmower@zed>
1213
1214         * kernel/frame.h: surface pointer please
1215
1216 2003-05-27  xor@zed  <xor@zed>
1217
1218         * kernel/popup.c: proper layout
1219
1220         * kernel/popup.c: i suck so much
1221
1222         * kernel/event.c, kernel/menu.c, kernel/popup.c: DRAWS!!
1223
1224 2003-05-27  manmower  <manmower@zed>
1225
1226         * kernel/frame.c, kernel/frame.h: added shape support for decor
1227
1228 2003-05-27  xor@zed  <xor@zed>
1229
1230         * kernel/popup.c: dont try use an icon when where isnt one
1231
1232         * kernel/client.c, kernel/client.h, kernel/dock.c, kernel/dock.h, kernel/frame.c, kernel/frame.h, kernel/framerender.c, kernel/menu.c, kernel/menu.h, kernel/menu_render.c, kernel/moveresize.c, kernel/openbox.c, kernel/openbox.h, kernel/popup.c, kernel/screen.c, kernel/window.c, plugins/menu/client_menu.c:
1233         port to the new render stuff.. but this isnt complte since we don't have themes yet.
1234
1235         * 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:
1236         removing the old render stuffs
1237
1238 2003-05-27  manmower  <manmower@zed>
1239
1240         * kernel/frame.c, kernel/frame.h: added % based decoration sizes
1241
1242         * kernel/frame.c, kernel/frame.h: fixed right decor anchors properly
1243
1244         * kernel/frame.c: fix right anchor point offsets
1245
1246         * kernel/frame.c: position windows for all anchor types
1247
1248         * kernel/frame.c: all decor anchors supported
1249
1250         * kernel/event.c, kernel/frame.c:
1251         change event.c to use a frame pointer instead of client pointer in framedecor
1252         frame.c now supports more decor anchors
1253
1254         yay for 1 to many commit logs
1255
1256 2003-05-26  xor@zed  <xor@zed>
1257
1258         * kernel/Makefile.am: link render version 2
1259
1260 2003-05-26  manmower  <manmower@zed>
1261
1262         * kernel/frame.c, kernel/frame.h:
1263         frame pointer in framedecor instead of client pointer
1264
1265 2003-05-26  xor@zed  <xor@zed>
1266
1267         * kernel/event.c, kernel/window.c: add case for Window_Decoration
1268
1269 2003-05-26  manmower  <manmower@zed>
1270
1271         * kernel/frame.c, kernel/frame.h: client pointer in framedecor
1272
1273         * kernel/frame.c: crap
1274
1275         * kernel/frame.c, kernel/frame.h:
1276         I can now map arbitrarily sized invalid space above my windows!
1277         I suck.
1278
1279         * kernel/frame.c:
1280         we now have no decor at all, but are otherwise functional
1281
1282 2003-05-26  xor@zed  <xor@zed>
1283
1284         * kernel/client.c:
1285         use frame->visible, not the desktop number, other states exist too, like show_desktop
1286
1287         * plugins/menu/client_menu.c, kernel/dock.c, kernel/frame.c, kernel/frame.h, kernel/framerender.c, kernel/menu.c, kernel/popup.c, kernel/screen.c, kernel/window.h:
1288         merge in the changes made in the gl branch
1289
1290         * Makefile.am, configure.ac:
1291         create the glft library. it will be using freetype and fontconfig to render fonts in GL.
1292         flesh out render2 a bit more.. actually just in comments
1293
1294         * Makefile.am, configure.ac:
1295         add a new render2 lib, which has a proper API and uses only OpenGL to render.
1296
1297         * render/render.c: remove GL from the old render lib for now
1298
1299         * configure.ac, m4/gl.m4:
1300         gl support in configure, fontconfig instead of xft
1301
1302 2003-05-26  manmower  <manmower@zed>
1303
1304         * kernel/frame.c: add back some frame adjust stuff
1305
1306         * kernel/frame.c, kernel/frame.h, kernel/framerender.c, kernel/window.h, plugins/menu/client_menu.c:
1307         complete destruction of all current frame functionality.
1308         you're welcome.
1309
1310 2003-05-25  manmower  <manmower@zed>
1311
1312         * render/gradient.c, render/mask.c, render/render.c, render/render.h, render/test.c, render/theme.c, render/theme.h, kernel/dock.c, kernel/frame.c, kernel/framerender.c, kernel/menu.c, kernel/popup.c, kernel/screen.c, render/color.c, render/color.h:
1313         everything compiles.  everything is broken.
1314
1315         rendertest works, yay.
1316
1317         * render/render.c: now it even links.
1318
1319         * render/font.c, render/font.h, render/gradient.c, render/gradient.h, render/render.c, render/render.h:
1320         once again it compiles.
1321
1322         no, it does not work
1323
1324         much has been removed.
1325
1326 2003-05-25  xor@zed  <xor@zed>
1327
1328         * configure.ac, m4/gl.m4:
1329         right branch. no more xft. fontconfig. gl. woot.
1330
1331         * configure.ac, m4/gl.m4: omg wrong branch!
1332
1333         * configure.ac, m4/gl.m4: always gl. fontconfig instead of xft.
1334
1335 2003-05-25  manmower  <manmower@zed>
1336
1337         * render/gradient.c: gl.h shouldn't be required when not enabling gl
1338
1339 2003-05-25  xor@zed  <xor@zed>
1340
1341         * README.CVS: add the glade/gtk deps for debian
1342
1343 2003-05-25  manmower  <manmower@zed>
1344
1345         * render/gradient.c, render/test.c: all grads done
1346
1347         * render/gradient.c, render/test.c: pipecross
1348
1349         * render/gradient.c, render/test.c: rectangle and diagonal grads yay
1350
1351         gl > *
1352
1353 2003-05-25  xor@zed  <xor@zed>
1354
1355         * data/rc3: Shade not Shaded
1356
1357         * README.CVS: add debian package list
1358
1359         * README.CVS: automake 1.7
1360
1361         * README.CVS: mention glib, xml, gtk and glade
1362
1363         * configure.ac:
1364         make autoconf 2.54 required. makes automake1.6 get used on some systems
1365
1366 2003-05-25  manmower  <manmower@zed>
1367
1368         * render/gradient.c, render/gradient.h, render/render.c, render/render.h, render/test.c:
1369         gl is starting.  it's gonna get really ugly really fast, folks
1370
1371 2003-05-24  xor@zed  <xor@zed>
1372
1373         * Makefile.am, configure.ac, kernel/Makefile.am, kernel/action.c, kernel/action.h, kernel/config.c, kernel/focus.c, kernel/openbox.c, kernel/parse.c, kernel/parse.h, kernel/plugin.c, parser/.cvsignore, parser/Makefile.am, parser/parse.c, parser/parse.h, plugins/Makefile.am, plugins/interface.h, plugins/keyboard/keyboard.c, plugins/menu/Makefile.am, plugins/mouse/mouse.c, plugins/obconf_interface.h, plugins/placement/history.c, plugins/placement/placement.c, plugins/resistance.c, plugins/resistance/.cvsignore, plugins/resistance/Makefile.am, plugins/resistance/resistance.c, plugins/resistance/resistance.glade, plugins/resistance/resistance.gladep, plugins/resistance/resistance.h, plugins/resistance/resistance_config.c, tools/.cvsignore, tools/Makefile.am, tools/obconf/.cvsignore, tools/obconf/Makefile.am, tools/obconf/about.c, tools/obconf/main.c, tools/obconf/obconf.glade, tools/obconf/obconf.gladep, tools/obconf/obconf.h, tools/obconf/plugins.c, tools/obconf/plugins.h:
1374         this is a big one! im putting stats in here just cuz!
1375          59 files changed, 1691 insertions(+), 607 deletions(-)
1376         Adding the beginings of ObConf. Adding a resistance-config plugin for ObConf.
1377         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)
1378
1379         * kernel/action.c: convert shit from utf8 to filename before execing it
1380
1381         * configure.ac, data/rc3, kernel/Makefile.am, kernel/config.c, kernel/openbox.c, kernel/parse.c, kernel/parse.h, kernel/parse.l, kernel/parse.y, plugins/Makefile.am, plugins/keyboard/Makefile.am, plugins/keyboard/keyboard.c, plugins/mouse/Makefile.am, plugins/mouse/mouse.c, plugins/placement/Makefile.am, plugins/placement/history.c, plugins/placement/history.h, plugins/placement/placement.c, plugins/resistance.c:
1382         ECKS EM ELL
1383
1384         * plugins/menu/client_menu.c:
1385         let the client menu open below the top of the window, just limit it at the titlebar
1386
1387         * kernel/action.c, kernel/action.h: add actions for showing the desktop
1388
1389         * kernel/action.c, kernel/action.h: soem changes to desktop actions.
1390         instead of having *wrap actions, just default to having wrap on, and let it be optionally placed into the rc to disable it.
1391         instead of next/prev desktop, just have actions for desktop to the right/left/up/down. this applies to sendtodesktop actions too.
1392
1393         * kernel/focus.c: add a DEBUG_FOCUS print
1394
1395         * kernel/event.c:
1396         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.
1397
1398         * kernel/client.c: use the user friendly desktop number
1399
1400         * kernel/focus.c: clarify comment
1401
1402 2003-05-23  xor@zed  <xor@zed>
1403
1404         * kernel/event.c:
1405         dont refocus the focused window, that just causes so many problems (with alt-tab :)
1406
1407         * kernel/prop.c: validate utf8 strings before using them
1408
1409 2003-05-23  woodblock  <woodblock@zed>
1410
1411         * plugins/menu/fifo_menu.c: Fixed missing includes
1412
1413 2003-05-23  xor@zed  <xor@zed>
1414
1415         * configure.ac, kernel/Makefile.am, m4/gl.m4, plugins/Makefile.am, plugins/keyboard/Makefile.am, plugins/mouse/Makefile.am, plugins/placement/Makefile.am, render/Makefile.am:
1416         add --enable-gl support, and put the flags/libs in the appropriate makefiles
1417
1418         * kernel/focus.c: remove a todo item that seems to be.. done!
1419
1420         * kernel/focus.c:
1421         missed a case of using the stacking list and assuming that its all clients still. fixed that assumption now.
1422
1423         * kernel/event.c:
1424         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.
1425
1426         * plugins/keyboard/keyboard.c:
1427         had some code inside the action for loop that didnt belong in there
1428
1429 2003-05-23  woodblock  <woodblock@zed>
1430
1431         * plugins/menu/client_menu.c: Add toggle decor action to client menu
1432
1433 2003-05-22  manmower  <manmower@zed>
1434
1435         * render/test.c: fix cut'n'paste bug
1436
1437 2003-05-22  xor@zed  <xor@zed>
1438
1439         * kernel/event.c: only button 1 can use menu items
1440
1441         * plugins/menu/client_menu.c: watch out for border widths
1442
1443 2003-05-22  manmower  <manmower@zed>
1444
1445         * render/render.c: removed a piece of code I suspect has never been run
1446         this is for XServers that report less than 8 bpp default visual and support
1447         8bpp or higher visuals
1448
1449         hopefully nothing is really that stupid.  we'll see.
1450
1451         * render/render.h, render/render.c:
1452         keep XVisualInfo around in preparation for opengl stuff
1453
1454 2003-05-22  xor@zed  <xor@zed>
1455
1456         * plugins/keyboard/keyboard.c: only grab C-g while in a chain
1457
1458         * plugins/menu/.cvsignore: add the client_menu stuff
1459
1460         * plugins/keyboard/keyboard.c:
1461         async key grabs to avoid race conditions with the sync stuff. there are still possible rases (yay X) but they will be much harder to hit, i expect noone will ever hit them more than once/often enuogh to realise.
1462
1463         * configure.ac:
1464         remove shit for my own makefiles that i dont need no more
1465
1466         * kernel/event.c: a missing break!
1467
1468 2003-05-22  woodblock  <woodblock@zed>
1469
1470         * kernel/menu.c, plugins/menu/client_menu.c: layers submenu on client
1471
1472 2003-05-22  xor@zed  <xor@zed>
1473
1474         * kernel/action.c, kernel/action.h, kernel/client.c, kernel/client.h:
1475         add actions for changing client layers to abov/below/normal
1476
1477         * kernel/client.c: typo
1478
1479         * kernel/plugin.c: load the client_menu by default for nowc
1480
1481 2003-05-21  woodblock  <woodblock@zed>
1482
1483         * data/rc3, kernel/client.c, kernel/event.c, kernel/menu.c, kernel/menu.h, plugins/menu/Makefile.am, plugins/menu/client_menu.c:
1484         Client menus
1485         Add "client_menu" to pluginrc to use.
1486
1487 2003-05-21  xor@zed  <xor@zed>
1488
1489         * render/font.c: optimize it a bit
1490
1491         * render/font.c:
1492         pass the number of bytes, not characters to the xft draw functions
1493
1494         * kernel/action.c, kernel/action.h: add 'movetoedge' actions
1495
1496         * kernel/screen.c: add xerror.h
1497
1498         * kernel/screen.c:
1499         Openbox3 in the WM name, FUCK OFF XINE, YA YOU HEARD ME.
1500
1501         * render/gradient.c: allocate the border_color's gc
1502
1503 2003-05-20  xor@zed  <xor@zed>
1504
1505         * render/color.c, render/render.c:
1506         put the devation back how it used to be, it aws definately no better..
1507
1508 2003-05-20  manmower  <manmower@zed>
1509
1510         * render/gradient.c:
1511         of by one error in pyramid, rectangle, and crosspipe
1512
1513 2003-05-20  xor@zed  <xor@zed>
1514
1515         * render/gradient.c: remove debug prints
1516
1517         * render/gradient.c: reindent the file....
1518         but while i'm at it:
1519           - add support for bevels/borders on solid textures.
1520           - reverse the colors in the rectangle gradient, the pipecross and pyramid
1521             ones may need to be reversed as well.
1522
1523         * render/render.c, render/render.h: remove the elliptic gradient type.
1524         add bevel light/dark colors for solid textures with bevels
1525
1526         * render/theme.c:
1527         use the rectangle gradient when the theme asks for elipse
1528
1529         * m4/openbox.m4: argh put it back right!*(
1530
1531         * m4/openbox.m4: fuck it, put it back
1532
1533         * m4/openbox.m4: smarter default debug value :)
1534
1535         * m4/openbox.m4: default debug off (for non-cvs builds!)
1536
1537         * kernel/screen.c:
1538         ignore errors when playing with application defined colormaps
1539
1540 2003-05-19  xor@zed  <xor@zed>
1541
1542         * kernel/dock.c: get the size for all the apps before positioning them
1543
1544         * kernel/dock.c:
1545         set teh dock sizes before the app uses it for positioning
1546
1547         * kernel/dock.c: center dock apps
1548
1549         * plugins/menu/.cvsignore: add fifo_menu shit
1550
1551         * kernel/action.c: use the resize increment when resizing relative
1552
1553         * kernel/action.c, kernel/action.h, kernel/client.c, kernel/client.h:
1554         2 in 1 again..
1555         a) directional focus actions
1556         b) action system changes i.e. use structs/arrays for convertings strings to actions instead of gross if-else chains
1557
1558 2003-05-18  woodblock  <woodblock@zed>
1559
1560         * kernel/menu.c, plugins/menu/Makefile.am, plugins/menu/fifo_menu.c, plugins/menu/fifo_menu.h:
1561         Added a fifo_menu plugin
1562
1563 2003-05-18  manmower  <manmower@zed>
1564
1565         * render/gradient.c, render/test.c: PipeCross
1566
1567         * render/gradient.c: there's the rect grad.  now stop bugging me :(
1568
1569         * render/gradient.c: is that a rectangle grad?  damned if I know
1570
1571 2003-05-18  xor@zed  <xor@zed>
1572
1573         * kernel/client.c, kernel/client.h, render/color.c, render/color.h, render/image.c, render/render.c, render/render.h:
1574         make icons use pixel32 data, and image_draw takes pixel32 data.
1575         client.c gets pixmap icons as a backup to netwm ones, and they are converted into pixel32 data.
1576
1577         * kernel/focus.c: include grab.h
1578
1579 2003-05-18  manmower  <manmower@zed>
1580
1581         * render/test.c: whatever, it's a junk file.
1582
1583         * render/gradient.c: change badly named offsets
1584         add stubs for rectangle and pipecross
1585
1586         * render/image.c: rename poorly named offsets
1587
1588         * render/gradient.h: add stubs for pipecross and rectangle
1589
1590         * render/color.h: fix poor naming of default offset
1591
1592         * render/color.c: fix poor naming of the default offset
1593
1594 2003-05-18  woodblock  <woodblock@zed>
1595
1596         * kernel/client.c:
1597         this is actually xor :) - fixing the focus search function to not return NULL if no valid group members exist to be a transient for
1598
1599 2003-05-18  xor@zed  <xor@zed>
1600
1601         * kernel/stacking.c:
1602         proper check to see if something was raised, the it==NULL would cause it to always return, incorrectly.
1603
1604         * kernel/client.c, kernel/client.h, kernel/event.c, kernel/stacking.c, render/render.c, render/render.h:
1605         2 in 1 deal :\
1606
1607         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).
1608
1609         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.
1610
1611 2003-05-18  woodblock  <woodblock@zed>
1612
1613         * HACKING: Indentation stuff
1614
1615 2003-05-18  xor@zed  <xor@zed>
1616
1617         * configure.ac: actually optional now.
1618
1619         * configure.ac: make LIBSN optional
1620
1621         * kernel/focus.c:
1622         grab the mouse during focus cycling. this removes the bug of focusing following the mouse when the popup disappears and fuck up your cycling.
1623
1624         * render/Makefile.am: need the libsn flags
1625
1626         * plugins/Makefile.am, plugins/keyboard/Makefile.am, plugins/menu/Makefile.am, plugins/mouse/Makefile.am, plugins/placement/Makefile.am:
1627         needs the libsn flags to use openbox.h now
1628
1629 2003-05-18  woodblock  <woodblock@zed>
1630
1631         * plugins/menu/timed_menu.c: Clean up on destroy.
1632
1633 2003-05-18  xor@zed  <xor@zed>
1634
1635         * configure.ac, kernel/Makefile.am, kernel/event.c, kernel/openbox.c, kernel/openbox.h, kernel/screen.c:
1636         add (optional) support for showing a busy cursor via startup notification
1637
1638 2003-05-18  woodblock  <woodblock@zed>
1639
1640         * plugins/menu/timed_menu.c: Added stat() based timed menu update.
1641         Needs parser before it is useful.
1642
1643 2003-05-17  xor@zed  <xor@zed>
1644
1645         * kernel/event.c, plugins/mouse/mouse.c:
1646         disallow drag events on title buttons.
1647         dont redraw title button when the wheel buttons are used on them.
1648
1649 2003-05-16  xor@zed  <xor@zed>
1650
1651         * kernel/client.c: print the class not the name
1652
1653         * kernel/prop.c: get all the strings!
1654
1655         * kernel/client.c, kernel/dock.c, kernel/dock.h:
1656         save the dock's class/name for future evil purposes!
1657         also print names of windows being managed/unmanaged
1658
1659         * data/rc3: discourage floating a bit, capitalize better.
1660
1661         * kernel/dock.c: FUCK dock is not an array anymore!
1662
1663         * kernel/dock.c, kernel/dock.h, kernel/screen.c:
1664         give the dock a strut and use it
1665
1666 2003-05-16  woodblock  <woodblock@zed>
1667
1668         * plugins/menu/timed_menu.c: Fixed child wait.
1669
1670 2003-05-16  xor@zed  <xor@zed>
1671
1672         * kernel/event.c: remove debug prints
1673
1674         * kernel/dock.c, kernel/dock.h, kernel/event.c:
1675         dockapps are ObWindows now.
1676         set the type when creating new dockapps.
1677
1678         * plugins/menu/timed_menu.c: add stdio.h
1679
1680         * data/rc3, kernel/Makefile.am, kernel/client.c, kernel/client.h, kernel/config.c, kernel/config.h, kernel/dock.c, kernel/dock.h, kernel/event.c, kernel/frame.c, kernel/menu.c, kernel/menu.h, kernel/openbox.c, kernel/screen.c, kernel/slit.c, kernel/slit.h, kernel/window.c, kernel/window.h:
1681         rename "Slit" to "Dock".
1682         add config options to the rc3 for the dock.
1683         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).
1684
1685         * kernel/client.c, kernel/menu.c, kernel/moveresize.c, kernel/popup.c, kernel/slit.c, kernel/stacking.c, kernel/stacking.h:
1686         add anotehr stacking_add function.
1687         make stacking_add take care of raising also.
1688         make new windows that dont get focus also not raise above the focused window.
1689
1690         * kernel/event.c: movnig shit around
1691
1692 2003-05-14  xor@zed  <xor@zed>
1693
1694         * kernel/menu.c: watch out for not loading the timed_menu plugin
1695
1696         * kernel/client.c: pass teh correct values for config notify events
1697
1698 2003-05-14  woodblock  <woodblock@zed>
1699
1700         * kernel/event.c, kernel/event.h, kernel/menu.c, plugins/menu/timed_menu.c:
1701         Added a menu to read from a pipe.
1702         File descriptors added to the event loop.
1703
1704 2003-05-12  woodblock  <woodblock@zed>
1705
1706         * kernel/event.c, kernel/event.h, kernel/menu.c, plugins/menu/timed_menu.c:
1707         woodblock's failed attempt at making pipes work
1708
1709 2003-05-11  xor@zed  <xor@zed>
1710
1711         * plugins/resistance.c: watch out for stacking_list
1712
1713         * data/rc3, kernel/config.c, kernel/config.h, kernel/moveresize.c:
1714         add opaque move/resize to the rc3
1715
1716         * kernel/stacking.c:
1717         was using the frame window in the stacking list hint
1718
1719         * kernel/event.c, kernel/menu.c, kernel/moveresize.c, kernel/popup.c, kernel/stacking.c, kernel/window.c, kernel/window.h:
1720         add internal popups n shit to the stacking list.
1721         some cleanups for the stacking order hint.
1722         add non-opaque move/resize. cant toggle it yet.
1723
1724         * kernel/menu.c: rm comment for shit i fixed
1725
1726         * TODO: updated... it sucks tho anyways
1727
1728         * kernel/screen.c:
1729         not everything in the stacking_list is a client anymore
1730
1731         * kernel/event.c, kernel/menu.c:
1732         Menus put themselves into the stacking list.
1733         Clicking on the menu (but not on an entry) will raise it.
1734
1735         * kernel/Makefile.am, kernel/action.c, kernel/client.c, kernel/client.h, kernel/config.h, kernel/event.c, kernel/focus.c, kernel/menu.c, kernel/menu.h, kernel/openbox.c, kernel/slit.c, kernel/slit.h, kernel/stacking.c, kernel/stacking.h, kernel/window.c, kernel/window.h, plugins/resistance.c:
1736         Clients Menus and Slits are all 'ObWindow's now.
1737         Stacking is done with ObWindows.
1738         Slits add themselves to the stacking order, as do clients of course.
1739         Added some macros for adding/removing to the stacking order.
1740
1741         * kernel/slit.c:
1742         garb press events so they dont break bindings... X sucks
1743
1744         * kernel/slit.c:
1745         grab button events on the slit so they dont go through to root
1746
1747         * kernel/client.c, kernel/slit.c, kernel/slit.h:
1748         use the size of the icon window for slit apps, not the client window
1749
1750         * plugins/keyboard/tree.c, plugins/menu/timed_menu.h: cleanups
1751
1752         * kernel/event.c, kernel/grab.c, kernel/grab.h, kernel/slit.c, kernel/slit.h, plugins/mouse/mouse.c:
1753         can drag slit-apps around in the slit
1754
1755 2003-05-10  xor@zed  <xor@zed>
1756
1757         * kernel/event.c, kernel/slit.c, kernel/slit.h, kernel/timer.h:
1758         add autohiding to the slit
1759
1760         * kernel/event.c, kernel/slit.c, kernel/slit.h:
1761         some slit fixes, support resizing slitapps
1762
1763         * Makefile.am, configure.ac: rm the tools dir
1764
1765         * tools/Makefile.am: rm this garbage...
1766
1767         * kernel/Makefile.am, kernel/client.c, kernel/event.c, kernel/frame.c, kernel/openbox.c, kernel/screen.c, kernel/slit.c, kernel/slit.h:
1768         add a slit to the kernel
1769
1770         * plugins/menu/.cvsignore: ignore the build shit
1771
1772         * doc/.cvsignore: add the sgml dir
1773
1774         * kernel/menu.c: make the client menu not have a title
1775
1776         * kernel/event.c:
1777         be more careful about ignoring focusin/out event pairs
1778
1779 2003-05-10  woodblock  <woodblock@zed>
1780
1781         * plugins/Makefile.am: tyop
1782
1783         * kernel/menu.c, plugins/menu/timed_menu.c:
1784         Turn off timed_menu by default
1785
1786         * kernel/menu.c, kernel/menu.h, plugins/menu/timed_menu.c:
1787         Timed menu that reads output from a process while the window is hidden
1788
1789         * kernel/event.c, kernel/menu_render.c: whitespace
1790
1791 2003-05-09  woodblock  <woodblock@zed>
1792
1793         * plugins/menu/Makefile.am, plugins/menu/Makefile.in: fixor
1794
1795 2003-05-09  xor@zed  <xor@zed>
1796
1797         * configure.ac: nice merge
1798
1799 2003-05-09  woodblock  <woodblock@zed>
1800
1801         * configure.ac, kernel/event.c, kernel/menu.c, kernel/menu.h, kernel/menu_render.c, kernel/plugin.c, kernel/plugin.h, kernel/timer.c, plugins/Makefile.am, plugins/menu/Makefile.in, plugins/menu/timed_menu.c, plugins/menu/timed_menu.h:
1802         Menu uber patch
1803         Since we have no menu parser see menu_startup() to customize
1804
1805 2003-05-09  xor@zed  <xor@zed>
1806
1807         * kernel/client.c, kernel/client.h, kernel/event.c, kernel/focus.c:
1808         add a client_activate function, use it for net_wm_active mesgs and for focus cycling.
1809
1810         * kernel/focus.c: unshade windows when you cycle focus to them
1811
1812         * kernel/openbox.c, kernel/popup.c, kernel/popup.h, tools/Makefile.am:
1813         add shit that i made in the last week!
1814
1815         * HACKING, Makefile.am, configure.ac, data/rc3, kernel/Makefile.am, kernel/client.c, kernel/client.h, kernel/config.c, kernel/config.h, kernel/event.c, kernel/extensions.c, kernel/extensions.h, kernel/focus.c, kernel/framerender.c, kernel/framerender.h, kernel/menu.c, kernel/moveresize.c, kernel/moveresize.h, kernel/openbox.c, kernel/parse.h, kernel/parse.l, kernel/parse.y, kernel/screen.c, kernel/screen.h, kernel/stacking.c, m4/x11.m4, plugins/keyboard/keyboard.c, plugins/keyboard/tree.c, plugins/keyboard/tree.h, plugins/mouse/mouse.c, plugins/mouse/mouse.h, render/font.c, render/image.c, render/render.c, render/render.h, render/theme.c, render/theme.h:
1816         all my changes while i was offline.
1817         better alt-tabbing. better transient handling. i dont even know. lots of fucking cool shit so WATCH the FUCK OUT.
1818
1819 2003-04-28  xor@zed  <xor@zed>
1820
1821         * kernel/screen.c:
1822         move windows before calcing struts. watch for windows on DESKTOP_ALL when removeing a desktop
1823
1824 2003-04-27  xor@zed  <xor@zed>
1825
1826         * kernel/client.c, kernel/stacking.c:
1827         a more correct for the missing frame problem. don't restack windows when changing the window's layer while it is being managed.
1828
1829         * kernel/stacking.c:
1830         watch for windows without frames, they can be in the transient order before they get fully managed
1831
1832         * doc/themerc.txt: no longer pertinent
1833
1834         * render/image.c, render/image.h, render/render.c:
1835         fix window icon rendering, was using incorrect size.
1836
1837         * render/color.h: its G_BYTE_ORDER not G_ENDIAN.
1838
1839 2003-04-26  xor@zed  <xor@zed>
1840
1841         * kernel/moveresize.c:
1842         show the move coords for where the window will actually be
1843
1844 2003-04-25  xor@zed  <xor@zed>
1845
1846         * kernel/client.c: only focus on startup if focus_new is true
1847
1848         * kernel/Makefile.am, kernel/client.c, kernel/openbox.c, kernel/screen.c, kernel/startup.c, kernel/startup.h:
1849         restore the desktop and focused window on restarts if possible
1850
1851         * kernel/action.c, kernel/client.c, kernel/client.h, kernel/focus.c, kernel/focus.h:
1852         add helper functions for manipulating the focus_order list.
1853         move the focus popup into focus.c, out of action.c
1854         allow cycling to iconic windows, which are kept at the bottom of the focus_order lists.
1855
1856         * kernel/event.c, kernel/focus.c, kernel/frame.c, kernel/frame.h, kernel/framerender.c:
1857         let the frame hold a focus state so that it can lie.
1858         dont focus windows while cycling, just highlight them as if they are focused
1859
1860         * kernel/framerender.c: icons are not at +1 anymore
1861
1862 2003-04-24  xor@zed  <xor@zed>
1863
1864         * kernel/client.c:
1865         some more checks for transients looping on eachother when they are transients of a group
1866
1867 2003-04-22  xor@zed  <xor@zed>
1868
1869         * kernel/prop.c:
1870         client side shit ISNT 32 bits on 64 bit platforms, its 64 bits. fuck X so hard.
1871
1872 2003-04-22  woodblock  <woodblock@zed>
1873
1874         * CHANGELOG: NLS update
1875
1876 2003-04-22  xor@zed  <xor@zed>
1877
1878         * kernel/client.c:
1879         even better checks for when to focus new windows. focus dialogs when they are the only member of their group
1880
1881 2003-04-22  woodblock  <woodblock@zed>
1882
1883         * kernel/menu.c, kernel/menu.h, kernel/menu_render.c:
1884         More menu changes to facilitate plugins.
1885
1886         * kernel/Makefile.am, kernel/menu.c, kernel/menu.h, kernel/menu_render.c:
1887         Render menus only when they are invalid.
1888
1889 2003-04-21  xor@zed  <xor@zed>
1890
1891         * README.CVS: add automake
1892
1893         * data/rc3: focus on press onm the titlebar buttons
1894
1895         * kernel/client.c:
1896         yet more changes to choosing to focus windows when they mapp
1897
1898         * kernel/parse.h, kernel/parse.y:
1899         try avoid cicular includes with the bison shit
1900
1901 2003-04-20  woodblock  <woodblock@zed>
1902
1903         * CHANGELOG: tyop
1904
1905 2003-04-20  xor@zed  <xor@zed>
1906
1907         * kernel/frame.c, kernel/framerender.c:
1908         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
1909
1910         * kernel/client.c: new focus-new rules
1911
1912 2003-04-20  woodblock  <woodblock@zed>
1913
1914         * CHANGELOG: Update log
1915
1916 2003-04-19  xor@zed  <xor@zed>
1917
1918         * kernel/client.c: i lied.. fuck @ those gnome dialogs
1919
1920         * kernel/client.c: lighten up a bit on the focus new windows criteria
1921
1922         * kernel/event.c: rm invalid comment
1923
1924         * kernel/event.c: only look for FocusOut events on the same window
1925
1926         * kernel/prop.c:
1927         convert STRING properties from "ISO-8859-1" instead of from the current locale, since this is what they apparently are, according to gdk.
1928
1929         * kernel/prop.c: check the string not the pointer to it
1930
1931 2003-04-18  xor@zed  <xor@zed>
1932
1933         * kernel/event.c: the mouse grab screws that up
1934
1935         * kernel/event.c: dispatch presses and releases during a move/resize
1936
1937         * kernel/event.c: kill the debug prints for now
1938
1939         * kernel/event.c: nm cant do it.. damn
1940
1941         * kernel/event.c:
1942         ignore another type of crossing event, caused when leaving gtk popup menus
1943
1944         * kernel/focus.c: just formatting
1945
1946         * kernel/event.c:
1947         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.
1948
1949         * kernel/client.c:
1950         adjust choosing to focus new windows, make it more strict.
1951         eat all Enter events when unmapping a window so focus fallback can be more smarter..
1952
1953         * kernel/screen.c: dont need to sync
1954
1955         * kernel/focus.c: check for client_normal before focusing
1956
1957         * kernel/focus.c:
1958         when unfocusing a window (e.g. unmanaging) try fallback to transient relations, if that fails, try group relations, then fallback to other window.
1959
1960         * kernel/focus.c:
1961         try focus other transients of the parent window when a transient falls back before focusing the parent
1962
1963         * kernel/moveresize.c: unset it AFTER using it...
1964
1965         * kernel/moveresize.c: unset the client when done moveresizing
1966
1967         * kernel/openbox.c:
1968         don't wait(), the glib function does that for us woot.
1969
1970         * kernel/client.c:
1971         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.
1972
1973         * kernel/focus.h: comment typo
1974
1975         * kernel/client.c, kernel/moveresize.c, kernel/moveresize.h:
1976         watch out when unmanaging a window, that it is not being move/resized
1977
1978 2003-04-17  xor@zed  <xor@zed>
1979
1980         * kernel/client.c:
1981         a) put transient windows on the same desktop as their parent
1982         b) if a window is attempted to be focused but it is not on the current desktop,
1983            then move it to the top of the focus order on its desktop
1984
1985         * kernel/screen.c:
1986         distribute focus when entering/leaving show-the-desktop mode
1987
1988         * kernel/event.c: remove debug print
1989
1990         * kernel/moveresize.c, kernel/openbox.c, kernel/openbox.h:
1991         add the left/right/top/bottom direction arrows and use them for resizing those ways
1992
1993         * plugins/mouse/mouse.c: net_WM!@^&(
1994
1995         * plugins/mouse/mouse.c: use the right client
1996
1997         * plugins/mouse/mouse.c: dont use the client if there is none
1998
1999         * kernel/event.c: dont ignore all Virtual pointer events
2000
2001         * kernel/action.c: 02:33 (@xor) omg yes
2002         02:33 (@xor) grid workspace cycling of d3th
2003
2004         * kernel/action.c: fix grip workspace cycling
2005
2006         * kernel/event.c, kernel/grab.c, kernel/grab.h, kernel/moveresize.c, kernel/moveresize.h, plugins/mouse/mouseparse.c:
2007         fix up support for moveresize. make keyboard grabs Async so that i can hit escape to cancel a moveresize process.
2008
2009         * kernel/openbox.c: do not shadow parameter pls
2010
2011         * kernel/moveresize.c: initialize start_x/y
2012
2013         * kernel/focus.c, kernel/moveresize.c, kernel/moveresize.h, kernel/openbox.c, kernel/openbox.h:
2014         add support for interactive/keyboard move/resize
2015
2016         * kernel/event.c, kernel/prop.c, kernel/prop.h, kernel/screen.c:
2017         add support for net_moveresize_window and net_wm_moveresize
2018
2019         * kernel/frame.c: use the new cursor defn's
2020
2021         * kernel/screen.c: use the new ptr cursor defn
2022
2023         * kernel/Makefile.am, kernel/action.c, kernel/action.h, kernel/event.c, kernel/moveresize.c, kernel/moveresize.h, kernel/prop.c, kernel/prop.h, plugins/keyboard/keyboard.c, plugins/keyboard/keyparse.c, plugins/mouse/mouse.c, plugins/mouse/mouseparse.c:
2024         move the move/resize functionality into moveresize.c, for use with the netwm atoms. use it from teh plugins. combine the two actions.
2025
2026         * kernel/framerender.c: put text centered in the popup dialog properly
2027
2028         * data/rc3: make alt-middle the default resize binding
2029
2030         * kernel/openbox.c, kernel/openbox.h:
2031         add more cursors for move/resizing, and use the arrows not the angle brackets
2032
2033         * kernel/action.c:
2034         grab pointer during cycling to remove focus screwups from focus-follows-mouse.
2035         grab during move/resize and assign a cursor while doing the move/resize too!
2036
2037         * plugins/mouse/mouse.c:
2038         save the client and context during drags since a pointer grab will change them
2039
2040         * kernel/event.c: ignore virtual crossing events..
2041
2042         * kernel/focus.c: that was dumb, it was metacity's fault
2043
2044         * kernel/focus.c: only cycle to visible windows
2045
2046 2003-04-16  xor@zed  <xor@zed>
2047
2048         * kernel/event.c: dont send menu events to plugins
2049
2050         * data/rc3: show the root menu on right click
2051
2052         * kernel/event.c, kernel/grab.c, kernel/grab.h, kernel/menu.c, kernel/menu.h:
2053         menus works on some level. add a built-in root menu
2054
2055         * kernel/client.c: code cleanup
2056
2057         * kernel/client.c: when flags are not set assume bette defaults
2058
2059         * kernel/event.c, kernel/focus.c, kernel/menu.c, kernel/menu.h, kernel/openbox.c, kernel/stacking.c, kernel/stacking.h:
2060         raise menus above clients.
2061         hilight menu entries as the cursor passes over them.
2062
2063         * kernel/menu.c, kernel/menu.h:
2064         save the window ids in a map for the menus
2065
2066         * kernel/client.c: only change the group info if the group flag is set
2067
2068         * kernel/client.c: only add transients if we are IN a group
2069
2070         * kernel/client.c: oops nm
2071
2072         * kernel/client.c: less ()s cleanup
2073
2074         * kernel/client.c:
2075         remove transients before removing ourlselves from teh group
2076
2077         * kernel/client.c:
2078         set the group to null when removeing ourselves from it
2079
2080 2003-04-15  xor@zed  <xor@zed>
2081
2082         * kernel/action.c: watch out for missing a name
2083
2084         * render/theme.c: make menu font smaller and !bold for now
2085
2086         * kernel/action.c, kernel/action.h, kernel/framerender.c, kernel/menu.c, kernel/menu.h, kernel/openbox.c, plugins/keyboard/keyparse.c, plugins/mouse/mouse.c, plugins/mouse/mouseparse.c:
2087         start of showing/rendering menus. woot!
2088
2089         * render/theme.c, render/theme.h: load menu style stuff
2090
2091         * render/render.c, render/render.h:
2092         make minsize take int*'s not a Size*
2093
2094         * kernel/client.c:
2095         remove transients of the group from teh window when it leaves the group
2096
2097         * kernel/client.c: add group transients when setting up the group
2098
2099         * kernel/client.c: bug in the search for transient_for's
2100
2101         * data/rc3: update the theme stuff
2102
2103 2003-04-15  manmower  <manmower@zed>
2104
2105         * render/gradient.c: PYRAMID PARTY PART 2!!!
2106
2107         * render/gradient.c, render/gradient.h: PYRAMID PARTY!!!
2108
2109 2003-04-15  xor@zed  <xor@zed>
2110
2111         * kernel/screen.c: remove debug print
2112
2113 2003-04-14  xor@zed  <xor@zed>
2114
2115         * kernel/client.c, kernel/prop.c, kernel/screen.c:
2116         fixes for handling char**s
2117
2118         * render/font.c: indenting oopsie
2119
2120         * kernel/prop.c: dont get a null at the end of the data, so use strndup
2121
2122         * kernel/screen.c: fix a seg from ignoreing PROP_GETSS failure
2123
2124         * kernel/screen.c: more fixes for working with char**s
2125
2126         * kernel/screen.c: nullify the ends of the char**
2127
2128         * kernel/client.c, kernel/prop.h, kernel/screen.c:
2129         remove casts from PROP defines. use proper vars and cast elsewhere if needed.
2130
2131         * render/font.c: text justification
2132
2133         * render/render.c:
2134         shrink the area that the textures are rendered into by the bevels/borders
2135
2136         * kernel/client.c, kernel/prop.c, kernel/prop.h, kernel/screen.c, kernel/screen.h, kernel/stacking.c:
2137         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.
2138
2139         * kernel/menu.c, kernel/menu.h:
2140         these menus should not be removed, they are good and will be used.
2141
2142         * kernel/event.c: clean up this mess of crap a lot
2143
2144         * kernel/prop.c, kernel/prop.h:
2145         do not commit bad char* foo that breaks on !32 bit platforms
2146
2147 2003-04-14  woodblock  <woodblock@zed>
2148
2149         * kernel/menu.c, kernel/menu.h: *** empty log message ***
2150
2151 2003-04-14  xor@zed  <xor@zed>
2152
2153         * kernel/parse.l: allow _'s in identifiers
2154
2155         * kernel/stacking.c: raise and lower all transients along with parents
2156
2157         * kernel/client.c:
2158         apply layers to all transients. only raise once on the highest window who's layer changed after applying layers to them all
2159
2160 2003-04-13  xor@zed  <xor@zed>
2161
2162         * kernel/client.c: ifdef not ifndef
2163
2164         * kernel/stacking.c: keep all transient windows above their parents
2165
2166         * kernel/client.c: simple cleanups for the client_iconify function.
2167         also dont follow into other groups when searching up the transient_for tree
2168
2169         * kernel/client.c: rm the unused vars
2170
2171         * kernel/client.c: onyl focus 'normal' windows on map
2172
2173         * kernel/client.c:
2174         only keep fullscreen windows on top while they are focused
2175
2176         * kernel/client.c, kernel/client.h:
2177         make fullscreen decorations and functions be calculated by the setup_decor_and_functions func
2178
2179         * kernel/group.c: rm the group debug prints
2180
2181         * kernel/client.c: only print that when debuggin focus
2182
2183         * .cvsignore, kernel/.cvsignore, plugins/.cvsignore, plugins/keyboard/.cvsignore, plugins/mouse/.cvsignore, plugins/placement/.cvsignore, render/.cvsignore:
2184         ignore the remaining new shit from automaking everything again
2185
2186         * .cvsignore, INSTALL, Makefile.am, Makefile.in, bootstrap, configure.ac, data/.cvsignore, data/Makefile.am, kernel/.cvsignore, kernel/Makefile, kernel/Makefile.am, plugins/.cvsignore, plugins/Makefile, plugins/Makefile.am, plugins/keyboard/.cvsignore, plugins/keyboard/Makefile, plugins/keyboard/Makefile.am, plugins/mouse/.cvsignore, plugins/mouse/Makefile, plugins/mouse/Makefile.am, plugins/placement/.cvsignore, plugins/placement/Makefile, plugins/placement/Makefile.am, po/.cvsignore, render/.cvsignore, render/Makefile, render/Makefile.am, tests/Makefile, themes/.cvsignore, themes/Makefile.am:
2187         back to automake
2188
2189         * AUTHORS: shrimpx above miklos?
2190
2191         * kernel/event.c, kernel/frame.c, kernel/frame.h, plugins/mouse/mouse.c:
2192         pass the Client for frame_context cuz the client might be NULL
2193
2194         * themes/ebox: comment properly
2195
2196         * render/theme.c: load the font shadow stuff from the old ob2 shitz
2197
2198         * kernel/config.c, kernel/config.h, kernel/openbox.c:
2199         let specify theme in the rc3 file. rm the other old engine options
2200
2201         * Makefile.in: break on errors
2202
2203         * Makefile.in, kernel/.cvsignore, kernel/action.c, kernel/client.c, kernel/config.h, kernel/engine.c, kernel/engine.h, kernel/event.c, kernel/focus.c, kernel/frame.c, kernel/frame.h, kernel/framerender.c, kernel/framerender.h, kernel/openbox.c, kernel/parse.l, kernel/parse.y, kernel/screen.c, plugins/keyboard/keyboard.c, plugins/mouse/mouse.c, render/.cvsignore, render/font.h, render/mask.h, render/render.h, render/theme.c, render/theme.h:
2204         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.
2205
2206         * themes/ob20, themes/operation, themes/outcomes, themes/artwiz, 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:
2207         move the themes
2208
2209         * render/render.c: allow freeing NULL appearances
2210
2211         * render/font.c: allow closing NULL fonts
2212
2213         * render/mask.c: allow freeing NULL pixmap masks
2214
2215         * render/color.c: dont fux self in color_free if the color is NULL
2216
2217 2003-04-12  xor@zed  <xor@zed>
2218
2219         * tests/fullscreen.c: set the right mask for the client msg!
2220
2221 2003-04-12  woodblock  <woodblock@zed>
2222
2223         * CHANGELOG: Fixed another damned focus bug. Pray.
2224
2225 2003-04-11  xor@zed  <xor@zed>
2226
2227         * data/rc3: add right click in client focuses
2228
2229         * kernel/client.c: make utility windows able to be resized
2230
2231         * Makefile.in: rm the main Makefile in a distclean
2232
2233 2003-04-10  xor@zed  <xor@zed>
2234
2235         * kernel/client.c:
2236         deiconify transient parents when a child is deiconified.
2237
2238         * kernel/client.h: no fuck that it was working fine
2239
2240         * kernel/client.h: make the TRAN_GROUP an unsigned long
2241
2242         * kernel/event.c: add MapRequest print
2243
2244         * kernel/client.c:
2245         some smarter rules for focusing new window when focus_new is not set
2246
2247 2003-04-09  xor@zed  <xor@zed>
2248
2249         * plugins/keyboard/keyboard.c: buld fixes for the new libs
2250
2251         * Makefile.in, render/.cvsignore: add libcwmcc and libobcl
2252
2253         * HACKING: describe the code subdirs
2254
2255         * kernel/action.c:
2256         dont show the focus popup when theres no target client
2257
2258 2003-04-08  xor@zed  <xor@zed>
2259
2260         * kernel/event.c: rm debug print
2261
2262         * tests/.cvsignore: add override
2263
2264         * tests/override.c: add a test that maps an override redirect window
2265
2266         * kernel/client.c, kernel/config.c, kernel/config.h, kernel/engine.c, kernel/engine.h, kernel/event.c, kernel/focus.c, kernel/focus.h, kernel/openbox.c, kernel/prop.c, kernel/screen.c:
2267         move config option loading for the kernel into config.c/h
2268         add options for the number of desktops and the names of the desktops
2269
2270         * data/rc3: add the desktops options
2271
2272         * data/rc3: better clickfocus friendliness
2273
2274         * kernel/client.c: check for focus before unfocusing
2275
2276         * kernel/client.c, kernel/event.c, kernel/focus.c, kernel/focus.h, kernel/screen.c:
2277         add more options for focus fallback, use an enum for all the types of fallbacks.
2278
2279         * kernel/focus.c: only cycle focus to normal windows
2280
2281         * data/rc3: make stacked cycling the default
2282
2283         * kernel/action.c: show a popup with the focus target while cycling
2284
2285         * kernel/focus.c, kernel/focus.h:
2286         fallback to transients' parents when possible.
2287         return the Client* which was focused from focus_cycle
2288
2289         * kernel/client.c: fallback focus while unmanaging the window
2290
2291 2003-04-07  xor@zed  <xor@zed>
2292
2293         * data/rc3: FocusRaise to be more clickfocus friendly too
2294
2295         * data/rc3, kernel/focus.c, kernel/focus.h:
2296         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.
2297
2298         * kernel/event.c: ignore inferior enternotifies
2299         add anotehr focusdebug print
2300
2301         * kernel/client.c: check for new windows always being onscreen.
2302         rename the client pointer to self in teh manage unmanage functions for consistancy
2303
2304         * kernel/grab.c: rm debug prints
2305
2306 2003-04-07  woodblock  <woodblock@zed>
2307
2308         * configure.in: bump version string
2309
2310 2003-04-07  xor@zed  <xor@zed>
2311
2312         * plugins/placement/history.c:
2313         dont check to make sure the window is on screen here
2314
2315         * HACKING: add comment about the two different area Rects
2316
2317         * HACKING: add new HACKING!
2318         warn about Client.transient_for
2319
2320         * kernel/client.h, kernel/stacking.c, kernel/client.c:
2321         support for transients of groups
2322
2323         * kernel/event.c: missed one
2324
2325         * kernel/event.c: put focus messages in ifdefs
2326
2327         * kernel/focus.c: remove debug print
2328
2329         * kernel/client.c, kernel/client.h, kernel/group.c, kernel/group.h, kernel/openbox.c:
2330         track window groups
2331         iconify all its transients when a window is iconified
2332
2333         * plugins/keyboard/keyboard.c:
2334         once in a window-cycle, don't fire any other key bindings
2335
2336         * kernel/action.c, kernel/client.c, kernel/client.h, kernel/focus.c, kernel/focus.h:
2337         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.
2338
2339         * kernel/grab.c: grab the other device in Sync for button/key grabs
2340
2341 2003-04-06  xor@zed  <xor@zed>
2342
2343         * plugins/placement/history.c: dont let windows be placed offscreen
2344
2345         * render/render.c: ifndef NOT IFNDEF GAH
2346
2347         * kernel/action.c: dont toggle when no client was passed to teh action
2348
2349         * kernel/event.c: nm that, pointless...
2350
2351         * kernel/event.c:
2352         disable keyboard and mouse input while ob is starting or exiting
2353
2354 2003-04-06  manmower  <manmower@zed>
2355
2356         * render/color.c, render/render.c:
2357         Fix reduce color depth to not use original data
2358         (and break parentrel)
2359
2360 2003-04-06  xor@zed  <xor@zed>
2361
2362         * kernel/engine.c: print the error when the engine cant load
2363
2364         * render/render.c: add stdlib.h for exit()
2365
2366         * .cvsignore, configure.ac, install-sh:
2367         stop using build/ dir configure shits all over itself for other people
2368
2369         * m4/x11.m4, m4/openbox.m4:
2370         build fixes for finding Xlibs and for setting vars based on found Xlib info and Xinerama info
2371
2372         * configure.ac: more build system fixups
2373
2374         * .cvsignore, Makefile, Makefile.in, configure.ac, install-sh, m4/openbox.m4, render/.cvsignore:
2375         fixes for build system. add themes to the install process. use the build/ dir for configures trash dump
2376
2377         * kernel/engine.c: clean up the module if load() fails
2378
2379         * render/render.c, render/render.h:
2380         add function to give the minimum size of an appearance to fully render it's data
2381
2382         * plugins/mouse/mouse.c:
2383         save the state at the start of a drag and use it throughout until the button is released
2384
2385         * kernel/action.c: add a coords popup for moving and resizing
2386
2387         * kernel/geom.h: add ()'s to the macros for more safety
2388
2389         * kernel/engine.c, kernel/engine.h:
2390         add the ability to render and size text labels for non-window-decorations
2391
2392 2003-04-06  woodblock  <woodblock@zed>
2393
2394         * bootstrap: Remove woodblock's local changes :P
2395
2396         * bootstrap: Moved to DESIGN/
2397
2398         * DESIGN/menu-thoughts.txt: some thoughts on menu stuff
2399
2400 2003-04-06  manmower  <manmower@zed>
2401
2402         * render/gradient.c: remove asserts pending sanity check.
2403
2404         * render/gradient.c:
2405         added flakey parentrel for solids and some mean spirited asserts
2406
2407         * render/color.c, render/color.h, render/render.c, render/render.h:
2408         added superb pseudo-color (8bpp) support
2409
2410 2003-04-06  xor@zed  <xor@zed>
2411
2412         * plugins/resistance.c: dont resize snap windows with size increments
2413
2414         * data/rc3, kernel/engine.c: make NLIMC the default titlebar layout
2415
2416 2003-04-06  woodblock  <woodblock@zed>
2417
2418         * configure.in: Huge i18n patch from Mike Fabian.
2419         We use utf8 everywhere now.
2420
2421 2003-04-05  xor@zed  <xor@zed>
2422
2423         * kernel/action.c, kernel/focus.c, kernel/focus.h:
2424         allow specifying that some focus events should be ignored for the focus order list
2425
2426         * kernel/action.c: stacked and linear cycling
2427
2428         * kernel/action.c, kernel/action.h, plugins/keyboard/keyboard.c:
2429         linear focus cycling of the gods
2430
2431         * plugins/keyboard/keyboard.c:
2432         add special shit for window cycling, grab the keyboard etc
2433
2434         * kernel/client.c: typo
2435
2436         * kernel/client.c: put it back
2437
2438         * kernel/client.c: make unfocus really unfocus everything
2439
2440         * data/rc3: add linear cycling for now
2441
2442         * data/rc3: rm the [foo] section
2443
2444         * data/rc3: update teh rc3 to reflect how the code works now
2445
2446         * kernel/engine.c: dont default to NULL for the engine name
2447
2448         * kernel/engine.c: add engine options to the new rc file
2449
2450         * Makefile, kernel/focus.c, kernel/openbox.c, kernel/parse.c:
2451         add focus options to the new rc file
2452
2453         * kernel/action.c, kernel/action.h, kernel/client.c, kernel/client.h, kernel/config.c, kernel/config.h, kernel/engine.c, kernel/engine.h, kernel/event.c, kernel/focus.c, kernel/focus.h, kernel/openbox.c, kernel/parse.c, kernel/parse.h, kernel/parse.l, kernel/parse.y, kernel/screen.c, plugins/keyboard/keyboard.c, plugins/mouse/mouse.c, plugins/placement/history.c, plugins/placement/placement.c, plugins/resistance.c:
2454         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/
2455
2456         * render/render.h: make tint signed
2457
2458         * data/rc3: typo
2459
2460         * plugins/mouse/mouserc, plugins/mouse/mouserc_parse.c, plugins/mouse/mouserc_parse.h, plugins/mouse/mouserc_parse.l:
2461         rm the old mouserc shit
2462
2463         * Makefile, data/rc3: add an rc3 which gets installed
2464
2465         * Makefile: make love
2466
2467         * plugins/mouse/.cvsignore: ignore more new shit
2468
2469         * plugins/mouse/translate.c:
2470         use Button<num> instead of just <num> for specifying buttons by number
2471
2472         * plugins/keyboard/keyparse.c, plugins/mouse/mouseparse.c, plugins/mouse/mouseparse.h:
2473         better error msgs
2474
2475         * kernel/frame.c, kernel/frame.h: use a context enum instead of quarks
2476
2477         * plugins/mouse/mouse.c:
2478         not using quarks, using an array and a Context enum for contexts
2479
2480         * plugins/keyboard/keyparse.c: prefix key bindnigs with 'kbind'
2481
2482         * plugins/keyboard/keyboard.c, plugins/keyboard/translate.c:
2483         initialize all vars.
2484         change warnings to messages
2485
2486 2003-04-04  xor@zed  <xor@zed>
2487
2488         * kernel/openbox.c:
2489         reorder startup so that grabs are set up before parsing teh rc
2490
2491         * plugins/keyboard/keyparse.c: remove debug print
2492
2493         * kernel/parse.c, kernel/parse.y, plugins/keyboard/.cvsignore, plugins/keyboard/keyboard.c, plugins/keyboard/keyparse.c, plugins/keyboard/keyparse.h, plugins/keyboard/keysrc, plugins/keyboard/keysrc.h, plugins/keyboard/keysrc.l, plugins/keyboard/keysrc.yacc:
2494         add the keyboard plugin into the build systems
2495         keyboard bindings are parsed from the rc file
2496
2497         * configure.ac: clean up output
2498
2499         * configure.ac: properly
2500
2501         * configure.ac: add -DENABLE_NLS
2502
2503         * kernel/parse.c: more using of new token struct
2504
2505         * kernel/parse.c: use new token structs. free token lists.
2506
2507         * kernel/parse.c, kernel/parse.h, kernel/parse.y:
2508         attempting to parse lists
2509
2510         * README.CVS: reflect the current requirements for building/using cvs
2511
2512 2003-04-03  xor@zed  <xor@zed>
2513
2514         * kernel/parse.l: allow '-' in identifiers
2515
2516         * Makefile: engine builds
2517
2518         * Makefile: build the resistance/placement plugins
2519
2520         * kernel/parse.h: use the values from the yacc parser
2521
2522         * Makefile, kernel/.cvsignore, kernel/parse.y:
2523         more build fixes, calling the other makefiles instead of including them
2524
2525         * kernel/parse.y: try accomidate more versions of bison
2526
2527         * .cvsignore, Makefile, kernel/.cvsignore, plugins/.cvsignore, plugins/placement/.cvsignore:
2528         more build fixes
2529
2530         * configure.ac: use PACKAGE_FOO vars
2531
2532         * kernel/action.c: double break statements :) oops
2533
2534         * .cvsignore: add stuff that should be ignored at the toplevel
2535
2536         * bootstrap, install-sh: some build fixes
2537
2538         * .cvsignore, Makefile, Makefile.am, bootstrap, configure.ac, doc/.cvsignore, doc/Makefile.am, doc/doxygen/.cvsignore, doc/doxygen/Makefile.am, kernel/.cvsignore, kernel/Makefile, kernel/Makefile.am, kernel/openbox.c, kernel/parse.h, m4/openbox.m4, plugins/.cvsignore, plugins/Makefile, plugins/Makefile.am, plugins/keyboard/.cvsignore, plugins/keyboard/Makefile, plugins/keyboard/Makefile.am, plugins/mouse/.cvsignore, plugins/mouse/Makefile, plugins/mouse/Makefile.am, plugins/placement/.cvsignore, plugins/placement/Makefile, plugins/placement/Makefile.am, po/.cvsignore, render/.cvsignore, render/Makefile, render/Makefile.am, themes/.cvsignore, themes/Makefile.am:
2539         new build system without automake
2540
2541         * data/.cvsignore, data/Makefile.am, data/README, data/README.menu, data/README.style, data/menu.in:
2542         rm the data dir
2543
2544 2003-04-02  xor@zed  <xor@zed>
2545
2546         * kernel/Makefile.am: BLEF HATE DIE
2547
2548         * kernel/Makefile.am: bison doesnt use y.tab.*
2549
2550         * configure.ac: use bison not yacc
2551
2552         * kernel/Makefile.am, kernel/parse.y, kernel/parse.yacc:
2553         rename the parse.yacc to parse.y
2554
2555         * kernel/Makefile.am: make parse.h depend on y.tab.h
2556
2557         * kernel/parse.h, kernel/parse.l: this should seriously work
2558
2559         * kernel/parse.h, kernel/parse.yacc: undo that
2560
2561         * kernel/.cvsignore: ignore new lex/yacc gen'd files
2562
2563         * kernel/parse.h, kernel/parse.yacc:
2564         don't include the y.tab.h inside the yacc file
2565
2566         * kernel/Makefile.am: add y.tab.h to the headers so the yacc shit runs
2567
2568         * kernel/Makefile.am: rm the generated files on clean
2569
2570         * kernel/Makefile.am: wrong .h for the make rule
2571
2572         * kernel/Makefile.am: deps the lex h on the c
2573
2574         * plugins/mouse/mouse.c:
2575         make the drag threshold and double click time into rc options
2576
2577         * kernel/Makefile.am, kernel/config.c, kernel/config.h, kernel/cparse.l, kernel/openbox.c, kernel/parse.c, kernel/parse.h, kernel/parse.l, kernel/parse.yacc:
2578         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
2579
2580         * render/font.c: whitespace
2581
2582         * render/font.c: kill debug print
2583
2584         * render/font.c: use the tint properly for the shadow
2585
2586         * kernel/client.c: rm debug print
2587
2588         * render/render.c: will seg again
2589
2590         * render/render.c: stop copying. still segfault?
2591
2592         * render/render.c:
2593         find the right offset in the source data for parent relative
2594
2595 2003-04-02  manmower  <manmower@zed>
2596
2597         * render/render.c: let there be parentrelative
2598
2599 2003-04-01  xor@zed  <xor@zed>
2600
2601         * TODO: more updates to current status
2602
2603 2003-03-31  xor@zed  <xor@zed>
2604
2605         * plugins/mouse/mouserc: add the Shade context to the comments
2606
2607         * kernel/client.c, kernel/client.h, plugins/mouse/mouserc:
2608         add a shaded button
2609
2610         * TODO: add some current states
2611
2612         * plugins/resistance.c: dont resist to windows which we're not touching
2613
2614         * kernel/client.c:
2615         only disallow shading when the function is not enabled, dont disallow unshading
2616
2617         * plugins/mouse/mouse.c:
2618         use the client's size instead of the frames size so the real size is used, not the size of the frame (avoids shaded window problem)
2619
2620         * kernel/action.c: disallow resizing of windows which are shaded
2621
2622         * plugins/mouse/mouse.c: unser drag_used when drag is unset too
2623
2624         * plugins/mouse/mouse.c: add a space where it belongs
2625
2626         * plugins/mouse/mouse.c:
2627         make realeases fire releases instead of presses. make drags prevent clicks only if there is something bound to the drag.
2628
2629         * plugins/keyboard/keysrc: no drag events for keysrc..
2630
2631         * kernel/client.c:
2632         use the frame's position in the maximize function since they're converted to the client coords before getting to client_configure
2633
2634         * kernel/frame.c:
2635         was not using the pointer properly. leaving the value untouched
2636
2637         * kernel/client.c:
2638         set fullscreen and max positions properly for all gravities
2639
2640         * kernel/focus.c: rm a no-longer-valid comment
2641
2642         * kernel/event.c:
2643         yet more haxes to make focus events work the way i want. this is rough shit.
2644
2645         * plugins/resistance.c:
2646         extraneous ! causing resistance to be snapping in one case. rm a debug print
2647
2648 2003-03-30  xor@zed  <xor@zed>
2649
2650         * render/font.c: use 'sans' as the fallback font instead of 'fixed'
2651
2652         * kernel/event.c, kernel/focus.c:
2653         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.
2654
2655 2003-03-29  xor@zed  <xor@zed>
2656
2657         * kernel/action.c, kernel/action.h:
2658         make SendToDesktop action work right, give the option of following
2659
2660         * render/mask.c, render/mask.h, render/render.h:
2661         add pixmap_mask_copy, and add the data to the mask struct, since it is needed for allowing copies
2662
2663         * plugins/keyboard/keysrc:
2664         better decribe bindings and list all the modifiers, was missing shift/control
2665
2666         * plugins/keyboard/keysrc:
2667         add SendToDesktop to the comments. fix the type calling the Desktop action Desktops
2668
2669         * plugins/keyboard/keysrc.yacc: use the number for sendtodesktop
2670
2671         * kernel/action.c, kernel/action.h: rm a redundant actiondata struct
2672
2673         * kernel/menu.c: no //'s plz
2674
2675         * kernel/action.c: translate sendtodesktop actions
2676
2677         * plugins/resistance.c: use the top when snapping to the top
2678
2679         * kernel/openbox.c: create the dirs for themes in ~/.openbox on startup
2680
2681 2003-03-29  woodblock  <woodblock@zed>
2682
2683         * tests/Makefile: Add include path
2684
2685 2003-03-29  xor@zed  <xor@zed>
2686
2687         * plugins/mouse/mouserc: add focusing if clicked on the grips
2688
2689         * plugins/resistance.c:
2690         use the bottom of the screen for botom snapping! :)
2691
2692 2003-03-29  woodblock  <woodblock@zed>
2693
2694         * kernel/Makefile.am, kernel/action.c, kernel/action.h, kernel/menu.c, kernel/menu.h:
2695         Menu data structures basically completed.
2696         Need the engine support still, parser, and controllers.
2697
2698 2003-03-29  xor@zed  <xor@zed>
2699
2700         * plugins/keyboard/keysrc.yacc: rm the extra ;
2701
2702         * kernel/action.c, kernel/action.h, plugins/keyboard/keysrc, plugins/mouse/mouserc:
2703         add unshaderaise and shadelower actions from Mikachu
2704
2705         * kernel/xerror.c, kernel/xerror.h: add a var to track errors
2706
2707         * kernel/grab.c: don't die when someone else has a key grabbed
2708
2709 2003-03-28  xor@zed  <xor@zed>
2710
2711         * plugins/keyboard/keysrc, plugins/mouse/mouserc: add ToggleDecorations
2712
2713         * kernel/action.c, kernel/client.c, kernel/client.h:
2714         rm client_disable_decorations.. it already had an action.
2715         add the action to the action_from_string func
2716
2717         * kernel/client.c, kernel/client.h: add client_disable_decorations
2718
2719         * kernel/client.c:
2720         onlt raise the window when sending to a desktop it wasnt already on
2721
2722         * kernel/event.c:
2723         FocusOut's are NOT ignored. thats bullshit. fixing comment.
2724
2725         * kernel/event.c:
2726         focus... works...? i have all cases of mozilla working, with RevertToPointerRoot sucking ass but.. working now.
2727
2728         * kernel/client.c:
2729         RevertToPointerRoot is the worse error case, so use it always
2730
2731         * kernel/event.c: comment why NotifyAncestor is not ignored
2732
2733         * kernel/event.c:
2734         yet MORE focus events reworkings. mozilla behaves now too. woot
2735
2736         * kernel/client.c: make the value boolean
2737
2738         * kernel/event.c:
2739         more focus cleanups. ignored focusin's were not working right recursively.
2740         also, when the focusin coming later is not for a valid window the fallback would not be called. both fixed.
2741
2742         * plugins/resistance.c: round down for size increments
2743
2744         * kernel/action.c, kernel/dispatch.c, kernel/dispatch.h:
2745         add resizing event
2746
2747         * plugins/resistance.c:
2748         resize resistance. size incs will fuck with it yet though.
2749
2750         * plugins/mouse/mouse.c: set lbutton from clicks
2751
2752         * plugins/mouse/mouse.c: rm debug prints
2753
2754         * kernel/client.c:
2755         was not moving the window between desktop focus lists sometimes. bad news. now i always do. yay!
2756
2757         * kernel/focus.c: killa  debug print
2758
2759         * kernel/focus.c:
2760         handle better the case of choosing the window to focus but it is already focused when switching desktops
2761
2762         * kernel/client.h: comment the new parameter
2763
2764         * kernel/action.c, kernel/client.c, kernel/client.h, kernel/event.c, kernel/screen.c:
2765         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
2766
2767         * kernel/stacking.c: oops that worked before i borked it bad
2768
2769         * kernel/stacking.c: frame is a pointer
2770
2771         * kernel/stacking.c: dont die if a non-visible window is raised/lowered
2772
2773         * plugins/mouse/mouse.c: take borders into account for figuring clicks
2774
2775         * kernel/geom.h: make better?
2776
2777         * kernel/focus.c: sync after focusing
2778
2779         * kernel/geom.h: make these things one 'command' without braces
2780
2781 2003-03-28  manmower  <manmower@zed>
2782
2783         * render/render.c, render/render.h, render/test.c:
2784         moved paint's arguments into the appearance struct
2785
2786 2003-03-28  xor@zed  <xor@zed>
2787
2788         * kernel/stacking.c: dont lower below lower layers
2789
2790         * kernel/client.c:
2791         use the struts to size the window correctly for maximized windows
2792
2793         * kernel/client.c: read struts properly
2794
2795 2003-03-28  manmower  <manmower@zed>
2796
2797         * render/render.c, render/render.h: fix draw order in x_paint
2798
2799         * render/render.c: black.  not white.  oops
2800
2801         * render/render.c: black for parentrelative so we can test icons
2802
2803 2003-03-28  xor@zed  <xor@zed>
2804
2805         * plugins/mouse/mouserc: focus on middle click on client
2806
2807         * kernel/plugin.c: skip better
2808
2809         * kernel/plugin.c: skip comments and empty lines
2810
2811         * kernel/client.c:
2812         only use the initial_state shit when NOT starting and when managing the window
2813
2814         * kernel/focus.c:
2815         rm a bunch of prints. make switching to an empty desktop not kill focus
2816
2817         * kernel/event.c: dont focus !normal windows on enter events
2818
2819         * plugins/mouse/mouserc: add send-tos with the mouse wheel
2820
2821         * plugins/Makefile.am: focus plugin is gone
2822
2823         * kernel/client.c: mor fabulous focus fixings.
2824         RevertToNone so that when the fallback stuff goes the window wont already have focus cuz it has the pointer in to
2825
2826         * kernel/event.c: fallback focus in superior fashion
2827
2828         * kernel/focus.c: better var naming
2829
2830         * kernel/focus.c:
2831         dont rm focus when i actually found something to fall back to with the pointer
2832
2833 2003-03-27  xor@zed  <xor@zed>
2834
2835         * kernel/event.c: watch for FocusIn's for unknown clients
2836
2837         * kernel/plugin.c: rm the focus plugin
2838
2839 2003-03-27  manmower  <manmower@zed>
2840
2841         * render/render.h: prep for parentrelative
2842
2843 2003-03-27  xor@zed  <xor@zed>
2844
2845         * kernel/event.c: missed the end of a comment
2846
2847         * kernel/client.c, kernel/client.h, kernel/event.c, kernel/event.h:
2848         handle focus in the kernel, no more plugin
2849
2850         * kernel/focus.c, kernel/focus.h: add code to fallback focus
2851
2852         * kernel/screen.c: focus a window on desktop switch
2853
2854         * plugins/Makefile.am, plugins/focus.c: rm the focus plugin
2855
2856         * kernel/config.c: add focus options
2857
2858         * kernel/event.c:
2859         set the last time to CurrentTime for events that don't have time stamps
2860
2861         * kernel/client.c: rm debug print
2862
2863 2003-03-26  xor@zed  <xor@zed>
2864
2865         * kernel/client.c, kernel/event.c, kernel/event.h, kernel/focus.c, kernel/grab.c, kernel/keyboard.c, kernel/keyboard.h, kernel/pointer.c, kernel/pointer.h, plugins/keyboard/keyboard.c, plugins/mouse/mouse.c:
2866         not using CurrentTime anywhere
2867
2868         * kernel/grab.c, plugins/keyboard/keyboard.c: use CurrentTime again?
2869
2870         * plugins/keyboard/keyboard.c: bind C-g for the rset key
2871
2872         * kernel/grab.c: ungrab with currenttime
2873
2874         * kernel/focus.c:
2875         use the last event timestamp when focusing the focus_backup
2876
2877         * plugins/keyboard/keysrc.l: negatives that work!
2878
2879         * plugins/keyboard/keysrc: document the options
2880
2881         * plugins/keyboard/keysrc.l: better negatives
2882
2883         * plugins/keyboard/keysrc.l: allow negative numbers
2884
2885         * plugins/keyboard/keysrc.yacc: was reversing the keylist
2886
2887         * plugins/keyboard/keysrc.yacc:
2888         subtract 1 from the given desktop number
2889
2890         * plugins/keyboard/keysrc.l: make parsing more generic
2891
2892         * plugins/keyboard/keysrc.yacc: free unused paths
2893
2894         * plugins/keyboard/keysrc.yacc: split up the relative functions.
2895         make the parsing more generic, anything can have a string/numeric argument
2896
2897         * plugins/keyboard/keyboard.c: remove an extraneous g_warning
2898
2899         * plugins/mouse/mouserc_parse.l: split the relative functions
2900
2901         * plugins/keyboard/translate.c: check for invalid keys properly
2902
2903         * kernel/action.h:
2904         comment that the relative move/resize amounts need to be set
2905
2906         * kernel/action.c, kernel/action.h:
2907         split up the relative move/resize actions into horz/vert
2908
2909         * kernel/action.c, kernel/action.h: create actions from string names
2910
2911         * plugins/keyboard/.cvsignore, plugins/keyboard/Makefile.am, plugins/keyboard/keyboard.c, plugins/keyboard/keyboard.h, plugins/keyboard/keysrc, plugins/keyboard/keysrc.h, plugins/keyboard/keysrc.l, plugins/keyboard/keysrc.yacc, plugins/keyboard/tree.c:
2912         load keybindings from keysrc
2913
2914         * plugins/mouse/mouserc: add exit/restart.
2915         clarify which can be used for drag events
2916
2917         * plugins/mouse/mouserc_parse.l:
2918         dont let bind to actionexecute or desktop cuz they require a parameter
2919
2920         * plugins/mouse/mouserc_parse.l: dont let bind to actiondesktop
2921
2922         * plugins/mouse/mouserc_parse.l: use the action_from_string helper
2923
2924         * kernel/action.c: let a be null for action_free
2925
2926         * kernel/cparse.l: use g_warning not printf
2927
2928         * plugins/mouse/mouserc_parse.l:
2929         properly restrict bindings for motion events
2930
2931         * plugins/mouse/mouserc_parse.l: even beter
2932
2933         * plugins/mouse/mouserc_parse.l: better comment parsing
2934
2935         * plugins/mouse/mouserc_parse.l: sep is not used any more
2936
2937         * plugins/mouse/mouserc_parse.l: fix comment parsing
2938
2939         * plugins/mouse/mouserc_parse.l: dont set fields if in a comment
2940
2941         * kernel/client.c: kill the prints again for now
2942
2943         * plugins/mouse/Makefile.am: rm the lex .c on clean
2944
2945         * kernel/xerror.c: dont print bad window errors
2946
2947         * kernel/client.c, kernel/grab.c: put back map/unmap msgs
2948
2949         * configure.ac: look for yacc
2950
2951         * plugins/mouse/mouserc_parse.l: fields must not start or end with '-'
2952
2953         * kernel/event.c: dont let you got to numdesktops+1
2954
2955         * kernel/screen.c: rm the debug print
2956
2957         * kernel/event.c: kill debug prints
2958
2959         * plugins/keyboard/keyboard.c:
2960         XAllowEvents with a timestamp, otherwise we end up with a grab in place that we dont want
2961
2962         * kernel/client.c: oops
2963
2964         * kernel/client.c: rm some debug prints
2965
2966         * kernel/event.c: use ungrab enter events
2967
2968 2003-03-26  manmower  <manmower@zed>
2969
2970         * render/render.c: add rgba icon support
2971
2972         * render/image.c, render/image.h: rgba icon rendering
2973
2974         * render/Makefile.am: add image.c to the build process
2975
2976 2003-03-26  xor@zed  <xor@zed>
2977
2978         * kernel/client.c, kernel/client.h: use rgba icons for clients
2979
2980 2003-03-26  manmower  <manmower@zed>
2981
2982         * render/render.h: added "NoTexture" type
2983
2984 2003-03-26  xor@zed  <xor@zed>
2985
2986         * plugins/mouse/mouserc: document the options
2987
2988         * plugins/mouse/mouserc_parse.l: only let bind Move and Resize to Drags
2989
2990         * plugins/mouse/.cvsignore, plugins/mouse/mouserc, plugins/mouse/mouserc_parse.l:
2991         add the lexer
2992
2993         * kernel/action.c: check for no client
2994
2995 2003-03-26  manmower  <manmower@zed>
2996
2997         * render/render.h: filled out rgba
2998
2999 2003-03-26  xor@zed  <xor@zed>
3000
3001         * plugins/mouse/Makefile.am, plugins/mouse/mouse.c, plugins/mouse/mouse.h, plugins/mouse/mouserc, plugins/mouse/mouserc_parse.c, plugins/mouse/mouserc_parse.h:
3002         parse a mouserc file for mouse bindings
3003
3004         * plugins/mouse/.cvsignore: add new parsing shit
3005
3006         * kernel/.cvsignore: new output file from flex
3007
3008         * .cvsignore: wrong place
3009
3010         * .cvsignore, kernel/Makefile.am, kernel/cparse.l:
3011         usnig flex directly, renaming symbols so that theres no clash with other lexers
3012
3013         * configure.ac: look for flex
3014
3015         * kernel/action.c: free the string for action_restart too
3016
3017 2003-03-26  manmower  <manmower@zed>
3018
3019         * render/font.c, render/font.h, render/mask.c, render/mask.h, render/render.c:
3020         add a Rect to the textures for positioning them
3021
3022 2003-03-26  xor@zed  <xor@zed>
3023
3024         * kernel/plugin.c: print a warning when a module fails to open
3025
3026 2003-03-26  manmower  <manmower@zed>
3027
3028         * render/render.h: include appropriate header file for Rect
3029
3030         * render/render.h: added position to the textures
3031
3032 2003-03-26  xor@zed  <xor@zed>
3033
3034         * plugins/mouse/mouse.c: strdown the context name
3035
3036         * plugins/mouse/translate.c:
3037         use names for mouse buttons, all case insensitive
3038
3039         * plugins/keyboard/translate.c: case insensitive
3040
3041 2003-03-25  xor@zed  <xor@zed>
3042
3043         * kernel/event.c: dont change desktop when its out of range
3044
3045         * plugins/keyboard/keyboard.h, plugins/keyboard/tree.h:
3046         move the def'n of the KeyBindingTree
3047
3048         * plugins/mouse/mouse.c:
3049         presses work when clicks dont on the frame around the titlebar..
3050
3051         * plugins/keyboard/translate.c, plugins/mouse/translate.c:
3052         translate "Control" and "Shift" for modifiers too
3053
3054         * render/font.c: bettr font alignment, i think
3055
3056         * plugins/keyboard/keyboard.c: i fucked that one up
3057
3058         * plugins/resistance.c: add 'corner snapping' resistance
3059
3060         * kernel/event.c: typo
3061
3062         * kernel/event.c: dont accept MapRequest's for !iconic windows
3063
3064         * kernel/client.c:
3065         clarify using stacking_lower for restoring the stacking order
3066
3067         * kernel/client.c: free the startup stacking order after using it
3068
3069         * kernel/client.c:
3070         read in the stacking order on startup, and use it to restore windows back to the order they were in before
3071
3072         * kernel/stacking.c:
3073         dont change the stacking order hint while shuting down
3074
3075 2003-03-24  xor@zed  <xor@zed>
3076
3077         * kernel/menu.h: add action.h for menu entries
3078
3079         * kernel/menu.h: you cant reference yourself as a type
3080
3081         * kernel/client.c, kernel/event.c: use g_hash_table properly
3082
3083 2003-03-24  woodblock  <woodblock@zed>
3084
3085         * kernel/menu.c, kernel/menu.h: Added some menu structure.
3086
3087 2003-03-24  xor@zed  <xor@zed>
3088
3089         * kernel/client.c:
3090         make sure the ConfigureNotify is propogated even when there is no change
3091
3092         * kernel/client.c:
3093         always send the event on a final configure even if there was no real move
3094
3095         * kernel/client.c:
3096         make sure windows which cant be moved or resized also can't be fullscreened
3097
3098         * kernel/client.c: only configure the engine if something changed
3099
3100         * kernel/client.c, kernel/event.c:
3101         only perform the actions necessary when performing an engine_adjust_area. pass whether the client has moved or resized
3102
3103         * kernel/event.c: double ptrs suck! yay shape!
3104
3105         * kernel/event.c: handle shape events
3106
3107         * kernel/action.c: dont move/resize !normal windows
3108
3109         * kernel/event.c: kill debug prints
3110
3111         * kernel/client.c: kill debug print
3112
3113         * kernel/client.c, kernel/client.h, kernel/dispatch.h, kernel/event.c, kernel/focus.c:
3114         more focus improvements. everything seems to work!
3115
3116         * kernel/event.h: Time is declared in Xlib.h
3117
3118         * kernel/openbox.c: not.
3119
3120         * kernel/openbox.c: focus seems to work when not remote too now
3121
3122         * kernel/event.c, kernel/openbox.c:
3123         more focus fixes. i wish this could end.
3124
3125         * kernel/client.c: no \n in g_message
3126
3127         * kernel/action.c, kernel/action.h: add restart and exit actions
3128
3129 2003-03-23  xor@zed  <xor@zed>
3130
3131         * kernel/client.c, kernel/client.h, kernel/event.c:
3132         yet more improvements to focus handling
3133
3134         * render/test.c: gl aint used yet
3135
3136         * plugins/resistance.c: export config values
3137
3138         * plugins/focus.c, plugins/placement/placement.c: dont need the bool
3139
3140         * plugins/focus.c: typo
3141
3142         * plugins/placement/placement.c: make history placement optional
3143
3144         * plugins/focus.c: export its options and use them from the rc file
3145
3146         * plugins/mouse/mouse.c: raise AND focus
3147
3148         * plugins/focus.c: export focus options to the rc file
3149
3150         * render/font.c: seems to be better text placement than ever
3151
3152         * render/font.c:
3153         found what seems to be a better vertical offset for the fonts
3154
3155         * kernel/stacking.c: compare it to null like i do elsewhere
3156
3157         * kernel/client.c: code optimization
3158
3159         * kernel/client.c:
3160         when adjusting the trasient lists, set them, dont leave them hanging into space
3161
3162         * kernel/client.c: whitespace
3163
3164         * kernel/dispatch.c: use gnew0 to make life easy
3165
3166         * kernel/plugin.c: use the plugins' plugin_setup_config function
3167
3168         * render/gradient.c: dont render gradients that are missing
3169
3170         * plugins/focus.c, plugins/keyboard/keyboard.c, plugins/mouse/mouse.c, plugins/placement/placement.c, plugins/resistance.c:
3171         add the plugin_setup_config function
3172
3173         * kernel/event.c: kill debug print
3174
3175         * kernel/event.c: handle multiple maprequests graciously
3176
3177         * kernel/screen.c: oops
3178
3179         * kernel/screen.c:
3180         move windows when the number of desktops changes and they arent on a desktop anymore
3181
3182         * kernel/focus.c:
3183         set focus_order back to null on shutdown so g_renew would work
3184
3185         * render/render.c: add more size checks
3186
3187 2003-03-23  woodblock  <woodblock@zed>
3188
3189         * CHANGELOG:
3190         Fix a bug that would put duplicate windows in the workspace menu.
3191
3192 2003-03-23  xor@zed  <xor@zed>
3193
3194         * kernel/openbox.c, kernel/themerc.c, kernel/themerc.h:
3195         rm the themerc stuff
3196
3197         * kernel/Makefile.am: rm themerc.[ch]
3198
3199         * kernel/config.c, kernel/cparse.l: better parsing errors
3200
3201         * kernel/config.c, kernel/config.h: add booleans
3202
3203         * kernel/cparse.l: properly parse comments!
3204         parse booleans
3205
3206         * render/gradient.c: no \n in g_message
3207
3208         * kernel/config.c, kernel/config.h:
3209         add descriptive names and long descriptions to config var def'ns. set these for the kernel config options.
3210
3211 2003-03-22  xor@zed  <xor@zed>
3212
3213         * kernel/config.c, kernel/engine.c, kernel/openbox.c, kernel/plugin.c, kernel/plugin.h:
3214         make the openbox engine use the new config shit instead of the themerc shit.
3215         order te startup so that plugins can set up their config shit before parsing the config, then the config is parsed, engine is loaded, and finally the plugins are officially started.
3216
3217         * kernel/config.c: only load the system rc if the user rc didnt load
3218
3219         * kernel/config.c, kernel/engine.c, kernel/engine.h, kernel/openbox.c:
3220         load the engine out of the config shit. tho the ordering is fucked atm
3221
3222         * kernel/cparse.l: parse lines that start with '#' as comments
3223
3224         * kernel/cparse.l: let identifiers have '.' in them
3225
3226         * kernel/config.c, kernel/cparse.l:
3227         give the filename to the parser for errors
3228
3229         * kernel/cparse.l: remove debug print
3230
3231         * kernel/config.c: yah. fuck
3232
3233         * kernel/config.c: add a check for adding the same exact def'n twice
3234
3235         * kernel/Makefile.am, kernel/config.c, kernel/config.h:
3236         config system fleshed out. many thanks to woodlbock for his code! yay!
3237
3238         * configure.ac: add const and inline checks for the compiler
3239
3240         * kernel/.cvsignore: ignore cparse.c
3241
3242         * kernel/cparse.c: didnt belong
3243
3244         * kernel/Makefile.am, kernel/config.c, kernel/config.h, kernel/cparse.c, kernel/cparse.l, kernel/openbox.c:
3245         start the config system, add the config file parser
3246
3247         * configure.ac: check for stdio.h
3248
3249         * kernel/client.c: asserts in unmanage to try track a crash
3250
3251         * kernel/screen.c: blef
3252
3253         * kernel/action.c, kernel/action.h, kernel/client.c, kernel/client.h, plugins/mouse/mouse.c:
3254         add the client_kill function, and the kill action, and bind it to the middle mouse button on the close button.
3255
3256         * plugins/placement/history.c, plugins/placement/placement.c:
3257         history placement works. loads. saves. woot.
3258
3259         * configure.ac: look for sys/stat.h
3260
3261         * kernel/openbox.c: make the ~/.openbox dir on startup
3262
3263 2003-03-22  woodblock  <woodblock@zed>
3264
3265         * CHANGELOG: Bug fixes from 2_4. Merge point tag 2_4-to-2_3-03-21-2003.
3266
3267 2003-03-22  xor@zed  <xor@zed>
3268
3269         * kernel/client.c, kernel/client.h:
3270         rename the res_name and res_class members to name and class
3271
3272 2003-03-22  woodblock  <woodblock@zed>
3273
3274         * CHANGELOG:
3275         Fixed some more menu lamity, and the infamous xmms focus crash. wunf.
3276
3277 2003-03-21  xor@zed  <xor@zed>
3278
3279         * plugins/mouse/mouse.c: dont raise on client clicks
3280
3281         * data/Makefile.am, data/menu.in: use $(datadir)
3282
3283         * data/Makefile.am: install the menu in $(datadir)
3284         build from $(srcdir)/menu.in
3285
3286         * data/Makefile.am: use the SED command
3287
3288         * kernel/event.c, kernel/openbox.c, kernel/plugin.c, kernel/timer.c, m4/openbox.m4, render/color.c, render/font.c, render/mask.c, render/render.c, render/test.c:
3289         add strict ansi compliance
3290
3291         * configure.ac: find sed
3292
3293         * configure.ac: clean up configure.ac a bit
3294
3295         * configure.ac: rm the c/Makefile
3296
3297         * configure.ac: look for kernel/openbox.c instead of src/main.cc
3298
3299         * render/font.c: include gettext.h from the right place
3300
3301         * kernel/.cvsignore: ignore the openbox3 binary
3302
3303         * kernel/Makefile.am: build 'openbox3' instead of 'ob3'
3304
3305         * kernel/Makefile.am: build the binary called 'openbox3'
3306
3307         * tools/.cvsignore, tools/Makefile.am, tools/obsetroot.cc:
3308         rm the obsetroot tool and the wrap shit from swig
3309
3310         * kernel/client.c, kernel/engine.c, kernel/engine.h:
3311         always adjust the frames size and position together, so there is no more weird resizing before moving and edge flickering when resizing from the top/left
3312
3313         * kernel/screen.c:
3314         dont focus anything in the kernel from showing-the-desktop mode
3315
3316         * plugins/focus.c:
3317         focus windows when entering/leaving enter-the-desktop mode
3318
3319         * plugins/keyboard/keyboard.c: add an xlock binding
3320
3321         * kernel/dispatch.h: better comment for Event_Client_Moving
3322
3323         * kernel/openbox.c: choke on invalid options on the cmd line
3324
3325         * kernel/client.c: dont check for != NULL before freeing. pointless.
3326
3327         * kernel/screen.c: don't check for != NULL before freeing. pointless
3328
3329         * kernel/screen.c: defn vars at the top of funcs
3330
3331         * plugins/placement/placement.c:
3332         dont reposition windows who know what they want
3333
3334         * kernel/client.c, kernel/client.h:
3335         add the client_set_focused function.
3336         make focus state be changed internally immediately after calling the X functions to make it so, basically, assume their success. this elimiates races all over the place with our state vs the server's state.
3337
3338         * kernel/event.c:
3339         use the client_set_focused function when getting FocusIn/Out events
3340
3341         * kernel/focus.c: init the focus_client ptr in startup
3342
3343         * plugins/focus.c: dont focus !normal clients under the mouse
3344
3345         * kernel/screen.c: dont use the client's colormap if it is set to None!
3346
3347         * kernel/Makefile.am, kernel/action.c, kernel/dispatch.c, kernel/dispatch.h, kernel/openbox.c, kernel/snap.c, kernel/snap.h:
3348         add a dispatched event for interactively moving a window.
3349         move window snapping/resistance out of the kernel.
3350         make the action_move dispatch the new event.
3351
3352         * plugins/resistance.c: rm debug print
3353
3354         * plugins/resistance.c: optimization!
3355
3356         * plugins/resistance.c: syntax error!
3357
3358         * plugins/resistance.c: don't snap to non-visibles
3359
3360         * plugins/resistance.c: dont snap to self
3361
3362         * plugins/resistance.c:
3363         rm the edge_resistance option.. just dont load the plugin!
3364
3365         * plugins/focus.c, plugins/placement/placement.c:
3366         make the event function static!
3367
3368         * plugins/Makefile.am, plugins/.cvsignore, plugins/resistance.c:
3369         add a window resistance plugin
3370
3371         * plugins/placement/placement.c: rename event() to place_event()
3372
3373         * kernel/snap.c: snap window-to-window
3374
3375         * plugins/focus.c: focus new windows
3376
3377         * plugins/focus.c: rm debug prints
3378
3379         * kernel/event.c: rm debug print
3380
3381         * kernel/client.c: rm debug prints
3382
3383         * kernel/client.c, kernel/client.h, plugins/focus.c:
3384         rm the focused member from the client struct, it was redundant with the focus_client variable around
3385
3386         * kernel/event.c: update engine last for focus events
3387
3388         * plugins/placement/.cvsignore, plugins/placement/Makefile.am, plugins/placement/history.c, plugins/placement/history.h:
3389         set up the history place stuff's files
3390
3391         * plugins/placement/placement.c: start and stop the history plugin
3392
3393         * kernel/openbox.c:
3394         dont set the restart path to "", load the placement plugin
3395
3396         * plugins/focus.c: dont skip enter events
3397
3398         * .cvsignore, configure.ac, kernel/openbox.c, plugins/Makefile.am, plugins/placement/.cvsignore, plugins/placement/Makefile.am, plugins/placement/placement.c:
3399         add a window placement plugin
3400
3401 2003-03-21  woodblock  <woodblock@zed>
3402
3403         * CHANGELOG: Document unexpandTilde()
3404
3405         * CHANGELOG: Support _NET_WM_STATE_FULLSCREEN
3406
3407         * CHANGELOG: We'll call it 2.4, I guess.
3408
3409         * CHANGELOG: Display titles in the workspace menu as UTF8.
3410
3411 2003-03-20  xor@zed  <xor@zed>
3412
3413         * plugins/focus.c: disable warping on desk switch
3414
3415         * plugins/focus.c: skip events more smarter
3416
3417         * plugins/focus.c: kill all enter events on a desktop switch
3418
3419         * kernel/screen.c: show windows before hiding when switching desktops
3420
3421         * plugins/keyboard/keyboard.c: alt bindings
3422
3423         * plugins/focus.c: skipping the right number of enters now i think
3424
3425         * plugins/focus.c:
3426         skip all enter events for now.. need a clever tactic for this..
3427
3428         * kernel/openbox.c, kernel/openbox.h:
3429         add -help -version -sync and -rc cmd line options
3430
3431         * kernel/Makefile.am: add the binary and urls to the Makefile and -D's
3432
3433         * kernel/geom.h: add RECT_CONTAINS
3434
3435         * kernel/client.c, kernel/client.h:
3436         save decor and functions per client for fullscreening!
3437
3438         * kernel/client.c:
3439         lock the size/position of maximized and fullscreen clients
3440
3441         * plugins/focus.c:
3442         fallback super intelligently with focus when the focused
3443
3444         * kernel/client.c: lock the position/size of maximized windows
3445
3446         * kernel/openbox.c: restart and catch errors appropriately
3447
3448         * kernel/action.c: init the GError to NULL
3449
3450         * kernel/openbox.c: can restart now
3451
3452 2003-03-19  manmower  <manmower@zed>
3453
3454         * render/color.c, render/color.h, render/render.c, render/render.h:
3455         added depth reduction and startup for true color visuals
3456         16bpp should now work
3457
3458 2003-03-19  xor@zed  <xor@zed>
3459
3460         * kernel/openbox.c: restart will work soon
3461
3462         * kernel/client.c: no \n in g_messages
3463
3464         * kernel/event.c: MapRequest needs to activate the window
3465
3466         * plugins/mouse/mouse.c:
3467         dont raise the window on a titlebar drag either
3468
3469         * plugins/mouse/mouse.c: add a drag threshold
3470
3471         * kernel/action.c: snap windows when moving them
3472
3473         * kernel/Makefile.am, kernel/snap.c, kernel/snap.h:
3474         add code for snapping windows to screen edges
3475
3476         * plugins/keyboard/keyboard.c, plugins/mouse/mouse.c:
3477         use the grab.h funcs to grab keys and buttons
3478
3479         * kernel/grab.h: add funcs to grab buttons and keys
3480
3481         * kernel/event.h: export the NumLock and ScrollLock masks
3482
3483         * kernel/event.c: dont need a mask_list here
3484
3485         * kernel/grab.c: grab all lock keys
3486
3487         * plugins/mouse/mouse.c: fewer context lookups
3488
3489         * kernel/event.c: break, dont return
3490
3491         * kernel/event.c: add code to make net_active_window events work
3492
3493         * kernel/action.c, kernel/action.h: add focusraise
3494
3495         * plugins/mouse/mouse.c:
3496         add click on client binding. XAllow when clicking on the client
3497
3498         * kernel/screen.c: put the comment where it belongs
3499
3500         * kernel/screen.c:
3501         on shutdown: destroy the net support window. clear a few more properties we dont want across restart. select NoEventMask on root.
3502
3503         * kernel/focus.c: oops
3504
3505         * kernel/focus.c: destroy the focus_backup
3506
3507         * kernel/screen.c:
3508         erase the openbox_pid hint on the root window when we shutdown
3509
3510         * plugins/focus.c, plugins/mouse/mouse.c:
3511         all the old ob2 mouse bindings are workin
3512
3513         * plugins/mouse/mouse.c: add mbinds for shading windows on the titlebar
3514
3515         * kernel/event.c: ignore !normal crossing events
3516
3517         * plugins/focus.c: simply out the events we dont need no more
3518
3519         * render/render.c: free the right pixel data yay!
3520
3521         * render/render.c: free the pixel data
3522
3523         * kernel/screen.c:
3524         start with 0 desktops, so the focus_order stuff all gets initialized properly
3525
3526         * kernel/focus.c:
3527         the focus_order shit is init'd by the screen_startup setting the number of desktops
3528
3529         * kernel/openbox.c: shutdown everything before closing the display
3530
3531         * render/render.c: can fit on one line
3532
3533         * render/render.c:
3534         initialize texture to NULL if theres no textures. use g_memdup to copy it
3535
3536         * kernel/dispatch.c: comment what funcs is
3537
3538         * kernel/themerc.c: close the channel by unref'ing it
3539
3540         * render/font.c:
3541         kill the const, use g_new instead of malloc, g_free the font in font_close()
3542
3543         * render/font.h: kill the const
3544
3545         * render/font.c: clean up comments regarding alpha
3546
3547         * kernel/client.c:
3548         rm the comments pointer bindings stuff, thats in a plugin now
3549
3550         * kernel/client.c: add new windows to the back of the focus order list
3551
3552         * kernel/client.c, kernel/dispatch.h, kernel/focus.c, kernel/focus.h, kernel/openbox.c, kernel/screen.c, plugins/focus.c:
3553         move the focus_order lists into the kernel
3554
3555         * kernel/action.c, kernel/action.h: add focus actions
3556
3557         * plugins/focus.c: add sloppy focus
3558
3559         * plugins/mouse/mouse.c: end drags
3560
3561         * plugins/mouse/mouse.c: dont clean up nulls
3562
3563         * plugins/keyboard/keyaction.c, plugins/keyboard/keyaction.h:
3564         not using the KeyAction stuff no more
3565
3566         * kernel/action.c, kernel/action.h, kernel/grab.c, plugins/keyboard/Makefile.am, plugins/keyboard/keyboard.c, plugins/keyboard/keyboard.h, plugins/keyboard/translate.c, plugins/keyboard/translate.h, plugins/keyboard/tree.c, plugins/mouse/.cvsignore, plugins/mouse/Makefile.am, plugins/mouse/mouse.c, plugins/mouse/mouse.h, plugins/mouse/translate.c, plugins/mouse/translate.h:
3567         mouse and key bindings plugins work. segfault somewhere still on shutdown
3568
3569         * kernel/openbox.c: reset focus to root before exiting
3570
3571 2003-03-18  xor@zed  <xor@zed>
3572
3573         * plugins/.cvsignore: ignore shit
3574
3575         * configure.ac, plugins/mouse/.cvsignore, plugins/mouse/Makefile.am, plugins/mouse/mouse.c:
3576         add the mouse plugin
3577
3578         * plugins/keyboard/keyboard.c: grab the keyboard not the server!
3579
3580         * plugins/keyboard/keyboard.c: use the grab_server function
3581
3582         * kernel/client.c, kernel/grab.c, kernel/grab.h:
3583         add 'grab_server' for grabbing .. the .. server!
3584
3585         * kernel/Makefile.am, kernel/grab.c, kernel/grab.h, kernel/openbox.c:
3586         provide functions for grabbing and ungrabbing the keyboard and pointer
3587
3588         * plugins/Makefile.am: set the log domain for each plugin properly
3589
3590         * plugins/focus.c:
3591         warp the pointer on a workspace change to the focused window
3592
3593         * kernel/focus.c: kill some whitespace
3594
3595         * kernel/focus.c: kill a comment
3596
3597         * plugins/focus.c: focus fallback works when nothing is focused
3598
3599         * kernel/event.c: dont set the focused client if it's already set
3600
3601         * kernel/focus.c: send the right client for unfocus events
3602
3603         * kernel/focus.c: send unfocus events after focus events
3604
3605         * plugins/Makefile.am: generic domain
3606
3607         * kernel/Makefile.am, kernel/action.c, kernel/action.h, kernel/client.c, kernel/keyboard.c, kernel/openbox.c, kernel/screen.h:
3608         add actions for key/mouse bindings etc
3609
3610         * plugins/keyboard/.cvsignore: add the new objects
3611
3612         * plugins/keyboard/Makefile.am, plugins/keyboard/keyaction.c, plugins/keyboard/keyaction.h, plugins/keyboard/keyboard.c, plugins/keyboard/keyboard.h, plugins/keyboard/translate.c, plugins/keyboard/translate.h, plugins/keyboard/tree.c, plugins/keyboard/tree.h:
3613         keyboard bindings are functional
3614
3615         * configure.ac: dont need process.h, yay glib
3616
3617         * configure.ac: add process.h
3618
3619         * plugins/.cvsignore, plugins/keyboard/.cvsignore: add cvsignores
3620
3621         * configure.ac, kernel/client.c, kernel/client.h, kernel/dispatch.c, kernel/dispatch.h, kernel/engine.c, kernel/focus.c, kernel/openbox.c, kernel/plugin.c, kernel/screen.c, plugins/Makefile.am, plugins/keyboard/Makefile.am, plugins/keyboard/keyboard.c:
3622         add a keyboard plugin
3623
3624         * plugins/focus.c:
3625         focus new windows and focus windows on workspace change
3626
3627         * kernel/Makefile.am, kernel/dispatch.c, kernel/dispatch.h, kernel/engine.c, kernel/engine.h, kernel/openbox.c, kernel/plugin.c, kernel/plugin.h, plugins/Makefile.am, plugins/focus.c:
3628         plugins work.
3629         start a focus plugin.
3630
3631 2003-03-17  xor@zed  <xor@zed>
3632
3633         * render/font.c: dont put \n's at the end of g_message
3634
3635         * kernel/dispatch.c: make sure theres always a client for client events
3636
3637         * kernel/dispatch.h: oops missing a */
3638
3639         * kernel/dispatch.h: fix comments
3640
3641         * kernel/clientwrap.c, kernel/clientwrap.h, kernel/configwrap.c, kernel/configwrap.h, kernel/hooks.c, kernel/hooks.h, kernel/openboxwrap.c, kernel/openboxwrap.h, kernel/python.c, kernel/python.h:
3642         rming almost all the old python stuffs
3643
3644         * kernel/client.c, kernel/dispatch.c, kernel/dispatch.h, kernel/event.c, kernel/focus.c, kernel/openbox.c, kernel/screen.c:
3645         all events are dispatched
3646
3647         * render/font.c: kill the debug print
3648
3649         * plugins/Makefile.am: add the plugins dir
3650
3651         * Makefile.am, configure.ac, kernel/Makefile.am, kernel/client.c, kernel/client.h, kernel/dispatch.c, kernel/dispatch.h, kernel/event.c, kernel/focus.c, kernel/openbox.c:
3652         stop using python internally. add an event dispatcher
3653
3654         * DESIGN/plugins_vs_scripting.txt: kill the timestamps
3655
3656         * DESIGN/plugins_vs_scripting.txt: my rant..
3657
3658         * render/font.c, render/font.h, render/render.c:
3659         pass the x,y,w,h to font_draw.
3660         draw the text in the "right" place for now.. no justification yet
3661
3662         * render/font.c, render/render.h:
3663         measure the font's height instead of listening to Xft
3664
3665         * kernel/event.c: dont skip ungrab corssing events
3666
3667 2003-03-17  manmower  <manmower@zed>
3668
3669         * render/gradient.c, render/gradient.h, render/render.c:
3670         solids should now work with offsets
3671
3672         * render/render.c: more random pokery
3673
3674         * render/render.c: either offsets work, or I've broken lots of things.
3675
3676         * render/render.h, render/test.c:
3677         more changes wrt passing x, y, w, h to render
3678
3679         * render/color.c, render/render.c, render/render.h:
3680         paint gets more parameters
3681
3682         * render/render.h: apparently my variable names were too verbose.
3683
3684         * render/render.h: offsets in planar surfaces
3685
3686 2003-03-17  xor@zed  <xor@zed>
3687
3688         * kernel/hooks.c: declare variables first!
3689
3690         * render/color.c: decalre variables before code!
3691
3692         * kernel/client.c, kernel/client.h:
3693         make client_showhide a static function
3694
3695         * kernel/client.c, kernel/client.h, kernel/screen.c:
3696         speed up workspace switching by causing the minimal number of expose events (none for the hiding windows!)
3697
3698         * kernel/engine.c, kernel/engine.h, kernel/event.c:
3699         give engines mouse event notifications. make the openbox engine display pressed buttons
3700
3701 2003-03-17  manmower  <manmower@zed>
3702
3703         * render/render.h: added justification to textureText
3704
3705 2003-03-17  xor@zed  <xor@zed>
3706
3707         * kernel/themerc.c: pixmap button masks work (hardcoded)
3708
3709         * render/mask.h: dont need those includes no more
3710
3711 2003-03-17  manmower  <manmower@zed>
3712
3713         * render/mask.c, render/mask.h, render/render.c:
3714         in keeping with my tradition of committing untested code, here is the
3715         pixmap mask rendering code ported from the old otk dirs
3716
3717         * render/mask.c, render/mask.h, render/render.h:
3718         move pixmap_mask typedef
3719         add stub for draw_mask
3720
3721 2003-03-17  xor@zed  <xor@zed>
3722
3723         * render/mask.c, render/mask.h: add funcs to create/free pixmap_masks
3724
3725         * render/mask.h: add glib.h for guint
3726
3727         * render/mask.h: include Xlib.h for Pixmap
3728
3729         * render/Makefile.am: add mask.[ch]
3730
3731         * render/mask.c, render/mask.h, render/render.h:
3732         add a struct for pixmap masks
3733
3734 2003-03-17  manmower  <manmower@zed>
3735
3736         * render/render.c: hack so text shows up
3737
3738 2003-03-17  xor@zed  <xor@zed>
3739
3740         * render/render.c:
3741         dont delete the pixmap until after changeing the visible one
3742
3743 2003-03-17  manmower  <manmower@zed>
3744
3745         * render/render.c: add missing include, pass right args to font_draw
3746
3747 2003-03-16  manmower  <manmower@zed>
3748
3749         * render/render.c: malloc.  yeah.
3750
3751 2003-03-16  xor@zed  <xor@zed>
3752
3753         * kernel/openbox.c: will draw fonts when stop segging
3754
3755 2003-03-16  manmower  <manmower@zed>
3756
3757         * render/render.c: copy textures in appearance_copy
3758
3759         * render/render.c: try to render fonts
3760         destroy pixmaps and xftdraws in appearance_delete
3761
3762         * render/render.h: font changes
3763
3764         * render/gradient.c: remove printf and stdio.h
3765
3766         * render/font.c: add font_draw
3767
3768         * render/font.h: add font_draw
3769         move font def'n to render.h
3770
3771 2003-03-16  xor@zed  <xor@zed>
3772
3773         * kernel/Makefile.am, kernel/configwrap.c, kernel/configwrap.h, kernel/openbox.c, kernel/pointer.c:
3774         pointer's variables are config vars
3775
3776 2003-03-16  manmower  <manmower@zed>
3777
3778         * render/Makefile.am: font.h and font.c
3779
3780         * kernel/openbox.c: added font_startup
3781
3782         * render/render.h: filled out font texture
3783
3784         * render/font.c, render/font.h: added some font stuff
3785
3786 2003-03-16  xor@zed  <xor@zed>
3787
3788         * themes/.cvsignore, themes/Makefile.am, Makefile.am, README.CVS, bootstrap, configure.ac, doc/Makefile.am, doc/bsetbg.1, doc/bsetroot.1, doc/openbox.1.in, doc/themerc.txt, kernel/.cvsignore, kernel/Makefile.am, kernel/client.c, kernel/client.h, kernel/clientwrap.c, kernel/clientwrap.h, kernel/engine.c, kernel/engine.h, kernel/event.c, kernel/event.h, kernel/extensions.c, kernel/extensions.h, kernel/focus.c, kernel/focus.h, kernel/frame.c, kernel/frame.h, kernel/geom.h, kernel/gettext.h, kernel/hooks.c, kernel/hooks.h, kernel/keyboard.c, kernel/keyboard.h, kernel/openbox.c, kernel/openbox.h, kernel/openboxwrap.c, kernel/openboxwrap.h, kernel/pointer.c, kernel/pointer.h, kernel/prop.c, kernel/prop.h, kernel/python.c, kernel/python.h, kernel/screen.c, kernel/screen.h, kernel/stacking.c, kernel/stacking.h, kernel/themerc.c, kernel/themerc.h, kernel/timer.c, kernel/timer.h, kernel/xerror.c, kernel/xerror.h, m4/openbox.m4, m4/swig.m4, render/.cvsignore, render/Makefile.am, render/color.c, render/color.h, render/font.c, render/gradient.c, render/gradient.h, render/render.c, render/render.h, render/test.c:
3789         merge the C branch into HEAD
3790
3791         * kernel/openboxwrap.c: add functions for next/previous workspace
3792
3793         * kernel/pointer.c: no segfault with the cleaner code
3794
3795         * kernel/pointer.c: clean up pointer_event a little
3796
3797 2003-03-12  xor@zed  <xor@zed>
3798
3799         * kernel/keyboard.c, render/render.c: blef
3800
3801 2003-03-11  xor@zed  <xor@zed>
3802
3803         * kernel/pointer.c:
3804         fire off pointer events and grabbed events, make work withthe new bindings model
3805
3806 2003-03-08  xor@zed  <xor@zed>
3807
3808         * kernel/keyboard.c: use glib TRUE/FALSE
3809
3810         * kernel/keyboard.c: new keyboard model (the old old one basically..)
3811
3812         * kernel/clientwrap.c: compare 2 clients properly
3813
3814         * kernel/clientwrap.c:
3815         return False when comparing a client to another object type
3816
3817         * kernel/keyboard.c: pass a KeyboardData instead of just the chain
3818
3819         * kernel/keyboard.c: typo in the port to C
3820
3821         * kernel/clientwrap.c: add __eq__ to Client
3822
3823         * kernel/openboxwrap.c: check for desktops out of range
3824
3825         * kernel/client.c:
3826         OMG KILL ME PLZ THAT WAS SO FUCKING STUPID YA LETS USE TRUE AS THE INDEX FUCK YES THATS SO FUCKING BRILLIANT I THINK A MUTINY IS IN ORDER NOW
3827
3828         * kernel/openbox.c: must use a tuple for the argument list
3829
3830         * kernel/clientwrap.c: add the maximized() setMaximized() funcs
3831
3832         * kernel/pointer.c: add the drag threshold
3833
3834         * kernel/clientwrap.c: add Client.close()
3835
3836         * kernel/client.c: keep clients in the right range of desktops
3837
3838         * kernel/client.c: kill debug prints
3839
3840         * kernel/client.c: client_validate should return TRUE sometimes@!(
3841
3842         * kernel/event.c: *** empty log message ***
3843
3844         * kernel/client.c:
3845         position the maximized window so that its client's left edge is at the edge of the screen
3846
3847         * kernel/client.c:
3848         dont resize the client window unless its size changed
3849
3850         * kernel/client.c: dont resize the frame when not needed
3851
3852 2003-03-08  manmower  <manmower@zed>
3853
3854         * render/render.c, render/test.c: solid.
3855
3856 2003-03-08  xor@zed  <xor@zed>
3857
3858         * kernel/openbox.c: start render before the engine
3859
3860 2003-03-08  manmower  <manmower@zed>
3861
3862         * render/gradient.c, render/render.c, render/render.h:
3863         hopefuly pixmap management is improved.
3864
3865         * render/render.c: appearance_copy needs to copy the whole appearance.
3866
3867         * render/render.c: copy the original.  ugh
3868
3869         * render/gradient.c, render/render.c:
3870         fix appearance_copy (check for null colors)
3871
3872         * render/gradient.c, render/render.c, render/render.h:
3873         removed interlace_color
3874         added appearance_copy
3875
3876         * render/gradient.c, render/gradient.h, render/render.c, render/render.h, render/test.c:
3877         removed w,h from surface struct
3878         it is now passed with paint()
3879
3880 2003-03-08  xor@zed  <xor@zed>
3881
3882         * kernel/geom.h: kill an assert.h include
3883
3884 2003-03-07  manmower  <manmower@zed>
3885
3886         * render/render.c: only free it if I allocated it!
3887
3888         * render/render.c: still retarded
3889
3890         * render/render.c, render/test.c: I hate being retarded
3891
3892         * render/color.c:
3893         color_rgb now reflects the actually color, not requested
3894
3895         * render/color.c, render/color.h:
3896         allocate colors on creation, added .pixel to color_rgb
3897
3898         * render/color.c, render/color.h, render/render.c, render/test.c:
3899         added color_free, made appearance_free use it
3900
3901 2003-03-07  xor@zed  <xor@zed>
3902
3903         * render/color.h: add include for GC
3904
3905         * kernel/Makefile.am: use librender.a
3906
3907         * render/Makefile.am: make a librender.a
3908
3909 2003-03-07  manmower  <manmower@zed>
3910
3911         * render/color.c, render/color.h, render/gradient.c, render/render.c, render/render.h, render/test.c:
3912         added color new/destroy
3913         made color_rgbs in appearance into pointers
3914         updated the rest to follow
3915
3916 2003-03-07  xor@zed  <xor@zed>
3917
3918         * configure.ac: look for ctype.h for toupper
3919
3920         * kernel/themerc.c: use g_build_filename!
3921
3922         * kernel/themerc.c: dont need to check for path being set now
3923
3924         * kernel/engine.c, kernel/openbox.c, kernel/python.c, kernel/themerc.c:
3925         use g_build_filename properly, gotta pass a NULL at the end
3926
3927         * kernel/event.c:
3928         wait for the time until the next timer if there is a timer pending
3929
3930         * kernel/timer.c: if a callback fires, set the wait time to 0
3931
3932         * kernel/Makefile.am: add the render/color.o
3933
3934         * kernel/timer.c: oops stupid c++ iterators messing with me
3935
3936         * kernel/timer.c, kernel/timer.h: New file.
3937
3938         * kernel/Makefile.am, kernel/timer.c, kernel/timer.h: add timers
3939
3940         * kernel/themerc.c: fucked up an error message
3941
3942 2003-03-07  manmower  <manmower@zed>
3943
3944         * render/render.c: XDestroyImage, not Xfree.  stop memleak
3945
3946 2003-03-07  xor@zed  <xor@zed>
3947
3948         * configure.ac: check for sys/time.h
3949
3950 2003-03-07  manmower  <manmower@zed>
3951
3952         * render/color.c, render/color.h, render/font.c: New file.
3953
3954         * render/Makefile.am, render/color.c, render/color.h, render/font.c, render/gradient.c, render/gradient.h, render/render.c, render/render.h, render/test.c:
3955         it was broken before, it is broken now.
3956
3957 2003-03-07  xor@zed  <xor@zed>
3958
3959         * kernel/engine.c, kernel/python.c, kernel/themerc.c:
3960         build paths properly, and get the home dir properly
3961
3962         * render/test.c: enum changed
3963
3964 2003-03-07  manmower  <manmower@zed>
3965
3966         * render/render.c, render/render.h: added appearance_new/free
3967         changed assert to g_assert
3968         changed enum and struct names to be friendlier
3969
3970 2003-03-07  xor@zed  <xor@zed>
3971
3972         * doc/themerc.txt: add a full example
3973
3974         * doc/themerc.txt: New file.
3975
3976         * doc/themerc.txt: add a doc for the themerc file
3977
3978         * kernel/engine.c, kernel/engine.h, kernel/openbox.c, kernel/themerc.c, kernel/themerc.h:
3979         load the font and titlebarlayout from the themerc
3980
3981         * configure.ac, m4/openbox.m4, m4/swig.m4:
3982         kill old swig shit for the build system. rm the endian check, glib does this
3983
3984         * m4/openbox.m4: dont set crazy mipspro flags.. this is C not C++!
3985
3986         * kernel/themerc.c: read home dir in the right order n shi
3987
3988         * kernel/themerc.c: read the file out of the homedir first
3989
3990         * kernel/themerc.c: print warnings for redefines in the themerc
3991
3992         * kernel/openbox.c, kernel/themerc.c, kernel/themerc.h:
3993         themerc gets parsed
3994
3995         * kernel/themerc.c, kernel/themerc.h: New file.
3996
3997         * kernel/Makefile.am, kernel/engine.c, kernel/engine.h, kernel/openbox.c, kernel/python.c, kernel/themerc.c, kernel/themerc.h:
3998         load the engine before the python
3999
4000         * kernel/client.c: fire the visible hook when requested
4001
4002         * kernel/engine.c, kernel/engine.h, kernel/openbox.c:
4003         rm the engine interface from the python
4004
4005         * kernel/pointer.c: dont let invalid contexts through
4006
4007         * Makefile.am: build render before kernel
4008
4009 2003-03-07  manmower  <manmower@zed>
4010
4011         * render/render.c, render/render.h, render/test.c:
4012         removed a bunch of stuff that the rest of ob3 already does for us
4013         renamed a couple of functions to match the rest of ob3's style
4014
4015 2003-03-07  xor@zed  <xor@zed>
4016
4017         * kernel/client.c: map withdrawn/dock apps
4018
4019         * kernel/Makefile.am: link the .o's instead of building them again
4020
4021 2003-03-06  xor@zed  <xor@zed>
4022
4023         * kernel/openbox.c: startup/shutdown the render stuff
4024
4025         * kernel/Makefile.am: build in the render/ sources
4026
4027         * themes/.cvsignore: New file.
4028
4029         * themes/.cvsignore: ignore new shit
4030
4031         * configure.ac: openbox engine loads a style, well, opens one
4032
4033         * kernel/event.c: catch xkb bell events, fire the hook
4034
4035         * themes/Makefile.am: New file.
4036
4037         * Makefile.am, configure.ac, themes/Makefile.am:
4038         add themes for the openbox engine
4039
4040         * kernel/engine.c: clean up messages
4041
4042         * kernel/engine.c: dont save the internal char*'s
4043
4044         * kernel/pointer.c: allow any context
4045
4046         * render/Makefile.am: render/ doesnt need the locale or script dir
4047
4048         * render/Makefile.am: link in xft and find its headers
4049
4050         * kernel/Makefile.am: link in Xft
4051
4052         * kernel/client.c, kernel/client.h, kernel/screen.c, kernel/stacking.h:
4053         show and hide windows in the order to cause the least expose events
4054
4055         * configure.ac, kernel/Makefile.am, kernel/client.c, kernel/clientwrap.c, kernel/engine.c, kernel/engine.h, kernel/event.c, kernel/frame.c, kernel/frame.h, kernel/pointer.c, kernel/stacking.c:
4056         openbox engine works, fuck this tabs shit
4057
4058 2003-03-05  xor@zed  <xor@zed>
4059
4060         * kernel/pointer.c: kill bad return
4061
4062         * kernel/client.c, kernel/clientwrap.c, kernel/frame.c, kernel/frame.h, kernel/pointer.c, kernel/stacking.c:
4063         engines n shit
4064
4065         * kernel/engine.c:
4066         staticify these vars.. they were causing a SIGILL..???!!? i blame gcc..
4067
4068 2003-03-04  xor@zed  <xor@zed>
4069
4070         * kernel/client.c, kernel/engine.c, kernel/engine.h, kernel/event.c, kernel/frame.h, kernel/pointer.c, kernel/stacking.c:
4071         allow a frame to have multiple top-level windows. provide functions for getting a clients parent, and all of a frames top-level windows.
4072
4073         * kernel/engine.c, kernel/engine.h: New file.
4074
4075         * configure.ac, kernel/Makefile.am, kernel/client.c, kernel/clientwrap.c, kernel/engine.c, kernel/engine.h, kernel/event.c, kernel/frame.c, kernel/frame.h, kernel/openbox.c, kernel/pointer.c:
4076         make the pwm engine "work", however we have a race on startup..
4077
4078         * kernel/Makefile.am: add the enginedir
4079
4080         * kernel/pointer.c: generate release events for client clicks
4081
4082         * kernel/pointer.c:
4083         XAllowEvents when we get one with the client context
4084
4085         * kernel/frame.c: plate is the client context
4086
4087         * kernel/pointer.c: dont let 3 clicks be 2 double clicks
4088
4089         * kernel/hooks.c: kill debug prints
4090
4091         * Makefile.am, configure.ac: add dirs for engines
4092
4093         * configure.ac: kill these dirs not using them
4094
4095 2003-03-04  manmower  <manmower@zed>
4096
4097         * render/.cvsignore: New file.
4098
4099         * render/.cvsignore:
4100         THIS IS MY LOG FILE ENTRY. THERE ARE MANY LIKE IT BUT THIS ONE IS MINE.
4101
4102         * Makefile.am: added render dir
4103
4104         * configure.ac: Added the render directory
4105
4106 2003-03-04  xor@zed  <xor@zed>
4107
4108         * kernel/frame.c: kill debug prints
4109
4110 2003-03-04  manmower  <manmower@zed>
4111
4112         * render/Makefile.am, render/gradient.c, render/gradient.h, render/render.c, render/render.h, render/test.c:
4113         New file.
4114
4115         * render/Makefile.am, render/gradient.c, render/gradient.h, render/render.c, render/render.h, render/test.c:
4116         the beginning of the new rendering stuff.
4117
4118 2003-03-04  xor@zed  <xor@zed>
4119
4120         * kernel/frame.c: highlight the focused window
4121
4122         * kernel/pointer.c: cleanuo
4123
4124         * kernel/hooks.c: let hook functions remove themselves
4125
4126         * README.CVS: no mor swig, using C, etc.
4127
4128         * kernel/pointer.c:
4129         some cleanups/reordering. get those events going right.
4130
4131 2003-03-03  xor@zed  <xor@zed>
4132
4133         * kernel/pointer.c: grab all the requested grabs
4134
4135         * kernel/pointer.c: pass along the client's area including the frame!
4136
4137         * kernel/clientwrap.c, kernel/pointer.c: pointer events work for real
4138
4139         * kernel/event.c, kernel/pointer.c, kernel/pointer.h:
4140         pointer events should work
4141
4142         * kernel/keyboard.c, kernel/keyboard.h, kernel/pointer.c, kernel/pointer.h:
4143         New file.
4144
4145         * kernel/Makefile.am, kernel/client.c, kernel/event.c, kernel/hooks.c, kernel/hooks.h, kernel/kbind.c, kernel/kbind.h, kernel/keyboard.c, kernel/keyboard.h, kernel/mbind.c, kernel/mbind.h, kernel/openbox.c, kernel/pointer.c, kernel/pointer.h:
4146         keyboard events work
4147
4148         * kernel/python.c: create the 'input' module
4149
4150         * kernel/clientwrap.c, kernel/openboxwrap.c: add the constants
4151
4152         * kernel/openbox.c, kernel/prop.c, kernel/prop.h:
4153         s/prop_init/prop_startup/
4154
4155         * kernel/Makefile.am, kernel/client.c, kernel/client.h, kernel/clientwrap.c, kernel/clientwrap.h, kernel/event.c, kernel/focus.c, kernel/frame.c, kernel/hooks.c, kernel/hooks.h, kernel/openbox.c, kernel/openbox.h, kernel/openboxwrap.c, kernel/openboxwrap.h, kernel/prop.c, kernel/prop.h, kernel/python.c:
4156         Client and Openbox python objects "done"
4157
4158         * kernel/clientwrap.c, kernel/clientwrap.h, kernel/openboxwrap.c, kernel/openboxwrap.h:
4159         New file.
4160
4161 2003-03-02  xor@zed  <xor@zed>
4162
4163         * kernel/client.c: typecast to get the proper aspect ratio
4164
4165 2003-02-28  xor@zed  <xor@zed>
4166
4167         * kernel/Makefile.am: New file.
4168
4169         * Makefile.am, kernel/.cvsignore, kernel/Makefile.am:
4170         add shit that was missing
4171
4172 2003-02-27  xor@zed  <xor@zed>
4173
4174         * kernel/.cvsignore: New file.
4175
4176         * kernel/.cvsignore: add the cvsignore
4177
4178         * kernel/client.c, kernel/client.h, kernel/event.c, kernel/event.h, kernel/extensions.c, kernel/extensions.h, kernel/focus.c, kernel/focus.h, kernel/frame.c, kernel/frame.h, kernel/geom.h, kernel/gettext.h, kernel/hooks.c, kernel/hooks.h, kernel/kbind.c, kernel/kbind.h, kernel/mbind.c, kernel/mbind.h, kernel/openbox.c, kernel/openbox.h, kernel/prop.c, kernel/prop.h, kernel/python.c, kernel/python.h, kernel/screen.c, kernel/screen.h, kernel/stacking.c, kernel/stacking.h, kernel/xerror.c, kernel/xerror.h:
4179         New file.
4180
4181         * kernel/client.c, kernel/client.h, kernel/event.c, kernel/event.h, kernel/extensions.c, kernel/extensions.h, kernel/focus.c, kernel/focus.h, kernel/frame.c, kernel/frame.h, kernel/geom.h, kernel/gettext.h, kernel/hooks.c, kernel/hooks.h, kernel/kbind.c, kernel/kbind.h, kernel/mbind.c, kernel/mbind.h, kernel/openbox.c, kernel/openbox.h, kernel/prop.c, kernel/prop.h, kernel/python.c, kernel/python.h, kernel/screen.c, kernel/screen.h, kernel/stacking.c, kernel/stacking.h, kernel/xerror.c, kernel/xerror.h:
4182         add the 'kernel' based on what's in c/. improved the Hook class for the hooks python module.
4183
4184         * Makefile.am, bootstrap, configure.ac, doc/Makefile.am:
4185         updated interface completed hooks and keyboard/pointer
4186
4187 2003-02-24  xor@zed  <xor@zed>
4188
4189         * doc/bsetbg.1, doc/bsetroot.1, doc/openbox.1.in: old out-of-date files
4190
4191 2003-02-22  xor@zed  <xor@zed>
4192
4193         * configure.ac: rm the swig shit
4194
4195         * configure.ac: fixups
4196
4197         * m4/openbox.m4: got my warnings i want
4198
4199         * m4/openbox.m4:
4200         python events en masse!! also, make it look for GCC not GXX now..
4201
4202 2003-02-21  xor@zed  <xor@zed>
4203
4204         * configure.ac, m4/openbox.m4: new smarts for swig
4205
4206         * Makefile.am, configure.ac, m4/openbox.m4:
4207         setup autotools build for C shit
4208
4209 2003-02-19  xor@zed  <xor@zed>
4210
4211         * AUTHORS: nick's no longer the site designer
4212
4213         * README: add mention of being OSI Certified Open Source Software
4214
4215         * CHANGELOG: add mention of the new es_AR translations
4216
4217 2003-02-16  xor@zed  <xor@zed>
4218
4219         * CHANGELOG: add the new german translations
4220
4221         * tools/obsetroot.cc: rm the warnings for now
4222
4223 2003-02-14  xor@zed  <xor@zed>
4224
4225         * tools/Makefile.am, tools/obsetroot.cc, Makefile.am, configure.ac, tools/.cvsignore:
4226         Add the "obsetroot" tool. Use it to set the root background.
4227
4228         * configure.in: call CHECK_FUNCS in C mode
4229
4230 2003-02-11  xor@zed  <xor@zed>
4231
4232         * .cvsignore: add ABOUT-NLS
4233
4234         * tests/.cvsignore: add the icons app
4235
4236         * tests/icons.c, tests/icons.cpp: make the icons program a C app.
4237
4238         * tests/icons.cpp: add an app to display the icons for a window
4239
4240 2003-02-10  xor@zed  <xor@zed>
4241
4242         * configure.in: require autoconf 2.5x
4243
4244 2003-02-09  xor@zed  <xor@zed>
4245
4246         * README.CVS: mention that 2.9x is not supported
4247
4248         * configure.ac: use the c++ std cheaders
4249
4250 2003-02-06  xor@zed  <xor@zed>
4251
4252         * AUTHORS: move marius from active developers to contributors :\
4253
4254         * Makefile.am, data/Makefile.am:
4255         make "make dist" work, compiler flags cleanups
4256
4257 2003-02-06  woodblock  <woodblock@zed>
4258
4259         * configure.in: Back port fixes from TESTING branch
4260
4261         * CHANGELOG: Updated changelog for 2.2.4 release
4262
4263 2003-02-05  xor@zed  <xor@zed>
4264
4265         * ABOUT-NLS, INSTALL, Makefile.am: rm this thing
4266
4267         * configure.ac, data/Makefile.am, doc/Makefile.am, m4/swig.m4, m4/x11.m4:
4268         new swig build system. much better. yay.
4269
4270         * README.CVS: you need swig at least 1.3.14
4271
4272         * README.CVS: require automake 1.7.1 for py-compile
4273
4274         * Makefile.am, configure.ac: dont make wrap a subdir of otk
4275
4276         * m4/openbox.m4: give output when building a cvs release
4277
4278         * configure.ac, m4/python.m4:
4279         move the otk swig module into its own lib/directory
4280
4281         * .cvsignore: add py-compile
4282
4283         * doc/doxygen/.cvsignore: ignore the latex dir
4284
4285         * README.CVS: mention the swig wrapper warnings
4286
4287         * doc/doxygen/Makefile.am, doc/doxygen/comments, doc/doxygen/doxygen.conf.in:
4288         add latex to the doc build process. fix namespace comments again.
4289
4290         * doc/doxygen/comments: fix up the otk description
4291
4292         * CHANGELOG.Blackbox, CHANGELOG.bsetbg, README.bbtools, README.bsetbg:
4293         remove docs from old blackbox
4294
4295         * doc/doxygen/doxygen.conf.in: ignore the wrappers
4296
4297         * doc/doxygen/doxygen.conf: not needed, the .in is commited
4298
4299 2003-02-04  woodblock  <woodblock@zed>
4300
4301         * CHANGELOG: updated changelog
4302
4303 2003-02-03  woodblock  <woodblock@zed>
4304
4305         * doc/openbox.1.in: documentation update
4306
4307         * doc/openbox.1.in: update documentation
4308
4309         * CHANGELOG, configure.in: Version bump
4310
4311 2003-02-03  xor@zed  <xor@zed>
4312
4313         * tests/.cvsignore: ignore the bins
4314
4315         * tests/Makefile, tests/aspect.c, tests/fullscreen.c, tests/grav.c, tests/modal.c, tests/modal2.c, tests/modal3.c, tests/urgent.c:
4316         add some tests
4317
4318 2003-02-03  woodblock  <woodblock@zed>
4319
4320         * CHANGELOG: Updated changelog for shaded window bug fix
4321
4322 2003-02-01  xor@zed  <xor@zed>
4323
4324         * README.CVS: add comment for configuration
4325
4326 2003-02-01  woodblock  <woodblock@zed>
4327
4328         * CHANGELOG: Fixed the image cache when dealing with borders.
4329
4330 2003-02-01  xor@zed  <xor@zed>
4331
4332         * README.CVS: note about automake
4333
4334 2003-01-29  xor@zed  <xor@zed>
4335
4336         * configure.ac: check for endian order
4337
4338         * po/POTFILES.in: update the list of src files with translations.
4339
4340         * data/Makefile.am: include shit in the dist
4341
4342         * doc/Makefile.am: include the openbox.1.in in the dist
4343
4344         * Makefile.am: remove LICENSE from the dist files
4345
4346         * doc/doxygen/Makefile.am: make the echo more noticable
4347
4348         * doc/doxygen/Makefile.am: make pwd work
4349
4350         * doc/doxygen/Makefile.am:
4351         echo a message about where to find the generated docs
4352
4353         * doc/doxygen/doxygen.conf: add the doxygen configuration
4354
4355         * README.CVS: give the debian pkg names
4356
4357 2003-01-28  xor@zed  <xor@zed>
4358
4359         * README.CVS: add version for automake
4360
4361 2003-01-27  xor@zed  <xor@zed>
4362
4363         * README.CVS: use a built-in module to replace libswigpy
4364
4365 2003-01-24  xor@zed  <xor@zed>
4366
4367         * DESIGN/glue.dia:
4368         add some design ideas for a glue layer between the wm and the scripts
4369
4370         * README.CVS: add all teh steps
4371
4372         * README.CVS: add instructions for CVS compiling
4373
4374 2003-01-22  xor@zed  <xor@zed>
4375
4376         * m4/openbox.m4: REMOVE -fno-rtti. we use that!
4377
4378         * m4/openbox.m4: -fno-rtti as in cxxflags too!
4379
4380         * m4/openbox.m4: fix the stupid spelling
4381
4382         * m4/openbox.m4: add -fno-check-new -fno-execptions to the g++ cxxflags
4383
4384 2003-01-20  xor@zed  <xor@zed>
4385
4386         * DESIGN/render.dia: remove the XImage from Surface
4387
4388         * AUTHORS: new authors. this is how we dooo iiiit...
4389
4390 2003-01-18  xor@zed  <xor@zed>
4391
4392         * DESIGN/ob3arch.png, DESIGN/render.dia, DESIGN/roadmap, DESIGN/thoughts:
4393         add DESIGN from the openbox3 repository. add to that the render.dia, a design diagram for the new render code
4394
4395 2003-01-17  xor@zed  <xor@zed>
4396
4397         * README: state the license. killall the old readme data
4398
4399 2003-01-16  xor@zed  <xor@zed>
4400
4401         * m4/python.m4: use -export-dynamic when linking libpython.a
4402
4403 2003-01-14  xor@zed  <xor@zed>
4404
4405         * m4/x11.m4: add comment
4406
4407         * m4/x11.m4: check for XftGetVersion
4408
4409         * configure.ac: rm the util directory
4410
4411 2003-01-13  xor@zed  <xor@zed>
4412
4413         * m4/openbox.m4: keep the asserts for !debug builds..
4414
4415         * configure.ac: begin conversion to ustring. add some more members.
4416
4417 2003-01-12  xor@zed  <xor@zed>
4418
4419         * LICENSE: omg im relicensing this shit as gpl. nobody hurt me.
4420
4421         * m4/python.m4: dont show find errors
4422
4423         * CHANGELOG: my utf shit for the titlebars and toolbar
4424
4425 2003-01-11  xor@zed  <xor@zed>
4426
4427         * configure.ac: rm a blank line at the end
4428
4429         * configure.ac: add some more AC stuff
4430
4431         * m4/python.m4: used old vars
4432
4433         * m4/openbox.m4: caps
4434
4435         * configure.ac, m4/openbox.m4:
4436         caps for giving the build target. show it at the end
4437
4438         * configure.ac: better ordering.. define te version before using it
4439
4440         * m4/openbox.m4: check for cvs in the version properly
4441
4442         * configure.ac: no caps in the package name!
4443
4444         * m4/openbox.m4: cvs builds are always debug
4445
4446         * m4/python.m4: use the right lib
4447
4448         * m4/openbox.m4, m4/python.m4, m4/x11.m4:
4449         my newer better autoconf functions. woowoo
4450
4451         * m4/.cvsignore: adding my autoconf functions. woowoo
4452
4453         * .cvsignore, bootstrap, configure.ac, version.h.in:
4454         new autoconf shit woowoo
4455
4456         * m4/x11.m4: add X_DEVEL and XFT_DEVEL m4 functions
4457
4458         * m4/openbox.m4: create OB_DEBUG and OB_COMPILER_FLAGS m4 functionc
4459
4460         * m4/python.m4: check for the python cflags and libs
4461
4462 2003-01-09  xor@zed  <xor@zed>
4463
4464         * configure.ac: use default prefix.
4465         better python library checks.
4466
4467 2003-01-04  xor@zed  <xor@zed>
4468
4469         * Makefile.am, configure.ac, data/Makefile.am, doc/Makefile.am:
4470         add buttons to the tree.rm stupid comments in Makefile.ams
4471
4472         * doc/Makefile.am, doc/xftlsfonts.1: rm the xftlsfonts manpage
4473
4474         * CHANGELOG: add proper whitespace
4475
4476         * configure.ac: line up text in --help
4477
4478 2003-01-04  manmower  <manmower@zed>
4479
4480         * configure.ac: Check for XKB extension
4481
4482 2003-01-01  woodblock  <woodblock@zed>
4483
4484         * CHANGELOG: Documented sendToWorkspace addition
4485
4486 2002-12-28  xor@zed  <xor@zed>
4487
4488         * bootstrap: add --force for autopoint
4489
4490 2002-12-26  xor@zed  <xor@zed>
4491
4492         * .cvsignore, po/.cvsignore: add newish stuff
4493
4494         * Makefile.am, bootstrap, configure.ac: better support for gettext
4495
4496         * config.rpath: removing generated file
4497
4498         * bootstrap: add gettextize here
4499
4500         * po/Makevars: readd Makevars
4501
4502         * po/LINGUAS, po/Makefile.in.in, po/Makevars, po/Makevars.template, po/Rules-quot, po/boldquot.sed, po/en@boldquot.header, po/en@quot.header, po/insert-header.sin, po/quot.sed, po/remove-potcdate.sin:
4503         remove shit generated by gettextize
4504
4505         * m4/.cvsignore, m4/Makefile.am, m4/codeset.m4, m4/gettext.m4, m4/glibc21.m4, m4/iconv.m4, m4/intdiv0.m4, m4/inttypes-pri.m4, m4/inttypes.m4, m4/inttypes_h.m4, m4/isc-posix.m4, m4/lcmessage.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4, m4/progtest.m4, m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4:
4506         make bootstrap generate this shit
4507
4508 2002-12-25  xor@zed  <xor@zed>
4509
4510         * configure.ac: conflicts with python too :\
4511
4512         * configure.ac:
4513         no -pedantic :\ it fucks up on the python headers. sigh.
4514
4515         * configure.ac: set CXXFLAGS better
4516
4517         * Makefile.am, configure.ac:
4518         global python scripts. client motion/resizing is all done via python now
4519
4520 2002-12-24  xor@zed  <xor@zed>
4521
4522         * configure.ac: python. no more guile. python.
4523
4524         * CHANGELOG: add changelog for the netwm iconic windows bugfix
4525
4526         * configure.in: up version for next release
4527
4528 2002-12-23  xor@zed  <xor@zed>
4529
4530         * configure.ac: using python and swig for now.
4531
4532 2002-12-19  xor@zed  <xor@zed>
4533
4534         * configure.ac: python has begun!
4535
4536         * configure.ac: check for python. not for guile.
4537
4538 2002-12-18  xor@zed  <xor@zed>
4539
4540         * configure.ac: guileize
4541
4542         * .cvsignore: add stuff i rm'd from cvs
4543
4544         * doc/doxygen/comments: erm
4545
4546 2002-12-13  xor@zed  <xor@zed>
4547
4548         * Makefile.am: dist the bootstrap file for package maintainers
4549
4550 2002-12-11  xor@zed  <xor@zed>
4551
4552         * mkinstalldirs: autogenned
4553
4554         * bootstrap: add --copy
4555
4556         * install-sh, missing: autogenned
4557
4558         * install-sh, missing, mkinstalldirs: this is genned bya automake
4559
4560 2002-12-10  xor@zed  <xor@zed>
4561
4562         * CHANGELOG: fix for installation of pl locale
4563
4564         * configure.in: up the version
4565
4566 2002-12-09  xor@zed  <xor@zed>
4567
4568         * CHANGELOG: work when strftime is not found
4569
4570 2002-12-08  xor@zed  <xor@zed>
4571
4572         * doc/Makefile.am:
4573         dont install the xftlsfonts manpage if we didnt build xftlsfonts
4574
4575 2002-12-07  xor@zed  <xor@zed>
4576
4577         * .cvsignore: add depcomp
4578
4579         * Makefile.am: include depcomp in make dist
4580
4581         * bootstrap: copy, dont link
4582
4583         * configure.in: 2.2.2 release
4584
4585 2002-12-03  xor@zed  <xor@zed>
4586
4587         * configure.ac: better xft checks. require xft version 2
4588
4589         * configure.in: reset the xft flags if it fails
4590
4591         * configure.in: link in xft only where appropriate
4592
4593         * configure.in: restore the CXXFLAGS/LIBS
4594
4595         * configure.in: more verbose, and better checks for Xft version 2/1
4596
4597         * configure.in:
4598         better checks for Xft version 2/1 and more verbose warning if it fails
4599
4600         * po/POTFILES.in: xft2 works. and works good.
4601
4602 2002-11-28  xor@zed  <xor@zed>
4603
4604         * CHANGELOG: change grammar or somesuch..
4605
4606 2002-11-28  woodblock  <woodblock@zed>
4607
4608         * CHANGELOG:
4609         Added an option to disable the window raise on alt-click. fonk.
4610
4611 2002-11-26  xor@zed  <xor@zed>
4612
4613         * configure.in: had an extra ; that snuck in. i blame the commies
4614
4615 2002-11-20  xor@zed  <xor@zed>
4616
4617         * data/Makefile.am:
4618         addd more stuff to EXTRA_DIST. all the headers for instance
4619
4620         * Makefile.am, doc/Makefile.am:
4621         add EXTRA_DIST tags all over to make 'make dist' possible
4622
4623         * CHANGELOG: doc the change in configure for xft2
4624
4625         * CHANGELOG, configure.in, data/Makefile.am:
4626         add bitmap buttons, and put support for them in all the default styles
4627
4628         * configure.in: fix the []'s in the outputs
4629
4630         * CHANGELOG: fix menu redraw bug for real
4631
4632         * CHANGELOG: fix the mozilla crash from the default premax being 0
4633
4634 2002-11-19  xor@zed  <xor@zed>
4635
4636         * .cvsignore: more ignore fodder
4637
4638 2002-11-15  xor@zed  <xor@zed>
4639
4640         * configure.in: cleaner
4641
4642 2002-11-14  xor@zed  <xor@zed>
4643
4644         * bootstrap: add libtoolize
4645
4646 2002-11-13  xor@zed  <xor@zed>
4647
4648         * CHANGELOG: fix for windows changing from non-resizable to resizable
4649
4650         * CHANGELOG: add fix for clients making themselves resizable
4651
4652 2002-11-11  xor@zed  <xor@zed>
4653
4654         * configure.ac: mad wicked xft checks
4655
4656         * configure.ac: look for xft
4657
4658         * configure.in: do tests using c++
4659
4660         * configure.in: dont build xftlsfonts when no xft found or xft2 found
4661
4662         * configure.in: support for Xft2!
4663
4664 2002-11-10  xor@zed  <xor@zed>
4665
4666         * po/POTFILES.in: cleanups.
4667         OBScreen almost ready for some action
4668
4669         * configure.ac: support for the shape extension works!
4670
4671 2002-11-07  xor@zed  <xor@zed>
4672
4673         * bootstrap: reverse the automake/autoconf order.. for fun
4674
4675 2002-11-06  xor@zed  <xor@zed>
4676
4677         * doc/openbox.1.in: s/@VERSION@/@version@/
4678
4679         * doc/openbox.1.in: s/@VERSION@/@version/
4680
4681         * po/POTFILES.in: moving strut into its own .hh. adding OBClient class
4682
4683 2002-11-05  xor@zed  <xor@zed>
4684
4685         * doc/doxygen/Makefile.am, doc/doxygen/comments, doc/doxygen/doxygen.conf.in:
4686         updated doxygen documentation
4687
4688         * doc/openbox.1.in: make urls bold
4689
4690         * doc/openbox.1.in:
4691         fixes for menu doc. we dont have a menuFile in the rc anymore!
4692         also fix urls
4693
4694         * doc/openbox.1.in: fix so url shows up
4695
4696         * doc/openbox.1.in:
4697         we dont have menuFormat in the resource file anymore
4698
4699 2002-11-04  xor@zed  <xor@zed>
4700
4701         * doc/doxygen/doxygen.conf.in: make doxygen skip stuff inside
4702         #ifndef DOXYGEN_IGNORE
4703         #endif
4704         blocks
4705
4706         * doc/doxygen/doxygen.conf.in: documenting classes!
4707
4708         * doc/doxygen/doxygen.conf.in, doc/doxygen/style.css:
4709         not using a custom stlyesheet anymore
4710
4711         * Makefile.am, TODO, configure.ac, doc/Makefile.am, doc/doxygen/.cvsignore, doc/doxygen/Makefile.am, doc/doxygen/doxygen.conf.in, doc/doxygen/style.css:
4712         add doxygen to the project. 'make doc' builds the doxygen stuff. you need doxygen and graphviz installed to generate it properly
4713
4714 2002-11-03  xor@zed  <xor@zed>
4715
4716         * CHANGELOG, configure.in:
4717         stop using the Utf8 functions for drawing Xft fonts
4718
4719         * CHANGELOG, configure.in:
4720         stop using the Xft Utf8 functions. They break the non-english locales.
4721
4722         * CHANGELOG: typo-typo
4723
4724         * CHANGELOG: typo
4725
4726         * Makefile.am:
4727         new timer infrastructure. takes a function pointer for the timeout, with a void* parameter (useful for holding a class instance!)
4728
4729         * po/POTFILES.in:
4730         WE DONT USE BASE DISPLAY FOR ANYTHING ANY MORE!!@^!*@*!! YAY
4731
4732 2002-11-02  xor@zed  <xor@zed>
4733
4734         * TODO: updated with goals for 3.0
4735
4736         * Makefile.am: not using admin/ dir anymore
4737
4738         * mkinstalldirs, po/.cvsignore: stupid stuff
4739
4740 2002-11-01  xor@zed  <xor@zed>
4741
4742         * configure.ac: put 'cvs' in the version tag
4743
4744         * m4/.cvsignore, po/.cvsignore: add cvs ignores for the new dirs
4745
4746         * m4/Makefile, m4/Makefile.in, Makefile.am, configure.ac, mkinstalldirs:
4747         make gettext better. updates for autoconf
4748
4749         * m4/Makefile, po/LINGUAS: dont have any languages yet
4750
4751         * ABOUT-NLS, COPYING, configure.ac: add some text files..
4752         dont have our own libintl
4753
4754         * Makefile.am, config.rpath, configure.ac, m4/Makefile, m4/Makefile.am, m4/Makefile.in, m4/codeset.m4, m4/gettext.m4, m4/glibc21.m4, m4/iconv.m4, m4/intdiv0.m4, m4/inttypes-pri.m4, m4/inttypes.m4, m4/inttypes_h.m4, m4/isc-posix.m4, m4/lcmessage.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4, m4/progtest.m4, m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4, mkinstalldirs, po/LINGUAS, po/Makefile.in.in, po/Makevars, po/Makevars.template, po/POTFILES.in, po/Rules-quot, po/boldquot.sed, po/en@boldquot.header, po/en@quot.header, po/insert-header.sin, po/quot.sed, po/remove-potcdate.sin:
4755         add gettext
4756         change CXXFLAGS back to CPPFLAGS in the .am's
4757
4758         * configure.ac: update configure.ac to newer rules
4759
4760         * .cvsignore: libtool stuff
4761
4762 2002-11-01  marius  <marius@zed>
4763
4764         * configure.ac: toolkit addition
4765
4766         * Makefile.am: changed for toolkit
4767
4768 2002-11-01  xor@zed  <xor@zed>
4769
4770         * install-sh, missing, mkinstalldirs:
4771         these files are generated by bootstrap
4772
4773         * CHANGELOG, configure.in: merge in changes in the 2_1 branch
4774
4775         * CHANGELOG, configure.in: make multibyte fonts the right size
4776
4777 2002-10-31  xor@zed  <xor@zed>
4778
4779         * configure.ac: look for a CC to make automake happy
4780
4781         * configure.ac, configure.in: configure script changed to .ac
4782
4783         * Makefile.am: compiles now. uses xft2
4784         remove the nls remainders
4785
4786 2002-10-19  woodblock  <woodblock@zed>
4787
4788         * configure.in: bumped up version
4789
4790 2002-10-05  xor@zed  <xor@zed>
4791
4792         * CHANGELOG: changes for openbox 2.1.2
4793
4794 2002-10-04  woodblock  <woodblock@zed>
4795
4796         * CHANGELOG: tyop
4797
4798         * CHANGELOG: documentation for 2.2
4799
4800         * CHANGELOG: updated changelog for 2.2 release
4801
4802         * doc/openbox.1.in:
4803         added documentation for the pressed focus/unfocus and fixed some minor
4804         formatting errors
4805
4806 2002-10-01  woodblock  <woodblock@zed>
4807
4808         * AUTHORS, CHANGELOG, CHANGELOG.Blackbox, configure.in:
4809         merged with 2_1-merged-to-HEAD-2002-09-30
4810
4811 2002-09-24  xor@zed  <xor@zed>
4812
4813         * configure.in: up the version for the next future release
4814
4815 2002-09-23  xor@zed  <xor@zed>
4816
4817         * configure.in:
4818         look for XftDrawStringUtf8 in libXft.so and set a configure variable based on whether it exists in the library (it doesnt on redhat 7.1)
4819
4820 2002-09-22  xor@zed  <xor@zed>
4821
4822         * CHANGELOG: capitals
4823
4824         * configure.in: up version for the release
4825
4826         * CHANGELOG: add 2.1.1 changes
4827
4828 2002-09-17  woodblock  <woodblock@zed>
4829
4830         * doc/openbox.1.in: Added titlebar layout documentation
4831
4832 2002-09-16  xor@zed  <xor@zed>
4833
4834         * AUTHORS, CHANGELOG.Blackbox, configure.in: sync with bb 65-pre2
4835
4836 2002-09-16  woodblock  <woodblock@zed>
4837
4838         * configure.in: fixed tyop
4839
4840 2002-09-15  woodblock  <woodblock@zed>
4841
4842         * doc/openbox.1.in: Documented bitmap buttons in manpage
4843
4844 2002-09-14  woodblock  <woodblock@zed>
4845
4846         * configure.in:
4847         added a configure flag for enabling/disabling bitmap buttons
4848
4849         * CHANGELOG, configure.in: bumped up version number after bitmap merge
4850
4851         * CHANGELOG: merged bitmap buttons
4852
4853 2002-09-11  woodblock  <woodblock@zed>
4854
4855         * .cvsignore, CHANGELOG: sync with HEAD
4856         added checkmark bitmaps with menu.selected.mask:
4857
4858 2002-09-11  xor@zed  <xor@zed>
4859
4860         * CHANGELOG: alt-rightclick resizing fix
4861
4862 2002-09-09  xor@zed  <xor@zed>
4863
4864         * .cvsignore: add autom4te.cache
4865
4866 2002-09-09  woodblock  <woodblock@zed>
4867
4868         * CHANGELOG: merged with HEAD
4869
4870 2002-09-09  xor@zed  <xor@zed>
4871
4872         * CHANGELOG: add drop shadows
4873
4874 2002-09-05  xor@zed  <xor@zed>
4875
4876         * CHANGELOG: state gnome 2 support
4877
4878 2002-09-04  xor@zed  <xor@zed>
4879
4880         * CHANGELOG: gnoem2 fixes for taskbar
4881
4882         * CHANGELOG: new border code
4883
4884 2002-09-03  xor@zed  <xor@zed>
4885
4886         * CHANGELOG: add woodblock's sticky button shit
4887
4888 2002-08-31  xor@zed  <xor@zed>
4889
4890         * AUTHORS, configure.in, doc/bsetbg.1: sync with the 2.0 branch
4891
4892         * AUTHORS, CHANGELOG, CHANGELOG.Blackbox, configure.in, doc/bsetbg.1, version.h.in:
4893         sync with bb-cvs
4894
4895 2002-08-27  xor@zed  <xor@zed>
4896
4897         * CHANGELOG: systray windows fix
4898
4899         * CHANGELOG: latest changessssshape changes, give vR credit
4900
4901 2002-08-26  xor@zed  <xor@zed>
4902
4903         * AUTHORS, CHANGELOG.Blackbox, configure.in: sync with bb-cvs
4904
4905 2002-08-25  xor@zed  <xor@zed>
4906
4907         * CHANGELOG: config request with only resize honors window's gravity
4908
4909         * CHANGELOG: add recent fixes
4910
4911 2002-08-22  xor@zed  <xor@zed>
4912
4913         * version.h.in: s/__openbox_version/OPENBOX_VERSION
4914
4915         * AUTHORS, CHANGELOG.Blackbox, configure.in: sync with bb-cvs
4916
4917         * configure.in: 2.1.0 is our next target
4918
4919 2002-08-21  xor@zed  <xor@zed>
4920
4921         * CHANGELOG: warping is ruling!
4922
4923 2002-08-20  xor@zed  <xor@zed>
4924
4925         * CHANGELOG: Fix send to menu, having deleted workspaces in it.
4926         Fix workspace warping, move the mouse and window the same amount.
4927         Fix workspace switching. Put old code back that worked better.
4928
4929 2002-08-16  xor@zed  <xor@zed>
4930
4931         * AUTHORS: fix indenting and caps
4932
4933         * doc/openbox.1.in: mention epist with bbkeys
4934
4935         * doc/openbox.1.in: add epist and xftlsfonts in teh see also.
4936         s/BLACK/OPEN/
4937
4938         * doc/xftlsfonts.1, doc/Makefile.am:
4939         add manpages for epist and for xftlsfonts
4940
4941 2002-08-15  xor@zed  <xor@zed>
4942
4943         * AUTHORS: authors updates
4944
4945         * CHANGELOG: caps
4946
4947         * data/README.menu: s/black/open
4948
4949         * AUTHORS: new 2.0 authors/contributors
4950
4951         * CHANGELOG: add all the changes made for 2.0.0 to the changelog
4952
4953         * CHANGELOG.Blackbox, CHANGELOG.bsetbg: sync with bb-cvs
4954
4955 2002-08-02  xor@zed  <xor@zed>
4956
4957         * bootstrap: try make bootstrap work in one pass for other people..
4958
4959         * configure.in: make xft support default on
4960
4961 2002-07-26  xor@zed  <xor@zed>
4962
4963         * configure.in: sync with bb-cvs
4964
4965 2002-07-21  xor@zed  <xor@zed>
4966
4967         * configure.in:
4968         add Xft-build-support and Xinerama-build-support to the -help output
4969         add --enable-xinerama to configure
4970
4971         * configure.in: sync with bb-cvs.
4972         Add option in config menu for disabling mouse input with scroll lock.
4973         Remove compile-time flag for event clobbering since this solves that problem for now.
4974
4975 2002-07-20  xor@zed  <xor@zed>
4976
4977         * .cvsignore: add some cvsignore's
4978
4979         * configure.in: add no_NO and ro_RO translations
4980
4981 2002-07-18  xor@zed  <xor@zed>
4982
4983         * TODO:
4984         updated todo. took out things we have done. added new goal for 3.0.
4985
4986 2002-07-16  xor@zed  <xor@zed>
4987
4988         * TODO: adjust goals for 2.0
4989
4990         * configure.in: screw that change. the next releaase will be 2.0.0!
4991
4992         * configure.in:
4993         change the version number back a bit. preparing for a testing release.
4994
4995 2002-07-11  xor@zed  <xor@zed>
4996
4997         * configure.in: adding epist!
4998
4999         * configure.in: -fno-inline when compiling in debug mode
5000
5001 2002-07-10  xor@zed  <xor@zed>
5002
5003         * config.h.in, aclocal.m4: regerenated fiels
5004
5005 2002-07-08  xor@zed  <xor@zed>
5006
5007         * configure.in: add the korean translation dir to configure
5008
5009 2002-07-07  xor@zed  <xor@zed>
5010
5011         * configure.in: make the Xft check actually work
5012
5013         * configure.in: make Xft default to off, you have ot --enable-xft now
5014
5015 2002-07-03  xor@zed  <xor@zed>
5016
5017         * configure.in: look for the rigt function in the libxft
5018
5019         * configure.in: add BFont class, with Xft support
5020
5021 2002-06-22  xor@zed  <xor@zed>
5022
5023         * ChangeLog:
5024         fix resizing bug where windows would be resized smaller than they were supposed to be
5025
5026         * doc/Makefile.in, data/Makefile.in, CHANGELOG, Makefile.in, config.h.in:
5027         add changelog entry for resize bug fix
5028
5029 2002-06-20  xor@zed  <xor@zed>
5030
5031         * CHANGELOG: fix redraw problem when resizing a window
5032
5033 2002-06-14  xor@zed  <xor@zed>
5034
5035         * CHANGELOG: add numbers for next version
5036
5037         * configure.in, configure: increment the version for next release
5038
5039 2002-06-08  xor@zed  <xor@zed>
5040
5041         * configure.in, configure: add -fno-inline for debug builds!
5042
5043         * CHANGELOG: dont let setState() screw with the window mapping process.
5044
5045 2002-06-07  xor@zed  <xor@zed>
5046
5047         * CHANGELOG:
5048         windows which requested to be iconic + sticky/maximized at startup would randomly not be iconified when they were mapped because the current_state variable was left uninitialzied. Initiailizing it to WithdrawnState (0) fixes this problem.
5049
5050         * configure: update the version number by running autoconf
5051
5052 2002-06-06  xor@zed  <xor@zed>
5053
5054         * CHANGELOG: add window-to-window and window-corner snapping.
5055
5056         * CHANGELOG:
5057         more sticky windows fix. bbkeys ended up thinkng an extra window was left when removing a sticky window. fixed! AT LAST
5058
5059 2002-06-05  xor@zed  <xor@zed>
5060
5061         * CHANGELOG:
5062         last two changes: windows starting sticky. focus te root window, not PointerRoot.
5063
5064         * configure.in: increment version for next release
5065
5066         * CHANGELOG:
5067         reset cascade when a workspace has no non-sticky windows left on it.
5068         ignore fully maximized windows while placing.
5069
5070         * doc/Makefile.am, data/Makefile.am, Makefile.am:
5071         syching with bb-cvs. rm .\#* on make dist-clean. nls updates.
5072
5073 2002-06-04  xor@zed  <xor@zed>
5074
5075         * data/README, README: documentation fixups
5076
5077         * data/README, README: documentation fixes
5078
5079         * CHANGELOG: GIVING UP ON STICKY FUCKING CHRIST AARRGGH
5080
5081 2002-06-03  xor@zed  <xor@zed>
5082
5083         * CHANGELOG:
5084         change cascade behavior so it resets when the workspace is emptied and so it starts in 1 placement.
5085
5086         * CHANGELOG: add fix for bsetroot's support of the esetroot atom
5087
5088         * CHANGELOG:
5089         save the current root menu position to an unlimited depth instead of the current 1.
5090
5091 2002-06-02  xor@zed  <xor@zed>
5092
5093         * CHANGELOG: last 2 buig fixes
5094
5095         * CHANGELOG: fix crash when mapping an iconified window
5096
5097 2002-05-29  xor@zed  <xor@zed>
5098
5099         * doc/openbox.1.in: put webpage in the man page. Also, a couple fixes.
5100
5101 2002-05-28  xor@zed  <xor@zed>
5102
5103         * configure.in: updated nls to use openbox.cat
5104
5105         * doc/.cvsignore, data/.cvsignore, .cvsignore:
5106         adding .cvsignore files to the repository to clean up the output whenever you commit some sort of cvs action
5107
5108         * configure.in:
5109         use config.h for configuration options instead of a bunch of -D's on the compile command lines
5110
5111 2002-05-26  cvs  <cvs@zed>
5112
5113         * configure, configure.in: increment version for next release
5114
5115         * doc/Makefile.in, data/Makefile.in, configure.in, Makefile.in, configure:
5116         incrementing version for next release
5117
5118         * CHANGELOG: better description of chages to sticky windows
5119
5120 2002-05-25  xor@zed  <xor@zed>
5121
5122         * bootstrap, configure.ac, configure.in:
5123         using configure.ac causes problems. switching back to configure.in
5124
5125 2002-05-24  xor@zed  <xor@zed>
5126
5127         * configure.in, stamp-h.in, BUGS, CodingStyle, Makefile.am, bootstrap, config.h.in, configure.ac:
5128         new root dir based on bb-cvs
5129
5130 2002-05-23  xor@zed  <xor@zed>
5131
5132         * CHANGELOG: fix for compiling with --disable-nls
5133
5134         * CHANGELOG: fix compiling with --disable-slit and --disable-nls
5135
5136         * CHANGELOG: fix compliling with --disable-slit
5137
5138         * CHANGELOG: merge the sticky window fix from 1.2.
5139
5140         * TODO: updated goals
5141
5142         * CHANGELOG: fixed sticky windows!
5143
5144 2002-05-16  xor@zed  <xor@zed>
5145
5146         * CHANGELOG, configure.in: change next target version to 2.0.0!
5147
5148         * configure.in:
5149         removing pendantic. thats just crazy. -Wall -W will suffice.
5150
5151         * bootstrap: adding --add-missing to automake call
5152
5153         * bootstrap:
5154         adding bootstrap which generates all the auto* files such as configure
5155
5156         * doc/Makefile.in, data/Makefile.in, configure, Makefile.in, aclocal.m4:
5157         removing auto-generated stuff from cvs
5158
5159         * BUGS: removed the fixed bug!
5160
5161         * doc/Makefile.in, data/Makefile.in, Makefile.in:
5162         using automake --foreign -i
5163
5164         * CHANGELOG:
5165         make a new autoRaiseDelay value take effect without having to restart
5166
5167         * CHANGELOG: make a new autoRaiseDelay value take effect on reconfigure
5168
5169         * CHANGELOG: fix loading autoRaiseDelay
5170
5171         * configure.in, configure: increment version for next release
5172
5173         * CHANGELOG: make autoRaiseDelay load
5174
5175         * configure.in, configure: increment version for next release
5176
5177         * ChangeLog, CHANGELOG: fix off-by-one window resizing bug
5178
5179         * CHANGELOG: typos
5180
5181         * aclocal.m4: readding aclocal. autoconf needs this thing
5182
5183         * ChangeLog: typos
5184
5185         * CHANGELOG: fix for slit direction menu not reconfiguring properly
5186
5187         * doc/Makefile.in, data/Makefile.in, Makefile.in, aclocal.m4:
5188         *** empty log message ***
5189
5190 2002-05-15  xor@zed  <xor@zed>
5191
5192         * CHANGELOG: moved menu from a rc file option to a command line option
5193
5194         * TODO: spelling error
5195
5196         * TODO: added future release goals to the TODO
5197
5198 2002-05-14  xor@zed  <xor@zed>
5199
5200         * CHANGELOG: update changelog.
5201         removed a redundant var from BaseDisplay.
5202
5203         * configure.in, configure:
5204         compile with -Wall -W -pendantic when --enable-debug is set.
5205
5206         * CHANGELOG: fix creating/destroying the titlebar buttons
5207
5208         * ChangeLog:
5209         fix titlebar button code so theyre created/destroyed properly
5210
5211 2002-05-13  xor@zed  <xor@zed>
5212
5213         * CHANGELOG: fix segfaut from uninitialized focused_screen pointer
5214
5215         * CHANGELOG, TODO: fix multiple-screen segfault.
5216
5217 2002-05-11  xor@zed  <xor@zed>
5218
5219         * CHANGELOG: make image dithering value load correctly
5220
5221         * configure.in, configure: increment version for next release
5222
5223         * CHANGELOG: make image dithering value load correctly
5224
5225 2002-05-10  xor@zed  <xor@zed>
5226
5227         * CHANGELOG, configure, configure.in:
5228         increment version for next release
5229
5230         * configure.in, CHANGELOG, configure:
5231         fixed problems introduced in the attempt to be gcc 3 compatible. also, better solution for gcc3.
5232
5233         * configure.in, configure:
5234         better gcc3 compat. using ostrstream again. and using namespace std;
5235         some focus changes. workspace contains a focused window instead of openbox class. this fixes a seg
5236
5237 2002-05-07  xor@zed  <xor@zed>
5238
5239         * configure.in, configure: increment version for the next release
5240
5241         * configure.in, configure: increment the version for the next release
5242
5243         * configure.in, configure: changed the version number
5244
5245         * configure: ran autoconf to regen configure
5246
5247         * doc/Makefile.in, data/Makefile.in, configure.in, Makefile.in, config.h.in, configure, CHANGELOG:
5248         gcc 3 compatibility, converted strstreams to stringstreams
5249
5250         * CHANGELOG: converted ostrstreams into ostringstreams
5251
5252         * configure: removed check for strstream
5253
5254         * configure.in, config.h.in:
5255         gcc3 compatibility. uses ostringstream instead of ostrstream
5256
5257         * doc/Makefile.in, data/Makefile.in, configure.in, configure, Makefile.in:
5258         check for sstream and strstream in configure
5259
5260 2002-04-30  xor@zed  <xor@zed>
5261
5262         * ChangeLog.bsetbg, ChangeLog-Blackbox, ChangeLog:
5263         removing old files that got merged in
5264
5265         * CHANGELOG: save the titlebarLayout in the default config
5266
5267         * CHANGELOG: save the titlebarLayout in the default config file
5268
5269 2002-04-29  xor@zed  <xor@zed>
5270
5271         * ChangeLog.bsetbg, configure.in, ChangeLog, ChangeLog-Blackbox, CHANGELOG:
5272         changelog fixes
5273
5274         * configure.in, ChangeLog.bsetbg, ChangeLog-Blackbox, CHANGELOG, ChangeLog:
5275         addded changelog entries for fixes
5276
5277         * ChangeLog, CHANGELOG: fix positioning of the window menu
5278
5279         * CHANGELOG:
5280         better logic when changing a window's decoration level, for choosing what elements of decoration get placed on the window.
5281
5282         * CHANGELOG: improved logic for redecorating windows
5283
5284         * ChangeLog: improved logic when redecorating a window
5285
5286 2002-04-28  xor@zed  <xor@zed>
5287
5288         * CHANGELOG: bsetroot supports transparent apps with root property
5289
5290         * CHANGELOG: added ClickMouse window placement policy
5291
5292         * CHANGELOG: added UnderMouse windwo placement.
5293
5294 2002-04-21  xor@zed  <xor@zed>
5295
5296         * ChangeLog: typo in Changelog
5297
5298         * data/Makefile.am, data/Makefile.in: fixed some uninstall issues
5299
5300         * data/Makefile.am, data/Makefile.in: fixed some uninstall problems
5301
5302 2002-04-21  woodblock  <woodblock@zed>
5303
5304         * CHANGELOG.bsetbg: *** empty log message ***
5305
5306         * CHANGELOG: tyops
5307
5308 2002-04-20  xor@zed  <xor@zed>
5309
5310         * CHANGELOG:
5311         added Changelog entry for the improved maximize-window code.
5312
5313 2002-04-19  xor@zed  <xor@zed>
5314
5315         * TODO: updated TODO to match current cvs status. yay progress!
5316
5317 2002-04-19  woodblock  <woodblock@zed>
5318
5319         * doc/bsetbg.1: added bsetbg makefile
5320
5321 2002-04-18  woodblock  <woodblock@zed>
5322
5323         * Makefile.in, data/Makefile.in, doc/Makefile.am, doc/Makefile.in:
5324         added new bsetbg manpage
5325
5326 2002-04-17  xor@zed  <xor@zed>
5327
5328         * CHANGELOG: configuration changes "done"!!
5329
5330         on start, the config file is read entirely off the disc, and missing values are assigned defaults.
5331         the config file is immediately written back to the disk to populate missing defaults in the file.
5332         any time a config option is changed the control, the config file is re-written with the change.
5333         choosing reconfig will reload the current config file on the disc.
5334         on shutdown, nothing is written to the config file.
5335
5336 2002-04-16  woodblock  <woodblock@zed>
5337
5338         * TODO: need translations for Hide Toolbar
5339
5340         * CHANGELOG:
5341         Added a runtime option for hiding the toolbar totally. Will be cleaner
5342         later. Stay tuned.
5343
5344 2002-04-16  xor@zed  <xor@zed>
5345
5346         * CHANGELOG, CHANGELOG.Blackbox, CHANGELOG.bsetbg, ChangeLog, ChangeLog-Blackbox, ChangeLog.bsetbg:
5347         renamed the Changelog files
5348         get the latest version of bsetbg from the blackbox cvs
5349
5350         * TODO, configure, configure.in:
5351         get rid of the STDC_HEADERS check... this failed on IRIX with MIPSpro, use checks for individual headers instead
5352
5353 2002-04-15  xor@zed  <xor@zed>
5354
5355         * Makefile.in, data/Makefile.in, doc/Makefile.in:
5356         apparently there were compiling problems with automake/autoconf. This should make those go away.
5357
5358 2002-04-14  colophon  <colophon@zed>
5359
5360         * README: added some missing punctuation
5361
5362 2002-04-14  xor@zed  <xor@zed>
5363
5364         * configure.in: changed version number to 0.99.1
5365
5366         * configure, configure.in:
5367         changed version number to 1.0.0. fixed a warning in BaseMenu from pointer->reference conversion
5368
5369         * ChangeLog:
5370         made shaded windows snap properly at their bottom, using their shaded height.
5371         window.getHeight() now returns the different/correct value when a window is shaded.
5372
5373         * ChangeLog:
5374         merged the changelog from the 0.99.0 (stable) branch (the code was previously merged)
5375
5376         * ChangeLog: added entry for new BestFit placement type
5377
5378         * AUTHORS: added first revision of the BestFit placement type.
5379         moved RowSmart placement type out of placeWindow() to its own function like bestFit. Will continue moving other placement types into their own functions.
5380
5381 2002-04-12  woodblock  <woodblock@zed>
5382
5383         * ChangeLog: added close redraw
5384
5385 2002-04-11  xor@zed  <xor@zed>
5386
5387         * CodingStyle: adding rules on how to code this project.
5388
5389         * data/Makefile.am, data/Makefile.in, data/README, data/README.menu, data/README.style, data/menu.in:
5390         New file.
5391
5392         * data/Makefile.am, data/Makefile.in, data/README, data/README.menu, data/README.style, data/menu.in:
5393         initial import. ready for the 0.99.0 stable branch.
5394
5395         * AUTHORS, BUGS, ChangeLog, ChangeLog-Blackbox, ChangeLog.bsetbg, INSTALL, LICENSE, Makefile.am, Makefile.in, README, README.bbtools, README.bsetbg, TODO, aclocal.m4, config.h.in, configure, configure.in, doc/Makefile.am, doc/Makefile.in, doc/bsetroot.1, doc/openbox.1.in, install-sh, missing, mkinstalldirs, stamp-h.in, version.h.in:
5396         New file.
5397
5398         * AUTHORS, BUGS, ChangeLog, ChangeLog-Blackbox, ChangeLog.bsetbg, INSTALL, LICENSE, Makefile.am, Makefile.in, README, README.bbtools, README.bsetbg, TODO, aclocal.m4, config.h.in, configure, configure.in, doc/Makefile.am, doc/Makefile.in, doc/bsetroot.1, doc/openbox.1.in, install-sh, missing, mkinstalldirs, stamp-h.in, version.h.in:
5399         initial import. ready for the 0.99.0 stable branch.
5400