diff options
Diffstat (limited to '0004-fixes-175-Live-Preview-Mode-Executes-JavaScript.patch')
-rw-r--r-- | 0004-fixes-175-Live-Preview-Mode-Executes-JavaScript.patch | 98 |
1 files changed, 98 insertions, 0 deletions
diff --git a/0004-fixes-175-Live-Preview-Mode-Executes-JavaScript.patch b/0004-fixes-175-Live-Preview-Mode-Executes-JavaScript.patch new file mode 100644 index 000000000000..6b0524dc247c --- /dev/null +++ b/0004-fixes-175-Live-Preview-Mode-Executes-JavaScript.patch @@ -0,0 +1,98 @@ +From 2cce6ea49696927300d324637255d3c2cd377e8b Mon Sep 17 00:00:00 2001 +From: Harald Weiner <timeraider@gmx.at> +Date: Fri, 28 Jul 2017 07:07:57 +0200 +Subject: [PATCH 4/4] fixes #175 (Live Preview Mode Executes JavaScript) + +--- + data/ui/RemarkableWindow.ui | 9 +++++++++ + remarkable/RemarkableWindow.py | 26 ++++++++++++++++++++++---- + 2 files changed, 31 insertions(+), 4 deletions(-) + +diff --git a/data/ui/RemarkableWindow.ui b/data/ui/RemarkableWindow.ui +index ab0007c..ca2396e 100644 +--- a/data/ui/RemarkableWindow.ui ++++ b/data/ui/RemarkableWindow.ui +@@ -405,6 +405,15 @@ + <property name="active">True</property> + </object> + </child> ++ <child> ++ <object class="GtkCheckMenuItem" id="menuitem_js"> ++ <property name="visible">True</property> ++ <property name="can_focus">False</property> ++ <property name="label" translatable="yes">Enable Java-Script</property> ++ <property name="use_underline">True</property> ++ <property name="active">True</property> ++ </object> ++ </child> + <child> + <object class="GtkCheckMenuItem" id="menuitem_vertical_layout"> + <property name="visible">True</property> +diff --git a/remarkable/RemarkableWindow.py b/remarkable/RemarkableWindow.py +index ea00be9..c15886a 100644 +--- a/remarkable/RemarkableWindow.py ++++ b/remarkable/RemarkableWindow.py +@@ -114,8 +114,8 @@ class RemarkableWindow(Window): + self.text_view.set_buffer(self.text_buffer) + self.text_view.set_wrap_mode(Gtk.WrapMode.WORD) + +- my_settings = self.create_webkit_settings() +- self.live_preview = WebKit2.WebView.new_with_settings(my_settings) ++ self.webkit_settings = self.create_webkit_settings() ++ self.live_preview = WebKit2.WebView.new_with_settings(self.webkit_settings) + self.zoom_out(self.live_preview) + + self.scrolledwindow_text_view = Gtk.ScrolledWindow() +@@ -199,7 +199,8 @@ class RemarkableWindow(Window): + if not os.path.isfile(self.settings_path): + self.remarkable_settings = {} + self.remarkable_settings['css'] = '' +- self.remarkable_settings['font'] = "Sans 10" ++ self.remarkable_settings['font'] = "Sans 10" ++ self.remarkable_settings['js'] = True + self.remarkable_settings['line-numbers'] = True + self.remarkable_settings['live-preview'] = True + self.remarkable_settings['nightmode'] = False +@@ -234,6 +235,12 @@ class RemarkableWindow(Window): + # Disable word wrap on startup + self.builder.get_object("menuitem_word_wrap").set_active(False) + self.on_menuitem_word_wrap_activate(self) ++ ++ if not 'js' in self.remarkable_settings: ++ self.remarkable_settings['js'] = True ++ if self.remarkable_settings['js'] == False: ++ # Disable Live Preview on startup ++ self.builder.get_object("menuitem_js").set_active(False) + + if self.remarkable_settings['live-preview'] == False: + # Disable Live Preview on startup +@@ -812,7 +819,16 @@ class RemarkableWindow(Window): + self.builder.get_object("toolbar1").set_visible(True) + self.update_live_preview(self) + self.write_settings() +- ++ ++ def on_menuitem_js_activate(self, widget): ++ self.toggle_js(self) ++ ++ def toggle_js(self, widget): ++ state = self.webkit_settings.get_enable_javascript() ++ state = not state ++ self.remarkable_settings['js'] = state ++ self.webkit_settings.set_enable_javascript(state) ++ self.write_settings() + + def on_menuitem_swap_activate(self, widget): + if self.live_preview.get_visible(): +@@ -1456,6 +1472,8 @@ class RemarkableWindow(Window): + def create_webkit_settings(self): + result = WebKit2.Settings() + result.set_enable_write_console_messages_to_stdout(False) # Suppress .js output ++ #js = self.remarkable_settings['js'] ++ result.set_enable_javascript(True) # JS-Kill-Switch for issue #175 + return result + + """ +-- +2.16.2 + |