Архив за December 2009
Какая несправедливость!
Ну почему, почему при попытке убить виджет pidgin_status_box_new_with_account в момент смены статуса возникает сегфолт?
В принципе, я уже наметил путь обхода этого дела, но этот путь, как уж водится, ведёт через жопу ![]()
Придётся после смены статуса виджет не убивать, а скрывать. Надеялся, что бонусом такого подхода будет большая скорость создания (уж больно тормозной он), думал, это тормоза связаны именно с созданием виджета, а не отрисовки, а хрен там – отрисовки
Ну ладно, впереди выходные. Надо только бубен с работы домой взять, чую – пригодиться!

Зато ещё косяков с аргументами функций нашёл и исправил
Нашёл причину сегфолта?
Увы, даже на рабочем стенде сегфолт снова перестал возникать, но я успел (примерно) вычислить, в какой момент он возникает.
В связи с чем появилось сразу две идеи о причинах его возникновения – кривая реализация передачи объекта функции, ну, и уже мои кривые руки (точнее – отсутствие соответв знаний на момент написания функции) – попытка принять функцией 3 аргумента, тогда как отправляется в неё всего 1 (ещё одно подтверждение… странности разработчиков компилятора, который позволяет делать такие вещи. тот же Паскаль за это молча бил канделябром в лицо
))).
В своей, уже изрядно переписанной версии, исправил, но жду реакции общественности, у кого ошибка проявляется устойчиво – прав ли я в своей догадке.
А ещё по ходу удалось оптимизировать функцию загрузки плагина, но это уже мелочи.
Сделал смену иконок кнопок
Пока дома не было инета и я не мог получить через Dropbox последнюю версию исходника, который я начал ковырять на работе, то пришлось заняться рюшечками. Зато теперь при смене состояния кнопок-переключателей меняется и картинка на них. Так, например, при отключении звука на кнопке рисуется соответствующий значок с зачёркнутым динамиком.
Надо будет нарисовать что-нить, правда, на кнопку «Показывать только контакты в сети», а с рисованием у меня всё плохо ![]()
Ну да ладно, кто нарисует и пришлёт лучше – спасибо скажу.
Дома сегфолтится при включении аккаунта так и не хочет – работает, зараззза. Подозреваю, что сегфолт возникает при попытке пересоздать статусную строку, но плагин её любит вообще пересоздавать. Там при таком количестве событий она пересоздаётся – огого! Например, при смене статуса… А жалуются только на добавление аккаунта. Странно это. Буду на работе ковырять, раз дома не проявляется.
Сегфолт при включении аккаунта получен!
Удалось получить на рабочей машине, дома без проблем всё включается/выключается без проблем.
Надо сильно думать, что бы это значило?…
Pidgin 2.6.4 ругается почти по-русски
После сборки из исходников последней версии, Pidgin при запуске ругается русским китайским языком:
«Pidgin 2.6.4 были с ошибками сегментации и попытались просмтреть файл ядра.
Это глюк в программе и вы тут не виноваты.»
На сим знакомство с ним покамест заканчиваю. До лучших времён.
Версия 1.1 плагина TooBars
Доступна для скачивания версия 1.1 плагина TooBars.
Изменения:
- Небольшое изменение в функции CreateStatusBox (оптимизация);
- Иконки кнопок теперь живут не в ~/.purple/plugins, а, как им и положено, в /usr/share/pixmaps/pidgin/buttons;
- Написаны скрипты для самостоятельной компиляции из исходников.
Кажется осилил make
Блин, 3*тьфу<
Кто бы мог подумать, что это выльется в двухдневный гиморрой?
Перерыл гору исходников, но либо пакет не собирается, либо собирается, но файлы перевода кладёт совершенно не в ту папку, вследствие чего они не видны плагином.
Только что в 158 раз сделал, казалось бы, то, что уже делал, но (вроде бы) на этот раз всё наконец-таки заработало! (НЕ ДЫШИТЕ!)
Как оно работает я так и не понял. По мне, так какое-то оно… кустарное чтоли. При поверхностном взгляде всё можно было сделать куда как проще.
Теперь осталось в самом плагине поменять путь к иконкам и всё!
Пытаюсь осилить создание make
По просьбам некоторых трудящихся решил осилить написание make-файла для компиляции плагина из исходников.
В конце концов это разовая задача…
Планы
Пока общественность тестит первую версию плагина надо бы подумать над планами на будущее.
Просто чтобы потом не забыть ![]()
Итак:
TooBars: Возможность изменения статуса каждого из активных аккаунтов.TooBars: Проверить совместимость с Pidgin 2.6.4.TooBars: Сделать deb-пакет.TooButtons: Написать плагин, который бы создавал под окном беседы панель с двумя кнопками – «Закрыть» и «Отправить». Текущая реализация кнопки «Отправить» плагином SendButton уёбищна и не решает проблемы отсутствия кнопки «Закрыть» для владельцев сенсоров.- ManualSize: Переписать плагин, позволяющий менять пропорции окон сообщения и истории, дополнив его вертикальной распоркой, запоминанием установленного значения и т.п.
- SmileHotKey: Переписать плагин, добавив настройки привязки хоткеев и смайлов.
- Подумать над возможностью изменения пометки контакта в списке контактов, от которого пришло сообщение, т.к. в последних версиях Pidgin он никак не помечается.
- Подумать над возможностью отдельного оповещения в системном трее для каждой беседы, в которой есть непрочтённые сообщения, чтобы можно было прочитать только сообщения от конкретного контакта.
Вот и релиз!
«Ремонт нельзя закончить, его можно только прекратить».
Поговорка для тех, кто не умеет вовремя остановится и не разбивать лоб в кровь о кирпичную стену. Я себя к таковым не отношу. Посему, поняв, что на реализацию некоторых вещей уйдёт слишком много времени (например – возможность смены отдельно взятого статуса произвольного аккаунта), я их просто убрал из текущей версии. Пусть в голове зреют, а процессу не мешают
Итак, предлагаю Вашему вниманию результат весьма активной мозговой мастурбации в течение последнего месяца – плагин toobars для программы обмена сообщениями Pidgin.
За это время было изрыто огромное количество чужого кода, прочитано найденных в инете обрывков манов и я даже начал понимать, как оно работает
Все знают притчу про обезьяну, которая при определённом стечение обстоятельств может написать «Войну и Мир»? Хотя, конечно, мой плагин с этим шедевром и рядом не валялся, но в остальном аналогия прослеживается чётко.
Пока Дарт возится с Васькой я попытаюсь воплотить некоторые идеи в Pidgin, по мере возможности, наличию времени и, конечно, знаний.
Свежие записи
Комментарии
- VaYurik к записи Новые версии всех плагинов
- Vitto к записи Новые версии всех плагинов
- f к записи Совместимость TooBars и Pidgin
- f к записи Совместимость TooBars и Pidgin
- Pidgin: несколько полезных дополнений « Hotery к записи TooBars