- Поддержка "умных" ответов (варианты ответов на последнее входящее сообщение, предлагаемые сервером ICQ; по умолчанию отключено)
- Изменён способ создания потоков для выполнения асинхронных действий в попытке уменьшить количество подвисаний
- Исправлено открытие ссылок на файлы, закачанные на сервер ICQ (теперь в момент открытия требуется быть в сети)
- Отключен нерабочий антиспам бот, т.к. новые контакты теперь сразу добавляются в список
- Отмена пометки контактов как удалённых после их восстановления (похоже, такое возможно)
- Ускорено обновление КЛ
- Sciter обновлён до 4.4.5.4
- Интерфейс частично переведён на <atarget="_blank"href="http://sciter.com/">движок Sciter</a>, его шаблоны написаны на HTML/CSS/TIScript и могут быть отредактированы<br>
<VerInfo_Keys>FileVersion=0.11.9999.1130;OriginalFilename=R&Q.exe;ProductName=R&Q;ProductVersion=0.11.9999.1130;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=R&Q is the best ICQ client out there!</VerInfo_Keys>
if not StartsText('http://', RealURL) and not StartsText('https://', RealURL) then
RealURL := 'http://' + RealURL;
if ContainsText(RealURL, 'files.icq.net/') then
if Account.AccProto.AimSid = '' then
begin
FileInfo := GetICQFileLinkInfo(RealURL);
//if FileInfo.mime.startsWith('image/') or FileInfo.mime.startsWith('video/') then
if FileInfo.is_previewable then
FileURL := FileInfo.dlink
RealURL := '';
OnlFeature(Account.AccProto);
end
else
begin
FileInfo := GetICQFileLinkInfo2(RealURL);
if FileInfo.dlink = '' then
FileURL := FileInfo.jsonlink
else
FileURL := FileInfo.jsonlink;
FileURL := FileInfo.dlink;
if not (FileURL = '') then
RealURL := FileURL;
end;
@ -562,7 +567,7 @@ begin
begin
Myself := True;
RAPI.RequestUse(RequestId);
TTask.Run(procedure
TThread.CreateAnonymousThread(procedure
var
ms: TMemoryStream;
fs: TFileStream;
@ -616,7 +621,7 @@ begin
FreeAndNil(fs);
FreeAndNil(ms);
end);
end).Start;
end;
Discard := False;
end else
@ -810,6 +815,7 @@ end;
function TSciterHelper.LoadTemplate(const Doc, Filename: String; Debug: Boolean = True): Boolean;
begin
SetOption(SCITER_SET_SCRIPT_RUNTIME_FEATURES, UINT_PTR(ALLOW_FILE_IO) or UINT_PTR(ALLOW_SOCKET_IO) or UINT_PTR(ALLOW_EVAL) or UINT_PTR(ALLOW_SYSINFO));
SetOption(SCITER_SET_PX_AS_DIP, UINT_PTR(False));
SetOption(SCITER_SET_DEBUG_MODE, UINT_PTR(DevMode and Debug));
if DevMode then
Result := LoadURL(FilePathToURL(myPath + Doc + '\' + Filename))