Sunday, January 30, 2011

Found an inconsistent behaviour in GWT Expenses Roo application: Master-Detail Activities-Places becoming out of Sync !


I found an inconsistent behaviour in GWT Expenses Roo application.
Actually I found it in my own sample app inspired by Expenses app,
and when I checked GWT Expenses Roo for reference,
I realized it is the case there also.

Problem Summary:
** When Hitting Browser Back Button, Master and Detail Activities/Places, become out of Sync! **

Problem Background: (similar to Expenses Roo app)
- We have a Master/Detail Layout which uses Places/Activity/Activity Filter concepts.

- The Master part, is consisted of a list of items in a CellTable, this table has a Pager.

- When selecting an Item from the Master Activity (in Master Place), we go to a new place (detail place),
  this detail place  shows the detail of the selected items.

- We use a place filter in conjunction with FilteredActivityMapper,
  so that when going to the detail place, the master activity remain the same.
  as a result, we can see master activity(which has a celltable),
  and detail activity (a panel showing details of the item),  side by side.

so far so good.

- our data is presented in multiple pages, we go back and forth, using Pager next/previous buttons.

Here is where the problem lies.

User Action:

- select item A and then B from  "Page X of CellTable".

System Response:

- details of items A and B are displayed alongside the CellTable accordingly (detail activity/place)

UserAction:
- using CellTable Pager, go from Page X to Page Y.

System Response:
- we are now in the Page Y of Cell Table.
- Details of Item B is still showing (++ this may or may not be the desired behaviour ++)

UserAction:
- hit back button !

System Response:
- we see detail of item A, but cell table remains in Page Y,
  instead of going to Page X, where item B actually is located,
  we are remaining in PageY of celltable.

  as a result in, our Master and Details Activity/Places become out of sync !



The correct behaviour should be:
when Detail Activity is showing detail of item A,
Master Activity should also display the correct page of CellTable
which contains item A within that Range.

in other words, if item A is in Page 6, everytime Detail Activity is displaying detail of Item A,
the Master Activity must also set the current page of table to the page where item A is located.

do you have any suggestions on how this problem can be fixed ?

I am extremely disappointed that after spending many many weeks to get this master/detail working,
it is not behaving correctly : (

Please Help : (

--
You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to google-web-toolkit+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.

No comments:

Post a Comment