Commit Graph

275 Commits (3a73b37b30d922ea742dc69d676d66c1e8101140)

Author SHA1 Message Date
Tadashi G. Takaoka 7dc60f9db7 Add getters and copy constructor to Key class
Change-Id: I78eb96dcc26378926dc63acbfeb4828cbd44435d
2013-08-15 20:12:46 +09:00
Tadashi G. Takaoka 15c42454c0 Remove orientation member from KeyboardId
Change-Id: I2c16134a24088dbc30b74ae7c5bc578a9d84a960
2013-08-07 16:32:54 +09:00
Tadashi G. Takaoka c0a732f032 Remove CODE_RESEARCH
Instead of CODE_RESEARCH, special outputText ".research." is used to
invoke a research feedback dialog.

Change-Id: Ic95c956ab4f2b5f0c3f2205c9bbcdcfb67db5d6e
2013-08-05 19:05:07 +09:00
Tadashi G. Takaoka 54dd1bed52 Clean up ResearchLogger log method
Change-Id: I06c30aab462ce5b17157ff71d5d76f9755178080
2013-08-01 18:25:34 +09:00
Jean Chalard 93445b4821 Fix some warnings
Change-Id: I7290cd1fb675a1b85b9b6ac2d464c932b5bca1dd
2013-07-31 16:17:01 +09:00
Kurt Partridge 8bfd57820f Merge "Do not output string-encoded MotionEvent." 2013-07-15 17:36:56 +00:00
Tadashi G. Takaoka 72c2feb573 Use TimeUnit instead of DateUtils for readability
Bug: 9550800
Change-Id: I087205530a5dbcff4bf08f48f4aa7068aae93215
2013-07-05 17:57:01 +09:00
Kurt Partridge 6d7c647470 Do not output string-encoded MotionEvent.
JsonUtils knows how to output MotionEvents into json; that mechanism
should be reused for SuddenJumpingTouchEventHandler.

Change-Id: Id4c36c05533a3a329bf43ba33d57c0830dc4d196
2013-07-03 10:13:59 -07:00
Jean Chalard 675bcf191c Move Range out of RichInputConnection and rename it.
Range has grown a bit too big to stay an internal class.

Change-Id: Ic3fbc48a5d10776eedd7559c4d696e5926b88288
2013-07-01 15:41:13 +09:00
Kurt Partridge 8142a7b637 Merge "Record number of words entered" 2013-06-28 17:01:18 +00:00
Kurt Partridge 169571b3c0 Record number of words entered
This change records the number of words entered in every LogUnit.
This metric is helpful for determining how much multi-word gestures
and spaceless tapping is used.

Change-Id: I4c6d0f9d78e4ac2dd63fd53ed2ec70b368366f15
2013-06-27 12:30:00 -07:00
Jean Chalard e04794cbbe Fix some warnings
Mostly remove unused imports

Change-Id: If8ceffdfad79b78194094527759f5c334746973e
2013-06-27 21:36:52 +09:00
Kurt Partridge 1fc6b80009 Merge "Move splash screen to separate file" 2013-06-24 13:40:01 +00:00
Ken Wakasa e28eba5074 Move util classes to the latin/utils directory
Change-Id: I1c5b27c8edf231680edb8d96f63b9d04cfc6a6fa
2013-06-24 17:04:40 +09:00
Kurt Partridge 1a0750dc95 Move splash screen to separate file
Change-Id: I5cad5d5814303d7ca4abadd3fca1c37bd1bc357e
2013-06-22 10:24:13 -07:00
Kurt Partridge fc98325c61 Log score, kind, and sourceDict for manual suggestion and gesture
b/9422713

Change-Id: I4880fad6a5b10d09ca11b63311f14862bee724e5
2013-06-13 11:03:49 -07:00
Kurt Partridge 14dd52b8c0 Merge "Adjust settings for development-only versions" 2013-06-12 16:50:55 +00:00
Kurt Partridge 2a1a463e2e Adjust settings for development-only versions
Change-Id: I4f08632d97f182d312edc82bda3c3897a71099ad
2013-06-12 02:01:45 -07:00
Kurt Partridge 19ba5e67af Fix ResearchLogger feedback bug
If the logger feedback screen is up and the user hits the home button or the
keyboard otherwise closes, the system won't let the user enter feedback again,
because it is waiting for the user to finish the first one.

With this change, the state associated with the feedback screen is
cleared when the user closes the keyboard.

b/9398772

Change-Id: I832a82793ad42e31b6b3fdb04fabcea75facde7d
2013-06-12 00:37:46 -07:00
Kurt Partridge 5fc9d6cc04 Avoid an NPE
Change-Id: I174eb8e92820fe6e7f8d3b89afae12d94063ef5d
2013-06-03 19:30:57 -07:00
Kurt Partridge 763fd9d5e9 Merge "Fix revert of committed words" 2013-06-03 13:03:26 +00:00
Kurt Partridge c4119c8063 Merge "Uncommit an extra LogUnit" 2013-06-03 05:38:43 +00:00
Kurt Partridge a2f3f17de6 Merge "Compare scrubbed strings when uncommitting LogUnits" 2013-06-03 03:03:58 +00:00
Kurt Partridge 743302888b Merge "Uncommit separator LogUnits" 2013-06-03 03:01:23 +00:00
Kurt Partridge 94ef54321e Fix revert of committed words
Now that separators are put into their own LogUnits, they must be handled
when going through a revert.

Bug: 9088919

Change-Id: Ibebd0752bb2fa38d74ac96001d63070dd419cee3
2013-06-02 19:22:35 -07:00
Kurt Partridge f07024e0fa Compare scrubbed strings when uncommitting LogUnits
A LogUnit is only uncommitted if the LogUnit's word matches what is
expected.  But a LogUnit never stores numbers, only scrubbed words that
replace numbers with a special character.  So when uncommitting, the
text from the TextView must also be scrubbed for the comparison to pass
correctly.

Bug: 9088919

Change-Id: I9b56f10afce6d0cc84eb9ead3b9a9b1e061ae39c
2013-06-02 19:17:31 -07:00
Kurt Partridge bdff287a0d Uncommit separator LogUnits
Now that separators have their own LogUnits, they must be uncommitted
from the LogBuffer when backspacing over them.

Bug: 9088919

Change-Id: Ib36cc94939b93abe18850a06bced17caf8aaa5b9
2013-06-02 19:15:57 -07:00
Kurt Partridge 8160a21c3a Uncommit an extra LogUnit
The period-generating double-space adds an extra LogUnit --
it must be removed when reverting.

Bug: 9088919

Change-Id: Ic148f40b4030a9b4a0651029bda87f7b94a52252
2013-06-02 00:02:38 -07:00
Kurt Partridge 720840851d Uncommit LogUnits when reverting textInput
Bug: 9088919

Change-Id: I17187aa0afc1c3e9d32269c65f66cfb3a08663cb
2013-06-01 23:42:35 -07:00
Kurt Partridge 305509ed2f Merge "Remove unused method" 2013-05-29 01:36:27 +00:00
Kurt Partridge b536e2ace5 Remove unused method
The removed method was used in old versions of ALK, never in master.

Change-Id: I607009d4fcca7c7c8493fee51ecd923e6a6b3890
2013-05-28 16:51:19 -07:00
Kurt Partridge 315ab98007 Rename containsCorrection to containsUserDeletions
This change renames containsCorrection to avoid confusion with
CorrectionInfo, and to better clarify its meaning.

Change-Id: I5d8f8e2b03133c15a60d4e8b0f395cda1fff5447
2013-05-28 09:43:04 -07:00
Kurt Partridge aaa23bc12c Log reasons for punting n-gram logging
Addresses b/9074239

Change-Id: I91a3bfcbd32b03e4891ff5f65be01383a3fb8975
2013-05-23 13:56:36 -07:00
Kurt Partridge 5fdea4775e Merge "Always record word boundaries" 2013-05-22 03:04:35 +00:00
Kurt Partridge 450d78b030 Always record word boundaries
Word boundaries are currently logged, but only if all the
details of a word pass the privacy filter and are logged.

This change records when a word is committed in all cases,
but does not disclose the word contents or any data used in
its construction.

Addresses b/9070768

Change-Id: I573679d0685c088aca65af99e46337a2f429f816
2013-05-21 16:08:54 -07:00
Kurt Partridge 74a6196c6b Modify isAllowedToLog
Currently isAllowedToLog only checks the state of the
ResearchLogger, and does not consider which log the data is
going to.  This causes problems with the logs for Feedback.
The Feedback log should inhibit normal logging procedures,
but the system needs to be able to write specific data
directly to it.

This change renames to isAllowedToLogTo and adds the
destination ResearchLog as a parameter.  A FeedbackLog is also
added as a new class so it can be distinguished from other
ResearchLogs.

Change-Id: I5a1eea05bb040c26bf816b89179f44b3024fa2ad
2013-05-21 14:09:04 -07:00
Kurt Partridge 500dea6ad4 Fix punctuation logging
Punctuation is currently put into the same LogUnit as the
following word.  This is counter-intuitive and makes
post-processing more complicated.

This change causes punctuation to be put into its own
LogUnit.

A tricky case is the phantom space.  A phantom space is
inserted right before other text, whose MotionEvents have
already been collected and inserted into mCurrentLogBuffer.
Phantom spaces are handled by creating their own LogUnit and
inserting it into the LogBuffer right before
mCurrentLogBuffer is shifted in.

Change-Id: I102d7cd93982ad37ba0abb6c1ac0f66b85b5f95d
2013-05-17 09:47:40 -07:00
Kurt Partridge 17b63ba588 Merge "Remove unnecessary commit/uncommit" 2013-05-15 23:52:43 +00:00
Kurt Partridge 7af5300c7d Merge "Add claifying comment" 2013-05-15 23:31:31 +00:00
Kurt Partridge 993acbaaa2 Remove unnecessary commit/uncommit
When the user reverts a commit, this causes the committed
word to be changed. The user usually then goes back to edit
that word.  Going back to edit causes an uncommit, so that
the editing actions are added onto the LogUnit containing
the operations used to construct the word.

But currently, reverting also involves its own
commit/uncommit pair, with the caller performing the
uncommit, and the commit happening inside the revert
command.  This may have been necessary in the past, when
revert was called in different situations, but is
unnecessary now.  Furthermore, the guarding conditions are
currently such that the uncommit doesn't always undo the
effects of the commit, corrupting the log output.

Change-Id: I74af41f4f1db2fcabfa496dcc4a2d7bd0af19b3a
2013-05-14 12:20:27 -07:00
Kurt Partridge 7b0a148951 Merge "Rename a var to match semantics" 2013-05-14 16:11:07 +00:00
Kurt Partridge 3e8df13cd7 Add claifying comment
This is a follow-up to I7c01c3dd3ac33d7e96c00836256bae9c14b124ed

Change-Id: I9e3f8968c4bbf9525d5dfe101f71373c42f88361
2013-05-14 09:10:22 -07:00
Kurt Partridge 6fefc142cf Remove FeedbackLog instance variables.
For a while, the ResearchLogger supported comprehensive recording of the
last few words in case the user wished to upload this data to give
developers feedback.  However, this mechanism was not implemented well
(keeping a separate copy of the data), did not make the collected data
clear to the user, and was not working properly in the latest build (NPEs).
The mechanism in fact was deprecated in favor of the "userRecording"
mechanism in which the user explicitly turned on comprehensive recording,
demonstrated the issue they were experiencing, and then turned it off.

This change removes the vestiges of the FeedbackLogging mechanism.
A feedback log is still used to hold the user's message, but it is created
in a local variable as-needed, and not persisted in ResearchLogger.

Change-Id: I6a09d0ed36e1eddb6e57895e7428d22107f75f49
2013-05-13 20:37:15 -07:00
Kurt Partridge b5c39f4531 Rename a var to match semantics
The IS_INHIBITING_AUTO_UPLOAD flag is tested in isPossibleToUpload, so it inhibits all uploads, not
just automatic ones.  Renaming to IS_INHIBITING_UPLOAD.

Change-Id: Iceed79260d4b062147f40c09f0c5bb06b2519b1b
2013-05-13 17:01:39 -07:00
Kurt Partridge 7d72ca0b20 Avoid JsonWriter multi-write error
JsonWriter requires that its clients pass it only a single top-level object.
The existing implementation tries to make code cleaner by having mJsonWriter
never be null, and instead use a global static "NULL_JSON_WRITER" that just
discards data.  But because JsonWriter complains if more than one top-level
object is passed, making this a global object does not work.  This change
instead copes with mJsonWriter being null.

Change-Id: Ia37ccfc8646e91f11a64713dd92d2846eb86ac54
2013-05-10 18:21:08 -07:00
Kurt Partridge 260df84197 Merge "Remove unused code" 2013-05-10 22:12:11 +00:00
Kurt Partridge bb17034f64 Merge "Remove ref to LatinImeLogger preference." 2013-05-10 20:41:52 +00:00
Kurt Partridge 4135c2db7b Merge "Avoid NPE by fixing ResearchLogger initialization" 2013-05-10 15:48:04 +00:00
Kurt Partridge a68cace7d1 Avoid NPE by fixing ResearchLogger initialization
Previously, mMainResearchLog and mMainLogBuffer were set up
when the user moved to a new TextView, and set to null when
the user left the TextView.  This change causes
mMainResearchLog, mMainLogBuffer, mFeedbackLog, and
mFeedbackLogBuffer to be non-null forever after init() is
called.  start() no longer sets up these fields; instead
they are cleared and reset every time stop() is called.
Checks for null values are now removed.

The earlier code just didn't initialize these variables if
the user disabled logging, but since the new version
invariantly keeps these variables valid, we add a check for
whether the user has enabled logging in publishLogUnits().

Change-Id: Ifde3517f1cf924cfa33cda95fec24529b52b3c08
2013-05-09 18:38:32 -07:00
Kurt Partridge 011634163c Remove unused code
Change-Id: I192c67e9e8de44f073abc70ec85ebcdb36356c2e
2013-05-09 14:36:40 -07:00