Up to Scribe...
About
Final take #3 Changes:
- Fixed text not showing up in the editor.
- Updated the Czech translation.
- Added abilty to set most of the Object::Mail DOM fields. Dates can be set by assigning a string in the format "day/month/year 24hour:minute:sec". The time being optional. This is however sensitive to your regional settings, or whatever you selected in the appearence options for the date format.
- Fixed Scribe eating all the available RAM when minimizing a mail window with "wrap at column 'n'" set.
- Added time zone field to the contact window including a field for the contact's local time calculated from the current system time zone and the contact's time zone.
- Combo boxes now have a keyboard find function. Type a few keys and if the time between each key press is <= 2 seconds then it builds up a string which is then used to lookup the nearest match in the contents of the combo's list.
- [Win32] Fixed dropping attachments on an explorer window.
- Fixed attachments being sent with extra bytes on the end.
- Fixed tables accepting a foreground colour in the HTML control.
- Made the preview window show the same control used to view the body of the message in the mail window. This basically means you get HTML in the preview window too. If you have selected that in the options.
- Made the status window remember it's open/shut state and select the first account by default.
- [InScribe] Made the filters use customizable DOM fields for the source data as well as the value being tested against. There is also an area to enter in Scripts which run instead of the conditions. This allows custom filtering using much more complex conditions then can be creating using the UI. Scripting requires the ICI plugin which will be released sometime Feb'03 when I've ironed out the bugs. Eventually I hope to provide full method access to Scribe objects via ICI, but at the moment all you can do is SGetDom(
), SSetDom( , ) and SRunFilterActions() in the script area. Which is enough for simple scripted filtering.
- Fixed the company field not showing up in the contacts folder list view.
- Fixed the crash when right clicking on the calendar view where there is no event.
- Moved the contact window fields around a bit. Added a title field, moved the company on to the main tab, made the suburb fields longer.
- [Linux] Fixed bitmap display when running X in 24bit mode.
- Fixed the compact so it removes corrupted objects in the store.
- [Linux] Fixed spawning external processes. This fixes opening attachments, the reply/forward template and playing sounds when email arrives. Passing a document to the LgiExecute function is also supported now.
- [Linux] Added support for looking up a file's mime type via the file(1) command and also looking up the associated app for a given mime type from kde3's settings. A bit messy and undocumented but it's a start.
- [Linux] Scribe doesn't chew 100% cpu any more, I fixed that by putting a small sleep in the main app loop.
- [Linux] Xft font support working reasonably well. Anti-aliased fonts, bold/italic, unicode... you know just the normal stuff. Support for writting Xft fonts onto GMemDC's.
- [Linux] Added GView::SetPulse and GView::OnPulse support to Lgi which fixed a bunch of issues in Scribe.
- [Linux] Fixed the repainting of windows from non-GUI threads in Lgi.
- [Linux] Fixed the account log in the status window.
- Changed the text edit control to only request pulse events when it has the focus. Makes for less overhead.
- Fixed some issues with filename auto-generation for objects dragged outside Scribe.
- Made the "delete as spam" remove attachments on spam, they're usually just virii anyway.
- The HTML control now has a "View in Default Browser" option in the right click menu.
- Fixed some problems decoding nested MIME segments and badly formed MIME emails.
- Added code for double clicking a tree item to open/close the branch, just like all the other windows apps.
- Fixed stray instances of '<' wrecking the parsing of documents in the HTML control.
- Added tooltips to the HTML control to show the href/uri of links when the mouse is over them.
- Changed the HTML control to ignore meta tags telling it that the charset is 'utf-16' or 'utf-32', which obviously it can't be in an email.
- Fixed scrolling in the calendar window scheduling tab. Which is only available when you are connected to the shared calendaring server. Also the area in the timeline view that represents 'today' is now tinged red, in line with the other calendaring views.
- Fixed spurious crash when sending email. (One of those "what the...? how did this even work at all!" moments)
- Fixed a minor glitch in the Rfc2047/Base64 decoding of words in mail headers. Occasionally the output would have a garbage character on the end.
- Fixed the shared calendar root folder to not allow creating a entry from the right click menu. Which doesn't work anyway.
- Added support for colouring the local (private) calendar entries.
- Changed the default free/busy setting on new calendar entries to "Busy".
- Fixed attendees in the timeline view of the scehduling tab to have multiple sources of entries (ie both local and shared say) and to colour them correctly.
- [Linux] Fixed the popup edit labels (in the Contacts window) appearing in the wrong place and crashing the app.
- [Linux] Fixed tabbing around windows.
- Fixed the "create folder" dialog not showing for new users.
- Fixed the "SCP" protocol type missing from the receive account type combo box.
- Fixed IMAP not returning messages.
- Fixed being able to switch off transport plugins. Currently transport plugins are associated with an entire account, which means that you can't use the plugin with just one side of the account, say receiving. InScribe uses can of course create a second account, but maybe it's better if the plugins can be associated with the send/receive sides separately. Although thats a lot of duplicate work in the code... :(
- [i.Scribe] Fixed mail windows openning when the user hits Ctrl-M and the list view has focus. For some reason the win32 'TranslateMessage' function was taking the 'Ctrl-M' key and producing 'enter' key WM_CHAR messages. Bizarre.
- Fixed sending attachments.
- Fixed Scribe not loading in win9x.
- Fixed nested emails not opening. Ie an attached email with an attached email... and so on.
- Added a resize cursor when the mouse of over the edge of a resizable list column.
- Fixed Scribe dupelicating the '/Calendar' folder unnecessarily.
- Drastically reduced the memory required to compact folders. This fix keeps track of what it had to load, and unloads it after the validation check has been made. So it keeps memory usage down during, and after the compact. This will allow folders to scale into the GB's more easily. Not that I suggest you keep GB's of mail around.
- Fixed the sending of large email to use O(1) memory, or in layman terms "hardly any".
- Enabled shared calendaring in the release build. This allows users to connect to the server to store calendar entries in globally visible folders. Also you can now configure Scribe to show other peoples folders in the calendar view window.
- Added option to set the language used in the UI, requires a restart. Languages available are read out of the scribe.lr8 file. i.e. they automatically appear in the menu as translations are added.
- Added option to adjust the point size of the fonts used in the UI (-2, -1, 0, +1, +2), requires restart.
- [InScribe] Added "Empty Folder" filter action, which deletes all items in a given folder.
- Fixed Scribe installing itself into the mail clients directory in the registry so that when Windows XP puts the "Email Client" icon in the start menu it actually opens Scribe rather then the "Internet Settings". *sigh*
- Fixed some issues with the editing of email addresses in the contact window.
- Added support for an Attendee list to the calendar object and calendar window UI.
- Added support for transport plugins. These allow 3rd party plugins to provide network connectivity support by returning a GSocket object which scribe can pass into the mail receive/send. Currently only implemented for receiving mail. The 1st plugin to use this is the SSL plugin. I plan to move the Socks5 support into a similar plugin.
- Fixed crash when saving multiple attachments.
- Fixed some words getting lost in the wrapping of replies.
- Added read receipts.
- Fixed the IE HTML control plugin.
- [Win9x] Fixed "cut" in the text editor to put both wide and 8bit versions of the text onto the clipboard.
- [InScribe] Fixed forwarding an email having the wrong (default) "reply-to" address.
- [InScribe] Fixed label not persisting across sessions when set by a filter. This is opposed to the other bug where it just wasn't saved at all!
- Made the socks5 password hashed out in the UI.
- Made the focus default to the text area when replying.
- Fixed some initial sorting states for folders, and their interaction with the next/prev button on the mail window.
- Updated Brazilian Portuguese translation.
- Changed the MIME decoder to use the body's codepage/charset for decoding the subject when the sending mail client doesn't encode the subject correctly. The rfc states that all headers are 7bit ASCII, but many clients incorrectly send unwrapped 8bit data in the headers. Scribe isn't to know what codepage to use. Hence this hack to "guess" what was intended by the sending client. Properly encoded headers are still processed as before.
- Improved the automatic generation of filesnames for exporting email/contacts etc via drag and drop. Basically if the input text for filename generation wasn't proper utf-8 it would fall over semi-gracefully (ie. just not work). But now it detects this case and makes a filename up out of a random number.
- Tried to clean up the selection of the plain text and HTML controls when reading mail. Hopefully it will resolve the problem of not having either control, or the wrong control. For you to get the built in HTML control when there is HTML available then select 'text/html' in the appearence options. If you don't have that setup you get the plain text part of the message or the raw HTML if there is no plain text. The 'control' option has been removed for the time being because it's redundant in the current setup.
- Added handling for .EML files being passed in on the command line. Instead of them being attached to an email, I decode them into a Mail window for viewing.
- Moved the priority setting on the email window onto the toolbar. Because you all complain too much about it ;)
- Changed the hotkey for "Forward" to "Ctrl+W" so I can:
- Added hotkey for "Find" as "Ctrl+F", both in the mail and app windows.
- Added hotkey for "Save" as "Ctrl+S", in the mail window.
- Made the tree view have focus on startup so you can start using Scribe via the keyboard without having to click on it.
- Added a reference section to the help files listing the hotkeys and linking to some of the online documentation.
- [InScribe] Fixed the "filter current folder" to get through all the messages instead of skipping over some of them.
- [InScribe] Fixed the status icons in the opened status window to show errors when they occur.
- Fixed the contents of window flickering when moving the top level window around.
- Changed the next/prev etc in the calendar view window to move by larger increments. Fixed some items appearing in the view when they shouldn't.
- Fixed the IMAP code not expunging the INBOX after a session. Caused messages to be downloaded again and again and again...
- Fixed crash in IMAP download.
- Fixed calendar entries sometimes openning from the previous month when trying to create a new entry.
- Added code to scroll to the selected tree item when using the keyboard to move up and down a tree control.
- Fixed the XML reply/forward formatting to not be used when the filename is cleared in the options.
- [Win32] Fixed attaching and saving files with 8bit names on Win9x/ME and Unicode on WinNT/2K/XP.
- [Win32] Added unicode support for command lines.
- [InScribe] Added ordering for filters. Once a filter matches the incomming mail then it's actions are run and no other matching is done for that email. The filter window now has up/down buttons to change the ordering of the filters. The order is maintained via the index field, available in the list view. Filters are tested against mail in ascending order. Filters in folders other than the sub-folder in the options aren't used, effectively switching them off.
- [Win32] Added supported for detecting sub-languages and matching them against LGI's language list.
- Added "Brazilian Portuguese" translation.
- Added code to show ellipes "(...)" on folders that have unread mail in hidden sub-folders. Any number after a folder name is the unread messages in that folder, not including subfolders. Any "..."s indicate that a hidden subfolder has unread messages.
- Fixed the flashing new mail icon from stopping flashing after the next mail download.
- Fixed new instances of Scribe passing command lines to the existing instance.
- [InScribe] Fixed mail labels persisting between sessions.
- Changed email list behaviour to save it's data unless the user hits escape. Previously it would only save when the user hit enter.
- Added keyboard support bringing up the edit box in the Contact's email list.