LinuxQuestions.org
Welcome to the most active Linux Forum on the web.
Go Back   LinuxQuestions.org > Forums > Non-*NIX Forums > Programming
User Name
Password
Programming This forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.

Notices


Reply
  Search this Thread
Old 04-06-2011, 02:48 PM   #1
vzxen
Member
 
Registered: Jul 2010
Posts: 126

Rep: Reputation: 4
Is firefox written in GTK or QT ?


Hi,

I wanted to develop a cross platform GUI application.
So I thought I would research on Firefox.
I havent been able to find out which GUI framework is FireFox using ??
Is it GTK, QT, or what ?

Please assist.
 
Old 04-06-2011, 02:49 PM   #2
dugan
LQ Guru
 
Registered: Nov 2003
Location: Canada
Distribution: distro hopper
Posts: 11,198

Rep: Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307
GTK.

It also uses Mozilla's own higher-level UI toolkit, which is called XUL.

Last edited by dugan; 04-06-2011 at 03:01 PM.
 
Old 04-06-2011, 02:53 PM   #3
cascade9
Senior Member
 
Registered: Mar 2011
Location: Brisneyland
Distribution: Debian, aptosid
Posts: 3,753

Rep: Reputation: 935Reputation: 935Reputation: 935Reputation: 935Reputation: 935Reputation: 935Reputation: 935Reputation: 935
Quote:
The Mozilla toolkit has a backend that uses the Qt application and UI framework from Nokia. There were several attempts at this prior to the current Mozilla code for Qt version 4.x.

As of February 2010 Mozilla Corp does not ship products using the Qt backend, but individuals have produced Firefox and Fennec builds using it. Search wiki.mozilla.org for engineers' notes on building software using this backend.
https://wiki.mozilla.org/Qt

I dont know, but it might be useful info for you vzxen.
 
Old 04-06-2011, 03:02 PM   #4
vzxen
Member
 
Registered: Jul 2010
Posts: 126

Original Poster
Rep: Reputation: 4
Hi,

"As of February 2010 Mozilla Corp does not ship products using the Qt backend"
So what does it use now ??

Is GTK used by firefox even on mac or windows ?
 
Old 04-06-2011, 03:06 PM   #5
dugan
LQ Guru
 
Registered: Nov 2003
Location: Canada
Distribution: distro hopper
Posts: 11,198

Rep: Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307
Quote:
Originally Posted by vzxen View Post
Is GTK used by firefox even on mac or windows ?
Not on Mac, according to this link:

http://boomswaggerboom.wordpress.com...nder-the-hood/

If you want to use the same cross-platform toolkit that Firefox is using then you do not use GTK or Qt. You use XUL (which on Linux is a layer above GTK) and write it as a XULRunner app.

Last edited by dugan; 04-06-2011 at 03:11 PM.
 
Old 04-06-2011, 03:10 PM   #6
vzxen
Member
 
Registered: Jul 2010
Posts: 126

Original Poster
Rep: Reputation: 4
Hi,

There are lots of confusing links like these which this and that about Mozilla.

At the end of the day I just want to know whether can we develop STANDALONE GUI Applications (Compiled into binaries) using Mozilla ?
THAT is : IS Mozilla having a GUI Framework like QT, wxWidgets ?
 
Old 04-06-2011, 03:13 PM   #7
dugan
LQ Guru
 
Registered: Nov 2003
Location: Canada
Distribution: distro hopper
Posts: 11,198

Rep: Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307
Quote:
Originally Posted by vzxen View Post
There are lots of confusing links like these which this and that about Mozilla.
How unbelievably rude. You just said you weren't willing to look at any of the links posted.

Quote:
At the end of the day I just want to know whether can we develop STANDALONE GUI Applications (Compiled into binaries) using Mozilla ?
THAT is : IS Mozilla having a GUI Framework like QT, wxWidgets ?
Yes. See all of my previous posts in this thread.

Last edited by dugan; 04-06-2011 at 03:15 PM.
 
Old 04-06-2011, 03:19 PM   #8
vzxen
Member
 
Registered: Jul 2010
Posts: 126

Original Poster
Rep: Reputation: 4
Hi,

I am sorry, I didnt mean to be rude in any sense sir.
I read that article link posted by you.
Well, I got a little more confused. It says that Gecko is written in Cocoa. Then how does Gecko work on Windows ?
Is there a Gecko implementation for each platform ?

Also XUL (I am assuming XULRunner) as you said is the Higher Level API of Mozilla is for XML Based designing right ?
How does one compile that ?
I was going through Firefoxs files on Windows and didnt find any XUL based XML definitions. Just a xul.dll

Again, I didnt mean to be rude sir.
 
Old 04-06-2011, 03:28 PM   #9
dugan
LQ Guru
 
Registered: Nov 2003
Location: Canada
Distribution: distro hopper
Posts: 11,198

Rep: Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307
Firefox definitely uses GTK on Linux. It uses Cocoa on Mac OS. So yes, there is a separate implementation for each platform.

If you want to make your own cross-platform app, you probably don't want to do it the way Firefox did it. You probably want to write it once and just recompile it for each platform. You can do that with either GTK or Qt, although I'm personally a big fan of Qt.

If you must do it the way Firefox did it, then write a XULRunner app. Instructions are on the MDC. But I would recommend just using Qt.

Last edited by dugan; 04-06-2011 at 03:33 PM.
 
Old 04-06-2011, 03:33 PM   #10
vzxen
Member
 
Registered: Jul 2010
Posts: 126

Original Poster
Rep: Reputation: 4
Hi,

What is better for commercial apps QT or wxWidgets ?
I am a little unclear with Qts Commercial license.
If I want to sell my QT developed Application will I need to buy a License from QT or will I need to buy a License from QT only if I modify QTs source codes and then develop my app using QTs modified sources ?
 
Old 04-06-2011, 03:41 PM   #11
dugan
LQ Guru
 
Registered: Nov 2003
Location: Canada
Distribution: distro hopper
Posts: 11,198

Rep: Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307
Qt is better than WxWidgets.

As for Qt's licensing conditions: you did read this page, right?

http://qt.nokia.com/products/licensing/

You certainly don't need a commercial license to sell an app you developed with Qt. You don't even need a commercial license to modify Qt. You will, however, need one if you're planning to modify Qt and then keep your modified version of Qt to yourself.

Last edited by dugan; 04-06-2011 at 03:43 PM.
 
Old 04-06-2011, 03:48 PM   #12
vzxen
Member
 
Registered: Jul 2010
Posts: 126

Original Poster
Rep: Reputation: 4
Hi,

I did read that page sir.
I dont understand the Part "The commercial license will be required if you modify QT and want to keep the modifications with me"
Does developing a Desktop Application mean modifying QT. If my Application is a commercial one and I dont want to share the sources will I need to license QT commercial license ?
As far as I understand I guess we dont because developing a GUI app using QT doesnt amount to modifying QT right ?

Then what does modifying QT amount to ? Modifying QTs libraries itself, like its bindings and its SOURCE ? Am I right in assuming this ?
 
Old 04-06-2011, 03:56 PM   #13
dugan
LQ Guru
 
Registered: Nov 2003
Location: Canada
Distribution: distro hopper
Posts: 11,198

Rep: Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307
Your assumption is correct.

In most cases, your application will simply link against Qt. Linking against Qt does not involve modifying Qt. You don't need a commercial license for that.

In extreme cases, you might have to edit Qt's source code in order to make part of your application work. That's what it means to modify Qt. If you're willing to make your modified version of Qt available to people outside of your organization or company, then you don't need the commercial license. If you're not willing to give people outside of your company access to your changed version of Qt, then you do need the commercial license.

Last edited by dugan; 04-06-2011 at 03:58 PM.
 
Old 04-06-2011, 04:03 PM   #14
vzxen
Member
 
Registered: Jul 2010
Posts: 126

Original Poster
Rep: Reputation: 4
Hi,

Thanks for the clarification.

Another newbie question I have is that, does QT act like XULRunner ?
Will the app depend on QT binary of any sort ?
OR
Will it be a STANDALONE Destop Application like a standard Win32 Application (if developed in VC++)
 
Old 04-06-2011, 04:06 PM   #15
dugan
LQ Guru
 
Registered: Nov 2003
Location: Canada
Distribution: distro hopper
Posts: 11,198

Rep: Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307Reputation: 5307
Qt apps are standalone applications.

BTW, if you still want details about Firefox' GUI framework, this is a great overview:

http://www.kodewerx.org/wiki/A_Brief...Runner:_Part_1
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Firefox/gtk theme j.todd Linux - Software 4 10-11-2008 06:30 PM
Firefox 3 and GTK + 2.8 nigelc Linux - Software 1 07-03-2008 03:04 AM
Firefox and gtk problems terran4000 Linux - Software 1 12-17-2004 12:10 AM
Firefox doesn't use gtk theme Haiyadragon Linux - Software 3 08-28-2004 10:14 AM
firefox installer and gtk rahmed Linux - Software 1 08-23-2004 01:04 AM

LinuxQuestions.org > Forums > Non-*NIX Forums > Programming

All times are GMT -5. The time now is 04:34 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration