Giter Club home page Giter Club logo

dotterel's People

Contributors

nimble0 avatar poussinou avatar user202729 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

dotterel's Issues

Inconsistent behavior with Plover with gluing numbers

In Plover, translation entries like 123 are interpreted as {&123}, while in Dotterel, it isn't.

This is not really a bug (the user can explicitly glue the numbers), but the difference should be documented somewhere?

Resetting dictionaries does not clear the selection

If you have an additional dictionary that you added selected and then you press the "reset" button, the additional dictionaries will be cleared from the view but the header will still say that you have one dictionary selected. Selecting the default dictionaries increments the number at this point until you press the back arrow to return things to normal by getting out of the selection "state".

Possible touch interface improvements

This is for changes to the current touch interfaces or new touch interfaces that might be easier use.

Slider to adjust aspect ratio.

Swiping out of key area applies stroke, swiping between keys only activates the keys.

Dotterel on Samsung tablet with Ergodox-EZ

Plover on a PC shows a GUI which has buttons "enable" and "disable", and an option to configure it etc. On Dotterel on Samsung Galaxy Tab S4 I have not been able to find any facility to enable or disable the interface. I was able to get the on-screen keyboard to work on one occasion, but I have not been able to get Dotterel to work with a physical keyboard (Ergodox-EZ). I can type QWERTY with the physical keyboard, but not steno. Can anyone advise?

Interleaved deletion and insertion order is incorrect in Termux

For example: when I type U/TAOUB, on the second stroke (deletion of 3 characters) and(insertion of "YouTube") is executed, sometimes the insertion is done before the deletion, results in "youYouT".

This occasionally happen on termux, and never happens on other applications as far as I can see.

Related: LibreOffice on Linux (Plover) has the same issue. https://github.com/openstenoproject/plover/issues/1059 avoid linking

Plover has a workaround (currently not merged into master, and might not ever be) to delay between the key presses.

I didn't take a look at the code to see if it's really a problem with the input method (and there's a proper way to do it), or termux-specific bug -- in that case the delay would would be a workaround...

internal dict look up

I have a hard time finding which chords do system fun c shones so it would be nice if I could sear ch inthe app.

Keyboard doesn't work in samsung dex

At last i found a plover keyboard i can use and then i find out i can only use it in the mode i almost never use with my tablet. :(

Any idea why?

Where's the "submit" button?

Other keyboard have a "go" or "submit" button. On Dotterel, R-R does not work (although it does insert a newline for multiline textboxes)

Add publishing to the Play Store or F-Droid for easier user installs?

I can possibly help out with setting up the CI pipeline using TravisCI.org or another service to build and push. The Play Store also has a preview release type that has less visibility while still allowing direct linking so you don't get a flood of useless user reviews when they don't understand how awesome this is.

Dictionary "n/a" in add translation dialog

I'm trying to add a translation, but when I bring up the dialog to add it the dictionary field has "n/a" in it and any translation that I enter I cannot then use. It's as if the translation was not stored.

Dotterel doesn't appear to work in landscape mode

On my S22, when i rotate the screen into landscape mode, dotterel input widget seems to disappear and the phone leaves text entry mode.

Once in landscape mode, attempting to click in a text entry field causes the widget to show up fullscreen briefly before disappearing and leaving text entry mode.

iOS

Is there any way you’d consider transcribing this to iOS? I’d really love to use this on my iPhone

I know you can write cross platform apps using NativeScript & don’t know if I’d be easy to transcribe or what lol

Installed but not loading

I installed the app, and checked off on-screen keyboard and enabled the 3 dictionaries it came with and still nothing showing up

Certificate issue

A scan (see here for details and background) just revealed the APKs at your releases are signed using an expired debug key ("denyAfter 2019-01-01"). As that has security implications, may I ask you to please switch to a proper release key, and provide the corresponding APK signed with it? Thanks in advance!

[Request] Add proper dark mode support.

I think I speak for everyone when I say that the white background is rather unsightly. An option to have it black would be great!

Fantastic work on the app. It's inspired me to learn how to use such an amazing keyboard.

Can Dotterel identify as external keyboard

Hello!

I realized that attempting to use certain programs, such as Discord, results in unexpected behavior when sending Enter. These apps are configured to send SHIFT-ENTER when an on-screen keyboard is used so as to permit a user to enter multi-line text, after which the message is sent via a button on-screen.

Unfortunately, this behaviour is highly disruptive. One can bind R-R to return and R*R to shift-return, but as long as Dotterel presents itself as an on-screen input device, these apps will treat return differently.

Is this something that can be changed, possibly as a toggle within the configs?

Add more space for dictionary name display

I tried adding some dictionaries I have on my phone that are in the default storage location + two folders deep into that (".../Sync/Plover/"), but once I've added two I can't tell which one is which because the names are too long and the rows don't expand / scroll to be able to see them:

screenshot_20180405-201914

Undo bug when undoing newlines

Pressing * key to undo after pressing R-R, R*R, or SKW-BGS deletes all newlines, punctuation, and the previous word. Changing dictionary definition for R-R to "{^\n^}" functions as normal but has no effect on the undo bug.

Very promising! Any glue to connect to the PC?

@nimble0 Thanks for developing this wonderful stuff. Thumbs up!

However, is there a glue that can help connect 'dotterel' running in a tablet be used as an input device to a PC running in the same network (either wired or wireless)? I prefer to use the tablet as second steno input device with plover to a PC running linux. Any hints?

There are two typical apps I came across 1. Remote Droid (https://github.com/omerjerk/RemoteDroid and unmaintained) 2. Remote Keyboard (https://play.google.com/store/apps/details?id=oldplanets.com.wireboard&hl=en_US) which does not allow to use the third party layouts except it's own.

Cheers, and stay safe
/z

3rd party program cannot be used to select dictionary

Currently I'm using CX file explorer.

I'm not entirely sure if this is problem on Android side or the application, but it is definitely not trivial for a typical user to see where the issue is.

Reproduce:

  • Add dictionary.
  • Choose CX file explorer.
  • Add any valid JSON file.

Result: Dotterel crashes.

Possibly-relevant logcat section:

AndroidRuntime: FATAL EXCEPTION: main
AndroidRuntime: Process: nimble.dotterel, PID: 6406
AndroidRuntime: java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=196610, result=-1, data=Intent { dat=content://com.cxinventor.file.explorer.fileprovider/root/storage/emulated/0/dotterel_dict/user_combined.json flg=0x3 }} to activity {nimble.dotterel/nimble.dotterel.DotterelSettings}: java.lang.SecurityException: No persistable permission grants found for UID 10150 and Uri 0 @ content://com.cxinventor.file.explorer.fileprovider/root/storage/emulated/0/dotterel_dict/user_combined.json
AndroidRuntime: 	at android.app.ActivityThread.deliverResults(ActivityThread.java:4547)
AndroidRuntime: 	at android.app.ActivityThread.handleSendResult(ActivityThread.java:4590)
AndroidRuntime: 	at android.app.ActivityThread.-wrap20(ActivityThread.java)
AndroidRuntime: 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1772)
AndroidRuntime: 	at android.os.Handler.dispatchMessage(Handler.java:110)
AndroidRuntime: 	at android.os.Looper.loop(Looper.java:232)
AndroidRuntime: 	at android.app.ActivityThread.main(ActivityThread.java:6806)
AndroidRuntime: 	at java.lang.reflect.Method.invoke(Native Method)
AndroidRuntime: 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1103)
AndroidRuntime: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:964)
AndroidRuntime: Caused by: java.lang.SecurityException: No persistable permission grants found for UID 10150 and Uri 0 @ content://com.cxinventor.file.explorer.fileprovider/root/storage/emulated/0/dotterel_dict/user_combined.json
AndroidRuntime: 	at android.os.Parcel.readException(Parcel.java:1708)
AndroidRuntime: 	at android.os.Parcel.readException(Parcel.java:1661)
AndroidRuntime: 	at android.app.ActivityManagerProxy.takePersistableUriPermission(ActivityManagerNative.java:5155)
AndroidRuntime: 	at android.content.ContentResolver.takePersistableUriPermission(ContentResolver.java:2006)
AndroidRuntime: 	at nimble.dotterel.DictionariesPreferenceFragment.onActivityResult(DictionariesPreference.kt:305)
AndroidRuntime: 	at androidx.fragment.app.FragmentActivity.onActivityResult(FragmentActivity.java:170)
AndroidRuntime: 	at android.app.Activity.dispatchActivityResult(Activity.java:7234)
AndroidRuntime: 	at android.app.ActivityThread.deliverResults(ActivityThread.java:4543)
AndroidRuntime: 	... 9 more

Some key combo does not work on some applications

Key combinations:

  • {#Shift_L(Left)} (considered a {#Left}, should select the character on the left) -- in most applications.
  • {#Control_L(u)} (considered a {#u}) -- only in TeamViewer in remote computer mode.

Hacker's keyboard can send all of these combinations without any problem (and have the expected effect).

Perhaps this is caused by something that the application cannot handle too fast keys sent properly?

Blank screen on disabling "on screen" keyboard without NKRO

Version: 0.3.0-dev.

Reproduce:

  • In "machine settings", turn on both "on screen" and "NKRO".
  • Click at some text box. It works properly.
  • Turn off "on screen".
  • Click at some text box. The whole screen is blanked out.
  • Exit everything, and plug a NKRO keyboard in.
  • The issue no longer happens, and the NKRO keyboard can be used normally.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.