Highlights
- Upon seeing my plea for help on Linux modal dialogs in last
week's progress report, several developers volunteered their time,
expertise, pointers, and even some code! It is wonderful
to see bazaar-style development at work on an open source project.
Many thanks to Michael K Vance, Tobias Gerdin, and Netscape's
own Syd Logan and Ramiro Estrugo. We really appreciate
your extra efforts on this, and with your help we now expect to
bring this feature online for M5.
Lowlights
Accomplishments
- Fixed 6 bugs in the last week, see our Fixed
Bug List for details.
- Developed a sandboxing mechanism to separate content from
chrome. (hyatt)
- Conducted design/architecture reviews of the work on Clipboard
and Drag & Drop. (scc, rods, pinkerton, mcafee, evaughan)
- Completed Windows Drag & Drop (drag into and drag out
of works) (rods)
- Completed XP portion of Drag & Drop (rods)
- Completed changes to nsITransferable and created a new nsIGenericTransferable
interface (rods)
- Checked in completed nsFileDialog work (rods)
- Coding on clipboard for GTK is done, but problems with event
handling remain, callbacks for selection notification are not
firing. (mcafee)
- Got dynamic menus working on Windows, still need to checkin.
(saari)
- Completed work on tri-state checkboxes. (pinkerton)
Priorities
- Linux clipboard. (mcafee)
- Linux modal dialogs. (rods,mcafee,syd,briareos@lokigames.com)
- Linux folder picker. (mcafee)
- Get dynamic menus working on GTK. (saari)
- Menu enabling/disabling (saari)
- Reading XUL from streams. (scc)
- Get window.xxx() calls working. (hyatt)
- Fix M5 bugs (all)
Decisions
Issues
- Getting the window.XXX() calls working from JavaScript in
AppRunner is looking like a much larger task than we had counted
on. It is still possible for M5, but is certainly at risk.
(hyatt)
- Regular build breakage and instability is once again wasting
a lot of time. This is biting us on every platform but mainly
Linux, where it is hampering all of the developers every day.
Many are wasting a total of a day or more each week on this, trying
to get a build, trying to fix the underlying problems, and trying
to avoid getting clobbered by it again. We desparately need
to get this problem under control for good. (mcafee et. al.)
People
- SDagley and DanM were on vacation in Hawaii this week, but
will hopefully return fully recharged and ready for action on
Monday.
Troy writes in with this update:
"I don't think there's too much interesting. Kipp's working
on implementing :first-line and :first-letter, and I'm working
on fixed background. Other than that it's mostly bug fixing"
Here's the ImgLib update from Pam Nunn:
The XPCOMified image library has been checked into a branch,
IMGLIB_DECODERS_BRANCH.
The code has been tested on NT, linux, and mac. The build files
may be a bit shakey, particularly on mac. I'll carpool to the
tip after the build files are retested.
This structural change is the first step to having dropin inline
decoders for Gecko. This version does not yet implement mime type
smarts which will allow anyone to drop in a new decoder into a
installed browser by adding the decoder component to the components
directory and assigning mimetype/extension. The mappings available
now are GIF, JPG, PNG.
The bugs you all know and love, are still with us. I have changes
for several bugs lined up to test as soon as the api has landed.
I am still making changes to the make files so keep updating.
There will soon be a doc file in mozilla/modules/libimg/doc.
Bill Law has some news from XPApps:
"I added a couple new features to apprunner this week:
1. "Edit->Page Source" now works.
2. "File->Open" now opens a new apprunner window with the selected
page.
These features deploy some clever XUL and JavaScript that might
be of interest to other XUL coders.
I also fixed the problem where multiple apprunner windows all
sent their commands to the first window (e.g., typing in a URL
in a second window will now actually load that page in the window
in which you type).
I'm going to work on cleaning up the "file download" dialogs
and on adding support for Search (find in document) next week."
Here's Akkana's update on the status of the
editor (composer):
- "Design work involving typing rules; see http://www.mozilla.org/editor/rules.html
for details.
- Significant work on dialogs, which are almost ready to go;
our first dialog will probably be the Insert Link dialog. Lots
of work going on in how to define the API in the editor app core
-- see discussion on the editor newsgroup.
- IDL-ized selection; now external Javascript clients will be
able to query the selection. Lots of other work happening on the
IDL interfaces for editor actions.
- More work on the underpinnings of items like Make Bold, Insert
Link and so on, to make the code more reusable both by other C++
editor methods and by Javascript.
- More work on Text Services, which will be used by the spell
checker (its first client), find/replace, and many other clients.
- The beginnings of automated test routines; some test-related
items have been added to the editor menubar, so keep an eye open
as more tests turn on over the next few weeks."
Phil Peterson has news regarding the Mail/News client:
This week
- Mac mailnews is all checked in and ready to build. To enable
it, change $build{mailnews} from 0 to 1 in the perl scripts.
- Our Mac stuff isn't on Tinderbox yet since the release team
builds the Mac product in a RAM disk, and with the addition of
this new code we've outgrown the RAM disk. The release team is
working on it.
- Most M4 commitments met. The milestones
doc has been updated to reflect what we actually did in M4.
- IMAP is making great progress, but there's a lot to do. Usable
IMAP projected for M6 (May 18).
- 4.5-style preferences dialog is integrated.
- Ongoing engineering work on multiple accounts, MIME i18n,
news.
- Sorting and (top-level) threading in the thread pane works.
- New UI design mostly completed for the message
composition window; spec is posted to mozilla.org, with agreed-upon
internal review.
- Our XUL now conforms to the localizability
guidelines
- We're now using the XPFE chrome
URLs.
Next week
Footprint watch (optimized builds, uncompressed)
- Win32: 574,720 (yes, that's
in bytes) after great de-bloating work from Scott
MacGregor and Rich Pizzarro.
We were at 1,427,344 on April 2.
- Linux: This is the first time we've looked closely at it.
Not as bad as Win32 was, but we need to investigate the size differential.
- Mac: Coming soon
Win32 |
|
Linux (stripped) |
|
msglocal.dll |
110,960
|
liblocalmail.so |
320,440
|
msgcompose.dll |
81,280
|
libmsgcompose.so |
179,048
|
mailnews.dll |
68,368
|
libmailnews.so |
137,932
|
mime.dll |
77,184
|
libmime.so |
136,624
|
msgnews.dll |
42,224
|
libmsgnews.so |
99,392
|
msgdb.dll |
134,176
|
libmsgdb.so |
97,528
|
linked in |
n/a
|
libmsgbaseutil.so |
70,988
|
mimect-vcard.dll |
36,512
|
libmimect-vcard.so |
63,324
|
htmlemitter.dll |
8,512
|
libhtmlemitter.so |
14,972
|
xmlemitter.dll |
8,512
|
libxmlemitter.so |
14,292
|
rawemitter.dll |
6,992
|
librawemitter.so |
12,716
|
|
574,720
|
|
1,147,256
|
Scott writes:
"Mike McCabe (et
al) got the building of xpidl into the client build for Win32
and Unix. Much pain and suffering was felt. He also removed the
NSPR dependency from xptcall, clearing the way for Patrick
Beard, who landed a Mac port of xpidl. Patrick checked in
Mac projects and changes to make XPConnect and supporting tools
work on Mac PPC. This includes Roger
Lawrence's xptcall code (which is untested at this point).
Building XPIDL on the Mac is not yet finished, however.
Chris Toshok checked
in xptcall port for FreeBSD and NetBSD on x86.
John Bandauer has:
- fixed bugs in XPIDL and XPConnect
- made the Components object correctly expose (and clean up)
XPCOM 'services'
- implemented a simple interactive XPConnect-enabled JS shell
for testing
- designed and partially implementing a security listener scheme
to support an external "security manager" that can monitor and
'filter' xpconnect calls for:
- creating wrappers around interfaces,
- using component manager to create an object instance
- using service manager to get at a service
- making individual method calls (and property get/set)
Next up on John's list is a scheme using generated makefiles to
simplify adding idl files to the build while supporting all the
correct targets and dependencies."
Previous Updates
|