all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Lennart Borgman <lennart.borgman@gmail.com>
To: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: Emacs-Devel devel <emacs-devel@gnu.org>
Subject: Re: Add function to make frame topmost?
Date: Fri, 30 Apr 2010 15:26:56 +0200	[thread overview]
Message-ID: <h2ue01d8a51004300626z68abd77fmed998611268b6542@mail.gmail.com> (raw)
In-Reply-To: <jwvvdb9w0q1.fsf-monnier+emacs@gnu.org>

On Fri, Apr 30, 2010 at 3:06 PM, Stefan Monnier
<monnier@iro.umontreal.ca> wrote:
>> Could something like this please be added to w32fns.c?
>
> First, if it's w32-specific, its name should not start with "x-" but
> with "w32-".  If it's not, then its name should start with neither and
> the DEFUN should be in a system-independent file.

This version is w32-specific, yes. It will only appear in an Emacs
compiled for w32.

Looking at w32fns.c it looks to me like this is how some functions
(for example x-show-tip) that must have different implemantations for
x and w32 are handled. But indeed that looks like a bad convention
since it makes it impossible to choose function according to the
display used.

So I will rename it to w32-set-frame-topmost. And I think some other
functions also should be renamed and integrated in the way I suggest
below.

Then there should of course be a similar function x-set-frame-topmost
for X windows, but I can't write that.

To tie this together I think something like

  (defun set-frame-topmost (frame top activate)
    (cond
     ((eq (display-type) 'x-windows) (x-set-frame-topmost frame top activate))
     ((eq (display-type) 'w32) (w32-set-frame-topmost frame top activate))))

is needed. The function `display-type' does not exist yet of course.

> Finally, I don't know what means "topmost", so the docstring needs to
> be improved.

Yes, "topmost" is what is used for tooltip etc to make that frame
window stay above other windows without having focus. On w32 (and I
guess on x) this also works across applications, ie a topmost frame
window stays above the active application.

My usecase for something like this is reminders that pops up at a
certain times. You may want to see them even if you are not in Emacs.
And you may prefer to not get interrupted when you type so directly
activating Emacs might not be a good thing.




  reply	other threads:[~2010-04-30 13:26 UTC|newest]

Thread overview: 61+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-04-30  1:48 Add function to make frame topmost? Lennart Borgman
2010-04-30 13:06 ` Stefan Monnier
2010-04-30 13:26   ` Lennart Borgman [this message]
2010-04-30 20:54     ` Stefan Monnier
2010-04-30 22:02       ` Jan Djärv
2010-04-30 22:13         ` Lennart Borgman
2010-05-01  8:00           ` Jan Djärv
2010-04-30 22:32       ` David De La Harpe Golden
2010-04-30 23:22         ` Lennart Borgman
2010-05-01  1:48           ` David De La Harpe Golden
2010-05-01  2:06             ` Lennart Borgman
2010-05-01 13:05               ` Stefan Monnier
2010-05-01 18:03                 ` David De La Harpe Golden
2010-05-01 20:20                   ` Drew Adams
2010-05-01 22:02                     ` David De La Harpe Golden
2010-05-01 22:09                       ` David De La Harpe Golden
2010-05-02 14:07                       ` Drew Adams
2010-05-02 15:27                         ` David De La Harpe Golden
2010-05-02 15:58                           ` stack-order (z-order) parameter for frames [was: Add function to make frame topmost?] Drew Adams
2010-05-01 22:44                   ` Add function to make frame topmost? Lennart Borgman
2010-05-02  1:18                     ` David De La Harpe Golden
2010-05-02  7:47                       ` Jan Djärv
2010-05-02 12:52                         ` David De La Harpe Golden
2010-05-02  7:27                     ` Jan Djärv
2010-05-02 12:27                       ` Stephen J. Turnbull
2010-05-02 12:53                         ` Jan Djärv
2010-05-02 13:44                           ` David De La Harpe Golden
2010-05-03  3:16                             ` Stephen J. Turnbull
2010-05-02 14:43                         ` David De La Harpe Golden
2010-05-02 14:48                           ` Lennart Borgman
2010-05-02 14:55                             ` David De La Harpe Golden
2010-05-02 16:48                           ` David De La Harpe Golden
2010-05-02 18:58                           ` Jan Djärv
2010-05-02 21:32                             ` Desktop bubble notifications [Was: Re: Add function to make frame topmost?] David De La Harpe Golden
2010-05-03  0:19                               ` Lennart Borgman
2010-05-03  2:29                                 ` David De La Harpe Golden
2010-05-03 19:46                                   ` Stephen Eilert
2010-05-03 19:58                                     ` Lennart Borgman
2010-05-04 11:48                               ` Desktop bubble notifications Bastien
2010-05-02 19:17                         ` Add function to make frame topmost? chad
2010-05-03  3:33                           ` Stephen J. Turnbull
2010-05-02 14:01                       ` Drew Adams
2010-05-02 15:06                         ` Lennart Borgman
2010-05-03  3:43                           ` Stephen J. Turnbull
2010-05-03  9:59                             ` Lennart Borgman
2010-05-03 17:21                               ` Stefan Monnier
2010-05-03 19:50                                 ` Lennart Borgman
2010-05-03 21:31                               ` David De La Harpe Golden
2010-05-02  0:36                   ` Stefan Monnier
2010-05-02  1:17                     ` David De La Harpe Golden
2010-05-01  2:10           ` David De La Harpe Golden
2010-05-01  2:32             ` Lennart Borgman
2010-05-01  3:49               ` Lennart Borgman
2010-05-03 16:39             ` Tom Tromey
2010-05-03 19:33               ` systray support [was: Re: Add function to make frame topmost?] Dan Nicolaescu
2010-05-01  3:19           ` Add function to make frame topmost? David De La Harpe Golden
2010-05-01  8:28           ` Jan Djärv
2010-05-01 19:46             ` David De La Harpe Golden
2010-05-01 22:46               ` Lennart Borgman
2010-05-01  5:25     ` Eli Zaretskii
2010-05-03 12:47 ` Lennart Borgman

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

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

  git send-email \
    --in-reply-to=h2ue01d8a51004300626z68abd77fmed998611268b6542@mail.gmail.com \
    --to=lennart.borgman@gmail.com \
    --cc=emacs-devel@gnu.org \
    --cc=monnier@iro.umontreal.ca \
    /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 external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.