Fix repositioning mistakes after scrolling
This commit is contained in:
16
service.js
16
service.js
@@ -524,10 +524,13 @@ class BesService {
|
||||
if (!service) return
|
||||
service.scrollPanel.style.top = -hostElement.scrollTop + 'px'
|
||||
service.offsetTop = hostElement.scrollTop
|
||||
setTimeout(() => {
|
||||
|
||||
if (service.scrollTimeout) clearTimeout(service.scrollTimeout)
|
||||
service.scrollTimeout = setTimeout(() => {
|
||||
console.log('Scrolling stop')
|
||||
service.repositionMistakes()
|
||||
}, 100)
|
||||
// TODO: Move popup (if open) too.
|
||||
service.scrollTimeout = null
|
||||
}, 200)
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -679,6 +682,7 @@ class BesCKService extends BesService {
|
||||
/**
|
||||
* Updates grammar mistake markup positions.
|
||||
*/
|
||||
// TODO: Implement a more efficient solution for repositioning mistakes after scrolling etc.
|
||||
repositionMistakes() {
|
||||
this.children.forEach(child => {
|
||||
this.clearMistakeMarkup(child.element)
|
||||
@@ -1187,9 +1191,9 @@ window.onscroll = () => {
|
||||
besServices.forEach(service => {
|
||||
service.scrollPanel.style.top = -service.hostElement.scrollTop + 'px'
|
||||
service.offsetTop = service.hostElement.scrollTop
|
||||
setTimeout(() => {
|
||||
service.repositionMistakes()
|
||||
}, 100)
|
||||
// setTimeout(() => {
|
||||
// service.repositionMistakes()
|
||||
// }, 100)
|
||||
})
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user