ICEfaces
  1. ICEfaces
  2. ICE-9933

showcase > ace:theme - unable to change theme (iPhone/iOS)

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: 4.0.BETA
    • Fix Version/s: 4.0
    • Component/s: ACE-Components, Sample Apps
    • Labels:
      None
    • Environment:
      ICEfaces4.0.Beta Build6
      Server: Tomcat7
      Browsers: Safari (iPhone4S/iOS6 or 7)
    • Assignee Priority:
      P3

      Description

      When using iPhone, changing the Theme from showcase > ACE Components overview page doesn't work. After selecting a new theme from the drop-down, the page reloads with the same 'sam' theme.

        Activity

        Hide
        Mircea Toma added a comment -

        The theme switching forces the browser to reload the entire page, also new CSS styles need to be loaded as well. It seems that iPhone's Safari browser takes a really long time to do just that. Because the theme selection is saved on the window scope NavigationBean and this slow reload, makes the server to think that the page request belongs to a different window.
        A new NavigationBean is instantiated after each theme switch, causing the theme selection to always be set to initial value (Sam theme).

        Changing the window timeout solves this issue but only when the value is set to an incredible 19 seconds. A reasonable solution for this issue would be to move the theme selection value binding on a session scoped bean. Conceptually this would be a good fit since a theme change is normal to be applied to all opened windows (unlike navigation).

        Show
        Mircea Toma added a comment - The theme switching forces the browser to reload the entire page, also new CSS styles need to be loaded as well. It seems that iPhone's Safari browser takes a really long time to do just that. Because the theme selection is saved on the window scope NavigationBean and this slow reload, makes the server to think that the page request belongs to a different window. A new NavigationBean is instantiated after each theme switch, causing the theme selection to always be set to initial value (Sam theme). Changing the window timeout solves this issue but only when the value is set to an incredible 19 seconds. A reasonable solution for this issue would be to move the theme selection value binding on a session scoped bean. Conceptually this would be a good fit since a theme change is normal to be applied to all opened windows (unlike navigation).
        Hide
        Mircea Toma added a comment -

        showcase-mobile.xhtml page seems to already make use of the session scoped ThemeBean to keep track of the selected theme.

        Show
        Mircea Toma added a comment - showcase-mobile.xhtml page seems to already make use of the session scoped ThemeBean to keep track of the selected theme.
        Hide
        Ken Fyten added a comment -

        Let's go ahead and change the main showcase page to also use Session scope for the theme bean, this is a logical fit.

        Show
        Ken Fyten added a comment - Let's go ahead and change the main showcase page to also use Session scope for the theme bean, this is a logical fit.
        Hide
        Mircea Toma added a comment -

        Modified showcase app to use a session scoped bean for keeping track of the selected theme. Also modified navigation links to use execute="@this" so that theme selection is not submitted while navigating in between demo sections.

        Show
        Mircea Toma added a comment - Modified showcase app to use a session scoped bean for keeping track of the selected theme. Also modified navigation links to use execute="@this" so that theme selection is not submitted while navigating in between demo sections.
        Hide
        Liana Munroe added a comment -

        Verified Icefaces 4 trunk, r41593. ace showcase, iphone 4/5, ios 7, Safari browser.

        Show
        Liana Munroe added a comment - Verified Icefaces 4 trunk, r41593. ace showcase, iphone 4/5, ios 7, Safari browser.

          People

          • Assignee:
            Mircea Toma
            Reporter:
            Carmen Cristurean
          • Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: