Skip to content

Instantly share code, notes, and snippets.

View donly's full-sized avatar
🎯
Focusing

Tung donly

🎯
Focusing
View GitHub Profile
// Safely Modifying The View State (SwiftUI)
// https://swiftui-lab.com
// https://swiftui-lab.com/state-changes
import SwiftUI
struct CustomView: View {
var body: some View {
NavigationView {
@Amzd
Amzd / PreferenceUIHostingController.swift
Last active November 14, 2024 10:01
PreferenceUIHostingController. Adds hiding home indicator and deferring system edge gestures to SwiftUI. (Don't work at the same time but I think that's normal?)
extension View {
/// Controls the application's preferred home indicator auto-hiding when this view is shown.
func prefersHomeIndicatorAutoHidden(_ value: Bool) -> some View {
preference(key: PreferenceUIHostingController.PrefersHomeIndicatorAutoHiddenPreferenceKey.self, value: value)
}
/// Controls the application's preferred screen edges deferring system gestures when this view is shown. Default is UIRectEdgeNone.
func edgesDeferringSystemGestures(_ edge: UIRectEdge) -> some View {
preference(key: PreferenceUIHostingController.PreferredScreenEdgesDeferringSystemGesturesPreferenceKey.self, value: edge)
}
@AvdLee
AvdLee / DarwinNotificationCenter.swift
Last active March 25, 2025 19:09
A notification center for Darwin Notifications. MIT License applies.
//
// DarwinNotificationCenter.swift
//
// Copyright © 2017 WeTransfer. All rights reserved.
//
import Foundation
/// A Darwin notification payload. It does not contain any userInfo, a Darwin notification is purely event handling.
public struct DarwinNotification {
@Amzd
Amzd / SheetHeight.swift
Created October 17, 2019 10:37
SwiftUI Sheet with height value
//
// SheetHeight.swift
// Created by Casper Zandbergen on 17/10/2019.
//
import SwiftUI
import UIKit
extension View {
/// Presents a sheet.
@darrarski
darrarski / FormattedTextField.swift
Last active September 26, 2024 06:33
SwiftUI FormattedTextField - TextField with custom display/edit formatters
import SwiftUI
public struct FormattedTextField<Formatter: TextFieldFormatter>: View {
public init(_ title: String,
value: Binding<Formatter.Value>,
formatter: Formatter) {
self.title = title
self.value = value
self.formatter = formatter
}
@cyrilzakka
cyrilzakka / ContentView.swift
Created July 26, 2019 21:03
Simple Image Viewer using SwiftUI
//
// ContentView.swift
// Scribe
//
// Created by Cyril Zakka on 7/21/19.
// Copyright © 2019 Cyril Zakka. All rights reserved.
//
import SwiftUI
struct ContentView: View {
@HackingGate
HackingGate / ec2-renew-ip.sh
Last active June 28, 2019 02:12
AWS EC2 renew IPv4 address by stop-wait-start instance. (no Elastic IPs needed)
#!/bin/bash
# From AWS doc
# https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-instance-addressing.html
# We release your instance's public IP address when it is stopped or terminated.
# Your stopped instance receives a new public IP address when it is restarted.
PATH=$HOME/.local/bin:$PATH
instace_ids="i-1348636c" #change it
@JichunMa
JichunMa / numdump_helper.py
Last active November 20, 2022 07:51
Mac numdump helper (need: Python3)
import os
import time
COMPLETE_FILE_DIR = './done/'
# 文件名两边添加双引号
def str_transform(source):
return '\"{}\"'.format(source)
@gaearon
gaearon / modern_js.md
Last active November 2, 2025 19:01
Modern JavaScript in React Documentation

If you haven’t worked with JavaScript in the last few years, these three points should give you enough knowledge to feel comfortable reading the React documentation:

  • We define variables with let and const statements. For the purposes of the React documentation, you can consider them equivalent to var.
  • We use the class keyword to define JavaScript classes. There are two things worth remembering about them. Firstly, unlike with objects, you don't need to put commas between class method definitions. Secondly, unlike many other languages with classes, in JavaScript the value of this in a method [depends on how it is called](https://developer.mozilla.org/en-US/docs/Web/Jav
@buttreygoodness
buttreygoodness / FLACConvert.md
Last active June 6, 2025 10:52
How to split FLAC files by cue and convert to ALAC on Mac OS X
  • Install required packages
brew install cuetools flac ffmpeg shntool
  • Split flac file by cue
$ shnsplit -o flac -f file.cue file.flac