Foxkit Web Browser
Web
Score 74%
Description:

Foxkit is a KDE Web Browser written using WebKit, Qt, and KDE. Foxkit is still in early development so lots of things are unimplemented (bookmarks, history, javascript opening new windows), but many things work decently well. If you experience any bugs please report them either here, the Google Project page, or just send it directly to me. Please include a backtrace if it crashes!

To run Foxkit, download the source archive on this page (or the google code project page) then extract the files using whatever program you like to use. Then on the command line run the following commands:
[indent]cd foxkit-0.0.5
cmake .
make
mkdir ~/.kde4/share/apps/foxkit
cp ./src/foxkitui.rc ~/.kde4/share/apps/foxkit/foxkitui.rc
./src/foxkit[/indent]

The name of the folder '~/.kde4' may vary based on your distro, use 'kde4-config --localprefix' to find out what it's named on your system. The required packages are Qt 4.4, QtWebKit (possibly packaged independently depending on the distro), KDElibs 4, as well as the -devel packages for each. CMake is required to build Foxkit.
Last changelog:

9 years ago

0.0.5 - Cookies are now saved across sessions with a tiny dialog to see what cookies are currently set (but can't edit them yet). Fixed the memory leak from long ago, lots of small fixes and improvements. Added the ability to have multiple top-level windows open at once. Opening new windows/tabs via Javascript is still unimplemented, but other things should work fine. Should handle SSL websites with certificate errors better (i.e. for self-signed certificates), although no notification of using SSL is given yet. Error pages might not function well/at all yet.

0.0.2 - Middle Click, Ctrl+Click on links will open them in a new tab. You can also right mouse click on a link to get a context menu. Lots of bug fixes related to tabs, some consistency changes, a major optimization, and possibly a minor memory leak ;).

ajayshyanbhog

9 years ago

Hi,

Just built Foxkit on Archlinux. Looking good so far, thanks for the effort!

Some stuff I noticed. Foxkit does not appear in KDE menu. I'm using KDE4.1.

You also mentioned 'make install' in 0.0.6 will place foxkitui.rc. Will it do this automatically for new users too?

Note: This comment was posted using Foxkit :)

Report

C

kit

9 years ago

"Looking good so far, thanks for the effort!"

Good to know!

"Foxkit does not appear in KDE menu."

Yeah, I haven't made a .desktop file for Foxkit yet, though since I finished making the first icon a little while ago I don't really have any excuses now, there shouldn't be any reason that that won't work in the next version.

"You also mentioned 'make install' in 0.0.6 will place foxkitui.rc. Will it do this automatically for new users too?"

Yeah, the next release should automatically do that for both new and old users alike, though older users might wanna delete the foxkitui.rc file they manually copied (I can't recall if I've changed that file in a while, I think I have).

Basically both of those problems are because I kept trying to push back learning more about CMake :P 'make install' should also be working if you pull the sources from the git repository.

In the next week or so I really should push another release since I haven't done any in a good while and theres been lots of nice changes.

"Note: This comment was posted using Foxkit :)"

At least I know it works on some else's computer :P

Report

ajayshyanbhog

9 years ago

Running Foxkit built from git. Filed a bug report and enhancement request you *may* be able to address before doing a 0.0.6 release.

Help-about Foxkit shows "0.3-git" which is a bit confusing!

Report

C

kit

9 years ago

>Help-about Foxkit shows "0.3-git" which is a bit confusing!

Now thats an oversight if I've ever seen one! I'm not even to 0.3 yet! :P The version string is now set to 0.0.6-git, though I'll need to remember to set it correctly for release... and I think we all now know I'll probably forget (hopefully I won't!)

Report

nthread

9 years ago

First, I just wanted to say, great work on this web browser!

You might want to add in a checkbox(or something) that allows the program to remember a user's selection of "continue" or "reject" on the SSL certificate-error popup. Currently, for every image that is loaded on one of these pages, the same message will appear.

Report

C

kit

9 years ago

Thanks for the feedback!

I've added that problem to my todo list, I've still got a good bit of work to do wrt SSL certificates and not much time so I might not be able to get around to it for a bit, but eventually I should!

Report

DanaKil

9 years ago

Hi,
I see that you have done some work in 0.0.2 about the opening of links. Maybe you will get interested by this wish I initially added for Konqueror :

http://bugs.kde.org/show_bug.cgi?id=162025

It is about the ability to force "open on new page/tab" links to open in the same tab by holding the shift key or clicking on them with MMB. Actually, it's the exact opposite of forcing normal link to open in a new tab/windows, but I can't find this behavior in any webbrowsers.

It always bothers me when I'm on a site that force me to open links in new tabs because the first action I will do after clicking is closing the first page.

Cheers and thanks for your work :)

Report

bizzl

9 years ago

Actually, I would be disappointed if the browser would not open a new tab on MMB. Perhaps Shift+MMB instead. Or make it optional.

Report

DanaKil

9 years ago

Konqueror add a small '+' icon when hover over a link that open in a new tab so you always know where the link will open. But I agree that when you often open links in new tab (like me), the behavior I just described can sometime get annoying... The shift+MMB is indeed a more elegant solution.

Report

C

kit

9 years ago

Having the cursor change to include a little '+' or some other symbol when hovering over a link that'd by default open a new tab/window sounds like it'd be a good idea, although I'm not sure if it'd be possible to know for a javascript link if it'd try to open in a new tab or not.

Having MMB always open in a new tab (except those pesky javascript links like GMail uses...) and shift+MMB (try to) always open in the same tab would probably be the most user friendly way to do it, as it'd be less likely to surprise the user.

It might also be interesting to have an option to force all links that are opened via left mouse click to open in the current tab (again, js might be a problem for this).

A slightly less all-or-nothing way would be to create an extension (once I've added Kross support) that'd use regular expressions on all links that are opened via left clicks and if it gets a match to force it to be opened a certain way (always in a new tab, always in the current tab). Similar functionality could probably be achieved by a greasemonkey-like extension, although I don't have any experience with greasemonkey so I doubt that'd take less time to implement that the others.

Report

darkphoenixff4

9 years ago

Your install doesn't properly install the toolbar instruction files, so I ended up with a browser with no toolbars at all (and an error saying the rc file was missing).

Specifically,
CREATE:cookieMonster,167899056;parent:167899048
ACTION:readCookies,NoFile
CREATE:NetManager,167899048;parent:167899040
CREATE:wrapper,167899040;parent:0
CREATE:foxkit,3049260304;parent:0
CREATE:cookieViewer,168038968;parent:0
QFSFileEngine::open: No file name specified
foxkit(30345)/kdeui (kdelibs): No such XML file "foxkitui.rc"

CREATE:webPage,169193056;parent:168801552
CREATE:webView,168801552;parent:3049260304
ACTION:writeCookies,Finished
QFSFileEngine::open: No file name specified
foxkit(30345)/kdeui (kdelibs): No such XML file "foxkitui.rc"

Report

C

kit

9 years ago

Right now nothing is installed (I haven't added that to the cmake files yet). The instructions at the top of the page include manually copying the foxkitui.rc file to "`kde4-config --localprefix`/share/apps/foxkit/foxkitui.rc".

I've been meaning to add the cmake setup stuff but just haven't gotten around to it.

Report

C

kit

9 years ago

Good news! The latest Git sources (not in 0.0.5, but should be in the next release) will now properly install everything with 'make install' (if you're following git you'll need to delete your CMakeCache since having an old one of those caused problems for me, and rerun cmake of course).

Probably by the time I have the next release I'll also make a .desktop file and have cmake also install that.

Report

Amalle

9 years ago

I like your project very much.
In konqueror it ist possible to view linked pdfs in the main window. Will it be possible in foxkit?
Will it be possible to accass the file system like in konqueror? Of cause without cluttering the interface.

Report

C

kit

9 years ago

At first it'll only be possible to view PDFs externally, but if/when I switch Foxkit over to using KParts it should be quite easy to allow embedding Okular for viewing PDFs. At this point I'm still not sure if I'll end up using KParts or not, I still have to weigh the pros and cons of using them.

As for doing file system stuff, thats something I kinda hope to avoid as adding it will likely make the code base much more complex, and without great care it'll probably also clutter up the interface and configuration.

But Foxkit is still in early development so lots of things are still up in the air and might change given time.

Report

Amalle

9 years ago

I'm shure you will find the best way

Report

stolen

9 years ago

If you use pure WebKit for rendering, why do you bind browser to KDE?
KDE users already have Konqueror on KHTML (WebKit forked from it), but users of lightweight environments like Fluxbox or Enlightenment have only stupid FF as their browser.

Report

C

kit

9 years ago

People that don't want to use Firefox already have a few alternatives. Theres Epiphany, which is a GTK browser which uses WebKit (formerly Gecko, they recently ditched it). Theres also Arora, which is a pure-Qt browser (started by a TrollTech employee as the demo browser to show off QtWebKit).

Before the release of Qt 4.4 (originally tech preview 1 for Qt 4.4) I started developing an application that used QtWebKit as an alternative launcher ("City Launcher") for a MMO, but I ran into a few bugs with QtWebKit (at the time I wasn't sure if they were bugs or me just not having a clue what I was doing) and that kinda halted the development while I waited for the next release. Unfortunately I somewhat forgot about it (and some of the future binary packages for the tech previews and beta didn't include QtWebKit module) so I hadn't done anything with it for quite a while when Qt4.4 was released. Shortly after the release I decided that writing a web browser would be a good learning experience for the program I was making (as well as an excuse to learn to use Git), so I began working on Foxkit as a Qt-only application. Arora started at around the same time as Foxkit, and being based off of the Qt demobrowser it had quite a head start (it's a really nice browser, quite solid actually) I decided if I wanted Foxkit to have a real meaning I'd have to differentiate it from Arora (otherwise Arora would probably always be clearly superior to Foxkit and I'd probably quickly lose all motivation to further develop it), using the KDE technologies would give me a MAJOR advantage (scripting via Kross, Solid, KActions vs QActions, KTabWidget vs QTabWidget, configurable shortcuts/toolbars for free, looking like a first class citizen in a major desktop environment, and lots of other things). It took me a while to refactor most of the code to use the KDE version of things (some things simply required replacing a Q with a K, some allowed me to scrap many lines of code and extra external files and replace it with just a couple lines of code, and the KXMLGUI required the most work requiring me to setup the foxkitui.rc file and learning that). Basically just from swithcing to using KDE+Qt I simplified Foxkit's code base, got better configurability, and much closer integration.

As for Foxkit vs Konqueror, it's pretty similar to Dolphin vs Konqueror. Konqueror has a very complex code base (from having to handle all sorts of situations) and a massive amount of configuration options (unfortunately my favorite setting, having the tab's icon turn into a close button, is hidden away in configuration file). I've tried working on Konqueror but the size and complexity is simply overwhelming since I have no clue where to start or where anything was. Foxkit's code base is small and simple enough that I know where everything is in my head and it isn't hard to manage everything. Hopefully by maybe around the end of this summer I can have Foxkit at around feature parity with Konqueror as a web browser, and from there hopefully improvements I make to Foxkit (like tag based bookmarks) can be propogate into Konqueror (like how the breadcrumb widget and dolphinpart were added to Konqueror).

I chose WebKit over KHTML because I found it easier to use, and Foxkit originally started off as being a pure-Qt application, and CityLauncher before it couldn't realistically use KHTML. In the future I hope to allow using KHTML as an alternative rendering engine to WebKit, but that probably won't happen for quite a while.

Report

stolen

9 years ago

OK, I understood.
Thank you for your work and explanations.

Report

rfoss

9 years ago

A browser with a button labeled "redisplay". Hm, I wonder what it does.. It's position is about where most browser have a "reload" or "refresh" button, but this one says "redisplay".

"Redisplay" indicates the same information will be redisplayed. It doesn't indicate the true function, that a page will be re-retrieved from its source location and then displaye again.

Relabel as "Reload" please.

Report

C

kit

9 years ago

Whoops! Over looked that

Now fixed in Git, should be in the next release :P

Report

Blackcrack

9 years ago

i hope it's be like konqueror, use the Konqueror as filemanager and then input a adress and it become the web.. without changing the window... :) it shold be integrated :) (i hope it ;)*jump*)

regards
Blacky

Report

C

kit

9 years ago

I don't really have any plans on making Foxkit a universal viewer like Konqueror, partly because Konqueror is already a kick-ass universal viewer :P

I'm more so intending Foxkit to be a Dolphin of the web. Right now Foxkit is *much* simpler than Konqueror (both in the interface and the code base), and I think I'll be able to maintain most of that simplicity as I fill in Foxkit's missing features (cookie and history should be fairly unobtrusive, as they'll mostly be seen by the user in the configuration dialog and have their own classes in the code base).

I've designed (for varying definitions of 'design' ;) Foxkit to not have the child classes depend on the parent classes (i.e. only using signals to talk to parent classes and not directly accessing any of the functions that exist in parent classes) so hopefully porting systems used in Foxkit to Konqueror won't be too challenging (although none of the currently existing stuff is that interesting). Hopefully Foxkit will be able to be used as a test-bed for new ideas like Dolphin was, which may then benefit Konqueror as they're ported over.

Report

Yaccin

9 years ago

i love it!

kde 4.2 with dolphin and foxkit and konqueror only optional? i think it could be great :)

Report

DanaKil

9 years ago

just a thought that I had some time ago about browsers extensions : in order to easily lets users create extensions, it would be great to have an internal mechanism near the KDE4 dataengine/plasmoid one. So you could have a dataengine providing, for example, tabs informations (number of tabs, titles, urls and maybe thumbnails...) and each plugin could connect to it to do the actual view (classic tabbar at top, lateral bar with thumbnails...)
Other dataengines could relate to bookmarks (akonadi here ?), links in webpages, etc.

Well, I know that Foxkit is ATM far from these problems, so I let you do the basic things now :-)

Report

9 years ago

0.0.5 - Cookies are now saved across sessions with a tiny dialog to see what cookies are currently set (but can't edit them yet). Fixed the memory leak from long ago, lots of small fixes and improvements. Added the ability to have multiple top-level windows open at once. Opening new windows/tabs via Javascript is still unimplemented, but other things should work fine. Should handle SSL websites with certificate errors better (i.e. for self-signed certificates), although no notification of using SSL is given yet. Error pages might not function well/at all yet.

0.0.2 - Middle Click, Ctrl+Click on links will open them in a new tab. You can also right mouse click on a link to get a context menu. Lots of bug fixes related to tabs, some consistency changes, a major optimization, and possibly a minor memory leak ;).

product-maker qtnerd Jan 24 2016

product-maker 15 56

File (click to download) Version Description Filetype Packagetype License Downloads Date Filesize OCS-Install DL
Details
version
0.0.5
updated Jul 29 2008
added Jun 09 2008
downloads today
0
page views today 4