The roads I take...

KaiRo's weBlog

October 2008

Displaying entries published in October 2008. Back to all recent entries

Popular tags: Mozilla, SeaMonkey, L10n, Status, Firefox

Used languages: English, German


March 2021

April 2020

March 2020


October 30th, 2008

The (Never?)Ending Typeaheadfind Story

One of the last legacy modules SeaMonkey currently is still importing from old CVS is extensions/typeaheadfind. This modules drives the suite's "Find as you type" feature in browser and even mailnews message content areas and is invoked by just typing some text to be found, possibly prefixed by / or ' to specify searching in any text or just links, and giving UI feedback on those actions in the status bar. While this is quite convenient for the power user, it's hardly discoverable for people who don't know it.
Because of that, Firefox developers have forked that code into the toolkit, reworked it a bit and developed the "findbar" UI that appears at the bottom of browser windows based on it, merging it with the "find in page" feature that was/is an annoying separate dialog in the suite and making it much better discoverable.

Now, SeaMonkey supporters have basically had two problems with that approach for quite some time:
  1. Even for an advanced user, there's no possibility to get rid of needing an additional UI element, reducing screen estate more than those users want
  2. Having this find bar at the bottom of the window conflicts with usual user workflow that is top-to-bottom - that's why every window that constantly shows a search bar has that bar above the searched content.
The former probably could be addressed with a pref and some coding if wanted, the latter was actually an intentional decision: If the bar would open at the top of the content part of the window, Firefox devs said it would push content down, and moving content is a bad experience. Now they did implement moving content with notification bars, but even there it's suboptimal. A look at Safari shows how a solution for such issues could look like UI-wise: We could just open such a bar more or less over the top part of the content, just adjusting the scrollbar so one could scroll up to the now hidden top of the content, leaving the page itself completely in place. That only works well when a scrollbar is already shown, but then, I think people mostly use such a findbar on pages that already show a scrollbar.
In any case, any of those solutions would need someone to work on, and actually, the "find as you type" feature works well enough for most SeaMonkey devs not to think about this and not pick up such work.

Now enter today: Benjamin Smedberg checked in a "deCOMtamination" patch that breaks suite typeaheadfind, and it's hard to just fix this as the code still lives in CVS and is shared with 1.9.0-based Camino. There are multiple reasons why I tried very hard to keep things this way and not move the code to suite/ in comm-central:
  • The code is unmaintained. Nobody touches it unless it breaks and then only small bustage fixes are applied.
  • This module duplicates functionality the toolkit code in mozilla-central provides in the before mentioned findbar code.
  • The current code does not build on frozen interfaces and so would break in a conversion of SeaMonkey to XULRunner, probably even on the road to using libxul, and actually it even breaks compilation of static SeaMonkey builds, which we should look into for releases
  • As mentioned above, the UI is not ideal, does not deal with other "find in page" and doesn't work well with IMEs as used in Asian countries.
So, how to fix the breakage introduced by this deCOM patch, when it can't be done in CVS but importing into suite/ is a bad idea as well? For now, I think the best idea is removing the whole module from the SeaMonkey build. Yes, that means we won't have a "find as you type" feature at all for the moment - but perhaps exactly that is a reason for someone to step in and finally hack on something that builds on toolkit code, is maintained, and really does what it should do. I'm very interested in how this works out.

Oh, and if you can help here, we'd very much appreciate it!

By KaiRo, at 19:59 | Tags: Mozilla, SeaMonkey | 14 comments | TrackBack: 2

Wir kassieren, Sie gewinnen vielleicht!

Anruf gerade eben (ungefähre Wiedergabe):
"Sie haben einen Hotelgutschein gewonnen, gesponsert von X und Y (große internationale Firmen), und Sie nehmen jetzt jährlich an über 4000 Gewinnspielen teil!"
"Äh, ich mag an keinen Gewinnspielen teilnehmen."
"Aber Sie haben überhaupt kein Risiko: Entweder Sie gewinnen eine Menge, oder Sie verlienen maximal Ihre Einsätze."
"Welche Einsätze?"
"Ja, es wäre ein kleiner Servicebeitrag von ¤ 29,90 im Monat fällig."

Ich konnte ihr dann doch noch klar machen, dass mich sowas nicht interessiert. Doch was soll das? Sind 30 Euro im Monat kein Risiko? Das sind 360 Euro im Jahr, wenn ich die spare, dann kann ich auch zu zweit in einem Hotel übernachten.

Schon interessante Geschäftsmodelle, die es da gibt...

By KaiRo, at 12:22 | Tags: Gewinnspiel | no comments | TrackBack: 0

October 28th, 2008

The Death of the Fishcam Easter Egg?

It looks like the legendary Netscape (later AOL) Fishcam in Mountain View has really gone away now, the last URL where one could get a live feed has been redirected to, and a still existing old page has only static content but no live camera any more.
SeaMonkey still has the Ctrl-Alt-F shortcut mapped to calling a webpage for the fishcam but this has been failing recently. In theory, a live cam of maritime life would fit very well with SeaMonkey, actually (due to the creatures we're named after), and it would be even cooler if that would use an ogg stream and the HTML5 <video> tag on trunk.

It's just that we don't have such a cam available any more, from all we know.

Because of that, I probably will review the patch to remove this easter egg unless someone comes up with a really appealing proposal of where it should point to nowadays.

By KaiRo, at 21:02 | Tags: fishcam, Mozilla, Netscape, SeaMonkey | 7 comments | TrackBack: 0

Weekly Status Report, W43/2008

Here's a summary of SeaMonkey/Mozilla-related work I've done in week 43/2008 (October 20 - 26, 2008):
  • Build System:
    The newest build system sync landed, removing more lines than it added. :)
    Some locale Makefile update could land as well, but Axel Hecht landed some rework of the browser file recently, and we should port that as well. And then, localizers complain right now about disagreement of en-US files and the installer string check tool on variable usage.
  • Geolocation:
    The geolocation prompt for SeaMonkey could land now that the Firefox bug we found has been fixed as well. With this, geolocation support in SeaMonkey is the same as in Firefox 3.1 - we can plug providers of location info but right now rely on extensions to implement those, and if a website requests geolocation info, we prompt the user if we should hand it exact location, neighborhood or no information at all.
  • Helpwanted Items:
    As discussions and bug fixes in other areas went along, I filed a few bugs that basically fall in the helpwanted category, i.e. we're looking for someone to work on them: breakages and followup ports related to jmita's kill-rdf work in Thunderbird, a context menu for the HTML5 <video> element, and a fix for secure favicons (for those who switch on the related pref).
  • Mozilla Camp Europe:
    This weekend, a significant part of the European Mozilla community, including myself, met in Barcelona for MozCamp Europe. It was nice to meet some of those people from the community again, and get to know a few folks I haven't met in person before, like Ian Neal or Serge Gautherie.
    In addition to a few quite interesting talks, a huge part the notable things was going on in personal talks between people - for example, I realized that all related people I could talk to have pretty uniform thoughts about how Thunderbird and SeaMonkey should work together regarding sharing, forking and unforking of code, which to the most parts can be summarized as "share all the backend, those dialogs that are as they are because they can't be a much different and the utility functions to access backend functionality (ideally as JS modules); fork the main frontend". We still care about each other's forked frontend code to some degree though, as we like to port parts of it back and forth and apply our own twists on each other's ideas. This is actually quite similar to a lot of the relationship we have with Firefox, with toolkit as the code sharing hub. In the mailnews case, we should just make all that interaction and structure cleaner, including for example the sharing of L10n files for shared code, which is not happening right now.
    This was only one of the quite interesting topics were were able to talk about, and I'm looking forward to having more of those personal talks with people at other similar events.
    Tristan called Mozilla, like that event, being all about "fun, work and friends" - I think I rarely heard a better summary of why our community works so well.
  • Various Discussions:
    killing MOZ_XUL_APP, tabmail and Lightning, places history and location bar, etc.

One of the areas I've been thinking about more and more recently and what also came up at MozCamp in Barcelona is the long-term vision for SeaMonkey. This is not about specific features we want, and this is not about SeaMonkey 2 or 3 or so - this is more about the stars shining on the horizon that give us a clear orientation of where we want to be moving to in the long term. That vision is closely related to our target audience, and is built up by high-level goals. For now, we are busy with making SeaMonkey 2 catch up to modern technology and represent where browsers and mail/new clients are supposed to be currently, but after we will have achieved that, we will need to know where to go from there, in what direction our software should develop.
Is conserving historic UI our goal? Is merely throwing copies of Firefox and Thunderbird into the same process our goal? Is tight integration and breaking up borders between browser, mail, chat and maybe even web page creation our goal? Is overloading the UI with options almost nobody uses our goal? Or having everything a power-user regularly uses available as easily and fast as possible? Is a strict structure of predefined UI our goal, or as fully customizable user experience? Is SeaMonkey relevant at all in the long run? Why (not)?
I'd like everyone who considers himself part of the SeaMonkey community to take a few moments in a probably otherwise unused timeframe, let you thoughts circle around this topic a bit, perhaps take notes, and try to figure out where you want SeaMonkey to go in the long term, where you see those visions and why. I'll start a thread on the development newsgroup about this soon, and I'll probably blog about it even more.
It will be interesting to hear your thoughts and figure out where we all will be heading in the future!

By KaiRo, at 19:42 | Tags: L10n, Mozilla, SeaMonkey, Status | 1 comment | TrackBack: 0

October 21st, 2008

Weekly Status Report, W42/2008

Here's a summary of SeaMonkey/Mozilla-related work I've done in week 42/2008 (October 13 - 19, 2008):
  • Build System:
    Another update for the updater Vista compat patch I started porting when working on locales Makefile sync - now I actually found the right places to patch! ;-)
  • Misc Development:
    I did more work on the geolocation prompt to SeaMonkey but ran into cases where it didn't come up any more at all. This still needs more investigation, but the corresponding Firefox bug has some good ideas how to do it in an even better way.
  • Themes:
    I spent quite some time to finally also bring LCARStrek forward to SeaMonkey 2.0 Alpha 1, so that both my themes have 2.0a1 versions now.
    Even though LCARStrek looks strange at first glance, it's always fun to work on it, as it's showing so nicely how flexible the Mozilla way of theming applications is. All those black background, striking colors, rounded borders, and intense mouseover effect things really show what can be done with basically just CSS and images.
  • Various Discussions:
    Download manager, EU MozCamp, etc.

I attended a seminar about "Social Web" in the light of politics on Friday, and even though I of course am fully involved in social web activities, learning how others describe and view that is quite interesting. And collaboration, participation and direct feedback are components I see as fitting very well with how I think politics should work. Currently, most parties and politicians around here don't deal with things like blogs etc. very well, I think we only mentioned two or three exceptions of individuals. In the US, both presidential campaigns make much more use of that, but I think the real key is in long-term involvement a real authentic usage of those instruments and technologies. I'm looking forward to a time where everyone can discuss and collaborate with politicians through their blogs, YouTube-style videos and whatever else - but it probably will still take us a while to get there.

By KaiRo, at 14:11 | Tags: L10n, Mozilla, SeaMonkey, Status | no comments | TrackBack: 0

October 20th, 2008

Both EarlyBlue and LCARStrek Now Have 2.0a1 Versions!

I mentioned in my status updates a bit ago that I updated my EarlyBlue theme for SeaMonkey 2.0 Alpha 1 - and a few minutes ago I finally also was content enough with what I have to do the same for LCARStrek, which is actually used more, AMO reports double the downloads and more than four times the users for LCARStrek compared to EarlyBlue.

You now can make the look of your SeaMonkey 2.0 Alpha 1 build go back to the days of the early Mozilla M4-M8 days, or jump forward to the 24th century!

(Those preview images are actually from SeaMonkey 1.x, but the current versions look strikingly similar.)

If you want to try them, see EarlyBlue versions or LCARStrek versions on AMO (2.0a1 versions are sandboxed, so you need to log in to get them!) or theme dowloads.

By the way, both themes are tri-licensed and the source is available from my public git repos - and if I find the time, I have plans to make them support Firefox in the future (probably not before a FF 3.1 release though).

By KaiRo, at 18:10 | Tags: EarlyBlue, LCARStrek, Mozilla, SeaMonkey, themes | no comments | TrackBack: 1

October 14th, 2008

Weekly Status Report, W41/2008

Here's a summary of SeaMonkey/Mozilla-related work I've done in week 41/2008 (October 6 - 12, 2008):
  • Build System:
    A first build system cleanup for comm-central could land this, week, but it's only a relatively small first step in that direction.
    And with a bit of breathing room after the first alpha release, I worked through another batch of build system sync and created a patch for that.
    Another patch I worked on is a build target for a source tarball, I hope we can go with that solution as it's pretty flexible.
  • Misc Development:
    When trying to ensure that the locales Makefiles are in sync, I stumbled over a Vista support improvement that needed some work.
    With all the fuzz about geolocation that's going around right now, I tried to port the geolocation prompt to SeaMonkey but apparently even the solution in Firefox is flawed, so this needs more work.
  • Places History:
    Caio (asrail) could finish up the utilityOverlay.js API updates I need there and they could be checked in this week, which will also be quite helpful for extension developers who can use the same functions for SeaMonkey now as for Firefox when it comes to open URLs.
    Neil and Caio identified a few issues with places history, we still need to figure out the strategy on what to fix in my patch, and what are different blocking or followup things to work on.
  • SeaMonkey L10n:
    Sinhala could join the list of SeaMonkey trunk locales this week.
    The sea20x tree on the Mozilla L10n dashboard shows a few locales that actually don't have SeaMonkey L10n, the bug that wrongly added them is fixed but the list still needs to be fixed manually on the L10n server.
    Regarding general L10n issues, I filed bugs for compare-locales improvements.
  • German L10n:
    German SeaMonkey could keep up with current development work, and I also could fix a bug in help content turned up by testing of our Alpha 1 language pack..
  • Various Discussions:
    Download manager, toolbar customization, "pretty filenames" and spaces, 2.0a1 feedback, Lighting integration changes, etc.

I finally have comfirmation of not only the flight but also the hotel for MozCamp Europe, so I'll be in Barcelona from about noon of October 24 until the morning of October 27, hoping to have some time to actually do some sightseeing on Friday afternoon and meeting a number of European Mozillians and MailNews developers on Saturday and Sunday!

By KaiRo, at 18:51 | Tags: L10n, Mozilla, SeaMonkey, Status | no comments | TrackBack: 0

October 6th, 2008

Weekly Status Report, W40/2008

Here's a summary of SeaMonkey/Mozilla-related work I've done in week 40/2008 (September 29 - October 5, 2008):
  • Build System:
    Another sync patch for the comm-central build system to pick up mozilla-central changes could land, switching us to use the new python JarMaker for comm-central-based jar files as well, among other things.
  • SeaMonkey 2 Alpha 1:
    On Sunday, we could finally release our first preview of SeaMonkey's next generation for public testing - and reports from people are quite positive so far!
    Before that, I went through a complete rewrite of the release notes, based a lot on what Firefox 3 has and throwing out a lot of cruft compared to the 1.x release note pages. The download page was overhauled as well, but there will be more changes as we're moving to localized builds in the future.
    We're still happy about feedback on the Alpha and those website reworks, please just tell us how we can improve even further!
  • Places History:
    After asking again and again for someone looking into UI (sidebar panel and history window) for places-based history and nobody replying, I decided to take matters into my own hands and ported a number of files from Firefox to SeaMonkey to make this work.
    As we only have plans for switching over history to the new SQLite-backed places framework but will bookmarks with the old code for the moment (we don't know if and when we might switch those), I needed to cut out a number of code parts dealing with non-history stuff in that code - but I got a working version and could give a patch into review now.
    I also needed to get things moving on supporting a few more JS functions from Firefox' "API", but I think those will ease dealing with a number of things in our code as well.
  • SeaMonkey L10n:
    Thanks to gozer from Mozilla Messaging, the L10n dashboard for Thunderbird now also supports SeaMonkey (sea2x)!
    The calendar team, which got their locales also added there, has posted a few details on what status is displayed there.
    As slight changes to bookmarks files made compare-locales choke heavily, I disabled compare-locales for bookmarks for now.
  • German L10n:
    For SeaMonkey 2 Alpha 1, we're able to feature an experimental German language pack, please report bugs you find with that in Bugzilla!
    For trunk, I fixed a number of access keys following some editor access keys cleanup in our main code by Vlado from the Slovak team.
  • Various Discussions:
    Toolbar customization, leaks, planning, OS X 10.4 testing, etc.

Now that Alpha 1 is out, we're concentrating on moving development further for Alpha 2, and a lot of interesting stuff is in the works: places history featuring a smarter location bar autocomplete, new download manager backend featuring cross-session pause/resume, new password manager backend featuring popup-less password save and fill-in, session restore, toolbar customization, making the Modern theme complete again, better feed support - to name just the big things people in our team are working on. There's also work going on for a lot of smaller items, and this doesn't include anything happening in the Gecko, platform or general mailnews areas.
We're planning on more regular preview releases in the future, and there's still a lot of interesting improvements to come until we can finalize SeaMonkey 2, giving everyone out there the best Internet suite every produced!

By KaiRo, at 21:58 | Tags: L10n, Mozilla, SeaMonkey, Status | 2 comments | TrackBack: 0

October 3rd, 2008

What Places Has SeaMonkey Been At?

I've been using places history in SeaMonkey for a long time now, getting the awe... er, helpful search algorithm that this new implementation brings right in SeaMonkey's urlbar.
As nobody picked up UI work for sidebar and history window though, we still can't make this system available for new users and need to stick with the old, outdated, unmaintained, mork xpfe history backend.

Yesterday, I decided I can't stand that any more and started copying code from mozilla/browser/ to suite/ - first the history sidebar panel, then all stuff it pulls in, then I injected parts of places organizer into the SeaMonkey history window, until today I arrived at this:

Image No. 20404

Note the search results of the urlbar matching URLs in the middle and page titles, sorted so that stuff I've been visiting more often is at the top. Both the grouped sidebar view and the table-style history window have a simple search bar now, and due to retrieving only needed stuff from SQLite instead of loading everything into memory, we can vastly increase the amount of URLs we can store in the history.

This is not ready to land, I still need to do a lot of cleanup in the code, as we don't need to pull in all kinds of bookmark stuff, and we need a few functions added to utilityOverlay before this can be checked in - but I came to actually working code much faster than I had expected. And I hope all SeaMonkey testers will be able to store all the places they've been to in the shiny new format by Alpha 2!

(P.S.: Expect the official Alpha 1 release this weekend!)

By KaiRo, at 22:58 | Tags: Mozilla, places, SeaMonkey, SeaMonkey 2 | 3 comments | TrackBack: 1

Feeds: RSS/Atom