FVWM Bug Tracking notification new message incoming/812
Message summary for PR#812 From: [EMAIL PROTECTED] Subject: loss of focus after app.menu popdown Date: Fri, 23 Nov 2001 02:44:01 -0600 0 replies 0 followups ====> ORIGINAL MESSAGE FOLLOWS <==== >From [EMAIL PROTECTED] Fri Nov 23 02:44:02 2001 Received: from karazm.math.uh.edu ([129.7.128.1]) by malifon.math.uh.edu with esmtp (Exim 3.20 #1) id 167BwI-0005cW-00 for [EMAIL PROTECTED]; Fri, 23 Nov 2001 02:44:02 -0600 Received: from malifon.math.uh.edu (IDENT:[EMAIL PROTECTED] [129.7.128.13]) by karazm.math.uh.edu (8.9.3/8.9.3) with ESMTP id CAA19592 for <[EMAIL PROTECTED]>; Fri, 23 Nov 2001 02:44:01 -0600 (CST) From: [EMAIL PROTECTED] Received: from localhost ([127.0.0.1] ident=65534) by malifon.math.uh.edu with esmtp (Exim 3.20 #1) id 167BwH-0005cS-00 for [EMAIL PROTECTED]; Fri, 23 Nov 2001 02:44:01 -0600 To: [EMAIL PROTECTED] Subject: loss of focus after app.menu popdown Message-Id: <[EMAIL PROTECTED]> Date: Fri, 23 Nov 2001 02:44:01 -0600 Full_Name: Mark Rainford Version: 2.4.3 CVS_Date: OS: Solaris 7 X_Server: Xsun, also vnc Submission from: (NULL) (193.128.26.65) When an application popup menu is popped down for the second time then text entry fields in the application no longer accept text; this remains until focus is moved to another window and then returned to the app. Eg use this http <FORM METHOD="POST" ACTION="gibberish"> <SELECT NAME="QueryType"> <OPTION VALUE="Eggs" SELECTED>Eggs <OPTION VALUE="Spam" >Spam <OPTION VALUE="Bacon">Bacon </SELECT> <INPUT TYPE="TEXT" NAME="anytext" VALUE="" SIZE="15" > </FORM> Use mouse to popup menu, close menu either by selecting or hitting ESC, click text field and type a letter - letter seen okay. Popup menu, close again, click text field and type a letter - no letter appears. Use mouse to move focus to another window, then back again, click text field and type a letter - letter seen okay. I've hacked a local fix by inserting FOCUS_SET(Tmp_win->w); at fvwm/events.c:HandleEnterNotify() line 1919, but I don't think this is a proper fix. if (HAS_MOUSE_FOCUS(Tmp_win) || HAS_SLOPPY_FOCUS(Tmp_win)) { SetFocusWindow(Tmp_win, 1); FOCUS_SET(Tmp_win->w); /* <--- HACK HACK HACK */ } It seems to me that SetFocusWindow()->MoveFocus() makes the mistake of thinking there is no need to restore focus to the app window after the popup menu which grabbed it is popped down, because it sees ( Fw == ffw_old) is true. I suspect one of Fw or ffw_old should be cleared when the FocusOut event with mode Grab is received by the app window. I can supply the event sequences captured by xscope(1) if this helps. -- Visit the official FVWM web page at <URL:http://www.fvwm.org/>. To unsubscribe from the list, send "unsubscribe fvwm-workers" in the body of a message to [EMAIL PROTECTED] To report problems, send mail to [EMAIL PROTECTED]