{"id":2390,"date":"2021-12-17T20:04:26","date_gmt":"2021-12-18T01:04:26","guid":{"rendered":"https:\/\/michaelrowe01.com\/?p=2390"},"modified":"2022-12-15T06:46:01","modified_gmt":"2022-12-15T11:46:01","slug":"update-on-holiday-card-tracker","status":"publish","type":"post","link":"https:\/\/michaelrowe01.com\/index.php\/personal-softwareandit\/update-on-holiday-card-tracker\/","title":{"rendered":"Update on Holiday Card Tracker"},"content":{"rendered":"\n<p>A few years back I started an app that I was thinking of calling Christmas card tracker. The goal of the app was to learn Core Data.  I spent time at WWDC working with a fellow attendee to fix problems I was having with Autolayout constraints, and got an early version working enough to where I could start capturing the cards my wife and I send out each year.<\/p>\n\n\n\n<p>I then ran out of time and put it on the back burner.  Along comes SwiftUI and I re-wrote the app from scratch, fixing a ton of problems, and along the way making it available for macOS, iPadOS and iOS, I even toyed with a watchOS version. It took me a few years of sporadic work, as I did a rewrite of my app Wasted Time, so that it could run on macOS and tvOS.<\/p>\n\n\n\n<p>Well I am very close to releasing version 1.0, but have run into a very frustrating bug.  When I go to add a new recipient of a card I give the user the option of searching their contacts list, or adding a new entry in the app.  The Mac version of the screen can be seen here:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"660\" height=\"677\" src=\"https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2021\/12\/Screen-Shot-2021-12-17-at-19.55.19.png?resize=660%2C677&#038;ssl=1\" alt=\"\" class=\"wp-image-2391\" srcset=\"https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2021\/12\/Screen-Shot-2021-12-17-at-19.55.19.png?resize=998%2C1024&amp;ssl=1 998w, https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2021\/12\/Screen-Shot-2021-12-17-at-19.55.19.png?resize=292%2C300&amp;ssl=1 292w, https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2021\/12\/Screen-Shot-2021-12-17-at-19.55.19.png?resize=768%2C788&amp;ssl=1 768w, https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2021\/12\/Screen-Shot-2021-12-17-at-19.55.19.png?w=1292&amp;ssl=1 1292w\" sizes=\"auto, (max-width: 660px) 100vw, 660px\" \/><figcaption>Add Recipient Screen.<\/figcaption><\/figure>\n\n\n\n<p>As you can see, their are three icons.  The first is save, the second is search (your contacts) and the the third is close the entry without a save.  The problem is, you don&#8217;t see a cursor in the first input field &#8211; &#8220;First Name&#8221;.  You can use a mouse or the tab key to move the cursor into the field.  You can type and tab between fields; however, on the iPad or iPhone, you cannot touch the screen to start entering in the field.  You actually can&#8217;t enter the cursor into any fields, without a mouse or keyboard.<\/p>\n\n\n\n<p>I am hoping to resolve this issue, but I&#8217;ve been banging my head for some time.  I&#8217;ve tried posting on Stack Overflow, and all I got was a standard (you&#8217;ve posted too much code) statement.  I posted in two different Swift developer community slacks.  And so far I am still stuck.  I&#8217;ve tried setting the first responder, and that didn&#8217;t work.  My next idea will be to remove the Geometry Reader that I use to size the City, State, Zip entries. <\/p>\n\n\n\n<p>Will post when I figure this out.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A few years back I started an app that I was thinking of calling Christmas card tracker. The goal of the app was to learn Core Data. I spent time at WWDC working with a fellow attendee to fix problems I was having with Autolayout constraints, and got an early version working enough to where [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_wp_convertkit_post_meta":{"form":"-1","landing_page":"0","tag":"0","restrict_content":"0"},"hide_page_title":"","footnotes":""},"categories":[3],"tags":[589,591,527],"class_list":["post-2390","post","type-post","status-publish","format-standard","hentry","category-personal-softwareandit","tag-cardtracer","tag-christmas-cards","tag-swiftui"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/michaelrowe01.com\/index.php\/wp-json\/wp\/v2\/posts\/2390","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/michaelrowe01.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/michaelrowe01.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/michaelrowe01.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/michaelrowe01.com\/index.php\/wp-json\/wp\/v2\/comments?post=2390"}],"version-history":[{"count":1,"href":"https:\/\/michaelrowe01.com\/index.php\/wp-json\/wp\/v2\/posts\/2390\/revisions"}],"predecessor-version":[{"id":2392,"href":"https:\/\/michaelrowe01.com\/index.php\/wp-json\/wp\/v2\/posts\/2390\/revisions\/2392"}],"wp:attachment":[{"href":"https:\/\/michaelrowe01.com\/index.php\/wp-json\/wp\/v2\/media?parent=2390"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/michaelrowe01.com\/index.php\/wp-json\/wp\/v2\/categories?post=2390"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/michaelrowe01.com\/index.php\/wp-json\/wp\/v2\/tags?post=2390"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}