Add scroll behaviour
This commit is contained in:
parent
04820b6fe1
commit
955bfe3487
|
|
@ -316,6 +316,11 @@ class PushPull(WebSocketHandler):
|
||||||
for socket in websockets:
|
for socket in websockets:
|
||||||
socket.write_message({"course" : content})
|
socket.write_message({"course" : content})
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def update_scroll(cls, content):
|
||||||
|
for socket in websockets:
|
||||||
|
socket.write_message({"scroll" : content[0]/float(content[1])})
|
||||||
|
|
||||||
def open(self):
|
def open(self):
|
||||||
if self not in websockets:
|
if self not in websockets:
|
||||||
websockets.append(self)
|
websockets.append(self)
|
||||||
|
|
@ -392,5 +397,6 @@ async def main(base_path):
|
||||||
Publisher.subscribe("PushPull", "title", PushPull.update_title)
|
Publisher.subscribe("PushPull", "title", PushPull.update_title)
|
||||||
Publisher.subscribe("PushPull", "course", PushPull.update_course)
|
Publisher.subscribe("PushPull", "course", PushPull.update_course)
|
||||||
Publisher.subscribe("PushPull", "date", PushPull.update_date)
|
Publisher.subscribe("PushPull", "date", PushPull.update_date)
|
||||||
|
Publisher.subscribe("PushPull", "scroll", PushPull.update_scroll)
|
||||||
application.listen(8888)
|
application.listen(8888)
|
||||||
await asyncio.Event().wait()
|
await asyncio.Event().wait()
|
||||||
|
|
|
||||||
|
|
@ -43,7 +43,7 @@ function module.open()
|
||||||
group = augroup,
|
group = augroup,
|
||||||
buffer = bufnr,
|
buffer = bufnr,
|
||||||
callback = function()
|
callback = function()
|
||||||
server_connection:scroll(vim.fn.line('.'))
|
server_connection:scroll({vim.fn.line('.'), vim.fn.line('$')})
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -77,6 +77,13 @@
|
||||||
Object.entries(data).forEach(([k,v]) => {
|
Object.entries(data).forEach(([k,v]) => {
|
||||||
console.log(k,v);
|
console.log(k,v);
|
||||||
switch (k) {
|
switch (k) {
|
||||||
|
case "scroll":
|
||||||
|
var height = window.innerHeight
|
||||||
|
|| document.documentElement.clientHeight
|
||||||
|
|| document.body.clientHeight;
|
||||||
|
|
||||||
|
window.scrollTo({left : 0, top: height * v, behavior: 'smooth'});
|
||||||
|
break;
|
||||||
case "show":
|
case "show":
|
||||||
change_body(v)
|
change_body(v)
|
||||||
break;
|
break;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user