		    Release Notes
		       on the
		    Xgopher client

		     version 1.2


These notes describe CHANGES from Xgopher version 1.1a of June 1992.

History
-------

version 1.2    20 Nov   1992	many new features, including type T,
				saving bookmarks, and lots more.
				See details below.
version 1.1a   03 June  1992	Fixes for release 1.1 -- details below
version 1.1    20 April 1992	Support for additional items:
                                CSO Name servers, text index, sound,
				also many enhancements.
version 1.0     5 March 1992	Original release



Changes in 1.2
--------------

New Types
  . support for image files (type I)
  . support for binary files (type 9)
  . support for tn3270 sessions (type T)

Bookmarks
  . save bookmarks between sessions.  File is compatible with Unix curses
    client.
  . Load/Save bookmarks at any time during the session.
  . Bookmark file can have any name, and multiple ones used during one
    session.
  . Any gopher item type may be bookmarked, not just directories as in
    previous versions.
  . A search may be bookmarked either with or without its index words.

Info button
  . Display the raw gopher item information for the directory or any item

Copy button
  . Any text or binary item may be directly copied to a file without
    first viewing or other processing.  Great for ftp's.
  . All unknown file types may be retrieved using the "copy" command.

Other new functions
  . Options popup panel lets some Xgopher resources be changed during a
    session.  These include the bookmark save file name as well as the
    print, image display, telnet, and tn3270 commands.
  . A gopher item specification (type/name/path/host/port) may be entered
    directly and processed.
  . Restart command to bring Xgopher back to original state without exiting
    and restarting.  Especially good for public kiosk access.

User interface
  . Minimal change to previous interface, but lots more function.
  . Version information popup is available
  . "Other Commands" menu holds lesser used commands, eliminating clutter.
  . Better button sensitivity control guides acceptable actions to minimize
    possible errors.
  . An alternate root server and port can be specified on the command line.
  . ~/ leading a path name is changed to $HOME/ (for all path names except
    executables -- save file, bookmark file, temp dir, etc.)
  . "go up a level" was changed to "previous directory".  The semantics
    are subtlely different, but not noticeable to most users.
  . unselect any selected (highlighted) item by clicking in the directory
    or bookmark titles or the status label.
  . option to show ALL files, even unknown types.
  . Xgopher icon and its use with a window manager has been documented
    in the README file.
  . status message reports status during file processing.
  . updated documentation - man page, help text, and installer documents.

Misc
  . telnet to port 23 is now a telnet with no explicit port.
  . Changed to use the XtApp* routines where appropriate (XtAppInitialize,
    etc.) since routines without the application context are obsolete.
  . the rootPath resource was added for completeness.
  . The internal data structures for maintaining Gopher directories
    are totally revised.

Installation and Configuration
  . Most often, I can now determine at compile time if you are using
    X11R4 or X11R5 and define the appropriate symbols.
  . Significant improvement for installing under Sun's Open Windows, 
    Release 3.  Including documentation on Sun's bugs, the fixes and
    temporary workarounds.
  . since I can't find out the max size of window in XCreateWindow
    (for stopwatch) the default is smaller.
  . enhanced portability to code and Imakefile.
  . added conditional to Imakefile for InstallNonExecFile rule, which
    does not exist under X11R4 Imake (xmkmf).
  . The installed location of xgopher.help is now determined in the
    Imakefile.
  . added a last resort Makefile
  . Use XtPointer instead of XPointer in resource defaults


* DIFFERENT BEHAVIOR *
  Xgopher 1.2 includes significant internal changes that were necessary
  to support certain new abilities.  Most of these changes are not visible
  to the user of Xgopher.  The only incompatible behavior will be subtle.
  Most users of Xgopher probably never noticed the earlier behavior.
  A directory bookmarked during this session no longer maintains its
  ancestral lineage, but is simply the successor of the previously 
  selected directory.


A Note on Overlay Window Size
-----------------------------
One common installation problem with Xgopher is that some servers
cannot create a large window.  Xgopher may compile okay, and begin to 
execute, but then a server error appears noting a failure in XCreateWindow.
I use this large window as an overlay to create the watch cursor and to
deflect further events from the application while a time-consuming
event is processed (like fetching a file or directory).  This overlay
must cover all windows of the Xgopher application.

Several people wrote and suggested that I should replace the symbols
SERVER_MAX_WINDOW_WIDTH and SERVER_MAX_WINDOW_HEIGHT with the following
code:
    DisplayWidth (XtDisplay(topLevel), screen),
    DisplayHeight (XtDisplay(topLevel), screen),

This suggestion is a reasonable one, but it will only work with some
servers and window managers.  If you are using tvtwm, another virtual
window manager, or even many X terminals, the root window may be much
bigger than the values returned by these X11 macros.  There seems to be
no way to find out how large a value the server will accept before
failing.  Although I could define an error handler to try and trap
this condition, I'm not sure it is the best solution.  At this point
the error is fatal.

My solution for this release is to make the default values of the 
symbols smaller, to minimize installation problems for people.
You may make the values larger if you wish; especially if you have
a virtual root window larger than about 8K square.  Remember that
if you usually run on a Sun Sparc, but sometimes use an HP workstation
as your display, that you must abide by the HP server's smaller
maximum window size.


Acknowledgements
----------------

Thanks to all people who took the time to send me their comments,
suggestions, and problems in previous versions of Xgopher.
All bug reports and many of the suggestions I received have been
addressed in Xgopher 1.2.

I especially want to thank Dawn Endico for finding the Sun
OpenWindows patches.  And a big thanks to Prentiss Riddle and
Richard A. Schafer of Rice University for commenting on an early
version of Xgopher 1.2.  Once again, John Franks of Northwestern
University has done a great job of testing - thanks, John!


Problems
--------

One known problem is if your Athena widget library is compiled
with the international text feature enabled (usually it isn't in
English-speaking countries), you will experience problems compiling
Xgopher.  The text widget provided in Xgopher is a subclass of the
"original" Athena text widget.  The i18 support changes the definition
of the widget's class record, so the subclassing is done improperly.
I have not had the time to work on this.

Please report and problems, suggestions, or portability problems to
the author of xgopher.  e-mail contact is preferred:

	Allan Tuchman
	Computing and Communications Services Office (CCSO)
	University of Illinois at Urbana-Champaign
	1304 W. Springfield Ave.
	Urbana, Illinois   61801
	USA

	(217) 244-0048
	a-tuchman@uiuc.edu
