Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Halo 2.0 #1

Open
wants to merge 10,000 commits into
base: jellybean
Choose a base branch
from
Open

Halo 2.0 #1

wants to merge 10,000 commits into from

Conversation

MaxRink
Copy link

@MaxRink MaxRink commented Sep 9, 2013

neo4026 pushed a commit to neo4026/android_frameworks_base-4.2.2- that referenced this pull request Sep 10, 2013
To make pie controls more reliable, it is neccessary to detect
trigger actions directly from the input stream.
This commit introduces a new system service, that filters all
input events in front of the input dispatcher to detect pie activations.

This commit introduces:
* A new system server local API in the input manager service to register
  secondary input filters. These filters are behind the default
  accessibility filter but before the input event dispatching of
  the android framework.
* A new system service, that binds to the new API to listen for pie
  activation gestures.
* A non-public manager class providing access to the newly created pie
  service.

The service manager name of the service is "pieservice". The non-public
AIDL interface of the service is IPieService.aidl. To register a new
pie activation listener the INJECT_INPUT permission is needed. The
service state can be dumped by the "dumpsys pieservice" command.

Note: This commit only introduces the pie service. There is another
commit, that binds the actual pie controls to the pie service.

Patch Set fi01#1:
* The pie service is currently disabled by default and needs to be
  enabled by device overlays (see config.xml / config_allowPieService).

Patch Set fi01#2:
* Activation fixes
* Debug dump improvements

Patch Set #4:
* Added systrace support (TRACE_INPUT_TAG)
* Switch default to enable service on all devices.
* Moved Position to com.internal.android.utils.pie.*
* Some more code rearrangements

Patch Set #5:
* Rebase

Patch Set #6:
* Cover more corner cases on PieInputFilter
* Adjust gesture time out

Patch Set #7:
* Do not send events that are from the past
* Recycle all events

Patch Set #8:
* Handle binder died events in PieService correctly

Patch Set #10:
* Simplified locking
* SYSTEM_UI_FLAG_HIDE_NAVIGATION support
* Fixed ADW Lauchner bug

Change-Id: I6a4a4635bed420e800a3230457ee690131116a11
metaiiica and others added 29 commits September 11, 2013 21:17
Change-Id: I57d8aca11aee32d39e529e87731c28d4145214a8
Change-Id: I04cac271692c6491bd74633c5019ab4b70137bdb
Change-Id: I254a8ff849a1c3ab567f53ac6836457ee3f757bc
This patch simply removes the audio routing checks for Samsung
devices and routes audio via the dock when the mobile is docked.

There is no option to disable audio routing out through the dock

Change-Id: Ie3f99101b051326913d06f1c78894d50035f6e62
Change-Id: I3568f249409ac0a0b7f38c4242a7271bc6e79fe1
(1/2)

This option isn't related to DSP manager at all, so it shouldn't be
implemented there.

Change-Id: Ibe35c9739ccb4f4587ee71f514d16fb317bf4034
…ra group"

This reverts commit de1e404.

Change-Id: Ibc62cb0fc9992e6676ed2af9f1718d28257f65d0
Patch Set 1:
* This will open the drawer on the first back press.
* Terminate the app on second back press
* Added an handler to reset the variable after 5 secs

Patch Set 2:
* Make it acting like Google Hangouts:
If the drawer is open -> Finish
If the drawer is closed -> Open it

Patch Set 3 and 4:

* Removed the Handler and the double back as it's no more needed, this is the perfect behavior!
* Little derp

Change-Id: I5ce4430b3e3c6dcd03198634b62b4dc18dca604b
Signed-off-by: iGio90 <giovanni.rocca.90@gmail.com>
* Untested at the moment if someone can provide me some feedback! Thanks

PS3: This also fix the issue encouterd by Bjork

PS2-4: blank. My error

PS5: Remove the Expanded Desktop dependencie for the awesome LongPress action

PS6: Remove whitespaces and tabs

PS7: As asked, restored original LongPress behavior

PS8: HALO tweaks:

-Draw status bubbles only when required (performance)
-Ninja level +1 (disappear if empty, only persistent or pinned apps are present)

Signed-off-by: iGio90 <giovanni.rocca.90@gmail.com>

Change-Id: I3591f60e3436c2ac205449d13044bf8c1b65f7a3
Make message verbose and contingent on DEBUG. This has been spamming
my logs everytime I touch navbar or lockscreen targets.

Change-Id: Iea1a6db86055d4034405f0ee4e20282b6c493210
mAssociatedPackage field is never initialized and cause NPE.

Change-Id: Ibf0d44b2170b7cbfe4a883008254a086e03579c5
Change-Id: Ie1205802147b451aaff8d4a4def29d5c11aa2347
commit 5c837244a550308a6b8fadf95275d50f6bf3b202
Author: Daniel 2 Olofsson <daniel2.olofsson@sonymobile.com>
Date:   Mon Jun 10 14:49:14 2013 +0200

    Fixed race condition in Spinner.DialogPopup on null reference.

    NullPointerException is triggered when DialogPopup is
    dismissed due to object mPopup being null when not showing.
    Race condition is triggered when dialog is dismissed before
    touch event to dismiss dialog has been processed properly.

    Fixed by adding a null check prior to accessing mPopup object.

    Change-Id: I3c4fe9c279d92a7103fb4f68189d1d42beedc606

commit 4950d85c29bed35c0874858d094d5a0f628f1e54
Author: Pawel Augustyn <pawel.augustyn@sonymobile.com>
Date:   Mon Jul 16 11:23:54 2012 +0200

    Fix for native leaks in YuvToJpegEncoder.cpp

    Objects allocated by Get<object>ArrayElements function,
    should be released. Add a fix to release this objects
    in error cases.

    Change-Id: Idf834523d93bb2dfd6b872e3b2179b7f1bba38f3

commit 463ac945502552ab0c06ae00c987d3c400161fe3
Author: Michal Szynkaruk <michal.szynkaruk@sonymobile.com>
Date:   Wed Jun 26 11:28:36 2013 +0200

    Fix for MemoryLeak in InputMethodService

    Problem: when onConfigrationChanged is called many times,
    mInsetsComputer is added many times to the list.
    Solution: check before if specific listener is already
    in the arraylist.

    Change-Id: Ic730395120d6dc8585628c142b2e161c42317f30

commit 5167ab57b2a1dbee38a5303e4b490a04b9dff950
Author: Pavan Kumar S <pavan.kumar.s@intel.com>
Date:   Fri Aug 3 12:03:01 2012 +0530

    [BatteryStatsImpl] Avoid memory corruption due to Parcel Recycling

    While processing batterystatsfile, in present code there is a race where a parcel
    might be recycled while it is being written to disk in another thread.

    The write process is done in 2 steps:
    - write into a Parcel (memory block)
    - then write this Parcel to disk using Journaled API.
    The Journaled API ensures robustness against file-system issues due to power cut.
    The writing is done in batch using a thread running commitPendingDataToDisk().
    This function writes the parcel to disk but this parcel is a global variable
    initialized by writeLocked(). If the writing takes too long time and two write
    threads are launched, the parcel is freed by the second writeLocked() call;
    which could cause the memory corruption.

    Hence, change global Parcel variable by a Parcel parameter to commitPendingDataToDisk()
    and only this function will be allowed to recycle the parcel.

    Change-Id: Ie86ee0a66434b7107264c79f68411196c7505a34
    Signed-off-by: Pavan Kumar S <pavan.kumar.s@intel.com>
    Author: Pavan Kumar S <pavan.kumar.s@intel.com>
    Signed-off-by: Shuo Gao <shuo.gao@intel.com>
    Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
    Signed-off-by: Jack Ren <jack.ren@intel.com>
    Author-tracking-BZ: 47466 19426

commit ab625310c19573caf5cdcf4c6ef573bbfbc8a26b
Author: Vairavan Srinivasan <vairav@codeaurora.org>
Date:   Mon Jun 6 13:42:54 2011 -0700

    frameworks/base: Fix for the race in Wallpaperservice

    Wallpaperservice has a race among message handler of
    DO_DETACH and service's onDestroy. In certain cases,
    the engine kept track in mActiveEngines is removed by
    message handler of DO_DETACH and service's onDestroy
    doesn't get a entry in mActivieEngines and isn't able
    to invoke detach. This keeps the broadcast receiver,
    mReceiver active and is unregistered by the framework
    and a corresponding leak is reported.

      Later, the message handler of DO_DETACH continues
    and invokes detach on mEngine, which attempts to
    unregister mReceiver and framework throws an exception
    "Receiver not registered: android.service.wallpaper.
    WallpaperService$Engine$1@40874580" and causes the
    framework to reboot.

      In case of system_server, WindownManagerPolicy and
    android.server.ServerThread contest for access of
    shared members, mActiveEngines and mEgine. Fix is to
    protect the critical section via synchronized block.

    Change-Id: Ice79cb8344fb54bcc6e9f76f4b143daac2608d7b

    Conflicts:
    	core/java/android/service/wallpaper/WallpaperService.java

Change-Id: Ib24d04673c5fff21533f7f00456df658cdbc6288
* Always on is much better!

depends on: http://review.pac-rom.com/#/c/2456/

Signed-off-by: iGio90 <giovanni.rocca.90@gmail.com>
Change-Id: I777d65cc38b3d84212f04ce6405ceb5de8384903
Since ids of media file are usually not continuous, the original file of thumbnail are
sparse. When there are big numbers files on ex\
ternal storage, the size of this file will be horrible.
Ex, when the id is 20000, then the .thumbnails/.thumbdata3-xx file will be 50000*10k = 488.28M.
Can refer http://stackoverflow.com/questions/12396715/android-huge-thumbdata4-file-in-dcim-folder
Because after 4.0, MediaProvider will scan any files, this will be a big problem. So I modify MiniThumbFile.java to avoid this.
According to the id, we now produce an index file. In this index file, one id will use BYTES_PER_MINTHUMB_INDEX(8) bytes in offset (i\
d+1)*BYTES_PER_MINTHUMB_INDEX. The data of these 8 bytes is the index of thumbnail file. The first BYTES_PER_MINTHUMB_INDEX bytes kee\
p next available index. And when you need insert a thumbnail, the index increase by 1. In this way, the block data in thumbnail file \
will be continuous. And thus unnecessary zero paddings will not be saved.

Change-Id: I66005dd69b0a5c8f4353bd7a8225d163a654fd2d
Change-Id: I9af82e9fa2305142521075938dfd05521adeb9f4
- don't crash system_server if no music player can be found
- use the active user's setting instead of the owner's setting

Change-Id: I38a07fe5c8c3d67ececd0768e1fcc01a6cf7fa5a
…s view

Change-Id: Ic601d8808855dee667aea3bf368256fbadf9385d
When the notifications panel is disabled no views are handling touch events
on the status bar, so we see nothing beyond each ACTION_DOWN. Intercept touch
events when needed specifically for brightness control.
Also recycle VelocityTracker when we're not using it, as per its documentation.

Change-Id: Ib96eb6a6fd16d086d318136155e16da10600c8fa
Change-Id: I340846a171571a7b61d2c68f2a6875794be5d5b2
Change-Id: I86f3c0c440adec87d296dc2d9ffecc5a40e0a4fe
Also animate from old to new state.

Change-Id: I2db8ec4d55f7b8b5e592cc1ef21b86ebdbd00eb0
Change-Id: I90ee5d8f83176a38a32b5ff38c4b191f1b78532e
When halo is active the ticker window is created as before halo implementation, to avoid to show it we don't stop the methods but set the transition/delay to 0.
That's a kind of hack (awful) but works :)

Conflicts:
	packages/SystemUI/src/com/android/systemui/statusbar/tablet/TabletTicker.java

Change-Id: I909e8112ca6e31450201b75bc08546d2b585f8f5
…neUI one is 3s, but TabletUI one is clickable and deserve a little bit more). Making right-navbar unaccessible for 5 sec is too much.

Change-Id: I9004b1e5be7612846390eaccf0f44fcac047a48b
Update the appearance of both tiles when one is toggled.
Only the KeyguardLock which disabled the lockscreen is able to
re-enable it, so have both tiles use a static KeyguardLock.

Change-Id: Idd8d41d3eda60f9a13bd4b6bc0fab12eb3d25f40
Change-Id: Ia16a1d1c4f5fb0c428449acbb6a633dfbc8d0f68
Change-Id: If0bf90cf1da87adfe5a5bf4a23d8453ba95bbe18
Change-Id: If8793072177d8de871f92e8ee830d467227a95ea
dhacker29 and others added 30 commits November 11, 2013 02:52
When tethering on dual stack networks such as verizon wireless and
sending or recieving MMS you get an null pointer exception and hard
reboot.

It starts to go wrong here:
10-14 19:11:51.375: E/Mms/smil(28035): Failed to parse SMIL document.
10-14 19:11:51.375: E/Mms/smil(28035): org.xml.sax.SAXParseException:
expected start tag notEND_DOCUMENT null@1:1 in java.io.InputStreamReader
@4192ada0

And then:
10-14 19:11:55.559: E/AndroidRuntime(23125): java.lang.NullPointerException
10-14 19:11:55.559: E/AndroidRuntime(23125):    at com.android.server.
connectivity.Tethering$TetherMasterSM$TetherModeAliveState.processMessage
(Tethering.java:1573)

Which is line 1573 of:

https://github.com/CyanogenMod/android_frameworks_base/blob/cm-10.2/services/java/com/android/server/connectivity/Tethering.java#L1573

CMD_UPSTREAM_CHANGED's message.obj can be null (line 776).

Change-Id: I13d531d398f2e33a828c6e81f25f4b2a27518d34
Change-Id: Ia24788bfcdf7c2526b5984d561b868447256d443
Patchset 2: fixed duplicates

Patchset 3: fixed build errors / more dupes...

Change-Id: I233fd8fbae9076284bae8a5dcce809619faa5eb3
Next time please check for duplicate strings! Thank you!

Change-Id: I0ed5d1c6d460261f1d523c87d7e3a24fbdea4054
Signed-off-by: Lokesh Chamane <lokesh.c703@gmail.com>
Change-Id: Ib2e67cedd41fea706f55aa6b43a4a6733afac762
Signed-off-by: Lokesh Chamane <lokesh.c703@gmail.com>
Flush out p2p scan results on receiving group removal event.
p2p scan window will be updated on next p2p scan.

Change-Id: I3bcfed355574478bda2cac688b7df956c2701683
CRs-Fixed: 504022
APNs are disabled on select network and they are enabled on
receiving connected event.
But forgetting an APN before the connected event is received,
will result all the remaining APN to be in disabled state and
they never connect.
So, Enabling all the disabled APN on forget network will help
to connect automatically to a saved APN.

Change-Id: I6ac5e9856d6ec0b72c089b159206abd2de98e6a3
CRs-fixed: 496165
…lient"

This reverts commit 738434a7df1cf7d0aada02e7905bdb4a51b5d3d6.

Change-Id: I4c1f061aa26077134029527dfc3e55112fed5038
CRs-Fixed: 532138
The station when connecting to AP (wifi state is either
connecting or obtaining ip address) shall stop the already
issued p2p_find on the DHCP start and start the same after
the DHCP handshake. p2p service manager shall return a failure
for any p2p_find operation during these period resulting in a
discover failure.
Address this by deferring the p2p_find issued during this period
(set mDiscoveryPostponed to true) rather than returning a failure.

Change-Id: I40b2017bf126fd0d543ada8853223402cda63e9d
CRs-Fixed: 532138
When the framework receives an empty scan list from supplicant, it does
not clear the local list. So the UI will continue to show the previous
scan list even when there are no APs around. So clear the local list,
when an empty list is received.

CRs-Fixed: 552212
Change-Id: I8715bc31ce0df7bd54c96fcf7d7b73592429f12a
Add the condition that the connected network needs to be TYPE_MOBILE.
This eliminates checking on connecting to secondary networks like
FOTA, MMS, SUPL ...

This reduces unnecessary attempts to bring up multiple connections at
the same time. Especially in the light of the trouble we're having with HFA
on Sprint, where we don't want to connect to any other network until HFA
has completed.

Bug: 10758001
Change-Id: Id294536b70304a51de4752bc1a4ffac734f10f1a
Currently the captive portal check URL is generated by
concatenating scheme, "://", IP address, and port. This breaks
for IPv6 because IPv6 addresses in URLs must be enclosed in
square brackets (e.g., http://2001:db8::1/generate_204 is
invalid; should he http://[2001:db8::1]/generate_204 instead).
The resulting MalformedURLException causes isMobileOk to report
that there is no captive portal, even if there is one.

Fortunately the three-arg URL constructor already knows how to
construct URLs with IPv6 addresses. Use that instead of
generating the URL ourselves.

Bug: 10801896
Change-Id: I02605ef62f493a34f25bb405ef02b111543a76fd
Free the BufferedReader class object explicitly.

Change-Id: I6a9f19e0334e1985652852447c545fa2227a04b5
CRs-Fixed: 564739
- Require a non-204 response multiple times before declaring a
redirected error and hence a warm sim.

- If there is no connection or dns don't declare its a warm-sim.

- Add printing of the http headers to try to get more information
if we still get a false positive result.

Bug: 9972012
Change-Id: Ic115685cdbbe39c2b4de88b128eaf8d2ea96b45c
In checkMobileProvisioning the call to mdst.isProvisioningNetwork() is
a blocking call and during monkey testing without SIM this is causing
ANR's. Move the initial test for provisioning into isMobileOk so
checkMobileProvisioning doesn't block.

If mobile is not supported return CMP_RESULT_NO_CONNECTION.

Cleaned up some debug.

Bug: 10674404
Change-Id: I10a0e922cd6ea9790f66e2083f37e68cb0a8861f
There are two bugs one is I was clearing the notification in
CaptivePortalTracker when entering the ActivateState. (double check
according to bug 5021626 we should be calling enter)

Second is we could have the need to display both icons but can't
because we only allow one.

The solution I'm proposing here is to allow two notifications and
have then controlled separately.

Bug: 10886908
Change-Id: I30e7130bc542535492d175640a4990c592f32806
Change-Id: Iab43ea99da459aa2cafc48f1f4c4dd043f3ad723
Signed-off-by: Lokesh Chamane <lokesh.c703@gmail.com>
Patchset 2: Fix not null comparation
Patchset 3: xxhdpi drawables
Patchset 4: Fix xxhdpi drawables (thx blunden)
            Rebased
Patchset 5: Add suggestions
            Sync on boot the system property with the setting
Patchset 6: Rebased
Patchset 7: Rebased (solved conflict with config.xml)

Change-Id: Ib32d3734b63f88a3473e0ab10d8edf30dae9ceb6
Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
Add hook to call OEM specific shutdown synchronously. OEMs need to add
ShutdownOem class and define deviceRebootOrShutdown function in that.

ShutdownThread class would call this OEM defined function just before shutting
down the device.

Change-Id: I620495bfc99c6b0855a98ac54c6ede96e20ff1b8
Update device-specific shutdown hook such that it is invoked for
restart as well as for shutdown.

Change-Id: I8c9cbe674000e0d664d41ecc98a341112e1cb060
NativeCrashListener creates a socket connection with debuggerd.
When native crash is observed, NativeCrashListener gets new socket
file descriptor from debuggered. This socket is never closed.
Multiple native crashes are causing "Too many files opened" EMFILE
exception in system_server.

CRs-Fixed: 545566

Change-Id: Idb12e87a4f91c978169435ce95abe11b40c6d0dc
The wakelock PowerManagerService.Display sometimes cannot be released
after two quick power key pressings like a double click during phone
sleep (the target will resume then supposedly suspend shortly).

The second key event disturbs display power state on resume, as a
result display resources won't get released on suspend, which is fixed
in this change.

CRs-Fixed: 566059
Change-Id: I633fd377ab235f203ebfb649a74449a2385740c4
Issue: SystemUI crash is observed when Context MenuItem is
       selected on the recent apps activity [Long pressing
       two recent apps at same time or Long press, lock and
       unlock the screen]

Fix: Changed the code to make sure that only one context
     menu is active at a time and also dismissed the
     context menu on pause of the RecentsActivity

CRs-Fixed: 539509

Change-Id: Ia50bed7bfad6fde7beeaec37fa6402177eee1d40
The method was returning all supported cipher suites instead of the
default ones only. The default list of cipher suites actually used by
sockets created by this factory is not affected by this issue.

PS2: Rebased

Change-Id: I2e4d7c6547fcb29ff7a0943bc8791706cc8d22bc
 * Do this at the lower layer so that third-party apps don't have
   issus with the nonstandard score.

Change-Id: Ic012b092d2f47dbaab8cbfe2bd215b955800cc11
 * Some devices intended for international sale do not return proper
   emergency numbers in the ril.ecclist property.
 * Add support for a static list of emergency numbers to be appended
   to the list supplied by the radio.
 * Set "ro.ril.ext.ecclist" to use this.

http://review.cyanogenmod.org/#/c/54194/

Change-Id: I7a6cedadf6f7c0b576e6f08a0660b5e4c34af61b
Stencil test is enabled by setStencilFromClip(), but not disabled
in some use case, which causes some of the pixels are discarded by
mistake in draws followed. Disable stencil test when there is no
dirty clip.
CRs-Fixed: 539456

http://review.cyanogenmod.org/#/c/52751

Change-Id: I13ee0fa8ec010837fa61563529f8977750ea0409
Fixes: This patch makes sure that the layer's alpha value is
up-to-date and does not reflect the previous view's alpha value.
It fixes the square block on marquee fading edge when text view
is applied transparency.
CRs-Fixed: 562000

http://review.cyanogenmod.org/#/c/54146

Change-Id: I97a9e7d98cd8db0c63f1907490d335e88075b1fa
Add a separate list of default lockscreen unlock targets for devices
without voice capability.

Change-Id: I59d6711e74c3bf48e6453a9530fa88f28b25b78e
Fix a long standing lockscreen layout problem that was introduced in 4.2
Also cleanup the dimensions overrides to match cm-11.0

Before: http://i.imgur.com/9sVKHRR.png
After: http://i.imgur.com/DLY4DRu.png

Change-Id: Ia3cdc0d10217a0a2504a7287f480d9f036e66eee
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet