Re: FVWM: Luck of the Draw

From: Paul Smith <pausmith_at_nortelnetworks.com>
Date: 14 Nov 2001 14:35:28 -0500

%% David <cupcake_at_sdf.lonestar.org> writes:

>>> FVWM cannot control the case of characters typed in your telnet
>>> window.

  d> Would that it were so.

But, it _IS_ so.

  d> But, unfortunately, I do start our in lower case and then after a
  d> while usually while editing a file with vi, the window manager
  d> switches all my keystrokes to upper case so that if I go to another
  d> open xterm I will get all upper case there.

This "mysterious combination of keys" that you mention almost certainly
consists of one and only one key: the CAPS LOCK key :).

If you set CAPS LOCK on your keyboard, then everything you type in all
your windows will be uppercase (unless, usually, you hit SHIFT-<letter>,
in which case <letter> will be _lowercase_).

Press CAPS LOCK again, and it will toggle off. Another idea is to
rebind your CAPS LOCK key to do something else (be a CTRL modifier is a
common choice--that's what I do). However, the window manager can't do
that either; use xmodmap to tell the X server what keybindings you want.

It's completely up to the _X server_ to manage all that stuff. The X
server is the focal point: it controls the input devices (keyboard,
mouse, etc.) and the output device(s) (monitor), and when keyboard input
comes in it translates that into a keysym and sends it to the
appropriate client.

In _no_ way does _any_ of this involve the window manager.

>>> I think you are overestimating the involvment of the window
>>> manager. Window managers wrap borders around windows
>>> but they don't control the display of every pixel inside
>>> the window.

  d> It seems to me that the window manager has to place the app
  d> on the desktop current-viewport according to the resources
  d> specified in the app resources file. I think this placement
  d> and all other drawing would go through the window manager:

No; that's not at all how it works.

  d> maybe not? Who would be responsible: lesstif? or XFree86?

The X server is ultimately responsible for drawing everything, and
handling things like clipping, etc. You can think of an X window as a
frame, which is drawn by the window manager, and the contents, which are
created and drawn by the application. Both the window manager and the
application talk directly to the X server: the application does _NOT_
send its draw requests to the WM. The WM knows the dimensions of the
window, and it draws a border around it. That's all it knows.

In fact, the WM is just an X application; there's nothing really that
special about it.

As for initial placement and sizing, the application can allow the WM to
be involved with deciding where the x/y offset of the window will be on
the screen, and it can allow the WM to resize the window (although the
application doesn't _have_ to allow any of this).

Once that is decided, it's completely up to the application, talking
directly to the X server, to draw the right pixels at the right
locations.

>>> With Motif applications you can usually set X-Resources
>>> to cause Motif to use a different font depending on the screen
>>> size. Heres something I use in my X-resources for controlling
>>> the Emacs window size:

  d> That's how it should work, and I have written some apps which
  d> start with the font and size the app depending on the font
  d> characteristics. I don't know of anyone else who has done that,
  d> however. Even in your example, you still have to size the apps
  d> using geometry: a very well behaved motif app should size itself
  d> from the font characteristics, I think.

  d> #elif ( HEIGHT == 1200 ) /* My home machine, 1600x1200 use side x side layout */

  d> If you can do this, why can't fvwm?

FVWM _could_ size _itself_ from the font characteristics (or vice versa).

But, FVWM cannot influence the font sizes, button sizes, or other
internal dimensions of _other applications_.

FVWM may be involved with deciding the x/y offset on the screen, and it
may be involved with deciding the total height and width of the outer
window (the one that it decorates with borders), but it is decidedly
_not_ involved, and cannot influence in any way, the way the application
uses that window space.

-- 
-------------------------------------------------------------------------------
 Paul D. Smith <pausmith_at_nortelnetworks.com> HASMAT--HA Software Mthds & Tools
 "Please remain calm...I may be mad, but I am a professional." --Mad Scientist
-------------------------------------------------------------------------------
   These are my opinions---Nortel Networks takes no responsibility for them.
--
Visit the official FVWM web page at <URL: http://www.fvwm.org/>.
To unsubscribe from the list, send "unsubscribe fvwm" in the body of a
message to majordomo_at_fvwm.org.
To report problems, send mail to fvwm-owner_at_fvwm.org.
Received on Wed Nov 14 2001 - 13:40:39 GMT

This archive was generated by hypermail 2.3.0 : Mon Aug 29 2016 - 19:37:52 BST