{
static private string defaultStyleName = "Tizen.NUI.BaseComponents.TextEditor";
static private string defaultFontFamily = "TizenSans";
+ private static SystemFontTypeChanged systemFontTypeChanged = new SystemFontTypeChanged();
+ private static SystemLocaleLanguageChanged systemLocaleLanguageChanged = new SystemLocaleLanguageChanged();
private string textEditorTextSid = null;
private string textEditorPlaceHolderTextSid = null;
private InputMethodContext inputMethodContext = null;
if (hasSystemLanguageChanged)
{
- SystemSettings.LocaleLanguageChanged -= SystemSettings_LocaleLanguageChanged;
+ systemLocaleLanguageChanged.Remove(SystemSettings_LocaleLanguageChanged);
}
RemoveSystemSettingsFontTypeChanged();
}
TextChanged -= TextEditorTextChanged;
+ GetInputMethodContext()?.DestroyContext();
+
base.Dispose(type);
}
[EditorBrowsable(EditorBrowsableState.Never)]
protected override void ReleaseSwigCPtr(System.Runtime.InteropServices.HandleRef swigCPtr)
{
- // In order to speed up IME hide, temporarily add
- GetInputMethodContext()?.DestroyContext();
Interop.TextEditor.DeleteTextEditor(swigCPtr);
}
{
if (hasSystemLanguageChanged == false)
{
- SystemSettings.LocaleLanguageChanged += SystemSettings_LocaleLanguageChanged;
+ systemLocaleLanguageChanged.Add(SystemSettings_LocaleLanguageChanged);
hasSystemLanguageChanged = true;
}
return translatableText;
{
try
{
- SystemSettings.FontSizeChanged += SystemSettingsFontSizeChanged;
+ SystemFontSizeChangedManager.Add(SystemSettingsFontSizeChanged);
hasSystemFontSizeChanged = true;
}
catch (Exception e)
{
try
{
- SystemSettings.FontSizeChanged -= SystemSettingsFontSizeChanged;
+ SystemFontSizeChangedManager.Remove(SystemSettingsFontSizeChanged);
hasSystemFontSizeChanged = false;
}
catch (Exception e)
{
try
{
- SystemSettings.FontTypeChanged += SystemSettingsFontTypeChanged;
+ systemFontTypeChanged.Add(SystemSettingsFontTypeChanged);
hasSystemFontTypeChanged = true;
}
catch (Exception e)
{
try
{
- SystemSettings.FontTypeChanged -= SystemSettingsFontTypeChanged;
+ systemFontTypeChanged.Remove(SystemSettingsFontTypeChanged);
hasSystemFontTypeChanged = false;
}
catch (Exception e)
if (widthMeasureSpec.Mode != MeasureSpecification.ModeType.Exactly)
{
- totalWidth = Math.Min(Math.Max(naturalSize.Width, minSize.Width), maxSize.Width);
+ float width = naturalSize != null ? naturalSize.Width : 0;
+ totalWidth = Math.Min(Math.Max(width, minSize.Width), maxSize.Width);
}
if (heightMeasureSpec.Mode != MeasureSpecification.ModeType.Exactly)
{
- totalHeight = Math.Min(Math.Max(naturalSize.Height, minSize.Height), maxSize.Height);
+ float height = naturalSize != null ? naturalSize.Height : 0;
+ totalHeight = Math.Min(Math.Max(height, minSize.Height), maxSize.Height);
}
widthMeasureSpec = new MeasureSpecification(new LayoutLength(totalWidth), MeasureSpecification.ModeType.Exactly);