diff -urNp gtk3-orig/configure.ac gtk3/configure.ac
--- gtk3-orig/configure.ac	2019-10-04 06:19:29.000000000 +0300
+++ gtk3/configure.ac	2019-10-19 06:35:27.711026916 +0300
@@ -55,7 +55,6 @@ m4_define([glib_max_allowed_version], m4
 GLIB_VERSION_CFLAGS="-DGLIB_MIN_REQUIRED_VERSION=glib_min_required_version -DGLIB_MAX_ALLOWED_VERSION=glib_max_allowed_version"
 
 m4_define([pango_required_version], [1.41.0])
-m4_define([fribidi_required_version], [0.19.7])
 m4_define([atk_required_version], [2.32.0])
 m4_define([cairo_required_version], [1.14.0])
 m4_define([gdk_pixbuf_required_version], [2.30.0])
@@ -561,7 +560,6 @@ PKG_CHECK_MODULES(BASE_DEPENDENCIES,
   [glib-2.0 >= glib_required_version dnl
    atk >= atk_required_version dnl
    pango >= pango_required_version dnl
-   fribidi >= fribidi_required_version dnl
    cairo >= cairo_required_version dnl
    cairo-gobject >= cairo_required_version dnl
    gdk-pixbuf-2.0 >= gdk_pixbuf_required_version])
@@ -1339,7 +1337,7 @@ CFLAGS="$saved_cflags"
 LDFLAGS="$saved_ldflags"
 
 GDK_PACKAGES="$PANGO_PACKAGES gdk-pixbuf-2.0 >= gdk_pixbuf_required_version cairo >= cairo_required_version cairo-gobject >= cairo_required_version"
-GDK_PRIVATE_PACKAGES="$GDK_GIO_PACKAGE $X_PACKAGES $WAYLAND_PACKAGES $cairo_backends epoxy >= epoxy_required_version $CLOUDPROVIDER_PACKAGES $PROFILER_PACKAGES fribidi >= fribidi_required_version"
+GDK_PRIVATE_PACKAGES="$GDK_GIO_PACKAGE $X_PACKAGES $WAYLAND_PACKAGES $cairo_backends epoxy >= epoxy_required_version $CLOUDPROVIDER_PACKAGES $PROFILER_PACKAGES"
 
 PKG_CHECK_MODULES(GDK_DEP, $GDK_PACKAGES $GDK_PRIVATE_PACKAGES)
 GDK_DEP_LIBS="$GDK_EXTRA_LIBS $GDK_DEP_LIBS $MATH_LIB"
@@ -1373,7 +1371,7 @@ fi
 PKG_CHECK_MODULES(ATK, $ATK_PACKAGES)
 
 GTK_PACKAGES="atk >= atk_required_version cairo >= cairo_required_version cairo-gobject >= cairo_required_version gdk-pixbuf-2.0 >= gdk_pixbuf_required_version gio-2.0 >= glib_required_version"
-GTK_PRIVATE_PACKAGES="$ATK_PACKAGES $WAYLAND_PACKAGES epoxy >= epoxy_required_version fribidi >= fribidi_required_version"
+GTK_PRIVATE_PACKAGES="$ATK_PACKAGES $WAYLAND_PACKAGES epoxy >= epoxy_required_version"
 if test "x$enable_x11_backend" = xyes -o "x$enable_wayland_backend" = xyes; then
   GTK_PRIVATE_PACKAGES="$GTK_PRIVATE_PACKAGES pangoft2"
 fi
diff -urNp gtk3-orig/gdk/gdk.c gtk3/gdk/gdk.c
--- gtk3-orig/gdk/gdk.c	2019-06-11 18:36:36.000000000 +0300
+++ gtk3/gdk/gdk.c	2019-10-19 06:34:56.670024766 +0300
@@ -44,8 +44,6 @@
 #include <string.h>
 #include <stdlib.h>
 
-#include <fribidi.h>
-
 
 /**
  * SECTION:general
@@ -1126,18 +1124,7 @@ gdk_disable_multidevice (void)
 PangoDirection
 gdk_unichar_direction (gunichar ch)
 {
-  FriBidiCharType fribidi_ch_type;
-
-  G_STATIC_ASSERT (sizeof (FriBidiChar) == sizeof (gunichar));
-
-  fribidi_ch_type = fribidi_get_bidi_type (ch);
-
-  if (!FRIBIDI_IS_STRONG (fribidi_ch_type))
-    return PANGO_DIRECTION_NEUTRAL;
-  else if (FRIBIDI_IS_RTL (fribidi_ch_type))
-    return PANGO_DIRECTION_RTL;
-  else
-    return PANGO_DIRECTION_LTR;
+  return pango_unichar_direction (ch);
 }
 
 #ifdef G_HAS_CONSTRUCTORS
diff -urNp gtk3-orig/gtk/gtkpango.c gtk3/gtk/gtkpango.c
--- gtk3-orig/gtk/gtkpango.c	2019-04-18 17:38:23.000000000 +0300
+++ gtk3/gtk/gtkpango.c	2019-10-19 06:34:56.671024766 +0300
@@ -25,7 +25,6 @@
 #include "config.h"
 #include "gtkpango.h"
 #include <pango/pangocairo.h>
-#include <fribidi.h>
 #include "gtkintl.h"
 
 #define GTK_TYPE_FILL_LAYOUT_RENDERER            (_gtk_fill_layout_renderer_get_type())
@@ -1326,18 +1325,7 @@ _gtk_pango_attr_list_merge (PangoAttrLis
 PangoDirection
 _gtk_pango_unichar_direction (gunichar ch)
 {
-  FriBidiCharType fribidi_ch_type;
-
-  G_STATIC_ASSERT (sizeof (FriBidiChar) == sizeof (gunichar));
-
-  fribidi_ch_type = fribidi_get_bidi_type (ch);
-
-  if (!FRIBIDI_IS_STRONG (fribidi_ch_type))
-    return PANGO_DIRECTION_NEUTRAL;
-  else if (FRIBIDI_IS_RTL (fribidi_ch_type))
-    return PANGO_DIRECTION_RTL;
-  else
-    return PANGO_DIRECTION_LTR;
+  return pango_unichar_direction (ch);
 }
 
 PangoDirection
