Skip to content

Releases: swiftDialog/swiftDialog

swiftDialog 2.4.2

28 Feb 11:43
940f2c6
Compare
Choose a tag to compare

Bug fixes:

  • Fixed an issue where sending height or width commands to the command file would cause the app to quit #351
  • Fixed the warning message that is sent to stderr when notifications are not available to only occur when --notification is specified.

swiftDialog 2.4.1

12 Feb 21:56
fe273a0
Compare
Choose a tag to compare

Update release

Fixes:

  • listitem spacing should be back to how it appeared pre 2.4.0 #345
  • dialog windows should display properly on all spaces, including fullscreen apps when using --ontop
  • when using a blank or null --message "", it should now be blank and not default to the boilerplate text
  • images used in notifications (when specified with --icon which gets attached as an image) should work again
  • notifications can now trigger the default notification sound with --enablenotificationsounds
  • notification with a single action will now show the button label on hover

swiftDialog 2.4.1 Beta 1

09 Feb 22:07
Compare
Choose a tag to compare
Pre-release

Fixes:

  • listitem spacing should be back to how it appeared pre 2.4.0 #345
  • dialog windows should display properly on all spaces, including fullscreen apps when using --ontop
  • when using a blank or null --message "", it should now be blank and not default to the boilerplate text
  • images used in notifications (when specified with --icon which gets attached as an image) should work again
  • notifications can now trigger the default notification sound with --enablenotificationsounds
  • notification with a single action will now show the button label on hover

SwiftDialog 2.4.0

06 Feb 01:28
a9280e5
Compare
Choose a tag to compare

New features

Notifications

  • --notification can now accept --button1action to set a default action to take when a user clicks a notification. can be a URL or command:

    image

    e.g.

    --notification --title "<text>" --message "<text>" --button1action "open -a Safari.app"

    --notification --title "<text>" --message "<text>" --button1action "https://swiftdialog.app/"

  • Additionally, You can specify an additional action and define button labels :

    --notification --title "<text>" --message "<text>" --button1text "Do Something" --button1action "/do/something" --button2text "Do Something Else" --button2action "/do/something/else/"

    • --button1action will remain the default action if either the notification or button1 is actioned. button2action will only trigger if button2 is actioned.

List Items

  • Added "subtitle" option to listitems.

    Listitems can now have a subtitle. This expands the space used by all listitems and allows for up to 2 lines of additional descriptive text.

    --listitem "Some Item Title",subtitle="Some Item subtitle with additional details"

    image

    Advanced example courtesy of @dan-snelson and Setup Your Mac

    image

Window Controls

  • New --windowbuttons argument - shows the close, minimize and maximise/fullscreen buttons on the window

    image
    • This enables all buttons by default (the maximise/zoom button is only enabled if the window is also resizable).
    • Individual buttons can be selectively enabled by passing in one or more of close min or max as an argument, e.g, --windowbuttons min will only enable the minimise button
  • New --resizable option which enables the window to be resizable by clicking and dragging the window corners.

    • Using this option implies --moveable
    • NOTE: macOS will initiate new rezizable windows with the same window dimentions as the last run swiftdialog window. i.e. if a dialog has dimentions 800x600 when it is closed and a new resizable dialog is launched, it will also have dimentions 800x600 regardless of what --width or --height options are specified. Take this behaviour into account when using this option.

Other New Features

  • computer is a valid option wherever icon can be used (e.g. --icon computer). shows the visual representation of the device

    image
  • New text= for image sources. useful for using emoji as icons for example --icon text=🙂

  • New color= for --background and --bannerimage so you can use solid colours instead of images for those commands --background color=red --bannerimage colour=#12a4b1

  • New --bannerheight to specify an exact height for the banner

  • Add Missing System Font Weights and Colors - pr #321

  • Added --hidedefaultkeyboardaction argument. Changes the default "Return" or "Escape" keys to require cmd+shift. This helps mitigate against non-intentional dismissal of dialogs. #125

  • Added a property to non switch style checkboxes that allows them to affect button1. This is useful for terms and conditions style checkboxes where you want to disable the button until the user has agreed to the terms.

    • Example: dialog --checkbox "I Agree",enableButton1 --button1disabled
      image image
  • Added basic support for a date picker #224

    • Example: --textfield "Choose a date",isdate=true
    image
    • NOTE: There is no date validation at this point in time. This capability simply puts the selected date into the textfield.
  • Added an option to have live validation of textfields that have a format requirement using regex.

    • Enabled with the --textfieldlivevalidation argument

    dialog --textfield "Enter in 4 numbers",regex="^\d{4}$" --textfieldlivevalidation

    image

Fixes

  • json processing properly accepts numbers now so {"width" : 450} is acceptable (as is the current method where everything needs to be treated as a string)

  • Icons used in listitems are now width limited in addition to height - this is important for sf symbol rendering so they are all the same size

  • fixed an issue where float to string to float conversion (if/when it happens) would fail if the number format for the users locale was 1.234.567,80 (this may be an issue in swift with how CGFloat is represented as a string as regardless of locale the float is converted to a string with a period instead of a locale specific decimal point - e.g. 123 becomes 123.0

swiftDialog 2.4 RC 1

02 Feb 07:10
Compare
Choose a tag to compare
swiftDialog 2.4 RC 1 Pre-release
Pre-release

First release candidate of v2.4.

Updates since Beta 3:

  • tweaks to listitem layout

Full Changelog: v2.4.0.4746...v2.4.0.4750

swiftDialog v2.4.0 Beta 3

21 Jan 08:35
Compare
Choose a tag to compare
Pre-release

Updates since Beta 2:

  • Fixed an issue introduced in beta 2 where SF symbols were too small when used in list items. #330
  • Added "subtitle" option to listitems. #331
  • Added --resizable as a command line argument so windows can be re-sized by the user.
    • using this option implies --moveable
    • macOS will initiate new windows with whatever the window size was of the previous one. Take this into account when using. (this behaviour may change before release)
  • --windowbuttons enables all buttons by default (the maximise/zoom button is onlt enabled if the window is resizable).
    • individual buttons can be selectively enabled by passing in one or more of close min or max as an argument, e.g, --windowbuttons min will only enable the minimise button
    • the close button now properly quits dialog instead of just closing the window.

swiftDialog v2.4.0 Beta 2

16 Jan 12:32
Compare
Choose a tag to compare
Pre-release

Updates since Beta 1:

  • adjusted icon padding when using SF symbol vs app icon/computer image #323
  • fixed an indexing issue with date picker
  • fixed an issue where float to string to float conversion (if/when it happens) would fail if the number format for the users locale was 1.234.567,80 (this may be an issue in swift with how CGFloat is represented as a string as regardless of locale the float is converted to a string with a period instead of a locale specific decimal point - e.g. 123 becomes 123.0
  • added an option to have live validation of textfields that have a format requirement using regex.
    • Enabled with the --textfieldlivevalidation argument

swiftDialog v2.4.0 Beta 1

02 Jan 05:38
Compare
Choose a tag to compare
Pre-release

New things

  • --windowbuttons argument - shows the close, minimize and maximise/fullscreen buttons on the window
    image

  • computer is a valid option wherever icon can be used (e.g. --icon computer). shows the visual representation of the device

  • New text= for image sources. useful for using emoji as icons for example --icon text=🙂

  • New color= for --background and --bannerimage so you can use solid colours instead of images for those commands --background color=red --bannerimage colour=#12a4b1

  • Added --bannerheight so you can specify an exact height for the banner

  • json processing properly accepts numbers now so {"width" : 450} is acceptable (as is the current method where everything needs to be treated as a string)

  • Icons used in listitems are now width limited in addition to height - this is important for sf symbol rendering so they are all the same size

  • Add Missing System Font Weights and Colors - pr #321

  • --notification can now accept --button1action to set a default action to take when a user clicks a notification. can be a URL or command:
    image

    • e.g. --notification --title "<text>" --message "<text>" --button1action "open -a Safari.app"
    • --notification --title "<text>" --message "<text>" --button1action "https://swiftdialog.app/"
    • You can specify an additional action and define the button labels : --notification --title "<text>" --message "<text>" --button1text "Do Something" --button1action "/do/something" --button2text "Do Something Else" --button2action "/do/something/else/"
    • --button1action will remain the default action if either the notification or button1 is actioned. button2action will only trigger if button2 is actioned.
  • Added --hidedefaultkeyboardaction argument. Changes the default "Return" or "Escape" keys to require cmd+shift. This helps mitigate against non-intentional dismissal of dialogs. #125

  • Added a property to non switch style checkboxes that allows them to affect button1. This is useful for terms and conditions style checkboxes where you want to disable the button until the user has agreed to the terms.

    • Example: dialog --checkbox "I Agree",enableButton1 --button1disabled
      image image
  • Initial work on a date picker #224

    • Example: --textfield "Choose a date",isdate=true
    image
    • No validation at this point in time. Just puts the selected date into the textfield.
  • A bunch of code stuff under the hood that won't be noticed but makes my life a little easier 😉

swiftDialog v2.3.3

08 Nov 00:07
78122aa
Compare
Choose a tag to compare

What's Changed

  • Enable User's Preferred Accent Colour & Fix auto Symbol Rendering by @macserv in #305
    • use colour=auto or colour=accent
  • Added titlefont and bannerimage to command file commands. #311
  • Added new command --displaylog <path>. Will stream content sent to the file located at <path> ( @macvfx for inspiration)
  • Added new command --positionoffset <num>. Used with the --position command lets you set the screen edge offset (distance of the dialog to the screen edges. default is 16)
  • Added --eula as a mode. Converts the message area to monospace font with background
    • This mode has no logic behind it and only changes the display behaviour. Accepting an EULA is the responsibility of the script author to prompt for and process any actions required. e.g. dialog --message "https://raw.githubusercontent.com/swiftDialog/swiftDialog/main/LICENSE.md" --eula --checkbox "I agree" with some script logic to process whether the "I Agree" checkbox was actioned
  • Added initial support for animated SF symbols (macOS 14 only).
    • Example usage:
      --icon sf=rainbow,colour=auto,animation=variable
    • Limited support at this time using the following animation types:
      "variable":
      "variable.reversing"
      "variable.iterative"
      "variable.iterative.reversing"
      "variable.cumulative"
      "pulse"
      "pulse.bylayer"
  • Fixed centreicon + image results in duplicate icon below image #302
  • Fixed Additional blank window in fullscreen mode #308

New Contributors 🎉

swiftDialog 2.3.3 Beta 1

09 Oct 23:08
Compare
Choose a tag to compare
Pre-release

What's Changed

  • Enable User's Preferred Accent Colour & Fix auto Symbol Rendering by @macserv in #305
    • use colour=auto or colour=accent
  • Added titlefont and bannerimage to command file commands. #311
  • Added new command --displaylog <path>. Will stream content sent to the file located at <path> ( @macvfx for inspiration)
  • Added new command --positionoffset <num>. Used with the --position command lets you set the screen edge offset (distance of the dialog to the screen edges. default is 16)
  • Added initial support for animated SF symbols (macOS 14 only).
    • Example usage:
      --icon sf=rainbow,colour=auto,animation=variable
    • Limited support at this time using the following animation types:
      "variable":
      "variable.reversing"
      "variable.iterative"
      "variable.iterative.reversing"
      "variable.cumulative"
      "pulse"
      "pulse.bylayer"
  • Fixed centreicon + image results in duplicate icon below image #302
  • Fixed Additional blank window in fullscreen mode #308

New Contributors 🎉