Skip to content

{ Category Archives } Thunderbird

Thunderbird Quick Filter Bar extensions, they’re a thing!

The previously discussed Quick Filter Bar interface landed in time for Thunderbird (Lanikai) 3.1 beta 2 (whose release is real-soon-now).  Although the Quick Filter Bar already contains dangerously high levels of awesome, we made sure to make it extensible so you can cram even more awesome in. As an example, I have created an extension [...]

Tagged , ,

work-in-progress tooling: feeding GWT SpeedTracer systemtapped mozilla performance data

Now that Thunderbird 3.1 is string/feature-frozen it’s time to focus on performance.  This post is just to make sure that people who are also working on similar things know what I’m up to.  For example, there’s some very exciting work going on involving adding a startup timeline to mozilla-central that everyone keeping up-to-date with mozilla [...]

Tagged , ,

performance annotated SQLite EXPLAINation visualizations using systemtap

For the Thunderbird 3.1 release cycle we are not just fixing UX problems but also resolving various performance issues.  The key to defeating performance problems, like the key to defeating bad guys in movies, is to make sure they are dead.  If you want to fight the bad guy again, you can just assume that [...]

Tagged , , , ,

more systemtap mozilla event loop awareness

====================                                             ms    # —– Event Loop: nsInputStreamReadyEvent                                      7119   11 —– Input Events: nsInputStreamPump                                            7119   11 —– Pump Events: thunk:nsNNTPProtocol::QueryInterface(…)                    7119   11 ====================                                             ms    # —– Event Loop: nsInputStreamReadyEvent                                      6284   15 nsTimerEvent                                                  242  123 —– Timers: nsUITimerCallback                                             121    2 —– Input Events: nsInputStreamPump                                            6284   15 —– Pump Events: thunk:nsNNTPProtocol::QueryInterface(…)                    6283   15 As of late, I’ve noticed [...]

Tagged ,

Thunderbird ĝLȬdÅ full text search tokenizer now supports accent folding, non-ASCII case-folding, and more!

Thanks to the efforts of Makoto Kato (jp-blog en-blog twitter) whom you may remember as the bringer of CJK bi-gram tokenization, I have just pushed tokenizer support for case-folding, accent-folding, and voiced sound mark magic to comm-central.  The net result is that searches for “ĝLȬdÅ” will now find “gloda” and vice versa.  Less crazy searches [...]

Tagged , ,

Thunderbird Message Filter Bar Prototype Extension, check it.

What was just the quick-search box in Thunderbird 2 is now also the home to global search in Thunderbird 3.  This hasn’t turned out splendidly, although we didn’t expect that it would.  Some people think quick-search is gone because they do not realize you can change the modes of the search box.  Other people are [...]

Tagged

Thunderbird Jetpack Teasers: Custom tab with wmsy contents

Example jetpack source here because it’s too much to inline.

Tagged ,

Thunderbird Jetpack Teasers: Words per Minute in Compose

jetpack.future.import("thunderbird.compose"); jetpack.thunderbird.compose.appendComposePanel({ onReady: function (panel, composeContext) { let doc = panel.contentDocument; let msgNode = $("<span />", doc.body).appendTo(doc.body);   let started = Date.now(); setInterval(function() { let words = composeContext.getPlaintextContents().split(/\s+/); let secs = Math.ceil((Date.now() – started) / 1000); let wordsPerMinute = Math.floor((words.length * 60) / secs); msgNode.text(wordsPerMinute + " words per minute."); }, 1000);   panel.show(); }, [...]

Tagged

So’s your facet: Faceted global search for Mozilla Thunderbird

Following in the footsteps of the MIT SIMILE project’s Exhibit tool (originally authored by David Huynh) and Thunderbird Seek extension (again by David Huynh), we are hoping to land faceted global search for Thunderbird 3.0 (a la gloda) in beta 4. I think it’s important to point out how ridiculously awesome the Seek extension is.  [...]

Tagged , , , ,

Using VMWare Record/Replay and VProbes for low time-distortion performance profiling

The greatest problem with performance profiling is getting as much information as possible while affecting the results as little as possible.  For my work on pecobro I used mozilla’s JavaScript DTrace probes.  Because the probes are limited to notifications of all function invocations/returns with no discretion and there is no support for JS backtraces, the [...]

Tagged , , , , , , , ,