This week
- Fixed 75
M7 bugs (15 by engrs in other groups)
- Too much M7 feature slippage. Milestones doc to be updated
soon.
- Worked on Beta 1 plan
- Search Messages dialog is in; started thinking about integrating
Search Messages with Robert Churchill's RDF searching code.
- New quoting code landed
(sort of)
- Work on filtering dialog and back end
- Work on Undo Delete Messages and IMAP UIDPlus
- IDL-ized MsgDB API
- News Cancel and CANCELCHK work
- Posting
articles to any news host works
Next week
- M8 feature work.
- New
tree widget to land with better performance (will it be enough?)
and fewer style bugs.
- Try to finalize multiple accounts design.
Footprint watch
- A couple components grew 10-15k this week: address book, IMAP,
compose. Expected?
- MIME emitters combined into one DLL saved
some space, but we spent it again lickety-split.
- A reporting error (ahem) made Win32 builds look ~80k smaller
than they really were. Fixed now.
- Win32: 984k, Mac: 1749k (Removing
Macsbug symbols would bring this down ~20%), Linux: 1961k (or
so; data is a couple days old)
Scott writes:
"John Bandauer has been busily fixing XPConnect bugs in
support of the M7 release. There's still work to be done
on implementing XPConnect features.
The most important ones are:
- Thread-safety
- Predictable, enforced data conversion rules for passing
values between JS and native code
- 'Flattening' of multiple interfaces supported by a component
- Thread-local JavaScript context tracking to ensure that cross-window
JS calls are run in the proper JSContext execution environment
John is also trying to generate interest in reviving the JavaScript
debugger project. It was once a Netscape commercial project
and used a Java-based UI, but later got the axe when we fell upon
lean times. The code lives in the land of open source now,
but has been very quiet. Since JavaScript has become crucial to
the operation of the Mozilla browser application (in addition to
its old role of HTML scriptability), there is clearly an urgent
need for debugging tools. As a gesture of good will and an
attention grabber John has unilaterally released the first patch
to the 1.1 debugger (for Navigator 4.x) since it shipped in December
'98.
In other news, the JavaScript talk
that our very own Norris Boyd gave at the JavaOne
about Rhino, proved to be very popular.
By some estimates, there were more than a thousand attendees."
Our Editor module update is from Akkana Peck:
Our cool feature of the week is session logging. With logging
turned on, all editor transactions can be recorded to a file, and
can be played back later to reproduce bugs or create smoke tests.
Documentation is in the works and should be available soon on the
editor page, http://www.mozilla.org/editor/.
We also implemented a number of the new dialogs and features,
including hrule, increase/decrease alignment, make list.
We've started to write the editing rule code, and documentation
is in the works to describe how to write different sets of editing
rules for those who don't like the default rules. Much discussion
has taken place in the newsgroup regarding what the default rules
should be, and the discussion is still going on.
The editor is now used as the GFX-rendered text control. You
can try using the gfx widgets by setting the preference user_pref("nglayout.widget.mode",
2); Gfx-rendered widgets are still experimental, so caveat emptor.
We also fixed lots of crashes and other editor bugs for M7.
Some of our plans for M8:
- More work on the gfx-rendered text control, including autocomplete
and password control
- More dialogs: Insert Target, tables, fonts, link properties,
advanced image properties
- Real key bindings (replacing the hardwired temporary hacks
in nsEditorEventListeners.cpp
- Work on applying style sheets
- Convert HTML to prettyprinted ascii
- Unicode copy/paste
- More work on InsertHTML
- Some drag&drop work (dependant on xpfe progress)
- Up/down arrow This is pretty ambitious -- we're still looking
at the schedule to see if we can really get all this done in one
milestone.
Highlights
- Completed nearly all planned M7 tasks & fixed remaining
bugs.
Lowlights
- Had to slip sizing of dialog windows according to content
to early M8.
- One appcore (RDFCore) left to convert to component.
Decided to wait to check them all in until early M8 due to risk
of their landing so late in M7.
- Didn't complete quite as much of the Linux drag tasks as planned
for M7, but nobody should be affected by this. We should be able
to catch up in M8, with Pavlov's help on Linux.
- Didn't get around to doing the low-hanging fruit on tree performance.
Accomplishments
- Resolved 31 bugs in the last week, see our Bug
List for details.
- Removed toolbar appcore. (pinkerton)
- Got tooltips infrastructure working, more or less. (pinkerton)
- Converted PrefsCore, SignonCore, and EditorAppCore to components.
(scc)
- Came up with LXR search string that helps us find a fairly
nasty family of leaks. See the news
posting or the related
bug which generated a great deal of leak-plugging activity.
(scc)
- Did the above in conjunction with helping waterson when he
discovered leaks of this form in his own code. Disseminated knowledge
about this kind of leak (and how to fix it) to the net in the
news post <news://news.mozilla.org/scc-1406991241090001@scc-east.mcom.com>
(scc)
- Modified tree frame construction code, so far have cut the
loading of 1000 mail messages from 50 seconds down to 21. (hyatt)
- Modified the RDF builder code to handle the new tree frame
construction syntax. (hyatt)
- Used the anonymous node setup from evaughan to enable tree
bodies to anonymously create scrollbars (which in turn anonymously
create their subcontent). (hyatt)
- Have the scrollbar placed within the tree body. (hyatt)
- Finished hooking up CSS style notifications for drag-over.
(rods)
- Landed XPBeep(), with minimal functionality but providing
for future expansion to play sound files. (sdagley)
- Turned drag & drop on by default (all platforms) by eliminating
the NEW_DRAG_AND_DROP ifdef. (mcafee)
Priorities
- Handle effects of Necko landing (hyatt, mcafee, danm)
- Tooltips (pinkerton)
- Embedding architecture for tooltips/context menus. (pinkerton)
- MacHack next week (gone wed-fri in Michigan). XPToolkit folks
will give presentations on overview of mozilla and how to start
developing on macMozilla (pinkerton), building applications with
Gecko and XUL (saari),
- Continue to work on tree performance. Finish getting
the scrollbar hooked up and then start working on lazy frame instantiation.
(hyatt)
- RDFCore (scc).
- Finished hooking up CSS style notifications for drag-over
- ToolbarItem work and initial ToolbarItem D&D work. (rods)
- Content area specification (danm).
- Get PR_LOG running on Mac. (sdagley)
- Make incoming drags generate proper Gecko drag events. (mcafee)
Decisions
- Held discussions about an embedding API for Gecko for tooltips
and context menus. Decided that, instead of them implementing
these things within Gecko (which would make things really hard
for us), we'll work out an API which we can implement in terms
of XUL. (pinkerton, hyatt, joki)
Issues
- General tree horkage sucking too much time.
People
- Sdagley, pinkerton, saari will be at MacHack 6/23-6/27.
Previous Updates
|