aboutsummaryrefslogtreecommitdiffstats
path: root/src/components/services/tabs/Tabbar.js
diff options
context:
space:
mode:
authorLibravatar kytwb <412895+kytwb@users.noreply.github.com>2021-07-23 10:04:43 +0100
committerLibravatar GitHub <noreply@github.com>2021-07-23 11:04:43 +0200
commit012e55ebf87559f2d782e5400fb885df8b80a445 (patch)
tree1966e58defe2bcd9541ca9a3f4db67a95a6b4249 /src/components/services/tabs/Tabbar.js
parentRemoved references to 'premium' i18n keys that are no longer used. (diff)
downloadferdium-app-012e55ebf87559f2d782e5400fb885df8b80a445.tar.gz
ferdium-app-012e55ebf87559f2d782e5400fb885df8b80a445.tar.zst
ferdium-app-012e55ebf87559f2d782e5400fb885df8b80a445.zip
Fix hibernation mode (#1486)
* Use hibernation strategy from settings instead of hardcoded 5 minutes * Fix conditions with isHibernationEnabled, previously disableHibernation * Make service hibernation obey global setting Also refactors hibernation to move some hibernation enablement logic into the Service model * Remove global hibernation enable switch Implements option 4 from https://github.com/getferdi/ferdi/pull/1486#issuecomment-860290992 according to https://github.com/getferdi/ferdi/pull/1486#issuecomment-876558694 * Implements #865 : Add 'hibernate service' and 'wake up service' in the sidebar context menu. * Removed 'hibernationEnabled' check on main settings screen Since this is an (imo) incongruous behavior for the first time user. They will see a message, but with no ability to choose the hibernation strategy. * Autogenerated files from conflict fixes Co-authored-by: Kristóf Marussy <kristof@marussy.com> Co-authored-by: Vijay A <avijayr@protonmail.com>
Diffstat (limited to 'src/components/services/tabs/Tabbar.js')
-rw-r--r--src/components/services/tabs/Tabbar.js16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/components/services/tabs/Tabbar.js b/src/components/services/tabs/Tabbar.js
index 5e8260ad0..db7a69bfc 100644
--- a/src/components/services/tabs/Tabbar.js
+++ b/src/components/services/tabs/Tabbar.js
@@ -17,6 +17,8 @@ export default @observer class TabBar extends Component {
17 toggleAudio: PropTypes.func.isRequired, 17 toggleAudio: PropTypes.func.isRequired,
18 deleteService: PropTypes.func.isRequired, 18 deleteService: PropTypes.func.isRequired,
19 updateService: PropTypes.func.isRequired, 19 updateService: PropTypes.func.isRequired,
20 hibernateService: PropTypes.func.isRequired,
21 wakeUpService: PropTypes.func.isRequired,
20 showMessageBadgeWhenMutedSetting: PropTypes.bool.isRequired, 22 showMessageBadgeWhenMutedSetting: PropTypes.bool.isRequired,
21 showMessageBadgesEvenWhenMuted: PropTypes.bool.isRequired, 23 showMessageBadgesEvenWhenMuted: PropTypes.bool.isRequired,
22 }; 24 };
@@ -55,6 +57,18 @@ export default @observer class TabBar extends Component {
55 this.toggleService({ serviceId, isEnabled: true }); 57 this.toggleService({ serviceId, isEnabled: true });
56 } 58 }
57 59
60 hibernateService({ serviceId }) {
61 if (serviceId) {
62 this.props.hibernateService({ serviceId });
63 }
64 }
65
66 wakeUpService({ serviceId }) {
67 if (serviceId) {
68 this.props.wakeUpService({ serviceId });
69 }
70 }
71
58 render() { 72 render() {
59 const { 73 const {
60 services, 74 services,
@@ -83,6 +97,8 @@ export default @observer class TabBar extends Component {
83 deleteService={deleteService} 97 deleteService={deleteService}
84 disableService={args => this.disableService(args)} 98 disableService={args => this.disableService(args)}
85 enableService={args => this.enableService(args)} 99 enableService={args => this.enableService(args)}
100 hibernateService={args => this.hibernateService(args)}
101 wakeUpService={args => this.wakeUpService(args)}
86 openSettings={openSettings} 102 openSettings={openSettings}
87 distance={20} 103 distance={20}
88 axis="y" 104 axis="y"