I have a browse screen running on the complex view where the query could be quite slow.
To avoid the users complains I need to implement a some kind of the notification on the screen such as showing a message/animation on the screen or on the button after the user clicks on the Filter’s Search button until the query finishes.
Unfortunately, there is no asynchronous data loading support in our standard data sources and filters. You can try to load data asynchronously using Background Tasks functionality, but it does not have ready to use integration with data sources: Background Tasks - CUBA Platform. Developer’s Manual .
So, you can apply this SlowButtonExtension to Search button of a Filter. Additionally, it requires to unwrap Filter component and find Vaadin instance of the button.
Please note, that if you implement data loading manually it is better to use BackgroundTasks and BackgroundWorkWindow class to not freeze UI during background processing.