Adding my solution as an answer here:
The reloading issue described above only goes away if I remove widgets from that place and use only plain text or container widget. I also tried progress circle which produces same issue. Other than progress widgets, I tried placing HTML/JavaScript snippet widget in the same place and it produces the reloading issue
So at the end I solved this problem by implementing a custom progress bar using container and text widgets only for HTML structure and some custom CSS.
- You can inspect progress bar widget in browser and see its HTML structure and CSS styling to have an idea on how to implement it
- For showing progress (moving the bar), the widget sets the width of inner container that is filled with color to show progress. For example, at 50% progress it will have a width of 50%
- Let say we define a step interval of 10%, that means after 10% progress the bar is filled by 10% width. Now after 20% it is filled by 20% width. We will need 10 CSS classes and dynamically apply those classes on the progress container
- The condition used in dynamic classes expression will be based on your progress attribute. For example:
- if progress >= 0 and progress < 10 then ‘width10’
- else if progress >=10 and progress < 20 then ‘width20’
- Now the progress attribute of context entity where you placed your custom progress container widget will dynamically change its CSS classes and it will look like a moving progress bar
- You can customize the step interval to 5 or 10 or anything else you like
With above implementation I was able to get same result visually as the Mendix progress bar widget and the list view reloading problem was solved.