-
Notifications
You must be signed in to change notification settings - Fork 443
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Hacker's Keyboard Easily Destroys Documents! #487
Comments
I read these discussions (particularly #43 and #172) and I am astonished about the long running decision to allow so many valuable documents of so many users to be destroyed in favor of not swapping Ctrl and Esc "to avoid confusing people who got used to the current way of doing things" in the face of an argument that the current position of those keys compared to ordinary keyboards was already confusing to people. Instead of imposing the mild discomfort of retraining people about the position of Ctrl and Esc (which is a more natural layout for newcomers anyway), entire documents for these people are being completely destroyed on a regular basis. This will go down in history as a textbook case study that illustrates very vividly when it is of paramount importance for a software maintainer to immediately apply an uncomfortable change to fix an egregious design flaw and I hope that this conversation is preserved forever for that purpose. This is why business people rule the world and not developers. |
|
Where do I download the experimental version? The release version from google play still has the ctrl key next to A when in five row portrait mode (and cursor keys are also inverted -T unlike the screenshot above). |
Mainlined by @klausw via #487 (comment)! GitHub has broken all of following strike-out formatting, but I'll preserve it as-is for historical purposes.
1. ~~Get to HK's settings (@ least 3 ways to do so, but simplest is the funny-looking settings key next to ****Esc**** on typical 5-row keyboard when HK is already the default).~~
2. ~~Under the "Keyboard View Settings" header, choose "Theme and Label Settings."~~
3. ~~Toward the bottom, _after_ reading caveats in description, "Enable compact 5-row keyboard mode."~~
4. ~~Back all the way out of all HK settings, so the above is saved.~~
5. ~~Go back to main HK settings page & enable said layout under "Keyboard mode, portrait" &/or "Keyboard mode, landscape."~~
6. ~~Back all the way out again to save.~~
7. ~~Find a text field & play with _shiny, new keyboard_!~~
|
Yes, I would love to see a settings checkbox to swap the CTRL and ESC keys (or ALT) of the standard keyboard. Off by default, but allow the user to choose. Large tablets allow two hand typing and CTRL-A is so easy to fat finger. I would vote for a settings checkbox as the first comment suggested. (Never had an issue with my phone, which is handheld.) |
Interesting that people have these problems with the Control key, since for me (on a no-name tablet with Android 4.2.2) the Control key does not work at all for me! I think it used to work, but probably some update of something broke it. |
@Rhialto - Totally untrue! Absolutely 0% of all keyboards in this Google image search have the ctrl key next to the A key. Ctrl is always on the bottom row, usually in the left corner. https://www.google.com/search?q=computer+keyboard&tbm=isch The Hacker's Keyboard is 1. extremely abnormal and 2. totally dangerous to my workflow! Risk of losing documents is a major software design flaw. |
@DavidPesta: then you haven't seen any picture of the Lear Siegler ADM-3a keyboard. One of the first cheap ($1195) CRT terminals. It is the terminal that Vi grew up on (hence the hjkl cursor movements). Also the DEC VT-100 terminal has the CTRL left of the A, albeit with Caps Lock in between. No sensible terminal has the control key so far away in the bottom. Even the horrrible DEC LK201 keyboard (which has ESC in a stupid place) has CTRL on the same row as the A. Of course this is less relevant for on-screen keyboards. |
@Rhialto - Your politeness is appreciated as you reminisce about old times, but this is 2016. You cannot refer to ancient technology to justify the destruction of documents by what amounts to a dangerous design flaw in an otherwise beautiful smart phone app. |
I don't suppose your 2016 app supports Ctrl-Z for Undo... To weigh in on the matter, though, I typically use swipe keyboards for text input in whatever language I happen to be typing; I only use the hacker keyboard when I need special functions not available on those keyboards, Ctrl-V in particular (it's often easier to switch keyboards than get the clipboard menu to appear). |
@Cilencia Just FYI, Ctrl+Z is an app function, not a keyboard function, &, as such, works perfectly via HK when the underlying app supports it. |
That was sort of my point. |
@Cilencia - I did talk about the failure of Ctrl-z in my original post. Let me give you more detail on that. Google Keep (100 million downloads) The problem is similar across these apps and the story goes something like this. A simple Ctrl-a mistake while rapidly typing will destroy the document. In many cases, the destroyed document is instantly sync'd to the app's cloud. Turning off the app's auto-sync is not an option in many cases. Universally, pressing Ctrl-z numerous times in panic or while calm does not recover the document in any of these apps. So yes, apps still suck in 2016, but especially when used with the Hacker's Keyboard or any other virtual keyboard with "Ctrl" next to the "a". Let's not fix thousands of broken apps. Let's just fix the Hacker's Keyboard. |
While I heartily agree with you, I am not particularly optimistic for forthcoming updates to Hackers Keyboard, as Google Play lists it's last update as Dec 2013. It appears Mr. Weidner was working on a way for users to create custom keyboards, but has moved his focus to other projects. |
@DavidPesta Given that @Cilencia is probably correct about @klausw, & given that this code is under a Apache-compatible license, why don't you fork & fix it yourself, rather than unproductively griping? @klausw has done a vast amount of work (when he wanted to) toward a free software, building an amazing framework. If you do as much & contribute back, you'll have solved a problem for many. 👏 |
@TPS - Because:
Any other questions? |
@TPS - I have a question of my own for you. I haven't changed my purpose in this thread. My tone has also been more or less consistent from the beginning. After my first post you responded to me in complementary fashion with this: "If you can believe it, this has already been filed many years ago...I really appreciate the re-filed issue, though, as this is 1 of my pet peeves, also!" But then I posted a few more times with the same purpose in a similar tone to offer a reasonable defense (that others like Cilencia ended up agreeing with) and you send me this: "why don't you fork & fix it yourself, rather than unproductively griping?" What caused you to change your mind so dramatically about my purpose with this thread? Why was simply "filing the issue" commendable to you several months ago, and no longer acceptable? Anyway, you did join my gripe by saying, "this is 1 of my pet peeves, also!" Therefore I'll be cooperative in my answer to your challenge: Why don't we both work together to figure out a way to get this fixed? Thank you for recruiting yourself to help me. I'll start slowly looking at the source code and map out some ideas about where and what might be easily done to hack our keyboard to do something that helps. Pun intended I guess. I have no idea how long this will take us, but here it goes. |
I just skimmed over the comments so for give me if I'm repeating what someone else said. This keyboard has the CONTROL KEY. Use CNTL Z (duh) UNDO last. |
@meMongo - Ctrl-z doesn't work. Don't just skim the comments. Read them. |
Yes, that's been mentioned a few times; it doesn't work in some apps because it is an app function, not a system function, and not universally supported. Please feel free to read over the whole thread for further context. |
DavidPesta, any progress? Where were you stumped during your source editing? Did you start a new thread for your custom apk file? Are you emailing them to requesties? I've made changes to my "smart keyboard pro", having skinned it and tinkered with button alignment before, but I'm not an android programer yet. Basicly a script kiddy in the android scene. But I understand a little. Please publish your resarch progress here or in a new thread so we all can work together to forward this feature-fix into a dl'able state. |
@ThumpieBunnyEve - It's only been several days. I haven't had any time to put into it yet. I promised to start slowly looking into it, not quickly. :) How about you and @TPS ? Anything yet? I'll start posting in this thread as I get moments to look at it. |
I had another document blow up on my recently. This serves as a good reminder to keep coming back here and fiddle with it some more. Someday we'll get this fixed. |
I cant recall if it was here or in another thread, but i read something about some experimental option some where you can tic- mark that will allow the control key to be in the bottom corner? it might have been early in this thread... not sure. but are you or anyone else here familiar with an option like that? |
Add an option to configure "Ctrl-A" behavior to work around accidental text deletion when doing an unintended "select all" while typing. New default is to ignore Ctrl-A, and require use of Ctrl-Alt-A instead to do a "select all". Pressing Ctrl-A shows a toast message indicating this. The other available settings are to ignore Ctrl-A completely (with no toast message), or to enable Ctrl-A normally with no behavior override. See issue #487.
Proposed fix in v1.39.0, I've just uploaded that to the alpha channel.
Use this link to opt-in to the alpha version: https://play.google.com/apps/testing/org.pocketworkstation.pckeyboard It may take a few hours for the new version to propagate. Check your version at the bottom of the keyboard's settings menu. |
Still using it, still loving it. actually set a ctrl-Alt-A function on my PC to match yours, Not everything in windows (games mostly) knows how to select all, so i put a macro on my keyboard to that setup to mimic yours. Also super glad the warning for ctrl A does not pop up in the way awaiting an "ok" dialog. Wee! |
I just installed your keyboard yesterday and just killed my second document 10 minutes ago. That is why I am here. The ctrl-A kill-all is an absolute disaster and I was astonished to find this long running thread about it with no fix!? The last comment was a month ago! Wtf is wrong with you? This is not a difficult fix. The only possible reason you haven't fixed it is because you always personally use a landscape tablet and so you haven't nuked entire documents like everybody else who uses this app. You clearly have no interest in effectively fixing this. You should at least put a big warning on the play store that says "anyone who uses anything other than emacs on a command line terminal cannot use this keyboard" or change the name to "Doc destroying time bomb keyboard" The fix is to have the default mapping ctrl-A to something else. Then insert a switch in the settings to map it back to ctrl-A. It is far worse for users to nuke multiple documents and then realize they have to switch it off than it is for users needing ctrl-A to wonder why it isn't working and then realize after a short search that it needs to be mapped back. |
@5uperstring - Please read this entire discussion before jumping to conclusions about the developer. It has been fixed and it is pending a push to full release, but you can enjoy the fix today by subscribing to the test version. I'd give you the link, but I want you to read the discussion. We need to give the developer a lot of credit for sacrificing his time to provide the community with excellent software that he still chose to support for our benefit even after he has moved on. He did not have to fix this for us; we could have taken on the pain of figuring it out ourselves. So, while I can personally relate to the emotional pain of your loss (I expressed my own crankiness earlier), the anger here is very much misplaced. We need to be giving the developer our gratitude for bringing us this excellent keyboard, and even more gratitude for fixing it for us. Again, please read the whole discussion and then subscribe to the fix. |
Why would I give the developer credit! His app is broken. It is his app and he is fixing it for himself not us. This thread is almost a year old and the release I installed yesterday killed two documents. The developer is getting no smiles and back pats from me. If you are saying that the only way to get a non-lethal version of this app is to subscribe to some github fix then he should put a warning on his play page to prevent countless documents from being nuked. If he doesn't fix it he will be reported and taken off the play store. |
@5uperstring So, you came here POed & let off steam by having a infantile tantrum which abuses @klausw. Congrats! You earned my personal ban-hammer & probably GitHub's. You certainly must be a treat IRL. Since you obviously will NOT read the previous details in "[t]his thread [that']s almost a year old" before firing off 2 idiotic posts, I shan't bother honoring you with a solution. Sayanara & good luck with your future GitHub adventures after I report you. @klausw Notwithstanding this rant, for those of us silent faithful who have kept using your last release over the years, could the latest ß be promoted to release? TIA! 🙇 |
Give me a break TPS. Glad you are having a group hug over here while his app is harming users. You don't get banned for pointing out that somebody is distributing malware. Sorry. However, you do get banned from the play store for distributing harmful software. The current software on the play store is harmful. Period. It does not matter that you have spent a year trying to fix it. It should be taken down until you are ready to post the non-harmful version. |
@5uperstring - As happy as I am with the developer right now, I can sympathize with your pain and I understand your point. On the one hand, this is a volunteer project and the developer does not owe anybody anything. On the other hand, until the fix is pushed to production, the bug remains something that can hurt new people who do not expect this to happen. But putting everything into perspective, the developer did recognize this problem and did/is fixing it, so there isn't anything productive to complain about here anymore. @TPS - Relax. This bug may have cost this fellow more than you think. It takes time to emotionally recover from the shock of this. It did for me, but I came around. |
Thank you David. The app did cost me a lot of time. It is no doubt that I am not alone. Everyone wants a full keyboard (especially with old Sparc Station Ctrl key placement! don't move that!) however, it should not be allowed to continue to harm users until the fixed version is ready. If the developer doesn't feel like fixing it then it should be taken down. (or let me post my fixed version on the play store) |
@ALL: @5uperstring has been reported for violating the above-linked abuse policy. Keep it civil & humane! Also, it occurs to me the original posts in this issue seem to set the same kind of tone as what we all just experienced (&, indeed, come mighty close to violating that abuse policy, had it existed then). I'm going to go back & tone down my rhetoric whenever it's over-the-top. I invite/welcome my fellow co-participants to do the same. |
TPS is the only one calling people names here. I did not call anyone any names. I pointed out facts and the potential consequences of his harmful software. I have developed numerous apps, distributed to people for free, with no ads and no profit for me. However, even so (!) if I ever found out that one of my apps was doing this exact same thing to users I would immediately take it down until I could upload a non-harmful version and I certainly wouldn't expect some sort of profuse thanks from users for fixing it. |
@TPS - Given the severity of the bug and the amount of damage that it has caused people, I do not think your reaction to people's emotions is rational. 5uperstring's words may have been abusive, but I understand his pain. We need to give him a break, give him a chance to cool down and apologize, as I have done. I am not going to justify his words, but I do not believe you are being fair to him by not recognizing his side of the issue. 5uperstring also reserves the right to report the app to the Google Play Store as malware, which would be equally irrational at this juncture. It is my hope that 5uperstring responds with more maturity by not doing so. TPS, I think you are the one escalating the trouble here. Relax and give this fellow a chance to cool down. |
Sorry, folks, I'm little sensitive about abuse of @klausw specifically because of his detailed response re: his reaction last time which @5uperstring did, in fact, completely ignore. However, @5uperstring, you're correct about the name-calling. I'll use this amazing app to edit out. |
I won't be apologizing to the developer. As we sit here and discuss the issue, documents are being destroyed. If you don't consider that malware then I am not sure how you are categorizing things. |
@5uperstring The fixed version has already been posted to GPlay, & this same issue tells you how to access it. |
@TPS - I love the developer of this app. But we cannot expect people to install the app and somehow know that they need to come to this discussion to apply the fixed test version to keep their documents from being destroyed. They're only going to know its a problem after its too late. We risk having more irate people coming here to demand answers. There's also no telling how many angry people there are who don't know about GitHub and never make it into this discussion. I want this to continue to be a successful app, not one that risks being reported as malware by someone like 5uperstring. It would be super cool if this fix could be pushed over to the production "default installed" version ASAP so that we can put an end to this discussion. What's the holdup? Yes, I am a happy camper because it is fixed on my phone, but this really is an urgent hotfix for the community at large. Again, I am a happy camper. But I would love this to finally make it into production. |
@DavidPesta Where I'm irritated is that @5uperstring did indeed spend the time to find this discussion, ignored all of it (except maybe the title — maybe that could be edited to mention "fixed in ß" or some such), & did a drive-by [something] without getting the solution that's right here! Why bother? |
I didn't ignore the discussion. I know exactly what you guys are doing and have done. I don't like your particular solution but that is just personal preference. However, it is very easy to put two different apps on google play. One for emacs users and one for the rest of us. ;) |
Sheesh. Sorry @5uperstring and others who were affected by lost documents. I've now promoted 1.39.1 to production, Play Store should start pushing it out within the next day or so. I didn't get a chance earlier to sanity check it for crash reports or other potential issues, but so far I haven't seen problem reports for the alpha. As a side note, if you're working on complex documents, I would strongly recommend using an editor that supports undo or preferably automatic snapshots to avoid lost work. There's more threats to your document than just malfunctioning keyboards by unhelpful developers, including application crashes, loss of network connectivity, and hardware failure. But that's a separate topic. |
Closing, 1.39.1 is now set as live on Play Store. It may take a day or so until your device sees the update. |
Got the new version. Love it! You win. ... I apologize. |
+1 ;) |
Huge thanks for this update. Android tablet is my main dev system, so this will help tremendously. |
EDIT: Ctrl-z doesn't work! Please read things closely before commenting!
You must move the position of the Ctrl key to be more distant from the A key. At least once a week, my finger hits between the Ctrl and the A and selects all of the text in my document for my next rapid keystroke to clear and destroy the entire document. Sadly, following up with Ctrl-z does not bring it back. (Edit: Emphasis added.) This makes the Hacker's Keyboard useless for all applications that do not keep an archive of my work because my documents keep being destroyed like weapon factories in Europe during WW2.
One possibility is to swap the position of the Ctrl key and the Esc key, or at least provide us with that option. The keyboard is just not reliable for most purposes when you risk losing your documents.
I considered a Ctrl-A select-all failsafe, but that won't work if the failsafe message is positioned over the keyboard in any way because your next keystroke might be positioned right under the OK button that pops up, and with a fully selected document might come another keystroke that destroys it all. You would have to make sure the failsafe message appears above the keyboard where that couldn't happen.
If you don't swap the keys and the failsafe idea is no good, you should at least give us the option to turn off the Ctrl-A select-all functionality altogether.
There might be other ideas. But this absolutely must be solved. It is a critical shortcoming with an otherwise marvelous keyboard.
EDIT: Ctrl-z doesn't work! Please read things closely before commenting!
The text was updated successfully, but these errors were encountered: