Page Menu
Home
Code
Search
Configure Global Search
Log In
Files
F885065
_KeyNavContainer.js
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
2 KB
Subscribers
None
_KeyNavContainer.js
View Options
/*
Copyright (c) 2004-2009, The Dojo Foundation All Rights Reserved.
Available via Academic Free License >= 2.1 OR the modified BSD license.
see: http://dojotoolkit.org/license for details
*/
if
(
!
dojo
.
_hasResource
[
"dijit._KeyNavContainer"
]){
dojo
.
_hasResource
[
"dijit._KeyNavContainer"
]
=
true
;
dojo
.
provide
(
"dijit._KeyNavContainer"
);
dojo
.
require
(
"dijit._Container"
);
dojo
.
declare
(
"dijit._KeyNavContainer"
,
dijit
.
_Container
,{
tabIndex
:
"0"
,
_keyNavCodes
:
{},
connectKeyNavHandlers
:
function
(
_1
,
_2
){
var
_3
=
(
this
.
_keyNavCodes
=
{});
var
_4
=
dojo
.
hitch
(
this
,
this
.
focusPrev
);
var
_5
=
dojo
.
hitch
(
this
,
this
.
focusNext
);
dojo
.
forEach
(
_1
,
function
(
_6
){
_3
[
_6
]
=
_4
;
});
dojo
.
forEach
(
_2
,
function
(
_7
){
_3
[
_7
]
=
_5
;
});
this
.
connect
(
this
.
domNode
,
"onkeypress"
,
"_onContainerKeypress"
);
this
.
connect
(
this
.
domNode
,
"onfocus"
,
"_onContainerFocus"
);
},
startupKeyNavChildren
:
function
(){
dojo
.
forEach
(
this
.
getChildren
(),
dojo
.
hitch
(
this
,
"_startupChild"
));
},
addChild
:
function
(
_8
,
_9
){
dijit
.
_KeyNavContainer
.
superclass
.
addChild
.
apply
(
this
,
arguments
);
this
.
_startupChild
(
_8
);
},
focus
:
function
(){
this
.
focusFirstChild
();
},
focusFirstChild
:
function
(){
var
_a
=
this
.
_getFirstFocusableChild
();
if
(
_a
){
this
.
focusChild
(
_a
);
}
},
focusNext
:
function
(){
var
_b
=
this
.
_getNextFocusableChild
(
this
.
focusedChild
,
1
);
this
.
focusChild
(
_b
);
},
focusPrev
:
function
(){
var
_c
=
this
.
_getNextFocusableChild
(
this
.
focusedChild
,
-
1
);
this
.
focusChild
(
_c
,
true
);
},
focusChild
:
function
(
_d
,
_e
){
if
(
this
.
focusedChild
&&
_d
!==
this
.
focusedChild
){
this
.
_onChildBlur
(
this
.
focusedChild
);
}
_d
.
focus
(
_e
?
"end"
:
"start"
);
this
.
focusedChild
=
_d
;
},
_startupChild
:
function
(
_f
){
_f
.
attr
(
"tabIndex"
,
"-1"
);
this
.
connect
(
_f
,
"_onFocus"
,
function
(){
_f
.
attr
(
"tabIndex"
,
this
.
tabIndex
);
});
this
.
connect
(
_f
,
"_onBlur"
,
function
(){
_f
.
attr
(
"tabIndex"
,
"-1"
);
});
},
_onContainerFocus
:
function
(
evt
){
if
(
evt
.
target
!==
this
.
domNode
){
return
;
}
this
.
focusFirstChild
();
dojo
.
attr
(
this
.
domNode
,
"tabIndex"
,
"-1"
);
},
_onBlur
:
function
(
evt
){
if
(
this
.
tabIndex
){
dojo
.
attr
(
this
.
domNode
,
"tabIndex"
,
this
.
tabIndex
);
}
this
.
inherited
(
arguments
);
},
_onContainerKeypress
:
function
(
evt
){
if
(
evt
.
ctrlKey
||
evt
.
altKey
){
return
;
}
var
_10
=
this
.
_keyNavCodes
[
evt
.
charOrCode
];
if
(
_10
){
_10
();
dojo
.
stopEvent
(
evt
);
}
},
_onChildBlur
:
function
(
_11
){
},
_getFirstFocusableChild
:
function
(){
return
this
.
_getNextFocusableChild
(
null
,
1
);
},
_getNextFocusableChild
:
function
(
_12
,
dir
){
if
(
_12
){
_12
=
this
.
_getSiblingOfChild
(
_12
,
dir
);
}
var
_13
=
this
.
getChildren
();
for
(
var
i
=
0
;
i
<
_13
.
length
;
i
++
){
if
(
!
_12
){
_12
=
_13
[(
dir
>
0
)
?
0
:
(
_13
.
length
-
1
)];
}
if
(
_12
.
isFocusable
()){
return
_12
;
}
_12
=
this
.
_getSiblingOfChild
(
_12
,
dir
);
}
return
null
;
}});
}
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sun, Apr 6, 12:42 (2 w, 23 h ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
24598
Default Alt Text
_KeyNavContainer.js (2 KB)
Attached To
rZEDHG ZedLegacy
Event Timeline
Log In to Comment