At muli tungkol sa pangalawang monitor mula sa tablet...

Ang pagkakaroon ng natagpuan ang aking sarili bilang may-ari ng tulad ng isang average na tablet na may isang hindi gumaganang sensor (sinubukan ng aking panganay na anak ang kanyang makakaya), naisip ko nang mahabang panahon kung saan ito iaangkop. Googled, Googled at Googled (oras, два, Hacker No. 227), pati na rin ang maraming iba pang mga recipe na nagtatampok spacedesk, iDispla at ilang iba pa. Ang problema lang ay mayroon akong Linux. Pagkatapos ng ilang higit pang pag-googling, nakakita ako ng ilang mga recipe at sa pamamagitan ng ilang simpleng shamanism nakakuha ako ng katanggap-tanggap na resulta.

At muli tungkol sa pangalawang monitor mula sa tablet...
Ang aking pamamaraan ay nasa ilalim ng hiwa.

Kakailanganin mo ng:

Linux na may naka-install na:

  • x11vnc (Sa totoo lang hindi ko gusto ang lahat ng uri ng tigervnc at iba pa)
  • ADB mula sa android-tools kit

Tablet/smart na may pinaganang debugging mode at nakatakda sa:

  • AndroidNVC (I have this one, kasi walang advertisement)
  • Ilang uri ng screen blanking blocker (wala akong mahanap nang walang advertising)
  • Anumang autoloader (patakbuhin ang VNC at blocker) ay opsyonal (higit pa sa ibaba).

Sige magsimula na tayo.

1. Kumuha ng Modeline para sa xorg.conf

$ cvt 1024 768 25 # Можно и gtf, но он не всегда дает корректный modeline.

2. Pag-edit

xorg.conf

Section "ServerLayout"
        Identifier     "Xorg Configured" 
        Screen         0  "Monitor" 0 0
        Screen         2  "Screen2" rightof "Screen0" # "Пустышка для VNC"
        Option         "Xinerama" "1"
	EndSection
	#>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
        # здесь все настройки оборудования, коли таковые есть
        #>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
	#Dummy видеокарта
	Section "Device"
		Identifier "Device2"
		Driver "dummy"
 		VideoRam 8000
	EndSection

	#Dummy монитор
	Section "Monitor"
 		Identifier "Monitor2"
  		Modeline "1024x768@25" 23.77 1024 1056 1144 1176 768 785 789 807 # см. п. 1
	EndSection 

	#Dummy экран
	Section "Screen"
 		Identifier "Screen2"
 		Device "Device2"
 		Monitor "Monitor2"
 		DefaultDepth 24
 		SubSection "Display"
	#разрешение плашета
    		Modes      "1024x768"
    		Virtual 1024 748
    	EndSubSection
	EndSection

I-restart namin ang X-sys at suriin sa pamamagitan ng arandr. I-set up ang lokasyon at oryentasyon. Dapat ganito ang hitsura nito:

At muli tungkol sa pangalawang monitor mula sa tablet...

Ise-save namin ito sa isang file - ito ay magiging kapaki-pakinabang sa amin.

3. Gumawa ng file para sa autoloading sa WM/DE (Mayroon akong planshet.sh)

x11vnc -rfbport 5900 -display :0 -dontdisconnect -noxfixes -xdamage -shared -forever -clip 1024x768+1600+0 -scale 1024x768 -bg -cursor X -o /home/$USER/x11vnc.log -repeat
	xrandr --addmode VIRTUAL1 1024x768 # необязательно
	xrandr --output VIRTUAL1 --mode 1024x768 # необязательно
	xrandr --output VIRTUAL2 --off --output HDMI1 --off --output VIRTUAL1 --mode 1024x768 --pos 1602x0 --rotate normal --output DP1 --off --output VGA1 --mode 1600x900 --pos 0x0 --rotate normal #вот эта строка заимствована из сохраненного файла arandr

Suriin natin:

$ xrandr |grep VIRTUAL1
        VIRTUAL1 connected 1024x768+1600+0 (normal left inverted right x axis y axis) 0mm x 0mm

Dahil walang autostart na direktoryo sa IceWM, ngunit mayroong isang file na ~/.icewm/startup (na dapat na maipapatupad), idagdag ang sumusunod dito:

sh -c /path/to/planshet.sh

4. Huwag paganahin ang pagblangko ng monitor:

	xset s off
	xset s noblank
	xset -dpms

Ngayon ay dumating ang masayang bahagi! Paano makukuha ang mga coordinate ng "tap" para sa isang device nang walang "paraan ng pagsubok at error" sa pamamagitan ng pagpapahirap sa keyboard sa console?!

Para sa ganoong bagay ay nililok ko programa. Kung patakbuhin natin ito mula sa console, makukuha natin ang hinahanap natin - output ng mga tap coordinates.

At muli tungkol sa pangalawang monitor mula sa tablet...

6. Idagdag natin ang lahat ng ito sa planshet.sh

Buong bersyon

#!/bin/bash
       x11vnc -rfbport 5900 -display :0 -dontdisconnect -noxfixes -xdamage -shared -forever -clip 1024x768+1600+0 -scale 1024x768 -bg -cursor X -o /home/$USER/x11vnc.log -repeat
	xrandr --addmode VIRTUAL1 1024x768 # необязательно
	xrandr --output VIRTUAL1 --mode 1024x768 # необязательно
	xrandr --output VIRTUAL2 --off --output HDMI1 --off --output VIRTUAL1 --mode 1024x768 --pos 1602x0 --rotate normal --output DP1 --off --output VGA1 --mode 1600x900 --pos 0x0 --rotate normal  #вот эта строка заимствована из сохраненного файла arandr
	xset s off
	xset s noblank
	xset -dpms
	adb tcpip 5555
	adb connect 192.168.0.14:5555
	sudo adb devices
	adb shell input tap 1000 20 # тапаем по "квадратикам" в правом верхнем углу (не знаю, как нызавется) - скрин 3
	adb shell input tap 392 138 # тапаем по AndroidVNC
	adb shell input tap 20 65 # запускаем VNC предварительно прописав адрес и порт

At gagawin natin ito

chmod +x /path/to/planshet.sh

Iyon lang, actually. I-reboot ang X server at kumuha ng multiscreen.

Mayroon akong conky na tumatakbo sa aking "maliit" na isa.

Ang isang screenshot ng double screen ay naka-attach.

At muli tungkol sa pangalawang monitor mula sa tablet...

Nagtatapon din ako ng mga datasheet kapag nag-model ako ng isang bagay.

Pinagmulan: www.habr.com

Magdagdag ng komento