Project

General

Profile

Bug #3487

Sub-menu graphical issues

Added by Stanislav Lomany about 3 years ago. Updated almost 3 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Target version:
-
Start date:
Due date:
% Done:

100%

billable:
No
vendor_id:
GCD
case_num:

History

#1 Updated by Stanislav Lomany about 3 years ago

  1. In swing, when an item is selected, but has no mouse over it, the text is not properly highlighted (so the item has black text on the dark blue background). Also, there may be an issue with swing when the first item of a sub-menu is selected by default while it shouldn't (customer's server is down, so I cannot check if it is an actual issue).
  2. When an item in sub-menu is clicked, parent menu is not closed.

Testcase:

def var mnu as handle.
def var item1 as handle.
def var item2 as handle.
def var sm as handle.

CREATE MENU mnu
      ASSIGN
        POPUP-ONLY = TRUE
        TITLE      = 'Browser Menu'.

CREATE MENU-ITEM item1
        ASSIGN
          PARENT = mnu
          LABEL  = "item1" 
          NAME   = "item1".      

CREATE sub-menu sm
        ASSIGN
          PARENT = mnu
          LABEL  = "submenu" 
          NAME   = "submenu".       

CREATE MENU-ITEM item2
        ASSIGN
          PARENT = sm
          LABEL  = "item2" 
          NAME   = "item2".       

def var s as char.
form s with frame f1.
s:popup-menu = mnu.
update s with frame f1.

Right-click on the input field to show the popup menu.

#2 Updated by Greg Shah about 3 years ago

  • Assignee set to Hynek Cihlar
  • Start date deleted (02/23/2018)

#3 Updated by Hynek Cihlar about 3 years ago

Created task branch 3487a.

#4 Updated by Hynek Cihlar almost 3 years ago

Checked in revision 11247 to 3487a.

This resolves all the issues mentioned in this issue plus:
  • popup menu not shown after popup overlay window lost focus
  • popup menu was not properly processing key events after opened (focus issues)
  • highlight state was not reset between popup invocations
  • multiple abends and unexpected exceptions
  • prevented abend caused by Fill-in widget selection logic
  • prevented abend during menu setup when static sub-menu didn't have a parent menu

The code changes still require code cleanup and extensive regression testing, so far I ran only some limited number of trivial test cases.

#5 Updated by Hynek Cihlar almost 3 years ago

3487a rebased against trunk 11248.

#6 Updated by Hynek Cihlar almost 3 years ago

3487a rebased against trunk 11249.

#7 Updated by Hynek Cihlar almost 3 years ago

3487a revision 11256 fixes this issue plus #3462, #3508, #3532.

Regression testing is in progress. Please review.

#8 Updated by Greg Shah almost 3 years ago

Code Review Task Branch 3487a Revision 11256

These changes are really good. I see no functional issues.

One minor code standard thing, protected Menu<O> showPopupMenu(MouseEvent e) should be moved below the public methods in AbstractWidget.

#9 Updated by Hynek Cihlar almost 3 years ago

3487a revision 11258 resolves the points from the last review. It passed GUI regression tests (a large customer's GUI app, Hotel GUI, some of the menu test cases in uast, in both Swing and Web GUI). ChUI regression testing is in progress.

I found two more minor issues (both exist in trunk):
(1) Sometime when menu bar is navigated by mouse, an empty submenu body is displayed.
(2) In the large customer's GUI app one of the popup menu shows empty selectable menu item instead of a menu separator.

#10 Updated by Hynek Cihlar almost 3 years ago

While regression testing 3487a I see client abends which prevent me to run all the required cases. These errors already exist in trunk. Greg, should I resolve these issues in a separate task branch?

#11 Updated by Greg Shah almost 3 years ago

The existing revision of 3487a is a significant improvement over trunk, right? Unless there are regressions, I would prefer to put it into trunk and work the remaining issues in another branch.

#12 Updated by Greg Shah almost 3 years ago

Code Review Task branch 3487a Revision 11258

I'm good with the changes.

#13 Updated by Hynek Cihlar almost 3 years ago

ChUI regression test harness finished with some failures which are most likely negative failures. I restarted the tests.

#14 Updated by Hynek Cihlar almost 3 years ago

Greg Shah wrote:

The existing revision of 3487a is a significant improvement over trunk, right?

Yes, it fixes some serious issues.

#15 Updated by Greg Shah almost 3 years ago

When it passes testing, merge to trunk.

#16 Updated by Hynek Cihlar almost 3 years ago

3487a passed ChUI test harness. I am merging to trunk.

#17 Updated by Hynek Cihlar almost 3 years ago

3487a rebased and merged to trunk as revision 11251. The branch was archived.

#18 Updated by Hynek Cihlar almost 3 years ago

The ChUI menu regressions are more serious than I thought. I created new issue #3553 and checked in my WIP changes there.

Also I checked in a simple NPE fix to 3487b. Please review this change. No regression testing for the branch is needed. There are no more changes expected for this issue.

#19 Updated by Greg Shah almost 3 years ago

Code Review Task Branch 3487b Revision 11252

I'm fine with the change.

Are you proposing to merge this to trunk now? Or do you plan to include the changes for #3538?

#20 Updated by Hynek Cihlar almost 3 years ago

Greg Shah wrote:

Are you proposing to merge this to trunk now? Or do you plan to include the changes for #3538?

Yes, it can be included with the changes for #3538.

#21 Updated by Hynek Cihlar almost 3 years ago

Merged the only change in 3487b to 3553a.

Correction, merged the change in 3487b to 3538a.

#22 Updated by Hynek Cihlar almost 3 years ago

  • % Done changed from 0 to 100

#23 Updated by Hynek Cihlar almost 3 years ago

3487b dead-archived.

#24 Updated by Hynek Cihlar almost 3 years ago

The issue was resolved in 3538c, which was merged to trunk as revision 11255.

#25 Updated by Greg Shah almost 3 years ago

  • Status changed from New to Closed

Also available in: Atom PDF