ในการตั้งค่าจอภาพสองวิธีการตรวจสอบว่ามีหน้าต่างใดเปิดอยู่


3

ฉันกำลังเขียนสคริปต์ไพ ธ อนเพื่อปรับขนาดและจัดระเบียบหน้าต่างเหมือนกับที่gridปลั๊กอินทำcompiz-fusion(ยกเว้นว่าฉันใช้Debian Wheezy )

ฉันกำลังใช้xrandrและwmctrlรับความละเอียดของหน้าจอทั้งสองของฉันและคำนวณขนาดที่กำหนดเองสำหรับ windows (แยกตามแนวนอนแนวตั้ง ฯลฯ ... ):

  • xrandr บอกฉันว่าฉันมีกี่หน้าจอและความละเอียดของพวกเขา
  • wmctrl ช่วยให้ฉันมีขนาดดั้งเดิมของหน้าต่างและตำแหน่งของหน้าต่าง (ซึ่งแสดงในพื้นที่ทำงาน)

น่าเสียดายที่หน้าจอ 2 หน้าของฉันไม่มีความละเอียดเท่ากันเลยดังนั้นข้อมูลเดียวที่ฉันขาดหายไปคือ: หน้าจอใดที่หน้าต่างปรากฏขึ้นเพื่อให้ฉันสามารถคำนวณขนาดใหม่ที่เข้ากับหน้าจอนี้ได้อย่างสวยงาม

มีคำสั่ง / โปรแกรมใดที่สามารถรับข้อมูลนี้ได้หรือไม่?


FWIW ฉันได้ดูxdotoolแต่น่าเสียดายที่มันไม่ได้ตระหนักถึงการตั้งค่าหน้าจอคู่ทั้งหมดที่เห็นคือหน้าจอขนาดใหญ่เดียว อันที่จริงxdotool getmouselocationจะแสดงscreen:0แม้ว่าผมจะเลื่อนเมาส์ของฉันไปทั่วหน้าจอทั้ง ...
Coconop

คำตอบ:


0

ตกลงเพื่อดูคำตอบนี้ดูเหมือนว่าไม่มีวิธีการทำโดยตรง (และความคิดเห็นของฉันเกี่ยวกับxdotoolมีแนวโน้มที่จะยืนยันว่า) สิ่งที่เราทำได้คือหาวิธีแฮ็ค

ฉันกำลังคิดเกี่ยวกับสิ่งนี้:

  • รับรูปทรงเรขาคณิตของหน้าต่างผ่านwmctrl(พิกัดของหน้าต่างเช่นมุมบนซ้าย)
  • เปรียบเทียบกับความละเอียดหน้าจอและอนุมานที่หน้าจอจะแสดง

ฉันยังคงเปิดให้โซลูชั่นทางเลือกแม้ว่า :)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.