diff -Nru mate-window-applets-19.10.2/debian/changelog mate-window-applets-19.10.4/debian/changelog --- mate-window-applets-19.10.2/debian/changelog 2019-06-19 19:50:35.000000000 +0000 +++ mate-window-applets-19.10.4/debian/changelog 2019-09-23 18:00:05.000000000 +0000 @@ -1,14 +1,23 @@ -mate-window-applets (19.10.2-0ubuntu1) eoan; urgency=medium +mate-window-applets (19.10.4-0ubuntu1) eoan; urgency=medium * New upstream release. - -- Martin Wimpress Wed, 19 Jun 2019 20:50:35 +0100 + -- Martin Wimpress Mon, 23 Sep 2019 19:00:05 +0100 -mate-window-applets (19.10.0-0ubuntu1) eoan; urgency=medium +mate-window-applets (19.10.3-1) unstable; urgency=medium + [ Martin Wimpress ] * New upstream release. + * debian/mate-window-applets-common.install: + + Update where fallback icons are installed. - -- Martin Wimpress Fri, 10 May 2019 08:12:20 +0100 + [ Mike Gabriel ] + * debian/control: + + Bump Standards-Version: to 4.4.0. No changes needed. + * debian/upstream/metadata: + + Add file. Comply with DEP-12. + + -- Mike Gabriel Fri, 02 Aug 2019 17:23:39 +0200 mate-window-applets (1.5.1-3) unstable; urgency=medium diff -Nru mate-window-applets-19.10.2/debian/control mate-window-applets-19.10.4/debian/control --- mate-window-applets-19.10.2/debian/control 2019-03-18 19:37:47.000000000 +0000 +++ mate-window-applets-19.10.4/debian/control 2019-08-01 22:11:50.000000000 +0000 @@ -16,7 +16,7 @@ Homepage: https://github.com/ubuntu-mate/mate-window-applets Vcs-Browser: https://salsa.debian.org/debian-mate-team/mate-window-applets Vcs-Git: https://salsa.debian.org/debian-mate-team/mate-window-applets.git -Standards-Version: 4.3.0 +Standards-Version: 4.4.0 Package: mate-window-buttons-applet Architecture: any diff -Nru mate-window-applets-19.10.2/debian/rules mate-window-applets-19.10.4/debian/rules --- mate-window-applets-19.10.2/debian/rules 2019-06-18 16:19:24.000000000 +0000 +++ mate-window-applets-19.10.4/debian/rules 2019-09-23 17:59:37.000000000 +0000 @@ -10,4 +10,4 @@ get-orig-source: - uscan --noconf --force-download --rename --download-current-version --repack --destdir=.. + uscan --noconf --force-download --rename --download-current-version --destdir=.. diff -Nru mate-window-applets-19.10.2/debian/upstream/metadata mate-window-applets-19.10.4/debian/upstream/metadata --- mate-window-applets-19.10.2/debian/upstream/metadata 1970-01-01 00:00:00.000000000 +0000 +++ mate-window-applets-19.10.4/debian/upstream/metadata 2019-09-23 17:59:37.000000000 +0000 @@ -0,0 +1,8 @@ +Name: MATE Window Applets +Bug-Database: https://github.com/ubuntu-mate/mate-window-applets/issues +Bug-Submit: https://github.com/ubuntu-mate/mate-window-applets/issues/new +Contact: martin@ubuntu-mate.org +Donation: https://ubuntu-mate.org/donate +Repository: https://github.com/ubuntu-mate/mate-window-applets +Repository-Browse: https://github.com/ubuntu-mate/mate-window-applets +Security-Contact: security@ubuntu-mate.org diff -Nru mate-window-applets-19.10.2/meson.build mate-window-applets-19.10.4/meson.build --- mate-window-applets-19.10.2/meson.build 2019-06-19 19:44:13.000000000 +0000 +++ mate-window-applets-19.10.4/meson.build 2019-09-23 17:57:30.000000000 +0000 @@ -1,4 +1,4 @@ -project('mate-window-applets','vala','c',version: '19.10.2',meson_version: '>=0.36.0') +project('mate-window-applets','vala','c',version: '19.10.4',meson_version: '>=0.36.0') add_global_arguments(['--vapidir', join_paths(meson.current_source_dir(), 'vapi')], diff -Nru mate-window-applets-19.10.2/window-buttons-applet/org.mate.panel.WindowButtonsApplet.mate-panel-applet.in mate-window-applets-19.10.4/window-buttons-applet/org.mate.panel.WindowButtonsApplet.mate-panel-applet.in --- mate-window-applets-19.10.2/window-buttons-applet/org.mate.panel.WindowButtonsApplet.mate-panel-applet.in 2019-06-19 19:44:13.000000000 +0000 +++ mate-window-applets-19.10.4/window-buttons-applet/org.mate.panel.WindowButtonsApplet.mate-panel-applet.in 2019-09-23 17:57:30.000000000 +0000 @@ -13,5 +13,5 @@ Description=A applet that shows window buttons on panel Description[bg]=Аплет който показва бутоните на прозореца върху панела Description[de]=Zeigt die Fensterknöpfe in der Leiste -Icon=mate +Icon=window-close MateComponentId=OAFIID:MATE_WindowButtonsApplet; diff -Nru mate-window-applets-19.10.2/window-buttons-applet/window-buttons-applet.vala mate-window-applets-19.10.4/window-buttons-applet/window-buttons-applet.vala --- mate-window-applets-19.10.2/window-buttons-applet/window-buttons-applet.vala 2019-06-19 19:44:13.000000000 +0000 +++ mate-window-applets-19.10.4/window-buttons-applet/window-buttons-applet.vala 2019-09-23 17:57:30.000000000 +0000 @@ -38,6 +38,7 @@ this.change_layout(); this.change_theme(); this.change_spacing(); + this.change_behaviour(); this.marco_gsettings.changed["theme"].connect(this.change_theme); this.gsettings.changed["spacing"].connect(this.change_spacing); @@ -60,7 +61,7 @@ if((Wnck.WindowActions.CLOSE & actions)>0){ CLOSE.set_visible(true); CLOSE.window = window; - CLOSE.reload(); + CLOSE.update(); } else CLOSE.set_visible(false); } @@ -68,7 +69,7 @@ if((Wnck.WindowActions.MINIMIZE & actions)>0){ MINIMIZE.set_visible(true); MINIMIZE.window = window; - MINIMIZE.reload(); + MINIMIZE.update(); } else MINIMIZE.set_visible(false); } @@ -76,7 +77,7 @@ if((Wnck.WindowActions.MAXIMIZE & actions)>0){ MAXIMIZE.set_visible(true); MAXIMIZE.window = window; - MAXIMIZE.reload(); + MAXIMIZE.update(); } else MAXIMIZE.set_visible(false); } } @@ -160,15 +161,15 @@ CLOSE.theme = theme; if(enabled_buttons.close) - CLOSE.reload(); + CLOSE.update(true); MINIMIZE.theme = theme; if(enabled_buttons.minimize) - MINIMIZE.reload(); + MINIMIZE.update(true); MAXIMIZE.theme = theme; if(enabled_buttons.maximize) - MAXIMIZE.reload(); + MAXIMIZE.update(true); } @@ -178,15 +179,15 @@ CLOSE.icon_size = size; if(this.enabled_buttons.close == true) - CLOSE.reload(); + CLOSE.update(); MINIMIZE.icon_size = size; if(this.enabled_buttons.minimize == true) - MINIMIZE.reload(); + MINIMIZE.update(); MAXIMIZE.icon_size = size; if(this.enabled_buttons.maximize == true) - MAXIMIZE.reload(); + MAXIMIZE.update(); } @@ -206,15 +207,24 @@ this.set_spacing(spacing); } + public void change_behaviour(){ + string behaviour = gsettings.get_string("behaviour"); + + Wnck.Screen.get_default().window_closed.disconnect( reload ); + + if(behaviour == "topmost-maximized") + Wnck.Screen.get_default().window_closed.connect( reload ); + } + private Wnck.Window get_current_window(){ Wnck.Window* win = null; string behaviour = gsettings.get_string("behaviour"); - Wnck.Screen.get_default().force_update(); - switch(behaviour){ case "active-always": win = Wnck.Screen.get_default().get_active_window(); + if(win != null && win->get_class_instance_name() == "desktop_window") + win = null; break; case "active-maximized": win = Wnck.Screen.get_default().get_active_window(); @@ -284,7 +294,7 @@ widget_container.gsettings.changed["buttons-layout"].connect(widget_container.change_layout); widget_container.gsettings.changed["spacing"].connect( (key) => { widget_container.change_size(applet.get_size()); } ); widget_container.gsettings.changed["padding"].connect( (key) => { widget_container.change_size(applet.get_size()); } ); - widget_container.gsettings.changed["behaviour"].connect( (key) => { widget_container.reload(); } ); + widget_container.gsettings.changed["behaviour"].connect( () => { widget_container.change_behaviour(); widget_container.reload(); } ); applet.setup_menu(menu,action_group); settings.delete_event.connect( (event) => { settings.hide() ; return true ; } ); diff -Nru mate-window-applets-19.10.2/window-buttons-applet/window-button.vala mate-window-applets-19.10.4/window-buttons-applet/window-button.vala --- mate-window-applets-19.10.2/window-buttons-applet/window-button.vala 2019-06-19 19:44:13.000000000 +0000 +++ mate-window-applets-19.10.4/window-buttons-applet/window-button.vala 2019-09-23 17:57:30.000000000 +0000 @@ -81,7 +81,7 @@ } } - public void update(bool reset = false){ + public void update(bool theme_change = false){ IconType type; if(_button_type == WindowButtonType.MINIMIZE) @@ -96,7 +96,7 @@ IconState state; - if(!reset && _window != null && !_window.is_active()) + if(_window != null && !_window.is_active()) state = IconState.UNFOCUSED; else state = IconState.FOCUSED; @@ -104,6 +104,14 @@ Gdk.Pixbuf? icon = theme.get_icon(type, state, _current_action); + // If this is a new theme, and it doesn't have an icon for the current state and action, then reset + // everything, otherwise we would be showing the icons of the old theme + if(theme_change && icon == null){ + state = IconState.FOCUSED; + _current_action = IconAction.NORMAL; + + icon = theme.get_icon(type, state, _current_action); + } if(icon != null){ icon = icon.scale_simple(_icon_size, _icon_size, Gdk.InterpType.HYPER); @@ -123,12 +131,6 @@ this.update(); } - public void reload(){ - _current_action = IconAction.NORMAL; - - this.update(true); - } - } public enum WindowButtonType{ diff -Nru mate-window-applets-19.10.2/window-menu-applet/org.mate.panel.WindowMenuApplet.mate-panel-applet.in mate-window-applets-19.10.4/window-menu-applet/org.mate.panel.WindowMenuApplet.mate-panel-applet.in --- mate-window-applets-19.10.2/window-menu-applet/org.mate.panel.WindowMenuApplet.mate-panel-applet.in 2019-06-19 19:44:13.000000000 +0000 +++ mate-window-applets-19.10.4/window-menu-applet/org.mate.panel.WindowMenuApplet.mate-panel-applet.in 2019-09-23 17:57:30.000000000 +0000 @@ -12,5 +12,5 @@ Description=A applet that shows window menu on panel Description[bg]=Аплет който показва менюто на прозореца върху панела Description[de]=Zeigt das Fenstermenü in der Leiste -Icon=mate +Icon=menu-editor MateComponentId=OAFIID:MATE_WindowMenuApplet; diff -Nru mate-window-applets-19.10.2/window-menu-applet/window-menu-applet.vala mate-window-applets-19.10.4/window-menu-applet/window-menu-applet.vala --- mate-window-applets-19.10.2/window-menu-applet/window-menu-applet.vala 2019-06-19 19:44:13.000000000 +0000 +++ mate-window-applets-19.10.4/window-menu-applet/window-menu-applet.vala 2019-09-23 17:57:30.000000000 +0000 @@ -65,15 +65,24 @@ } + public void change_behaviour(){ + string behaviour = gsettings.get_string("behaviour"); + + Wnck.Screen.get_default().window_closed.disconnect( reload ); + + if(behaviour == "topmost-maximized") + Wnck.Screen.get_default().window_closed.connect( reload ); + } + private Wnck.Window get_current_window(){ Wnck.Window* win = null; string behaviour = gsettings.get_string("behaviour"); - Wnck.Screen.get_default().force_update(); - switch(behaviour){ case "active-always": win = Wnck.Screen.get_default().get_active_window(); + if(win != null && win->get_class_instance_name() == "desktop_window") + win = null; break; case "active-maximized": win = Wnck.Screen.get_default().get_active_window(); @@ -102,6 +111,7 @@ button = new WindowMenuButton(); + change_behaviour(); change_orient(applet); Gtk.Builder builder = new Gtk.Builder(); @@ -133,7 +143,7 @@ menu += """"""; gsettings.bind("behaviour",builder.get_object("behaviour"),"active_id",SettingsBindFlags.DEFAULT); - gsettings.changed["behaviour"].connect( (key) => { reload(); } ); + gsettings.changed["behaviour"].connect( () => { change_behaviour(); reload(); } ); applet.add(button); applet.setup_menu(menu,action_group); diff -Nru mate-window-applets-19.10.2/window-menu-applet/window-menu-button.vala mate-window-applets-19.10.4/window-menu-applet/window-menu-button.vala --- mate-window-applets-19.10.2/window-menu-applet/window-menu-button.vala 2019-06-19 19:44:13.000000000 +0000 +++ mate-window-applets-19.10.4/window-menu-applet/window-menu-button.vala 2019-09-23 17:57:30.000000000 +0000 @@ -52,7 +52,7 @@ public void menu_set(){ - if(_window != null && _window.get_class_instance_name() != "desktop_window"){ + if(_window != null){ this.set_popup(new Wnck.ActionMenu(_window)); this.set_sensitive(true); } diff -Nru mate-window-applets-19.10.2/window-title-applet/org.mate.panel.WindowTitleApplet.mate-panel-applet.in mate-window-applets-19.10.4/window-title-applet/org.mate.panel.WindowTitleApplet.mate-panel-applet.in --- mate-window-applets-19.10.2/window-title-applet/org.mate.panel.WindowTitleApplet.mate-panel-applet.in 2019-06-19 19:44:13.000000000 +0000 +++ mate-window-applets-19.10.4/window-title-applet/org.mate.panel.WindowTitleApplet.mate-panel-applet.in 2019-09-23 17:57:30.000000000 +0000 @@ -12,5 +12,5 @@ Description=A applet that shows window title on panel Description[bg]=Аплет който показва заглавието на прозореца върху панела Description[de]=Zeigt den Fenstertitel in der Leiste -Icon=mate +Icon=user-desktop MateComponentId=OAFIID:MATE_WindowTitleApplet; diff -Nru mate-window-applets-19.10.2/window-title-applet/window-title-applet.vala mate-window-applets-19.10.4/window-title-applet/window-title-applet.vala --- mate-window-applets-19.10.2/window-title-applet/window-title-applet.vala 2019-06-19 19:44:13.000000000 +0000 +++ mate-window-applets-19.10.4/window-title-applet/window-title-applet.vala 2019-09-23 17:57:30.000000000 +0000 @@ -48,15 +48,24 @@ } } + public void change_behaviour(){ + string behaviour = gsettings.get_string("behaviour"); + + Wnck.Screen.get_default().window_closed.disconnect( reload ); + + if(behaviour == "topmost-maximized") + Wnck.Screen.get_default().window_closed.connect( reload ); + } + private Wnck.Window get_current_window(){ Wnck.Window* win = null; string behaviour = gsettings.get_string("behaviour"); - Wnck.Screen.get_default().force_update(); - switch(behaviour){ case "active-always": win = Wnck.Screen.get_default().get_active_window(); + if(win != null && win->get_class_instance_name() == "desktop_window") + win = null; break; case "active-maximized": win = Wnck.Screen.get_default().get_active_window(); @@ -98,6 +107,7 @@ title = new Gtk.Label(""); title.ellipsize = Pango.EllipsizeMode.END; + change_behaviour(); reload(); //title.set_label(Wnck.Screen.get_default().get_active_window().get_name()); @@ -131,7 +141,7 @@ menu += """"""; gsettings.bind("behaviour",builder.get_object("behaviour"),"active_id",SettingsBindFlags.DEFAULT); - gsettings.changed["behaviour"].connect( (key) => { reload(); } ); + gsettings.changed["behaviour"].connect( () => { change_behaviour(); reload(); } ); applet.set_flags(MatePanel.AppletFlags.EXPAND_MINOR | MatePanel.AppletFlags.EXPAND_MAJOR);