Skip to content

Fix Compose handling on big-endian host architectures

Simon McVittie requested to merge wip/smcv/compose-files into master
  • compose: Generate endian-dependent compact Compose data

    The GtkComposeTable cache is always in big-endian format and is byteswapped on load for the more common little-endian CPUs, but init_builtin_table() in GtkIMContextSimple can't byteswap the built-in data without copying it, which is undesirable. Pregenerate both big- and little-endian compose data, and compile the correct flavour into each build of GTK. This fixes failure of the composetable test when building for a big-endian architecture such as s390x and (traditional, big-endian) powerpc.

    Resolves: #4217 (closed)

  • compose: Document how to get compose-parse input from libX11 source

  • compose: Update sequences from libX11 1.7.2

    This adds support for sequences like Compose,G,u -> capital G with breve. Previously, only a capital U was accepted for E, G, I and O (but a lower-case u was accepted for A and U for some reason).

Edited by Simon McVittie

Merge request reports