Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.

Bug 229350

Summary: Motif pull-down menus don't draw correctly with Xnest
Product: [Fedora] Fedora Reporter: Esteban Xandri <esteban.xandri>
Component: xorg-x11-serverAssignee: Adam Jackson <ajax>
Status: CLOSED RAWHIDE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: mcepl
Target Milestone: ---Keywords: Patch
Target Release: ---   
Hardware: i686   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-04-09 23:03:10 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Description Esteban Xandri 2007-02-20 15:32:51 UTC
Description of problem:
Motif pull-down menus don't draw correctly with Xnest 

Version-Release number of selected component (if applicable):
xorg-x11-server-Xnest-1.1.1-47.4

How reproducible:
Always

Steps to Reproduce:
1.Xnest -pn :1 &
2.twm -display :1 (or any other window manager like xfwm, etc.)
3.run a motif app
  
Actual results:
After selecting a pull-down menu in a motif app, not all the expected menu 
items are visible. After several clicks on expected list items locations in the 
menus, some of them appear. 

Expected results:
Proper display of all menu items in pull-down menus

Additional info:
After a google search I found that this bug is also reported in OpenSolaris 
bugs database with Id 6366490 
(http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=6366490)
In this case a patch for this bug has recently been released
I also tested the same motif app with vncserver and vncviewer and runs fine.

Comment 1 Matěj Cepl 2007-02-28 08:17:52 UTC
*** Bug 229354 has been marked as a duplicate of this bug. ***

Comment 2 Matěj Cepl 2007-03-20 19:44:15 UTC
This is the reply I got from Alan Coopersmith when asked about the Solaris
solution to this bug:

Unfortunately, it was fixed in the Xnest built out of our Xsun tree,
which isn't open source.   The Xnest part is fortunately unencumbered
and the fix was small:

  --- xc/programs/Xserver/hw/xnest/Events.c     2004-10-18 15:18:34.025880000 -0700
  +++ xc/programs/Xserver/hw/xnest/Events.c     2006-05-02 17:34:58.127524000 -0700
  @@ -81,7 +81,7 @@
     while (XCheckIfEvent(xnestDisplay, &X, xnestExposurePredicate, NULL)) {
       pWin = xnestWindowPtr(X.xexpose.window);

  -    if (pWin) {
  +    if (pWin && X.xexpose.width  && X.xexpose.height) {
         Box.x1 = pWin->drawable.x + wBorderWidth(pWin) + X.xexpose.x;
         Box.y1 = pWin->drawable.y + wBorderWidth(pWin) + X.xexpose.y;
         Box.x2 = Box.x1 + X.xexpose.width;
  @@ -89,7 +89,7 @@

         REGION_INIT(pWin->drawable.pScreen, &Rgn, &Box, 1);

  -      miWindowExposures(pWin, &Rgn, NullRegion);
  +      miSendExposures(pWin, &Rgn, Box.x2, Box.y2);
       }
     }
   }

I've cc'ed the engineer who worked on it, since he could answer any
questions on why this works better than I can.

        -Alan Coopersmith-           alan.coopersmith@sun.com
         Sun Microsystems, Inc. - X Window System Engineering


Comment 3 Adam Jackson 2007-04-09 23:03:10 UTC
Will be fixed in 1.2.99.905-2.fc7