Fix connection lines for marriage events
- Update _get_events_for_person to include events where person is involved - For marriage events, both spouses now have connection lines to the marriage event - Uses _get_all_persons_for_event to check if person is involved in multi-person events
This commit is contained in:
parent
137de07052
commit
c9054752fd
@ -2590,6 +2590,7 @@ class MyTimelineView(NavigationView):
|
|||||||
def _get_events_for_person(self, person_handle: str, events_list: List['TimelineEvent']) -> List['TimelineEvent']:
|
def _get_events_for_person(self, person_handle: str, events_list: List['TimelineEvent']) -> List['TimelineEvent']:
|
||||||
"""
|
"""
|
||||||
Filter events list to only include events for a specific person.
|
Filter events list to only include events for a specific person.
|
||||||
|
For marriage events, includes the event if the person is one of the spouses.
|
||||||
|
|
||||||
Args:
|
Args:
|
||||||
person_handle: The handle of the person to filter events for.
|
person_handle: The handle of the person to filter events for.
|
||||||
@ -2598,10 +2599,21 @@ class MyTimelineView(NavigationView):
|
|||||||
Returns:
|
Returns:
|
||||||
List[TimelineEvent]: Filtered list of events for the specified person.
|
List[TimelineEvent]: Filtered list of events for the specified person.
|
||||||
"""
|
"""
|
||||||
return [
|
person_events = []
|
||||||
event for event in events_list
|
for event in events_list:
|
||||||
if self._person_matches_handle(event.person, person_handle)
|
# Check if event.person matches directly
|
||||||
]
|
if self._person_matches_handle(event.person, person_handle):
|
||||||
|
person_events.append(event)
|
||||||
|
else:
|
||||||
|
# For events that don't directly match, check if person is involved
|
||||||
|
# (e.g., marriage events where person is the other spouse)
|
||||||
|
all_persons = self._get_all_persons_for_event(event.event, event)
|
||||||
|
for person in all_persons:
|
||||||
|
if person.get_handle() == person_handle:
|
||||||
|
person_events.append(event)
|
||||||
|
break
|
||||||
|
|
||||||
|
return person_events
|
||||||
|
|
||||||
def _get_event_type_display_name(self, event_type: EventType) -> str:
|
def _get_event_type_display_name(self, event_type: EventType) -> str:
|
||||||
"""
|
"""
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user