summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorMikael Blomstrand2018-08-09 12:53:46 +0200
committerMikael Blomstrand2018-08-09 12:53:46 +0200
commit68a65b00f548dbbfe5772561dc9b078adc829f7d (patch)
tree250910f8c394d8e40a99f05755c780cbd019f592
parent5a68b208e3cee98ec9fd776098602b33c7f05146 (diff)
downloadaur-68a65b00f548dbbfe5772561dc9b078adc829f7d.tar.gz
patch changed on github for some reason.
-rw-r--r--.SRCINFO3
-rw-r--r--PKGBUILD2
-rw-r--r--stable.patch272
3 files changed, 274 insertions, 3 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 2d6fa6686769..867bbe6af5cf 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -18,12 +18,11 @@ pkgbase = remarkable
depends = gtksourceview3
optdepends = python-lxml: export to HTML format support
optdepends = python-gtkspellcheck: Spellcheck (might cause problems)
- replaces = remarkable-webkit2gtk
source = https://github.com/jamiemcg/Remarkable/archive/v1.87.tar.gz
source = stable.patch::https://github.com/jamiemcg/Remarkable/compare/v1.87...mbloms:stable.patch
source = remarkable.install
sha1sums = a492dc5d0a276f36846a99287ae93c02e22a5cd8
- sha1sums = c91182e1521927e02328eb407a4e4f1ad910d16d
+ sha1sums = 8c052787c16a81b9d4c325d2270cdd3412951f6c
sha1sums = bdbfb750df9e5fb3022f47a46a80555259628cd1
pkgname = remarkable
diff --git a/PKGBUILD b/PKGBUILD
index d9bfcb4d9603..9c36ccc61b77 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -29,7 +29,7 @@ source=("https://github.com/jamiemcg/Remarkable/archive/v${pkgver}.tar.gz"
"remarkable.install")
sha1sums=('a492dc5d0a276f36846a99287ae93c02e22a5cd8'
- 'c91182e1521927e02328eb407a4e4f1ad910d16d'
+ '8c052787c16a81b9d4c325d2270cdd3412951f6c'
'bdbfb750df9e5fb3022f47a46a80555259628cd1')
prepare() {
diff --git a/stable.patch b/stable.patch
new file mode 100644
index 000000000000..ea7f0c26471a
--- /dev/null
+++ b/stable.patch
@@ -0,0 +1,272 @@
+From 926171f6343b6420b532140dd2f4dc2e43fd9d2c Mon Sep 17 00:00:00 2001
+From: Harald Weiner <timeraider@gmx.at>
+Date: Sun, 23 Jul 2017 02:14:23 +0200
+Subject: [PATCH 1/4] fixes #184 (port to WebKit2Gtk)
+
+---
+ remarkable/RemarkableWindow.py | 63 +++++++++++++++++++++++++---------
+ 1 file changed, 47 insertions(+), 16 deletions(-)
+
+diff --git a/remarkable/RemarkableWindow.py b/remarkable/RemarkableWindow.py
+index ffbc70b..893dc27 100644
+--- a/remarkable/RemarkableWindow.py
++++ b/remarkable/RemarkableWindow.py
+@@ -24,10 +24,10 @@
+ import gi
+ gi.require_version('Gtk', '3.0')
+ gi.require_version('GtkSource', '3.0')
+-gi.require_version('WebKit', '3.0')
++gi.require_version('WebKit2', '4.0')
+
+ from bs4 import BeautifulSoup
+-from gi.repository import Gdk, Gtk, GtkSource, Pango, WebKit
++from gi.repository import Gdk, Gtk, GtkSource, Pango, WebKit2
+ from locale import gettext as _
+ from urllib.request import urlopen
+ import markdown
+@@ -113,10 +113,10 @@ def finish_initializing(self, builder): # pylint: disable=E1002
+ self.text_buffer.connect("changed", self.on_text_view_changed)
+ self.text_view.set_buffer(self.text_buffer)
+ self.text_view.set_wrap_mode(Gtk.WrapMode.WORD)
+-
+- self.live_preview = WebKit.WebView()
+- self.live_preview.connect("console-message", self._javascript_console_message) # Suppress .js output
+- self.live_preview.zoom_out()
++
++ my_settings = self.create_webkit_settings()
++ self.live_preview = WebKit2.WebView.new_with_settings(my_settings)
++ self.zoom_out(self.live_preview)
+
+ self.scrolledwindow_text_view = Gtk.ScrolledWindow()
+ self.scrolledwindow_text_view.add(self.text_view)
+@@ -624,11 +624,11 @@ def on_toolbutton_redo_clicked(self, widget):
+ self.redo(self)
+
+ def on_toolbutton_zoom_in_clicked(self, widget):
+- self.live_preview.zoom_in()
++ self.zoom_in(self.live_preview)
+ self.scrollPreviewToFix(self)
+
+ def on_toolbutton_zoom_out_clicked(self, widget):
+- self.live_preview.zoom_out()
++ self.zoom_out(self.live_preview)
+ self.scrollPreviewToFix(self)
+
+ def redo(self, widget):
+@@ -1249,7 +1249,7 @@ def on_menuitem_handwritten_activate(self, widget):
+ styles.css = styles.handwriting_css
+ self.update_style(self)
+ self.update_live_preview(self)
+- self.live_preview.zoom_in()
++ self.zoom_in(self.live_preview)
+ self.remarkable_settings['style'] = "handwriting_css"
+ self.write_settings()
+
+@@ -1347,12 +1347,12 @@ def on_menuitem_feedback_activate(self, widget):
+ window_feedback.set_title("Feedback Form")
+ window_feedback.set_default_size(640, 640)
+ window_feedback.set_position(Gtk.WindowPosition.CENTER)
+- feedback_browser = WebKit.WebView()
+- feedback_browser.connect("console-message", self._javascript_console_message) # Suppress .js output
++ my_settings = self.create_webkit_settings()
++ feedback_browser = WebKit2.WebView.new_with_settings(my_settings)
+ feedback_scroller = Gtk.ScrolledWindow()
+ feedback_scroller.add(feedback_browser)
+ window_feedback.add(feedback_scroller)
+- feedback_browser.open("https://jamiemcgowan.typeform.com/to/ng5Lhc")
++ feedback_browser.load_uri("https://jamiemcgowan.typeform.com/to/ng5Lhc")
+ window_feedback.show_all()
+
+ def on_menuitem_about_activate(self, widget):
+@@ -1443,14 +1443,45 @@ def update_live_preview(self, widet):
+ html = self.default_html_start + html_middle + self.default_html_end
+
+ # Update the display, supporting relative paths to local images
+- self.live_preview.load_string(html, "text/html", "utf-8", "file://{}".format(os.path.abspath(self.name)))
++ self.live_preview.load_html(html, "file://{}".format(os.path.abspath(self.name)))
+
+ """
+- This function suppresses the messages from the WebKit (live preview) console
++ This function returns WebKit settings instance to suppress
++ the messages from the WebKit (live preview) console
+ """
+- def _javascript_console_message(self, view, message, line, sourceid):
+- return True
++ def create_webkit_settings(self):
++ result = WebKit2.Settings()
++ result.set_enable_write_console_messages_to_stdout(False) # Suppress .js output
++ return result
+
++ """
++ This function implements zoom_in for WebKit2.WebView
++ """
++ def zoom_in(self, webView):
++ zoom_level = webView.get_zoom_level()
++ zoom_level = zoom_level + self.get_zoom_step()
++ webView.set_zoom_level(zoom_level)
++
++ """
++ This function implements zoom_out for WebKit2.WebView
++ """
++ def zoom_out(self, webView):
++ zoom_level = webView.get_zoom_level()
++ zoom_level = zoom_level - self.get_zoom_step()
++ webView.set_zoom_level(zoom_level)
++
++ """
++ This function returns the same magic number as in previous WebKit API:
++ https://lazka.github.io/pgi-docs/WebKit-3.0/classes/WebSettings.html#WebKit.WebSettings.props.zoom_step
++ """
++ def get_zoom_step(self):
++ return 0.10000000149011612
++
++ """
++ This function resets the zoom_level to the default value
++ """
++ def reset_zoom_level(self, webView):
++ webView.set_zoom_level(1.0)
+
+ """
+ This function deletes any temporary files that were created during execution
+
+From 63dc24917dfd36d7c4a7265dc3a0020deb75593c Mon Sep 17 00:00:00 2001
+From: Harald Weiner <timeraider@gmx.at>
+Date: Fri, 28 Jul 2017 07:07:57 +0200
+Subject: [PATCH 2/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 893dc27..6856042 100644
+--- a/remarkable/RemarkableWindow.py
++++ b/remarkable/RemarkableWindow.py
+@@ -114,8 +114,8 @@ def finish_initializing(self, builder): # pylint: disable=E1002
+ 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 @@ def check_settings(self):
+ 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 @@ def load_settings(self):
+ # 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
+@@ -810,7 +817,16 @@ def toggle_live_preview(self, widget):
+ 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():
+@@ -1452,6 +1468,8 @@ def update_live_preview(self, widet):
+ 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
+
+ """
+
+From 1b05770885a1bbfc8b21fdb877267b4bf9fb5e88 Mon Sep 17 00:00:00 2001
+From: Mikael Blomstrand <mbloms@kth.se>
+Date: Wed, 4 Apr 2018 13:07:30 +0200
+Subject: [PATCH 3/4] Spellcheck error message adapted to arch.
+
+---
+ remarkable/RemarkableWindow.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/remarkable/RemarkableWindow.py b/remarkable/RemarkableWindow.py
+index 6856042..a77f74c 100644
+--- a/remarkable/RemarkableWindow.py
++++ b/remarkable/RemarkableWindow.py
+@@ -47,7 +47,7 @@
+ from gtkspellcheck import SpellChecker
+ spellcheck_enabled = True
+ except:
+- print("*Spellchecking not enabled.\n*To enable spellchecking install pygtkspellcheck\n*https://pypi.python.org/pypi/pygtkspellcheck/")
++ print("*Spellchecking not enabled.\n*To enable spellchecking install python-gtkspellcheck.\npacman -S --asdeps python-gtkspellcheck")
+ spellcheck_enabled = False
+
+ import logging
+
+From eb33c22a6bf4100443b75e33e9897a85ad09d014 Mon Sep 17 00:00:00 2001
+From: Mikael Blomstrand <mbloms@kth.se>
+Date: Wed, 4 Apr 2018 13:12:26 +0200
+Subject: [PATCH 4/4] `import styles` correctly
+
+---
+ remarkable/RemarkableWindow.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/remarkable/RemarkableWindow.py b/remarkable/RemarkableWindow.py
+index a77f74c..e838330 100644
+--- a/remarkable/RemarkableWindow.py
++++ b/remarkable/RemarkableWindow.py
+@@ -36,7 +36,7 @@
+ import re, subprocess, datetime, os, webbrowser, _thread, sys, locale
+ import tempfile
+ import traceback
+-import styles
++from remarkable import styles
+ import unicodedata
+ import warnings
+ import datetime