summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Zallmann <tzallmann@gitlab.com>2018-08-13 11:55:30 +0200
committerTim Zallmann <tzallmann@gitlab.com>2018-08-21 18:04:10 +0200
commit2421558fec378de6c8864004430e1578fcc7279f (patch)
treea0fcc702ab54f5438b950dce93405182264fd9d1
parentebdd8b363cc70021a2eb6779afd94d7e387920a9 (diff)
downloadgitlab-ce-tz-mr-new-datastructure.tar.gz
Updated discussion loading to be deferred and in the statetz-mr-new-datastructure
-rw-r--r--app/assets/javascripts/diffs/components/app.vue8
-rw-r--r--app/assets/javascripts/diffs/store/mutations.js16
2 files changed, 15 insertions, 9 deletions
diff --git a/app/assets/javascripts/diffs/components/app.vue b/app/assets/javascripts/diffs/components/app.vue
index b801dd56392..da7125c604b 100644
--- a/app/assets/javascripts/diffs/components/app.vue
+++ b/app/assets/javascripts/diffs/components/app.vue
@@ -112,7 +112,6 @@ export default {
},
created() {
this.adjustView();
- eventHub.$once('renderedFiles', this.assignDiscussionsToDiff);
},
methods: {
...mapActions('diffs', [
@@ -130,7 +129,12 @@ export default {
this.startRenderDiffsQueue()
.then(() => {
console.log('Done rendering Que');
- this.assignDiscussionsToDiff(this.discussionsStructuredByLineCode);
+ requestIdleCallback(
+ () => {
+ this.assignDiscussionsToDiff(this.discussionsStructuredByLineCode);
+ },
+ { timeout: 1000 },
+ );
})
.catch(() => {
createFlash(__('Something went wrong on our end. Please try again!'));
diff --git a/app/assets/javascripts/diffs/store/mutations.js b/app/assets/javascripts/diffs/store/mutations.js
index e35fa74a6be..14557b4e0f9 100644
--- a/app/assets/javascripts/diffs/store/mutations.js
+++ b/app/assets/javascripts/diffs/store/mutations.js
@@ -24,13 +24,18 @@ export default {
let i;
for (i = 0; i < filesLength; i += 1) {
const file = diffData.diffFiles[i];
+
if (file.parallelDiffLines) {
const linesLength = file.parallelDiffLines.length;
let u = 0;
for (u = 0; u < linesLength; u += 1) {
const line = file.parallelDiffLines[u];
- if (line.left) delete line.left.text;
- if (line.right) delete line.right.text;
+ if (line.left) {
+ line.left = trimFirstCharOfLineContent(line.left);
+ }
+ if (line.right) {
+ line.right = trimFirstCharOfLineContent(line.right);
+ }
}
}
@@ -38,14 +43,11 @@ export default {
const linesLength = file.highlightedDiffLines.length;
let u;
for (u = 0; u < linesLength; u += 1) {
- const line = file.highlightedDiffLines[u];
- delete line.text;
+ trimFirstCharOfLineContent(file.highlightedDiffLines[u]);
}
- }
-
- if (file.highlightedDiffLines) {
showingLines += file.parallelDiffLines.length;
}
+
Object.assign(file, {
renderIt: showingLines < LINES_TO_BE_RENDERED_DIRECTLY,
collapsed: file.text && showingLines > MAX_LINES_TO_BE_RENDERED,