diff --git a/.github/labeler.yml b/.github/labeler.yml
index 6b1a79cd4..aeae90a65 100644
--- a/.github/labeler.yml
+++ b/.github/labeler.yml
@@ -63,8 +63,8 @@
- packages/wakelock/**/*
"p: wearable_rotary":
- packages/wearable_rotary/**/*
-"p: webview_flutter":
- - packages/webview_flutter/**/*
+"p: webview_flutter_lwe":
+ - packages/webview_flutter_lwe/**/*
# Tools
"tools":
diff --git a/.github/recipe.yaml b/.github/recipe.yaml
index 0b1c2f20c..0017d67c4 100644
--- a/.github/recipe.yaml
+++ b/.github/recipe.yaml
@@ -24,7 +24,7 @@ plugins:
camera: []
google_maps_flutter: []
network_info_plus: []
- webview_flutter: []
+ webview_flutter_lwe: []
# No tests.
google_sign_in: []
diff --git a/README.md b/README.md
index 9278bb61c..fa4747de8 100644
--- a/README.md
+++ b/README.md
@@ -46,7 +46,7 @@ The _"non-endorsed"_ status means that the plugin is not endorsed by the origina
| [**video_player_tizen**](packages/video_player) | [video_player](https://github.com/flutter/plugins/tree/main/packages/video_player) (1st-party) | [](https://pub.dev/packages/video_player_tizen) | No |
| [**wakelock_tizen**](packages/wakelock) | [wakelock](https://github.com/creativecreatorormaybenot/wakelock) (3rd-party) | [](https://pub.dev/packages/wakelock_tizen) | No |
| [**wearable_rotary**](packages/wearable_rotary) | (Tizen-only) | [](https://pub.dev/packages/wearable_rotary) | N/A |
-| [**webview_flutter_tizen**](packages/webview_flutter) | [webview_flutter](https://github.com/flutter/plugins/tree/main/packages/webview_flutter) (1st-party) | [](https://pub.dev/packages/webview_flutter_tizen) | No |
+| [**webview_flutter_lwe**](packages/webview_flutter) | [webview_flutter](https://github.com/flutter/plugins/tree/main/packages/webview_flutter) (1st-party) | [](https://pub.dev/packages/webview_flutter_lwe) | No |
## Device limitations
@@ -84,4 +84,5 @@ The _"non-endorsed"_ status means that the plugin is not endorsed by the origina
| [**video_player_tizen**](packages/video_player) | 4.0 | ✔️ | ✔️ | ⚠️ | ❌ | Functional limitations,
TV emulator issue |
| [**wakelock_tizen**](packages/wakelock) | 4.0 | ✔️ | ✔️ | ❌ | ❌ | Cannot override system settings |
| [**wearable_rotary**](packages/wearable_rotary) | 4.0 | ✔️ | ✔️ | ❌ | ❌ | Not applicable for TV |
-| [**webview_flutter_tizen**](packages/webview_flutter) | 5.5 | ✔️ | ✔️ | ✔️ | ✔️ | Not for production use |
+| [**webview_flutter_lwe**](packages/webview_flutter_lwe) | 5.5 | ✔️ | ✔️ | ✔️ | ✔️ | Not for production use |
+
diff --git a/packages/webview_flutter/CHANGELOG.md b/packages/webview_flutter/CHANGELOG.md
deleted file mode 100644
index ae58e29f3..000000000
--- a/packages/webview_flutter/CHANGELOG.md
+++ /dev/null
@@ -1,130 +0,0 @@
-## 0.5.6
-
-* Update LWE binary (9af6ea4101d173935fe6e6cd3f2c91ca17ed451e).
-
-## 0.5.5
-
-* Update README.
-* Add `-Wl,-rpath=$ORIGIN` linker option.
-
-## 0.5.4
-
-* Change the project type to sharedLib.
-
-## 0.5.3
-
-* Apply new texture APIs.
-
-## 0.5.2
-
-* Add back key handling.
-
-## 0.5.1
-
-* Apply PlatformView API change.
-* Code refactoring.
-
-## 0.5.0
-
-* Code refactoring.
-* Update the example app and integration_test.
-* Sync with the latest framework code.
-* Migrate to new analysis options.
-* Update LWE binary (f0ca15ee41d2fc96b59fd57b63b6c32cf6c1906b).
-
-## 0.4.4
-
-* Update LWE binary (645719ed084d899ec7d53de1758db71a8974e446).
-
-## 0.4.3
-
-* Remove unused things.
-* Fix build warnings.
-
-## 0.4.2
-
-* Support background color.
-
-## 0.4.1
-
-* Apply texture api change.
-
-## 0.4.0
-
-* Support emulator.
-* Update LWE binary (b22fd0c4e50cde2b9203150d80e9d0bd1a1b0602).
-* Update webivew_flutter to 3.0.1.
-
-## 0.3.11
-
-* Organize includes.
-
-## 0.3.10
-
-* Apply `PlatformView` and `PlatformViewFactory` API changes.
-
-## 0.3.9
-
-* Update LWE binary (6bae13cb915bd41c5aac4aaaae72865f20924c03).
-
-## 0.3.8
-
-* Update webivew_flutter to 2.3.0.
-
-## 0.3.7
-
-* Update webivew_flutter to 2.1.1.
-
-## 0.3.6
-
-* Update LWE binary (3dff8724bfb4b2b0b9e7c4e3976a9b02e74ee13c).
-* Fix various issues.
-
-## 0.3.5
-
-* Update LWE binary (b2fad69f50d693c86abc45b363a39b0625f5e95f).
-* Fix crash issue.
-
-## 0.3.4
-
-* Fix buffer synchronization issue.
-
-## 0.3.3
-
-* Update LWE binary (c57d045a513455115a8a4c66517e5e51f5a4dfbd).
-* Fix issue of multiple webviews.
-
-## 0.3.2
-
-* Update LWE binary (2226c28429391407d7c875c3af7531f5e1d5dfa7) for supporting google_map_flutter_tizen.
-
-## 0.3.1
-
-* Update lightweight web engine binary (ad0e77631f96180e19a11c3dc80b6b72c32bdffb).
-* Fix bug on handling parameter of `loadUrl` API.
-
-## 0.3.0
-
-* Apply `PlatformView` and `PlatformViewFactory` API changes.
-
-## 0.2.2
-
-* Update lightweight web engine binary & header file (6263be6c888d5cb9dcca5466dfc3941a70b424eb).
-* Activate resizing function.
-* Apply embedder's texture API changes.
-
-## 0.2.1
-
-* Add lightweight web engine binary for arm64.
-
-## 0.2.0
-
-* Update Dart and Flutter SDK constraints.
-* Update Flutter and Samsung copyright information.
-* Update webview_flutter_tizen to use platform view interface.
-* Update example and integration_test.
-* Update webivew_flutter to 2.0.4.
-
-## 0.1.0
-
-* Initial release.
diff --git a/packages/webview_flutter/example/tizen/tizen-manifest.xml b/packages/webview_flutter/example/tizen/tizen-manifest.xml
deleted file mode 100644
index 3f9e1a889..000000000
--- a/packages/webview_flutter/example/tizen/tizen-manifest.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
-
- ic_launcher.png
-
-
-
- http://tizen.org/privilege/internet
-
-
-
diff --git a/packages/webview_flutter/lib/src/platform_view_tizen.dart b/packages/webview_flutter/lib/src/platform_view_tizen.dart
deleted file mode 100644
index 66835e57b..000000000
--- a/packages/webview_flutter/lib/src/platform_view_tizen.dart
+++ /dev/null
@@ -1,659 +0,0 @@
-// Copyright 2021 Samsung Electronics Co., Ltd. All rights reserved.
-// Copyright 2013 The Flutter Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// github.com:flutter/flutter.git@57a688c1f04d56eaa40beeb9f44e549eaf0ce54d
-// packages/flutter/lib/src/rendering/platform_view.dart
-// packages/flutter/lib/src/widgets/platform_view.dart
-// packages/flutter/lib/src/services/platform_views.dart
-// Imported from above files, the content has been minimally modified.
-// (e.g. Rename keyword 'Android' -> 'Tizen' )
-
-// ignore_for_file: public_member_api_docs
-
-part of '../webview_flutter_tizen.dart';
-
-enum _PlatformViewState {
- uninitialized,
- resizing,
- ready,
-}
-
-class TizenView extends StatefulWidget {
- const TizenView({
- super.key,
- required this.viewType,
- this.onPlatformViewCreated,
- this.hitTestBehavior = PlatformViewHitTestBehavior.opaque,
- this.layoutDirection,
- this.gestureRecognizers,
- this.creationParams,
- this.creationParamsCodec,
- this.clipBehavior = Clip.hardEdge,
- }) : assert(viewType != null),
- assert(hitTestBehavior != null),
- assert(creationParams == null || creationParamsCodec != null);
-
- final String viewType;
- final PlatformViewCreatedCallback? onPlatformViewCreated;
- final PlatformViewHitTestBehavior hitTestBehavior;
- final TextDirection? layoutDirection;
- final Set>? gestureRecognizers;
- final dynamic creationParams;
- final MessageCodec? creationParamsCodec;
- final Clip clipBehavior;
-
- @override
- State createState() => _TizenWebViewState();
-}
-
-class _TizenWebViewState extends State {
- int? _id;
- late TizenViewController _controller;
- TextDirection? _layoutDirection;
- bool _initialized = false;
- FocusNode? _focusNode;
-
- static final Set> _emptyRecognizersSet =
- >{};
-
- @override
- Widget build(BuildContext context) {
- return Focus(
- focusNode: _focusNode,
- onFocusChange: _onFocusChange,
- child: _TizenPlatformTextureView(
- controller: _controller,
- hitTestBehavior: widget.hitTestBehavior,
- gestureRecognizers: widget.gestureRecognizers ?? _emptyRecognizersSet,
- clipBehavior: widget.clipBehavior,
- ),
- );
- }
-
- void _initializeOnce() {
- if (_initialized) {
- return;
- }
- _initialized = true;
- _createNewTizenWebView();
- _focusNode = FocusNode(debugLabel: 'TizenWebView(id: $_id)');
- }
-
- @override
- void didChangeDependencies() {
- super.didChangeDependencies();
- final TextDirection newLayoutDirection = _findLayoutDirection();
- final bool didChangeLayoutDirection =
- _layoutDirection != newLayoutDirection;
- _layoutDirection = newLayoutDirection;
-
- _initializeOnce();
- if (didChangeLayoutDirection) {
- _controller.setLayoutDirection(_layoutDirection!);
- }
- }
-
- @override
- void didUpdateWidget(TizenView oldWidget) {
- super.didUpdateWidget(oldWidget);
-
- final TextDirection newLayoutDirection = _findLayoutDirection();
- final bool didChangeLayoutDirection =
- _layoutDirection != newLayoutDirection;
- _layoutDirection = newLayoutDirection;
-
- if (widget.viewType != oldWidget.viewType) {
- _controller.dispose();
- _createNewTizenWebView();
- return;
- }
-
- if (didChangeLayoutDirection) {
- _controller.setLayoutDirection(_layoutDirection!);
- }
- }
-
- TextDirection _findLayoutDirection() {
- assert(
- widget.layoutDirection != null || debugCheckHasDirectionality(context));
- return widget.layoutDirection ?? Directionality.of(context);
- }
-
- @override
- void dispose() {
- _controller.dispose();
- super.dispose();
- }
-
- void _createNewTizenWebView() {
- _id = platformViewsRegistry.getNextPlatformViewId();
- _controller = PlatformViewsServiceTizen.initTizenView(
- id: _id!,
- viewType: widget.viewType,
- layoutDirection: _layoutDirection!,
- creationParams: widget.creationParams,
- creationParamsCodec: widget.creationParamsCodec,
- onFocus: () {
- _focusNode!.requestFocus();
- },
- );
- if (widget.onPlatformViewCreated != null) {
- _controller
- .addOnPlatformViewCreatedListener(widget.onPlatformViewCreated!);
- }
- }
-
- void _onFocusChange(bool isFocused) {
- if (!_controller.isCreated) {
- return;
- }
- if (!isFocused) {
- _controller.clearFocus().catchError((dynamic e) {
- if (e is MissingPluginException) {
- return;
- }
- });
- return;
- }
- SystemChannels.textInput.invokeMethod(
- 'TextInput.setPlatformViewClient',
- {'platformViewId': _id},
- ).catchError((dynamic e) {
- if (e is MissingPluginException) {
- return;
- }
- });
- }
-}
-
-enum _TizenViewState {
- waitingForSize,
- creating,
- created,
- disposed,
-}
-
-class TizenViewController extends PlatformViewController {
- TizenViewController._({
- required this.viewId,
- required String viewType,
- required TextDirection layoutDirection,
- dynamic creationParams,
- MessageCodec? creationParamsCodec,
- bool waitingForSize = true,
- }) : assert(viewId != null),
- assert(viewType != null),
- assert(layoutDirection != null),
- assert(creationParams == null || creationParamsCodec != null),
- _viewType = viewType,
- _layoutDirection = layoutDirection,
- _creationParams = creationParams,
- _creationParamsCodec = creationParamsCodec,
- _state = waitingForSize
- ? _TizenViewState.waitingForSize
- : _TizenViewState.creating;
-
- @override
- final int viewId;
-
- final String _viewType;
-
- TextDirection _layoutDirection;
-
- _TizenViewState _state;
-
- final dynamic _creationParams;
-
- final MessageCodec? _creationParamsCodec;
-
- final List _platformViewCreatedCallbacks =
- [];
-
- static int pointerAction(int pointerId, int action) {
- return ((pointerId << 8) & 0xff00) | (action & 0xff);
- }
-
- int? _textureId;
-
- int? get textureId => _textureId;
-
- /// The current offset of the platform view.
- Offset _off = Offset.zero;
-
- Future setSize(Size size) async {
- assert(_state != _TizenViewState.disposed,
- 'Tizen view is disposed. View id: $viewId');
- assert(_state != _TizenViewState.waitingForSize,
- 'Tizen view must have an initial size. View id: $viewId');
- assert(size != null);
- assert(!size.isEmpty);
-
- final Map