Archive for March 28, 2016

Monday, March 28, 2016

Finder Drops Keystrokes After Creating New Folder

Pierre Igot:

In practical terms, it means that, after I press command-shift-N on my machine (a 2014 Mac Pro with 32 GB of RAM, with a 1 TB SSD as the startup volume), I cannot start typing the name right away. I have to wait for a fraction of a second before I do so. If I don’t, then the first couple of letters I type fail to appear in the folder name that I typed.

Yes, you read this right: I, Pierre Igot, am a supernaturally fast typist, with whom a powerful machine such as the 2014 Mac Pro is not able to keep up.

[…]

What is really unbelievable to me here is not so much that the Finder needs a fraction of a second after creating the folder. It is that there does not seem to be any kind of text input buffer that keeps my keystrokes in memory until the OS is ready to process them. The keystroke(s) that the Finder fails to register simply disappear into the ether, as if the characters had never been typed.

This is the sort of thing that “just worked” 25 years ago with the classic Finder, but it has been broken for so long in Mac OS X that there must already be lots of duplicate Radars. It works in most other places, though. In Mail, I can start typing an address after creating a new message. In Safari, I can type a search query or URL after creating a new window. I did not have to do anything special to make it work in EagleFiler when creating new folders or files.

I can only guess that the Finder’s folder creation is very asynchronous so that it continues processing events before the folder has been created. So the keys arrive before there is a text field for them to go to. But, at least on my Mac, they don’t go into the ether. They go towards type-selection in the current window. So, for example, if I create a new folder and type “foo”, the Finder selects the first file in the list whose name begins with “f”, and then it creates the new folder, selects it, and types “oo” for the name.

Update (2016-03-28): Vegar Nilsen:

I see the same thing fairly regularly with Spotlight, where it e.g. only captures “witter”, and can’t understand which app I wanted.

Update (2016-03-30): To clarify, I never see the issue in Icons view, only in the List and Columns views.

Swift Colon Care

Erica Sadun:

Since I started programming in Swift, I moved to the “Ash Rule” of left-hugging colons in all uses except ternary, up to and including dictionary references, protocols, etc.

[…]

Dave Abrahams clarified StdLib style on the Swift Evolution list today:

  • Full monty spaces for declarations and extensions
  • Left magnetism for providing values

Clear iOS Caches by Renting a Long Movie

Keir Thomas:

Put simply, renting a title larger than the remaining capacity on your device forces iOS to use a hitherto undisclosed clean-up routine, thereby freeing-up space. Even if the download is way too big, it’ll still try to free-up space. Neat!

[…]

It was originally claimed in the tip on Reddit that you won’t be able to actually rent the movie if you don’t have enough free space. In my tests I DID rent the movie, and got charged for it, but then I live in the UK where the rules are different compared to the US.

[…]

By tapping the Storage & iCloud Usage heading you might see that some free space has already been freed-up, but you must now return to the iTunes Store app and attempt to rent the movie again! And again tap to visit the Settings app. Repeat several times. Each time more space will be freed-up.

There should just be a button in Settings to delete transient app data. Right now, the officially supported way seems to be to erase the device and restore it from backup, which takes a really long time.

It annoys me when the system is supposed to manage a resource automatically but doesn’t do so properly. Mac OS X still gets into situations where the system gets really slow, virtual memory has created huge swap files, and yet quitting every open app doesn’t seem to improve things. Most of the memory should be available, but it isn’t being taken advantage of. The only solution is to reboot.

Previously: iOS 9 Space Savings.

Update (2016-03-28): Michael Rockwell:

This works when trying to download a previously purchased movie, too. No need to initiate a rental.