The flickering was caused by trying to scroll to the cursor position
while the view was in an inconsistent state (text updated to change the
number of lines, but layout not done yet). This patch defers the actual
setting of the cursor until layout is done, when layout is pending.
Change-Id: I8ed3a402beb8058ac7a7f3935afeb946a23308ab
Some View.post*() methods can be invoked from arbitrary thread
independently of whether the View is attached to a window.
Change-Id: I587b5909ab8b06665978d001548d56c8c22043c1
- do correct resolution and reset propagation for all RTL properties (padding and drawables included)
- fix CheckedTextView padding too
Change-Id: Ie603683a2324b2a6ef2c03633d01d5726c883b90
With FileInputStream, using assumption of bytes read (as
returned by read function) not matching buffer size as EOF is
not correct, we hit this when reading from /proc in some cases.
BufferedInputStream's behavior matches that assumption due to
its implementation.
Bug: 7342759
Change-Id: Ibb06dbe1fbe33f6f880524f7555ff5542889ea50
Previously we were adding and removing the APIs on window attach and
detach, but a page's life cycle is not related to attach/detach. This
patch also ensures that ChromeVox is not null before calling. Includes
formatting fixes and extra comments in the waitForResultTimedLocked
method to improve readability. Fixes parsing of integer resultId, which
was being parsed using Long.
Bug: 7328348
Change-Id: I6b81a8e4d8209f8e99419da9b8250abe57e25048
Calls to performAction will immediately return false if ChromeVox is not
loaded. Also adds additional debugging output.
Bug: 7328657
Change-Id: I5bd7c69ccc9500cebaa4a8c1bf023794f4eebe2e
Fixes a black flash that occurred when the device was docked
because the UiModeManagerService was launching the Somnambulator
to start the dream when docked. This caused an unnecessary
activity transition and could in fact make dreaming less
reliable than if the UiModeManagerService started the dream itself.
Moved common code from UiModeManagerService and Somnambulator
to Sandman to ensure it is kept in sync.
Bug: 7328545
Change-Id: I46102784e2ab1acc0241d43a48abf0581278af24
Reducing the amount of time that WebView will wait before treating
a navigation attempt as failed. This is needed to recover from
cases where the user is attempting to linearly navigate a WebView
that is immediately switched out right as it starts to read.
A good example of this problem is AdMob's WebViews which are
continuously being swapped.
Change-Id: Ib9b4a9b99a35d42920e34e0acbe8ab45e1d47871
This reverts commit b49e4d63d1976b673b4763bc012d152833609688.
This produced problems with app compatibility. The boolean array
introduced in this patch is never resized and can cause applications
expecting different behavior to crash with index out of bounds
exceptions.
This looks like a good path but it will need to be revisted later.
Bug 7221618
Some refactoring in Sync Manager caused mUserManager to be initialized too late.
Make sure this is initialized in the constructor now.
Bug: 7328386
Change-Id: Ic67915e172c3b8ef368852147667287e38c0213b
On some devices, vsync is delivered from the kernel to userspace
over a netlink socket via UEvent. The result is that a thread wakes
up, reads a message, creates a new String then searches it for matches
against a pattern on every single frame.
Reduce the overhead by performing the initial pattern matching in
native code.
Bug: 7326329
Change-Id: Icb22db1c38330694207bec1153840e0c06f502d6
1. Since the content description is generated dynamically we need to notify
clients when it changes so they can drop cached state to get the most
recent content. This really is used by the caching we do to optimize
the window query APIs. Otherwise, the user does not see the current
content.
bug:7327556
Change-Id: I9be46508e86864566e027c64565eb1d787ec9363
The action to launch the developer settings panel is now required
by the platform.
Add a new hidden API to LauncherActivity so I can better integrate
these into the existing Dev Tools app.
Change-Id: I9c082622fd4c8f4a5be51cabb664741a3782ece1