diff --git a/app/assets/javascripts/discourse/app/components/discovery-topics-list.js b/app/assets/javascripts/discourse/app/components/discovery-topics-list.js index 5790316a18a..b0da8c5924e 100644 --- a/app/assets/javascripts/discourse/app/components/discovery-topics-list.js +++ b/app/assets/javascripts/discourse/app/components/discovery-topics-list.js @@ -5,7 +5,7 @@ import LoadMore from "discourse/mixins/load-more"; import UrlRefresh from "discourse/mixins/url-refresh"; import { inject as service } from "@ember/service"; -const DiscoveryTopicsListComponent = Component.extend(UrlRefresh, LoadMore, { +export default Component.extend(UrlRefresh, LoadMore, { classNames: ["contents"], eyelineSelector: ".topic-list-item", documentTitle: service(), @@ -60,9 +60,10 @@ const DiscoveryTopicsListComponent = Component.extend(UrlRefresh, LoadMore, { if (moreTopicsUrl && $(window).height() >= $(document).height()) { this.send("loadMore"); } + if (this.loadingComplete) { + this.loadingComplete(); + } }); }, }, }); - -export default DiscoveryTopicsListComponent; diff --git a/app/assets/javascripts/discourse/app/controllers/discovery.js b/app/assets/javascripts/discourse/app/controllers/discovery.js index c06ad44e2b2..fcd3ceb1639 100644 --- a/app/assets/javascripts/discourse/app/controllers/discovery.js +++ b/app/assets/javascripts/discourse/app/controllers/discovery.js @@ -1,5 +1,6 @@ import Controller, { inject as controller } from "@ember/controller"; import { alias, equal, not } from "@ember/object/computed"; +import { action } from "@ember/object"; import Category from "discourse/models/category"; import DiscourseURL from "discourse/lib/url"; import { inject as service } from "@ember/service"; @@ -20,11 +21,13 @@ export default Controller.extend({ loadedAllItems: not("discoveryTopics.model.canLoadMore"), + @action loadingBegan() { this.set("loading", true); this.set("application.showFooter", false); }, + @action loadingComplete() { this.set("loading", false); this.set("application.showFooter", this.loadedAllItems); diff --git a/app/assets/javascripts/discourse/app/templates/discovery/topics.hbs b/app/assets/javascripts/discourse/app/templates/discovery/topics.hbs index 9178f3ef8c2..463eb6c1bcc 100644 --- a/app/assets/javascripts/discourse/app/templates/discovery/topics.hbs +++ b/app/assets/javascripts/discourse/app/templates/discovery/topics.hbs @@ -19,6 +19,7 @@ model=model showResetNew=showResetNew showDismissRead=showDismissRead resetNew=( {{#discovery-topics-list model=model refresh=(action "refresh") + loadingComplete=(action "loadingComplete") incomingCount=topicTrackingState.incomingCount autoAddTopicsToBulkSelect=autoAddTopicsToBulkSelect bulkSelectEnabled=bulkSelectEnabled