One-click Ubuntu / Android switcher, live battery indicator, A2DP/HFP audio profile toggle, and MacroDroid webhook handoff for Samsung Galaxy Buds in GNOME Quick Settings.
Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.
| Version | Status |
|---|---|
| 4 | Unreviewed |
| 3 | Rejected |
| 2 | Rejected |
| 1 | Rejected |
Is this code generated by AI? If so, we have a rule for that: - [EGO Review Guidelines: AI](https://gjs.guide/extensions/review-guidelines/review-guidelines.html#extensions-must-not-be-ai-generated) - [Extensions Best Practices Guidelines](https://gjs.guide/extensions/review-guidelines/best-practices.html)
Hi JustPerfection, Yes, I used AI assistance when porting my local Ubuntu Galaxy Buds CLI switcher into GJS/Libadwaita for GNOME Quick Settings, and I maintain and test this project myself on Ubuntu. Thank you for linking the EGO Best Practices guide. I just went through it line by line and saw the exact anti-patterns in v3 (typeof ... === 'function' checks on window.add_toast and openPreferences, unnecessary try-catch wrappers, emojis in labels, quickSettings._budsIndicatorActive guard, and .env file parsing instead of GSettings). I am refactoring the extension now to use GSettings (this.getSettings()), proper Gio.Cancellable cleanup in destroy(), and clean idiomatic GJS following the Best Practices guide, and will upload v4 shortly.
Hi JustPerfection, Yes, I used AI assistance when porting my local Ubuntu Galaxy Buds CLI switcher into GJS/Libadwaita for GNOME Quick Settings, and I maintain and test this project myself on Ubuntu. Thank you for linking the EGO Best Practices guide. I just went through it line by line and saw the exact anti-patterns in v3 (typeof ... === 'function' checks on window.add_toast and openPreferences, unnecessary try-catch wrappers, emojis in labels, quickSettings._budsIndicatorActive guard, and .env file parsing instead of GSettings). I am refactoring the extension now to use GSettings (this.getSettings()), proper Gio.Cancellable cleanup in destroy(), and clean idiomatic GJS following the Best Practices guide, and will upload v4 shortly.
Hi JustPerfection, Yes, I used AI assistance when porting my local Ubuntu Galaxy Buds CLI switcher into GJS/Libadwaita for GNOME Quick Settings, and I maintain and test this project myself on Ubuntu. Thank you for linking the EGO Best Practices guide. I just went through it line by line and saw the exact anti-patterns in v3 (typeof ... === 'function' checks on window.add_toast and openPreferences, unnecessary try-catch wrappers, emojis in labels, quickSettings._budsIndicatorActive guard, and .env file parsing instead of GSettings). I am refactoring the extension now to use GSettings (this.getSettings()), proper Gio.Cancellable cleanup in destroy(), and clean idiomatic GJS following the Best Practices guide, and will upload v4 shortly.
Hi JustPerfection, Yes, I used AI assistance when porting my local Ubuntu Galaxy Buds CLI switcher into GJS/Libadwaita for GNOME Quick Settings, and I maintain and test this project myself on Ubuntu. Thank you for linking the EGO Best Practices guide. I just went through it line by line and saw the exact anti-patterns in v3 (typeof ... === 'function' checks on window.add_toast and openPreferences, unnecessary try-catch wrappers, emojis in labels, quickSettings._budsIndicatorActive guard, and .env file parsing instead of GSettings). I am refactoring the extension now to use GSettings (this.getSettings()), proper Gio.Cancellable cleanup in destroy(), and clean idiomatic GJS following the Best Practices guide, and will upload v4 shortly.
Hi JustPerfection, Yes, I used AI assistance when porting my local Ubuntu Galaxy Buds CLI switcher into GJS/Libadwaita for GNOME Quick Settings, and I maintain and test this project myself on Ubuntu. Thank you for linking the EGO Best Practices guide. I just went through it line by line and saw the exact anti-patterns in v3 (typeof ... === 'function' checks on window.add_toast and openPreferences, unnecessary try-catch wrappers, emojis in labels, quickSettings._budsIndicatorActive guard, and .env file parsing instead of GSettings). I am refactoring the extension now to use GSettings (this.getSettings()), proper Gio.Cancellable cleanup in destroy(), and clean idiomatic GJS following the Best Practices guide, and will upload v4 shortly.
Hi JustPerfection, Yes, I used AI assistance when porting my local Ubuntu Galaxy Buds CLI switcher into GJS/Libadwaita for GNOME Quick Settings, and I maintain and test this project myself on Ubuntu. Thank you for linking the EGO Best Practices guide. I just went through it line by line and saw the exact anti-patterns in v3 (typeof ... === 'function' checks on window.add_toast and openPreferences, unnecessary try-catch wrappers, emojis in labels, quickSettings._budsIndicatorActive guard, and .env file parsing instead of GSettings). I am refactoring the extension now to use GSettings (this.getSettings()), proper Gio.Cancellable cleanup in destroy(), and clean idiomatic GJS following the Best Practices guide, and will upload v4 shortly.
Apologies, it felt like the submit button was not working, so I clicked it multiple times. 🥲