unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Pavel@Janik.cz (Pavel Janík)
Cc: Richard Stallman <rms@gnu.org>, emacs-devel@gnu.org
Subject: Re: C-l while in menu?
Date: Wed, 08 May 2002 16:38:45 +0200	[thread overview]
Message-ID: <m3r8km66x6.fsf@Janik.cz> (raw)
In-Reply-To: <86sn5pe1xs.fsf@gerd.dnsq.org> (gerd.moellmann@t-online.de's message of "21 Apr 2002 13:17:03 +0200")

   From: gerd.moellmann@t-online.de (Gerd Moellmann)
   Date: 21 Apr 2002 13:17:03 +0200

   > I'd check the behavior with OpenMotif and with the newest Lesstif from
   > CVS.  If it works in OpenMotif and doesn't work in Lesstif, I think
   > lesstif@hungry.com would be interested in fixing it in Lesstif.
   > 
   > Otherwise, I'm pretty sure someone will be willing to help out.  They
   > were very cooperative last time I tried.

The problem still remains. I still think it is not problem in lesstif or
openmotif. I'll try to describe the problem again with more details:

I use popup_activated_flag to dispatch KeyPress events. Its value is
changed with these two functions from xmenu.c:

static void
popup_activate_callback (widget, id, client_data)
     Widget widget;
     LWLIB_ID id;
     XtPointer client_data;
{
  popup_activated_flag = 1;
}

static void
popup_deactivate_callback (widget, id, client_data)
     Widget widget;
     LWLIB_ID id;
     XtPointer client_data;
{
  popup_activated_flag = 0;
}

The problem is, that the current code (in lwlib-Xm.c) doesn't work as
expected. When you activate menu File, you can control the menu via
keyboard (Up, Down). This works, but just after highlighting the next
top-level item in the menu-bar (ie. Edit), our variable
popup_activated_flag got zeroed.

What is the reason? It is simple. First, popup_activate_callback of the new
menu is called and thus popup_activated_flag is set to 1, but after
a moment, popup_deactivate_callback is called many times because it is
called for all menu-items in the previous (File) menu.

I do not personally use Motif code, but I think that the false value of
popup_activated_flag (it can very easy be 1 even when the popup is not
activated) is dangerous and could be the source of potential problems (I
saw that it is used to temporary disable redisplay etc).

What is the right approach to this problem?
-- 
Pavel Janík

"when" is not a word I find useful about most bios bugs. Try "if" or
"less likely that being hit on the head by an asteroid"
                  -- Alan Cox in LKML about possibility of fixing BIOS bugs

  parent reply	other threads:[~2002-05-08 14:38 UTC|newest]

Thread overview: 93+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <m3k7rjoamp.fsf@Janik.cz>
     [not found] ` <200204072343.g37NhIC20114@aztec.santafe.edu>
2002-04-19 18:58   ` C-l while in menu? Pavel Janík
2002-04-20 17:27     ` Richard Stallman
2002-04-20 21:06       ` Pavel Janík
2002-04-21 11:17         ` Gerd Moellmann
2002-04-21 13:23           ` Pavel Janík
2002-04-21 14:04             ` Gerd Moellmann
2002-05-08 14:38           ` Pavel Janík [this message]
2002-05-08 18:16             ` Gerd Moellmann
2002-05-08 18:49               ` Pavel Janík
2002-05-10  0:29             ` Richard Stallman
2002-05-11  8:53               ` Pavel Janík
2002-05-13 14:17                 ` Richard Stallman
2002-04-22  7:46         ` Richard Stallman
2002-04-22  8:55           ` Pavel Janík
2002-04-22 10:03             ` Stefan Monnier
2002-04-22 12:59             ` Miles Bader
2002-04-22 17:47               ` Kim F. Storm
2002-04-23  2:05               ` Miles Bader
2002-04-22 19:47             ` Jan D.
2002-04-23 19:30               ` Richard Stallman
2002-04-22  9:28           ` Stefan Monnier
2002-04-22 13:04             ` Ben Wing
2002-04-22 13:42               ` Pavel Janík
2002-04-23  9:13                 ` Ben Wing
2002-04-23  9:35                   ` Miles Bader
2002-04-23 11:08                     ` Eli Zaretskii
2002-04-23 10:22                       ` Gerd Moellmann
2002-04-23 11:25                         ` Eli Zaretskii
2002-04-23 11:42                       ` Simon Josefsson
2002-04-24 17:55                         ` Richard Stallman
2002-04-24 18:29                           ` Simon Josefsson
2002-04-26  3:17                             ` Richard Stallman
2002-04-24 18:37                           ` Gerd Moellmann
2002-04-26  3:20                             ` Richard Stallman
2002-04-24 10:42                       ` Ben Wing
2002-04-24 11:27                         ` Simon Josefsson
2002-04-24 15:54                           ` Eli Zaretskii
2002-04-24 14:40                         ` Pavel Janík
2002-04-24 15:31                         ` Eli Zaretskii
2002-04-25  6:06                           ` Richard Stallman
2002-04-23 12:06                     ` Kim F. Storm
2002-04-23 11:44                       ` Simon Josefsson
2002-04-24 10:56                         ` Ben Wing
     [not found]                         ` <3CC68F57.4060901@666.com>
2002-04-24 11:15                           ` Simon Josefsson
2002-04-24 12:52                           ` Stefan Monnier
2002-04-24 15:43                           ` Eli Zaretskii
2002-04-23 11:53                       ` Robert J. Chassell
2002-04-23 14:11                       ` Stefan Monnier
2002-04-24 10:44                       ` Ben Wing
2002-04-24 15:37                     ` Kai Großjohann
2002-04-25  6:06                       ` Richard Stallman
2002-04-25  8:05                         ` Stephen J. Turnbull
2002-04-25  9:13                           ` Kai Großjohann
2002-04-25 10:22                             ` Stephen J. Turnbull
2002-04-26  3:18                           ` Richard Stallman
2002-04-26 11:14                             ` Gerd Moellmann
2002-04-25 11:08                         ` Eli Zaretskii
2002-04-23  9:32                 ` Ben Wing
     [not found]                 ` <3CC52A2F.6010704@666.com>
2002-04-23  9:51                   ` Hrvoje Niksic
2002-04-23 11:20                   ` Stephen J. Turnbull
2002-04-23 19:30               ` Richard Stallman
2002-04-23 20:22                 ` Karl Eichwalder
2002-04-24  4:12                   ` Miles Bader
2002-04-25  6:07                   ` Richard Stallman
2002-04-25  7:21                     ` Karl Eichwalder
2002-04-25  7:35                       ` Miles Bader
2002-04-25 12:00                       ` Robert J. Chassell
2002-04-25 12:21                         ` Andreas Schwab
2002-04-25 13:00                           ` Robert J. Chassell
2002-04-25 13:11                             ` Andreas Schwab
2002-04-25 14:54                         ` Eli Zaretskii
2002-04-25 14:39                           ` Kai Großjohann
2002-04-25 16:19                           ` Robert J. Chassell
2002-04-25 19:19                             ` Eli Zaretskii
2002-04-25 20:16                             ` Jason Rumney
2002-04-25 23:10                               ` Robert J. Chassell
2002-04-25 23:21                               ` Robert J. Chassell
2002-04-26  1:23                                 ` Miles Bader
2002-04-26 17:38                               ` Richard Stallman
2002-04-26  3:18                       ` Richard Stallman
2002-04-23  0:24             ` Richard Stallman
2002-04-22 11:39           ` Eli Zaretskii
2002-04-23 19:31             ` Richard Stallman
2002-04-23 20:13               ` Pavel Janík
2002-04-25  6:05                 ` Richard Stallman
2002-04-25 11:05                   ` Eli Zaretskii
2002-04-22  1:27     ` Miles Bader
2002-04-22  6:09       ` Eli Zaretskii
     [not found] <Pine.LNX.4.44.0204241307080.32219-100000@yxa.extundo.com>
2002-04-24 14:36 ` Stephen J. Turnbull
2002-04-24 15:33   ` Kai Großjohann
     [not found]   ` <vaf662hjelc.fsf@INBOX.auto.emacs.devel.tok.lucy.cs.uni-dortmund.de>
2002-04-24 16:23     ` Stephen J. Turnbull
2002-04-24 18:15       ` Kai Großjohann
2002-04-25  2:23     ` Hrvoje Niksic

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=m3r8km66x6.fsf@Janik.cz \
    --to=pavel@janik.cz \
    --cc=emacs-devel@gnu.org \
    --cc=rms@gnu.org \
    /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).