Eto: рдЯреНрд░реЗ рдЖрдЗрдХрди рдирд┐рдпрдВрддреНрд░рдг рдЬреЛрдбрд╝реЗрдВ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 7 рдорд╛рд░реНрдЪ 2015  ┬╖  33рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: picoe/Eto

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдбрдмреНрд▓реНрдпреВрдкреАрдПрдл рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд┐рдпрд╛ рдЧрдпрд╛:
wpf

рд╕рднреА 33 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рд╣рд╛рдВ, рдиреЗрдЯ рдлреНрд░реЗрдорд╡рд░реНрдХ рдореЗрдВ NotifyIcon рдХреНрд▓рд╛рд╕ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕реЗ рдареАрдХ рд╕реЗ рдЗрд╕реНрддреЗрдорд╛рд▓ рдирд╣реАрдВ рдХрд░ рдкрд╛ рд░рд╣рд╛ рдерд╛ред

"рдпрджрд┐ рдЖрдк рдПрдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреЗрдбреАрдИ-рдбреЗрд╕реНрдХрдЯреЙрдк рдЪрд▓рд╛ рд░рд╣реЗ рд╣реИрдВ рддреЛ рд╕рд╛рдорд╛рдиреНрдп NotifyIcon рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ;
рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реВрдХреНрддрд┐ рдкреИрдирд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЬрд┐рд╕реЗ рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдХреНрд╖реЗрддреНрд░ рдПрдкреНрд▓реЗрдЯ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ"
http://www.codeproject.com/Articles/466805/AmberIndicator-a-systray-app-under-Linux

"рдУрдкрдирдПрд╕рдпреВрдПрд╕рдИ, рдлреЗрдбреЛрд░рд╛ рдФрд░ рдЙрдмрдВрдЯреВ рдкрд░, NotifyIcon рдкреНрд░рдпреЛрдЧ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдирд╣реАрдВ рд╣реИ"
https://bugzilla.novell.com/show_bug.cgi?id=590093

"NotifyIcon рд╕рд┐рд╕реНрдЯреНрд░реЗ рдореЗрдВ рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗрддрд╛ (OS рдкрд░ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЧрдпрд╛: Fedora, Arch. DE: MATE, Cinnamon)"
https://bugzilla.xamarin.com/show_bug.cgi?id=14976

рдбреАрдмреАрд╕ рдХреЗ рд╕рд╛рде рдХреБрдЫ рдФрд░ рдПрдХреАрдХреГрдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореВрд▓ рд╡рд┐рдЪрд╛рд░ рдпрд╣ рд╣реИ рдХрд┐ рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдПрдХ рдЖрдЗрдХрди рдмрдирд╛рдирд╛
рдПрдХ рд╕рдВрд╡рд╛рдж рдкреЙрдк рдЕрдк рдХрд░рдиреЗ рд╕реЗ рдХрдо рдкрд░реЗрд╢рд╛рди рд╣реИ (рд╕рдВрд╡рд╛рдж рд╡рд░реНрддрдорд╛рди рдХрд╛рд░реНрдп рдореЗрдВ рдмрд╛рдзрд╛ рдбрд╛рд▓рддрд╛ рд╣реИ, рдФрд░ рдЖрдЗрдХрди рдХреЛ рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдЕрдирджреЗрдЦрд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ)ред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЖрдЗрдХрди рдХреЛ рдиреЛрдЯрд┐рд╕ рдХрд░рдирд╛ рднреА рдХрдард┐рди рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЯреНрд░реЗ рдЖрдЗрдХрдиреЛрдВ рдХреЛ рдЫреЛрдЯреЗ рд╕рдВрджреЗрд╢ рдЧреБрдмреНрдмрд╛рд░реЗ рдкреЙрдк рдЕрдк рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рд╡рд╛рд▓реА рдПрдХ рд╕реБрд╡рд┐рдзрд╛ рд╣реИ (рдХреНрдпрд╛ рдЧреБрдмреНрдмрд╛рд░реЗ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рджреНрд╡рд╛рд░ рдХреИрдорд░реЗ рд╕реЗ рдЫрд╡рд┐рдпрд╛рдВ рдпрд╛ рд╡реАрдбрд┐рдпреЛ рд╕реНрдЯреНрд░реАрдо рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ? рдпрд╛ рдпрд╣ рдХреЗрд╡рд▓ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ?) рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЧреБрдмреНрдмрд╛рд░рд╛ рдХреБрдЫ рд╕рдордп рдмрд╛рдж рдЧрд╛рдпрдм рд╣реЛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП (рд▓реЗрдХрд┐рди рд░реАрдЧреЛ рдкреНрд░рдмрдВрдзрдХ рдЧрд▓рдд рдХрд░рддрд╛ рд╣реИ - рдЗрд╕рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЕрдкрдиреЗ рдЧреБрдмреНрдмрд╛рд░реЗ рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдмрдВрдж рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ)

_рд╡рд░реНрдХрд╕реНрдкреЗрд╕ рд╕реНрд╡рд┐рдЪрд░ рдПрдкреНрд▓реЗрдЯ_ рднреА рд╣реИ рдЬрд┐рд╕реЗ рдбреАрдмреАрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХреАрдХреГрдд рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ред рдЙрдкрдпреЛрдЧ рдкрд░рд┐рджреГрд╢реНрдп - рдПрдордбреАрдЖрдИ рдХрд╛рд░реНрдпрдХреНрд░рдо рдЬреЛ рд╡рд┐рднрд┐рдиреНрди рдХрд╛рд░реНрдпрдХреНрд╖реЗрддреНрд░реЛрдВ рдкрд░ рджрд╕реНрддрд╛рд╡реЗрдЬреЛрдВ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рд╕реЗрдЯ рдХреЛ рджрд┐рдЦрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдореИрдВрдиреЗ рдХрд╛рд░реНрдпрд╕реНрдерд╛рдиреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ рд╕реБрд╡рд┐рдзрд╛ рдЕрдиреБрд░реЛрдз рдмрдирд╛рдпрд╛ - https://github.com/picoe/Eto/issues/409

"рдЧрдиреЛрдо рд╕рд┐рд╕реНрдЯрдо рдЯреНрд░реЗ рдХреНрд╖реИрддрд┐рдЬ рдпрд╛ рд▓рдВрдмрд╡рдд рд╣реЛ рд╕рдХрддреА рд╣реИ"

"рд╕рд┐рд╕реНрдЯрдо рдЯреНрд░реЗ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЧреБрдмреНрдмрд╛рд░рд╛ рд╕рдВрджреЗрд╢реЛрдВ рдХрд╛ рд╕рдордиреНрд╡рдп рдХрд░рддреА рд╣реИ рдХрд┐ рдЙрдирдХреЗ рдкрд╛рд╕ рдПрдХ рд╕реБрд╕рдВрдЧрдд рд░реВрдк рдФрд░ рдЕрдиреБрднрд╡ рд╣реИ, рдФрд░ рдПрдХ рд╕рд╛рде рдХрдИ рдЧреБрдмреНрдмрд╛рд░реЗ рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдПред ... рд╕рд┐рд╕реНрдЯрдо рдЯреНрд░реЗ рдХреЛ рдПрдХ рд╕рд╛рде рдХрдИ рдЯреНрд░реЗ рдЖрдЗрдХрди рд╕реЗ рд╕рдВрджреЗрд╢реЛрдВ рдХреЗ рднрд╛рдЧ рдкреНрд░рд╛рдкреНрдд рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИрдВ рдЯреНрд░реЗ рдЖрдЗрдХрди рдХреА рд╡рд┐рдВрдбреЛ рдЖрдИрдбреА рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рдЗрдХрдЯреНрдард╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП... рдПрдХ рдЧреБрдмреНрдмрд╛рд░рд╛ рд╕рдВрджреЗрд╢ рдПрдХ рдЫреЛрдЯрд╛ рдЯреЗрдХреНрд╕реНрдЯ рд╕рдВрджреЗрд╢ рд╣реИред ... рд╕рдВрджреЗрд╢ рдореЗрдВ рдПрдХ рдЯрд╛рдЗрдордЖрдЙрдЯ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ; рдпрджрд┐ рдРрд╕рд╛ рд╣реИ, рддреЛ рдЯрд╛рдЗрдордЖрдЙрдЯ рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рд╕рдВрджреЗрд╢ рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред ... рдЯреНрд░реЗ рдЖрдЗрдХрди рдкрд╣рд▓реЗ рднреЗрдЬреЗ рдЧрдП рдЧреБрдмреНрдмрд╛рд░реЗ рд╕рдВрджреЗрд╢ рдХреЛ рд░рджреНрдж рдХрд░рдирд╛ рдЪрд╛рд╣ рд╕рдХрддрд╛ рд╣реИред"

рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдХреНрд╖реЗрддреНрд░ рдкрд░ рдореЛрдиреЛ рдХреА рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдЪрд┐рд╣реНрди

рдХреБрдЫ рдпреВрдЖрд░рдПрд▓:

  1. рдЧрдиреЛрдо рдорд╛рдирд╡ рдЗрдВрдЯрд░рдлреЗрд╕ рджрд┐рд╢рд╛рдирд┐рд░реНрджреЗрд╢ 2.2.3 рдбреЗрд╕реНрдХрдЯреЙрдк рдПрдХреАрдХрд░рдг
    https://developer.gnome.org/hig-book/unstable/desktop-notification-area.html.en
  2. рд╕рд┐рд╕реНрдЯрдо рдЯреНрд░реЗ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛
    http://standards.freedesktop.org/systemtray-spec/latest/
  3. рдЗрдВрдЯрд░-рдХреНрд▓рд╛рдЗрдВрдЯ рдХрдореНрдпреБрдирд┐рдХреЗрд╢рди рдХрдиреНрд╡реЗрдВрд╢рди рдореИрдиреБрдЕрд▓
    http://www.x.org/releases/X11R7.6/doc/xorg-docs/specs/ICCCM/icccm.html
  4. XEmbed рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛ (рдХреНрд░реЙрд╕-рдЯреВрд▓рдХрд┐рдЯ рд╡рд┐рдЬреЗрдЯ рдПрдореНрдмреЗрдбрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрдЯреЛрдХреЙрд▓)
    http://standards.freedesktop.org/xembed-spec/xembed-spec-latest.html
  5. рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рд╡рд┐рдВрдбреЛ рдкреНрд░рдмрдВрдзрдХ рд╕рдВрдХреЗрдд
    http://standards.freedesktop.org/wm-spec/wm-spec-latest.html
  6. System.Windows.Forms.NotifyIcon (MSDN)
    https://msdn.microsoft.com/ru-ru/library/system.windows.forms.notifyicon%28v=vs.110%29.aspx
  7. рдореЛрдиреЛ . рдореЗрдВ рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдЖрдЗрдХрди рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди
    https://github.com/mono/mono/blob/ef380e3712af86ef7f8064fab19400523c7510c0/mcs/class/System.Windows.Forms/System.Windows.Forms/NotifyIcon.cs#L38
  8. рдореЛрдиреЛ рдХреЗ NotifyIcon рдХреЗ рдЙрджрд╛рд╣рд░рдг
    https://github.com/mono/winforms/blob/master/notifyicon/swf-notifyicon.cs
    https://github.com/mono/winforms/blob/master/notifyicon/swf-balloon.cs
  9. KeePass NotifyIcon рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ:
    http://sourceforge.net/p/keepass/bugs/1212/
  10. рдЬреАрдЯреАрдХреЗ# рдЙрджрд╛рд╣рд░рдг
    http://www.mono-project.com/docs/gui/gtksharp/widgets/notification-icon/
    Gtk.StatusIcon
    http://askubuntu.com/questions/13197
    https://developer.gnome.org/gtk3/stable/GtkStatusIcon.html

рдЧрдиреЛрдо рдПрдЪрдЖрдИрдЬреА рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдкреИрдирд▓ рдореЗрдВ рдЖрдЗрдХрди рдЬреЛрдбрд╝рдиреЗ рдХреЗ 2 рддрд░реАрдХреЗ рд╣реИрдВ:
panels-and-area

рдПред рдкреИрдирд▓ рдПрдкреНрд▓реЗрдЯ (рдпреЗ "рд╡рд╛рдВрдбрд╛-рдж-рдлрд┐рд╢" рд╕реЗ рдмрд╛рдИрдВ рдУрд░ рд╣реИрдВ)
рдмреАред рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдХреНрд╖реЗрддреНрд░ рдЖрдЗрдХрди (рд╕реВрдЪрдирд╛ рдкреИрдирд▓ рд╕реНрд╡рдпрдВ рдкреИрдирд▓ рдПрдкреЗрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдкреИрдирд▓ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ)

рдореЛрдиреЛ X11 рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ "рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдХреНрд╖реЗрддреНрд░ рдЖрдЗрдХрди" рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ (рд╕реАрдзреЗ, рдмрд┐рдирд╛ Gtk# рдХреЗ)ред

рдореЛрдиреЛ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде XplatUI рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ
рд╕рд┐рд╕реНрдЯреНрд░реЗ рдЬреЛрдбрд╝реЗрдВ, рд╕рд┐рд╕реНрдЯреНрд░реЗ рд░рд┐рдореВрд╡, рд╕рд┐рд╕реНрдЯреНрд░реЗ рдЪреЗрдВрдЬ, рд╕рд┐рд╕реНрдЯреНрд░реЗ рдмреИрд▓реВрди, рд╕реЗрдВрдбрдореИрд╕реЗрдЬ, рд╕реЗрдЯрдлреЛрд░рдЧреНрд░рд╛рдЙрдВрдбрд╡рд┐рдВрдбреЛ
https://github.com/mono/mono/blob/ef380e3712af86ef7f8064fab19400523c7510c0/mcs/class/System.Windows.Forms/System.Windows.Forms/XplatUI.cs#L1106-L1128
рдХреЙрд▓ рд╕рджрд╕реНрдп рдХреЛ рдЕрдЧреНрд░реЗрд╖рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИрдВ

 static XplatUIDriver driver;

рдХрд┐рд╕ рдкреНрд░рдХрд╛рд░ рдХрд╛ рд╣реИ??? рдореЗрдЯ рдкрд░реНрдпрд╛рд╡рд░рдг рдХреЗ рд▓рд┐рдПред

рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдХреМрди рд╕рд╛ рдбреНрд░рд╛рдЗрд╡рд░ рдХрд┐рд╕ рдбреНрд░рд╛рдЗрд╡рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪреБрдирддрд╛ рд╣реИред рд╕рдВрднрд╡рддрдГ рдпрд╣ XplatUIX11 рд╣реИ, рдЬрд┐рд╕реЗ рдЗрд╕ рдкрдВрдХреНрддрд┐ рдореЗрдВ рдЪреБрдирд╛ рдЧрдпрд╛ рд╣реИ:
https://github.com/mono/mono/blob/b7a308f660de8174b64697a422abfc7315d07b8c/mcs/class/System.Windows.Forms/System.Windows.Forms/XplatUI.cs#L112

рдЯреНрд░реЗ рдЖрдЗрдХрди рдПрдХ рдЦрд┐рдбрд╝рдХреА рд╣реИ

рдЯреНрд░реЗ рдЖрдЗрдХрди рдПрдХ рд╡рд┐рдВрдбреЛ рд╣реИ рдЬрд┐рд╕реЗ рд╕рд┐рд╕реНрдЯрдо рдЯреНрд░реЗ рдореЗрдВ рдПрдореНрдмреЗрдб рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рд╣реИред

рдЖрдВрддрд░рд┐рдХ рд╡рд░реНрдЧ NotifyIconWindow : рдлреЙрд░реНрдо {... // рд▓рд╛рдЗрди 57
рдирд┐рдЬреА NotifyIconWindow рд╡рд┐рдВрдбреЛ; // рд▓рд╛рдЗрди 45
рд╡рд┐рдВрдбреЛ = рдирдпрд╛ NotifyIconWindow (рдпрд╣); // рд▓рд╛рдЗрди 389
XplatUI.SystrayAdd(window.Handle, text, icon, out tooltip); // рд▓рд╛рдЗрди 524

рдбреНрд░рд╛рдЗрдВрдЧ рдореЗрдВ рд╕рдорд╕реНрдпрд╛:
https://bugzilla.novell.com/show_bug.cgi?id=324237#c13
"64 рдмрд┐рдЯ рдорд╢реАрдиреЛрдВ рдкрд░, рдЖрдЗрдХрди рдЯреНрд░реЗ рдореЗрдВ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдирд╣реАрдВ рджрд┐рдЦрддрд╛ рд╣реИред"

рдкрд╛рд░рджрд░реНрд╢рд┐рддрд╛ рдХреА рд╕рдорд╕реНрдпрд╛ :
http://lists.ximian.com/pipermail/mono-winforms-list/2007-December/003173.html
рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдХрд╛рд░рдг рд▓рд╛рдЗрди 189 . рд╣реИ
(рдпрд╣ 8 рд╕рд╛рд▓ рдХреЗ рдЗрддрд┐рд╣рд╛рд╕ рдХреЗ рд╕рд╛рде рдареАрдХ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдмрдЧ рд╣реИ)
рд▓реЗрдХрд┐рди, рдореЗрд▓рд┐рдВрдЧ рд╕реВрдЪреА рд╕рдВрджреЗрд╢ рдореЗрдВ рд╕рдВрд▓рдЧреНрдирдХ рдореЗрдВ рдЖрд╡реЗрджрди рдХрд╛ рдЙрджрд╛рд╣рд░рдг рдХреЛрдб рд╣реЛрддрд╛ рд╣реИред
рдпрд╣ рд╕рднреА рджреЗрдЦреЗрдВ
http://standards.freedesktop.org/systemtray-spec/latest/ar01s06.html

рдкреБрди: рдбреНрд░рд╛рдЗрдВрдЧ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛:
http://mono.1490590.n4.nabble.com/NotifyIcon-and-ContextMenu-redrawing-issues-in-gnome-td1541474.html
https://bugzilla.novell.com/show_bug.cgi?id=324237
https://bugzilla.novell.com/show_bug.cgi?id=MONO81668

_NET_SYSTEM_TRAY_S

рдкреНрд░рдмрдВрдзрдХ рдЪрдпрди рдХреЗ рд▓рд┐рдП рд╕рдореНрдореЗрд▓рдиреЛрдВ рдХреЛ ICCCM ( http://www.x.org/releases/X11R7.6/doc/xorg-docs/specs/ICCCM/icccm.html#manager_selections ) рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рд╕рд┐рд╕реНрдЯрдо рдЯреНрд░реЗ рдПрдХ рдПрдХреНрд╕ рдХреНрд▓рд╛рдЗрдВрдЯ рд╣реИ рдЬреЛ рдХрд┐рд╕реА рджрд┐рдП рдЧрдП рд╕реНрдХреНрд░реАрди рдкрд░ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдкреНрд░рдмрдВрдзрдХ рдЪрдпрди рдХрд╛ рдорд╛рд▓рд┐рдХ рд╣реИред
рд╕рд┐рд╕реНрдЯрдо рдЯреНрд░реЗ рдХреЛ рдПрдХ рдЖрдЗрдХрди рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рдЗрдЪреНрдЫреБрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдкрд╣рд▓реЗ рд╕рд┐рд╕реНрдЯрдо рдЯреНрд░реЗ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП
рдкреНрд░рдмрдВрдзрдХ рдЪрдпрди рдХреЗ рд╕реНрд╡рд╛рдореА рд╡рд┐рдВрдбреЛ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рдХреЗред
рдпрджрд┐ рдкреНрд░рдмрдВрдзрдХ рдЪрдпрди рдХрд╛ рдХреЛрдИ рд╕реНрд╡рд╛рдореА рдирд╣реАрдВ рд╣реИ, рддреЛ рдХреНрд▓рд╛рдЗрдВрдЯ рд╕рд┐рд╕реНрдЯрдо рдЯреНрд░реЗ рдХреЗ рдкреНрд░рдХрдЯ рд╣реЛрдиреЗ рдкрд░ рдЕрдзрд┐рд╕реВрдЪрд┐рдд рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП ICCCM (рдПрдХ MANAGER рдХреНрд▓рд╛рдЗрдВрдЯ рд╕рдВрджреЗрд╢ рджреЗрдЦрдирд╛) рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЪрдпрди рд╕реНрд╡рд╛рдореА рд╡рд┐рдВрдбреЛ рд╕рд┐рд╕реНрдЯрдо рдЯреНрд░реЗ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХреА рдЧрдИ рдХрд┐рд╕реА рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛-рджреГрд╢реНрдпрдорд╛рди рд╡рд┐рдВрдбреЛ рдХреЗ рд╕рдорд╛рди рдирд╣реАрдВ рд╣реЛрдЧреА (рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ - рдкреНрд░рдмрдВрдзрдХ рдЪрдпрди рд╢рд╛рдпрдж рд╡рд╣реА рд╡рд┐рдВрдбреЛ рдирд╣реАрдВ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕рд┐рд╕реНрдЯрдо рдЯреНрд░реЗ рдЖрдЗрдХрди рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ), рдХреНрдпреЛрдВрдХрд┐ рдЪрдпрди рд╕реНрд╡рд╛рдореА рд╡рд┐рдВрдбреЛ рдкреНрд░рдмрдВрдзрдХ рдЪрдпрди рдЦреЛ рдЬрд╛рдиреЗ рдкрд░ рдирд╖реНрдЯ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рд╕рд┐рд╕реНрдЯрдо рдЯреНрд░реЗ рдХреЛ _NET_SYSTEM_TRAY_Sn тАЛтАЛрдирд╛рдордХ рдкреНрд░рдмрдВрдзрдХ рдЪрдпрди рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, n рдХреЛ рдЙрд╕ рд╕реНрдХреНрд░реАрди рдирдВрдмрд░ рд╕реЗ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдЬрд┐рд╕реЗ рдЯреНрд░реЗ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреА рд╣реИ:

  • https://github.com/mono/mono/blob/b7a308f660de8174b64697a422abfc7315d07b8c/mcs/class/System.Windows.Forms/System.Windows.Forms/XplatUIX11.cs#L729

XGrabServer(DisplayHandle); SystrayMgrWindow = XGetSelectionOwner(DisplayHandle, _NET_SYSTEM_TRAY_S); XUngrabServer(DisplayHandle); XFlush(DisplayHandle);

  • https://github.com/mono/mono/blob/b7a308f660de8174b64697a422abfc7315d07b8c/mcs/class/System.Windows.Forms/System.Windows.Forms.X11Internal/X11Display.cs#L345

Xlib.XGrabServer (display); IntPtr SystrayMgrWindow = Xlib.XGetSelectionOwner (display, Atoms._NET_SYSTEM_TRAY_S); Xlib.XUngrabServer (display);

SYSTEM_TRAY_REQUEST_DOCK

рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рд░реВрдк рдпрд╣рд╛рдБ рд╡рд░реНрдгрд┐рдд рд╣реИ:
http://standards.freedesktop.org/systemtray-spec/latest/ar01s04.html
рдХреНрдпрд╛ Xlib рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛ X рд╕рдВрджреЗрд╢ рднреЗрдЬрдирд╛ рд╕рдВрднрд╡ рд╣реИ рдФрд░ рдпрд╣ XCB рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛ рд░реЗрдЦрд╛рдВрдХрд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реИ?
рдпрд╛рдиреА рд╕реАрдзреЗ рд╕реА # рдХреЛрдб рд╕реЗ "рддрд╛рд░" рддрдХ?

https://github.com/mono/mono/blob/b7a308f660de8174b64697a422abfc7315d07b8c/mcs/class/System.Windows.Forms/System.Windows.Forms/XplatUIX11.cs#L6259

    SendNetClientMessage(SystrayMgrWindow, _NET_SYSTEM_TRAY_OPCODE, IntPtr.Zero, (IntPtr)SystrayRequest.SYSTEM_TRAY_REQUEST_DOCK, hwnd.whole_window);

https://github.com/mono/mono/blob/b7a308f660de8174b64697a422abfc7315d07b8c/mcs/class/System.Windows.Forms/System.Windows.Forms.X11Internal/X11Display.cs#L413-L417

    SendNetClientMessage (SystrayMgrWindow,
        Atoms._NET_SYSTEM_TRAY_OPCODE,
        IntPtr.Zero,
        (IntPtr)SystrayRequest.SYSTEM_TRAY_REQUEST_DOCK,
        hwnd.WholeWindow);

рдкреИрдирд▓ рдПрдкреНрд▓реЗрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрди

https://en.wikipedia.org/wiki/D-Bus
D-BUS рдПрдХ рдЗрдВрдЯрд░рдкреНрд░реЛрд╕реЗрд╕ рдХрдореНрдпреБрдирд┐рдХреЗрд╢рди (IPC) рд╕рд┐рд╕реНрдЯрдо рд╣реИ, рдЬреЛ рдПрдХ рд╕рд░рд▓ рд▓реЗрдХрд┐рди рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рддрдВрддреНрд░ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдПрдХ рджреВрд╕рд░реЗ рд╕реЗ рдмрд╛рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд╕реВрдЪрдирд╛рдУрдВ рдХрд╛ рд╕рдВрдЪрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
"рдбреА-рдмрд╕ рдПрдХ рдПрдХреАрдХреГрдд рдФрд░ рдЕрдЬреНрдЮреЗрдпрд╡рд╛рджреА рдЖрдИрдкреАрд╕реА рддрдВрддреНрд░ рдмрди рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рджреЛрдиреЛрдВ рдбреЗрд╕реНрдХрдЯреЙрдк (рдЧрдиреЛрдо рдФрд░ рдХреЗрдбреАрдИ) рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ"
_рд▓реЗрдХрд┐рди, рд▓реЗрдХрд┐рди, рд▓реЗрдХрд┐рди - ICCCM рднреА рдЗрдВрдЯрд░рдкреНрд░реЛрд╕реЗрд╕, рдПрдХреАрдХреГрдд рдФрд░ рдЕрдЬреНрдЮреЗрдпрд╡рд╛рджреА рд╣реИ..._
рдХрд░реНрдиреЗрд▓ рдЗрд╡реЗрдВрдЯ рд▓реЗрдпрд░ рджреЗрдЦреЗрдВ - DBus рдкреВрд░реЗ рд╕рд┐рд╕реНрдЯрдо рджреНрд╡рд╛рд░рд╛ рд╕рд╛рдЭрд╛ рдХреА рдЧрдИ рдПрдХ рд╕рд┐рдВрдЧрд▓ рдмрд╕, рдХрд░реНрдиреЗрд▓ рд╕реЗ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рд╕рдмрд╕реЗ рдКрдкрд░ рдХреЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рддрдХ рдШрдЯрдирд╛рдУрдВ рдХреЗ рдкреНрд░рд╕рд╛рд░ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИред
рдбрд┐рд╕реНрдХ рдкреВрд░реНрдг рдФрд░ рдкреНрд░рд┐рдВрдЯрд░ рдХрддрд╛рд░ рдЦрд╛рд▓реА рдпрд╛ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдХрдо рдмреИрдЯрд░реА рдкрд╛рд╡рд░ рдЬреИрд╕реА рдШрдЯрдирд╛рдПрдВ рд╕рд┐рд╕реНрдЯрдо рд╕реНрдЯреИрдХ рдХреЛ рдмреБрд▓рдмреБрд▓рд╛ рдХрд░ рд╕рдХрддреА рд╣реИрдВ, рдЬреЛ рднреА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкрд░рд╡рд╛рд╣ рдХрд░рддрд╛ рд╣реИ, рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗрдиреЗ рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд░рдиреЗ рдХреА рдЗрдЬрд╛рдЬрдд рджреЗрддрд╛ рд╣реИред

  1. рдбреА-рдмрд╕ рд╡рд┐рдирд┐рд░реНрджреЗрд╢
    http://dbus.freedesktop.org/doc/dbus-specification.html

  2. рд╕реА # рдХреЗ рд▓рд┐рдП рдбреАрдмреАрд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА (рдПрдХ рд░реИрдкрд░ рдирд╣реАрдВ, рд╢реБрджреНрдз рд╕реА #)
    https://github.com/mono/dbus-sharp

  3. рдкреИрдирд▓ рдПрдкреНрд▓реЗрдЯ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕рдВрджрд░реНрдн рдореИрдиреБрдЕрд▓
    https://developer.gnome.org/panel-applet/stable/

  4. GnomeGoal рд╕рднреА Gnome рдПрдкреНрд▓реЗрдЯреНрд╕ рдХреЛ рдирдП DBUS api (рдмреЛрдиреЛрдмреЛ рд╕реЗ) рдореЗрдВ рдкреЛрд░реНрдЯ рдХрд░рдирд╛ рд╣реИред
    https://wiki.gnome.org/Initiatives/GnomeGoals/AppletsDbusMigration

рдХреНрдпрд╛ рдЙрдмрдВрдЯреВ-рдкреИрдирд▓ рдПрдкреНрд▓реЗрдЯ рдЬреИрд╕реА рдХреЛрдИ рдЪреАрдЬ рд╣реИ?

рд╕реВрдХреНрддрд┐- рдмрдирд╛рдо рдПрдХрддрд╛-рдкреИрдирд▓ (рдПрдкреНрд▓реЗрдЯ) рд╕рдВрдЧрддрддрд╛
http://ubuntu.itsprite.com/ubuntugnome-vs-unity-panel-applet-compatibility/

рдЖрд╡реЗрджрди рд╕рдВрдХреЗрддрдХ
( рдЖрдпрддрд╛рдирд╛ , рдПрдХрддрд╛, рдЙрдмрдВрдЯреВ)

рд╕реНрдерд┐рддрд┐ рд╕реВрдЪрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛ (SNI, org.freedesktop.StatusNotifierItem)
http://www.freedesktop.org/wiki/Specifications/StatusNotifierItem/
"рдпрд╣ рдлреНрд░реАрдбреЗрд╕реНрдХрдЯреЙрдк рд╕рд┐рд╕реНрдЯрдо рдЯреНрд░реЗ рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдХреЗ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХреЗ рд▓рд┐рдП рдЕрднрд┐рдкреНрд░реЗрдд рд╣реИ ...
рдпрд╣ рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдХрдо рд╕реЗ рдХрдо рдХреЗрдбреАрдИ рдкреНрд▓рд╛рдЬреНрдорд╛ рдФрд░ рдПрдХрддрд╛ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ"

  1. рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдкреИрдирд▓ рд╕рдВрдХреЗрддрдХ
    https://wiki.ubuntu.com/DesktopExperienceTeam/ApplicationIndicators

libappindicator рд╕рдВрджрд░реНрдн рдореИрдиреБрдЕрд▓
http://developer.ubuntu.com/api/devel/ubuntu-12.04/c/appindicator/

рд╕реВрдХреНрддрд┐ рдкреИрдирд▓ рдореЗрдВ рдЕрдпрд╛рддрд╛рдирд╛ рд╕рдВрдХреЗрддрдХ:
https://launchpad.net/indicator-applet

MATE рдХреЗ рд▓рд┐рдП рдПрдХ рдкреИрдирд▓ рдПрдкреНрд▓реЗрдЯ рд╣реИ:
https://github.com/mate-desktop/mate-indicator-applet
рдкреИрдирд▓ рдореЗрдВ рд▓рдЧрд╛рддрд╛рд░ рд╡рд┐рднрд┐рдиреНрди рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рд╕реЗ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред

рдПрдХрддрд╛ рдФрд░ рдореЛрдиреЛ рд╕реА # рдЙрджрд╛рд╣рд░рдг рдХреЗ рд╕рд╛рде рдЙрдмрдВрдЯреВ рдореЗрдВ рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдЖрдЗрдХрди:
http://www.arvydas.co.uk/2012/08/notification-icon-in-ubuntu-with-unity-and-mono-c-sharp-example/

рдкреНрд░рддреНрдпреЗрдХ рд╕рдВрдХреЗрддрдХ /usr/share/unity/indicators рдореЗрдВ рдПрдХ рдЫреЛрдЯреА рдлрд╝рд╛рдЗрд▓ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ DBus рдкрд░ рдХрд╣рд╛рдБ рдЦреЛрдЬрдирд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдкреИрдирд▓ рдореЗрдВ рдХреИрд╕реЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╕рдВрдХреЗрддрдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╕рддреНрд░ init рдбреЗрдореЙрди рджреНрд╡рд╛рд░рд╛ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдбреЗрд╕реНрдХрдЯреЙрдк рд╕реВрдЪрдирд╛рдПрдВ рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛
http://www.galago-project.org/specs/notification/0.9/index.html
"рдЫрд╡рд┐рдпреЛрдВ рдХреЛ рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдореЗрдВ рд░рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╕рд╛рд╡рдзрд╛рдиреА рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЫрд╡рд┐ рдХрднреА рднреА 200x100 рд╕реЗ рдЕрдзрд┐рдХ рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдЗрд╕реЗ рдЕрдзрд┐рдХрддрдо рдЖрдХрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред"

https://wiki.ubuntu.com/MessagingMenu/

рдореЗрдиреВ рдкреИрдирд▓ рдХреЛ рдкрд╛рд░рджрд░реНрд╢реА рдХреИрд╕реЗ рдмрдирд╛рдПрдВ:
http://www.linuxandlife.com/2012/05/ubuntu-panel-transparent.html

"рд╕рдВрдХреЗрддрдХреЛрдВ рдореЗрдВ рдкреИрдирд▓ рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рд▓реЗрдмрд▓ рдпрд╛ рдПрдХ рдЖрдЗрдХрди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
рдХреЛрдИ рдХрд╕реНрдЯрдо рдкреНрд░рддрд┐рдкрд╛рджрди рдпрд╛ рдЕрдиреНрдп рд╡рд┐рдЬреЗрдЯ рдирд╣реАрдВ"
рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕рдВрдХреЗрддрдХ 22 рдкрд┐рдХреНрд╕рд▓ рдХреЗ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдЖрдЗрдХрди рдЖрдХрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред
https://bugs.launchpad.net/ubuntu/+source/indicator-application/+bug/533439
"Libindicator API рдЖрдЗрдХрди рдХрд╛ рдЖрдХрд╛рд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ рдФрд░
рдЗрд╕рд▓рд┐рдП рдкрд░рдВрдкрд░рд╛ рдпрд╣ рд╣реИ рдХрд┐ рд╕рднреА рдЖрдЗрдХрди рдЖрдХрд╛рд░ 22px рд╣реИрдВред"

рдЪрд▓ рд░рд╣реЗ рд╕рдВрдХреЗрддрдХ рдПрдкреНрд▓реЗрдЯ рдХреЗ рд╕реНрдерд┐рддрд┐ рдЖрдЗрдХрди рдХреЛ рдмрджрд▓реЗрдВ рдФрд░ рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ
http://www.helptouser.com/ubuntu/11162-is-it-possible-to-alter-and-update-the-status-icon-of-a-running-indicator-applet.html

рд╕рд┐рд╕реНрдЯрдо рдЯреНрд░реЗ рд╡рд┐рдЬреЗрдЯ (рдкреНрд▓рд╛рдЬреНрдорд╛/рдХреЗрдбреАрдИ)

  1. рд╕рд┐рд╕реНрдЯрдо рдЯреНрд░реЗ рд╡рд┐рдЬреЗрдЯ рд╕рд┐рд╕реНрдЯрдо рдХреА рдЬрд╛рдирдХрд╛рд░реА, рд╕реВрдЪрдирд╛рдПрдВ рдФрд░ рд╕реЗрд╡рд╛рдПрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ
    https://userbase.kde.org/Plasma/SystemTray

xembed рдЖрдЗрдЯрдо 22├Ч22 рдкрд┐рдХреНрд╕реЗрд▓ рдореЗрдВ рд╣рд╛рд░реНрдб рдХреЛрдбрд┐рдд рд╣реЛрддреЗ рд╣реИрдВ

рд╕реНрдерд┐рддрд┐ рд╕реВрдЪрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛, KStatusNotifierItem рд╡рд░реНрдЧ
https://github.com/lxde/lxqt/issues/359

рдорд╛рд░реНрдЪ 2014-03-04, рдкреНрд▓рд╛рдЬреНрдорд╛ рдореЗрдВ рд╕рд┐рд╕реНрдЯрдо рдЯреНрд░реЗ рдЕрдЧрд▓рд╛
http://blog.martin-graesslin.com/blog/2014/03/system-tray-in-plasma-next/

"рд╣рдо рдкреНрд▓рд╛рдЬрд╝реНрдорд╛ рдиреЗрдХреНрд╕реНрдЯ рдХреЗ рд▓рд┐рдП рд╡рд┐рд░рд╛рд╕рдд (xembed) рдкреНрд░рдгрд╛рд▓реА рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдореЗрдВ рд╕рдордп рдирд╣реАрдВ рд▓рдЧрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ"
"рдЕрдзрд┐рдХрд╛рдВрд╢ GTK+ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рднреА рдПрдХрддрд╛ рдПрдХреАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдПрдкрд┐рдВрдбрд┐рдХреЗрдЯрд░ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╡реЗ рд╡реИрд╕реЗ рд╣реА рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ рдЬреИрд╕реЗ рд╣рдо рдЪрд╛рд╣рддреЗ рд╣реИрдВ"
"рд╣рд╛рд▓рд╛рдВрдХрд┐ рдлреАрдЪрд░ рдХреЗ рдареАрдХ рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ Qt 5.4 рддрдХ рдХрд╛ рд╕рдордп рд▓рдЧреЗрдЧрд╛ред"
"рдпрд╣ рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдРрд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╣реИрдВ рдЬреЛ рдЕрднреА рднреА рд▓реАрдЧреЗрд╕реА рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рдЯреВрдЯ рдЬрд╛рдПрдЧрд╛ред"

рдЧрдиреЛрдо рд╢реИрд▓ рд╕рдВрджреЗрд╢ рдЯреНрд░реЗ

https://wiki.gnome.org/Design/OS/MessageTray
"рд╕рдВрджреЗрд╢ рдЯреНрд░реЗ рдбрд┐рдЬрд╝рд╛рдЗрди рдкреГрд╖реНрда рдкреБрд░рд╛рдиреЗ рд╣реИрдВ, рдФрд░ рдХреЗрд╡рд▓ рд╕рдВрджрд░реНрдн рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдП рд░рдЦрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред рдЕрджреНрдпрддрд┐рдд рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЗ рд▓рд┐рдП, рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдкреГрд╖реНрда рджреЗрдЦреЗрдВ"
https://wiki.gnome.org/Design/OS/Notifications

Ubuntu рдХреЗ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ Gnome 3 рдХреЗ рд▓рд┐рдП 3-rd рдкрд╛рд░реНрдЯреА "рдЗрдВрдбрд┐рдХреЗрдЯрд░ рдПрдкреНрд▓реЗрдЯ" рднреА рд╣реИ:
https://code.launchpad.net/~jconti/indicator-applet/gnome3

http://live.gnome.org/GnomeShell/Extensions

рдЧрдиреЛрдо рд╢реЗрд▓ рдмрд╣реБрдд рд╕реАрдорд┐рдд рдЕрдиреБрдХреВрд▓рди (рдбрд┐рдЬрд╝рд╛рдЗрди рджреНрд╡рд╛рд░рд╛) рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдФрд░ рд╕рд┐рд╕реНрдЯрдо рдЯреНрд░реЗ рдЙрди рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдирд╣реАрдВ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рддрдереНрдп рдХрд┐ рдпрд╣ рдЕрд╕реНрддрд┐рддреНрд╡ рдореЗрдВ рд╣реИ, рдХреЗрд╡рд▓ рдХреБрдЫ рд╡рд┐рд░рд╛рд╕рдд рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИред

"рд╕рд┐рд╕реНрдЯреНрд░реЗ рдЖрдЗрдХрдиреЛрдВ рдХреЛ рд╡реНрдпрд╛рдХреБрд▓рддрд╛ рдХреЗ рд╕рд╛рдорд╛рдиреНрдп рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВ рджреЗрдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рджреЗрд╡рддрд╛ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред"

"рдЕрдЧрд░ рд╣рдо рд╕рдорд╕реНрдпрд╛ рд╕реЗ рдареАрдХ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рд╣рдореЗрдВ рдПрдХ рдирдпрд╛ рдПрдкреАрдЖрдИ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдФрд░ рдЗрд╕реЗ рдкреЛрд░реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд╕рдордп рджреЗрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╣рдо рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдпреЛрдЬрдирд╛ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВред"

http://worldofgnome.org/shell-new-notifications-goodbye-message-tray/
2014-01-05, "рдЧрдиреЛрдо рдбреЗрд╡рд▓рдкрд░реНрд╕ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдирдИ рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдкреНрд░рдгрд╛рд▓реА рдХреА рджрд┐рд╢рд╛ рдореЗрдВ рдХреБрдЫ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрджрд▓рд╛рд╡реЛрдВ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВред"

https://blogs.gnome.org/aday/2014/06/18/a-notifications-update/
рдлреЗрдбреЛрд░рд╛ 22 (рдЧрдиреЛрдо 3.16) рдиреЗ рд╕реНрдХреНрд░реАрди рдХреЗ рдирд┐рдЪрд▓реЗ-рдмрд╛рдПрдВ рдХреЛрдиреЗ рдореЗрдВ рдЗрд╕ рд╡рд┐рд╕реНрддрд╛рд░ рдпреЛрдЧреНрдп рд▓реАрдЧреЗрд╕реА рдЖрдЗрдХрди рдмрд╛рд░ рдХреЛ рдкреЗрд╢ рдХрд┐рдпрд╛:

рд╡рд┐рд░рд╛рд╕рддреА "рдЯреНрд░реЗ" рдЪрд┐рд╣реНрди рдПрдХ "рджрд░рд╛рдЬ" рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрддреЗ рд╣реИрдВ рдЬреЛ рд╕реНрдХреНрд░реАрди рдХреЗ рдирд┐рдЪрд▓реЗ рдмрд╛рдПрдБ рдХреЛрдиреЗ рдореЗрдВ рдСрдЯреЛрд╣рд╛рдЗрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред
рд╕реВрдХреНрддрд┐ 3.16 рд░рд┐рд▓реАрдЬ рдиреЛрдЯ

https://github.com/gnome-design-team/gnome-mockups/tree/master/notifications

рд╕реВрдХреНрддрд┐-рдбрд┐рдЬрд╝рд╛рдЗрди рдпрд╛ #рд╕реВрдХреНрддрд┐-рдЦреЛрд▓ рдЖрдИрдЖрд░рд╕реА рдЪреИрдирд▓

https://developer.gnome.org/notification-spec/

рдкреНрд░рд╛рдердорд┐рдХ рдУрдПрд╕ рд╕реЗ рд╡рд┐рдВрдЧрдкреИрдирд▓

рд╕реНрдЯрд╛рдЗрд▓рд┐рд╢ рд╢реАрд░реНрд╖ рдкреИрдирд▓ рдЬреЛ рд╕рдВрдХреЗрддрдХ рд░рдЦрддрд╛ рд╣реИ рдФрд░ рдПрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЙрдиреНрдЪрд░ рдХреЛ рдЬрдиреНрдо рджреЗрддрд╛ рд╣реИ

рдкреНрд░рд╛рдердорд┐рдХ OS рдЕрдпрд╛рддрдирд╛ рд╕рдВрдХреЗрддрдХреЛрдВ рдХреЛ рд╣рдЯрд╛ рд░рд╣рд╛ рд╣реИ:
https://github.com/dyson/indicator-workspaces/issues/3

рдЗрди рдирдП рд╕рдВрдХреЗрддрдХреЛрдВ рдореЗрдВ рдереЛрдбрд╝реА рдЕрдзрд┐рдХ рд╕реНрд╡рддрдВрддреНрд░рддрд╛ рд╣реИ (рдЖрдк рдПрдХ рдореЗрдиреВ рдбрд┐рдЬрд╝рд╛рдЗрди рддрдХ рд╣реА рд╕реАрдорд┐рдд рдирд╣реАрдВ рд╣реИрдВ, рдЕрдм рдЙрдирдореЗрдВ рдХреЛрдИ рднреА рд╡рд┐рдЬреЗрдЯ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ), рдЗрд╕рд▓рд┐рдП рдпрд╣ рдЖрдкрдХреЗ рд▓рд┐рдП рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред ;) рдЕрдпрд╛рддрдирд╛ рд╕рдВрдХреЗрддрдХ рдЕрднреА рднреА рддрдХрдиреАрдХреА рд░реВрдк рд╕реЗ рд╕рдорд░реНрдерд┐рдд рд╣реЛрдВрдЧреЗ

рдкреИрдирд▓ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╡рд░реНрдХрд░рд╛рд╡ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╣реИред
рдЗрд╕рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рдХрд╛рд░ рдХреЗ рдкреИрдирд▓ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд░реНрдЧ рд╣реИред
рд╡рд╣рд╛рдБ https://github.com/rcaelers/workrave/tree/7cb9aef971f21c9a473146f9b72693b86a4a76f6/frontend/applets рд╣реИрдВ
"рджрд╛рд▓рдЪреАрдиреА", "рд╕рд╛рдорд╛рдиреНрдп", "рд╕реВрдХреНрддрд┐-рдЦреЛрд▓", "gnome2", "gnome3", "рд╕рдВрдХреЗрддрдХ", "рд╕рд╛рдереА", "win32", "xfce"

рдХреНрдпрд╛ рдХреЛрдИ рдореЗрд░реЗ рд╕рд░рд▓ рдкреНрд░рд╢реНрдиреЛрдВ рдХрд╛ рдЙрддреНрддрд░ рджреЗ рд╕рдХрддрд╛ рд╣реИ?

1) рдХреНрдпрд╛ рдЕрдм рд╣рдо Eto рдХреЗ рд╕рд╛рде рдЯреНрд░реЗ рдЖрдЗрдХреЙрди рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ?
2) рдХреМрди рд╕реЗ рдУрдПрд╕ рд╕рдорд░реНрдерд┐рдд рд╣реИрдВ?
3) рдореИрдВ рдЗрд╕реЗ рдХрд╣рд╛рдБ рдкрдврд╝ рд╕рдХрддрд╛ рд╣реВрдБ? рд╢рд╛рдпрдж рдХрдХреНрд╖рд╛ рдХрд╛ рдирд╛рдо?

рдмреБрд░реА рдЦрдмрд░, рдЕрднреА рднреА рдХреЛрдИ рд╕рдорд░реНрдерди рдирд╣реАрдВ, рдЕрдЪреНрдЫреА рдЦрдмрд░ рд╣реИ, рдореИрдВ рдЗрд╕реЗ рдЗрд╕ рд╕рдкреНрддрд╛рд╣ рдХреЗ рдЕрдВрдд рдореЗрдВ рд▓рд┐рдирдХреНрд╕ рдФрд░ рд╡рд┐рдВрдбреЛрдЬ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧреВ рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдерд╛ :)

рдмрд╣реБрдд рдХреВрд▓! :) рдХреНрдпрд╛ рдЕрдм рдХреЗрд╡рд▓ рдорд░реНрдЬ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ?

рдФрд░ рдореИрдХ рдУрдПрд╕?

рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рд╣рдореЗрдВ рдПрдВрдбреНрд░реЙрдЗрдб рдореЗрдВ рдЯреНрд░реЗ рдЕрдиреБрдХрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ :)

рдмрд╣реБрдд рдХреВрд▓! :) рдХреНрдпрд╛ рдЕрдм рдХреЗрд╡рд▓ рдорд░реНрдЬ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ?

рдореИрдВрдиреЗ рдЕрднреА рднреА рдЗрд╕ рдкрд░ рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ... рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдХрд░рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдФрд░ рдореБрдЭреЗ рдкрд╣рд▓реЗ рд╕реЗ #714 рдХрд░рдирд╛ рдерд╛ред

рдФрд░ рдореИрдХ рдУрдПрд╕?

рдореИрдХреЛрдЬрд╝ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рдФрд░ рдХреЛ рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рдореЗрд░реЗ рдкрд╛рд╕ рдХреЗрд╡рд▓ рдореИрдХреЛрдЬрд╝ рд╡рд░реНрдЪреБрдЕрд▓рдмреЙрдХреНрд╕ рдкрд░ рд╣реИ, рдЬреЛ рдирд░рдХ рдХреЗ рд░реВрдк рдореЗрдВ рдзреАрдорд╛ рд╣реИред

Linux Gtk рд╕рдВрд╕реНрдХрд░рдг рд▓рдЧрднрдЧ рдкреВрд░рд╛ рд╣реЛ рдЪреБрдХрд╛ рд╣реИ :D

indicator

рдЕрдЪреНрдЫрд╛ рдХрд╛рд░реНрдп! :)

рдХреНрдпрд╛ рдпрд╣ рд╕реАрдорд┐рдд рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде рдирд┐рдпрдорд┐рдд рд╡рд┐рдВрдбреЛ рдпрд╛ рдкреЙрдкрдЕрдк рдХреА рдЕрдиреБрдорддрд┐ рд╣реИ?

рдЕрдЪреНрдЫрд╛ рдХрд╛рд░реНрдп! :)

рдХреНрдпрд╛ рдпрд╣ рд╕реАрдорд┐рдд рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде рдирд┐рдпрдорд┐рдд рд╡рд┐рдВрдбреЛ рдпрд╛ рдкреЙрдкрдЕрдк рдХреА рдЕрдиреБрдорддрд┐ рд╣реИ?

рдЗрд╕реА рдкреНрд░рдХрд╛рд░ рд╕рдВрджрд░реНрдн рдореЗрдиреВ рдЧрдиреЛрдо рдкрд░ libappindicator рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рд╕рд╛рде рджрд┐рдЦрддрд╛ рд╣реИ :P

рдореЗрд░реЗ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдореМрдЬреВрдж рдЕрдЬреАрдм рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рдмрд┐рдирд╛ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ:

withoutextension

рдЗрд╕реА рдкреНрд░рдХрд╛рд░ рд╕рдВрджрд░реНрдн рдореЗрдиреВ рдЧрдиреЛрдо рдкрд░ libappindicator рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рд╕рд╛рде рджрд┐рдЦрддрд╛ рд╣реИ :P

рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореИрдВ рд╕рдордЭрддрд╛ рд╣реВрдВ ... рдореИрдВрдиреЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ рд╣реИрд▓реЛ рд╡рд░реНрд▓реНрдб рдХреЗ рдмрдЬрд╛рдп рдЫрд╡рд┐ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╕рд╛рдордЧреНрд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ рдпрд╛ рдирд╣реАрдВ? рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд╡рд┐рдВрдбреЛрдЬрд╝ рдореЗрдВ рд╣рдо рдРрд╕рд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдХреЗрд╡рд▓ рдЖрдЗрдХрди рд╡рд╛рд▓реЗ рдореЗрдиреВ рдЖрдЗрдЯрдо) .. рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдЕрдкрдиреА рд╡рд┐рдВрдбреЛ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдФрд░ рдЗрд╕реЗ рдЯреНрд░реЗ рдЖрдЗрдХрди рдпрд╛ рдорд╛рдЙрд╕ рдХреНрд▓рд┐рдХ рдХреЗ рдкрд╛рд╕ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рд╣рдореЗрдВ рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдЯреНрд░реЗ рдЖрдЗрдХрди (рдЬрд┐рд╕рдХрд╛ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛) рд╡рд┐рдВрдбреЛрдЬрд╝ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИред рдлреЙрд░реНрдо рдбрдмреНрд▓реНрдпреВрдкреАрдПрдл рдирд╣реАрдВ рд╣реИред

рдлрд┐рд░ рд╕реЗ... рдпрд╣ рдореЗрд░реЗ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдПрдХ рд╕рдВрджрд░реНрдн рдореЗрдиреВ рдЬреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ... рджреВрд╕рд░реЗ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдХреЛ рджреЗрдЦреЗрдВ, рдпрд╣ рдареАрдХ рд╡рд╣реА рдЪреАрдЬрд╝ рджрд┐рдЦрд╛ рд░рд╣рд╛ рд╣реИ, рд╕рд┐рд╡рд╛рдп рдореЗрд░реА рдереАрдо рдХреЗ рдЕрдХреНрд╖рдо рдХреЗ рднрд╛рдЧ рдХреЗред

@hardhub afaik, рдЖрдк Winforms (рдФрд░ macOS) рдХреЗ рд╕рд╛рде рдореЗрдиреВ рдЖрдЗрдЯрдо рдореЗрдВ рдХрд╕реНрдЯрдо рдирд┐рдпрдВрддреНрд░рдг рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВред рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдпрд╣ рдЬреАрдЯреАрдХреЗ # рдкрд░ рдХрд╛рдо рдХрд░реЗрдЧрд╛ рдпрд╛ рдирд╣реАрдВред

@cwensley рдореБрдЭреЗ рдмрд╕ рдЗрд╕ рдкрд░ рдПрдХ рдирдХрд╛рд░рд╛рддреНрдордХ рдмрд╛рдд рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХрд░рдиреА рд╣реИ, рдПрдкрд┐рдВрдбрд┐рдХреЗрдЯрд░ рдореЗрдореЛрд░реА рд╕реЗ рд▓реЛрдбрд┐рдВрдЧ рдЖрдЗрдХрди рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ ...

@cra0zy рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдмрд╣реБрдд рдмреЗрдХрд╛рд░ рд╣реИред рд╢рд╛рдпрдж рд╣рдо рдПрдХ рдЕрд╕реНрдерд╛рдпреА рдлрд╝рд╛рдЗрд▓ рдпрд╛ рдХреБрдЫ рдФрд░ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ ..

@cwensley ,

рдореЗрд░рд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ:
https://msdn.microsoft.com/en-us/library/system.windows.forms.notifyicon (v=vs.110).aspx
https://msdn.microsoft.com/en-us/library/system.windows.forms.menuitem (v=vs.110).aspx

рдЖрдк рд╡рд╣рд╛рдВ рдХреЗрд╡рд▓ рдЯреЗрдХреНрд╕реНрдЯ рдФрд░ рдЖрдЗрдХрди рдбрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ...

@cra0zy рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдмрд╣реБрдд рдмреЗрдХрд╛рд░ рд╣реИред рд╢рд╛рдпрдж рд╣рдо рдПрдХ рдЕрд╕реНрдерд╛рдпреА рдлрд╝рд╛рдЗрд▓ рдпрд╛ рдХреБрдЫ рдФрд░ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ ..

рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рд╣реА рдпрд╣реА рдХрд┐рдпрд╛ рд╣реИред

@ рд╣рд╛рд░реНрдбрд╣рдм рдЖрд╣ рдареАрдХ рд╣реИ, рдпрд╣ MenuItem рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рди рдХрд┐ ToolStripMenuItem .. рдЙрд╣ред рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ, рд╣рдо рдХреЗрд╡рд▓ рд╡рд┐рдВрдбреЛрдЬрд╝ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдореЗрдВ рдХрд╕реНрдЯрдо рд╡рд┐рдВрдбреЛ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЬрдм рдЖрдк рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдЗрд╕реЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреАред

рдХреНрдпрд╛ рдЖрдк рд▓реЛрдЧ рд▓реЗрдлреНрдЯ рдХреНрд▓рд┐рдХ рд╡рд┐рдВрдбреЛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬреИрд╕реЗ рд╡реЙрд▓реНрдпреВрдо рдорд┐рдХреНрд╕рд░ рд╡рд┐рдВрдбреЛрдЬ 7 рдореЗрдВ рдерд╛? рдореИрдВ рдЬрд░рд╛ рдЪрдХрд░рд╛ рдЧрдпрд╛ рд╣реВрдВ...

рд╡реИрд╕реЗ рднреА рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдПрдкреАрдЖрдИ рдХреА рд╕рдВрд░рдЪрдирд╛ рд╣реИ:
```рд╕реА#
рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдмреВрд▓ рджреГрд╢реНрдпрдорд╛рди {рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ; рд╕рдореВрд╣; }

рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╢реАрд░реНрд╖рдХ {рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ; рд╕рдореВрд╣; }

рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рд╕рдХреНрд░рд┐рдп { рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ; рд╕рдореВрд╣; }

рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд╢реВрдиреНрдп рд╕реЗрдЯрдореЗрдиреВ (рд╕рдВрджрд░реНрднрдореЗрдиреВ рдореЗрдиреВ);

рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд╢реВрдиреНрдп рд╕реЗрдЯ рдЖрдЗрдХрди (рдЖрдЗрдХрди рдЖрдЗрдХрди);

рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд╢реВрдиреНрдп рджрд┐рдЦрд╛рдПрдБ ();

рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд╢реВрдиреНрдп рдЫреБрдкрд╛рдПрдВ ();
```

@ cr0zy , рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдмрд╛рдпрд╛рдБ рдХреНрд▓рд┐рдХ рдХрд╕реНрдЯрдо рд╡рд┐рдВрдбреЛ рдЦреЛрд▓рддрд╛ рд╣реИред рдореИрдВрдиреЗ рд░рд╛рдЗрдЯ рдХреНрд▓рд┐рдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд▓рд┐рдЦрд╛ рдерд╛ред рдХрдо рд╕реЗ рдХрдо рдЖрдк "рдЫреЛрдбрд╝реЛ" рдЖрдЗрдЯрдо рдХреЗ рд╕рд╛рде рдЙрджрд╛рд╣рд░рдг рд░рд╛рдЗрдЯ-рдХреНрд▓рд┐рдХ рдореЗрдиреВ рдХреА рддрд░рд╣ рджрд┐рдЦрддреЗ рд╣реИрдВред

@cwensley

рд╣рдо ContextMenuStrip рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ ... рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХреБрдЫ рднреА рдХрд╕реНрдЯрдо рдЬреЛрдбрд╝рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реЛрдЧрд╛ ...
https://msdn.microsoft.com/en-us/library/system.windows.forms.contextmenustrip (v=vs.110).aspx

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ рд╣рдо рдореЗрдиреВ рдЖрдЗрдЯрдо рдХреЗ рдмрд╛рдИрдВ рдУрд░ рдЫрд╡рд┐ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ ... рд╣рд╛рдБ рд╣рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ .. рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рд╕рд┐рд╕реНрдЯрдо рдЯреНрд░реЗ рд╕реЗ рдЙрдкрд▓рдмреНрдз рдкреЙрдкрдЕрдк рдХреЗ рдХрд╕реНрдЯрдо рд▓реЗрдЖрдЙрдЯ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрд╣рд╛ред рдореИрдВрдиреЗ рдЫрд╡рд┐ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд╕реНрдЯрдо рд╕рд╛рдордЧреНрд░реА рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рд╣реИ рди рдХрд┐ рдЖрдЗрдЯрдо рдХреЗ рдмрд╛рдИрдВ рдУрд░ рдХреБрдЫ рдЫреЛрдЯреЗ рдЖрдЗрдХрди рдХреЗ рд░реВрдк рдореЗрдВред

WinForms рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд┐рдпрд╛ рдЧрдпрд╛:
winforms

рдЬреАрдЯреАрдХреЗ рдореИрдХ/рд╡рд┐рдВрдбреЛрдЬ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд┐рдпрд╛ рдЧрдпрд╛:
2

рдбрдмреНрд▓реНрдпреВрдкреАрдПрдл рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд┐рдпрд╛ рдЧрдпрд╛:
wpf

PR up: #731

@cwensley рдЗрд╕реЗ рдмрдВрдж рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

@cra0zy рдХреЛ рдЕрднреА рднреА рдореИрдХ рдкреЛрд░реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдпрд╣ #750 . рдХреЗ рд╕рд╛рде рдХрд╡рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

ArsenShnurkov picture ArsenShnurkov  ┬╖  17рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

LaraSQP picture LaraSQP  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

rothomp3 picture rothomp3  ┬╖  15рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Sanae6 picture Sanae6  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Krakean picture Krakean  ┬╖  6рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ