@ -191,9 +191,10 @@ function getCameraVideoSize(videoWidth,
/ * *
/ * *
* Sets the display name for the given video span id .
* Sets the display name for the given video span id .
* /
* /
function setDisplayName ( videoSpanId , displayName ) {
function setDisplayName ( videoSpanId , displayName , key ) {
var nameSpan = $ ( '#' + videoSpanId + '>span.displayname' ) ;
var nameSpan = $ ( '#' + videoSpanId + '>span.displayname' ) ;
var defaultLocalDisplayName = interfaceConfig . DEFAULT _LOCAL _DISPLAY _NAME ;
var defaultLocalDisplayName = APP . translation . generateTranslatonHTML (
interfaceConfig . DEFAULT _LOCAL _DISPLAY _NAME ) ;
// If we already have a display name for this video.
// If we already have a display name for this video.
if ( nameSpan . length > 0 ) {
if ( nameSpan . length > 0 ) {
@ -202,14 +203,25 @@ function setDisplayName(videoSpanId, displayName) {
if ( nameSpanElement . id === 'localDisplayName' &&
if ( nameSpanElement . id === 'localDisplayName' &&
$ ( '#localDisplayName' ) . text ( ) !== displayName ) {
$ ( '#localDisplayName' ) . text ( ) !== displayName ) {
if ( displayName && displayName . length > 0 )
if ( displayName && displayName . length > 0 )
$ ( '#localDisplayName' ) . html ( displayName + ' (me)' ) ;
{
var meHTML = APP . translation . generateTranslatonHTML ( "me" ) ;
$ ( '#localDisplayName' ) . html ( displayName + ' (' + meHTML + ')' ) ;
}
else
else
$ ( '#localDisplayName' ) . text ( defaultLocalDisplayName ) ;
$ ( '#localDisplayName' ) . html ( defaultLocalDisplayName ) ;
} else {
} else {
if ( displayName && displayName . length > 0 )
if ( displayName && displayName . length > 0 )
{
$ ( '#' + videoSpanId + '_name' ) . html ( displayName ) ;
$ ( '#' + videoSpanId + '_name' ) . html ( displayName ) ;
}
else if ( key && key . length > 0 )
{
var nameHtml = APP . translation . generateTranslatonHTML ( key ) ;
$ ( '#' + videoSpanId + '_name' ) . html ( nameHtml ) ;
}
else
else
$ ( '#' + videoSpanId + '_name' ) . text ( interfaceConfig . DEFAULT _REMOTE _DISPLAY _NAME ) ;
$ ( '#' + videoSpanId + '_name' ) . text (
interfaceConfig . DEFAULT _REMOTE _DISPLAY _NAME ) ;
}
}
} else {
} else {
var editButton = null ;
var editButton = null ;
@ -220,16 +232,23 @@ function setDisplayName(videoSpanId, displayName) {
if ( videoSpanId === 'localVideoContainer' ) {
if ( videoSpanId === 'localVideoContainer' ) {
editButton = createEditDisplayNameButton ( ) ;
editButton = createEditDisplayNameButton ( ) ;
nameSpan . innerText = defaultLocalDisplayName ;
if ( displayName && displayName . length > 0 ) {
var meHTML = APP . translation . generateTranslatonHTML ( "me" ) ;
nameSpan . innerHTML = displayName + meHTML ;
}
else
nameSpan . innerHTML = defaultLocalDisplayName ;
}
}
else {
else {
nameSpan . innerText = interfaceConfig . DEFAULT _REMOTE _DISPLAY _NAME ;
if ( displayName && displayName . length > 0 ) {
}
if ( displayName && displayName . length > 0 ) {
nameSpan . innerText = displayName ;
nameSpan . innerText = displayName ;
}
else
nameSpan . innerText = interfaceConfig . DEFAULT _REMOTE _DISPLAY _NAME ;
}
}
if ( ! editButton ) {
if ( ! editButton ) {
nameSpan . id = videoSpanId + '_name' ;
nameSpan . id = videoSpanId + '_name' ;
} else {
} else {
@ -245,11 +264,18 @@ function setDisplayName(videoSpanId, displayName) {
if ( displayName && displayName . length ) {
if ( displayName && displayName . length ) {
editableText . value
editableText . value
= displayName . substring ( 0 , displayName . indexOf ( ' (me)' ) ) ;
= displayName ;
}
}
var defaultNickname = APP . translation . translateString (
"defaultNickname" , { name : "Jane Pink" } ) ;
editableText . setAttribute ( 'style' , 'display:none;' ) ;
editableText . setAttribute ( 'style' , 'display:none;' ) ;
editableText . setAttribute ( 'placeholder' , 'ex. Jane Pink' ) ;
editableText . setAttribute ( 'data-18n' ,
'[placeholder]defaultNickname' ) ;
editableText . setAttribute ( "data-i18n-options" ,
JSON . stringify ( { name : "Jane Pink" } ) ) ;
editableText . setAttribute ( "placeholder" , defaultNickname ) ;
$ ( '#' + videoSpanId ) [ 0 ] . appendChild ( editableText ) ;
$ ( '#' + videoSpanId ) [ 0 ] . appendChild ( editableText ) ;
$ ( '#localVideoContainer .displayname' )
$ ( '#localVideoContainer .displayname' )
@ -1270,10 +1296,17 @@ var VideoLayout = (function (my) {
if ( ! $ ( '#localDisplayName' ) . is ( ":visible" ) ) {
if ( ! $ ( '#localDisplayName' ) . is ( ":visible" ) ) {
if ( NicknameHandler . getNickname ( ) )
if ( NicknameHandler . getNickname ( ) )
$ ( '#localDisplayName' ) . text ( NicknameHandler . getNickname ( ) + " (me)" ) ;
{
var meHTML = APP . translation . generateTranslatonHTML ( "me" ) ;
$ ( '#localDisplayName' ) . html ( NicknameHandler . getNickname ( ) + " (" + meHTML + ")" ) ;
}
else
else
{
var defaultHTML = APP . translation . generateTranslatonHTML (
interfaceConfig . DEFAULT _LOCAL _DISPLAY _NAME ) ;
$ ( '#localDisplayName' )
$ ( '#localDisplayName' )
. text ( interfaceConfig . DEFAULT _LOCAL _DISPLAY _NAME ) ;
. html ( defaultHTML ) ;
}
$ ( '#localDisplayName' ) . show ( ) ;
$ ( '#localDisplayName' ) . show ( ) ;
}
}
@ -1796,17 +1829,20 @@ var VideoLayout = (function (my) {
=== APP . xmpp . myResource ( ) )
=== APP . xmpp . myResource ( ) )
return ;
return ;
var members = APP . xmpp . getMembers ( ) ;
// Update the current dominant speaker.
// Update the current dominant speaker.
if ( resourceJid !== currentDominantSpeaker ) {
if ( resourceJid !== currentDominantSpeaker ) {
var oldSpeakerVideoSpanId = "participant_" + currentDominantSpeaker ,
var oldSpeakerVideoSpanId = "participant_" + currentDominantSpeaker ,
newSpeakerVideoSpanId = "participant_" + resourceJid ;
newSpeakerVideoSpanId = "participant_" + resourceJid ;
if ( $ ( "#" + oldSpeakerVideoSpanId + ">span.displayname" ) . text ( ) ===
var currentJID = APP . xmpp . findJidFromResource ( currentDominantSpeaker ) ;
interfaceConfig . DEFAULT _DOMINANT _SPEAKER _DISPLAY _NAME ) {
var newJID = APP . xmpp . findJidFromResource ( resourceJid ) ;
if ( currentDominantSpeaker && ( ! members || ! members [ currentJID ] ||
! members [ currentJID ] . displayName ) ) {
setDisplayName ( oldSpeakerVideoSpanId , null ) ;
setDisplayName ( oldSpeakerVideoSpanId , null ) ;
}
}
if ( $ ( "#" + newSpeakerVideoSpanId + ">span.displayname" ) . text ( ) ===
if ( resourceJid && ( ! members || ! members [ newJID ] ||
interfaceConfig . DEFAULT _REMOTE _DISPLAY _NAME ) {
! members [ newJID ] . displayName ) ) {
setDisplayName ( newSpeakerVideoSpanId ,
setDisplayName ( newSpeakerVideoSpanId , null ,
interfaceConfig . DEFAULT _DOMINANT _SPEAKER _DISPLAY _NAME ) ;
interfaceConfig . DEFAULT _DOMINANT _SPEAKER _DISPLAY _NAME ) ;
}
}
currentDominantSpeaker = resourceJid ;
currentDominantSpeaker = resourceJid ;