Why mozilla plugins and xulrunner being used by WebKitGTK? - webkit

I've got a simple application using WebKitGTK 1.6.0 that simply displays a webpage in a window.
When I browse a page using it that contains an Ogg/Theora video and HTML5 video element it appears this simple application is using some mozilla plugins and even xulrunner. Can somebody tell me why this is?
Here is a list of files open by the program using lsof.
I built WebKitGTK 1.6.0 and most of it's dependencies from source including gstreamer-0.10 and the gstreamer plugins. No where do I recall configuring WebKitGTK to using any mozilla plugins or xulrunner.
What might be causing the mozilla plugins, libtotem and xulrunner to be loaded? I provided the link to the files the application is using in hopes that it might provide a clue.

Lol, found the reason. I have FireFox, totem and totem-mozplugin installed on my system. Once I removed totem and totem-mozplugin, WebKitGTK used the appropriate Gstreamer plugins to render the video and audio.

Related

Adding Additional Codecs to Chromium Build (outside of chromium-codecs-ffmpeg)

I am trying to add additional codec support to Chromium for HTML5 media play back. I've installed the package chromium-codecs-ffmpeg-extras to include a few more than what is included in original download.
I am curious if anyone knows the amount of work/ if its possible to fork the chromium code and add additional codec supports (.ts, .avi, etcc). Is it as simple as forcing chromium to use a different ffmpeg library or possibly use VLC to decode all of its videos?

Overriding Dojo version for a particular Xpages database

Apple's iOS 8 breaks certain tap functionality in versions of dojo prior to 1.9.4 (see Xpages mobile controls not working in iOS8
The current version of Dojo in Domino 9.0.1 FP2 is 1.9.2 but that does not fix the issue. You have to use at least 1.9.4.
I have downloaded 1.9.4 and placed it in the correct folder on our test server. But I cannot get things to work. I changed the folder name of dojo 1.9.4 to 1.4.0 as I only want to use this version for 2 dbs that are having the problem.
Question 1:
What line do I put in the xsp.properties file:
xsp.client.script.dojo.version = 1.4.0
xsp.client.script.dojo.path = / domjs / dojo-1.4.0
Question 2:
There are so many things to download when I go to the dojo download page. I downloaded the zip file and used that.
When I run code to test what version of dojo I have I get 1.9.4. But when I try to load my page, I get an error.
dojo._loaders: TypeError: dojo._loaders is undefined
Any help would be GREATLY appreciated.
You probably have the right dojo zip, this one: http://download.dojotoolkit.org/release-1.9.4/dojo-release-1.9.4.zip. As you say, unzip that to the dojo-1.9.4 folder in <server-install>\data\domino\js\, or name the folder 1.4.0 if you want to specify it for only a few apps.
You will indeed need to copy the IBM folder from the <server-install>\osgi\shared\eclipse\plugins\com.ibm.xsp.dojo_9.0.1.<date-stamp>\xsp.dojo.jar into your new 1.9.4 (or 1.4.0) dojo folder. Little chance of anything working without it. Copying the ibm folder from the 1.5.2 folder is a bad idea as that is old code, and you'd certainly have issues with it working with dojo 1.9.4. In Fix Pack 2, the ibm folder from the plugin was tested/designed to work with dojo 1.9.2 (the version in that jar), so it should play fairly nice with 1.9.4.
In your XPages app, in the xsp.properties, you should only need the line:
xsp.client.script.dojo.version = 1.9.4
Rebuild your app, restart the server etc, and you should be good to go.
DISCLAIMER: This is a work-around, not a supported solution by IBM. There may be unexpected issues using this approach. It's used at your own risk.
You commented already on that topic here so I think you tried this one? http://hasselba.ch/blog/?p=323
This is the SO thread: XPages mobile controls not working with iOS 8

Adding Dojo 1.6+ in Lotus Notes database v8.5.3

Lotus Notes 8.5.3 uses dojo 1.5.1. However I want to use dojo 1.6/1.7 library in my NSF database. How can I do it? I tried to use the technique suggested by Keith Strickland in his blog but no luck.
I need to include the dojo library in NSF database and not on server.
The reason I want to do this so as to use the advanced Dojo Mobile libraries (from dojo 1.6/1.7) in my XPages.
UPDATE: I even posted this question on XPages forum some time back but no replies.
The Domino 8.5.3 server uses Dojo 1.6.1 for XPages. You should see this if you view the HTML source of a test application.
As an example, I see this in one of my applications:
"/xsp/.ibmxspres/dojoroot-1.6.1/dojo/dojo.js"
If you are going to create apps using Dojo Mobile then take a look at the Extension Library and the latest Upgrade Pack 1 for Domino 8.5.3. Both includes XPages Mobile controls.
Per's correct that the Dojo plugin that is loaded by default is 1.6.1 (the ".1" is because it includes IBM-specific code and this means it differentiates it from anything a developer has added in).
The files in the js folder on the server / client are 1.5.1 and this is needed for iNotes.
You can change the Dojo version in the xsp.properties by setting xsp.client.script.dojo.version in Package Explorer. Incidentally UP1 offers a nice visual editor for the xsp.properties file.
However, currently if you change this setting you need to uncheck "Use runtime optimized javaScript and CSS resources" or it will still use the plugin. I noticed this too late for anything to be done before the Gold release.
If you add 1.7 files to the server and include the IBM folder from 1.5.1 it may work. AFAIK there's no way to get the IBM folder from the plugin code.
See my blog post for more details: http://www.intec.co.uk/domino-8-5-3-greater-power-over-dojo-thanks-ibm-for-your-work/

Using a plugin generated with Firebreath in a Firefox Extension?

Is it possible to use a .dll made with Firebreath in a Firefox extension?
Currently, I am trying to port an extension I made for Google Chrome that uses javascript to get the HTML of the document, and then calls a function from the .dll and passes the HTML of the document as a parameter. The .dll then saves the file and launches a program.
Is there a simple way to port this functionality over to Firefox? Or will I have to rewrite the code using XPCOM?
XPCOM is too complicated for simple things which is why Firefox 4 and above has js-ctypes (see https://developer.mozilla.org/en/js-ctypes for an overview and https://developer.mozilla.org/en/js-ctypes/Using_js-ctypes#Calling_Windows_routines for an example). This allows you to load the DLL and call an exported native function easily. If you really need to use this DLL as an NPAPI plugin things get more complicated because you need a window to load the plugin into and Firefox unlike Chrome doesn't have a dedicated background window for that. But I guess that you only turned your DLL into a plugin to be able to use it in Chrome.
On locating your DLL to use with ctypes.open() see my answer here: Reference a binary-component to js-ctypes
For simple functionality, I also recommend js-ctypes. It is easy to use and provides good isolation (since scripts on the page cannot access the imported library).
If you really need to access an NPAPI plugin from any page, the standard approach seems to be to create an extension and modify the DOM of each page to include the plugin:
Scriptable NPAPI plugin doesn't work with Firefox
yes you can use a firebreath dll as an firefox extension. you can use the same javascript with some modifications for Firefox and for HTML you have to use XUL. You have to load the script in a XUL that overlays default firfox's browser.xul
overlay chrome://browser/content/browser.xul chrome://Yourproject/content/Youroverlay.xul
Inside Youroverlay.xul, you can add the below line to embed Firebreath dll
<?xml version="1.0"?>
<?xml-stylesheet href="chrome://global/skin/"?>
<overlay id="myOverlay" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns:html="http://www.w3.org/1999/xhtml">
<script type="application/javascript" src="chrome://Yourproject/content/background.js"/>
<vbox style="height:0;">
<html:embed type="application/x-myproject" id="myproject1" style="height:0;"/>
</vbox>
</overlay>

How to create firefox3 sidebar?

Hi I want to create sidebar in Firefox 3 but have no clue how to do this.
I find tutorial on MDC (https://developer.mozilla.org/en/Creating_a_Firefox_sidebar) but after installation extension do not work with "not compatible with Firefox 3.0.3" error.
Does anybody have any tip or link to some resource about how to make sidebar?
Well, a Firefox extension, be it a sidebar, toolbar or whatever other type of extension is basically a mix of XUL and Javascript, all packaged nice and tidy into an installer package called an XPI.
For an excelent XUL tutorial see http://xulplanet.mozdev.org/tutorials/xultu/.
For information about building extensions and the package format see https://developer.mozilla.org/en/Building_an_Extension.
For a sidebar you basically have to override the browser's sidebar area by using an overlay. For good overlay information check out MDC and the excerpt at http://www.oreillynet.com/pub/a/mozilla/excerpt/FirefoxHacks_chap01/.
All you need except the links above is knowledge of XML, some Javascript and a creative mind.
To fix the problem you faced above, you have to specify the correct version of Firefox in the install.rdf file. For Firefox 3 set maxVersion to:
<em:maxVersion>3.*</em:maxVersion>