Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
Clear All
new posts

    SmartGWT mobile NavStack render issue

    Using a LG Lucid Android (v4.0.4) phone (using phone's browser), when I go to the SmartGWT mobile showcase, there is an issue when I traverse into the 2nd-level of a nav stack.

    The navBar at top is rendered quickly, but then disappears. If I re-orient my phone, the refresh causes the navBar to show back up.

    I am trying to write my own mobile application and running into this precise issue. Not having the navBar show up is a major issue. It does not appear I have control over this render issue.

    Are there any suggestions on how to resolve this issue? Is this a known issue? If so, is there an ETA on a fix for this?

    Thanks.
    Attached Files

    #2
    This is not a known issue.

    The online Showcase doesnt reflect the latest nightly builds, so, if you think this is a framework bug, please put together a test case se can run to see the problem using the latest nightly build.

    Comment


      #3
      I extracted the daily build from 2-28-13 (using smartgwt-mobile-1.0d_2013-02-28.zip).

      As noted in the previous post, the problem may be device/browser specific. I can re-create this at will using my LG Lucid phone.

      Below is the code snippet which creates a simple test to reproduce the issue (which is pretty much a copy of HelloWorld).

      When I hit the "button", when the navStack pushes a new item, I may or may not see the top area of the navStack. The pattern does not seem deterministic.


      Here are the user agent strings I am using:
      <extend-property name="user.agent" values="android" fallback-value="gecko1_8"/>
      <extend-property name="user.agent" values="ipad" fallback-value="safari"/>
      <extend-property name="user.agent" values="iphone" fallback-value="safari"/>


      Here is the code:

      package com.mycompany.client;

      import com.google.gwt.core.client.EntryPoint;
      import com.google.gwt.user.client.ui.RootLayoutPanel;
      import com.smartgwt.mobile.client.widgets.Button;
      import com.smartgwt.mobile.client.widgets.Dialog;
      import com.smartgwt.mobile.client.widgets.Panel;
      import com.smartgwt.mobile.client.widgets.ScrollablePanel;
      import com.smartgwt.mobile.client.widgets.events.ClickEvent;
      import com.smartgwt.mobile.client.widgets.events.ClickHandler;
      import com.smartgwt.mobile.client.widgets.layout.NavStack;
      import com.smartgwt.mobile.client.widgets.toolbar.ToolStrip;
      import com.smartgwt.mobile.client.widgets.toolbar.ToolStripButton;

      /**
      * Entry point classes define <code>onModuleLoad()</code>.
      */
      public class HelloWorld extends Panel {
      // handles application pages history and transitions
      private NavStack navigationStack;

      /**
      * This is the entry point method.
      */
      public void onModuleLoad() {
      initComponents();
      }

      private void initComponents() {
      navigationStack = new NavStack(getBlueView());
      RootLayoutPanel.get().add(navigationStack);
      }

      public Panel getBlueView() {
      Panel panel = new ScrollablePanel("Blue");
      Button button = new Button("blue");
      button.setTintColor("blue");
      button.addClickHandler(new ClickHandler() {
      public void onClick(ClickEvent event) {
      navigationStack.push(getRedView());
      }
      });

      panel.addMember(button);

      return panel;
      }

      public Panel getRedView() {
      Panel panel = new ScrollablePanel("Red");
      Button button = new Button("red");
      button.setTintColor("red");
      button.addClickHandler(new ClickHandler() {
      public void onClick(ClickEvent event) {
      navigationStack.push(getBlueView());
      }
      });

      panel.addMember(button);

      return panel;
      }

      }

      Comment


        #4
        We're not able to reproduce this in the available emulators and don't have that specific physical device on hand.

        Note that you should not have those <extend-property> declarations, or any <extend-property> declarations, in your .gwt.xml file. They might be the problem.

        Comment


          #5
          I removed the entries from the .gwt.xml file and still see the same issue.

          As mentioned before, when I view the SmartGWT Showcase using my LG Lucid device, I see the same issue with the NavStack missing title bar. This appears to strongly indicate the issue may be my version of Android/browser on this particular device. And there does not appear to be anything I can control with this issue.

          As I am doing further development, I am seeing a similar pattern where my LG Lucid device/browser has different rendering behaviors when compared against IPhone/IPad. I have had other Android users test my builds and they do not see the issues I see on my device.

          My concern with SmartGWT Mobile is that Android support appears to have different behavior compared to IPhone, and possibly among different Android devices (where the LG Lucid is a specific issue).

          What is your suggestion on how I can help you re-create/resolve the issues I see on my mobile device?

          Comment


            #6
            As you've just noted, other Android users don't experience the issue, and we already test various Android devices.

            What you have is a device-specific bug in a specific version of Android, or perhaps in a specific version of LG's Android customizations for the Lucid.

            Because the LG Lucid is a relatively rare device, we don't plan to rush out and buy one to see if we can find a workaround - it's likely the next time your carrier offers an OS upgrade it will go away.

            Comment


              #7
              For completeness, we should mention, if you really need this fixed (perhaps you have an organization where everyone has been issued this same busted phone), the Feature Sponsorship program can always be used to do this.

              Comment

              Working...
              X