Download
(4 Kb)
Download
Updated: 05/13/24 01:31 PM
Pictures
File Info
Compatibility:
Gold Road (10.0.0)
Updated:05/13/24 01:31 PM
Created:04/28/24 06:40 PM
Monthly downloads:178
Total downloads:181
Favorites:0
MD5:
Lykeion's Spirited Away  Updated less than 3 days ago!
Version: 1.1.2
by: Lykeion [More]


For some non-Latin players, using Input Method Editor(IME) may create a ghost candidate window stuck in the screen after the input is finished while using fullscreen mode.
This simple addon is designed to help these players spirit it away when they are not typing.
It also solves the huge lag caused by some IMEs on input
Change Log:

1.1.2:
  • Now do set IMEC's Hidden to true when it should be hidden to avoid the click issues it causes sometimes

1.1.1:
  • Now also hides IMEC when the game loses focus
  • Reduces the timeout required to trigger the secured IMEC hiding

1.1.0:
  • Added support for most in-game text boxes
  • Some code improvements, thanks to Baertram for the suggestion!
  • Overwrote an in-game method slightly to help with an issue where some IMEs would cause the game to freeze on text input

1.0.2:
  • The addon now more accurately recognizes the timing of hidingghost windows
  • Expanded the list of recognized Latin languages

1.0.1:
  • Added some animation effects to synchronize the ghost window and chat box fading in and out.
Archived Files (5)
File Name
Version
Size
Uploader
Date
1.1.1
4kB
Lykeion
05/02/24 12:58 AM
1.1.0
4kB
Lykeion
04/30/24 09:42 AM
1.0.2
1kB
Lykeion
04/29/24 05:01 PM
1.0.1
1kB
Lykeion
04/28/24 10:58 PM
1.0.0
1kB
Lykeion
04/28/24 07:55 PM


Post A Reply Comment Options
Unread 04/29/24, 08:21 PM  
Lykeion
 
Lykeion's Avatar
AddOn Author - Click to view AddOns

Forum posts: 22
File comments: 103
Uploads: 13
Originally Posted by Baertram
I now it's a simple addon but redundantly calling the same func to do such checks could be really improved by 1 local reference?

Code:
GetKeyboardLayout() == GetString(SI_OFFICIALLANGUAGE0) or GetKeyboardLayout() ==
You can even do this easily with a table:
Lua Code:
  1. local langTab = {
  2.         [GetString(SI_OFFICIALLANGUAGE0)] = true,
  3.         [GetString(SI_OFFICIALLANGUAGE1)] = true,
  4.         [GetString(SI_OFFICIALLANGUAGE2)] = true,
  5.         [GetString(SI_OFFICIALLANGUAGE5)] = true,
  6.     }
  7.     if langTab[GetKeyboardLayout()] then
  8.         LSA.HideIMEC()
  9.     end

...which can be reused in your other func LSA.WM:SetHandler("OnIMECandidateListUpdated", function () again


And please do not use such short global variables like LSA!
Please name them unique, like LSpiritAway or LykeionsSA or whatever.
Does this addon even need a global leaking here?
Thanks for the suggestions Baertram, these are great improvements. Gonna release an update later, and I'll get them all in.
Report comment to moderator  
Reply With Quote
Unread 04/29/24, 05:21 PM  
Baertram
Super Moderator
 
Baertram's Avatar
ESOUI Super Moderator
AddOn Author - Click to view AddOns

Forum posts: 5001
File comments: 6060
Uploads: 78
I now it's a simple addon but redundantly calling the same func to do such checks could be really improved by 1 local reference?

Code:
GetKeyboardLayout() == GetString(SI_OFFICIALLANGUAGE0) or GetKeyboardLayout() ==
You can even do this easily with a table:
Lua Code:
  1. local langTab = {
  2.         [GetString(SI_OFFICIALLANGUAGE0)] = true,
  3.         [GetString(SI_OFFICIALLANGUAGE1)] = true,
  4.         [GetString(SI_OFFICIALLANGUAGE2)] = true,
  5.         [GetString(SI_OFFICIALLANGUAGE5)] = true,
  6.     }
  7.     if langTab[GetKeyboardLayout()] then
  8.         LSA.HideIMEC()
  9.     end

...which can be reused in your other func LSA.WM:SetHandler("OnIMECandidateListUpdated", function () again


And please do not use such short global variables like LSA!
Please name them unique, like LSpiritAway or LykeionsSA or whatever.
Does this addon even need a global leaking here?
Last edited by Baertram : 04/29/24 at 05:24 PM.
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: