aboutsummaryrefslogtreecommitdiffstats
path: root/src/components/services
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/services')
-rw-r--r--src/components/services/content/ServiceWebview.js20
-rw-r--r--src/components/services/tabs/TabBarSortableList.js3
-rw-r--r--src/components/services/tabs/TabItem.js18
-rw-r--r--src/components/services/tabs/Tabbar.js3
4 files changed, 38 insertions, 6 deletions
diff --git a/src/components/services/content/ServiceWebview.js b/src/components/services/content/ServiceWebview.js
index 185d41175..2562c09ce 100644
--- a/src/components/services/content/ServiceWebview.js
+++ b/src/components/services/content/ServiceWebview.js
@@ -30,9 +30,14 @@ class ServiceWebview extends Component {
30 this.webview.view.addEventListener('console-message', e => { 30 this.webview.view.addEventListener('console-message', e => {
31 debug('Service logged a message:', e.message); 31 debug('Service logged a message:', e.message);
32 }); 32 });
33 this.webview.view.addEventListener('did-navigate', () => {
34 document.title = `Ferdi - ${this.props.service.name} ${this.props.service.dialogTitle
35 ? ` - ${this.props.service.dialogTitle}`
36 : ''
37 } ${`- ${this.props.service._webview.getTitle()}`}`;
38 })
33 } 39 }
34 }, 40 })
35 );
36 } 41 }
37 42
38 componentWillUnmount() { 43 componentWillUnmount() {
@@ -47,6 +52,12 @@ class ServiceWebview extends Component {
47 if (this.props.service.isActive) { 52 if (this.props.service.isActive) {
48 webview.view.blur(); 53 webview.view.blur();
49 webview.view.focus(); 54 webview.view.focus();
55 window.setTimeout(() => {
56 document.title = `Ferdi - ${this.props.service.name} ${this.props.service.dialogTitle
57 ? ` - ${this.props.service.dialogTitle}`
58 : ''
59 } ${`- ${this.props.service._webview.getTitle()}`}`;
60 }, 100);
50 } else { 61 } else {
51 debug('Refocus not required - Not active service'); 62 debug('Refocus not required - Not active service');
52 } 63 }
@@ -92,9 +103,8 @@ class ServiceWebview extends Component {
92 } 103 }
93 allowpopups 104 allowpopups
94 nodeintegration 105 nodeintegration
95 webpreferences={`spellcheck=${ 106 webpreferences={`spellcheck=${isSpellcheckerEnabled ? 1 : 0
96 isSpellcheckerEnabled ? 1 : 0 107 }, contextIsolation=1, enableRemoteModule=1`}
97 }, contextIsolation=1, enableRemoteModule=1`}
98 /> 108 />
99 ); 109 );
100 } 110 }
diff --git a/src/components/services/tabs/TabBarSortableList.js b/src/components/services/tabs/TabBarSortableList.js
index 69a12e982..3049b6efa 100644
--- a/src/components/services/tabs/TabBarSortableList.js
+++ b/src/components/services/tabs/TabBarSortableList.js
@@ -21,6 +21,7 @@ class TabBarSortableList extends Component {
21 hibernateService: PropTypes.func.isRequired, 21 hibernateService: PropTypes.func.isRequired,
22 wakeUpService: PropTypes.func.isRequired, 22 wakeUpService: PropTypes.func.isRequired,
23 showMessageBadgeWhenMutedSetting: PropTypes.bool.isRequired, 23 showMessageBadgeWhenMutedSetting: PropTypes.bool.isRequired,
24 showServiceNameSetting: PropTypes.bool.isRequired,
24 showMessageBadgesEvenWhenMuted: PropTypes.bool.isRequired, 25 showMessageBadgesEvenWhenMuted: PropTypes.bool.isRequired,
25 }; 26 };
26 27
@@ -39,6 +40,7 @@ class TabBarSortableList extends Component {
39 wakeUpService, 40 wakeUpService,
40 openSettings, 41 openSettings,
41 showMessageBadgeWhenMutedSetting, 42 showMessageBadgeWhenMutedSetting,
43 showServiceNameSetting,
42 showMessageBadgesEvenWhenMuted, 44 showMessageBadgesEvenWhenMuted,
43 } = this.props; 45 } = this.props;
44 46
@@ -65,6 +67,7 @@ class TabBarSortableList extends Component {
65 openSettings={openSettings} 67 openSettings={openSettings}
66 showMessageBadgeWhenMutedSetting={showMessageBadgeWhenMutedSetting} 68 showMessageBadgeWhenMutedSetting={showMessageBadgeWhenMutedSetting}
67 showMessageBadgesEvenWhenMuted={showMessageBadgesEvenWhenMuted} 69 showMessageBadgesEvenWhenMuted={showMessageBadgesEvenWhenMuted}
70 showServiceNameSetting={showServiceNameSetting}
68 /> 71 />
69 ))} 72 ))}
70 </ul> 73 </ul>
diff --git a/src/components/services/tabs/TabItem.js b/src/components/services/tabs/TabItem.js
index ed8430b89..3ea6c5da2 100644
--- a/src/components/services/tabs/TabItem.js
+++ b/src/components/services/tabs/TabItem.js
@@ -132,6 +132,7 @@ class TabItem extends Component {
132 hibernateService: PropTypes.func.isRequired, 132 hibernateService: PropTypes.func.isRequired,
133 wakeUpService: PropTypes.func.isRequired, 133 wakeUpService: PropTypes.func.isRequired,
134 showMessageBadgeWhenMutedSetting: PropTypes.bool.isRequired, 134 showMessageBadgeWhenMutedSetting: PropTypes.bool.isRequired,
135 showServiceNameSetting: PropTypes.bool.isRequired,
135 showMessageBadgesEvenWhenMuted: PropTypes.bool.isRequired, 136 showMessageBadgesEvenWhenMuted: PropTypes.bool.isRequired,
136 stores: PropTypes.shape({ 137 stores: PropTypes.shape({
137 settings: PropTypes.instanceOf(SettingsStore).isRequired, 138 settings: PropTypes.instanceOf(SettingsStore).isRequired,
@@ -219,6 +220,7 @@ class TabItem extends Component {
219 wakeUpService, 220 wakeUpService,
220 openSettings, 221 openSettings,
221 showMessageBadgeWhenMutedSetting, 222 showMessageBadgeWhenMutedSetting,
223 showServiceNameSetting,
222 showMessageBadgesEvenWhenMuted, 224 showMessageBadgesEvenWhenMuted,
223 } = this.props; 225 } = this.props;
224 const { intl } = this.props; 226 const { intl } = this.props;
@@ -331,6 +333,13 @@ class TabItem extends Component {
331 ); 333 );
332 } 334 }
333 335
336 let errorBadge = null;
337 if ( service.isError ) {
338 errorBadge=(
339 <i className = " mdi mdi-exclamation tab-item__error-icon"/>
340 )
341 }
342
334 return ( 343 return (
335 <li 344 <li
336 className={classnames({ 345 className={classnames({
@@ -340,6 +349,7 @@ class TabItem extends Component {
340 'is-active': service.isActive, 349 'is-active': service.isActive,
341 'has-custom-icon': service.hasCustomIcon, 350 'has-custom-icon': service.hasCustomIcon,
342 'is-disabled': !service.isEnabled, 351 'is-disabled': !service.isEnabled,
352 'is-label-enabled': showServiceNameSetting,
343 })} 353 })}
344 onClick={clickHandler} 354 onClick={clickHandler}
345 onContextMenu={() => menu.popup()} 355 onContextMenu={() => menu.popup()}
@@ -349,8 +359,14 @@ class TabItem extends Component {
349 : '' 359 : ''
350 }`} 360 }`}
351 > 361 >
352 <img src={service.icon} className="tab-item__icon" alt="" /> 362
363 {showServiceNameSetting? <div>
364 <img src={service.icon} className="tab-item__icon" alt="" />
365 <span className="tab-item__label">{service.name}</span>
366 </div> : <img src={service.icon} className="tab-item__icon" alt="" />}
367
353 {notificationBadge} 368 {notificationBadge}
369 {errorBadge}
354 {IS_SERVICE_DEBUGGING_ENABLED && ( 370 {IS_SERVICE_DEBUGGING_ENABLED && (
355 <> 371 <>
356 <div 372 <div
diff --git a/src/components/services/tabs/Tabbar.js b/src/components/services/tabs/Tabbar.js
index 4ab0e8611..94d6f33c1 100644
--- a/src/components/services/tabs/Tabbar.js
+++ b/src/components/services/tabs/Tabbar.js
@@ -23,6 +23,7 @@ class TabBar extends Component {
23 wakeUpService: PropTypes.func.isRequired, 23 wakeUpService: PropTypes.func.isRequired,
24 useVerticalStyle: PropTypes.bool.isRequired, 24 useVerticalStyle: PropTypes.bool.isRequired,
25 showMessageBadgeWhenMutedSetting: PropTypes.bool.isRequired, 25 showMessageBadgeWhenMutedSetting: PropTypes.bool.isRequired,
26 showServiceNameSetting: PropTypes.bool.isRequired,
26 showMessageBadgesEvenWhenMuted: PropTypes.bool.isRequired, 27 showMessageBadgesEvenWhenMuted: PropTypes.bool.isRequired,
27 }; 28 };
28 29
@@ -82,6 +83,7 @@ class TabBar extends Component {
82 deleteService, 83 deleteService,
83 useVerticalStyle, 84 useVerticalStyle,
84 showMessageBadgeWhenMutedSetting, 85 showMessageBadgeWhenMutedSetting,
86 showServiceNameSetting,
85 showMessageBadgesEvenWhenMuted, 87 showMessageBadgesEvenWhenMuted,
86 } = this.props; 88 } = this.props;
87 89
@@ -110,6 +112,7 @@ class TabBar extends Component {
110 lockAxis={axis} 112 lockAxis={axis}
111 helperClass="is-reordering" 113 helperClass="is-reordering"
112 showMessageBadgeWhenMutedSetting={showMessageBadgeWhenMutedSetting} 114 showMessageBadgeWhenMutedSetting={showMessageBadgeWhenMutedSetting}
115 showServiceNameSetting={showServiceNameSetting}
113 showMessageBadgesEvenWhenMuted={showMessageBadgesEvenWhenMuted} 116 showMessageBadgesEvenWhenMuted={showMessageBadgesEvenWhenMuted}
114 /> 117 />
115 </div> 118 </div>