ผู้ใช้งาน Windows ส่วนใหญ่ต่างคุ้นเคยกับการใช้เมาส์ลากแถบเลื่อน (Scrollbar Thumb) เพื่อเลื่อนหน้าต่างเอกสารหรือหน้าเว็บยาว ๆ แต่รู้หรือไม่ว่า Windows มีคีย์ลัดซ่อนอยู่ใต้แถบเลื่อนนี้มานานกว่า 25 ปี และเพิ่งกลายเป็นประเด็นที่คนในวงการไอทีพูดถึงกันอย่างกว้างขวาง
จุดเริ่มต้นจากบล็อกวิศวกรระดับตำนาน
เรื่องนี้ถูกหยิบยกขึ้นมาเล่าโดย Raymond Chen วิศวกรอาวุโสของ Microsoft ผู้พัฒนา Windows มานานกว่า 30 ปี เจ้าของบล็อกเทคนิคชื่อดัง The Old New Thing เขาได้เล่าในบทความ “A brief history of Windows scroll bar shortcuts” ว่า ในช่วงสองทศวรรษแรกของ Windows แถบเลื่อนมีจุดให้คลิกเพียงไม่กี่จุดเท่านั้น จนกระทั่งยุค Windows 2000 ระบบได้เพิ่มฟังก์ชันอำนวยความสะดวกเข้ามา 2 รูปแบบ
- Scrollbar Context Menu (คลิกขวาที่ราง)
แสดงเมนูลัด เช่นTop,Bottom,Page Up,Page Downรวมถึงคำสั่งเด่นอย่างScroll Hereที่ช่วยให้กระโดดไปยังพิกัดที่คลิกได้ทันทีโดยไม่ต้องลากแถบ - Shift + Click (ทางลัดลับ)
เพิ่มเข้ามาพร้อมกันในยุคเดียวกัน เพียงกดปุ่ม Shift ค้างไว้แล้วคลิกซ้าย ตรงตำแหน่งใดก็ได้บนราง แถบเลื่อนจะกระโดดมายังจุดนั้นทันที (ต่างจากการคลิกซ้ายปกติที่จะขยับทีละหน้าจอ หรือ Page Down)
สิ่งที่น่าขันคือ Raymond Chen ยอมรับตรง ๆ ว่า ตลอดเวลาที่ผ่านมาเขาพึ่งพาแต่เมนูคลิกขวา และเพิ่งมารู้ความจริงว่ามีคีย์ลัด Shift + Click นี้อยู่เมื่อไม่นานมานี้เอง
ปัญหาเมื่อแอปพลิเคชันยุคใหม่ “แตกกระสานซ่านเซ็น”
ประเด็นที่ Raymond Chen ต้องการสะท้อนไม่ได้มีเพียงแค่ความลับของคีย์ลัด แต่เป็นเรื่องของ UI Fragmentation (ความกระจัดกระจายของเฟรมเวิร์กในระบบ Windows)
“น่าเสียดายที่ปัจจุบันแทบไม่มีใครใช้ Win32 Scrollbar แท้ ๆ อีกต่อไปแล้ว ทุกคนหันไปใช้เฟรมเวิร์กที่วาดแถบเลื่อนขึ้นมาเอง”
ผลกระทบคือ เมื่อแอปพลิเคชันแต่ละค่ายเขียนระบบเลื่อนหน้าจอของตัวเองขึ้นมาใหม่ พฤติกรรมดั้งเดิมของ Windows จึงไม่สม่ำเสมออีกต่อไป
- File Explorer
ใช้ระบบดั้งเดิม จึงรองรับทั้ง Shift + Click และเมนูคลิกขวา - Chromium (Google Chrome, Edge, แอปที่ทำจาก Electron)
ทีมพัฒนาใส่โค้ดรองรับเฉพาะ Shift + Click แต่ไม่ได้ทำเมนูคลิกขวาไว้ - WPF
เฟรมเวิร์กของ Microsoft ที่สืบทอดพฤติกรรมทั้งสองอย่างมาครบถ้วน - WinUI / UWP (เฟรมเวิร์กยุคใหม่ของ Microsoft เองใน Windows 10 และ 11)
ตัดทิ้งไปทั้งสองฟังก์ชัน ทำให้ใช้งานไม่ได้เลย - Qt หรือโปรแกรมกลุ่ม Adobe
มีการจัดการ Scrollbar เป็นของตนเอง จึงขึ้นอยู่กับผู้พัฒนาแต่ละแอปว่าจะเขียนโค้ดรองรับไว้หรือไม่
บทสรุปของเรื่องนี้จึงไม่ใช่เรื่องฟีเจอร์ใหม่ แต่เป็นภาพสะท้อนของวิวัฒนาการซอฟต์แวร์ ซึ่ง Raymond Chen ได้ทิ้งท้ายไว้อย่างเจ็บแสบว่า ในวันที่เขาเพิ่งค้นพบทางลัดที่สะดวกขนาดนี้ ระบบนิเวศของซอฟต์แวร์กลับแตกกระจายไปไกล จนไม่สามารถมั่นใจได้อีกต่อไปแล้วว่ากดไปแล้วมันจะทำงานได้จริงหรือไม่