summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-accessibility/caribou/files')
-rw-r--r--app-accessibility/caribou/files/caribou-change_autostart_cinnamon.patch13
-rw-r--r--app-accessibility/caribou/files/caribou-drop_gir_patch.patch117
-rw-r--r--app-accessibility/caribou/files/caribou-fix-antler-style-css.patch26
-rw-r--r--app-accessibility/caribou/files/caribou-fix-compilation-error.patch25
-rw-r--r--app-accessibility/caribou/files/caribou-fix-python-env.patch58
-rw-r--r--app-accessibility/caribou/files/caribou-fix-subkey-popmenu.patch32
-rw-r--r--app-accessibility/caribou/files/caribou-fix-xadapter-xkb-calls.patch46
7 files changed, 317 insertions, 0 deletions
diff --git a/app-accessibility/caribou/files/caribou-change_autostart_cinnamon.patch b/app-accessibility/caribou/files/caribou-change_autostart_cinnamon.patch
new file mode 100644
index 000000000000..f55ddd276e7d
--- /dev/null
+++ b/app-accessibility/caribou/files/caribou-change_autostart_cinnamon.patch
@@ -0,0 +1,13 @@
+--- a/data/caribou-autostart.desktop.in.in
++++ b/data/caribou-autostart.desktop.in.in
+@@ -2,7 +2,7 @@
+ Type=Application
+ Name=Caribou
+ Exec=@libexecdir@/caribou
+-AutostartCondition=GSettings org.gnome.desktop.a11y.applications screen-keyboard-enabled
++AutostartCondition=GSettings org.cinnamon.desktop.a11y.applications screen-keyboard-enabled
+ X-GNOME-AutoRestart=true
+ #X-GNOME-Autostart-Phase=Initialization
+-OnlyShowIn=GNOME;Unity;
++OnlyShowIn=X-Cinnamon;
+
diff --git a/app-accessibility/caribou/files/caribou-drop_gir_patch.patch b/app-accessibility/caribou/files/caribou-drop_gir_patch.patch
new file mode 100644
index 000000000000..bbcf1ddee9e5
--- /dev/null
+++ b/app-accessibility/caribou/files/caribou-drop_gir_patch.patch
@@ -0,0 +1,117 @@
+From c52ce71c49dc8d6109a58d16cc8d491d7bd1d781 Mon Sep 17 00:00:00 2001
+From: Rico Tzschichholz <ricotz@ubuntu.com>
+Date: Wed, 20 Jan 2021 22:59:49 +0100
+Subject: [PATCH] Stop patching the generated GIR
+
+---
+ libcaribou/Makefile.am | 8 ++-----
+ tools/Makefile.am | 1 -
+ tools/fix_gir.py | 53 ------------------------------------------
+ 3 files changed, 2 insertions(+), 60 deletions(-)
+ delete mode 100755 tools/fix_gir.py
+
+diff --git a/libcaribou/Makefile.am b/libcaribou/Makefile.am
+index 05f2774..0634374 100644
+--- a/libcaribou/Makefile.am
++++ b/libcaribou/Makefile.am
+@@ -7,7 +7,7 @@ libcaribou_la_VALAFLAGS = \
+ --pkg xtst --pkg gee-0.8 --pkg gdk-x11-3.0 --pkg libxml-2.0 \
+ --pkg libxklavier --pkg external-libs \
+ --internal-vapi caribou-internals-1.0.vapi \
+- --library caribou-1.0 --gir _Caribou-1.0.gir \
++ --library caribou-1.0 --gir Caribou-1.0.gir \
+ --symbols libcaribou.symbols \
+ $(VALAFLAGS)
+
+@@ -63,9 +63,6 @@ gir_DATA = Caribou-1.0.gir
+ typelibdir = $(libdir)/girepository-1.0
+ typelib_DATA = Caribou-1.0.typelib
+
+-Caribou-1.0.gir: _Caribou-1.0.gir
+- $(AM_V_GEN)$(PYTHON) -B $(top_srcdir)/tools/fix_gir.py $< > $@
+-
+ Caribou-1.0.typelib: Caribou-1.0.gir
+ @INTROSPECTION_COMPILER@ --shared-library=libcaribou.so.0 -o $@ $^
+
+@@ -81,8 +78,7 @@ CLEANFILES = \
+ caribou-1.0.vapi \
+ caribou-internals-1.0.vapi \
+ Caribou-1.0.typelib \
+- Caribou-1.0.gir \
+- _Caribou-1.0.gir
++ Caribou-1.0.gir
+
+ DISTCLEANFILES = \
+ caribou-1.0.pc
+diff --git a/tools/Makefile.am b/tools/Makefile.am
+index 3a9bcdb..89f753d 100644
+--- a/tools/Makefile.am
++++ b/tools/Makefile.am
+@@ -1,5 +1,4 @@
+ EXTRA_DIST = \
+- fix_gir.py \
+ make_schema.py \
+ convert_cldr.py \
+ basic.xsl
+diff --git a/tools/fix_gir.py b/tools/fix_gir.py
+deleted file mode 100755
+index 182d108..0000000
+--- a/tools/fix_gir.py
++++ /dev/null
+@@ -1,53 +0,0 @@
+-#!/usr/bin/python
+-
+-from xml.dom import minidom
+-
+-def purge_white_space_and_fix_namespace(node, indent=0):
+- if getattr(node, "tagName", None) == "namespace":
+- name = node.getAttribute("name")
+- node.setAttribute("name", name.lstrip('_'))
+- for child in [c for c in node.childNodes]:
+- if child.nodeType == node.TEXT_NODE or \
+- getattr(child, "tagName", None) == "annotation":
+- node.removeChild(child)
+- continue
+- purge_white_space_and_fix_namespace(child, indent+1)
+-
+-def find_ancestor(node, name):
+- if getattr(node, "tagName", None) == name:
+- return node
+- parent = getattr(node, "parentNode", None)
+- if not parent:
+- return None
+- return find_ancestor(parent, name)
+-
+-def fix_vfuncs(dom):
+- for f in dom.getElementsByTagName("field"):
+- callbacks = f.getElementsByTagName("callback")
+-
+- record = find_ancestor(f, "record")
+- if not record:
+- continue
+-
+- name = record.getAttribute("name")
+- cname = record.getAttribute("c:type")
+-
+- assert(name.endswith("Class") or name.endswith("Iface"))
+- assert(cname.endswith("Class") or name.endswith("Iface"))
+-
+- if len(callbacks) == 2:
+- callbacks[-1].parentNode.removeChild(callbacks[-1])
+-
+-if __name__ == "__main__":
+- import sys
+-
+- if len(sys.argv) != 2:
+- print("supply a gir file")
+- sys.exit(1)
+-
+- dom = minidom.parse(sys.argv[-1])
+-
+- purge_white_space_and_fix_namespace(dom)
+- fix_vfuncs(dom)
+-
+- print(dom.toprettyxml(indent=" ", newl="\n"))
+--
+GitLab
+
diff --git a/app-accessibility/caribou/files/caribou-fix-antler-style-css.patch b/app-accessibility/caribou/files/caribou-fix-antler-style-css.patch
new file mode 100644
index 000000000000..4c4486bb7889
--- /dev/null
+++ b/app-accessibility/caribou/files/caribou-fix-antler-style-css.patch
@@ -0,0 +1,26 @@
+From 13df8b92ae89c796238e669ee6ef4447a42d6355 Mon Sep 17 00:00:00 2001
+From: Jeremy Bicha <jbicha@ubuntu.com>
+Date: Fri, 1 Dec 2017 12:11:35 -0500
+Subject: [PATCH] style.css: Fix failure to start in GNOME Flashback
+
+The order for 'font' properties matters
+https://developer.gnome.org/gtk3/stable/chap-css-properties.html
+
+https://bugzilla.gnome.org/show_bug.cgi?id=791001
+---
+ data/antler/style.css | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/data/antler/style.css b/data/antler/style.css
+index 5ab6f71..4d84904 100644
+--- a/data/antler/style.css
++++ b/data/antler/style.css
+@@ -13,7 +13,7 @@
+ border-width: 0px;
+ border-radius: 2px;
+ border-image: url("dark-key-border.svg") 2 2 2 2 repeat stretch;
+- font: Sans 14px;
++ font: 14px Sans;
+ background-image: -gtk-gradient (linear,
+ left top,
+ left bottom,
diff --git a/app-accessibility/caribou/files/caribou-fix-compilation-error.patch b/app-accessibility/caribou/files/caribou-fix-compilation-error.patch
new file mode 100644
index 000000000000..d427cd35a111
--- /dev/null
+++ b/app-accessibility/caribou/files/caribou-fix-compilation-error.patch
@@ -0,0 +1,25 @@
+From bc6f3e7ca0921b50a3ff836d08ce264a4f114224 Mon Sep 17 00:00:00 2001
+From: Clement Lefebvre <clement.lefebvre@linuxmint.com>
+Date: Tue, 12 Jan 2021 17:29:16 +0000
+Subject: [PATCH 1/4] Fix compilation error
+
+---
+ libcaribou/key-model.vala | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/libcaribou/key-model.vala b/libcaribou/key-model.vala
+index 89015bc..e88342e 100644
+--- a/libcaribou/key-model.vala
++++ b/libcaribou/key-model.vala
+@@ -101,7 +101,7 @@ namespace Caribou {
+ unichar uc;
+ while (text.get_next_char (ref index, out uc)) {
+ uint keyval = Gdk.unicode_to_keyval (uc);
+- if (keyval != uc | 0x01000000)
++ if (keyval != (uc | 0x01000000))
+ _keyvals += keyval;
+ }
+ } else {
+--
+2.29.2
+
diff --git a/app-accessibility/caribou/files/caribou-fix-python-env.patch b/app-accessibility/caribou/files/caribou-fix-python-env.patch
new file mode 100644
index 000000000000..3a0b26698fa3
--- /dev/null
+++ b/app-accessibility/caribou/files/caribou-fix-python-env.patch
@@ -0,0 +1,58 @@
+--- a/bin/antler-keyboard.in
++++ b/bin/antler-keyboard.in
+@@ -18,24 +18,4 @@
+ # along with this program; if not, write to the Free Software Foundation,
+ # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+
+-script_dir="$(dirname "$(readlink -f ${0})")"
+-
+-prefix=@prefix@
+-exec_prefix=@exec_prefix@
+-datarootdir=@datarootdir@
+-
+-if [ $script_dir = "@libexecdir@" ]
+-then
+- datadir="$(@PYTHON@ -c "from gi.repository import GLib; print(':'.join(GLib.get_system_data_dirs()))")"
+- export PYTHONPATH="${prefix}/lib/python@PYTHON_VERSION@/site-packages:${prefix}/lib64/python@PYTHON_VERSION@/site-packages${PYTHONPATH:+:$PYTHONPATH}"
+- export GI_TYPELIB_PATH="@libdir@/girepository-1.0${GI_TYPELIB_PATH:+:$GI_TYPELIB_PATH}"
+- export LD_LIBRARY_PATH="@libdir@${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"
+- export XDG_DATA_DIRS="@datadir@${datadir:+:$datadir}"
+-else
+- export PYTHONPATH="$(dirname $script_dir)${PYTHONPATH:+:$PYTHONPATH}"
+- export GI_TYPELIB_PATH="$(dirname $script_dir)/libcaribou${GI_TYPELIB_PATH:+:$GI_TYPELIB_PATH}"
+- export LD_LIBRARY_PATH="$(dirname $script_dir)/libcaribou/.libs${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"
+- export ANTLER_THEME_PATH="$(dirname $script_dir)/data"
+-fi
+-
+-@PYTHON@ -m caribou.antler.main "$@"
++exec @PYTHON@ -m caribou.antler.main "$@"
+--- a/bin/caribou-preferences.in
++++ b/bin/caribou-preferences.in
+@@ -18,26 +18,7 @@
+ # along with this program; if not, write to the Free Software Foundation,
+ # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+
+-script_dir="$(dirname "$(readlink -f ${0})")"
+-
+-prefix=@prefix@
+-exec_prefix=@exec_prefix@
+-datarootdir=@datarootdir@
+-
+-if [ $script_dir = "@bindir@" ]
+-then
+- datadir="$(@PYTHON@ -c "from gi.repository import GLib; print(':'.join(GLib.get_system_data_dirs()))")"
+- export PYTHONPATH="@prefix@/lib/python@PYTHON_VERSION@/site-packages${PYTHONPATH:+:$PYTHONPATH}"
+- export GI_TYPELIB_PATH="@libdir@/girepository-1.0${GI_TYPELIB_PATH:+:$GI_TYPELIB_PATH}"
+- export LD_LIBRARY_PATH="@libdir@${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"
+- export XDG_DATA_DIRS="@datadir@${datadir:+:$datadir}"
+-else
+- export PYTHONPATH="$(dirname $script_dir)${PYTHONPATH:+:$PYTHONPATH}"
+- export GI_TYPELIB_PATH="$(dirname $script_dir)/libcaribou${GI_TYPELIB_PATH:+:$GI_TYPELIB_PATH}"
+- export LD_LIBRARY_PATH="$(dirname $script_dir)/libcaribou/.lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"
+-fi
+-
+-@PYTHON@ -c "
++exec @PYTHON@ -c "
+ import signal
+ signal.signal(signal.SIGINT, signal.SIG_DFL)
+
diff --git a/app-accessibility/caribou/files/caribou-fix-subkey-popmenu.patch b/app-accessibility/caribou/files/caribou-fix-subkey-popmenu.patch
new file mode 100644
index 000000000000..ffd4423c2986
--- /dev/null
+++ b/app-accessibility/caribou/files/caribou-fix-subkey-popmenu.patch
@@ -0,0 +1,32 @@
+From 85ac8f9e210243d95163cf8b1013470a6d9c7eaa Mon Sep 17 00:00:00 2001
+From: Clement Lefebvre <clement.lefebvre@linuxmint.com>
+Date: Tue, 12 Jan 2021 17:30:25 +0000
+Subject: [PATCH 2/4] Fix subkey popmenu not showing after being dismissed
+
+To reproduce the issue:
+
+- long-press the "e" button
+- don't select any sub button.. just select "e" again to close the menu
+
+After this the menu no long appears when long-pressing "e".
+
+This commit fixes that.
+---
+ libcaribou/key-model.vala | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/libcaribou/key-model.vala b/libcaribou/key-model.vala
+index e88342e..2f640f2 100644
+--- a/libcaribou/key-model.vala
++++ b/libcaribou/key-model.vala
+@@ -179,6 +179,7 @@ namespace Caribou {
+ hold_tid = GLib.Timeout.add (1000, on_key_held);
+
+ key_pressed(this);
++ show_subkeys = false;
+ }
+
+ public void release () {
+--
+2.29.2
+
diff --git a/app-accessibility/caribou/files/caribou-fix-xadapter-xkb-calls.patch b/app-accessibility/caribou/files/caribou-fix-xadapter-xkb-calls.patch
new file mode 100644
index 000000000000..bcb2a19c3d07
--- /dev/null
+++ b/app-accessibility/caribou/files/caribou-fix-xadapter-xkb-calls.patch
@@ -0,0 +1,46 @@
+From 00653c5dcc4be5e983b670d00d5724fc21da2e82 Mon Sep 17 00:00:00 2001
+From: Clement Lefebvre <clement.lefebvre@linuxmint.com>
+Date: Tue, 12 Jan 2021 18:01:47 +0000
+Subject: [PATCH 3/4] [mtwebster] xadapter.vala: Remove XkbKeyTypesMask and
+ fields from XKbChangeMap call.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This was originally a workaround for xFree86 4.3 - see:
+https://bugzilla.gnome.org/show_bug.cgi?id=673547
+​
+As of https://gitlab.freedesktop.org/xorg/xserver/-/commit/87c64fc5b0 this
+causes a BadLength error when attempting to use shifted characters.
+​
+Ref:
+https://www.x.org/releases/X11R7.7/doc/libX11/XKB/xkblib.html#Changing_Map_Components_in_the_Server
+---
+ libcaribou/xadapter.vala | 9 ++-------
+ 1 file changed, 2 insertions(+), 7 deletions(-)
+
+diff --git a/libcaribou/xadapter.vala b/libcaribou/xadapter.vala
+index 22858b7..1da5a78 100644
+--- a/libcaribou/xadapter.vala
++++ b/libcaribou/xadapter.vala
+@@ -195,15 +195,10 @@ namespace Caribou {
+
+ Xkb.MapChanges changes = Xkb.MapChanges ();
+
+- // We don't touch key types here but include the
+- // information in XkbSetMap request to the server, because
+- // some X servers need the information to check the sanity
+- // of the keysyms change.
+- changes.changed = (ushort) (Xkb.KeySymsMask | Xkb.KeyTypesMask);
++ changes.changed = (ushort) Xkb.KeySymsMask;
+ changes.first_key_sym = (char) this.reserved_keycode;
+ changes.num_key_syms = this.xkbdesc.map.key_sym_map[this.reserved_keycode].width;
+- changes.first_type = 0;
+- changes.num_types = this.xkbdesc.map.num_types;
++
+ Xkb.change_map (this.xdisplay, this.xkbdesc, changes);
+
+ this.xdisplay.flush ();
+--
+2.29.2
+