summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--core/jni/android_os_FileUtils.cpp50
-rw-r--r--core/res/res/values-cs/cm_strings.xml5
-rw-r--r--core/res/res/values-el/cm_strings.xml14
-rw-r--r--core/res/res/values-es/cm_strings.xml4
-rw-r--r--core/res/res/values-et-rEE/donottranslate-maps.xml28
-rw-r--r--core/res/res/values-fr/cm_strings.xml4
-rw-r--r--core/res/res/values-hu/cm_strings.xml4
-rw-r--r--libs/hwui/DisplayListRenderer.cpp3
-rwxr-xr-xlibs/hwui/OpenGLRenderer.cpp11
-rw-r--r--libs/hwui/Snapshot.cpp13
-rw-r--r--libs/hwui/Snapshot.h15
-rw-r--r--packages/InputDevices/res/raw/keyboard_layout_hungarian.kcm2
-rw-r--r--packages/SystemUI/res/values-el/cm_strings.xml2
-rw-r--r--services/java/com/android/server/am/BatteryStatsService.java7
-rw-r--r--services/java/com/android/server/location/GpsLocationProvider.java4
-rw-r--r--services/jni/com_android_server_location_GpsLocationProvider.cpp8
-rw-r--r--telephony/java/com/android/internal/telephony/RILConstants.java2
17 files changed, 159 insertions, 17 deletions
diff --git a/core/jni/android_os_FileUtils.cpp b/core/jni/android_os_FileUtils.cpp
index b624a0d..e088a68 100644
--- a/core/jni/android_os_FileUtils.cpp
+++ b/core/jni/android_os_FileUtils.cpp
@@ -69,28 +69,58 @@ jint android_os_FileUtils_getVolumeUUID(JNIEnv* env, jobject clazz, jstring path
const char *pathStr = env->GetStringUTFChars(path, NULL);
ALOGD("Trying to get UUID for %s \n", pathStr);
- uuid = blkid_get_tag_value(NULL, "UUID", pathStr);
+ char device[256];
+ char mount_path[256];
+ char rest[256];
+ FILE *fp;
+ char line[1024];
+ bool findDevice = false;
+ if (!(fp = fopen("/proc/mounts", "r"))) {
+ SLOGE("Error opening /proc/mounts (%s)", strerror(errno));
+ return false;
+ }
+
+ while(fgets(line, sizeof(line), fp)) {
+ line[strlen(line)-1] = '\0';
+ sscanf(line, "%255s %255s %255s\n", device, mount_path, rest);
+ if (!strcmp(mount_path, pathStr)) {
+ findDevice = true;
+ break;
+ }
+ }
+
+ fclose(fp);
+
+ if (findDevice) {
+ uuid = blkid_get_tag_value(NULL, "UUID", device);
+ } else {
+ uuid = blkid_get_tag_value(NULL, "UUID", pathStr);
+ }
if (uuid) {
ALOGD("UUID for %s is %s\n", pathStr, uuid);
- String8 s8uuid = (String8)uuid;
- size_t len = s8uuid.length();
- String8 result;
+ int len = strlen(uuid);
+ char result[len];
if (len > 0) {
- for (int i = 0; i > len; i++)
+ char * pCur = uuid;
+ int length = 0;
+ while (*pCur!='\0' && length < len)
{
- if (strncmp((const char *)s8uuid[i], (const char *)"-", 1) != 0) {
- result.append((const char *)s8uuid[i]);
+ if ((*pCur) != '-') {
+ result[length] = (*pCur);
}
+ pCur++;
+ length++;
}
- len = 0;
+ result[length] = '\0';
}
- len = result.length();
+ len = strlen(result);
if (len > 0) {
- return atoi(s8uuid);
+ char *pEnd = NULL;
+ return (int)strtol(result, &pEnd, 16);
} else {
ALOGE("Couldn't get UUID for %s\n", pathStr);
}
diff --git a/core/res/res/values-cs/cm_strings.xml b/core/res/res/values-cs/cm_strings.xml
index b6b6d1e..9080511 100644
--- a/core/res/res/values-cs/cm_strings.xml
+++ b/core/res/res/values-cs/cm_strings.xml
@@ -62,4 +62,9 @@
<string name="permlab_interceptSmsSent">zachytit odchozí SMS</string>
<string name="permdesc_interceptSmsSent">Umožní odchytit odchozí SMS. Škodlivé aplikace mohou pomocí odchycení SMS zabránit její odeslání příjemci.</string>
+
+ <string name="policylab_enforceSelinux">Vynucení SELinux</string>
+ <string name="policydesc_enforceSelinux">Přepnutí politiky SELinux na vynucující (enforcing ) nebo tolerantní (permissive).</string>
+ <string name="policylab_enforceMmac">Vynucení MMAC</string>
+ <string name="policydesc_enforceMmac">Přepnutí politiky MMAC na vynucující (enforcing ) nebo tolerantní (permissive).</string>
</resources>
diff --git a/core/res/res/values-el/cm_strings.xml b/core/res/res/values-el/cm_strings.xml
index d14c7ea..fbb3708 100644
--- a/core/res/res/values-el/cm_strings.xml
+++ b/core/res/res/values-el/cm_strings.xml
@@ -107,4 +107,18 @@
<string name="symbol_picker_equal">\u2260\u2248\u221e</string>
<string name="symbol_picker_lt">\u2264\u00ab\u2039</string>
<string name="symbol_picker_gt">\u2265\u00bb\u203a</string>
+ <string name="permlab_changePrivacyGuardState">ενεργοποίηση ή απενεργοποίηση του privacy guard</string>
+ <string name="permdesc_changePrivacyGuardState">Επιτρέπει σε μια εφαρμογή τον χειρισμό άλλων εφαρμογών με το Privacy Guard. Όταν μια εφαρμογή τρέχει με το Privacy Guard, δεν θα έχει πρόσβαση στα προσωπικά σας δεδομένα όπως επαφές, μηνύματα ή το αρχείο κλήσεων.</string>
+ <string name="privacy_guard_notification">Privacy Guard ενεργό</string>
+ <string name="privacy_guard_notification_detail"><xliff:g id="app">%1$s</xliff:g> δεν θα μπορεί να έχει πρόσβαση στα προσωπικά σας δεδομένα</string>
+ <string name="profile_picker_title">Προφίλ</string>
+ <string name="profile_none">Κανένα</string>
+ <string name="permlab_cancelNotifications">ακύρωση ειδοποιήσεων εφαρμογών</string>
+ <string name="permdesc_cancelNotifications">Επιτρέπει σε μια εφαρμογή την ακύρωση ειδοποιήσεων που προέρχονται από άλλες εφαρμογές.</string>
+ <string name="permlab_interceptSmsSent">παρεμπόδιση εξερχόμενων SMS</string>
+ <string name="permdesc_interceptSmsSent">Επιτρέπει σε μια εφαρμογή να παρεμποδίσει τα εξερχόμενα SMS. Κακόβουλες εφαρμογές μπορεί να το χρησιμοποιήσουν για να εμποδίσουν τη αποστολή SMS.</string>
+ <string name="policylab_enforceSelinux">Εξαναγκασμός SELinux</string>
+ <string name="policydesc_enforceSelinux">Εναλλαγή πολιτικής SELinux σε εξαναγκασμένη ή επιτρεπόμενη.</string>
+ <string name="policylab_enforceMmac">Εξαναγκασμός MMAC</string>
+ <string name="policydesc_enforceMmac">Εναλλαγή πολιτικής MMAC σε εξαναγκασμένη ή επιτρεπόμενη.</string>
</resources>
diff --git a/core/res/res/values-es/cm_strings.xml b/core/res/res/values-es/cm_strings.xml
index ae74d8c..351925a 100644
--- a/core/res/res/values-es/cm_strings.xml
+++ b/core/res/res/values-es/cm_strings.xml
@@ -64,4 +64,8 @@
<string name="permdesc_cancelNotifications">Permite que la aplicación cancele las notificaciones creadas por otras.</string>
<string name="permlab_interceptSmsSent">interceptar mensajes SMS salientes</string>
<string name="permdesc_interceptSmsSent">Permite que la aplicación intercepte mensajes SMS salientes. Las aplicaciones maliciosas pueden impedir los mensajes SMS salientes.</string>
+ <string name="policylab_enforceSelinux">Forzar SELinux</string>
+ <string name="policydesc_enforceSelinux">Alternar entre el modo permisivo o restrictivo de SELinux.</string>
+ <string name="policylab_enforceMmac">Forzar MMAC</string>
+ <string name="policydesc_enforceMmac">Alternar entre el modo permisivo o restrictivo de MMAC.</string>
</resources>
diff --git a/core/res/res/values-et-rEE/donottranslate-maps.xml b/core/res/res/values-et-rEE/donottranslate-maps.xml
new file mode 100644
index 0000000..f1fea17
--- /dev/null
+++ b/core/res/res/values-et-rEE/donottranslate-maps.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2013 The CyanogenMod Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<resources>
+
+ <!-- Do not translate. -->
+ <integer-array name="maps_starting_lat_lng">
+ <item>5884131</item>
+ <item>2570560</item>
+ </integer-array>
+ <!-- Do not translate. -->
+ <integer-array name="maps_starting_zoom">
+ <item>4</item>
+ </integer-array>
+
+</resources>
diff --git a/core/res/res/values-fr/cm_strings.xml b/core/res/res/values-fr/cm_strings.xml
index 1f93895..0cdf31c 100644
--- a/core/res/res/values-fr/cm_strings.xml
+++ b/core/res/res/values-fr/cm_strings.xml
@@ -64,4 +64,8 @@
<string name="permdesc_cancelNotifications">Permet à l\'application de révoquer les notifications créées par d\'autres applications.</string>
<string name="permlab_interceptSmsSent">intercepte les SMS sortants</string>
<string name="permdesc_interceptSmsSent">Permet à l\'application d\'intercepter un SMS sortant. Des applications malveillantes peuvent utiliser cette option pour empêcher les SMS d\'être envoyés.</string>
+ <string name="policylab_enforceSelinux">Appliquer SELinux</string>
+ <string name="policydesc_enforceSelinux">Bascule entre l\'imposition des régles SELinux et le mode permissif.</string>
+ <string name="policylab_enforceMmac">Appliquer MMAC</string>
+ <string name="policydesc_enforceMmac">Bascule entre l\'imposition des régles MMAC et le mode permissif.</string>
</resources>
diff --git a/core/res/res/values-hu/cm_strings.xml b/core/res/res/values-hu/cm_strings.xml
index b39efd8..abfcd4b 100644
--- a/core/res/res/values-hu/cm_strings.xml
+++ b/core/res/res/values-hu/cm_strings.xml
@@ -64,4 +64,8 @@
<string name="permdesc_cancelNotifications">Lehetővé teszi, hogy más alkalmazások számára törölje az értesítéseket</string>
<string name="permlab_interceptSmsSent">kimenő SMS üzenetek elfogása</string>
<string name="permdesc_interceptSmsSent">Lehetővé teszi az alkalmazás számára, hogy elfogja a kimenő SMS üzeneteket. A rosszindulatú alkalmazások ezt felhasználhatják az SMS-küldés blokkolására.</string>
+ <string name="policylab_enforceSelinux">SELinux</string>
+ <string name="policydesc_enforceSelinux">Váltás a biztonságos és az engedélyező SELinux mód közt.</string>
+ <string name="policylab_enforceMmac">MMAC</string>
+ <string name="policydesc_enforceMmac">Váltás a biztonságos és az engedélyező MMAC mód közt.</string>
</resources>
diff --git a/libs/hwui/DisplayListRenderer.cpp b/libs/hwui/DisplayListRenderer.cpp
index 7a38b40..8d2a84e 100644
--- a/libs/hwui/DisplayListRenderer.cpp
+++ b/libs/hwui/DisplayListRenderer.cpp
@@ -1442,6 +1442,9 @@ status_t DisplayListRenderer::prepareDirty(float left, float top,
mSaveCount = 1;
mSnapshot->setClip(0.0f, 0.0f, mWidth, mHeight);
+#ifdef QCOM_HARDWARE
+ mSnapshot->setTileClip(0.0f, 0.0f, mWidth, mHeight);
+#endif
mDirtyClip = opaque;
mRestoreSaveCount = -1;
diff --git a/libs/hwui/OpenGLRenderer.cpp b/libs/hwui/OpenGLRenderer.cpp
index 7309e46..efae551 100755
--- a/libs/hwui/OpenGLRenderer.cpp
+++ b/libs/hwui/OpenGLRenderer.cpp
@@ -179,6 +179,9 @@ status_t OpenGLRenderer::prepareDirty(float left, float top, float right, float
mSaveCount = 1;
mSnapshot->setClip(left, top, right, bottom);
+#ifdef QCOM_HARDWARE
+ mSnapshot->setTileClip(left, top, right, bottom);
+#endif
mDirtyClip = true;
updateLayers();
@@ -246,11 +249,14 @@ void OpenGLRenderer::syncState() {
void OpenGLRenderer::startTiling(const sp<Snapshot>& s, bool opaque) {
if (!mSuppressTiling) {
+#ifdef QCOM_HARDWARE
+ const Rect* clip = &mSnapshot->getTileClip();
+#else
Rect* clip = mTilingSnapshot->clipRect;
if (s->flags & Snapshot::kFlagIsFboLayer) {
clip = s->clipRect;
}
-
+#endif
mCaches.startTiling(clip->left, s->height - clip->bottom,
clip->right - clip->left, clip->bottom - clip->top, opaque);
}
@@ -800,6 +806,9 @@ bool OpenGLRenderer::createFboLayer(Layer* layer, Rect& bounds, Rect& clip, GLui
mSnapshot->fbo = layer->getFbo();
mSnapshot->resetTransform(-bounds.left, -bounds.top, 0.0f);
mSnapshot->resetClip(clip.left, clip.top, clip.right, clip.bottom);
+#ifdef QCOM_HARDWARE
+ mSnapshot->setTileClip(clip.left, clip.top, clip.right, clip.bottom);
+#endif
mSnapshot->viewport.set(0.0f, 0.0f, bounds.getWidth(), bounds.getHeight());
mSnapshot->height = bounds.getHeight();
mSnapshot->flags |= Snapshot::kFlagDirtyOrtho;
diff --git a/libs/hwui/Snapshot.cpp b/libs/hwui/Snapshot.cpp
index fbc8455..e2675a8 100644
--- a/libs/hwui/Snapshot.cpp
+++ b/libs/hwui/Snapshot.cpp
@@ -74,6 +74,9 @@ Snapshot::Snapshot(const sp<Snapshot>& s, int saveFlags):
} else {
region = NULL;
}
+#ifdef QCOM_HARDWARE
+ mTileClip.set(s->getTileClip());
+#endif
}
///////////////////////////////////////////////////////////////////////////////
@@ -192,6 +195,16 @@ const Rect& Snapshot::getLocalClip() {
return mLocalClip;
}
+#ifdef QCOM_HARDWARE
+void Snapshot::setTileClip(float left, float top, float right, float bottom) {
+ mTileClip.set(left, top, right, bottom);
+}
+
+const Rect& Snapshot::getTileClip() {
+ return mTileClip;
+}
+#endif
+
void Snapshot::resetClip(float left, float top, float right, float bottom) {
clipRect = &mClipRectRoot;
setClip(left, top, right, bottom);
diff --git a/libs/hwui/Snapshot.h b/libs/hwui/Snapshot.h
index 9c612ff..18d405b 100644
--- a/libs/hwui/Snapshot.h
+++ b/libs/hwui/Snapshot.h
@@ -104,6 +104,18 @@ public:
*/
const Rect& getLocalClip();
+#ifdef QCOM_HARDWARE
+ /**
+ * Sets the current tile clip.
+ */
+ void setTileClip(float left, float top, float right, float bottom);
+
+ /**
+ * Returns the current tile clip in local coordinates.
+ */
+ const Rect& getTileClip();
+#endif
+
/**
* Resets the clip to the specified rect.
*/
@@ -233,6 +245,9 @@ private:
mat4 mTransformRoot;
Rect mClipRectRoot;
Rect mLocalClip;
+#ifdef QCOM_HARDWARE
+ Rect mTileClip;
+#endif
#if STENCIL_BUFFER_SIZE
SkRegion mClipRegionRoot;
diff --git a/packages/InputDevices/res/raw/keyboard_layout_hungarian.kcm b/packages/InputDevices/res/raw/keyboard_layout_hungarian.kcm
index dafb50b..67127d0 100644
--- a/packages/InputDevices/res/raw/keyboard_layout_hungarian.kcm
+++ b/packages/InputDevices/res/raw/keyboard_layout_hungarian.kcm
@@ -37,7 +37,7 @@ key 0 {
key 1 {
label: '1'
base: '1'
- shift: '!'
+ shift: '\''
ralt: '\u0303'
}
diff --git a/packages/SystemUI/res/values-el/cm_strings.xml b/packages/SystemUI/res/values-el/cm_strings.xml
index 33b4393..8498343 100644
--- a/packages/SystemUI/res/values-el/cm_strings.xml
+++ b/packages/SystemUI/res/values-el/cm_strings.xml
@@ -52,8 +52,10 @@
<string name="quick_settings_lte">LTE</string>
<string name="quick_settings_lte_off">LTE ανενεργό</string>
<string name="quick_settings_volume">Ένταση</string>
+ <string name="quick_settings_camera_label">Φωτογρ. μηχανή</string>
<string name="quick_settings_expanded_desktop">Επεκταμένη</string>
<string name="quick_settings_expanded_desktop_off">Κανονική</string>
+ <string name="quick_settings_camera_error_connect">Δεν είναι δυνατή η σύνδεση με την φωτογραφ. μηχανή</string>
<string name="navbar_dialog_title">Επιλέξτε λειτουργία για εκχώρηση</string>
<string name="navbar_home_button">Πλήκτρο Home</string>
<string name="navbar_recent_button">Πλήκτρο Recent</string>
diff --git a/services/java/com/android/server/am/BatteryStatsService.java b/services/java/com/android/server/am/BatteryStatsService.java
index ab20208..99cb2c8 100644
--- a/services/java/com/android/server/am/BatteryStatsService.java
+++ b/services/java/com/android/server/am/BatteryStatsService.java
@@ -330,6 +330,13 @@ public final class BatteryStatsService extends IBatteryStats.Stub {
synchronized (mStats) {
mBluetoothPendingStats = false;
mStats.noteBluetoothOffLocked();
+ mStats.setBtHeadset(null);
+ }
+
+ BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter();
+ if (adapter != null && mBluetoothHeadset != null) {
+ adapter.closeProfileProxy(BluetoothProfile.HEADSET, mBluetoothHeadset);
+ mBluetoothHeadset = null;
}
}
diff --git a/services/java/com/android/server/location/GpsLocationProvider.java b/services/java/com/android/server/location/GpsLocationProvider.java
index 22c52f4..cba2db2 100644
--- a/services/java/com/android/server/location/GpsLocationProvider.java
+++ b/services/java/com/android/server/location/GpsLocationProvider.java
@@ -1471,7 +1471,7 @@ public class GpsLocationProvider implements LocationProviderInterface {
type = AGPS_REF_LOCATION_TYPE_GSM_CELLID;
}
native_agps_set_ref_location_cellid(type, mcc, mnc,
- gsm_cell.getLac(), gsm_cell.getCid());
+ gsm_cell.getLac(), gsm_cell.getPsc(), gsm_cell.getCid());
} else {
Log.e(TAG,"Error getting cell location info.");
}
@@ -1642,7 +1642,7 @@ public class GpsLocationProvider implements LocationProviderInterface {
// AGPS ril suport
private native void native_agps_set_ref_location_cellid(int type, int mcc, int mnc,
- int lac, int cid);
+ int lac, int psc, int cid);
private native void native_agps_set_id(int type, String setid);
private native void native_update_network_state(boolean connected, int type,
diff --git a/services/jni/com_android_server_location_GpsLocationProvider.cpp b/services/jni/com_android_server_location_GpsLocationProvider.cpp
index f2ec1b3..4285ddf 100644
--- a/services/jni/com_android_server_location_GpsLocationProvider.cpp
+++ b/services/jni/com_android_server_location_GpsLocationProvider.cpp
@@ -375,7 +375,7 @@ static jint android_location_GpsLocationProvider_read_sv_status(JNIEnv* env, job
}
static void android_location_GpsLocationProvider_agps_set_reference_location_cellid(JNIEnv* env,
- jobject obj, jint type, jint mcc, jint mnc, jint lac, jint cid)
+ jobject obj, jint type, jint mcc, jint mnc, jint lac, jint psc, jint cid)
{
AGpsRefLocation location;
@@ -388,9 +388,13 @@ static void android_location_GpsLocationProvider_agps_set_reference_location_cel
case AGPS_REF_LOCATION_TYPE_GSM_CELLID:
case AGPS_REF_LOCATION_TYPE_UMTS_CELLID:
location.type = type;
+ location.u.cellID.type = type;
location.u.cellID.mcc = mcc;
location.u.cellID.mnc = mnc;
location.u.cellID.lac = lac;
+#ifdef AGPS_USE_PSC
+ location.u.cellID.psc = psc;
+#endif
location.u.cellID.cid = cid;
break;
default:
@@ -601,7 +605,7 @@ static JNINativeMethod sMethods[] = {
{"native_agps_data_conn_closed", "()V", (void*)android_location_GpsLocationProvider_agps_data_conn_closed},
{"native_agps_data_conn_failed", "()V", (void*)android_location_GpsLocationProvider_agps_data_conn_failed},
{"native_agps_set_id","(ILjava/lang/String;)V",(void*)android_location_GpsLocationProvider_agps_set_id},
- {"native_agps_set_ref_location_cellid","(IIIII)V",(void*)android_location_GpsLocationProvider_agps_set_reference_location_cellid},
+ {"native_agps_set_ref_location_cellid","(IIIIII)V",(void*)android_location_GpsLocationProvider_agps_set_reference_location_cellid},
{"native_set_agps_server", "(ILjava/lang/String;I)V", (void*)android_location_GpsLocationProvider_set_agps_server},
{"native_send_ni_response", "(II)V", (void*)android_location_GpsLocationProvider_send_ni_response},
{"native_agps_ni_message", "([BI)V", (void *)android_location_GpsLocationProvider_agps_send_ni_message},
diff --git a/telephony/java/com/android/internal/telephony/RILConstants.java b/telephony/java/com/android/internal/telephony/RILConstants.java
index d93da8f..feac45b 100644
--- a/telephony/java/com/android/internal/telephony/RILConstants.java
+++ b/telephony/java/com/android/internal/telephony/RILConstants.java
@@ -293,7 +293,7 @@ cat include/telephony/ril.h | \
int RIL_UNSOL_RINGBACK_TONE = 1029;
int RIL_UNSOL_RESEND_INCALL_MUTE = 1030;
int RIL_UNSOL_CDMA_SUBSCRIPTION_SOURCE_CHANGED = 1031;
- int RIL_UNSOl_CDMA_PRL_CHANGED = 1032;
+ int RIL_UNSOL_CDMA_PRL_CHANGED = 1032;
int RIL_UNSOL_EXIT_EMERGENCY_CALLBACK_MODE = 1033;
int RIL_UNSOL_RIL_CONNECTED = 1034;
int RIL_UNSOL_VOICE_RADIO_TECH_CHANGED = 1035;