Skip to content

Commit

Permalink
koekeishiya#589 update scripting-addition for macOS Big Sur
Browse files Browse the repository at this point in the history
  • Loading branch information
koekeishiya authored and unrevre committed Jun 25, 2020
1 parent ef18c7f commit cd63afe
Show file tree
Hide file tree
Showing 3 changed files with 37 additions and 15 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
### Changed
- Fixed an issue that caused a window to not become unmanaged when a space with a single window changed to float [#586](https://github.com/koekeishiya/yabai/issues/586)
- Restore opacity back to full if *window_opacity* is disabled [#585](https://github.com/koekeishiya/yabai/issues/585)
- Update scripting-addition to support macOS Big Sur 10.16 Build 20A4299v [#589](https://github.com/koekeishiya/yabai/issues/589)

## [3.2.1] - 2020-06-17
### Changed
Expand Down
2 changes: 1 addition & 1 deletion src/osax/common.h
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#ifndef SA_COMMON_H
#define SA_COMMON_H

#define OSAX_VERSION "1.0.14"
#define OSAX_VERSION "1.0.15"

#define OSAX_PAYLOAD_SUCCESS 0
#define OSAX_PAYLOAD_NOT_FOUND 1
Expand Down
49 changes: 35 additions & 14 deletions src/osax/payload.m
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,9 @@ static uint64_t hex_find_seq(uint64_t baddr, const char *c_pattern)
}

uint64_t get_dock_spaces_offset(NSOperatingSystemVersion os_version) {
if (os_version.minorVersion == 15) {
if (os_version.minorVersion == 16) {
return 0x9000;
} if (os_version.minorVersion == 15) {
return 0x8000;
} else if (os_version.minorVersion == 14) {
if (os_version.patchVersion >= 4) {
Expand All @@ -187,7 +189,9 @@ uint64_t get_dock_spaces_offset(NSOperatingSystemVersion os_version) {
}

uint64_t get_dppm_offset(NSOperatingSystemVersion os_version) {
if (os_version.minorVersion == 15) {
if (os_version.minorVersion == 16) {
return 0x8000;
} else if (os_version.minorVersion == 15) {
return 0x6000;
} else if (os_version.minorVersion == 14) {
return 0x7000;
Expand All @@ -209,7 +213,9 @@ uint64_t get_add_space_offset(NSOperatingSystemVersion os_version) {
}

uint64_t get_remove_space_offset(NSOperatingSystemVersion os_version) {
if (os_version.minorVersion == 15) {
if (os_version.minorVersion == 16) {
return 0x2F9000;
} else if (os_version.minorVersion == 15) {
return 0x320000;
} else if (os_version.minorVersion == 14) {
return 0x37fb00;
Expand All @@ -220,7 +226,9 @@ uint64_t get_remove_space_offset(NSOperatingSystemVersion os_version) {
}

uint64_t get_move_space_offset(NSOperatingSystemVersion os_version) {
if (os_version.minorVersion == 15) {
if (os_version.minorVersion == 16) {
return 0x2E9000;
} else if (os_version.minorVersion == 15) {
return 0x310000;
} else if (os_version.minorVersion == 14) {
if (os_version.patchVersion >= 4) {
Expand All @@ -237,7 +245,9 @@ uint64_t get_move_space_offset(NSOperatingSystemVersion os_version) {
}

uint64_t get_set_front_window_offset(NSOperatingSystemVersion os_version) {
if (os_version.minorVersion == 15) {
if (os_version.minorVersion == 16) {
return 0x53000;
} else if (os_version.minorVersion == 15) {
return 0x53000;
} else if (os_version.minorVersion == 14) {
if (os_version.patchVersion >= 4) {
Expand All @@ -252,7 +262,9 @@ uint64_t get_set_front_window_offset(NSOperatingSystemVersion os_version) {
}

const char *get_dock_spaces_pattern(NSOperatingSystemVersion os_version) {
if (os_version.minorVersion == 15) {
if (os_version.minorVersion == 16) {
return "?? ?? ?? 00 49 8B 7D 00 48 8B 35 E4 7B 41 00 44 89 BD 38 FE FF FF 44 89 FA 41 FF D4 48 89 C7 E8 1D 8B 32 00 48 89 85 E8 FD FF FF 48 8B 3D 09 CB 41 00 E8 5C 8A 32 00 48 8B 35 45 7C 41 00 48 89 C7 31 D2 41 FF D4 48 89 85 28 FE FF FF 49 8B 7D 00 48";
} else if (os_version.minorVersion == 15) {
if (os_version.patchVersion >= 4) {
return "?? ?? ?? 00 49 8B 3F 48 8B 35 ?? 3D 44 00 44 89 B5 40 FE FF FF 44 89 F2 41 FF D4 48 89 C7 E8 ?? 70 35 00 48 89 85 E8 FD FF FF 48 8B 3D ?? 8D 44 00 E8 ?? 6F 35 00 4C 8B 35 ?? 3E 44 00 48 89 C7 4C 89 F6 31 D2 41 FF D4 48 89 85 28 FE FF FF 49 8B 3F 48 8B 35 ?? 82 44 00 48 89 DA 41 FF";
} else {
Expand All @@ -266,10 +278,11 @@ uint64_t get_set_front_window_offset(NSOperatingSystemVersion os_version) {
return NULL;
}

const char *get_dppm_pattern(NSOperatingSystemVersion os_version)
{
if (os_version.minorVersion == 15) {
return "?? ?? ?? 00 48 89 C6 E8 ?? ?? ?? 00 4D 85 F6 0F 84 67 06 00 00 48 8B 3D ?? ?? ?? 00 48 8B 35 ?? ?? ?? 00 FF 15 ?? ?? ?? 00 48 89 C7 E8 ?? ?? ?? 00 48 89 85 08 FF FF FF C7 85 1C FF FF FF 00 00 00 00 E8 ?? ?? ?? 00 48 8D 75 B0 89 C7 E8 ?? ?? ?? 00";
const char *get_dppm_pattern(NSOperatingSystemVersion os_version) {
if (os_version.minorVersion == 16) {
return "?? ?? ?? 00 48 89 C6 E8 ?? ?? ?? 00 4D 85 F6 0F 84 ?? 06 00 00 48 8B 3D ?? ?? ?? 00 48 8B 35 ?? ?? ?? 00 FF 15 ?? ?? ?? 00 48 89 C7 E8 ?? ?? ?? 00 48 89 85 08 FF FF FF C7 85 1C FF FF FF 00 00 00 00 E8 ?? ?? ?? 00 48 8D 75 B0 89 C7 E8 ?? ?? ?? 00";
} else if (os_version.minorVersion == 15) {
return "?? ?? ?? 00 48 89 C6 E8 ?? ?? ?? 00 4D 85 F6 0F 84 ?? 06 00 00 48 8B 3D ?? ?? ?? 00 48 8B 35 ?? ?? ?? 00 FF 15 ?? ?? ?? 00 48 89 C7 E8 ?? ?? ?? 00 48 89 85 08 FF FF FF C7 85 1C FF FF FF 00 00 00 00 E8 ?? ?? ?? 00 48 8D 75 B0 89 C7 E8 ?? ?? ?? 00";
} else if (os_version.minorVersion == 14) {
return "?? ?? ?? 00 48 89 C6 E8 ?? ?? 3C 00 4D 85 FF 0F 84 AC 06 00 00 48 8B 3D ?? 00 4C 00 48 8B 35 ?? A4 4B 00 FF 15 ?? ?? 43 00 48 89 C7 E8 ?? 6B 3C 00 48 89 85 10 FF FF FF C7 85 1C FF FF FF 00 00 00 00 E8 ?? 69 3C 00 48 8D 75 B0 89 C7 E8 ?? 6A 3C 00";
} else if (os_version.minorVersion == 13) {
Expand All @@ -279,7 +292,9 @@ uint64_t get_set_front_window_offset(NSOperatingSystemVersion os_version) {
}

const char *get_add_space_pattern(NSOperatingSystemVersion os_version) {
if (os_version.minorVersion == 15) {
if (os_version.minorVersion == 16) {
return "55 48 89 E5 41 57 41 56 41 55 41 54 53 48 83 EC 18 4C 89 6D C0 48 BA 01 00 00 00 00 00 00 40 48 B9 F8 FF FF FF FF FF FF 00 49 8D 45 28 48 89 45 D0 4D 8B 7D 28 41 80 7D 38 01 48 89 7D C8 75 2E 49 89 FC 49 85 D7 74 59 4C 89 FB 48 21 CB 41 F6 C7 01 49 0F 45 DF 4C 89 FF E8 18 FC 0F 00 48 89 DF E8 62";
} else if (os_version.minorVersion == 15) {
if (os_version.patchVersion >= 4) {
return "55 48 89 E5 41 57 41 56 41 55 41 54 53 48 83 EC 28 4C 89 6D C0 48 89 7D C8 48 B9 01 00 00 00 00 00 00 40 49 BE F8 FF FF FF FF FF FF 00 49 8D 45 28 48 89 45 D0 4D 8B 7D 28 41 80 7D 38 01 75 2B 49 85 CF 74 59 4C 89 FB 4C 21 F3 41 F6 C7 01 49 0F 45 DF 4C 89 FF E8 ?? 26 12 00 48 89 DF E8 9B";
} else {
Expand All @@ -298,7 +313,9 @@ uint64_t get_set_front_window_offset(NSOperatingSystemVersion os_version) {
}

const char *get_remove_space_pattern(NSOperatingSystemVersion os_version) {
if (os_version.minorVersion == 15) {
if (os_version.minorVersion == 16) {
return "55 48 89 E5 41 57 41 56 41 55 41 54 53 48 83 EC 68 48 89 4D 98 49 89 D4 49 89 F6 49 89 FF 49 89 F5 E8 9A 93 F3 FF 49 89 C5 48 B8 01 00 00 00 00 00 00 40 49 85 C5 0F 85 DE 03 00 00 48 B8 F8 FF FF FF FF FF FF 00 4C 21 E8 48 8B 58 10 48 83 FB 02 0F 8C CD 01 00 00 4C 89 75 A0 48 8D 05 C6 F6 13 00 48 8B 00 4D 8B 34 07 4C 89 E3 4D 8B 64 07";
} else if (os_version.minorVersion == 15) {
if (os_version.patchVersion >= 4) {
return "55 48 89 E5 41 57 41 56 41 55 41 54 53 48 83 EC 48 48 89 4D A0 49 89 D4 49 89 F5 49 89 FE E8 FD 7B F1 FF 48 89 C3 48 B8 01 00 00 00 00 00 00 40 48 85 C3 0F 85 23 03 00 00 48 B8 F8 FF FF FF FF FF FF 00 48 21 D8 4C 8B 78 10 49 83 FF 02 0F 8C 3F 01 00 00 4C 89 6D A8 48 89 5D B8 48 8D 05 ??";
} else {
Expand All @@ -317,7 +334,9 @@ uint64_t get_set_front_window_offset(NSOperatingSystemVersion os_version) {
}

const char *get_move_space_pattern(NSOperatingSystemVersion os_version) {
if (os_version.minorVersion == 15) {
if (os_version.minorVersion == 16) {
return "55 48 89 E5 41 57 41 56 41 55 41 54 53 48 83 EC 48 4C 89 E9 41 89 D5 49 89 F6 49 89 FF 48 8D 1D 0C EA 14 00 48 8B 03 4C 8B 24 07 4C 89 E7 48 89 4D A0 48 89 CE E8 D6 C0 00 00 48 85 C0 74 27 48 8D 0D 0E DD 15 00 80 39 01 48 89 55 C8 48 89 45 A8 75 1A 48 89 C7 4C 89 F6 49 89 D5 E8 6F D8 F4";
} else if (os_version.minorVersion == 15) {
if (os_version.patchVersion >= 4) {
return "55 48 89 E5 41 57 41 56 41 55 41 54 53 48 83 EC 48 4C 89 E9 41 89 D5 49 89 F6 49 89 FF 48 8D 1D ?? ?? 14 00 48 8B 03 4C 8B 24 07 4C 89 E7 48 89 4D A0 48 89 CE E8 E6 BE 00 00 48 85 C0 74 27 48 8D 0D ?? D8 15 00 80 39 01 48 89 55 C8 48 89 45 A8 75 1A 48 89 C7 4C 89 F6 49 89 D5 E8 3F D8 F2";
} else {
Expand All @@ -338,7 +357,9 @@ uint64_t get_set_front_window_offset(NSOperatingSystemVersion os_version) {
}

const char *get_set_front_window_pattern(NSOperatingSystemVersion os_version) {
if (os_version.minorVersion == 15) {
if (os_version.minorVersion == 16) {
return "55 48 89 E5 41 57 41 56 41 55 41 54 53 48 83 EC 58 48 8B 05 ?? ?? ?? 00 48 8B 00 48 89 45 D0 85 F6 0F 84 ?? 02 00 00 41 89 F5 49 89 FF 49 89 FE 49 C1 EE 20 48 8D 75 AF C6 06 00 E8 ?? ?? 02 00 48 8B 3D ?? ?? ?? 00 BE 01 00 00 00 E8 ?? ?? ?? 00 84 C0 74 59 0F B6 5D AF 4C 8D 45";
} else if (os_version.minorVersion == 15) {
return "55 48 89 E5 41 57 41 56 41 55 41 54 53 48 83 EC 58 48 8B 05 ?? ?? ?? 00 48 8B 00 48 89 45 D0 85 F6 0F 84 ?? 02 00 00 41 89 F5 49 89 FF 49 89 FE 49 C1 EE 20 48 8D 75 AF C6 06 00 E8 ?? ?? 02 00 48 8B 3D ?? ?? ?? 00 BE 01 00 00 00 E8 ?? ?? ?? 00 84 C0 74 59 0F B6 5D AF 4C 8D 45";
} else if (os_version.minorVersion == 14) {
if (os_version.patchVersion >= 4) {
Expand Down

0 comments on commit cd63afe

Please sign in to comment.