     activityController.on 'Refresh', @bound "refresh"
 
     @listController = controller
-    @listenToLazyThreshold()
+    @bindLazyLoad()
 
     @getView().widgetController.on "FakeActivityHasArrived", (activity)->
       controller.fakeActivityArrived activity


    super options

    @currentFilter  = activityTypes
    @feedType       = "Public"
    @appStorage     = new AppStorage 'Activity', '1.0'
    @isLoading      = no
    @mainController = KD.getSingleton 'mainController'
    @lastTo         = null
    @lastFrom       = Date.now()

    # if @mainController.appIsReady then @putListeners()
    # else @mainController.on 'AppIsReady', => @putListeners()

    {isReady}        = groupsController
    currentGroup     = groupsController.getCurrentGroup()

    fetch = ()=>
      #since it is not working, disabled it,
      #to-do add isExempt control.
      #@isExempt (exempt)=>
        #if exempt or @getFilter() isnt activityTypes

      options =
        to     : options.to or Date.now()
        group  :
          slug : currentGroup.slug or "koding"
          id   : currentGroup.getId()
        limit  : 20
        facets : @getActivityFilter()

      @responseHandler = KD.utils.getCancellableCallback (err, activities, callback)=>
        @responseHandler = null
        @isLoading = no
        @bindLazyLoad()

        if err or activities.length is 0
          warn err  if err

          @listController.hideLazyLoader()
          @listController.showNoItemWidget()
        else
          callback activities

      @fetchActivities options, @responseHandler

    if isReady
    then fetch()
    else groupsController.once 'groupChanged', fetch

  fetchActivities: (options={}, callback)->
    if @getFeedFilter() is "Public" then @fetchPublicActivities options, callback
