utils.js 532 B

1234567891011121314151617181920
  1. 'use strict'
  2. /**
  3. * Bind AdwComboRow item
  4. *
  5. * @param {Adw.comboRow} comboRow Adw combo row item
  6. * @param {Gio.Settings} settings Settings object
  7. * @param {string} key Key name
  8. */
  9. export function bindAdwComboRow(comboRow, settings, key) {
  10. comboRow.selected = settings.get_enum(key);
  11. settings.connect(
  12. `changed::${key}`, () => {
  13. comboRow.selected = settings.get_enum(key);
  14. }
  15. );
  16. comboRow.connect('notify::selected', () => {
  17. settings.set_enum(key, comboRow.selected);
  18. });
  19. }