บ้านใหม่บน macOS ของ Tailscale
(tailscale.com)- เพื่อแก้ปัญหาที่ไอคอนบนแถบเมนูถูกบังจาก ดีไซน์รอยบากของ MacBook ทาง Tailscale ได้เปิดตัว อินเทอร์เฟซแบบหน้าต่างสำหรับ macOS แบบใหม่
- ในช่วงแรกมีการใช้วิธีแก้ชั่วคราวด้วยการแสดง การแจ้งเตือนแบบป๊อปอัป เมื่อไอคอนถูกซ่อนอยู่หลังรอยบาก แต่ตอนนี้ได้เปลี่ยนมาเป็น UI แบบสแตนด์อโลนเต็มรูปแบบ แล้ว
- อินเทอร์เฟซใหม่นี้จะถูกเปิดใช้งานเป็นค่าเริ่มต้นตั้งแต่ เวอร์ชัน 1.96.2 และแสดงฟีเจอร์สำคัญอย่าง Taildrop, Exit Node, การค้นหาอุปกรณ์ ในรูปแบบภาพ
- ตรรกะตรวจจับการถูกบังของไอคอน บนแถบเมนูยังคงมีอยู่ เพื่อป้องกันปัญหาที่ผู้ใช้หาไอคอนไม่เจอ
- การเปลี่ยนแปลงครั้งนี้ช่วยปรับปรุงประสบการณ์ใช้งานบน macOS และมีแผนจะขยายไปสู่การพัฒนา UI ลักษณะคล้ายกันสำหรับ Windows ในอนาคต
ปัญหารอยบากของ MacBook และอินเทอร์เฟซ macOS แบบใหม่ของ Tailscale
- Tailscale ควรทำงานแบบแทบมองไม่เห็นขณะเชื่อมต่ออุปกรณ์ทั้งหมดของผู้ใช้ แต่ด้วย ดีไซน์รอยบากของ MacBook บางรุ่นจึงเกิดปัญหาที่ไอคอนบนแถบเมนูหายไป
- เพื่อแก้ปัญหานี้จึงมีการใช้สองแนวทาง ได้แก่ ระบบแจ้งเตือนชั่วคราวและ อินเทอร์เฟซแบบหน้าต่างใหม่สำหรับ macOS
- ในช่วงแรกใช้วิธีแจ้งเตือนผู้ใช้เมื่อไอคอนถูกซ่อนอยู่หลังรอยบาก ต่อมาจึงเพิ่ม UI แบบสแตนด์อโลนเต็มรูปแบบ เพื่อปรับปรุงการเข้าถึงและการใช้งาน
- อินเทอร์เฟซใหม่นี้จะถูกเปิดใช้งานเป็นค่าเริ่มต้นตั้งแต่ เวอร์ชัน 1.96.2 และนำเสนอฟีเจอร์หลักอย่าง Taildrop, Exit Node, การค้นหาอุปกรณ์ ในรูปแบบที่มองเห็นได้ชัด
- การเปลี่ยนแปลงนี้ช่วยยกระดับประสบการณ์ใช้งาน macOS และจะต่อยอดไปสู่การพัฒนา UI ลักษณะคล้ายกันสำหรับ Windows ในอนาคต
ปัญหาไอคอนบนแถบเมนูที่เกิดจากรอยบาก
- ตั้งแต่ MacBook Pro รุ่นปี 2021 เป็นต้นมา มีรอยบากอยู่ตรงกลางด้านบนของหน้าจอ ทำให้เกิดกรณีที่ไอคอนบนแถบเมนูถูกบังอยู่ในพื้นที่รอยบาก
- หากมีไอคอนบนแถบเมนูจำนวนมาก บางไอคอนอาจหายไปหลังรอยบากจนไม่สามารถคลิกได้
- macOS ไม่มี การแจ้งเตือน เมนู overflow หรือฟังก์ชันจัดเรียงไอคอนใหม่ สำหรับสถานการณ์นี้
- Apple มีวิธีแก้ทางอ้อมอยู่บ้าง แต่ยังไม่สมบูรณ์
- ย้ายไอคอนของระบบไปที่ Control Center หรือ
- ปรับสัดส่วนหน้าจอด้วยตัวเลือก “Scale to fit below camera”
- แอปจากผู้พัฒนาภายนอกอย่าง ICE และ Bartender สามารถช่วยจัดการไอคอนบนแถบเมนูได้ แต่ก็เพิ่มความซับซ้อนและภาระด้านทรัพยากร
- วิศวกรของ Tailscale ระบุว่า “เมื่อแอปถูกลงทะเบียนเป็นแอปบนแถบเมนู macOS จะกำหนดตำแหน่งเองโดยอัตโนมัติ” ซึ่งหมายความว่านักพัฒนาไม่สามารถควบคุมได้
- หลังยุครอยบาก ผู้ใช้บางส่วนรายงานว่า “Tailscale ไม่ได้ทำงาน” แต่ความจริงคือ ไอคอนถูกซ่อนอยู่หลังรอยบาก
ฟีเจอร์ตรวจจับไอคอนและการแจ้งเตือนผู้ใช้
- ใช้ข้อมูล
occlusionStateของ macOS เพื่อ ตรวจจับได้ว่าไอคอนของ Tailscale ถูกบังอยู่หรือไม่ - แม้ไอคอนจะถูกซ่อนอยู่ ก็ยังสามารถแสดง ข้อความป๊อปอัป เพื่อแจ้งผู้ใช้ได้
- ข้อความคือ: “ไอคอน Tailscale ถูกซ่อนอยู่หลังรอยบาก โปรดจัดระเบียบหรือลบไอคอนอื่นออก”
- คำเตือนนี้ไม่สมบูรณ์แบบ และอาจแสดงผิดพลาดได้จาก การสลับหน้าจอ การเปิดปิดฝาโน้ตบุ๊ก หรือการเชื่อมต่อจอภายนอก
- อย่างไรก็ตาม ในช่วงเวลาหนึ่งมันช่วยบรรเทาปัญหา “หาเมนูตั้งค่า Tailscale ไม่เจอ” ได้
ตรรกะตรวจจับรอยบากที่อิงโค้ด Swift
- มีการเขียน โค้ด Swift เพื่อให้ตรวจจับได้เมื่อแอปถูกซ่อน
- เฝ้าดู
NSWindow.didChangeOcclusionStateNotificationเพื่อตรวจสอบสถานะการมองเห็นของไอคอน - หากค่า
occlusionState.contains(.visible)เป็นfalseจะถือว่าไอคอนถูกบังอยู่
- เฝ้าดู
- ในแอปแบบหน้าต่างใหม่ โค้ดนี้ไม่จำเป็นอีกต่อไป แต่หากเปิดใช้ตัวเลือก ซ่อนไอคอน Dock ก็ยังสามารถทำงานได้
อินเทอร์เฟซแบบหน้าต่างใหม่สำหรับ macOS
- UI แบบหน้าต่าง ที่ถูกเปิดใช้งานเป็นค่าเริ่มต้นตั้งแต่ Tailscale เวอร์ชัน 1.96.2 สามารถทำงานร่วมกับแอปบนแถบเมนูได้
- เปิดใช้งานได้ผ่าน Dock หรือการค้นหาด้วย Spotlight
- แสดงฟีเจอร์หลักอย่าง รายการอุปกรณ์ใน Tailnet, สถานะการเชื่อมต่อ, การส่งไฟล์ (Taildrop), การเลือก Exit Node ในรูปแบบภาพ
- รายการฟีเจอร์หลัก
-
การค้นหาอุปกรณ์และการแสดงสถานะการเชื่อมต่อ
-
ฟังก์ชัน Ping, คัดลอก IP และส่งผ่าน Taildrop
-
Exit Node ที่แนะนำตามค่าหน่วงเวลา ประสิทธิภาพ และตำแหน่ง
-
การแจ้งข้อผิดพลาดด้วยจุดสีแดงบนไอคอน Dock
-
โหมด ‘มินิเพลเยอร์’ แบบย่อ
- มีทัวร์แนะนำฟีเจอร์เมื่อทำการติดตั้งหรืออัปเดต
- กำลังรวบรวมความคิดเห็นของผู้ใช้เพื่อปรับปรุงอินเทอร์เฟซ และกำลังพัฒนา UI ลักษณะคล้ายกันสำหรับ Windows อยู่ด้วย
- Tailscale เน้นย้ำแนวทางที่จะรักษา ‘อารมณ์ขันเชิงใช้งาน (functional whimsy)’ ควบคู่ไปกับประสิทธิภาพในการใช้งาน
-
1 ความคิดเห็น
ความเห็นจาก Hacker News
ปัญหาที่ ไอคอนในแถบเมนูถูกบังเพราะรอยบาก นี่ชวนอึ้งจริง ๆ
ต้องเสียเวลาหลายชั่วโมงทุกสัปดาห์ไปกับการตอบอีเมลผู้ใช้ที่บ่นว่าแอปไม่ยอมรันหรือไม่มีอินเทอร์เฟซ
ต่อให้มี FAQ ก็ยังแก้ไม่ได้ และยังลามไปถึงคำขอคืนเงินหรือแม้แต่ chargeback ทำให้เสียหายมาก
ไม่นานมานี้พี่ชายผมเพิ่งปล่อยแอป PiP แบบง่าย ๆ ชื่อ PiPiri แล้วในสองวันแรกมีการคืนเงินไปครึ่งหนึ่ง เพราะคนเข้าใจผิดว่าแอปไม่ทำงานเนื่องจากมีไอคอนเยอะเกินจนมองไม่เห็น
เมื่อก่อนแอป Bartender ยังช่วยบรรเทาปัญหานี้ได้ แต่พอมีการเปลี่ยน internal API ใน macOS Tahoe ก็พังไปหมด
Apple ควรจัดการเรื่องนี้ให้ดีกว่านี้
เดิมทีมีแค่ Apple เท่านั้นที่เพิ่ม menu extra ได้ และนักพัฒนาต้องใช้เครื่องมือไม่เป็นทางการอย่าง MenuCracker
ภายหลังถึงมี API อย่างเป็นทางการ แต่ก็ออกแบบมาสำหรับ menu item ชั่วคราว ที่แสดงเฉพาะตอนแอปกำลังทำงานเท่านั้น
เพราะงั้น Apple เลยมองว่านี่ไม่ใช่บั๊ก แต่เป็นความรับผิดชอบของนักพัฒนา
ส่วนตัวผมคิดว่าถ้ามีส่วนขยาย Control Center ให้นำไอคอนถาวรไปไว้ตรงนั้นก็น่าจะดีกว่า
Windows แก้เรื่องนี้ด้วยเมนู overflow ของ system tray มาตั้งแต่หลายสิบปีก่อนแล้ว และเบราว์เซอร์เองก็ซ่อนไอคอนส่วนขยายได้
แต่ macOS กลับแค่ซ่อนไอคอนเงียบ ๆ ทำให้ผู้ใช้ไม่รู้เลยว่ามีอะไรถูกบังอยู่
ทุกครั้งที่ซื้อ Mac เครื่องใหม่ ผมจะรันคำสั่งเพื่อลดระยะห่างของไอคอนบนแถบเมนู
ทำแบบนี้แล้วแสดง จำนวนรายการได้มากกว่าสองเท่า
ไม่เข้าใจเลยว่าทำไม Apple ถึงยังไม่แก้ปัญหานี้เสียที
การที่บริษัทใหญ่ระดับ Tailscale ยังต้องหาทางเลี่ยงปัญหาแบบนี้ เป็นตัวอย่างที่ชัดเจนของ การจัดการซอฟต์แวร์ที่ย่ำแย่ ของ Apple
ผมยังมีไอคอนไม่เยอะเลยไม่เคยเจอ แต่ไอคอนมันหายไปหลังรอยบากแบบนั้นจริง ๆ เหรอ?
Windows XP ยังแก้ปัญหานี้ได้ตั้งแต่ 25 ปีก่อนแล้ว ที่ macOS ยังทำไม่ได้ถือว่า คุณภาพตกลง มาก
ดูการพูดคุยที่เกี่ยวข้องได้ที่นี่
ต้องเอาโฟกัสออกจากหน้าต่าง Rider ถึงจะเห็นไอคอน ดูภาพหน้าจอ
ผมกำลังหาวิธี สมัยใหม่ สำหรับเข้าถึงเครือข่ายบ้านจากระยะไกล
ถ้าจะให้ตอบโจทย์ทั้งหมดนี้ Tailscale ก็น่าจะเป็นตัวหลัก
โควตา free tier ก็ยังเหลือ และการเชื่อมกับ Mullvad ก็ทำงานดี
ขอแนะนำ ตัวจัดการเมนูบาร์บน Mac Ice ที่รวมหลายไอคอนไว้และซ่อนได้ในอันเดียว
เมื่อวานผมติดตั้ง Tailscale บน GCP VM แล้วเปิด route advertisement จากนั้น ping ไปที่อินสแตนซ์ได้ก็จริง แต่มี packet loss สูง
ส่วน SSH tunnel กลับใช้งานได้ปกติ เลยดูเหมือนจะเป็นปัญหาฝั่ง Tailscale
ผมหา VPN ทางเลือกอยู่ แล้วไปถาม ClaudeAI จนได้รู้จัก Tailscale
มัน ใช้งานได้ทันที แม้ในสภาพแวดล้อม Windows เก่า ๆ และตั้งค่าก็ง่าย
เป็นเครื่องมือที่เหมาะมากสำหรับจัดการคอมพิวเตอร์ของพ่อแม่จากระยะไกล
พอไม่มี GUI ก็ไม่มีทางที่ผู้ใช้จะไปปิดมันพลาด
วิธีติดตั้งดูได้จากวิกิทางการ
ถ้าติดตั้งหลายแอปบน Mac ที่ใช้ทำงาน เช่น VPN, MDM, ปฏิทิน, สำรองข้อมูล ฯลฯ บั๊กนี้จะโผล่มาเร็วมาก
ถึงจะไม่ถึงขั้นร้ายแรง แต่ก็น่าแปลกใจที่ macOS ยังไม่มี เมนู overflow อย่างเป็นทางการ เสียที
ในฐานะผู้ใช้ Linux ผมชอบแอป GUI แต่ Tailscale ยังมีแค่ CLI เลยค่อนข้างน่าเสียดาย
แม้แต่ไอคอน tray ง่าย ๆ ก็ยังต้องพึ่ง GNOME extension ที่บั๊กเยอะ
ผมเข้าใจนะว่า ecosystem มันกระจัดกระจาย แต่ก็หวังว่าสักวันจะดีขึ้น