bestm80eva / unrealspeccyp

Automatically exported from code.google.com/p/unrealspeccyp
0 stars 0 forks source link

Реализовать поддержку внешней (USB, Bluetooth) клавиатуры #62

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
Купил для своего планшета под Андроид 
Bluetooth-клавиатуру и был разочарован, что она 
не работает полноценно в USP (работает 
только заданный в настройках джойстик на 
курсорных клавишах).
А ведь есть еще гуглофоны со встроенной 
хардварной клавой.

Original issue reported on code.google.com by volga...@gmail.com on 6 Mar 2012 at 7:52

GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
Сейчас только увидел - в 704 ревизии как раз 
это было поправлено? Или там фиксы только 
для виртуальной клавиатуры? С нетерпением 
жду скомпиленный вариант для теста.

Original comment by volga...@gmail.com on 6 Mar 2012 at 8:09

GoogleCodeExporter commented 8 years ago
привет)

Должна работать, поддержка была сделана 
давно.
Надо только поотключать всякие 
навороченные методы ввода и включить 
английскую раскладку.

Original comment by djd...@gmail.com on 7 Mar 2012 at 10:47

GoogleCodeExporter commented 8 years ago
Действительно, выбрал в настройках системы 
в качестве дефолтной стандартную 
клавиатуру Андроида с английской 
раскладкой и сразу все заработало!
Правда есть один нюанс с моей блютус 
клавой. Она в целях экономии энергии как бы 
засыпает буквально через секунду после 
нажатия последней клавиши. Если через 
секунду или дольше нажать какую-нибудь 
клавишу, то на просыпание клавиатуры 
требуется примерно 1/2 секунды и нажатая 
клавиша отправляется с задержкой. Но вот 
только в USP реально нажатие клавиши при 
этом почему-то не срабатывает (срабатывают 
только последующие, если они были с 
интервалом менее 1 секунды). В остальных 
приложениях под Андроид вроде все в 
порядке - хоть и с опозданием, но нажатие в 
таком случае срабатывает.
Тестировал еще в USP USB-клаву через USB-хост - 
все работает отлично.
Не хватает только поддержки кнопки DELETE на 
внешней клавиатуре - приходится юзать SHIFT+0. 
Если можно - добавь плз поддержку этой 
кнопки.

Original comment by volga...@gmail.com on 7 Mar 2012 at 4:49

GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
попробуй затестить версию отсюда (rev711)
http://code.google.com/p/unrealspeccyp/issues/detail?id=48

Original comment by djd...@gmail.com on 9 Mar 2012 at 12:09

GoogleCodeExporter commented 8 years ago
Попробовал - клавиша DEL заработала, спасибо! 
Правда на моей блютус-клаве клавиши по 
прежнему с первого раза не срабатывают.
Очень порадовала виртуальная клавиатура в 
планшетном режиме! И виртуальным 
джойстиком достаточно удобно играть. Есть 
только одно пожелание: сделать этот 
виртуальный джойстик с нефиксированным 
положением. Т.е. когда касаешься правой 
части экрана - в этом месте будет центр 
джойстика, и только после того как палец 
двигаешь в какую-нибудь сторону 
срабатывают соответствующие клавиши. Так 
реализовано управление в некоторых 
3D-шутерах под Андроид - имхо гораздо 
удобнее.

Original comment by volga...@gmail.com on 9 Mar 2012 at 5:37

GoogleCodeExporter commented 8 years ago
Дополнение: Fire лучше пусть срабатывает при 
нажатии в любую область в ПРАВОЙ половине 
экрана (сейчас срабатывает и в левой 
половине если нажать за пределами области 
джойстика).
И еще пожелание: добавить для виртуальной 
клавы подсветку нажатой клавиши и 
виброотклик.

Еще радует, что наличие виртуальной клавы 
никак не сказалось на производительности 
USP на моем не самом быстром гуглофоне LG P500.

Original comment by volga...@gmail.com on 9 Mar 2012 at 5:52

GoogleCodeExporter commented 8 years ago
Я видел "плавающий" джойстик в эмуле Atari под 
андроид. Не скажу, что он удобнее, чем тот, 
который сейчас в usp. Потому что иногда в 
разгар битвы палец съезжает, центр 
джойстика становится близко к краю, в 
результате попытка нажать "в сторону" 
заканчивается съезжанием пальца с экрана, 
и соответственно ничего не нажимается.
Рубился во Fly Shark с текущей реализацией джоя 
- сам офигел, как все круто, заодно исправил 
еще один баг с мультитачем. Так что пока 
оставлю как есть, может в дальнейшем 
прикручу новые фишки.

На счет просыпания USB-клавы - возможно, 
приходит много ивентов нажатия-отжатия в 
одном и тот же кадре эмуля после 
просыпания, соответственно эмуль не 
успевает их подхватить. Это надо 
специально делать, чтобы если 
нажатие/отжатие происходит в одном  и том 
же кадре, то оно куда-то его заносило в 
отдельный список и откладывало отжатие на 1 
кадр.

Original comment by djd...@gmail.com on 9 Mar 2012 at 7:46

GoogleCodeExporter commented 8 years ago
В принципе, я этим виртуальным джойстиком 
на 7" планшете сегодня прошел 3 уровня Turrican-2 
(потом игра зависла - неудачную версию с VTRDOS 
видать загрузил). Супер, в общем - теперь на 
Андроиде в USP можно нормально играться, а не 
просто демки смотреть.

По поводу просыпания bluetooth-клавы (с USB как 
раз все в порядке). Да, эксперементально 
подтвердил сейчас твою версию. Судя по 
всему, действительно event'ы нажатия/отжатия 
после просыпания клавы приходят с очень 
коротким интервалом и успевают 
обработаться в одном кадре из-за чего 
виртуальный Спекки просто не успевает 
среагировать. Если нажать и удерживать 
нажатой любую кнопку, то она после 
просыпания клавиатуры нормально 
отрабатывается.

Original comment by volga...@gmail.com on 9 Mar 2012 at 8:26

GoogleCodeExporter commented 8 years ago

Original comment by djd...@gmail.com on 12 Jun 2012 at 10:27