История изменений/0.96.3: Difference between revisions

From Miranda NG
Jump to navigation Jump to search
No edit summary
 
(43 intermediate revisions by the same user not shown)
Line 1: Line 1:
<noinclude>{{PageLang|ru}}{{VersionCard}}</noinclude>
<noinclude>{{PageLang|ru}}{{VersionCard}}</noinclude>
{{TNT|Important|If any events disappeared in group chats (messages, users joining/leaving, topic/status/nick changes, etc.), then mark which events you want to see in {{Menu|Options|Message sessions|Group chats|Events and filters.}}}}
{{TNT|Important|Если в групповых чатах перестали отображаться какие-либо события (сообщения, входы/выходы пользователей, изменения темы/статуса/ника, и т. п.), то включите показ требуемых событий на странице {{Menu|Настройки|Беседы|Чаты|События и фильтры}}.}}


== Ядро и библиотеки ==
== Ядро и библиотеки ==
* обновлены библиотеки libcurl и SQLite.
* обновлены библиотеки libcurl и SQLite.
* {{GithubIssue|3522}} из заголовка окна «О программе» убран цвет акцента Windows.
* {{GithubIssue|3522}} из заголовка окна «О программе» убран цвет акцента Windows.
* {{GithubIssue|3547}} исправлено некорректное выставление настроек по умолчанию сетевого лога для создаваемых учётных записей.
* {{GithubIssue|3547}} исправлено некорректное выставление настроек [[Network log/ru|сетевого лога]] для создаваемых учётных записей.
* восстановлено сохранение настроек сетевого лога при перезапуске приложения.
* восстановлено сохранение настроек сетевого лога при перезапуске приложения.


Line 17: Line 17:


* {{Plugin|GG}}
* {{Plugin|GG}}
** {{GithubIssue|3476}} исправлен поиск контактов.
** {{GithubIssue|3476}} починен поиск контактов.


* {{Plugin|ICQ}}
* {{Plugin|ICQ}}
** реализовано хранение истории групповых чатов в базе.
** реализовано хранение истории групповых чатов в базе.
** {{GithubIssue|3426}} added handling of exclusion from the chat.
** {{GithubIssue|3426}} реализована обработка события исключения из группового чата.
** {{GithubIssue|3477}} added the ability to send 2 or more files at a time.
** {{GithubIssue|3477}} добавлена возможность отправить одновременно более одного файла.
** {{GithubIssue|3493}} moved ''Show error popups'' option to {{Menu|Popups|Events}}.
** {{GithubIssue|3493}} настройка ''«Показывать всплывающие окна с сообщениями об ошибках»'' перемещена из настроек протокола во {{Menu|Всплывающие окна|События}}.
** {{GithubIssue|3419}} fixed display of outgoing messages in group chats.
** {{GithubIssue|3419}} починен показ исходящих сообщений в групповых чатах.
** {{GithubIssue|3420}} fixed placing the chat in the wrong group.
** {{GithubIssue|3420}} исправлено помещение чата в неправильную группу.
** {{GithubIssue|3424}} fixed showing the list of participants when adding to the chat.
** {{GithubIssue|3424}} починен показ списка участников при входе в групповой чат.
** {{GithubIssue|3452}} fixed crash on <tt>ProcessBuddyList</tt>.
** {{GithubIssue|3452}} устранено падение при обработке <tt>ProcessBuddyList</tt>.
** {{GithubIssue|3478}} fixed erroneous new event notification when sending a file to group chat.
** {{GithubIssue|3478}} убрано ошибочное уведомление о новом событии при отправке файла в групповой чат.
** {{GithubIssue|3481}} fixed crash.
** {{GithubIssue|3481}} устранено падение.
** {{GithubIssue|3482}} fixed contacts deletion when the protocol is offline.
** {{GithubIssue|3482}} починено удаление контактов, когда протокол не подключён к сети.
** {{GithubIssue|3534}} fixed multiple offline messages receiving.
** {{GithubIssue|3534}} починено получение нескольких оффлайновых сообщений.


* {{Plugin|Jabber}}
* {{Plugin|Jabber}}
** added experimental VOIP support ({{XEP|0166|Jingle}}). You need to install a {{Plugin|Jingle}} plugin. and enable ''Enable VOIP'' option.
** добавлена экспериментальная поддержка голосовой связи ({{XEP|0166|Jingle}}). Для её работы нужно установить плагин {{Plugin|Jingle}} и включить настройку ''Включить VOIP''.
** implemented support for offline files (the file is downloaded by the user by clicking in the message log). It works only if {{XEP|0363|HTTP File Upload}} is enabled.
** реализована поддержка оффлайновых файлов (файл загружается, когда пользователь нажимает на ссылку в журнале сообщений). Работает только в том случае, если включена поддержка {{XEP|0363|HTTP File Upload}}.
** {{XEP|0384|OMEMO}}:
** {{XEP|0384|OMEMO}}:
*** {{GithubIssue|3352}} implemented encryption for self devices.
*** {{GithubIssue|3352}} реализована поддержка шифрования для прочих своих устройств.
*** {{GithubIssue|3521}} improved OMEMO key management UI.
*** {{GithubIssue|3521}} улучшен интерфейс управления ключами OMEMO.
** {{GithubIssue|3538}} added ''Use HTTP FIle Upload'' option. It is displayed only if {{XEP|0363|HTTP File Upload}} has been used at least once.
** {{GithubIssue|3538}} добавлена настройка ''«Включить HTTP FIle Upload»'' (видна только в том случае, если была хоть раз включена поддержка {{XEP|0363|HTTP File Upload}}).
** {{GithubIssue|3412}} if a nickname is not specified in the bookmark, Miranda will no longer use JID, instead, it will ask which nick to use.
** {{GithubIssue|3412}} если в закладке не указан ник, Миранда теперь сперва поищет ник в vCard, а только потом возьмёт его из JID.
** {{GithubIssue|3400}} removed Jabber frame color settings (frame itself was removed in [[Changelog/0.96.2|0.96.2]]).
** улучшена работа {{XEP|0198|Stream Management}}.
** fixed the custom nick assigning.
** {{GithubIssue|3400}} удалены настройки цветов фрейма (сам фрейм удалён ещё в [[Changelog/0.96.2|0.96.2]]).
** fixed {{XEP|0198|Stream Management}}.
** починено назначение кастомного ника.
** {{GithubIssue|3433}} fixed highlight by nickname from bookmarks.
** {{GithubIssue|3433}} починена подсветка ника в случае, если он взят из закладки.
** {{GithubIssue|3531}} fixed impossibility to interrupt network connection procedure.
** {{GithubIssue|3531}} исправлена невозможность прервать процесс подключения протокола к сети.


* {{Plugin|SkypeWeb}}
* {{Plugin|SkypeWeb}}
** {{GithubIssue|3410}} fixed network connection.
** {{GithubIssue|3410}} починено подключение к сети.
** {{GithubIssue|3518}} fixed file transfer.
** {{GithubIssue|3518}} починена передача файлов.


* {{Plugin|Telegram}}
* {{Plugin|Telegram}}
** initial version.
** первая версия.


* {{Plugin|Tox}}
* {{Plugin|Tox}}
** {{GithubIssue|3333}} added a check to the "Find/Add contacts" search that the entered address is the valid Tox address.
** {{GithubIssue|3333}} в поле поиска при поиске/добавлении контактов добавлена проверка того, что введённый адрес соответствует формату Tox ID.
** {{GithubIssue|3489}} spaces in Tox ID are now automatically removed when searching.
** {{GithubIssue|3489}} поле поиска при поиске/добавлении контактов теперь автоматически удаляет пробелы из введённого Tox ID.
** {{GithubIssue|3490}} removed toxme.io support (the website is down).
** {{GithubIssue|3490}} прекращена поддержка toxme.io (ресурс прекратил работу).


* {{Plugin|VKontakte}}
* {{Plugin|VKontakte}}
** implemented storage of group chat history in the database.
** реализовано хранение истории групповых чатов в базе.
** added typing processing for group chat contacts.
** реализована обработка события набора текста для контактов группового чата.
** group chats menu items ("View/change topic", etc.) are now duplicated in the contact menu (useful for {{Plugin|HistoryPP|History++}} users).
** пункты меню группового чата («Просмотр/смена темы» и т. п.) теперь продублированы в меню контакта (полезно для пользователей журнала {{Plugin|HistoryPP|History++}}, который не умеет показывать меню чата).


== Plugins ==
== Плагины ==
* {{Plugin|Clist_modern}}
* {{Plugin|Clist_modern}}
** {{GithubIssue|3511}} added "Show groups folded" option to setup view mode.
** {{GithubIssue|3511}} в окно настройки режима вида добавлена настройка ''«Показывать группы свёрнутыми»''.
** {{GithubIssue|3512}} added "Hide empty groups" option to setup view mode.
** {{GithubIssue|3512}} в окно настройки режима вида добавлена настройка ''«Скрыть пустые группы»''.
** {{GithubIssue|3541}} optimized contact list redrawing with a large number of offline contacts.
** {{GithubIssue|3541}} оптимизирована перерисовка списка контактов при наличии большого числа контактов со статусом «Не в сети».
** {{GithubIssue|3383}} renamed ''Don't move offline user to bottom'' option to ''Move offline users to bottom''.
** {{GithubIssue|3383}} настройка ''«Не перемещать отключённых вниз»'' переименована в ''«Перемещать отключённых вниз»''.


* {{Plugin|DbChecker}}
* {{Plugin|DbChecker}}
** added ''Fix server event IDs'' option.
** добавлена настройка ''«Исправить серверные идентификаторы событий»''.


* {{Plugin|Dbx_sqlite}}
* {{Plugin|Dbx_sqlite}}
** {{GithubIssue|3503}} fixed crash at startup.
** {{GithubIssue|3503}} устранено падение при запуске.


* {{Plugin|Fingerprint}}
* {{Plugin|Fingerprint}}
** {{GithubIssue|966}} added the ability to add custom client types.
** {{GithubIssue|966}} пользователи получили возможность [[Plugin:Fingerprint/ru#Добавление_пользовательских_клиентов|добавлять собственные клиенты]].
** added [https://dino.im Dino] detection.
** реализовано определение клиента [https://dino.im Dino].


* {{Plugin|Jingle}}
* {{Plugin|Jingle}}
** initial version.
** первая версия.


* {{Plugin|HistoryPP|History++}}
* {{Plugin|HistoryPP|History++}}
** {{GithubIssue|3491}} fixed event deletion.
** {{GithubIssue|3491}} починено удаление событий.
** {{GithubIssue|3500}} fixed "Empty history" menu item.
** {{GithubIssue|3500}} починен пункт меню «Очистить историю».


* {{Plugin|IEView}}
* {{Plugin|IEView}}
** {{GithubIssue|3401}} file description is no longer erroneously included in the file path.
** {{GithubIssue|3401}} описание принятого файла больше ошибочно не добавляется в путь к файлу.
** {{GithubIssue|3385}} fixed crash on file transfer open.
** {{GithubIssue|3385}} устранено падение при открытии принятого файла.


* {{Plugin|Import}}
* {{Plugin|Import}}
** {{GithubIssue|3494}} fixed history import in mContacts and History++ formats.
** {{GithubIssue|3494}} починен импорт форматов mContacts и History++.
** {{GithubIssue|3502}} fixed duplication of Discord contacts.
** {{GithubIssue|3502}} устранено дублирование контактов Discord.


* {{Plugin|NewStory}}
* {{Plugin|NewStory}}
** {{GithubIssue|3380}} fixed space handling in file path.
** {{GithubIssue|3380}} исправлена некорректная обработка пробела в пути к файлу.
** {{GithubIssue|3496}} fixed crash when fast-scrolling history-rich contact.
** {{GithubIssue|3496}} устранено падение при быстрой прокрутке истории, содержащей большое число событий.
** fixed a very rare crash.
** устранено одно очень редкое падение.


* {{Plugin|PluginUpdater}}
* {{Plugin|PluginUpdater}}
** {{GithubIssue|3345}} added the number of selected items to the {{Button|Download}} button.
** {{GithubIssue|3345}} на кнопку {{Button|Загрузка}} добавлен индикатор количества выбранных элементов.


* {{Plugin|QuickSearch}}
* {{Plugin|QuickSearch}}
** {{GithubIssue|3464}} fixed crash on adding column.
** {{GithubIssue|3464}} устранено падение при добавлении столбца.


* {{Plugin|Scriver}}
* {{Plugin|Scriver}}
** {{GithubIssue|3533}} added indication that the message is encrypted (used for {{XEP|0384|OMEMO}}).
** полностью переделана логика работы фильтра событий. Настройки на странице {{Menu|Беседы|Чаты|События и фильтры}}) теперь определяют то, какие события в журнале, всплывающие окна и звуки будут активны по умолчанию, '''когда отключён фильтр событий в групповых чатах'''. Когда фильтр включён, приоритет будут иметь настройки из окна, показываемого в момент включения фильтра.
** from now on, all buttons display not the current state, but what will happen when the button is pressed.
** {{GithubIssue|3533}} добавлена пометка, что сообщение зашифровано (при использовании {{XEP|0384|OMEMO}}).
** {{GithubIssue|3443}} event filter tooltip now changes according to the filter state.
** отныне все кнопки на панели кнопок показывают не текущее состояние, а то, что произойдёт после нажатия на кнопку (например, изображение фильтра с красным крестиком означает, что при нажатии на кнопку фильтр событий будет отключён).
** {{GithubIssue|3463}} {{Button|View history}} button in group chats now opens the history viewer if the chat history is stored in the database (and still opens a text file if history writing to a text file is enabled).
** {{GithubIssue|3443}} подсказка к кнопке фильтра событий теперь меняет свой текст в соответствии с состоянием фильтра.
** {{GithubIssue|3466}} improved "Events and filters" options page.
** {{GithubIssue|3463}} кнопка {{Button|История сообщений}} в групповых чатах, чья история хранится в базе, теперь открывает просморщик истории.
** {{GithubIssue|3437}} removed "says" from the group chat popup.
** {{GithubIssue|3466}} упрощена страница настроек {{Menu|Беседы|Чаты|События и фильтры}}.
** {{GithubIssue|3444}} removed checkboxes in the root of the options trees.
** {{GithubIssue|3437}} из всплывающего окна о новом сообщении в групповом чате удалено слово «говорит».
** {{GithubIssue|3375}} fixed double click in message log.
** {{GithubIssue|3444}} удалены чекбоксы из корневых элементов деревьев настроек.
** {{GithubIssue|3436}} fixed popups for highlights.
** {{GithubIssue|3375}} починена обработка двойного щелчка мышью в журнале сообщений.
** {{GithubIssue|3519}} fixed message duplication.
** {{GithubIssue|3436}} починены всплывающие окна о подсвеченных событиях.
** {{GithubIssue|3519}} устранено дублирование сообщений.


* {{Plugin|Sessions}}
* {{Plugin|Sessions}}
** {{GithubIssue|3428}}''Save only last ... sessions'' option now available for manual editing.
** {{GithubIssue|3428}} в настройке ''«Сохр. последние ... сессий»'' теперь можно указать число вручную.
** {{GithubIssue|3421}} renamed ''Restore Last Session ... Only if last session present'' option to ''Open dialog if last session present''.
** {{GithubIssue|3421}} настройка ''«Только если доступна последняя сессия»'' переименована в ''«Открыть, если доступна последняя сессия»''.
** {{GithubIssue|3430}} "Save session" dialog: replaced the {{Button|Adv.}} button with an icon.
** {{GithubIssue|3430}} в диалоговом окне «Сохранить сессию» кнопка {{Button|доп.}} заменена значком.
** {{GithubIssue|3422}} fixed crash when deleting a non-existent session.
** {{GithubIssue|3422}} устранено падение при попытке удалить несуществующую сессию.
** {{GithubIssue|3431}} fixed {{Button|Save}} button behavior.
** {{GithubIssue|3431}} исправлено поведение кнопкит {{Button|Сохранить}}.


* {{Plugin|SmileyAdd}}
* {{Plugin|SmileyAdd}}
** {{GithubIssue|3473}} the warning about missing smiles set no more stays forever.
** {{GithubIssue|3473}} всплывающее окно с сообщением об отсутствующих смайлах теперь имеет такой же таймаут, как прочие всплывающие окна, а не отображается вечно.


* {{Plugin|StdMsg}}
* {{Plugin|StdMsg}}
** {{GithubIssue|3533}} added indication that the message is encrypted (used for {{XEP|0384|OMEMO}}).
** полностью переделана логика работы фильтра событий. Настройки на странице {{Menu|Беседы|Чаты|События и фильтры}}) теперь определяют то, какие события в журнале, всплывающие окна и звуки будут активны по умолчанию, '''когда отключён фильтр событий в групповых чатах'''. Когда фильтр включён, приоритет будут иметь настройки из окна, показываемого в момент включения фильтра.
** from now on, all buttons display not the current state, but what will happen when the button is pressed.
** {{GithubIssue|3533}} добавлена пометка, что сообщение зашифровано (при использовании {{XEP|0384|OMEMO}}).
** {{GithubIssue|3443}} event filter tooltip now changes according to the filter state.
** отныне все кнопки на панели кнопок показывают не текущее состояние, а то, что произойдёт после нажатия на кнопку (например, изображение фильтра с красным крестиком означает, что при нажатии на кнопку фильтр событий будет отключён).
** {{GithubIssue|3463}} {{Button|View history}} button in group chats now opens the history viewer if the chat history is stored in the database (and still opens a text file if history writing to a text file is enabled).
** {{GithubIssue|3443}} подсказка к кнопке фильтра событий теперь меняет свой текст в соответствии с состоянием фильтра.
** {{GithubIssue|3466}} improved "Events and filters" options page.
** {{GithubIssue|3463}} кнопка {{Button|История сообщений}} в групповых чатах, чья история хранится в базе, теперь открывает просморщик истории.
** renamed ''"Automatically popup window when: ... In background'' option to ''Don't steal focus''.
** {{GithubIssue|3466}} упрощена страница настроек {{Menu|Беседы|Чаты|События и фильтры}}.
** {{GithubIssue|3437}} removed "says" from the group chat popup.
** настройка ''«В фоне»'' переименована в ''«Не перехватывать фокус»''.
** {{GithubIssue|3444}} removed checkboxes in the root of the options trees.
** {{GithubIssue|3437}} из всплывающего окна о новом сообщении в групповом чате удалено слово «говорит».
** {{GithubIssue|3375}} fixed double click in message log.
** {{GithubIssue|3444}} удалены чекбоксы из корневых элементов деревьев настроек.
** {{GithubIssue|3436}} fixed popups for highlights.
** {{GithubIssue|3375}} починена обработка двойного щелчка мышью в журнале сообщений.
** {{GithubIssue|3436}} починены всплывающие окна о подсвеченных событиях.


* {{Plugin|StdUserInfo}}
* {{Plugin|StdUserInfo}}
** {{GithubIssue|3525}} crash when viewing user info of a contact found by the search.
** {{GithubIssue|3525}} устранено падение при попытке просмотра сведений о пользователе из результатов поиска.


* {{Plugin|StopSpam}}
* {{Plugin|StopSpam}}
** {{GithubIssue|3347}} removed ''Remove all temporary contacts after restart'' option (use {{Menu|Contact list|Common|Remove temporary contacts on exit}} option instead).
** {{GithubIssue|3347}} удалена настройка ''«Удалять все временные контакты после перезапуска»'' (вместо неё следует использовать настройку {{Menu|Список контактов|Общие|Удалять временные контакты при выходе}}).


* {{Plugin|StopSpam}}
* {{Plugin|StopSpamMod}}
** {{GithubIssue|3499}} removed ''Remove all temporary contacts after restart'' option (use {{Menu|Contact list|Common|Remove temporary contacts on exit}} option instead).
** {{GithubIssue|3499}} удалена настройка ''«Удалять все временные контакты после перезапуска»'' (вместо неё следует использовать настройку {{Menu|Список контактов|Общие|Удалять временные контакты при выходе}}).


* {{Plugin|tabSRMM}}
* {{Plugin|tabSRMM}}
** {{GithubIssue|3533}} added indication that the message is encrypted (used for {{XEP|0384|OMEMO}}).
** полностью переделана логика работы фильтра событий. Настройки на странице {{Menu|Беседы|Чаты|События и фильтры}}) теперь определяют то, какие события в журнале, всплывающие окна и звуки будут активны по умолчанию, '''когда отключён фильтр событий в групповых чатах'''. Когда фильтр включён, приоритет будут иметь настройки из окна, показываемого в момент включения фильтра.
** from now on, all buttons display not the current state, but what will happen when the button is pressed.
** {{GithubIssue|3533}} добавлена пометка, что сообщение зашифровано (при использовании {{XEP|0384|OMEMO}}).
** {{GithubIssue|3443}} event filter tooltip now changes according to the filter state.
** отныне все кнопки на панели кнопок показывают не текущее состояние, а то, что произойдёт после нажатия на кнопку (например, изображение фильтра с красным крестиком означает, что при нажатии на кнопку фильтр событий будет отключён).
** {{GithubIssue|3463}} {{Button|View history}} button in group chats now opens the history viewer if the chat history is stored in the database (and still opens a text file if history writing to a text file is enabled).
** {{GithubIssue|3443}} подсказка к кнопке фильтра событий теперь меняет свой текст в соответствии с состоянием фильтра.
** {{GithubIssue|3466}} improved "Events and filters" options page.
** {{GithubIssue|3463}} кнопка {{Button|История сообщений}} в групповых чатах, чья история хранится в базе, теперь открывает просморщик истории.
** {{GithubIssue|3487}} unified typing notifications from active and inactive tabs.
** {{GithubIssue|3466}} упрощена страница настроек {{Menu|Беседы|Чаты|События и фильтры}}.
** {{GithubIssue|3437}} removed "says" from the group chat popup.
** {{GithubIssue|3487}} унифицированы сообщения о наборе текста в активных и неактивных вкладках.
** {{GithubIssue|3399}} fixed the disappearance of buttons on the group chats toolbar when changing BBCode settings for private conversations.
** {{GithubIssue|3437}} из всплывающего окна о новом сообщении в групповом чате удалено слово «говорит».
** {{GithubIssue|3434}} fixed popups for highlights.
** {{GithubIssue|3399}} устранено пропадание кнопок в групповом чате после изменения настроек BBCode.
** {{GithubIssue|3434}} починены всплывающие окна о подсвеченных событиях.


* {{Plugin|Toaster}}
* {{Plugin|Toaster}}
** fixed Miranda's name in the popup header.
** исправлено название Миранды в заголовке всплывающего окна.


* {{Plugin|Weather}}
* {{Plugin|Weather}}
** added current day forecast to gismeteo.com and gismeteo.ru (thx Dimtr).
** для gismeteo.com и gismeteo.ru добавлена поддержка прогноза погоды на сегодняшний день (спасибо Dimtr).


== For developers ==
== Для разработчиков ==
* added <tt>db_get_usm / getMStringU</tt> — helpers to read UTF-8 strings as CMStringA.
* добавлены хелперы <tt>db_get_usm / getMStringU</tt> для чтения строк UTF-8 как CMStringA.
* added <tt>ME_HISTORY_EMPTY</tt> — a hook to handle history wiping.
* добавлен хук <tt>ME_HISTORY_EMPTY</tt> для обработки очистки истории.
* added <tt>Chat_Mute / Chat_IsMuted</tt> — helpers for group chats' muting.
* добавлены хелперы <tt>Chat_Mute / Chat_IsMuted</tt> для заглушения групповых чатов.
* <tt>MS_HISTORY_EMPTY</tt> got a new flag to wipe history automagically.
* <tt>MS_HISTORY_EMPTY</tt> получил новый флаг для автоматической очистки истории.
* added <tt>DbEventIsShown</tt> to <tt>g_chatApi</tt> to allow the core to filter group chat events too.
* в <tt>g_chatApi</tt> добавлена поддержка <tt>DbEventIsShown</tt> для того, чтобы ядро могло фильтровать события групповых чатов.
* added support for 3-state buttons to UI classes.
* в UI классы добавлена поддержка кнопок, имеющих три состояния.
* replaced <tt>HM_DBEVENTADDED</tt> message with <tt>CMsgDialog::EventAdded</tt> method.
* сообщение <tt>HM_DBEVENTADDED</tt> заменено методом <tt>CMsgDialog::EventAdded</tt>.
* extracted common SRMM code to a <tt>Srmm_AddEvent()</tt> function.
* общий код SRMM вынесен в функцию <tt>Srmm_AddEvent()</tt>.
* CCtrlTreeView: <tt>OnBeginDrag</tt> / <tt>OnEndDrag</tt> callbacks became boolean.
* CCtrlTreeView: тип функций обратного вызова <tt>OnBeginDrag</tt> / <tt>OnEndDrag</tt> изменён на <tt>bool</tt>.
* <tt>Clist_RemoveEvent</tt> became static, <tt>pfnRemoveEvent</tt> is replaced with <tt>pfnFreeEvent</tt>.
* <tt>Clist_RemoveEvent</tt> стал статическим, <tt>pfnRemoveEvent</tt>заменён <tt>pfnFreeEvent</tt>.
* removed useless function <tt>DbEvent_GetString</tt>.
* удалена бесполезная функция <tt>DbEvent_GetString</tt>.
* removed obsolete function <tt>SM_FindSession</tt>.
* удалена устаревшая функция <tt>SM_FindSession</tt>.

Latest revision as of 22:54, 28 August 2023

Версия: 0.96.3

Сборка: v0.96.3

Выпущена: 8 июня 2023

Important
Если в групповых чатах перестали отображаться какие-либо события (сообщения, входы/выходы пользователей, изменения темы/статуса/ника, и т. п.), то включите показ требуемых событий на странице Настройки → Беседы → Чаты → События и фильтры.

Ядро и библиотеки

  • обновлены библиотеки libcurl и SQLite.
  • Issue #3522 из заголовка окна «О программе» убран цвет акцента Windows.
  • Issue #3547 исправлено некорректное выставление настроек сетевого лога для создаваемых учётных записей.
  • восстановлено сохранение настроек сетевого лога при перезапуске приложения.

Протоколы

  • Discord
    • реализовано хранение истории групповых чатов в базе.
    • реализована поддержка оффлайновых файлов (файл загружается, когда пользователь нажимает на ссылку в журнале сообщений).
  • Facebook
    • реализовано хранение истории групповых чатов в базе.
  • ICQ
    • реализовано хранение истории групповых чатов в базе.
    • Issue #3426 реализована обработка события исключения из группового чата.
    • Issue #3477 добавлена возможность отправить одновременно более одного файла.
    • Issue #3493 настройка «Показывать всплывающие окна с сообщениями об ошибках» перемещена из настроек протокола во Всплывающие окна → События.
    • Issue #3419 починен показ исходящих сообщений в групповых чатах.
    • Issue #3420 исправлено помещение чата в неправильную группу.
    • Issue #3424 починен показ списка участников при входе в групповой чат.
    • Issue #3452 устранено падение при обработке ProcessBuddyList.
    • Issue #3478 убрано ошибочное уведомление о новом событии при отправке файла в групповой чат.
    • Issue #3481 устранено падение.
    • Issue #3482 починено удаление контактов, когда протокол не подключён к сети.
    • Issue #3534 починено получение нескольких оффлайновых сообщений.
  • Jabber
    • добавлена экспериментальная поддержка голосовой связи (XEP-0166: Jingle). Для её работы нужно установить плагин Jingle и включить настройку Включить VOIP.
    • реализована поддержка оффлайновых файлов (файл загружается, когда пользователь нажимает на ссылку в журнале сообщений). Работает только в том случае, если включена поддержка XEP-0363: HTTP File Upload.
    • XEP-0384: OMEMO:
      • Issue #3352 реализована поддержка шифрования для прочих своих устройств.
      • Issue #3521 улучшен интерфейс управления ключами OMEMO.
    • Issue #3538 добавлена настройка «Включить HTTP FIle Upload» (видна только в том случае, если была хоть раз включена поддержка XEP-0363: HTTP File Upload).
    • Issue #3412 если в закладке не указан ник, Миранда теперь сперва поищет ник в vCard, а только потом возьмёт его из JID.
    • улучшена работа XEP-0198: Stream Management.
    • Issue #3400 удалены настройки цветов фрейма (сам фрейм удалён ещё в 0.96.2).
    • починено назначение кастомного ника.
    • Issue #3433 починена подсветка ника в случае, если он взят из закладки.
    • Issue #3531 исправлена невозможность прервать процесс подключения протокола к сети.
  • Tox
    • Issue #3333 в поле поиска при поиске/добавлении контактов добавлена проверка того, что введённый адрес соответствует формату Tox ID.
    • Issue #3489 поле поиска при поиске/добавлении контактов теперь автоматически удаляет пробелы из введённого Tox ID.
    • Issue #3490 прекращена поддержка toxme.io (ресурс прекратил работу).
  • VKontakte
    • реализовано хранение истории групповых чатов в базе.
    • реализована обработка события набора текста для контактов группового чата.
    • пункты меню группового чата («Просмотр/смена темы» и т. п.) теперь продублированы в меню контакта (полезно для пользователей журнала History++, который не умеет показывать меню чата).

Плагины

  • Clist_modern
    • Issue #3511 в окно настройки режима вида добавлена настройка «Показывать группы свёрнутыми».
    • Issue #3512 в окно настройки режима вида добавлена настройка «Скрыть пустые группы».
    • Issue #3541 оптимизирована перерисовка списка контактов при наличии большого числа контактов со статусом «Не в сети».
    • Issue #3383 настройка «Не перемещать отключённых вниз» переименована в «Перемещать отключённых вниз».
  • DbChecker
    • добавлена настройка «Исправить серверные идентификаторы событий».
  • Jingle
    • первая версия.
  • History++
    • Issue #3491 починено удаление событий.
    • Issue #3500 починен пункт меню «Очистить историю».
  • IEView
    • Issue #3401 описание принятого файла больше ошибочно не добавляется в путь к файлу.
    • Issue #3385 устранено падение при открытии принятого файла.
  • Import
    • Issue #3494 починен импорт форматов mContacts и History++.
    • Issue #3502 устранено дублирование контактов Discord.
  • NewStory
    • Issue #3380 исправлена некорректная обработка пробела в пути к файлу.
    • Issue #3496 устранено падение при быстрой прокрутке истории, содержащей большое число событий.
    • устранено одно очень редкое падение.
  • PluginUpdater
    • Issue #3345 на кнопку Загрузка добавлен индикатор количества выбранных элементов.
  • Scriver
    • полностью переделана логика работы фильтра событий. Настройки на странице Беседы → Чаты → События и фильтры) теперь определяют то, какие события в журнале, всплывающие окна и звуки будут активны по умолчанию, когда отключён фильтр событий в групповых чатах. Когда фильтр включён, приоритет будут иметь настройки из окна, показываемого в момент включения фильтра.
    • Issue #3533 добавлена пометка, что сообщение зашифровано (при использовании XEP-0384: OMEMO).
    • отныне все кнопки на панели кнопок показывают не текущее состояние, а то, что произойдёт после нажатия на кнопку (например, изображение фильтра с красным крестиком означает, что при нажатии на кнопку фильтр событий будет отключён).
    • Issue #3443 подсказка к кнопке фильтра событий теперь меняет свой текст в соответствии с состоянием фильтра.
    • Issue #3463 кнопка История сообщений в групповых чатах, чья история хранится в базе, теперь открывает просморщик истории.
    • Issue #3466 упрощена страница настроек Беседы → Чаты → События и фильтры.
    • Issue #3437 из всплывающего окна о новом сообщении в групповом чате удалено слово «говорит».
    • Issue #3444 удалены чекбоксы из корневых элементов деревьев настроек.
    • Issue #3375 починена обработка двойного щелчка мышью в журнале сообщений.
    • Issue #3436 починены всплывающие окна о подсвеченных событиях.
    • Issue #3519 устранено дублирование сообщений.
  • Sessions
    • Issue #3428 в настройке «Сохр. последние ... сессий» теперь можно указать число вручную.
    • Issue #3421 настройка «Только если доступна последняя сессия» переименована в «Открыть, если доступна последняя сессия».
    • Issue #3430 в диалоговом окне «Сохранить сессию» кнопка доп. заменена значком.
    • Issue #3422 устранено падение при попытке удалить несуществующую сессию.
    • Issue #3431 исправлено поведение кнопкит Сохранить.
  • SmileyAdd
    • Issue #3473 всплывающее окно с сообщением об отсутствующих смайлах теперь имеет такой же таймаут, как прочие всплывающие окна, а не отображается вечно.
  • StdMsg
    • полностью переделана логика работы фильтра событий. Настройки на странице Беседы → Чаты → События и фильтры) теперь определяют то, какие события в журнале, всплывающие окна и звуки будут активны по умолчанию, когда отключён фильтр событий в групповых чатах. Когда фильтр включён, приоритет будут иметь настройки из окна, показываемого в момент включения фильтра.
    • Issue #3533 добавлена пометка, что сообщение зашифровано (при использовании XEP-0384: OMEMO).
    • отныне все кнопки на панели кнопок показывают не текущее состояние, а то, что произойдёт после нажатия на кнопку (например, изображение фильтра с красным крестиком означает, что при нажатии на кнопку фильтр событий будет отключён).
    • Issue #3443 подсказка к кнопке фильтра событий теперь меняет свой текст в соответствии с состоянием фильтра.
    • Issue #3463 кнопка История сообщений в групповых чатах, чья история хранится в базе, теперь открывает просморщик истории.
    • Issue #3466 упрощена страница настроек Беседы → Чаты → События и фильтры.
    • настройка «В фоне» переименована в «Не перехватывать фокус».
    • Issue #3437 из всплывающего окна о новом сообщении в групповом чате удалено слово «говорит».
    • Issue #3444 удалены чекбоксы из корневых элементов деревьев настроек.
    • Issue #3375 починена обработка двойного щелчка мышью в журнале сообщений.
    • Issue #3436 починены всплывающие окна о подсвеченных событиях.
  • StdUserInfo
    • Issue #3525 устранено падение при попытке просмотра сведений о пользователе из результатов поиска.
  • StopSpam
    • Issue #3347 удалена настройка «Удалять все временные контакты после перезапуска» (вместо неё следует использовать настройку Список контактов → Общие → Удалять временные контакты при выходе).
  • StopSpamMod
    • Issue #3499 удалена настройка «Удалять все временные контакты после перезапуска» (вместо неё следует использовать настройку Список контактов → Общие → Удалять временные контакты при выходе).
  • tabSRMM
    • полностью переделана логика работы фильтра событий. Настройки на странице Беседы → Чаты → События и фильтры) теперь определяют то, какие события в журнале, всплывающие окна и звуки будут активны по умолчанию, когда отключён фильтр событий в групповых чатах. Когда фильтр включён, приоритет будут иметь настройки из окна, показываемого в момент включения фильтра.
    • Issue #3533 добавлена пометка, что сообщение зашифровано (при использовании XEP-0384: OMEMO).
    • отныне все кнопки на панели кнопок показывают не текущее состояние, а то, что произойдёт после нажатия на кнопку (например, изображение фильтра с красным крестиком означает, что при нажатии на кнопку фильтр событий будет отключён).
    • Issue #3443 подсказка к кнопке фильтра событий теперь меняет свой текст в соответствии с состоянием фильтра.
    • Issue #3463 кнопка История сообщений в групповых чатах, чья история хранится в базе, теперь открывает просморщик истории.
    • Issue #3466 упрощена страница настроек Беседы → Чаты → События и фильтры.
    • Issue #3487 унифицированы сообщения о наборе текста в активных и неактивных вкладках.
    • Issue #3437 из всплывающего окна о новом сообщении в групповом чате удалено слово «говорит».
    • Issue #3399 устранено пропадание кнопок в групповом чате после изменения настроек BBCode.
    • Issue #3434 починены всплывающие окна о подсвеченных событиях.
  • Toaster
    • исправлено название Миранды в заголовке всплывающего окна.
  • Weather
    • для gismeteo.com и gismeteo.ru добавлена поддержка прогноза погоды на сегодняшний день (спасибо Dimtr).

Для разработчиков

  • добавлены хелперы db_get_usm / getMStringU для чтения строк UTF-8 как CMStringA.
  • добавлен хук ME_HISTORY_EMPTY для обработки очистки истории.
  • добавлены хелперы Chat_Mute / Chat_IsMuted для заглушения групповых чатов.
  • MS_HISTORY_EMPTY получил новый флаг для автоматической очистки истории.
  • в g_chatApi добавлена поддержка DbEventIsShown для того, чтобы ядро могло фильтровать события групповых чатов.
  • в UI классы добавлена поддержка кнопок, имеющих три состояния.
  • сообщение HM_DBEVENTADDED заменено методом CMsgDialog::EventAdded.
  • общий код SRMM вынесен в функцию Srmm_AddEvent().
  • CCtrlTreeView: тип функций обратного вызова OnBeginDrag / OnEndDrag изменён на bool.
  • Clist_RemoveEvent стал статическим, pfnRemoveEventзаменён pfnFreeEvent.
  • удалена бесполезная функция DbEvent_GetString.
  • удалена устаревшая функция SM_FindSession.