diff --git a/src/frameworks/AddressBook/CMakeLists.txt b/src/frameworks/AddressBook/CMakeLists.txt index 8376642e9..e1d15498c 100644 --- a/src/frameworks/AddressBook/CMakeLists.txt +++ b/src/frameworks/AddressBook/CMakeLists.txt @@ -378,6 +378,7 @@ add_framework(AddressBook src/ABPeoplePickerView.m src/ABPeriodicTask.m src/ABPeriodicUITask.m + src/ABPerson.m src/ABPersonContactConverter.m src/ABPersonEntriesFetcher.m src/ABPersonEntriesList.m @@ -424,6 +425,7 @@ add_framework(AddressBook src/ABRenameGroupCommand.m src/ABRolloverButton.m src/ABMapsLaunchRequest.m + src/ABSearchElement.m src/ABSearchElementOrderManager.m src/ABSearchElementSetView.m src/ABSearchElementUIController.m diff --git a/src/frameworks/AddressBook/include/AddressBook/ABGlobals.h b/src/frameworks/AddressBook/include/AddressBook/ABGlobals.h index e3cfea910..02ce639f0 100644 --- a/src/frameworks/AddressBook/include/AddressBook/ABGlobals.h +++ b/src/frameworks/AddressBook/include/AddressBook/ABGlobals.h @@ -28,6 +28,7 @@ extern NSString *const kABLastNameProperty; extern NSString *const kABNicknameProperty; extern NSString *const kABOrganizationProperty; extern NSString *const kABPersonFlags; +extern NSString *const kABSuffixProperty; extern NSString *const kABDeletedRecords; extern NSString *const kABInsertedRecords; diff --git a/src/frameworks/AddressBook/include/AddressBook/ABPerson.h b/src/frameworks/AddressBook/include/AddressBook/ABPerson.h new file mode 100644 index 000000000..3c184d011 --- /dev/null +++ b/src/frameworks/AddressBook/include/AddressBook/ABPerson.h @@ -0,0 +1,23 @@ +/* + This file is part of Darling. + + Copyright (C) 2025 Darling Developers + + Darling is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Darling is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with Darling. If not, see . +*/ + +#import + +@interface ABPerson : ABRecord +@end diff --git a/src/frameworks/AddressBook/include/AddressBook/ABSearchElement.h b/src/frameworks/AddressBook/include/AddressBook/ABSearchElement.h new file mode 100644 index 000000000..42001bdab --- /dev/null +++ b/src/frameworks/AddressBook/include/AddressBook/ABSearchElement.h @@ -0,0 +1,23 @@ +/* + This file is part of Darling. + + Copyright (C) 2025 Darling Developers + + Darling is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Darling is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with Darling. If not, see . +*/ + +#import + +@interface ABSearchElement : NSObject +@end diff --git a/src/frameworks/AddressBook/src/ABGlobals.m b/src/frameworks/AddressBook/src/ABGlobals.m index c6b5c4b70..285e63af0 100644 --- a/src/frameworks/AddressBook/src/ABGlobals.m +++ b/src/frameworks/AddressBook/src/ABGlobals.m @@ -38,6 +38,7 @@ NSString *const kABOtherDatesProperty=@"ABOtherDatesProperty"; NSString *const kABPhoneProperty=@"ABPhoneProperty"; NSString *const kABTitleProperty=@"ABTitleProperty"; NSString *const kABURLsProperty=@"ABURLsProperty"; +NSString *const kABSuffixProperty = @"Suffix"; NSString *const kABPersonFlags=@"ABPersonFlags"; diff --git a/src/frameworks/AddressBook/src/ABPerson.m b/src/frameworks/AddressBook/src/ABPerson.m new file mode 100644 index 000000000..cdb6757cb --- /dev/null +++ b/src/frameworks/AddressBook/src/ABPerson.m @@ -0,0 +1,36 @@ +/* + This file is part of Darling. + + Copyright (C) 2025 Darling Developers + + Darling is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Darling is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with Darling. If not, see . +*/ + +#import +#import +#import + +@implementation ABPerson + +- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector +{ + return [NSMethodSignature signatureWithObjCTypes: "v@:"]; +} + +- (void)forwardInvocation:(NSInvocation *)anInvocation +{ + NSLog(@"Stub called: %@ in %@", NSStringFromSelector([anInvocation selector]), [self class]); +} + +@end diff --git a/src/frameworks/AddressBook/src/ABSearchElement.m b/src/frameworks/AddressBook/src/ABSearchElement.m new file mode 100644 index 000000000..a173eed9c --- /dev/null +++ b/src/frameworks/AddressBook/src/ABSearchElement.m @@ -0,0 +1,36 @@ +/* + This file is part of Darling. + + Copyright (C) 2025 Darling Developers + + Darling is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Darling is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with Darling. If not, see . +*/ + +#import +#import +#import + +@implementation ABSearchElement + +- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector +{ + return [NSMethodSignature signatureWithObjCTypes: "v@:"]; +} + +- (void)forwardInvocation:(NSInvocation *)anInvocation +{ + NSLog(@"Stub called: %@ in %@", NSStringFromSelector([anInvocation selector]), [self class]); +} + +@end diff --git a/src/frameworks/CoreImage/include/CoreImage/CIFilter.h b/src/frameworks/CoreImage/include/CoreImage/CIFilter.h index 4b3aadf10..4f5de6fd1 100644 --- a/src/frameworks/CoreImage/include/CoreImage/CIFilter.h +++ b/src/frameworks/CoreImage/include/CoreImage/CIFilter.h @@ -19,6 +19,8 @@ #include +extern NSString *const kCIInputRadiusKey; + @interface CIFilter : NSObject @end diff --git a/src/frameworks/CoreImage/src/CIFilter.m b/src/frameworks/CoreImage/src/CIFilter.m index 488392ab6..5f032b02f 100644 --- a/src/frameworks/CoreImage/src/CIFilter.m +++ b/src/frameworks/CoreImage/src/CIFilter.m @@ -29,6 +29,7 @@ NSString * const kCIInputContrastKey = @"inputContrast"; NSString * const kCIInputExtentKey = @"inputExtent"; NSString * const kCIInputImageKey = @"inputImage"; NSString * const kCIInputSaturationKey = @"inputSaturation"; +NSString *const kCIInputRadiusKey = @"inputRadius"; NSString * const kCIOutputImageKey = @"outputImage"; NSString * const kCIApplyOptionDefinition = @"definition"; diff --git a/src/frameworks/CoreServices/include/CoreServices/CoreServices.h b/src/frameworks/CoreServices/include/CoreServices/CoreServices.h index 6a5afd19e..622b04ab2 100644 --- a/src/frameworks/CoreServices/include/CoreServices/CoreServices.h +++ b/src/frameworks/CoreServices/include/CoreServices/CoreServices.h @@ -13,6 +13,6 @@ #include #include #include +#include #endif - diff --git a/src/frameworks/CoreServices/include/SearchKit/Analysis.h b/src/frameworks/CoreServices/include/SearchKit/Analysis.h new file mode 100644 index 000000000..132a9392e --- /dev/null +++ b/src/frameworks/CoreServices/include/SearchKit/Analysis.h @@ -0,0 +1,24 @@ +/* + This file is part of Darling. + + Copyright (C) 2025 Darling Developers + + Darling is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Darling is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with Darling. If not, see . +*/ + +#import + +extern const CFStringRef kSKMinTermLength; +extern const CFStringRef kSKMaximumTerms; +extern const CFStringRef kSKProximityIndexing; diff --git a/src/frameworks/CoreServices/include/SearchKit/SearchKit.h b/src/frameworks/CoreServices/include/SearchKit/SearchKit.h index e69de29bb..0dd7bbd59 100644 --- a/src/frameworks/CoreServices/include/SearchKit/SearchKit.h +++ b/src/frameworks/CoreServices/include/SearchKit/SearchKit.h @@ -0,0 +1,25 @@ +/* + This file is part of Darling. + + Copyright (C) 2025 Darling Developers + + Darling is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Darling is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with Darling. If not, see . +*/ + +#ifndef _CORESERVICES_SEARCHKIT_H_ +#define _CORESERVICES_SEARCHKIT_H_ + +#include + +#endif diff --git a/src/frameworks/CoreServices/src/SearchKit/Analysis.m b/src/frameworks/CoreServices/src/SearchKit/Analysis.m new file mode 100644 index 000000000..dae279186 --- /dev/null +++ b/src/frameworks/CoreServices/src/SearchKit/Analysis.m @@ -0,0 +1,24 @@ +/* + This file is part of Darling. + + Copyright (C) 2025 Darling Developers + + Darling is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Darling is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with Darling. If not, see . +*/ + +#import + +const CFStringRef kSKMinTermLength = CFSTR("kSKMinTermLength"); +const CFStringRef kSKMaximumTerms = CFSTR("kSKMaximumTerms"); +const CFStringRef kSKProximityIndexing = CFSTR("kSKProximityIndexing"); diff --git a/src/frameworks/CoreServices/src/SearchKit/CMakeLists.txt b/src/frameworks/CoreServices/src/SearchKit/CMakeLists.txt index 93d35ed79..5bcb49c07 100644 --- a/src/frameworks/CoreServices/src/SearchKit/CMakeLists.txt +++ b/src/frameworks/CoreServices/src/SearchKit/CMakeLists.txt @@ -13,7 +13,7 @@ add_framework(SearchKit PARENT "CoreServices" SOURCES - empty.c + Analysis.m DEPENDENCIES CoreFoundation diff --git a/src/frameworks/CoreServices/src/SearchKit/empty.c b/src/frameworks/CoreServices/src/SearchKit/empty.c deleted file mode 100644 index e69de29bb..000000000 diff --git a/src/frameworks/ImageIO/include/ImageIO/CGImageSource.h b/src/frameworks/ImageIO/include/ImageIO/CGImageSource.h index dd8facf80..b5762731e 100644 --- a/src/frameworks/ImageIO/include/ImageIO/CGImageSource.h +++ b/src/frameworks/ImageIO/include/ImageIO/CGImageSource.h @@ -15,6 +15,8 @@ typedef struct CF_BRIDGED_TYPE(id) O2ImageSource *CGImageSourceRef; #import #import +IMAGEIO_EXTERN const CFStringRef kCGImageSourceShouldAllowFloat; + IMAGEIO_EXTERN CGImageSourceRef CGImageSourceCreateWithData(CFDataRef data, CFDictionaryRef options); IMAGEIO_EXTERN CGImageSourceRef CGImageSourceCreateWithURL(CFURLRef url, CFDictionaryRef options); diff --git a/src/frameworks/ImageIO/src/CGImageSource.m b/src/frameworks/ImageIO/src/CGImageSource.m index 447a9fdc7..cca69aa01 100644 --- a/src/frameworks/ImageIO/src/CGImageSource.m +++ b/src/frameworks/ImageIO/src/CGImageSource.m @@ -4,6 +4,7 @@ const CFStringRef kCGImageSourceCreateThumbnailFromImageAlways = CFSTR("kCGImageSourceCreateThumbnailFromImageAlways"); const CFStringRef kCGImageSourceCreateThumbnailFromImageIfAbsent = CFSTR("kCGImageSourceCreateThumbnailFromImageIfAbsent"); const CFStringRef kCGImageSourceCreateThumbnailWithTransform = CFSTR("kCGImageSourceCreateThumbnailWithTransform"); +const CFStringRef kCGImageSourceShouldAllowFloat = CFSTR("kCGImageSourceShouldAllowFloat"); const CFStringRef kCGImageSourceShouldCache = CFSTR("kCGImageSourceShouldCache"); const CFStringRef kCGImageSourceThumbnailMaxPixelSize = CFSTR("kCGImageSourceThumbnailMaxPixelSize"); diff --git a/src/frameworks/PDFKit/include/PDFKit/PDFDocument.h b/src/frameworks/PDFKit/include/PDFKit/PDFDocument.h index 2ce1c5b2e..086b5350f 100644 --- a/src/frameworks/PDFKit/include/PDFKit/PDFDocument.h +++ b/src/frameworks/PDFKit/include/PDFKit/PDFDocument.h @@ -17,7 +17,15 @@ along with Darling. If not, see . */ -#include +#import +#import + +typedef NSString *PDFDocumentAttribute; + +PDFKIT_EXPORT PDFDocumentAttribute const PDFDocumentAuthorAttribute; +PDFKIT_EXPORT PDFDocumentAttribute const PDFDocumentCreationDateAttribute; +PDFKIT_EXPORT PDFDocumentAttribute const PDFDocumentKeywordsAttribute; +PDFKIT_EXPORT PDFDocumentAttribute const PDFDocumentTitleAttribute; @interface PDFDocument : NSObject diff --git a/src/frameworks/PDFKit/include/PDFKit/PDFKitExport.h b/src/frameworks/PDFKit/include/PDFKit/PDFKitExport.h new file mode 100644 index 000000000..279a6022a --- /dev/null +++ b/src/frameworks/PDFKit/include/PDFKit/PDFKitExport.h @@ -0,0 +1,24 @@ +/* + This file is part of Darling. + + Copyright (C) 2025 Darling Developers + + Darling is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Darling is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with Darling. If not, see . +*/ + +#ifdef __cplusplus +#define PDFKIT_EXPORT extern "C" +#else +#define PDFKIT_EXPORT extern +#endif // __cplusplus diff --git a/src/frameworks/PDFKit/src/PDFDocument.m b/src/frameworks/PDFKit/src/PDFDocument.m index 85326ca75..780bb1d81 100644 --- a/src/frameworks/PDFKit/src/PDFDocument.m +++ b/src/frameworks/PDFKit/src/PDFDocument.m @@ -19,6 +19,11 @@ #import +PDFDocumentAttribute const PDFDocumentAuthorAttribute = @"Author"; +PDFDocumentAttribute const PDFDocumentCreationDateAttribute = @"CreationDate"; +PDFDocumentAttribute const PDFDocumentKeywordsAttribute = @"Keywords"; +PDFDocumentAttribute const PDFDocumentTitleAttribute = @"Title"; + @implementation PDFDocument - (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector diff --git a/src/frameworks/WebKit/CMakeLists.txt b/src/frameworks/WebKit/CMakeLists.txt index c20b787ff..95ccf6f6d 100644 --- a/src/frameworks/WebKit/CMakeLists.txt +++ b/src/frameworks/WebKit/CMakeLists.txt @@ -47,7 +47,12 @@ add_framework(WebKit src/_WKWebsiteDataStore.m src/_WKWebsiteDataStoreConfiguration.m src/_WKWebsitePolicies.m + src/DOMNode.m + src/DOMObject.m src/WebView.m + src/WebDownload.m + src/WebHistory.m + src/WebScriptObject.m src/WKCustomProtocolLoader.m src/WKCustomProtocol.m src/WKNetworkSessionDelegate.m @@ -160,4 +165,5 @@ add_framework(WebKit system objc Foundation + CFNetwork ) diff --git a/src/frameworks/WebKit/include/WebKit/DOMNode.h b/src/frameworks/WebKit/include/WebKit/DOMNode.h new file mode 100644 index 000000000..74dfd1f13 --- /dev/null +++ b/src/frameworks/WebKit/include/WebKit/DOMNode.h @@ -0,0 +1,23 @@ +/* + This file is part of Darling. + + Copyright (C) 2025 Darling Developers + + Darling is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Darling is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with Darling. If not, see . +*/ + +#import + +@interface DOMNode : DOMObject +@end diff --git a/src/frameworks/WebKit/include/WebKit/DOMObject.h b/src/frameworks/WebKit/include/WebKit/DOMObject.h new file mode 100644 index 000000000..94ed78a72 --- /dev/null +++ b/src/frameworks/WebKit/include/WebKit/DOMObject.h @@ -0,0 +1,23 @@ +/* + This file is part of Darling. + + Copyright (C) 2025 Darling Developers + + Darling is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Darling is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with Darling. If not, see . +*/ + +#import + +@interface DOMObject : WebScriptObject +@end diff --git a/src/frameworks/WebKit/include/WebKit/WebDownload.h b/src/frameworks/WebKit/include/WebKit/WebDownload.h new file mode 100644 index 000000000..3a2409d15 --- /dev/null +++ b/src/frameworks/WebKit/include/WebKit/WebDownload.h @@ -0,0 +1,24 @@ +/* + This file is part of Darling. + + Copyright (C) 2025 Darling Developers + + Darling is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Darling is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with Darling. If not, see . +*/ + +#import +#import + +@interface WebDownload : NSURLDownload +@end diff --git a/src/frameworks/WebKit/include/WebKit/WebHistory.h b/src/frameworks/WebKit/include/WebKit/WebHistory.h new file mode 100644 index 000000000..fc1b54ab0 --- /dev/null +++ b/src/frameworks/WebKit/include/WebKit/WebHistory.h @@ -0,0 +1,23 @@ +/* + This file is part of Darling. + + Copyright (C) 2025 Darling Developers + + Darling is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Darling is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with Darling. If not, see . +*/ + +#import + +@interface WebHistory : NSObject +@end diff --git a/src/frameworks/WebKit/include/WebKit/WebKit.h b/src/frameworks/WebKit/include/WebKit/WebKit.h index ac288acf9..f2ff8afbc 100644 --- a/src/frameworks/WebKit/include/WebKit/WebKit.h +++ b/src/frameworks/WebKit/include/WebKit/WebKit.h @@ -190,6 +190,8 @@ #import #import +extern NSString *WebKitErrorDomain; + @protocol DOMEventListener @end diff --git a/src/frameworks/WebKit/include/WebKit/WebScriptObject.h b/src/frameworks/WebKit/include/WebKit/WebScriptObject.h new file mode 100644 index 000000000..49b211b44 --- /dev/null +++ b/src/frameworks/WebKit/include/WebKit/WebScriptObject.h @@ -0,0 +1,23 @@ +/* + This file is part of Darling. + + Copyright (C) 2025 Darling Developers + + Darling is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Darling is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with Darling. If not, see . +*/ + +#import + +@interface WebScriptObject : NSObject +@end diff --git a/src/frameworks/WebKit/include/WebKit/WebView.h b/src/frameworks/WebKit/include/WebKit/WebView.h index af399ade3..028cfd796 100644 --- a/src/frameworks/WebKit/include/WebKit/WebView.h +++ b/src/frameworks/WebKit/include/WebKit/WebView.h @@ -1,6 +1,9 @@ #import extern NSString *WebElementImageKey; -extern NSString *WebElementLinkURLKey; +extern NSString *WebElementLinkLabelKey; extern NSString *WebElementLinkTargetFrameKey; extern NSString *WebElementLinkTitleKey; +extern NSString *WebElementLinkURLKey; + +extern NSString *const WebViewDidChangeSelectionNotification; diff --git a/src/frameworks/WebKit/src/DOMNode.m b/src/frameworks/WebKit/src/DOMNode.m new file mode 100644 index 000000000..5022015b4 --- /dev/null +++ b/src/frameworks/WebKit/src/DOMNode.m @@ -0,0 +1,36 @@ +/* + This file is part of Darling. + + Copyright (C) 2025 Darling Developers + + Darling is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Darling is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with Darling. If not, see . +*/ + +#import +#import +#import + +@implementation DOMNode + +- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector +{ + return [NSMethodSignature signatureWithObjCTypes: "v@:"]; +} + +- (void)forwardInvocation:(NSInvocation *)anInvocation +{ + NSLog(@"Stub called: %@ in %@", NSStringFromSelector([anInvocation selector]), [self class]); +} + +@end diff --git a/src/frameworks/WebKit/src/DOMObject.m b/src/frameworks/WebKit/src/DOMObject.m new file mode 100644 index 000000000..16d42b6b3 --- /dev/null +++ b/src/frameworks/WebKit/src/DOMObject.m @@ -0,0 +1,36 @@ +/* + This file is part of Darling. + + Copyright (C) 2025 Darling Developers + + Darling is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Darling is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with Darling. If not, see . +*/ + +#import +#import +#import + +@implementation DOMObject + +- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector +{ + return [NSMethodSignature signatureWithObjCTypes: "v@:"]; +} + +- (void)forwardInvocation:(NSInvocation *)anInvocation +{ + NSLog(@"Stub called: %@ in %@", NSStringFromSelector([anInvocation selector]), [self class]); +} + +@end diff --git a/src/frameworks/WebKit/src/WebDownload.m b/src/frameworks/WebKit/src/WebDownload.m new file mode 100644 index 000000000..833365e56 --- /dev/null +++ b/src/frameworks/WebKit/src/WebDownload.m @@ -0,0 +1,36 @@ +/* + This file is part of Darling. + + Copyright (C) 2025 Darling Developers + + Darling is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Darling is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with Darling. If not, see . +*/ + +#import +#import +#import + +@implementation WebDownload + +- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector +{ + return [NSMethodSignature signatureWithObjCTypes: "v@:"]; +} + +- (void)forwardInvocation:(NSInvocation *)anInvocation +{ + NSLog(@"Stub called: %@ in %@", NSStringFromSelector([anInvocation selector]), [self class]); +} + +@end diff --git a/src/frameworks/WebKit/src/WebHistory.m b/src/frameworks/WebKit/src/WebHistory.m new file mode 100644 index 000000000..d43310dff --- /dev/null +++ b/src/frameworks/WebKit/src/WebHistory.m @@ -0,0 +1,36 @@ +/* + This file is part of Darling. + + Copyright (C) 2025 Darling Developers + + Darling is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Darling is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with Darling. If not, see . +*/ + +#import +#import +#import + +@implementation WebHistory + +- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector +{ + return [NSMethodSignature signatureWithObjCTypes: "v@:"]; +} + +- (void)forwardInvocation:(NSInvocation *)anInvocation +{ + NSLog(@"Stub called: %@ in %@", NSStringFromSelector([anInvocation selector]), [self class]); +} + +@end diff --git a/src/frameworks/WebKit/src/WebKit.m b/src/frameworks/WebKit/src/WebKit.m index 5ecf6d726..44eb3e0de 100644 --- a/src/frameworks/WebKit/src/WebKit.m +++ b/src/frameworks/WebKit/src/WebKit.m @@ -52,6 +52,8 @@ @end +NSString *WebKitErrorDomain = @"WebKitErrorDomain"; + static int verbose = 0; __attribute__((constructor)) diff --git a/src/frameworks/WebKit/src/WebScriptObject.m b/src/frameworks/WebKit/src/WebScriptObject.m new file mode 100644 index 000000000..45a010f10 --- /dev/null +++ b/src/frameworks/WebKit/src/WebScriptObject.m @@ -0,0 +1,36 @@ +/* + This file is part of Darling. + + Copyright (C) 2025 Darling Developers + + Darling is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Darling is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with Darling. If not, see . +*/ + +#import +#import +#import + +@implementation WebScriptObject + +- (NSMethodSignature *)methodSignatureForSelector:(SEL)aSelector +{ + return [NSMethodSignature signatureWithObjCTypes: "v@:"]; +} + +- (void)forwardInvocation:(NSInvocation *)anInvocation +{ + NSLog(@"Stub called: %@ in %@", NSStringFromSelector([anInvocation selector]), [self class]); +} + +@end diff --git a/src/frameworks/WebKit/src/WebView.m b/src/frameworks/WebKit/src/WebView.m index d25bbf0dc..bd0094df1 100644 --- a/src/frameworks/WebKit/src/WebView.m +++ b/src/frameworks/WebKit/src/WebView.m @@ -1,6 +1,9 @@ #import NSString *WebElementImageKey = @"WebElementImage"; -NSString *WebElementLinkURLKey = @"WebElementLinkURL"; +NSString *WebElementLinkLabelKey = @"WebElementLinkLabel"; NSString *WebElementLinkTargetFrameKey = @"WebElementTargetFrame"; NSString *WebElementLinkTitleKey = @"WebElementLinkTitle"; +NSString *WebElementLinkURLKey = @"WebElementLinkURL"; + +NSString *const WebViewDidChangeSelectionNotification = @"WebViewDidChangeSelectionNotification";