Форум LetsMoto

Вернуться   Форум LetsMoto > Телефоны Motorola > Вопросы по телефонам на платформе Linux Mobile

 
Опции темы
Старый 30.01.2008, 13:25   #1
Старший моторист
 
Аватар для Last
 
Адрес: Мариуполь
Телефон: e398 и a1200e
Прошивка: 373-49r NS и 12-f4
Сообщений: 190
Уровень респекта: 189
Отправить сообщение для Last с помощью ICQ
FingerPad (Фингерпад)

Для тех, кто перешел с обыкновенного телефона на сенсорный было непривычно использовать qwerty-клавиатуру вместо стандартной клавишной. Если вы причесляетесь к этим людям - тогда эта тема для вас. В данный момент ведуться разработки по внедрению фингерпада (ФП) на равне со стандартной клавиатурой.



Автор разработки eug - тема на мотофане.

Цитата:
Пока не удалось нормально пристроиться, как деф. клава, чтобы поле ввода можно было скроллить.
В аттаче - библиотека. Можно потестировать (никаких гарантий с моей стороны, что ничего плохого не случится нет - у меня работает) с блокнотом (если с ним не заработает, то с мессенджером тож)
кидаем ее в корень флехи, например.
Далее из консоли:
LD_PRELOAD=/mmc/mmca1/main.so /usr/SYSqtapp/notepad/notepad или (с последней библиотекой)
LD_PRELOAD=/mmc/mmca1/fp.so /usr/SYSqtapp/notepad/notepad
и жмем стилусом на поле ввода
если мессага не вылезла, значить пока не судьба (но дело поправимое)
если вылезла, то будет работать и с мессенджером (как - объясню если будут желающие)

Новая либа (babf1ce5a30d6cbe6c60fb282d52640e)

2 языка (русский и английский) + режим цифр, языки пока вкомпиленны (в дальнейшем вынесу в настройки, наверное)
в режиме букв 3 режима работы (AB - все прописные Ab - первая прописная, остальные строчные ab - все строчные)
клавиша, где дб * - AB->Ab->ab->AB->... (надпись соот след режиму), в режиме цифр - *
клавиша, где дб # - en->ru->num->en->... (надпись соот след режиму)
клавиша 0 в режиме букв пока тоже пробел
клавиша 1 в режиме букв - куча разных символов

bks - бэкспейс
spc - пробел
std - вызов стд клавы
quit - убрать клаву


в зеленом лейбле (на этих скринах его еще нет) отображается текущая буква (как только исчезнет - значит кнопка сбросилась) - это пока просто так и вообще текущая версия не более чем прототип
Цитата:
с месседжером я делал так (может что-то упустил, месяц прошел, но идею из команд надеюсь уловите)
Код:

mkdir -p /ezxlocal/qtbin/messaging/o
cp /usr/SYSqtapp/messaging/messaging /ezxlocal/qtbin/messaging/o
cp /usr/SYSqtapp/messaging/msgctrloadslaveapp /ezxlocal/qtbin/messaging
в /ezxlocal/qtbin/messaging делаем скрипт с именем messaging (!!! обязательно с таким !!!) след содержания
Код:

#!/bin/bash
export LD_LIBRARY_PATH=/usr/lib:/usr/lib/ezx/lib
export LD_PRELOAD=/mmc/mmca1/fp.so
exec /usr/SYSqtapp/messaging/o/messaging $*
последняя строка (там, где exec) обязательно через /usr/SYSqtapp, а не через /ezxlocal/qtbin (будут проблемы с правами)

не забываем chmod +x для него
mount --bind /ezxlocal/qtbin/messaging /usr/SYSqtapp/messaging
все killall messaging (или killall am, messaging запускается am'ом) и ждите пока перезапустится (если после щелчка на иконке не запустился - тыкните еще, просто он еще не готов)

если нужно больше приложений, то необязательно всех их так
для части (аддрбук (там есть проблемы с поиском), блокнот(вроде чисто), месседжер(проблема на скрине), может еще что) достаточно аналогичным образом переделать am.
Скачать fp.so.gz и liba.tar.gz

Цитата:
Так как am-application manager, запускает все приложения, включая ява, именно поэтому при убивании am вылетают абсолюто все приложения.

Результат:
- фингерпад работает во всех приложениях, включая ява.
Цитата:
Сделать скрипт, выполнить его 1 раз
Код:
#!/bin/bash
mkdir -p /mmc/mmca1/am/o
cp /usr/SYSqtapp/am/am /mmc/mmca1/am/o/
cp /usr/SYSqtapp/am/idlefetchdb /mmc/mmca1/am/o/
cp /usr/SYSqtapp/am/statmemprog /mmc/mmca1/am/o/
cp /usr/SYSqtapp/am/SysMenuTree /mmc/mmca1/am/o/
cp /usr/SYSqtapp/am/SysMime /mmc/mmca1/am/o/
cp /usr/SYSqtapp/am/SysRegistry /mmc/mmca1/am/o/
echo '#!/bin/bash
export LD_LIBRARY_PATH=/usr/lib:/usr/l ib/ezx/lib
export LD_PRELOAD=/mmc/mmca1/fp.so
exec /usr/SYSqtapp/am/o/am $*' > /mmc/mmca1/am/am
chmod +x /mmc/mmca1/am/am
Потом в консоле:
mount --bind /mmc/mmca1/am /usr/SYSqtapp/am
kill -9 am
Цитата:
Как считать логи с am я не знаю, пришлось запускать ФП для конкретного ява-приложения. в консоли:
Код:
LD_PRELOAD=/mmc/mmca1/fp.so /usr/SYSjava/kvm -launch 20002
Обновленно
[quote]
Текущие исходники (38b62ab7427047f0f84a54e19b1138fe)
все, что забито на #if 0 #if 1 - разные тесты
в тек варианте - вроде то, что в шапке (на всяк случай в архив положил и сборку).
По коду main - перехват и встраивание ФП, mykbd - сам ФП.
Сейчас оставлен перехват только KbTouchInputEngine::showInputWidget (ну и hide),
так как часть других методов show/hide клавы в конечном итоге обращается к ним (их там несколько, грепайте objdump либ на inputwidget, и еще в inputmethods что-то лежит)

MyButton хотел унаследовать от UTIL_PushButton, не получилось (у UTIL_PushButton по либам нет деструктора при испол его как базы (D2)), поэтому такой изврат с MyButton константа fingerPadHeight сейчас не используется (осталась от пред вариантов).
Все русское (подписи) - в UTF-8

Код можете использовать как хотите (никаких лиц. ограничений с моей стороны)...

Скачать fp.so.gz


Last вне форума
Последний раз редактировалось Last; 03.02.2008 в 16:20.
   Ответить с цитированием   
Этот пользователь выразил Респект Last
Старый 03.02.2008, 00:04   #2
Старший моторист
 
Аватар для Last
 
Адрес: Мариуполь
Телефон: e398 и a1200e
Прошивка: 373-49r NS и 12-f4
Сообщений: 190
Уровень респекта: 189
Отправить сообщение для Last с помощью ICQ
Обновился ФП, а соответственно и первый пост...


Last вне форума

   Ответить с цитированием   
Старый 03.02.2008, 02:03   #3
Мотоспец
 
Аватар для OlDDiRT
 
Адрес: Ростов-на-Дону
Телефон: E398, A1200e
Прошивка: (C_(O)_(O)_IL,
Сообщений: 503
Уровень респекта: 351
Отправить сообщение для OlDDiRT с помощью ICQ
Старая тема! но я уже привык стилусом...

OlDDiRT добавил 02.02.2008 в 17:03
жалко дисплей


OlDDiRT вне форума
Последний раз редактировалось OlDDiRT; 03.02.2008 в 02:03. Причина: Добавлено сообщение
   Ответить с цитированием   

Быстрый переход

Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы





Дизайн-студия Онтона Пуха
Авторские права защищены Онтоном Пухом