0.9.47 - 29 Aug 2016
Minimum OS X version: 10.10
Core
- Changed: Lua has been upgraded to 5.3.3
Extensions
- Fixed: Various crashes have either been fixed or guarded against
- Changed: hs.webview now has adjustable opacity and can present a toolbar
- Changed: hs.timer has been rewritten to use a more modern API, which should make it more reliable
- Changed: Various fixes/improvements to hs.hint vimperator mode
- Changed: images can now be used as tiled patterns for hs.drawing.color
- Changed: hs.alert has been rewritten to use hs.drawing and now has an option to leave the alert visible indefinitely
- Changed: hs.hotkey callbacks can now be tables with __call metamethods (this will be extended to other callback sites in a future release)
- Changed: hs.eventtap events now report NSEventTypePressure data, if available
- Added: hs.distributednotifications
- Added: hs.eventtap.event.newSystemKeyEvent()
- Added: hs.httpserver and hs.http now support WebSockets
- Added: hs.hsdocs for internal documentation browsing
- Added: hs.image.imageFromURL()
- Added: hs.mouse.trackingSpeed()
- Added: hs.noises
- Added: hs.hints.titleMaxSize and hs.hints.titleRegexSub
- Added: hs.grid.getCell()
- Added: hs.timer:fire()
- Added: hs.network.interfaces(), hs.network.interfaceDetails(), hs.network.primaryInterfaces(), hs.network.addresses(), hs.network.interfaceName(),
0.9.46 - 15 Apr 2016
Minimum OS X version: 10.8
Core
- Added: basic tab completion to the Console window input field
- Fixed: some inconsistent behaviours with the Console window input field and multi-line strings
- Fixed: potential crash relating to launch-at-login
- Fixed: Lua environment is now gracefully shut down when quitting Hammerspoon from its menubar item
- Fixed: The ‘Open Config’ menu item will now default to TextEdit if no default editor for Lua files, exists
Extensions
- Fixed: hs.image:saveToFile() should be more reliable now
- Fixed: crash in hs.task
- Fixed: hs.http handles modified responses correctly now
- Fixed: hs.location sunrise/sunset calculations are more correct
- Fixed: hs.javascript should handle parse errors more gracefully
- Fixed: hs.grid should now move windows more reliably
- Fixed: hs.audiodevice volume setting
- Fixed: various bugs in hs.expose
- Changed: hs.drawing and hs.webview objects can now smoothly fade in/out when they are shown/hidden
- Changed: hs.sound methods now return the hs.sound object. hs.sound.setCallback renamed to hs.sound.callback
- Changed: hs.menubar now supports hs.styledtext for menubar items and various other additions
- Changed: hs.grid can now move windows without resizing them, by selecting a new top-left point and hitting Enter
- Changed: hs.grid can now be navigated with cursor keys
- Changed: hs.grid can now use a custom per-screen frame
- Changed: hs command line tool now has a timeout argument
- Changed: hs.alert.closeAll() now has an optional duration parameter
- Changed: hs.fs functions now expand ‘~’ correctly
- Changed: hs.notify notifications can now include images
- Changed: hs.redshift colour ramp can now be customised
- Changed: hs.application:getMenuItems() now includes keyboard shortcut information
- Added: hs.socket (for tcp/udp/unix sockets, with TLS support)
- Added: hs.window.hilight
- Added: hs.window.switcher
- Added: hs.network.configuration
- Added: hs.network.host
- Added: hs.network.reachability
- Added: hs.osascript
- Added: hs.image:size(), hs.image:setSize()
- Added: various hs.pasteboard functions for interacting with different content types on the clipboard
- Added: more system images to hs.image, hs.image.iconForFile(), hs.image.iconForFileType(), hs.image.imageFromMediaFile()
- Added: hs.file.fileUTI(),
- Added: hs.tabs tabs are now clickable
- Added: hs.audiodevice:inputVolume(), hs.audiodevice:outputVolume(), hs.audiodevice:setInputVolume(), hs.audiodevice:setOutputVolume()
- Added: hs.wifi.associate()
- Added: hs.window.filter.defaultCurrentSpace(), hs.window.filter.focusNorth/South/East/West, hs.window.filter.windowsChanged.
- Added: hs.screen:localToAbsolute(), hs.screen:absoluteToLocal()
- Added: hs.window:centerOnScreen()
- Added: hs.application.pathForBundleID(), hs.application:path()