
Source (link to git-repo or to original if based on someone elses unmodified work): Add the source-code for this project on opencode.net
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.
12 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 ;).
12 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
12 years ago
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
kit
12 years ago
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
12 years ago
Help-about Foxkit shows "0.3-git" which is a bit confusing!
Report
kit
12 years ago
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
12 years ago
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
kit
12 years ago
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
12 years ago
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
12 years ago
Report
DanaKil
12 years ago
Report
kit
12 years ago
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
12 years ago
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
kit
12 years ago
I've been meaning to add the cmake setup stuff but just haven't gotten around to it.
Report
kit
12 years ago
Probably by the time I have the next release I'll also make a .desktop file and have cmake also install that.
Report
Amalle
12 years ago
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
kit
12 years ago
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
12 years ago
Report
stolen
12 years ago
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
kit
12 years ago
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
12 years ago
Thank you for your work and explanations.
Report
rfoss
12 years ago
"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
kit
12 years ago
Now fixed in Git, should be in the next release :P
Report
Blackcrack
12 years ago
regards
Blacky
Report
kit
12 years ago
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
12 years ago
kde 4.2 with dolphin and foxkit and konqueror only optional? i think it could be great :)
Report
DanaKil
12 years ago
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