diff options
author | kytwb <412895+kytwb@users.noreply.github.com> | 2021-07-23 10:04:43 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-07-23 11:04:43 +0200 |
commit | 012e55ebf87559f2d782e5400fb885df8b80a445 (patch) | |
tree | 1966e58defe2bcd9541ca9a3f4db67a95a6b4249 /src/components/services/tabs/Tabbar.js | |
parent | Removed references to 'premium' i18n keys that are no longer used. (diff) | |
download | ferdium-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.js | 16 |
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" |