Skip to content

Instantly share code, notes, and snippets.

View dchakarov's full-sized avatar

Dimi Chakarov dchakarov

View GitHub Profile
import SwiftUI
struct BackgroundModifier: ViewModifier {
let colour: Color
func body(content: Content) -> some View {
ZStack {
colour
.edgesIgnoringSafeArea(.all)
content
func saveImageToAppGroupFolder(imageData: Data) {
guard let containerUrl = FileManager.default.containerURL(forSecurityApplicationGroupIdentifier: "your-group-identifier") else { return }
let filename = "shared.jpg" //
let fileURL = containerUrl.appendingPathComponent(filename)
do {
try imageData.write(to: fileURL, options: .atomic)
} catch {
return
}
}
override func didSelectPost() {
guard let extensionItem = extensionContext?.inputItems.first as? NSExtensionItem else { return }
guard let itemProvider = extensionItem.attachments?.first as? NSItemProvider else { return }
let imageContentType = kUTTypeImage as String
if itemProvider.hasItemConformingToTypeIdentifier(imageContentType) {
itemProvider.loadItem(forTypeIdentifier: imageContentType, options: nil) { [unowned self] (url, error) in
if error == nil, let url = url as? URL {
do {
let imageData = try Data(contentsOf: url)
self.saveImageToAppGroupFolder(imageData: imageData)
@dchakarov
dchakarov / DesignableView.swift
Last active October 2, 2017 01:31
Add border width, border colour and radius to UIView as inspectable properties, accessible in Interface Builder
import UIKit
@IBDesignable
extension UIView {
@IBInspectable var cornerRadius: CGFloat {
get {
return layer.cornerRadius
}
set {
layer.cornerRadius = newValue