diff --git a/bigbluebutton-html5/imports/ui/components/media/container.jsx b/bigbluebutton-html5/imports/ui/components/media/container.jsx
index a6120a5e95c812d33dfe6d958ca61443852e57b3..75723126c6ce67fb6ebcb1bae2e7325d895bcb5d 100755
--- a/bigbluebutton-html5/imports/ui/components/media/container.jsx
+++ b/bigbluebutton-html5/imports/ui/components/media/container.jsx
@@ -1,7 +1,8 @@
 import React, { Component } from 'react';
 import { withTracker } from 'meteor/react-meteor-data';
 import Settings from '/imports/ui/services/settings';
-import { defineMessages, injectIntl } from 'react-intl';
+import { defineMessages, injectIntl, intlShape } from 'react-intl';
+import PropTypes from 'prop-types';
 import { notify } from '/imports/ui/services/notification';
 import VideoService from '/imports/ui/components/video-provider/service';
 import getFromUserSettings from '/imports/ui/services/users-settings';
@@ -14,6 +15,11 @@ import DefaultContent from '../presentation/default-content/component';
 const LAYOUT_CONFIG = Meteor.settings.public.layout;
 const KURENTO_CONFIG = Meteor.settings.public.kurento;
 
+const propTypes = {
+  isScreensharing: PropTypes.bool.isRequired,
+  intl: intlShape.isRequired,
+};
+
 const intlMessages = defineMessages({
   screenshareStarted: {
     id: 'app.media.screenshare.start',
@@ -40,16 +46,13 @@ const intlMessages = defineMessages({
 class MediaContainer extends Component {
   componentWillMount() {
     const { willMount } = this.props;
-    willMount && willMount();
+    if (willMount) {
+      willMount();
+    }
     document.addEventListener('installChromeExtension', this.installChromeExtension.bind(this));
     document.addEventListener('safariScreenshareNotSupported', this.safariScreenshareNotSupported.bind(this));
   }
 
-  componentWillUnmount() {
-    document.removeEventListener('installChromeExtension', this.installChromeExtension.bind(this));
-    document.removeEventListener('safariScreenshareNotSupported', this.safariScreenshareNotSupported.bind(this));
-  }
-
   componentWillReceiveProps(nextProps) {
     const {
       isScreensharing,
@@ -65,6 +68,11 @@ class MediaContainer extends Component {
     }
   }
 
+  componentWillUnmount() {
+    document.removeEventListener('installChromeExtension', this.installChromeExtension.bind(this));
+    document.removeEventListener('safariScreenshareNotSupported', this.safariScreenshareNotSupported.bind(this));
+  }
+
   installChromeExtension() {
     const { intl } = this.props;
 
@@ -72,12 +80,15 @@ class MediaContainer extends Component {
     const CHROME_CUSTOM_EXTENSION_LINK = KURENTO_CONFIG.chromeExtensionLink;
     const CHROME_EXTENSION_LINK = CHROME_CUSTOM_EXTENSION_LINK === 'LINK' ? CHROME_DEFAULT_EXTENSION_LINK : CHROME_CUSTOM_EXTENSION_LINK;
 
-    notify(<div>
-      {intl.formatMessage(intlMessages.chromeExtensionError)}{' '}
-      <a href={CHROME_EXTENSION_LINK} target="_blank">
-        {intl.formatMessage(intlMessages.chromeExtensionErrorLink)}
-      </a>
-    </div>, 'error', 'desktop');
+    const chromeErrorElement = (
+      <div>
+        {intl.formatMessage(intlMessages.chromeExtensionError)}{' '}
+        <a href={CHROME_EXTENSION_LINK} target="_blank">
+          {intl.formatMessage(intlMessages.chromeExtensionErrorLink)}
+        </a>
+      </div>
+    );
+    notify(chromeErrorElement, 'error', 'desktop');
   }
 
   safariScreenshareNotSupported() {
@@ -130,5 +141,6 @@ export default withTracker(() => {
     data.willMount = VideoService.joinVideo;
   }
 
+  MediaContainer.propTypes = propTypes;
   return data;
 })(injectIntl(MediaContainer));