Attend XDA's Second Annual Developer Conference, XDA:DevCon 2014!
5,738,152 Members 54,362 Now Online
XDA Developers Android and Mobile Development Forum

[KEYBOARD][4.0+] NextApp Keyboard: AOSP-derived Keyboard with Arrow, Function Keys

Tip us?
 
tliebeck
Old
(Last edited by tliebeck; 9th February 2014 at 04:15 AM.)
#1  
tliebeck's Avatar
Senior Member - OP
Thanks Meter 1777
Posts: 1,016
Join Date: Sep 2010
Location: Southern California
Default [KEYBOARD][4.0+] NextApp Keyboard: AOSP-derived Keyboard with Arrow, Function Keys

The NextApp Keyboard is a derivative of the AOSP keyboard found in Android 4.4 KitKat, with added arrow keys and other special keys, and a slightly tweaked QWERTY layout that is closer to that of a PC Keyboard.

This keyboard is intended as an "everyday use" keyboard. While I'm a fan of "Hacker's Keyboard"'s full PC layout for serious hacking, its larger number of keys requires that individual keys be smaller, reducing accuracy. The AOSP keyboard and the various popular aftermarket keyboards, while having large enough keys, are lacking in quick access to fine cursor control abilities and developer features (some more than others).

The design goals of this keyboard are as follows:

1.) Maximize the size of key basic typing layout: top row contains only QWERTYUIOP and extends from one edge of the screen to the other (on phone-sized devices).
2.) Maximize screen area while typing.
3.) Provide quick access to full cursor control, function, control, and special keys.



This keyboard includes a function key ("Fn") toward its lower left corner which can be used to access many additional keys typically found on a PC or Mac keyboard, including:

* Cursor Arrow Keys
* Page Up / Page Down
* Insert, Delete, Home, and End.
* Function F1-F12.
* Ctrl and Alt
* Tab
* Escape

Additionally the function keyboard mode includes twelve symbols found on a PC/Mac keyboard which are not accessible from the Android first-level symbol keyboard. They are included on the function keyboard such that you do not have to visit the second-level symbol keyboard to access them. This reduces the number of key-presses required to type these keys from three to two. This can be useful when writing technical documents or code.

The fundamental QWERTY keyboard layout has been very slightly tweaked to mimic that of a PC keyboard. Specifically, the size of the left shift key has been reduced such that the third row (ZXCVBNM) is no longer overly shifted to the right. The shift key is now a standard sized key. This modification only applies to phones (the AOSP keyboard already uses this layout for tablets).

A comparison of the main keyboard layouts of the NextApp keyboard (first image) vs. the stock AOSP on which it is based (second image):


And the standard PC typing keyboard layout, for comparison:


Google does not include the "gesture typing" feature in the AOSP keyboard, though they did modify the design of the AOSP keyboard significantly to accommodate it as a plugin. The gesture-typing functionality is packaged in a shared library which is distributed only to OEMs and via the Play Store. I've added a facility (in Settings) in the NextApp keyboard to accommodate such plugin libraries should you wish to install one. This feature will always be considered experimental.

This version of the keyboard is free to use. I will be adding it to the Play Store soon, but wanted to get feedback here first.

I may create an enhanced paid version with more features. The paid features might include some more advanced options in the "Fn" mode, more configruation/personalization, theming capabilities, and a couple of accuracy-related ideas I've been testing out.

This keyboard uses the same permissions as the AOSP keyboard, which is quite a number of them. The worrisome ones are of course the "read contacts"-related items. These are used by the autosuggest contact names feature (part of the AOSP keyboard).

Installation Instructions


Play Store: https://play.google.com/store/apps/d...utmethod.latin

Direct Download: http://android.nextapp.com/keyboard/r19/NAK_r19.apk

1.) Install the APK.
2.) Open your device's Settings menu, select "Language & Input".
3.) Check NextApp Keyboard.
4.) Tap the "Default" item and select NextApp Keyboard as the default.

This keyboard does NOT currently add a launcher icon that links to the automated setup, but that will likely change soon.

Thank you for any feedback, bug reports, and suggestions!
Tod Liebeck // NextApp
[ Google+ ] [ Twitter ] [ FX File Explorer: XDA Thread | Play Store ] [ WebSharing: XDA Thread | Play Store ] [ NextApp Keyboard: XDA Thread | Play Store ] [ Atlas Web Browser: XDA Thread | Play Store ]
The Following 36 Users Say Thank You to tliebeck For This Useful Post: [ Click to Expand ]
 
tliebeck
Old
(Last edited by tliebeck; 8th February 2014 at 12:42 AM.)
#2  
tliebeck's Avatar
Senior Member - OP
Thanks Meter 1777
Posts: 1,016
Join Date: Sep 2010
Location: Southern California
Additional screenshots:

Portrait orientation:


Symbols layout:

The symbols layout is slightly modified from stock, and I'm possibly looking at adding '<' and '>' (less-than and greater-than) keys here as well, and then removing them from the Function keyboard.
Tod Liebeck // NextApp
[ Google+ ] [ Twitter ] [ FX File Explorer: XDA Thread | Play Store ] [ WebSharing: XDA Thread | Play Store ] [ NextApp Keyboard: XDA Thread | Play Store ] [ Atlas Web Browser: XDA Thread | Play Store ]
The Following 9 Users Say Thank You to tliebeck For This Useful Post: [ Click to Expand ]
 
tliebeck
Old
(Last edited by tliebeck; 8th February 2014 at 12:54 AM.)
#3  
tliebeck's Avatar
Senior Member - OP
Thanks Meter 1777
Posts: 1,016
Join Date: Sep 2010
Location: Southern California
Known issues:
  • ConnectBot support is poor, I believe it's limited to arrow keys only. (e.g. Ctrl and Tab do not work)
Tod Liebeck // NextApp
[ Google+ ] [ Twitter ] [ FX File Explorer: XDA Thread | Play Store ] [ WebSharing: XDA Thread | Play Store ] [ NextApp Keyboard: XDA Thread | Play Store ] [ Atlas Web Browser: XDA Thread | Play Store ]
 
Nucleotide
Old
#4  
Senior Member
Thanks Meter 703
Posts: 1,562
Join Date: May 2011

 
DONATE TO ME
Nice. When it hits the Play Store, I'll definitely test it out.

This is the search box. It is located in the top right of each thread. Learn to use it!

Phone: Nexus 5
ROM: Purity
Kernel: Code_Blue Kernel


Find me on:
- Google+
- Twitter
The Following User Says Thank You to Nucleotide For This Useful Post: [ Click to Expand ]
 
mdalacu
Old
#5  
mdalacu's Avatar
Senior Member
Thanks Meter 189
Posts: 857
Join Date: Dec 2006
Location: Bucharest
Come on, if you have Note 3 just add an option to make it a 5 row keyboard, you have a lot of screen estate. A lot of us have numbers in their passwords
History: Orange SPV c500, Qtek S200, HTC P3600, HTC Diamond, HTC TouchPro, HTC TouchPro 2, HTC HD2, Samsung Galaxy S, HTC DHD, Samsung Galaxy S2, Samsung Galaxy Note, Asus TF201, Samsung Galaxy Note 10.1, Samsung Galaxy Note 2, Samsung Galaxy N9005].
The Following 3 Users Say Thank You to mdalacu For This Useful Post: [ Click to Expand ]
 
tliebeck
Old
#6  
tliebeck's Avatar
Senior Member - OP
Thanks Meter 1777
Posts: 1,016
Join Date: Sep 2010
Location: Southern California
Quote:
Originally Posted by mdalacu View Post
Come on, if you have Note 3 just add an option to make it a 5 row keyboard, you have a lot of screen estate. A lot of us have numbers in their passwords
In portrait I agree, but in landscape I wish there were more space. One thing I did look into extensively was key height with various keyboards, and I think Google really nailed it with the default on the AOSP keyboard. I found that when I reduced basic key height (to add space for a 5th row while not killing screen real estate) my errors went up significantly. With keys of this size, on any 5"+ phone, I can quasi-touch type (with thumbs or index fingers) with the phone in landscape orientation.

While I wouldn't personally enable it, I 100% agree a number row and user-configurable key height should be options (optionally independently for portrait and landscape orientations).
Tod Liebeck // NextApp
[ Google+ ] [ Twitter ] [ FX File Explorer: XDA Thread | Play Store ] [ WebSharing: XDA Thread | Play Store ] [ NextApp Keyboard: XDA Thread | Play Store ] [ Atlas Web Browser: XDA Thread | Play Store ]
The Following User Says Thank You to tliebeck For This Useful Post: [ Click to Expand ]
 
d3xp2pc
Old
#7  
d3xp2pc's Avatar
Senior Member
Thanks Meter 234
Posts: 798
Join Date: Jun 2010
Location: Newcastle

 
DONATE TO ME
Looks very interesting, think I'll give this a try. The function keys are mainly what I need.

Sign up for @buffer with this link and we'll both receive an extra slot. It's free!! http://bufferapp.com/r/896af7 #android #ios
---
Any sufficiently advanced bug is indistinguishable from a feature.
The Following User Says Thank You to d3xp2pc For This Useful Post: [ Click to Expand ]
 
ch3ck3rs
Old
#8  
Member
Thanks Meter 7
Posts: 59
Join Date: Mar 2013
nice work! question... my biggest gripe with the aosp/google keyboard is the fact that it doesn't predict or even correct spelling in any fields other than sms. example... if i'm typing into chrome it won't try to predict or suggest my next word. Any way this can be implemented to work the same way swiftkey does?
The Following User Says Thank You to ch3ck3rs For This Useful Post: [ Click to Expand ]
 
lesiki
Old
#9  
lesiki's Avatar
Senior Member
Thanks Meter 147
Posts: 330
Join Date: Oct 2011
Location: Frankfurt
Nice app, but I'd love to know if this is open source software.
The keyboard is a main part of the system and knows a lot of information about me. From my private text messages to my banking card password. I won't ever trust this information to a closed source keyboard.
.
Thanks and sorry for my english
__________________



 
People 1950:
People 2012:

My xda-Dropbox
 
awicks
Old
#10  
Member
Thanks Meter 4
Posts: 71
Join Date: Oct 2009
It looks like a great keyboard and one that I will be testing out.

Where is it possible to get the gesture typing libraries from?

Thanks.

Andy

Tags
android, aosp, arrow, cursor, keyboard
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes