ICEfaces
  1. ICEfaces
  2. ICE-9873

New mobi:viewManager, mobi:view components

    Details

    • Type: New Feature New Feature
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 4.0.BETA, 4.0
    • Component/s: MOBI-Components
    • Labels:
      None
    • Environment:
      ICEfaces 4
    • Assignee Priority:
      P1
    • Affects:
      Documentation (User Guide, Ref. Guide, etc.), Sample App./Tutorial

      Description

      A View Manager component would aim at making standard mobile UIs easier for enterprise developers. The developer would define the contentPanes, which could be nested, their titles, the navigation pattern for different layouts, and the component would create the UI. The component would automatically handle navigation, and would not require the developer to write any backing bean code for navigation, or view switching.

      <mobi:viewManager mobileNavigation="swipe" tabletNavigation="menu" appLabel="My App">
         <mobi:contentPane id="a" title="Page A">
             //content
         </mobi:contentPane>
         <mobi:contentPane id="b" title="Page B">
             //content
         </mobi:contentPane>
         <mobi:contentPane id="b1" title="Page B1" childOf="b">
             //content
         </mobi:contentPane>
          <mobi:contentPane id="c" title="Page C">
             //content
         </mobi:contentPane>
      </mobi:viewManager>

      In a mobile layout set to navigation='swipe' this would generate the following:
      A <-- swipe to--> B <-- swipe to -->C
                                                    <--or click to --> B1

      -------------------------- -------------------------- -------------------------- --------------------------
      | A | | B <B1>| | <back> B1 | | C |
      | | | | | | | |
      | | | | | | | |
      | | | | | | | |
      | | | | | | | |
      ------------------------- ------------------------- ------------------------- -------------------------

      In a mobile layout set to navigation='menu' this would generate the following:

      -------------------------- -------------------------- -------------------------- -------------------------- --------------------------
      | My App | | A | | B <B1>| | <back> B1 | | C |
      |------------------------| | | | | | | | |
      | A > | | | | | | | | |
      | B V | | | | | | | | |
      | B1 > | | | | | | | | |
      | C V | | | | | | | | |
      ------------------------- ------------------------- ------------------------- ------------------------- -------------------------

      In a tablet layout this would generate the following:
      ____________________________________________
      | My App |
      |---------------------------------------------------------------------------|
      | A > | |
      | B V | |
      | B1 > | Current Page |
      | C V | |
      | | |
      | | |
      | | |
      |---------------------------------------------------------------------------|

        Issue Links

          Activity

          Ken Fyten created issue -
          Ken Fyten made changes -
          Field Original Value New Value
          Description The mobi:flipswitch component provides a control that toggles between on and off states (boolean). A View Manager component would aim at making standard mobile UIs easier for enterprise developers. The developer would define the contentPanes, which could be nested, their titles, the navigation pattern for different layouts, and the component would create the UI. The component would automatically handle navigation, and would not require the developer to write any backing bean code for navigation, or view switching.

          <mobi:viewManager mobileNavigation="swipe" tabletNavigation="menu" appLabel="My App">
             <mobi:contentPane id="a" title="Page A">
                 //content
             </mobi:contentPane>
             <mobi:contentPane id="b" title="Page B">
                 //content
             </mobi:contentPane>
             <mobi:contentPane id="b1" title="Page B1" childOf="b">
                 //content
             </mobi:contentPane>
              <mobi:contentPane id="c" title="Page C">
                 //content
             </mobi:contentPane>
          </mobi:viewManager>

          In a mobile layout set to navigation='swipe' this would generate the following:
          A <-- swipe to--> B <-- swipe to -->C
                                                        <--or click to --> B1

          -------------------------- -------------------------- -------------------------- --------------------------
          | A | | B <B1>| | <back> B1 | | C |
          | | | | | | | |
          | | | | | | | |
          | | | | | | | |
          | | | | | | | |
          ------------------------- ------------------------- ------------------------- -------------------------

          In a mobile layout set to navigation='menu' this would generate the following:

          -------------------------- -------------------------- -------------------------- -------------------------- --------------------------
          | My App | | A | | B <B1>| | <back> B1 | | C |
          |------------------------| | | | | | | | |
          | A > | | | | | | | | |
          | B V | | | | | | | | |
          | B1 > | | | | | | | | |
          | C V | | | | | | | | |
          ------------------------- ------------------------- ------------------------- ------------------------- -------------------------

          In a tablet layout this would generate the following:
          ____________________________________________
          | My App |
          |---------------------------------------------------------------------------|
          | A > | |
          | B V | |
          | B1 > | Current Page |
          | C V | |
          | | |
          | | |
          | | |
          |---------------------------------------------------------------------------|
          Component/s MOBI-Components [ 10270 ]
          Component/s ACE-Components [ 10050 ]
          Ken Fyten made changes -
          Link This issue depends on MOBI-342 [ MOBI-342 ]
          Ken Fyten made changes -
          Summary New mobi:viewManager component New mobi:viewManager, mobi:view components
          Hide
          Liana Munroe added a comment - - edited

          1. In a test application, while interacting with mobi:view within mobi:viewManager, in Firefox the following error is seen:
          ReferenceError: event is not defined.
          jsf.ajax.request(proxyFormId, event,

          {execute:'@form', render:'@all'}

          );
          http://localhost:8080/view/javax.faces.resource/component.js.jsf?ln=org.icefaces.component.util&v=4_0_0_140304
          Line 2293

          2. The "selected" attribute can not be changed to any String value other than the default, an NPE occurs if it is changed.

          3. Style and styleClass are not visible if applied to mobi:view. It seems they can only be applied with mobi:viewManager. If using a border style or styleClass in viewManager it does not size properly to smaller device views.

          4. The tlddoc could be updated with more information. For example, what the choices are for menuIcon etc.

          Test application located at:
          http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Manual/view

          Show
          Liana Munroe added a comment - - edited 1. In a test application, while interacting with mobi:view within mobi:viewManager, in Firefox the following error is seen: ReferenceError: event is not defined. jsf.ajax.request(proxyFormId, event, {execute:'@form', render:'@all'} ); http://localhost:8080/view/javax.faces.resource/component.js.jsf?ln=org.icefaces.component.util&v=4_0_0_140304 Line 2293 2. The "selected" attribute can not be changed to any String value other than the default, an NPE occurs if it is changed. 3. Style and styleClass are not visible if applied to mobi:view. It seems they can only be applied with mobi:viewManager. If using a border style or styleClass in viewManager it does not size properly to smaller device views. 4. The tlddoc could be updated with more information. For example, what the choices are for menuIcon etc. Test application located at: http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Manual/view
          Ken Fyten made changes -
          Assignee Priority P1 [ 10010 ]
          Hide
          Arturo Zambrano added a comment -

          Committed fixes for all issues at revision 40322: #1 fix for JS error; #2 fix to avoid exception when 'selected' attribute doesn't have a valid id; #3 added style and styleClass support to mobi:view; #4 improved TLD documentation.

          Show
          Arturo Zambrano added a comment - Committed fixes for all issues at revision 40322: #1 fix for JS error; #2 fix to avoid exception when 'selected' attribute doesn't have a valid id; #3 added style and styleClass support to mobi:view; #4 improved TLD documentation.
          Arturo Zambrano made changes -
          Status Open [ 1 ] Resolved [ 5 ]
          Resolution Fixed [ 1 ]
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #40322 Thu Mar 13 11:39:53 MDT 2014 art.zambrano ICE-9873 fix for JS error; fix to avoid exception when 'selected' attribute doesn't have a valid id; added style and styleClass support to mobi:view; improved TLD documentation
          Files Changed
          Commit graph MODIFY /icefaces4/trunk/icefaces/mobi/component/src/org/icefaces/mobi/component/viewmanager/ViewMeta.java
          Commit graph MODIFY /icefaces4/trunk/icefaces/mobi/component/src/org/icefaces/mobi/component/viewmanager/ViewManagerMeta.java
          Commit graph MODIFY /icefaces4/trunk/icefaces/mobi/component/src/org/icefaces/mobi/component/viewmanager/ViewRenderer.java
          Commit graph MODIFY /icefaces4/trunk/icefaces/mobi/component/resources/org.icefaces.component.util/component.js
          Commit graph MODIFY /icefaces4/trunk/icefaces/mobi/component/src/org/icefaces/mobi/component/viewmanager/ViewManagerRenderer.java
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #40324 Thu Mar 13 13:13:04 MDT 2014 art.zambrano ICE-9873 fixed several issues and made component usable: changed namespace from mobi to ace; adjusted pane widths to display correctly; added Themeroller styling; removed JS file loading from the renderer; fixed CSS; added ace-jquery dependency to automatically load theme resources
          Files Changed
          Commit graph MODIFY /icefaces4/trunk/icefaces/ace/component/src/org/icefaces/ace/component/splitpane/SplitPaneMeta.java
          Commit graph MODIFY /icefaces4/trunk/icefaces/ace/component/resources/org.icefaces.component.splitpane/splitpane.css
          Commit graph MODIFY /icefaces4/trunk/icefaces/ace/component/src/org/icefaces/ace/component/splitpane/SplitPaneCoreRenderer.java
          Commit graph MODIFY /icefaces4/trunk/icefaces/ace/component/src/org/icefaces/ace/component/splitpane/SplitPane.java
          Commit graph MODIFY /icefaces4/trunk/icefaces/ace/component/src/org/icefaces/ace/component/splitpane/SplitPaneRenderer.java
          Commit graph MODIFY /icefaces4/trunk/icefaces/ace/component/resources/org.icefaces.component.splitpane/splitpane.js
          Commit graph MODIFY /icefaces4/trunk/icefaces/ace/component/resources/org.icefaces.component.splitpane/splitpane-min.js
          Hide
          Liana Munroe added a comment -

          Confirmed fixed, Icefaces 4 trunk revision #40322.

          Show
          Liana Munroe added a comment - Confirmed fixed, Icefaces 4 trunk revision #40322.
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #40355 Mon Mar 17 11:22:40 MDT 2014 art.zambrano ICE-9873 changed default value of view to "(no title)" in order to avoid exception when value is null
          Files Changed
          Commit graph MODIFY /icefaces4/trunk/icefaces/mobi/component/src/org/icefaces/mobi/component/viewmanager/ViewMeta.java
          Hide
          Arturo Zambrano added a comment -

          Changed default value of view to "(no title)" in order to avoid exception when value is null at revision 40355.

          Show
          Arturo Zambrano added a comment - Changed default value of view to "(no title)" in order to avoid exception when value is null at revision 40355.
          Ken Fyten made changes -
          Fix Version/s 4.0 [ 11382 ]
          Ken Fyten made changes -
          Status Resolved [ 5 ] Closed [ 6 ]

            People

            • Assignee:
              Arturo Zambrano
              Reporter:
              Ken Fyten
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: