322 Commits

Author SHA1 Message Date
piotr
daec350ae8 bump to 0.4.0 v0.4.0 2026-04-26 22:47:18 +02:00
piotr
52852d2f28 bump to 0.3.29 2026-04-26 22:45:51 +02:00
Piotr Miller
6998436c85 Merge pull request #124 from Phuc-kt/feature-niri
add: support niri
2026-04-26 21:28:56 +02:00
Phuc-kt
25fe483110 refactor: use output position for monitor identification 2026-04-26 17:47:57 +07:00
Phuc-kt
88e02d5446 fix: resolve random monitor assignment 2026-04-25 08:39:24 +07:00
Phuc-kt
fb1245c6c6 docs: update README for Niri 2026-04-18 14:14:16 +07:00
Phuc-kt
13e9af84ee docs: update README for Niri 2026-04-14 14:35:01 +07:00
Phuc-kt
2b86dc586f fixed (niri) restore button + removed redundant json import 2026-04-14 14:24:27 +07:00
Piotr Miller
fa5079f41e Merge pull request #123 from SameExpert/setup-py-package-data
Include the missing package data in setup.py
2026-04-08 23:22:46 +02:00
Phuc-kt
80870b6510 add: CI/CD 2026-04-08 18:21:24 +07:00
Phuc-kt
0a6ce7de71 add: support niri 2026-04-08 17:55:01 +07:00
SameExpert
5414f56925 Include the missing package data in setup.py 2026-04-08 11:15:15 +05:30
Piotr Miller
fe8e5516d3 Merge pull request #118 from AKsitaWa/master
add Simplified Chinese language translation
2026-03-15 00:15:11 +01:00
AKsitaWa
04ca67fbd9 add Simplified Chinese lang 2026-03-14 22:13:50 +08:00
piotr
cf16e2da5b force combo boxes to expand upwards v0.3.28 2026-02-10 00:40:03 +01:00
piotr
ba3d64293f bump to 0.3.28 2026-02-09 23:58:00 +01:00
piotr
e0c174e687 restore check if monitors.conf is writable; closes #115 2026-02-09 23:45:06 +01:00
piotr
17e9906b9d restore 10-bit check btn & Mirror combo deleted in 9afbd69; closes #114 2026-02-09 23:39:37 +01:00
piotr
d7ee1f0e25 remove /.vscode v0.3.27 2026-01-30 01:46:39 +01:00
piotr
a0b45fb7a0 update .gitignore 2026-01-30 01:46:15 +01:00
Piotr Miller
78fc4fdf50 Merge pull request #111 from dante-ferr/fix-profile-management
Fix profile management issues
2026-01-30 01:35:23 +01:00
Dante Ferreira
ba0b57d8ae fix: bug where f-strings won't work on pl_PL 2026-01-29 11:07:25 -03:00
Dante Ferreira
3c5484d50c refactor: make active_profile.json the only source of truth for the currently active profile 2026-01-27 12:51:51 -03:00
Dante Ferreira
41d6d235f8 effectively untrack pycache 2026-01-27 12:30:49 -03:00
Piotr Miller
59ea70af03 Merge pull request #110 from nwg-piotr/add_swaybg_support
Profiles: add Azote/swaybg support
2026-01-27 00:51:23 +01:00
piotr
d3f76917c2 bump to 0.3.27 2026-01-27 00:22:34 +01:00
piotr
bc23bc080e add support for nwg-shell wallpaper management 2026-01-27 00:17:45 +01:00
Piotr Miller
ad723a6e84 Merge pull request #108 from nwg-piotr/del_redundant_stuff
Delete redundant stuff
2026-01-20 22:11:47 +01:00
piotr
80078c96cf remove unnecessary import 2026-01-20 22:10:39 +01:00
piotr
8376ef665d integrate all shutil.which(cmd) instances as the is_command() function 2026-01-20 20:46:59 +01:00
piotr
4faf276521 move utils module to tools.py for consistency 2026-01-20 20:43:30 +01:00
piotr
12d21a4879 add __init.py__.py 2026-01-20 20:26:01 +01:00
Piotr Miller
ca0706c000 Merge pull request #106 from dante-ferr/feat/profile-management-with-wallpapers
Profile management with wallpapers
2026-01-20 20:06:16 +01:00
Dante Ferreira
9e047cb85a fix: bug that made the display offset off after updating config via the gui 2026-01-12 12:07:19 -03:00
Dante Ferreira
9cd67a31af refactor: delete useless prints and make the messages more consistent 2026-01-12 11:28:31 -03:00
Dante Ferreira
608c5c7012 feat: implement toggle profile wallpapers script 2026-01-12 11:20:15 -03:00
Dante Ferreira
76e5955ed1 refactor: create scripts folder and move apply_profile_json.py to it 2026-01-11 12:42:58 -03:00
Dante Ferreira
f984db5f9c fix: solve module-related bugs in apply_profile_json.py 2026-01-11 12:35:44 -03:00
Dante Ferreira
87eae5a975 fix: make the wallpaper applying async after keeping settings (via the confirm win) 2026-01-10 19:43:42 -03:00
Dante Ferreira
649af632bd feat: add profile-bound wallpapers toggle checkbox 2026-01-10 19:37:45 -03:00
Dante Ferreira
4252682457 fix: make profile selection dialog smaller 2026-01-10 19:19:00 -03:00
Dante Ferreira
54144aa0c0 fix: make the wallpapers only change when the user keeps the settings they chose 2026-01-10 19:10:23 -03:00
Dante Ferreira
2b7de9bfd8 refactor: separate concerns into different methods in order to improve organization in settings_applier.py and wallpaper_manager.py) 2026-01-10 18:14:48 -03:00
Dante Ferreira
be699f75e3 feat: add wallpaper caching
When the user select another profile, the
previous wallpapers get cached and associated with the profile that was
active when it was changed.
This feature required significant changes on the structure of the project.
I basically added the WallpaperManager and SettingsApplier classes to make
things more organized.
2026-01-10 15:14:56 -03:00
Dante Ferreira
d3b67b6b50 Merge branch 'master' into feat/profile-management-with-wallpapers 2026-01-09 20:52:14 -03:00
Dante Ferreira
6c42fb31aa feat: add apply_profile_json.py util, in order to allow external automated scripts to use profile-generated display settings 2026-01-09 20:46:59 -03:00
Dante Ferreira
5bbe056adf fix: Correct display button selection state after unselect
The `DisplayButton.unselect()` method in `nwg_displays/main.py` was not resetting the `self.selected` attribute to `False`. This oversight allowed multiple display buttons to internally retain a `selected = True` state, even when only one was visually selected.
This issue manifested when loading a profile via `profiles.py`. The profile manager's logic to identify the currently selected button (`next((db for db in self.display_buttons if db.selected), None)`) would incorrectly pick the first button it found with `selected = True`, rather than the truly active one.
As a result, the form update callback (`update_form_from_widget`) would populate the GUI fields with data from this incorrectly identified button, while the actual changes were applied to the globally `selected_output_button`. This mismatch caused visual bugs, such as display buttons overlapping and GUI options disappearing, as properties from one display were erroneously applied to another.
This commit resolves the problem by ensuring that `DisplayButton.unselect()` explicitly sets `self.selected = False`, thereby maintaining accurate selection state and preventing GUI inconsistencies during profile loading and display interaction.
2026-01-09 15:50:43 -03:00
piotr
f57c0e973b bump to 0.3.26 v0.3.26 2025-08-28 02:02:20 +02:00
Piotr Miller
3a120b5801 Merge pull request #97 from hakan-demirli/master
Ensure monitors.conf is writable
2025-08-28 01:50:03 +02:00
hakan-demirli
859382ddb7 feat: ensure monitors.conf is writable 2025-08-15 05:41:21 +03:00