• Tkabber по просьбам...
    фикс потери фокуса после сворачивания в трей и последующего разворачивания в винде pastebin.com
    иконка вконтактика для контактов из j2j транспорта pastebin.com
    фикс иконки в tabicons для контактов, ушедших в оффлайн, пока ткаббер сам был в онлайне (иконки показываются как онлайн) pastebin.com
    и парочка настроек в config.tcl:

    глобальный хоткей на разворачивание/сворачивание

    package require twapi
    hook::add finload_hook {
    twapi::register_hotkey "Ctrl-Alt-C" "ifacetk::systray::toggle_state"
    }

    ctrl+enter для окна ввода

    proc fix_msg_send_key {chatid type} {
    set iw [::chat::input_win $chatid]
    bind $iw <Control-KeyPress-Return> [bind $iw <Shift-KeyPress-Return>]
    }
    hook::add open_chat_post_hook fix_msg_send_key

Replies (32)

  • @den-po, "пока ткаббер сам был в онлайне" — конечно же в оффлайне
  • @den-po, зашли первый патч тео на мыло, он должен принять такое.
  • @vt, так-то это костыль. точно не помню, но вроде в линупсах такого бага нет. а в венде фокус у редактора отнимается.
  • @den-po, эта пять!
  • @den-po, бэкспейс в настройках возвращает на страницу назад (config.tcl)

    proc custombs {w} {
    bind $w.fields <Key-BackSpace> {::custom::history_move 1}
    }
    hook::add open_custom_post_hook custombs
  • @den-po, а по поводу фокуса тео ничего не говорил, или ты не слал?
  • @vt, не слал. я одно время попытался поковыряться в коде тикля, пару раз казалось, что я близок к решению, а потом устал и забил
  • @den-po, фикс потери фокуса пока перекочевал из патча в конфиг:

    proc focusinproc {path} {
    global lastfocusedchatid

    if {[cequal [wmstate .] withdrawn]} return
    if {$path == "."} {
    catch { if {[info exists lastfocusedchatid]} {focus -force $lastfocusedchatid} }
    } else {
    set lastfocusedchatid $path
    }
    }
    bind . <FocusIn> [list focusinproc %W]
  • @den-po, в копилку. кнопка "отправить"

    proc open_chat_post_hook_handler {chatid type} {
    # Send button
    set iw [::chat::input_win $chatid]
    set parent [winfo parent $iw]
    set isw $parent.isw
    set pi [pack info $isw]
    set ix [lsearch -exact $pi -in]; incr ix
    set f [lindex $pi $ix]
    set sb [button $parent.send -text Отправить -command [list event generate $parent <KeyPress-Return>]]
    pack $isw -in $f -side left
    pack $sb -in $f -side right -fill y
    # End Send button
    }
    hook::add open_chat_post_hook open_chat_post_hook_handler
  • @den-po, ну и пусть будет тоже

    #запускаться свёрнутым
    hook::add finload_hook {
    wm iconify .
    }
  • @den-po, хм, да оно ж не работает. так и запишем.
  • @den-po, Может, лучше на wiki?
  • @Totktonada, может и лучше. но для меня правки в чужих вики — тяжкий труд.
    кстати, вроде тебе я чего-то обещал, а потом забыл.
  • @den-po, комментарий к этому фиксу. в отличие от патча, фокус возвращается туда, где он был до прятанья окна. то есть если был фокус в редакторе фильтра контактов, там он и останется. вроде и правильно, но с патчем удобней было.
  • @den-po, Сейчас посмотрел и не нашёл статьи по типу «ковыряние config.tcl или нагромождение рецептов». Можно сделать отдельную статью и потихоньку ковырять. Всяко оно будет более искабельно для человека, которому может понадобиться.

    Навскидку не нагрепалось, на память — не помню. Наверное, всё-таки не мне.
  • @den-po, А, нет, нашёл статью: ru.tkabber.jabe.ru .
  • @den-po, браузер в винде без дде и ручного прописывания (config.tcl)

    proc browseurl {url} {
    if {![catch {package require twapi}]} {
    twapi::shell_execute -path $url
    }
    }
  • @den-po, ссылка для проверки команды запуска браузера google.ru
  • @den-po, плагин latex без imagemagic pastebin.com
  • @den-po, А не сдохнет оно со временем, на paste-сервисе-то?
  • @Totktonada, я поставил never expire. в остальном хз
  • @den-po, ещё чуть допила к патчу: в строке
    exec dvigif -o [file join $dirname out.gif]
    надо заменить gif на png
  • @den-po, пусть и ссылочкой будет pastebin.com
    убить чтоли лишние комментарии... ай, потом, когда много ненужного наберётся
  • @den-po, поломалось
  • @den-po, теперь неактуально
  • @den-po, кнопка очистки фильтра контактов
    diff pastebin.com
    либо файл для плагина patches pastebin.com
  • @den-po, после строки set parent теперь нужно добавить:
    set parent [winfo parent $parent]
  • @den-po, Сегодняшняя версия: pastebin.com
    Заоодно сделал, чтоб окно с сообщениями не отнимало фокус у ввода. Минус — нельзя копировать из чата по ctrl+c, только мышой. Если такое не нужно, надо убрать || [string match .pw.frame0.chat $path] из условия
  • @den-po, #показ/скрытие оффлайн (работает в редакторе)
    bind Text <Control-Key-h> ifacetk::roster::switch_only_online
  • @den-po, Не работало в приватах. Вот pastebin.com
  • @den-po, if {$::interface eq "ttk"} { set parent [winfo parent $parent] }
  • @den-po, поправлено для совместимости с последними изменениями. часть поля ввода прячется под кнопкой, не в том я сейчас состоянии, чтоб нормально делать
    pastebin.com