I’ve been working with d.i.z. as he’s found a way to hex edit Opera binaries to disable the “Click to activate” feature that Opera has implemented on flash items. I won’t get into the details of why they implemented this myself, but I’ll just quote from the post that d.i.z. made about this topic.
Some background:
Eolas (E) is a company that patented a certain way of interacting with embedded objects on web pages. This is why in Opera, you sometimes have to click (for example) a flash player to “activate” it before it can actually be controlled. That sucks.Opera is the only browser that I know of, that currently have this annoying system in place. IE had it, but it reached to a pocket full of money to buy a license from E.
Other (open source) browsers don’t implement this mechanism because E was kind enough to commit not to pursue legal actions against open source browsers that are violating its patent. Why? I guess because it wouldn’t really be able to enforce that anyway. Builds without this future would pop up everywhere in no-time.
Now that you understand a little bit about what is going on and the feature that you can remove, I have to tell you the bad news. So far we’ve only had time to patch Windows builds and most Intel Linux and Linux x86_64 builds.
If you’re looking for the Windows patch files then head on over to d.i.z.’s blog post and grab the download there as I will not be maintaining that one.
If you’re looking for the Linux patches, then you’re at the right spot!
I’ve managed to write three script files that will do everything you want! You will only need to use one of them if you only want to patch your version. The files are as follows:
Patch script
This script obviously patches your Opera file to remove the “Click to activate” feature. You only need to run this one if you just want to remove that and forget about it. Running it more than once will not affect the file as the hex search will no longer match after being patched, so that is why it will fail if the file has already been patched.To use this script, run the following commands in the terminal:
chmod +x ./click-to-activate-removal-opera-10.sh
sudo ./click-to-activate-removal-opera-10.sh
Switch between patched Opera and unpatched Opera script
This file will, as it says, rename your patched file and unpatched file accordingly so that each time you run it you will be able to alternate back and forth between patched and unpatched versions. This will no longer work if you remove your unpatched version which is created and saved originally by the Patch script above.To use this script, run the following commands in the terminal:
chmod +x ./click-to-activate-removal-opera-10-swap-patched-unpatched.sh
sudo ./click-to-activate-removal-opera-10-swap-patched-unpatched.sh
Patch removal script
This script is a clean-up tool. If you decide for some reason that you don’t want the patch anymore and want to remove it completely, then run this script. It will delete the patched file, so switching between patched and unpatched will no longer be possible until you reapply the Patch script.To use this script, run the following commands in the terminal:
chmod +x ./click-to-activate-removal-opera-10-unpatcher.sh
sudo ./click-to-activate-removal-opera-10-unpatcher.sh
Please make sure that you have completely closed Opera before running any of these three scripts.
After using any of the above scripts, you are free to delete the script. You can always grab it again here if you wish, just make sure to bookmark this page!
The example usage commands that I posted are correct for Ubuntu/Debian. I’m not sure how they compare across distributions, but just make sure to make the script executable and then run the script with root privileges.
I’m sure you noticed that the file names are very long. You can feel free to rename them to anything you want to. They run independently of the file name. I just named them very descriptively to help myself keep them sorted and maintainable. 😉
As usual, if you wish to use any of these scripts then you understand that I am not responsible for any damages done to your computer (even if it explodes 😛 ) and you accept the responsibility on yourself to deal with any results, good or bad.
If you experience any problems with these files then please let me know in the comments. Notice that these only work so far for Intel Linux builds and Linux x86_64 (64-bit), so don’t waste your time with other builds unless you want to help extend the scripts!
Also, please notice that currently this Patch script does not work for the Intel Linux builds that were compiled with GCC 2.95, but hopefully it will be supported soon. If you’re using a build other than this that is Intel Linux or Linux x86_64 then please let me know the version you downloaded so I can look into it!
I extend a special thanks to d.i.z. for making this hex edit hack possible and helping me form these scripts in the first place!
Enjoy!