I’m on Mojave 10.14.5 with dosdude1 patch
The point here is that it is important which OS you had installed previously before going to Mojave.
I’m on Mojave 10.14.5 with dosdude1 patch
I think I've clean install of MojaveThe point here is that it is important which OS you had installed previously before going to Mojave.
I think I've clean install of Mojave
I have installed all the versions of OSX and MacOS (Mojave, High Sierra, Sierra, El Capitan, Yosemite and Mavericks)Before you did a clean install there was some OS installed previously. Did you just found your MacBook in a rubbish bin without a hard drive that you don't know anything about it's history?
I have installed all the versions of OSX and MacOS (Mojave, High Sierra, Sierra, El Capitan, Yosemite and Mavericks)
Try this:This is what I get on Mojave when I connect my iPhone SE its iOS 13 dev beta![]()
Maybe a problem with this command? sudo nvram boot-args="-no_compat_check"In this case you should not need any firmware updates.
void ___get_available_materials_dictionary_block_invoke(void * _block) {
rax = CFDictionaryCreateMutable(0x0, 0x0, *_kCFTypeDictionaryKeyCallBacks, *_kCFTypeDictionaryValueCallBacks);
*_get_available_materials_dictionary.materials = rax;
_SLCFDictionarySetInteger(rax, @"UltrathinLight", 0x1);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ThinLight", 0x2);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MediumLight", 0x3);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ThickLight", 0x4);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UltrathickLight", 0x5);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UltrathinDark", 0x6);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ThinDark", 0x7);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MediumDark", 0x8);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ThickDark", 0x9);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UltrathickDark", 0xa);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ToolbarLight", 0xb);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ToolbarDark", 0xc);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"FocusedLight", 0xd);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"FocusedDark", 0xe);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"FocusedGraphiteLight", 0x11);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"FocusedGraphiteDark", 0x12);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UnfocusedLight", 0x13);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UnfocusedDark", 0x14);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"SelectionSystemLight", 0xf);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"SelectionSystemDark", 0x10);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MenuBarLight", 0x15);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MenuBarInactiveLight", 0x16);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MenuBarDark", 0x17);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MenuBarInactiveDark", 0x18);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"Clear", 0x19);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"Mimic", 0x1a);
return;
}
void ___get_available_materials_dictionary_block_invoke(void * _block) {
rax = CFDictionaryCreateMutable(0x0, 0x0, *_kCFTypeDictionaryKeyCallBacks, *_kCFTypeDictionaryValueCallBacks);
*_get_available_materials_dictionary.materials = rax;
_SLCFDictionarySetInteger(rax, @"UltrathinLight", 0x1);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ThinLight", 0x2);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MediumLight", 0xb);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ThickLight", 0xb);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UltrathickLight", 0xb);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UltrathinDark", 0x6);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ThinDark", 0x7);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MediumDark", 0x8);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ThickDark", 0x9);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UltrathickDark", 0xa);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ToolbarLight", 0xb);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ToolbarDark", 0xc);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"FocusedLight", 0xd);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"FocusedDark", 0xe);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"FocusedGraphiteLight", 0x11);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"FocusedGraphiteDark", 0x12);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UnfocusedLight", 0xf);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UnfocusedDark", 0x14);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"SelectionSystemLight", 0xf);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"SelectionSystemDark", 0x10);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MenuBarLight", 0x15);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MenuBarInactiveLight", 0x16);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MenuBarDark", 0x17);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MenuBarInactiveDark", 0x18);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"Clear", 0x19);
_SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"Mimic", 0x1a);
return;
}
Maybe a problem with this command? sudo nvram boot-args="-no_compat_check"
Can I apply this command after installation?
I would like to share some insights about the current light mode patch and hopefully some talented people here could help us to get us some new input.
A brief recap about the current process:
- SystemAppereance.car contains everything for the basic "look" of macOS, like colors, UI-Elements and materials
- these materials are embedded in SystemAppereance.car as single caar files (be careful with car and caar, this are binary plist-files, starting with "bplist00..." if inspected by a Hex-Editor and could be extracted e.g. with an app called ThemeEngine)
- these caar files contain the layers of the individual materials. months ago @pkouame and I spend some time to search common parameters of broken materials in this caar files. We even built them by hand in Xcode, and as far as I remember they worked correctly there. You could also inspect a caar file with the app Kite, and also there they work properly with transparency. So we didn't find something really interesting.
And we shouldn't find anything, as I think the caar files are totally right. The common parameter is inside the header (as I call it) you could see here
View attachment 844719
It is some information ahead of the caar file itself. Even ThemeEngine doesn't show this information as far as I remember. And if you export the caar file, of course this additional header is not included. It is also clear, that if you swap the whole .car(!) file with the one from DarkMode it works almost properly (excluding text rendering), as inside the DarkMode .car file this header refers to UltrathickDark for example, instead of UltrathickLight. Also taking a .car file from older macOS versions shouldn't work at all or at least could not fix the broken areas because as we have seen earlier the old "headers" refer to the old descriptions for example Ultralight (no ..Light or ..Dark at the end).
- these descriptions/"base materials" are definitely the common ground of broken areas and are processed by SkyLight. They are individual for light and dark mode and only some of the Light ones are broken. If replaced by a working one, it fixes all materials from SystemAppereance.car with this specific descriptions in the header. Another reason that shows, that CoreUI patches worked indeed, but weren't in the right place.
This is the current light mode patch implementation in SkyLight:
Original
patchedCode:void ___get_available_materials_dictionary_block_invoke(void * _block) { rax = CFDictionaryCreateMutable(0x0, 0x0, *_kCFTypeDictionaryKeyCallBacks, *_kCFTypeDictionaryValueCallBacks); *_get_available_materials_dictionary.materials = rax; _SLCFDictionarySetInteger(rax, @"UltrathinLight", 0x1); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ThinLight", 0x2); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MediumLight", 0x3); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ThickLight", 0x4); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UltrathickLight", 0x5); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UltrathinDark", 0x6); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ThinDark", 0x7); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MediumDark", 0x8); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ThickDark", 0x9); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UltrathickDark", 0xa); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ToolbarLight", 0xb); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ToolbarDark", 0xc); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"FocusedLight", 0xd); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"FocusedDark", 0xe); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"FocusedGraphiteLight", 0x11); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"FocusedGraphiteDark", 0x12); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UnfocusedLight", 0x13); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UnfocusedDark", 0x14); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"SelectionSystemLight", 0xf); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"SelectionSystemDark", 0x10); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MenuBarLight", 0x15); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MenuBarInactiveLight", 0x16); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MenuBarDark", 0x17); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MenuBarInactiveDark", 0x18); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"Clear", 0x19); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"Mimic", 0x1a); return; }
- unfortunately MenuBar is rendered different, maybe in SkyLight but many things point to HIToolboxCode:void ___get_available_materials_dictionary_block_invoke(void * _block) { rax = CFDictionaryCreateMutable(0x0, 0x0, *_kCFTypeDictionaryKeyCallBacks, *_kCFTypeDictionaryValueCallBacks); *_get_available_materials_dictionary.materials = rax; _SLCFDictionarySetInteger(rax, @"UltrathinLight", 0x1); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ThinLight", 0x2); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MediumLight", 0xb); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ThickLight", 0xb); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UltrathickLight", 0xb); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UltrathinDark", 0x6); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ThinDark", 0x7); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MediumDark", 0x8); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ThickDark", 0x9); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UltrathickDark", 0xa); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ToolbarLight", 0xb); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ToolbarDark", 0xc); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"FocusedLight", 0xd); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"FocusedDark", 0xe); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"FocusedGraphiteLight", 0x11); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"FocusedGraphiteDark", 0x12); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UnfocusedLight", 0xf); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UnfocusedDark", 0x14); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"SelectionSystemLight", 0xf); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"SelectionSystemDark", 0x10); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MenuBarLight", 0x15); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MenuBarInactiveLight", 0x16); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MenuBarDark", 0x17); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MenuBarInactiveDark", 0x18); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"Clear", 0x19); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"Mimic", 0x1a); return; }
It would be great, if someone could figure out, how these materials (UltrathickLight, ThickLight, ...) are processed by SkyLight and where there is the difference with the dark mode ones.
I think with the discovery of these materials inside SkyLight we are way more closer to the "core problem". We could also discuss this topic on Discord if you guy would like to do so, or want to share some results.
(Use Hopper Disassembler to get the pseudocode representation, even possible with the free version)
EDIT: Be careful with SkyLight modification, if it's broken every app would crash. So just keep a copy of the original file and you're fine. Don't reboot after every patch, just don't close Terminal app to undo changes![]()
Did you receive any replies to your question?Any hope for my iMac8,1 with ATI 2600 Pro ?
I guess I've patched the Catalina AirDrop to use AirDrop without a BT 4.0 usb dongle.
I've re-enabled the AirDrop legacy feature "Don't see who you're looking for?" and "Search for an Older Mac" that from Catalina was dropped.
"Older Macs" in AirDrop are considered by apple all the machines without a BT 4.0 internal device, so those with a BT 2.1 internal device.
Here are the steps from Catalina Terminal:
sudo mount -uw / ; killall Finder
open /System/Library/CoreServices/Finder.app/Contents/Resources/Base.lproj/
Ovewrite the file AirDropInfoView.nib attached with the one inside that path.
After replace no need to reboot just from Catalina Terminal: killall Finder
The only file attached is suffice in my case (probably because of my previous manual patch on the
Brcm4360 driver used) to allow using the BT 2.1 , but consider that some very legacy machines may need to replace from Mojave the entire folder attached, the Mojave AirDrop.app should be re-placed inside the /Catalina/System/Library/CoreServices/Finder.app/Contents/Applications/
On the picture attached both the machines use their default Bluetooth 2.1+EDR internal device, the other one is MacBook7,1 with HighSierra installed, and the HS one can detect this Catalina MacBookPro6,2 .
Next picture I unplug this Catalina USB SSD external and plug to the MacBook7,1 and from MacBookPro6,2 I run a Mojave, lets check it out.
In both cases it's bidirectional working.
I've tried also from a MacBook7,1 Mavericks AirDrop to discover and be discovered from Catalina and it's totally working.
My AirDrop "Search for an Older Mac" method works also on Catalina supported Macs, that are not allowed to discover and be discovered from legacy machines, since apple dropped the "Search for an Older Mac" function from Catalina.
Instead replacing on a supported Catalina this AirDropInfoView.nib brings back that function, AirDrop will work and allow to discover/discovered also very legacy Macs (I guess until 10.7 OSX Lion when AirDrop was introduced by apple).
It appears on reboots after the initial install. Not urgent b/c this machine is just for testing. I'll wait a few beta iterations and try again nearer the GM.
Another non-standard feature of this MP 3,1 is that it has a BT4 LE/WiFi card from an iMac 14.1 that was fully supported in Mojave.
Incidentally Airdrop is working fine too.
So, with this new SkyLight patch, are the light mode issues still solved by swapping materials or have you gotten the original materials working? I’m asking this because the material swapping method doesn’t really produce the best results and I’m curious about the method. Discord is better for discussion but I think this forum is a great place to post status updates.I would like to share some insights about the current light mode patch and hopefully some talented people here could help us to get us some new input.
A brief recap about the current process:
- SystemAppereance.car contains everything for the basic "look" of macOS, like colors, UI-Elements and materials
- these materials are embedded in SystemAppereance.car as single caar files (be careful with car and caar, this are binary plist-files, starting with "bplist00..." if inspected by a Hex-Editor and could be extracted e.g. with an app called ThemeEngine)
- these caar files contain the layers of the individual materials. months ago @pkouame and I spend some time to search common parameters of broken materials in this caar files. We even built them by hand in Xcode, and as far as I remember they worked correctly there. You could also inspect a caar file with the app Kite, and also there they work properly with transparency. So we didn't find something really interesting.
And we shouldn't find anything, as I think the caar files are totally right. The common parameter is inside the header (as I call it) you could see here
View attachment 844719
It is some information ahead of the caar file itself. Even ThemeEngine doesn't show this information as far as I remember. And if you export the caar file, of course this additional header is not included. It is also clear, that if you swap the whole .car(!) file with the one from DarkMode it works almost properly (excluding text rendering), as inside the DarkMode .car file this header refers to UltrathickDark for example, instead of UltrathickLight. Also taking a .car file from older macOS versions shouldn't work at all or at least could not fix the broken areas because as we have seen earlier the old "headers" refer to the old descriptions for example Ultralight (no ..Light or ..Dark at the end).
- these descriptions/"base materials" are definitely the common ground of broken areas and are processed by SkyLight. They are individual for light and dark mode and only some of the Light ones are broken. If replaced by a working one, it fixes all materials from SystemAppereance.car with this specific descriptions in the header. Another reason that shows, that CoreUI patches worked indeed, but weren't in the right place.
This is the current light mode patch implementation in SkyLight:
Original
patchedCode:void ___get_available_materials_dictionary_block_invoke(void * _block) { rax = CFDictionaryCreateMutable(0x0, 0x0, *_kCFTypeDictionaryKeyCallBacks, *_kCFTypeDictionaryValueCallBacks); *_get_available_materials_dictionary.materials = rax; _SLCFDictionarySetInteger(rax, @"UltrathinLight", 0x1); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ThinLight", 0x2); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MediumLight", 0x3); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ThickLight", 0x4); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UltrathickLight", 0x5); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UltrathinDark", 0x6); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ThinDark", 0x7); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MediumDark", 0x8); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ThickDark", 0x9); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UltrathickDark", 0xa); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ToolbarLight", 0xb); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ToolbarDark", 0xc); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"FocusedLight", 0xd); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"FocusedDark", 0xe); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"FocusedGraphiteLight", 0x11); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"FocusedGraphiteDark", 0x12); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UnfocusedLight", 0x13); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UnfocusedDark", 0x14); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"SelectionSystemLight", 0xf); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"SelectionSystemDark", 0x10); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MenuBarLight", 0x15); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MenuBarInactiveLight", 0x16); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MenuBarDark", 0x17); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MenuBarInactiveDark", 0x18); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"Clear", 0x19); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"Mimic", 0x1a); return; }
- unfortunately MenuBar is rendered different, maybe in SkyLight but many things point to HIToolboxCode:void ___get_available_materials_dictionary_block_invoke(void * _block) { rax = CFDictionaryCreateMutable(0x0, 0x0, *_kCFTypeDictionaryKeyCallBacks, *_kCFTypeDictionaryValueCallBacks); *_get_available_materials_dictionary.materials = rax; _SLCFDictionarySetInteger(rax, @"UltrathinLight", 0x1); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ThinLight", 0x2); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MediumLight", 0xb); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ThickLight", 0xb); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UltrathickLight", 0xb); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UltrathinDark", 0x6); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ThinDark", 0x7); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MediumDark", 0x8); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ThickDark", 0x9); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UltrathickDark", 0xa); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ToolbarLight", 0xb); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"ToolbarDark", 0xc); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"FocusedLight", 0xd); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"FocusedDark", 0xe); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"FocusedGraphiteLight", 0x11); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"FocusedGraphiteDark", 0x12); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UnfocusedLight", 0xf); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"UnfocusedDark", 0x14); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"SelectionSystemLight", 0xf); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"SelectionSystemDark", 0x10); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MenuBarLight", 0x15); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MenuBarInactiveLight", 0x16); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MenuBarDark", 0x17); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"MenuBarInactiveDark", 0x18); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"Clear", 0x19); _SLCFDictionarySetInteger(*_get_available_materials_dictionary.materials, @"Mimic", 0x1a); return; }
It would be great, if someone could figure out, how these materials (UltrathickLight, ThickLight, ...) are processed by SkyLight and where there is the difference with the dark mode ones.
I think with the discovery of these materials inside SkyLight we are way more closer to the "core problem". We could also discuss this topic on Discord if you guy would like to do so, or want to share some results.
(Use Hopper Disassembler to get the pseudocode representation, even possible with the free version)
EDIT: Be careful with SkyLight modification, if it's broken every app would crash. So just keep a copy of the original file and you're fine. Don't reboot after every patch, just don't close Terminal app to undo changes![]()
To have that AirDrop icon with no name, you don't used my previous method (the 4360 driver) but should have used other scripts before for example this:
defaults write com.apple.NetworkBrowser BrowseAllInterfaces 1
That on Catalina doesn't work more.
But maybe you should open SystemReport on Wifi tab and check which Broadcom AirPort do you have 0x14E4
probably some different or older Broadcom Wifi can't enable this AirDrop menu.
My method has been tested and is totally working on 0x14E4 , 0x9* and later Broadcom AirPort Wifi cards and even on supported Catalina Mac.
Mine is 0x14E4, 0x8D
As the webpage says, "This only works on machines that support APFS booting natively". So, on that machine, you'll need to apply APFS ROM Patcher in order to install Catalina at this time.
The fix is still achieved by swapping materials, as you could see by comparing the two functions (before and after). BUT this time dark mode is completely UNTOUCHED by this patch. It ONLY modifies light mode, as only there the broken areas appear. So I think it's better than the previous hybrid patch, as this time all the people how prefer dark mode still could apply the patch, without taking any disadvantage.So, with this new SkyLight patch, are the light mode issues still solved by swapping materials or have you gotten the original materials working? I’m asking this because the material swapping method doesn’t really produce the best results and I’m curious about the method. Discord is better for discussion but I think this forum is a great place to post status updates.
Did you run the patch tool after installation?Got only this after using @0403979 Patcher. Cant use wired mouse or keyboard on a imac 24 inch Early 2009