Project

General

Profile

Bug #3245

move-before-tab-item and move-after-tab-item must not affect the z-order

Added by Constantin Asofiei over 7 years ago. Updated over 7 years ago.

Status:
New
Priority:
Normal
Assignee:
-
Target version:
-
Start date:
02/07/2017
Due date:
% Done:

0%

billable:
No
vendor_id:
GCD
case_num:
version:

History

#1 Updated by Constantin Asofiei over 7 years ago

These two 4GL functions are implemented in ThinClient.moveAfterTabItem and ThinClient.moveBeforeTabItem. When using them, they rely on frame.getContentPane() to adjust the order of the frame.getContentPane().widgets() - this is the actual Z-Order list of the widgets...

Now, the problem is a little confusing:
  1. move-before-tab-item seem to be effective (not a no-op) only if they are executed in the context of an active event loop.
  2. in FWD, when executing them before the frame/widget is realized, it will affect the layout (when it should not).

I think the issue here is that these two must be a no-op if there is no active event loop. The z-order issue can be checked by having overlapped widgets (adjust their coordinates so that they overlap): after their tab position is changed, check if anything z-order related changes.

#2 Updated by Constantin Asofiei over 7 years ago

Something else to check: in nested event loops, is the adjusted z-order preserved (from outer to inner and viceversa)?

Also available in: Atom PDF