#development
1 messages Β· Page 113 of 1
L
Why does the period from may to july look a awful lot like a swastika
how do i make it an assigner ?
iv tried a few things but idk how i would make it animate
this put me inn safemode```objc
-
(void)setFrame:(CGRect)frame {
%orig;
if ([[[self _viewControllerForAncestor] parentViewController] isKindOfClass:%c(MRUCoverSheetViewController)] && cconoff == 1) {
// framesss.size.width = artworksiezanlabelvx;
// framesss.size.height = artworksiezanlabelvx;
// framesss.origin.x = artworkx;
// framesss.origin.y = artworky;[UIView animateWithDuration:0.3 delay:0 usingSpringWithDamping:0.7 initialSpringVelocity:0.2 options:nil animations:^{ self.frame = CGRectMake(artworkx, artworky, artworksiezanlabelvx, artworksiezanlabelvx); } completion:nil];}
}```
people who don't code professionally
tbf i do
i keep all of my code to a high standard and consistent where i can
my activity looks like ive been inactive because i made a lot mode big commits instead of small ones
i should start staging files and commiting them seperately instead of commiting everything at once with Read full commit and making a long list of every change i made
knew it
since when is 713/2548 === 3/100
lmfaoo
@placid kraken why does the self.frame = CGRectMake(artworkx, artworky, artworksiezanlabelvx, artworksiezanlabelvx); put me in safemode?
i dont really know, are you sure you can just reassign self.frame like that?
maybe log your variables in console and see if anything looks not normal
youre putting in artworksiezanlabelvx for both x and y btw
idk if thats intentional
actually
probably yes because you want a square
are you sure all of those variables are CGFloats?
idk
ig they do it here
when i add it to didmove to window it just does nothing
FINALLY
Round corners π
It's weird how once I make the code for it, it works
π
this is terrible i hope that file corrupts your pc
i took a crash course on c++ for this
but it can't corrupt my pc 
isnt that just macros lmfao
int main() {
srand(time(NULL));
bool real = rand() & 1;
if (real) {
printf("so true bestie");
} else {
printf("ain't no way");
exit(1)
}
}
``` real
mostly
and i'm dumb for using exit if the one and only function returns a number
Leave that mental illness shit in #969343289641828382
what
no access
or #staff-botspam
no access
smh icraze
yes
i still havent figured out how to get the searching to work lmfao
[self updateSpecifiers:@[specifier] withSpecifiers:nil];
``` this is so cursed i wouldnt use it even if it worked
im also trying to not add any overhead to classes which inherit this base class
aka i dont wanna store the search text and filter in the specifiers method of each subclass
yeah thats why i usually omitted those methods from my interest
because when filtering it can remove specifiers from any index not just ones back to back
even if they are in alphabetical order
lol fair enough i guess
apple has searching for the logs in analytics right
all the cells in that are probably specifiers too
i wonder how they did it
omg is that hate speech>>???????
i think i can probably get rid of that yeah
i already tried with and without dispatch_async, i dont see a noticeable difference
yeah
i tried with setSpecifiers but it wasnt changing anything in the ui so it might need a reloadSpecifiers too
ill mess with it a bit tyyy
it gets worse
newline moment
ok well the list of specifiers isnt updating with setSpecifiers
yeah
query is "backgro" so its at least filtering correctly
hmm ok
yeah but what would i be replace
oh i tried that too
also didnt work but i think i mightve done it wrong
i was replacing [self valueForKey:@"_specifiers"] with my filterered array so idk
ok holy shit it works
kinda
im doing it with reload
[self setSpecifiers:specifiersToKeep];
[self reload];
``` the issue is that it doesnt reload the specifiers when i remove characters
probably because i got rid of the text length thing i was doing
ill add it back for now
woooo so fast
tysm !!
@placid kraken are you still using libgcuniversal
yes
π
can PSGroupCell have an icon
Hey, can I change the parent view of a view ?
mine is almost fully black between april-august last year
how can i set the frame x of a view using like self.frame... ?
or can i not do it like that?
@hasty ruin look at this doofus
can i make it like a setter?
you can't set the X directly
only the whole frame
- make a temp frame, copied from the current one
- modify that frame's X
- set your view's frame to the temp one
please dont call the temporary variable temp
ohhhh
i will now
son of a
yeah call it OOtemP_ZE_FRAMe
question, would this work for like animating your/the chnages?
No [[CGRect alloc] init]
@hasty ruin like so ?objc CGRect OOtemP_ZE_FRAMe = self.platterView.backgroundMaterialView.frame; OOtemP_ZE_FRAMe.size.height = 160; OOtemP_ZE_FRAMe.origin.y = controlsviewhight - 160; self.platterView.backgroundMaterialView.frame = OOtemP_ZE_FRAMe;
elf
OMG IT WORK
ππππππππ
and i dont need any dress or lower code ππ
gm
gm
Why does iOS have so many like container views ??
but whats the point of so many?
ist like 1-2 enough
O B J E C T O R I E N T E D P R O G R A M M I N G
objective c oriented programming
.
object oriented progra mining
dms:
Then it crashes because you have zefram
yea i get that, but theres like one view in each of the views maybe 2 bc of the BG
oh wait
i fg
theres other things in the player
oops
my phone just spinlocked 
chat does installd have a container
id assume not bc i dont see kernel printing out that theres a container lol
whatever ill just do no-sandbox

@hasty ruin can i do this?
CGRect TEMPzeFRAME = self.frame;
TEMPzeFRAME.size.height = 160 + playeradjustwy;
self.superview.frame = TEMPzeFRAME;
self.superview.superview.superview.frame = TEMPzeFRAME;
self.superview.superview.superview.superview.superview.frame = TEMPzeFRAME;
self.superview.superview.superview.superview.superview.superview.frame = TEMPzeFRAME;```
or do i got do the like `view *nowPlayingView = (view *)self.superview.superview.superview;`

help
@hasty ruin i found problem, i need the views that these .superview's link to in my .h file right ?
yes and they need this @property (nonatomic, assign, readwrite) CGRect frame;
noooo youre hard coding values again
kinda but not rly
the player height should change
this is like the only hard coded value
everything else is math π
based on the super view
CENSORSHIP
i need some help, not sure what im doing wrong.
codeobjc UIStackView *thatfrucstakview = (UIStackView *)self.superview.superview.superview.superview.superview.superview; CGRect TEMPzeFRAME22 = thatfrucstakview.frame; TEMPzeFRAME22.size.height = 218 + playeradjustwy; thatfrucstakview.frame = TEMPzeFRAME22;but the like frame just isnt being set
the frame of #6 there should have a height of 548 not 218
playeradjustwy = 330 btw
self is MRUNowPlayingView btw
so i need to hook the setfrme method of the UIStackView (not %hook UIStackView) but i think theres sm else there do i hook that?
so im looking at a class in through flex
and im looking at the NSMutableArray *_gestureRecognizers 'shortcut' and see a UISwipeGestureRecognizer that calls the method _swipeDown:
is it possible to manually call the _swipeDown: method in a tweak
idk how id get the parameter for the action
look at the _targets ivar for that UISwipeGestureRecognizer, what does it point to
smae thing as in the gestureRecognizer?
yea
ideally you hook the target's action method (a vc or other controller if the dev followed MVC)
or call that
with a gesture that represents down state or whatever
so
[self.someView _swipeDown:self.someView.swipeGestureRecognizer];
```?
no like in the _targets array there should be an object that is listening for the event and ideally you call whatever method on that rather than the gesture recognizer's internal method
not sure where youd see the action selector that the gesture recognizer will call on that target tho
UISwipeGestureRecognizer
-> _targets ivar {
-> SomeControllerBullshit
// hopefully just 1 target
}```
idk im lowkey regarded anyway
i physically cannot dismiss the keyboard programmatically in the imessage app
it just
doesnt wanna work
what have you tried
assuming you tried the usual stuff for dismissing keyboards lol
- (NSArray *)specifiers {
NSDictionary *imageMap = @{
@"enable": @"leaf.fill",
@"base": @"sparkles",
@"system": @"externaldrive.fill",
@"dynamic": @"arrow.up.and.down.and.sparkles",
@"external": @"paperplane.fill",
@"table": @"swatchpalette.fill",
@"other": @"bubbles.and.sparkles.fill",
@"respring": @"slowmo",
@"reset": @"trash.fill"
};
if (!_specifiers) {
_specifiers = [self loadSpecifiersFromPlistName:@"Root" target:self];
for (PSSpecifier *specifier in _specifiers) {
NSString *specifierId = [specifier propertyForKey:@"id"];
if (!specifierId) continue;
UIImage *iconImage = [UIImage systemImageNamed:[imageMap objectForKey:specifierId]];
[specifier setProperty:iconImage forKey:@"icon"];
}
}
return _specifiers;
}
``` how am i actually suppposed to do this
can icon not take in a UIImage?
you can set iconImage directly. otherwise it's trying to look for an image of that name in your preference bundle
Cephei does also provide this feature for you https://hbang.github.io/libcephei/Classes/HBListController.html
now realising I didn't really write very good docs for it, but the examples should suffice
oh my bad, I did document it properly
create /basebin/.launchctl_support file.
since launchctl will return a non-0 exit code before launchdhook is enabled, which will cause some packages to fail to be installed correctly, so launchctl is disabled by default in Bootstrap, you can create that file to enable launchctl support.
I might be a little late but probably run your code after
with %orig
okie thanks
is this a new roothide beta feature?
oh no, ok sorry
haxi0's swiftUI merged, localized language files are being added, and then the public version can be released
are you willing to share basebin src? I want to fork bootstrap to normal rootless. if not it's OK
SwiftUI
i will opensource but not now, until ios17 krw is released
before that, I wanted to play with ppl injection, so that we don't need to resign every binaries/apps
tbh Bootstrap is far from perfect, resign apps will break a lot of things and require additional fixes. if we can use xina's ppl bypass to inject, then all these problems can be avoided.
how does bootstrap redirect app opening to tweaked app?
uicache, like what trollstore does
iphoneos-arm64e :
and you may add this file to app bundle so that it will not be displayed in app list (some users will enable tweak injection for serotonin, I'm not sure if this is necessary and if it will break it) https://github.com/roothide/Bootstrap/blob/54a9ebad68cc87c3db242e8c8456caea988c67e3/Bootstrap/AppViewController.m#L181
is it possible to use launchdhook to replace this?
just hook posix_spawn to check if path strstr contains appname.app
then redirect
but still need to re-sign the app for tweak to work.
I don't think it makes much difference, notifications and app plugins may be broken once you re-sign the app
unless you use ppl injection
itβs all captincβs fault
what do you mean by this..?
i should be setting iconImage with the name of the system image?
i would rather not get cephei as a dep for such a small thing like this
doesnt work lol it crashes settings
π
anyone here willing to nop out 2 if statement in a dylib for me cuz i cant recompile rn lol
Well if anyone is willing
Pls nop out the if statement for Camera.app str check and MobileSlideShow
now i need to add a respring button at the top right of each tab
and then i can start working on the apply-all-at-once functionality
i ended up just using cephei lmao
youβd be correct
looks really nice!
@lime pivot where is the button to get the download stats on chariz by csv
should be download arrow in the top right of the graph β¬οΈ
that's for the date
oh, we don't provide it for that graph
on the sales/download count graphs there's the toolbar with a download button, but this one has no toolbar
trying to find it
Is hooking setFrame a good idea, I'm unsure because the function is probably called a lot
What are you going to be doing in your hook?
Changing the x and y value of a view
if it's just a specific view that's not used a lot then no harm
Well...
It's about notifications
if it's like UIView then lol
the notif banner view?
not gonna b doing much harm
Oh cool
What should I hook then ?
viewDidLoad ?
no?
am i not looking at the right documentation
you might be looking at NSView
in that case there's UIEdgeInsets and setFrameOrigin
yeah I'll look into it thanks
yea unfortunately i couldnt figure out how to do it without cephei
so
are you still using a dep for color picker
yes
I can send the version of EXMColorPicker.m that uses NSUserDwfaults later if you want
libgcuniversal is better here because it uses alderis for < 14
i made my own (and it worked) but it crashed settings when i exited the tab with EXMColorPicker.m cells so yes pls

I tried basically everything
i think i might aswell just use libgc tbh
π€·ββοΈ
ur gonna need to get libsandy working at some point
if you want it to work inside apps
ok but libgc is just for storing and selecting the color
zero deps π₯
its irrelevant from actually applying the color in apps with the hook
although tbh having 1 less dependency would be nice
and i have the liberty of adding an icon to the accessoryView after so i can make it look better
Actually libgc is a garbage collector
skssksks
it better collect you too
im not following
i also tried self.entryView.swipeGestureRecognizer.state = UIGestureRecognizerStateEnded;
and that didnt work
is there any way to NSLog ascii art?
i mean i you can try looping through the lines but ascii art really depends on how many characters there are per line
hmm alright, i'm already failing at implementing the ascii in the code xD error: unexpected character <U+2584>
then it's not ascii art lol
alright thanks
though i'm sure you can find one that uses ascii only, from there it should be easy then
how tf are you viewing text files in the browser
before downloading one press show
mobilesubstrate (>= 0.9.5000), preferenceloader
nope !!
who needs to depend on substrate
i personally load my tweak by shutting down my phone
click the file, press view

I donβt use either
I use the built in objc swizzling methods
I hate deps
LGU is good tho
(he doesnt know how to install lgu)
Alderis on <= iOS 13
Lmfaoooooo
/s
does that automatically make alderis a dependency on < 14 then
as in on > 14 does it make you install alderis too
No, it has a built in thing for alderis
oh i see
Idk how it does its magic
lmao fair
yeah pretty much
Nooooob
i couldnt find the lib itself online so im assuming its closed source
only the docs for it
It is closed source
yea fair
are there any oss tweaks that change the background of apps to any image
was thinking if I could take a screenshot of SB somehow and automatically set it as that, so that it'd show up as a translucent layer "below" the app
nightwind do you know how to put system sf symbols on cells without depending on cephei
maybe a custom PSListController idk
Yeah I made my own cells
Those prefs look nice tho
ill look into how to do that then lol
ty but at that point its bloatware to depend on cephei + cepheiprefs only for implementing icons on cells lol
Fair
credit in very small text
Oh sure yeah use the look idc
ok tyyy
does anyone know how i'd check for if notifications for a certain app are turned off?
seems to be com.apple.ncprefs on macOS, will check on iOS
well, even without that, you could probably put something together with UserNotifications.framework
Thats true
funny things
*iOS 17 jb eta wen frfr
oh ily
I was trying to fix normal Lower but i couldnβt
thanks
Interesting I didnβt know it was OSS
My comp sci class met for the first time for the semester today, and the course isnβt an intro course, thereβs like 1-2 prereq courses to take it and the professsor was asking us to introduce ourselves, and part of the introduction was our experience with the command line, so I said I have like 5 years of experience, and everyone else said theyβve never even heard of the command line before ππ
it happens
I was the only person in the class of 26 who knew what the CLI was
@indigo peak
either way my condolences i hope the rest of your class get better soon
yap about abstraction or something
i don't even know what that is
method overloading / method overriding is the simplest way to explain it
so for example in objc you can have methods with the same name but different signatures
or you can reimplement a method with the same signature in a subclass and thats called instead of the super method
that's compile time polymorphism
(which is usually all you need to know)
well i get the reimplementing part
all I gotta do is show them what ls does
someone typed it into the CLI as 1s
i think we should start with the manual
methods with different signatures is like ```objc
[SomeClass methodName:@"arg1" withSomething:@2]
and
```objc
[SomeClass methodName:@"arg1" withSomethingElse:@[@YES]]
its the same method but you pass different arguments to it
whether that's different types for the same arguments or different arguments altogether it doesnt matter
@interface Utilities : NSObject {
NSString *bundle;
}
+ (NSString*) getBundlePath;
+ (NSData*) getResource:(NSString*)file data:(BOOL)data ext:(NSString*)ext;
+ (NSString*) getResource:(NSString*)file ext:(NSString*)ext;
+ (NSData*) getResource:(NSString*)file data:(BOOL)data;
+ (NSString*) getResource:(NSString*)file;
+ (void) alert:(NSString*)message title:(NSString*)title buttons:(NSArray<UIAlertAction*>*)buttons;
+ (void) alert:(NSString*)message title:(NSString*)title;
+ (void) alert:(NSString*)message;
+ (id) parseJSON:(NSData*)data;
@end
``` heres an example in terms of the interface (not my code)
..yes isnt that what the book is called?
aqlthough id never read it bc i know enough for the course alr
in the interface i sent or in the code on github
lol thats just part of a codebase im working in
whats wrong with it other than the pointers not having spaces?
fair enough yea
im not a beginner wha
objc beginner*
lmao ive written a decent amount of objc before this
exactly
decent amount
not decent code
moving on
@grave sparrow this is gonna be a long semester
my professor said that all phones,
android and apple
run on linux
like specifically linux
not any unix branches
linux specifically
exactly
idk i think im learning fast enough
ive also written a lot of c# and rust so its not too difficult
rust is actually really nice i like it
if i had to pick between arc and the borrow checker
i think i would still pick arc
skkskk
Thanks
@grave sparrow ```objc
@interface Utilities : NSObject
- (void)loopUIColorWithBlock:(void (^)(SEL selector, NSString *name, Method method, Class uiColorClass))block;
- (NSString *)hexStringFromColor:(UIColor *)color;
- (UIAlertController *)alertWithDescription:(NSString *)description handler:(void (^)(void))block;
@end
oh yeah i was gonna do that actually
because well, between respring and reset prefrences, all that changes is the handler that is called for Continue and one word, "Are you sure you want to reset preferences?" / "Are you sure you want to respring?"
theres no point copy pasting all of this for such a small change
ah fair enough
that loop color method is used both for UI and for the backend
its used for hooking the UIColors and for displaying them in the prefs
that way i dont need to hardcode anything
wait @indigo peak why do you alloc a new instance of NSUserDefaults every time you want to access it why not make a load prefs function that calls on initWithStyle and then [[self preferences] objectForKey:@"xyz"] instead
other than that it looks identical to what i did lmao
ugh GcColorPickerCell doesnt allow for taking in an icon
implement it yourself 
i could but that means handling storing UIColors as NSData with NSKeyedArchiver or whatever
and that sounds painful just thinking about it
i will not convert it to hex and store as a string because if the user selects some color from the palette it wont be selected next time even if the color is the same hex-wise (those colors/shades are named)
14+
i was contemplating targeting 13+ because under ios 13 there are no system colors to hook and thats an issue, however that makes lgu mandatory
on 14+ the native color picker exists
so no lgu is necessary
this is the only reason i dont wanna implement a custom color picker cell
manually handling the uicolor encoding and decoding sounds like hell
Actually, you can use absolutely any colorpicker and not just those that are βcreated specifically for tweaksβ. You'll just need to build some wrapper to connect it with specifiers
lol ofc yeah
i just prefer it
i need a simple way to get color inputs from the native picker and get an output from it to hook the method with
and libgcuniversal provides that very well
my only annoyance is that the fallback only allows hex and not UIColor* NSData or a UIColor* instance
@grave sparrow do you know?
yeah its _swipeDown:
self.entryView: CKMessageEntryView
man i accidentally typed '+'
tried already
didnt work
inside a CKChatController hook
[self.entryView _swipeDown:nil]
but when i pass in
self.entryView.swipeGestureRecognizer
it still wonr work
hmm
1 step ahead of you lol
does objc_msgSend_delegate call on the delegate???
im so confused what this means
u can read assembly?
@grave sparrow i found a method in the CKChatController
- (void)messageEntryViewSwipeDownGestureRecognized:(id)arg1 {
%orig;
NSLog(@"[obex] Swipe down gesture recognized %@", arg1);
NSLog(@"[obex] self.entryView %@", self.entryView);
NSLog(@"[obex] arg1 == self.entryView: %d", arg1 == self.entryView);
}
and it is the same object
what are y'all tryina do
but when i call it, it doesnt work
dismiss the keyboard programmatically in objc
hmmmmm
i wonder if
its being called before the keyboard is fully loaded
hm
bc for some reason, if you just tap a chat in imessage, and it opens the conversation the keyboard doesnt appear, but if you 3d touch a chat and click the preview the keyboard opens
???
thanks apple
is there no other way to dismiss it? like not via CK but just hooking the keyboard? surely theres an internal method to dismiss the keyboard which isnt on a per-framework basis
already tried
i think its bc my hook might be executing before the keyboard fully loads?
so it tries to dismiss a keyboard that doesnt exist
yeah

already tried.
but like i just said
tried
tried
Canβt you just call uhh
fiore are you sure your hook is actually being called
did that already
yes because it does other things in the hook that i can see
is that method specifically being called? nslog or something idk
theres been so many implementations
yes
if absolutely none have worked so far there has to be some other cause
i think. its because. the keyboard. might not. be loaded. by the time. my hook. is called.
lmao okay so how can you fix that
is no one reading this as a possibility
idk thats why i keep saying it so capt can think of something
@grave sparrow @grave sparrow @grave sparrow explode his keyboard
lmao exactly
.
so im trying to make it
when you 3d touch and click preview
the keyboard is disabled
like not on the screen
ok wait so if you want the keyboard to be disabled altogether why not fade it out of view while previewing
good idea
itll look less jank im practice too
because it wont open and then instantly close the keyboard
this
Hmmm
And it messes up what I wanna do w the tweak
im assuming when you guys say 3d touch you just mean long press
no I modded my iPhone 13 to restore 3D Touch
oh interesting
Yes itβs a long press
but with β¨ pressure β¨
Bc I donβt want the user to be able to send anything through the 3D Touch
and if the keyboard is auto focused, they can type
oh ok
but Iβm blocking user interaction with the text box and the buttons in it, so if the keyboard is down, it wonβt be able to type
oh so its essentially a mock keyboard anyway
And then the keyboard being there makes zero sense
like it does nothing?
Yesh
But it usually is a real keyboard
But it just so happens thay I can only make it not do anything n
And not disable it
if you cant find a better solution you could just fade out the keyboard to signal to the user that its disabled
but only use that as a last resort i guess
ok on another note i have an idea for how to make flora "typical jb user" (you know what i mean) friendly
i wanna make a dropdown to select between simple and advanced mode, where simple is the default
in simple mode you will be able to choose a primary and secondary color
then it will convert those colors into hsv because i need the hue from them
then i will get the hsv of every color i wanna assign to and simply replace the hue of it while keeping the saturation and brightness the same
then ill alternate the colors between primary and secondary for each color until i theme all the colors
black and white will stay black and white because they have a brightness of 0 or 100, and this is intentional
then advanced mode will just be as it is right now where you can manually choose a color for everything
and then after i get this working whole simple/advanced mode working, ill make an export and import system which converts the dict of colors to json and copies to clipboard or something
I usually just go minimal prefs possible
my most complicated prefs is webshade and it looks like shit and is a mess to use
but it at least makes sense
kinda
should I show OneSettings's prefs
the comment doesn't even make that much sense
holy shit
you went a whole 44 seconds without respringing????
mfw Ampere is installed
I don't have a jailbroken iOS device but you should see webshades prefs
I'll see if I can find a video
tbf imo there aren't enough
i was missing some things i wanted
sick
like what
ability to change location for weather
ability to present from the top
opening from the top was planned
but
too buggy
and cursed
and glitchy
and changing the location probably can be done via the weather app
here is cursed Jade
opened from the top
thats what Jade had
lmao doesnt look too cursed
but anyway presenting from the top isnt really a need anymore ive gotten used to opening it from the bottom right
did you like completely rewrite prysm from scratch or?
yes
completely from scratch
not a video but heres screenshots of just the main page https://cdn.discordapp.com/attachments/718406429526065222/951778494415773716/IMG_5688.png?ex=65b37fcc&is=65a10acc&hm=401121242b58e6db1e492b25aaf33cf9fe514bf85471f3bd9701bd9b8ba5f69a& https://cdn.discordapp.com/attachments/718406429526065222/951778494734549012/IMG_5689.png?ex=65b37fcc&is=65a10acc&hm=dd814704b5c9d45cc4d9663ad58a6af07d5a65b76d656cc43bfd6cbebd019736& https://cdn.discordapp.com/attachments/718406429526065222/951778494982021190/IMG_5690.png?ex=65b37fcc&is=65a10acc&hm=5b7386a933eee6ab039467d0dba699af2b39bee18a1ec903ac27a9d3ad43ef44&
yea well it will be minimal because when simple mode is selected itll hide all the linkcells and just show 2 color picker cells and vice versa
wtf i don't have any devices on 14
WHAT THE FUCK
WHY DO YOU HAVE 2100 LINES OF XML
IM ASSUMING THATS PLISTS
EVEN THEN I THOUGHT YOU WOULD GENERATE ALL OF THOSE CELLS PROGRAMMATICALLY π
also what tool is this
cloc
yea its CLI
is it just part of a unix os
no
I thought webshade was big
i dont think so, i installed it from brew i think
(alex is .x file for some reason)
oh ok
how does it calculate code complexity
idk but its not that good for small projects
Jade
OneSettings
yeah this is why I don't use ui stuff
69
funny number
most of my tweaks are like at most 2 hooks
actually webshade is only 2 hooks but it has a shiton of other logic
cwift
Fun fact webshade was origially going to be a userscript injector
do it with scc .
but then I realzied I could make a dakr mode tweak and I wouldn't need a ui
and then it got big enoguh I had to make a ui

what does that do
secret project right now
quart rewrite
shows the bottom columns too:
- Estimated Cost to Develop
- Estimated Schedule Effort
- Estimated People Required
nah
stop making my tweaks look bad
copium
oh want to hear something cursed
yes
Unable to read: scc 
what π
give full args fr
scc .
cloc scc . ?
WHAT
webshade tehcnically has a lot of code cause it includes the entire dark reader project in it
and then this other subproject aswell
complexity go wild
I'm so sorry you had to write that much swift
where my 1.5 mil 
let me run it on my entire projects folder
oh
actually its split over 8 people π€
did you build all of discord or what
π π
I have $2 billion worht of code on my computer

i wonder if i could go to root and run scc .
stop
what the number would be
my computer froze when I tried to run it in my developer folder
skill issue
:(
multithreading was not a good idea
lol
@radiant idol str_patcher fr

so far flora is worth 12k dollars
and apparently it thinks that you need half a person to write it
socketv2
I like how wildly wrong the estimations are
lmao yea
fuck it we running scc /
almost 3 months are needed to write that apparently
i wrote it in half a week
@native orbit should I try to run rocketbootstrap through the patcher lmfao
update: it crashed

yea i think we need to copy perms somehow and apply them after
hmm well it booted SpringBoard fine
I agree
ok the tweak works
I once wrote something in like 2 hours and it said it needed like 6 months
But also for production code, it would need a lot more work
lol to be fair it hit this one perfectly
its been in development for around 9 months
did you spend $380,688 dollars on it tho??
But how many hours was it worked on?
actually i probably did once i dont remember
Times that by average hourly age
That's how much it would cost to pay you to make that
i genuinely dont know
before i started working on it it was a 1 person project
i have no idea how much time was spent on it
oh i see where youre coming from
but its usually more than that
because electricity, uptime etc
Yeah but that's operational costs and not development costs
true
tbh thats implying ~ $134,923.27 per year per dev for that code
which is very high
i wouldnt be living here if i got paid 130k to write code every year
well business wise, you also need like managers and supervisers for the devs
and possibly other things like QA
idk if thats factored in
yea true
how 
Ok so
Circling back to this lol
I injected into the daemon and
Not working hook
βΉοΈ
I used this
what are you making
Change ping sound watch
ooh
@grave sparrow so basically, i added a sleep in my code for 2 seconds after it opens to call dismissKeyboard and when it waits it works
so it IS an issue with waiting for the keyboard to be fully loaded
im trying not to have it spawn accross multiple hooks
trying to keep it all in 1 hook
shared boolean disableNextUp then on the up hook if true, don't orig set to false
think i got it
and a somewhat good solution?
maybe?
(that means its a horrible solution)
just hook layoutsubviews
you could probably do it with 1 hook
im hookijnh viewDidLayoutSubviews
@grave sparrow
%hook CKChatController
%property (nonatomic) bool shouldBlock;
-(void)viewDidAppearDeferredSetup {
%orig;
if (someExpression) {
self.shouldBlock = YES;
}
}
- (bool)becomeFirstResponder {
if (self.shouldBlock) return NO;
return %orig;
}
%end

why
what does that do
make it assignable I assume
@grave sparrow uhhh i hook viewDidLayoutSubviews and do smth like this
self.didBlock = YES;
// add a view here``` in a hook
but if i do something yk, reasonable and hook viewDidLoad or loadView the view doesnt show up
should i just hook viewDidLayoutSubviews and dispatch once
do what im doing?
@grave sparrow so is assign like the same as retain but for bool/int
@native orbit I think its failing to patch this one
wonder if it's because of the space
you should make a tweak that has a string comparision like if /var/mobile includes jb and if it does just like idk crash springboard and boom rootless patching check
Nightwindware
that looks fine to me 
ok sorry I'lk stop now
this is staturnzware
I promise it wasn't working before
i turned on the magic "start working" switch
oh
is it oldabi?
it doesnt work
crazeware
whattt
yes
scrodingers software
tbf this is a cap*inc tweak
just get the source code and recompile with rootless
rocketbootstrap seems to have worked which is interesting
never tested it but I don't see why not
but it still doesnt show anything in the "current mask" section
the path seems to be correct tho
what about in tweaksettings?
if it right in ida then it patched correctly, tweak might just be cooked and unfixable
captware
im patching it
not recompiling
i dont wanna use ur tweak im just using it as a test case
string rebasing
str_patcher
it works
keep up with the times smh
smh
should make a stupid simple cli app that just outputs /var/mobile and see if it gets patched
its a path
depends what you are hooking and how janky you are willing to make it
I dont even have a User folder
companionfindlocallyd
c func?
nvm i do in /var/jb
symlinks cydia makes to /var/mobile
what
no its objc i think
im pretty sure
instance or class method?
on old jbs
Nathan did
smh
idk i might be thinking wrong
instance
dont need jit if instance
NanoLeash
this hook is broked then
@radiant idol respring loop
cursed
why did it ping myself
discord is drunk
@cloud yacht
fr
@native orbit
it shouldn't even hook springboard?
yea idk
actually I have code in my init to prevent hooking into SpringBoard cause it was messing with xenHTML
right uh
i think oldabi has a seizure if stuff tries hooking into WebContent or whatever
what is the end goal? change the /System/Library/... path?
wait question
yes
did it patch the /Application string?
uh allow me to look
ok it shouldn't
aint we skiping prefs?
fr
/var/jb/User/Library/Preferences
yeah idk how to do prefs
idk what to look for now but does this help
no i dont think
my prefs code is litterally reading the plist from the disk
actually yeah it dont cuz i looked into cfprefsd
cause i have hook on my 14 pro max
but the proper directory is /var/jb/var/mobile/Library/Preferences
just bc lol
like click the string "/System/LibraryPrivateFrameworks/NanoLeash.framework" and check how many refs that has
thats in a framework tho
doesnt matter its a string
Ok, however
i need know how many refs lol
lmfao
W
how many refs to that
check wayback?
too lazy
b
