Merged in http://review.cyanogenmod.com/#change,14109
Fixing a bug that when an app is dismissed or loaded that changes
the current active audio stream, if the volume overlay is visible during the swap,
if you adjust the volume (with hard keys) after the stream has changed while
the panel is still visible, the wrong panel (view) is still visible on-top of the
one that is being adjusted.
A good way to replicate this is to
Open the Phone APP
Go to the Keypad Screen
Adjust the volume (not the icon on the overlay)
While the volume is visible Hit the HOME hard key
Before the volume dissapears, adjust the volume with hard keys
You will hear and feel the volume adjusting, but the overlay will not update.
Change-Id: Ied50ed83b153234cff82c282e3fd76ed671b420b
The android:enabled was never deprecated and replaced by
android:state_enabled as it was mentioned in the documentation.
The attribute android:enabled when applied to a TextView (or its
descendants) still works until now. In fact that's the way to
disable widgets from layout XMLs.
The deprecation made ADT and lint suggest users not to use this
attribute.
Change-Id: I5e7d7060d9e79a04342ebc723d7937b9bc12a018
Signed-off-by: Yuku on yuku4 <yukuku@gmail.com>
Doing this to accomodate some really long warning text in a
checkbox widget. Needs 5 lines for English. Probably a lot
more for German, etc., so increasing it to 10 lines.
Please don't abuse that. 4 lines is still a reasonable max.
Change-Id: Ife5858f2165cb2bc046ce606f29d31010d26ecc2
Watches for package changes so it can dynamically adjust
to reflect the actual list of available activities.
Change-Id: I3a2fef3dac4d13d1b2a7ed6fc117a7b814679669
Commit for issue at
http://code.google.com/p/android/issues/detail?id=25916&colspec=ID%20Type%20Status%20Owner%20Summary%20Stars&start=100
[Problem]
Dropdown popup of Spinner become wider than device's width if selected
item's content's width is larger than device's screen.
[Cause]
Spinner just display dropdown popup with measured content's width
although measured content's width is wider than device's screen.
[Solution]
If calculated content's width is wider than device's screen, set width
of spinner's dropdown popup to fit on device.
Change-Id: I3276e5ff745c6ba1437c07fc55645d6b53fef89a
Signed-off-by: SeongJae Park <sj38.park@gmail.com>
1. The NumberPicker was showing the IME if the input field
gets focus and hiding it when the the arrows are pressed.
The leads to a nasty behavior when the input is the first
focusable and the uses presser an arrow button. In such
a case the IME shows and hides on every arrow press pushing
the window content up and down - this looks pretty ugly.
Now the IME is show on double tap of the input field.
2. The NumberPicker input now by default has an IME action
done, hence after editing it the IME goes away.
3. The NumberPicker input now clears focus when it gets
IME action done, so the last picker in a sequence
does not show selection which is focus driven.
4. NumberPicker was incorrectly detecting double tap to
begin edit and it was possble to start edit on singe tap
if the user has double tapped before to start an edit.
Now double tap detection is using the double tap timeout
correctly.
bug:6071977
Change-Id: I0ff5a491064e51663b3abec675d839d0a65b986a
My previous change to speed up the time the IME is dismissed was
fundamentally flawed. That change basically switched the order
the application called the input method manager service from doing
startInput() and then windowGainedFocus(), to first windowGainedFocus()
and then startInput().
The problem is that the service relies on startInput() being done
first, since this is the mechanism to set up the new input focus,
and windowGainedFocus() is just updating the IME visibility state
after that is done. However, by doing the startInput() first, that
means in the case where we are going to hide the IME we must first
wait for the IME to re-initialize editing on whatever input has
focus in the new window.
To address this, the change here tries to find a half-way point
between the two. We now do startInput() after windowGainedFocus()
only when this will result in the window being hidden.
It is not as easy as that, though, because these are calls on to
the system service from the application. So being able to do that
meant a fair amount of re-arranging of this part of the protocol
with the service. Now windowGainedFocus() is called with all of
the information also needed for startInput(), and takes care of
performing both operations. The client-side code is correspondingly
rearranged so that the guts of it where startInput() is called can
instead call the windowGainedFocus() entry if appropriate.
So... in theory this is safer than the previous change, since it
should not be impacting the behavior as much. In practice, however,
we are touching and re-arranging a lot more code, and "should" is
not a promise.
Change-Id: Icb58bef75ef4bf9979f3e2ba88cea20db2e2c3fb