     }
 
     var historyCache: PlayList = PlayList.init(name: UserSettings.HistoryName.value,
-                                               list: [PlayItem]())
+                                                 list: [PlayItem]())
+    
     override func viewWillAppear() {
-
         //  Leave non-global extractions contents intact
         if let url = self.view.window?.windowController?.document?.fileURL, url?.isFileURL ?? false, url?.pathExtension == k.h3w {
+            
+            //  update window close button with url as tooltip
+            if let titleView = self.view.window?.standardWindowButton(.closeButton)?.superview {
+                titleView.toolTip = url?.absoluteString.removingPercentEncoding
+            }
+        }
+        else
+        {
             //  For global playlists, load shared by all; app delegate keeps history
             self.restorePlaylists(nil)
             


                    let path = fileURL!.absoluteString//.stringByRemovingPercentEncoding
                    let attr = appDelegate.metadataDictionaryForFileAt((fileURL?.path)!)
                    let time = attr?[kMDItemDurationSeconds] as! Double
                    let fuzz = (itemURL as AnyObject).deletingPathExtension!!.lastPathComponent as NSString
                    let name = fuzz.removingPercentEncoding
                    let list: Array<PlayItem> = play!.list.sorted(by: { (lhs, rhs) -> Bool in

                    let dict = item.dictionary()
                    items.append(dict)
                }
                dict[name] = items
            }
            if let fileURL = NewFileURLForWriting(path: dropDestination.path, name: promise, type: k.h3w) {
                (dict as NSDictionary).write(to: fileURL, atomically: true)
                names.append(fileURL.absoluteString)
            }
        }
        else
