[Galaxy S II Themes and Apps] brightidea:
Announcing my 3.93Beta release of the Android Browser Arabic Shaping Patch and Hebrew RTL Fix

*News flash:* I have published this patch in the android market it can be downloaded by searching for: pname:com.brightidea.android.arabic_browser_patch or clicking here http://market.android.com/details?id=com.brightidea.android.arabic_browser_patch

QR

More devices are supported! - if your device couldn't be patched previously you're encouraged to try out the new version now - it may just work!

Background:

libwebcore.so is the program responsible for rendering webpages in stock browser and gmail application. This patch will enable arabic language support (shaping) in libwebcore.so.

It will also correct issues related to rendering Hebrew language (RTL Fix); It employs a patch developed by Erasmux, Mena and Classicaldude from www.iandroid.co.il for that. A link to their thread http://iandroid.co.il/forum/topic5657.html

I would very much appreciate it if you guys send any comments or feedback about this tool here. I would like to know about your experiences and any suggestions.

*this work is still under development but it seems most users are happy with the results so far*

I think we're closing on a final release as I am no longer receiving requests to patch new devices or complaints of instability about the the current version (3.93B)

So far tested with:

LG L3

Samsung Galaxy S II (STOCK 2.3.4), VillianROM 2.4.2, MIUI1.8.12b51

Nexus S (STOCK 2.3.4)

Samsung Galaxy S I (STOCK 2.3.4)

HTC EVO View 4G (STOCK 2.3.4)

HTC EVO 3D (STOCK 2.3.3) & 2.3.4

HTC Droid Incredible (STOCK 2.3.4)

HTC Salsa

Samsung Mini & Samsung Ace

Desire HD

Notion Ink Adam Tab

LG Optimus 2X (MIUI)

Archos & HTC Vision G2

HTC Sensation

Flytouch Superpad2

HTC Wildfire JokerDroid

huawei u8800 Ideos X5 Froyo

HTC Flyer

Samsung Galaxy 3

epic touch 4g

msm7227_ffa

Motorola Sholes Milestone

*and many other devices*

In case it works on your device please report device model and ROM version so that I add it in the list for everyone else to know

If you want to request support for your files just post your libwebcore.so here for me to have a look at it

Changelog:

3.93B LG L3 support added

3.92B Minor bug fix (affected Galaxy Y and similar devices) - only windows version updated

3.4-3.91B added support for more devices, optimized the code and fixed bugs

3.3B fixed bug in pre-froyo patch

3.2B extended support for older devices (pre froyo 1.0-2.1)

2.4B - 3.1B support for even more devices, bug fixes, and space optimization

2.3B UI update: mails files that failed the patch to me for review.

2.2B fixed bugs in the returned code the libandroid_runtime.so patching algorithm, now it should handle non-optimized files properly.

2.1B returned code is now structured in three bits (binary) bit0 is set if arabic patch failed, bit1 set if hebrew patch failed, bit2 is set if libandroid_runtime.so failed.

2.0B fixed bug in returned code to OS indicating always that process failed, now it indicates process succeeded only in case the arabic patch has been applied successfully.

1.9B small bug fixes

1.8B merged some code from libpatcher, compressed resources, built a better function to patch libandroid_runtime.so

1.7B bug fixes in UI

1.6B A few bug fixes in the UI

1.5B Added support for more devices Samsung Galaxy 3 + experimental inclusion of busybox in the UI

1.4B Cosmetic Fixes in UI

1.3B Cosmetic Fixes in UI

1.2B Cosmetic Fixes (enhanced UI Responsiveness) + Cleaned Code

1.1B fixed JokerROM patch

1.0B some fixes in JokerROM patch

0.9B fixed bug in superpad2 patch and published the app in the google market.

0.8B New Device Flytouch Superpad2

0.7B Code for Archos was not complete (libicuuc.so was missing export), this version generates libicuuc-arabic.so in case it is needed

0.6B even more devices (Archos)

0.5B added support for more devices (notion ink adam tab + ARMv6 Based - changed NOP instruction specifier) - fixed bugs (patch alignment in thumb mode)

0.4B added support for more devices/variants + premature support for ARMv6 devices *complete rework - code runs in ARM 32Bit mode now for compatibility with older devices* + Bug fixes

0.3B fixed minor bug: the output file was not placed in same path as original source

0.2B fixed bug in the library name patch (the .dynamic section parser)

0.1B Initial release

The Download Link:

Windows Binary *UPDATED* http://www.mediafire.com/?1iaqccy99il7htm

ARM/Thumb Binary http://www.mediafire.com/?ntmori3ud22olj4

32bit x86 linux binary (old - not updated) http://www.mediafire.com/?nd2g08msztp4l0p

As I am a strong believer in knowledge sharing, here's my source code: http://www.mediafire.com/?5rjj3318jargxsq

APK for Automatic Application *NEW!* http://www.mediafire.com/?hhczkjc5e98ty3y

How to apply:

1. download the program to a folder on your desktop

2. download *the original - which came with the ROM* libwebcore.so from /system/lib in your device (which must be rooted, ofcourse) and place it in the folder you created

3. open command line prompt (CMD), goto that folder on your desktop (cd \documents and settings\user\desktop\temp_folder) then run the program by typing "webkit_arabic_patch libwebcore.so"

4. this will produce two files: 1. libwebcore.so and 2. lib__bcore.so - copy these files back in your device under /system/lib - You could use root explorer or similar tool

5. check file system permission for the files /system/lib/libwebcore.so and /system/lib/lib__bcore.so and make sure they're correct

6. reboot your device

Thanks to all BETA testers

For those interested in a universal arabic patch for everything else but the browser&gmail check out sister thread by Madmack here http://xdaforums.com/showthread.php?t=1063205

For MIUI patch check http://forums.miuiandroid.com/showthread.php?723-Arabic-RTL-Fix-Now-with-T9-dialer-and-BROWSER!!!!

- Brightidea