Tutup tombol pada notify-osd?

41

Apakah mungkin untuk mendapatkan tombol tutup pada OSD?

Itu tetap untuk waktu yang lama, dan kadang-kadang saya memiliki rekan di PC saya, dan saya tidak ingin mereka melihat siapa yang online, atau lagu apa yang saya dengarkan. Tidak, saya tidak bisa menonaktifkannya.

theTuxRacer
sumber
Satu-satunya solusi untuk mendapatkan tombol tutup pada notifikasi, adalah dengan menggunakan AWN, dan gunakan plugin notifikasi. Ini bekerja dengan baik dengan Rhythmbox dan exaile juga.
theTuxRacer
Jawaban ini askubuntu.com/questions/14354/close-button-on-notify-osd/… pada dasarnya mendahului tampilan notifikasi. Ini sementara dan jika proses ini dihentikan, tampilan notifikasi dilanjutkan. Jika dengan "Saya tidak dapat menonaktifkannya" berarti Anda tidak memiliki kebebasan untuk menonaktifkan dbusmekanisme pemberitahuan , solusi ini membiarkannya tetap utuh ... jika itu berarti Anda sudah mencoba dan tidak dapat melakukannya, sekali lagi jawaban ini akan berikan solusi.
George Rowell

Jawaban:

16

Taruhan terbaik Anda adalah mengajukan bug dan meminta fitur tersebut. Saat mengajukan bug wishlist seperti ini, pastikan untuk memberikan beberapa pemikiran tentang kasus pengguna mengapa fitur ini terbukti bermanfaat untuk bagian yang lebih besar dari komunitas pengguna Ubuntu.

Mike
sumber
ya, aku akan melakukannya. Tapi di mana saya bisa melakukan itu? Landasan peluncuran?
theTuxRacer
1
sudah ada di wishlist, tapi saya pikir tidak akan ada tindakan. silakan pilih bugs.launchpad.net/ubuntu/+source/notify-osd/+bug/381416
theTuxRacer
7
@Kaustubh P Baca ini, markshuttleworth.com/archives/253 khusus bagian ini: The most controversial part of the proposal is the idea that notifications should not have actions associated with them. In other words, no buttons, sliders, links, or even a dismissal [x].Jangan terlalu berharap, ini tidak akan berubah dalam waktu dekat jika pernah.
Yesaya
1
Ada spesifikasi untuk membuat waktu variabel pemberitahuan - pesan yang lebih lama akan tetap untuk waktu yang lebih lama, atau pesan yang diperbarui akan diperpanjang. Sebuah implementasi patch yang akan disambut baik, itu akan memungkinkan kami untuk mempersingkat waktu untuk pesan yang sangat singkat :-)
Mark Shuttleworth
10
Kami juga ingin menambahkan mode "jangan ganggu", di mana hanya pemberitahuan sistem (mendesak), seperti baterai sangat rendah dan masalah perangkat keras, akan muncul. Jadi Anda dapat menggunakan jangan-ganggu untuk menghindari orang melihat pemberitahuan Anda ketika mereka melihat dari balik bahu Anda, atau Anda terhubung ke proyektor (meskipun kami lebih suka meletakkan notifikasi di layar laptop Anda dan tidak di proyektor, di mana mereka menampilkan berbeda). Sekali lagi, sebuah tambalan untuk itu akan diterima.
Mark Shuttleworth
35

Pilihan untuk memiliki nol chrome pada notifikasi sesaat sangat disengaja dan tidak akan berubah. Alasannya adalah bahwa pemberitahuan ini harus seringan mungkin.

Namun, ada beberapa hal yang bisa dilakukan untuk membantu Anda lebih jauh.

Ada spesifikasi untuk membuat waktu variabel pemberitahuan - pesan yang lebih lama akan tetap untuk waktu yang lebih lama, atau pesan yang diperbarui akan diperpanjang. Sebuah implementasi patch yang akan diterima, itu akan memungkinkan kami untuk mempersingkat waktu untuk pesan yang sangat singkat :-)

Kami juga ingin menambahkan mode "jangan ganggu", di mana hanya pemberitahuan sistem (mendesak), seperti baterai sangat rendah dan masalah perangkat keras, akan muncul. Jadi Anda dapat menggunakan jangan-ganggu untuk menghindari orang melihat pemberitahuan Anda ketika mereka melihat dari balik bahu Anda, atau Anda terhubung ke proyektor (meskipun kami lebih suka meletakkan pemberitahuan di layar laptop Anda dan tidak di proyektor, di mana mereka menampilkan berbeda). Sekali lagi, sebuah tambalan untuk itu akan diterima.

Mark Shuttleworth
sumber
wow, terima kasih atas jawabannya! Kurasa aku mungkin menangis!
theTuxRacer
5
Saya harap mode "jangan ganggu" ini diimplementasikan kemudian.
Roddie
Untuk sistem pemberitahuan mendesak ini, harus ada cara untuk membedakan pemberitahuan mana yang akan dikategorikan sebagai mendesak.
Oxwivi
Saya tidak setuju dengan keputusan ini 100%, tetapi setidaknya mereka tampaknya bekerja dengan baik.
RolandiXor
Saya akan mencoba melihat ke dalam kode sumber dan mengirimkan tambalan (jika memungkinkan).
hijau
14

Tidak ada tombol tutup, gumpalan bahkan tidak ada dalam hal pada mouse (ketika Anda mengkliknya, itu hanya mengklik apa yang ada di belakangnya), lihat detailnya di sini:

https://wiki.ubuntu.com/NotifyOSD

Fungsionalitas ini tidak akan berubah, ada beberapa laporan bug yang menanyakan apa yang Anda minta, yang semuanya ditolak dalam persyaratan terkuat.

Anda bisa membuat program untuk menutupnya, bercabang sedikit kode OSD dan menggunakan beberapa cabang kode yang sudah ada yang sudah melakukan ini. Lihat program D-Feet untuk menjelajah dan bermain dengan antarmuka dbus untuk notifikasi dan kode pada launchpad.

Martin Owens -doctormo-
sumber
Dan ikat program itu ke hotkey, kan?
Extender
sudah ada di wishlist, tapi saya pikir tidak akan ada tindakan. silakan pilih bugs.launchpad.net/ubuntu/+source/notify-osd/+bug/381416
theTuxRacer
Jawaban ini askubuntu.com/questions/14354/close-button-on-notify-osd/… pada dasarnya mendahului notifikasi dan meskipun tidak benar-benar dinonaktifkan, tampilannya adalah. Ini sementara dan jika proses ini dihentikan, tampilan notifikasi dilanjutkan.
George Rowell
7

Ada cara Anda bisa mendapatkan notifikasi dengan tombol tutup.

masukkan deskripsi gambar di sini

Dari Artikel Webupd8

Pertama instal Avant Window Navigator dari pusat perangkat lunak dan tambahkan "Notification Daemon" ke dok.

Sekarang tekan Alt + F2dan tempelgconf-editor

Kemudian navigasikan ke aplikasi> awn-applet-notification-daemon (ini untuk AWN terbaru dari AWN trunk PPA, mungkin aplikasi> avant-window-navigator> awn-applet-notification-daemon pada versi lama dari Avant Window Navigator ). Mengklik tombol akan menampilkan deskripsinya di bagian bawah sehingga Anda akan tahu cara men-tweak itu. Kunci terpenting adalah: "kill_standard_daemon" - pastikan ini diaktifkan atau notifikasi AWN tidak akan berfungsi.

Misalnya, "override_x" adalah posisi horizontal di layar (yang saya gunakan "1900" karena lebar layar saya adalah 1920 dan saya ingin notifikasi ditampilkan di sebelah kanan), "override_y" adalah posisi vertikal ( yang saya gunakan "30" sehingga dialog pemberitahuan ditampilkan di sudut kanan atas) dan "gradient_factor" adalah transparansi. Itu sudah cukup untuk memulai.

Untuk menyesuaikan warna, hapus centang pada kotak "use_theme", lalu tentukan "text_colour" dan "bg_colour" dan seterusnya.

Fitur penting yang mungkin ingin Anda aktifkan adalah "show_icon". Ini akan menampilkan ikon pada dok Navigator Avant Window Anda yang kemudian dapat Anda klik untuk menonaktifkan sementara / mengaktifkan notifikasi.

Lincity
sumber
1
Itu adalah kebetulan bagaimana pengaturan saya sekarang :) Menambahkan applet pemberitahuan AWN memberi saya fungsionalit yang saya inginkan. Terima kasih atas jawabannya :)
theTuxRacer
3

Alih-alih menggunakan navigator jendela avant, Anda juga dapat melakukan ini (hanya diuji pada Lucid):

Instal xfce4-notifyd dari pusat perangkat lunak dan tekan Alt+ F2dan rekatkankillall notify-osd

Ini beralih ke daemon notifikasi XFCE, yang sangat mirip dengan default, hanya tombol tutup yang muncul ketika Anda mengarahkan mouse ke sana.

Lincity
sumber
2

Saya telah membaca tentang ini sebelumnya dan dapat memahami alasan desain tetapi dalam prakteknya mereka mengganggu ketika mereka tidak dapat dibersihkan dengan mudah.

Menggunakan https://launchpad.net/caffeine , aplikasi statusbar yang dapat mencegah penghematan layar / daya, juga akan menonaktifkan popup jadi saya pikir saya akan menyarankan ini sebagai solusi.

Memblokir pemberitahuan tidak menyoroti kebutuhan akan riwayat pemberitahuan tetapi ini juga telah dimunculkan sebagai masalah dan diselesaikan sebagai perbaikan: bugs.launchpad.net/notify-osd/+bug/382094

Cas
sumber
Mereka membuat pemberitahuan gangguan hampir-berguna ..
Dakota
1

Kurangi penundaan dengan aplikasi notify-osd-conf.

borjacampina
sumber
Saya mungkin mencobanya, tetapi sebenarnya ada beberapa hal yang perlu saya baca sendiri. jadi karenanya permintaan untuk tombol tutup. jika tidak, terima kasih untuk kepala!
theTuxRacer
2
@ObsessiveFOSS Ini dimaksudkan sebagai solusi untuk masalah yang diberikan dalam pertanyaan, dan sepertinya itu bisa berhasil. Jadi meskipun ini akan mendapat manfaat dari ekspansi dan detail yang lebih besar, itu masih tidak akan lebih baik sebagai komentar . borjacampina: Saya merekomendasikan pengeditan ini untuk menjelaskan cara mengurangi keterlambatan dengan cara ini.
Eliah Kagan
1

Bookmark: Tombol tutup pada notify-osd?

ref:

Konsep-konsep yang telah terbukti, bashsolusi grafiti pop-up OSD "cacat" dipahami dan ditetaskan sebagai:

dbus-monitor "interface='org.freedesktop.Notifications'" |             \
grep --line-buffered "member=Notify"                     |             \
sed -u -e  's/.*/killall notify-osd/g'                   |             \
bash

Ini dapat dijalankan di terminal atau sebagai tugas latar belakang - hentikan dan pop-up resume grafiti.

OP menyatakan "Tidak, saya tidak bisa menonaktifkannya". Jika dengan ini berarti bahwa sistem notifikasi TIDAK untuk dinonaktifkan oleh masalah sulit, maka solusi ini konsisten dengan itu. Sistem masih utuh. Jika itu berarti masalah sulit tidak tahu bagaimana melakukannya, maka sekali lagi solusinya relevan.

Detail dijelaskan di bawah baris. Yang paling utama adalah menyematkan segala sesuatu pada DBus, untuk secara langsung memohon

  qdbus    org.freedesktop.Notifications                \
          /org/freedesktop/Notifications                \
           org.freedesktop.Notifications.CloseNotification(uint id)

Solusi dasar yang sangat, sangat, sangat naif, yang lebih merupakan bukti konsep daripada praktis, pada dasarnya "melumpuhkan" notify-osd(atau setidaknya efeknya). Jangan lupa untuk menghentikannya saat melakukan pengujian! oleh ETX'ng dengan <ctrl> -C atau menutup jendela terminal dll. Ia melakukan tugasnya tetapi tidak terlalu pragmatis! karena sayangnya pekerjaan lain menderita berusaha untuk melakukan ...

  while true; do killall notify-osd; done

(untuk "mendengar" aktivitas yang relevan, Anda mungkin ingin " grepkeluar"

 notify-osd: no process found ....

)

Uji dengan menjalankannya di jendela terminal dan dari jendela terminal lain coba lakukan:

  notify-send "test 1" "now you see it not"
  notify-send "test 2" "you see it not after test 1 evaporates"
  notify-send "test 3" "finally after test 2 evaporates"

Hentikan proses pertama dan coba lagi pesan tersebut.

Mungkin notify-osdindikator untuk unity-panel-servicebisa memohon killall notify-osd. Tombol tutup bertitik panas tidak akan (& tidak bisa!) Ada di jendela notifikasi tetapi akan tersedia di panel indikator. Ini sepenuhnya analog dengan konsep yang sama yang dimiliki Unity untuk windows. Penggunaan bilah atas untuk penutupan notifikasi mirip dengan cara Unity mengasingkan menu jendela dengan kotak dekat, mini, maksimal ke bilah menu atas.

Solusi yang benar-benar elegan akan memiliki indikator muncul ketika aktivitas DBus untuk notify-osdmanifes dan menghilang ketika tidak ada pemberitahuan yang tertunda.

Mungkin juga mengatasi masalah notifikasi yang ditumpuk - hanya satu yang dapat dilihat pada satu waktu dan jika beberapa notifikasi sedang menunggu, masing-masing harus menguap sebelum muncul berikutnya - biasanya tidak dapat dilihat secara bersamaan.

DBus-monitor'ng dari notify-osdantarmuka pemberitahuan namun akan memberikan pengakuan segera tertunda pemberitahuan bahkan jika ada satu sudah menunjukkan. (DAN jika killall notify-osddikeluarkan segera - presto poof!)

Pilih Semua, Seret & Jatuhkan ke jendela terminal tes berikut:

  notify-send "test 1" "now you see it"
  notify-send "test 2" "you see it after test 1 evaporates"
  notify-send "test 3" "finally after test 2 evaporates"

sekarang lakukan hal yang sama dengan p {r} oof:

  notify-send "test 1" "now you don't"
  notify-send "test 2" "you see it not! after test 1 evaporates"
  notify-send "test 3" "NOT finally after test 2 evaporates"
  killall notify-osd
  notify-send "gonzo" "gone nada zip zilch"

Solusi killall notify-osdyang disarankan akan dipicu ketika DBus monitormendeteksi aktivitas grafiti pop-up OSD.

george rowell
sumber
0

Itu adalah keputusan yang disengaja untuk meninggalkan cara apa pun untuk berinteraksi dengan gelembung pemberitahuan (jadi itu pemberitahuan pasif), sehingga Anda dapat memposting laporan bug di Launchpad (mungkin sudah ada) dan melobi agar perubahan itu diubah.

Ini bukan sesuatu yang bisa saya lihat segera terjadi kecuali ada permintaan besar (dan tidak ada)

Mungkin juga ada baiknya mencoba mengatasi masalah ini dengan meminta cara untuk mengecualikan program tertentu dari mengakses sistem notify-osd.

pengguna5260
sumber
0

Tombol tutup pada notifikasi itu sendiri tidak akan menyelesaikan masalah Anda. Mereka masih akan melihat notifikasi, dan harus mengklik tombol tutup untuk menutupnya, jika ada.

Yang harus Anda lakukan sebagai gantinya, adalah ketika Anda ingin mengizinkan orang lain menggunakan komputer Anda, cukup pilih opsi "Ganti Pengguna" di menu sistem di kanan atas (ikon roda gigi), dan gunakan login Tamu. Ini akan membuat sesi sementara bagi mereka untuk digunakan, dan tidak akan menyimpan riwayat browser, cookie, dll ... ketika pengguna itu logout. Ini akan membuat mereka tidak melihat pemberitahuan Anda, serta dari kemungkinan mengganggu data Anda sendiri (riwayat web, unduhan, login, dll ...), saat mereka melintasi eter dari komputer Anda.

dobey
sumber