Known bugs ---------- - PNG alpha channel support is currently broken. I had it working but now it dumps core (07/17/97). - progressive loading of a page with a great deal if images in it can sometimes cause an X Protocol error (X_ChangeGC). I know where the problem lies, just haven't had the time to fix it. The problem is that every image that is to be loaded progressively get's it's own GC. And thus the server can run out of them. I'll modify this in the next release (07/17/97). Fixed, 08/13/97, plc.c, kdh. It turned out I forgot to properly propagate clipmasks to child images. - example_2 (or is it XmHTML itself, can't figure this one out clearly) chokes on progressive image load on a HTML document with frames in it (07/17/97). - scrolling a document with a large form in it doesn't always work correctly (try the fully expanded search page at Hotbot). You can restore the screen by hitting the PageUp or PageDown keys. - Mixing text and HTML form elements within
 doesn't work as it
  should.

- framesets nested more than two levels deep are not always displayed correct.
  (See examples/test-pages/frame5.html)

- frames are not always placed at the border of their parent HTML widget;
  this goes away by resizing the parent HTML widget a bit.

  Fixed somewhere in April 1997.

- frames are not resizeable.

- scrolling text downwards example_2.c is run with the -root option does not
  erase the text at the bottom line properly.

- placing XmHTML inside a form causes havoc: scrolling is completely messed
  up. A proper workaround is to place XmHTML inside a frame and place the
  frame in a form. You can then use whatever constraints on the frame.

  Completely fixed, 03/24/97, XmHTML.c, map.c, kdh.
  The widget did not take the core offsets into account properly.

- a very strange and funny bug: placing the word March as the first word
  in a 
doesn't get it's spacing correct. IMHO, this has something to do with a bug in the adobe roman font at pointsize 14: the width of a capital M is incorrect? The workaround is to use a default font size other than 14. - images at the bottom of a page aren't redrawn entirely. Finally fixed on 04/29/97, kdh - words that need to stay connected (detected by the parser when no space is placed after a text-formatting element, eg: inlinedfontchanged) are broken by the alignment/outline routines. Fixed: 02/28/97, paint.c, kdh - when in
, using a different font messes up the text alignment.

- when jumping to a named anchor at the bottom of the current document,
  Motif spits out a warning about the value for the vertical scrollbar:
	value larger than maximum value minus slidersize.

  Fix 01/30/97-04, XmHTML.c, kdh
  Fix 01/30/97-05, callbacks.c, kdh

- Jumping to images that serve as named anchors causes XmHTML to scroll a 
  bit to far.
  This is due to the fact that images aren't supported yet and thus have
  no height and do not increase the y-offset. This will disappear once
  images are implemented.

  Fixed, 02/07/97, paint.c, kdh
  Fixed, 02/20/97, kdh: images are supported now.

- Scrolling large chunks of text is a little bit jumpy. This is not really a 
  bug, it's rather annoying. The reason is that all continues text is 
  allocated in a single block, and this is something the exposure routines 
  don't deal with.

  Fixed, 01/30/97, kdh
  Completely fixed by the XmNrepeatDelay resource, 03/14/97, kdh.

- maximum width of preformatted text is wrong: when resizing the widget
  horizontally, the scrollbars disappear and some of the preformatted text 
  is rendered beyond the right side of the widget.

  Fix: 01/30/97-03, paint.c, kdh.
  Completely fixed, 04/27/97, kdh, forgot to take the width of the vertical
  scrollbar into account...

- known memory leak: allocated image data structure is not freed. There is 
  something wrong somewhere which causes a coredump when trying to free an 
  image.

  Fixed, 02/20/97, kdh: images are supported now.

- XmHTML follows the HTML 3.2 standard rather closely: the  element
  is absolutely required, and it's only allowed *once*. If it is missing, 
  no text will be displayed.

  Loosened, 03/20/97, kdh, parse.c, format.c
  The parser will now add a body element if it's missing and the formatting
  routines ignore a closing body element.

- The CheckScope routine (which checks HTML 3.2 semantics) in parse.c is not
  very good at it's job (and it's hugely inefficient).

  Obsoleted, 03/20/97, kdh, parse.c: integrated parser with document
  verifying and repairing routines.

- placing the widget inside a managerWidget with other widgets above it
  causes incorrect scroll offsets.

  Completely fixed, 03/24/97, XmHTML.c, map.c, kdh.
  The widget did not take the core offsets into account properly.

- restoring the colors between documents with a  color spec and
  documents without a color spec is not working properly.

  Almost fixed, 01/28/97, kdh. On documents with a  color spec,
  the margins and the little square between the horizontal and vertical
  scrollbar are still displayed in the original colors.

- When no width and height are specified on XtCreateWidget, the default
  values are dead wrong. Should try and make a guess depending on the
  raw (text) width and height of the text to display (maybe use the initial
  guesses from XmNresizeWidth/Height). Don't know if this is something that
  I should do actually. Or maybe I should set the width/height to 40% of the 
  screen width/height if no width or height has been specified.

  04/27/97, kdh.
  A default width of 20 ex and a default height of 1 line in the current font
  is now used when no width and/or height is specified.
  Also removed the XmNvisualPolicy resource, it was absolutely meaningless.

- When XmHTML first comes up with a vertical scrollbar, moving down the
  first time doesn't always repaint correctly. This seems to happen fairly
  randomly, it can not be always reproduced, but when it happens, it only
  happens the first time text is scrolled downwards.

  Fixed, 01/29/97, kdh

- The XmNtopLine resource is currently read only. Setting it does not
  have any effect (yet). A workaround is to use the XmHTMLScrollToLine
  convenience function.

  Fixed, 04/26/97, kdh

- must add closing elements for TD, TR, TH in CheckTermination (parse.c).
  If not done, it will mess up the alignment. Probably should take these
  out of the big switch statement in _XmHTMLformatObjects and make a
  separate call to a (to be written) table parsing routine.

  Fixed, 01/29/97, parse.c, kdh
  Parser rewrite, 03/20/97, parse.c, kdh

- Anchors (both href and named ones) within a 
 block don't work.

  Fixed, 01/24/97; kdh

- 
around a
 block doesn't work.

- The stuff for auto-sizing (XmNresizeWidth & XmNresizeHeight) is far from
  being optimal. When setting text in a widget, Layout() is called at least
  twice: once for the text, and again by Resize() when the widget is resized.
  The current check on pref_height does not work since Resize() resets it to 0.
  (which is required if one wants to be able to resize the widget).

  Fixed, 01/10/97; kdh
  Fixed it properly on 04/27/97, kdh.

- When the XmNenableOutlining and XmNresizeWidth resources are both true,
  the first line of a paragraph is rendered beyond the right window border.

  Partly fixed, but this fixed introduced another bug: when a window comes
  up the first time, it's size is zero.
  Should also have been fixed on 04/27/97, kdh, but it's unverified.

- Horizontal scrolling does not work well: when scrolling to the left,
  text that has been rendered into the margin is not removed.

  fix 23/01/97-01, XmHTML.c, kdh
  fixed again, 03/26/97, XmHTML.c, kdh by adding width of the vertical
  scrollbar to the region to expose.

- a single mouse click on the slider of the scrollbars generates an expose 
  event, causing a (visible) screen flicker. 

  fix 01/20/97-01, XmHTML.c, kdh 

- Having the XmNvisualPolicy next to the XmNresizeWidth and XmNresizeHeight
  resources is illogical: when the visual policy is XmVARIABLE, the widget
  should change its size, regardless of any XmNresize resource setting. 
  When it's XmCONSTANT, XmNresizeWidth and XmNresizeHeight are always reset 
  to false. I think I'll drop either XmNvisualPolicy or XmNresizeWidth & 
  XmNresizeHeight.

  Dropped the XmNvisualPolicy resource on 04/27/97, kdh.

- the BASEFONT element is missing.

  Fixed, 02/04/97, format.c, parse.c, kdh.

- The SetValues method is a real mess.

  Partially fixed, 01/28/97, kdh
  I think I've got it finally worked out on 04/27/97, kdh.

- The outlining algorithm is not perfect yet. It does work quite well but
  sometimes it gives strange results.

  Fixed, 02/10/97, paint.c, kdh.

- When the horizontal scrollbar is on top, scrolling up does not always 
  render the text at the top of the window properly.

  Fixed, kdh.

- The routine for creating the builtin anchor cursor (CreateAnchorCursor)
  creates the builtin cursor only once. This might problems when once instance 
  of the widget is displayed on the local display and another instance is 
  displayed on a remote display: one of these widgets will not have a cursor.
  I don't have another system available, so I can't check if this is true.
  We can not check on validity of the anchor_cursor field of _XmHTMLPart
  as it might have been changed using XtSetValues.