function(oSourceInfo, oTargetInfo, iLevel) {
			iLevel = iLevel ? iLevel : 0;

			ACCInfoHelper._normalize(oSourceInfo);
			if (iLevel == 0) {
				ACCInfoHelper._normalize(oTargetInfo);
				oTargetInfo._descriptions = [];
			}

			oTargetInfo._descriptions.push(ACCInfoHelper._getFullDescription(oSourceInfo));

			oSourceInfo.children.forEach(function(oChild) {
				if (!oChild.getAccessibilityInfo || (oChild.getVisible && !oChild.getVisible())) {
					return;
				}

				var oChildInfo = oChild.getAccessibilityInfo();
				if (oChildInfo) {
					ACCInfoHelper._flatten(oChildInfo, oTargetInfo, iLevel + 1);
				}
			});

			if (iLevel == 0) {
				oTargetInfo.description = oTargetInfo._descriptions.join(" ").trim();
				oTargetInfo._descriptions = undefined;
			}
		}
function(oSourceInfo, oTargetInfo, iLevel) {
			iLevel = iLevel ? iLevel : 0;

			ACCInfoHelper._normalize(oSourceInfo);
			if (iLevel == 0) {
				ACCInfoHelper._normalize(oTargetInfo);
				oTargetInfo._descriptions = [];
			}

			oTargetInfo._descriptions.push(ACCInfoHelper._getFullDescription(oSourceInfo));

			oSourceInfo.children.forEach(function(oChild) {
				if (!oChild.getAccessibilityInfo || (oChild.getVisible && !oChild.getVisible())) {
					return;
				}

				var oChildInfo = oChild.getAccessibilityInfo();
				if (oChildInfo) {
					ACCInfoHelper._flatten(oChildInfo, oTargetInfo, iLevel + 1);
				}
			});

			if (iLevel == 0) {
				oTargetInfo.description = oTargetInfo._descriptions.join(" ").trim();
				oTargetInfo._descriptions = undefined;
			}
		}
function ( oSourceInfo , oTargetInfo , iLevel ) { iLevel = iLevel ? iLevel : 0 ; ACCInfoHelper . _normalize ( oSourceInfo ) ; if ( iLevel == 0 ) { ACCInfoHelper . _normalize ( oTargetInfo ) ; oTargetInfo . _descriptions = [ ] ; } oTargetInfo . _descriptions . push ( ACCInfoHelper . _getFullDescription ( oSourceInfo ) ) ; oSourceInfo . children . forEach ( function ( oChild ) { if ( ! oChild . getAccessibilityInfo || ( oChild . getVisible && ! oChild . getVisible ( ) ) ) { return ; } var oChildInfo = oChild . getAccessibilityInfo ( ) ; if ( oChildInfo ) { ACCInfoHelper . _flatten ( oChildInfo , oTargetInfo , iLevel + 1 ) ; } } ) ; if ( iLevel == 0 ) { oTargetInfo . description = oTargetInfo . _descriptions . join ( " " ) . trim ( ) ; oTargetInfo . _descriptions = undefined ; } }
/*
Merges the focusable flag and the descriptions of the source and its children into the given target.
/ * Merges the focusable flag and the descriptions of the source and its children into the given target .
flattens the source and target information