We are using async functions in NetworkManager which is great, but actually getting a result can take some time.
For the quick actions, we should make the button insensitive or in intermediate state until we get the result from the async call.
Some settings (like the VPN I think) can be cancelled early if you click on the button again before it has been completed, using the GLib.Cancellable in the function call would do the trick there.
We are using async functions in NetworkManager which is great, but actually getting a result can take some time.
For the quick actions, we should make the button insensitive or in intermediate state until we get the result from the async call.
Some settings (like the VPN I think) can be cancelled early if you click on the button again before it has been completed, using the GLib.Cancellable in the function call would do the trick there.