Skip to content

Commit 67ea96b

Browse files
committed
Added option to start application minimized to tray, added function which helps reducing settings to the relevant only
1 parent 21769c6 commit 67ea96b

20 files changed

+48
-10
lines changed

src/locales/cs.json

+1
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
"settings.showFileTabs": "Zobrazit záložky souborů",
1818
"settings.invertTrayColor": "Invertovat barvu ikony na panelu",
1919
"settings.tray": "Minimalizovat do oznamovací oblasti místo ukončení aplikace",
20+
"settings.startMinimized": "Spustit aplikaci minimalizovanou v trayi",
2021
"settings.colorTheme": "Téma",
2122
"settings.system": "Sledovat systém",
2223
"settings.light": "Světlé",

src/locales/de.json

+1
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
"settings.showFileTabs": "Datei-Tabs anzeigen",
1818
"settings.tray": "In Tray-Leiste minimieren anstatt die Anwendung zu beenden",
1919
"settings.invertTrayColor": "Farbe des Tray-Symbols umkehren",
20+
"settings.startMinimized": "Starte Anwendung minimiert im Tray",
2021
"settings.colorTheme": "Design",
2122
"settings.system": "System folgen",
2223
"settings.light": "Hell",

src/locales/en.json

+1
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
"settings.showFileTabs": "Show file tabs",
1818
"settings.tray": "Minimize to tray instead of quitting application",
1919
"settings.invertTrayColor": "Invert color of the tray icon",
20+
"settings.startMinimized": "Start application minimized to tray",
2021
"settings.colorTheme": "Theme",
2122
"settings.system": "Follow system",
2223
"settings.light": "Light",

src/locales/es.json

+1
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
"settings.notificationsAllowed": "Enviar notificaciones",
1717
"settings.showFileTabs": "Mostrar pestañas de archivo",
1818
"settings.tray": "Minimizar a la bandeja en lugar de cerrar la aplicación",
19+
"settings.startMinimized": "Iniciar la aplicación minimizada en la bandeja",
1920
"settings.invertTrayColor": "Invertir color del ícono de la bandeja",
2021
"settings.colorTheme": "Tema",
2122
"settings.system": "Seguir el sistema",

src/locales/fr.json

+1
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
"settings.notificationsAllowed": "Envoyer des notifications",
1717
"settings.showFileTabs": "Afficher les onglets de fichier",
1818
"settings.tray": "Minimiser dans la zone de notification au lieu de quitter l'application",
19+
"settings.startMinimized": "Démarrer l'application minimisée dans la barre d'état",
1920
"settings.invertTrayColor": "Inverser la couleur de l'icône de la barre d'état système",
2021
"settings.colorTheme": "Thème",
2122
"settings.system": "Suivre le système",

src/locales/hi.json

+1
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
"settings.showFileTabs": "फ़ाइल टैब दिखाएं",
1818
"settings.tray": "एप्लिकेशन को बंद करने के बजाय ट्रे में कम करें",
1919
"settings.invertTrayColor": "ट्रे आइकॉन का रंग उलटें",
20+
"settings.startMinimized": "ऐप्लिकेशन को ट्रे में मिनिमाइज़ करके प्रारंभ करें",
2021
"settings.colorTheme": "थीम",
2122
"settings.system": "सिस्टम का पालन करें",
2223
"settings.light": "रोशनी",

src/locales/hu.json

+1
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
"settings.notificationsAllowed": "Értesítések küldése",
1717
"settings.showFileTabs": "Fájl lapok megjelenítése",
1818
"settings.tray": "Kisiklik az értesítési területre az alkalmazás bezárása helyett",
19+
"settings.startMinimized": "Indítsa el alkalmazást minimalizálva a tálcán",
1920
"settings.invertTrayColor": "Tálca ikon színének inverziója",
2021
"settings.colorTheme": "Téma",
2122
"settings.system": "Kövesse a rendszert",

src/locales/it.json

+1
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
"settings.showFileTabs": "Mostra le schede dei file",
1818
"settings.tray": "Minimizza nella barra delle applicazioni anziché chiudere l'applicazione",
1919
"settings.invertTrayColor": "Inverti il colore dell'icona della tray",
20+
"settings.startMinimized": "Avvia l'applicazione minimizzata nella barra delle applicazioni",
2021
"settings.colorTheme": "Tema",
2122
"settings.system": "Segui il sistema",
2223
"settings.light": "Chiaro",

src/locales/jp.json

+1
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
"settings.showFileTabs": "ファイルタブを表示",
1818
"settings.tray": "アプリケーションを終了する代わりにトレイに最小化",
1919
"settings.invertTrayColor": "トレイアイコンの色を反転する",
20+
"settings.startMinimized": "アプリケーションをトレイに最小化して起動",
2021
"settings.colorTheme": "テーマ",
2122
"settings.system": "システムに従う",
2223
"settings.light": "ライト",

src/locales/ko.json

+1
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
"settings.notificationsAllowed": "알림 보내기",
1717
"settings.showFileTabs": "파일 탭 표시",
1818
"settings.tray": "애플리케이션 종료 대신 트레이로 최소화",
19+
"settings.startMinimized": "앱을 트레이에서 최소화하여 시작",
1920
"settings.invertTrayColor": "트레이 아이콘 색상 반전",
2021
"settings.colorTheme": "테마",
2122
"settings.system": "시스템 따르기",

src/locales/pl.json

+1
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
"settings.showFileTabs": "Pokaż karty plików",
1818
"settings.tray": "Minimalizuj do zasobnika zamiast zamykania aplikacji",
1919
"settings.invertTrayColor": "Odwróć kolor ikony na pasku zadań",
20+
"settings.startMinimized": "Uruchom aplikację zminimalizowaną w zasobniku",
2021
"settings.colorTheme": "Motyw kolorystyczny",
2122
"settings.system": "Zastosuj motyw systemowy",
2223
"settings.light": "Jasny",

src/locales/pt-br.json

+1
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
"settings.showFileTabs": "Mostrar guias de arquivo",
1818
"settings.tray": "Minimizar para bandeja em vez de sair do aplicativo",
1919
"settings.invertTrayColor": "Inverter cor do ícone da bandeja",
20+
"settings.startMinimized": "Iniciar o aplicativo minimizado na bandeja",
2021
"settings.colorTheme": "Tema",
2122
"settings.system": "Siga o sistema",
2223
"settings.light": "Claro",

src/locales/pt.json

+1
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
"settings.showFileTabs": "Mostrar separadores de ficheiro",
1818
"settings.tray": "Minimizar para a bandeja em vez de fechar a aplicação",
1919
"settings.invertTrayColor": "Inverter cor do ícone da bandeja",
20+
"settings.startMinimized": "Iniciar o aplicativo minimizado na bandeja",
2021
"settings.colorTheme": "Tema",
2122
"settings.system": "Seguir o sistema",
2223
"settings.light": "Claro",

src/locales/ru.json

+1
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
"settings.showFileTabs": "Показать вкладки файлов",
1818
"settings.tray": "Свернуть в трей вместо закрытия приложения",
1919
"settings.invertTrayColor": "Инвертировать цвет иконки в трее",
20+
"settings.startMinimized": "Запускать приложение, свёрнутое в трей",
2021
"settings.colorTheme": "Тема",
2122
"settings.system": "Следовать системе",
2223
"settings.light": "Светлая",

src/locales/tr.json

+1
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
"settings.showFileTabs": "Dosya sekmesini göster",
1818
"settings.tray": "Uygulamayı kapatmak yerine taya küçült",
1919
"settings.invertTrayColor": "Tepsi simgesinin rengini ters çevir",
20+
"settings.startMinimized": "Uygulamayı simge durumunda başlat",
2021
"settings.colorTheme": "Tema",
2122
"settings.system": "Sistemi Takip Et",
2223
"settings.light": "Açık",

src/locales/zh.json

+1
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
"settings.showFileTabs": "显示文件选项卡",
1818
"settings.tray": "最小化到托盘而不是退出应用程序",
1919
"settings.invertTrayColor": "反转托盘图标颜色",
20+
"settings.startMinimized": "以最小化状态启动应用程序",
2021
"settings.colorTheme": "主题",
2122
"settings.system": "跟随系统",
2223
"settings.light": "明亮",

src/main/Stores.ts

+2-1
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,8 @@ const migrations = {
119119
},
120120
'2.0.19': (store) => {
121121
console.log('Migrating from 2.0.17 → 2.0.19')
122-
store.set('invertTrayColor', false)
122+
store.set('invertTrayColor', false),
123+
store.set('startMinimized', false)
123124
}
124125
}
125126

src/main/Tray.ts

+3-1
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,9 @@ export function HandleTray(): void {
7777
tray.setToolTip('sleek');
7878
tray.setContextMenu(menu);
7979
tray.on('click', (event) => {
80-
if(!mainWindow) {
80+
if (process.platform === 'darwin') {
81+
return false;
82+
} else if(!mainWindow) {
8183
handleCreateWindow();
8284
} else if (mainWindow.isVisible()) {
8385
mainWindow.hide();

src/main/index.ts

+10-3
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,7 @@ const createMainWindow = () => {
114114
mainWindow = new BrowserWindow({
115115
width: 1280,
116116
height: 1000,
117+
show: false,
117118
backgroundColor: shouldUseDarkColors ? '#212224' : '#fff',
118119
icon:
119120
process.platform === 'win32'
@@ -131,6 +132,7 @@ const createMainWindow = () => {
131132
})
132133

133134
mainWindow.once('ready-to-show', () => {
135+
mainWindow.show();
134136
const endTime = performance.now()
135137
console.log(`Startup time: ${(endTime - startTime).toFixed(2)} ms`)
136138
})
@@ -168,8 +170,6 @@ const createMainWindow = () => {
168170
eventListeners.handleMaximize = handleMaximize
169171
eventListeners.handleUnmaximize = handleUnmaximize
170172

171-
//HandleTray(SettingsStore.get('tray'))
172-
173173
const customStylesPath: string = SettingsStore.get('customStylesPath')
174174
if (customStylesPath) {
175175
fs.readFile(customStylesPath, 'utf8', (error: Error | null, data) => {
@@ -214,7 +214,14 @@ app
214214
.whenReady()
215215
.then(() => {
216216
startTime = performance.now()
217-
createMainWindow()
217+
HandleTray()
218+
const tray = SettingsStore.get('tray');
219+
const startMinimized = SettingsStore.get('startMinimized');
220+
if(tray && startMinimized) {
221+
app.dock?.hide()
222+
} else {
223+
createMainWindow()
224+
}
218225
eventListeners.handleCreateWindow = handleCreateWindow
219226
eventListeners.handleWindowAllClosed = handleWindowAllClosed
220227
eventListeners.handleBeforeQuit = handleBeforeQuit

src/renderer/Settings/Settings.tsx

+17-5
Original file line numberDiff line numberDiff line change
@@ -29,11 +29,20 @@ const visibleSettings: VisibleSettings = {
2929
convertRelativeToAbsoluteDates: {
3030
style: 'toggle'
3131
},
32+
useHumanFriendlyDates: {
33+
style: 'toggle',
34+
help: 'https://github.com/ransome1/sleek/wiki/Human-friendly-dates'
35+
},
3236
tray: {
3337
style: 'toggle'
3438
},
3539
invertTrayColor: {
36-
style: 'toggle'
40+
style: 'toggle',
41+
dependsOn: ['tray']
42+
},
43+
startMinimized: {
44+
style: 'toggle',
45+
dependsOn: ['tray']
3746
},
3847
menuBarVisibility: {
3948
style: 'toggle'
@@ -49,10 +58,6 @@ const visibleSettings: VisibleSettings = {
4958
disableAnimations: {
5059
style: 'toggle'
5160
},
52-
useHumanFriendlyDates: {
53-
style: 'toggle',
54-
help: 'https://github.com/ransome1/sleek/wiki/Human-friendly-dates'
55-
},
5661
compact: {
5762
style: 'toggle'
5863
},
@@ -149,6 +154,13 @@ const SettingsComponent: React.FC<SettingsComponentProps> = memo(({ isOpen, onCl
149154
if (navigator.platform.startsWith('Mac') && settingName === 'menuBarVisibility') {
150155
return null
151156
}
157+
158+
if(settingValue.dependsOn) {
159+
for (let i = 0; i < settingValue.dependsOn.length; i++) {
160+
if(!settings[settingValue.dependsOn[i]]) return null
161+
}
162+
}
163+
152164
return settingValue.style === 'toggle' ? (
153165
<FormControlLabel
154166
key={settingName}

0 commit comments

Comments
 (0)