gentoo.ru
LeechCraft
leechcraft@conference.gentoo.ru
Понедельник, 12 апреля 2010< ^ >
0xd34df00d установил(а) тему: http://leechcraft.org | Описание: http://ru.wikipedia.org/wiki/Участник:0xd34df00d/LeechCraft | Баг/предложение? http://leechcraft.org/projects/leechcraft/issues | Исходники: git://github.com/0xd34df00d/leechcraft.git | LeechCraft Stable: 0.3.0; unstable: 0.3.65 | Логи: http://tinyurl.com/leechcraft-logs
Конфигурация комнаты
Участники комнаты

GMT+4
[00:15:22] <0xd34df00d> NightNord: попробуй щас.
[00:30:52] <NightNord> 0xd34df00d: собираеццо пока
[00:42:35] <NightNord> 0xd34df00d: работает
[00:42:54] <NightNord> Тока все равно две иконке в трее
[00:42:58] <NightNord> Так и предполагается?
[00:44:37] <NightNord> 0xd34df00d: пошоку не проходит асид3
[00:45:41] <NightNord> 3 теста слишком длинны и пишет ненужную надпись в углу
[01:02:27] NightNord вышел(а) из комнаты
[02:57:59] 0xd34df00d вышел(а) из комнаты
[03:14:07] 0xd34df00d вошёл(а) в комнату
[06:40:58] Fess вышел(а) из комнаты
[07:27:52] slepnoga вошёл(а) в комнату
[10:24:33] <slepnoga> 0xd34df00d:  пинг ??
[10:33:12] Mellon вошёл(а) в комнату
[10:59:25] <0xd34df00d> slepnoga:
[11:12:16] <slepnoga> цмаке уже пофиксили :)
[11:12:28] <slepnoga> хотел про него спросить
[11:35:14] slepnoga вышел(а) из комнаты: Replaced by new connection
[11:35:24] slepnoga вошёл(а) в комнату
[12:13:16] NightNord вошёл(а) в комнату
[12:16:03] <0xd34df00d> NightNord: ну, зато 100/100 же )
[12:58:51] Mellon вышел(а) из комнаты
[14:18:45] slepnoga вышел(а) из комнаты: Replaced by new connection
[14:18:55] slepnoga вошёл(а) в комнату
[14:41:00] <NightNord> 0xd34df00d: ты скажи, а что ты ваще хочешь сделать?
[14:41:29] <NightNord> Сферический личкрафт в вакууме - это что?
[14:42:24] <0xd34df00d> NightNord: в смысле, совсем конечная цель?
[14:42:45] <NightNord> Да
[14:43:04] <0xd34df00d> Окей.
[14:43:30] <0xd34df00d> Итак, личкрафт.
[14:43:46] <0xd34df00d> В итоге, среда для некоего такого сферического юзера в вакууме.
[14:44:07] <0xd34df00d> Который лазает в интернете, смотрит кино, сидит во вконтактике/фейсбуке/майспейсе и типа такого.
[14:44:22] <0xd34df00d> Ну и общается со своими друзиками через всякие асечки/джабберы и прочие IM.
[14:45:41] <0xd34df00d> Помимо всего прочего, юзеру, конечно, иногда захочется запускать что-то еще, что мы не предусмотрели, поэтому личкрафт должен уметь хостить в себе (визуально) другие приложения.
[14:46:10] <NightNord> Короче что-то вроде WME, но не тока M?
[14:46:18] <NightNord> (Windows Media Edition)
[14:46:29] <0xd34df00d> Да, типа того.
[14:48:14] <NightNord> 0xd34df00d: т.е. что-то вроде tiling de?
[14:50:17] <NightNord> Видимо да, получается что так
[14:50:30] <NightNord> У кед все их "программы" - суть библиотеки-плагины
[14:51:03] <NightNord> Тока у тебя окошечек не будет а тока вкладки - почти tiling
[14:51:33] <NightNord> Еще надо сделать, чтобы несколько плагинов/прог на одной вкладке могли делить пространство и сделать полноэкранный режим - и будет совсем tiling de
[14:55:39] <0xd34df00d> Естественно.
[14:55:50] <0xd34df00d> На одной вкладке вообще полноценный WM.
[14:55:53] <0xd34df00d> На каждой, вернее.
[14:56:02] <0xd34df00d> Только не tiling, а возможно даже stacked.
[14:57:34] <NightNord> 0xd34df00d: тада ты движешься немного не так
[14:58:14] <NightNord> Существующее wm не даст перехватить контроль над окнами
[14:58:32] <NightNord> Т.е. тебе надо делать личкрафты как wm
[14:58:45] <NightNord> Но это не самое плохое
[14:58:59] <NightNord> У тебя много диалогов (оконочных) - это плохо
[14:59:17] <NightNord> Ибо совсем не вписывается в картину stacked/tiling wm
[14:59:28] <0xd34df00d> NightNord: ну да.
[14:59:37] <0xd34df00d> NightNord: поэтому там в People we need есть Window Manager.
[14:59:47] <NightNord> Вот я что думаю
[14:59:50] <0xd34df00d> NightNord: отдельный процесс, заточенный под личкрафт, отличающий диалоги, порожденные личкрафты.
[15:00:20] <0xd34df00d> А все остальное рендерящий там, где у личкрафтов есть место.
[15:00:38] <NightNord> Надо делать именно tiling wm
[15:00:38] <NightNord> И диалоги реализовывать в общей стуктуре
[15:00:40] <NightNord> пинг
[15:01:15] <NightNord> 0xd34df00d: смотри. Вот возьмем например диалог сохранения. Щас у тебя вылазит такое стандартное окошко позволяющее выбрать куда и чо и т.п.
[15:01:31] <NightNord> Которое можно двигать как хочешь
[15:01:37] <0xd34df00d> Она.
[15:01:41] <0xd34df00d> Ога, то бишь.
[15:01:49] <NightNord> Но в твоей концепции "двигать как хочешь" не очень нужно
[15:02:06] <NightNord> А при этом диалог сохранения, емнип, модальный, т.е. блокирует взаимодействия с прочими плагиными
[15:02:13] <NightNord> Что для wm тоже не гуд
[15:02:31] <NightNord> Можно поменять - но тогда вознимают проблемы уровня, альт-табов и т.п.
[15:03:29] <NightNord> Есть другая идея - сделать очередь запросов к юзеру (аля диалогов)
[15:03:47] <NightNord> И плагины которым надо обратится к юзеру, закидывают туда свой запрос и ждут ответа
[15:04:23] <NightNord> Тогда а) можно сделать плагины, которые будут фильтровать очередь и выполнять некоторые действия автоматически (например автоматом сохранять файлы)
[15:05:15] <NightNord> б) можно сделать отдельную диалоговую вкладку, где можно выбрать диалог из очереди (не обязательно последний/первый) и ручками отработать + сделать выезжающий слой сверху с минимизированной/полной версией диалога
[15:05:47] <NightNord> В зависимости от настроек пользователя этот слой может выежать сразу на том табе с плагином, который вызвал диалог, либо потом, либо еще как-нить
[15:05:53] <NightNord> (либо вообще не выезжать)
[15:06:43] <NightNord> Ну и эта... Вообщем я не очень вижу смысел в плагинарной структуре тогда
[15:07:05] <NightNord> У тебя получается, что плагины личкрафта и прогие программы - это разные вещи
[15:07:08] <NightNord> *прочие
[15:07:46] <0xd34df00d> Нехорошо.
[15:07:58] <0xd34df00d> Очередь = блокировка = дедлок.
[15:08:05] <NightNord> Она "очередь"
[15:08:08] <0xd34df00d> Ибо гуи однопоточны.
[15:08:20] <NightNord> Список, если хочешь
[15:08:22] <NightNord> Куча
[15:08:33] <NightNord> 0xd34df00d: а вот это неправильно
[15:08:45] <NightNord> Если ты хочешь делать wm - то должен быть многопоточным
[15:08:53] <0xd34df00d> Иксы однопоточны )
[15:09:05] <0xd34df00d> И WM в отдельном процессе. ему пофиг.
[15:09:06] <NightNord> Иксы - сервер =)
[15:09:19] <0xd34df00d> Ты можешь общаться с иксами только в одном потоке.
[15:09:26] <NightNord> Ну да
[15:09:30] <0xd34df00d> Который, как правило, совпадает с главным.
[15:09:45] <NightNord> Но у тебя может быть стопяцот процессов
[15:09:53] <NightNord> Которые общаются с иксами одновременно
[15:10:31] <0xd34df00d> Да.
[15:10:34] <NightNord> Т.е., имхо, тебе стоит и собственные плагины выделять в отдельные  процессы
[15:11:07] <0xd34df00d> Тогда многопроблем.
[15:11:16] <NightNord> Каких?
[15:11:47] <0xd34df00d> Ну а как ты ту же рсс-читалку вынесешь в отдельный процесс?
[15:12:19] <NightNord> Собсно у тебя тогда идет разделение. wm, который управляет отображением. ядро, которое рулит взаимодействием между модулями и куча модулей
[15:12:29] <NightNord> А  в чем проблема?
[15:12:42] <0xd34df00d> Как окно встроить?
[15:12:48] <0xd34df00d> XEmbed? Тогда теряем венду.
[15:12:57] slepnoga вышел(а) из комнаты
[15:12:59] <0xd34df00d> Стандартизуем свой протокол для рендеринга внутри? Нихрена не приобретаем.
[15:13:07] <NightNord> Если ты делаешь _wm_ - то ты уже теряешь винду
[15:13:21] <0xd34df00d> WM отдельно.
[15:13:26] <0xd34df00d> Личкрафты должны уметь работать и без WM.
[15:13:29] <0xd34df00d> WM — все равно плагин.
[15:13:38] <NightNord> Эм...
[15:13:45] <NightNord> Без wm ничего работать не может
[15:14:08] <NightNord> Личкрафты должны быть вм
[15:14:23] <NightNord> Если ты хочешь, чтобы они могли включать в себя другие проги
[15:14:43] <NightNord> Собсно плагины встраивать в личкрафты также как и другие проги
[15:14:51] <NightNord> Поскольку они и будут другими прогами
[15:15:04] <NightNord> Просто общающиеся по некоторому протоколу с демонизированным ядром
[15:16:17] <NightNord> Умение включать в себя другие проги - оно какбы сильно все усложняет и меняет парадигму на обратную
[15:17:53] <0xd34df00d> NightNord: неты, WM — плагин же.
[15:18:03] <NightNord> Причем. заметь, ты сам говоришь, что с иксами надо общатся в один поток и это, обычно, главный поток (в твоем случае - ядро). А WM тоже надо общатся с иксами, т.е. плагин WM должен работать в том же потоке, что и ядро
[15:18:11] <0xd34df00d> Предоставляющий отдельные вкладки и коммуницирующий с отдельным процессом, который и менеджит окна.
[15:18:26] <NightNord> Ога, т.е. WM таки не плагин
[15:18:36] <NightNord> WM - отдельная прога
[15:18:45] <0xd34df00d> Он разделен.
[15:18:56] <0xd34df00d> WM-прога — процесс, менеджащий окна, собственно.
[15:19:12] <0xd34df00d> Он взаимодействует с плагином для личкрафтов, который уже определяет, в какие табы что запихнуть и так далее.
[15:19:13] <NightNord> Да, в т.ч. собсно окно личкрафта
[15:19:27] <0xd34df00d> Юзер передвинул окно с одного таба на другой.
[15:19:35] <0xd34df00d> Плагин к личкрафтам послал соответствующее сообщение процессу.
[15:19:35] <NightNord> А таб - это плагин чей?
[15:19:38] <0xd34df00d> Процесс передвинул.
[15:19:49] <0xd34df00d> Таб, в котором могут хоститься другие проги — WM'овский.
[15:19:52] <NightNord> Т.е. нынешнее ядро - это вм
[15:19:58] <0xd34df00d> Нет, почему? )
[15:20:05] <NightNord> Ну, tab++ щас в ядре же?
[15:20:15] <NightNord> Ну, по сути занятий
[15:20:20] <0xd34df00d> Да.
[15:20:30] <NightNord> Так у тебя будет, что wm имеет всякие табуляторные плагины
[15:20:31] <0xd34df00d> Но Tab++ щас тупо показывает древовидное дерево, и все.
[15:20:35] <NightNord> Ну, не суть
[15:20:47] <0xd34df00d> Итак, смотри.
[15:20:51] <0xd34df00d> Табы вообще — в ядре.
[15:20:55] <NightNord> Короче, wm с плагинами. Вопрос. Что делает тогда оставшийся личкрафт?
[15:21:00] <0xd34df00d> Плагины могут добавлять свои виджеты. которые отображают табы.
[15:21:07] <0xd34df00d> s/табы/в табах/
[15:21:20] <NightNord> Ну да. Вот и получается, что нынешнее ядро - это вм
[15:21:34] <0xd34df00d> То есть, плагин-браузер сегодня отправляет сообщение ядру, что нужно добавить виджет, и ядро добавляет ее как вкладку.
[15:21:35] <NightNord> А плагины - его "программы", которые оно распихивает
[15:21:59] <0xd34df00d> Затем, плагин, который является личкрафтовой частью WM, аналогично добавляет таб со своим виджетом, на котором он размещает чужие приложения.
[15:22:08] <0xd34df00d> Какбе и все.
[15:22:12] <0xd34df00d> Почему ядро WM-то? )
[15:22:13] <NightNord> Т.е. я так понимаю
[15:22:15] <NightNord> Есть две части
[15:22:54] <NightNord> WM и некотарая хрень, единственной целью которой является общее программное поле, позволяющее взаимодействовать плагинам  между собой
[15:22:54] <0xd34df00d> Это почти как IM, который планируется и уже начал писаться.
[15:23:09] <0xd34df00d> Есть отдельный процесс, который поддерживает связь с сервером и загружает протокольные плагины.
[15:23:23] <0xd34df00d> Есть кусок в личкрафтах, который уже отображает контакт-лист, рисует окна с чатами и так далее.
[15:23:32] <0xd34df00d> Но ты же не говоришь, что IM в ядре )
[15:23:44] <0xd34df00d> NightNord: да.
[15:23:46] <NightNord> Ты не понимаешь
[15:23:46] <0xd34df00d> NightNord: почти что.
[15:23:55] <NightNord> Личкафт тоже должно что-то рисовать
[15:24:01] <0xd34df00d> Да.
[15:24:15] <NightNord> Если у тебя ядро не-вм, то с точки зрения вм все плагины  - одна прога (ядро)
[15:24:24] <0xd34df00d> Да.
[15:24:27] <0xd34df00d> Верно.
[15:24:43] <NightNord> Поэтому, чтобы уметь разделять плагины, ядро должно быть wm
[15:25:03] <NightNord> Т.е. плагины должны слать wm сообщение "мне нужно место" и wm им выделяло это место
[15:25:06] <0xd34df00d> разделять = ?
[15:25:27] <0xd34df00d> Зачем?
[15:25:33] <0xd34df00d> Сегодня плагины вполне себе работают в личкрафте.
[15:25:38] <0xd34df00d> И так же будут работать в случае с собственным WM.
[15:25:49] <0xd34df00d> WM знает, какими окнами (неличкрафтовыми) оно управляет.
[15:25:57] <0xd34df00d> Следовательно, WM знает, что принадлежит личкрафту «нативно».
[15:26:24] <NightNord> ... ровно как и любые другие программы
[15:26:24] <NightNord> 0xd34df00d: чтобы оно могло ими управлять как раздельными сущностями
[15:26:43] <0xd34df00d> NightNord: тогда я тебя не понял.
[15:26:48] <0xd34df00d> Зачем ими управлять как раздельными сущностями?
[15:27:09] <NightNord> пинг...
[15:27:51] <NightNord> Чорт, тупит все как-то
[15:28:18] <NightNord> 0xd34df00d: ну, смотри. В твоем понимании 1 виджет = 1 таб
[15:28:22] <NightNord> 1 прога = 1 таб
[15:28:25] <NightNord> Так?
[15:28:33] <0xd34df00d> Нет.
[15:28:47] <0xd34df00d> Смотри.
[15:29:07] <0xd34df00d> Кусок WM, который плагин к личкрафту, он отдает виджет для таба, который представляет из себя что-то типа поверхности или рабочего стола.
[15:29:16] <0xd34df00d> На этом столе уже рисуется сколько угодно каких угодно левых прог.
[15:30:03] <NightNord> А кто рисует сам личкрафт?
[15:30:16] <0xd34df00d> WM же.
[15:31:32] <NightNord> И wm, получается, должна разделять личкрафт от не-ликрафта?
[15:31:38] <NightNord> *личкрафта
[15:31:58] <0xd34df00d> НУ а чего тут сложного?
[15:32:04] <0xd34df00d> Хоть по имени процесса отличай.
[15:32:17] <NightNord> А если я $0 заменил?
[15:32:24] <0xd34df00d> Что leechcraft — то личкрафт, остальное не личкрафт.
[15:32:29] <0xd34df00d> В смысле? Чем/как ты его заменил?
[15:32:35] <NightNord> exec'ом
[15:32:45] <NightNord> Хоть в баше exec -a blabla leechcraft
[15:32:56] <NightNord> Имя процесса будет blabla
[15:33:09] <0xd34df00d> Ты можешь узнать из самого приложения его имя.
[15:33:13] <0xd34df00d> И передать его WM'у.
[15:33:14] <0xd34df00d> Всё )
[15:33:28] <NightNord> Это хак какбе
[15:33:37] <NightNord> Можно сделать, имхо, намного проще и стройнее
[15:33:41] <0xd34df00d> Как?
[15:34:09] <NightNord> Каждый плагин - это какбы "окно"
[15:34:20] <NightNord> Или несколько
[15:34:28] <NightNord> Каждая прога тоже имеет несколько "окон"
[15:34:34] <NightNord> Фактической разницы между ними нет
[15:35:04] <NightNord> Поэтому для wm глубоко побарабану, что конкретно ему распихивать по табам (и именно wm должно распихивать по табам) - проги или плагины
[15:35:11] <NightNord> Для него это все одинаковые "окна"
[15:35:27] <NightNord> Т.е. фактически абсолютно классический tiling или гибридный wm
[15:36:22] <NightNord> А ядро личкрафтов тогда - это такая не имеющая своего окна хрень, которая втягивает в себя плагины и те плодят отдельные окна. Которыми рулит уже wm
[15:37:36] <NightNord> Плагин wm в личкрафте и определение личкрафтов как отдельной сущности становятся не нужны
[15:38:14] <NightNord> Более того, wm становится никак не зависимо от ядра личкрафтов и попытка запустить обычную прогу без запущенных личкрафтов не приведет к эпик фейлу
[15:39:19] <NightNord> Возникает логичный вопрос - а зачем тогда ваще личкрафт-wm, если его можно заменить одним из тыщи существующих tiling wm?
[15:40:26] <NightNord> Я бы еще задал вопрос - зачем так усложнять свою жизнь с потоками и шаред памятью, если можно все плагины сделать отдельными процессами и общение между ними (обернутое в некоторый класс) через демонизированное ядро, по сетевому протоколу?
[15:40:57] <NightNord> И тогда мы получаем абсолютно классическую задачу de =)
[15:41:36] <NightNord> Набор программ с единым l&f, быть может свое wm, без значительных потерь заменяемое на другое, и демоны интеграции
[15:41:48] <NightNord> ты этого хочешь? =)
[15:42:40] <0xd34df00d> Мммммм.
[15:42:52] <0xd34df00d> А как ты сделаешь тогда остальные программы визуально «внутри» leechcraft?
[15:43:45] <NightNord> Просто. "Внутри" личкрафта не существует
[15:43:52] <NightNord> Что есть "внутри" личкрафта?
[15:44:00] <NightNord> Это внутри вот этого серого окошка без всего?
[15:44:03] <0xd34df00d> Да в табах.
[15:44:16] <NightNord> Это рисует wm
[15:44:22] <NightNord> ты когда-нить tiling wm видел?
[15:44:28] <0xd34df00d> Да.
[15:44:34] <NightNord> Ну вот, этож один в один
[15:44:41] <0xd34df00d> А откуда он знает, что и как надо рисовать, если WM нам неподконтролен?
[15:44:48] <NightNord> Тока кол-во "рабочих столов" динамическое
[15:45:03] <NightNord> А че его контролировать?
[15:45:21] <NightNord> Пошоку запросил новую вкладку == пошоку сделал новое окно
[15:45:59] <NightNord> Это даже более гибко, потому как юзер средствами wm сможет определить, в какие вкладки его пихать,  в новые или в существующие
[15:46:41] <NightNord> Канешь. наличие своего wm лучше, например для иконок сверху (их тоже должно рисовать wm, очевидно)
[15:47:10] <NightNord> Иконки сверху суть трей =)
[15:47:28] <NightNord> Для  трея и протокола общения с ним есть fdo стандарт
[15:48:01] <NightNord> Сложнее с проблемой диалогов, но её тоже можно разрулить в wm
[15:48:29] <NightNord> Диалоги обычно имеют класс окна "диалог"
[15:49:36] <0xd34df00d> ХОрошо.
[15:49:52] <0xd34df00d> А если все в отдельных процессах, как RSS-читалка запросит у браузера виджет для просмотра всякого?
[15:50:03] <0xd34df00d> Как медиа-плеер будет тырить данные из торрент-клиента?
[15:50:12] <NightNord> То, что хочешь сделать ты, это какой-то аццкий гибрид. WM есть, но оно ничего само почему-то не рисует, оно требует еще какую-то прогу, которая сама рисует какие-то табы и выделят wm место где wm будет выделять место 0о, хотя должно быть наоборот
[15:50:35] <NightNord> 0xd34df00d: а щас это как делается?
[15:50:45] <0xd34df00d> В рамках одного процесса.
[15:50:47] <NightNord> RSS посылает комманду браузеру "открой вот это"
[15:50:50] <0xd34df00d> Нет.
[15:50:57] <NightNord> Комманда это аля PoshokuOpenURL
[15:51:00] <NightNord> Ну или что-то типа того
[15:51:12] <0xd34df00d> RSS запрашивает плагин, реализующий интерфейс IWebBrowser, например, и получает объект IWebView, и дальше с ним делает что хочет.
[15:51:29] <NightNord> Что хочет - это что?
[15:51:38] <0xd34df00d> Запихивает в него HTML с содержанием новости.
[15:52:00] <NightNord> У меня есть старшное подозрение, что это называется shared libraries
[15:52:08] <NightNord> *страшное
[15:52:50] <0xd34df00d> Да.
[15:52:53] <NightNord> Фактического _взаимодействия_ при этом нет же, так?
[15:52:54] <0xd34df00d> Хм...
[15:52:59] <NightNord> Есть просто использование кода браузера
[15:53:03] <0xd34df00d> NightNord: в случае браузера и плеера — есть.
[15:53:09] <0xd34df00d> Тьфу.
[15:53:11] <0xd34df00d> Торрентов и плеера.
[15:53:16] <NightNord> А там чо?
[15:53:23] <NightNord> Ты бинари гоняешь?
[15:53:25] <0xd34df00d> А там, по факту, торрент косит под файл с произвольным доступом.
[15:53:26] <0xd34df00d> Да.
[15:53:31] <0xd34df00d> Причем туда-обратно.
[15:53:39] <NightNord> Обратно? 0о
[15:53:54] <0xd34df00d> А как сообщить об изменении позиции и все такое? )
[15:54:02] <NightNord> Ну, это ваще говоря то, что делают koislaves
[15:54:17] <0xd34df00d> Слейв не имеет стейта.
[15:54:19] <0xd34df00d> А торрент имеет.
[15:54:32] <0xd34df00d> Поэтому торрент в рамках данной задачи в слейвы не очень подходит.
[15:54:45] <NightNord> Можно канешь сделать сетевой протокол, но бинари копировать некошерно
[15:54:57] <0xd34df00d> Блин.
[15:55:01] <0xd34df00d> Хренота какая-то.
[15:55:02] <0xd34df00d> Надо подумать.
[15:55:03] <NightNord> Шаред мемори тоже не кошерно
[15:55:12] <0xd34df00d> Потому что тогда все это нафиг разваливается без WM.
[15:55:12] <NightNord> Не очень, во всяком случае
[15:55:38] <0xd34df00d> Шаред мемори очень некошерно.
[15:55:48] <0xd34df00d> Хрен ты запихнешь кутешные фиговины в него.
[15:56:15] <NightNord> Эта, я вот че подумал
[15:56:23] <NightNord> Но у тебяж торренты все равно на диск пишут, да?
[15:56:39] <0xd34df00d> Ну да.
[15:56:59] <0xd34df00d> Но они должны знать, что качать, на базе того, что плеер запрашивает на проигрывание.
[15:57:14] <NightNord> Ну, ты можешь работать с файлом, а пинать торренты
[15:57:34] <NightNord> Сервер интеграции все равно есть
[15:57:46] <NightNord> Но он может общатся через псевдо-сетевой протокол
[15:58:04] <NightNord> Ты открываешь в плеере файл и спрашиваешь у торрентов - не твой?
[15:58:15] <NightNord> Торренты отвечают - да, мой
[15:58:38] <NightNord> Тут есть проблема нескольких плееров запрашивающих один файл в разных местах, но видно надо локи делать
[15:58:51] <0xd34df00d> Тогда плеер должен знать о том, что вообще есть какие-то там торренты и нужно что-то там спрашивать.
[15:58:55] <NightNord> Ну да
[15:58:59] <0xd34df00d> А это нехорошо.
[15:59:08] <0xd34df00d> В текущей ситуации плеер ничего такого не знает.
[15:59:12] <NightNord> Щм
[15:59:18] <0xd34df00d> Я просто написал обертку для торрентов в файл, и оно заработало.
[15:59:20] <NightNord> Щас, я посмотрю на жтот плеер
[15:59:27] <0xd34df00d> Напишу завтра для DC, и оно тоже заработает.
[15:59:29] <NightNord> А как это выглядит в выборе файла?
[15:59:31] <0xd34df00d> Плеер вообще трогать не нужно будет.
[15:59:45] <0xd34df00d> NightNord: когда добавляешь торрент, галочку поставить надо на «Попытаться проиграть...»
[15:59:55] <NightNord> А плеер открывать это не может?
[15:59:58] <0xd34df00d> У меня, правда, оно только звук гонит и странные картинки с тормозами, но это потому, что мой интернет говно.
[16:00:01] <NightNord> Тока если его пнет торрент?
[16:00:02] <0xd34df00d> А как он это откроет?
[16:00:09] <NightNord> Ок
[16:00:13] <NightNord> Тогда идея элементарна
[16:00:14] <0xd34df00d> Ну да. Ты инициируешь торрентами же.
[16:00:26] <NightNord> Ты можешь экспортить псевдофайлы
[16:00:43] <NightNord> Типа char/block device
[16:00:57] <NightNord> ... На виндах не сработает, да
[16:01:18] <NightNord> Надо подумать
[21:41:47] slepnoga вошёл(а) в комнату
[21:50:27] slepnoga вышел(а) из комнаты
[23:04:13] Mellon вошёл(а) в комнату
Powered by ejabberd Powered by Erlang Valid XHTML 1.0 Transitional Valid CSS!