Winamp Browser Support
This wiki page has been created to help Web developers and QA engineers optimize their web pages to be rendered within the Winamp client application.
Where are web pages loaded within Winamp?
Winamp has 2 primary areas that allow external web sites to be loaded within the client experience -- Online Services and the Bento Skin Browser
1) Online Services
Online Services is a feature within the Winamp Media library that allows 3rd parties to submit their web site to appear as an integrated service within the client. An Online Service is distinct in that the web pages displayed are able to interact with the Winamp Client by leveraging the Online Services APIs. Check out the Online Services Developer section of this wiki for more information
2) Bento Skin Browser
Winamp's default skin, named "Bento", has a built in web browser that allows users to freely surf the web, create bookmarks, etc.
What browser engine is embedded within Winamp?
Winamp embeds the Internet Explorer object that is resident on the users local machine (IE only). As such, the browser support matrix for the Winamp client is shown in the image below.
How can I detect that my page Is being loaded inside Winamp?
The easiest way to determine if the web page is being loaded within the Winamp client is by checking for Winamp specific strings in the user agent (see below).
Example: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; .NET CLR 3.0.04506.648) omBrowser/1.3 (Winamp 5.57 build 2596 Beta, JSAPI2)
What unique conditions exist as compared to a stand alone browser?
The biggest difference is the available screen real estate. The browser window that loads within Winamp is significantly smaller than a fullscreen stand alone browser window. To avoid horizontal scroll bars from appearing by default, the page grid size that designers and web page creators should target for is 660p wide (see image below).
Default omBrowser Settings:
By default the omBrowser enables "Show a notification for every JS error," and also Script debugging. In the production environment right clicking is also disabled by default.