AutoLaunch.js 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. const { app } = require('electron');
  2. const { LOGIN_SETTING_OPTIONS } = require('./Constant').AutoLaunch;
  3. class AutoLaunch {
  4. enable () {
  5. const enabled = app.getLoginItemSettings(LOGIN_SETTING_OPTIONS).openAtLogin;
  6. if (enabled) {
  7. return true;
  8. }
  9. app.setLoginItemSettings({
  10. ...LOGIN_SETTING_OPTIONS,
  11. openAtLogin: true
  12. })
  13. return true;
  14. // return new Promise((resolve, reject) => {
  15. // const enabled = app.getLoginItemSettings(LOGIN_SETTING_OPTIONS).openAtLogin
  16. // if (enabled) {
  17. // resolve()
  18. // }
  19. // app.setLoginItemSettings({
  20. // ...LOGIN_SETTING_OPTIONS,
  21. // openAtLogin: true
  22. // })
  23. // resolve()
  24. // })
  25. }
  26. disable () {
  27. app.setLoginItemSettings({ openAtLogin: false })
  28. return true;
  29. // return new Promise((resolve, reject) => {
  30. // app.setLoginItemSettings({ openAtLogin: false })
  31. // resolve()
  32. // })
  33. }
  34. isEnabled () {
  35. const enabled = app.getLoginItemSettings(LOGIN_SETTING_OPTIONS).openAtLogin;
  36. console.log('AutoLaunch isEnabled:', enabled);
  37. return enabled;
  38. // return new Promise((resolve, reject) => {
  39. // const enabled = app.getLoginItemSettings(LOGIN_SETTING_OPTIONS).openAtLogin
  40. // resolve(enabled)
  41. // })
  42. }
  43. }
  44. module.exports = AutoLaunch;