#development

1 messages Β· Page 113 of 1

native dune
#

lol
slowly just fades away

radiant idol
#

L

crisp frost
#

Why does the period from may to july look a awful lot like a swastika

native dune
#

oh

#

thats wild

acoustic imp
#

how do i make it an assigner ?

#

iv tried a few things but idk how i would make it animate

placid kraken
#

mine was so random for 2023 lmao

#

i kinda just code whenever i feel like it

acoustic imp
#

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];
    

    }

}```

cloud yacht
placid kraken
#

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

cloud yacht
#

I didn't code that mcuh last year

#

I probably should

placid kraken
#

example

#

48 changed files is insane

#

never doing that again

cloud yacht
placid kraken
#

most of that is probably a lockfile tbh

cloud yacht
placid kraken
#

knew it

cloud yacht
#

only 3%

#

not most of it

placid kraken
#

since when is 713/2548 === 3/100

cloud yacht
#

great question

#

I can't math

#

oh I did 2548/713

placid kraken
#

lmfaoo

cloud yacht
#

28%

#

still not most

placid kraken
#

big enough portion

#

but anyway

acoustic imp
placid kraken
#

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?

acoustic imp
#

ig they do it here

#

when i add it to didmove to window it just does nothing

faint stag
slim bramble
#

FINALLY

#

Round corners πŸ™

#

It's weird how once I make the code for it, it works

#

πŸ’€

placid kraken
# faint stag

this is terrible i hope that file corrupts your pc

faint stag
#

but it can't corrupt my pc clueless

placid kraken
#

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
faint stag
#

and i'm dumb for using exit if the one and only function returns a number

placid kraken
#

did you redefine fax and cap as true and false or

#

reminds me of this

hexed knot
placid kraken
#

what

hexed knot
placid kraken
#

no access

hasty ruin
#

or #staff-botspam

faint stag
#

no access

hasty ruin
faint stag
#

smh icraze

placid kraken
#

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

hasty ruin
#

oh

#

:/

placid kraken
#

omg is that hate speech>>???????

placid kraken
#

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

faint stag
native orbit
#

newline moment

placid kraken
#

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

#

tysm !!

indigo peak
#

@placid kraken are you still using libgcuniversal

placid kraken
#

yes

cloud yacht
#

πŸ™

placid kraken
#

can PSGroupCell have an icon

slim bramble
#

Hey, can I change the parent view of a view ?

ashen birch
#

mine is almost fully black between april-august last year

slim bramble
#

That easy damn

#

Well ig my shit is easier to do

acoustic imp
#

how can i set the frame x of a view using like self.frame... ?

#

or can i not do it like that?

radiant idol
#

@hasty ruin look at this doofus

acoustic imp
#

can i make it like a setter?

hasty ruin
#

only the whole frame

acoustic imp
#

ok

#

CGRectMake ?

radiant idol
#

no

#

CGRectDestroy

hasty ruin
#
  • make a temp frame, copied from the current one
  • modify that frame's X
  • set your view's frame to the temp one
radiant idol
#

please dont call the temporary variable temp

acoustic imp
#

ohhhh

acoustic imp
radiant idol
#

son of a

hasty ruin
#

yeah call it OOtemP_ZE_FRAMe

acoustic imp
hexed knot
acoustic imp
#

@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;

radiant idol
#

oh my goodness

#

aint no way

acoustic imp
#

elf

#

OMG IT WORK

#

πŸŽ‰πŸŽ‰πŸŽ‰πŸŽ‰πŸŽ‰πŸŽ‰πŸŽ‰πŸŽ‰

#

and i dont need any dress or lower code πŸ‘πŸ‘

wicked summit
#

gm

acoustic imp
#

gm

#

but whats the point of so many?

#

ist like 1-2 enough

radiant idol
#

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

hasty ruin
#

objective c oriented programming

radiant idol
#

.

acoustic imp
hasty ruin
#

can’t wait to harass nightwind with voice messages

#

I’m one level away

radiant idol
hasty ruin
#

Then it crashes because you have zefram

radiant idol
#

capt

#

its a lost cause

acoustic imp
#

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 trol

hasty ruin
#

Thank you so much

visual meadow
#

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

left lantern
acoustic imp
#

@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;`
hasty ruin
#

try it

acoustic imp
#

it compiles

#

i fricked it up on sec

hasty ruin
indigo peak
#

@radiant idol pov explaining oop to @acoustic imp

radiant idol
#

help

acoustic imp
acoustic imp
hexed knot
acoustic imp
#

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

radiant idol
#

CENSORSHIP

acoustic imp
#

so i can jus do (nonatomic, assign) ?

#

k

#

thx

acoustic imp
#

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

hasty ruin
#

It’s probably just being set back to normal

#

After you’ve set it

acoustic imp
#

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?

indigo peak
#

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

primal perch
#

look at the _targets ivar for that UISwipeGestureRecognizer, what does it point to

indigo peak
primal perch
#

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

indigo peak
primal perch
#

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

indigo peak
#

i physically cannot dismiss the keyboard programmatically in the imessage app

#

it just

#

doesnt wanna work

faint stag
#

assuming you tried the usual stuff for dismissing keyboards lol

placid kraken
#
- (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?

lime pivot
#

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

unique wedge
#

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.

slim bramble
#

with %orig

granite frigate
#

is this a new roothide beta feature?

#

oh no, ok sorry

unique wedge
granite frigate
unique wedge
#

before that, I wanted to play with ppl injection, so that we don't need to resign every binaries/apps

granite frigate
#

okay

#

thank you

#

❀️

unique wedge
# granite frigate okay

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.

granite frigate
unique wedge
unique wedge
granite frigate
#

just hook posix_spawn to check if path strstr contains appname.app

#

then redirect

unique wedge
granite frigate
#

yes

#

copy app over, resign etc etc

#

but no messing with uicache

unique wedge
granite frigate
#

oh

#

yeah

unique wedge
#

unless you use ppl injection

hasty ruin
#

it’s all captinc’s fault

placid kraken
#

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

placid kraken
placid kraken
#

doesnt work lol it crashes settings

slim bramble
visual meadow
#

anyone here willing to nop out 2 if statement in a dylib for me cuz i cant recompile rn lol

placid kraken
#

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

indigo peak
slender glade
slim bramble
#

Bruh

#

preferences crashed xccode

#

I just want to make my tweak preferences

#

πŸ™

slender glade
#

@lime pivot where is the button to get the download stats on chariz by csv

lime pivot
slender glade
lime pivot
#

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

gaunt stone
#

Is hooking setFrame a good idea, I'm unsure because the function is probably called a lot

slender glade
gaunt stone
slender glade
#

if it's just a specific view that's not used a lot then no harm

gaunt stone
#

It's about notifications

slender glade
#

if it's like UIView then lol

slender glade
gaunt stone
#

yeah

#

the controller

#

NCNotificationListView to be exact

slender glade
#

not gonna b doing much harm

gaunt stone
#

Oh cool

faint stag
#

setFrame isn't the right method anyway

#

that's a method for appkit on macOS

#

lol

gaunt stone
#

viewDidLoad ?

lime pivot
faint stag
lime pivot
#

you might be looking at NSView

faint stag
#

oh yeah uikit

#

my bad

faint stag
gaunt stone
placid kraken
#

so

indigo peak
placid kraken
#

yes

indigo peak
#

I can send the version of EXMColorPicker.m that uses NSUserDwfaults later if you want

placid kraken
#

libgcuniversal is better here because it uses alderis for < 14

placid kraken
indigo peak
placid kraken
indigo peak
#

πŸ€·β€β™‚οΈ

#

ur gonna need to get libsandy working at some point

#

if you want it to work inside apps

placid kraken
#

ok but libgc is just for storing and selecting the color

hasty ruin
#

zero deps πŸ”₯

placid kraken
#

its irrelevant from actually applying the color in apps with the hook

indigo peak
#

yeah ik

#

I’m just saying

placid kraken
#

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

ocean raptor
placid kraken
#

skssksks

faint stag
indigo peak
#

i did this in 10 minutes so if its bad

#

idc

indigo peak
#

i also tried self.entryView.swipeGestureRecognizer.state = UIGestureRecognizerStateEnded;

#

and that didnt work

serene hawk
#

is there any way to NSLog ascii art?

faint stag
serene hawk
serene hawk
faint stag
#

ascii is a specific set of characters

#

unicode expands on this by a wide margin

serene hawk
#

alright thanks

faint stag
#

though i'm sure you can find one that uses ascii only, from there it should be easy then

serene hawk
#

great god

#

thank you!

indigo peak
#

Real

placid kraken
#

how tf are you viewing text files in the browser

olive peak
#

before downloading one press show

cloud yacht
placid kraken
#

nope !!

#

who needs to depend on substrate

#

i personally load my tweak by shutting down my phone

indigo peak
indigo peak
#

I use the built in objc swizzling methods

radiant idol
#

Fr

indigo peak
#

I hate deps

radiant idol
#

LGU is good tho

placid kraken
#

(he doesnt know how to install lgu)

radiant idol
#

Alderis on <= iOS 13

radiant idol
placid kraken
#

/s

placid kraken
#

as in on > 14 does it make you install alderis too

radiant idol
#

No, it has a built in thing for alderis

placid kraken
#

oh i see

radiant idol
#

Idk how it does its magic

placid kraken
#

lmao fair

indigo peak
radiant idol
#

Nooooob

placid kraken
#

i couldnt find the lib itself online so im assuming its closed source

#

only the docs for it

radiant idol
#

It is closed source

placid kraken
#

yea fair

granite frigate
#

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

placid kraken
#

nightwind do you know how to put system sf symbols on cells without depending on cephei

#

maybe a custom PSListController idk

radiant idol
#

Uhhhh

#

like this?

placid kraken
#

oh if possible with the subtitles too but yes

#

i currently have this

radiant idol
#

Yeah I made my own cells

placid kraken
#

but this is with cephei

#

i see

radiant idol
#

Those prefs look nice tho

placid kraken
#

ill look into how to do that then lol

placid kraken
radiant idol
#

Fair

placid kraken
#

can i use the look of your cells as reference

#

ill credit you at the bottom

radiant idol
#

Uhhh yeah I’ll send them in a bit

#

I’m tired rn, not at my pc

placid kraken
#

oh no i dont think i need the code

#

i meant just like

#

the visuals of them

olive peak
#

credit in very small text

radiant idol
#

Oh sure yeah use the look idc

placid kraken
#

ok tyyy

placid kraken
#

what does EXM stand for in EXMColorPickerCell?

#

example?

slender glade
#

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

faint stag
faint stag
#

funny things

slim bramble
faint stag
granite frigate
#

I was trying to fix normal Lower but i couldn’t

#

thanks

slim bramble
indigo peak
#

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 πŸ’€πŸ’€

indigo peak
#

I was the only person in the class of 26 who knew what the CLI was

placid kraken
placid kraken
faint stag
#

yap about abstraction or something

placid kraken
#

im the only one in my class who knew what polymorphism is

faint stag
#

i don't even know what that is

placid kraken
#

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)

faint stag
indigo peak
#

someone typed it into the CLI as 1s

faint stag
#

i think we should start with the manual

placid kraken
#

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)
indigo peak
#

The C Programming Language πŸ™Œ

#

C master race

placid kraken
indigo peak
#

yes?

#

im praising the book

placid kraken
#

oh

#

i would too

#

πŸ™Œ

indigo peak
#

aqlthough id never read it bc i know enough for the course alr

placid kraken
#

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?

indigo peak
placid kraken
#

fair enough yea

indigo peak
#

only tjing i dont know 100% are sockets

#

so are you trolllaugh

placid kraken
#

im not a beginner wha

indigo peak
placid kraken
indigo peak
#

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

placid kraken
#

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

ashen birch
placid kraken
gaunt stone
placid kraken
#

@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

faint stag
placid kraken
#

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

placid kraken
#

manually handling the uicolor encoding and decoding sounds like hell

tight carbon
# placid kraken so no lgu is necessary

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

placid kraken
#

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

indigo peak
#

yeah its _swipeDown:

#

self.entryView: CKMessageEntryView

harsh junco
indigo peak
#

its not _swipeDown: exacty

#

i didnt feel like typing the full name lmfao

harsh junco
#

man i accidentally typed '+'

indigo peak
#

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

dreamy mason
#

u can read assembly?

indigo peak
#

@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

radiant idol
#

what are y'all tryina do

indigo peak
#

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

placid kraken
#

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

indigo peak
#

already tried

indigo peak
#

so it tries to dismiss a keyboard that doesnt exist

#

yeah

#

already tried.

#

but like i just said

#

tried

#

tried

radiant idol
radiant idol
#

yeah endEditing

#

So this doesn’t work(?)

placid kraken
#

fiore are you sure your hook is actually being called

indigo peak
#

did that already

indigo peak
placid kraken
#

theres been so many implementations

indigo peak
#

yes

placid kraken
#

if absolutely none have worked so far there has to be some other cause

indigo peak
#

i think. its because. the keyboard. might not. be loaded. by the time. my hook. is called.

placid kraken
#

lmao okay so how can you fix that

indigo peak
#

is no one reading this as a possibility

indigo peak
placid kraken
#

lmao exactly

indigo peak
#

so im trying to make it

#

when you 3d touch and click preview

#

the keyboard is disabled

#

like not on the screen

placid kraken
#

ok wait so if you want the keyboard to be disabled altogether why not fade it out of view while previewing

indigo peak
#

part of a tweak

#

So I want it to be like this

#

when the 3D Touch occurs

#

yes

placid kraken
#

good idea

#

itll look less jank im practice too

#

because it wont open and then instantly close the keyboard

indigo peak
#

@grave sparrow

radiant idol
#

But why is the autofocus for the keyboard bad

#

It seems logical to me

indigo peak
#

this

radiant idol
#

Hmmm

indigo peak
placid kraken
#

im assuming when you guys say 3d touch you just mean long press

indigo peak
#

no I modded my iPhone 13 to restore 3D Touch

placid kraken
#

oh interesting

indigo peak
#

Yes it’s a long press

placid kraken
#

but with ✨ pressure ✨

indigo peak
#

and if the keyboard is auto focused, they can type

radiant idol
#

oh ok

indigo peak
#

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

placid kraken
#

oh so its essentially a mock keyboard anyway

indigo peak
#

And then the keyboard being there makes zero sense

placid kraken
#

like it does nothing?

indigo peak
#

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

placid kraken
#

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

cloud yacht
#

I usually just go minimal prefs possible

cloud yacht
#

my most complicated prefs is webshade and it looks like shit and is a mess to use

#

but it at least makes sense

#

kinda

radiant idol
#

should I show OneSettings's prefs

cloud yacht
#

Eliza's apply button is so cursed

radiant idol
#

Ima show OneSettings's prefs

#

one second

cloud yacht
hasty ruin
#

you went a whole 44 seconds without respringing????

radiant idol
radiant idol
cloud yacht
#

I don't have a jailbroken iOS device but you should see webshades prefs

#

I'll see if I can find a video

placid kraken
#

i was missing some things i wanted

dreamy mason
#

sick

radiant idol
placid kraken
radiant idol
#

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

placid kraken
#

bigsurcc has an option to reverse the module order

#

when opening from the top

radiant idol
#

thats what Jade had

placid kraken
#

you should experiment with that

#

ah

radiant idol
#

it just looked too cursed

#

as you can see

placid kraken
#

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?

radiant idol
#

completely from scratch

placid kraken
#

wow

#

great job then

radiant idol
#

thanks

#

lemme show you something

radiant idol
#

oh my goodness

#

@placid kraken

placid kraken
faint stag
#

wtf i don't have any devices on 14

placid kraken
#

WHY DO YOU HAVE 2100 LINES OF XML

#

IM ASSUMING THATS PLISTS

faint stag
#

yeah it has to be xml1 plists

#

lol

placid kraken
#

EVEN THEN I THOUGHT YOU WOULD GENERATE ALL OF THOSE CELLS PROGRAMMATICALLY 😭

placid kraken
radiant idol
#

cloc

placid kraken
#

like im assuming its a cli

#

oh

radiant idol
#

yea its CLI

placid kraken
#

is it just part of a unix os

hasty ruin
#

no

cloud yacht
#

I thought webshade was big

radiant idol
#

i dont think so, i installed it from brew i think

cloud yacht
#

(alex is .x file for some reason)

radiant idol
#

wa

#

that exists

#

i didnt know that command existed

placid kraken
faint stag
cloud yacht
radiant idol
cloud yacht
radiant idol
#

OneSettings

cloud yacht
#

yeah this is why I don't use ui stuff

radiant idol
#

lets see Bolders Reborn

cloud yacht
#

69

radiant idol
#

funny number

cloud yacht
#

most of my tweaks are like at most 2 hooks

#

actually webshade is only 2 hooks but it has a shiton of other logic

native orbit
cloud yacht
#

Fun fact webshade was origially going to be a userscript injector

radiant idol
cloud yacht
#

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

native orbit
radiant idol
#

secret project right now

placid kraken
radiant idol
radiant idol
cloud yacht
#

stop making my tweaks look bad

radiant idol
#

copium

cloud yacht
#

oh want to hear something cursed

radiant idol
#

yes

cloud yacht
#

or see

#

in webshade

radiant idol
radiant idol
#

.

native orbit
#

give full args fr

radiant idol
#

scc .

native orbit
#

cloc scc . ?

radiant idol
native orbit
#

this a whole ass different cmd lol

#

god damn

radiant idol
#

WHAT

cloud yacht
#

webshade tehcnically has a lot of code cause it includes the entire dark reader project in it

placid kraken
#

and then this other subproject aswell

native orbit
#

complexity go wild

cloud yacht
native orbit
#

where my 1.5 mil vexxedtomato

cloud yacht
#

let me run it on my entire projects folder

placid kraken
radiant idol
radiant idol
placid kraken
#

😭 😭

cloud yacht
#

I have $2 billion worht of code on my computer

native orbit
radiant idol
placid kraken
#

i wonder if i could go to root and run scc .

radiant idol
#

stop

placid kraken
#

what the number would be

radiant idol
#

my computer froze when I tried to run it in my developer folder

cloud yacht
#

skill issue

radiant idol
#

:(

faint stag
#

lol

native orbit
placid kraken
#

FUCK I FORGOT THAT LIBRARY IS IN ~

radiant idol
#

BRO

#

step away from your computer

#

because its gonna go boom boom

native orbit
#

@radiant idol str_patcher fr

radiant idol
placid kraken
#

so far flora is worth 12k dollars

#

and apparently it thinks that you need half a person to write it

native orbit
#

socketv2

radiant idol
#

I like how wildly wrong the estimations are

placid kraken
#

lmao yea

native orbit
#

fuck it we running scc /

placid kraken
#

i wrote it in half a week

radiant idol
#

@native orbit should I try to run rocketbootstrap through the patcher lmfao

native orbit
radiant idol
#

I'm doing it

native orbit
#

yea i think we need to copy perms somehow and apply them after

radiant idol
#

hmm well it booted SpringBoard fine

radiant idol
#

ok the tweak works

cloud yacht
#

But also for production code, it would need a lot more work

placid kraken
#

lol to be fair it hit this one perfectly

#

its been in development for around 9 months

radiant idol
#

did you spend $380,688 dollars on it tho??

placid kraken
#

$0

#

i have never spent money on code before

cloud yacht
#

But how many hours was it worked on?

placid kraken
#

actually i probably did once i dont remember

cloud yacht
#

Times that by average hourly age

#

That's how much it would cost to pay you to make that

placid kraken
#

before i started working on it it was a 1 person project

#

i have no idea how much time was spent on it

placid kraken
#

but its usually more than that

#

because electricity, uptime etc

cloud yacht
#

Yeah but that's operational costs and not development costs

placid kraken
#

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

cloud yacht
#

well business wise, you also need like managers and supervisers for the devs

#

and possibly other things like QA

#

idk if thats factored in

placid kraken
#

yea true

indigo peak
#

how fr

visual meadow
#

Ok so

#

Circling back to this lol

#

I injected into the daemon and

#

Not working hook

kind herald
#

☹️

visual meadow
#

I used this

kind herald
#

what are you making

visual meadow
#

Change ping sound watch

kind herald
#

ooh

indigo peak
#

@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

cloud yacht
#

so hook the keyboard being up

#

or what triggers it

indigo peak
#

im trying not to have it spawn accross multiple hooks

#

trying to keep it all in 1 hook

cloud yacht
#

shared boolean disableNextUp then on the up hook if true, don't orig set to false

indigo peak
#

think i got it

#

and a somewhat good solution?

#

maybe?

#

(that means its a horrible solution)

cloud yacht
#

just hook layoutsubviews

indigo peak
#

πŸ’€

#

im not hookine layoutSubviews

cloud yacht
#

you could probably do it with 1 hook

indigo peak
#

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

cloud yacht
#

make it assignable I assume

indigo peak
#

@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

radiant idol
#

@native orbit I think its failing to patch this one

primal perch
radiant idol
cloud yacht
#

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

radiant idol
#

.

#

wait why does it work now

#

????

cloud yacht
#

Nightwindware

native orbit
cloud yacht
#

ok sorry I'lk stop now

radiant idol
#

this is staturnzware

radiant idol
native orbit
#

i turned on the magic "start working" switch

radiant idol
#

oh

native orbit
#

is it oldabi?

radiant idol
#

it doesnt work

primal perch
#

crazeware

radiant idol
#

whattt

radiant idol
cloud yacht
#

scrodingers software

radiant idol
#

tbf this is a cap*inc tweak

native orbit
#

ah

#

i see now

cloud yacht
#

just get the source code and recompile with rootless

radiant idol
#

i dont need the tweak

#

im just testing it

#

to see if the patcher thing works

cloud yacht
#

if you want you can use webshade

#

it has a hard coded path in it

radiant idol
#

rocketbootstrap seems to have worked which is interesting

radiant idol
#

will it work on iOS 15 tho

cloud yacht
#

never tested it but I don't see why not

radiant idol
indigo peak
#

hooray

radiant idol
native orbit
radiant idol
#

same thing

#

oh no

#

he found me

native orbit
radiant idol
#

captware

#

im patching it

#

not recompiling

#

i dont wanna use ur tweak im just using it as a test case

#

string rebasing

#

str_patcher

native orbit
#

it works

radiant idol
#

keep up with the times smh

native orbit
#

smh

cloud yacht
#

should make a stupid simple cli app that just outputs /var/mobile and see if it gets patched

visual meadow
#

in order to hook a function in a dylib

#

i need jit

#

right

#

?

radiant idol
#

@cloud yacht what is this weird path

#

/User/Library/...

cloud yacht
#

its a path

native orbit
cloud yacht
#

idk I didn't know how to do prefs

#

(I still don't)

radiant idol
#

I dont even have a User folder

visual meadow
native orbit
#

c func?

radiant idol
visual meadow
radiant idol
#

what

visual meadow
visual meadow
#

idk if its cydia or jb itself

radiant idol
#

who said anything about cydia

#

what

visual meadow
#

im pretty sure

native orbit
visual meadow
#

on old jbs

cloud yacht
radiant idol
#

smh

visual meadow
#

idk i might be thinking wrong

radiant idol
#

instance

native orbit
#

dont need jit if instance

visual meadow
#

its in /System/Library/PrivateFrameworks/NanoLeash.framework/NanoLeash

#

well

cloud yacht
#

NanoLeash

visual meadow
#

this hook is broked then

radiant idol
#

@radiant idol respring loop

#

cursed

#

why did it ping myself

#

discord is drunk

#

@cloud yacht

native orbit
#

fr

visual meadow
#

@native orbit

cloud yacht
#

it shouldn't even hook springboard?

radiant idol
#

yea idk

visual meadow
radiant idol
#

maybe some other tweak

#

lemme investigate

cloud yacht
#

actually I have code in my init to prevent hooking into SpringBoard cause it was messing with xenHTML

radiant idol
#

right uh

#

i think oldabi has a seizure if stuff tries hooking into WebContent or whatever

native orbit
cloud yacht
#

wait question

cloud yacht
#

did it patch the /Application string?

native orbit
#

is that the only ref to it?

#

the string

visual meadow
#

uh allow me to look

radiant idol
#

WebShade.dylib

#

WebShadePrefs

cloud yacht
#

ok it shouldn't

native orbit
#

aint we skiping prefs?

radiant idol
#

oop

#

we are

#

but he's doing it in a weird spot

native orbit
#

fr

radiant idol
#

/var/jb/User/Library/Preferences

cloud yacht
#

yeah idk how to do prefs

visual meadow
radiant idol
#

does the cfprefsd hook fix that too

#

or

visual meadow
#

no i dont think

cloud yacht
#

my prefs code is litterally reading the plist from the disk

radiant idol
#

yea thats fine

#

lots of tweaks do that

visual meadow
#

actually yeah it dont cuz i looked into cfprefsd

#

cause i have hook on my 14 pro max

radiant idol
#

but the proper directory is /var/jb/var/mobile/Library/Preferences

cloud yacht
visual meadow
#

just bc lol

native orbit
visual meadow
#

thats in a framework tho

native orbit
#

doesnt matter its a string

native orbit
#

i need know how many refs lol

radiant idol
visual meadow
#

1

native orbit
#

W

visual meadow
#

i want to change ping.caf tho too

#

whole filename

native orbit
#

how many refs to that

visual meadow
#

1 to ping

#

1 to caf

#

so

#

yea

radiant idol
#

@grave sparrow what even was this video

#

it seems to have been taken down

visual meadow
#

check wayback?

radiant idol
#

too lazy

visual meadow
#

b