yashsingh1/xdaforums huggingface dataset:
[Xposed Framework Modules] iamMG:
Thanks for the reply.

Here's to hoping you get more free time in your life to do whatever you want to do.😁️ ️🍻️
[Xposed Framework Modules] Lord Sithek:
I think like for many, for me some basic features like shortcut overaly would be sufficient. Now I need to make sure Swiftkey is hided from PlayStore because I dont want to update anymore :LOL:

BTW, if you dont follow Xposed udpates, it's been revived in the form of LSPosed and maintained by more dilligent (it seems so) developers who are willing to support the project for a longer period of time. And as far as I know, they colaborate with the Magisk dev himself
[Xposed Framework Modules] Damianek420:
@Roughy

I have some idea how a quick-bar and swipe-select could be implemented.Not only for Swiftkey, but also for gboard.

Checking Keyboard visibility from logs.(on the newest gboard there is no problem with it but with Swiftkey I do not know because I use the old version 7.6.3.3)

and when it is visible, slide keyboard up a little, leaving an empty space.Just like in the attachment.

Put an invisible strip (and trigger when kbd visible only) with gestures on it (overlay,or sth like scene in tasker). Left-right gesture for text selection, up for quick-menu bar.

almost anything could be done with a tasker:check logs,invisible scene with gestures, simulate keyboard shortcuts, highlight whole sentences.

The only problem I have is port this quick-menu to the tasker web screen
[Xposed Framework Modules] Roughy:
Implementing a few core features using an accessibility service would indeed be ideal.

I haven't messed much with accessibility services, so I'm not entirely sure it can be used for our purposes.

For the quick-menu, we need to be able to detect when the user places their finger on where the spacebar is, and also receive updates on how it is moved afterwards ( e.g. above the spacebar ), all without interfering with the input event so that the keyboard can still function normally.

You can display an overlay which can presumably receive inputs like a normal view, but you cannot receive these while also passing the input on to the application below it ( e.g. the keyboard ), I don't think. They are apparently part of different hierarchies.

Being an accessibility service we will receive some information about how the user is interacting with the device, but input motion data is not really present, only pointer down/up, hover enter/exit etc.

Custom gesture detection is a thing, so it may technically be possible to implement the quick-menu using a swipe-up gesture, but it would be pretty janky.

It might be an idea to implement a module or apk mod in a similar fashion, though.

If all we want is the quick-menu and swipe-selection ( anywhere only ), we could get away with injecting an overlay with a user configurable hitboxe to determine where the spacebar is.

Would never break, and work with any keyboard.

Not something I can look into at the moment, but it's a viable idea.
[Xposed Framework Modules] iamMG:
You can do this with TeMeFi. Open the app, search 'detach', search for SwiftKey in the list, select Method 3 and accept the multiple confirmations.

It is currently the best method to detach apps, AFAIK.

Can you upload the Tasker task/profile that you have made?
[Xposed Framework Modules] Lord Sithek:
Thanx, but not really best IMHO 😏 Every detach tool I've tried failed at some point and the app to be hided got updated anyway. For a long time I use Xposed for this purpose - SudoHide before, HideMyApplist nowadays. If properly configured, never fails
[Xposed Framework Modules] n0j0e:
Detach3 v3.11

https://xdaforums.com/t/module-detach3-detach-market-links

Works good for me! First i disable auto updates always in Play Store. If then a detached app comes again for an update in the play store (and this is not often) then simply reflash the Detach module and the app is detached again. No restart required.

Here my Tasker Profile..
[Xposed Framework Modules] OpenHub:
I made a modification. Now you don't need to install Xposed or Lsposed. It is enough to install the module and the keyboard.

NO need root

NO need xposed, lsposed

tested on android 11 miui
[Xposed Framework Modules] n0j0e:
mmh, i'm a bit sceptical for security reasons about your mod. You are a new xda member without reputation here and shares two modified apks with sensible data on using. I mean it not rude or so but for all: Activate your brain!

Does your mod needs root?
[Xposed Framework Modules] OpenHub:
i was in xda 2013y. i lost my account. i am from 4pda. my nicname OpenHub there. Root not require, because its not require xposed. logic make sense)
[Xposed Framework Modules] n0j0e:
Tried now but your Microsoft SwiftKey_7.5.7.4 won't start on DerpFest 12 (AOSP12). Only blackscreen.

Still using Exi for Swiftkey_2.7.1 + MS Swiftkey v7.6.6.11 on AOSP12 as dreamteam except the start bug (Exi didn't inject to MS SwiftKey on system boot automatically).

LSPosed-v1.6.5-6316-zygisk-release on Magisk v24.1
[Xposed Framework Modules] OpenHub:
I have tested on android 11 on Poco x3 pro work perfect
[Xposed Framework Modules] iamMG:
Is there any Exi function that doesn't work in your version? I am using v7.5.9.3 and would prefer an updated version like yours.

I used to face this issue. You can fix it by editing this file:

/data/system/appboot/appboot.xml

And changing boot="0" to boot="1" in the line

package="com.mayulive.swiftkeyexi"

How is it working out for you? Should I update Magisk from v23 to v24.1? Does it break stuff? I aim to use these modules on LSposed:

Darq, Exi, GravityBox, Instaprefs, Xposed Edge pro.
[Xposed Framework Modules] OpenHub:
is it android 12 about?
[Xposed Framework Modules] vadlike:
I am a big fan of this module. Thank you very much works great
[Xposed Framework Modules] n0j0e:
@iamMG

I really don't use any Exi/Swiftkey option but what can i say is no crash or any strange culprit.

This works definitively: Space-Swipe-Up, Space-Swipe Mode, Select from Backspace/Shift, Shortcuts

Oh that would be great if it is so easy to fix it but no appboot folder or xml in /data/system (AOSP12). Plz share your xml so i can try it.

Works fine, no issues till yet but i don't use any banking app or critical SafetyNet/root detection app. For Android 12 i prefer a Magisk update to v24.x. It gives full compatibility for A12!

Darq, Instaprefs, Xposed Edge Pro = I don't use/know it

Gravitybox = It exist no official GB version for Android 12 till yet

For Xposed Edge Pro maybe use Vivid N.G. as alternative. It works great for me!
[Xposed Framework Modules] iamMG:
Thanks, that's what I wanted to know.

I am on A11, so I guess this method would be of no use to you.

No, I am on A11. Apparently, this doesn't work in A12.
[Xposed Framework Modules] n0j0e:
Anyway, i'll give it a try.. 😁
[Xposed Framework Modules] OpenHub:
SwiftKey and the Exi for SwiftKey module work without Xposed/Lsposed

root is not required

xposed is not required

lsposed is not required

Download: Exi for SwiftKey module

Downlload: SwiftKey v2 new keyboard

Works on android 12
[Xposed Framework Modules] Zero.G:
I just updated to Android 12 from A11 on a S21 Ultra, I was using TaiChi with Switftkey 7.5.8.5 beta (non rooted device) without problems. After the Android update the keyboard stopped working altogether. So I tried uninstalling TaiChi and Swiftkey and installing them again, and while the keyboard now works, Exi function sadly don't.

Anyone know of a workaround or if I have to contact the TaiChi developer?

I also tried this, the keyboard works (although without predictions), but Exi functions don't.
[Xposed Framework Modules] ZellZoy:
Ooh cool I was hoping someone would make something like this. Unfortunately it looks like the feature I used most (hotkeys) doesn't work.
[Xposed Framework Modules] the_poseidon:
it would really nice, if somebody could make update patch for last swiftkey version
[Xposed Framework Modules] XtraWater:
For me the best thing on Exi are the Swipe mode and space up-swipe mode. Are there any other keyboards with a similar functionality?

The most important for me is to 'select all' copy and past which I configured in the space up-swipe mode.

Looked a gboard, but it seems there isn't a way to do it quickly. I often copy links from the adress bar of my browser.
[Xposed Framework Modules] dima-82:
AnySoftKeyboard (https://anysoftkeyboard.github.io/)

Has a similar feature. You can swipe from space up to have a menu for select all, copy, paste, and even move cursor.

But imho it is not that convenient like Exi.
[Xposed Framework Modules] n0j0e:
AnySoftKeyboard looks not bad but can't open a popup via swipe up from space .
[Xposed Framework Modules] dima-82:
you have to configure it in the gesture settings. In the German version it is called Utility Keyboard.

Unfortunately the ugly blue cannot be changed :)
[Xposed Framework Modules] XtraWater:
I tried it. But I have to say I don't like this keyboard.
[Xposed Framework Modules] dima-82:
In my opinion it is not the best, but it is the only one with the features I need.

Alternative is to use an old version of Swiftkey + Exi.
[Xposed Framework Modules] iamMG:
What are the major features which the latest Swiftkey version has which are not available in the last Exi-compatible version?
[Xposed Framework Modules] dima-82:
I used the last official Exi version.

I had a lot of workarounds to exclude swiftkey from playstore updates , since it was not compatible with exi.

I think the only reason I tried AnySoftKeyboard is, that it is Open Source.

And I am still not sure if I should use the port by @OpenHub ...
[Xposed Framework Modules] plusminus_:
It's nice tbh, I have had no problems with it

(and for excluding apps from Play Store updates, TeMeFi has been completely effective for me)
[Xposed Framework Modules] plusminus_:
Hmm, my predictions have stopped :confused:

(Reinstalled 7.5.9.3 and they're working with that version)
[Xposed Framework Modules] HyperCriSiS:
Hey guys,

we could give a bounty via https://bountysource.com/

for someone patching the module for the up to date SwiftKey version.

Who is interested?
[Xposed Framework Modules] VanGray:
Hello all,

Exi coupled with Swiftkey was the best combo ive ever used for almost 5 years if we talk about keyboard features.

I was using the version 7.5.4.4 on A10 with Swiftkey but all of a sudden, it stopped working. So i searched for alternatives and i'd like to present it here.

Hope it is allowed.

Device : Redmi Note 8, A10, ResurrectionRemix by MarkOS

Magisk 24.3+ Lsposed 1.8.1 - Zygisk

Swiftkey 8.10.11.3 (you can une any keyboard you like)

For shortcut where you want to paste alreadymade text like adress, phone number, etc. : use TextAide and the Expand feature.

For shortcut where you want to use Select all / Copy / Paste / Undo / Redo : Use Xposed Edge pro (define them with the gesture option, either with Tap/swipe up or even Pie control)

You have to choose the Edit in Select option. Example : Xposed Edge pro > Gesture >left top (check) > Tap > Edit > Select All)

So if you "tap" "left top", you will trigger "select all".

I's worth the time :)
[Xposed Framework Modules] Youtube_Ll0r3nt3:
Hi, could you tell me why you chose that version? I have a better modified version by me split apksq, well, remove languages and garbage, if it doesn't cost much work to edit it, maybe I could look at it and remove more unnecessary things and make it compatible with exi? And thanks for the apk.

PD delete extensión.zip
[Xposed Framework Modules] XtraWater:
Does it work with exi? Because it doesn't for me.
[Xposed Framework Modules] Youtube_Ll0r3nt3:
Maybe you should have read the message before downloading like crazy
[Xposed Framework Modules] iamMG:
Can anyone tell me what I need to learn to be able to update Exi which is compatible with the latest SwiftKey versions? I am willing to learn and do it, even if it takes me months.

I am quite desperate tbh. Exi is just too good and useful. I am using a two-year old Swiftkey version and it has started to slow down for me I think. Multiple bugs + Autocorrect is visibly erroneous. Maybe @Roughy himself can guide me please?
[Xposed Framework Modules] Roughy:
It is... not simple.

Base requirement is very solid knowledge of java. You will be reading through a lot of decompiled, obfuscated java code with no named methods, fields or variables.

At one point in time the code of the module itself was pretty clean, but with every Swiftkey update it slowly devolved into a clusterfuck of undocumented interdependent hooks.

The basic process is decompiling Swiftkey ( you want base.apk ) with JadXGui, exporting it as a gradle project and opening it up in Android Studio. Now you've got readable code you can read and walk around, but most of the code will have any useful names replaces with jibberish, so you have no idea what does what.

Then how do you know what does what?

Some things /have/ to be named, usually when you need to pass references along to Android. The base Keyboard class that provides Android with the root keyboard view, for instance, can easily be located because of this.

Enums are all intact, which can be very helpful.

Looking through the obfuscated class definitions can often also gives you clues as to what they are for.

At the end of the day you'll probably find something that looks potentially relevant. From there on it's down to inserting hooks that print runtime information on what's being passed to and returned from various methods.

SwiftkeyExi has a bunch of utility methods to facilitate this, such as SteppedHookLog that hooks every single method of a class and prints a hierarchy of calls with their arguments at runtime.

TraverseLayout() prints a hierarchy of all the views with some of their properties. Very handy for wrapping your head around the actual keyboard layout.

Looking at actual layout files can also be helpful for finding things, as anything references there will not be obfuscated.

If something is broken the problem will often by that the method being hooked has moved somewhere else, or been modified in a way that makes it unrecognizable. If you sorta remember what it used to look like ( I would often go back to previous versions and compare ) you can pick out some markers that let you locate it elsewhere, but without you're pretty much toast.

The module was built on the assumption that everything would always be changing and classes and methods would move around.

Dealing with that is what all the profiles all over the place. These profiles are generated using another library I wrote: ClassHunter.

These profiles had to be manually updated from time to time, and of course every time we fail to locate the target class and have to go manually digging through the code to find it again.

Having said that, trying to fix this module would be nigh impossible, even if you already had a solid understanding of both java and working with xposed.

There's too much black magic voodoo going on. Everything relies on everything and you have very little way of knowing whether or not any given layer of the clusterfuck is working correctly or not.

It's too big, too complex, too interconnected.

You'd be better of deciding on the core features you want and starting from scratch.
[Xposed Framework Modules] iamMG:
Thanks for the super-detailed answer Roughy! Although, sadly, as you said, this does seem impossible. :(

I guess I'll stick with the old versions.

Hopefully florisboard or some other keyboard reaches Exi's caliber some day.
[Xposed Framework Modules] Damianek420:
@Roughy

could you resume a project with only minimal functionality?Only with select text from bkspc / shift for latest versions. (My latest beta where it working is 7.6.4.3)

Pie bar working with Xposed gestures pro, has the ability to quickly switch between Swiftkey / gboard via bottom center tap and swipe up for pie bar with copy/paste/undo all of these can only be set when the keyboard is visible condition

Here is video how it looks like with edge gestures pro:

Gif 20220630151246

Image Gif 20220630151246 hosted in Gifyu

gifyu.com

If that wasn't that time consuming, it might be a good idea to see it with the gboard app too.

I will donate this project and I think of many people too.
[Xposed Framework Modules] Jinnn92:
Not about making it work on new versions but I use SwiftKey 7.1.6.27 and 1.7 and it works perfectly. No bugs and all the features working without a problem. As long as you have root and can backup SwiftKey's data you'll be fine (sync stopped working some time ago)
[Xposed Framework Modules] Einheit-101:
Here is an old thread on microsoft feedback forum, maybe spamming that in order to bring some movement to the swiftkey team will help achieving at least the copy/paste gesture. I added a comment myself.

https://support.swiftkey.com/hc/en-us/community/posts/360018035406--Feature-Requests-Gesture-controls-for-cut-copy-paste
[Xposed Framework Modules] juandante:
I am proud to announce that in 2023, there is now ChatGPT that could massively help you to mod the code.

I tried it on some highly obfuscated code and the AI managed to decode and explain the code with breeze.

I don't know how Microsoft would catch up against those type of AI, I mean they would probably make an AI to obfuscate even stronger the code.

But you could give it a try.
[Xposed Framework Modules] iamMG:
That's great news! Maybe you can privately send over your exact method to @Roughy for him to see (if he has some spare time). 😀
[Xposed Framework Modules] juandante:
Well, the exact method I need to have the obfuscated SwitfKey code at hand. Still, in the images below, there are demonstrations of how ChatGPT is applied to deobfuscate code (images not from me) :

As you can see, this is pretty mindblowing. I did a lot of test on Java code, Javascript, even Windows Batch (yes, the dirty one), and it succeded to explain, altought in some case, the deobfuscation was not one hundred percent exact. But on the basis of what I read about the latest developement problems for Exi for Swiftkey, the main issue is not really to deobfuscate, the main issue is to understand what a function does, in order to hook Exi on the functions of SwiftKey (functions that change name constantly).

My conclusion is that if the issue is just a about understanding what the functions do, ChatGPT will really be the solution. PM'ing him with the thread link.
[Xposed Framework Modules] InvisibleKnight:
What if we change approach to the project and patch SwiftKey like people are doing over at ReVanced with many different apps? It seems to solve a lot of the issues with updating and you could open source the patches to make people contribute.

On a less positive note did anyone found an alternative to Exi? I'm looking for spacebar gestures and text/ASCII emoji.
[Xposed Framework Modules] Lord Sithek:
As an alternative, I use Xposed Edge Pro module and assigned texts and basic functions to Pie on the bottom edge
[Xposed Framework Modules] VanGray:
I'm using Xposed Edge pro like Lord Sithek.

I don't use Exi anymore as it stopped working. You can use the edge of the screen as a trigger when the keyboard is used, like using copy, paste, cut, select all, delete word and so much more.

You have many gestures at your disposal that you can combine with SwiftKey and xposed edge pro.

You can even use this with any keyboard or any version of SwiftKey as it is not SwiftKey dependent
[Xposed Framework Modules] MuKuLFiRe:
bro I tried clean flash but it is still breaking
[Xposed Framework Modules] paarkhi:
if anyone has this file then please send, link is not working anymore and the copy of this file which I had is deleted by mistake, thanks
[Xposed Framework Modules] Valiante:
I have to say I'm pretty impressed with the fact that this project is so sought after and it's been multiple years since it was abandoned. Yet no one has come by to pick it up.

I suppose XDA is filled up with more enthusiasts than developers it seems
[Xposed Framework Modules] plusminus_:
I can't help directly, but...

If you are using an Xposed module I will assume you are using a rooted device, and will also assume you are using Magisk. If so, you can use the mindetach module to detach Swiftkey from the Play Store. This has been the detach method that has worked best for me so far, even better than TeMeFi!

You could also get Swiftkey 7.5.9.3 from an APK site and re-sign it yourself with ZipSigner (it's a very old tool but I used it myself for another app a few days ago and it worked fine)
[Xposed Framework Modules] paarkhi:
Thank you,I will try the re-sign option as I am already using the swiftkey 7.5.9.3 from apkmirror
[Xposed Framework Modules] juandante:
Thank you for your very interesting message. Fact is that SwiftKey have a lot of advantages over other keyboards but ironically it is one of the keyboards with the less (non useless) features.

I can remember, before they decided to add the arrow keys, there had to be months and months of heated debate before the developers finally decided to add this basic feature.

I will check out your tip, the only problem is that I hope it doesn't eat to much battery, I didn't benchmark anything but Exi looked to be the most "pure" mod for this sole purpose of adding Cut/Pase/Home/End things. I guess it's only a feeling because the only difference is that Exi is specifically hooking on SwiftKey app.
[Xposed Framework Modules] nvo2411:
Can u for a quick guidance how to do this with Xposed edge
[Xposed Framework Modules] Lord Sithek:
Gestures > Bottom edge > Swipe up or Hold > select Pie.

Then configure Pie:

Pie > Bottom edge and fill the fields with your selected actions, like cut, copy, paste etc. You can also use Input text action to quickly paste your most used texts
[Xposed Framework Modules] dima-82:
As far as I see Xposed Egde pro is discontinued as well.

So it will suffer the same fate as Exi...

IMO the developer of Exi could create a great own keyboard app and make a lot of money with it.

I would pay a lot for a good keyboard like Swiftkey + Exi or Swype + SwypeTweaks (a Xposed module too).
[Xposed Framework Modules] InvisibleKnight:
I maintain the idea of open sourcing the code in order for the community to create a set of patches for Revanced (it would work with or without root among other advantages) with the blessing and contribution of @Roughy. There is always the possibility of decompiling Exi's apk if it's not obfuscated.

In the meanwhile I found a partial solution for both rooted and not-rooted devices. Shoutout to @toneiv who responded to my request and integrated universal actions (copy, paste, cut and select all) in the latest release of his excellent UbikiTouch (playstore link). Just setup a bottom pie gesture with the aforementioned actions and you're good to go.

Unfortunately it doesn't always work (i.e. chrome search/address bar doesn't take the gesture action) but it is the best solution I could find at the moment.

A workaround for ASCII emoji would be to pin them in the clipboard panel of SwiftKey.
[Xposed Framework Modules] juandante:
Trought the years, all way back since Android 4.4 in 2012, there were many projects that added functionnalities as Copy/Paste/Select All/Begin/End on Android system wide.

Unfortunately they all have the same limitations, a lot of apps are developed in a ****ty way in a manner that if you don't integrate the above functionnalities inside the keyboard itself, they simply will not work in some apps.

And those ****ty apps are not the least common, Chrome is notorious for limiting app interactions (blocking screen readers, blocking apps with screen superposition, and what not).

So the best thing would be to have a keyboard itself with the Copy/Paste/Select All/Begin/End, the thing is that Swiftkey specifically is very good at word predictions, which makes it hard to go back on a less advanced keyboard.

Now, the question we must ask ourselves also, is how is it possible in 2024 we freaking have to complain a keyboard still don't have Copy/Paste/Select All/Begin/End ?
[Xposed Framework Modules] txx3:
hi can we make a request here.?