1 2003-09-22 Ben Jansens <xor@zed.orodu.net>
3 * data/menu.xml.in, data/menu.xsd, data/rc.xml.in, data/rc.xsd:
6 * data/rc.xsd: add focusLast and raiseOnFocus
10 * ChangeLog: recent changes
12 * data/rc.xml.in: add focusLast and raiseOnFocus
14 * openbox/place.c: visible is in the frame struct
16 * openbox/place.c: ignore non-visible windows too
18 * openbox/config.c: simplify the default bindings
20 * openbox/client_list_menu.c: s/Activate/Go there/
22 * openbox/screen.c: whitespace
24 * openbox/client_list_menu.c: gettextize the empty desktop string
26 * openbox/client_list_menu.c: change Switch To... to Activate...
29 dont need to swallow enter events on ungrab cuz we just ignore them all now
31 * openbox/event.c, openbox/event.h:
32 provide a means to properly ignore enter events for focus changes
34 * openbox/config.c, openbox/config.h, openbox/focus.c:
38 eat enter events on desktop switch so that our own policy can be applied
40 * openbox/client.c, openbox/openbox.c:
41 we always want to start with something focused, moving this to openbox.c
43 * openbox/action.c: add comment
45 * openbox/mainloop.c: indenting
47 2003-09-21 Ben Jansens <xor@zed.orodu.net>
49 * openbox/action.c, openbox/event.c, openbox/event.h:
50 when ending actions which can move windows, and we were using the mouse, instead of doing a focus fallback, which instantly focuses, and doesn't raise, we do an event_enter_client which simulates the act of entering the window with the pointer
52 * openbox/client.c, openbox/client.h, openbox/focus.c:
53 move the code to find the window under the pointer out of focus.c to client.c
56 place so to avoid windows in layers above the window being placed!
58 * openbox/event.h: add glib.h include
60 * openbox/config.c, openbox/config.h: add raiseOnFocus option
62 * openbox/event.c: fix race condition in focus delay
64 * openbox/event.c: ignore ungrab enter notifies for focus
66 * openbox/mouse.c: pass the context to action_run_mouse
68 * openbox/action.c, openbox/action.h:
69 grab the pointer before doing client actions more intelligently, i.e. only when using sloppy focus.
70 fallback focus after the action if the action was fired via a mouse binding, otherwise do not. this makes keyboard bindings not fuck with sloppy focus.
72 * openbox/config.c, openbox/config.h, openbox/dock.c:
73 rename dock/himeTimeout to dock/hideDelay in the config file
76 dont assert, just ignore client_unfocus() when the client isnt already focused
79 dont save the appearance when reconfiguring!! that was a crash waiting to happen!!
80 also reset the border stuff on reconfigure
82 * openbox/event.c, openbox/event.h:
83 allow a number of enter events to be ignored. Don't just skip any enter/leave events as these are used for highlighting hover buttons and ignoring these makes the hover state out of sync sometimes
86 count the EnterNotify events and tell openbox to ignore them when ungrabbing the pointer
88 * openbox/action.c: if the keyboard is grabbed then dont ungrab it!
90 * openbox/grab.c, openbox/grab.h:
91 export if the keyboard and pointer are currently grabbed or not
93 * openbox/keyboard.c, openbox/keyboard.h: remove that shti
95 * openbox/action.h: whitespace
97 * openbox/keyboard.c, openbox/keyboard.h:
98 export if an interactive grab is in progress
101 dont drop out of dirfocus when there is no new target to be found
103 * openbox/client_list_menu.c: use the new action_run symantics
105 * tests/icons.c: declare variables at the top of the blocks
107 * openbox/menu.c: dont add null actions to the list
109 2003-09-20 Ben Jansens <xor@zed.orodu.net>
111 * Makefile.am: use DESTDIR in install-data-hook
113 2003-09-19 Ben Jansens <xor@zed.orodu.net>
115 * data/.cvsignore: add the generated xml files
117 * openbox/place.c: smart xinerama placement for groups
120 smart placement has a fallback for just groups now too
122 * Makefile.am: install the menu.xsd
124 * Makefile.am, data/menu.xml, data/menu.xml.in, data/menu.xsd, data/rc.xml, data/rc.xml.in, data/rc.xsd:
125 add the schemas to the distribution
127 * configure.ac: look for sed
129 * openbox/mouse.c: comment
131 * openbox/keyboard.c, openbox/menuframe.c, openbox/mouse.c:
132 use the new action ru system which always runs lists of actions instead of individual ones
134 * openbox/config.c: const
136 * openbox/action.c, openbox/action.h:
137 only allow running lists of actions at a time, policy is to always allow multiple action bindings, so this enforces it, and at the same time, UngrabKeyboard() before firing actions if there are no interactive ones. This is needed for some execute's, namely gnome-panel-control --main-menu.
140 properly send resize events for when the app has requested the resize
142 * openbox/config.c: dont allow 0 desktops
144 2003-09-18 Ben Jansens <xor@zed.orodu.net>
147 dont split client requested resizes into 2 events, thanks to manmower for this idea
149 * openbox/session.c: make a warning into a debug message
151 * Makefile.am, tools/gnome-panel-control/.cvsignore, tools/gnome-panel-control/gnome-panel-control.c:
152 rename gnomepanelproxy to gnome-panel-control
154 * Makefile.am, tools/gnome-panel-control/.cvsignore, tools/gnome-panel-control/Makefile, tools/gnome-panel-control/gnome-panel-control.c:
157 * openbox/client_list_menu.c:
158 add a 'Switch to...' entry to empty desktops in the client-list-menu
161 while doing a moveresize, the client actions act on will be the client being moveresized
163 * openbox/resist.c: off by one error
165 2003-09-17 Ben Jansens <xor@zed.orodu.net>
168 provide some default bindings, not a complete list from the rc.xml.. yet.
170 * openbox/keyboard.c, openbox/keyboard.h, openbox/mouse.c, openbox/mouse.h:
171 provide a way to remove all bindings
173 * openbox/frame.c, openbox/frame.h, openbox/translate.c, openbox/translate.h, openbox/action.h, openbox/action.c:
176 * gettext.h, openbox/action.c, openbox/action.h, openbox/client.c, openbox/client.h, openbox/client_list_menu.c, openbox/client_list_menu.h, openbox/client_menu.c, openbox/client_menu.h, openbox/config.c, openbox/config.h, openbox/debug.c, openbox/debug.h, openbox/dock.c, openbox/dock.h, openbox/event.c, openbox/event.h, openbox/extensions.c, openbox/extensions.h, openbox/focus.c, openbox/focus.h, openbox/frame.c, openbox/frame.h, openbox/framerender.c, openbox/framerender.h, openbox/geom.h, openbox/grab.c, openbox/grab.h, openbox/group.c, openbox/group.h, openbox/keyboard.c, openbox/keyboard.h, openbox/keytree.c, openbox/keytree.h, openbox/mainloop.c, openbox/mainloop.h, openbox/menu.c, openbox/menu.h, openbox/menuframe.c, openbox/menuframe.h, openbox/misc.h, openbox/mouse.c, openbox/mouse.h, openbox/moveresize.c, openbox/moveresize.h, openbox/mwm.h, openbox/openbox.c, openbox/openbox.h, openbox/place.c, openbox/place.h, openbox/popup.c, openbox/popup.h, openbox/prop.c, openbox/prop.h, openbox/resist.c, openbox/resist.h, openbox/screen.c, openbox/screen.h, openbox/session.c, openbox/session.h, openbox/stacking.c, openbox/stacking.h, openbox/startupnotify.c, openbox/startupnotify.h, openbox/translate.c, openbox/translate.h, openbox/window.c, openbox/window.h, openbox/xerror.c, openbox/xerror.h, parser/parse.c, parser/parse.h, render/color.c, render/color.h, render/font.c, render/font.h, render/geom.h, render/gradient.c, render/gradient.h, render/icon.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, tests/aspect.c, tests/fullscreen.c, tests/grav.c, tests/icons.c, tests/modal.c, tests/modal2.c, tests/modal3.c, tests/noresize.c, tests/override.c, tests/urgent.c, tools/kdetrayproxy/kdetrayproxy.c:
179 * gettext.h, openbox/action.c, openbox/action.h, openbox/client.c, openbox/client.h, openbox/client_list_menu.c, openbox/client_list_menu.h, openbox/client_menu.c, openbox/client_menu.h, openbox/config.c, openbox/config.h, openbox/debug.c, openbox/debug.h, openbox/dock.c, openbox/dock.h, openbox/event.c, openbox/event.h, openbox/extensions.c, openbox/extensions.h, openbox/focus.c, openbox/focus.h, openbox/frame.c, openbox/frame.h, openbox/framerender.c, openbox/framerender.h, openbox/geom.h, openbox/grab.c, openbox/grab.h, openbox/group.c, openbox/group.h, openbox/keyboard.c, openbox/keyboard.h, openbox/keytree.c, openbox/keytree.h, openbox/mainloop.c, openbox/mainloop.h, openbox/menu.c, openbox/menu.h, openbox/menuframe.c, openbox/menuframe.h, openbox/misc.h, openbox/mouse.c, openbox/mouse.h, openbox/moveresize.c, openbox/moveresize.h, openbox/mwm.h, openbox/openbox.c, openbox/openbox.h, openbox/place.c, openbox/place.h, openbox/popup.c, openbox/popup.h, openbox/prop.c, openbox/prop.h, openbox/resist.c, openbox/resist.h, openbox/screen.c, openbox/screen.h, openbox/session.c, openbox/session.h, openbox/stacking.c, openbox/stacking.h, openbox/startupnotify.c, openbox/startupnotify.h, openbox/translate.c, openbox/translate.h, openbox/window.c, openbox/window.h, openbox/xerror.c, openbox/xerror.h, parser/parse.c, parser/parse.h, render/color.c, render/color.h, render/font.c, render/font.h, render/geom.h, render/gradient.c, render/gradient.h, render/icon.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, tests/aspect.c, tests/fullscreen.c, tests/grav.c, tests/icons.c, tests/modal.c, tests/modal2.c, tests/modal3.c, tests/noresize.c, tests/override.c, tests/urgent.c, tools/kdetrayproxy/kdetrayproxy.c, tools/themeupdate/themeupdate.py:
180 add copyright headers, adjust --version output to include copyright, and --help output to not include version output.
182 * Makefile.am: make the installed themeupdate.py executable
184 * Makefile.am: install themupdate.py to share/openbox/
186 * data/rc.xml, openbox/frame.c, openbox/frame.h, openbox/mouse.c:
187 add the MoveResize context, which is used while doing a move/resize on a window. Actions bound in this context can be executed with the mouse during a move/resize on a window.
189 * openbox/menuframe.c, render/theme.c, render/theme.h:
190 api cleanups for render/theme.h
192 * openbox/menuframe.c: use the theme padding for the menu title's size
194 * openbox/action.c, openbox/event.c, openbox/openbox.c, openbox/openbox.h, openbox/session.c:
195 make ob_exit() take an error code. don't exit with 0 for signals other than TERM and INT.
198 move where grabs are init'd since they use the screen_support_win now
200 * openbox/menu.c: remoev unneeded include
202 * themes/Artwiz/openbox-3/themerc, themes/Blah41/openbox-3/themerc, themes/Om4Ob/openbox-3/themerc:
203 fix to be up-to-date with the theme spec
205 * openbox/translate.c:
206 allow the use of keycodes directly in key bindings
208 2003-09-16 Ben Jansens <xor@zed.orodu.net>
210 * openbox/moveresize.c:
211 dont assert if a moveresize is started while one is in progress. apps could do this with client messages, or the user can easily do it with actions.
214 grab the pointer on the screen_support_win, causing all mouse events during a grab to not be acted on as if they were on the root window/context
216 * Makefile.am: dont use -release for libtool
219 fallback when nothing is focused and we switch desktops!
221 * openbox/event.c: ifdef DEBUG_FOCUS focus output
223 * data/rc.xml: default to "TheBear"
225 * Makefile.am: fix properly
227 * Makefile.am: make TheBear install poroerly in its openbox-3 dir
229 * Makefile.am, configure.ac:
230 install the libs with release and version info via libtool
232 2003-09-15 Ben Jansens <xor@zed.orodu.net>
234 * render/theme.c: look in ~/.themes for themes also
236 * render/icon.h: new icon from merry, more clarity when small
238 * Makefile.am, configure.ac, openbox/action.c, openbox/config.c, openbox/menu.c, openbox/openbox.c, openbox/openbox.h, openbox/session.c, parser/parse.c, parser/parse.h, render/obrender-3.0.pc.in, render/theme.c:
239 make openbox base-dir spec compliant, and change the theme dir structure, so that themes go in $XDG_DATA_DIRS/themes/ with gtk/metacity/whateverelse themes
241 * openbox/client.c, openbox/event.c, openbox/focus.c, openbox/mainloop.c, openbox/mainloop.h, openbox/startupnotify.c:
242 revert my commit of d3th, it fucked up focus badly
244 * openbox/stacking.c: raise all the windows with the transient
246 * openbox/stacking.c: raise all parents with a transient
248 * openbox/client.c, openbox/event.c, openbox/focus.c, openbox/mainloop.c, openbox/mainloop.h, openbox/stacking.c, openbox/startupnotify.c:
249 break focus. or maybe make it better.
250 these changes make it work when you alt-tab off a fullscreen window, that it doesnt iconify, and that it is immediately restacked instead of waiting for a FocusIn event to arrive. The code now assumes that if the window says it can focus, that if we focus it, it is focused.
251 add the XDone handler to ObMainLoop, which is fired upon the occurance of there being no more X events to read.
254 dont leave non-submenu items selected when the mouse isnt over them
256 * ChangeLog: recent changes
258 * data/rc.xml, openbox/config.c, openbox/config.h, openbox/event.c, openbox/focus.c, openbox/focus.h, openbox/screen.c:
259 remove focusLast and focusLastOnDesktop
261 * openbox/focus.c: fix directional focus when nothing is focused
263 * ChangeLog: recent changes
265 * configure.ac: beta3
267 * openbox/session.c: use the sm_client_id in the client struct
269 * openbox/client.c, openbox/client.h:
270 save the sm_client_id just like saving other properties, dont query each time its needed
273 propogate property changes on the group leader to the whole group
275 * openbox/popup.c: remove debug prints
277 * openbox/startupnotify.c: remove debug print
279 * openbox/event.c: sloppy focus fixes, ignore a few more enter events
282 fix crashing when doing a directional focus with no windows on the desktop
284 * openbox/place.c: best fit only one direction
286 * openbox/place.c: no center in the first smart-place
288 * openbox/place.c: sort smallest to largest area
290 * openbox/place.c: 2 passes at smart placement
293 smart placement only avoids the focused window, and centers in its area
295 * openbox/stacking.h: whitespace
297 * openbox/place.c: fallback to random when focus follows mouse is off
299 * openbox/place.c: fix comment
301 * openbox/place.c: oops backwarsd
303 * openbox/place.c: dont use continue
305 * openbox/place.c: remove blank line
307 * openbox/mainloop.c: allow more than one timer to work at a time
309 * openbox/mainloop.c: allow more than one timer to process at a time
312 apply gravity to the chosen coords, bound the undermouse placement
315 always use smart placement, add under-mouse placement for the fallback
317 * openbox/place.c: dont count !normal clients for placement
319 * openbox/place.c: added smart placement
321 * openbox/resist.c: use the new RECT_LEFT/RIGHT/TOP/BOTTOM for clarity
324 add some interesection shit, and RECT_LEFT/RIGHT/TOP/BOTTOM
326 2003-09-14 Ben Jansens <xor@zed.orodu.net>
328 * openbox/menuframe.c: kill the padding in the menu title
330 * openbox/stacking.c:
331 dont raise parents of transients when the transient is raised
333 * render/theme.c: fix 2 mem leaks
335 * Makefile.am: install the openbox.png pixmap icon
338 adjust the themes for the frames before everything else happens, cuz they store pointers to the freed theme, then redraw them at the end
340 * openbox/frame.c: dont redraw the frames when changing their theme
342 * openbox/startupnotify.c: remove the x event handler
345 dont bother fucking everythign up when the desktops number hasnt changed
347 * openbox/popup.c: fix mem leak
349 * openbox/menuframe.c:
350 update the menus before putting them in the visible list
353 fix a mem leak, and make suer the menus arent visible when they are modified
355 * openbox/event.c: fix mem leak, remove teh ice watch handler
357 * openbox/config.c, openbox/action.c: fix mem leak
359 * data/openbox.png: add the .png version of the icon.h
362 dont impose staying on-screen for non-normal windows like kicker
364 * render/icon.h: add a default icon made by merry.
367 move moveresize_startup/shutdown so its between its deps
369 * openbox/moveresize.c: only sopt moveresize when shutting down
371 * render/font.c: remove debug print
373 * openbox/moveresize.c: stop any moveresizes on shutdown
375 * configure.ac: dont need libtool doing dlopen capable libs
377 * render/theme.c: use the values passed to the function
379 * render/theme.h: code style
381 * render/render.c: free XImages
383 * render/font.c: destroy 'pat' always
386 X allocs more bytes than i thought, new algo to pick the amount of memory for the bitmap data
388 * openbox/client.c: dont waste a strdup which is never freed
390 * openbox/mainloop.c:
391 fix a memory leak in the mainloop timers correctly
393 * openbox/mainloop.c: fix a memory leak in the mainloop timers
395 2003-09-12 Ben Jansens <xor@zed.orodu.net>
397 * openbox/focus.c, openbox/moveresize.c, openbox/openbox.c, openbox/popup.c, openbox/popup.h, openbox/screen.c:
398 new popups with subclasses, added an ObIconPopup for popups with icons, and ObPagerPopup, for a popup with a pager on it.
400 better logic also for the desktop layout code figuring out how many rows and columns there are.
402 * render/theme.c, render/theme.h:
403 add app_(un)hilite_fg, which is never parentrelative
405 * render/font.c: wasted variable
408 handle parentrel app labels, by using the title's texture instead
410 * render/theme.c: better more valid C
412 * openbox/popup.c: 80 cols
415 start the session shit, and grab the params before grabbing the rest of the parameters (and erroring on invalid ones)
417 * Makefile.am, openbox/client.c, render/theme.c, render/theme.h:
418 add support for a default icon, but no icon has been made yet.
420 * configure.ac: allow building of static libs
422 2003-09-10 Ben Jansens <xor@zed.orodu.net>
424 * openbox/event.c, openbox/mouse.c, openbox/mouse.h:
425 frame context fallbacks when there is no binding on the context
427 * themes/Allegro/openbox-3/themerc: requested update from safarial
430 make menu hiding-on-release based on a timer rather than on where it is released (on the frame border)
432 * openbox/config.h: s/milli/micro/
434 * openbox/menu.c: hide menus before showing a new menu root
436 * openbox/menuframe.c:
437 keep menus taller than the screen from jittering. also keep the half of the menu you're in visible. more precision would be nicer but meh for now (ever) i guess.
439 * Makefile.am: distribute the .pc.in files
441 * openbox/focus.c: save the new glist!
443 * openbox/keyboard.c:
444 when the client for an interactive action is closed, kill the action
446 * openbox/moveresize.c:
447 use the current size not the start size for moving
450 use the focus client when the client is null for keyboard events
452 * openbox/action.c: oops, copypaste
454 * openbox/action.c: dont deref the client before checking for null
456 * openbox/frame.c: use theme.show_handle
458 2003-09-09 Ben Jansens <xor@zed.orodu.net>
460 * ChangeLog: more changes
462 * openbox/event.c, openbox/keyboard.c, openbox/keyboard.h:
463 save teh client for interactive actions cuz after teh keyboard is grabbed there is no client
465 * configure.ac: beta2
467 * ChangeLog: recent changes
469 * openbox/action.c, openbox/action.h, openbox/event.c, openbox/keyboard.c, openbox/keyboard.h, openbox/mouse.c, openbox/mouse.h, openbox/screen.c:
470 no more interactive mouse actions, they are evil etc. actions now "feel" much more solid. if move/resizing a window while changing workspaces, it will follow.
472 * openbox/action.c: no mouse interactive actions. no bugs.
474 2003-09-08 Ben Jansens <xor@zed.orodu.net>
476 * openbox/client.c: remove debug prints
478 * render/theme.c: allow a padding.width of 0
480 * tools/themeupdate/themeupdate.py: warn about the right shit
482 * openbox/focus.h: remove comment that isnt right anymore
484 * openbox/frame.c, openbox/framerender.c, openbox/popup.c, render/theme.c, render/theme.h, themes/Allegro/openbox-3/themerc, themes/Artwiz/openbox-3/themerc, themes/Blah41/openbox-3/themerc, themes/Om4Ob/openbox-3/themerc, themes/TheBear/openbox-3/themerc, tools/themeupdate/themeupdate.py:
485 bigtime theme changes. bigtime.
487 * openbox/focus.c, openbox/focus.h: expose focus_cycle_client
490 act on the visibly focused window when that differs from the actual focused window
492 * openbox/client.c: round 2 for this shit
494 * openbox/client.c: flush after resizing a client
497 if the client is growing, resize it before the frame. if its shrinking, then resize the frame first. reduces flicker lots.
500 watch for windows with titlecounts changing their title and getting an incorrect titlecount
502 * openbox/client.c: oops
504 * openbox/client.c: some simpler code
507 grab the pointer befoer shading a window to prevent focus moving in sloppy focus
510 dont reset all the states to FALSE in client_get_state, this made an initial IconicState get ignored
512 * data/rc.xml: oops missed a capitalization
514 * data/menu.xml: add obconf to the menu
516 * openbox/menuframe.c: flush after drawing each menu item
518 * openbox/config.h: timeouts are all in millisecond
521 if the menu path starts with a /, then just load it, don't try the prefixes
523 * openbox/dock.c: fix autohiding
525 * openbox/dock.c: dont modify the time from the config parser
528 make both focusDelay and hideTimeout in milliseconds
531 fix crash when reconfigure changes the stacking layer of the dock
533 * data/rc.xml: capitalize mouse actions
536 move windows around before removing the focus order lists to prevent nasty segfault when it removes a window from an already freed list
538 2003-09-07 Ben Jansens <xor@zed.orodu.net>
540 * parser/parse.c: dont use obsolete xmlChildrenNode
542 * po/Makevars: add my email address
544 * Makefile.am, configure.ac, parser/.cvsignore, parser/obparser-3.0.pc.in, render/.cvsignore, render/obrender-3.0.pc.in:
545 remove obconf from this tree.
546 add versioning for the libraries and pkgconfig files for them.
548 * openbox/config.c, openbox/menu.c, openbox/session.c:
549 dont use obsolete xmlChildrenNode
551 * openbox/framerender.c, openbox/menuframe.c: xflush after rendering
553 * data/rc.xml, openbox/action.c, openbox/action.h, openbox/client_list_menu.c, openbox/client_menu.c, openbox/config.c, openbox/event.c, openbox/keyboard.c, openbox/menu.c, openbox/menu.h, openbox/menuframe.c, openbox/menuframe.h, openbox/misc.h, openbox/mouse.c, openbox/mouse.h:
554 little bit of an actions overhaul, added action_run* so that duplicated code can all be in the same place now woot.
555 allow actions to specify when they can be used (ShowMenu cant in the OB_USER_ACTION_MENU_SELECTION case)
556 remove KeyboardMove ad KeyboardResize. Instead, just use Move and Resize and determine if it should be a keyboard move/resize in the code
558 2003-09-06 Ben Jansens <xor@zed.orodu.net>
560 * openbox/plugin.c, openbox/plugin.h:
561 these shoulda been removed long ago
563 * openbox/event.c: \n's at the end of strings passed to ob_debg
565 * openbox/client.c: Closes #799. i think im too high to say more.
568 sync before removing all the enter events. this way it actually catches them
571 add the margins to the label_height so that the text doesnt cover the bevel/border
573 2003-09-04 Ben Jansens <xor@zed.orodu.net>
575 * openbox/menu.c: code style fix
578 optimization. don't need a glist where a simple pointer will suffice.
580 * openbox/openbox.c: was adding an extra / in ob_expand_tilde
582 * openbox/menu.c, openbox/menu.h:
583 when a pipe menu is killed, kill all its submenus as well
585 * openbox/geom.h: fix RECT_CONTAINS, name clash
587 * render/image.h, render/render.c:
588 new scaling based on the Bresenham algorithm
590 * render/image.c: new scaling, based on the Bresenham algorithm
592 * openbox/moveresize.c:
593 off by one caused clients to be resized a little during a move
595 * openbox/menuframe.c: oops missed a !
597 * data/rc.xml, openbox/config.c: turn off focusDelay by default
599 * openbox/openbox.c, openbox/session.c, openbox/session.h, po/POTFILES.in:
600 move session code out of openbox.c all into session.c
601 remove --sm-save-file and --sm-client-id from argv so that they dont get reused when doing a restart.
603 * openbox/grab.h: match the declarations in the header
605 * openbox/keyboard.c: ungrab only as many times as we grabbed
607 * openbox/openbox.c: remove the reconfigure popup
609 * openbox/grab.c: match the func prototypes in the header
611 2003-09-03 Ben Jansens <xor@zed.orodu.net>
613 * ChangeLog: recent changes
615 * openbox/startupnotify.c: fix for not using startup notification
617 * ChangeLog: recent changes
619 * configure.ac: beta1 time. fuck yah.
622 kill the window mapping.. its not doing anything anyways? whatever..
625 dont ungrab/grab all the mouse bindings every time a new one is added. just do it once on startup.
628 dont exit when a theme can't be loaded during reconfigure
631 handle the case where a transient is a child of a dockapp
633 * openbox/moveresize.c:
634 don't let move/resize occur on non-visible clients
637 display a popup and perform a smooth transition when reconfiguring
639 * openbox/keyboard.c: grab keys on the client windows themselves
642 only remove one flash timer at a time, so all frames dont stop flashing just cuz a window closed
644 * openbox/client_list_menu.c: remove from desktop_menus when freed
647 use the ob_main_loop_timeout_remove_data to only remove one timer
649 * openbox/dock.c: dont set a strut when there are no apps in the dock
652 support getting the desktop from the startup notification protocol
653 pass on to the startup notification code that a window has mapped with a given wmclass
655 * openbox/client.h: add the startup_id
657 * openbox/openbox.c, openbox/openbox.h: add the NONE cursor.
658 remove startup notification code from openbox.c and openbox.h
659 call the new sn_startup/shutdown for startupnotification.c
661 * openbox/moveresize.c: use NONE cursor when not specifying one
664 remove startup hacks and add startup notification in its own files
667 remove the startup notification code from event.c, it all lives in its own file now
669 * openbox/startupnotify.c, openbox/startupnotify.h:
670 add startup notification in its own .c/.h files
672 * openbox/menuframe.c: use the NONE cursor when not specifying one
674 * openbox/mainloop.c, openbox/mainloop.h:
675 add ob_main_loop_timeout_remove_data.
676 make the timeout remove functions remove *all* timeouts that match
678 * openbox/startup.c, openbox/startup.h:
679 remove teh startup state saving hacks since we can reconfigure now. no more restarting for the average user anymore.
681 * openbox/grab.c: use the NONE cursor when not specifying one
683 * openbox/screen.c, openbox/screen.h:
684 remove all the startup notification code from screen.c
686 * openbox/prop.c, openbox/prop.h: add the startup_id atom
688 * openbox/action.c, openbox/keyboard.c, openbox/mouse.c:
689 use the NONE cursor when not specifying a cursor
691 * openbox/misc.h: add a NONE cursor, to not change the cursor at all
693 * data/menu.xml: add reconfigure to the menu
695 * openbox/action.c, openbox/action.h, openbox/client.c, openbox/client.h, openbox/dock.c, openbox/dock.h, openbox/event.c, openbox/event.h, openbox/focus.c, openbox/focus.h, openbox/frame.c, openbox/frame.h, openbox/grab.h, openbox/group.c, openbox/group.h, openbox/keyboard.c, openbox/keyboard.h, openbox/menu.c, openbox/menu.h, openbox/mouse.c, openbox/mouse.h, openbox/moveresize.c, openbox/moveresize.h, openbox/openbox.c, openbox/openbox.h, openbox/screen.c, openbox/screen.h, openbox/window.c, openbox/window.h:
696 add a reconfigure action, also reconfigure on SIGUSR2.
697 support reconfiguring throughout the entire codebase.
699 * themes/TheBear/openbox-3/themerc: updates for thebear from merry
702 make focusDelay check the destroying window properly before killing the timer
704 * data/rc.xml: add default A-space binding for the client menu
706 * AUTHORS: add teh focusDelay option for mikachu
708 * openbox/menuframe.c, openbox/menuframe.h:
709 track the maximum margin of menu items. use this to keep icons in the menus inside the bevel/borders of the menu items
711 * ChangeLog: recent changes
713 * configure.ac: alpha8
715 * data/rc.xml, openbox/config.c, openbox/config.h, openbox/event.c:
716 add the focusDelay option
719 dont grab frame context mouse bindings on desktop windows
721 * openbox/client.c, openbox/client.h, openbox/menu.c, openbox/moveresize.c:
722 make the client destructor a GDestroyNotify
724 * Makefile.am: add themeupdate.py to the distribution
726 * data/rc.xml: add focus the desktop on left click binding
728 * openbox/menuframe.c: rm empty line
730 * openbox/menuframe.c: limit menus' width to 400px
732 * data/rc.xml, openbox/config.c:
733 rename the theme name node from 'theme' to 'name'
735 * data/rc.xml: fix capitalization and empty tags. cleanup.
737 * data/rc.xml: remove obsolete placement/remember option
739 * openbox/moveresize.c:
740 only show resize popups for clients with size increments. no move popup at all. waste of screen space.
742 * openbox/popup.c: use the provided margins to layout the popup better
744 * render/render.c, render/render.h:
745 provide a function to give the margins for an appearance
747 * data/rc.xml, openbox/config.c:
748 make the default screen-edge resistance 20 (double what it is for windows)
751 we use the offsets we get from the server, we should use the byte order too..
753 * render/color.c: remove bad comment
755 2003-09-02 Ben Jansens <xor@zed.orodu.net>
757 * openbox/moveresize.c:
758 more fixes to keep the pointer stuff aligned when doing keyboard move/resize
760 * openbox/moveresize.c:
761 fix flashing when using keyboard move against the edge of the screen
764 interlace is drawn first, so bevels n shit cover it
766 * openbox/client_menu.c, openbox/menu.h, openbox/menuframe.c, openbox/menuframe.h:
767 use new menu.bullet.selected.imageColor. use the text colors for the menu mask icons instead of teh bullet color, and set it based on selected/disabled/normal like the text.
769 * render/theme.c, render/theme.h: add menu.bullet.selected.imageColor
772 grab the mouse before any move/resizes in actions, preventing focus from moving when followMouse is on and the window moves/resizes out from under the pointer
774 * Makefile.am, data/menu, data/menu.xml, data/rc.xml, openbox/menu.c:
775 move the default menu to menu.xml
777 * openbox/session.c: remove debug prints
779 * render/render.c: remove debug print
781 * render/color.c: remove XXX comment, it was right, now its done :>
783 * render/color.c, render/color.h:
784 use the new color hash to cache RrColors
786 * render/instance.c, render/instance.h, render/render.h:
787 move some internal functions from render.h to instance.h
788 add a color hash table to the RrInstance
790 * openbox/resist.c: remove debug print
792 * openbox/mainloop.c: make the segfault swearing more clear
794 * openbox/moveresize.c:
795 add comment about the new code in moveresize for size increment windows
797 * openbox/client.c, openbox/moveresize.c:
798 stop doing stupid shit for the size increments in client_configure, it belongs in the moveresize code. add it there.
800 * openbox/resist.c, openbox/resist.h:
801 separate window and screen snapping so only one or the other can be used
803 * openbox/action.c: grow to edge is a move and a resize, oops
805 2003-09-01 Ben Jansens <xor@zed.orodu.net>
807 * Makefile.am, data/rc.xml, data/rc3, parser/parse.c:
810 * Makefile.am: update for the new theme selections
812 * data/rc3: make thebear the default theme
814 * themes/TheBear/openbox-3/themerc:
815 add a menu overlap and smaller font size for the menu items
817 * themes/Allegro/openbox-3/bullet.xbm, themes/Allegro/openbox-3/themerc, themes/Artwiz/openbox-3/themerc, themes/Blah41/openbox-3/themerc, themes/Om4Ob/openbox-3/themerc, themes/TheBear/openbox-3/themerc:
818 add/fix themes for 3.0
820 * openbox/menuframe.c, openbox/popup.c, render/theme.c, render/theme.h:
821 rename back the app_selected appearances to app_hilite
823 * tools/themeupdate/themeupdate.py: some stuff is exact
825 * tools/themeupdate/themeupdate.py: remove menu.bullet from themes
827 * tools/themeupdate/themeupdate.py: show errors on stderr
829 * tools/themeupdate/themeupdate.py: nicer usage output
831 * openbox/moveresize.c: this move is not final
834 make ob_expand_tilde expand all tildes in the string
836 * tools/themeupdate/themeupdate.py: global valid
838 * tools/themeupdate/themeupdate.py: more checks, for pixelsize fonts
840 * tools/themeupdate/themeupdate.py:
841 add more checks, for fonts, and for missing stuff
843 * tools/themeupdate/themeupdate.py:
844 update oldschool .xft.font options from ob2
846 * tools/themeupdate/themeupdate.py: enable all the tests
848 * tools/themeupdate/themeupdate.py: check for oldschool fonts
850 * tools/themeupdate/themeupdate.py: check window.button.pressed
852 * tools/themeupdate/themeupdate.py:
853 themeupdate already fixes some recent changes
855 * openbox/popup.c: couple more xrdb theme format cleanups:
856 window.focus.font -> window.label.focus.font
857 window.unfocus.font -> window.label.unfocus.font
858 window.justify -> window.label.justify
859 menu.frame.* -> menu.items.*
860 menu.hilite.* -> menu.selected.*
861 *.picColor -> *.imageColor
863 * openbox/client_list_menu.c: remove an old plugin call
865 * openbox/menuframe.c, render/theme.c, render/theme.h:
866 couple more xrdb theme format cleanups:
867 window.focus.font -> window.label.focus.font
868 window.unfocus.font -> window.label.unfocus.font
869 window.justify -> window.label.justify
870 menu.frame.* -> menu.items.*
871 menu.hilite.* -> menu.selected.*
872 *.picColor -> *.imageColor
874 * data/rc3: remove the urgent options
877 dont crash when flashing a window when it goes away, remove the timer when dying
879 * openbox/client.c: flash when urgent
881 * openbox/action.c, openbox/action.h: remove vibrate and flash actions
883 * openbox/frame.c, openbox/frame.h:
884 improved frame flashing code, can start and stop it on command
886 * openbox/config.c, openbox/config.h: remove the urgent actions
888 * render/render.c: i rul.. at typos..
890 * render/render.c: copy/free the new interlaced color
892 * render/gradient.c, render/render.h, render/theme.c:
893 add interlaceColor, and support interlaced gradients
895 * data/rc3: add flashing urgent windows
897 * openbox/action.c, openbox/action.h: add flash action
899 * openbox/frame.c, openbox/frame.h: add code to flash the frame
901 * openbox/menuframe.c:
902 make separators span the width of the entire menu
904 * openbox/action.c, openbox/action.h, openbox/client.c, openbox/client.h, openbox/config.c, openbox/config.h, openbox/moveresize.c:
906 add some macros for moving/resizing clients
909 * openbox/action.c: s/expand_tile/ob_expand_tilde/
911 * openbox/config.h: missing 'extern' for a bunch of vars
913 * openbox/action.c, openbox/config.c, openbox/menu.c, openbox/openbox.c, openbox/openbox.h:
914 move expand_tilde to ob_expand_tilde in openbox.c to make it global.
915 use it on the command read in the menu parsing for pipe menus.
916 use it on the command read for execute/restart actions.
918 2003-08-31 Ben Jansens <xor@zed.orodu.net>
920 * openbox/menu.c: parse all the menu files specified
922 * openbox/mainloop.c: oops, now is in the loop :>
924 * openbox/mainloop.c: get the current time when adding timers
926 * configure.ac: i dont use sed for anything, no need to check for it
928 * Makefile.am: rm some plugin stuff that i missed
930 * configure.ac: alpha7
934 * openbox/action.c, openbox/action.h, openbox/screen.c, openbox/screen.h:
935 add the DesktopLast action, props to marius nita for this one
937 * openbox/event.c: remove debug print
939 * openbox/client_list_menu.c:
940 add a separator in the client-list-menus above iconic windows
942 * openbox/menuframe.c:
943 dont lose the menu selection while puttin the mouse over a separator (properly)
945 * openbox/event.c: compress events properly
947 * openbox/menuframe.c:
948 only hide menus if theyre supposed to when executing
950 * openbox/action.c, openbox/action.h:
951 make directional focusing an interactive action
953 * data/rc3: the <interactive> tags are no longer needed
956 make desktop cycling work properly when non-interactive
958 * openbox/keyboard.c, openbox/mouse.c:
959 when no modifiers are in a binding, then make it non-interactive
961 * openbox/focus.c, openbox/focus.h:
962 make focus cycling work when not interactive
963 add focus_directional_cycle
965 * AUTHORS: tore did some more actions :)
967 * openbox/keyboard.c:
968 ungrab keys before grabbnig keys at the next chain level
971 grab the pointer Async for key grabs, lets key bindings like <execute>xkill</execute> work
973 * openbox/menuframe.c, openbox/menuframe.h: draw menu separators
975 * render/render.c, render/render.h: add RrColorGC
976 add a LineArt texture type for drawing a line, this is used for drawing the menu separators
978 * render/gradient.c, render/mask.c: use RrColorGC
980 * render/color.c: add RrColorGC
982 * openbox/stacking.c: kill a warning
985 move_onscreen was supposed to go away.. :) thanks mikachu
987 2003-08-30 woodblock <woodblock@zed>
989 * AUTHORS: *** empty log message ***
991 2003-08-30 Ben Jansens <xor@zed.orodu.net>
993 * openbox/client_menu.c:
994 add masks from the titlebar buttons to the client menu's options
996 * openbox/menu.h, openbox/menuframe.c, openbox/menuframe.h:
997 add suppot for showing pixmap masks in menus where the rgba icons go too
999 * openbox/client.c: use the nwe theme's show_handle value
1001 * render/theme.c, render/theme.h:
1002 allow handlewidth of 0, which sets show_handle to false
1004 * openbox/event.c: compress motion events
1006 * render/theme.c: bugz, wrong vars
1008 * openbox/menuframe.c: add padding in the menu title too
1010 * openbox/client.c, openbox/client.h, openbox/menu.c, openbox/moveresize.c:
1011 add destructor functions for clients that you acn subscribe with, and use these instead of hardcoding special cases in the unmanage code
1013 * data/rc3, openbox/action.c, openbox/action.h, openbox/client_list_menu.c, openbox/config.c, openbox/config.h, openbox/focus.c, openbox/focus.h, openbox/keyboard.c, openbox/mouse.c, openbox/screen.c, openbox/screen.h:
1014 make interactive actions a type and not special cases.
1015 add the <interactive> option to them to turn off interactivity
1017 * openbox/grab.c: remove debug print
1019 * Makefile.am, openbox/dock.c, openbox/dock.h, openbox/event.c, openbox/event.h, openbox/grab.c, openbox/keyboard.c, openbox/mainloop.c, openbox/mainloop.h, openbox/openbox.c, openbox/openbox.h, openbox/screen.c, openbox/timer.c, openbox/timer.h:
1020 using the ObMainLoop, which rulz the planet
1022 * data/rc3: put debian menu file first
1024 * openbox/menu.c, openbox/menu.h: add pipe-menus
1026 * openbox/menuframe.c: fix grabbing and not releasing with menus
1028 2003-08-29 Ben Jansens <xor@zed.orodu.net>
1030 * openbox/menuframe.c: dont ungrab twice when hiding menus
1033 properly select the first menu item in the child menu when using the 'right' keycode
1035 * openbox/menuframe.c: dont keyboard nav onto disabled menu items
1038 missing break would be bad in future if added more cases
1040 * Makefile.am, configure.ac: dont need gmodule anymore
1042 * openbox/event.c, openbox/menu.c, openbox/menuframe.c, openbox/menuframe.h:
1043 ultra-keyboard-controlled-menus
1045 * openbox/translate.c, openbox/client_list_menu.c, openbox/client_menu.c:
1048 * po/POTFILES.in: update which files have translatable strings
1050 * Makefile.am, configure.ac: the kernel/ dir has been moved to openbox/
1052 * openbox/openbox.c: remove the plugin stuffs
1054 * openbox/resist.c: remove a dispatch.h
1056 * openbox/action.c, openbox/menu.c, openbox/menu.h:
1057 remove plugins from the menu parsing
1059 * Makefile.am, data/menu, data/rc3, openbox/client_list_menu.c, openbox/client_list_menu.h, openbox/client_menu.c, openbox/client_menu.h:
1060 move the client and client-list menus into the 'kernel'
1062 * Makefile.am, openbox/client.c, openbox/dispatch.c, openbox/dispatch.h, openbox/event.c, openbox/focus.c, openbox/moveresize.c, openbox/openbox.c, openbox/screen.c:
1063 remove the event dispatcher
1066 typo, reading from the wrong member of the actiondata union
1068 * Makefile.am, openbox/place.c, openbox/place.h:
1069 add window placement routines to the kernel
1071 * openbox/menuframe.c:
1072 place submenus with their borders over the parent's
1074 * render/theme.c: nicer default bullets
1076 2003-08-28 Ben Jansens <xor@zed.orodu.net>
1079 only left-justify menus, remove the menu.frame.justify option
1081 * openbox/menu.c, openbox/menuframe.c, openbox/openbox.c, openbox/prop.c, openbox/screen.c, render/color.c, render/font.c, render/theme.c:
1082 fix a bunch of memleaks from valgrind and stuff
1084 * render/render.c: free rgba texture caches
1086 * openbox/menuframe.c: only execute enabled items
1088 * data/rc3, openbox/config.h, openbox/event.c, openbox/event.h, openbox/menu.c, openbox/menu.h:
1089 new method for loading menu files etc
1091 * openbox/config.c: fix crash bug is parsing menu section of the rc3
1093 * openbox/menuframe.c: missed one thing, using invalid mem still
1095 * openbox/menu.c, openbox/menu.h, openbox/menuframe.c:
1096 fix for using freed memory to exec stuff
1098 * openbox/menuframe.c: free the menu entry frames
1100 * openbox/action.c: rm double ;;
1102 * openbox/menu.h, openbox/menuframe.c:
1103 add icons to the client-list-menu
1105 * data/menu, data/rc3: load the plugins in the rc3 for the menus
1107 * openbox/menu.c, openbox/menu.h, openbox/menuframe.c:
1108 make submenus not require the menu to exist when they are created, not until they are shown.
1109 crash fix in client_menu
1111 * Makefile.am, data/menu, openbox/action.c, openbox/action.h, openbox/config.c, openbox/event.c, openbox/menu.c, openbox/menu.h, openbox/menuframe.c, openbox/menuframe.h:
1112 make client-list-menu work too
1115 * data/menu, openbox/menu.c, openbox/menu.h, openbox/menuframe.c, openbox/plugin.c, openbox/plugin.h, openbox/screen.c, openbox/session.c, parser/parse.c:
1116 load menu plugins automatically from whats in the menu file
1118 move enabled into the 'normal menu item' specific data stuff
1120 * Makefile.am, data/menu, openbox/client.c, openbox/event.c, openbox/menu.c, openbox/menu.h, openbox/menuframe.c, openbox/menuframe.h, openbox/openbox.c, openbox/plugin.c, openbox/plugin.h:
1121 change the menu plugin interface, no need for the create/destroy functions any more.
1122 redo the client-menu plugin to work with the new menu api
1124 * openbox/action.c, openbox/action.h:
1125 add follow option back for sendto actions
1127 * data/menu: split the menus out so they aren't nested in the example
1129 * Makefile.am, openbox/client.c, openbox/event.c, openbox/menu.c, openbox/menu.h, openbox/menu_render.c, openbox/menuframe.c, openbox/menuframe.h, openbox/popup.c, openbox/window.c, openbox/window.h, render/font.c, render/theme.c, render/theme.h:
1130 half way through the changes to new menu code/design. hot shit. static menus work, on to plugins next.
1132 2003-08-27 Ben Jansens <xor@zed.orodu.net>
1134 * openbox/geom.h: oooops RECT_SET_POINT was broken
1136 * openbox/event.c: more typo :)
1138 * openbox/event.c: typo :)
1140 * openbox/client.c, openbox/event.c:
1141 dont be rude to non-normal windows with keeping them onscreen
1143 * openbox/frame.c: fix border on shaded maximized windows
1145 * openbox/event.c: double deref, props to 'mmj' for spotting this
1147 2003-08-25 Ben Jansens <xor@zed.orodu.net>
1150 remove the last of the cool stuff thanks to GTK fuck fuck. no more not focusing windows in groups that arent focused on map
1152 * openbox/session.c: blef
1154 * openbox/session.c: type change
1156 * openbox/session.c: make --disable-session-management work i think
1158 * openbox/focus.c: dont force fallbacks within groups
1160 * openbox/client.c, openbox/frame.c, openbox/frame.h:
1161 better handling of maximizing, wrt changing decorations on the windows, and showing the correct decor for the max state especially for windows which dont change size (Xnest) when maximized cuz they are at their maximum size already
1163 * openbox/geom.h: add STRUT_EQUAL
1166 set the client decorations to match the frame's so that there is not thot to be changes later on whene there were actually none
1168 * openbox/client.c, openbox/client.h:
1169 restore the stacking order of a saved session
1171 * openbox/session.c, openbox/session.h:
1172 save the stacking order of the windows, and sort the saved session data based on stacking when it is loaded. make the list public.
1175 dont put #define values into the supported atoms list
1177 * openbox/stacking.h: clarify that stacking_below sucks
1179 * openbox/stacking.c, openbox/stacking.h:
1180 add stacking_below which moves a window to immediately below another window. use with care it doesn't enforce transient shit etc..
1182 2003-08-23 Ben Jansens <xor@zed.orodu.net>
1184 * openbox/keyboard.c: better handling of multiple niteractive actions
1186 * m4/x11.m4: better ac macro usage
1188 * configure.ac: alpha6
1190 * ChangeLog: recent changes
1192 * openbox/keyboard.c:
1193 end the other action when starting a new interactive action while one was in place
1195 * render/render.c: formatting
1197 * render/render.c: 80 cols
1199 * render/render.c: stupid function name die
1201 2003-08-22 Ben Jansens <xor@zed.orodu.net>
1203 * render/theme.c: nevermind
1206 default font size one smaller to make default bitmaps fit better
1209 only use visible windows when calcing for raiselower
1211 * openbox/action.c: maybe smarter
1213 * openbox/action.c: make the raiselower action smarter
1215 * render/theme.c, render/theme.h, themes/Om4Ob/openbox-3/themerc, themes/TheBear/openbox-3/themerc:
1216 make focus and unfocus fonts for window titles. change 'xftfont' to 'font' in the themes.
1218 2003-08-20 Ben Jansens <xor@zed.orodu.net>
1220 * ChangeLog: recent changes
1222 * openbox/keyboard.c:
1223 better handling of starting a new interactive grab while one is in progress
1225 * data/rc3, openbox/frame.c, openbox/frame.h, openbox/mouse.c:
1226 rename the 'root' context to 'desktop'
1228 * openbox/action.c, openbox/action.h:
1229 add the 'raiselower' action for raising obscured windows and lowering fully visible ones
1231 * openbox/event.c, openbox/frame.c, openbox/frame.h:
1232 add an obscured flag that tracks if the frame is at all obscured
1234 * openbox/mouse.c: use the result from XGetGeometry correctly
1236 * openbox/mouse.c: handle the XGetGeomtry failing for button releases
1239 dont grab client context stuff on desktop windows. check that clint is non-null
1241 * openbox/frame.c, openbox/mouse.c:
1242 grab root mouse bindings on desktop windows also, since they are conceptually the desktop.
1245 reset first to TRUE properly when the desktop popup is off
1247 * openbox/moveresize.c:
1248 move the pointer while doing a keyboard move/resize
1250 2003-08-16 Ben Jansens <xor@zed.orodu.net>
1252 * openbox/keyboard.c: fix whitespace
1254 2003-08-14 Ben Jansens <xor@zed.orodu.net>
1257 was reading the menu bullet color into the wrong place
1260 skip windows in the alt-tabbing which have the SKIP_TASKBAR hint set on them
1262 * README.CVS: add the gettext version
1264 * ChangeLog: recent changes
1266 * openbox/menu.c: fix the offsets used to keep the menus on screen
1268 * openbox/menu_render.c:
1269 dont show titles on submenus. kill the extra 1px at the top of titleless menus
1272 make putting plugin menus in a menu closer to working..
1274 * data/menu: rename root to root-menu
1276 * data/rc3: add the client-list-menu
1278 * Makefile.am, openbox/plugin.c: add the client_list_menu plugin
1280 * openbox/menu.c, openbox/menu.h: add a menu destructor callback.
1281 fix a possible crasher where a callback was called with a different menu.
1283 * openbox/stacking.c: 80 cols
1285 * openbox/openbox.c: shutdown the menus before the plugins are unloaded
1287 * openbox/focus.c, openbox/event.c, openbox/client.c, openbox/client.h:
1288 make activate take a here parameter
1290 * openbox/action.c: parse <here>true</here> for the activate action
1292 * openbox/action.c, openbox/action.h:
1293 make the activate action have a 'here' parameter
1295 * openbox/action.c, openbox/action.h: add an 'activate' action
1297 2003-08-12 Ben Jansens <xor@zed.orodu.net>
1299 * Makefile.am, openbox/config.c, openbox/config.h, openbox/moveresize.c, openbox/plugin.c, openbox/resist.c, openbox/resist.h:
1300 move the resistance plugin into the kernel. dont resist when move/resizing with the keyboard, only when doing it with the mouse.
1302 * openbox/client.c: oops i fucked up tore's patch. better.
1304 * openbox/action.c, openbox/client.c:
1305 bug fixes for growtoedge from tore. props to tore for all the growtoedge and movetoedge code, and directional focus code also since i dont think i mentioned his name before in the changelogs woot.
1307 * Makefile.am, data/menu, data/rc3, openbox/config.c, openbox/config.h, openbox/menu.c, openbox/menu.h, openbox/mouse.c, openbox/openbox.c, openbox/plugin.c, openbox/plugin.h:
1308 adjust for changes to the parsing api.
1309 split the menu into its own file.
1311 * parser/parse.c, parser/parse.h:
1312 create ObParseInst structuer which can be then used to parse more than one file/memory thing at a time.
1313 add function to parse memory block.
1315 * openbox/config.c, openbox/mouse.c, openbox/mouse.h:
1316 prefix/capitalize the mouse actions enum
1319 oops read the mouse cnofig vars into the right place
1321 * data/rc3, openbox/config.c, openbox/config.h, openbox/keyboard.c:
1322 add the chainQuitKey option to teh <keyboard> section of the rc3
1324 * render/font.h, render/render.h, render/test.c:
1325 add Xutil includes for these badboys on older X versions/solaris
1328 make all the masks unsigned chars for consistancy woot
1330 * render/theme.c: kill some warnings
1332 * openbox/extensions.h: include Xutil for shape.h on old X versions
1334 * openbox/menu_render.c, render/theme.c:
1335 rendering fixups for submenu bullets
1337 * data/rc3: add the cyclingDialog option
1340 remove the scrolling on root without alt since that fucks up with the dialog since there are no modifiers
1342 * openbox/config.c, openbox/config.h, openbox/mouse.c, openbox/screen.c:
1343 add an option for if the popup is used for desktop cycling. defaults on.
1345 * openbox/client.c: dont move windows when starting
1347 * ChangeLog: recent changes
1349 * configure.ac: alpha5
1351 * openbox/screen.c: when cancelling return the first desktop
1353 * openbox/action.c, openbox/action.h:
1354 use the new client_directional_edge_search for the movetoedge actions.
1355 add new growtoedge actions.
1357 * openbox/client.c, openbox/client.h:
1358 small bugfix to the directional focus code.
1359 add the client_directional_edge_search function.
1361 * openbox/keyboard.c:
1362 only do shit with the grabbed_* when a grab is in place
1364 * openbox/action.c, openbox/mouse.c, openbox/screen.c:
1365 remove debug printings
1367 * ChangeLog, Makefile.am, openbox/.cvsignore, openbox/action.c, openbox/action.h, openbox/client.c, openbox/config.c, openbox/config.h, openbox/event.c, openbox/focus.c, openbox/keyboard.c, openbox/keyboard.h, openbox/keytree.c, openbox/keytree.h, openbox/menu.c, openbox/menu.h, openbox/mouse.c, openbox/mouse.h, openbox/openbox.c, openbox/plugin.c, openbox/screen.c, openbox/screen.h, openbox/translate.c, openbox/translate.h:
1368 move the keyboard and mouse plugins into the kernel for mucho sexiness.
1369 make workspace changing a grabbed/interactive process like focus cycling is, with the popup and all.
1370 this is some hot shit.
1373 keep event_lasttime at the last time an event has come in so far, don't regress when events come out of order. props to shrimpx for this patch.
1375 2003-08-11 woodblock <woodblock@zed>
1377 * openbox/menu.c, openbox/menu.h, openbox/menu_render.c, render/theme.c, render/theme.h:
1378 Some fixes and new bugs. Someone else can do the menus because it is
1379 clear no one gives a fuck what I think and no one else wants a window
1380 manager that doesn't suck the same balls as every other window manager.
1382 2003-08-10 Ben Jansens <xor@zed.orodu.net>
1385 save the frame decorations in client_configure_full before causing the fake frame adjust, since that loses its old value.
1387 * openbox/framerender.c:
1388 clear the window after setting the background color, this isnt implicit
1390 2003-08-09 Ben Jansens <xor@zed.orodu.net>
1392 * openbox/focus.c, openbox/popup.c, openbox/popup.h, openbox/screen.c, openbox/timer.c, openbox/timer.h:
1393 changes to the timer api, pass the timer to the callback function.
1394 add a desktop-switch popup with the desktop's name
1396 2003-08-08 Ben Jansens <xor@zed.orodu.net>
1398 * render/render.h: include Xlib.h for other platforms
1400 2003-08-07 woodblock <woodblock@zed>
1403 Fix lock up when not using a session manager and doing fd management.
1405 2003-08-06 Ben Jansens <xor@zed.orodu.net>
1408 remove the <windows> option from the resistance plugin since window and edge resistance have been separated, a 0 value will work now
1410 2003-08-05 Ben Jansens <xor@zed.orodu.net>
1412 * openbox/screen.c: dont ignore topleft layouts
1415 dont map the tl/tr invisible grips when the grip decors are turned off
1417 * render/gradient.c: split the increment into a separate macro
1419 * openbox/client.c, openbox/frame.c, openbox/frame.h, openbox/framerender.c:
1420 a couple frame layout bugfixes hidden inside all this.. wee
1421 fixes for maximizing windows:
1422 - when you toggledecor, it will reconfigure once, but the new constraints from the decor changes would not be in effect when the window was resized to the contranits. fixed by calling frame_adjust_area first thing ni client_configure_fulll with fake=TRUE which will recalc all the frame geometry without resizing/redrawing anything in the frame. this way the decor can take effect in the geometries.
1423 - when maxed horizontally, make the client fill the screen, but dont do this by just making it wider than the screen, fit it to the screen and adjust the titlebar/handle as appropriate to keep it all on the screen.
1424 - when maxed horizontally and vertically, remove the handle from the decorations
1427 when setting up decor on a window, it needs to reconfigure twice if the decor changes, cuz the constraints need the new frame sizes to work right
1429 * openbox/moveresize.c:
1430 make the position dislpayed in the moving popup offset by the top/left struts so that 0,0 is inside teh struts not neccessarily at the screen edge
1432 2003-08-03 Ben Jansens <xor@zed.orodu.net>
1434 * ChangeLog: recent changes
1436 * data/rc3, openbox/client.c, openbox/config.c, openbox/config.h, openbox/moveresize.c:
1437 kill non-opaque move/resize
1438 add an option for redrawing/resizing the client window while resizing, when disabled the client is not touched until the resize is complete.
1440 * openbox/framerender.c:
1441 give the plate the same background color as its border
1443 2003-08-02 Ben Jansens <xor@zed.orodu.net>
1445 * openbox/client.c, openbox/event.c:
1446 use the frame size not the client size when figuring out if stuff fits on the screen
1448 * themes/Om4Ob/openbox-3/themerc:
1449 add disabled button styles (from miklos)
1451 * tools/kdetrayproxy/kdetrayproxy.c: missing sys/time.h
1453 * configure.ac: alpha4
1455 * ChangeLog: recent changes
1457 * Makefile.am, themes/Om4Ob/openbox-3/close.xbm, themes/Om4Ob/openbox-3/close_hover.xbm, themes/Om4Ob/openbox-3/desk.xbm, themes/Om4Ob/openbox-3/desk_hover.xbm, themes/Om4Ob/openbox-3/desk_toggled.xbm, themes/Om4Ob/openbox-3/iconify.xbm, themes/Om4Ob/openbox-3/iconify_hover.xbm, themes/Om4Ob/openbox-3/iconify_pressed.xbm, themes/Om4Ob/openbox-3/max.xbm, themes/Om4Ob/openbox-3/max_disabled.xbm, themes/Om4Ob/openbox-3/max_hover.xbm, themes/Om4Ob/openbox-3/max_pressed.xbm, themes/Om4Ob/openbox-3/max_toggled.xbm, themes/Om4Ob/openbox-3/shade.xbm, themes/Om4Ob/openbox-3/shade_disabled.xbm, themes/Om4Ob/openbox-3/shade_hover.xbm, themes/Om4Ob/openbox-3/shade_toggled.xbm, themes/Om4Ob/openbox-3/themerc:
1460 * ChangeLog: recent changes
1462 * render/theme.c: oops indenting
1465 look in theme dirs first, use the theme as the path as a last attempt only!
1467 * openbox/frame.c: the grips go below the titlebar buttons
1469 * openbox/client.h, openbox/dock.c, openbox/dock.h, openbox/geom.h, openbox/prop.c, openbox/prop.h:
1470 add partial struts tho they arent useful eyt
1472 * data/rc3, openbox/frame.c, openbox/frame.h, openbox/framerender.c, render/theme.h:
1473 invisible resizing areas/grips in the top corners of the window
1475 * render/theme.c: use the toggled mask for shade and desk buttons
1477 * openbox/client.c: that line ended up in teh if somehow...
1479 2003-08-01 Ben Jansens <xor@zed.orodu.net>
1481 * openbox/grab.c: oops buttons not keycodes
1484 if a dock app has a button grabbed already then dont die
1486 * render/theme.c: look for masks only where the themerc was read from
1488 * Makefile.am: rename stick buttons to desk
1490 * render/theme.c, render/theme.h:
1491 add pressed bitmaps. rename stick bitmaps to desk
1493 * openbox/framerender.c, render/theme.c, render/theme.h:
1494 add toggled textuers for titlebar buttons
1496 * Makefile.am: make obconf_interface.h belong to the obconf sources
1498 * data/openbox.desktop, openbox/openbox.desktop, render/gradient.c, render/render.c, render/render.h:
1499 move the dekstop file to data/
1501 * Makefile.am: install the .desktop file again
1503 * themes/TheBear/openbox-3/themerc: remove old stuff
1505 * Makefile.am: install greenz theme
1507 * Makefile.am: s/_t.xbm/_toggled.xbm/
1509 * render/theme.c, render/theme.h:
1510 renamed the _t bitmaps, and added disabled and hover bitmaps
1512 * Makefile.am, render/theme.c, themes/TheBear/openbox-3/themerc, themes/bbs, themes/bluebox, themes/cthulhain, themes/deep, themes/ebox, themes/fieron, themes/fieron2, themes/flux, themes/frobozz, themes/frobust, themes/mbdtex, themes/miklos, themes/nyz, themes/nyzclone, themes/ob20, themes/operation, themes/outcomes, themes/paper, themes/purplehaaze, themes/shade, themes/steelblue, themes/steelblue2, themes/the_orange, themes/trisb, themes/twice, themes/warp-xp:
1513 make themes inside a directory
1515 * Makefile.am, tools/kdetrayproxy/.cvsignore, tools/kdetrayproxy/Makefile, tools/kdetrayproxy/kdetrayproxy.c:
1516 add the kdetrayproxy tool
1519 configre teh dock after finding the new screen sizes
1521 * openbox/session.c: compile fixes
1523 * render/theme.c: add missing includes
1525 2003-07-31 Ben Jansens <xor@zed.orodu.net>
1527 * ChangeLog: recent changes
1529 * configure.ac: alpha3
1531 * openbox/frame.c: fix a long-lurknig gravity bug
1533 * ChangeLog: recent changes
1535 * openbox/openbox.c: oops missed one
1537 * openbox/openbox.c, openbox/openbox.h: expose exit_with_error
1539 * openbox/session.c: kill some output
1541 * openbox/openbox.c:
1542 only load the session from file if a file was provided
1544 * render/font.c: missing a header
1546 * README.CVS: remove shit i no longer use
1548 * parser/parse.c: always return a string from parse_string
1551 set the desktop hint if the desktop is changed by the session code
1554 set the desktop hint after everything is read/setup even session stuff
1557 add the window to the lists before setting the client list hint
1559 * openbox/session.c:
1560 declare functions that are needed when built without session support
1562 * openbox/session.c:
1563 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.
1565 * openbox/client.c, openbox/client.h:
1566 add a function to retrieve the sm_client_id value
1568 2003-07-30 Ben Jansens <xor@zed.orodu.net>
1570 * openbox/client.c, openbox/prop.c, openbox/prop.h, openbox/session.c, openbox/session.h:
1571 restore saved session data for applications
1573 * data/rc3, openbox/config.c, openbox/config.h, openbox/frame.c, render/theme.c, render/theme.h:
1574 move the titlebar layout from the theme to the rc file
1576 * openbox/client.c: attemp #3
1578 * openbox/client.c: attempt #2 at better logical size values
1580 * openbox/client.c: include the base size in the logical size
1582 * ChangeLog: recent changes
1584 * openbox/client.c: the size can be 0 when there is a base size
1586 * openbox/client.c, openbox/client.h, openbox/event.c:
1587 improved ICCCM compliance!
1588 a) send ConfigureNotify back to the client as required by the ICCCM in all sitatuations.
1589 b) send the corrent coords in the ConfigureNotify, including the border width
1590 c) remove the WM_STATE property when unmanaging a window
1592 * openbox/frame.c: code cleaning
1594 * openbox/menu.c: only ignore wheel buttons
1596 2003-07-29 Ben Jansens <xor@zed.orodu.net>
1598 * openbox/event.c: i am the king of copy/paste errors
1600 2003-07-29 woodblock <woodblock@zed>
1602 * openbox/event.c: more menu fixes.
1605 * openbox/menu.c: Clear current_menu when hiding menus.
1607 * openbox/event.c, openbox/menu.c: Close menu properly on unbound keys.
1609 * openbox/menu.c: Fix some keyboard control issues.
1611 2003-07-28 Ben Jansens <xor@zed.orodu.net>
1613 * openbox/client.c, openbox/event.c:
1614 base rudeness on if they have a strut even smarter!
1616 * openbox/client.c, openbox/event.c:
1617 base rudeness on if they have a strut or not
1619 * openbox/client.c, openbox/event.c, openbox/screen.c:
1620 make the new placement restrictions not affect !normal windows like panels
1622 * openbox/menu.c: use plugin_open_reopen not plugin_open_full
1624 * render/theme.c: typo thanks merry
1626 * openbox/event.c, openbox/frame.c, openbox/frame.h, openbox/framerender.c:
1627 hover theme elements for window titlebar buttons
1629 * openbox/client.c, openbox/client.h, openbox/event.c, openbox/screen.c:
1630 make those apps stay/map on screen!! fuck stupid apps. thats right im talking to you mozilla and you too java.
1632 * openbox/event.c: make things compile again. hover does not work yet.
1634 * openbox/client.c: use the macro
1636 * openbox/client.c, openbox/event.c:
1637 keep apps from moving/maping their titlebar underneath left/top panels
1639 * openbox/session.c: set teh clone comamnd
1641 * openbox/session.c:
1642 use char not a long, since we're telling the SM that its 1 byte lone
1644 * openbox/session.c: save the commands on startup
1646 * openbox/session.c: use the path properly for the session file
1648 * openbox/session.c: use teh save file not the session id
1650 2003-07-28 woodblock <woodblock@zed>
1652 * openbox/menu.c: demand load plugins from the menu
1654 * openbox/event.c, openbox/menu.c: Menu stuff.
1657 2003-07-27 Ben Jansens <xor@zed.orodu.net>
1659 * render/theme.c, render/theme.h: fix mem leaks/crashes
1661 * render/theme.c, render/theme.h: add pressed colors for buttons
1663 2003-07-26 woodblock <woodblock@zed>
1665 * openbox/event.c: Close menu on click if outside the menu.
1666 I think, haven't tested.
1668 * openbox/menu.c: more fixes
1670 2003-07-26 Ben Jansens <xor@zed.orodu.net>
1672 * Makefile.am, configure.ac: restarting work on obconf
1674 * ChangeLog: recent changes
1677 split resistance strengths for screen edges and windows. also a fix for parsing changes,
1679 * openbox/stacking.c: dont stack groups together
1681 2003-07-26 woodblock <woodblock@zed>
1683 * openbox/event.c, openbox/menu.c, openbox/menu.h: Some menu updates.
1684 Don't talk to me about menus.
1686 2003-07-25 Ben Jansens <xor@zed.orodu.net>
1688 * openbox/client.c, openbox/client.h:
1689 add client_search_transient which searches the tree from a client down for a client
1691 * render/theme.c: dont allow parentrelative on top-level appearances
1693 * openbox/stacking.c: stacking fixes
1695 2003-07-24 Ben Jansens <xor@zed.orodu.net>
1697 * Makefile.am, openbox/openbox.c, openbox/openbox.h, openbox/session.c, openbox/session.h:
1698 save and load the session save file, though its data is not used yet!
1700 2003-07-24 woodblock <woodblock@zed>
1702 * openbox/event.c, openbox/menu.c, openbox/menu.h, openbox/menu_render.c:
1703 I had a commit message but my commit got stepped on so fuck it.
1704 No one cares what I think anyway.
1705 If the menu navigation isn't EXACTLY FUCKING RIGHT I WILL REMOVE IT
1706 AND SOME OTHER POOR FUCK CAN PUT UP WITH ALL THE FUCKING BULLSHIT.
1708 2003-07-24 Ben Jansens <xor@zed.orodu.net>
1710 * ChangeLog: updates to changelog
1713 dont display the build type at the end its already in the output
1715 * configure.ac, openbox/action.c, openbox/client.c, openbox/debug.h, openbox/dock.c, openbox/event.c, openbox/focus.c, openbox/menu.c, openbox/menu_render.c, openbox/openbox.c, openbox/screen.c, parser/parse.c, render/color.c, render/gradient.c, render/instance.c, render/theme.c:
1716 use ob_debug for any debug printing and only display the output when its a debug build or when --debug is passed to it
1718 * render/gradient.c:
1719 draw the bevel stuff in the pixel data buffer so parent-relative stuff can use it.
1721 * render/render.c: space
1723 2003-07-23 Ben Jansens <xor@zed.orodu.net>
1726 init the parent shit in the surface when making a copy
1728 * Makefile.am: use rm -f
1730 * Makefile.am: include obconf_interface.h in the dist
1732 * Makefile.am: remove headers that dont exist
1734 * m4/Makefile.am: add the new m4s
1736 * openbox/menu.c: unhilite the entry for the submenu when it is closed
1738 * configure.ac: alpha2
1740 * DESIGN/themes.txt: add hover
1742 2003-07-23 woodblock <woodblock@zed>
1745 Added include_menu.c as an example of how one could write a plugin.
1747 * openbox/config.c, openbox/menu.c, parser/parse.c:
1748 * Change xml parsing to pass the parent node, rather than the first
1750 * Add x,y co-ordinates on showmenu action so we can place menus on keypress.
1752 2003-07-22 Ben Jansens <xor@zed.orodu.net>
1754 * openbox/event.c, openbox/openbox.c, openbox/openbox.h, openbox/screen.c:
1755 add the --replace command line option, and support for the WM_Sn selection
1757 * openbox/prop.c, openbox/prop.h: add the MANAGER atom.
1758 allow prop_message to be used with a user-defined mask instead of only with the NetWM mask
1760 * openbox/client.c: stop shownig the desktop when a new window maps
1762 * openbox/menu.c: add a func to find a menu entry from a submenu.
1763 keep menu entries highlighted while they have their submenu open
1765 * openbox/menu.h: add a func to find a menu entry from a submenu
1767 * openbox/menu.c, render/theme.c, render/theme.h:
1768 add a menuOverlap property to themes, and use it in the submenu placement
1770 * configure.ac: update to new version of gettext
1772 * m4/.cvsignore, po/.cvsignore: more stuff to ignore
1774 2003-07-21 woodblock <woodblock@zed>
1776 * openbox/event.c, openbox/menu.c, openbox/menu.h:
1777 Keyboard navigatable menus
1779 2003-07-19 woodblock <woodblock@zed>
1781 * openbox/action.c, openbox/menu.c: Fix a couple memory leaks.
1783 2003-07-17 woodblock <woodblock@zed>
1785 * openbox/menu.c, openbox/menu.h, openbox/plugin.c, openbox/plugin.h:
1786 Menu parsing updates for plugins.
1788 FIFO menus are the only plugin that takes advantage of this.
1790 <menu id="root" label="Openbox 3">
1791 <menu id="fonk" label="fonk" plugin="fifo_menu">
1795 This creates a FIFO ~/.openbox/fifo_menu/fonk to which you can send
1796 menus to. The menus sent to it must be like
1802 I think. If my memory serves me right.
1804 It is all hideous, but I just wanted to experiment and see if it was
1807 2003-07-12 Ben Jansens <xor@zed.orodu.net>
1809 * render/theme.c: useless code move
1811 * openbox/client.c: simple code cleanup
1813 2003-07-11 Ben Jansens <xor@zed.orodu.net>
1815 * render/color.c, render/render.c:
1816 removed the RrEndian so using LSBFirst always now. hopefully this works!
1819 when a transient maps on another desktop, give it focus when it deserves it
1821 * render/render.h: same default offsets for all endian machines
1823 * DESIGN/themes.txt: some input from woobie and changed the menu stuff
1825 * DESIGN/themes.txt: extra menu tag
1827 * openbox/openbox.c: add --g-fatal-warnings
1830 fix a seggie i introduced, going too far in the dockapps list
1832 * DESIGN/themes.txt: attempt #2
1834 * DESIGN/themes.txt: oops extra menu_layout
1836 * DESIGN/themes.txt: a full style defn..
1838 * openbox/client.c: move to the desktop of the activated window
1840 2003-07-10 Ben Jansens <xor@zed.orodu.net>
1842 * openbox/action.c, openbox/client.c, openbox/client.h, openbox/frame.c, openbox/frame.h, openbox/framerender.c, openbox/openbox.c, render/theme.c, render/theme.h, tests/.cvsignore, tests/noresize.c:
1843 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.
1845 when a window cant be resized, its handle is not removed but its grips are.
1847 change allowing the user to disable individual decorations as that is overkill,
1848 instead allow a toggle through the client.decorate boolean.
1850 * tests/Makefile: readd the Makefile
1852 * openbox/focus.c: simply startup/shutdown
1854 * AUTHORS: add some more contributors
1856 * openbox/openbox.c: sync is in unistd.h
1858 * openbox/client.c, openbox/event.c, openbox/menu.c, openbox/menu.h, openbox/menu_render.c, openbox/window.c, openbox/window.h:
1859 prefix and capitalize ObMenu ObMenuEntry and ObMenuEntryRenderType
1860 make the ObMenuEntryRenderType a standard enum instead bitflags
1862 * openbox/focus.c, openbox/openbox.c, openbox/openbox.h, openbox/screen.c, openbox/screen.h:
1863 move ob_pointer_pos to screen_pointer_pos
1865 * openbox/client.c, openbox/dock.c, openbox/event.c, openbox/focus.c, openbox/frame.c, openbox/openbox.c, openbox/openbox.h, openbox/screen.c, openbox/stacking.c:
1866 make ob_state a function so it cant be changed outside of openbox.c
1868 * openbox/client.c, openbox/dock.c, openbox/event.c, openbox/focus.c, openbox/frame.c, openbox/grab.c, openbox/menu.c, openbox/moveresize.c, openbox/openbox.c, openbox/openbox.h, openbox/popup.c, openbox/prop.c, openbox/screen.c, openbox/stacking.c, openbox/startup.c:
1869 remove the ob_root var, its redundant of what Xlib already provides
1871 * openbox/openbox.c, openbox/openbox.h: use gint
1873 * openbox/openbox.c, openbox/openbox.h:
1874 ob_remote has been killed, remove ob_sync from the public header, its only used internally
1876 * openbox/openbox.c, openbox/openbox.h:
1877 the --rc arg and rc_path var wasnt even being used so just rm it
1879 * openbox/action.c, openbox/event.c, openbox/openbox.c, openbox/openbox.h:
1880 make the ob_restart/shutdown stuff static vars and expose them only through functions ob_restart_other(), ob_restart() and ob_exit()
1882 * openbox/stacking.c: remove useless include
1884 * openbox/focus.c, openbox/focus.h, openbox/screen.c, openbox/screen.h, openbox/stacking.c:
1885 replace the focus_backup with the screen_support_win, we dont need 2 offscreen windows.
1888 use the xerror stuff to trap errors instead of dupliacted the effort here
1890 * openbox/dock.c, openbox/dock.h, openbox/screen.c, openbox/timer.c, openbox/timer.h:
1891 prefix the Timer->ObTimer and TimeoutHandler->ObTimeoutHandler shitz
1893 * openbox/action.h, openbox/client.c, openbox/client.h, openbox/config.c, openbox/config.h, openbox/dispatch.c, openbox/dispatch.h, openbox/dock.c, openbox/event.c, openbox/extensions.h, openbox/framerender.c, openbox/framerender.h, openbox/menu.c, openbox/menu.h, openbox/menu_render.c, openbox/moveresize.c, openbox/popup.h, openbox/screen.h, openbox/stacking.c, openbox/stacking.h, openbox/window.c, openbox/window.h:
1894 prefixing and capitalizing the StackLayer -> ObStackingLayer enum.
1895 less includes in headers for less rebuilding on changes
1897 * openbox/client.c, openbox/event.c, openbox/focus.c, openbox/focus.h, openbox/screen.c:
1898 prefix and capitalize the ObFocusFallbackType enum
1900 * openbox/config.c, openbox/config.h, openbox/dock.c:
1901 use the ObOrientation enum instead of a horz bool for configuring the dock's orientation
1903 * openbox/config.c, openbox/config.h, openbox/dock.c, openbox/dock.h, openbox/event.c, openbox/window.c, openbox/window.h:
1904 prefixing for the dock. use ObDirection instead of dupliacting it in another enum for the dock's placement
1906 * openbox/popup.c, openbox/popup.h:
1907 prefixing for the Popup->ObPopup struct
1909 * openbox/moveresize.h: dont need client.h in this header
1911 * openbox/client.h, openbox/event.c, openbox/frame.c, openbox/frame.h, openbox/framerender.c, openbox/framerender.h, openbox/popup.c:
1912 prefixing and capitalization for the Frame->ObFrame struct and the Context->ObFrameContext enum and its constants.
1914 * openbox/client.h, openbox/group.c, openbox/group.h:
1915 prefix Group to ObGroup
1917 * openbox/client.c, openbox/client.h, openbox/focus.c, openbox/stacking.c:
1918 prefix TRAN_GROUP to OB_TRAN_GROUP
1920 * openbox/action.c, openbox/client.c, openbox/client.h, openbox/frame.h, openbox/screen.c:
1921 prefix and capitalize some more constants/enums in client.h (Function -> ObFunctions and WindowType -> ObClientType)
1923 * openbox/action.c, openbox/action.h, openbox/client.c, openbox/client.h, openbox/dispatch.c, openbox/dispatch.h, openbox/event.c, openbox/focus.c, openbox/focus.h, openbox/frame.c, openbox/frame.h, openbox/framerender.c, openbox/group.c, openbox/group.h, openbox/menu.c, openbox/menu.h, openbox/moveresize.c, openbox/moveresize.h, openbox/popup.c, openbox/popup.h, openbox/screen.c, openbox/screen.h, openbox/stacking.c, openbox/window.c, openbox/window.h:
1924 rename the Client struct to ObClient
1926 * Makefile.am: add the new misc.h and mwm.h to the kernel sources
1928 * openbox/client.c, openbox/client.h, openbox/mwm.h:
1929 add a mwm.h for the mwm hint structure and flags.
1930 use proper prefixing and capitalization for the new mwm stuff.
1932 * openbox/action.c, openbox/action.h, openbox/client.c, openbox/client.h, openbox/dispatch.c, openbox/dispatch.h, openbox/dock.c, openbox/event.c, openbox/focus.c, openbox/frame.c, openbox/grab.c, openbox/grab.h, openbox/misc.h, openbox/moveresize.c, openbox/openbox.c, openbox/openbox.h, openbox/screen.c, openbox/screen.h, openbox/stacking.c:
1933 add misc.h with some standard enumerations with proper prefixing and capitalizations.
1935 use the new enums throughout.
1937 provide keycodes and cursors through ob_cursor and ob_keycode functions, which use the new misc.h enums for picking the cursor and keycode.
1939 * openbox/client.c, openbox/client.h, openbox/event.c, openbox/extensions.c, openbox/focus.c, openbox/menu.c, openbox/moveresize.c, openbox/screen.c, openbox/screen.h:
1940 rename 'xinerama' stuff to 'monitors' to be more generic and descriptive.
1942 * openbox/stacking.c: speed up pick_group_windows too
1944 * openbox/stacking.c: make pick_windows waaaay faster
1946 * openbox/openbox.c:
1947 remove the use of the BINARY define. kill a compiler warning.
1949 * openbox/stacking.c: allow restacking of transients above one another
1952 put the transient's title before the parent's in the focus popup
1954 * openbox/extensions.c, openbox/extensions.h:
1955 remove the xinerama active boolean, just count the extension as not present if it is not active
1957 * openbox/client.c, openbox/client.h: add client_search_top_transient.
1958 keep transients all on the same desktop together. use client_search_top_transient where possible in client.c
1960 * openbox/debug.c, openbox/debug.h:
1961 add ob_debug for printing stuff only when debug is enabled
1963 * 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:
1964 remove rependancy on geom.h from the kernel, provide what is used in its own geom.h
1966 * Makefile.am, configure.ac, data/.cvsignore, data/Makefile, data/Makefile.am, openbox/.cvsignore, openbox/Makefile, openbox/Makefile.am, parser/.cvsignore, parser/Makefile, parser/Makefile.am, render/.cvsignore, render/Makefile, render/Makefile.am, themes/.cvsignore, themes/Makefile, themes/Makefile.am, tools/Makefile.am:
1967 update the build system, using a single Makefile.am for a sexyass non-recursive make. booyah!
1969 * gettext.h, openbox/gettext.h:
1970 move the gettext header out to the root source dir
1972 2003-07-07 Ben Jansens <xor@zed.orodu.net>
1974 * render/font.c: include stdlib for exit()
1976 2003-07-06 Ben Jansens <xor@zed.orodu.net>
1978 * bootstrap: add ACLOCAL_FLAGS to the aclocal call.
1980 2003-07-05 Ben Jansens <xor@zed.orodu.net>
1982 * openbox/openbox.c: use --foo instead of -foo for cmd line arguments
1984 * render/color.c, render/render.h:
1985 try some better default offsets for big endian machines.
1986 print what the conversion is so i can see what it should be if im wrong though
1989 used RrColorShift when RrColorOffset was what we wanted
1991 * configure.ac, openbox/Makefile.am, render/Makefile.am, render/color.c, render/color.h, render/gradient.c, render/instance.c, render/instance.h, render/render.c, render/render.h:
1992 use the gdk-pixbuf-xlib library to render with
1994 * configure.ac: coment the USE_LIBSN defined variable
1996 2003-07-02 Ben Jansens <xor@zed.orodu.net>
1998 * openbox/stacking.c:
1999 rename the raise and lower functions. raise is claimed by signal.h already
2001 2003-06-30 Ben Jansens <xor@zed.orodu.net>
2003 * openbox/dock.c: set te strut smaller when autohide is on
2005 2003-06-30 woodblock <woodblock@zed>
2008 Makes a simple click not so accidently annoying by making it not
2009 execute a menu action if nothing is highlighted.
2011 2003-06-30 Ben Jansens <xor@zed.orodu.net>
2013 * openbox/extensions.c:
2014 messed up the indexes while finding the combined size of all xineerama heads
2016 * openbox/extensions.c:
2017 oops, i want the max edges to find the full area
2019 * CHANGELOG, ChangeLog: using a changelog generated off of CVS
2021 2003-06-29 Ben Jansens <xor@zed.orodu.net>
2024 the prop_get_strings_locale function looked for a utf8 typed property
2026 * openbox/focus.c, openbox/openbox.c, openbox/stacking.c:
2027 add some comments and asserts to make sure I don't ever add this bug again
2030 create the popup's window before adding it to the stacking list, so that it is stacked properly and doesnt wreck everything
2032 * Makefile.am, configure.ac, data/Makefile.am, openbox/Makefile.am, parser/Makefile.am, render/Makefile.am, themes/Makefile.am:
2033 prepare for alpha1 release.
2034 make 'make dist' work.
2036 * m4/.cvsignore, m4/Makefile.am:
2037 add a makefile so i can put stuff into the make dist
2039 * m4/python.m4: python support is gone
2042 we dont really have any translatable stuff yet but this was pointing at old cpp shit
2044 * render/gradient.c:
2045 missed setting 'current' at the end of the pyramid gradient
2047 * openbox/stacking.c:
2048 waste of energy in stacking_add, and it even caused bugs. woops.
2050 2003-06-29 woodblock <woodblock@zed>
2052 * openbox/menu.c, openbox/menu_render.c:
2053 Handle menu events a little better: don't bother updating a submenu on
2054 mouseover if it is already open, and call update on menus, even if
2055 they aren't marked as invalid.
2057 2003-06-28 Ben Jansens <xor@zed.orodu.net>
2059 * openbox/openbox.c:
2060 use fprintf not g_message in the signal handler. no mallocing allowed.
2062 * render/font.c: remove debug print
2064 * openbox/prop.c: set the values of the array at teh right indexes
2066 * openbox/prop.c: fix memory bugs
2068 * data/rc3: remove the switch to... menu
2071 don't destroy font patterns, i think this is a double free
2073 * openbox/stacking.c:
2074 put group members above the window when lowering it
2076 * openbox/stacking.c: set the stacking list when stacking changes
2079 add the themes path to the struct. make the name never include a path
2081 * configure.ac, themes/Makefile.am:
2082 adjust the themes with buttons to match how they are read now
2084 * AUTHORS: simplify this shit
2086 * render/theme.c: hardcode the button names for themes
2088 * openbox/popup.c: dont need to raise after adding
2090 * render/theme.c: rename the button_dir var to data_dir.. pointless :>
2092 2003-06-27 Ben Jansens <xor@zed.orodu.net>
2094 * openbox/Makefile.am: build 'openbox' instead of 'openbox3'.
2095 add the openbox.desktop file for gnome compat.
2097 * openbox/screen.c: set "Openbox" as the name no "Openbox3"
2099 * openbox/openbox.desktop:
2100 add a .desktop file which gets installed for gnome
2102 * openbox/.cvsignore: add the openbox binary
2104 * openbox/openbox.c: add a call to g_set_prgname
2106 * openbox/stacking.c:
2107 stacking changes, its more like the old code without being shitty and with support for raising groups at a time.
2109 * openbox/stacking.c: core when the list gets out of order
2111 * openbox/client.c, openbox/client.h, openbox/dock.c, openbox/extensions.c, openbox/extensions.h, openbox/focus.c, openbox/geom.h, openbox/menu.c, openbox/menu.h, openbox/moveresize.c, openbox/screen.c, openbox/screen.h:
2114 * data/rc3: root menu on right click
2116 * openbox/event.c: 4 space indents
2118 2003-06-26 Ben Jansens <xor@zed.orodu.net>
2121 return true when ungrabbing so that it can ungrab them all on shutdown
2124 set ret to true when grabbing and we alerady have it grabbed
2127 dont destroy the match pattern, it seems that Xft holds onto the pointer
2130 check that extensions_vidmode is set before trying to use the vidmode functions
2132 * openbox/grab.c, openbox/grab.h: return FALSE if a grab fails
2135 set the desktop hint when the window already has a hint but its out of range
2137 * openbox/event.c: clear the over item in the menu when executing shit
2139 * openbox/stacking.h:
2140 add NUM_STACKLAYER, fix some comments that dont apply
2142 * openbox/menu.c: remove unused variable
2145 remove/add instead of raising to put a window into a new layer
2147 * openbox/stacking.c:
2148 new stacking code that doesnt suck ass to look at, woot
2151 use the minsize to keep the stuff ni the dock off of the bevel edges etc
2153 * render/theme.c: add comment
2155 * render/font.c, render/font.h, render/render.c, render/render.h, render/theme.c, render/theme.h:
2156 read fonts and titlebar layout from theme files
2158 2003-06-25 Ben Jansens <xor@zed.orodu.net>
2160 * data/rc3: add right click on icon to open the client menu
2162 * render/font.c: set teh X so it gets used right
2165 keep a small space on the sides of windows between the edge and the text
2167 * openbox/event.c: only render if there was an over existing
2169 * openbox/event.c, openbox/menu.c, openbox/menu.h, openbox/menu_render.c:
2170 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
2172 * data/rc3: show the client meun on "press" on the icon
2174 * openbox/grab.c: grab all motion events for pointer grabs
2176 2003-06-24 Ben Jansens <xor@zed.orodu.net>
2178 * openbox/menu.c: position submenus correctly horizontally
2180 * openbox/menu_render.c: menus were too short by a border width
2183 check to make sure the window is on screen *after* positioning it
2185 * render/gradient.c: do horz grads without any multipliaction
2187 * render/gradient.c, render/render.h, render/test.c, render/theme.c:
2188 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.
2190 * render/gradient.c, render/test.c:
2191 integer math for gradients. horz vert and diags and pipecross work so far.
2193 2003-06-22 Ben Jansens <xor@zed.orodu.net>
2195 * openbox/menu.c, openbox/menu_render.c: add a simple menu parser.
2196 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.
2198 * openbox/openbox.c: reorder startup so menu goes before config parsing
2200 * data/rc3: add a root menu
2202 2003-06-21 Ben Jansens <xor@zed.orodu.net>
2204 * openbox/client.c, openbox/frame.c, openbox/frame.h:
2205 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.
2208 make client_reconfigure a non-user-type client_configure
2211 strdup the exec path cuz it gets freed by the time we restart otherwise
2213 * openbox/event.c: moveresize messages are not user-requests
2215 * openbox/client.c: remove debug print
2218 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.
2221 always create the bg pixmap, X seems to not like it if i dont?
2223 * openbox/openbox.c:
2224 always use the session id from the session manager when setting the restart property
2226 * openbox/openbox.c: add -sm-disable option
2228 * openbox/openbox.c:
2229 only show -sm-client-id in the help when session management is build in
2231 * openbox/openbox.c:
2232 session management works, and it can resume with its old ID, so it works with gnome-session
2234 * configure.ac, m4/x11.m4, openbox/Makefile.am, openbox/event.c, openbox/openbox.c:
2235 make session management optional
2237 * openbox/openbox.c:
2238 set the required properties so that session managers see openbox
2240 * render/font.c, render/theme.c:
2241 don't exit in the render lib, rather return a NULL font/theme on failure
2243 * openbox/event.c, openbox/openbox.c:
2244 add libSM *client* support, so we should work with gnome-session now!
2246 * render/instance.c, render/render.c: more namespacing with Rr*
2248 * render/color.c: use the pseudo shit in the instance now
2250 * render/gradient.c, render/gradient.h, render/render.c, render/color.c, render/color.h, render/image.c, render/image.h, openbox/client.c, openbox/screen.c, render/font.c, render/render.h, render/theme.h:
2251 more namespacing with Rr*
2253 * openbox/menu.h, openbox/menu.c: kill a warning
2255 * openbox/openbox.c, render/font.c, render/font.h, render/render.c, render/render.h, render/theme.c, render/theme.h:
2256 more namespacing to Rr*
2258 * openbox/menu.c: fix a warning
2260 * openbox/client.c, openbox/client.h, render/color.c, render/color.h, render/gradient.c, render/gradient.h, render/image.c, render/image.h, render/render.c, render/render.h:
2261 rename pixel32/16 to RrPixel32/16
2263 * render/color.c, render/color.h, render/render.h, render/theme.c, render/theme.h:
2264 rename color_rgb to RrColor
2266 * openbox/dock.c, openbox/frame.c, openbox/framerender.c, openbox/menu.c, openbox/menu_render.c, openbox/moveresize.c, openbox/openbox.c, openbox/openbox.h, openbox/popup.c, render/font.c, render/font.h, render/theme.c, render/theme.h:
2267 put the render theme into a struct
2269 * openbox/client.c, openbox/dock.c, openbox/dock.h, openbox/frame.c, openbox/frame.h, openbox/framerender.c, openbox/menu.c, openbox/menu.h, openbox/menu_render.c, openbox/moveresize.c, openbox/openbox.c, openbox/openbox.h, openbox/popup.c, openbox/screen.c:
2270 fixed to accomodate the changes to the render/ API.
2272 2003-06-20 Ben Jansens <xor@zed.orodu.net>
2274 * 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:
2275 this is going to break the kernel/ building.
2277 lots of modifications to the render API, prefixing everything, making proper
2278 names for everything. the structures are not hidden/opaque yet, but the naming scheme of the public API works much better now.
2280 * render/font.c: oops typo
2283 take the bevel width into account for the width available
2285 * openbox/dock.c, openbox/frame.c, openbox/framerender.c, openbox/menu_render.c, openbox/popup.c, render/font.c, render/gradient.c, render/image.c, render/image.h, render/render.c, render/render.h, render/test.c, render/theme.c, render/theme.h:
2286 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.
2288 * AUTHORS: miklos does themes like mad
2290 * render/gradient.c:
2291 slight optimizations, and make the last 4 gradients work properly
2294 center text vertically. use the font's height because all that space is needed for some charcters
2296 * openbox/frame.c, openbox/framerender.c, openbox/menu_render.c, openbox/popup.c, openbox/screen.c, render/gradient.c, render/render.c, render/render.h, render/test.c, render/theme.c:
2297 remove non-planar surfaces
2299 2003-06-19 Ben Jansens <xor@zed.orodu.net>
2301 * configure.ac, m4/gl.m4: remove --enable-gl
2304 fix for how base-size is used to comply with the icccm
2306 2003-06-18 Ben Jansens <xor@zed.orodu.net>
2308 * openbox/framerender.c: copy the frame's surface from the prototype
2310 2003-06-17 Ben Jansens <xor@zed.orodu.net>
2312 * bootstrap: export the WANT_AUTOMAKE var before running acloacl
2314 2003-06-17 manmower <manmower@zed>
2316 * openbox/client.c: wake up old icon grabbing code
2318 * render/color.c: remove unneeded/uncompiled junk
2320 2003-06-09 manmower <manmower@zed>
2322 * openbox/client.c: try swapping bytes on textures
2324 * openbox/client.c: | != &
2326 * openbox/client.c: fix? color on icons
2328 * openbox/client.c: remove bogus byte permutations in icon code
2330 2003-06-08 Ben Jansens <xor@zed.orodu.net>
2333 remove an extra useless call to focus_set_client(NULL)
2335 * openbox/client.c: describe the complicated if a bit :)
2337 * openbox/client.c: more checks for when to do an XResizeWindow
2340 send the configure notify for resizes too, just to be a little more safe
2343 onlt send configurenotify if the client actually moved, to work around emacs, hopefully :)
2346 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.
2348 * openbox/client.c: from icccm:
2349 If a base size is not provided, the minimum size is to be used in its place and vice versa.
2351 Added support for this.
2353 * openbox/frame.c: missing another bwidth
2355 * openbox/frame.c: position titlebars better, was missing a bwidth
2357 * openbox/client.c: i was backwards
2359 * openbox/event.c: this cnofigure is FINAL!
2362 don't resize the client itself while doing a resize if its not final when config_opaque_resize is not on
2364 2003-06-04 Ben Jansens <xor@zed.orodu.net>
2367 better VIDMODE support, handle the cases where the functions fail
2370 size fullscreen applications to the resolution with the VIDMODE extension
2372 * openbox/client.c, openbox/client.h, openbox/screen.c:
2373 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.
2375 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.
2376 call client_reconfigure when uniconifying a window, so that fullscreen windows are put at the point of the view port.
2379 remove that fancy new leftHanded option, it should be done via xmodmap instead
2382 add a leftHanded option for mouse bindings, reverses the left/right keywords
2384 * openbox/grab.c, openbox/grab.h:
2385 make key grabbing per window instead of always root
2387 * openbox/focus.c: allow cycling to iconic windows
2390 use client_can_focus from client_focus to always get the same result
2392 * openbox/client.c, openbox/client.h, openbox/focus.c:
2393 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
2396 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
2399 dont try change focus while looping thru the focus list
2401 * openbox/client.c, openbox/client.h, openbox/focus.c:
2402 allow focus_fallback to query if a client can be focused without changing the focus order on it
2404 2003-06-03 Ben Jansens <xor@zed.orodu.net>
2406 * openbox/event.c, openbox/frame.c, openbox/frame.h, openbox/framerender.c, openbox/popup.c:
2407 modifications to keep up with libobrender2
2409 * openbox/popup.c: use theme stuff for the gfx/font
2411 * openbox/frame.c: layout fixes
2413 * openbox/frame.c: position the grips
2415 * openbox/framerender.c: fix some theme colors/display
2417 * m4/gl.m4, openbox/Makefile.am, openbox/client.c, openbox/client.h, openbox/dock.c, openbox/dock.h, openbox/event.c, openbox/frame.c, openbox/frame.h, openbox/framerender.c, openbox/menu.c, openbox/menu.h, openbox/menu_render.c, openbox/moveresize.c, openbox/openbox.c, openbox/openbox.h, openbox/popup.c, openbox/screen.c, openbox/window.c, render/.cvsignore, render/Makefile.am, render/color.h, render/font.c, render/font.h, render/gradient.c, render/gradient.h, render/image.c, render/image.h, render/mask.c, render/mask.h, render/render.c, render/render.h, render/test.c, render/theme.c, render/theme.h, COPYING, COPYING.FDL, COPYING.GPL, COPYING.LGPL, Makefile.am, README, configure.ac:
2418 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.
2420 * openbox/stacking.c: remove debug print
2423 more unique error for unhandles image bit depths, remove debug prints
2425 * render/color.c: handle increase_depth on 1bpp images
2428 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.
2430 * openbox/client.c: rm g_messages.. ones that segfault.. :>
2432 2003-06-02 Ben Jansens <xor@zed.orodu.net>
2434 * openbox/client.c: also dont increment the nicons if the w*h is 0
2436 * openbox/client.c: watch out for 0x0 icons, and skip them
2438 * openbox/menu_render.c, openbox/popup.c:
2439 create some temporary fonts to use for rendering text
2441 * openbox/frame.c, openbox/menu_render.c, openbox/popup.c:
2444 * openbox/frame.c, openbox/popup.c:
2445 adjust for some api extensions in render2
2447 * bootstrap: add env var to get automake 1.7
2449 2003-06-01 Ben Jansens <xor@zed.orodu.net>
2451 * COPYING, COPYING.FDL, COPYING.GPL, COPYING.LGPL, Makefile.am, README, configure.ac, m4/gl.m4, openbox/Makefile.am, openbox/client.c, openbox/client.h, openbox/dock.c, openbox/dock.h, openbox/event.c, openbox/frame.c, openbox/frame.h, openbox/framerender.c, openbox/menu.c, openbox/menu.h, openbox/menu_render.c, openbox/moveresize.c, openbox/openbox.c, openbox/openbox.h, openbox/popup.c, openbox/screen.c, openbox/window.c, openbox/window.h, render/.cvsignore, render/Makefile.am, render/color.c, render/color.h, render/font.c, render/font.h, render/gradient.c, render/gradient.h, render/image.c, render/image.h, render/mask.c, render/mask.h, render/render.c, render/render.h, render/test.c, render/theme.c, render/theme.h:
2452 Merging in th gl2 branch. Adding a --enable-gl option to the configure script, which defaults off.
2454 2003-05-30 manmower <manmower@zed>
2456 * openbox/frame.c: adjust title bar text
2458 2003-05-30 Ben Jansens <xor@zed.orodu.net>
2461 adjust what gets raised on map a bit, a little less selective.
2463 2003-05-30 manmower <manmower@zed>
2465 * openbox/frame.c: add some test cases for the font crap
2467 2003-05-29 Ben Jansens <xor@zed.orodu.net>
2469 * m4/openbox.m4: better alpha/beta check :)
2471 * m4/openbox.m4: look for 'alpha' and 'beta' releases also
2473 * openbox/stacking.c:
2474 only add non-nonintrusively when both windows share a stacking layer
2476 * data/rc3: raise on client clicks
2478 2003-05-28 Ben Jansens <xor@zed.orodu.net>
2480 * COPYING: remove the generic COPYING
2482 * COPYING.FDL, COPYING.GPL, COPYING.LGPL: New file.
2484 * COPYING.FDL, COPYING.GPL, COPYING.LGPL, README:
2485 specify different licenses for different directories
2487 * openbox/action.c, openbox/action.h:
2488 rm the 'focusraise' action, it is redundant.
2490 * openbox/frame.c: use the new shape API from the render libs
2493 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
2496 no button mask on the plate, and some cleanups with redundant if's
2498 2003-05-28 manmower <manmower@zed>
2500 * openbox/frame.c: slightly improved theme
2502 2003-05-28 Ben Jansens <xor@zed.orodu.net>
2504 * openbox/popup.c: proper centering of the text in popups without icons
2506 2003-05-27 manmower <manmower@zed>
2508 * openbox/frame.c, openbox/frame.h: fixed the flicker in shape
2509 (we use a shapewindow now. it rules, I rule, fuck X, blah blah MOOOOOOO)
2511 2003-05-27 Ben Jansens <xor@zed.orodu.net>
2513 * openbox/frame.c: and typod
2515 * openbox/frame.c, openbox/frame.h:
2516 some cleanups, got rid of the border shit
2518 * openbox/event.c: toss out expose events to render
2520 * openbox/popup.c: no more seg
2522 * openbox/frame.c, openbox/frame.h: some cleanups
2524 2003-05-27 manmower <manmower@zed>
2526 * openbox/frame.c: free decor when removing frame
2528 * openbox/frame.c: HOW DO YOU LIKE MY SEXY NEW DECOR?!?
2530 * openbox/frame.c: I get my events on decor again
2531 and probably ruined exposure for some weird case. bwa ha ha
2533 * openbox/frame.c, openbox/frame.h: how about some UGLY decor!
2535 2003-05-27 Ben Jansens <xor@zed.orodu.net>
2537 * openbox/popup.c: paints are now recursive
2539 2003-05-27 manmower <manmower@zed>
2541 * openbox/frame.h: surface pointer please
2543 2003-05-27 Ben Jansens <xor@zed.orodu.net>
2545 * openbox/popup.c: proper layout
2547 * openbox/popup.c: i suck so much
2549 * openbox/event.c, openbox/menu.c, openbox/popup.c: DRAWS!!
2551 2003-05-27 manmower <manmower@zed>
2553 * openbox/frame.c, openbox/frame.h: added shape support for decor
2555 2003-05-27 Ben Jansens <xor@zed.orodu.net>
2557 * openbox/popup.c: dont try use an icon when where isnt one
2559 * openbox/client.c, openbox/client.h, openbox/dock.c, openbox/dock.h, openbox/frame.c, openbox/frame.h, openbox/framerender.c, openbox/menu.c, openbox/menu.h, openbox/menu_render.c, openbox/moveresize.c, openbox/openbox.c, openbox/openbox.h, openbox/popup.c, openbox/screen.c, openbox/window.c:
2560 port to the new render stuff.. but this isnt complte since we don't have themes yet.
2562 * 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:
2563 removing the old render stuffs
2565 2003-05-27 manmower <manmower@zed>
2567 * openbox/frame.c, openbox/frame.h: added % based decoration sizes
2569 * openbox/frame.c, openbox/frame.h: fixed right decor anchors properly
2571 * openbox/frame.c: fix right anchor point offsets
2573 * openbox/frame.c: position windows for all anchor types
2575 * openbox/frame.c: all decor anchors supported
2577 * openbox/event.c, openbox/frame.c:
2578 change event.c to use a frame pointer instead of client pointer in framedecor
2579 frame.c now supports more decor anchors
2581 yay for 1 to many commit logs
2583 2003-05-26 Ben Jansens <xor@zed.orodu.net>
2585 * openbox/Makefile.am: link render version 2
2587 2003-05-26 manmower <manmower@zed>
2589 * openbox/frame.c, openbox/frame.h:
2590 frame pointer in framedecor instead of client pointer
2592 2003-05-26 Ben Jansens <xor@zed.orodu.net>
2594 * openbox/event.c, openbox/window.c: add case for Window_Decoration
2596 2003-05-26 manmower <manmower@zed>
2598 * openbox/frame.c, openbox/frame.h: client pointer in framedecor
2600 * openbox/frame.c: crap
2602 * openbox/frame.c, openbox/frame.h:
2603 I can now map arbitrarily sized invalid space above my windows!
2607 we now have no decor at all, but are otherwise functional
2609 2003-05-26 Ben Jansens <xor@zed.orodu.net>
2612 use frame->visible, not the desktop number, other states exist too, like show_desktop
2614 * openbox/dock.c, openbox/frame.c, openbox/frame.h, openbox/framerender.c, openbox/menu.c, openbox/popup.c, openbox/screen.c, openbox/window.h:
2615 merge in the changes made in the gl branch
2617 * Makefile.am, configure.ac:
2618 create the glft library. it will be using freetype and fontconfig to render fonts in GL.
2619 flesh out render2 a bit more.. actually just in comments
2621 * Makefile.am, configure.ac:
2622 add a new render2 lib, which has a proper API and uses only OpenGL to render.
2624 * render/render.c: remove GL from the old render lib for now
2626 * configure.ac, m4/gl.m4:
2627 gl support in configure, fontconfig instead of xft
2629 2003-05-26 manmower <manmower@zed>
2631 * openbox/frame.c: add back some frame adjust stuff
2633 * openbox/frame.c, openbox/frame.h, openbox/framerender.c, openbox/window.h:
2634 complete destruction of all current frame functionality.
2637 2003-05-25 manmower <manmower@zed>
2639 * render/gradient.c, render/mask.c, render/render.c, render/render.h, render/test.c, render/theme.c, render/theme.h, openbox/dock.c, openbox/frame.c, openbox/framerender.c, openbox/menu.c, openbox/popup.c, openbox/screen.c, render/color.c, render/color.h:
2640 everything compiles. everything is broken.
2642 rendertest works, yay.
2644 * render/render.c: now it even links.
2646 * render/font.c, render/font.h, render/gradient.c, render/gradient.h, render/render.c, render/render.h:
2647 once again it compiles.
2649 no, it does not work
2651 much has been removed.
2653 2003-05-25 Ben Jansens <xor@zed.orodu.net>
2655 * configure.ac, m4/gl.m4:
2656 right branch. no more xft. fontconfig. gl. woot.
2658 * configure.ac, m4/gl.m4: omg wrong branch!
2660 * configure.ac, m4/gl.m4: always gl. fontconfig instead of xft.
2662 2003-05-25 manmower <manmower@zed>
2664 * render/gradient.c: gl.h shouldn't be required when not enabling gl
2666 2003-05-25 Ben Jansens <xor@zed.orodu.net>
2668 * README.CVS: add the glade/gtk deps for debian
2670 2003-05-25 manmower <manmower@zed>
2672 * render/gradient.c, render/test.c: all grads done
2674 * render/gradient.c, render/test.c: pipecross
2676 * render/gradient.c, render/test.c: rectangle and diagonal grads yay
2680 2003-05-25 Ben Jansens <xor@zed.orodu.net>
2682 * data/rc3: Shade not Shaded
2684 * README.CVS: add debian package list
2686 * README.CVS: automake 1.7
2688 * README.CVS: mention glib, xml, gtk and glade
2691 make autoconf 2.54 required. makes automake1.6 get used on some systems
2693 2003-05-25 manmower <manmower@zed>
2695 * render/gradient.c, render/gradient.h, render/render.c, render/render.h, render/test.c:
2696 gl is starting. it's gonna get really ugly really fast, folks
2698 2003-05-24 Ben Jansens <xor@zed.orodu.net>
2700 * Makefile.am, configure.ac, openbox/Makefile.am, openbox/action.c, openbox/action.h, openbox/config.c, openbox/focus.c, openbox/openbox.c, openbox/parse.c, openbox/parse.h, openbox/plugin.c, parser/.cvsignore, parser/Makefile.am, parser/parse.c, parser/parse.h, tools/.cvsignore, tools/Makefile.am:
2701 this is a big one! im putting stats in here just cuz!
2702 59 files changed, 1691 insertions(+), 607 deletions(-)
2703 Adding the beginings of ObConf. Adding a resistance-config plugin for ObConf.
2704 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)
2707 convert shit from utf8 to filename before execing it
2709 * configure.ac, data/rc3, openbox/Makefile.am, openbox/config.c, openbox/openbox.c, openbox/parse.c, openbox/parse.h, openbox/parse.l, openbox/parse.y:
2712 * openbox/action.c, openbox/action.h:
2713 add actions for showing the desktop
2715 * openbox/action.c, openbox/action.h: soem changes to desktop actions.
2716 instead of having *wrap actions, just default to having wrap on, and let it be optionally placed into the rc to disable it.
2717 instead of next/prev desktop, just have actions for desktop to the right/left/up/down. this applies to sendtodesktop actions too.
2719 * openbox/focus.c: add a DEBUG_FOCUS print
2722 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.
2724 * openbox/client.c: use the user friendly desktop number
2726 * openbox/focus.c: clarify comment
2728 2003-05-23 Ben Jansens <xor@zed.orodu.net>
2731 dont refocus the focused window, that just causes so many problems (with alt-tab :)
2733 * openbox/prop.c: validate utf8 strings before using them
2735 * configure.ac, m4/gl.m4, openbox/Makefile.am, render/Makefile.am:
2736 add --enable-gl support, and put the flags/libs in the appropriate makefiles
2738 * openbox/focus.c: remove a todo item that seems to be.. done!
2741 missed a case of using the stacking list and assuming that its all clients still. fixed that assumption now.
2744 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.
2746 2003-05-22 manmower <manmower@zed>
2748 * render/test.c: fix cut'n'paste bug
2750 2003-05-22 Ben Jansens <xor@zed.orodu.net>
2752 * openbox/event.c: only button 1 can use menu items
2754 2003-05-22 manmower <manmower@zed>
2756 * render/render.c: removed a piece of code I suspect has never been run
2757 this is for XServers that report less than 8 bpp default visual and support
2758 8bpp or higher visuals
2760 hopefully nothing is really that stupid. we'll see.
2762 * render/render.h, render/render.c:
2763 keep XVisualInfo around in preparation for opengl stuff
2765 2003-05-22 Ben Jansens <xor@zed.orodu.net>
2768 remove shit for my own makefiles that i dont need no more
2770 * openbox/event.c: a missing break!
2772 2003-05-22 woodblock <woodblock@zed>
2774 * openbox/menu.c: layers submenu on client
2776 2003-05-22 Ben Jansens <xor@zed.orodu.net>
2778 * openbox/action.c, openbox/action.h, openbox/client.c, openbox/client.h:
2779 add actions for changing client layers to abov/below/normal
2781 * openbox/client.c: typo
2783 * openbox/plugin.c: load the client_menu by default for nowc
2785 2003-05-21 woodblock <woodblock@zed>
2787 * data/rc3, openbox/client.c, openbox/event.c, openbox/menu.c, openbox/menu.h:
2789 Add "client_menu" to pluginrc to use.
2791 2003-05-21 Ben Jansens <xor@zed.orodu.net>
2793 * render/font.c: optimize it a bit
2796 pass the number of bytes, not characters to the xft draw functions
2798 * openbox/action.c, openbox/action.h: add 'movetoedge' actions
2800 * openbox/screen.c: add xerror.h
2803 Openbox3 in the WM name, FUCK OFF XINE, YA YOU HEARD ME.
2805 * render/gradient.c: allocate the border_color's gc
2807 2003-05-20 Ben Jansens <xor@zed.orodu.net>
2809 * render/color.c, render/render.c:
2810 put the devation back how it used to be, it aws definately no better..
2812 2003-05-20 manmower <manmower@zed>
2814 * render/gradient.c:
2815 of by one error in pyramid, rectangle, and crosspipe
2817 2003-05-20 Ben Jansens <xor@zed.orodu.net>
2819 * render/gradient.c: remove debug prints
2821 * render/gradient.c: reindent the file....
2822 but while i'm at it:
2823 - add support for bevels/borders on solid textures.
2824 - reverse the colors in the rectangle gradient, the pipecross and pyramid
2825 ones may need to be reversed as well.
2827 * render/render.c, render/render.h: remove the elliptic gradient type.
2828 add bevel light/dark colors for solid textures with bevels
2831 use the rectangle gradient when the theme asks for elipse
2833 * m4/openbox.m4: argh put it back right!*(
2835 * m4/openbox.m4: fuck it, put it back
2837 * m4/openbox.m4: smarter default debug value :)
2839 * m4/openbox.m4: default debug off (for non-cvs builds!)
2842 ignore errors when playing with application defined colormaps
2844 2003-05-19 Ben Jansens <xor@zed.orodu.net>
2846 * openbox/dock.c: get the size for all the apps before positioning them
2849 set teh dock sizes before the app uses it for positioning
2851 * openbox/dock.c: center dock apps
2853 * openbox/action.c: use the resize increment when resizing relative
2855 * openbox/action.c, openbox/action.h, openbox/client.c, openbox/client.h:
2857 a) directional focus actions
2858 b) action system changes i.e. use structs/arrays for convertings strings to actions instead of gross if-else chains
2860 2003-05-18 woodblock <woodblock@zed>
2862 * openbox/menu.c: Added a fifo_menu plugin
2864 2003-05-18 manmower <manmower@zed>
2866 * render/gradient.c, render/test.c: PipeCross
2868 * render/gradient.c: there's the rect grad. now stop bugging me :(
2870 * render/gradient.c: is that a rectangle grad? damned if I know
2872 2003-05-18 Ben Jansens <xor@zed.orodu.net>
2874 * openbox/client.c, openbox/client.h, render/color.c, render/color.h, render/image.c, render/render.c, render/render.h:
2875 make icons use pixel32 data, and image_draw takes pixel32 data.
2876 client.c gets pixmap icons as a backup to netwm ones, and they are converted into pixel32 data.
2878 * openbox/focus.c: include grab.h
2880 2003-05-18 manmower <manmower@zed>
2882 * render/test.c: whatever, it's a junk file.
2884 * render/gradient.c: change badly named offsets
2885 add stubs for rectangle and pipecross
2887 * render/image.c: rename poorly named offsets
2889 * render/gradient.h: add stubs for pipecross and rectangle
2891 * render/color.h: fix poor naming of default offset
2893 * render/color.c: fix poor naming of the default offset
2895 2003-05-18 woodblock <woodblock@zed>
2898 this is actually xor :) - fixing the focus search function to not return NULL if no valid group members exist to be a transient for
2900 2003-05-18 Ben Jansens <xor@zed.orodu.net>
2902 * openbox/stacking.c:
2903 proper check to see if something was raised, the it==NULL would cause it to always return, incorrectly.
2905 * openbox/client.c, openbox/client.h, openbox/event.c, openbox/stacking.c, render/render.c, render/render.h:
2908 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).
2910 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.
2912 2003-05-18 woodblock <woodblock@zed>
2914 * HACKING: Indentation stuff
2916 2003-05-18 Ben Jansens <xor@zed.orodu.net>
2918 * configure.ac: actually optional now.
2920 * configure.ac: make LIBSN optional
2923 grab the mouse during focus cycling. this removes the bug of focusing following the mouse when the popup disappears and fuck up your cycling.
2925 * render/Makefile.am: need the libsn flags
2927 * configure.ac, openbox/Makefile.am, openbox/event.c, openbox/openbox.c, openbox/openbox.h, openbox/screen.c:
2928 add (optional) support for showing a busy cursor via startup notification
2930 2003-05-17 Ben Jansens <xor@zed.orodu.net>
2932 * openbox/event.c: disallow drag events on title buttons.
2933 dont redraw title button when the wheel buttons are used on them.
2935 2003-05-16 Ben Jansens <xor@zed.orodu.net>
2937 * openbox/client.c: print the class not the name
2939 * openbox/prop.c: get all the strings!
2941 * openbox/client.c, openbox/dock.c, openbox/dock.h:
2942 save the dock's class/name for future evil purposes!
2943 also print names of windows being managed/unmanaged
2945 * data/rc3: discourage floating a bit, capitalize better.
2947 * openbox/dock.c: FUCK dock is not an array anymore!
2949 * openbox/dock.c, openbox/dock.h, openbox/screen.c:
2950 give the dock a strut and use it
2952 * openbox/event.c: remove debug prints
2954 * openbox/dock.c, openbox/dock.h, openbox/event.c:
2955 dockapps are ObWindows now.
2956 set the type when creating new dockapps.
2958 * data/rc3, openbox/Makefile.am, openbox/client.c, openbox/client.h, openbox/config.c, openbox/config.h, openbox/dock.c, openbox/dock.h, openbox/event.c, openbox/frame.c, openbox/menu.c, openbox/menu.h, openbox/openbox.c, openbox/screen.c, openbox/slit.c, openbox/slit.h, openbox/window.c, openbox/window.h:
2959 rename "Slit" to "Dock".
2960 add config options to the rc3 for the dock.
2961 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).
2963 * openbox/client.c, openbox/menu.c, openbox/moveresize.c, openbox/popup.c, openbox/slit.c, openbox/stacking.c, openbox/stacking.h:
2964 add anotehr stacking_add function.
2965 make stacking_add take care of raising also.
2966 make new windows that dont get focus also not raise above the focused window.
2968 * openbox/event.c: movnig shit around
2970 2003-05-14 Ben Jansens <xor@zed.orodu.net>
2972 * openbox/menu.c: watch out for not loading the timed_menu plugin
2974 * openbox/client.c: pass teh correct values for config notify events
2976 2003-05-14 woodblock <woodblock@zed>
2978 * openbox/event.c, openbox/event.h, openbox/menu.c:
2979 Added a menu to read from a pipe.
2980 File descriptors added to the event loop.
2982 2003-05-12 woodblock <woodblock@zed>
2984 * openbox/event.c, openbox/event.h, openbox/menu.c:
2985 woodblock's failed attempt at making pipes work
2987 2003-05-11 Ben Jansens <xor@zed.orodu.net>
2989 * data/rc3, openbox/config.c, openbox/config.h, openbox/moveresize.c:
2990 add opaque move/resize to the rc3
2992 * openbox/stacking.c:
2993 was using the frame window in the stacking list hint
2995 * openbox/event.c, openbox/menu.c, openbox/moveresize.c, openbox/popup.c, openbox/stacking.c, openbox/window.c, openbox/window.h:
2996 add internal popups n shit to the stacking list.
2997 some cleanups for the stacking order hint.
2998 add non-opaque move/resize. cant toggle it yet.
3000 * openbox/menu.c: rm comment for shit i fixed
3002 * TODO: updated... it sucks tho anyways
3005 not everything in the stacking_list is a client anymore
3007 * openbox/event.c, openbox/menu.c:
3008 Menus put themselves into the stacking list.
3009 Clicking on the menu (but not on an entry) will raise it.
3011 * openbox/Makefile.am, openbox/action.c, openbox/client.c, openbox/client.h, openbox/config.h, openbox/event.c, openbox/focus.c, openbox/menu.c, openbox/menu.h, openbox/openbox.c, openbox/slit.c, openbox/slit.h, openbox/stacking.c, openbox/stacking.h, openbox/window.c, openbox/window.h:
3012 Clients Menus and Slits are all 'ObWindow's now.
3013 Stacking is done with ObWindows.
3014 Slits add themselves to the stacking order, as do clients of course.
3015 Added some macros for adding/removing to the stacking order.
3018 garb press events so they dont break bindings... X sucks
3021 grab button events on the slit so they dont go through to root
3023 * openbox/client.c, openbox/slit.c, openbox/slit.h:
3024 use the size of the icon window for slit apps, not the client window
3026 * openbox/event.c, openbox/grab.c, openbox/grab.h, openbox/slit.c, openbox/slit.h:
3027 can drag slit-apps around in the slit
3029 2003-05-10 Ben Jansens <xor@zed.orodu.net>
3031 * openbox/event.c, openbox/slit.c, openbox/slit.h, openbox/timer.h:
3032 add autohiding to the slit
3034 * openbox/event.c, openbox/slit.c, openbox/slit.h:
3035 some slit fixes, support resizing slitapps
3037 * Makefile.am, configure.ac: rm the tools dir
3039 * tools/Makefile.am: rm this garbage...
3041 * openbox/Makefile.am, openbox/client.c, openbox/event.c, openbox/frame.c, openbox/openbox.c, openbox/screen.c, openbox/slit.c, openbox/slit.h:
3042 add a slit to the kernel
3044 * doc/.cvsignore: add the sgml dir
3046 * openbox/menu.c: make the client menu not have a title
3049 be more careful about ignoring focusin/out event pairs
3051 2003-05-10 woodblock <woodblock@zed>
3053 * openbox/menu.c: Turn off timed_menu by default
3055 * openbox/menu.c, openbox/menu.h:
3056 Timed menu that reads output from a process while the window is hidden
3058 * openbox/event.c, openbox/menu_render.c: whitespace
3060 2003-05-09 Ben Jansens <xor@zed.orodu.net>
3062 * configure.ac: nice merge
3064 2003-05-09 woodblock <woodblock@zed>
3066 * configure.ac, openbox/event.c, openbox/menu.c, openbox/menu.h, openbox/menu_render.c, openbox/plugin.c, openbox/plugin.h, openbox/timer.c:
3068 Since we have no menu parser see menu_startup() to customize
3070 2003-05-09 Ben Jansens <xor@zed.orodu.net>
3072 * openbox/client.c, openbox/client.h, openbox/event.c, openbox/focus.c:
3073 add a client_activate function, use it for net_wm_active mesgs and for focus cycling.
3075 * openbox/focus.c: unshade windows when you cycle focus to them
3077 * openbox/openbox.c, openbox/popup.c, openbox/popup.h, tools/Makefile.am:
3078 add shit that i made in the last week!
3080 * HACKING, Makefile.am, configure.ac, data/rc3, m4/x11.m4, openbox/Makefile.am, openbox/client.c, openbox/client.h, openbox/config.c, openbox/config.h, openbox/event.c, openbox/extensions.c, openbox/extensions.h, openbox/focus.c, openbox/framerender.c, openbox/framerender.h, openbox/menu.c, openbox/moveresize.c, openbox/moveresize.h, openbox/openbox.c, openbox/parse.h, openbox/parse.l, openbox/parse.y, openbox/screen.c, openbox/screen.h, openbox/stacking.c, render/font.c, render/image.c, render/render.c, render/render.h, render/theme.c, render/theme.h:
3081 all my changes while i was offline.
3082 better alt-tabbing. better transient handling. i dont even know. lots of fucking cool shit so WATCH the FUCK OUT.
3084 2003-04-28 Ben Jansens <xor@zed.orodu.net>
3087 move windows before calcing struts. watch for windows on DESKTOP_ALL when removeing a desktop
3089 2003-04-27 Ben Jansens <xor@zed.orodu.net>
3091 * openbox/client.c, openbox/stacking.c:
3092 a more correct for the missing frame problem. don't restack windows when changing the window's layer while it is being managed.
3094 * openbox/stacking.c:
3095 watch for windows without frames, they can be in the transient order before they get fully managed
3097 * doc/themerc.txt: no longer pertinent
3099 * render/image.c, render/image.h, render/render.c:
3100 fix window icon rendering, was using incorrect size.
3102 * render/color.h: its G_BYTE_ORDER not G_ENDIAN.
3104 2003-04-26 Ben Jansens <xor@zed.orodu.net>
3106 * openbox/moveresize.c:
3107 show the move coords for where the window will actually be
3109 2003-04-25 Ben Jansens <xor@zed.orodu.net>
3111 * openbox/client.c: only focus on startup if focus_new is true
3113 * openbox/Makefile.am, openbox/client.c, openbox/openbox.c, openbox/screen.c, openbox/startup.c, openbox/startup.h:
3114 restore the desktop and focused window on restarts if possible
3116 * openbox/action.c, openbox/client.c, openbox/client.h, openbox/focus.c, openbox/focus.h:
3117 add helper functions for manipulating the focus_order list.
3118 move the focus popup into focus.c, out of action.c
3119 allow cycling to iconic windows, which are kept at the bottom of the focus_order lists.
3121 * openbox/event.c, openbox/focus.c, openbox/frame.c, openbox/frame.h, openbox/framerender.c:
3122 let the frame hold a focus state so that it can lie.
3123 dont focus windows while cycling, just highlight them as if they are focused
3125 * openbox/framerender.c: icons are not at +1 anymore
3127 2003-04-24 Ben Jansens <xor@zed.orodu.net>
3130 some more checks for transients looping on eachother when they are transients of a group
3132 2003-04-22 Ben Jansens <xor@zed.orodu.net>
3135 client side shit ISNT 32 bits on 64 bit platforms, its 64 bits. fuck X so hard.
3137 2003-04-22 woodblock <woodblock@zed>
3139 * CHANGELOG: NLS update
3141 2003-04-22 Ben Jansens <xor@zed.orodu.net>
3144 even better checks for when to focus new windows. focus dialogs when they are the only member of their group
3146 2003-04-22 woodblock <woodblock@zed>
3148 * openbox/menu.c, openbox/menu.h, openbox/menu_render.c:
3149 More menu changes to facilitate plugins.
3151 * openbox/Makefile.am, openbox/menu.c, openbox/menu.h, openbox/menu_render.c:
3152 Render menus only when they are invalid.
3154 2003-04-21 Ben Jansens <xor@zed.orodu.net>
3156 * README.CVS: add automake
3158 * data/rc3: focus on press onm the titlebar buttons
3161 yet more changes to choosing to focus windows when they mapp
3163 * openbox/parse.h, openbox/parse.y:
3164 try avoid cicular includes with the bison shit
3166 2003-04-20 woodblock <woodblock@zed>
3170 2003-04-20 Ben Jansens <xor@zed.orodu.net>
3172 * openbox/frame.c, openbox/framerender.c:
3173 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
3175 * openbox/client.c: new focus-new rules
3177 2003-04-20 woodblock <woodblock@zed>
3179 * CHANGELOG: Update log
3181 2003-04-19 Ben Jansens <xor@zed.orodu.net>
3183 * openbox/client.c: i lied.. fuck @ those gnome dialogs
3185 * openbox/client.c: lighten up a bit on the focus new windows criteria
3187 * openbox/event.c: rm invalid comment
3189 * openbox/event.c: only look for FocusOut events on the same window
3192 convert STRING properties from "ISO-8859-1" instead of from the current locale, since this is what they apparently are, according to gdk.
3194 * openbox/prop.c: check the string not the pointer to it
3196 2003-04-18 Ben Jansens <xor@zed.orodu.net>
3198 * openbox/event.c: the mouse grab screws that up
3200 * openbox/event.c: dispatch presses and releases during a move/resize
3202 * openbox/event.c: kill the debug prints for now
3204 * openbox/event.c: nm cant do it.. damn
3207 ignore another type of crossing event, caused when leaving gtk popup menus
3209 * openbox/focus.c: just formatting
3212 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.
3215 adjust choosing to focus new windows, make it more strict.
3216 eat all Enter events when unmapping a window so focus fallback can be more smarter..
3218 * openbox/screen.c: dont need to sync
3220 * openbox/focus.c: check for client_normal before focusing
3223 when unfocusing a window (e.g. unmanaging) try fallback to transient relations, if that fails, try group relations, then fallback to other window.
3226 try focus other transients of the parent window when a transient falls back before focusing the parent
3228 * openbox/moveresize.c: unset it AFTER using it...
3230 * openbox/moveresize.c: unset the client when done moveresizing
3232 * openbox/openbox.c:
3233 don't wait(), the glib function does that for us woot.
3236 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.
3238 * openbox/focus.h: comment typo
3240 * openbox/client.c, openbox/moveresize.c, openbox/moveresize.h:
3241 watch out when unmanaging a window, that it is not being move/resized
3243 2003-04-17 Ben Jansens <xor@zed.orodu.net>
3246 a) put transient windows on the same desktop as their parent
3247 b) if a window is attempted to be focused but it is not on the current desktop,
3248 then move it to the top of the focus order on its desktop
3251 distribute focus when entering/leaving show-the-desktop mode
3253 * openbox/event.c: remove debug print
3255 * openbox/moveresize.c, openbox/openbox.c, openbox/openbox.h:
3256 add the left/right/top/bottom direction arrows and use them for resizing those ways
3258 * openbox/event.c: dont ignore all Virtual pointer events
3260 * openbox/action.c: 02:33 (@xor) omg yes
3261 02:33 (@xor) grid workspace cycling of d3th
3263 * openbox/action.c: fix grip workspace cycling
3265 * openbox/event.c, openbox/grab.c, openbox/grab.h, openbox/moveresize.c, openbox/moveresize.h:
3266 fix up support for moveresize. make keyboard grabs Async so that i can hit escape to cancel a moveresize process.
3268 * openbox/openbox.c: do not shadow parameter pls
3270 * openbox/moveresize.c: initialize start_x/y
3272 * openbox/focus.c, openbox/moveresize.c, openbox/moveresize.h, openbox/openbox.c, openbox/openbox.h:
3273 add support for interactive/keyboard move/resize
3275 * openbox/event.c, openbox/prop.c, openbox/prop.h, openbox/screen.c:
3276 add support for net_moveresize_window and net_wm_moveresize
3278 * openbox/frame.c: use the new cursor defn's
3280 * openbox/screen.c: use the new ptr cursor defn
3282 * openbox/Makefile.am, openbox/action.c, openbox/action.h, openbox/event.c, openbox/moveresize.c, openbox/moveresize.h, openbox/prop.c, openbox/prop.h:
3283 move the move/resize functionality into moveresize.c, for use with the netwm atoms. use it from teh plugins. combine the two actions.
3285 * openbox/framerender.c: put text centered in the popup dialog properly
3287 * data/rc3: make alt-middle the default resize binding
3289 * openbox/openbox.c, openbox/openbox.h:
3290 add more cursors for move/resizing, and use the arrows not the angle brackets
3293 grab pointer during cycling to remove focus screwups from focus-follows-mouse.
3294 grab during move/resize and assign a cursor while doing the move/resize too!
3296 * openbox/event.c: ignore virtual crossing events..
3298 * openbox/focus.c: that was dumb, it was metacity's fault
3300 * openbox/focus.c: only cycle to visible windows
3302 2003-04-16 Ben Jansens <xor@zed.orodu.net>
3304 * openbox/event.c: dont send menu events to plugins
3306 * data/rc3: show the root menu on right click
3308 * openbox/event.c, openbox/grab.c, openbox/grab.h, openbox/menu.c, openbox/menu.h:
3309 menus works on some level. add a built-in root menu
3311 * openbox/client.c: code cleanup
3313 * openbox/client.c: when flags are not set assume bette defaults
3315 * openbox/event.c, openbox/focus.c, openbox/menu.c, openbox/menu.h, openbox/openbox.c, openbox/stacking.c, openbox/stacking.h:
3316 raise menus above clients.
3317 hilight menu entries as the cursor passes over them.
3319 * openbox/menu.c, openbox/menu.h:
3320 save the window ids in a map for the menus
3322 * openbox/client.c: only change the group info if the group flag is set
3324 * openbox/client.c: only add transients if we are IN a group
3326 * openbox/client.c: oops nm
3328 * openbox/client.c: less ()s cleanup
3331 remove transients before removing ourlselves from teh group
3334 set the group to null when removeing ourselves from it
3336 2003-04-15 Ben Jansens <xor@zed.orodu.net>
3338 * openbox/action.c: watch out for missing a name
3340 * render/theme.c: make menu font smaller and !bold for now
3342 * openbox/action.c, openbox/action.h, openbox/framerender.c, openbox/menu.c, openbox/menu.h, openbox/openbox.c:
3343 start of showing/rendering menus. woot!
3345 * render/theme.c, render/theme.h: load menu style stuff
3347 * render/render.c, render/render.h:
3348 make minsize take int*'s not a Size*
3351 remove transients of the group from teh window when it leaves the group
3353 * openbox/client.c: add group transients when setting up the group
3355 * openbox/client.c: bug in the search for transient_for's
3357 * data/rc3: update the theme stuff
3359 2003-04-15 manmower <manmower@zed>
3361 * render/gradient.c: PYRAMID PARTY PART 2!!!
3363 * render/gradient.c, render/gradient.h: PYRAMID PARTY!!!
3365 2003-04-15 Ben Jansens <xor@zed.orodu.net>
3367 * openbox/screen.c: remove debug print
3369 2003-04-14 Ben Jansens <xor@zed.orodu.net>
3371 * openbox/client.c, openbox/prop.c, openbox/screen.c:
3372 fixes for handling char**s
3374 * render/font.c: indenting oopsie
3377 dont get a null at the end of the data, so use strndup
3379 * openbox/screen.c: fix a seg from ignoreing PROP_GETSS failure
3381 * openbox/screen.c: more fixes for working with char**s
3383 * openbox/screen.c: nullify the ends of the char**
3385 * openbox/client.c, openbox/prop.h, openbox/screen.c:
3386 remove casts from PROP defines. use proper vars and cast elsewhere if needed.
3388 * render/font.c: text justification
3391 shrink the area that the textures are rendered into by the bevels/borders
3393 * openbox/client.c, openbox/prop.c, openbox/prop.h, openbox/screen.c, openbox/screen.h, openbox/stacking.c:
3394 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.
3396 * openbox/menu.c, openbox/menu.h:
3397 these menus should not be removed, they are good and will be used.
3399 * openbox/event.c: clean up this mess of crap a lot
3401 * openbox/prop.c, openbox/prop.h:
3402 do not commit bad char* foo that breaks on !32 bit platforms
3404 2003-04-14 woodblock <woodblock@zed>
3406 * openbox/menu.c, openbox/menu.h: *** empty log message ***
3408 2003-04-14 Ben Jansens <xor@zed.orodu.net>
3410 * openbox/parse.l: allow _'s in identifiers
3412 * openbox/stacking.c: raise and lower all transients along with parents
3415 apply layers to all transients. only raise once on the highest window who's layer changed after applying layers to them all
3417 2003-04-13 Ben Jansens <xor@zed.orodu.net>
3419 * openbox/client.c: ifdef not ifndef
3421 * openbox/stacking.c: keep all transient windows above their parents
3423 * openbox/client.c: simple cleanups for the client_iconify function.
3424 also dont follow into other groups when searching up the transient_for tree
3426 * openbox/client.c: rm the unused vars
3428 * openbox/client.c: onyl focus 'normal' windows on map
3431 only keep fullscreen windows on top while they are focused
3433 * openbox/client.c, openbox/client.h:
3434 make fullscreen decorations and functions be calculated by the setup_decor_and_functions func
3436 * openbox/group.c: rm the group debug prints
3438 * openbox/client.c: only print that when debuggin focus
3440 * .cvsignore, openbox/.cvsignore, render/.cvsignore:
3441 ignore the remaining new shit from automaking everything again
3443 * .cvsignore, INSTALL, Makefile.am, Makefile.in, bootstrap, configure.ac, data/.cvsignore, data/Makefile.am, openbox/.cvsignore, openbox/Makefile, openbox/Makefile.am, po/.cvsignore, render/.cvsignore, render/Makefile, render/Makefile.am, tests/Makefile, themes/.cvsignore, themes/Makefile.am:
3446 * AUTHORS: shrimpx above miklos?
3448 * openbox/event.c, openbox/frame.c, openbox/frame.h:
3449 pass the Client for frame_context cuz the client might be NULL
3451 * themes/ebox: comment properly
3453 * render/theme.c: load the font shadow stuff from the old ob2 shitz
3455 * openbox/config.c, openbox/config.h, openbox/openbox.c:
3456 let specify theme in the rc3 file. rm the other old engine options
3458 * Makefile.in: break on errors
3460 * Makefile.in, openbox/.cvsignore, openbox/action.c, openbox/client.c, openbox/config.h, openbox/engine.c, openbox/engine.h, openbox/event.c, openbox/focus.c, openbox/frame.c, openbox/frame.h, openbox/framerender.c, openbox/framerender.h, openbox/openbox.c, openbox/parse.l, openbox/parse.y, openbox/screen.c, render/.cvsignore, render/font.h, render/mask.h, render/render.h, render/theme.c, render/theme.h:
3461 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.
3463 * themes/ob20, themes/operation, themes/outcomes, themes/bbs, themes/bluebox, themes/cthulhain, themes/deep, themes/ebox, themes/fieron, themes/fieron2, themes/flux, themes/frobozz, themes/frobust, themes/mbdtex, themes/miklos, themes/nyz, themes/nyzclone, themes/paper, themes/purplehaaze, themes/shade, themes/steelblue, themes/steelblue2, themes/the_orange, themes/trisb, themes/twice, themes/warp-xp:
3466 * render/render.c: allow freeing NULL appearances
3468 * render/font.c: allow closing NULL fonts
3470 * render/mask.c: allow freeing NULL pixmap masks
3472 * render/color.c: dont fux self in color_free if the color is NULL
3474 2003-04-12 Ben Jansens <xor@zed.orodu.net>
3476 * tests/fullscreen.c: set the right mask for the client msg!
3478 2003-04-12 woodblock <woodblock@zed>
3480 * CHANGELOG: Fixed another damned focus bug. Pray.
3482 2003-04-11 Ben Jansens <xor@zed.orodu.net>
3484 * data/rc3: add right click in client focuses
3486 * openbox/client.c: make utility windows able to be resized
3488 * Makefile.in: rm the main Makefile in a distclean
3490 2003-04-10 Ben Jansens <xor@zed.orodu.net>
3493 deiconify transient parents when a child is deiconified.
3495 * openbox/client.h: no fuck that it was working fine
3497 * openbox/client.h: make the TRAN_GROUP an unsigned long
3499 * openbox/event.c: add MapRequest print
3502 some smarter rules for focusing new window when focus_new is not set
3504 2003-04-09 Ben Jansens <xor@zed.orodu.net>
3506 * Makefile.in, render/.cvsignore: add libcwmcc and libobcl
3508 * HACKING: describe the code subdirs
3511 dont show the focus popup when theres no target client
3513 2003-04-08 Ben Jansens <xor@zed.orodu.net>
3515 * openbox/event.c: rm debug print
3517 * tests/.cvsignore: add override
3519 * tests/override.c: add a test that maps an override redirect window
3521 * openbox/client.c, openbox/config.c, openbox/config.h, openbox/engine.c, openbox/engine.h, openbox/event.c, openbox/focus.c, openbox/focus.h, openbox/openbox.c, openbox/prop.c, openbox/screen.c:
3522 move config option loading for the kernel into config.c/h
3523 add options for the number of desktops and the names of the desktops
3525 * data/rc3: add the desktops options
3527 * data/rc3: better clickfocus friendliness
3529 * openbox/client.c: check for focus before unfocusing
3531 * openbox/client.c, openbox/event.c, openbox/focus.c, openbox/focus.h, openbox/screen.c:
3532 add more options for focus fallback, use an enum for all the types of fallbacks.
3534 * openbox/focus.c: only cycle focus to normal windows
3536 * data/rc3: make stacked cycling the default
3538 * openbox/action.c: show a popup with the focus target while cycling
3540 * openbox/focus.c, openbox/focus.h:
3541 fallback to transients' parents when possible.
3542 return the Client* which was focused from focus_cycle
3544 * openbox/client.c: fallback focus while unmanaging the window
3546 2003-04-07 Ben Jansens <xor@zed.orodu.net>
3548 * data/rc3: FocusRaise to be more clickfocus friendly too
3550 * data/rc3, openbox/focus.c, openbox/focus.h:
3551 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.
3553 * openbox/event.c: ignore inferior enternotifies
3554 add anotehr focusdebug print
3556 * openbox/client.c: check for new windows always being onscreen.
3557 rename the client pointer to self in teh manage unmanage functions for consistancy
3559 * openbox/grab.c: rm debug prints
3561 2003-04-07 woodblock <woodblock@zed>
3563 * configure.in: bump version string
3565 2003-04-07 Ben Jansens <xor@zed.orodu.net>
3567 * HACKING: add comment about the two different area Rects
3569 * HACKING: add new HACKING!
3570 warn about Client.transient_for
3572 * openbox/client.h, openbox/stacking.c, openbox/client.c:
3573 support for transients of groups
3575 * openbox/event.c: missed one
3577 * openbox/event.c: put focus messages in ifdefs
3579 * openbox/focus.c: remove debug print
3581 * openbox/client.c, openbox/client.h, openbox/group.c, openbox/group.h, openbox/openbox.c:
3583 iconify all its transients when a window is iconified
3585 * openbox/action.c, openbox/client.c, openbox/client.h, openbox/focus.c, openbox/focus.h:
3586 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.
3588 * openbox/grab.c: grab the other device in Sync for button/key grabs
3590 2003-04-06 Ben Jansens <xor@zed.orodu.net>
3592 * render/render.c: ifndef NOT IFNDEF GAH
3594 * openbox/action.c: dont toggle when no client was passed to teh action
3596 * openbox/event.c: nm that, pointless...
3599 disable keyboard and mouse input while ob is starting or exiting
3601 2003-04-06 manmower <manmower@zed>
3603 * render/color.c, render/render.c:
3604 Fix reduce color depth to not use original data
3605 (and break parentrel)
3607 2003-04-06 Ben Jansens <xor@zed.orodu.net>
3609 * openbox/engine.c: print the error when the engine cant load
3611 * render/render.c: add stdlib.h for exit()
3613 * .cvsignore, configure.ac, install-sh:
3614 stop using build/ dir configure shits all over itself for other people
3616 * m4/x11.m4, m4/openbox.m4:
3617 build fixes for finding Xlibs and for setting vars based on found Xlib info and Xinerama info
3619 * configure.ac: more build system fixups
3621 * .cvsignore, Makefile, Makefile.in, configure.ac, install-sh, m4/openbox.m4, render/.cvsignore:
3622 fixes for build system. add themes to the install process. use the build/ dir for configures trash dump
3624 * openbox/engine.c: clean up the module if load() fails
3626 * render/render.c, render/render.h:
3627 add function to give the minimum size of an appearance to fully render it's data
3629 * openbox/action.c: add a coords popup for moving and resizing
3631 * openbox/geom.h: add ()'s to the macros for more safety
3633 * openbox/engine.c, openbox/engine.h:
3634 add the ability to render and size text labels for non-window-decorations
3636 2003-04-06 woodblock <woodblock@zed>
3638 * bootstrap: Remove woodblock's local changes :P
3640 * bootstrap: Moved to DESIGN/
3642 * DESIGN/menu-thoughts.txt: some thoughts on menu stuff
3644 2003-04-06 manmower <manmower@zed>
3646 * render/gradient.c: remove asserts pending sanity check.
3648 * render/gradient.c:
3649 added flakey parentrel for solids and some mean spirited asserts
3651 * render/color.c, render/color.h, render/render.c, render/render.h:
3652 added superb pseudo-color (8bpp) support
3654 2003-04-06 Ben Jansens <xor@zed.orodu.net>
3656 * data/rc3, openbox/engine.c: make NLIMC the default titlebar layout
3658 2003-04-06 woodblock <woodblock@zed>
3660 * configure.in: Huge i18n patch from Mike Fabian.
3661 We use utf8 everywhere now.
3663 2003-04-05 Ben Jansens <xor@zed.orodu.net>
3665 * openbox/action.c, openbox/focus.c, openbox/focus.h: