From MyWiki
Change log for tabSRMM plugin
| This is an archived change log. You can find the current log here
|
|
|
|
Changes made 2007-06-12
- added support for new UTF-8 message storage introduced in Miranda 0.7.x alpha build #30. This is enabled automatically for protocols which can support UTF-8 sending. If you are using either IEVIew or H++ to view the message log in tabSRMM, you *MUST* upgrade them. This feature affects the UNICODE build only.
- added new per channel event filter system. The new event filter allows to configure visible events, appearance of popups and flashing tray icons on a "per channel" basis. All the checkboxes in the event filter window are now 3-state controls. A "filled" checkbox means that the default value is used (you set defaults in Options->Message Sessions->Group chats, as always). A checked control means that this feature is enabled and overrides the default setting for this channel. A cleared checkbox indicates a disabled item and again overrides the default setting.
The first line of the event filter window (you can activate the event filter configuration window by RIGHT clicking on the event filter button in the chat window) shows 2 additional columns. The colum with the "P" header stands for popups while the colum with the "T" header indicates settings for the flashing tray icon.
All new channels inherit these settings from the default configuration
Changes made 2007-02-09
- added statusbar indicators for CAPS LOCK, NUM LOCK and insert/overwrite mode. Simple letters (N, O, and C in the 2nd status bar field indicating these keyboard states).
- merged latest flash avatar plugin code (patch by Big Muscle)
- added tipper-style tooltips over tabs (optionally, can be disabled).
- fixed slightly wrong Shift-Enter behavior in group chats (will no longer split line when sending with Shift-Enter is enabled).
- Moved main option page to Options->Message Sessions. No need to keep the main option node clean and waste space in the options tree.
- The groupchat nicklist now allows multiselection. This can be used for issuing standard channel commands like +/-op, voice, kick etc. on multiple users. Note: Doesn't work for whois, because IRC.dll does not allow more than one whois dialog to be active. Note + 1: wip, the nicklist context menu needs some improvements.
Changes made 2007-01-04
- various unicode related minor bugfixes.
- attempt to fix "Unknown Contact" problem in popups with newer versions of MetaContacts plugin.
- new option to sync splitter position of group- and normal chat windows (group chat option page).
- added ability to set character encoding, including UTF-8 support, in group chat sessions when the session is registered as ANSI (IRC for example).
- added support for cyrillic KOI8-R code page.
- fixed highlighting in unicode chat rooms.
Changes made 2006-11-26
Long time, no updates to this changelog. Lack of time on my side and generally slow progress in development are the main reasons. Anyway, here we go with a small but important list. Some of these changes are big ones and still work in progress.
The complete plugin documentation I mentioned earlier is still in the works. It has grown to more than 100K of text already, but still needs quite a lot of work to get useful.
- The group chat module is now UNICODE safe, thanks to a big patch by ghazan done to chat.dll and merged to tabSRMM. This should still be considered "work in progress", but it is stable and works. Note that the IRC plugin still does not support UTF-8 encoding for channels, so IRC is still plain ANSI. But MSN and Jabber groupchats are now fully unicode aware.
- The message history can now be viewed using the History++ plugin. See this article for more info.
- A recent addition to the long list of Miranda plugins is a new spell checker, based on hunspell. tabSRMM fully supports it for both IM and group chat sessions. More can be read here.
- The status bar API written by Scott has been added. This is now part of the message window event API and compatible with SRMM and scriver. With this API, other plugins can place icons in the status bar of the message window. The user can use these icons to perform various tasks. One example is the spellchecker which allows to select the language using the context menu of its status bar icon.
- Many bugs have been fixed, auto-bidi mode works better and has been made smarter. On systems, which don't have any RTL language installed, the keyboard layout switching has been restored to the old way and the rich edit will never switch text direction when it actually should not do so.
- Various bugs with avatar display have been fixed.
Changes made 2006-07-15
- This time, the compatibility between tabSRMM + IEView got some attention
- Scrolling the IEView message log without focusing it has been added. It works with the mousewheel and keyboard shortcuts (Left Ctrl+Shift + navigation keys - cursor up/down, home, end, page up/down).
- Changing message formatting options via the menu bar or the message log options menu should now have immediate effect (of course, that doesn't work when IEVIew is in template mode - in that case, these menus are now disabled to avoid confusion).
- I have written a new +tabSRMM HTML builder module+ for IEViews "compatibility mode" (when no IEView templates are used). This module now uses tabSRMMs default message log templates and offers advanced options like text indent and conditional variables. I will submit that code to the IEView author so it will be available in one of the next IEView releases.
This is mainly for users who don't want to use templates, but still want to have the ability to use animated emoticons. Also, the auto-bidirectional mode works much better with IEView since the support for bidirectional text in Internet explorer is much better than in the Rich Edit control.
- Automatic container and tab creation has been rewritten. It is now faster and the code is much simpler.
- Some options have been renamed to be more obvious and less confusing.
Changes made 2006-07-04
- Changes to the avatar display mode. Static mode has been removed, its functionality has been replaced by an avatar size limit and a "Preserve size" option which will try to render the avatar unscaled (at original size), if possible. Generally, avatars will be downscaled when the splitter position doesn't provide enough space, but upscaling can be controlled by the 2 options.
- many internal changes, code cleanup, optimizations.
- Some options were renamed and possibly moved around.
- The global option to enable IEView has been removed. IEView is now automatically enabled when installed, because people who install it probably want to use it :) The per contact setting for switching to the default message log is still there, though.
Changes made 2006-06-20
- The tab order within a container can now be changed by using simple drag 'n drop.
- small bugfix when loading and saving themes (info panel field background)
- the dialog for configuring the tab appearance is now part of the new Message window skin option page and has been removed from the context menu on the tabs.
- fixed crash in font options dialog when using it with a fresh profile.
Changes made 2006-06-19
- various changes to the skinning engine. Menubar is now skinable, scrollbars can be disabled in skinned mode. Additional skin items allow to skin the statusbar background and the user list in groupchat sessions. Note that skins may need updates to support this.
- A number of unicode and translation-related fixes have been merged.
- Ability to rearrange the tab order. The options can be found in the context menu of any tab and allow to shift tabs left or right and save their positions. tabSRMM will try to restore the relative position of a tab when it is opened. Tab positions are only saved "on demand" - that is, when you actually shift a tab or save its relative position in the container. If no position has been saved for a tab, it will open at the default (rightmost) order. Note that a tab position cannot be absolute, because containers may have a different number and type of tabs at any given time, so the tab position should be considered *relative*. For example, when you shift a tab to the 4th position and open it later in a container which holds less than 4 tabs, it obviously cannot be at position #4. However, tabsrmm will try to maintain the saved position whenever possible. If multiple tabs try to hold the same relative position, the order of opening them will determine their absolute position.
- automatic bidirectional mode has been added. Currently only useful with very recent builds of the MSN protocol. It will support transmitting the RTL flag with any message you send, when the message actually contains right-to-left text sequences.
Also, when receiving messages they will be shown in RTL mode on a "per message" basis. Note that, if this auto-bidirectional mode is enabled, some advanced message log formatting options don't work. This includes horizontal grid lines and some advanced template variables (highligthing with background color or drawing horizontal lines) for example.
- An extra dialog has been added to load a skin. It is now under Options->Customize->Message window skin and no longer in the container options dialog.
- Loading a skin which includes its own set of fonts, colors and templates will, by default, *NO LONGER OVERWRITE* your fonts, colors and templates. There are options on the skin loading dialog which allow you to control this behaviour. Generally, be careful with overwriting templates.
Loading a skin at startup will *never* overwrite any fonts, colors or templates. So if you want to use the fonts, colors and templates from the skin, you will have to manually load it by hitting the %{color:blue}Apply skin now% button after setting the options.
Changes made 2006-05-17
- restored MingW32 compatibilty. The unicode version can now be built with GCC / MingW32 again - ANSI not yet. You need a recent MingW32 distribution (tested with a GCC 4.1.3 snapshot and latest MingW32).
- some minor skinning fixes
- the icon which indicates multisend (when using the multisend or "Send to Container" feature) is gone. Instead, the input area will get a red border to warn you that any message may be sent to multiple contacts.
- added new sound event ("Error sending message") - will play when a message delivery fails.
Changes made 2006-05-13
- critical bug fixed (crash when no protocol is using the group chat module of tabSRMM).
- the option dialog now remembers the last tab page which was selected.
- some minor fixes when loading and unloading skins and/or themes.
- better integration of group chat tabs into the favorites and session list (chat rooms can now be added to the list of favorites, for example).
- chat room popups now respect the generic tabSRMM event notification settings and also follow the popup options set for the given container (popups when minimized/unfocused etc.)
- The option to use IEView is now enabled by default when IEView is detected for the first time, so users who install IEView will no longer have to activate the +support for external plugins+ on the message log option page.
- some adjustments on how group chat tabs are changing their tab + window title bar icon. These icons now have priorities. Highlight events are considered most important, followed by message events. Events with lower priority won't overwrite already present icons for events with higher priority.
- fixed a bug which could make nicknames invisible in the group chat message history when a contact is using a nickname starting with a number.
Changes made 2006-05-04
- new chat log icons. They are now 16 x 16 pixels and therefore look much better on the clist and the system tray (and anywhere else). In the chat log itself, the icons are scaled down to 10 x 10, but this can be disabled (but realize, that using 16x16 icons in the log will increase memory usage). The icons have been created by Angeli-Ka and permission to use them was given (thanks :) ). These icons also match the standard (proxal based) icon theme better.
- chat event icons on the tabs now have priorities. The highlight event has highest priority, followed by the message event (someone speaks in the channel). That means, events with lower priority won't overwrite the notification icons on the tabs any longer (which was annyoing, because every join/part/nick/etc. event was actually overwriting the more important message + hightlight icons).
- The group chat setting *Flash window when someone speaks* is now working. If disabled, the container won't flash when someone speaks in the channel. Same for the highlight event.
- added the separator lines known from standard tabSRMM sessions. A line will appear in the log when there are new events while the container was unfocused or minimized (this feature may be known by mIRC users aswell). So it is now quite easy to find events which are new (and you may not have seen them while the window was in the background or minimized).
- more tabsrmm-like behaviour for chat tabs. ESC can now minimize the container instead of closing the session (unless, that option is disabled) and other tabsrmm shortcuts have been added.
- The color used for the background of marked nicknames in the nicklist can now be configured.
- When using visual styles, the tab labels are now using the font defined by the visual style instead of the system font (note: Unicode build only, as the UxTheme API does not provide ANSI functions).
Changes made 2007-04-28
- added *classic IRC style* status mode markers (like @, +, % and so on). When enabled, IRC channels will show these symbols in the nick list and message log (in front of the nickname) instead of the icons. This is now the default, but you can disable it and get the old icons by unchecking the option on the "Group chat" option page.
- a few bugs fixed (status bar offset in group chats, typing notify icon)
- it is now possible to set color values for the tab labels in the skin configuration (refer to the skinning documentation for more info)
- the FontColor setting in the skinng definition is now working.
- added language pack code page support to fix a few unicode issues.
> **Changes made 2006-04-16**
- added message window API support to chat tabs
- info panel labels (Name:, UIN:) are now translateable (changed UIN: to User Id: to avoid language packs confusion, because UIN: is already in use in many places).
The translation strings are %{color:blue}Name:% and %{color:blue}User Id:%
- added support for showing the client icon in the info panel (NEW fingerprint (0.0.19.x or later) needed for this - client icon is visisble in the status field (if available) - a tooltip appears when hovering the client icon showing the exact client id).
- added an option to enable/disable xStatus icons in the message window title bar and protocol button (Message Sessions->Message Window->Tabs and layout page)
- restored old behaviour - infopanel nickname field always shows the xStatus icon if the contact has an xstatus set.
- fixed possible crash after dropping text to the message input area
Changes made 2006-04-12
- removed some legacy code for smileyadd support (no longer needed).
- updated to new smileyadd API (SmileyAdd version 0.1.12.2 or later is now required) - this allows a new feature in smileyadd to work with tabSRMM - per contact smiley packs.
- The info panel can now show the client icon. This requires the +fingerprint+ plugin by FYR. The client icon is shown in the status field of the info panel, just right of the protocol string.
- several bugs fixed in integrated chat support (sticky background color button etc.)
- more hotkey merging. Switching tabs with Ctrl-Tab / Ctrl-Shift-Tab, mIRC style tab selection (Alt-1 - Alt-0) and other hotkeys are now working in chat tabs.
- some minor drawing fixes in the skinning engine.
- added extra icons for the show/hide nicklist button in chat room tabs (icons sent by Faith Healer, thanks for them).
Changes made 2006-03-31
- merged code from Big Muscle to support the flash avatar plugin (extra plugin you need to download)
- Ability to enable/disable the integrated chat module on the options page. It is disabled by default, so you need to go to Options->Message Sessions->Message Window->Group chat tab and enable it. This needs a *RESTART* of Miranda whenever you change it. When the integrated chat module is disabled, tabSRMM does not load anything chat - related, so you can continue to use the chat.dll plugin like before (if you want it to be an extra plugin, that is). It won't even load icons for the chat module then, so when you disable the integrated chat module, it doesn't waste any memory or other resources.
- some bug fixes to chat tabs - manual container assignment should now work.
- Option to create chat tabs in the default container added (by default, tabSRMM creates chat tabs in an extra container called "Chat Rooms").
Changes made 2006-03-26
This is a big chunk of changes.
- merged chat.dll code into tabSRMM so it can now be used for group chats like IRC channels. This is still incomplete, but already working quite well and a release will be available within the next few days.
- fixed minor bugs in the skinning engine
- removed IMGDECODER dependency - skinning engine can now use 32bit per-pixel alphablended PNG images without loading them via imgdecoder.
- fixed: the menu bar item %{color:blue}View->Show Multisend% didn't work.
- fixed missing scrollbars and some other drawing errors when the text input box is set to RTL.
- added "send on double enter" for both IM and groupchat sessions (merged code from chat.dll).
- redesigned font configuration dialog box - all font settings are now available from this single dialog. There are sections for IM fonts (normal sessions), group chat fonts and info panel fonts.
- fixed local time display when DST (aka "summer time") is in effect.
Changes made 2006-03-06
- skin support for title bar buttons (set exact size and location)
- loading a skin now also loads many visual settings, including tab text colors, avatar border color and more.
- The container is now using an own window class and no longer the default dialog box window class.
Changes made 2006-03-06
- fixed a few visual glitches with the toolbar and attached dropdown arrows
- continued skinning engine - can now skin the window frame + title bar.
- The message log history & message input box are now drawing their borders with visual style support. This avoids the "ugly" classic - style static edges around the text areas. Note that you can still set the text areas to display +*no* border at all+ and appear completely flat (the option is on the %{color:blue}Tabs and Layout% page -> Message dialog visual settings -> Flat message log).
This also fixes a bug for WindowBlinds users where the static edge of the rich edit control shows "Garbage".
- fixed xStatus icon in the info panel - it does no longer depend on the "use_xicons" database setting (this setting does only control the xStatus icons on the tabs + window title).
- fixed "sticky" xStatus icon on tabs when a contact goes offline or clears his xStatus
Changes made 2006-03-04
- ability to show xStatus icons on the window titlebar and the tab(s). *Note:* this is a basically unsupported feature. To enable it, you must create a database entry, using dbeditor++
create a *BYTE* value under the Tab_SRMsg module, name it use_xicons and set the value to 1 (enable) or 0 (disable).
- some tweaks to the new button drawing code for buttons with attached pulldown arrows.
- added a new BBCode: [s] and [/s] for strikethrough formatting. There is no button for this, and there won't be any until the button bar gets its redesign with configurable button layout (planned for one of the next versions).
Changes made 2006-03-02
UI improvments
The toolbar has been slightly modified to allow configuration of button appearance. They can now be:
- flat or 3d
- themed (visual styled) or non-themed
- You can set these options from *_Options->Message Window->Tabs and layout_*
- Also, the "dropdown" buttons are no longer individual buttons, instead, the dropdown arrows are now "attached" to already existing buttons. This looks better and makes the extremely small dropdown buttons obsolete (they were looking pretty bad with some visual styles in non-flat mode).
- The button tooltips have been enhanced and allow multiline tooltext display for better clearance.
- changes to the window splitter (the small line just below the toolbar which splits the message window into the history and input area)
Now, when you release the splitter after moving it, a menu appears which allows you to select from a few options. Your selection will then determine what happens, and there are the following options:
- *Set Position for this Session* -> default (and old behaviour), just set the splitter and it's done. It will be saved when you close the session, unless you have disabled the "Autosave splitter" option on the splitter menu (see below, how to open this menu).
- *Set and Save for all Sessions* -> will apply the new splitter position to *all open* message windows. It will also save it as default value for new message sessions.
- Note* will not set it for sessions which are using private splitter position. To check whether a message session is using a private ("per contact") splitter position, click the leftmost dropdown arrow on the toolbar and choose the "Splitter" submenu.
- *Set and Save for this Contact only* -> will save the splitter and set the splitter mode for this session to *_Private_*, which means that this contact will not share the splitter position with other message sessions.
- *Revert to old position* -> will forget the changes and restore the position which was active before you were starting to drag the splitter.
- added color (cyan) to the list of known colors for the [color] bbcode tag.
- Workaround for UTF-8 sending bug(s) with Trillian - when the per contact send mode is set to _"Force Ansi"_, tabSRMM will write ProtoName/UnicodeSend and set this BYTE value to 0 before sending a message. If _"Force Ansi"_ is not set, tabSRMM will clear this value when it exists.
ICQJ is using this DB value to disable UTF-8 sending on a "per contact" basis.
Changes made 2006-03-01
- fixed serious bug (possible crash/hangup) with the *[color]* bbcode and non-existant colornames.
- fixed titlebar not updating in some situations.
(for changes see the CVS copy of the internal *changlog.txt*).