summaryrefslogtreecommitdiffstats
path: root/src/com
diff options
context:
space:
mode:
authorDanesh Mondegarian <daneshm90@gmail.com>2013-08-26 17:51:28 +0000
committerGerrit Code Review <gerrit@cyanogenmod.org>2013-08-26 17:51:28 +0000
commitc36702d7d1cf7870dc3b814a62c9fbdf1e6e5ef9 (patch)
tree29528d7393f0560c8ea6c154530a2be3aae1614b /src/com
parent1fa385a62a0a3276f0abaca8f19fd4cd62bc8614 (diff)
parent15b2b8a2da8f4b767c0bebef292dcb00afdde3a2 (diff)
downloadandroid_packages_apps_Trebuchet-c36702d7d1cf7870dc3b814a62c9fbdf1e6e5ef9.tar.gz
android_packages_apps_Trebuchet-c36702d7d1cf7870dc3b814a62c9fbdf1e6e5ef9.tar.bz2
android_packages_apps_Trebuchet-c36702d7d1cf7870dc3b814a62c9fbdf1e6e5ef9.zip
Merge "Trebuchet : Improve deletion of all folder contents" into cm-10.2
Diffstat (limited to 'src/com')
-rw-r--r--src/com/cyanogenmod/trebuchet/Folder.java6
-rw-r--r--src/com/cyanogenmod/trebuchet/FolderIcon.java5
-rw-r--r--src/com/cyanogenmod/trebuchet/FolderInfo.java1
-rw-r--r--src/com/cyanogenmod/trebuchet/LiveFolderInfo.java10
4 files changed, 15 insertions, 7 deletions
diff --git a/src/com/cyanogenmod/trebuchet/Folder.java b/src/com/cyanogenmod/trebuchet/Folder.java
index aa508e5b5..80bda330d 100644
--- a/src/com/cyanogenmod/trebuchet/Folder.java
+++ b/src/com/cyanogenmod/trebuchet/Folder.java
@@ -1151,6 +1151,12 @@ public class Folder extends LinearLayout implements DragSource, View.OnClickList
}
}
+ public void onAllItemsRemoved() {
+ mItemsInvalidated = true;
+ mContent.removeAllViews();
+ replaceFolderWithFinalItem();
+ }
+
private View getViewForInfo(ShortcutInfo item) {
for (int j = 0; j < mContent.getCountY(); j++) {
for (int i = 0; i < mContent.getCountX(); i++) {
diff --git a/src/com/cyanogenmod/trebuchet/FolderIcon.java b/src/com/cyanogenmod/trebuchet/FolderIcon.java
index ed5ef53e7..135ea4acb 100644
--- a/src/com/cyanogenmod/trebuchet/FolderIcon.java
+++ b/src/com/cyanogenmod/trebuchet/FolderIcon.java
@@ -653,4 +653,9 @@ public class FolderIcon extends LinearLayout implements FolderListener {
mLongPressHelper.cancelLongPress();
}
+
+ @Override
+ public void onAllItemsRemoved() {
+ onRemove(null);
+ }
}
diff --git a/src/com/cyanogenmod/trebuchet/FolderInfo.java b/src/com/cyanogenmod/trebuchet/FolderInfo.java
index 7c6941b4d..56abaed72 100644
--- a/src/com/cyanogenmod/trebuchet/FolderInfo.java
+++ b/src/com/cyanogenmod/trebuchet/FolderInfo.java
@@ -105,6 +105,7 @@ class FolderInfo extends ItemInfo {
interface FolderListener {
public void onAdd(ShortcutInfo item);
public void onRemove(ShortcutInfo item);
+ public void onAllItemsRemoved();
public void onTitleChanged(CharSequence title);
public void onItemsChanged();
}
diff --git a/src/com/cyanogenmod/trebuchet/LiveFolderInfo.java b/src/com/cyanogenmod/trebuchet/LiveFolderInfo.java
index 0138dd656..19ce90613 100644
--- a/src/com/cyanogenmod/trebuchet/LiveFolderInfo.java
+++ b/src/com/cyanogenmod/trebuchet/LiveFolderInfo.java
@@ -46,13 +46,9 @@ class LiveFolderInfo extends FolderInfo {
}
public void removeAll() {
- Iterator<ShortcutInfo> iter = contents.iterator();
- while (iter.hasNext()) {
- ShortcutInfo info = iter.next();
- iter.remove();
- for (FolderListener listener : listeners) {
- listener.onRemove(info);
- }
+ contents.clear();
+ for (FolderListener listener : listeners) {
+ listener.onAllItemsRemoved();
}
itemsChanged();
}