+2003-09-24 Ben Jansens <xor@zed.orodu.net>
+
+ * openbox/keyboard.c:
+ dont kill interactive actions when the client dies, just remove teh client pointer.
+
+ * openbox/action.c, openbox/action.h:
+ add the ObClientActionReq to ObAction which says if an action needs a client for it or not
+
+ * themes/TheBear/openbox-3/themerc:
+ give disabled active buttons a different color from enabled ones
+
+ * configure.ac: beta5
+
+ * openbox/frame.c: support the _KDE_NET_WM_FRAME_STRUT hint
+
+ * openbox/client.c: support the _KDE_WM_CHANGE_STATE hint
+
+ * openbox/prop.c, openbox/prop.h:
+ remove the kde systray hints, add _kde_wm_change_state and _kde_net_wm_frame_strut
+
+ * tests/urgent.c: throw in some output
+
+ * openbox/geom.h: add PARTIAL_SRUT_EQUAL
+
+ * openbox/dock.c:
+ hide the dock when reconfiguring otherwise the user has to move the mouse over it to make it hide the first time
+
+ * openbox/mainloop.c: insert timers in the correct order
+
+ * tests/icons.c: fix for icons.c
+
+ * openbox/action.c:
+ fix problems with conflicing interactive desktop switching and send-to-ing
+
+ * data/rc.xml.in: add raise to the desktop left press binding
+
+ * openbox/event.c: ignore all NotifyInferior crossing events again
+
+2003-09-23 Ben Jansens <xor@zed.orodu.net>
+
+ * Makefile.am: typo
+
+ * Makefile.am, bootstrap: move foreign into the Makefile.am
+
+2003-09-22 Ben Jansens <xor@zed.orodu.net>
+
+ * data/rc.xml.in: same thing
+
+ * data/rc.xml.in: udpate comment to match new basedir shit
+
+ * data/rc.xsd: update hideTimeout to hideDelay
+
+ * data/rc.xml.in: update to the new hideDelay option
+
+ * openbox/session.c: missing a \n
+
+ * Makefile.am:
+ reorder the lib_LTLIBRARIES variable, apparently this fixes installing with a DESTDIR, thanks automake >:|
+
+ * Makefile.am: fixes for auto* build process
+
+ * ChangeLog: recent changes
+
+ * data/menu.xml.in, data/menu.xsd, data/rc.xml.in, data/rc.xsd:
+ fix capitalization
+
+ * data/rc.xsd: add focusLast and raiseOnFocus
+
+ * configure.ac: beta4
+
+ * ChangeLog: recent changes
+
+ * data/rc.xml.in: add focusLast and raiseOnFocus
+
+ * openbox/place.c: visible is in the frame struct
+
+ * openbox/place.c: ignore non-visible windows too
+
+ * openbox/config.c: simplify the default bindings
+
+ * openbox/client_list_menu.c: s/Activate/Go there/
+
+ * openbox/screen.c: whitespace
+
+ * openbox/client_list_menu.c: gettextize the empty desktop string
+
+ * openbox/client_list_menu.c: change Switch To... to Activate...
+
+ * openbox/grab.c:
+ dont need to swallow enter events on ungrab cuz we just ignore them all now
+
+ * openbox/event.c, openbox/event.h:
+ provide a means to properly ignore enter events for focus changes
+
+ * openbox/config.c, openbox/config.h, openbox/focus.c:
+ add back focusLast
+
+ * openbox/screen.c:
+ eat enter events on desktop switch so that our own policy can be applied
+
+ * openbox/client.c, openbox/openbox.c:
+ we always want to start with something focused, moving this to openbox.c
+
+ * openbox/action.c: add comment
+
+2003-09-22 Ben Jansens <xor@zed.orodu.net>
+
+ * data/menu.xml.in, data/menu.xsd, data/rc.xml.in, data/rc.xsd:
+ fix capitalization
+
+ * data/rc.xsd: add focusLast and raiseOnFocus
+
+ * configure.ac: beta4
+
+ * ChangeLog: recent changes
+
+ * data/rc.xml.in: add focusLast and raiseOnFocus
+
+ * openbox/place.c: visible is in the frame struct
+
+ * openbox/place.c: ignore non-visible windows too
+
+ * openbox/config.c: simplify the default bindings
+
+ * openbox/client_list_menu.c: s/Activate/Go there/
+
+ * openbox/screen.c: whitespace
+
+ * openbox/client_list_menu.c: gettextize the empty desktop string
+
+ * openbox/client_list_menu.c: change Switch To... to Activate...
+
+ * openbox/grab.c:
+ dont need to swallow enter events on ungrab cuz we just ignore them all now
+
+ * openbox/event.c, openbox/event.h:
+ provide a means to properly ignore enter events for focus changes
+
+ * openbox/config.c, openbox/config.h, openbox/focus.c:
+ add back focusLast
+
+ * openbox/screen.c:
+ eat enter events on desktop switch so that our own policy can be applied
+
+ * openbox/client.c, openbox/openbox.c:
+ we always want to start with something focused, moving this to openbox.c
+
+ * openbox/action.c: add comment
+
+ * openbox/mainloop.c: indenting
+
+2003-09-21 Ben Jansens <xor@zed.orodu.net>
+
+ * openbox/action.c, openbox/event.c, openbox/event.h:
+ 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
+
+ * openbox/client.c, openbox/client.h, openbox/focus.c:
+ move the code to find the window under the pointer out of focus.c to client.c
+
+ * openbox/place.c:
+ place so to avoid windows in layers above the window being placed!
+
+ * openbox/event.h: add glib.h include
+
+ * openbox/config.c, openbox/config.h: add raiseOnFocus option
+
+ * openbox/event.c: fix race condition in focus delay
+
+ * openbox/event.c: ignore ungrab enter notifies for focus
+
+ * openbox/mouse.c: pass the context to action_run_mouse
+
+ * openbox/action.c, openbox/action.h:
+ grab the pointer before doing client actions more intelligently, i.e. only when using sloppy focus.
+ 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.
+
+ * openbox/config.c, openbox/config.h, openbox/dock.c:
+ rename dock/himeTimeout to dock/hideDelay in the config file
+
+ * openbox/client.c:
+ dont assert, just ignore client_unfocus() when the client isnt already focused
+
+ * openbox/dock.c:
+ dont save the appearance when reconfiguring!! that was a crash waiting to happen!!
+ also reset the border stuff on reconfigure
+
+ * openbox/event.c, openbox/event.h:
+ 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
+
+ * openbox/grab.c:
+ count the EnterNotify events and tell openbox to ignore them when ungrabbing the pointer
+
+ * openbox/action.c: if the keyboard is grabbed then dont ungrab it!
+
+ * openbox/grab.c, openbox/grab.h:
+ export if the keyboard and pointer are currently grabbed or not
+
+ * openbox/keyboard.c, openbox/keyboard.h: remove that shti
+
+ * openbox/action.h: whitespace
+
+ * openbox/keyboard.c, openbox/keyboard.h:
+ export if an interactive grab is in progress
+
+ * openbox/focus.c:
+ dont drop out of dirfocus when there is no new target to be found
+
+ * openbox/client_list_menu.c: use the new action_run symantics
+
+ * tests/icons.c: declare variables at the top of the blocks
+
+ * openbox/menu.c: dont add null actions to the list
+
+2003-09-20 Ben Jansens <xor@zed.orodu.net>
+
+ * Makefile.am: use DESTDIR in install-data-hook
+
+2003-09-19 Ben Jansens <xor@zed.orodu.net>
+
+ * data/.cvsignore: add the generated xml files
+
+ * openbox/place.c: smart xinerama placement for groups
+
+ * openbox/place.c:
+ smart placement has a fallback for just groups now too
+
+ * Makefile.am: install the menu.xsd
+
+ * Makefile.am, data/menu.xml, data/menu.xml.in, data/menu.xsd, data/rc.xml, data/rc.xml.in, data/rc.xsd:
+ add the schemas to the distribution
+
+ * configure.ac: look for sed
+
+ * openbox/mouse.c: comment
+
+ * openbox/keyboard.c, openbox/menuframe.c, openbox/mouse.c:
+ use the new action ru system which always runs lists of actions instead of individual ones
+
+ * openbox/config.c: const
+
+ * openbox/action.c, openbox/action.h:
+ 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.
+
+ * openbox/client.c:
+ properly send resize events for when the app has requested the resize
+
+ * openbox/config.c: dont allow 0 desktops
+
+2003-09-18 Ben Jansens <xor@zed.orodu.net>
+
+ * openbox/client.c:
+ dont split client requested resizes into 2 events, thanks to manmower for this idea
+
+ * openbox/session.c: make a warning into a debug message
+
+ * Makefile.am, tools/gnome-panel-control/.cvsignore, tools/gnome-panel-control/gnome-panel-control.c:
+ rename gnomepanelproxy to gnome-panel-control
+
+ * Makefile.am, tools/gnome-panel-control/.cvsignore, tools/gnome-panel-control/Makefile, tools/gnome-panel-control/gnome-panel-control.c:
+ add gnomepanelproxy
+
+ * openbox/client_list_menu.c:
+ add a 'Switch to...' entry to empty desktops in the client-list-menu
+
+ * openbox/event.c:
+ while doing a moveresize, the client actions act on will be the client being moveresized
+
+ * openbox/resist.c: off by one error
+
+2003-09-17 Ben Jansens <xor@zed.orodu.net>
+
+ * openbox/config.c:
+ provide some default bindings, not a complete list from the rc.xml.. yet.
+
+ * openbox/keyboard.c, openbox/keyboard.h, openbox/mouse.c, openbox/mouse.h:
+ provide a way to remove all bindings
+
+ * openbox/frame.c, openbox/frame.h, openbox/translate.c, openbox/translate.h, openbox/action.h, openbox/action.c:
+ const
+
+ * 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:
+ no tabs
+
+ * 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:
+ add copyright headers, adjust --version output to include copyright, and --help output to not include version output.
+
+ * Makefile.am: make the installed themeupdate.py executable
+
+ * Makefile.am: install themupdate.py to share/openbox/
+
+ * data/rc.xml, openbox/frame.c, openbox/frame.h, openbox/mouse.c:
+ 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.
+
+ * openbox/menuframe.c, render/theme.c, render/theme.h:
+ api cleanups for render/theme.h
+
+ * openbox/menuframe.c: use the theme padding for the menu title's size
+
+ * openbox/action.c, openbox/event.c, openbox/openbox.c, openbox/openbox.h, openbox/session.c:
+ make ob_exit() take an error code. don't exit with 0 for signals other than TERM and INT.
+
+ * openbox/openbox.c:
+ move where grabs are init'd since they use the screen_support_win now
+
+ * openbox/menu.c: remoev unneeded include
+
+ * themes/Artwiz/openbox-3/themerc, themes/Blah41/openbox-3/themerc, themes/Om4Ob/openbox-3/themerc:
+ fix to be up-to-date with the theme spec
+
+ * openbox/translate.c:
+ allow the use of keycodes directly in key bindings
+
+2003-09-16 Ben Jansens <xor@zed.orodu.net>
+
+ * openbox/moveresize.c:
+ 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.
+
+ * openbox/grab.c:
+ 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
+
+ * Makefile.am: dont use -release for libtool
+
+ * openbox/screen.c:
+ fallback when nothing is focused and we switch desktops!
+
+ * openbox/event.c: ifdef DEBUG_FOCUS focus output
+
+ * data/rc.xml: default to "TheBear"
+
+ * Makefile.am: fix properly
+
+ * Makefile.am: make TheBear install poroerly in its openbox-3 dir
+
+ * Makefile.am, configure.ac:
+ install the libs with release and version info via libtool
+
+2003-09-15 Ben Jansens <xor@zed.orodu.net>
+
+ * render/theme.c: look in ~/.themes for themes also
+
+ * render/icon.h: new icon from merry, more clarity when small
+
+ * 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:
+ 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
+
+ * openbox/client.c, openbox/event.c, openbox/focus.c, openbox/mainloop.c, openbox/mainloop.h, openbox/startupnotify.c:
+ revert my commit of d3th, it fucked up focus badly
+
+ * openbox/stacking.c: raise all the windows with the transient
+
+ * openbox/stacking.c: raise all parents with a transient
+
+ * openbox/client.c, openbox/event.c, openbox/focus.c, openbox/mainloop.c, openbox/mainloop.h, openbox/stacking.c, openbox/startupnotify.c:
+ break focus. or maybe make it better.
+ 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.
+ add the XDone handler to ObMainLoop, which is fired upon the occurance of there being no more X events to read.
+
+ * openbox/event.c:
+ dont leave non-submenu items selected when the mouse isnt over them
+
+ * ChangeLog: recent changes
+
+ * data/rc.xml, openbox/config.c, openbox/config.h, openbox/event.c, openbox/focus.c, openbox/focus.h, openbox/screen.c:
+ remove focusLast and focusLastOnDesktop
+
+ * openbox/focus.c: fix directional focus when nothing is focused
+
+ * ChangeLog: recent changes
+
+ * configure.ac: beta3
+
+ * openbox/session.c: use the sm_client_id in the client struct
+
+ * openbox/client.c, openbox/client.h:
+ save the sm_client_id just like saving other properties, dont query each time its needed
+
+ * openbox/event.c:
+ propogate property changes on the group leader to the whole group
+
+ * openbox/popup.c: remove debug prints
+
+ * openbox/startupnotify.c: remove debug print
+
+ * openbox/event.c: sloppy focus fixes, ignore a few more enter events
+
+ * openbox/focus.c:
+ fix crashing when doing a directional focus with no windows on the desktop
+
+ * openbox/place.c: best fit only one direction
+
+ * openbox/place.c: no center in the first smart-place
+
+ * openbox/place.c: sort smallest to largest area
+
+ * openbox/place.c: 2 passes at smart placement
+
+ * openbox/place.c:
+ smart placement only avoids the focused window, and centers in its area
+
+ * openbox/stacking.h: whitespace
+
+ * openbox/place.c: fallback to random when focus follows mouse is off
+
+ * openbox/place.c: fix comment
+
+ * openbox/place.c: oops backwarsd
+
+ * openbox/place.c: dont use continue
+
+ * openbox/place.c: remove blank line
+
+ * openbox/mainloop.c: allow more than one timer to work at a time
+
+ * openbox/mainloop.c: allow more than one timer to process at a time
+
+ * openbox/place.c:
+ apply gravity to the chosen coords, bound the undermouse placement
+
+ * openbox/place.c:
+ always use smart placement, add under-mouse placement for the fallback
+
+ * openbox/place.c: dont count !normal clients for placement
+
+ * openbox/place.c: added smart placement
+
+ * openbox/resist.c: use the new RECT_LEFT/RIGHT/TOP/BOTTOM for clarity
+
+ * openbox/geom.h:
+ add some interesection shit, and RECT_LEFT/RIGHT/TOP/BOTTOM
+
+2003-09-14 Ben Jansens <xor@zed.orodu.net>
+
+ * openbox/menuframe.c: kill the padding in the menu title
+
+ * openbox/stacking.c:
+ dont raise parents of transients when the transient is raised
+
+ * render/theme.c: fix 2 mem leaks
+
+ * Makefile.am: install the openbox.png pixmap icon
+
+ * openbox/openbox.c:
+ adjust the themes for the frames before everything else happens, cuz they store pointers to the freed theme, then redraw them at the end
+
+ * openbox/frame.c: dont redraw the frames when changing their theme
+
+ * openbox/startupnotify.c: remove the x event handler
+
+ * openbox/screen.c:
+ dont bother fucking everythign up when the desktops number hasnt changed
+
+ * openbox/popup.c: fix mem leak
+
+ * openbox/menuframe.c:
+ update the menus before putting them in the visible list
+
+ * openbox/menu.c:
+ fix a mem leak, and make suer the menus arent visible when they are modified
+
+ * openbox/event.c: fix mem leak, remove teh ice watch handler
+
+ * openbox/config.c, openbox/action.c: fix mem leak
+
+ * data/openbox.png: add the .png version of the icon.h
+
+ * openbox/client.c:
+ dont impose staying on-screen for non-normal windows like kicker
+
+ * render/icon.h: add a default icon made by merry.
+
+ * openbox/openbox.c:
+ move moveresize_startup/shutdown so its between its deps
+
+ * openbox/moveresize.c: only sopt moveresize when shutting down
+
+ * render/font.c: remove debug print
+
+ * openbox/moveresize.c: stop any moveresizes on shutdown
+
+ * configure.ac: dont need libtool doing dlopen capable libs
+
+ * render/theme.c: use the values passed to the function
+
+ * render/theme.h: code style
+
+ * render/render.c: free XImages
+
+ * render/font.c: destroy 'pat' always
+
+ * render/mask.c:
+ X allocs more bytes than i thought, new algo to pick the amount of memory for the bitmap data
+
+ * openbox/client.c: dont waste a strdup which is never freed
+
+ * openbox/mainloop.c:
+ fix a memory leak in the mainloop timers correctly
+
+ * openbox/mainloop.c: fix a memory leak in the mainloop timers
+
+2003-09-12 Ben Jansens <xor@zed.orodu.net>
+
+ * openbox/focus.c, openbox/moveresize.c, openbox/openbox.c, openbox/popup.c, openbox/popup.h, openbox/screen.c:
+ new popups with subclasses, added an ObIconPopup for popups with icons, and ObPagerPopup, for a popup with a pager on it.
+
+ better logic also for the desktop layout code figuring out how many rows and columns there are.
+
+ * render/theme.c, render/theme.h:
+ add app_(un)hilite_fg, which is never parentrelative
+
+ * render/font.c: wasted variable
+
+ * render/theme.c:
+ handle parentrel app labels, by using the title's texture instead
+
+ * render/theme.c: better more valid C
+
+ * openbox/popup.c: 80 cols
+
+ * openbox/openbox.c:
+ start the session shit, and grab the params before grabbing the rest of the parameters (and erroring on invalid ones)
+
+ * Makefile.am, openbox/client.c, render/theme.c, render/theme.h:
+ add support for a default icon, but no icon has been made yet.
+
+ * configure.ac: allow building of static libs
+
+2003-09-10 Ben Jansens <xor@zed.orodu.net>
+
+ * openbox/event.c, openbox/mouse.c, openbox/mouse.h:
+ frame context fallbacks when there is no binding on the context
+
+ * themes/Allegro/openbox-3/themerc: requested update from safarial
+
+ * openbox/event.c:
+ make menu hiding-on-release based on a timer rather than on where it is released (on the frame border)
+
+ * openbox/config.h: s/milli/micro/
+
+ * openbox/menu.c: hide menus before showing a new menu root
+
+ * openbox/menuframe.c:
+ 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.
+
+ * Makefile.am: distribute the .pc.in files
+
+ * openbox/focus.c: save the new glist!
+
+ * openbox/keyboard.c:
+ when the client for an interactive action is closed, kill the action
+
+ * openbox/moveresize.c:
+ use the current size not the start size for moving
+
+ * openbox/event.c:
+ use the focus client when the client is null for keyboard events
+
+ * openbox/action.c: oops, copypaste
+
+ * openbox/action.c: dont deref the client before checking for null
+
+ * openbox/frame.c: use theme.show_handle
+
+2003-09-09 Ben Jansens <xor@zed.orodu.net>
+
+ * ChangeLog: more changes
+
+ * openbox/event.c, openbox/keyboard.c, openbox/keyboard.h:
+ save teh client for interactive actions cuz after teh keyboard is grabbed there is no client
+
+ * configure.ac: beta2
+
+ * ChangeLog: recent changes
+
+ * openbox/action.c, openbox/action.h, openbox/event.c, openbox/keyboard.c, openbox/keyboard.h, openbox/mouse.c, openbox/mouse.h, openbox/screen.c:
+ 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.
+
+ * openbox/action.c: no mouse interactive actions. no bugs.
+
+2003-09-08 Ben Jansens <xor@zed.orodu.net>
+
+ * openbox/client.c: remove debug prints
+
+ * render/theme.c: allow a padding.width of 0
+
+ * tools/themeupdate/themeupdate.py: warn about the right shit
+
+ * openbox/focus.h: remove comment that isnt right anymore
+
+ * 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:
+ bigtime theme changes. bigtime.
+
+ * openbox/focus.c, openbox/focus.h: expose focus_cycle_client
+
+ * openbox/event.c:
+ act on the visibly focused window when that differs from the actual focused window
+
+ * openbox/client.c: round 2 for this shit
+
+ * openbox/client.c: flush after resizing a client
+
+ * openbox/client.c:
+ if the client is growing, resize it before the frame. if its shrinking, then resize the frame first. reduces flicker lots.
+
+ * openbox/client.c:
+ watch for windows with titlecounts changing their title and getting an incorrect titlecount
+
+ * openbox/client.c: oops
+
+ * openbox/client.c: some simpler code
+
+ * openbox/action.c:
+ grab the pointer befoer shading a window to prevent focus moving in sloppy focus
+
+ * openbox/client.c:
+ dont reset all the states to FALSE in client_get_state, this made an initial IconicState get ignored
+
+ * data/rc.xml: oops missed a capitalization
+
+ * data/menu.xml: add obconf to the menu
+
+ * openbox/menuframe.c: flush after drawing each menu item
+
+ * openbox/config.h: timeouts are all in millisecond
+
+ * openbox/menu.c:
+ if the menu path starts with a /, then just load it, don't try the prefixes
+
+ * openbox/dock.c: fix autohiding
+
+ * openbox/dock.c: dont modify the time from the config parser
+
+ * openbox/config.c:
+ make both focusDelay and hideTimeout in milliseconds
+
+ * openbox/dock.c:
+ fix crash when reconfigure changes the stacking layer of the dock
+
+ * data/rc.xml: capitalize mouse actions
+
+ * openbox/screen.c:
+ move windows around before removing the focus order lists to prevent nasty segfault when it removes a window from an already freed list
+
+2003-09-07 Ben Jansens <xor@zed.orodu.net>
+
+ * parser/parse.c: dont use obsolete xmlChildrenNode
+
+ * po/Makevars: add my email address
+
+ * Makefile.am, configure.ac, parser/.cvsignore, parser/obparser-3.0.pc.in, render/.cvsignore, render/obrender-3.0.pc.in:
+ remove obconf from this tree.
+ add versioning for the libraries and pkgconfig files for them.
+
+ * openbox/config.c, openbox/menu.c, openbox/session.c:
+ dont use obsolete xmlChildrenNode
+
+ * openbox/framerender.c, openbox/menuframe.c: xflush after rendering
+
+ * 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:
+ little bit of an actions overhaul, added action_run* so that duplicated code can all be in the same place now woot.
+ allow actions to specify when they can be used (ShowMenu cant in the OB_USER_ACTION_MENU_SELECTION case)
+ remove KeyboardMove ad KeyboardResize. Instead, just use Move and Resize and determine if it should be a keyboard move/resize in the code
+
+2003-09-06 Ben Jansens <xor@zed.orodu.net>
+
+ * openbox/plugin.c, openbox/plugin.h:
+ these shoulda been removed long ago
+
+ * openbox/event.c: \n's at the end of strings passed to ob_debg
+
+ * openbox/client.c: Closes #799. i think im too high to say more.
+
+ * openbox/screen.c:
+ sync before removing all the enter events. this way it actually catches them
+
+ * render/theme.c:
+ add the margins to the label_height so that the text doesnt cover the bevel/border
+
+2003-09-04 Ben Jansens <xor@zed.orodu.net>
+
+ * openbox/menu.c: code style fix
+
+ * openbox/menu.c:
+ optimization. don't need a glist where a simple pointer will suffice.
+
+ * openbox/openbox.c: was adding an extra / in ob_expand_tilde
+
+ * openbox/menu.c, openbox/menu.h:
+ when a pipe menu is killed, kill all its submenus as well
+
+ * openbox/geom.h: fix RECT_CONTAINS, name clash
+
+ * render/image.h, render/render.c:
+ new scaling based on the Bresenham algorithm
+
+ * render/image.c: new scaling, based on the Bresenham algorithm
+
+ * openbox/moveresize.c:
+ off by one caused clients to be resized a little during a move
+
+ * openbox/menuframe.c: oops missed a !
+
+ * data/rc.xml, openbox/config.c: turn off focusDelay by default
+
+ * openbox/openbox.c, openbox/session.c, openbox/session.h, po/POTFILES.in:
+ move session code out of openbox.c all into session.c
+ remove --sm-save-file and --sm-client-id from argv so that they dont get reused when doing a restart.
+
+ * openbox/grab.h: match the declarations in the header
+
+ * openbox/keyboard.c: ungrab only as many times as we grabbed
+
+ * openbox/openbox.c: remove the reconfigure popup
+
+ * openbox/grab.c: match the func prototypes in the header
+
+2003-09-03 Ben Jansens <xor@zed.orodu.net>
+
+ * ChangeLog: recent changes
+
+ * openbox/startupnotify.c: fix for not using startup notification
+
+ * ChangeLog: recent changes
+
+ * configure.ac: beta1 time. fuck yah.
+
+ * openbox/openbox.c:
+ kill the window mapping.. its not doing anything anyways? whatever..
+
+ * openbox/mouse.c:
+ dont ungrab/grab all the mouse bindings every time a new one is added. just do it once on startup.
+
+ * openbox/openbox.c:
+ dont exit when a theme can't be loaded during reconfigure
+
+ * openbox/client.c:
+ handle the case where a transient is a child of a dockapp
+
+ * openbox/moveresize.c:
+ don't let move/resize occur on non-visible clients
+
+ * openbox/openbox.c:
+ display a popup and perform a smooth transition when reconfiguring
+
+ * openbox/keyboard.c: grab keys on the client windows themselves
+
+ * openbox/frame.c:
+ only remove one flash timer at a time, so all frames dont stop flashing just cuz a window closed
+
+ * openbox/client_list_menu.c: remove from desktop_menus when freed
+
+ * openbox/event.c:
+ use the ob_main_loop_timeout_remove_data to only remove one timer
+
+ * openbox/dock.c: dont set a strut when there are no apps in the dock
+
+ * openbox/client.c:
+ support getting the desktop from the startup notification protocol
+ pass on to the startup notification code that a window has mapped with a given wmclass
+
+ * openbox/client.h: add the startup_id
+
+ * openbox/openbox.c, openbox/openbox.h: add the NONE cursor.
+ remove startup notification code from openbox.c and openbox.h
+ call the new sn_startup/shutdown for startupnotification.c
+
+ * openbox/moveresize.c: use NONE cursor when not specifying one
+
+ * Makefile.am:
+ remove startup hacks and add startup notification in its own files
+
+ * openbox/event.c:
+ remove the startup notification code from event.c, it all lives in its own file now
+
+ * openbox/startupnotify.c, openbox/startupnotify.h:
+ add startup notification in its own .c/.h files
+
+ * openbox/menuframe.c: use the NONE cursor when not specifying one
+
+ * openbox/mainloop.c, openbox/mainloop.h:
+ add ob_main_loop_timeout_remove_data.
+ make the timeout remove functions remove *all* timeouts that match
+
+ * openbox/startup.c, openbox/startup.h:
+ remove teh startup state saving hacks since we can reconfigure now. no more restarting for the average user anymore.
+
+ * openbox/grab.c: use the NONE cursor when not specifying one
+
+ * openbox/screen.c, openbox/screen.h:
+ remove all the startup notification code from screen.c
+
+ * openbox/prop.c, openbox/prop.h: add the startup_id atom
+
+ * openbox/action.c, openbox/keyboard.c, openbox/mouse.c:
+ use the NONE cursor when not specifying a cursor
+
+ * openbox/misc.h: add a NONE cursor, to not change the cursor at all
+
+ * data/menu.xml: add reconfigure to the menu
+
+ * 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:
+ add a reconfigure action, also reconfigure on SIGUSR2.
+ support reconfiguring throughout the entire codebase.
+
+ * themes/TheBear/openbox-3/themerc: updates for thebear from merry
+
+ * openbox/event.c:
+ make focusDelay check the destroying window properly before killing the timer
+
+ * data/rc.xml: add default A-space binding for the client menu
+
+ * AUTHORS: add teh focusDelay option for mikachu
+
+ * openbox/menuframe.c, openbox/menuframe.h:
+ track the maximum margin of menu items. use this to keep icons in the menus inside the bevel/borders of the menu items
+
+ * ChangeLog: recent changes
+
+ * configure.ac: alpha8
+
+ * data/rc.xml, openbox/config.c, openbox/config.h, openbox/event.c:
+ add the focusDelay option
+
+ * openbox/mouse.c:
+ dont grab frame context mouse bindings on desktop windows
+
+ * openbox/client.c, openbox/client.h, openbox/menu.c, openbox/moveresize.c:
+ make the client destructor a GDestroyNotify
+
+ * Makefile.am: add themeupdate.py to the distribution
+
+ * data/rc.xml: add focus the desktop on left click binding
+
+ * openbox/menuframe.c: rm empty line
+
+ * openbox/menuframe.c: limit menus' width to 400px
+
+ * data/rc.xml, openbox/config.c:
+ rename the theme name node from 'theme' to 'name'
+
+ * data/rc.xml: fix capitalization and empty tags. cleanup.
+
+ * data/rc.xml: remove obsolete placement/remember option
+
+ * openbox/moveresize.c:
+ only show resize popups for clients with size increments. no move popup at all. waste of screen space.
+
+ * openbox/popup.c: use the provided margins to layout the popup better
+
+ * render/render.c, render/render.h:
+ provide a function to give the margins for an appearance
+
+ * data/rc.xml, openbox/config.c:
+ make the default screen-edge resistance 20 (double what it is for windows)
+
+ * render/render.c:
+ we use the offsets we get from the server, we should use the byte order too..
+
+ * render/color.c: remove bad comment
+
+2003-09-02 Ben Jansens <xor@zed.orodu.net>
+
+ * openbox/moveresize.c:
+ more fixes to keep the pointer stuff aligned when doing keyboard move/resize
+
+ * openbox/moveresize.c:
+ fix flashing when using keyboard move against the edge of the screen
+
+ * render/gradient.c:
+ interlace is drawn first, so bevels n shit cover it
+
+ * openbox/client_menu.c, openbox/menu.h, openbox/menuframe.c, openbox/menuframe.h:
+ 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.
+
+ * render/theme.c, render/theme.h: add menu.bullet.selected.imageColor
+
+ * openbox/action.c:
+ 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
+
+ * Makefile.am, data/menu, data/menu.xml, data/rc.xml, openbox/menu.c:
+ move the default menu to menu.xml
+
+ * openbox/session.c: remove debug prints
+
+ * render/render.c: remove debug print
+
+ * render/color.c: remove XXX comment, it was right, now its done :>
+
+ * render/color.c, render/color.h:
+ use the new color hash to cache RrColors
+
+ * render/instance.c, render/instance.h, render/render.h:
+ move some internal functions from render.h to instance.h
+ add a color hash table to the RrInstance
+
+ * openbox/resist.c: remove debug print
+
+ * openbox/mainloop.c: make the segfault swearing more clear
+
+ * openbox/moveresize.c:
+ add comment about the new code in moveresize for size increment windows
+
+ * openbox/client.c, openbox/moveresize.c:
+ stop doing stupid shit for the size increments in client_configure, it belongs in the moveresize code. add it there.
+
+ * openbox/resist.c, openbox/resist.h:
+ separate window and screen snapping so only one or the other can be used
+
+ * openbox/action.c: grow to edge is a move and a resize, oops
+
+2003-09-01 Ben Jansens <xor@zed.orodu.net>
+
+ * Makefile.am, data/rc.xml, data/rc3, parser/parse.c:
+ move rc3 to rc.xml
+
+ * Makefile.am: update for the new theme selections
+
+ * data/rc3: make thebear the default theme
+
+ * themes/TheBear/openbox-3/themerc:
+ add a menu overlap and smaller font size for the menu items