Showing posts with label epiphany. Show all posts
Showing posts with label epiphany. Show all posts

Tuesday, 15 November 2016

Lyon GNOME Bug day #1

Last Friday, both a GNOME bug day and a bank holiday, a few of us got together to squash some bugs, and discuss GNOME and GNOME technologies.

Guillaume, a new comer in our group, tested the captive portal support for NetworkManager and GNOME in Gentoo, and added instructions on how to enable it to their Wiki. He also tested a gateway related configuration problem, the patch for which I merged after a code review. Near the end of the session, he also rebuilt WebKitGTK+ to test why Google Docs was not working for him anymore in Web. And nobody believed that he could build it that quickly. Looks like opinions based on past experiences are quite hard to change.

Mathieu worked on removing jhbuild's .desktop file as nobody seems to use it, and it was creating the Sundry category for him, in gnome-shell. He also spent time looking into the tracker blocker that is Mozilla's Focus, based on disconnectme's block lists. It's not as effective as uBlock when it comes to blocking adverts, but the memory and performance improvements, and the slow churn rate, could make it a good default blocker to have in Web.

Haïkel looked into using Emeus, potentially the new GTK+ 4.0 layout manager, to implement the series properties page for Videos.

Finally, I added Bolso to jhbuild, and struggled to get gnome-online-accounts/gnome-keyring to behave correctly in my installation, as the application just did not want to log in properly to the service. I also discussed Fedora's privacy policy (inappropriate for Fedora Workstation, as it doesn't cover the services used in the default installation), a potential design for Flatpak support of joypads and removable devices in general, as well as the future design of the Network panel.

Wednesday, 30 April 2014

Good bye Totem browser plugin

10 years ago, I committed the first version of a browser plugin in Totem's source code tree. Today, it's going away.

The landscape of video on the Web changed, then changed back again, and web technologies have moved on. We've witnessed:

  • The fall of RealPlayer
  • The rise of Flash video players, as a way to turn videos into black boxes with minimal "copy protection" (cf. "YouTube downloader" in your favourite search engine)
  • The rise and precipitous fall of Silverlight (with only a handful of websites, ever, or still, using it)
  • And most importantly, the advent of HTML5's <video> tag
Totem's browser plugin did as good a job as it could mimicking legacy web browser plugins from other platforms, such as QuickTime or Windows Media Player (even we stopped caring about the RealPlayer mimicking).

It wasn't helped by the ill-defined Netscape Plugin APIs (NPAPI) which meant that we never knew whether we'd receive a stream for the video we were about to play, or maybe not at all, and when you request one, you'd get one automatic one and the one you requested, or whether it would download empty files. Or we couldn't tell to open in another application when clicking directly on a file. All in all, pretty dire.

We made attempts at replacing the Flash plugin for playing back videos, but the NPAPI meant that we needed to handle everything or nothing. Ideally, we'd have been able to tell the browser to use our browser plugin for websites that we could support through libquvi, and either fallback to a placeholder or the real Flash plugin for other cases. NPAPI didn't allow us to do that.

The current state of media playback in browsers on Linux is such that:
Given all this, and the facts that Totem's browser plugin will not work on Wayland (it uses XEmbed to slot into the browser UI), that its UI is pretty broken since the redesign of the main player (not unfixable, but time consuming), and that it does not work properly in GNOME's own web browser (due to bad interactions between Clutter and GL acceleration in WebKit), I think it's time to call it a day.

Good bye Totem browser plugin.

I'll miss the clever puns of your compatibility plugins (Real Player/Complex and QuickTime/NarrowSpace being the best ones). I won't miss interacting with ill-defined APIs and buggy implementations.

Saturday, 21 December 2013

GNOME Web hacks

After the Pocket integration earlier this week, I've cooked up or landed a couple more patches.

Mailman passwords

Those darn mailman administrator passwords. There's no "forgot password" button and the password is shared amongst all the administrators of a mailing-list. Now Epiphany remembers them and I don't need to go through my inbox trying to recover them.

Glow button fixes

Epiphany was using Totem's glow button, a button which glows a couple of times to bring your attention to it. It's used in Totem's browser plugin, to show that it's ready to play, and Epiphany to show finished downloads. It broke due to GTK+ changes, and it's now reimplemented using CSS animations instead of horrible hacks.

Analytics removal

A little privacy hack, inspired by the PureURL Firefox extension. This removes tracking information from URLs when tracking is disabled in the preferences.

Monday, 16 December 2013

Send to Pocket using GNOME

I'm a big fan of Pocket, the "Read Later" service.

I regularly save blog posts, videos, tweets and articles to read later, and then consume them on my iPad 1 (I hope they don't cut off the old app yet), my phone, or using the Kobo e-book reader.

So it's only normal that I'd try to make my experience of using it with GNOME, a bit more integrated than a simple Javascript bookmarklet in my browser.

Online Accounts support

The first step was writing the GNOME Online Accounts support for Pocket accounts. This isn't quite finished, and there was some ugliness due to the way Pocket's authentication works. It's not complicated, but it's neither OAuth 1, nor OAuth 2.

The patch also adds a new type of service that you can toggle on/off in the settings, see about that below.



Browser support

I don't really read articles on my laptop, and I'm Linux-tablet-less (the WeTab you might remember is now with gnome-shell developer Florian Müllner). So my main concern was saving articles to the service.

The UI is still a bit in flux, but this is what it looks like on my machine right now. In the future, we might want to try and show the status of the page (has it already been saved?) or a way to edit tags after having added the page.



Other services

There are other services similar to Pocket, such as Instapaper, or even the free and open source Poche.

The good news is that adding support for those services should be easier, as you'd only need to add a new gnome-online-accounts backend, and write a little bit of backend code in Epiphany (eg. 2 out of the 4 steps in adding support for Pocket).

The infrastructure is, or more accurately, will soon be there.

Update: The Epiphany/Web bug for the browser integration is here. Doh!

Sunday, 4 December 2011

WebKitGTK+ Hackfest: Day 5

Yesterday was our sponsored dinner, at a very nice vegetarian place, followed by some cinema discussions in a bar where the toilets are hidden behind mirrored walls (most strange).

Still, quite a few happenings in code land:


The hackfest is drawing to a close, and I'll take this opportunity to thank our very kind sponsors for flights, accomodation and even feeding us in the office so we didn't have to stop hacking for long.









Also a big thank you to Igalia for providing us with hacking beer in the evenings (left-overs from Igalia's 10th anniversary party, a happy coincidence).

Many thanks to Xan, Juanjo and Alex for the hackfest organisation, and the personal chauffeur service, and my most heartfelt thanks to Juanjo for his infinite patience to our tourist needs (such as showing us the Torre de Hércules on a windy December afternoon).

Vegas Baby!

Before: No video, because no Flash, and no MP4 support


After: Video, through Totem's Vegas plugin

Totem's new Vegas browser plugin provides you with a way to watch Flash based videos, without using Flash, using libquvi's growing collection of supported sites.

Code is available from GNOME git this instant. Be sure to pass --enable-vegas-plugin=yes to compile the plugin.

Saturday, 3 December 2011

WebKitGTK+ Hackfest: Day 4

The crema de ojuro took effect. While the effects simmered down, code fixing was still in full flow.


  • Philippe finished landing the fullscreen fixes for the <video>
  • Xan and Claudio started fixing GNOME 3.4 Epiphany design bugs (on the road towards the Web app design)
  • Alex, Martin, Joone and Nayan all looked into Accelerated Compositing. They all owe you, dear reader, blog posts full of nitty gritty details.
  • Jon didn't spend the day debugging bizarre browsers crashes
  • Wingo punched the air as he figured out a tricky memory allocation issue. He also listened to the Thundercats theme tune, in a loop
  • Gustavo and Dan figured out a design for multipart/x-mixed-replace support, as used by some streaming IP cameras, and Gustavo started the implementation
  • Nayan showed legendary patience waiting for tourists outside a haberdashery
  • Dan committed a number of libsoup related cleanups in WebKitGTK+, including a very impressive minus 200 lines cleanup.

WebKitGTK+ Hackfest: Day 3

Another incredible day of hacks, and UI design.


And despite the crema de ojuro, hacking carries on at the week-end. Join us in #webkit-gtk-hackfest on GIMPNet.

Thursday, 1 December 2011

WebKitGTK+ Hackfest: Day 2

After a late evening yesterday, the hackfest started a bit slower, but started picking up pace again with a big ticket item, the WebKit2 GTK+ API discussion. This was the destination for a lot of the WebKitGTK+ hackers, leaving us outsiders, well, outside. The discussion isn't quite finished.

This lead us onto a little lunchtime kick-about. The arrange 6 v. 6 game turned into a 5 v. 4 before getting to the ground, and finish as a 3 v. 4 when two of our most jet-lagged/backbroke hackers dropped out.

And then onto a lunch. And another late evening.
  • Philippe fixed more bugs in WebKitGTK+'s fullscreen video playback mode
  • Bob uploaded a new draft of his WebKitGTK+ cookbook
  • Gustavo was playing Street Fighter whilst increasing the size of his farm on Facebook (in WebApp mode!)
  • And the new buildbot is up, running, and churning through test suites in a loop, as fast as the hackers can add new code.

Wednesday, 30 November 2011

WebKitGTK+ Hackfest: Day 1, Afternoon

After num-num tapas for lunch (and some chocolatey cake), we got back to the agenda, with Jon presenting the design for the Web application, successor (in spirit, and perhaps in code) to Epiphany.


  • Andy did the initial work on adding new language features to JavaScriptCore (let and const, as used heavily in gnome-shell)
  • Martin and Gustavo worked on a way to automate running the WebKitGTK tests with test fonts, and are working on making all the tests automated, and reproduceable
  • Philippe fixed fullscreen support in the HTML5 YouTube player
  • Dan fixed the broken security status in Epiphany
  • Carlos worked on the WebKit2 support for windowed plugins, and the WebKit side of favicons support
  • Philippe, Martin and yours truly discussed sharing of fullscreen media controls (UI and behaviour) between WebKitGTK, Totem and Sushi, as well as a way to make fullscreening smoother.
I hear they didn't finish all the beers for Igalia's 10th anniversary party...

WebKitGTK+ Hackfest: Day 1, morning

After landing in (not so sunny) A Coruña yesterday, we started bright and early today with the WebKitGTK+ hackfest agenda.

We've got most of the topics pinned, as listed on the wiki. If you have more topics to add to the discussion, feel free to drop by #webkit-gtk-hackfest on GIMPNet IRC, and try to drum up interest in somebody championing your topic.

It looks like we could get some pretty cool demos done by the end of this week!

Monday, 9 July 2007

Tidbits

Some toys I've had in Ephy tabs for a while:
At least the Sony Ericsson and Samsung phones would be useful for gnome-phone-manager testing.

Totem has made it on System76's list of recommended apps for their laptops. The laptops look quite nice on their own right.

After running into some problems with FC6's Firefox, I'm filling in this blog with a copy of Opera with static Qt (quick download, fast install), and noticed their new Speed Dial feature. It's neat, and if someone managed to integrate the HTML version of it in Epiphany, they'll get plenty of free beers at GUADEC.