|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 2176 Details
Show help | Quick Search | Submit a Test Suite Support Request | Click here to view your privileges
This page provides all information on Problem Report 2176.
Report 2176 Actions
Problem Report Number 2176 Submitter's Classification Minor System Fault State Resolved Resolution Temporary Interpretation (TIN) Problem Resolution ID TIN.X.0116 Raised 1970-01-01 08:00 Updated 2003-03-13 08:00 Published 1998-05-26 08:00 Product Standard Motif Toolkit Certification Program The Open Brand certification program Test Suite VSM version 4.0.0 Test Identification vsm4/tset/widgets/XmList4A,XmScrolledList4A test4A Specification Motif Toolkit API Location in Spec See Problem Text Problem Summary TIN4M.00023 See PG4M.00015 and PG4M.00016 for source code trace reference. This report is only asking for XmNexentedSelectionCallback this kind of error like showed in above output. Since the output from XmList t... Problem Text
See PG4M.00015 and PG4M.00016 for source code trace reference.
This report is only asking for XmNexentedSelectionCallback this kind
of error like showed in above output. Since the output from XmList test4A is
very huge, I won't put all the output here, the consultant can run it.
When "Keyboard_Focus=1", "XmNSensitive=True"(Those two resources actually
are related), "XmNhighlightOnEnter=True"(XmNautomaticSelection=True or False doesn't
matter), then when XmNselectionPolicy=2(2 is XmEXTENDED_SELECT) and keyboard selection
mode is Normal Mode, the current focused item will be highlighted, this is the case in
our test4A. When we switch the keyboard selection mode to be Add Mode, we need to
remove this current highlight, the assumption here is this current single highlighted
item is not the user wants to be choosed, you can see this when you run this test case
and reaching "tn[2] = 66" in ../vsm4/src/mvslib/behavior which is the failure case, put
sleep before and after that "xisClickKey(KeyosfAddMode)" and you will see the highlight
is removed from the List widget. Here is the comments from Xm lib List.c file, in its
function XmListSetAddMode which also confirm this assumption, it has:
/****************
*
* Funky hacks for Ellis: If we enter add mode with one item selected,
* deselect the current one. If we leave add mode with no items selected,
* select the current one.
*
* rgcote 8/23/93: Here's a little more background for the "Funky hacks".
* In normal mode, one item must be selected at all times. In add mode,
* this is not the case. In add mode, a user wants to specify a set of,
* possibly discontiguous, items to be the selection. If, when going from
* normal mode to add mode, more than one item is already selected than
* we assume that the user started selecting the items and decided that
* he/she needed to now select more items that are discontiguous from the
* currently selected items. On the other hand, if only one item was
* selected, we assume that the single selected item is just the result
* of normal mode forcing one item to be selected and we unselect that
* single item.
*
****************/
if ((add_mode) &&
(lw->list.itemCount != 0) &&
(lw->list.SelectionPolicy == XmEXTENDED_SELECT) &&
(lw->list.selectedItemCount == 1) &&
(lw->list.InternalList[lw->list.CurrentKbdItem]->selected))
{
lw->list.InternalList[lw->list.CurrentKbdItem]->selected = FALSE;
lw->list.InternalList[lw->list.CurrentKbdItem]->last_selected = FALSE;
DrawList(lw, NULL, TRUE);
#ifndef OSF_v1_2_4
ClickElement(lw, NULL,FALSE);
#else /* OSF_v1_2_4 */
UpdateSelectedList(lw);
#endif /* OSF_v1_2_4 */
Our system is not OSF_v1_2_4, we are basically using OSF_v1_2_3, but a little
bit higher than this, it's inbetween 1.2.3 and 1.2.4. So at above, our AIX4.2 and
AIX4.1 using "ClickElement(lw, NULL,FALSE)" instead of "UpdateSelectedList(lw)".
In the old VTS1.1, for this case, it does set an expected
XmNextendedSelectionCallback callback, so our system can pass the VTS1.1, but in the
VSM4, ../vsm4/src/mvslib/instances/iList.c:SetExpectedActions for KeyosfAddMode, it
won't set an expected XmNextendedSelectionCallback callback anymore, so I have this
failure.
The main purpose for this waiver is that I want a confirmation from X Open that
we don't want to keep this backward compatibility if this waiver is refused.
Another potential case here I can imagine is: if the user has selected this highlighted item already in this test4A failure situation, then we change keyboard mode from
Normal mode to Add mode, surely we have a wrong assumption here in our XmListSetAddMode
function, we clear the highlight on this user choosed item, if we use ClickElement
then we have a XmNextendedSelectionCallback which is equal to say the user toggle the
current focused item' selection state, if we use UpdateSelectedList then we don't
have a XmNextendedSelectionCallback at all, so in this kind of case, who is more right?
I'll change our source code if this waiver is refused. Personally I don't think
this is a big deal.Test Output
SECTION: Widgets
TEST CASE: XmList
TEST PURPOSE #4
The XmList widget shall exhibit the behavior
defined in the Motif Toolkit API specification.
INFO: ***************** Beginning Iteration 1 of 64 ****************
INFO: --Keyboard_Focus=1
INFO: --XmNsensitive=True
INFO: --XmNautomaticSelection=False
INFO: --XmNhighlightOnEnter=True
INFO: --XmNselectionPolicy=0
PREP: Move over Item 1, push button while over
TEST: ListBeginSelect
INFO: ***************** Beginning Iteration 33 of 64 ****************
INFO: --Keyboard_Focus=1
INFO: --XmNsensitive=True
INFO: --XmNautomaticSelection=False
INFO: --XmNhighlightOnEnter=True
INFO: --XmNselectionPolicy=2
PREP: Move over Item 1, push button while over
TEST: ListBeginSelect
TEST: Causes the current gadget to be armed.
TEST: Causes the current gadget to be activated.
TEST: ListEndSelect
TEST: ListButtonMotion
PREP: Move over Item 2, push button while over, drag off
TEST: ListBeginSelect
TEST: Causes the current gadget to be armed.
TEST: Causes the current gadget to be activated.
TEST: ListButtonMotion
TEST: Causes current gadget to process mouse mtn evnt.
TEST: ListEndSelect
PREP: Move over Item 0, push button 1, drag to Item 3
TEST: ListBeginSelect
TEST: Causes the current gadget to be armed.
TEST: Causes the current gadget to be activated.
TEST: ListButtonMotion
TEST: Causes current gadget to process mouse mtn evnt.
TEST: ListEndSelect
PREP: Move over Item 5, push button 1, drag to Item 2
TEST: ListBeginSelect
TEST: Causes the current gadget to be armed.
TEST: Causes the current gadget to be activated.
TEST: ListButtonMotion
TEST: Causes current gadget to process mouse mtn evnt.
TEST: ListEndSelect
PREP: Move over Item 4, press & release button1 twice
TEST: ListBeginSelect
TEST: Causes the current gadget to be armed.
TEST: Causes the current gadget to be activated.
TEST: ListEndSelect
TEST: ListButtonMotion
PREP: Move over Item 6, press & release button1 twice
TEST: ListBeginSelect
TEST: Causes the current gadget to be armed.
TEST: Causes the current gadget to be activated.
TEST: ListEndSelect
TEST: ListButtonMotion
PREP: Move over Item 1, push Ctrl button while over
TEST: ListBeginToggle
TEST: ListEndToggle
TEST: ListButtonMotion
PREP: Move over Item 2, push Ctrl button while over, drag off
TEST: ListBeginToggle
TEST: ListButtonMotion
TEST: ListEndToggle
PREP: Move over Item 0, push Ctrl button 1, drag to Item 5
TEST: ListBeginToggle
TEST: ListButtonMotion
TEST: ListEndToggle
PREP: Move over Item 5, push Ctrl button 1, drag to Item 2
TEST: ListBeginToggle
TEST: ListButtonMotion
TEST: ListEndToggle
PREP: Move over Item 4, press & release Ctrl button1 twice
TEST: ListBeginToggle
TEST: ListEndToggle
TEST: ListButtonMotion
PREP: Move over Item 6, press & release Ctrl button1 twice
TEST: ListBeginToggle
TEST: ListEndToggle
TEST: ListButtonMotion
PREP: Move over Item 1, push Shft button while over
TEST: ListBeginExtend
TEST: ListEndExtend
TEST: ListButtonMotion
PREP: Move over Item 2, push Shft button while over, drag off
TEST: ListBeginExtend
TEST: ListButtonMotion
TEST: ListEndExtend
PREP: Move over Item 0, push Shft button 1, drag to Item 3
TEST: ListBeginExtend
TEST: ListButtonMotion
TEST: ListEndExtend
PREP: Move over Item 5, push Shft button 1, drag to Item 3
TEST: ListBeginExtend
TEST: ListButtonMotion
TEST: ListEndExtend
PREP: Move over Item 3, press & release Shft button1 twice
TEST: ListBeginExtend
TEST: ListEndExtend
TEST: ListButtonMotion
PREP: Move over Item 4, press & release Shft button1 twice
TEST: ListBeginExtend
TEST: ListEndExtend
TEST: ListButtonMotion
PREP: Move over Item 1, push button while over
TEST: ListBeginSelect
TEST: Causes the current gadget to be armed.
TEST: Causes the current gadget to be activated.
TEST: ListEndSelect
TEST: ListButtonMotion
PREP: Move over Item 2, push button while over, drag off
TEST: ListBeginSelect
TEST: Causes the current gadget to be armed.
TEST: Causes the current gadget to be activated.
TEST: ListButtonMotion
TEST: Causes current gadget to process mouse mtn evnt.
TEST: ListEndSelect
PREP: Move over Item 0, push button 1, drag to Item 3
TEST: ListBeginSelect
TEST: Causes the current gadget to be armed.
TEST: Causes the current gadget to be activated.
TEST: ListButtonMotion
TEST: Causes current gadget to process mouse mtn evnt.
TEST: ListEndSelect
PREP: Move over Item 5, push button 1, drag to Item 2
TEST: ListBeginSelect
TEST: Causes the current gadget to be armed.
TEST: Causes the current gadget to be activated.
TEST: ListButtonMotion
TEST: Causes current gadget to process mouse mtn evnt.
TEST: ListEndSelect
PREP: Move over Item 4, press & release button1 twice
TEST: ListBeginSelect
TEST: Causes the current gadget to be armed.
TEST: Causes the current gadget to be activated.
TEST: ListEndSelect
TEST: ListButtonMotion
PREP: Move over Item 6, press & release button1 twice
TEST: ListBeginSelect
TEST: Causes the current gadget to be armed.
TEST: Causes the current gadget to be activated.
TEST: ListEndSelect
TEST: ListButtonMotion
PREP: Move over Item 1, push Ctrl button while over
TEST: ListBeginToggle
TEST: ListEndToggle
TEST: ListButtonMotion
PREP: Move over Item 2, push Ctrl button while over, drag off
TEST: ListBeginToggle
TEST: ListButtonMotion
TEST: ListEndToggle
PREP: Move over Item 0, push Ctrl button 1, drag to Item 5
TEST: ListBeginToggle
TEST: ListButtonMotion
TEST: ListEndToggle
PREP: Move over Item 5, push Ctrl button 1, drag to Item 2
TEST: ListBeginToggle
TEST: ListButtonMotion
TEST: ListEndToggle
PREP: Move over Item 4, press & release Ctrl button1 twice
TEST: ListBeginToggle
TEST: ListEndToggle
TEST: ListButtonMotion
PREP: Move over Item 6, press & release Ctrl button1 twice
TEST: ListBeginToggle
TEST: ListEndToggle
TEST: ListButtonMotion
PREP: Move over Item 1, push Shft button while over
TEST: ListBeginExtend
TEST: ListEndExtend
TEST: ListButtonMotion
PREP: Move over Item 2, push Shft button while over, drag off
TEST: ListBeginExtend
TEST: ListButtonMotion
TEST: ListEndExtend
PREP: Move over Item 0, push Shft button 1, drag to Item 3
TEST: ListBeginExtend
TEST: ListButtonMotion
TEST: ListEndExtend
PREP: Move over Item 5, push Shft button 1, drag to Item 3
TEST: ListBeginExtend
TEST: ListButtonMotion
TEST: ListEndExtend
PREP: Move over Item 3, press & release Shft button1 twice
TEST: ListBeginExtend
TEST: ListEndExtend
TEST: ListButtonMotion
PREP: Move over Item 4, press & release Shft button1 twice
TEST: ListBeginExtend
TEST: ListEndExtend
TEST: ListButtonMotion
PREP: Click KeyActivate on Item 6
TEST: ListKbdActivate
TEST: ListButtonMotion
PREP: Press KeySelect & Release KeySelect on Item 6
TEST: ListKbdBeginSelect
TEST: ListKbdEndSelect
TEST: ListButtonMotion
PREP: Click KeyUp on Item 5
TEST: ListPrevItem
TEST: Traverses to the next item above current gadget
TEST: ListButtonMotion
PREP: Click KeyDown on Item 3
TEST: ListNextItem
TEST: Traverses to the next item below current gadget
TEST: ListButtonMotion
PREP: Click KeyUp Twice from Item 3
TEST: ListPrevItem
TEST: Traverses to the next item above current gadget
TEST: ListButtonMotion
PREP: Click KeyDown Twice from Item 3
TEST: ListNextItem
TEST: Traverses to the next item below current gadget
TEST: ListButtonMotion
PREP: Click KeyShiftUp on Item 2
TEST: ListExtendPrevItem
TEST: ListButtonMotion
PREP: Click KeyShiftDown on Item 3
TEST: ListExtendNextItem
TEST: ListButtonMotion
PREP: Click KeyBeginLine on Item 4
TEST: ListBeginLine
TEST: Traverses to 1st widget or gadget in crnt tab grp.
TEST: ListButtonMotion
PREP: Click KeyEndLine on Item 5
TEST: ListEndLine
TEST: ListButtonMotion
PREP: Click KeyBeginData on Item 2
TEST: ListBeginData
TEST: ListButtonMotion
PREP: Click KeyEndData on Item 3
TEST: ListEndData
TEST: ListButtonMotion
PREP: Press KeyExtend & Release KeyExtend on Item 5
TEST: ListKbdBeginExtend
TEST: ListKbdEndExtend
TEST: ListButtonMotion
PREP: Click KeyCancel Once on Item 2
TEST: only for multi clicks on KCancel
TEST: ListButtonMotion
PREP: Click KeyCancel twice on Item 3
TEST: ListKbdCancel
TEST: only for multi clicks on KCancel
TEST: ListButtonMotion
PREP: Click KeySelectAll on Item 4
TEST: ListKbdSelectAll
TEST: ListButtonMotion
PREP: Click KeyDeselectAll on Item 5
TEST: ListKbdDeSelectAll
TEST: ListButtonMotion
PREP: Click KeyHelp on Item 2
TEST: help key results in help callback(if exists)
TEST: Call the callbacks for XmNhelpCallback (if exist)
TEST: ListButtonMotion
PREP: Click KeyShiftBeginData on Item 2
TEST: ListBegindataExtend
TEST: ListButtonMotion
PREP: Click KeyShiftEndData on Item 3
TEST: ListEndDataExtend
TEST: ListButtonMotion
PREP: Multi click Button 1 twice on Item 3
TEST: only for multi clicks on Button
TEST: Causes current gadget to process a multiple click.
TEST: ListButtonMotion
PREP: Click KeyAddMode on Item 2
TEST: ListAddMode
ERROR: Received unexpected callback(s) XmNextendedSelectionCallback of widget Xm
List of class xmListWidgetClass Received 1, Expected 0
TEST: ListButtonMotion
PREP: Click KeyBeginData on Item 2
TEST: ListBeginData
TEST: ListButtonMotion
PREP: Click KeyEndData on Item 3
TEST: ListEndData
TEST: ListButtonMotion
PREP: Click KeySelectAll on Item 4
TEST: ListKbdSelectAll
TEST: ListButtonMotion
PREP: Click KeyDeselectAll on Item 5
TEST: ListKbdDeSelectAll
TEST: ListButtonMotion
PREP: Click KeyUp on Item 5
TEST: ListBeginSelect
TEST: Causes the current gadget to be armed.
TEST: Causes the current gadget to be activated.
TEST: ListEndSelect
TEST: ListPrevItem
TEST: Traverses to the next item above current gadget
TEST: ListButtonMotion
PREP: Click KeyDown on Item 3
TEST: ListBeginSelect
TEST: Causes the current gadget to be armed.
TEST: Causes the current gadget to be activated.
TEST: ListEndSelect
TEST: ListNextItem
TEST: Traverses to the next item below current gadget
TEST: ListButtonMotion
PREP: Destroy the List
TEST: Destroying the widget results in a destroy callback
INFO: ***************** Beginning Iteration 34 of 64 ****************
4 FAILReview Information
Review Type TSMA Review Start Date null Completed null Status Complete Review Recommendation No Resolution Given Review Response
A non-alignment between the reference code and its specification is
under investigation. Thus it is recommended that a Temporary
Interpretation be granted for this test while it remains subject to review.
If a change to the specification results from the conclusion of this
investigation, then this Temporary Interpretation will be converted
to a Permanent Waiver. Otherwise this Temporary Interpretation will
be converted to a Temporary Waiver (Minor System Fault).
Review Type SA Review Start Date null Completed null Status Complete Review Resolution Temporary Interpretation (TIN) Review Conclusion
A Temporary Interpretation is granted.
Problem Reporting System Options:
- View Report 2176
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority