yashsingh1/xdaforums huggingface dataset:
[Windows Phone 7 Development and Hacking] ultrashot:
Opera Mobile 10 for Windows Phone 7

FOR FULL UNLOCK AND ROOT TOOLS UNLOCK

Opera Mobile is a property of Opera Software ASA. Neither Opera Software nor the author of this launcher are responsible for any damage caused by using this app.

Current version of launcher is 1.5

What's new?

Better interface

Root Tools support.

v1.2

Application window gets recreated on the startup if Opera was already opened.

Got rid of WindowTreeUpdater, now using system functions directly.

Font smoothing

Removed some unneeded system calls.

Now timeout is 3 seconds.

Virtual keyboard (SIP) support improved

Rotation support wasn't implemented in this version. Windows Phone 7 API doesn't support it in fully native apps.

Q&A

What is it?

That's Opera Mobile 10 initially built for Windows Mobile. I've just added an extra layer that makes it running.

Why does it only work on fully unlocked ROMs (like Dynamics ROM)? Isn't developer/interop unlock enough to run it? Can it work with Root Tools?

Developer unlock will let you install xap. Interop unlock will let inbuilt interop library work. Full unlock or Root Tools unlock will let Opera native exe run.

Which ROMs should I use?

Almost all custom ROMs (based on either Dynamics or DFT) or stock ROMs compatible with WP7 Root Tools.

What's countdown made for?

Press "Stop" and check.

When I press "Stop", there is a "Delete internal opera folders" button. Why is it here? I can delete this app like any other WP application...

The reason is that Opera launcher goes beyond the standard isolated store. For example, it creates "\Program Files\Opera Mobile 10" folder. Also it adds some absent libraries to \Windows\.

If you delete Opera launcher "like any other WP application", folders beyond the sandbox will still stay there. So, use "Delete internal Opera folders" button wisely :)

I have problems with starting it up...

If it Opera launcher's window doesn't appear at all, it means you have no Interop Unlock.

If it throws an error with "Check your unlock state" in the end, it means your unlock isn't enough for running native executables/copying files.

Anyway, you shouldn't post about it here. I will ignore such comments.

Opera Mini is discussed here.
[Windows Phone 7 Development and Hacking] Zloy Pryanik:
Thanx man!On Nextgen+ 2.2 works fine!

Very speed browser , but multitouch strange works...
[Windows Phone 7 Development and Hacking] ultrashot:
Who said it is supported? Opera Mobile 10/Opera Mini 5.1 don't support it.
[Windows Phone 7 Development and Hacking] Zloy Pryanik:
Clearly, thanks)
[Windows Phone 7 Development and Hacking] kirk999:
thanks for hard work
[Windows Phone 7 Development and Hacking] drkfngthdragnlrd:
I may be wrong, but didn't the Opera that came on the HD2 have Multi-Touch support?

EDIT: Nevermind, it looks like only Opera Mobile 9.7 had Multi-Touch support.
[Windows Phone 7 Development and Hacking] cyclonemon:
Very Thanks for ultrashot

This browser is supported my language

and fast browser
[Windows Phone 7 Development and Hacking] withwindows:
Well done...I hope Opera software develops a full-fledged browser for us, Windows Phone users. I would love to get my hands on better alternative of IE :(
[Windows Phone 7 Development and Hacking] mido-mido:
opera mobile tested on mido-mido rom...and works...

tnx...really fast and good....
[Windows Phone 7 Development and Hacking] Livven:
Great job! Can't test it, because my HD2 isn't fully unlocked, but I'll write it up on the portal (as I did with your Opera Mini port).
[Windows Phone 7 Development and Hacking] imotz:
i hav einstalled it but when i want to type an adress to the url bar only the numeric keyboard apears.
[Windows Phone 7 Development and Hacking] ultrashot:
Yes, this statement is correct.

Thanks!

Strange because neither Opera itself nor I can control keyboard mode. Probably keyboard behaviour got mixed with other apps.

Interesting fact: if you like to see keyboard built in Opera, set HKEY_LOCAL_MACHINE\Software\Opera10\Keyboard\UseNativeInput to 0
[Windows Phone 7 Development and Hacking] badboy70:
Works flawlessly on my HTC HD7, running NextGen ROM.

Great job!

Is it possible to apply your technique to any WM exe, or did you write a special wrapper specifically designed for Opera?
[Windows Phone 7 Development and Hacking] imotz:
i have startet opera directly after unlocking the lockscreen, maybee the numeric keyboard was selectet because of this.

after starting an other app and using the normal keyboard the normal keyboard wil also apear in opera mobile
[Windows Phone 7 Development and Hacking] ultrashot:
50/50. Some code parts are universal, some not.

Problem is that more apps we port, more apis we should emulate. Some WM6 apis were deprecated in CE7/WP7. For example, Opera Mini was working almost out of the box - I had to fix not so many things. At the same time Opera Mobile required creating an emulation layer for Connection Manager APIs.
[Windows Phone 7 Development and Hacking] marek1:
rotation

Why Autorotation doesnt work ? Will someone fix it ?

Thanks for info.
[Windows Phone 7 Development and Hacking] ultrashot:
Have you read the first post?
[Windows Phone 7 Development and Hacking] anon1811:
big thanks :)

Thank you, ultrashot, Opera Mobile 10 works really, really great (ok, no multitouch and no landscape, but I knew that before and I don't care much about that). I don't know how different porting Opera Mobile is compared to Opera Mini, but I tried both and Opera Mobile works

much

better for me. When I closed Opera Mini, the whole system was very sluggish until the next reboot, i.e. scrolling through the app list. But I have no problem with Opera Mobile, it works flawless, just like a native WP7 application.
[Windows Phone 7 Development and Hacking] ceesheim:
great work ultrashot

just wanted to say that you did a great jop again :)
[Windows Phone 7 Development and Hacking] dazza9075:
So long term, if the hard work was put in, it would potentially be possible to create a WM6 emulation layer, akin to Wine on Linux? ....
[Windows Phone 7 Development and Hacking] ultrashot:
Generally, yes, but just like wine, it won't support everything.

One interesting fact about native apps porting: not fullscreen windows get scaled up to fullscreen size. It is one of limitations... we can work it around I think.
[Windows Phone 7 Development and Hacking] marek1:
yes, red.

But can someone add some button for rotation?

or

Let run Opera not in native code ?

Thanks for info.
[Windows Phone 7 Development and Hacking] dazza9075:
Its a WM program, i believe WP has a completely different set of APIs available, you cant make Opera 10 work on WP without using an emulator unless you rewrite and compile it for WP

Im going to hazzard a guess and say that perhaps screen rotation isnt working because the needed WM APIs dont exist on WP meaning the emulator would need updating, which probably isnt very easy.

Opera aside, i get the feeling this could be something very big!
[Windows Phone 7 Development and Hacking] anon1811:
other ports?

Now since Opera Mobile works so good on WP7, though it's not even open source, I wonder if it's easier to port open source applications, like ScummVM or PocketDjvu? ScummVM runs on more than 20 different platforms, but unfortunately not on WP7. It certainly doesn't use the registry, since it's just a zipfile for Windows and Windows Mobile.

PocketDjvu runs on Windows Mobile solely, but the cab only has 412 kb and the installed program consists of a single .exe file with 1,06 MB (In case of PocketDjVu, I'm not sure about registry keys needed, but I couldn't find any, it seems to run "portable", too). Just asking, because for me these are the only two useful programs with no pendant on WP7.
[Windows Phone 7 Development and Hacking] jackrabbit72380:
hay can i use this on htc hd2 running bffv2 ?

if so how?

im getting error check unlock state?
[Windows Phone 7 Development and Hacking] Magpir:
Anyone has a video to show how it works?
[Windows Phone 7 Development and Hacking] fiinix:
Opera for "normal"-unlocked devices

First of i want to say thanks for getting to this special Opera moment. Great! Really appreciate your job.

I see in you code that you call "CreateProcess(Opera10-armv4i.exe, 0, out result, out handle);" and that specific method can only be executed on unlocked (policy free systems), preventing me as "normal" user not to run, and get "INVALID_EXE_SIGNATURE" (not errorcode "0" as of S_OK, that you want).

I do see that the exe is not recompiled (Opera10-armv4i.exe) (build date: Mars 17 2010), due it has a MS code signing. But that's not important.

From what i see that can be done, is to invoke "exe entrypoint" from DllImport caller, like this: ASMNativeMethods.Create<Action>("Opera10-armv4i.exe", "start (need more reverse engineering here)")();

To get this to work, the only hope is from within Opera itself, not requiring to "advanced dependencies" (like opening file here, there, everywhere) (file policy). Altho this can be configured in config.

The launch-layout probably would look like this:

- Taskhost.exe app://{guid} (WP7 C# entrypoint)

- Loaded += ASMNativeMethods.Create<Action>("Opera10-armv4i.exe", "start")();

Thats it.

Willing to cooperate?
[Windows Phone 7 Development and Hacking] neptunex3:
the latest version is not working properly....whenever i try to open any web....it shows " could not connect to remote server" but i have a strong WiFI and Network connection.....my other browsers are working fine in the same time.

can you please check.

thanks
[Windows Phone 7 Development and Hacking] AndrewSh:
Heh :) Sure - ultra first wrote the device unlock set for his device, than he fixed Operas. So the stuff is for "normal" unlocked users :)
[Windows Phone 7 Development and Hacking] dazza9075:
nope, xboxmod is aware and looking in to it
[Windows Phone 7 Development and Hacking] Magpir:
So is this like how opera will officially released it?
[Windows Phone 7 Development and Hacking] jackrabbit72380:
COOL thanx for the reply!
[Windows Phone 7 Development and Hacking] dazza9075:
Id hazard a guess that they will rewrite it IF they can get it working rather than this method as the market place wouldn't allow this
[Windows Phone 7 Development and Hacking] ONDR4SH3K:
Desktop view in Opera Mobile:

In the browser address bar type opera:config

Scroll down to User preferences and click on it

Scroll to custom user agent

Type this into the text box Opera/9.80 (Linux; en) Presto/2.7.81 Version/11.00

Click save

Restart the app

Works. :) For someone, who will not redirecting to m.adress!
[Windows Phone 7 Development and Hacking] ultrashot:
check any opera mobile 10 video, they should exist i think.

Good idea, open source projects should be damn easy to port.

Opera doesn't try to connect, only system manages internet connections. So it shouldn't be the problem with opera itself.

Who knows? Most likely they will port it to interoplib or something else ms will allow at that time.
[Windows Phone 7 Development and Hacking] drac667:
Could you also test Mozilla Firefox for Windows Mobile?

The good news with Firefox is that it's an opensource project and that you can get the current version compiled for Windows Mobile/Phone.
[Windows Phone 7 Development and Hacking] anon1811:
Firefox?

Is there really any benefit from porting Firefox?:confused: Now you have IE, Opera Mini and Opera Mobile. Not even a beta version of Firefox has ever been released for Windows Mobile. It is certainly no longer developed and will never reach Opera. And I guess it's something completely different, and very likely impossible, to port Windows software (Firefox desktop version) to Windows Phone.
[Windows Phone 7 Development and Hacking] imotz:
he's speaking about fenec this was the mobile version of firefox but for win mobile there was only a laggi alpha.

it would makes more sense to port Iris browser than fenec.
[Windows Phone 7 Development and Hacking] arses:
Thanks for your fantastic action.

Please work on bluetooth file transfer.
[Windows Phone 7 Development and Hacking] Magpir:
I notice u need to enable mobile view and 80% Zoom level to display webpages correctly.

if not the loading is slow or text is to small.

also appreciate if the loading screen is instant .

andthe best part is that it saves tons of battery life compared to IE by caching pages
[Windows Phone 7 Development and Hacking] ultrashot:
Instant loading isn't something to add at the moment just because Opera will waste space. Redirecting to isolated store will be done next time (it isn't hard at all considering current code base). Currently I am looking for a better way to port native apps - the way that would allow screen rotation and better ui in general. But that's also for a next time.
[Windows Phone 7 Development and Hacking] All-Star:
Any chance to get Opera Mobile to E900?

I have MFG unlock for xap's deploying.
[Windows Phone 7 Development and Hacking] thesecondsfade:
I gotta be honest. I don't see how Opera Mobile or Mini is better than IE9 on WP7. I don't see a point cuz IE is so awesome.
[Windows Phone 7 Development and Hacking] Magpir:
Ever since the mango IE came about i notice a decrease in battery life when using IE because mango IE uses hardware acceleration

in NODO i believe hardware acceleration was not enabled.
[Windows Phone 7 Development and Hacking] AndrewSh:
thesecondsfade, forgive me that I gotta be honest too, but:

This topic is not in WP7 Apps & Games. It's in Development section. And it's an excellent example how to run native wm exe in wp7. If you are the end user (according to your signature) - you are free to use whatever you want but I would offer you to use applications from the market and leave feedback in Review part of it. If you are developer - just come to this thread with proposals and ideas to help to develop.
[Windows Phone 7 Development and Hacking] ultrashot:
Via WiFi - yes, it is awesome. Via 3G/2G - NO. On some carriers it will intensively eat up your money.
[Windows Phone 7 Development and Hacking] Magpir:
i beleive opera is better, it has the tabs and all

and full screen too...

all u can ask for in any browser
[Windows Phone 7 Development and Hacking] afehaid:
Thanks for this great job ..

It's very fast and nice ..
[Windows Phone 7 Development and Hacking] Magpir:
however i saw some problems with opera mobile 10

it cant render pages in correct dimensions and format even with the mobile view on

so i tried opera mini and strangely that works better.
[Windows Phone 7 Development and Hacking] thesecondsfade:
I agree with that. Opera Mini was always better for me. Now if we could somehow get it to open YouTube correctly it would be perfect.
[Windows Phone 7 Development and Hacking] GoodDayToDie:
If you can tweak the user-agent string, it will recognize the IE Mobile user agent and respond by sending vnd.youtube links, which the phone will open in the YouTube app. Don't know if that's possible though; I can't run this app yet.

Alternatively, if it supports HTML5 <video>, just go to youtube.com/html5 and opt into that. It's what I do on IE9, both phone and desktop.
[Windows Phone 7 Development and Hacking] irfanindian:
Damn!! I'm badly waiting for a ROM for focus that can support this!
[Windows Phone 7 Development and Hacking] thesecondsfade:
Can the method you use to enable native EXE be applied to other WM programs? For example: FPSCE?
[Windows Phone 7 Development and Hacking] Magpir:
youtube embedded in webpage needs hardware acceleration. i think all opera movbile versions cant do these correctly
[Windows Phone 7 Development and Hacking] irfanindian:
And to add - you can always use the default browser or the youtube app for the said purpose :)
[Windows Phone 7 Development and Hacking] ultrashot:
Can be, but most likely not for fpsece. And not for many other apps.
[Windows Phone 7 Development and Hacking] dazza9075:
This is a long shot but, have you heard of memory map? Its a GPS based detailed map program used for walking, apart from the GUI it would need access to location services would it be possible to port this? If the launcher could get gps info and pass it along as a virtual com port I could could see it working, kinda of! Anyhow just curious

Sorry thought I'd sent that as a pm, apologies for off topic comment
[Windows Phone 7 Development and Hacking] Magpir:
u will find opera mini is very good on battery than the original IE

because i think its more power efficient than IE
[Windows Phone 7 Development and Hacking] FTP4:
I have fully unlocked HTC HD7 but opera doesnt work.
[Windows Phone 7 Development and Hacking] Vintage144:
I guess windowBreak isnt the same as heathcliffs interop unlock , because I get the message Oper Mini Launcher check your unlock state , or I could have missed something in the op?

I didnt read it , sorry
[Windows Phone 7 Development and Hacking] ultrashot:
both ARE NOT full unlocks.
[Windows Phone 7 Development and Hacking] GoodDayToDie:
@Vintage144: Seriously... what?

Both WindowBreak and Heathcliff74's Interop Unlock (for Samsung, at least) work the same way and do the same thing.

Neither one *fully* unlocks your phone, and that's what's needed for Opera. In states, *quite clearly* on the thread, that interop unlock is *not* sufficient!
[Windows Phone 7 Development and Hacking] FlashTek95:
Could you use the htc root project to run it on any htc device?
[Windows Phone 7 Development and Hacking] Vintage144:
Relax Felix , I stated so when I wrote that , I even said sorry , I went back and re read it , its not that big a deal , however sometimes things work anyway and thats good to know , if it does , I dont care about Opera anyway!

Whoever the OP is keep up the good work !
[Windows Phone 7 Development and Hacking] dormix:
I think there is something wrong on "Bazaar For PC". link
[Windows Phone 7 Development and Hacking] AndrewSh:
You should ask in Bazaar thread about that. I suppose the letters in the first post of this topic are big and red enough for reading:
[Windows Phone 7 Development and Hacking] dormix:
I had read it since the first post and I agree with you.
[Windows Phone 7 Development and Hacking] Martin7Pro:
Landscape

Hi Ultrashoot. I use your app on HTC7Pro. All is fine, but using HW keyboard with portrait orientation is really crazy. Do you know, if any way exists to change orientation (not by gyro or keyboard plugg, I mean landscape only)? I tried so much thinks, but with no success still. I mean used version had automatic orientation changing on WM, only on HD2 must be used any hack. Is possible to do something similar on WP7? I will try do more inlude native programming, but I need little info. M.
[Windows Phone 7 Development and Hacking] ultrashot:
Martin, if I knew that, I would have already integrated it into apps.
[Windows Phone 7 Development and Hacking] Martin7Pro:
Thanks. I tried much in register and Opera inifiles, but still with no success.

There is this unicode part in Opera10-armv4i.exe:

X† A u t o R o t a t i o n S o f t w a r e \ H T C \ H T C S E N S O R \ G S e n s o r A u t o O r i e n t a t i o n C o n t r o l P a n e l \ M o t i o n S e n s o r S l i d i n g O u t S o f t w a r e \ O E M \ K e y b o a r d I s S l i d e O u t S y s t e m \ C u r r e n t C o n t r o l S e t \ K e y p a d S l i d e S t a t e A T H E E v e n t C h a n g e d E x S o f t w a r e \ H T C \ H T C S e n s o r \ G S e n s o r E v e n t C h a n g e d S o f t w a r e \ O p e r a \ G S e n s o r I d l e T i m e H T C _ G S E N S O R _ S E R V I C E S T O P H T C _ G S E N S O R _ S E R V I C E S T A R T ¬’ ” @“ H R o t a t i o n S o f t w a r e \ S a m s u n g \ M o t i o n S e t t i n g s M A G 0 :

I mean Opera see, if HTC or Samsung is present, and wait to event if HTC does autorotation (this service sets any event on WM, probably only for byreg whitelisted apps), or reads Samsung MotionSettings key (0=portrait, 90=landscape). But, when I rename my phone to Samsung and set this value, Opera is in portrait mode still. Is this your, or original Opera code? Do you know, how debug/disassemble it?

I see this, but I do not know, what do more:

Load module: Opera10-armv4i.exe

Load module: coredll.dll.0405.MUI

Load module: LPCRT.dll

Load module: waveapic.dll

Load module: phone.dll

Load module: PACMANCLIENT.dll

Load module: ZTrace.dll

Load module: ril.dll

Load module: OMXCDLL.dll

Load module: omx32.dll

Load module: OMXSHELL.dll

Load module: Normaliz.dll

Load module: iertutil.dll

Load module: urlmon.dll

Load module: WININET.dll

Load module: OMMAPI.dll

Load module: CEMAPI.dll

Load module: taskscheduler.dll

Load module: iphlpapi.dll

Load module: WINNSI.DLL

Load module: NSI.dll

Load module: CXPORT.dll

Load module: FPCRT.dll

Load module: SNASClient.dll

Load module: RPCRT4.dll

Load module: ossvcs.dll

Load module: PIMUTIL.dll

Load module: shlwapi.dll

Load module: RPCRT4LEGACY.dll

Load module: CommonUtils.dll

Load module: pimstore.dll

Load module: TIPCADAPTER.dll

Load module: EMCLIENT.dll

Load module: AYGSHELL.dll

Load module: OLEAUT32.dll

Load module: eventsnd.dll

Load module: myfuzzyime.dll

Load module: shcore.dll

Load module: Secur32.dll

Load module: ole32.dll

Load module: Frame.dll

Load module: omxccore.dll

Load module: SSLLSP.DLL

Load module: wspm.dll

Load module: nspm.dll

Load module: WsCmExt.dll

Load module: WS2.dll

Load module: CmNet.dll

Load module: opera-wince5-armv4i.dll

Load module: coredll.dll

M.

Edit: I seen fix-sized dlls renaming, Then, you probably not disassembly all files, only change any inner mapping, is not it? Then, there is no way to debug disassembled Opera code?
[Windows Phone 7 Development and Hacking] Martin7Pro:
More info: Landscape mode in the same version (10.0 non KP final) is saved to file .\profile\datastorage\1\landscape.dat . But in WP7 version it is ignored. M.
[Windows Phone 7 Development and Hacking] ultrashot:
Martin, no need to try making it landscape - opera won't be able to rotate the screen, WM functions don't work here since all you see on a display is drawn in a special compositor and actually screen is configured to be portrait-only.

The only possible way to make good rotation - via HwndHost which has internal attribute in System.Windows.
[Windows Phone 7 Development and Hacking] Martin7Pro:
Thanks for info. Do I understand right Opera rotation is based on system rendering property, not Opera code implementation? I do not know WM, I have got only WP and PC devices. What do you mean about any HTML5 rotated element using as Opera envelope, is it possible? M.
[Windows Phone 7 Development and Hacking] ultrashot:
That's it, problem is in system, not in opera.

what? i don't get what you mean
[Windows Phone 7 Development and Hacking] Martin7Pro:
Thanks for info. I will study more, it is relatively important for me. I have operator data limit and turbo is possibility to solve it (on my Nokia 9300 with j2me Opera Mini I never seen above limit, on WTC7Pro every month). Can you write more about HwndHost, I coud not google anything about WP7 using. Do you mean rotating grafical output within Opera or changed system dll code, or rotate all phone display independent of concrete appliation?

Forget it, it is my mistake. Any presumed future html features will probably never implemented in WP7.
[Windows Phone 7 Development and Hacking] shubham412302:
Is there a new version coming in future
[Windows Phone 7 Development and Hacking] djstujones:
Nice one. Always handy to have more than 1 Browser on a device. As if 1 won't work on a site. The other will. Keep it up :good: :highfive:

Sent from my unlocked HTC HD7