yashsingh1/xdaforums huggingface dataset:
[Xposed Framework Modules] Roughy:
So it was neither removing the existing ones nor inserting new ones.

If it was happening on-and-off the most likely explanation is that the hook ran into some kind of problem.

When this happens it will remove the hook to make sure it doesn't interfere with normal functionality.

The next time Swiftkey is launched ( process is restarted ) it would presumably work for a bit, then encounter the same problem and murder itself.
[Xposed Framework Modules] oroboros74:
Dunno if Exi already does this or not, if so, I can't figure it out....

I'd like to swipe to move cursor, but start off with it moving letter by letter when moving slowly and then word by word the longer I select or when I get to the edge of the keyboard. (so the longer my finger touches the screen, essentially). I've found myself many times "landing" a letter short of the word I'm trying to highlight.

Again, dunno if this is possible (already) or not.
[Xposed Framework Modules] Primokorn:
There's a while that I didn't use Exi for Swiftkey... and Xposed.

I have EdXposed 90.0-v0.4.1.2_beta (SandHook). Some features of Exi are working but not Hotkeys, Quick Menu and Selection mode (maybe more stuff).

Versions:

- Exi 2.2.1

- Swiftkey 7.2.8.25

Thank you for your help. I'm testing and searching for a long time (EdXposed, Github, several modules...) so I may missed something, sorry.
[Xposed Framework Modules] n0j0e:
OnePlus 5T Open Beta 28

Magisk v19.1

Riru Core v18

Riru Ed Xposed v0.4.1.2._beta(YAHFA)

EdXposed Manager v4.3.2

SwiftKey v7.2.8.25

Exi v2.2.1

All features of Exi works great for me.

Sent with much love & Android. OnePlus 5T
[Xposed Framework Modules] Primokorn:
Don't know what could I do. Anything wrong in my setup?

OnePlus 3T running Skydragon rom (PIE).
[Xposed Framework Modules] adsbhatial:
Yeah I have the same issue.

Device: OP5 Android 9.

Exi 2.2.1

Swiftkey: 7.2.8.25
[Xposed Framework Modules] Roughy:
Probably a better idea to do something like mouse acceleration.

Probably not anytime soon, but I'll keep it in mind.

Might want to add an issue to the github page, lest I forget.

Stable and Beta are both... 7.2.9.36 now, which is the version I actually targeted, but everything should be fine in the 7.2.8.25 too.

All the reports seem to be from users using EdXposed, so most likely we're at dealing with issues on their end.

This guy was having little luck but eventually got it working after ... clearing the app data and updating EdXposed?

I might have to put my device through another temporary flash to Pie, but seeing as the problem appears intermittent, chances are I'll be unable to reproduce it.

Soo... logs please.

Xposed installer logs may sometimes prove helpful, but the meat is generally found in logcat.

Exi tags its output with "Exi/". The most serious failures should also be in the xposed installer logs.
[Xposed Framework Modules] adsbhatial:
Yes you are right. I am using EdXposed for Exi, the latest 4.1.2. I tried both SANDHOOK and YANHA to no avail. I also tried the method suggested by the other guy but nothing.

Also, here are logs.
[Xposed Framework Modules] Primokorn:
[MENTION=6797900]Roughy[/MENTION]

I have attached EdXposed's logs and a logcat when trying to use the Modifier key from Exi app.

Hope it helps. Thanks in advance.
[Xposed Framework Modules] Roughy:
05-07 14:22:42.306 1372 7093 E OnePlusAppBootManager: forbid start cpi=ContentProviderInfo{name=com.mayulive.swiftkeyexi.sharedprefs className=com.mayulive.swiftkeyexi.providers.SharedPreferencesProvider}
05-07 14:22:42.306 4486 29187 E ActivityThread: Failed to find provider info for com.mayulive.swiftkeyexi.sharedprefs
05-07 14:36:40.254 1372 1447 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_RESTARTED dat=package:com.mayulive.swiftkeyexi flg=0x10 (has extras) } to com.timeanddate.countdown/.receivers.RestartReciever
05-07 14:36:39.941 1372 8159 I ConditionProviders: Disallowing condition provider com.mayulive.swiftkeyexi

It would appear something on your system is preventing the Exi's content provider from running, presumably OnePlusAppBootManager.

Without the content provider we can't load anything configured in the Exi config app. Some things have reasonable defaults even when the content provider can't be accessed, but most everything else relies on the Exi config app to provide the configuration.

A common symptom to confirm this is a black overlay covering the keyboard when you swipe up from the spacebar to display the quick menu.

You get the overlay, but none of the configured actions because the configuration couldn't be read from the content provider.

Also note that you get a similar behavior if you install the module and restart without opening the config app, as the default configuration is populated the first time the config app is run.

Xposed Log's show the module being loaded correctly, and no failures.

Logcat doesn't show anything pertaining to Exi, other than the emoji version check thing I run when the config app is started.

Log obviously doesn't include the initial setup when the keyboard was first launched after the device booted ( circular buffer ), but any major failures would have showed up in the xposed log too.

Since both you and the other guy appear to be using Oneplus devices, perhaps the cause is the same?
[Xposed Framework Modules] Primokorn:
I cleared app data of Exi yesterday but it didn't help. I didn't do anything new but it works now.

Swiftkey has been updated to 7.2.9.36.
[Xposed Framework Modules] BrikHaus:
Hmm. I'm having an issue where flow typing intermittently stops.

Running latest Magisk, EdXposed (w sandhook) on Pixel 2XL - Android 9 (May 19).

Anyone else having similar problems?

Edit: Nvm, seems to be a config issue.
[Xposed Framework Modules] ottersR:
Bits and pieces working but unfortunately the Quick Menu does not, which is what I mostly wanted. Pie ROM, Riru and EdXposed. Still awesome though :)
[Xposed Framework Modules] Roughy:
For EdXposed issues, have a look at the past couple of posts.

Does the quick menu not work at all, or do you get an empty black overlay?
[Xposed Framework Modules] usernome:
I hate when SwiftKey deletes my space put before a punctuation sign .

Can you make a tweak that stops SwiftKey from deleting my space ?

Thanks !
[Xposed Framework Modules] ottersR:
Sorry for not getting back to you. With the current Magisk update the module is now working 100% :good:
[Xposed Framework Modules] cFendez:
Hello! Could you add an option when you give an emoji in prediction, not add space? The same with the words in autocorrector Thanks!
[Xposed Framework Modules] paarkhi:
Quick menu works perfectly (was also working before), thanks

---------- Post added at 10:07 PM ---------- Previous post was at 10:06 PM ----------

+1 to this feature request
[MENTION=6797900]Roughy[/MENTION] if possible please provide this feature, thanks again
[Xposed Framework Modules] AlDollaz:
It's not grammatically correct, that's (probably) why it does it.
[Xposed Framework Modules] KingLancelot:
Update

Swiftkey updated to 7.3.0.21 today. Anyone check if it's compatible?
[Xposed Framework Modules] Roughy:
7.3.1.17 is bad. Will fix.

Only candidate related stuff ( shortcuts, more predictions, maximize predictions ) affected. Other stuff is fine.

Looks like they obfuscated a few classes I was loading by name. Should be a quick fix.

7.3.0.21 not tested, but likely also bad. Keeping it installed so I can compare against a working copy.
[Xposed Framework Modules] n0j0e:
Works fine for me (Hotkeys, Shortcuts, swipe things) on OnePlus 5T OxygenOS beta 30 (Pie) with Riru Core v19, EdXposed 0.4.1.2 SandHook and Exi 2.2.1!

Sent with much love & Android. OnePlus 5T
[Xposed Framework Modules] paarkhi:
Sorry please delete
[Xposed Framework Modules] cFendez:
Amazing! Thank you very much for your effort!
[Xposed Framework Modules] christantoan:
Thanks for the new features. I like the "don't insert space after predictions" feature very much. Still getting used to it because I'm used to the old behavior.

Not sure if this is possible but can you add an option to keep the last word still highlighted when inserting predictions? This is useful when SwiftKey doesn't offer the longer form of the word.

Example, I want to insert "SwiftKey" but there's no option available for that exact word, only "Swift". With the option, I can select "Swift" and, because the word is still selected, "SwiftKey" might be offered as a prediction now.

Thank you.
[Xposed Framework Modules] cFendez:
[MENTION=6797900]Roughy[/MENTION] I found a bug in the last release. When writing (with the option of not adding space to the prediction) the "&" sign adds a space. Let's see if you can see it, thanks!
[Xposed Framework Modules] oroboros74:
Dunno if it was a bug fixed or a feature lost, but there's something different with the latest release, or maybe I'm just missing it somehow.

I had a shortcut where 'HH' gave 'how's it going?'

I used to see the whole text as a prediction (it fit in the prediction box, with smaller font) whereas now I see 'how's... "

Anyway to get back the entire text in the prediction box rather than it getting truncated?
[Xposed Framework Modules] paarkhi:
Thanks a lot, :good: :) I flashed it and it works as mentioned.
[Xposed Framework Modules] iamMG:
Hi [MENTION=6797900]Roughy[/MENTION]. I've been using your module on my rooted Redmi Note 3 for a couple years now. Recently I switched to OnePlus 7 Pro and I don't want to root it (at least not in the near future). This thread mentions that using TaiChi I can use Exi again! Can you please guide me as to which latest versions of Exi and SwiftKey work with it? Thanks in advance. :)
[Xposed Framework Modules] Roughy:
Hah. So it turns out you will not get a space after it if it's the first character in the text box, but you will if you insert it later in the sentence. Bugger.

I'll have that fixed soonish. Thanks for the heads up.

Have a lot at the bottom of the 2.2.2 release post.

What broke all prediction-related hooks was swiftkey removing the method that asks whether or not any given prediction should be displayed truncated.

It can probably be restored, but will take a bit of work, seeing as the oh-so-convenient method I could just hook is now gone.

I'm not really keeping up with TaiChi myself. It unfortunately works great on some devices, but not others.

If I recall correctly, the TaiChi app itself should contain a list of what specific versions of each module it supports. It also displays the version when you attempt to enable the module.

So install TaiChi and check if Exi is listed anywhere, and get corresponding version of the module.

In the top post you will find a list ( version history ) of what version all Exi module releases, including what version of swiftkey it was tested. Make sure to match those up.

From memory I also recall people having more luck with the armv7 builds of Swiftkey, so maybe try those if your native architecture doesn't work out.
[Xposed Framework Modules] oroboros74:
Sorry I didn't see that earlier - thanks for the reply!

If I can go meta just a moment, it's not usual that a dev not only details the changelog, but also comments it like [MENTION=6797900]Roughy[/MENTION] does. I would like to see more dev's tracking changes like this!
[Xposed Framework Modules] Roughy:
2.2.3 [ 05.06.2019 ] - Compatibility & Punctuation ( Stable: 7.3.0.21 Beta: 7.3.1.17 )

Changes in 2.2.3

Fixed

- Long prediction shortcuts being ellipsized

- No punctuation autospace sometimes not applying to ampersand (&)

Changed

- Updated translations ( Russian )

The Xposed Installer app does not appear to be refreshing properly and may not list the latest version.

Please download it directly from the Xposed Repository below using a browser.

Download:

Exi for Swiftkey on Xposed module repository

Notes:

Ellipse [MENTION=5044560]oroboros74[/MENTION]

Last update Swiftkey removed the method present on candidates that checks whether or not it should be displayed ellipsized ( cut off.... ).

This method was only ever called in a single location, so after moving the hook over there instead we're back in business.

Our modification to this bit of code was only ever set to affect the shortcuts we insert, and not Swiftkey's own suggestions.

You will likely never have noticed this though, as Swiftkey rarely suggests anything longer than a single word, so I'm keeping it that way for now.

The one exception to this is email addresses, to which they have dedicated a whole new candidate class. I've removed ellipses from them too while I was at it.

Ampersand punctuation [MENTION=5560080]cFendez[/MENTION]

The punctuation rules are fairly complicated, and it can sometimes be difficult to tell what does what.

In this case the no-punctuation-autospace was removing the space after ampersand (&) at the beginning of a sentence, but not if the character was inserted later. Why these are separate rules is beyond me. Fixed by commenting out another bit of the punctuation rules.

Translations

As usual [MENTION=8536001]alex_long[/MENTION] is on top of things, and the Russian translations are now fully up to date ヾ(❀╹◡╹)ﾉﾞ❀

Thanks.
[Xposed Framework Modules] K0media:
[MENTION=6797900]Roughy[/MENTION], done with the new Brazilian Portuguese translations. Are you planning another release any time soon? I'm still waiting for the TaiChi dev to fix that issue regarding Exi, but he's taking a long while now. I'm just leaving it aside for now.

Thanks again for all the hard work. ??
[Xposed Framework Modules] Roughy:
Thank you!

At some point I decided to just start pushing updates without waiting for translations. Since compatibility updates tend to coincide with feature updates, waiting around for too long as generally not a very good idea.

Alas, as a result I haven't even been letting you guys know that there are strings that need translating. Sorry!

I'll send a message to all the other translators and ask them if they're willing to get their respective languages up to speed, and then hopefully do a translation-only update in a couple of days. With any luck we'll be able to get most of them up to date.

It's a shame Tai-chi isn't more stable; it would otherwise be a great fit for modules that do not require system hooks.

I would probably be able to work around the issues it is having, seeing as they appear related to some of the later hooks, but since it is limited to a specific version of Exi, there is no way for me to try out possible solutions :(
[Xposed Framework Modules] AlDollaz:
[MENTION=6797900]Roughy[/MENTION] Is there a way to move the emojis around in the custom emoji panel? I'd like to reorder them without starting over completely.

Thanks! :)
[Xposed Framework Modules] Roughy:
Exi for Swiftkey 2.3.0 release

2.3.0 [ 17.06.2019 ] - Drag & Drop emoji, translations ( Stable: 7.3.0.21 Beta: 7.3.1.17 )

Changes in 2.3.0

Added

- Drag & Drop emoji editing ( Adding, rearranging, removing )

Changed

- Emoji panel icons selected using pick will be b/w rather than color emoji

- Updated translations ( Polish and Brazilian Portuguese )

The Xposed Installer app does not appear to be refreshing properly and may not list the latest version.

Please download it directly from the Xposed Repository below using a browser.

Download:

Exi for Swiftkey on Xposed module repository

My own mirror of all versions

Notes:

Translations

Woo! Polish and Brazilian Portuguese now also fully up to date!

Thanks to [MENTION=6204033]K0media[/MENTION] and [MENTION=4858491]godlesplay[/MENTION] for their efforts!

Emoji drag & drop [MENTION=4930412]BeardKing[/MENTION]

You can now long press to rearrange, remove, and add emoji by dragging them directly to the desired location.

In action: https://streamable.com/ekt4u

You can also rearrange emoji in any user-defined "dictionary" ( ones at the top of the screen ) panels.

You'll notice that when you drag an emoji to add it to a panel, it will be inserted in the location you drop it.

You can still add emoji just by clicking them, in which case they will be added to the end of the list.

Yes I am aware the emoji disappears under the emoji panel icons in the center, and under the garbage icon.

Android has wonderful pre-made systems for moving items around inside the same list, but transitioning from that to dropping the item into another list is... not something they are made for.

In hindsight I should have just done everything from scratch; it would have been easier.

¯\_(ツ)_/¯

Emoji panel icons

The icons used for emoji panels are intended to all be the b/w flat variant, as opposed to the color emoji.

A long time ago we had a few emoji that would always render as b/w variant in the panel, when the color variant should have been available.

It turns out it is up to the individual system/app/program to decide how it wants to render the emoji, and on android a few of them default to the non-color variant.

This was solved by adding a selector to the end of every single emoji we add to the emoji panels.

Notice how when you backspace after inserting an emoji, Swiftkey will seemingly do nothing the first time, /then/ remove the emoji?

This is because it is incorrectly treating the variant selector as a standalone character, instead of a part of the emoji.

Gboard gets this right, but they mess up other things so it evens out.

When you use the pick function to select the icon for an emoji panel, it included this selector, resulting in the color variant of the emoji being displayed as the icon.

We now strip the variant selector when using the pick function, but otherwise leave you with whatever you insert.

That means if you use the keyboard to set the icon to an emoji, you'll maybe want to backspace once to remove the invisible variant selector.

Or not, if you want the color emoji as the icon instead.
[Xposed Framework Modules] iamMG:
Hi [MENTION=6797900]Roughy[/MENTION], I am using Exi on OxygenOS 9.5.7 running Pie. Many a times Exi won't take over. By default 'Swipe anywhere' swipe mode gets active. I also don't find shortcut to Exi in the toolbar, even though I have activated the feature in the settings. I have to manually open Exi and exit, to make it properly function. Can this issue be fixed please? That'd be great.

---------- Post added at 11:03 AM ---------- Previous post was at 11:03 AM ----------

Hi [MENTION=6797900]Roughy[/MENTION], I am using Exi on OxygenOS 9.5.7 running Pie. Many a times Exi won't take over. By default 'Swipe anywhere' swipe mode gets active. I also don't find shortcut to Exi in the toolbar, even though I have activated the feature in the settings. I have to manually open Exi and exit, to make it properly function. Can this issue be fixed please? That'd be great.
[Xposed Framework Modules] AlDollaz:
Wow! Thank you!
[Xposed Framework Modules] Roughy:
There are a number of issues of issues relating to EdExposed, but, for better or worse, they appear to all be specific to the framework itself.

Pretty every encountering these issues have eventually managed to resolve it by reinstalling, clearing caches, trying the second/new flavor of EdXposed etc.

If you read the last couple of pages of this thread you should find a few mentions of it, but there isn't much of the way of specific instructions.
[Xposed Framework Modules] Roughy:
Actually, your problem is probably caused by OOS preventing Exi's content provider from running. I just remember that was the case the last time there were OOS specific problems.

When this happens, the part of the module running inside of Swiftkey is unable to load the settings from the config app, resulting in you being stuck with the default settings, and lacking any data ( e.g. emoji, quick menu ) that need to be populated by the config app.

If so, Exi needs to be whitelisted to run on boot, and added to any battery optimization whitelists oos might have.

See this post for more info
[Xposed Framework Modules] iamMG:
Thanks, that did the trick!
[Xposed Framework Modules] Tchania:
Heads up, on Jun 20th SwiftKey update I can't trigger my shortcuts from the space bar.

Update: nothing works except exi settings shortcut on the top right.

So no swipe curser movements in addition to what I mentioned before.
[Xposed Framework Modules] JerryGoyal:
can confirm, exi not working after recent swift beta update
[Xposed Framework Modules] Antyhaker:
The same :C
[Xposed Framework Modules] alex_long:
I confirm.
[Xposed Framework Modules] Roughy:
Exi for Swiftkey 2.3.1 release

2.3.1 [24.06.2019 ] - Compatibility( Stable: 7.3.2.19 Beta: 7.3.3.10 )

Changes in 2.3.1

Fixed

- Compatibility targeting 7.3.3.10 ( Everything keyboard key related )

The Xposed Installer app does not appear to be refreshing properly and may not list the latest version.

Please download it directly from the Xposed Repository below using a browser.

Download:

Exi for Swiftkey on Xposed module repository

My own mirror of all versions

Notes:

Compatibility [MENTION=8536001]alex_long[/MENTION] [MENTION=4836019]Antyhaker[/MENTION] [MENTION=5084935]JerryGoyal[/MENTION] [MENTION=7420144]Tchania[/MENTION]

This week's problem was caused by the hook where we figure out the type of each key Swiftkey generates.

Each key is represented by a distinct object, but the only way to know what each key represents is to intercept it at creation.

When the key is created, it is passed a bunch of information, notably the key type (number) and the icon ( image descriptor or literal character String )

Unfortunately, there is a bunch of other information passed all in the same go.

This is the data we intercepted on key-creation before the the 7.3.3.10 update:

0, a, , false, false, 0.0, 0.0, , 0, , 0, 10.0, 0, , 0, @, true, false, @, false, 0.0, 5.0, 0.0, 0.0,

0 is the key type ( Symbol ), and "a" is the icon for the key. So we know that this is the letter A key.

After the update, it looks like this

0, 9.0, 0, 0, false, false, false, , 0, true, 0, false, , @, , 0.0, 0.0, @, , a, 0.5, 0.0, 0.0, 0.0,

The key type is still where it should be, but the icon string is now at the end.

The actual method signature ( types of parameters the method takes ) is now as follows:

int, double, int, int, boolean, boolean, boolean, String, int, boolean, int, boolean, String, String, String, double, double, String, String, String, double, double, double, double

When at all possible we don't hard-code the exact position of the argument we are interested in, instead opting to look for an argument of the type we're after and using that. Unfortunately in this case there are several arguments of the same type, so that won't work.

The next best thing is to search for the first argument of the correct type, starting from the beginning or the end. This is what I have corrected this to, as the argument we are after is the first String-type argument when you start from the end of the list.

Originally, however, I had just hardcoded this to assume that the second ( index #1 ) argument was a String, which is why it failed worse than it should have when there was suddenly a Double argument in that position instead. If the arguments shift around again, we should be good as long as the type int remains the very first argument, and the only thing that should break is hotkeys.
[Xposed Framework Modules] iamMG:
Please add an option to completely disable accented variations of vowels and the letters 'c' and 'n'.
[Xposed Framework Modules] alex_long:
It works on my device but the first Swifkey start after the Exi update was very long. I thought the problem hadn't been solved and I was about to switch Exi off but fortunately the module (the keyboard) started working. Thanks for the update.
[Xposed Framework Modules] NeoHiPPy1980:
I love this module so much that I miss having it, when I have to disable Xposed.

Are there any plans (or is there a way) to patch it into SwiftKey, directly or as an intermediary to the module APK? I don't even know if something like that would even be possible, but I'd totally be cool with not updating a particular version of SwiftKey, if it meant I had all of these great features with Xposed disabled.

Either way, thanks for the great work, [MENTION=6797900]Roughy[/MENTION]! :good: