ไม่ใช่ปัญหาพิกเซลตายแน่นอน ฉันได้พิจารณาแล้วว่าอาจเป็นข้อผิดพลาดของซอฟต์แวร์ที่เปิดตัวในโมฮาวี ฉันไม่สามารถสกรีนช็อตความผิดพลาดได้ในกรณีส่วนใหญ่ (ปกติแล้วความผิดพลาดจะหายไปทันที) แต่ฉันสามารถจับภาพได้ในวิดีโอและสกรีนช็อตสองสามรายการ
ความจริงที่ว่ามันสามารถจับภาพในซอฟต์แวร์และความจริงที่ว่าเคอร์เซอร์สามารถครอบคลุมพิกเซลผิดพลาดแสดงว่าปัญหาไม่ได้อยู่ในจอภาพ แต่เกิดขึ้นในซอฟต์แวร์
ตัวอย่าง:
Firefox
นี่คือภาพหน้าจอจากการบันทึกหน้าจอของ Firefoxที่คุณสามารถเห็นพิกเซลสีเทา
ที่น่าสนใจถ้าเราซูมเข้าไปเล็กน้อยเราจะเห็นว่าพิกเซลนั้นอยู่นอกหน้าต่าง
Finder
ฉันได้บันทึกความผิดพลาดที่คล้ายกันที่เกิดขึ้นใน Finder ของ Apple บนหน้าจอปกติ
หมายเหตุ:
บางสิ่งที่น่าสนใจที่ควรทราบเกี่ยวกับมัน
- ฉันเพิ่งเห็นว่ามันเกิดขึ้นกับพื้นที่มืดของหน้าต่าง
- มันสามารถเกิดขึ้นได้ทั้งในโหมดแสงและโหมดมืด (ถ้าหน้าต่างมืดอยู่แล้ว)
- ส่วนใหญ่มันเกิดขึ้นที่ขอบของหน้าต่าง (ที่ที่มีเงา) แม้ว่าฉันจะเห็นมันอยู่ด้านในของบางคน
- บ่อยครั้งที่มัน (แต่ไม่เสมอไป) จะหายไปเมื่อมีการเปลี่ยนแปลงโฟกัสของหน้าต่างและสิ่งอื่น ๆ (การเปลี่ยนโฟกัสของหน้าต่างทำให้เงาหน้าต่างเปลี่ยนไป)
- ฉันสามารถเปลี่ยนโฟกัสไปยังและจากหน้าต่าง iTerm โดยไม่มีเงา (เมื่อเปิดใช้งานความโปร่งใส) และความผิดพลาดนอกขอบด้านล่างของหน้าต่างยังคงอยู่
- สามารถบันทึกด้วยคุณสมบัติการบันทึกหน้าจอของ QuickTime Player
- อย่างลึกลับแม้ว่ามันจะสามารถจับภาพด้วย QuickTime แต่ก็ไม่สามารถมองเห็นเครื่องมือนักพัฒนาของแอปเปิ้ล Pixieดังที่เห็นในการบันทึกหน้าจอนี้ เช่นเดียวกันแอป Digital Colour Meter ก็ไม่เห็นเช่นกัน
- ฉันเคยเห็นมันส่วนใหญ่เป็นสีเทาและสีแดง แต่ก็มีสีเขียวสีเหลืองและสีอื่น ๆ
- ความผิดพลาดสามารถเกิดขึ้นได้แม้ในขณะที่ Finder ไม่ทำงานดังนั้นจึงไม่ได้เป็นส่วนหนึ่งของ Finder
- การทำงาน
killall Dock
ในขณะที่ SSH เข้าไปในเครื่องที่แสดงความผิดพลาดอาจทำให้มันหยุดลงได้แม้ว่านี่อาจเป็นผลข้างเคียงจากการเปลี่ยนแปลงของเงา
- ฉันพยายามระงับกระบวนการ Firefox ทั้งหมด (
firefox
+ plugin-container
โพรเซส) เหนือ SSH ด้วยkill -SIGSTOP
ในขณะที่ความผิดพลาดเกิดขึ้นและความผิดพลาดยังคงกระพริบต่อไปแสดงว่าข้อผิดพลาดเกิดขึ้นนอกกระบวนการ Firefox
- ต่อไปฉันพยายามระงับกระบวนการอย่างเป็นระบบมากกว่า SSH เพื่อดูว่าใครอาจรับผิดชอบ
WindowServer
เพียงคนเดียวที่ทำให้เกิดการพักการกระพริบเพื่อตรึงกับเป็น
- การใช้เครื่องมือนักพัฒนา Quartz Debug (หนึ่งในเครื่องมือเพิ่ม Xcode ที่กล่าวถึงที่นี่ ) ฉันได้ทดสอบตัวเลือกบางอย่างที่มี เมื่อเปิดใช้งานตัวเลือก "ปิดใช้งานการเร่งความเร็วแบบ 2D" ฉันไม่สามารถทำซ้ำความผิดพลาดแบบที่ทำได้เมื่อปิดใช้งาน ตัวเลือก Autoflush drawing และ Vertical Sync นั้นไม่มีผลกระทบใด ๆ
- ดูเหมือนว่าจะเกิดขึ้นกับการ์ดกราฟิกในตัวเท่านั้น ฉันไม่สามารถทำซ้ำได้ในขณะที่การ์ดแยกใช้งานอยู่
- จนถึงตอนนี้ฉันเพิ่งได้ยินรายงานว่ามันเกิดขึ้นกับ MacBook Pro และ MacBook Air รุ่นล่าสุด ฉันไม่สามารถทำซ้ำปัญหานี้ใน MacBook Air รุ่นก่อนหน้าที่ใช้ระบบปฏิบัติการรุ่นเดียวกันได้
- ฉันยังไม่เคยเห็นมันเกิดขึ้นใน Mojave VM โดยใช้ VMware Fusion การระบุเพิ่มเติมนั้นเกิดขึ้นกับฮาร์ดแวร์บางตัวเท่านั้น
- ในการลบตัวแปรทั้งหมดฉันลองใช้งานการติดตั้ง Mojave 10.14.1 ใหม่ทั้งหมดบนไดรฟ์ภายนอก ด้วยการตั้งค่าเริ่มต้นทั้งหมดฉันสามารถสร้าง Light Mode ด้วย Firefox 63.0.1 ได้อย่างรวดเร็วด้วยชุดรูปแบบสีเข้มและชุดเครื่องมือเครื่องมือสำหรับนักพัฒนาที่มืดเปิดใช้งานและเปิดคอนโซล ( การบันทึกหน้าจอ )
- แอปพลิเคชันที่เหมือนเบราว์เซอร์จะปรากฏขึ้นโดยเฉพาะอย่างยิ่งที่จะเรียกใช้งาน (เช่นแอพ Firefox และอิเลคตรอน)
- แอปพลิเคชันที่ฉันเคยเห็น (อาจจะลืมไปบ้าง):
- Firefox
- ขอบด้านบน (ต้องใช้ธีม Firefox แบบเข้ม)
- ขอบด้านล่าง (ต้องใช้ด้านล่างสุดของหน้าต่างจากแถบการค้นหาที่เปิดด้วยธีมสีเข้มเครื่องมือ dev ที่มีธีมสีเข้มหรือเนื้อหาของหน้าเว็บที่มืด) นอกจากนี้ยังทำในการทำความสะอาด 10.14.1 การติดตั้ง
- Atom (อาจต้องตั้งค่า> หลัก> แถบชื่อเรื่อง> กำหนดเอง)
- ความบาดหมางกัน
- iTerm (มีพื้นหลังสีดำกึ่งโปร่งใสดูเหมือนจะไม่เกิดขึ้นกับพื้นหลังทึบแสง)
- ขอบด้านบน
- ขอบล่าง
- หน้าต่างด้านใน (ที่ขอบด้านล่างของบานหน้าต่างเดียวพร้อมบานหน้าต่างแยก)
- Finder
- การตรวจสอบกิจกรรม
- ยูทิลิตี้ดิสก์
- ปลอบใจ
- หน้าต่างด้านใน (เหนือส่วนหัวคอลัมน์โปร่งใส)
- จดหมาย
- หน้าต่างด้านใน (เหนือส่วนหัวคอลัมน์โปร่งใส)
- ยูทิลิตี้การเก็บถาวร
- ปีศาจร้าย
- Google Chrome (เมื่อใช้โหมดมืด MacOS)
- หน้าต่างด้านในที่
chrome://downloads/
ใต้บรรทัดแนวนอนสีเทาอ่อนของแถบเมนูด้านบน)
- ฉันเคยเห็นมันเกิดขึ้นเพียงครั้งเดียวที่ขอบด้านล่างของเมนูแบบเลื่อนลงจากแถบเมนูด้านบน
- การเลือกแอพและสถานที่ที่ฉันเคยเห็นด้วยทำให้ฉันสงสัยว่าในบางกรณีอาจเกี่ยวข้องกับความโปร่งใสของหน้าต่าง
สิ่งที่ไม่มีผลกระทบกับความผิดพลาด (ทดสอบกับ Firefox):
- ทำการติดตั้งใหม่ทั้งหมด 10.14.1
- กำลังรีเซ็ต PRAM
- รีเซ็ต SMC
- เปิดแอปในโหมดความละเอียดต่ำ
- ค่ากำหนดของระบบ:
- ปรับความละเอียดการแสดงผล
- แสดงโปรไฟล์สี
- กะดึก.
- ระบบเน้นสี
- แท่นซ่อนอัตโนมัติ
- การช่วยสำหรับการเข้าถึง> แสดง> ใช้สีเทา
- การเข้าถึง> การแสดงผล> สลับสี
ฮาร์ดแวร์:
ฉันได้ยิน แต่เพียงการกล่าวอ้างว่าส่งผลกระทบต่อ MacBook Pro รุ่นต่างๆตั้งแต่ปี 2559-2561 และรุ่น 2018 MacBook Air (รุ่นที่มี USB Type-C) หากคุณเห็นปัญหานี้ในคอมพิวเตอร์ Apple รุ่นอื่นหรือไม่มีปัญหานี้ในรุ่นที่ได้รับผลกระทบฉันจะสนใจฟังมัน
สรุป:
น่าเสียดายที่ฉันไม่คิดว่าจะมีวิธีใดที่จะป้องกันความผิดพลาดนี้ ณ จุดนี้นอกเหนือจากการบังคับใช้การ์ดแยกหากคอมพิวเตอร์ของคุณมีหนึ่ง (และคุณไม่รังเกียจการใช้งานแบตเตอรี่ที่ลดลง) แต่หวังว่ามันจะ ได้รับการแก้ไขในการปรับปรุงในอนาคต
โชคร้ายที่มากกว่านั้นมันยังไม่ได้รับการแก้ไขในเวอร์ชั่นใด ๆ ตั้งแต่ 10.14.0 ถึง 10.14.6 หรือการอัพเดทเพิ่มเติมครั้งที่สองนับ แต่นั้นมา ผมยื่นรายงานข้อผิดพลาดใน bugreport.apple.com (ไม่ใช่ที่สาธารณะ แต่46079638
) 45841204
ซึ่งได้รับการทำเครื่องหมายเป็นซ้ำของ ฉันไม่สามารถเข้าถึงรายงานข้อผิดพลาดนั้นได้ แต่คิดว่าฉันจะพูดถึงมันในกรณีที่ทุกคนต้องการอ้างอิง
มีรายงานว่ายังคงมีอยู่ใน 10.15 Catalina ( รายงานข้อผิดพลาด MDN )
ขั้นตอนในการทำซ้ำ:
ฉันโชคดีที่สุดในการสร้างข้อผิดพลาดกับ Firefox
- เปิด Firefox (63.0.1 ในกรณีของฉัน)
- ตั้งค่าธีม Firefox เป็น Dark
- ดู> แถบเครื่องมือ> ปรับแต่ง ... > ธีม> มืด
- นำทางไปยังหน้าเช่นhttp://example.com/
- เปิดเครื่องมือสำหรับนักพัฒนา
- เครื่องมือ> นักพัฒนาเว็บ> ผู้ตรวจสอบ
- กำหนดธีมเครื่องมือของนักพัฒนาซอฟต์แวร์ให้มืด
- ที่ด้านบนขวาให้คลิก ... > การตั้งค่า> ธีม> มืด
- คลิกที่แท็บ Inspector
- เปิดคอนโซล
- ที่ด้านบนขวาคลิก ... > แสดงคอนโซลแยก
- ตรวจสอบให้แน่ใจว่าเครื่องมือของนักพัฒนาซอฟต์แวร์ครอบคลุมด้านล่างของหน้าต่าง
- หากไม่ปรากฏขึ้นที่ด้านบนขวาให้คลิก ... > Dock to Bottom
- โหลดหน้าซ้ำจนกว่าความผิดพลาดจะเกิดขึ้น
อ้างอิง:
อาจเกี่ยวข้องอย่างหลวม ๆ : หลีกเลี่ยงการใช้พื้นผิวที่โปร่งใสโดยใช้ CoreAnimation (ถ้าฉันสงสัยว่ามันเกี่ยวข้องกับความโปร่งใสถูกต้องการเปลี่ยนแปลงนั้นอาจส่งผลกระทบต่อบั๊กนี้ที่เกิดขึ้นกับ Firefox ในที่สุดหากเพียงหลีกเลี่ยงบั๊ก OS)