Right now if a book operation (borrowing, for example) is in progress, clicking another book button in the UI will enqueue an operation but this won't be reflected in the UI right away. The reason for this is that state changes are published when the background task starts, and the task may not start for a while if another task is already in progress.
Easy fix: Publish book state changes to the registry immediately (such as setting the state of a book to "download requested") and then let the background tasks update those states when the tasks start running.
Right now if a book operation (borrowing, for example) is in progress, clicking another book button in the UI will enqueue an operation but this won't be reflected in the UI right away. The reason for this is that state changes are published when the background task starts, and the task may not start for a while if another task is already in progress.
Easy fix: Publish book state changes to the registry immediately (such as setting the state of a book to "download requested") and then let the background tasks update those states when the tasks start running.