Wicket
  1. Wicket
  2. WICKET-2017

Add a transparent mask layer to the current page to prevent further UI interactivity when there are any busy Ajax activities

    Details

    • Type: New Feature New Feature
    • Status: Resolved
    • Priority: Minor Minor
    • Resolution: Won't Fix
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: wicket-extensions
    • Labels:
      None

      Description

      I created a reusable component, PanelWithAjaxBusyIndicatingMask, which extends Panel and uses org.apache.wicket.extensions.ajax.markup.html.WicketAjaxIndicatorAppender.

      The functions it has:

      It will add a transparent mask layer to the current page to prevent further UI interactivity when there are any busy Ajax activities.

      The mask layer will have an animation gif (the default is what Wicket is using) and a configurable display text (the default is: Please wait...).

      Both the display text and the animation gif file are configurable in the constructors.

      How can I commit my source code?

        Activity

        Hide
        Valentine Wu added a comment -

        There will be two new classes:

        1. WicketAjaxBusyIndicatingMask, which extends from WicketAjaxIndicatorAppender;
        2. PanelWithAjaxBusyIndicatingMask, which extends from Panel and implements IAjaxIndicatorAware.

        Can we put those classes in the package org.apache.wicket.extensions.ajax.markup.html?

        Thanks,
        Valentine

        Show
        Valentine Wu added a comment - There will be two new classes: 1. WicketAjaxBusyIndicatingMask, which extends from WicketAjaxIndicatorAppender; 2. PanelWithAjaxBusyIndicatingMask, which extends from Panel and implements IAjaxIndicatorAware. Can we put those classes in the package org.apache.wicket.extensions.ajax.markup.html? Thanks, Valentine
        Hide
        Valentine Wu added a comment -

        You can make and get 37 types of different animation gif files from the free Ajax loading gif generator: http://www.ajaxload.info/ !

        Also you can choose your background and foreground colors.

        Thanks,
        Valentine

        Show
        Valentine Wu added a comment - You can make and get 37 types of different animation gif files from the free Ajax loading gif generator: http://www.ajaxload.info/ ! Also you can choose your background and foreground colors. Thanks, Valentine
        Hide
        Juergen Donnerstag added a comment -

        Please attach your files (and test cases) to this jira issue and one of the core devs will have a look. Thanks for supporting wicket.

        Show
        Juergen Donnerstag added a comment - Please attach your files (and test cases) to this jira issue and one of the core devs will have a look. Thanks for supporting wicket.
        Hide
        Igor Vaynberg added a comment -

        there is already a veil component in wicketstuff-minis....

        Show
        Igor Vaynberg added a comment - there is already a veil component in wicketstuff-minis....
        Hide
        Valentine Wu added a comment -

        The files are attached.

        The PanelWithAjaxBusyIndicatingMask is more specific to the whole page, is more simple compared to veil component in wicketstuff-minis, and is more frequently used compoment.

        Show
        Valentine Wu added a comment - The files are attached. The PanelWithAjaxBusyIndicatingMask is more specific to the whole page, is more simple compared to veil component in wicketstuff-minis, and is more frequently used compoment.
        Hide
        Martin Grigorov added a comment -

        Wicket Ajax exposes events 'beforeSend' and 'complete'. You can use them to show any kind of veil above the whole page, part of it, or just the clicked link/button.
        Every application has different requirements to the UI for such functionality so we cannot add it to the framework.

        Show
        Martin Grigorov added a comment - Wicket Ajax exposes events 'beforeSend' and 'complete'. You can use them to show any kind of veil above the whole page, part of it, or just the clicked link/button. Every application has different requirements to the UI for such functionality so we cannot add it to the framework.

          People

          • Assignee:
            Unassigned
            Reporter:
            Valentine Wu
          • Votes:
            1 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Time Tracking

              Estimated:
              Original Estimate - 2h
              2h
              Remaining:
              Remaining Estimate - 2h
              2h
              Logged:
              Time Spent - Not Specified
              Not Specified

                Development