कस्टम सत्र: विंडो डिफ़ॉल्ट रूप से पूर्ण स्क्रीन क्षेत्र पर कब्जा नहीं करती है। 12.04


11

मैं /usr/share/xesessionsफ़ोल्डर में एक custom.desktop फ़ाइल बनाकर एक कस्टम सत्र बनाने की कोशिश कर रहा हूं । याद रखें यह एक gnomeया कुछ अन्य सत्र नहीं है। मैंने इस सत्र के लिए अपना स्वयं का आवेदन बनाया है, जो सरल हैं।

मामला एक

क्रोम ब्राउज़र

Custom.desktop फ़ाइल की सामग्री

[Desktop Entry]
Name=Internet Kiosk
Comment=This is an internet kiosk
Exec=google-chrome --kiosk
TryExec=
Icon=
Type=Application

मुद्दा

क्रोम ब्राउज़र कियोस्क मोड में शुरू होता है लेकिन पूर्ण स्क्रीन क्षेत्र पर कब्जा नहीं करता है। कुछ क्षेत्र स्क्रीन के नीचे और दाईं ओर छोड़ दिया जाता है।


केस 2

कस्टम pyGTK ऐप (जल्दी से)

Custom.desktop फ़ाइल की सामग्री

[Desktop Entry]
Name=Custom Kiosk
Comment=This is a custom kiosk
Exec=~/MyCustomPyGTKApp
TryExec=
Icon=
Type=Application

मुद्दा

मेरा कस्टम pyGTK ऐप window.fullScreen()कोड में है। इसका मतलब है कि इसे विंडो क्रोम के बिना पूर्ण स्क्रीन में खोलना चाहिए (और यह सामान्य सत्र के तहत करता है)। लेकिन वह भी, इसके आसपास बहुत सारी जगह छोड़ देता है।

मदद की ज़रूरत है

क्या कोई मुझे बता सकता है कि यहां क्या चल रहा है। मुझे लगता है कि सीमाओं के साथ इसका कुछ मुद्दा http://www.instructables.com/id/Setting-Up-Ubuntu-as-a-Kiosk-Web-Appliance/?ALLSTEPS पर चरण 8 में बताया गया है

यदि संयोग से, Google क्रोमियम को किनारों पर बढ़ाया नहीं जाता है - तो इस पर स्विच करने में सक्षम है एक साधारण फिक्स है। क्रोमियम को फैलाने के लिए बस अपने नियमित उपयोगकर्ता के रूप में लॉग इन करें और chkiKiosk.sh को --kiosk स्विच न करने के लिए संपादित करें। फिर प्रतिबंधित उपयोगकर्ता के रूप में लॉग इन करें, रिंच पर क्लिक करें और विकल्प चुनें। फिर पर्सनल स्टफ टैब पर सिस्टम टाइटल बार छिपाएं चुनें और कॉम्पैक्ट बॉर्डर का उपयोग करें। मॉनिटर को फिट करने के लिए विकल्प स्क्रीन और स्ट्रेच क्रोमियम को बंद करें। फिर विकल्प विंडो में वापस जाएं और इसे सिस्टम टाइटल बार और बॉर्डर्स में सेट करें। ऐसा करने के बाद, अपने प्रतिबंधित उपयोगकर्ता से लॉग आउट करें (आपको केवल रिबूट करने की आवश्यकता हो सकती है) और अपने नियमित उपयोगकर्ता में लॉग इन करें। संपादित करें chromeKiosk.sh को --kiosk स्विच को फिर से शामिल करने के लिए और क्रोमियम को अगली बार पूर्ण स्क्रीन होना चाहिए जब आप प्रतिबंधित उपयोगकर्ता में प्रवेश करते हैं।

अगर मुझे किसी कस्टम pyGTKया gtkmmऐप का उपयोग करना था, तो मुझे इस मुद्दे पर कैसे जाना चाहिए। window.fullScreen()पूर्ण स्क्रीन क्षेत्र पर कब्जा करना चाहिए। यह प्रोग्रामेटिक रूप से या किसी अन्य तरीके से किया जा सकता है जो स्केल कर सकता है। मुझे विभिन्न भौगोलिक क्षेत्रों में स्थित बड़ी संख्या में मशीनों पर इसे तैनात करना है। हर मशीन पर इसे मैन्युअल रूप से करना संभव नहीं है।

जवाबों:


6

यह एक मुश्किल है, मुझे एक समान समस्या थी, जब एक समय ट्रैकर पीसी पर केवल एक ncurses आधारित इंटरफ़ेस रखने की कोशिश कर रहा था, मेरे लिए समस्या यह थी कि जब कोई विंडो प्रबंधक मौजूद नहीं है, तो सामान्य X विंडो अनुप्रयोग अजीब तरह से व्यवहार करते हैं। यहाँ मेरा प्रस्ताव है:

  1. रॉटपोइसन विंडो मैनेजर स्थापित करें
    sudo apt-get install रॉटपोइसन
    
  2. अनबाइंड कीबोर्ड जो एक मेनू दिखाता है या आपको टर्मिनलों या कमांड्स को निष्पादित करने की अनुमति देता है, इसे $ HOME / .ratpoisonrc में डालते हैं जो कियोस्क मोड को चलाने वाला उपयोगकर्ता होगा।
    अनबाइंड सी
    अनबाइंड सी.सी.
    निर्विवाद
    unbind सी-एक्सलम
    अनिश्चित काल
    
  3. सीधे google-chrome पर कॉल करने के बजाय, आपके द्वारा बताए गए निर्देशांक जैसे एक स्क्रिप्ट डालें
[डेस्कटॉप एंट्री]
एन्कोडिंग = UTF-8
नाम = कियोस्क मोड
टिप्पणी = क्रोमियम कियोस्क मोड
Exec = / usr / share / xsessions / chromeKiosk.sh
प्रकार = आवेदन
  1. स्क्रिप्ट पर इसे डाल (याद रखें कि यह निष्पादन योग्य है)
#! / Bin / bash
चूहे मारने का ज़हर &
xscreensaver -nosplash और
जबकि सच है; क्रोमियम-ब्राउज़र करते हैं --kiosk http://google.com; नींद 5 एस; किया हुआ

मेरे लिए उबंटू 12.04 और क्रोमियम के साथ काम किया।


आपका भी बहुत अच्छा विचार है। +1
नानोफ़ारड

1

मामला एक

आपको क्रोमियम को यह बताने की आवश्यकता है कि आपकी स्क्रीन का रिज़ॉल्यूशन इसकी वरीयताओं की फाइल ( नीचे और दाएं मान) को फिर से लिखना है । आपके द्वारा पोस्ट किए गए लिंक में वह हिस्सा शामिल है।

#!/bin/bash

prefs=~/.config/chromium/Default/Preferences

cat $prefs |\
perl -pe "s/\"bottom.*/\"bottom\": $(xrandr | grep \* | cut -d' ' -f4 | cut -d'x' -f2),/" \
> $prefs

cat $prefs |\
perl -pe "s/\"right.*/\"right\": $(xrandr | grep \* | cut -d' ' -f4 | cut -d'x' -f1),/" \
> $prefs

chromium-browser

(Ubuntu 12.04 में परीक्षण किया गया)

case2

मैं कहूंगा कि आपको किसी तरह अपने pyGTK ऐप को बताना होगा कि स्क्रीन रिज़ॉल्यूशन क्या है, क्रमशः नीचे और सही मान क्या हैं। फिर फ़ुलस्क्रीन कमांड को आपके ऐप को स्क्रीन के सभी कवर करना चाहिए अर्थात कोई सीमा नहीं छोड़नी चाहिए।

संपादित करें: ऐसा लगता है कि window.fullscreen () विधि को सामान्य रूप से इसे पूर्णस्क्रीन बनाना चाहिए। इसलिए पहले संकल्प को परिभाषित करने की जरूरत नहीं है। यहां अधिक जानकारी, लेकिन मुझे यकीन है कि आप पहले से ही यह जानते हैं: http://www.pygtk.org/docs/pygtk/class-gtkwindow.html#method-gtkwindow--fullscreen


0

केस 1 मेरे मामले में इससे मुझे मदद मिली:

sudo नैनो sudo ~ / .config / chrium / Default / Preferences

मैंने अपने स्क्रीन रिज़ॉल्यूशन के अनुसार मान बदल दिए

"window_placement": {"bottom": 1024, "left": 0, "maximized": true, "right": 1280, "top": 0, "work_area_bottom": 1024, "work_area_left": 0, "work_area_right" : 1280, "work_area_top": 0}


मैं इसे मैन्युअल रूप से नहीं बदल सकता।
जुजेर अली
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.