Function gtk4::locale_direction

source ·
pub fn locale_direction() -> TextDirection
Expand description

Get the direction of the current locale. This is the expected reading direction for text and UI.

This function depends on the current locale being set with setlocale() and will default to setting the TextDirection::Ltr direction otherwise. TextDirection::None will never be returned.

GTK sets the default text direction according to the locale during gtk_init(), and you should normally use gtk_widget_get_direction() or gtk_widget_get_default_direction() to obtain the current direction.

This function is only needed rare cases when the locale is changed after GTK has already been initialized. In this case, you can use it to update the default text direction as follows:

⚠️ The following code is in C ⚠️

#include <locale.h>

static void
update_locale (const char *new_locale)
{
  setlocale (LC_ALL, new_locale);
  GtkTextDirection direction = gtk_get_locale_direction ();
  gtk_widget_set_default_direction (direction);
}

Returns

the TextDirection of the current locale