1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346
|
1.2.5:
- Don't exit if a specified rc file can't be found. Also fixed some
tiny mem leaks in the rc code.
- Draw window outlines properly when moving a client without a
titlebar.
- Various minor cleanups all around, as 1.2.x enters bugfix-only-land.
1.2.4:
- Get rid of type-punned pointers everywhere to appease gcc 3.3.
- Use enums where appropriate, and clarify associated code.
- Cleaned up the parser immensely. Now backslashes will work anywhere, not
just for \". Thanks to Bill Allombert for the idea.
- Handle root window clicks on ButtonRelease, not ButtonPress. This should
fix all the awful zombie aemenu problems.
- Updated README and LICENSE to reflect the unfortunate death of David
Hogan.
1.2.3:
- Optionally use GTK+ 2.0 for GTK+ clients. While the changes required were
minor, I'd like to get rid of USE_OLD_GTK soon. Please let me know if you
really, really need to use GTK+ 1.2.
- Don't use ## to paste strings in ARG(). This was always horribly wrong, but
prior to version 3.2 GCC's preprocessor let me do it.
- Use pkg-config to get the proper CFLAGS and includes for libxft. The old,
hardcoded values no longer work with newer versions of the library.
- aepanel-gtk can now run at the bottom of the display, instead of just the
top. Additionally, it now pops its menu up in the right place (above or
below the "Menu" button, depending on what edge of the screen it's on),
instead of wherever the pointer happens to be.
- Use \- for literal dashes in manpages, so that they render as U+002D and
not U+2010 (hyphen) on UTF-8 systems. Also updated aeclients man page to
reflect the removal of --show and -vv from set-gnome-pda.
- Moved aewm itself into a subdirectory, src. Used this opportunity to clean
up Makefiles and #includes a bit.
1.2.2:
- In a fit of stupidity I lost get_gnome_pda's error recovery (return all
zeros, not uninitialized garbage, if the hint doesn't exist) while
moving/editing other parts of it. This caused major problems on a server
where the hint doesn't exist yet (e.g. windows mapping offscreen).
1.2.1:
- Call setsid(2) in fork_exec() to prevent child processes from dying when
aewm is killed or crashes. (thanks, Ciaran Anscomb)
- Don't crap out with a divide-by-zero error if a client sets a PResizeInc
hint of 0. (ditto)
- Improved the appearance of debugging info a bit. It does however assume an
80-character terminal, so you'll have to adjust and recompile if you want
more.
- Call XFlush() in set_gnome_pda to avoid set-gnome-pda exiting before the
change takes effect. Made some more cleanups to the set/get_gnome_pda
interface, mostly using a struct instead of 4 ints.
- Fixed aepanel-gtk to not clobber parts of the GNOME_PAGER_DESKTOP_AREA hint
when starting and exiting. Unfortunately it does so by saving the old hint
and restoring it on exit, which is wrong in several cases. However, it's
less wrong than before.
- Removed multiple levels of verboseness in set-gnome-pda. The extra
complexity wasn't worth it.
- Added a missing #include <string.h> in client.c and manage.c.
- Used spaces for indentation again, and made some other minor annoying
cleanups. Sorry.
- Made theight bail out if sent a NULL client_t. I was able to get a stack
trace for a few crashes and they (rather inexplicably) pointed here.
Obviously, something else is the real problem, since no other function
*should* call theight on a NULL or invalidated client, and several other
functions assume that they're getting a good pointer.
- Made some minor edits to DESIGN, but I am way too lazy to do more real work
on it.
- Added items to TODO.
1.2.0:
- Here we go, another stable release. I haven't updated DESIGN, but I have no
idea when woody will freeze and I'd like to get this out the door.
- Changed all occurences of "minimalistic" (which is not a word) to
"minimalist" (thanks Matt Zimmerman).
- Made titlebar padding (formerly SPACE in aewm.h) configurable at run time.
Ideally, the default for this should be calculated from the font.
- Added "include" directive to config file parser (thanks azz).
- Fixed set-gnome-pda -v and -vv, and made all clients bail out on bad
options.
1.1.5:
- Fixed default config and config file parsing order.
- Added long and short versions of all command line options.
- Turned GNOME_PAGER_DESKTOP_AREA on by default.
1.1.4:
- Added aewm config file (~/.aewm/aewmrc).
- Fixed clients/Makefile so that specifying CFLAGS works, set-gnome-pda gets
installed, and ln always uses -sf.
- Updated the rest of README to document the new clients.
1.1.3:
- Switched to the XFree86 license.
- Fixed a segfault that could happen with Xft if a client's window
disappeared. I think there is still a possible segv lurking somewhere, but
I can't trigger it anymore. If you use Xft, especially with gdkxft, please
try to bang on it.
- Major reorganization/rewrite of all included clients (formerly referred to
as "goodies"). All now support hierarchical menus, and use a new config
file. You will need to convert your old .paletterc.
- Got rid of sleep in aesession, now it just sleeps in wait().
- Added optional support for Gnome's GNOME_PAGER_DESKTOP_AREA hint. Noticed
a badly named dummy variable in my XGetWindowProperty calls while doing
this and fixed it.
- Wrote set-gnome-pda to allow manipulation of this hint.
- Reformatted ChangeLog slightly.
- Fix USPosition of 0 for real this time. Also accounted for border width,
made other init_position tweaks to accomodate the possibility of
GNOME_PAGER_DESKTOP_AREA, and ignore USSizes of 0 (this works around xpdf's
brain-damage, and possibly other broken programs).
- Included draft of DESIGN document.
1.1.2:
- Rewrote init_position again. This fixes the problem with specifying a
USPosition containing 0.
- Added gtk-menu client contributed by Adam Sampson <azz@gnu.org>. I want to
fold this stuff into the rest of the goodies eventually.
- Added a "-version" option for printing version information from the command
line.
- Added some proper headers to all the files in goodies/lib/.
- Replaced strcpy/strcat in panel-misc.c with snprintf to prevent a possible
buffer overflow.
- Made some improvements to the .paletterc parser: squish a possible
segfault, handle comments/blank lines, ignore menu directives.
- Reformatted man pages.
1.1.1:
- Fix typo in man page install location.
- Use -lXt when compiling Xaw goodies (required to build on SunOS).
- Added some more documentation (mostly about things that are likely to
break.)
1.1.0:
- Xft (freetype extension) support, thanks once again to help from Adam
Sampson <azz@gnu.org>.
- A few Makefile improvements: only link against required libraries, easier
enabling/disabling of options, don't attempt to compile against headers in
the binary destination tree.
- Yet more init_position tweaks -- use x position hint even if y is out of
range and vice versa, and take window gravity into account when
positioning.
- Some additions and improvements to the debug code (mainly printing names of
constants instead of cryptic numbers).
1.0.0:
- All right, I think we're stable now. New stuff will go into 1.1.x.
- Changed init_position so that it doesn't cut off very large windows. This
was merely annoying for regular windows, but it was downright buggy for
incsized ones.
- Fixed compilation bug when shape support was disabled.
0.9.19:
- OK, I broke command line parsing again. Yes, I'm an idiot.
- Fixed problem with exec()-ing a non-existent program.
0.9.18:
- Fixed bug in init_position; we can safely use PPosition now. If windows
start popping up in bad places, check their size hints before yelling at
me.
- Use fork/exec instead of system(3) to run programs. Fixed signal handlers
to reflect this (we need POSIX sigaction(2)).
- Cleaned up MWM hints/WM_SIZE hints code (they sort of match now), and only
request the MWM atom at startup instead of for each call.
- Started yet another goodies reorganization, and ended up reverting a lot of
it. However what's changed should go a little ways towards cleaning things
up.
- Fix a build error where some goodies files that needed to be compiled
against X were compiled without -I/use/X11R6/lib, failing on systems
without a symlink from /usr/include/X11.
- Tossed out historical 'iheight' junk in border calculation.
0.9.17:
- Use ln -f to ignore overwriting previously installed manpage links.
- If MWM hints are enabled, no-border windows will no longer get a border
upon exiting.
- The order of buttons in *-palette is no longer changed by title updates or
unhiding windows.
- xaw-palette was fixed to work with proper versions of Xaw (shame on me for
testing with Xaw3d!), including the one in XF4. The new internals have
ported over to gtk-palette.
0.9.16:
- Fixed a shaping bug (which actually existed before changes made in 0.9.15)
where a window that used to be shaped, but then became unshaped, wasn't
updated properly.
- MWM hints support can now be compiled in with -DMWM_HINTS, thanks to help
from Adam Sampson <azz@gnu.org>.
- Set the input focus upon entering a window frame, instead of on entering
the child window.
0.9.15:
- Display a titlebar for shaped windows. This also makes the bug where shaped
windows were getting gravitated as if they had a titlebar irrelevant.
- Tiny cleanups for the Debian package, including:
- Man page for the goodies.
- Typo in makefile fixed (tried to strip manpage, ah-reer-reer-reer).
- Polished the main man page a bit.
0.9.14:
- Free cursors and GCs in quit_nicely.
- Switch order of objects and libraries in Makefile to placate Solaris cc.
- Rename raise to raise_win -- raise is in signal.h of course (duh!)
- Added copyright notice to all goodies and Makefiles due to someone ignoring
my license (this has been worked out).
- Bail out on lack of default font. You *should* be reading aewm.h first of
course ;-)
0.9.13:
- Fix really stupid thing I did while refactoring make_new_client, where a
window that started as Withdrawn would stay that way instead of getting
mapped.
- Deal with withdrawing clients properly in *-palette, by watching for the
WM_STATE property to be changed instead of looking at UnmapNotify events.
0.9.12:
- Clean up clients on receipt of a DestroyNotify. This is needed when a
client is already unmapped (i.e, the user iconified it) and it exits.
- Preserve window stacking order on exit and restart.
- Mucked about with the make_new_client logic; tell me if this breaks
something.
- Added gtk-*-menu clients contributed by Adam Sampson <azz@gnu.org>.
0.9.11:
- Got rid of unneeded PropertyChangeMask on root window. Silly me.
- Removed the ugly array/linked-list hack from xaw-palette, so that the
internal workings of both palette clients are now basically identical.
- static'd everything that should have been static.
- Updated email, documentation, etc.
- Got rid of handle_reparent_event, as a client call to XReparentWindow is
taken care of by handle_unmap_event.
- Backed out the 0.9.9 change to option-parsing macros, which were causing
all options to fail miserably (argh).
0.9.10:
- Handle withdrawing windows properly in xaw-palette. Both palette clients
are a little saner now.
- Updated goodies docs.
- ungravitate when printing geometry for move/resize.
- Moved more code from individual goodies to common-run.c.
- Got rid of unhide() as we never use it.
- Replaced GenericWidget typedef silliness with global variables. sometimes
you just have to pick the lesser of two evils...
0.9.9:
- Finally de-insanified handle_xerror. Instead of going through contortions
in remove_client to avoid raising errors, we turn the error handler off
during the server grab.
- Both palette goodies now track iconification of clients and WM_NAME
changes.
- gtk-palette is now oriented horizontally, and includes a menu, providing
lots more space for client buttons.
- Made the parse_option macros reusable (thanks to the comp.lang.c folks for
the reminder).
- make sure get_wm_name in the goodies doesn't crash for windows that have no
name.
- Minor typo corrections and stuff.
0.9.8:
- Brown paper bag: take debugging stupidity out of gtk-palette.
- Overhaul the goodies' build system yet again.
- Gtk-palette now gets the screen size correctly.
- All switch/palette goodies now cut off long titles, use WM_NAME instead of
WM_ICON_NAME, and place iconified titles in parenthesis.
- No changes to aewm itself in this release.
0.9.7:
- Added lots of comments.
- General code cleanups, tweaks, reformats all over.
- Fixed iconic state problem.
- Plugged a memory leak in send_wm_delete.
- Added -new3.
- Fixed -new[123] allocation bug.
- Made debug code considerably saner.
- Print "80x25" and such when resizing xterms.
- Replaced sprintf with snprintf.
- Got rid of -display. set DISPLAY in your environment instead, so that it
propagates to child processes.
- Messed around with the goodies' build system.
- Fixed gtk-palette; events are now filtered properly at the GDK level.
- Replaced variable length arrays with malloc/free.
- Added xsession, since I've been using it forever.
0.9.6:
- Fix for handling inital window geometry.
- A few memory leaks plugged.
- Wrote a man page
- More consistent borders for transient windows.
0.9.5:
- Print window geometry while moving/resizing.
- Added some WM_NORMAL_HINTS sanity checks
- Set the keyboard focus on window enter (for rxvt, etc).
0.9.4:
- Root menu replaced by another client.
- Added -bw option.
- Border-drawing fixes (only visible if you have very wide borders).
- Got rid of mouse button exit.
0.9.3:
- Put the root menu code back in.
- Added more goodies and reorganized them.
0.9.2:
- Minor ICCCM compliance fix regarding WM_STATE.
0.9.1:
- A small fix to make the palette complain if no rc file exists.
0.9.0:
- Initial public release. Before this, aewm was called 'swim' and was used by
me as a school project. It was also rather unstable.
|