Famous / famous-angular

Bring structure to your Famo.us apps with the power of AngularJS. Famo.us/Angular integrates seamlessly with existing Angular and Famo.us apps.
https://famo.us/angular
Mozilla Public License 2.0
1.92k stars 275 forks source link

Scrollview issues (ordering and overflow) and Fa-animate-leave #305

Closed SuPenguin closed 9 years ago

SuPenguin commented 9 years ago

Hello,

I'm having few issues with the scrollview that i didn't find a proper way of fixing it.

First is about ordering, i can't manage to order correctly items inside an hash (http://codepen.io/Kelevra/pen/xbgxeP). I tried the fa-index as indicated in https://github.com/Famous/famous-angular/issues/273 but it didn't go well. It seems to work better with a basic array preordered tho (http://codepen.io/Kelevra/pen/PwWPYR), but some lines could be mixed up if you delete then add some items.

Then, about fa-animate-leave & fa-animate-enter, could it be a way to trigger them when the items are leaving / entering the scrollview's clipSize like with overflow:hidden. Again with fa-animate-leave, there is a gap beetween the $destroy and the callback :

  $scope.leaveComment = (comment, done)->
      comment.opacity.set(0,{curve: Easing.outQuart, duration: 400}, done)
      $timeout done, 400

We have to secure the callback into another timeout because it's sometime fired after the digest cycle so the node with his margin / spacing will stay until the next action. It also causes duplication of surfaces while filtering with ng-model.

Thanks.

jordanpapaleo commented 9 years ago

Hi @SuPenguin -

Can you try using Famo.us 0.2.2? I think there may a breaking change from Famo.us in 0.3. Doing this fixed just another issue. Hopefully this will get you through your current blocker. I will need to dive a little deeper to see what happened between the 2 versions with scroll view.

Thanks,

Jordan

SuPenguin commented 9 years ago

Hi @jordanpapaleo

I don't think i can go back to Famo.us 0.2.2 because i'm using some other feature from 0.3.*. But i'll try to replace the scrollview with the old one within the file to get the ordering right. About the fa-enter, fa-leave, do you think it will be possible to destroy the element which are outside the scrollview's boundaries ? It will be helpful to improve the performance with long list !

Thank you, Alan.

jordanpapaleo commented 9 years ago

Could you let me know if you got this to work with your requirements?

SuPenguin commented 9 years ago

I just tried with 0.2.2, the ordering is good by ng-repeating on an array but not with an object. And unfortunately it does not support the true size of elements so it's not that good for making a comment box.

jordanpapaleo commented 9 years ago

Thank you for checking that.

steveblue commented 9 years ago

@SuPenguin check this StackOverflow for a fix for handling true sized elements inside a ScrollView. http://stackoverflow.com/questions/26445552/scroll-view-not-scrolling-with-surface-fa-size-undefined-true/26534407#26534407

jordanpapaleo commented 9 years ago

Thanks @steveblue.

@SuPenguin can you try that and let me know if it worked?

Thanks,

Jordan