พฤติกรรมพื้นหลังที่แปลกประหลาด


9

ฉันได้สร้างconky แบบกำหนดเองที่แสดงการพยากรณ์อากาศใน 3 เมืองเช่นนี้: ประเภทหน้าต่าง conky override1

แต่เมื่อเร็ว ๆ นี้ฉันเริ่มเห็นพฤติกรรมแปลก ๆ หลังจากนั้นไม่กี่วินาทีพื้นหลังสีขาวที่มีขนาดใหญ่ขึ้นจะปรากฏขึ้นภายใต้สิ่งนี้: ประเภทหน้าต่าง conky override2

ผมเคยพยายามที่จะเอาชนะนี้โดยพยายามจำนวนของการเปลี่ยนแปลงในการตั้งค่าไฟล์.conkyrcและมีประสิทธิภาพเพียงคนเดียวก็เปลี่ยนown_window_typeค่าจากการแทนที่ไปตามปกติ แต่แล้วฉันไม่เพียง แต่ทำให้ Conky นี้หายไปเมื่อฉันเลือกที่จะย่อขนาดหน้าต่างทั้งหมดให้เล็กที่สุด แต่ยังแสดงพื้นหลังโปร่งใสที่มีขนาดเท่ากันดังนี้:

ประเภทหน้าต่าง conky ปกติ

การตั้งค่าหน้าต่าง conky ของฉันเป็นดังนี้:

update_interval 1
total_run_times 0
cpu_avg_samples 1
net_avg_samples 1
no_buffers ใช่
double_buffer ใช่
imlib_cache_size 0

ใช่
own_window ใช่
การแทนที่ own_window_type
own_window_transparent ใช่
own_window_hints ตกแต่ง, ด้านล่าง, เหนียว, skip_taskbar, skip_pager
ขั้นต่ำ 300 300
maximum_width 300
การจัดตำแหน่ง top_right
gap_x 2
gap_y 28

หมายเลข draw_borders
draw_graph_borders หมายเลข
stippled_borders 0
border_inner_margin 0
border_outer_margin 0
border_width 0

text_buffer_size 1024
override_utf8_locale ใช่
use_xft ใช่
xftfont Ubuntu: size = 10
xftalpha 1.0
หมายเลขตัวพิมพ์ใหญ่
temperature_unit เซลเซียส
หมายเลข draw_shades
หมายเลข draw_outline
default_color C0C0C0
default_shade_color 000000
default_outline_color C0C0C0
color1 C0C0C0
color2 B2B2B2
color3 808080
color4 D4D4D4

ข้อความ
$ {image ~ / .conky / base.png -p 0,0 -s 300x480}

ใครสามารถบอกสิ่งที่อาจเป็นสาเหตุ (และฉันจะเอาชนะได้อย่างไร) ผืนผ้าใบที่ไม่ต้องการนี้อยู่ใต้หน้าต่าง Conky ของฉัน?

คำตอบ:


8

A):

own_window yesรัฐ .conkyrc ของคุณ ซึ่งหมายความว่า conky มีหน้าต่างเป็นของตัวเอง โดยระบุown_window_type normalหน้าต่างจะถูกบอกให้ทำ "ปกติ" ดังนั้นหน้าต่าง conky จะลดขนาดหน้าต่างอื่น ๆ ลงเมื่อใช้ตัวเลือก "Show desktop"

B):

สิ่งที่จะให้ conky ในสถานที่ที่มีการเปลี่ยนแปลงไปown_window_type normal own_window_type dockข้อเสียของวิธีการนี้คือต้องวาง conky ในจุดที่ถูกต้องบนเดสก์ท็อปของคุณอีกครั้งโดยใช้ gap x และ gap y ตอนนี้ Gap x ถูกนับจากด้านซ้ายของขอบเดสก์ท็อปแทนที่จะเป็นด้านขวา Gap y ยังคงนับจากด้านบน ดังนั้นสมมติว่าความละเอียดหน้าจอของคุณคือ 1440x900 และ gap x เคยเป็น 2 และ conky สูงสุดด้วยคือ 300 ช่องว่างใหม่ x จะเป็น 1440-300-2 = 1138

ค):

นอกจากนี้ในการสูญเสียทั้งท่าเรือที่มองเห็นเส้นขอบเปลี่ยนบรรทัดown_window_transparent yesที่มีเส้นนี้และown_window_argb_visual yes own_window_argb_value 0หากown_window_argb_valueตั้งค่า255เป็นหน้าต่าง conky จะไม่มีความโปร่งใสและเป็นสีดำ

สำหรับการตั้งค่าเพิ่มเติม:

http://conky.sourceforge.net/config_settings.html


ขอบคุณ แต่ ... 1) คำแนะนำของคุณอีกครั้ง: ความโปร่งใสยังกำจัดภาพพื้นหลังของฉันและไอคอนสภาพอากาศเปลี่ยนเป็นสีขาว 2) ฉันจะพิจารณา own_window_type อีกครั้งแม้ว่ามันจะมีข้อเสียเปรียบในการวางตำแหน่งเมื่อคุณเปลี่ยนจอภาพที่ฉันเดา
Sadi

ตกลงวิธีแก้ปัญหาอื่น: ข้าม C. ภายใต้ B): แก้ไขบรรทัดของรหัสown_window_type desktopแล้วลอง ฉันไม่มีทางออกสำหรับไอคอนสีขาว Conky ต้องการเล่นซอเวลาส่วนใหญ่เช่นการใช้รหัสของคุณจะไม่ทำให้ภาพหายไปในกล่องของฉัน การเปลี่ยนจอแสดงผลจะเปลี่ยนการกำหนดตำแหน่งแบบ Conky เสมอเว้นแต่จะไม่มีการเปลี่ยนแปลงความละเอียด
jeroen

ก่อนถามที่นี่ฉันศึกษาคู่มือ conky เช่นลิงค์ด้านบนและลองตัวเลือก "window_type" ที่แตกต่างกันกับผลลัพธ์เหล่านี้: conky (ย่อเล็กสุด), เดสก์ท็อป (หายไปโดยสมบูรณ์เมื่อคลิกบนเดสก์ท็อปและไม่สามารถนำกลับมา) , ไม่ย่อเล็กสุด), ปกติ (ย่อเล็กสุด), แทนที่ (ตำแหน่งเริ่มต้นด้านบนขวา, ไม่ย่อเล็กสุด, พื้นหลังสีขาวเป็นครั้งคราว), แผงควบคุม (ก่อให้เกิดปัญหาความสามัคคีที่ร้ายแรง) ดังนั้นในบรรดา DOCK เหล่านี้ดูเหมือนจะเป็นทางออกที่ดีที่สุดในขณะนี้ (เพราะฉันโชคดีที่มีความกว้างในการบันทึกเมื่อฉันเปลี่ยนจอภาพ)
Sadi

แม้ว่าสิ่งนี้จะแก้ปัญหารองของการย่อเล็กสุดได้แต่คำถามยังคงเปิดอยู่เพราะฉันยังมีพื้นหลังที่อธิบายไม่ได้ มันแปลกที่ฉันไม่ได้มีพื้นหลังสีขาวในโหมด "แทนที่" จนกระทั่งเมื่อเร็ว ๆ นี้และก็แปลกที่พื้นหลังกึ่งโปร่งใสในโหมดอื่น ๆ เช่น "ท่าเรือ" ไม่ได้อยู่ที่จุดเริ่มต้น แต่เกิดขึ้นเมื่อฉันเพิ่มเมืองเพิ่มเติม เพื่อรหัสเริ่มต้น อาจเป็นไปได้ว่าฉันจะไม่มีทางรู้ว่าเกิดอะไรขึ้น ;-)
Sadi

อะแฮ่มอย่างอื่น ... :-): Conky ใช้ "หลอก" - ความโปร่งใสไม่ใช่หน้าต่าง "โปร่งใส" อย่างแท้จริง มันอ่านพื้นหลังของหน้าต่างรูทและเปลี่ยนพื้นหลังของมันเองเป็นส่วนของภาพที่พบ ผู้จัดการ Window หรือ Desktop บางคนวางพื้นหลังไว้บนเลเยอร์เหนือหน้าต่างรูต ในการแก้ไขปัญหานี้คุณสามารถใช้แอปพลิเคชันเช่น "fbsetbg" ซึ่งรวมอยู่ใน fluxbox ( fluxbox.org ) หรือ "feh" ( linuxbrit.co.uk/feh ) ใช้ "feh" จาก ~ / .xinitrc ของคุณ: #!/bin/shบรรทัดถัดไป: sleep 1 && feh --bg-center ~/background.png &หรือfbsetbg -f /path/to/picture.jpg
jeroen

3

ฉันได้พบวิธีแก้ไขเงาที่ไม่ต้องการที่นี่แล้ว: http://linuxexchange.org/questions/821/how-to-avoid-ugly-compizgnome-shadow-for-conky

  1. เริ่มตัวจัดการการตั้งค่า CompizConfig
  2. เลือกเอฟเฟ็กต์ > การตกแต่งหน้าต่าง
  3. เข้าไปในเงาหน้าต่างกล่องและหลังค่าใด ๆเพิ่มและ (class = Conky)เพื่อนำไปใช้กฎนี้ไปยังหน้าต่างทั้งหมดยกเว้น Conky

นี่เป็นวิธีแก้ปัญหาแทนที่จะเป็นวิธีแก้ปัญหาเพราะทำไม Conky ดึงหน้าต่างบานใหญ่กว่าที่ต้องการยังคงเป็นปริศนาสำหรับฉัน ;-)

  • หมายเหตุ: อาจต้องมีการเพิ่มบรรทัดนี้ในไฟล์กำหนดค่า conky: own_window_class Conky

  • หมายเหตุ: วิธีแก้ปัญหาสำหรับพื้นหลังสีดำปรากฏขึ้นบางนาทีภายใต้ Ubuntu 13.04 : เพิ่มคำสั่งเพื่อเปลี่ยนรูปพื้นหลังเดสก์ท็อปกลับไปกลับมาหลังจากคำสั่ง conky เช่นsleep 5 && conky -c /home/user/.conkyrc && sleep 2 && gsettings set org.gnome.desktop.background picture-uri file:///home/user/Pictures/bckgrnd.jpg && gsettings set org.gnome.desktop.background picture-uri file:///home/user/Pictures/background.jpg


1

ฉันมีปัญหาเดียวกันที่แน่นอนใน 12.10 แต่พบว่าการเปิดแผงหรือเทอร์มินัล (ซึ่งฉันตั้งให้โปร่งใส) ทำให้พื้นหลังสีขาวหายไป น่ารำคาญ แต่แก้ง่าย - ฉันคิดว่ามันเป็นเรื่องเกี่ยวกับวิธีที่หน้าจอจัดการกับความโปร่งใส

เพิ่งได้ 13.04 แม้ว่าและตอนนี้เคล็ดลับที่ไม่ทำงาน การเลือกใช้มันทำให้ฉันได้รับความโปร่งใสในการทำงานถ้าฉันตั้งค่าต่อไปนี้:

own_window yes
own_window_type dock
own_window_transparent yes

ข้อเสียเพียงอย่างเดียวคือตอนนี้หน้าต่าง Conky จัดเรียงตัวเองไปทางซ้ายของหน้าจอ (เคยเป็นด้านขวา) ดังนั้นฉันจึงต้องเลื่อนมันไปด้วย:

alignment tr
gap_x 1120
gap_y 55

น่ารำคาญนี่หมายความว่าถ้าความละเอียดการแสดงผลของฉันเปลี่ยนแปลง (ฉันมักจะเสียบเข้ากับเครื่องฉายในที่ทำงานเช่น) หน้าต่าง Conky จะไม่อยู่ที่นั่น แต่เป็นการเริ่มต้น หวังว่านี่จะช่วยได้


ขอบคุณ แต่นี่ก็น่ารำคาญมากสำหรับฉันเพราะฉันใช้แล็ปท็อปและเชื่อมต่อจอภาพภายนอกขนาดใหญ่เข้ากับมันบ่อยๆ เป็นผลให้ฉันได้ตัดสินใจที่จะทิ้ง Conky และสลับไป Screenlets
Sadi

ฉันเพิ่งค้นพบว่าการเปลี่ยนรูปพื้นหลังเดสก์ท็อปยังบังคับให้วาดความโปร่งใสปลอม (เช่นการเปิดแผงหรือเทอร์มินัลตามที่คุณพูด) แล้วบางทีอาจจะเป็นคำสั่งเพื่อเปลี่ยนแปลงวอลล์เปเปอร์ดำเนินการหลังจาก conky อาจทำเคล็ดลับ ;-)
Sadi

1

นี่คือพารามิเตอร์ที่ฉันใช้:

override_utf8_locale yes
own_window no
own_window_colour 313131    # Black
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
#own_window_hints below,sticky,skip_taskbar,skip_pager
own_window_transparent no
own_window_type normal  ## normal

${image ~/BOX/conkybg1.png -p -50,-44 -s 380x500}

ฉันมีปัญหากับภาพเล็กเกินไป ฉันเพิ่งเริ่มปรับขนาดพารามิเตอร์และทำให้มันใช้งานได้

ในขณะที่คุณอาจสังเกตเห็นมีการตั้งค่าown_window noหากyesภาพของฉันไม่ทำงาน มันเป็นระเบียบ สิ่งนี้อาจช่วยได้หรือไม่ ฉันหวังว่ามันจะช่วยได้บ้าง


ขอบคุณ แต่ตรงกันข้ามเดสก์ทอปของฉันกลายเป็นความยุ่งเหยิงเมื่อฉันตั้งค่าเป็น "ไม่" ;-) พฤติกรรม conky แปลก ;-)
Sadi

0

เกี่ยวกับสิ่งนี้:

ในไฟล์ ~ / conkyrc ค้นหา

own_window_type override

แทนที่มัน

own_window_type desktop

และเพิ่ม

own_window_argb_visual yes

นั่นทำเพื่อฉัน


ขอบคุณ แต่อย่างน้อยในกรณีของฉัน (Ubuntu 13.04 64- บิต) การเปลี่ยนค่า "own_window_type" เป็น "เดสก์ท็อป" ทำให้หน้าต่าง conky หายไปเมื่อคุณคลิกซ้ายที่เดสก์ท็อปและนี่แย่กว่าการเห็นพื้นหลังสีดำหลังหน้าต่าง Conky หรือสองวินาที
Sadi

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