Dunst: Dukungan untuk pemberitahuan asli Chrome

Dibuat pada 17 Sep 2017  ·  18Komentar  ·  Sumber: dunst-project/dunst

Hanya ingin berdiskusi untuk melihat pekerjaan seperti apa yang diperlukan untuk mendukung notifikasi asli Chrome. Tampaknya dunst mendukung sebagian besar kemampuan yang dibutuhkan Chrome tetapi dunst masih dimasukkan dalam daftar hitam di Chrome.

Diskusi lebih lanjut dapat dilihat di sini: https://bugs.chromium.org/p/chromium/issues/detail?id=676220

external

Komentar yang paling membantu

Ups, buruk saya! Dengan master Dunst saat ini bahkan menampilkan ikon pemberitahuan khusus. (sebelumnya menggunakan 1.2.0) Semuanya bekerja dengan sempurna!

2017-12-07-134321_708x319_scrot

Semua 18 komentar

Saya kira chromium berperilaku sama dan saya mengujinya kemarin di chromium:

Secara umum server notifikasi dapat mendukung "capabilites" . Di utas di sana dikatakan, bahwa action dan action-icons diperlukan. Tetapi bahkan setelah berpura-pura, bahwa dunst mendukung action-icons , chromium tidak mengirim pemberitahuan ke dunst. Chromium juga tidak menanyakan kapabilitas.

Hanya memaksa kromium membantu melakukan ini.

Hm, dari apa yang saya lihat di sumber , satu-satunya kemampuan yang diperlukan adalah body dan action

@tsipinakis dbus-monitor path=/org/freedesktop/Notifications bahkan tidak menunjukkan aktivitas apa pun saat meluncurkan notifikasi.

Mungkin @hobarrera dapat memberi tahu Anda lebih banyak bahwa dia berpartisipasi dalam utas.

Maaf, tidak banyak lagi yang bisa saya tambahkan.

Patch yang melakukan blacklist itu sendiri ada di sini . C++ saya tidak cukup baik untuk ditindaklanjuti, tetapi mungkin Anda dapat menemukan sesuatu yang relevan.

Sebenarnya, sepertinya panggilan GetCapabilities dilakukan saat meluncurkan chrome, bukan saat menampilkan notifikasi:

$ dbus-monitor path=/org/freedesktop/Notifications                                            
signal time=1505773000.276594 sender=org.freedesktop.DBus -> destination=:1.1082 serial=2 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameAcquired
   string ":1.1082"                            
signal time=1505773000.276608 sender=org.freedesktop.DBus -> destination=:1.1082 serial=4 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameLost
   string ":1.1082"                            
method call time=1505773003.220341 sender=:1.1086 -> destination=org.freedesktop.Notifications serial=3 path=/org/freedesktop/Notifications; interface=org.freedesktop.Notifications; member=GetCapabilities

Rilis stabil terbaru dari dunst mengembalikan ini: ['actions', 'body', 'body-hyperlinks', 'body-markup'] .

Tunggu, jadi kalian mengatakan bahwa notifikasi yang diposting oleh chrome _seharusnya_ tidak ditampilkan melalui dunst?
Karena mereka melakukannya untukku.

Dua entri yang dimulai dengan # adalah tindakan dan tidak melakukan apa pun.
Juga, ikon selalu merupakan ikon info umum.

2017-09-20-091531_1920x1080_scrot

ps itu chrome 61 tetapi telah berfungsi setiap sejak google memperkenalkan pemberitahuan asli di linux.

@JesseFarebro Versi apa yang Anda jalankan, dapatkah Anda memverifikasi bahwa Anda menggunakan yang mendukung pemberitahuan asli?

@Tadly Bisakah Anda memberikan dump dbus-monitor yang dimulai dengan chrome tertutup dan menerima pemberitahuan? Hanya untuk mengetahui bagaimana chrome berperilaku dari peluncuran hingga pengiriman dan tindakan notifikasi.

Hal ikon mungkin terkait dengan #339 jika Anda menggunakan stable terbaru.

@Tadly bisakah Anda juga memberikan pengaturan flag chrome://flags/#enable-native-notifications ?

@tsipinakis jika Anda memberi tahu saya caranya, tentu. Tidak pernah menggunakan alat dbus apa pun, saya juga tidak pernah bekerja dengan dbus itu sendiri. Akan menghemat banyak waktu saya :)

Juga, ikon umumnya berfungsi. Chrome adalah satu-satunya yang saya perhatikan tidak melakukannya (saya tidak mendapatkan banyak notifikasi di linux)

@bebehei chrome://flags/#enable-native-notifications diaktifkan. Saya ingat melakukan itu sekarang setelah Anda menyebutkannya :)

jika Anda memberi tahu saya caranya, tentu saja

Tutup saja chrome sepenuhnya, jalankan dbus-monitor di terminal dan kemudian buka chrome dan kirim pemberitahuan darinya.

@tsipinakis Tidak tahu di mana lagi harus meletakkannya tapi ini dia... https://Pastebin.com/uS6bJn4q

@bebehei chrome://flags/#enable-native-notifications diaktifkan. Saya ingat melakukan itu sekarang setelah Anda menyebutkannya :)

Jadi itulah alasannya. Bisakah Anda menguji, bahwa "default" tidak menampilkan pemberitahuan?

@tsipinakis Bagi saya, ini terlihat seperti bug implementasi chrome. dunst menyediakan semua batas yang diperlukan dan sepertinya chrome berperilaku salah dalam perilaku "default" -nya.

@bebehei Bisa konfirmasi. Menyetelnya kembali ke default memberi saya notifikasi chrome lagi.

@tsipinakis Menjalankan Chrome 61, versi terbaru. Saya mengaktifkan #enable-native-notifications dan ketika saya menjalankan dbus-monitor saat meluncurkan chrome, tidak ada pertanyaan ke dbus untuk kemampuan notifikasi sama sekali. Menjalankan dunst terbaru dari master dan diverifikasi notify-send berfungsi seperti yang diharapkan dengan kueri dbus yang benar.

Ada lagi yang bisa Anda sarankan?

sepertinya chrome berperilaku salah dalam perilaku "default" -nya.

Komentar dari sumber kromium stabil terakhir:

// Selection of the implementation works as follows:
//   - Android always uses the NativeNotificationDisplayService.
//   - Mac uses the NativeNotificationDisplayService by default but
//     can revert to MessageCenterDisplayService via
//     chrome://flags#enable-native-notifications or Finch
//   - Linux uses MessageCenterDisplayService by default but can switch
//     to NativeNotificationDisplayService via
//     chrome://flags#enable-native-notifications
//   - All other platforms always use the MessageCenterDisplayService.

Jadi seperti yang Anda lihat, perilaku ini disengaja, sementara Mac menggunakan pemberitahuan asli untuk "Default", Linux tidak dan memerlukan tanda 😞.


Hal ikon mungkin terkait dengan #339 jika Anda menggunakan stable terbaru.

Pada master terbaru, ikon masih tidak muncul saat notifikasi dikirim oleh chromium (mis. oleh situs web ini ). Seperti yang telah disebutkan, gambar hadir saat pemberitahuan dikirim oleh aplikasi lain, jadi itu pasti ada hubungannya dengan kromium.


@JesseFarebro Saya perhatikan bahwa jika saya menjalankan chromium --enable-native-notifications maka notifikasi asli tidak diaktifkan, tetapi jika disetel #enable-native-notifications ke Enabled di chrome://flags , maka notifikasi asli mulai berfungsi . Tidak yakin mengapa, flag lain tampaknya berfungsi bahkan ketika diteruskan sebagai argumen CLI. Cobalah berbagai cara untuk mengatur bendera, mungkin salah satunya akan berhasil untuk Anda.

UPDATE: Saya menemukan bahwa ini adalah cara yang tepat untuk mengaktifkan flag ini melalui argumen CLI: chromium --enable-features=NativeNotifications

Bendera telah diaktifkan secara default dan akan dikirimkan dalam Chromium 64 .

Notifikasi menunjukkan ikon Chrome generik saat menggunakan 64.0.3278.0 (saluran dev).

Ups, buruk saya! Dengan master Dunst saat ini bahkan menampilkan ikon pemberitahuan khusus. (sebelumnya menggunakan 1.2.0) Semuanya bekerja dengan sempurna!

2017-12-07-134321_708x319_scrot

@slokhorst Terima kasih telah memberi tahu kami. Karena fitur ini sekarang dikirim ke bawah aliran dan akan dirilis pada akhir Januari, saya akan menutup masalah ini.

Ikon yang hilang mungkin terkait dengan #447. Saya dapat mengatakan dengan pasti, bahwa rilis dunst baru dikirim sebelum chromium.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat

Masalah terkait

atomheartother picture atomheartother  ·  6Komentar

wpovell picture wpovell  ·  5Komentar

ahjstone picture ahjstone  ·  4Komentar

progandy picture progandy  ·  4Komentar

chronus7 picture chronus7  ·  5Komentar