Skip to content

Commit 1ee9f4d

Browse files
authored
Adds advanced option to disable update version features (#1639)
1 parent 40f1504 commit 1ee9f4d

13 files changed

Lines changed: 61 additions & 44 deletions

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
88
### Added
99
- Yiddish and Tamil translations
1010
- advanced option to show custom message in Preferences
11+
- advanced option to disable app update features
1112

1213
### Changed
1314
- remove flags in Welcome window

README.md

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -375,7 +375,14 @@ Note that this will disable graphical way of opening Stretchly Preferences. To a
375375
If you want to show tray menu even while in Strict mode, set `showTrayMenuInStrictMode` to `true`.
376376

377377
#### Show custom message in Preferences
378-
If you want to show custom message in Preferences, set `customPreferencesMessage` to string of your liking. This might be useful for corporate installations.
378+
If you want to show custom message in Preferences, set `customPreferencesMessage` to string of your liking.
379+
380+
This might be useful for corporate installations.
381+
382+
#### Disable app update functionality
383+
If you want to disable functionality around app updates, set `disableAppUpdateFeatures` to `true`. This will make Stretchly not to check for new versions and hide related elements from the app. This value takes preference over `checkNewVersion` and `notifyNewVersion`.
384+
385+
This might be useful for corporate installations.
379386

380387
## Contributor Preferences
381388

app/break-renderer.js

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -42,10 +42,17 @@ window.onload = async (event) => {
4242
}
4343
if (Date.now() - started < duration) {
4444
const passedPercent = (Date.now() - started) / duration * 100
45-
postponeElement.style.display =
46-
await window.utils.canPostpone(postpone, passedPercent, postponePercent) ? 'flex' : 'none'
47-
closeElement.style.display =
48-
await window.utils.canSkip(strictMode, postpone, passedPercent, postponePercent) ? 'flex' : 'none'
45+
if (await window.utils.canPostpone(postpone, passedPercent, postponePercent)) {
46+
postponeElement.classList.remove('hidden')
47+
} else {
48+
postponeElement.classList.add('hidden')
49+
}
50+
51+
if (await window.utils.canSkip(strictMode, postpone, passedPercent, postponePercent)) {
52+
closeElement.classList.remove('hidden')
53+
} else {
54+
closeElement.classList.add('hidden')
55+
}
4956
progress.value = (100 - passedPercent) * progress.max / 100
5057
progressTime.innerHTML = await window.utils.formatTimeRemaining(Math.trunc(duration - Date.now() + started),
5158
await window.settings.get('language'))

app/break.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,12 @@
1919
<span id='progress-time' aria-hidden="true"></span>
2020
</div>
2121
<div>
22-
<a id="postpone" class="tooltip top">
22+
<a id="postpone" class="tooltip top hidden">
2323
<span data-i18next="break.postpone"></span>
2424
<img src="images/breaks/break-postpone.svg" />
2525
<span class="tiptext"></span>
2626
</a>
27-
<a id="close" class="tooltip top">
27+
<a id="close" class="tooltip top hidden">
2828
<span data-i18next="break.skip"></span>
2929
<img src="images/breaks/break-skip.svg" />
3030
<span class="tiptext"></span>

app/css/break.css

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -49,10 +49,6 @@
4949
line-height: 18px;
5050
}
5151

52-
.breaks > :nth-child(2) > a {
53-
display: none;
54-
}
55-
5652
.breaks > :nth-child(2) > a:hover {
5753
color: #FFFF00;
5854
}

app/css/commons.css

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -161,6 +161,10 @@ body {
161161
display: none;
162162
}
163163

164+
.hidden {
165+
display: none !important;
166+
}
167+
164168
a {
165169
cursor: pointer;
166170
}

app/css/preferences.css

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -62,11 +62,6 @@ body > div > :last-child {
6262
z-index: 9;
6363
}
6464

65-
body > .hidden,
66-
.heart > .hidden {
67-
display: none;
68-
}
69-
7065
.settings {
7166
display: grid;
7267
font-size: 13px;
@@ -367,10 +362,6 @@ body[dir=rtl] .about > :nth-child(4) > div {
367362
margin: auto 20px;
368363
}
369364

370-
.about > .debug > :first-child {
371-
display: none;
372-
}
373-
374365
.heart {
375366
display: grid;
376367
font-size: 18px;

app/main.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -542,6 +542,7 @@ function createSyncPreferencesWindow () {
542542
}
543543

544544
function planVersionCheck (seconds = 1) {
545+
if (settings.get('disableAppUpdateFeatures')) return
545546
if (updateChecker) {
546547
clearInterval(updateChecker)
547548
updateChecker = null
@@ -550,6 +551,7 @@ function planVersionCheck (seconds = 1) {
550551
}
551552

552553
function checkVersion () {
554+
if (settings.get('disableAppUpdateFeatures')) return
553555
if (settings.get('checkNewVersion')) {
554556
processWin.webContents.send('check-version',
555557
`v${app.getVersion()}`,
@@ -1126,7 +1128,7 @@ function updateTray () {
11261128
function getTrayMenuTemplate () {
11271129
const trayMenu = []
11281130

1129-
if (global.isNewVersion) {
1131+
if (!settings.get('disableAppUpdateFeatures') && global.isNewVersion) {
11301132
trayMenu.push({
11311133
label: i18next.t('main.downloadLatestVersion'),
11321134
click: function () {

app/microbreak-renderer.js

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,10 +41,17 @@ window.onload = async (event) => {
4141
}
4242
if (Date.now() - started < duration) {
4343
const passedPercent = (Date.now() - started) / duration * 100
44-
postponeElement.style.display =
45-
await window.utils.canPostpone(postpone, passedPercent, postponePercent) ? 'flex' : 'none'
46-
closeElement.style.display =
47-
await window.utils.canSkip(strictMode, postpone, passedPercent, postponePercent) ? 'flex' : 'none'
44+
if (await window.utils.canPostpone(postpone, passedPercent, postponePercent)) {
45+
postponeElement.classList.remove('hidden')
46+
} else {
47+
postponeElement.classList.add('hidden')
48+
}
49+
50+
if (await window.utils.canSkip(strictMode, postpone, passedPercent, postponePercent)) {
51+
closeElement.classList.remove('hidden')
52+
} else {
53+
closeElement.classList.add('hidden')
54+
}
4855
progress.value = (100 - passedPercent) * progress.max / 100
4956
progressTime.innerHTML = await window.utils.formatTimeRemaining(Math.trunc(duration - Date.now() + started),
5057
await window.settings.get('language'))

app/microbreak.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,12 @@
1919
<span id='progress-time' aria-hidden="true"></span>
2020
</div>
2121
<div>
22-
<a id="postpone" class="tooltip top">
22+
<a id="postpone" class="tooltip top hidden">
2323
<span data-i18next="break.postpone"></span>
2424
<img src="images/breaks/break-postpone.svg" />
2525
<span class="tiptext"></span>
2626
</a>
27-
<a id="close" class="tooltip top">
27+
<a id="close" class="tooltip top hidden">
2828
<span data-i18next="break.skip"></span>
2929
<img src="images/breaks/break-skip.svg" />
3030
<span class="tiptext"></span>

0 commit comments

Comments
 (0)