Please help test: Angular 1.3, improved transitions, cached views, etc

Is there any traction on https://github.com/driftyco/ionic/pull/2394 ?
The nightlies still have the 80ms delay which makes the ui feel really sloooow…

Hello everyone ,

Now all the views which we dont want the ionic system to cache can be done by adding cache:false property to a ui-router state …

check out the nightly docs !
thanks @adam

Yeah thank you guys!
Don’t you think that should be there a method that clear all the previous cached views? Just like $ionicHistory.clearHistory(), a $IonicCache.clearCache()?

Finally got this thing running on a brand new quadcore Android 4.4.4 device and the performance is so bad I can barely even scroll. Even on a screen with just text. Performance on iOS is still awesome.

1 Like

Can you provide a sample codepen of what you have?
We’ve been testing on low-end older 4.1 device and scrolling has been pretty good.

I’ll see if I can get it to replicate in a codepen. The app still doesn’t’ work well on nightly, having some navigational issues, so I might try to fix those first. If not, would you be willing to take a look at it if I sent you the repo privately?

So the caching is cool, but the part that I am wondering if there is a way around is the “disconnecting from the cycle”.

Say on tab 1 i have a chat session that is connected via websockets, recieves messages in real time, and causes that tab button to flash when there is a new message. And on that same tab is a countdown timer that counts down once a second.

If i go to tab 2 and do some things there, I want tab 1 to stay completely active in the background – it should be updating itself as it receives websocket messages and its timer continue counting down. If you disconnect it from the cycle, I assume those activities will be frozen, so can there be some kind of flag to say “this tab should remain connected to the cycle”?

In that case, you would probably want to move to things to a factory so that way things can stay connect between controllers.

1 Like

@fredericogalvao

I still can’t see the side-menus with a swipe gesture, even after the many fixes towards this issue that came in the last few days. I need to open the menu using the delegate or menu-toggle. Disclosure: I use overflow-scroll=“true”.

I can’t replicate this issue either, could you provide an example? One note, with the enable-menu-with-back-views="false" attribute, the menu is disabled and the toggle menu button is hidden when you go one view deep in the navigation. This is by design and is an optional feature.

@adam Has anyone reported problems with the navDirection? I’ve tried placing nav-direction=“back” on a couple links in my app but it still has the animation like it is moving to a new page. Here is a codepen where I put it on the button for page 2. Am I doing something wrong? Thank you in advance!

@myNewAccount As of build 777 there is now $ionicHistory.clearCache()

http://ionicframework.com/docs/nightly/api/service/$ionicHistory/

4 Likes

@brandyshea The navDirection attribute should be fixed as of build 778. Thank you for describing the problem and creating a codepen, it made it easy to replicate the issue and get it fixed. Thanks!

1 Like

@adam has anyone else reported the issue with the tab navigation calling a tab that is on the tab bar instead of going to a different nav stack, and then returning to the original tab you tried to navigate away from?

Hi , I also checked the new nightly, I used the resort demo app from ionic in action, i just changed the css and js to the nightly build.
By the way i am on android 4.4.2

First thing i noticed is the title of the navbar is not on the middle, but on the left corner. another thing is that the menu button disappeared completely.

in the “local places” page, there are tabs, and there is a bug in which changing the tabs doesn’t change the navbar title as it should.

Also there is a gap between the header navbar and the content itself, as if there is a sub header there, but it’s invisible…

Is it supposed to be like this in the new version?

edit: I tried building the same project in intelxdk with crosswalk, and it messed the intro slidebox, but when getting inside the app, the menu icon was there and everything ok, but the tabs went down, like in the older betas, i don’t know if there is anything connected, just to let you know…

Thanks…

@shaulhadar Now tabs in Android by default stays on top. You can change this settings via $ionicConfigProvider.tabs.position(value), $ionicConfigProvider

Hi xMarston, thanks for that, i also have read about it in the documentation.

the only thing i don’t understand is why in phonegap build it will show it correctly but on the crosswalk build it will show it differently?

I’m wondering if something is wrong here. The stateChangeSuccess event is operating a bit differently in the nightlies with view caching than in Beta 13.

Controllers that use $scope.$on('$stateChangeSuccess)` are reporting that event even when they are not the active view.

See this Beta 13 sample below, open the console, and navigate between the views in the sidebar. Each controller reports the stateChangeSuccess event only when state is changed to that controller.

Link : http://codepen.io/calendee/pen/emmoNZ

Now, open this nightly sample below. Do the same thing. Notice that the current and previous controller is reporting that $stateChangeSuccess event.

Link : http://codepen.io/calendee/pen/VYYNYy

Is this a bug or just part of the whole cache system where controllers stay in memory but are removed from scope? I know there are some new $ionicView events that can be used to know when a view is entered, left, etc. However, I’m wondering if there is actually a problem with $stateChangeSuccess firing twice or getting listened to forever.

@tmaximini Would you be able to create a codepen to show exactly what you mean?

FYI : v1.0.0-beta.13-nightly-779

There’s still something wrong with titles in the nightlies. If you start with a view-title that is empty or interpolated, you get strange effects.

Example: http://codepen.io/calendee/pen/LEEoaY

There is a template called ‘templates/anotherTitle.html’. It has an initially blank title.

  • Start the app
  • Open side-menu
  • Click “Check In”
  • Click the “Go To Another Title Page” button
  • Watch the title. It initially says “Welcome”. It should have just been empty. Then, after a timeout on the controller, it changes to “Another Title Updated!” as it should

Now, reload the app:

  • Open side-menu
  • Click Attendees
  • Open side-menu
  • Click Check-in
  • Click the “Go To Another Title Page” button
  • Watch the title. It initially says “Event Attendees”. It should have just been empty. controller, it changes to “Another Title Updated!” as it should

I’m seeing similar strange behavior in an app where the title is interpolated. Initially, the title should be empty until I can get a user’s name. However, instead the title has the title of the very first view in the app. Then, when I set the title to the user’s name, it goes blank.

I can confirm this issue is only on Android devices, both 4.4.2 and 4.4.4. and has to do with setting the : overflow-scroll=“true” (which we really need on Android… even the newest models)