@@ -742,20 +742,20 @@ QUnit.module('Tab select action', () => {
742742 } ) ;
743743 const tabs = $tabs . dxTabs ( 'instance' ) ;
744744
745- const tabsItemFirst = $tabs . find ( `.${ TABS_ITEM_CLASS } ` ) . eq ( 0 ) ;
745+ const $ tabsItemFirst = $tabs . find ( `.${ TABS_ITEM_CLASS } ` ) . eq ( 0 ) ;
746746
747- tabsItemFirst . trigger ( 'dxclick' ) ;
747+ $ tabsItemFirst. trigger ( 'dxclick' ) ;
748748
749749 const $focusedElementFirst = tabs . option ( 'focusedElement' ) ;
750750
751- assert . strictEqual ( $focusedElementFirst , tabsItemFirst [ 0 ] ) ;
751+ assert . strictEqual ( $focusedElementFirst , $ tabsItemFirst[ 0 ] ) ;
752752
753753 tabs . option ( { selectedIndex : 1 } ) ;
754754
755- const tabItemSecond = $tabs . find ( `.${ TABS_ITEM_CLASS } ` ) . eq ( 1 ) ;
755+ const $ tabItemSecond = $tabs . find ( `.${ TABS_ITEM_CLASS } ` ) . eq ( 1 ) ;
756756 const $focusedElementSecond = tabs . option ( 'focusedElement' ) ;
757757
758- assert . strictEqual ( $focusedElementSecond , tabItemSecond [ 0 ] ) ;
758+ assert . strictEqual ( $focusedElementSecond , $ tabItemSecond[ 0 ] ) ;
759759 } ) ;
760760
761761 QUnit . test ( 'focusedElement must be changed after changing the selectedItem' , function ( assert ) {
@@ -771,20 +771,20 @@ QUnit.module('Tab select action', () => {
771771 } ) ;
772772 const tabs = $tabs . dxTabs ( 'instance' ) ;
773773
774- const tabsItemFirst = $tabs . find ( `.${ TABS_ITEM_CLASS } ` ) . eq ( 0 ) ;
774+ const $ tabsItemFirst = $tabs . find ( `.${ TABS_ITEM_CLASS } ` ) . eq ( 0 ) ;
775775
776- tabsItemFirst . trigger ( 'dxclick' ) ;
776+ $ tabsItemFirst. trigger ( 'dxclick' ) ;
777777
778778 const $focusedElementFirst = tabs . option ( 'focusedElement' ) ;
779779
780- assert . strictEqual ( $focusedElementFirst , tabsItemFirst [ 0 ] ) ;
780+ assert . strictEqual ( $focusedElementFirst , $ tabsItemFirst[ 0 ] ) ;
781781
782782 tabs . option ( { selectedItem : tabs . option ( 'items[1]' ) } ) ;
783783
784- const tabItemSecond = $tabs . find ( `.${ TABS_ITEM_CLASS } ` ) . eq ( 1 ) ;
784+ const $ tabItemSecond = $tabs . find ( `.${ TABS_ITEM_CLASS } ` ) . eq ( 1 ) ;
785785 const $focusedElementSecond = tabs . option ( 'focusedElement' ) ;
786786
787- assert . strictEqual ( $focusedElementSecond , tabItemSecond [ 0 ] ) ;
787+ assert . strictEqual ( $focusedElementSecond , $ tabItemSecond[ 0 ] ) ;
788788 } ) ;
789789
790790 QUnit . test ( 'focusedElement must be changed after changing the selectedItems' , function ( assert ) {
@@ -798,20 +798,51 @@ QUnit.module('Tab select action', () => {
798798 const $tabs = $ ( '#tabs' ) . dxTabs ( { items, focusStateEnabled : true } ) ;
799799 const tabs = $tabs . dxTabs ( 'instance' ) ;
800800
801- const tabItemFirst = $tabs . find ( `.${ TABS_ITEM_CLASS } ` ) . eq ( 0 ) ;
801+ const $ tabItemFirst = $tabs . find ( `.${ TABS_ITEM_CLASS } ` ) . eq ( 0 ) ;
802802
803- tabItemFirst . trigger ( 'dxclick' ) ;
803+ $ tabItemFirst. trigger ( 'dxclick' ) ;
804804
805805 const $focusedElementFirst = tabs . option ( 'focusedElement' ) ;
806806
807- assert . strictEqual ( $focusedElementFirst , tabItemFirst [ 0 ] ) ;
807+ assert . strictEqual ( $focusedElementFirst , $ tabItemFirst[ 0 ] ) ;
808808
809809 tabs . option ( { selectedItems : [ items [ 1 ] , items [ 2 ] ] } ) ;
810810
811- const tabItemSecond = $tabs . find ( `.${ TABS_ITEM_CLASS } ` ) . eq ( 1 ) ;
811+ const $ tabItemSecond = $tabs . find ( `.${ TABS_ITEM_CLASS } ` ) . eq ( 1 ) ;
812812 const $focusedElementSecond = tabs . option ( 'focusedElement' ) ;
813813
814- assert . strictEqual ( $focusedElementSecond , tabItemSecond [ 0 ] ) ;
814+ assert . strictEqual ( $focusedElementSecond , $tabItemSecond [ 0 ] ) ;
815+ } ) ;
816+
817+ QUnit . test ( 'focusedElement should remain on the same selected tab after pressing Enter when multiple selection mode is used (T1285635)' , function ( assert ) {
818+ const items = [
819+ { text : '0' } ,
820+ { text : '1' } ,
821+ { text : '2' } ,
822+ { text : '3' } ,
823+ ] ;
824+
825+ const $tabs = $ ( '#tabs' ) . dxTabs ( {
826+ items,
827+ focusStateEnabled : true
828+ } ) ;
829+ const tabs = $tabs . dxTabs ( 'instance' ) ;
830+
831+ const $tabItems = $tabs . find ( `.${ TABS_ITEM_CLASS } ` ) ;
832+ const $secondTab = $tabItems . eq ( 1 ) ;
833+
834+ $secondTab . trigger ( 'dxclick' ) ;
835+
836+ const keyboard = keyboardMock ( $tabs ) ;
837+ keyboard
838+ . press ( 'right' )
839+ . press ( 'right' )
840+ . press ( 'enter' ) ;
841+
842+ const $fourthTab = $tabItems . eq ( 3 ) ;
843+ const focusedElement = tabs . option ( 'focusedElement' ) ;
844+
845+ assert . strictEqual ( focusedElement , $fourthTab . get ( 0 ) , 'focusedElement should match the selected tab' ) ;
815846 } ) ;
816847} ) ;
817848
0 commit comments