merge upstream
This commit is contained in:
commit
b6dc280b12
9 changed files with 59 additions and 2 deletions
|
|
@ -17,7 +17,7 @@ Upstream README is below.
|
|||
## list of changes in this fork:
|
||||
- additional confirmations for:
|
||||
- post visibility (choose direct, private, unlisted, public, local)
|
||||
- posting with an attachment marked sensitive but no cw
|
||||
- posting with an attachment marked sensitive but no cw (todo: fix the conf showing up with no attachments)
|
||||
- biting:
|
||||
- users
|
||||
- notes
|
||||
|
|
@ -40,6 +40,7 @@ Upstream README is below.
|
|||
- for unreads:
|
||||
- option to disable favicon badge changing on unreads
|
||||
- option to disable title showing unreads
|
||||
- option to not scroll to the top when showing unreads
|
||||
- update the list of emojis:
|
||||
- switched weird unicode ones to proper emojis
|
||||
- emojis are sourced from discord's list of emojis
|
||||
|
|
@ -47,6 +48,7 @@ Upstream README is below.
|
|||
- script to get new emojis is included for future unicode versions
|
||||
- add toggle for showing post edit notifications
|
||||
- add support for accepted follow request notifications
|
||||
- add option to prevent page from getting pushed when making a new post with streaming api enabled (similar to 3rd "for unreads" option)
|
||||
- add a script to download ruffle for flash support (requires python3 and requests library)
|
||||
- download by entering `tools/` and running `python3 download_ruffle.py`
|
||||
|
||||
|
|
|
|||
|
|
@ -458,6 +458,10 @@ const PostStatusForm = {
|
|||
|
||||
const postHandler = this.postHandler ? this.postHandler : statusPoster.postStatus
|
||||
|
||||
let bef = null
|
||||
if (document.getElementsByClassName("Timeline") > 0)
|
||||
bef = document.getElementsByClassName("Timeline")[0].scrollHeight
|
||||
|
||||
postHandler(postingOptions).then((data) => {
|
||||
if (!data.error) {
|
||||
this.clearStatus()
|
||||
|
|
@ -466,6 +470,14 @@ const PostStatusForm = {
|
|||
this.error = data.error
|
||||
}
|
||||
this.posting = false
|
||||
|
||||
// same as timeline.js
|
||||
if (this.$store.getters.mergedConfig.fixupScrollOnPostWStreaming && window.scrollY > 0 && (document.getElementsByClassName("Timeline") > 0)) {
|
||||
let after = document.getElementsByClassName("Timeline")[0].scrollHeight
|
||||
let diff = bef - after
|
||||
if (diff < 0) diff = diff * -1
|
||||
window.scrollTo({ top: (window.scrollY + diff) })
|
||||
}
|
||||
})
|
||||
},
|
||||
previewStatus () {
|
||||
|
|
|
|||
|
|
@ -200,6 +200,10 @@
|
|||
}
|
||||
}
|
||||
|
||||
.search-result .status-heading {
|
||||
padding-bottom: .5em;
|
||||
}
|
||||
|
||||
.loading-icon {
|
||||
padding: 1em;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -201,6 +201,14 @@
|
|||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<BooleanSetting
|
||||
path="scrollToTopOnNewPostClick"
|
||||
expert="1"
|
||||
>
|
||||
{{ $t('settings.scroll_to_top_on_new_post_click') }}
|
||||
</BooleanSetting>
|
||||
</li>
|
||||
<li>
|
||||
<BooleanSetting
|
||||
path="useStreamingApi"
|
||||
|
|
@ -221,6 +229,15 @@
|
|||
{{ $t('settings.deletePostsStreaming') }}
|
||||
</BooleanSetting>
|
||||
</li>
|
||||
<li>
|
||||
<BooleanSetting
|
||||
path="fixupScrollOnPostWStreaming"
|
||||
:disabled="!useStreamingApi"
|
||||
expert="1"
|
||||
>
|
||||
{{ $t('settings.fixup_scroll_on_post_with_streaming') }}
|
||||
</BooleanSetting>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
|
|
|
|||
|
|
@ -42,6 +42,10 @@
|
|||
padding: var(--status-margin, $status-margin);
|
||||
}
|
||||
|
||||
.popover .status-container {
|
||||
padding: .5em;
|
||||
}
|
||||
|
||||
&.classic .status-heading {
|
||||
margin-bottom: 0.5em;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -156,6 +156,8 @@ const Timeline = {
|
|||
if (e.key === '.') this.showNewStatuses()
|
||||
},
|
||||
showNewStatuses () {
|
||||
let bef = document.getElementsByClassName("Timeline")[0].scrollHeight
|
||||
|
||||
if (this.timeline.flushMarker !== 0) {
|
||||
this.$store.commit('clearTimeline', { timeline: this.timelineName, excludeUserId: true })
|
||||
this.$store.commit('queueFlush', { timeline: this.timelineName, id: 0 })
|
||||
|
|
@ -165,8 +167,18 @@ const Timeline = {
|
|||
this.$store.commit('showNewStatuses', { timeline: this.timelineName })
|
||||
this.paused = false
|
||||
}
|
||||
if (!this.inProfile) {
|
||||
if (!this.inProfile && this.$store.getters.mergedConfig.scrollToTopOnNewPostClick) {
|
||||
window.scrollTo({ top: 0 })
|
||||
} else if (!this.inProfile && !this.$store.getters.mergedConfig.scrollToTopOnNewPostClick && window.scrollY > 0) {
|
||||
// i REALLY don't like this code. it results in flickering best case scenario. this is kind of just a limit
|
||||
// of how akko-fe is written, and being able to do this without flicker would require an async rewrite most
|
||||
// likely. this is probably the best way this can be reasonably done without a full rewrite.
|
||||
setTimeout(function() {
|
||||
let after = document.getElementsByClassName("Timeline")[0].scrollHeight
|
||||
let diff = bef - after
|
||||
if (diff < 0) diff = diff * -1
|
||||
window.scrollTo({ top: (window.scrollY + diff) })
|
||||
}, 0);
|
||||
}
|
||||
},
|
||||
fetchOlderStatuses: throttle( function () {
|
||||
|
|
|
|||
|
|
@ -577,6 +577,7 @@
|
|||
},
|
||||
"filtering": "Filtering",
|
||||
"filtering_explanation": "All posts containing these words will be muted, one per line",
|
||||
"fixup_scroll_on_post_with_streaming": "Prevent the page from getting pushed down by new posts you make",
|
||||
"follow_export": "Follow export",
|
||||
"follow_export_button": "Export your follows to a csv file",
|
||||
"follow_import": "Follow import",
|
||||
|
|
@ -753,6 +754,7 @@
|
|||
"saving_err": "Error saving settings",
|
||||
"saving_ok": "Settings saved",
|
||||
"scope_copy": "Copy scope when replying (DMs are always copied)",
|
||||
"scroll_to_top_on_new_post_click": "Scroll to the top when showing new posts (disabling this may result in buggy behavior)",
|
||||
"search_pagination_limit": "Results to show per search page",
|
||||
"search_user_to_block": "Search whom you want to block",
|
||||
"search_user_to_mute": "Search whom you want to mute",
|
||||
|
|
|
|||
|
|
@ -128,6 +128,8 @@ export const defaultState = {
|
|||
recurseSearch: false,
|
||||
recurseSearchLimit: 100,
|
||||
dedupeBoosts: true,
|
||||
scrollToTopOnNewPostClick: true,
|
||||
fixupScrollOnPostWStreaming: false,
|
||||
showFaviconBadge: true,
|
||||
autoRefreshOnRequired: true,
|
||||
showUnreadInTitle: true,
|
||||
|
|
|
|||
|
|
@ -84,6 +84,8 @@ const defaultState = {
|
|||
recurseSearch: false,
|
||||
recurseSearchLimit: 100,
|
||||
dedupeBoosts: true,
|
||||
scrollToTopOnNewPostClick: true,
|
||||
fixupScrollOnPostWStreaming: false,
|
||||
showFaviconBadge: true,
|
||||
autoRefreshOnRequired: true,
|
||||
showUnreadInTitle: true,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue