A WIP iOS app for Mastodon and Pleroma.
Go to file
Shadowfacts 244659c262
Fix intermittent crash
If a status in a conversation view controller creates a work item to
update the timestamp in 1 minute, but the view controller is deinit'd
before that time elapses, the mastodonController instance will be nil,
resulting in a crash.

The DispatchWorkItems's are cancelled by the respective cell deinit
methods. But if the work item has already begun, cancelling it has no
effect, potentially leading to a crash in the conditions described above
are true. Using a weak reference to self fixes this.

Additionally, don't unnecessarily recreate the work items every time.
They don't capture any local variables, only self, so nothing changes.
2020-03-01 18:33:44 -05:00
Ambassador@4fe264af51 Initial UI testing setup 2019-12-30 16:00:14 -05:00
BlankSlate.xcappdata Initial UI testing setup 2019-12-30 16:00:14 -05:00
Cache@8c42c575cf Refactor AvatarCache to ImageCache 2018-10-03 08:45:03 -04:00
Documentation Add X-Callback-URL for search 2019-09-15 18:12:49 -04:00
Embassy@189436100c Initial UI testing setup 2019-12-30 16:00:14 -05:00
Gifu@ed572f53ce Use Gifu for GIF playback 2018-11-09 15:48:08 -05:00
Pachyderm Remove old code 2020-02-28 19:24:14 -05:00
PachydermTests Add character counter 2018-09-29 22:20:17 -04:00
SwiftSoup@f445c9067d Start home timeline 2018-08-16 22:39:16 -04:00
Tusker Fix intermittent crash 2020-03-01 18:33:44 -05:00
Tusker.xcodeproj Change version, disable UI test web server temporarily 2020-03-01 18:23:10 -05:00
Tusker.xcworkspace Update SheetController 2020-02-22 15:29:42 -05:00
TuskerTests Collapse whitespace according to CSS spec after converting HTML to 2020-01-21 21:28:14 -05:00
TuskerUITests More UI testing setup and API mocks 2019-12-31 11:40:56 -05:00
.gitignore Remove playground 2018-09-23 21:37:10 -04:00
.gitmodules Initial UI testing setup 2019-12-30 16:00:14 -05:00
README.md Add installation instructions to readme 2020-01-06 20:35:11 -05:00

README.md

Tusker

Tusker is a WIP iOS app for Mastodon and Pleroma.

Installing for Development

Xcode 11 is required, macOS Mojave or later should work (only macOS Catalina is regularly tested).

  1. Clone the project: git clone https://git.shadowfacts.net/shadowfacts/Tusker.git
  2. Change directory into the project: cd Tusker
  3. Clone the submodules: git submodule init && git submodule update
  4. Open Tusker.xcworkspace in Xcode.
  5. Change the code signing identity to your own.
  6. Change the bundle identifier to something unique.
  7. Select a target in the Tusker scheme and build & run.