diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 09a10b2..c78994d 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -8,7 +8,7 @@ jobs: strategy: matrix: - api-version: ["6.0", "6.5", "8.0"] + api-version: ["6.0", "6.5", "8.0", "11.0"] arch: [arm, arm64, x86, x64] include: - arch: arm @@ -19,6 +19,9 @@ jobs: triple: i686-linux-gnu - arch: x64 triple: x86-64-linux-gnu + - api-version: "11.0" + use_tcore: true + suffix: _tcore exclude: - api-version: "6.0" arch: x64 @@ -30,6 +33,8 @@ jobs: arch: arm64 - api-version: "8.0" arch: x86 + - api-version: "11.0" + arch: x86 steps: - uses: actions/checkout@v4 @@ -66,46 +71,54 @@ jobs: --target-toolchain /usr/lib/llvm-17 \ --target-sysroot src/sysroot-${{ matrix.api-version }}/${{ matrix.arch }} \ --api-version ${{ matrix.api-version }} \ + ${{ matrix.use_tcore && '--use-tcore' || '' }} \ --target-dir build ninja -C src/out/build + - name: Rename tcore artifacts + if: ${{ matrix.use_tcore }} + run: | + for library in src/out/build/libflutter_tizen*.so src/out/build/so.unstripped/libflutter_tizen*.so; do + mv "$library" "${library%.so}_tcore.so" + done + - uses: actions/upload-artifact@v4 with: - name: tizen-${{ matrix.api-version }}-${{ matrix.arch }} + name: tizen-${{ matrix.api-version }}-${{ matrix.arch }}${{ matrix.suffix }} path: | - src/out/build/libflutter_tizen_common.so - src/out/build/libflutter_tizen_mobile.so - src/out/build/libflutter_tizen_tv.so + src/out/build/libflutter_tizen_common${{ matrix.suffix }}.so + src/out/build/libflutter_tizen_mobile${{ matrix.suffix }}.so + src/out/build/libflutter_tizen_tv${{ matrix.suffix }}.so if-no-files-found: error - uses: actions/upload-artifact@v4 with: - name: tizen-${{ matrix.api-version }}-${{ matrix.arch }}_experimental + name: tizen-${{ matrix.api-version }}-${{ matrix.arch }}_experimental${{ matrix.suffix }} path: | - src/out/build/libflutter_tizen*_experimental.so + src/out/build/libflutter_tizen*_experimental${{ matrix.suffix }}.so if-no-files-found: error - uses: actions/upload-artifact@v4 with: - name: tizen-${{ matrix.api-version }}-${{ matrix.arch }}_unittests + name: tizen-${{ matrix.api-version }}-${{ matrix.arch }}${{ matrix.suffix }}_unittests path: src/out/build/flutter_tizen_unittests if-no-files-found: error - uses: actions/upload-artifact@v4 if: ${{ github.event_name == 'push' }} with: - name: tizen-${{ matrix.api-version }}-${{ matrix.arch }}_symbols + name: tizen-${{ matrix.api-version }}-${{ matrix.arch }}${{ matrix.suffix }}_symbols path: | - src/out/build/so.unstripped/libflutter_tizen_common.so - src/out/build/so.unstripped/libflutter_tizen_mobile.so - src/out/build/so.unstripped/libflutter_tizen_tv.so + src/out/build/so.unstripped/libflutter_tizen_common${{ matrix.suffix }}.so + src/out/build/so.unstripped/libflutter_tizen_mobile${{ matrix.suffix }}.so + src/out/build/so.unstripped/libflutter_tizen_tv${{ matrix.suffix }}.so if-no-files-found: error - uses: actions/upload-artifact@v4 if: ${{ github.event_name == 'push' }} with: - name: tizen-${{ matrix.api-version }}-${{ matrix.arch }}_experimental_symbols - path: src/out/build/so.unstripped/libflutter_tizen*_experimental.so + name: tizen-${{ matrix.api-version }}-${{ matrix.arch }}_experimental${{ matrix.suffix }}_symbols + path: src/out/build/so.unstripped/libflutter_tizen*_experimental${{ matrix.suffix }}.so if-no-files-found: error - uses: actions/upload-artifact@v4 diff --git a/flutter/shell/platform/tizen/tizen_input_method_context_tcore.cc b/flutter/shell/platform/tizen/tizen_input_method_context_tcore.cc index 5751757..5077725 100644 --- a/flutter/shell/platform/tizen/tizen_input_method_context_tcore.cc +++ b/flutter/shell/platform/tizen/tizen_input_method_context_tcore.cc @@ -449,16 +449,16 @@ void TizenInputMethodContext::UnregisterEventCallbacks() { } tizen_core_imf_context_del_event_callback( imf_context_, TIZEN_CORE_IMF_CALLBACK_COMMIT, - event_callbacks_[TIZEN_CORE_IMF_CALLBACK_COMMIT]); + event_callbacks_[TIZEN_CORE_IMF_CALLBACK_COMMIT], this); tizen_core_imf_context_del_event_callback( imf_context_, TIZEN_CORE_IMF_CALLBACK_PREEDIT_CHANGED, - event_callbacks_[TIZEN_CORE_IMF_CALLBACK_PREEDIT_CHANGED]); + event_callbacks_[TIZEN_CORE_IMF_CALLBACK_PREEDIT_CHANGED], this); tizen_core_imf_context_del_event_callback( imf_context_, TIZEN_CORE_IMF_CALLBACK_PREEDIT_START, - event_callbacks_[TIZEN_CORE_IMF_CALLBACK_PREEDIT_START]); + event_callbacks_[TIZEN_CORE_IMF_CALLBACK_PREEDIT_START], this); tizen_core_imf_context_del_event_callback( imf_context_, TIZEN_CORE_IMF_CALLBACK_PREEDIT_END, - event_callbacks_[TIZEN_CORE_IMF_CALLBACK_PREEDIT_END]); + event_callbacks_[TIZEN_CORE_IMF_CALLBACK_PREEDIT_END], this); } void TizenInputMethodContext::SetContextOptions() { @@ -525,7 +525,7 @@ void TizenInputMethodContext::UnregisterInputPanelEventCallback() { tizen_core_imf_context_del_input_panel_event_callback( imf_context_, TIZEN_CORE_IMF_INPUT_PANEL_EVENT_STATE, - InputPanelStateChangedCallback); + InputPanelStateChangedCallback, this); } } // namespace flutter diff --git a/flutter/shell/platform/tizen/tizen_window_tcore_wl.cc b/flutter/shell/platform/tizen/tizen_window_tcore_wl.cc index 29651fd..b091e11 100644 --- a/flutter/shell/platform/tizen/tizen_window_tcore_wl.cc +++ b/flutter/shell/platform/tizen/tizen_window_tcore_wl.cc @@ -4,6 +4,8 @@ #include "tizen_window_tcore_wl.h" +#include + #ifdef TV_PROFILE #include #include