MiniGUI 3.2.2 Released

The MiniGUI development team announces the availability of MiniGUI 3.2.2. All users of MiniGUI are recommended strongly to use this version. Please report any bugs and incompatibilities in

What's new in this version


    1. New API: SyncUpdateDC. You can use this function to synchronize the update rectangles of a surface to screen, if the surface represents the shadow frame buffer of the screen.
    • configure option: --enable-syncupdate
    • macro: _MGUSE_SYNC_UPDATE
    1. New API UpdateInvalidClient. You can use this function to update the invalid client region of a window instantly.
    2. New API LoadDevFontFromFile. You can use this function to load a device font from incore data.
    3. Use different colors for the output of _DBG_PRINTF and _ERR_PRINTF.
    4. Add __mg_save_jpg function for storing MYBITMAP as JPEG file (10km).
    5. Modified logic for checking JPEG format (10km).
    6. Support BIDI for UNICODE charsets and cleanup the implementation.
    • New API: GetGlyphBIDIType to get the glyph type in BIDI.
    • New DC attribute: BIDI flag.
    1. Add a new key dpi for NEWGAL engine to define the DPI of the screen. If it is absent, use 96 as the default DPI.
    2. Add an item for GetGDCapability to return DPI of the DC.
    3. New API InitSlaveScreenEx to specify the DPI of slave screen. Define InitSlaveScreen as an inline function calling InitSlaveScreenEx.
    4. Enhance commlcd engine to support more pixel type and synchronously update.
    5. New USVFB IAL engine and NEWGAL engine for web display server.
    6. New type: QDWORD for a quauter of DWORD. This type is 16-bit long on 64-bit architecture, and 8-bit long on 32-bit.
    7. New macros for QDWORD:
    • MAKEDWORD: Make a DWROD from four QDWORDs.
    • FIRST_QDWORD: get the first (LSB) QDWORD from a DWORD.
    • SECOND_QDWORD: get the second (LSB) QDWORD from a DWORD.
    • THIRD_QDWORD: get the third (LSB) QDWORD from a DWORD.
    • FOURTH_QDWORD: get the fourth (LSB) QDWORD from a DWORD.
    1. New header for CommLCD NEWGAL engine and COMM IAL engine: .

    1. handle PNG_COLOR_TYPE_GRAY_ALPHA color type of PNG files.
    2. Fix a bug to free a null pointer (ReleaseDC).
    3. No need to make the pitch of FT2 monobitmap is single-byte aligned. This bug may generate dirty dots for monobitmap glyph from TTF.
    4. Skip null pixels for SUBPIXEL glyphs. This bug will always show background pixels of one SUBPIXEL glyph.
    5. Fix the bug of wrong bounding box handling for SUBPIXEL rendering of glyph.
    6. Tune cache implementation of FreeType2 font engine and enable cache for rotated LOGFONT.

Quick Start

If you are anxious to see the comprehensive demo of MiniGUI core and MiniGUI components, please fetch the following repositories from GitHub and follow the instructions to build the samples and the demonstration programs of MiniGUI:


Loading Conversation