EskeRahn 5,421 Posted January 10, 2020 Share Posted January 10, 2020 26 minutes ago, Craig said: Then shift doesn't even work right. It's a poorly implemented hack of a method. No other keyboard phone requires this. It's the #1 worst thing about this phone. I agree that currently FinQwerty is close to being a must. I simply can not understand why the stock does not duplicate the shift and fn action on the digits and symbols key. I can not imagine why anyone would prefer shift ignored. So though FxTec strictly has handled the keyboard-driver, it is far from optimal - and it seems pretty silly on a device where the keyboard is THE selling point, to not do the utmost to deliver a perfect keyboard experience stock... 4 Quote Link to post Share on other sites
SchattengestaIt 557 Posted January 11, 2020 Share Posted January 11, 2020 So, I've looked into the keychar files that Eske provided. Thanks again!We have a "ç" with ALT+c (which is interesting since I thought that's only used in catalan spain). Some accents are typed with [vocal] + ALT which seems strange to me. But as they wish... FN+[key] being used for many different characters seems very odd to me. I'd probably change that to ALT or SHIFT. Also, I think to know the reason for the non-sticky shift key. It could be the keypad type not being "ALPHA". They used "FULL", which has a different behavior. I don't know though what happens to "FN" if that's changed. I expect it to work the same. If it wouldn't, there'd be workarounds. Since some of you have already added other keychar files, I shouldn't need to research it myself. Can you place any new keychar files into the folder (root needed?) and they appear in the settings? Or what else do you need? If so, just change the first unignored (#) parameter in the kcm file: "type FULL" to "type ALPHA" and see if sticky shift works. Could be that this would be enough... Also, what does ESCAPE currently do when not pressed with other buttons? In the code it says "base: none", so that would be no function at all? (add "fallback BACK" if you could use a "back" button) 1 Quote Link to post Share on other sites
EskeRahn 5,421 Posted January 11, 2020 Share Posted January 11, 2020 6 minutes ago, SchattengestaIt said: Also, what does ESCAPE currently do when not pressed with other buttons? In the code it says "base: none", so that would be no function at all? (add "fallback BACK" if you could use a "back" button) Esc only do Back in the stock version, that is one of the things fixed with FinQwerty, using the Fallback 1 Quote Link to post Share on other sites
Rob. S. 1,643 Posted January 11, 2020 Share Posted January 11, 2020 11 hours ago, SchattengestaIt said: We have a "ç" with ALT+c (which is interesting since I thought that's only used in catalan spain). Ç or ç (c-cedilla) is a Latin script letter, used in the Albanian, Azerbaijani, Manx, Tatar, Turkish, Turkmen, Kurdish, Zazaki, and Romance alphabets. Romance languages that use this letter include Catalan, French, Friulian, Ligurian, Occitan, and Portuguese as a variant of the letter C. It is also occasionally used in Crimean Tatar and in Tajik (when written in the Latin script) to represent the /d͡ʒ/ sound. It is often retained in the spelling of loanwords from any of these languages in English, Basque, Dutch, Spanish and other Latin script spelled languages. 😉 3 Quote Link to post Share on other sites
VaZso 1,997 Posted January 16, 2020 Share Posted January 16, 2020 I wanted to do my own layout for Pro1 like I had in my N900 but without root access it did not seem to be an easy way to do this. Also, it wasn't convenient to write in my language on Pro1 without having an easy access of characters with accents. ...but when I saw FinQwery and its availability on GitHub, I have decided to play with it a little bit... ...so I have used FinQuerty but modified it a tiny bit by removing every keymaps (so it only contains mine) and renamed it slightly to be able to install it without affecting original FinQwerty so it can be remain installed and updated without any problems. My own keymap is not really interesting for others as it has a slightly modified layout while basically it is the same as "US. international" for QWERTY but national characters can be reached by fn and fn+shift (or fn + capslock) combinations so I can also use it in a terminal and write e-mails/messages using every characters I should use. ------------------------------------------------------------------------------------------------------------------------------------------------------------ Other than this, I have also tried to implement Hungarian layout for Pro1 which is still missing from FinQuerty. It is also based on "US. international" layout but it is QWERTZ as it basically should. National characters were placed similarly like it is written here. Differences are as follow: - I have kept numbers at the same positions as written on Pro1's keyboard, and "0" can be reached by fn+"ö" while paragraph can be reached by fn+shift+"ö" (Pro1 has a missing key in this row) - "ű" character can be reached by fn+"j" and "Ű" character can be reached by fn+"k" (Pro1 has a missing character also in this row) All other characters are remained in position as per Hungarian layout. I have attached the modified .kcm file to this message and I kindly ask @Anssi Hannula to add this (or a very similar) layout file to FinQwerty to also have some support of Pro1 for Hungarian keyboard mapping. Also, I would like to thank you for writing FinQwerty and sharing it on GitHub so we can have our own layouts. Any other opinions are also welcome if someone who is affected by potentially using this layout reads this. Maybe @FBela, @lcsaszar, @yaka, @jonyify, @Adamyno, @AnnieC? The same layout file may also be used on QWERTY devices by removing key remappings at the top of the file, also Z / Y positions can be easily interchanged anyway. I hope there will be some users who will find this layout usable. ------------------------------------------------------------------------------------------------------------------------------------------------------------ ...back to my own layout. I have tried to map F1..F10 to fn+1..fn+10 and "home" / "end" functions to fn+left / right arrows and page up / page down to fn+up / down arrows but with limited success. As far as I can see, there is only a fallback option in these layout files and if application tries to handle the specific function, then fallback option is not working (that is why it is fallback). So I assume these functions can not be fully solved in this higher level - am I right or there is something I did not find? So under Firefox, page up / down functions did not work. However, all of them worked under Termux. It would be good to be solved somehow - most importantly home / end / page up / page down functions would be good to be mapped to fn+arrow buttons somehow. In .kcm files, really does not exists a function like "assign" instead of "fallback"? pro1_qwertz_hun_1.kcm 3 Quote Link to post Share on other sites
elvissteinjr 359 Posted January 17, 2020 Share Posted January 17, 2020 3 hours ago, VaZso said: As far as I can see, there is only a fallback option in these layout files and if application tries to handle the specific function, then fallback option is not working (that is why it is fallback). So I assume these functions can not be fully solved in this higher level - am I right or there is something I did not find? So under Firefox, page up / down functions did not work. However, all of them worked under Termux. Regarding key character map functionality, take a look at the documentation if you haven't yet: https://source.android.com/devices/input/key-character-map-files I don't see the issue of doing fn+digit in theory reading this, but perhaps it doesn't work that well in practice? Quote Link to post Share on other sites
VaZso 1,997 Posted January 17, 2020 Share Posted January 17, 2020 7 minutes ago, elvissteinjr said: Regarding key character map functionality, take a look at the documentation if you haven't yet: https://source.android.com/devices/input/key-character-map-files I don't see the issue of doing fn+digit in theory reading this, but perhaps it doesn't work that well in practice? I saw this but it does not help replacing fallback as far as I can see. I don't know if there is a representation of "page up" for example like '\t' for tab and '\n' for new line/enter. Fallback works well anyway but if application tries to handle it by itself then it will not fall back to the key specified by fallback option. So I had no problem with modifier+key handling but I would like to see a better option instead of fallback with the same behaviour but in every case so not just simply being a fallback. Quote Link to post Share on other sites
elvissteinjr 359 Posted January 17, 2020 Share Posted January 17, 2020 Hm. Assuming just putting "PAGE_UP" on there instead of "fallback PAGE_UP" doesn't work... I've seen a "replace" keyword in one of the vendor kcm files in the android source tree. That's not documented, but perhaps "replace PAGE_UP" would work? Just theorizing however. I don't have any practical experience with fiddling with these. 1 Quote Link to post Share on other sites
VaZso 1,997 Posted January 17, 2020 Share Posted January 17, 2020 11 minutes ago, elvissteinjr said: Hm. Assuming just putting "PAGE_UP" on there instead of "fallback PAGE_UP" doesn't work... I've seen a "replace" keyword in one of the vendor kcm files in the android source tree. That's not documented, but perhaps "replace PAGE_UP" would work? Just theorizing however. I don't have any practical experience with fiddling with these. Thank you this suggestion, I will try it later (it is early in the morning here). Simply PAGE_UP does not work but I have not read about replace keyword, so it also worth a try. Quote Link to post Share on other sites
VaZso 1,997 Posted January 17, 2020 Share Posted January 17, 2020 (edited) 1 hour ago, elvissteinjr said: I've seen a "replace" keyword in one of the vendor kcm files in the android source tree. That's not documented, but perhaps "replace PAGE_UP" would work? I could not resist trying it as I was too curious. 🙂 So this option has really worked. I have searched the existence of this option but found nothing so it seems to be really undocumented but as it works, now I love it. 🙂 Applied page up / down and home / end to fn+arrows and all of them work perfectly well even in Firefox, so I can easily jump to the beginning or end of a textbox for example and also page up / down functionalities work on web pages. Anyway, as it is dark here, I have noticed that F5 turns off keyboard's backlight and F6 turns it back on, even if I write replace or fallback in keyboard definition. I have not tested it with bluetooth keyboard yet but may this function be hardcoded to these events? Anyway, I think it may worth considering to include a similar function also in layouts of FinQwerty (I am basically speaking about page up / page down / home / end). Thank you again for pointing this out. Edit: I have attached a .kcm file with some of the modifications added. These are as follows: - fn+left arrow: HOME - fn+right arrow: END - fn+up arrow: PAGE UP - fn+down arrow: PAGE DOWN - fn+backspace: BACK - fn+shift+backspace: FORWARD - fn+del: INSERT I would put this version in FinQwerty as I think these are usable extra functions at buttons where usually no fn modifier is used so it does not affect usability at other use cases. @Anssi Hannula, what is your opinion about it? pro1_qwertz_hun_1.kcm Edited January 17, 2020 by VaZso 6 Quote Link to post Share on other sites
Sean McCreary 328 Posted January 17, 2020 Share Posted January 17, 2020 4 hours ago, VaZso said: Anyway, as it is dark here, I have noticed that F5 turns off keyboard's backlight and F6 turns it back on, even if I write replace or fallback in keyboard definition. I have not tested it with bluetooth keyboard yet but may this function be hardcoded to these events? BTW, the slider sends Fn-F6 and Fn-F5 when it moves, which is why the keyboard backlight turns on and off. Sending these from the keyboard will also cause some side effects, depending on whether you have the rotation lock enabled or disabled. I think we need a way to manage the backlight from the keyboard, but this method may stop working in the future. Until then, it seems useful 🙂 In LineageOS I have changed the kernel to send SW_LID events when the slider moves, which triggers Android's native landscape keyboard support. F(x)tec decided not to use the native framework for this, but since it is compatible with Treble (and F(x)tec's custom modifications are not) it will probably end up in future LineageOS builds. The boot.img files I posted for use with the Android 10 GSI include this change. Also, thanks for working out the kcm changes needed to support PAGE_UP and PAGE_DOWN from the keyboard. I think these modifications will be very useful in all languages, and I'll create a kcm file patch that attributes them to you. However, can you actually type fn+shift+backspace? I can only manage two-key chords myself. Quote Link to post Share on other sites
Sean McCreary 328 Posted January 17, 2020 Share Posted January 17, 2020 (edited) 6 hours ago, VaZso said: - fn+left arrow: HOME - fn+right arrow: END - fn+up arrow: PAGE UP - fn+down arrow: PAGE DOWN - fn+backspace: BACK - fn+shift+backspace: FORWARD - fn+del: INSERT I pushed a patch to GitHub with a variation on this mapping: - shift/fn+left arrow: HOME - shift/fn+right arrow: END - shift/fn+up arrow: PAGE UP - shift/fn+down arrow: PAGE DOWN - fn+backspace: BACK - fn+del: FORWARD - shift+del: INSERT F(x)tec really wanted a key that sends a hard BACK keycode, and I think this is a better way than stealing ESC. I also like having FORWARD and BACK next to each other, so you can hold the left 'yellow arrow' Fn key and easily move back and forward with the other thumb. Edited January 17, 2020 by Sean McCreary Tweaked wording 1 Quote Link to post Share on other sites
VaZso 1,997 Posted January 17, 2020 Share Posted January 17, 2020 d 59 minutes ago, Sean McCreary said: BTW, the slider sends Fn-F6 and Fn-F5 when it moves, which is why the keyboard backlight turns on and off. Sending these from the keyboard will also cause some side effects, depending on whether you have the rotation lock enabled or disabled. I think we need a way to manage the backlight from the keyboard, but this method may stop working in the future. Until then, it seems useful 🙂 Thank you, it is good to know, that case I feel better. 🙂 You are right, it also affects landscape lock, but at least it can be turned on again in case the backlight isn't lit after wakeup when keyboard remains open (which is currently the case). Maybe it would be better if they were not send Fn+F5/F6 but some more unusual keystroke or combination like F11/F12 or Fn+some media key or fn+shift+key. It would be good if they could also use SW_LID anyway. 1 hour ago, Sean McCreary said: Also, thanks for working out the kcm changes needed to support PAGE_UP and PAGE_DOWN from the keyboard. I think these modifications will be very useful in all languages, and I'll create a kcm file patch that attributes them to you. However, can you actually type fn+shift+backspace? I can only manage two-key chords myself. You're welcome. I also think they are useful in all languages so basically it would be good to put it in every layouts. However, I don't really need these modifications as I have already installed it together with my own layout which also has F1-F12 reachable from Pro1's keyboard but as others may also happy to use these features, every other layouts may be modified like the one I have attached before and which one would also be good to be included in FinQuerty as Hungarian support still not built in. Anyway, I can type fn+shift+backspace on Pro1's keyboard. As far as I know, all modifier keys are handled together with a casual key using stock keyboard driver, it may only have problems if more casual keys are pressed together (I have not dug into its source just read this forum). 1 Quote Link to post Share on other sites
VaZso 1,997 Posted January 17, 2020 Share Posted January 17, 2020 13 minutes ago, Sean McCreary said: I pushed a patch to GitHub with a variation on this mapping: - shift/fn+left arrow: HOME - shift/fn+right arrow: END - shift/fn+up arrow: PAGE UP - shift/fn+down arrow: PAGE DOWN - fn+backspace: BACK - fn+del: FORWARD - shift+del: INSERT F(x)tec really wanted a key that sends a hard BACK keycode, and I think this is a better way than stealing ESC. I also like having FORWARD and BACK next to each other, so you can hold the left 'yellow arrow' Fn key and easily move back and forward with the other thumb. Hmm, include it in this way is even better as it does not need to be given separately in every .kcm files. Anyway, I have missed forward feature several times in browser so that is why I put it somewhere on the keyboard but it is true that fn+shift is not an easy combination. 🙂 So it may be much better this way. Quote Link to post Share on other sites
FBela 23 Posted January 17, 2020 Share Posted January 17, 2020 11 hours ago, VaZso said: Any other opinions are also welcome if someone who is affected by potentially using this layout reads this. Thanks for the great amount of energy you put into it. I have a Qwerty version, but I'll try it anyway. Currently I try finQwerty US Intl. version, but I ran into a problem: I can't type / sign under Termux. It works everywhere else, but not under Termux... If @Anssi Hannula based on your version of hun_qwertz, could add a version of hun_qwerty to the next version of the finqwerty app, then it would be much easier to try it, because I wouldn't have to compile my own. Or is it enough just copy the kcm file somewhere in the phone? I haven't looked at this yet... Quote Link to post Share on other sites
Sean McCreary 328 Posted January 17, 2020 Share Posted January 17, 2020 Hopefully F(x)tec will like some of our changes enough to add them to a future update. In the meantime I have updated the kcm file in my patched vendor.img at https://drive.google.com/drive/mobile/folders/1ey6g1N1ORYZ34oRXLYsF4zCCL6_KGRCi Quote Link to post Share on other sites
VaZso 1,997 Posted January 17, 2020 Share Posted January 17, 2020 3 minutes ago, FBela said: Thanks for the great amount of energy you put into it. I have a Qwerty version, but I'll try it anyway. Currently I try finQwerty US Intl. version, but I ran into a problem: I can't type / sign under Termux. It works everywhere else, but not under Termux... If @Anssi Hannula based on your version of hun_qwertz, could add a version of hun_qwerty to the next version of the finqwerty app, then it would be much easier to try it, because I wouldn't have to compile my own. Or is it enough just copy the kcm file somewhere in the phone? I haven't looked at this yet... As far as I see, basically the file needed for QWERTY is the same as what I have attached but without "map" lines at its top part. (The truth is the opposite anyway - QWERTZ is what need to remap those keys as Pro1 basically has a shifted keyboard. So QWERTZ is where a remap should be applied in every cases.) So basically adding it to use on QWERTY keyboard is simple, but keys will be a bit messed up because of the shifted layout anyway. Without root access, you can not easily copy these files. However, I may send you an .apk with a version of FinQwerty which includes this modification, however, I think it would be better to wait for @Anssi Hannula's reaction about it. Quote Link to post Share on other sites
EskeRahn 5,421 Posted January 17, 2020 Share Posted January 17, 2020 57 minutes ago, VaZso said: You are right, it also affects landscape lock, but at least it can be turned on again in case the backlight isn't lit after wakeup when keyboard remains open (which is currently the case). Maybe it would be better if they were not send Fn+F5/F6 but some more unusual keystroke or combination like F11/F12 or Fn+some media key or fn+shift+key. It would be good if they could also use SW_LID anyway. It is great if we can this easily map a key to restore backlight. And I agree that we should suggest them to use another set of keycodes, less likely to be interesting. Maybe KEYCODE_MEDIA_CLOSE and KEYCODE_MEDIA_EJECT could make some sort of sense, and are less likely to be interesting than F5/F6. 1 Quote Link to post Share on other sites
VaZso 1,997 Posted January 17, 2020 Share Posted January 17, 2020 8 minutes ago, EskeRahn said: It is great if we can this easily map a key to restore backlight. And I agree that we should suggest them to use another set of keycodes, less likely to be interesting. Maybe KEYCODE_MEDIA_CLOSE and KEYCODE_MEDIA_EJECT could make some sort of sense, and are less likely to be interesting than F5/F6. Exactly, these keys are seem to be very useless on Pro1 especially if they were sent together with the combination of fn modifier. 🙂 1 Quote Link to post Share on other sites
EskeRahn 5,421 Posted January 17, 2020 Share Posted January 17, 2020 3 minutes ago, VaZso said: Exactly, these keys are seem to be very useless on Pro1 especially if they were sent together with the combination of fn modifier. 🙂 When I try with the App KeyEvent, I do not see neither make or break codes of fn. doing open and close. Do you? I think it will send a single plain keycode only, and I tried to find some rather unlikely to be used. Though of course in theory some app doing remote desktop might want those two too .... But I guess that could be said for any of them... Quote Link to post Share on other sites
VaZso 1,997 Posted January 17, 2020 Share Posted January 17, 2020 5 minutes ago, EskeRahn said: When I try with the App KeyEvent, I do not see neither make or break codes of fn. doing open and close. Do you? I have just checked it and I see scancodes of 470 when closing and 471 when opening keyboard... Quote Link to post Share on other sites
EskeRahn 5,421 Posted January 17, 2020 Share Posted January 17, 2020 4 minutes ago, VaZso said: I have just checked it and I see scancodes of 470 when closing and 471 when opening keyboard... Same here. I do not think we can map the simple scancodes to combined codes. Only the other way round. That is I do not think we can fake it as say Ctrl+Alt+Fn+Sh+F5 and I assume there is a principal difference in mapping to a keycode and a char (otherwise they could just use two obscure unicode chars) Quote Link to post Share on other sites
VaZso 1,997 Posted January 19, 2020 Share Posted January 19, 2020 (edited) I have just filed a pull request on GitHub for Hungarian layout of Pro1 as it seems @Anssi Hannula is not actively checking this forum. I hope it will be included soon. I put both QWERTZ and QWERTY versions there but I don't know how usable it is on shifted QWERTY layout. Edited January 19, 2020 by VaZso Quote Link to post Share on other sites
FBela 23 Posted January 19, 2020 Share Posted January 19, 2020 4 minutes ago, VaZso said: I have just filed a pull request on GitHub for Hungarian layout of Pro1 as it seems @Anssi Hannula is not actively checking this forum. I hope it will be included soon. I put both QWERTZ and QWERTY versions there but I don't know how usable it is on shifted QWERTY layout. I will let you know how it works if @Anssi Hannula updated the version which is coming from the play store... :) 1 Quote Link to post Share on other sites
VaZso 1,997 Posted January 23, 2020 Share Posted January 23, 2020 Today @Anssi Hannula has accepted my pull request for Hungarian layout in FinQwerty and he also put page up / page down / home / end functions for fn+arrows for all layouts so every layouts will be improved a bit. He told me I missed to include yellow combinations of some buttons in Hungarian layout, so I have also modified it so currently all yellow keys are available using alt+key combinations. That was part of my second pull request but now it is also included in FinQwerty. He said he will release next version soon, so it may be available in Play Store after some days. Hopefully before last stock of Pro1's are starting to arrive next week. 🙂 1 3 Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.