Bug #8376
Focus transfer problem with frames having no focusable contents
Status:
New
Priority:
Normal
Assignee:
-
Target version:
-
Start date:
Due date:
% Done:
0%
billable:
No
vendor_id:
GCD
case_num:
Related issues
History
#1 Updated by Vladimir Tsichevski about 2 months ago
The code example:
// Define two frames, one inside another DEFINE FRAME outerFrame WITH SIZE 80 BY 10. DEFINE FRAME innerFrame WITH SIZE 60 BY 8. FRAME innerFrame:FRAME = FRAME outerFrame:HANDLE. // Print PROCEDURE parameter PROCEDURE Print: DEFINE INPUT PARAMETER msg AS CHARACTER NO-UNDO. MESSAGE msg. END PROCEDURE. ON ENTRY OF FRAME outerFrame RUN Print("Outer Entry"). ON LEAVE OF FRAME outerFrame RUN Print("Outer Leave"). ON ENTRY OF FRAME innerFrame RUN Print("Inner Entry"). ON LEAVE OF FRAME innerFrame RUN Print("Inner Leave"). ENABLE ALL WITH FRAME outerFrame. WAIT-FOR GO OF FRAME outerFrame.
In this example, two nested frames are defined with ENTER/LEAVE
handlers for both frames. The handlers print the event descriptions.
Do the following:
- Click with the mouse inside the inner frame, the
Inner Entry
is printed, OK. - Now click inside the outer frame, two messages
Inner Leave
andOuter Entry
are printed, OK. - Click inside the outer frame again, we expect no messages, since no focus change should happen, but the same two messages
Inner Leave
andOuter Entry
are printed again.
You can repeat the last click multiple times with the same wrong effect.
I think, the problem here is that frames themselves cannot be focused, the fact that we clicked a frame with mouse is not recorded anywhere in FWD, but it should.
#3 Updated by Vladimir Tsichevski about 1 month ago
- Related to Bug #8095: LEAVE trigger fires in no focus change situation added