summaryrefslogtreecommitdiff
path: root/plugins/avs/CHANGELOG.AVS
blob: a673bdff734c886923a8e419533fc1518d71e706 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182

        Version history:

0.0.2.6 - 2006/08/03

	  * added file hashing (pescuma)
	  * rewrote the picture loading code. It is now running in a background thread
	    at low priority. The loader thread is the only instance which actually writes 
	    to the cache entries. It does this with a small delay and notifies the hook
	    subscribers when a picture has been loaded. While it is not fully loaded,
	    the fallback protocol picture may be used. This makes connecting or 
	    loading the clist with lots of avatars significantly faster at the cost
	    of delayed picture appearance.
	    It may also help with the sporadic lockups since the part of the code which
	    runs in the callers thread context is now much simpler.

0.0.2.5 - 2006/07/30

	  * fixed updater support
	  * moved InitPolls() to ModulesLoaded() to avoid a problem with missing
	    core services.
	  * fixed keyboard navigation glitch in the Customize->Contact pictures dialog.

0.0.2.4 - 2006/07/30

      * bugfix (missing protocol avatars after migrating to new relpath)
      * added proper version info resource record (showing ansi/unicode)      
      * added project files for Visual C++ 6 (source code release only)

0.0.2.3 - 2006/07/11

      * should now work better with metacontacts. Subcontact avatar changes are
        "forwarded" to the master contact.
        
      * relative path names are now relative to the DATABASE directory, not
        Mirandas root directory.
        
      * missing picture files and/or invalid database entries will now result
        in a refresh request.                  

0.0.2.0 introduced big internal changes. New request queue system (written by Pescuma)
        loadavatars no longer depends on imgdecoder.dll, but needs a recent png2dib
        plugin (supplied with Miranda 0.4.3.x nightly builds)
        
0.0.1.12 - 0.0.2.2 - released via nightlys (see SVN changelog)

0.0.1.11 - 2005/11/10

        + added patch by pescuma for making normal avatars transparent (or semi-
          transparent).
          There are global (under Customize->Contact pictures) and per contact settings
          (contact menu -> Contact picture...). In order to get good results, you will need
          to tweak the settings a bit - it works for most avatar pictures with a uni-color
          background, but it really depends on the image.
          
		+ built with Visual Studio 2005 (Visual C++ 8.0). The DLL is now statically
		  linked, so they are somewhat bigger, but it avoids error messages because of the
		  new VC++ 8 runtime which is not installed on most PCs.

		+ added unicode version (loadavatarsW.dll) which will display unicode nicknames in
		  the "per user" contact picture dialog.
		  
		+ added services and events to manage own avatar pictures. See m_avatars.h for more
		  information. Also, the drawing service was enhanced to allow drawing your own
		  avatars.
		  
0.0.1.10 - 2005/10/19

        ! added support for jabber avatar updates.

        + better cleanup on Unload()
        
0.0.1.9 - 2005/10/18

        * accept .dat as valid image extension (sometimes, icq avatars are saved as .dat 
          files, even if they are actually JPG images (reason unknown, but we can load
          them anyway. MS_UTILS_LOADBITMAP will return an error when the file is not
          really a valid image - the extension doesn't matter).

0.0.1.8 - 2005/10/17

        ! fix. Don't show tray warning messages about invalid avatar file size when
          the option "Show warning messages" on Customize->Contact pictures is unchecked.
          
        * changed way how protocols are enabled/disabled. After protocols have been added
          or removed, "new" protocols are automatically enabled, so you don't have to do
          that manually any more.
          
        * you can completely disable the size limit check by setting the size limit on
          Customize->Contact List to 0 (zero).

0.0.1.7 - 2005/10/16

        * bugfix: check filenames more aggressivly.

        * bugfix: premultiply was broken (thanks FYR)
        
        + added a service to draw a contacts picture to a target device context.
          See m_avatars.h for description on how to use that service.
          
        + added file size limitation to the picture loader. The default are 70Kbytes,
          should be enough for most avatar pictures (they have to be small images).
          The limit can be increased on the option page (Customize->contact pictures).

0.0.1.5 - 2005/09/15

        + added updater support
        
        * moved option page to Customize->Contact pictures

0.0.1.4 - 2005/08/31

        * cache reallocs will now send avatar change notifies (realloc() may move the
          cache in memory, so pointers to avatar cache entries may become invalid).

        ! bugfix - badly written protocols which load themself too late are now
          skipped and won't cause troubles because of the protocol list reallocation.

0.0.1.3 - 2005/08/30

        + ability to lock the avatar (protect from automatic updates). Useful, if you 
          have set a local contact picture and don't want it to be overwritten.
          Actually, the feature does not really lock the avatar updating - it will
          only save the picture from being overwritten.

        + added UI to set/change/lock avatar. DEVELOPERS please check m_avatars.h on how
          to use the service from your own plugins. There are now services to lock and/or
          set the avatar, either by providing a valid image filename or by using a file
          selection dialog. Also, there is a service to call the avatar dialog for a
          hContact.

        * struct avatarCacheEntry has changed too. It now provides szFilename which
          will contain the full image filename of the current avatar in use.
          
        * added a menu item to the contact menu which allows to set avatar options (local
          picture, locked avatar, and a "hidden" attribute).
          The hidden attribute is set in the struct avatarCacheEntry

        + added support for PNG images (imgdecoder.dll needs to be present in either the 
          main miranda directory or the \Plugins subfolder. Transparent PNG images are
          supported and the avatar service will perform the premultiplication of alpha
          values so that the image can (and should) be rendered with the AlphaBlend()
          API.

0.0.1.2 - 2005/08/20

        + the service now creates and uses relative filenames for all contact pictures,
          including protocol avatars, if possible.
          
        * for protocols which are in "invisible" status, no active avatar fetching
          is performed. This is to avoid problems with MSN and privacy issues for
          other protocols (if you're invisible, then the protocol should not initiate
          any outbound communications which may require direct p2p connections).

        * an option page has been added. Currently, you can:
        
          + select, for which protocols the service should ACTIVELY fetch avatars.
            If you set a protocols to "inactive" (uncheck it), already existing
            avatars for contacts of that protocol will continue to work, but the
            service will no longer actively refresh avatars.
            
          + set protocol pictures (pseudo avatars). You can select local pictures
            for each installed protocol. These will be used as a fallback then, if
            no avatar is available for a contact. You can also remove these pictures.

        * don't fetch avatars for contacts which are either blocked or set on the
          invisibility list (ApparentMode == ID_STATUS_OFFLINE). Reason: No active
          outbound communications w/o user intervention should be initiated for blocked 
          contacts.

        + added support for the updater plugin.
        
0.0.1.1 - 2005/08/06

        * changed API. Don't return HBITMAP directly, but instead, it returns
          a pointer to a struct avatarCacheEntry which can be used to obtain
          the bitmap handle.

0.0.1.0 - 2005/08/05

        * initial release, cvs import.