DEV: Revert topic loading async changes (#18757)

This reverts commits 2c5e8f1763 (#18585) and 589a249a65 (#18727)

Those changes caused race conditions with scroll-to-post/lockOn code.
This commit is contained in:
Jarek Radosz 2022-10-26 20:16:01 +02:00 committed by GitHub
parent 0221855ba7
commit a727476fb7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 7 additions and 10 deletions

View File

@ -71,7 +71,6 @@ export default Controller.extend(bufferedProperty("model"), {
currentPostId: null, currentPostId: null,
userLastReadPostNumber: null, userLastReadPostNumber: null,
highestPostNumber: null, highestPostNumber: null,
controllerReady: false,
init() { init() {
this._super(...arguments); this._super(...arguments);

View File

@ -24,7 +24,7 @@ import DiscourseURL, { userPath } from "discourse/lib/url";
import deprecated from "discourse-common/lib/deprecated"; import deprecated from "discourse-common/lib/deprecated";
import { applyModelTransformations } from "discourse/lib/model-transformers"; import { applyModelTransformations } from "discourse/lib/model-transformers";
export async function loadTopicView(topic, args) { export function loadTopicView(topic, args) {
const data = deepMerge({}, args); const data = deepMerge({}, args);
const url = `${getURL("/t/")}${topic.id}`; const url = `${getURL("/t/")}${topic.id}`;
const jsonUrl = (data.nearPost ? `${url}/${data.nearPost}` : url) + ".json"; const jsonUrl = (data.nearPost ? `${url}/${data.nearPost}` : url) + ".json";
@ -33,12 +33,12 @@ export async function loadTopicView(topic, args) {
delete data.__type; delete data.__type;
delete data.store; delete data.store;
const json = await PreloadStore.getAndRemove(`topic_${topic.id}`, () => return PreloadStore.getAndRemove(`topic_${topic.id}`, () =>
ajax(jsonUrl, { data }) ajax(jsonUrl, { data })
); ).then((json) => {
topic.updateFromJson(json);
topic.updateFromJson(json); return json;
return json; });
} }
export const ID_CONSTRAINT = /^\d+$/; export const ID_CONSTRAINT = /^\d+$/;

View File

@ -80,7 +80,6 @@ export default DiscourseRoute.extend({
enteredAt: Date.now().toString(), enteredAt: Date.now().toString(),
userLastReadPostNumber: topic.last_read_post_number, userLastReadPostNumber: topic.last_read_post_number,
highestPostNumber: topic.highest_post_number, highestPostNumber: topic.highest_post_number,
controllerReady: true,
}); });
this.appEvents.trigger("page:topic-loaded", topic); this.appEvents.trigger("page:topic-loaded", topic);

View File

@ -352,7 +352,6 @@ const TopicRoute = DiscourseRoute.extend({
model, model,
editingTopic: false, editingTopic: false,
firstPostExpanded: false, firstPostExpanded: false,
controllerReady: false,
}); });
this.searchService.set("searchContext", model.get("searchContext")); this.searchService.set("searchContext", model.get("searchContext"));

View File

@ -13,7 +13,7 @@
<PluginOutlet @name="topic-above-post-stream" @tagName="span" @connectorTagName="div" @args={{hash model=this.model editFirstPost=(action "editFirstPost")}} /> <PluginOutlet @name="topic-above-post-stream" @tagName="span" @connectorTagName="div" @args={{hash model=this.model editFirstPost=(action "editFirstPost")}} />
{{#if (and this.controllerReady this.model.postStream.loaded)}} {{#if this.model.postStream.loaded}}
{{#if this.model.postStream.firstPostPresent}} {{#if this.model.postStream.firstPostPresent}}
<TopicTitle @cancelled={{action "cancelEditingTopic"}} @save={{action "finishedEditingTopic"}} @model={{this.model}}> <TopicTitle @cancelled={{action "cancelEditingTopic"}} @save={{action "finishedEditingTopic"}} @model={{this.model}}>
{{#if this.editingTopic}} {{#if this.editingTopic}}