As v9 is a major version it contains API breaking changes too. Most of the conceptual changes in v9 were internal, however the API was affected some widgets reword and refactoring as well.
-:cpp:func:`lv_display_set_buffers(display, buf1, buf2, buf_size_byte, mode)` is more or less the equivalent of ``lv_disp_draw_buf_init(&draw_buf_dsc, buf1, buf2, buf_size_px)`` from v8, however in **v9 the buffer size is set in bytes**.
- Be sure ``<stdint.h>`` is **not** included in ``lv_conf.h``. In v9 we have some assembly parts for even better performance and a random include there would mess up the assembly part.
- The online image converter in not updated yet. Until that use `LVGLImage.py <https://github.com/lvgl/lvgl/blob/master/scripts/LVGLImage.py>`__ .
- Built in display and touch driver: SDL, Linux Frame buffer, NuttX LCD and touch drivers, ST7789 and ILI9341 driver are available and more will come soon
- GitHub CodeSpace integration makes possible to run LVGL in an Online VSCode editor with 3 click. See more `here <https://blog.lvgl.io/2023-04-13/monthly-newsletter>`__
- Add vector graphics support via ThorVG. It can be used to draw vector graphics to a `Canvas <https://github.com/lvgl/lvgl/blob/master/examples/widgets/canvas/lv_example_canvas_8.c>`__
Although `lv_api_map.h <https://github.com/lvgl/lvgl/blob/master/src/lv_api_map.h>`__ address most of the refactoring we encourage you to use the latest API directly.
-``lv_disp_...`` is renamed to ``lv_display_...``
-``btn_...`` is renamed to ``button_...``
-``btnmatrix_...`` is renamed to ``buttonmatrix_...``
-``img_...`` is renamed to ``image_...``
-``zoom`` is renamed to ``scale``
-``angle`` is renamed to ``rotation``
-``scr`` is renamed to ``screen``
-``act`` is renamed to ``active``
-``del`` is renamed to ``delete``
-``col`` is renamed to ``column``
-``lv_obj_clear_flag`` is renamed to ``lv_obj_remove_flag``
-``lv_obj_clear_state`` is renamed to ``lv_obj_remove_state``
-``lv_coord_t`` was removed and replaced by ``int32_t``
New color format management
---------------------------
-``LV_IMG_CF_...`` was replaced by ``LV_COLOR_FORMAT_...``
-``LV_COLOR_DEPTH 24`` is supported for RGB888 rendering
-``lv_color_t`` always means RGB888
Display API
-----------
-``lv_disp_drv_t`` and ``lv_disp_draw_buf_t`` was removed