aboutsummaryrefslogtreecommitdiffstats
path: root/src/components/services/content/ServiceWebview.js
diff options
context:
space:
mode:
authorLibravatar Stefan Malzner <stefan@adlk.io>2017-11-09 12:11:16 +0100
committerLibravatar Stefan Malzner <stefan@adlk.io>2017-11-09 12:15:36 +0100
commit1839eff4fcad186871672499b6c3cc68e9539ce2 (patch)
tree207f0c0cf694309f6d84afeee220cacdc9b56242 /src/components/services/content/ServiceWebview.js
parentMerge branch 'develop' of github.com:meetfranz/franz into develop (diff)
downloadferdium-app-1839eff4fcad186871672499b6c3cc68e9539ce2.tar.gz
ferdium-app-1839eff4fcad186871672499b6c3cc68e9539ce2.tar.zst
ferdium-app-1839eff4fcad186871672499b6c3cc68e9539ce2.zip
feat(Service): Add option to display disabled services in tabs
Diffstat (limited to 'src/components/services/content/ServiceWebview.js')
-rw-r--r--src/components/services/content/ServiceWebview.js56
1 files changed, 35 insertions, 21 deletions
diff --git a/src/components/services/content/ServiceWebview.js b/src/components/services/content/ServiceWebview.js
index cd59e0a8a..a71017a6e 100644
--- a/src/components/services/content/ServiceWebview.js
+++ b/src/components/services/content/ServiceWebview.js
@@ -8,6 +8,7 @@ import classnames from 'classnames';
8import ServiceModel from '../../../models/Service'; 8import ServiceModel from '../../../models/Service';
9import StatusBarTargetUrl from '../../ui/StatusBarTargetUrl'; 9import StatusBarTargetUrl from '../../ui/StatusBarTargetUrl';
10import WebviewCrashHandler from './WebviewCrashHandler'; 10import WebviewCrashHandler from './WebviewCrashHandler';
11import ServiceDisabled from './ServiceDisabled';
11 12
12@observer 13@observer
13export default class ServiceWebview extends Component { 14export default class ServiceWebview extends Component {
@@ -15,6 +16,7 @@ export default class ServiceWebview extends Component {
15 service: PropTypes.instanceOf(ServiceModel).isRequired, 16 service: PropTypes.instanceOf(ServiceModel).isRequired,
16 setWebviewReference: PropTypes.func.isRequired, 17 setWebviewReference: PropTypes.func.isRequired,
17 reload: PropTypes.func.isRequired, 18 reload: PropTypes.func.isRequired,
19 enable: PropTypes.func.isRequired,
18 }; 20 };
19 21
20 static defaultProps = { 22 static defaultProps = {
@@ -56,6 +58,7 @@ export default class ServiceWebview extends Component {
56 service, 58 service,
57 setWebviewReference, 59 setWebviewReference,
58 reload, 60 reload,
61 enable,
59 } = this.props; 62 } = this.props;
60 63
61 const webviewClasses = classnames({ 64 const webviewClasses = classnames({
@@ -80,27 +83,38 @@ export default class ServiceWebview extends Component {
80 reload={reload} 83 reload={reload}
81 /> 84 />
82 )} 85 )}
83 <Webview 86 {!service.isEnabled && (
84 ref={(element) => { this.webview = element; }} 87 <ServiceDisabled
85 88 name={service.recipe.name}
86 autosize 89 webview={service.webview}
87 src={service.url} 90 enable={enable}
88 preload="./webview/plugin.js" 91 />
89 partition={`persist:service-${service.id}`} 92 )}
90 93 {service.isEnabled && (
91 onDidAttach={() => setWebviewReference({ 94 <div className="services__webview-wrapper">
92 serviceId: service.id, 95 <Webview
93 webview: this.webview.view, 96 ref={(element) => { this.webview = element; }}
94 })} 97
95 98 autosize
96 onUpdateTargetUrl={this.updateTargetUrl} 99 src={service.url}
97 100 preload="./webview/plugin.js"
98 useragent={service.userAgent} 101 partition={`persist:service-${service.id}`}
99 102
100 disablewebsecurity 103 onDidAttach={() => setWebviewReference({
101 allowpopups 104 serviceId: service.id,
102 /> 105 webview: this.webview.view,
103 {statusBar} 106 })}
107
108 onUpdateTargetUrl={this.updateTargetUrl}
109
110 useragent={service.userAgent}
111
112 disablewebsecurity
113 allowpopups
114 />
115 {statusBar}
116 </div>
117 )}
104 </div> 118 </div>
105 ); 119 );
106 } 120 }