This file documents additions, changes, and fixes made to gentoo
version 0.11.x. This file first appeared with the release of
gentoo 0.11.1 (the first to require GKT+ 1.2.0) on 25 March 1999,
and replaces the old FIXES file (renamed FIXES-0.9) that kept
the same thing for the pre-GTK+-1.2.x versions of gentoo. Yawn.
	Entries are grouped by the version of gentoo they apply
to. The most recent fixes appear closer to the top of the file.

0.11.7
* Fixed bug in style handling for active pane indication. Reported
  by widget and icon author, J. Hanson (<johan@tiq.com>).
* Fixed a bug in dialog for selecting built-in command (seen in
  the Commands config), also reported by Johan.
* Fixed an infinite recursion bug in the sizeutil module.
* Fixed handling of directory sizes in Information command. Should
  now happily handle directories with more than 2 GB of contents.
* Totally rewrote the styles and cfg_styles modules, that deal
  with the file styles; roughly 2,000 lines of new code. The new
  style system is a *lot* more flexible than the old was, but pays
  with a bit of speed. Info in "docs/scratch/filestyles.txt".
* Fixed a bug which had the GetSize command accumulating sizes
  on each call, if its unselection flag was off.
* Improved handling of double click on already selected row.
* The Rename command no longer rescans the *destination* pane when
  it's finished. That's good, since it was a waste of time. :)
* Removed the ViewTextHex and ViewTextOrHex commands; you now get
  the same functionality by using "ViewText mode=hex" and
  "ViewText mode=auto", respectively. You can force text viewing
  by using "ViewText mode=text", but that is the default.
* Trying to execute a non-existant external command should now be
  much less prone to crash gentoo.
* Fixed a weakness in the mount support which made it fail on
  root mountpoints. Weird.
* Implemented (more or less) transparent support for symbolic
  links. The support is complemented by four new builtin commands:
  SymLink, SymLinkAs, SymLinkClone and SymLinkEdit. Read all (or
  at least some) about it in "docs/scratch/symlinks.txt".
* Resorting no longer messes up the selection. Oops.


0.11.6
* Fixed a long-standing bug in the icon selection dialog, which
  prevented it from displaying any icons. This bug never bit me,
  but always J. Minnberg, and he kept bugging me about it, so to
  speak. It had been there since 0.9.19. Fascinating.
* The GetSize command now has a flag (configurable through the
  Command Options page) that controls whether or not it deselects
  the directories after traversing.
* Rewrote some of the dirpane internals, especielly stuff having
  to do with sorting, and redisplaying a pane's contents. It's
  now a bit better structured, and I think a tad faster, too!
* Did some minor user interface improvements in the configuration
  window. All suggested by J. Hanson <johan@tiq.com>.
* The ChMod command now rescans the source pane, thus making any
  changes visible in gentoo, as well. Oops.
* The Delete command now shows progress, thus giving you at least
  a chance to cancel it. It also now knows how to get rid of FIFOs,
  sockets, and special device nodes in general.
* Implemented support for J. Hanson's *glorious* new button widget,
  which allows the use of two commands: depending on which mouse
  button you click (first or second (=middle)), the button will
  activate either the primary or secondary command. The widget also
  supports custom coloring on both back- and foreground on each of
  the two "faces". All in all, it's great! Thanks, Johan.
* Added a primitive XML node type for RGB colors, making their
  loading and saving in the config file both leaner and simpler.
* Built-in commands can now take arguments to modify their behaviour.
  Flexibility++! Read about it in "docs/scratch/command_args.txt".
* The SelectRE command now makes full use of command arguments, so
  you can have commands such as "SelectRE glob=true re=*.jpg". Also
  added two new options in the process.
* Removed the QuitNow command, since the very same effect can now
  be achieved by using "Quit dialog=false". Command args rule.
* DirEnter now takes an argument specifying the wanted path. This
  makes it possible to create normal buttons acting as shortcuts...
* Wrote a simple general color editing dialog, for buttons & styles.
* Fixed a little bug that would execute a command twice if it was
  both set to repeat and then invoked through a pane double-click.
* Added a couple of missing {}-codes to the pick dialog in the
  Commands config page ({fu}, {Fu}, {fd} and {Fd}). Please note that
  you can include any of "udp" with either of {f} and {F}. The total
  number of valid f-codes is therefore 2*8 = 16. Not all are included
  in the dialog. :)
* gentoo now computes a pane's total available & selected byte counts
  using explicit 64-bit arithmetic. Since this is not available in
  ANSI C, the code is slightly less ANSI-pure because of this. The
  upside is that having an 8-GB partition with 5.5 GB free now should
  show the correct numbers. Note that individual file sizes are still
  typically handled as 32-bit integers (unless you're on an Alpha,
  I think). Only *total* sizes are affected by this change. Also note
  that the change does not affect the GetSize command. The Information
  command might do a better job (but it is untested). Later...
* The command dialog window (shown by the Run command, and whenever
  you need to specify a command name in config) now does true Tab-
  activated command name completion.
* Fixed a weird buglet in the shortcuts config, having to do with
  changing the order of the shortcuts.
* Fixed a couple of confused memory allocation calls in buttons
  code. It hit when you tried to resize a row. Oops. :(
* Thanks to input provided by Alexander Moss Tahk (<tahk@mit.edu>),
  gentoo should now compile and run on OpenBSD. Extending this to
  other BSD's should be trivial (I hope).
* gentoo now supports a rudimentary form of keyboard navigation,
  thus hopefully forcing most people who mail me about gentoo to
  wish for something else. :) For more information about it, check
  out "docs/scratch/focusing.txt". The supplied example config is
  set up to use it (try up/down cursor keys, shifted up/down cursor
  keys, space, home, end, insert, and ctrl-L). Note that the sample
  config hence no longer has ActivateOther on space (but try Tab!).
* In a fit of extreme ambition, I rewrote almost all of the code
  for configuring dirpane contents. It's a *lot* cleaner now.
* While I was at it, I made the colors used in dirpanes in general
  (active pane and focusing) configurable, as well.
* You can now configure on what side of the pane the scrollbar
  should go.
* Fixed a little problem that caused a GTK+ warning when reentering
  the config if you exit it on the "Commands Options" page visible.
* Changing the width of a pane column by dragging it directly in
  the pane now counts as a config change (=> dialog on quit).


0.11.5
* Dialogs should now open closer to the mouse cursor (if supported
  by your window manager). Suggested by "Peter" <zed@linuxpower.org>.
* Command input dialogs ({I...}) were broken, and probably have been
  since 0.11.1. Reported by J. Minnberg <jonas@obsession.se>. Does
  nobody else *use* gentoo? :( Ah well.
* Any processes spawned by gentoo would be killed twice on quit; I
  really think once should be enough.
* When you re-run a asynchronous, kill-previous command, gentoo is
  now more patient with waiting for the previous instance to die.
* Did loads of code-cleaning (glib-ification, const-ifying, etc).
* Removed the (very obsolete) "docs/porting/" directory.
* The size shown by GetSize is now actually considered and added into
  the sum shown in the status bar when GetSize:d dirs are selected.
* GetSize now also computes the number of _blocks_ in the directory.
* Added a ClearSize command that makes gentoo forget a directory's
  "recursive" size and reset it to the actual filesystem size.
* Resorting a pane no longer confuses the selection information.
* Removed an annoying GTK+ warning from the progress reporting code.
* Added support for TARGA & TIFF images to the example config. :)
* If you change the "enter dir" flag in the MkDir window, this will
  be registered as a config change (=> confirm/save dialog on quit).
* Removed the pointless "OK" message which use to indicate success-
  ful command execution. Now the status text appears instead, thus
  giving useful information faster. No news is good news.
* The text viewing window can now be made smaller. :)
* If, when you click "Add" in the styles config page, the currently
  selected style is collapsed (its children are hidden), it is
  now expanded for you.
* The DirToOther and DirFromOther commands now clear the selection
  from the pane before replacing the pane's contents. This prevents
  a rather interesting selection-merging phenomenon from occuring.
* The DirEnter command now makes sure the row being entered is
  unselected first. Not all directories are double-clicked into...
* Fixed a buglet (fix is 12 bytes) that prevented the "..." button
  in the command config from showing available builtin commands.
* Added a short paragraph about sorting to the man page, taking
  extra care to plug Style (icon) sorting, since it's so cool. :)
* Discovered a weird lock-up with the command output grabbing (which
  I'll blame on GDK for now), added a quick-n-dirty work-around which
  seemed to fix it. The problem occured when e.g. listing long tar
  archives (read: Linux kernel), it deadlocked at EOF. Real odd.


0.11.4
* Statusbar now shows the amount of free space for the filesystem
  the current pane's directory is in. Note that the call that makes
  this possible (statfs(2) on Linux, statvfs(2) on e.g. Solaris and
  Irix) seems to be somewhat unstandardized. There might be trouble.
* Fixed a problem with nesting modal dialogs. Noticable when e.g.
  Rename caused an overwrite confirmation to occur.
* Fixed a related dialog problem; now, if you close the Rename
  dialog with the Overwrite confirm window still open, nothing evil
  will happen.
* Did numerous clean-ups in the main "gentoo.h" header file, moving
  many type definitions into separate C files, thus reducing coupling.
* Removed a useless dialog (the "child_dialog" module).
* Discovered what I suppose is a compiler bug in gcc 2.8.1; when
  compiling gentoo with optimization level 2 (-O2), a supposedly
  harmless statement in the dialog module will cause a segfault...
* When you write a path, the keyboard events no longer trigger
  commands. This is better. Reported by J. Hanson <johan@tiq.com>.
* Added a freeze/thaw pair to the textviewer used for command output
  capturing, resulting in way better performance and no flickering.
* Removed the (nonfunctional) "Print" button from the text viewer,
  slightly changing the button layout in the process.
* Slowed down the animation of the busy indicator (used by the
  Information and GetSize commands) a bit. It made me nervous. :)
* The hex text viewing (used by ViewHex & ViewTextOrHex) code was
  *very* memory-inefficient (it always loaded the entire file, but
  only looked at 16 bytes at a time). Now it reads 16 bytes at a
  time, thus using constant buffer space (and running slower).
* ViewTextOrHex now correctly reports the error if it fails to
  open a file for reading. Er, ViewText & ViewHex don't (yet).
* Designed and implemented a system for keeping track of each
  command's individual configuration options. The options them-
  selves have been around for quite a while, but they haven't been
  configurable (without editing source, that is). Now they appear
  on the "Command Options" page in the configuration window, and
  are loaded and saved along with the rest of the config. Neat.
    Please read "docs/scratch/command_options.txt" to learn what
  the different options do.


0.11.3
* Damn! That command sequence selection dialog just didn't work.
  Typical, since I spent about 3 hrs banging on it before releasing
  0.11.2. Perhaps I should have tested it. Reported by J. Minnberg.
* Eh, seems I broke the main "gentoo.h" include file, too. Fixed.
* Fixed a minor error (typo) in the cmdgrab module.


0.11.2
* Upgraded my system to GTK+ 1.2.1. I don't think there are any
  changes in compatibility, so using 1.2.0 should still be fine.
* Removed a silly debugging printf() from dirpane config. Oops.
* New icon (suitable for docks et cetera) for gentoo included. Check
  out "icons/gentoo.png". It's in PNG to preserve the cool alpha.
* gentoo now displays pretty icon graphics when iconified.
* Fixed buglet in Makefile's 'clean' target. :)
* The example config now calls on the GIMP to edit images. I also
  added types for Debian & Red Hat packages (should list on view)
  and data compressed with gzip & bzip2 (decompress & cat on view).
  Suggested by J. Rodin <jrodin@jagor.srce.h>. Note that I run
  neither Debian nor Red Hat, so those commands are completely
  untested. They might work. :)
* The "Show Dir's File System Size?" flag (for pane Size columns)
  now works again. Reported by A. Melchiorsen <and@kampsax.dtu.dk>.
* The Pick Icon dialog (used in File Style config) was messed up:
  it had no "OK" button, only "Cancel", which didn't work. Fixed.
* The dialog activated by the "..." button when configuring an
  external command row was also broken ("Cancel"-only). Fixed.
* Fixed small widget update bug when changing a Style's Action.
* Updated the man page (docs/gentoo.1x) somewhat.
* The Information and GetSize commands now show a busy-dialog when
  they are working, thus allowing you to cancel them (just click
  the button, or simply hit Escape).


0.11.1
* Ported gentoo over to GTK+ 1.2.0. Note that this GTK+ version now
  is *required*, and that gentoo 0.11.x will NOT compile with older
  (1.0.x) versions of the GTK+ toolkit.
* Renamed some types used in cmd_generic.c (GFreeFunc collides with
  glib 1.2.0).
* Added inclusion of <stdlib.h> here and there, seems it's no longer
  being done automatically by GTK+. Great.
* Wrapped all scrollable widgets in GtkScrolledWindows, since they
  no longer do the scrolling on their own. Note that GtkCLists, for
  example, don't need gtk_scrolled_window_add_with_viewport(), since
  they actually do have their own viewport. Had to add GTK_POLICY_NEVER
  to suppress many unwanted (and seemingly unnecessary) horizontal
  scrollbars. Weird.
* I think the 'scrollbar_always' thing was broken; it might have been
  accidentally controlling the horizontal rather than the vertical
  bar... Oops, and fixed.
* Removed some unused variable definitions from all over the place.
* Totally redid handling of selections in panes. It is now completely
  handled by the GtkCList itself; there is no longer any state kept in
  gentoo. This meant that I had to rewrite all code that cared about
  selected rows. Pfew. From a usability point of view, the new way of
  handling selections is slightly less responsive than the old hack,
  but that's the price I guess.
* Noticed that if compiled with optimization (-O2), the stripped x86
  executable isn't larger than ~230 KB. Not too bad.
* Fixed huge bug in type loading; don't know if it was "active" in
  previous versions, but it sure was now.
* Redesigned the Style config page rather extensively... Not sure I
  like it though. We'll see what happens.
* Command sequences can now repeat until there is no selection in the
  source pane. This is sometimes useful, e.g. if you want to define a
  command to untar all selected tar archives. Since 'tar' won't accept
  a list of archives, you must run it multiple times. Note that if you
  don't include a {Fu} or {fu} somewhere in the command sequence,
  you'll shoot yourself in the foot. Recursively.
* Fixed a bug in the loading of command sequence flags. Didn't hurt
  anyone in previous versions, since there were actually no flags to
  load... :)
* Touched up the command output capturing code, since some of the
  semantics seem to have changed. Or perhaps I never had it right...
* The GUI for configuring before/after flags for external command
  rows has been simplified, removing some useless options. This also
  made it less vertically tall, which is a good thing.
* It is now possible to bind a keyboard shortcut key to each button!
  Real neat, and can really speed up the use of gentoo.
* The window size is now less rigid; even if you let gentoo set its
  main window size on startup, you can still make the window smaller
  later.
* Scratched the old dialog module, and rewrote it. The new code is
  far better, and about half the size of the old one. The original
  was written during my first week of GTK+ programming. It showed.
  The only visible differnce is perhaps more dialog window titles.
* Changed quite a few GTK+ calls to use the latest function names,
  since many functions have been renamed in GTK+ 1.2.0. This change
  means that gentoo does not need GTK+'s compatibility header, since
  all functions are referred to by their current names.
* The symbolic link handling has been "cleaned up", i.e. more or
  less removed. I'm considering how to better implement it. Please
  be patient...
* Added a SelectType command, which will select all files having
  the same type as any of the currently selected ones. A bit like
  SelExt, but easier to understand, describe and use. :)
* Added the DpRecenter command, which recenters the two panes. Very
  useful if you've screwed things up so you can't see the handle.
* Added generic, global keyboard command shortcuts, fully config-
  urable of course (on the new "Controls" config page). Real neat.
* Removed the declaration, definition, and all uses of my home-grown
  snprintf() function; glib has it, and it is faster than mine. :)
* The About window now recognizes that it's 1999, and includes more
  information about how to reach me/get gentoo (hint: wait 10 secs).
* Removed some annoying glib-warnings that occurred if gentoo was
  run without any user-defined commands.
* Fixed a bug in the GetSize command which prevented it from com-
  puting the correct size for more than one directory at a time.
