diff --git a/interface_config.js b/interface_config.js
index 48d29b7d3..95164e3a5 100644
--- a/interface_config.js
+++ b/interface_config.js
@@ -2,6 +2,9 @@ var interfaceConfig = {
CANVAS_EXTRA: 104,
CANVAS_RADIUS: 0,
SHADOW_COLOR: '#ffffff',
+ // TO FIX: this needs to be handled from SASS variables. There are some
+ // methods allowing to use variables both in css and js.
+ DEFAULT_BACKGROUND: '#474747',
INITIAL_TOOLBAR_TIMEOUT: 20000,
TOOLBAR_TIMEOUT: 4000,
DEFAULT_REMOTE_DISPLAY_NAME: "Fellow Jitster",
@@ -16,8 +19,8 @@ var interfaceConfig = {
INVITATION_POWERED_BY: true,
// the toolbar buttons line is intentionally left in one line, to be able
// to easily override values or remove them using regex
- MAIN_TOOLBAR_BUTTONS: ['microphone', 'camera', 'desktop', 'fullscreen', 'hangup'], // jshint ignore:line
- TOOLBAR_BUTTONS: ['authentication', 'microphone', 'camera', 'desktop', 'recording', 'security', 'invite', 'chat', 'etherpad', 'sharedvideo', 'fullscreen', 'sip', 'dialpad', 'settings', 'hangup', 'filmstrip', 'contacts'], // jshint ignore:line
+ MAIN_TOOLBAR_BUTTONS: ['microphone', 'camera', 'desktop', 'invite', 'hangup'], // jshint ignore:line
+ TOOLBAR_BUTTONS: ['profile', 'authentication', 'microphone', 'camera', 'desktop', 'recording', 'security', 'invite', 'chat', 'etherpad', 'sharedvideo', 'fullscreen', 'sip', 'dialpad', 'settings', 'hangup', 'filmstrip', 'contacts'], // jshint ignore:line
// Determines how the video would fit the screen. 'both' would fit the whole
// screen, 'height' would fit the original video height to the height of the
// screen, 'width' would fit the original video width to the width of the
@@ -30,4 +33,4 @@ var interfaceConfig = {
RANDOM_AVATAR_URL_PREFIX: false,
RANDOM_AVATAR_URL_SUFFIX: false,
FILM_STRIP_MAX_HEIGHT: 120
-};
+};
\ No newline at end of file
diff --git a/lang/main.json b/lang/main.json
index 5f0226112..f8d5d1c9b 100644
--- a/lang/main.json
+++ b/lang/main.json
@@ -11,7 +11,7 @@
"raisedHand": "Would like to speak",
"defaultNickname": "ex. Jane Pink",
"defaultLink": "e.g. __url__",
- "calling": "Calling __name__ ...",
+ "callingName": "__name__",
"userMedia": {
"react-nativeGrantPermissions": "Please grant permissions to use your camera and microphone by pressing Allow button",
"chromeGrantPermissions": "Please grant permissions to use your camera and microphone by pressing Allow button",
diff --git a/modules/UI/UI.js b/modules/UI/UI.js
index b705a0334..030c7ae2c 100644
--- a/modules/UI/UI.js
+++ b/modules/UI/UI.js
@@ -1499,6 +1499,15 @@ UI.hideRingOverLay = function () {
FilmStrip.toggleFilmStrip(true);
};
+/**
+ * Indicates if the ring overlay is currently visible.
+ *
+ * @returns {*|boolean} {true} if the ring overlay is visible, {false} otherwise
+ */
+UI.isRingOverlayVisible = function () {
+ return RingOverlay.isVisible();
+};
+
/**
* Shows browser-specific overlay with guidance how to proceed with gUM prompt.
* @param {string} browser - name of browser for which to show the guidance
diff --git a/modules/UI/ring_overlay/RingOverlay.js b/modules/UI/ring_overlay/RingOverlay.js
index 6bc9b1645..78b433de3 100644
--- a/modules/UI/ring_overlay/RingOverlay.js
+++ b/modules/UI/ring_overlay/RingOverlay.js
@@ -1,4 +1,5 @@
/* global $ */
+/* jshint -W101 */
/**
* Shows ring overlay
@@ -8,35 +9,39 @@ class RingOverlay {
* @param callee instance of User class from TokenData.js
*/
constructor(callee) {
+ this._containerId = 'ringOverlay';
+ this._audioContainerId = 'ringOverlayRinging';
+
this.callee = callee;
- this._buildHtml();
- this.audio = $("#ring_overlay_ringing");
- this.audio[0].play();
+ this.render();
+ this.audio = document.getElementById(this._audioContainerId);
+ this.audio.play();
this._setAudioTimeout();
}
/**
* Builds and appends the ring overlay to the html document
*/
- _buildHtml() {
- $("body").append("