Refresh menu item is disabled on macOS #302
Labels
No Milestone
No Assignees
2 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: shadowfacts/Tusker#302
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Picture:
I'm on the main timeline page so presumably it should work here?
I think the issue is that
SplitNavigationController
fucks up the responder chain. When it jumps from the secondary nav controller to the root nav controller, it needs to go as far in as possible rather than starting from the inner VC's view but I'm not sure if there's public API for that.I looked into this and found that the problem appears to be that the timeline view never gets focus or added to the responder chain. The focus would keep going to the page view controller content view, and its internal scroll view, and not the embedded view controller. After a bunch of reversing I did a search and found that
UIPageViewController
apparently doesn't support focusable content. Oops.I have a hack locally that fixes this by swizzling
-[_UIQueuingScrollView canBecomeFocused]
and-[_UIPageViewControllerContentView canBecomeFocused]
to returnNO
, which allows interaction into the detail controller and thenTimelineViewController
is possible to put in the responder chain. But this is probably not something you'd want to ship.I've had a feedback open about that for years; I didn't realize it was also interfering with keyboard shortcuts.
I have a half written UIPageViewController replacement, I guess it's time to finish it.
Moved away from UIPageViewController (
e4f3735c9f
), the issue now is that whenever focus (and thus the first responder) moves to the sidebar, the key commands for the main VC are inaccessible.The latest build (66) has a couple workarounds for this, so keyboard shortcuts should be usable again.