Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 876a3660 authored by Daniel Olusakin's avatar Daniel Olusakin
Browse files

Add resolved label to identifier when grouping targets for the alphabetical list

Change-Id: I168bd6f69660d401c98c50d450ab2155d3814a8e
parent 23c4146d
Loading
Loading
Loading
Loading
+6 −5
Original line number Diff line number Diff line
@@ -299,18 +299,19 @@ public class ChooserListAdapter extends ResolverListAdapter {
                // Consolidate multiple targets from same app.
                Map<String, DisplayResolveInfo> consolidated = new HashMap<>();
                for (DisplayResolveInfo info : allTargets) {
                    String packageName = info.getResolvedComponentName().getPackageName();
                    DisplayResolveInfo multiDri = consolidated.get(packageName);
                    String resolvedTarget = info.getResolvedComponentName().getPackageName()
                        + '#' + info.getDisplayLabel();
                    DisplayResolveInfo multiDri = consolidated.get(resolvedTarget);
                    if (multiDri == null) {
                        consolidated.put(packageName, info);
                        consolidated.put(resolvedTarget, info);
                    } else if (multiDri instanceof MultiDisplayResolveInfo) {
                        ((MultiDisplayResolveInfo) multiDri).addTarget(info);
                    } else {
                        // create consolidated target from the single DisplayResolveInfo
                        MultiDisplayResolveInfo multiDisplayResolveInfo =
                            new MultiDisplayResolveInfo(packageName, multiDri);
                            new MultiDisplayResolveInfo(resolvedTarget, multiDri);
                        multiDisplayResolveInfo.addTarget(info);
                        consolidated.put(packageName, multiDisplayResolveInfo);
                        consolidated.put(resolvedTarget, multiDisplayResolveInfo);
                    }
                }
                List<DisplayResolveInfo> groupedTargets = new ArrayList<>();