Net.Like.Xue.Tokyo/Assets/Vuplex/WebView/Core/Scripts/IWithIme.cs

50 lines
1.9 KiB
C#
Raw Normal View History

2025-06-09 15:55:24 +08:00
// Copyright (c) 2025 Vuplex Inc. All rights reserved.
//
// Licensed under the Vuplex Commercial Software Library License, you may
// not use this file except in compliance with the License. You may obtain
// a copy of the License at
//
// https://vuplex.com/commercial-library-license
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
using System;
using UnityEngine;
namespace Vuplex.WebView {
/// <summary>
/// An interface implemented by a webview if it supports Input Method Editor (IME) for
/// inputting Chinese, Japanese, and Korean text. On Windows and macOS, if keyboard support
/// is enabled via WebViewPrefab.KeyboardEnabled, then IME is automatically enabled
/// (implemented with this interface). For an example of using this interface, please see
/// 3D WebView's KeyboardManager.cs script.
/// </summary>
public interface IWithIme {
/// <summary>
/// Indicates that the coordinates of the IME text composition within the browser changed.
/// </summary>
event EventHandler<EventArgs<Vector2Int>> ImeInputFieldPositionChanged;
/// <summary>
/// Cancels the current IME composition.
/// </summary>
void CancelImeComposition();
/// <summary>
/// Finishes the current IME composition with the given text.
/// </summary>
void FinishImeComposition(string text);
/// <summary>
/// Updates the current IME composition with the given text, or starts a new composition
/// if one isn't already in progress.
/// </summary>
void SetImeComposition(string text);
}
}