1.4.1: 2023-11-14 * fixed accel orientation when switching between rotated and non-rotated scenes, bug only affected rjdj scenes and pdparty scenes using accel orientation * fixed potential crash when loading tgl or bng if atom line is < 19 in length aka malformed patch file (tangentially reported by Coti Kappa) 1.4.0: 2023-11-10 * updated to libpd 0.14.0 (pd 0.54-1) * catch empty config.json osc send host string, default to "localhost" 1.4.0-beta4: 2023-11-10 * added support for loading basic settings in a config.json file and opening a patch or scene at startup (requested by Jason Corder) 1.4.0-beta3: 2023-11-08 * updated to prelim libpd 0.14.0 (pd 0.54-1) * fixed dancing rotation bug on iOS 16 by setting new rotation flag (reported by many!) * fixed midi settings edit mode remaining on after disabling midi * added note about two-finger drag over GUI widgets to user guide * added notes to user guide about opening scene folders * midi multiple device mode now shows up to 16 available devices, usable devices remain limited to ports 1-4 (requested by Serafino Di Rosario) * updated info view description handling to expand as needed by content * info view itself now scrolls instead of description only * improved pdparty:// url scheme handling to ignore unknown host message types (reported by Jason Corder) * now map extendedGamepad before microGamepad as both pointers appear to be set when an extended gamepad appears 1.4.0-beta2: 2023-09-01 * fixed cnv and vu not handling color messages with 3 args * fixed bug where custom font is lost on scene reload * fixed missing cd before running submodule update in readme clone info * added support for custom font.ttf or font.otf in PdParty scenes (for Matthew Gardiner) * controller - updated gamepad handling for new thumbstick, menu, options, and home buttons - deprecated pause button to iOS 12 and earlier (use back button in iOS 13+) - replaced gamepad usage with microGamepad and extendedGamepad * no longer draw ViewPort cnv to match DroidParty behavior (use additional cnv objects for per-view area backgrounds) * enable multitouch for cnv and comment and always forward cnv touch events regardless of everywhere setting (requested by Josef Novotny) * background content mode scale to fill for party scenes * updated to minzip 1.3 1.4.0-beta1: 2023-08-29 * updated to prelim libpd 0.14.0 (pd 0.54-0) * min deployment target now iOS 11.0 * fixed crash in key handling due to nil key chars for controller pause button UIPress event * kiosk updates (for Matthew Gardiner): - added Guided Access options to hide back button and controls button - added dynamic background support for PdParty scenes via #pdparty background - added Background test PdParty scene 1.3.2: 2022-12-29 * fixed 44.1k samplerate "41000" typo (reported by thumpclang) NOTE: if you are using a 44.1k samplerate, please go to settings, select a new samplerate, then reselect 44.1k to ensure the correct value is saved * fixed no initial audio inputs by setting audio session category and activating on start (reported by Josef Novotny) * fixed #pdparty acceleration orientation message handling * force browser toolbar width so auto layout can handle bar items on iOS 11+ without exceptions * slightly increase controls view height to keep mic icon from being cut off on iphone 1.3.1: 2022-12-26 * fixed multi-channel audio by re-enabling reconfiguration on route change * fixed dangling , in comments by concatenating single commas with previous words when parsing patch * fixed controls view layout exception by removing unneeded controls view y center constraint * added multi_channel test patch (run copy tests in settings to update) * replaced cocoa lumberjack with simplified logging using the same approach * don't need to check for max stereo channels since auto controller preferStereo is set 1.3.0: 2022-12-16 * updated to libpd 0.13.2 (pd 0.53-1) * fixed nil globals when patch view is loaded from nib on iPad, this caused the controls view play/pause and record buttons to not work among other things * fixed dark status bar in dark mode * fixed translucent nav bars for form modals on iPad * fixed vu meter led drawing by no longer applying scale to line width * fixed rjdj scene slider cutoff on iPad landscape * simplified gui aspect scaling to use scaleX in portrait and scaleY in landscape for iPhone and vice versa on iPad * changed location services to request "when in used" + background mode instead of "always on", this also fixes permissions popup not appearing after selecting "ask next time" * now use default nav bar style to match light/dark mode * tweaked controls view layout and sizing * set osc send & receive port placeholders to match defaults * removed view controller preferredStatusBarStyle: as it was overridden by info plist anyway 1.3.0-beta6: 2022-11-30 * replace nav and split view controller rotation handling categories with subclasses, appears to fix rotation on iOS 14+ (Servando's dancing iPhone) * fixed comment width value handling * fixed vumeter led scaling * fixed motion user accel sent using gravity values * fixed microphone image double-tap not actually sending mic volume * changed widget scaling mode to use aspect ratio, this should render smaller widgets instead of overlaps on oblique sizes, ex. 4:3 patch on 16:9 * key - fixed [key] & [keyup] using HID keycodes instead of character values - added [keyname] support for iOS 13.4+ * viewport - added support for droidparty named ViewPort canvas, set it's size and pos to render only a subsection of overall patch (requested by Antoine Rousseau) - added ViewPort pdparty test scene * touch - added extended #touch with radius / force and #stylus events for ApplePencil and similar devices, enable by sending: #pdparty touch extended 1 (requested by korakios) - added support for sending #touch events everywhere aka over all widgets, enable by sending: #pdparty touch everywhere 1 - #touch events now sent over canvas and comment objects (requested by delmenhorst) * accelerometer orientation now matches device orientation except for rjdj scenes, reenable old behavior by sending: #pdparty accel orientation 1 * controls view now light/dark mode aware * increased ribbon control width and ensure a minimum size * updated various test scenes (reload by copy tests folder in Settings) * updated user guide info on sharing and AirDrop usage * removed dependence on [getdir] in OpenClose test 1.3.0-beta5: 2022-11-18 * updated to libpd 0.13.1 (pd 0.53-0) * OSC multicast update: - added OSC multicast receiving support (IPv4 only for now) - updated OSC settings view with separate send and receive sections - fixed OSC restart timer retrigger due to missing invalidation - don't hide settings on OSC server error so bad values can be fixed * added double-tap microphone image to toggle mic input value * added Elemental - Rain PdParty sample by Tiago Brizolara * record timestamp now prepended and format now MM-dd-yyyy_HH-mm-ss to nominally match original robotcowboy project file naming 1.3.0-beta4: 2022-07-31 * added #motion events for processed device orientation, rotation, and separate gravity/user accel (developed from contribution by Tiago Brizolara) * added Motion pdparty test (run copy tests in settings to update) 1.3.0-beta3: 2022-07-11 * fixed crash when using Bluetooth MIDI device due to missing privacy message (reported by Jonathan Pivar via TestFlight crashlog) * fixed TriSamp sample rate handling (run copy samples in settings to update) * added List widget for pd 0.52 * added dark mode support for native ui (not patch canvas) * non-rjdj scenes now use selectable sample rate in settings: 48k, 44.1k, or 96k * default sample rate now 48000 to match modern devices * improved empty symbol handling and no longer require default 'symbol' text * various auto layout fixes * removed console view size constraint on ipad * removed unneeded patchview_bg 1.3.0-beta2: 2022-07-09 * fixed Bluetooth and AirPlay not actually enabled (reported by Peter Gahn) * fixed open via pdparty:// url null path handling (reported by Josef Novotny) 1.3.0-beta1: 2022-07-07 * updated to libpd 0.13.0 pre-release (pd 0.52-2) * major audio updates via the Obj-C audio overhaul in libpd 0.12+: - fixed sample rate handling on newer devices, now independent of hardware - Bluetooth and AirPlay output should now work as expected - multi-channel I/O should also work (not fully tested beyond 2 in / 2 out) * fixed parsing of Pd 0.52+ escaped strings by replacing custom atom line parser with binbuf * fixed iem gui colors by adding support for Pd 0.52+ hex color values * fixed note ghosting from some devices by forcing midi note off vel to 0 for pd * fixed failure to reload Browser after rename action * added support for receiving patches and zip files via AirDrop * added support for managing PdParty Documents folder in the Files app (fomalsd) * added [keyup] support via KeyGrabberView UIPresses event backend on iOS 13.4+ * added #shake event * added Browser copy action to Move... menu * added location update background mode to help keep GPS events (more) alive * added numerous device template patches to composerpack * replaced launch screen image asset with launch screen storyboard to fix iOS 13 deprecation warning * prefer opening a min of 2 audio inputs and 2 audio outputs * set default mic volume to 0.25 * increased controls height for better toolbar spacing on newer iOS versions * ignore dark mode for now, proper support requires updates to the GUI rendering * Browser Delete action now red * moved osc-test patch into composerpack (requested by Peter Gahn) * now build liblo as a static lib xcode project since old method of manually building and linking archs is no longer valid for m1 machines (simulator will not link) * updated user guide for AirDrop / Files app (fomalsd) * updates and clarifications to readme and User Guide * various deprecation and bug fixes * removed prebuilt static liblo.a 1.2.1: 2018-11-27 * fixed iOS 8 & 9 crash on start (reported by Gianluca Delfino) * fixed virtual MIDI port not actually working (reported by Kent Finley) * fixed MIDI Settings sometimes not displaying all outputs * fixed iOS 8 RJScene hang on load due to auto layout loop * fixed iOS 8 RJScene controls view auto layout bug * added note ping to PdParty Midi test scene * various small auto layout fixes 1.2.0: 2018-10-22 * audio update: - added multi-channel support, experimental (requested by janos bali) - added speaker/earpiece toggle for iPhone (controls popup & RJ info view) - enabled audio session bluetooth and airplay output support * MIDI overhaul: - replaced PGMidi library with custom class using CoreMIDI - devices are now ordered by port index - added virtual port support - added Bluetooth MIDI device support - added Multiple Device Mode for channel offsets like desktop pd * show error alert and exit patch view if scene (re)loading failed * added timestamp argument to #pdparty time message * added accel cookbook examples to composerpack * added game controller axis and button name strings to guide * added OSC flood and MIDI tests * fixed crash due to timezone + character when building timestamp * make sure Browser back swipe gesture is actually disabled * fixed Browser files not being sorted * fixed loadsave not converting -dash arg in send name * fixed non-drawable widgets in subpatches not being added, ie. [loadsave] * fixed incorrect MIDI pitchbend range (reported by rtsound) * updated to libpd 0.11.0 (pd 0.48-2) * min deployment target now iOS 8.0, iOS 6 is no longer supported * updated to support newer device screen sizes (iPhone X, etc) * updated RecordingScene to use AVPlayer with custom controls * speed up outgoing OSC by polling waiting pd messages using CVDisplayLink * speed up web view loading by disabling data detectors (ie. phone #, links) * replaced browser audio wave icon with tape * updated app icon to borderless design as transparency is no longer allowed * replaced ZipArchive library with simple minizip Unzip wrapper * updated MBProgressHUD library to latest version * updated acknowledgements * removed browser icon as there is no easy way to set it after updating to new split view delegate code, so boring "