Showing posts with label midori. Show all posts
Showing posts with label midori. Show all posts

Thursday, 6 September 2012

Midori—Two New Improvements

Those of you who have been following my blog for a long time probably know that for various reasons (to list a few—it's still in gtk2, uses webkit, has tab panel feature, it's fast, has simple, yet powerful UI, uses gstreamer for html5 video …) I'm a user (and fan) of a lightweight xfce web-browser called Midori (it's from Japanese 緑 which means green). For these past few months I've been constantly annoyed by two of it's shortcommings—loading of pages have become slooooow and very CPU intensive; and java plugins crashed the browser upon applet removal (e.g. by reloading or closing the page). Today I've figured fixes for both!

Sluggish page loading—caused by cookie manager

Today I've noticed that the very same pages that are freezing the UI upon load for a few seconds does not suffer from these issues when opened in web-app mode. So my guess was like—either user style/script or plugin fault. A simple try-and-error quickly yielded results. The plugins that is at fault is cookie manager, though I haven't got the slightest idea why. So if you suffer from similar problems, just disable cookie manager and you'll be back to the usual swiftness of webkit based browsers.

Crashing java plugin—fixed in icedtea-web-1.3

Yes, yesterday on Fedora Planet I read the release information about new icedtea-web plugin and since it contained info about google chrome fixes, I guessed it might improve my midori experience as well. However as there was still no build for fedora today morning, I decided to build it myself. So I did (was as easy as downloading the new tarbal and bumping the version in rpm spec file) and to my great joy, java applets now load faster and do not crash upon exit. What a great day!

Saturday, 9 April 2011

Java VM Works Again In WebKit

While there are some people hyped about firefox4 and gnome3 releases I'm silently enjoying my Fedora 15 with XFCE and midori web-browser. And yesterday I finally noticed an update that makes openjdk java vm working in webkit based browsers (chrome, midori, arora, epiphany, …) again:
icedtea-web-1.0.2-2.fc15.i686
So I can finally use midori for everything again. Yay! Thanks whoever who fixed this!

Wednesday, 18 August 2010

The Awesome New Features of Midori 0.2.7

After a rather longish time a new release of midori is out and among other things it has a feature I never expected it would have implemented this early. Unless I'm mistaken, midori is the first browser that supports delayed tab loading on startup out of box (I'm aware of some extension for firefox which does something like this). You just need to set it in your preferences. Yay, this speeds up browser startup about zillion times as I keep a lot of tabs open. Well, it could use some improvement – currently you need to hit reload to load a tab, it would be nice if they loaded when selected.

Next, long awaited feature, are improvements to location bar. It can now search through bookmarks and it supports multiword search. Another bunch of useful improvements.

There are also two new Vala extensions – history list and external applications. The first one is an interesting feature that adds behaviour similar to how alt-tab works for windows to ctrl-tab for tabs. Since I usually have many tabs open, but frequently switch only between few of them, this looks like a huge usability improvement.

The other one is another long awaited thing – since webkitgtk does not support ftp protocol, we'd just got error messages instead of ftp listings, now midori fires up gftp. Unfortunately, without passing it the uri. So I looked into the code, quickly get acquainted with Vala language (really easy if you know some object oriented programming language and C), switched gftp for nautilus (gftp is a bit overkill to me) and fixed it to actually open the location. It's like two lines change:


diff -up midori-0.2.7/extensions/external-applications.vala.nautilus midori-0.2.7/extensions/external-applications.vala
--- midori-0.2.7/extensions/external-applications.vala.nautilus 2010-08-16 21:31:14.000000000 +0200
+++ midori-0.2.7/extensions/external-applications.vala 2010-08-18 01:34:04.000000000 +0200
@@ -17,7 +17,7 @@ public class ExternalApplications : Mido
Dialog? dialog;
bool launch (string command, string uri) {
try {
- var info = GLib.AppInfo.create_from_commandline (command, "", 0);
+ var info = GLib.AppInfo.create_from_commandline (command, "", GLib.AppInfoCreateFlags.SUPPORTS_URIS);
var uris = new List();
uris.prepend (uri);
info.launch_uris (uris, new GLib.AppLaunchContext ());
@@ -38,7 +38,7 @@ public class ExternalApplications : Mido
WebNavigationAction action, WebPolicyDecision decision) {
string uri = request.get_uri ();
if (uri.has_prefix ("ftp://")) {
- if (launch ("gftp", uri)) {
+ if (launch ("nautilus", uri)) {
decision.ignore ();
return true;
}


Hopefully this will be configurable in the next release (so that I won't have to patch the source code :D).

These new things also have the flip side though – occasional crashes. I haven't got time yet to inspect them, but I suspect the new vala extensions or changes to location bar to be at fault.

Monday, 7 June 2010

Midori—Now Almost Feature Complete for Me

Starting today, it looks like Midori is going to be my only webbrowser (previously I've also kept Chromium for pages with that send themselves compressed which wasn't supported by older webkitgtk/libsoup combinations and firefox because the open java didn't work in webkit) because the only feature that's missing now is password saving and that's not a showstopper for me. So here're some highlights of what you can get with the latest and greatest stuff that's in Fedora 12 (and a bit of customizing):

Simple, highly usable and effective UI


Do I need status bar? No. Do I need menu bar? No. Do I need the browser controls+bookmark bar to take up lots of horizontal space? No. Do I need a home page? No. Do I need to have both reload and stop buttons displayed at the same time? No. Do I keep many tabs open? Yes. And here's precisely the type of UI that aligns with these answers:

AdBlock


These days, browser without AdBlock just gets in the way. I don't want to be distracted by ads I'm not going to click at anyway. With a sensible set of filters, Midori's advertisement blocker works very well and is shipped with the browser itself.

FlashBlock


See one of my older posts on this. This one drastically reduced CPU usage when using midori, as many pages are using flash now and flash is known to be hungry for CPU cycles :D

Netscape Plugins


Browser without support for netscape plugins is predestined to fail. That's why firefox supports them, that's why chromium supports them that's why midori supports them. But among these is also the java plugin and especially the open one was in past years not exactly just working everywhere. But with the (rather biggish) update I did yesterday, java plugin is working for me in midori as well. The miracle combination is:
midori-0.2.6-1.fc12.i686
java-1.6.0-openjdk-plugin-1.6.0.0-38.b18.fc12.i686
webkitgtk-1.2.0-1.fc12.i686

Session Saving


One of the biggest showstoppers for me using epiphany is this feature. Any browser that does not have an option to save session on exit is practically dead for me ;-) Midori fares well in this area, maybe even better thing would be to load the saved pages on demand to speed up the start. Especially with 30+ tabs open, starting even the fastest of webbrowsers is taking a loooooong time. I heard that firefox has an extension for that so lets hope midori will gain this functionality in the future as well.

Another related feature is trash bin. I can reopen closed tabs. Nice to have in case you close some tab accidentally.

Speed


All I want to say here is that midori is one of the fastest browsers I've ever use especially in comparison to firefox…

HTML5 Media


I've been always critical of the path firefox has chosen with support for the audio and video html5 tags. They just bundle some codec libraries with firefox. While this might be a good solution for windows platform (you know, they don't have package managers to download the deps for them) it's IMHO essentially wrong.

When you implement a media player you do not bundle every possible codec with it but use an already working media framework like gstreamer, directshow or phonon. And that's the way webkit people are going—webkitgtk makes use of gstreamer, qt-webkit makes use of phonon, chromium port makes use of ffmpeg,… One of the pros of this approach is that you don't need to install new version of webbrowser to support new codec, so when google released WebM, all that was needed was building the needed libraries in fedora, write a gstreamer plugin, release, package, update and you are done for everything that uses gstreamer, midori included. So we now have WebM support in midori, while firefox users still need to wait :-p And as a bonus, we don't have to care about the result of theora vs. vp8 vs. h264 browser war—webkitgtk supports all (if you have the needed codecs installed which probably anyone who watches video on fedora have).



From what I've seen on youtube, the VP8 codec can provide high quality but it seems even more CPU intensive than h264—I can barely watch videos on youtube in h264 in 720p, but I cannot watch those that are in VP8 and 720p.

Manageable Search Engines


included in address bar. I don't need a separate search bar. But I do need more searches than just google and I want to use keywords so that I just write say 'j 先生', hit enter and it does a jisho search for word '先生' (sensei, teacher, master, doctor).

What's missing?


Good question. For me it's password saving, ssh certificates handling (I probably cannot log in to koji) and ftp protocol support—I don't mind that ftp browsing is not implemented in web browser, but opening nautilus (or another file/ftp manager) with the specified location would make things much more convenient.

Wednesday, 26 May 2010

Flash Block in Midori

So, I've been reading a bit on epiphany on live.gnome.org and noticed, that you can block flash via user scripts. And since midori also support user scripts I loaded userscripts.org tried a few a lo!, one of them works exactly as I expect. Just go to Flash Block for Chrome, click install and save the opened .js file to ~/.local/share/midori/scripts/. It should enable automatically, if not, go to the Userscripts panel and tick it on. For it to start work, page reload is enough — there's no need to restart browser ;-) To whitelist youtube, just add 'youtube.com' to var exclude array at the beginning of the script. Supposedly it also works for silverlight, but as mono is banned on my laptop (no sound reason, I just don't want to use apps that they're in some weird language combo of java and c++ which furthermore need virtual machine running), I cannot verify whether this is true or not.

And on a completely unrelated note: I successfully managed to arrive at the hotel in Brussels I stay during LGM, and had a nice walk around the city with nicu ;-)

Thursday, 20 May 2010

Why I'm Still On F12?

First, let me warn you that this is not an objective and exhaustive review of Fedora 13 but just a (hopefully) short list of things (both bad and good) I noticed while trying to use it and to add that most of the issues I'll talk about are bugs/odd features in upstream, so not Fedora's fault.

Evolution


I think it's fair to start with an app that I use most and that is most likely Evolution (especially its e-mail component). The UI is reworked and I'd say it both looks better and is more usable, it's almost pain to return to F12 Evolution's interface. On the flip side, IMAP backend has also been rewritten (or so I've heard) and it hits a dead end here and there and because of that, using Evolution isn't very smooth and joyful. So in short, with future releases there is high probability Evolution will be significantly better that what's in F12, but currently it's one of the pieces that blocks me from advancing to F13. Plus, I forgot to mention, Evolution lost the option to keep gpg passphrase stored during session.

Intel Video Driver


Well, this one's a little bit of pain. I've grown quite used to F12 which has been damn stable so fast, so X or even the whole notebook frozen was a big surprise. Seems the frozenness of whole system have been already fixed, but last time I were in updated F13 (about a week ago), I still managed somehow to endup with half-frozen X — I move with mouse, switch to tty, kill apps (without any graphical response though) or kill X completely. But only full reboot fixed it for good.

Nautilus


Another UI change. Generally it seems cleaner, but what irritates me is that I cannot keep the entry-like input for paths — I seem to be able to access it only via ctrl-l and after entering the path, it reverts back to the button mode. No good, no good.

Webkitgtk


This where the most goodness (from my point of view) went, albeit not exactly as I'd prefer it. Thanks to hard work the guys over at webkit and epiphany, epiphany now can store passwords, but as epiphany does not have sensible session saving (why the hell do I need to kill it to save session?) [and for some other reasons] I use midori, which however it does not seem to know how to save passwords (in web forms, not in web auth pop-ups). The rest of the goodness (I know about) is same for both browsers — html5 youtube flawless support (only fullscreen seems to be missing), html5 video tag finally has handler, sites (like anidb) which serve pages in compressed format are now supported and java applet (I've tried only the openjdk one) is almost working.

Gnome-keyring


In one word it behaves strange. Sometimes the keyring that should get unlocked at startups refuses to unlock, sometimes I get asked for new password for 'default' keyring, which however never gets created… This is incidentally also the last thing that shows when trying to start up gajim. The good thing is that thanks to this I started using emapthy with a chat theme from one of my favourite anime durarara >_<

Conclusion


Well, there are still some hick-ups that keep me from transferring from the probably best fedora release so far (F12) to F13 to feel the new awesomeness, and one thing to keep in my mind is: don't be lazy and finally fill the bugs you've encountered!

Monday, 8 March 2010

Alternatives to The Alternative

For some time now (some years to be more precise) all the open source world have been spinning around firefox when it comes to web browsers. There are even forks (ice weasel or something like that) or whatever they call it because a) it's apparently good and b) it's apparently not enough free (as in FLOSS). But as many of you who follows my blog know, it does not suit me for various reasons. One of the problems I see is too complex GUI, not very well integration into gnome (this one improved a lot during past releases), sluggishness, XUL, direction towards implementing useless stuff (like personas) instead of bringing actually useful extensions (like adblock) into the browser itself, localization handling (why the hell are languages treated as extensions?!!!). Firefox was originally supposed to be something like lightweight and speedy version of mozilla, but it's no longer truth.

When I first switched away from firefox I used epiphany, then webkit came along and I started testing it on midori, which in rather short time became my main web-browser. And then Google Chrome / Chromium came along and caused a little revolution (compare the simplistic Chromium with one toolbar, mostly occupied by some magic input field, with no menubar whatsoever with default firefox setup). Not only in UI, but also in stability — something on a page freezes? A (flash) plugin crashes? No worry, it will bring down only the tab in question, the browser itself remains working. And not to mention it started the competition in javascript speed.

The main purpose of this post is to shortly describe the three open source alternatives to Firefox I mentioned above and give a quick overview in what are they good and in what they aren't.

Epiphany


The main principle behind epiphany is (for good or bad) KISS (keep it simple, stupid) which already suggests in what it might be good and in what it might not. It's a very lightweight browser with a rather simple UI, it has a reasonable set of extensions (like AdBlock or Certificates management), search (via google) implemented in location bar, it's fast and very well integrated in gnome. On the flip side, it does not save session unless it crashes. Which is a major pita, but last time I checked, the authors were against implementing it. And thanks to it using webkitgtk engine, it supports html5 youtube (you'll need Fedora 13 version of webkitgtk, the one in Fedora 12 is too old). Alas, with the switch to webkit from gecko support for ftp were dropped, java is not (yet) supported, and some of the features (like password saving, or managing certificates) stopped working, but it's steadily getting better and I believe in Gnome 2.30, there will be no regressions compared to the older gecko version and tons of new features.



Midori


Another lightweight webkitgtk based webbrowser. As it uses same engine like epiphany, many things that I said about epiphany can be said about midori too — it's fast, it supports html5 youtube, java does not work, ftp protocol is not supported, web auth is integrated with gnome-keyring (thanks to libsoup backend) and it has the awesome webinspector. In addition, it comes with session saving, adblock, trash can for closed tabs, spellchecking in multiple languages, identity masking, and quite powerful means for UI optimizing (like it can hide menu bar, can display tabs on side as a list, can disable close button on tabs [they can be closed with middle-click], can hide status bar — location bar is then used for showing the hyperlinks destination, ...). And to add to that, it has customizable search implemented into its location bar – not only you can can search what you want on whatever search engine you've added, but you can also use keywords (e.g. when I write "j 友達" it will show me the word in jisho, "gi fedora" will redirect me to google images search for fedora etc.).

I could probably go on with this praise — after all midori is the web browser that suits my needs best and has the most usable / effective UI (IMHO) that I've come across.



Chromium


Well, I guess this one does not need much introduction. It's the opensource version of Google Chrome, it's based on webkit/chromium port, has a really simplistic, effective and usable UI — unless you open too many tabs. Then it becomes hell none of the zillions extension helped me out of. Plus, as the UI is heavily customized, it does not fit very well into gnome desktop, but I'd say it's really well designed. As I already mentioned, there are zillions of extensions (probably less than for firefox but still too much for me to be able to know even a tiny fraction of them) which can improve the already very good browser, and among which is not missing adblock and flashblock ;-) I quite fancy the xkcd view one. And like with other webkit based browsers — awesome webinspector, awesome speed, but also no ftp and java. Session saving and tabs undeleting is a sure thing, the already mentioned "magic location bar" works similarly like in midori.

It's possible to get html5 youtube working, but not with Fedora packages (for understandable reasons; I suspect though, that after it matures enough to get into fedora proper repos, there'll appear also something like chromium-nonfree in rpmfusion to fix that).



(note about the chromium title bar — if I cannot have chromium looking nice with plain gtk, I'll at least look at something that I fancy ;-))

Monday, 26 October 2009

Mark the difference (ugly fonts in Fedora?)

So, in my previous post there started appearing discussion about fonts antialiasing. So I though it would be better to spin off this discussion in a post of it's on, installed freetype-freeworld (which improved drastically fonts in chromium, but did nothing with gtk), fired up gimp and created this (click on the image to see it in its original size if it looks blurry):

The first line is no antialiasing, no hinting, the second one is antialiasing only, the third one is antialiasing+hinting and last one is antialiasing+hinting with forced autohinter. Looks like no hinting or autohinter is what can be achieved without installing the package from rpmfusion, while the third line needs the package with patented stuff in. Apparently, no antialiasing isn't a solution – we're not living in stone age, antialiasing without hinting is blurry and autohinter works good only for small sizes, on the other hand, the hinting without autohinter breaks on simple japanese… Make your own image about what's best.

And as a bonus: hinting without autohinter in chromium


autohinter in midori


Dunno how you, but I see the autohinter as best working for me.

Tuesday, 21 July 2009

Firefox 3.7 New Design

Well, quite an unexpected post in my blog... In Chromium's Tips and Tricks section I noticed an article entitled First Look: Firefox 3.7’s New Design. After briefly looking at the Vista Aero look I went WTF! I just cannot seem to find this semitransparency in windows nice... But well, I scrolled down and down and down until noticing the Win XP version which I deem to be the best. Well, if such UI gets implemented on linux as well, it would definitely prompt me to try using firefox again, as it's basically Chromium UI with tiny changes in ordering and separate search entry (I prefer search to be integrated in location bar though).

The UI is very effective, as I have discovered when using Chromium over these past few days, and I think it's been a high time for the redesign. For once I have to praise the guys at mozilla for doing the right thing ;-) It's would be shame, though, to not note that midori introduced this kind of UI as well with it's recent 0.1.8 release (although as an option, rather than as the only setting). It's a prove that Google's decision to introduce their own web browser will lead to benefit of users of other browsers as well.

Friday, 17 July 2009

AdBlock in Midori!

I must have been lucky today... First I installed chromium and now, after trying out latest git snapshot of midori, I've discovered, it can actually block ads (via the included, by default disabled 'Advertisement blocker' extension)! Well, it's pretty lame still as I noticed it only blocks google ads (probably because of missing filters) and adding filters seems to not work (not that I have any filters anyway) and there are loads of 'FIXME' comments in the source code, but I cannot wait till it gets finished :-)

Now, if only I knew how the 'Mouse Gestures' extension is supposed to work (if it works at all), it would totally make the day even more awesome!

And thus the browser war hath started

Behold heathens, new web-browser hath descended upon the land of Fedora. Witness the few steps needed to deploy at FergyTech. The ultimate battle for superiority may begin. Who shall be the winner?

Well, that somehow summarizes my exitement. I wonder which browser I'll end-up with in Fedora 12 :-D For now, I am using simultaneously Midori (webkitgtk)

Epiphany (xulrunner)

and Chromium (webkit/chromium)

now ;-)

Btw. I just recently used firefox once again because of some download which worked only via firefox (I don't really know why though) and the page had an enormous amount of adds... well... to be fair... I got used again to displayed adds with midori (it's not possible yet to block adds in webkitgtk), but the experience with firefox was about five times worse... The amount of windows that popped up was just terrible... Well, I'd say that using firefox without AdBlock is in a sense equivalent to taking a stroll into underworld >_<

Maybe, I'll write a short review about those three above mentioned browses (plus epiphany 2.27 snapshot which uses webkitgtk instead of xulrunner) when I gain more experience with Chromium (so for now I'll keep the awesomeness of midori's location bar only hinted in the screenshot above ;-).

Thursday, 12 February 2009

Libsoup now default in WebKit/GTK

Just a short notice that libsoup backend was set to be default backend for GTK port of webkit today. I am thrilled by this partly because the libsoup backend seems to behave much more better than the cURL one, and also it seems that most new features that are somehow connected with HTTP backend are being added only for the libsoup backend.

You can read some end-user comparison of the two backends in one of my previous posts.

One another great thing is the speed with which the GTK port is advancing now. Acording to one of the webkit and epiphany developers, Gustavo Noronha, WebKit/GTK might be the default backend for Epiphany in Gnome 2.28. That's Fedora 12! Whoa! I am already restless :-) More specifically he's asking us, the end users, to "come help us (the epiphany devs) test and get a regressionless Epiphany with WebKit/GTK+ for GNOME 2.28" Well, this might be worth a feature page for F12 ;-) And even though I am using Midori to test WebKit (I use epiphany as my primary web browser and it's rather inconvenient to keep two versions of epiphany installed; and I actually find Midori very interesting and light-weight) I think I will resume testing WebKit in Epiphany as soon as Fedora 12 development starts.

Wednesday, 4 February 2009

WebKit-gtk, libsoup, cURL and midori

It seems that webkit-gtk developers would like to see libsoup as the default backend in the gtk port, whereas the current setting (which is also used in the Fedora WebKit package) is the cURL backend. And since I have finally gathered enough free space to be able to build webkit, I decided I give it a go. In the following table I've summarized the differences between the two backends (libsoup backend with r40306 selfbuilt and cURL backend with r40351, grabbed from koji) I've, as a user, noticed (click on the images to get the large version).

libsoupcURL
Effects on Browser UI ResponsivenesI haven't noticed any effect on UI responsiveness when loading a web page. The spinner is spinning with constant speed, I can freely switch between tabs, create new tabs, ...I noticed significant effects on the UI responsivenes when loading pages. Especially when loading more pages at once, the UI tends to become unresponsive for a while. Also the spinner animation is not smooth and at times it even stops completely.
Web AuthenticationAuthentication seems to work pretty good, still there seems to be no way how to use ssh certificate to authenticate to kojiAuthentication does not work at all.
FTP Protocol Handling If you try to access FTP you're straight away told that the site does not exists. I'd expect either a message that it cannot handle FTP protocol or, even better, automagically opening the requested url in file browser (which should know how to handle ftp)CRASH! Although in the previous built I've been using it was giving, after an unreasonably long wait, listing, without any links or formating, of the requested ftp directory.
AniDB (probably perl handling) As you can see it gives a similar output to what you get by running e.g. cat /bin/ls. I suspect that the cause is that this site is made in perl. Works just as expected.


To me, who uses midori (with webkit-gtk backend) as a secondary browser, the option with libsoup sounds better - I can use it to authenticate to fedorahosted, also the UI is much more responsive; and the things that do not work here, I can do with epiphany (still with gecko backend).

Now, I'd share a few words about Midori. It's a pretty interesting browser developed primarilly for XFCE users that is using WebKit-gtk backend. One of its interesting features (among the almost classical basic session management and saving, configurable search engines and google search implemented in address bar) is an option to reopen closed tab. It also has pretty clean and simple UI and I find working with it to be rather pleasant. And on top of that, thanks to webkit backend, it is pretty fast and from my experience generally faster than gecko based browsers (firefox, epiphany). Finally, I like its name - midori (緑) is a japanese for green/greenery.

And to end this post I'd like to write a few features (some of which are being already in progress) I am still missing and some bugs in webkit-gtk that prevents me using it as a primary browser backend:
  • Reasonable handling of downloads. It just tells you that document cannot be displayed. Right-click, download works in midori (if you set a download manager in midori settings), but it works the same way as with copy link + wget, which means when the link is actually a html page or some script that forwards you to the real source, it fails...
  • As I said earlier, lack to authenticate with ssh certificate
  • Inability to upload files - the UI for it works very well, just like in firefox, but when you hit the upload button, the website complains nothing was set to be uploaded.
  • Occasional crashes when closing a tab.
  • It seems it is not able to keep coockies between browser sessions (i.e. I have to login to web pages every time I restart midori)
  • It does not remember my user name at sites like fedoraforum, even when I check "Remember me"
  • Sometimes sloppy widget focus - at times cursor is blinking in edit fields but nothing can be written until I switch focus elsewhere and back...


And to answer the obvious question you might have, nope, I have not yet filled bug reports about the things I mentioned above, but will definitelly do so sooner or later (though actually for some of the above mentioned things there already are opened bugreports in webkit bugzilla). Anyway, I wish webkit bright future and hope that the gtk port will soon get to the point where it would make sense to use it in epiphany by default.

Also, to end it on a positive note, among the things that get better since the last time I've built webkit there is improved scrolling which is now really smooth (in past it felt snatchy, especially when one tried to scroll fast) and finally working opening new windows via javascript (though midori forces it to open rather in new tabs which is IMHO really cool). Also, I can finally watch youtube videos (among other things) in webkit as well (in past swfdec just failed to load the necessary files, probably thanks to some bug or missing feature in webkit).