Накурившись сативы и возлюбив весь мир, решил начать юзать твиттер. Включил кросспостинг вконтакте, пару раз грязно выругался в тестовых целях1 — и пол-дела сделано, теперь Тина Канделаки сможет читать мои шутки про бусы и подоконники. А вот я не смогу — держать вкладку с твиттером постоянно открытой почему-то не сильно охота2, а десктопного клиента, чтобы был красивый и розовенький почему-то не нашлось.3 Попробовал Firefox + отдельный профиль + Hide GUI bars + оконным менеджером убрать заголовок и рамку + юзерскриптом выкинуть часть интерфейса — вроде норм получалось, но на середине процесса вспомнил, что ссылки надо будет открывать другим браузером, и почему-то эта проблема показалась мне неразрешимой4. Ну что же, всё к тому и шло: Qt + WebKit. Пишем собственный Twitter-клиент 
В результате получилось вот что:
Розовый, конечно, отлично подходит к обоям, системной теме и углу второго монитора, но саму идею можно считать реализованной. Клиент, скорее всего, уедет на третий монитор, коий наконец-то появилась реальная необходимость купить, рядом всуну такое же для μTorrent и ещё чего-нибудь, и будет ок. А теперь о неприятном.
Отображение твиттера в виде «виджета», не показываемого на панели задач, не сворачивающегося по Win+D и никак не мешающего другим окнам, реализовано путём вызова setWindowFlags(Qt::SplashScreen). Минус такого подхода (в Openbox; как в других WM и, тем более, под виндой, не знаю): в такое окно нельзя ничего писать — текстовые поля не будут получать фокус. Но контекстное меню работает и позволяет вставлять из буфера обмена — это, в частности, помогает залогиниться шестнадцатый раз за последнюю минуту: так-то логин идёт автоматом при входе, но после нескольких попыток, вне зависимости от их успешности, появляется капча. Это проблема номер один. Решена, подробнее в комментариях.
Проблема номер два: правая колонка. Каждый, у кого есть FireBug, может убедиться, что она лежит в <div class="dashboard">, и что если этот элемент удалить, она пропадёт, а всё остальное будет работать дальше. Но если мы то же самое проделаем в WebKit:
ui->webView->page()->mainFrame()->evaluateJavaScript("$('.dashboard').remove();");
то она всё равно будет отображаться, уехав под твиты. Что я только не пробовал — бесполезно! Проблема решена, подробнее в комментариях.
А так вроде круто всё. Если вы хотите поучаствовать, вот исходники. В mainwindow.cpp надо поправить местоположение виджета на экране и его размеры:
this->setGeometry(0, 40, 620, 1024);
логин и пароль:
ui->webView->page()->mainFrame()->evaluateJavaScript("$('#username').val('@_@'); $('#password').val('@_@'); $('#signin_submit').trigger('click');");
возможно, размеры #page-container и #page-outer для вашей темы. И можно юзать 
Голова болит пиздец 

Он меня как и комп и система почти никогда не отключается
зы полезно может будет читануть))
http://file.alice2k.ru/2010/twitter-1.png
http://file.alice2k.ru/2010/twitter-2.png
http://file.alice2k.ru/2010/twitter-3.png
зы полезно может будет читануть))Ну нахуя ты картинкой запостил, читать невозможно =\
Твой блог лег что-ли?
ВАВАН опять обдолбанный.

Добавлено через 4 минуты
http://file.alice2k.ru/2010/twitter-3.pngПочитал, меня нет, девушка моя есть.
Сука, не зря я тебя зобанил :3
Добавлено через 34 секунды
http://file.alice2k.ru/2010/twitter-1.pngПро кибика много всего рассказать могу как о человеке, но боюсь разочаровывать тебя

Добавлено через 31 секунду
Точно. Я тоже пойду переводить свой бложек на JPEG-формат. Этож круто. И верстка не едет :3
Hotot, вроде, красивый и розовенькийhttp://www.hotot.org/gallery.html красивый, но Qt и беленький

ВАВАН опять обдолбанный.На этот раз это всё были шутки

И верстка не едет :3И в IE4 работает

Добавлено через 27 минут
меня нет, девушка моя есть.Ты есть. На первой странице в интересных личностях.
Добавлено через 3 минуты
Меня нет

Добавлено через 3 минуты
А мне больше всего нравится в браузере)Слова перепутал?
Он меня как и комп и система почти никогда не отключается

Тоже так хочу, но получится, скорее всего, только летом.
Добавлено через 38 секунд
Вова Плагин — Return!Пошёл доделывать плагин

Добавлено через 2 часа 43 минуты
Проблема номер один решена: на webView повесили eventFilter, вызывающий activateWindow при наступлении QEvent::MouseButtonPress.
Проблема номер два тоже решена: <div class="dashboard">, оказывается, появляется после загрузки страницы, даже после document.ready. Копаться в JS твиттера, ища куда бы повесить свой обработчик, неохота, поэтому
.dashboard { display: none; }Исходники обновил. Теперь надо GUI для настройки и закруглённые края.Кстати, мне одному кажется, что маргины вокруг непосредственно твиттера неодинаковые? А они одинаковые
в гимпе померил
Доступные тэги: <b>, <i>, <s>, <u>, <a href="">, <img src="" /> (загрузить), <pre>, <quote>
- themylogin › Самое дорогое в жизни 20 мая, 19:47
- potomushto › Am I not always be wanting this? (x8) 20 мая, 16:38
- anonymous › Написание «не» с различными частями речи 16 мая, 16:06
- anonymous › A Tragedy in the Air 15 мая, 18:24
- themylogin › Итоги 2011 15 мая, 12:10
- themylogin › На гелике езжу 13 мая, 16:24
- anonymous › Waking up at ten 13 мая, 13:16
- themylogin › Жук 12 мая, 11:55
- themylogin › Давайте шутки из твиттера продолжим развивать здесь 7 мая, 11:03
- anonymous › Шевченко лох 6 мая, 14:02

