From 91f4bc5052c47ce7a4ea4d887f500ee81553e164 Mon Sep 17 00:00:00 2001 From: Mathieu PATUREL Date: Wed, 22 Mar 2017 17:53:07 +1100 Subject: [PATCH] :bug: timeout to update preview --- MarkdownLivePreview.py | 9 +++++---- setting_names.py | 2 +- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/MarkdownLivePreview.py b/MarkdownLivePreview.py index cfbd04e..d89a10c 100644 --- a/MarkdownLivePreview.py +++ b/MarkdownLivePreview.py @@ -48,9 +48,10 @@ class MarkdownLivePreviewListener(sublime_plugin.EventListener): def update(self, view): vsettings = view.settings() now = time.time() - if now - vsettings.get(LAST_RUN, 0) < get_settings().get('update_preview_every'): + + if now - vsettings.get(LAST_UPDATE, 0) < get_settings().get('update_preview_every'): return - vsettings.set(LAST_RUN, now) + vsettings.set(LAST_UPDATE, now) if not vsettings.get(PREVIEW_ENABLED): return id = vsettings.get(PREVIEW_ID) @@ -63,10 +64,10 @@ class MarkdownLivePreviewListener(sublime_plugin.EventListener): show_html(view, preview) return view, preview - def on_modified_async(self, view): + def on_modified(self, view): if not is_markdown_view(view): # faster than getting the settings return - self.update(view) + sublime.set_timeout_async(lambda: self.update(view), get_settings().get('update_preview_every') * 1000) def on_window_command(self, window, command, args): if command == 'close' and window.settings().get(PREVIEW_WINDOW): diff --git a/setting_names.py b/setting_names.py index 13bbc9a..b035dcf 100644 --- a/setting_names.py +++ b/setting_names.py @@ -7,4 +7,4 @@ IS_HIDDEN = 'is_hidden_markdown_live_preview' MD_VIEW_ID = 'markdown_live_preview_md_id' PREVIEW_WINDOW = 'markdown_live_preview_window' ON_OPEN = 'markdown_live_preview_on_open' -LAST_RUN = 'markdonw_live_preview_last_run' +LAST_UPDATE = 'markdonw_live_preview_last_run'