> > Is there any way for FVWM to highlight user-chosen areas
> > of application windows independently from the application?
> > I'm thinking of an effect similar to what one can achieve
> > by drawing on the CRT with a whiteboard marker ...
>
> I have implemented a very limited form of this in FvwmButtons:
> you can set the background colour of an application window.  This
> works with a few applications but has many problems.  For example,
> the application may reset the background at any time; and xclock
> draws its handles by first undrawing the in the (old) background
> colour, leaving a grey trail behind the hands.

Resetting the background of the entire window does not sound as if
it would produce the effect I'm looking for, but drawing to portions
of the window's background would probably work pretty well.  XORing
the entire depth with an appropriate constant -- as I guess rubber-
banding does with the outline, but this would be within within one
or more chosen areas -- might be another possible approach.

> This would get *much* more difficult when drawing to the window's
> foreground.  Well, maybe one could overlay the client window with
> a window of the same size that is just white and then cut out the
> parts that you have not drawn into yet.  There would be no part of
> the window visible at first, and when you start drawing it covers
> more and more of the client window.

This sounds workable, as long as the drawing can be transparent or
translucent, IOW I still want to be able to read the highlighted
text.  (As I currently envision it, the area of interest would
always contain text rather than graphics, although this may not
make much difference to the implementation since I suppose the
WM would not know what font(s) the application is using anyway.)

> But overall this would involve a lot of code in the window manager
> core that does not belong there.

It is certainly not within the traditional set of WM operations,
and I know (just barely) enough about X to recognize that the
internals would have to be quite different from what a WM is
ordinarily set up to do.  Specific to FVWM implementation, I
wonder if it might be possible to do it as a module, so as to
avoid complicating the core with it.

> Is it an option to take a picture of a window and do the
> hilighting in a graphics program?

I'd expect that to involve a lot of manual overhead -- taking a
snapshot, importing it into a graphics program, and manipulating it.
Ideally, this should be almost as easy to use as the marker-on-the-
screen method :)

Reply via email to