Disable the UI while processing a request

Can i disable the UI while processing a request. Right now, i can make a request and also make another one while first one is still under process. For ex : I have a table with multiple rows. Clicking on each row goes to back end and gets the results. I can click a row and while its getting the details for the row, i can click on another row and so on. This is causing pile of requests being sent to the back end and some times the application hangs. I have to close the browser to get out of it .

At the moment, the progress image(spinning wheel) shows up, but as i said i can still perform other actions in the UI.

Is there any way i can disable the UI while a request is being processed…something like gray out the UI until the request is being processed.

Thank you for your help

Change CSS for wait icon displayed by Vaadin to cover complete window.

If you can’t edit the CSS or you don’t want to edit the CSS, when you click a row you can set
enabled
and/or
editable
row properties (for all rows or for the table) to false.

Also, maybe you can have a panel (or another component) in the whole page with visible = false, when you click a row you set visible to true.

Ok. Thank you all. I will try both options… Thanks again.

It`s simple, add this to your custom css:


.v-loading-indicator-wait, .v-loading-indicator-delay, .v-loading-indicator{
	top: 0;
	left: 0;
	margin: 0;
	padding: 0;
	background-color: #56595B;
	background-repeat: no-repeat;
	background-position: top right;
	opacity: 0.5;
	position: fixed;
	width: 100%;
	height: 2000px;
	filter: alpha(opacity=50);
	/*
	*/
	position: absolute;
	top: expression(document.documentElement.scrollTop + "px");
}