Instead of removing the old notification and inserting the
updated notification afterwards, replace the old notification
in-place.
Change-Id: I88962fd2452de191c1d63c142719194282568dcc
Symptom: ANR report on wrong activity.
Root Cause:
KK changed resume behavior that will not update focus when only resume,
if the activity blocked, it may report ANR on previous focus.
By original concept, it will try to correct the ANR target,
but the stack of waiting(waitingVisible=true) activity may
different with current top stack.
If it gets key dispatch timeout, mResumedActivity and mPausingActivity
of its stack will be null becuase it is not top stack.
Then it is unable to change ANR target to the real no response activity.
Solution:
Use focused stack to get the real culprit.
Reproduce steps:
1.Launch an Activity X from launcher, press home key.
2.Launch X from launcher again, X blocks(sleeps 15sec) in onResume, press back key in the beginning of blocking duration.
3.ANR dialog shows launcher is no response.
Change-Id: I99416ad91e349096f995990f2240a97616fbaf28
If the user has stated a preference about their home app, make sure we
capture that so that a system restore can return them to that preferred
situation. It's built into the system metadata so that we can, if
necessary, fast-path configuration of that home app while the rest of
the restore operation is in flight.
Change-Id: I64dfee8f7a2a9e40f556cd19298d7b367c6aa8dc
I816129d49c0118453222916f3c818eccac33663d merges a new version of
Skia that updates various APIs. Call the new ones.
SkBitmap::copyTo now takes an SkColorType instead of an
SkBitmap::Config, so do the conversion with
SkBitmapConfigToColorType or use the enum when it makes sense.
Call SkImageDecoder::decodeSubset instead of (deprecated)
SkImageDecoder::decodeRegion.
Override SkCanvas::ClipVisitor::clipRRect in ClipCopier.
In Canvas::clip calls, call SkCanvas::isClipEmpty(), which was
previously called inside the clip call, to determine the return value.
For various SkPaint effects, call the new factories (as the constructors
have been made protected).
Implement SkJavaOutputStream::bytesWritten(), overriding a new pure
virtual function on SkWStream.
Update Matrix calls to always return true (since SkMatrix calls no
longer return a value).
Depends on I816129d49c0118453222916f3c818eccac33663d (skia).
Change-Id: I5cdcea827ebff587df0bbddc0965e3e0fbf48002
If you are going to check whether we've failed yet, make sure that
the default state to test against has been established properly.
Bug 13790971
Change-Id: I7fc6ff1bbbd9e569df59dcb65cc30f120c128efa
Previously OSD name was based on device type. This CL makes it
independent of device type. CEC spec says "A device that implements
more than one type of CEC functionality should respond with the same
OSD name for each logical address. It is recommended that the name
refers to the complete physical product rather than the individual
CEC functionality".
Now the default name comes from system build property. I removed
setOsdName() from aidl for now since it won't be in use.
Change-Id: I3c9fb877fad4bc5efef56268d155a3f37a865fc2
Rename the related user concept as profiles.
When returning profiles of a user include the
user as a profile of itself.
Change-Id: Id5d4f29017b7ca6844632ce643f10331ad733e1d
The Zygote class is now in com.android.internal.os. It is
responsible for the vast majority of work before and after
the call to fork(). It calls back into the Runtime via
the new dalvik.system.ZygoteHooks class to allow the Runtime
to perform pre fork cleanup and post fork initialization.
The native code in Zygote.cpp is a direct and straightforward
port of the existing code in art. Most differences are
superficial, for example :
- We use C style logging (ALOGE) instead of stream based
logging.
- We call env->FatalError() instead of using LOG(FATAL)
Change-Id: Ia101fb2af12d23894fe57e4134d2bc6d142e5059
With this CL, the power status of TV/display is keep tracked of
by hdmi cec server part, specfically HdmiCecDevicePlayback.
Turned the HdmiCecDevice to abstract class from which classes of
concrete device type(HdmiCecDevicePlayback, HdmiCecDeviceTV) are
inherited. The display power status code is put in HdmiCecDevicePlayback
only. HdmiCecDeviceTv will have its own logic that manages power status of
devices connected to it. For now it only has a bare minimum code.
Will be worked on in follow up CLs.
Other changes:
- Replaced sendGiveDevicePowerStatus() with isTvOn() so that the status
can be queried by clients.
- Defensively check the availability of HdmiCecService so that
HdmiCecManager.getClient() returns null in case the service couldn't
be initialized. This ensures clients of the service gets the nulled-out
HdmiCecClient when called in the state/configuration where the service
is not available, thus proceed accordingly.
Change-Id: Idaf69e73cfbd639c0b40b1bd4b6146f011246180
Don't blithly go ahead and assume package name arguments are non-null,
and don't continue to do a bunch of work after an early failure on
invalid non-null package names.
Bug 13745101
Change-Id: I12ccae343066b39162dedeb46dc58869f55be0ba