Skip to content

Conversation

@ulville
Copy link
Owner

@ulville ulville commented Nov 23, 2025

This adds new method for getting last used presets and changes how to parse the output of -p (--presets) option on the new QT version. Getting the last used preset does not work reliably with the new method (at least for flatpak). Need to work together with EE team to find a reliable solution. Also getting the value of global bypass state is disabled until we implement a new solution. Setting it should work though.

This adds new method for getting last used presets and changes how to parse the output of -p (--presets) option on the new QT version. Getting the last used preset does not work reliably with the new method (at least for flatpak). Need to work together with EE team to find a reliable solution. Also getting the value of global bypass state is disabled until we implement a new solution. Setting it should work though.
@ulville ulville linked an issue Nov 23, 2025 that may be closed by this pull request
@gwuen
Copy link

gwuen commented Nov 23, 2025

Thanks for the update! Installs and runs fine on GNOME 49 with EasyEffects 8.0.4. But I see three major issues at the moment:

  1. Interacting with the extension in any way closes the main EasyEffects window if it's open.
  2. Changing the preset is basically instant, but it takes up to 30 seconds for this to be reflected by easyeffects -a output, and thus also in the extension menu.
  3. EasyEffects can't be effectively quit with the extension running, that is, the extension restarts the service on its own every time.

Issue one seems to be a side effect of the command line flags. Even just querying the available preset with easyeffects -p will do this. This should be reported and fixed upstream, I don't think we can do anything about this.

The second one is likely caused by the active preset being queried from the config database, which has a default autosave interval of 30s (can be configured). We could mitigate this by caching the last change performed by the extension for some time, but this of doesn't guarantee this is really the active present. But ideally, EasyEffects shouldn't rely on the config database for this.

Number three should probably be fixed on the extension's side, by first checking if EasyEffects is running before running any commands that would launch the EasyEffects service.

@gwuen
Copy link

gwuen commented Nov 23, 2025

And also the global bypass toggle doesn't work at the moment, but I see you already opened an issue about this upstream.

@ulville
Copy link
Owner Author

ulville commented Nov 23, 2025

Thanks for the feedback! I'm aware of most of the problems you've stated, thus it's still not merged. It's not ready for the prime time yet.

  1. I've discovered this so late in the development cuz It wasn't a priority. So I have not checked if there is any open issue about it otherwise I'll open another one. Also I've noticed sometimes clicking on buttons of the extension shows the application window. Not sure if it's also a side effect of running cli commands.
  2. This was the case before the QT version on flatpak (the lag between applying the preset seeing the correct result with gsettings/-a command). But it was not this severe so a 1 second delay before actually checking the value was enough. But now it seems like even a 15 seconds of delay isn't enough. I can increase the wait time to 30ish seconds but I can't still guarantee if it'll return the correct value. So another method to get this value might be necessary. Easy Effects now uses a local unix socket server and this might be also added to it as a function.
  3. I'm not sure but I think that's also the case with the old GTK version. I think it's a seperate issue but I'll also take a look at it
  4. Bonus: I've made a new commit and now the extension will remember the last global bypass state set by the extension itself. Not ideal but at least it's more usable now (rather then always showing the off value and breaking the set function completely)

Comment on lines 321 to +323
if (appType === 'flatpak') {
// If Flatpak make sure to wait min 1sec before getting last presets
const waitTimeMs = easyEffectsIsQT ? 35000 : 1000;
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The database autosave interval is 30s by default on all platforms, so not only Flatpak is affected. I still think this should be fixed upstream though; EasyEffects should actually report the active preset and not the one saved in the db.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Broken after Easy Effects 8.0.0 update

3 participants