From ea9910820299d5f15b720b699989da9755effe21 Mon Sep 17 00:00:00 2001 From: Roman Trapeznikov Date: Fri, 10 Apr 2020 13:58:28 +0300 Subject: [PATCH] add sorting key for some sorted functions for sorting nested lists --- assets/src/ba_data/python/bastd/ui/gather.py | 3 +-- assets/src/ba_data/python/efro/util.py | 2 ++ 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/assets/src/ba_data/python/bastd/ui/gather.py b/assets/src/ba_data/python/bastd/ui/gather.py index fc63e4f4..7611aee2 100644 --- a/assets/src/ba_data/python/bastd/ui/gather.py +++ b/assets/src/ba_data/python/bastd/ui/gather.py @@ -1451,8 +1451,7 @@ class GatherWindow(ba.Window): key=lambda p: ( p['queue'] is None, # Show non-queued last. p['ping'] if p['ping'] is not None else 999999, - p['index'], - p)) + p['index'])) existing_selection = self._public_party_list_selection first = True diff --git a/assets/src/ba_data/python/efro/util.py b/assets/src/ba_data/python/efro/util.py index 8f607758..aa777d4d 100644 --- a/assets/src/ba_data/python/efro/util.py +++ b/assets/src/ba_data/python/efro/util.py @@ -303,4 +303,6 @@ def make_hash(obj: Any) -> int: for k, v in new_obj.items(): new_obj[k] = make_hash(v) + # NOTE: there is sorted works correctly because it compares only + # unique first values (i.e. dict keys) return hash(tuple(frozenset(sorted(new_obj.items()))))