Commit Graph

21 Commits

Author SHA1 Message Date
Stephen Heumann
e2b2305b10 Improved clean-up code.
This shouldn't ordinarily make any difference, but it may help to ensure things are correctly handled in some corner cases.
2019-04-19 17:17:09 -05:00
Stephen Heumann
ef301fd7fc Add support for fetching more results. 2019-04-18 22:58:57 -05:00
Stephen Heumann
999b6130a4 Rearrange/refactor DiskBrowser code into smaller, more focused files.
There are only a few minor code changes, and nothing that should have an effect on functionality. This is basically just rearranging the code.
2019-04-18 13:24:43 -05:00
Stephen Heumann
28e1125207 Open up the Finder window for the new disk after it has been mounted.
We have to wait through two cycles of the Finder's event loop before asking for it to be opened. Doing it earlier may cause the Finder to crash, presumably because it hasn't registered that a new disk has been inserted and updated its internal data structures accordingly.
2019-04-17 22:17:19 -05:00
Stephen Heumann
d9186312ce Initial working support for mounting disks. 2019-04-17 20:11:49 -05:00
Stephen Heumann
15931f20a2 Switch back to using single buttons, and draw our own outlines around them.
This provides a less flickery display, and arguably cleaner code. The outlines should perfectly match the look of the stock "default" buttons, although obviously this wouldn't work right if their design was ever changed.
2019-04-17 16:55:36 -05:00
Stephen Heumann
ec309557b5 Switch the default button based on the target control.
This currently works by actually having two different controls for each button.
2019-04-16 22:58:46 -05:00
Stephen Heumann
048f421af2 Remove controls for paging through disks.
The plan is to allow loading more results into the list instead.
2019-04-16 14:35:07 -05:00
Stephen Heumann
aea01b7721 Ask archive.org to sort the results by title.
This should give more consistent results if queried multiple times (which will be useful once we allow loading more results), and cause multi-disk series to appear together. It should also make the keyboard binding for the list control work more sensibly.
2019-04-16 14:26:24 -05:00
Stephen Heumann
37b26592d0 Work around Marinetti bug 57.
This could cause Marinetti to return more data than it should, starting with valid data but then including corrupt data.

The workaround I'm using is to have Marinetti return a new handle and then copy the data out of it, using the size of the handle as the true size of the data that was read. Because of details of how Marinetti works, that size is correct.
2019-04-15 19:50:36 -05:00
Stephen Heumann
5d59a9d032 Percent-encode query string. Also, display basic error messages. 2019-04-14 19:36:01 -05:00
Stephen Heumann
827dc6fefe Search for disks based on the query string. 2019-04-14 13:15:29 -05:00
Stephen Heumann
19b00980c9 Add some clean-up code. 2019-04-14 01:46:16 -05:00
Stephen Heumann
9f245a3f79 Parse and display the list of disks. 2019-04-13 23:25:02 -05:00
Stephen Heumann
72411079f9 Initial code for fetching a JSON disk list from archive.org. 2019-04-13 15:32:13 -05:00
Stephen Heumann
8c7ef2e331 Check for presence of NetDisk and Marinetti, and bail out if they're missing. 2019-04-12 19:38:46 -05:00
Stephen Heumann
b3b9eea27e Only allow disks list to be target when it's active. 2019-04-11 18:28:05 -05:00
Stephen Heumann
44d02d36e1 More event processing and tweaks to controls. 2019-04-11 14:40:12 -05:00
Stephen Heumann
f862c2bef8 Cut/copy/paste support and small tweaks to controls. 2019-04-11 00:50:38 -05:00
Stephen Heumann
5a7e0de0d1 Set things up so that events on the window are handled similarly to an NDA.
At this point, the controls in the window are active (but do nothing), and the window can be closed.
2019-04-10 22:07:37 -05:00
Stephen Heumann
93dcee6313 Initial version of disk browser FExt, with basic UI. 2019-04-10 18:20:57 -05:00