binding "gtk-mac-text-view"
{
  bind "<meta>a" { "select-all" (1) }
  bind "<shift><meta>a" { "select-all" (0) }
  bind "<meta>x" { "cut-clipboard" () }
  bind "<meta>c" { "copy-clipboard" () }
  bind "<meta>v" { "paste-clipboard" () }
}

class "GtkTextView" binding "gtk-mac-text-view"


binding "gtk-mac-file-chooser"
{
  bind "<meta>v" { "location-popup-on-paste" () }
}

class "GtkFileChooserDefault" binding "gtk-mac-file-chooser"


binding "gtk-mac-tree-view"
{
  bind "<meta>a" { "select-all" () }
  bind "<shift><meta>a" { "unselect-all" () }
  bind "<meta>f" { "start-interactive-search" () }
  bind "<meta>F" { "start-interactive-search" () }
}

class "GtkTreeView" binding "gtk-mac-tree-view"


binding "gtk-mac-icon-view"
{
  bind "<meta>a" { "select-all" () }
  bind "<shift><meta>a" { "unselect-all" () }
}

class "GtkIconView" binding "gtk-mac-icon-view"


binding "gtk-mac-label"
{
  bind "<meta>a" { 
    "move-cursor" (paragraph-ends, -1, 0)
    "move-cursor" (paragraph-ends, 1, 1)
  }
  bind "<shift><meta>a" { "move-cursor" (paragraph-ends, 0, 0) }
  bind "<meta>c" { "copy-clipboard" () }
}

class "GtkLabel" binding "gtk-mac-label"


binding "gtk-mac-entry"
{
  bind "<meta>a" { 
    "move-cursor" (buffer-ends, -1, 0)
    "move-cursor" (buffer-ends, 1, 1)
  }
  bind "<meta>x" { "cut-clipboard" () }
  bind "<meta>c" { "copy-clipboard" () }
  bind "<meta>v" { "paste-clipboard" () }
}

class "GtkEntry" binding "gtk-mac-entry"
