Block all user input for long running processes

Hi - I am new to Vaadin - so might just be a newbiew quation? (version 7.x). - Valo Theme

I have some long running calls where I need to “block” the whole GUI (navigate to other parts, no table selection, no button clicks etc). I know it is not very “Ajax” to block the whole GUI - but it is a limitation i have to deal with…

I have seen the “loading progress bar” in the top and was wondering if I could somehow “piggy bag” on that and “just” add a “full screen load” by changing CSS. Unfortunatly all my tries have failed - otherwise I would be writing here …

Any ideas is apreciated - and soultion are more than welcome :0)

This worked for us:

 /**
    * Ensures that when the vaadin loading indicators are shown (long server trip), the MMI is locked
    * down (that is the user is unable to click on any other components). Whilst all stages (first at 300ms, second at 1500ms
    * and third at 5000ms) 'disable' the GUI by making the indicator full-size, a disabled effect (transparent grey) will
    * kick in at the second and third stages. We don't do the effect at the first stage, as a lot of actions were
    * just taking long enough for it to appear, only to then immediately disappear. Didnt look nice.  
    */
    
    .v-loading-indicator:before {
        content: "";
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        pointer-events: auto;
    }
        
    .v-loading-indicator-delay:before,
    .v-loading-indicator-wait:before {
        content: "";
        position: fixed;
        background: rgba(0,0,0,.5);
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        pointer-events: auto;
    }
        
    .v-loading-indicator[style*="none"]
:before {
        display: none;
    }