@notify

...
  • Leency wrote:Mario и yogev_erza захотели сетку - мне не сложно. Для Mario обоснование такое, что с тенью приложение потребляет больше памяти - это так. Yogev_erza считает, что тень медленнее, чем сетка - по факту особой разницы нет.
    Я пока не могу достоверно протестировать, так как поведение последних авто-сборок непредсказуемо. Если с тенью на eBox разницы в скорости не будет, то я не против использования тени. Я не считаю, что полу-прозрачность обязательно медленная, - я только спросил тебя, не будет ли она медленной. И сам же вызвался тестировать.
  • IgorA wrote:ревизия 3374
    Все программы использующие макросы load_lib.mac будут выводить сообщения о ошибках при открытии библиотек через @notify.
    Что это дает:
    1) немного уменьшились размеры программ, потому как убран код по созданию своего собственного окна а вместо него вставлен вызов @notify
    2) сообщения в @notify выглядят красивее, чем в своём окне
    3) все программы использующие макросы load_lib.mac смогут свободно выводить свои сообщения через @notify используя макрос notify_window_run, в котором это окно вызывается
    А у меня есть сомнения.
    1) Сообщения собственного окна выводятся всегда, теперь же если @notify отсутствует или сломан это условие не будет соблюдаться - это важно!
    2) Сообщения собственного окна могут провисеть бесконечно долго и даже пользователь с плохой реакцией и зрением может разглядеть это. В случае с @notify если я не ошибаюсь время просмотра ограничено. Это не фатально, но важно.
    3) Изменения касающиеся более чем 1 программы желательно обсуждать с другими разработчиками. Я не считаю себя в праве накладывать право-вето, но посоветоваться то можно было.
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • 1) Почему @notify может быть сломан или отсутствовать? Это системная программа.
    2) Тут пожалуй соглашусь. Окно закрывается само по истечению времени, но с другой стороны оно создаётся сбоку и не мешает пользователю.
    3) Всегда можно откатить изменения, SVN это допускает.
    Из хаоса в космос
  • Mario_r4 wrote:1) Сообщения собственного окна выводятся всегда, теперь же если @notify отсутствует или сломан это условие не будет соблюдаться - это важно!
    2) Сообщения собственного окна могут провисеть бесконечно долго и даже пользователь с плохой реакцией и зрением может разглядеть это. В случае с @notify если я не ошибаюсь время просмотра ограничено. Это не фатально, но важно.
    3) Изменения касающиеся более чем 1 программы желательно обсуждать с другими разработчиками. Я не считаю себя в праве накладывать право-вето, но посоветоваться то можно было.
    Моё мнение по вопросам такое:
    1) Поддерживаю Leency - раз @notify стало системной программой, то в большинстве случаев оно должно быть на месте. Хотя у меня тоже были подобные сомнения.
    2) В этой теме высказывались идеи о возможности добавить в будущем параметр для задержки окна, а также о возможности вычислять время показа в зависимости от длинны текста. В любом случае показ сообщения о неправильном импорте из библиотеки или о не возможности найти библиотеку случаются не часто, и нужно в основном при разработке новых программ. Потому я решил что даже если оно будет показано не долго то разработчик его заметит в любом случае. Насчет простого пользователя не уверен.
    3) Прежде чем сделать ревизию я спросил интересующие меня вещи по программе @notify. Если бы на два моих вопроса ответ был бы отрицательный то я не приберег бы этот код до лучших времен. Потому в каком-то смысле можно считать что я так косвенным образом советовался. Также не хотел заранее говорить о планируемых изменениях, что бы сделать сюрприз.
  • 2) Пользователь попробует запустить программу ещё раз, чтобы прочитать сообщение.
  • @notify v0.51 #3376
    Длительность паузы увеличивается, если текст длиннее стандартного размера окна.
    Из хаоса в космос
  • Mario_r4 wrote:
    IgorA wrote:ревизия 3374
    Все программы использующие макросы load_lib.mac будут выводить сообщения о ошибках при открытии библиотек через @notify.
    2) сообщения в @notify выглядят красивее, чем в своём окне
    2) Сообщения собственного окна могут провисеть бесконечно долго и даже пользователь с плохой реакцией и зрением может разглядеть это. В случае с @notify если я не ошибаюсь время просмотра ограничено. Это не фатально, но важно.
    IgorA - а можно для сравнения тогда 2 скриншота в одном сообщении: как выглядел вывод сообщений до ревизии 3374, и как он выглядит после. Чтобы людям легче было сравнить и решить, плохо это или хорошо. Спасибо!
  • до
    r3374do.png
    r3374do.png (43.45 KiB)
    Viewed 6515 times
    после
    r3374posle.png
    r3374posle.png (44.63 KiB)
    Viewed 6515 times
    По поводу длительности висения сообщений, думаю что можно сделать дублирование вывода сообщений на board. Но это пускай автор notify решает нужен ли ему этот вывод в board или нет.
  • Ранее yogev_ezra сделал сравнительный обзор notify версии c полупрозрачностью против версии с сеткой.
    Но с того времени появилась фича, нарушающая баланс сил - это рисование текста в память (реализованное Mario).

    Минусы от перехода к полупрозрачной версии:
    1. Повышенное потребление памяти. На самом деле повышение не слишком существенное, если сравнивать с KFAR и HTMLv, у которых окно в разы больше.

    Плюсы от перехода к полупрозрачной версии:
    1. Нет необходимости десятки раз вызывать функцию рисования точки (фон окна).
    2. Нет необходимости 9 раз вызывать функцию рисования текста (причём вся эта отрисовка идёт поверх).


    Предложение:
    Убрать сетку. Рисовать текст в память (до создания окна) и выводить потом одну картинку.
    Из хаоса в космос
  • В целом поддерживаю, замечу лишь, что выигрыш от исключения рисования точек может быть не настолько заметен, поскольку требуется сначала получить область памяти, а чтение из видеопамяти заметно более медленно действие, чем запись в нее.
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • В данном случае область экрана небольшая и задержка чтения из видеопамяти не ощущается. В отличии например от screenshooter'a или программы завершения работы в KolibriN, где читается весь стол и это занимает несколько секунд.
    Из хаоса в космос
  • 512 * 28 * 3 = 43008 = 42кб

    Если сделать минимальную ширину равной 256, то памяти будет занимать 21кб.
  • IgorA wrote:По поводу длительности висения сообщений, думаю что можно сделать дублирование вывода сообщений на board. Но это пускай автор notify решает нужен ли ему этот вывод в board или нет.
    Насчёт пропадания сообщения через какое-то время - может лучше сделать флаг, пропадать или закрывать по нажатию? А то в Винде бывает я копирую большой файл (допустим, полчаса занимает) и иду кушать. Прихожу, вижу ошибка копирования. Ошибка висит, ждёт меня. Я знаю, что случилось. А в Колибри - копирую большой файл, иду кушать. Во время копирования - ошибка. Сообщение появляется через @notify, висит несколько секунд, потом пропадает. Я прихожу с обеда - ни файл не скопировался, ни сообщения об ошибке нет. Непонятно, что произошло. Копирую заново, иду пить чай. Прихожу - опять ни файла, ни ошибки. И т.д., до бесконечности. Время зря теряется на повторные действия.
    Leency wrote:Ранее yogev_ezra сделал сравнительный обзор notify версии c полупрозрачностью против версии с сеткой.
    Но с того времени появилась фича, нарушающая баланс сил - это рисование текста в память (реализованное Mario).
    [...]
    Предложение:
    Убрать сетку. Рисовать текст в память (до создания окна) и выводить потом одну картинку.
    Так в том-то и дело, что тогда я так и не смог достоверно протестировать и сравнить поведение @notify на одном и том же компьютере с сеткой и с полупрозрачностью, потому что на тот момент система была очень нестабильной (из-за добавления поддержки USB и нового сетевого стека в транк), и буквально каждая загрузка KolibriOS на eBox вела себя по-другому (т.е. не наблюдалось постоянство поведения с постоянными настройками, и поэтому тестировать было бессмысленно). Поэтому я всего лишь запостил в этой теме всю информацию, относящуюся к @notify, из чата и из других тем, чтобы не потерялась, и оставил тестирование до лучших времён. Сейчас стабильность опять вернулась, но зато опять нет времени на тестирование. Нужно найти время и вернуться к тестированию.
  • a56b2b388598f55ee0164a26c50730a0.png
    a56b2b388598f55ee0164a26c50730a0.png (50.02 KiB)
    Viewed 6315 times
    Как я предлагал в чате "notify Message#bAutoClose"
    Тогда останется обратная совместимость(если никто не использовал # в тексте сообщения)
    Мультистрочности не будет из-за некоторых проблем и
    Leency « Ср окт 09, 2013 6:58 pm » eAndrew: >>многострочность - навряд ли это нужно, т.к. программа слыжит для показа простых сообщений. Чтобы можно было "один глазом" глянуть и уловить суть
    Портирование на асм уменьшило размер с 1.5киб до 910б
  • Who is online

    Users browsing this forum: No registered users and 6 guests