unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "Drew Adams" <drew.adams@oracle.com>
Subject: RE: Q on frame parameters *border-width
Date: Sat, 21 Jan 2006 07:32:06 -0800	[thread overview]
Message-ID: <DNEMKBNJBGPAOPIJOOICMELFDBAA.drew.adams@oracle.com> (raw)
In-Reply-To: <u8xt9rjai.fsf@gnu.org>

    > 1. Wrt `border-width':
    >
    > When I try this, I get an error, "Cannot change the border width of a
    > window":
    >
    >  (modify-frame-parameters (selected-frame) '((border-width . 20)))
    >
    > So, think I, perhaps you cannot change this parameter for an
    existing frame,
    > but perhaps you can set it for `default-frame-alist' and it
    will then affect
    > future frames. No such luck either.

    In fact, you cannot change this for _any_ window.  At least on X, I
    think this parameter is under control of the window manager.  But even
    if I'm wrong, it looks like no one has written code to handle this, on
    any windowing system.

Are you saying that X sets it, so you can at least read it (on X)? If so,
that should be documented: it is a read-only parameter that is set by (some?
all? only X?) window managers.

    > Both the doc string and the error message speak of the
    "window" border, so I
    > guess this is a frame parameter that affects the border of
    each window in
    > the frame. Is that right? Just where is the window border?

    I don't know how to explain this better than the manual does.  Each
    frame has a border--do you know what that border is?  If not, perhaps
    your problem is not what border-width is, but what is the border.

You are speaking of a frame border; the doc speaks of a window border.

    With typical X window managers this border is clearly visible, because
    it has a 3D appearance that makes it stand out.  On MS-Windows, this
    is less visible, but you should still be able to see a narrow
    2-pixel-wide strip between the outer edge of the Emacs frame and the
    parts of the frame that Emacs displays: the fringe at the left side,
    the title bar's background color on the top side, etc.

Again, you're speaking of the frame border. In that case, the doc shouldn't
mention "window" - or else it should say "window-manager window (frame)".

    > If not, if it is about a frame border, then the doc string and error
    > message should say "frame", not "window".

    Maybe, I don't know.  The confusion between ``window'' and ``frame''
    is not a simple one.  The parameter is for frames, not for windows.

If it is a frame parameter that is about a frame, not a window, border, then
why mention "window" at all? Why is this not simple?

    > What does this parameter do? Setting it doesn't seem to do
    anything, on
    > Windows XP at least (Emacs 20 or 22). Shouldn't the doc explain the
    > parameter a little more?

    I think this parameter exists so that one could compute the actual
    size of the frame.

OK. That's reasonable. It would be good to say that 1) the parameter is
read-only, 2) it is not (or might not be) set by window managers other than
X Window, and 3) it is useful for calculating the total frame size, in
pixels.

    > 2. Wrt `internal-border-width':
    >
    > The only difference in this parameter's name and that of the previous
    > parameter is "internal-". Does this mean that this too
    applies to Emacs
    > window borders (whatever they are) and not to frame borders?

    No, the manual says it explicitly: this is the distance between the
    border and the text area of the Emacs display.

Sure it does. My point here was about the _name_.

Anyway, the point is meaningless now, since you've confirmed that
`border-width' is also about the frame border, not an Emacs window border.

    > Setting `internal-border-width' actually does change something, but it
    > appears to be the internal _frame_ border, not a border
    around each window.

    It _is_ the frame border.

Yes, see above.

    > The `internal-border-width' does not appear to be the
    distance between text
    > and border, if the border when fringe is present - in that
    case, it is the
    > distance between the fringe and the border.

    Yes.

So, perhaps this could be stated explicitly in the doc.

  reply	other threads:[~2006-01-21 15:32 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-01-21  0:20 Q on frame parameters *border-width Drew Adams
2006-01-21 10:01 ` Eli Zaretskii
2006-01-21 15:32   ` Drew Adams [this message]
2006-01-22  3:59 ` Richard M. Stallman
2006-01-27 18:34   ` Eli Zaretskii

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=DNEMKBNJBGPAOPIJOOICMELFDBAA.drew.adams@oracle.com \
    --to=drew.adams@oracle.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).