summaryrefslogtreecommitdiff
path: root/libmate-panel-applet/mate-panel-applet.c
AgeCommit message (Collapse)AuthorFilesLines
2018-07-23mate-panel-applet: setup_x_error_handler for in-process applets toolukefromdc1-4/+6
This is for the tray: GtkPlug/GtkSocket widgets are used to embed tray icons (GtkStatusIcons) in the tray even if the tray is in-process and does not use the plug/socket widgets to be itself embedded in the panel
2018-07-21GTK 3.23: fix applet size allocationlukefromdc1-9/+12
Limit workaround for GTK 3.22 double width/height allocation to GTK 3.22 builds only
2018-06-29libmate-panel-applet: replace deprecated gdk_error_trap functionsraveit651-10/+13
2018-05-09fix rendering and removal of in-process applets on unexpanded panellukefromdc1-12/+9
Fix https://github.com/mate-desktop/mate-panel/issues/797 and https://github.com/mate-desktop/mate-panel/issues/799
2018-04-26libpanel-applet: Add panel_applet_setup_menu_from_resource() APIVincent Untz1-0/+40
Add API to be able to use the new GResource framework. origin commit: https://git.gnome.org/browse/gnome-panel/commit/?id=182cefd
2018-03-19Fix out-of-process applet sizes for HiDPIVictor Kareh1-10/+9
2018-02-06Added gir for mate_panel_applet_set_size_hints()info-cppsp1-0/+7
fix #727
2018-01-31require GTK+ 3.22 and GLib 2.50monsta1-131/+5
2018-01-31fix indent a bitmonsta1-11/+15
2018-01-26Down-scale out-of-process applets (#713)Victor Kareh1-28/+56
Out-of-process applets end up scaled up doubly. This divides the preferred width/height by the scale factor to ensure they are back at the correct preferred size.
2018-01-25avoid deprecated GtkStockPablo Barciela1-1/+1
2017-12-17WidthOfScreen and HeightOfScreen implementationPablo Barciela1-9/+4
This commit reverts: https://github.com/mate-desktop/mate-panel/commit/7b2bc7d9f98c6ba8c2c31bdf9605faadb42a7e0e And it applies an alternative to fix the deprecated functions: gdk_screen_get_width gdk_screen_get_height
2017-08-13libmate-panel-applet: fix introspectionlukefromdc1-2/+2
2017-08-13libmate-panel-applet GTK 3.14/3.16: fix custom bg w alphalukefromdc1-8/+12
Draw the background only on out of process applets. This prevents double-draw of bg w alpha value on in-process applets with GTK 3.14/3/16 Also Fix indent
2017-08-13libmate-panel-applet: include dummy variable in factory for certian appletslukefromdc1-2/+4
Otherwise, some applets such as disk mounter, hardware monitor, cpufreq won't start. * Fixes all but invest, note that cpufreq needs to be rebuilt against this for the menu to work * Also fix two new build warnings
2017-08-13libmate-panel-applet: fix bg rendering for in-process appletslukefromdc1-64/+45
Note that at least some in-process applets will pick up the MatePanelAppletFrameDBus styling, so drag handles should be themed with the MatePanelAppletFrameDBus>MatePanelAppletFrameDBus selector instead
2017-08-13limatepanel-applet: add panel-applet-private.hlukefromdc1-0/+1
... and move private functions from factory to this file. Later we will have at least one more private function. Based on https://github.com/GNOME/gnome-panel/commit/c04da8c76ee6f16af44faca2b247df71e98b0a4b plus one more change as it was added out of order
2017-08-13don't use GtkPlug/GtkSocket for in process appletslukefromdc1-4/+25
1. This will allow panel to exit/stop without crashing when using in process applets. It was crashing because of following assert: g_assert (widget->priv->verifying_invariants_count > 0); 2. In process applet will not have extra background. Transparency should now work as expected. This fixes redrawing of in-process applet backgrounds with GTK 3.22 based on https://github.com/GNOME/gnome-panel/commit/df4ec78272624660e1e01b7382dac3e1f83cfc4a
2017-08-13make it possible to get applet widgetlukefromdc1-0/+7
We will use this to get applet widget from factory. This will allow to bypass GtkPlug/GtkSocket. Based on https://github.com/GNOME/gnome-panel/commit/408bab094d1fad471b342548dabc58410a3dc327
2017-08-13libpanel-applet: delay GtkPlug creationlukefromdc1-8/+23
We are going to create GtkPlug only for out of process applets and constructor is first place where we will know applet process type Based on https://github.com/GNOME/gnome-panel/commit/3ed0b1b87ecad205bdaed0ca52e8866bc0666863
2017-08-13libpanel-applet: add process type to private datalukefromdc1-1/+18
We will need to know this as soon we will create GtkPlug and GtkSocket only for out of process applets. based on https://github.com/GNOME/gnome-panel/commit/dafdc5714a6cfc7ebf26fcbd614b48cfc790b954
2017-08-13libpanel-applet: Remove out_process from panel_applet_factory_main()lukefromdc1-11/+46
This argument makes no sense when introspection is used since, in that case, the applet will be out-of-process anyway. Instead, create a panel_applet_factory_setup_in_process() API that is marked as "skip" for introspection, that is used to setup the factory for in-process applets. Based on https://github.com/GNOME/gnome-panel/commit/6ef943dd473ac662dea01645e0ab1f6564361253
2017-08-13avoid deprecated gdk_screen_get_width/heightZenWalker1-4/+9
2017-07-17Revert "libmate-panel-applet: Fix another potential source of applet crashes"lukefromdc1-2/+0
This reverts commit cf46fb7f03d6ab0e106fa1cbfbf180fbbb9a5b75. *Note that this is because the code added was already present in the same function
2017-07-16libmate-panel-applet: Fix another potential source of applet crasheslukefromdc1-0/+2
Properly initialize pattern, GNOME found this stopped applet crashes on bg change(though not the same crashes we just fixed) based on https://github.com/GNOME/gnome-panel/commit/88b9beeb8ab69072fe6912af33c620143d17b0a3 We could return a random value from panel_applet_get_pattern_from_pixmap(), and that was very nasty.
2017-07-11fix applet crashes on transparent user-set panel bglukefromdc1-2/+4
Avoid cairo function that seemed to be causing crashes related to setting geometry, use code copied from panel-background.c instead
2017-07-07Fix GTK theme image bg support on vertical panellukefromdc1-0/+22
Themers can use the .vertical and .horizontal style classes to rotate a background on vertical panels the same way scrollbars are themed. Apply these style classes to PanelPlugs too so this can actually be used.
2017-07-02Make panel image background in GTK theme work againlukefromdc1-2/+14
*Support both url(image file) and gradient image panel backgrounds in the GTK theme. *Scaling by 1.0/panel dimensions should never have worked, doesn't now. Get the actual image dimensions instead *Background: disable in PanelPlug features that don't work on panel toplevel *panel-background: catch error on unsupported image such as -gtk-gradient An image bg set in the GTK theme needs to be a file or a css gradient as the older -gtk-gradient does not return a valid cairo_pattern_t when read directly *GTK 3.14,3.16: fix theme bg image render in plugs PanelPlug rendering is handled differently with GTK 3.14 and 3.16 than later versions. Handle this so all supported image backgrounds in GTK themes render properly in all supported GTK versions
2017-06-27GTK 3.18+ fix transparent default panel bglukefromdc1-1/+2
Transparent panel backgrounds set in GTK themes have not worked since the GTK 3.20 PanelPlug work. This was because NULL in gtk_window_set_background_pattern breaks on alpha values. Force this transparent and the GTK background is properly drawn
2016-11-21move to GTK+3 (>= 3.14), drop GTK+2 code and --with-gtk build optionmonsta1-367/+4
and require libmate-desktop >= 1.17 WARNING: use GTK+3 build of libmateweather for this build. that lib is not migrated to GTK+3 only as we will possibly use libgweather instead of it.
2016-11-21check for stable release of GTK+3, not for development onemonsta1-1/+1
2016-09-01GTK+-3.20 panel-applet: use GtkSeat instead of deprecated device pointerraveit651-1/+25
2016-06-29fix some warnings and deprecationsSorokin Alexei1-2/+5
2016-03-25GTK 3.18:Apply panelplug reworklukefromdc1-12/+12
mate-panel-applet.c Changing the panel background handling (from gnome-panel) for GTK 3.18 requires that the panelplug changes from gnome-panel also be applied or applets can mismatch the panel toplevel when an alpha value is present.
2016-03-13gtk3.20-fix custom BG change on appletslukefromdc1-24/+113
mate-panel-applet.c based on github.com/GNOME/gnome-panel/commit/3115f77b536a7c79c7d43ded0591e2b8f45219c4 "restore custom background on applets) Reverts and replaces use of gtk_window_ensure_native on applets, uses the panel-plug-private files from gnome panel intact. This way the system theme returns when custom background is deselected w/o having to restart the panel. These changes kept behind gtk3.20 only build time conditionals. requires if-elif-endif three-way conditionals due to the extent to GTK differences. Doing it this way keeps panel applets from being twice as dark as the panel when an alpha color background is selected
2016-02-27GTK 3.20 force custom BG drawing on appletslukefromdc1-0/+6
Use gdk_window_ensure_native to applets when and only when a custom background is selected. Doing so when the system bg is selected will turn applets clear, so will not doing so when a custom background is selected. Keep all this behind if # GTK_CHECK_VERSION (3, 19, 0) so as not to screw up anything in older GTK versions.
2016-02-12GTK+-3.20 panel-applet: don't use deprecated style propertiesWolfgang Ulbrich1-0/+19
taken from: https://git.gnome.org/browse/gnome-panel/commit/?id=f697764
2016-02-12GTK+-3 libmate-panel-applet: add missing 'static' to avoid a build warningWolfgang Ulbrich1-1/+1
2016-02-09libpanel-applet: set css nameWolfgang Ulbrich1-0/+4
taken from: https://git.gnome.org/browse/gnome-panel/commit/?id=a773c2ef
2015-12-24libmate-panel-applet: move trap push/pop closer to X function callMonsta1-11/+14
2015-12-24remove dead codeMonsta1-12/+0
2015-12-24fix indent a bitMonsta1-2/+2
2015-12-24remove unused variableMonsta1-1/+0
2015-12-15gtk3: fix infinite loop with Traditional themesBalló György1-1/+0
We don't need to reset style when adding/removing classes. It was a regression in commit: 6f634c680fbc5ee5051253554f2710e39f9ea80a
2015-11-20Don't set the panel transparent by defaultBalló György1-14/+20
This fixes the background for GTK+ 3 themes which don't support mate-panel explicitly. Themes could still overwrite the background if they want in the usual way.
2015-10-10custom menu theming support: mate-panel-applet.clukefromdc1-0/+14
Make applet menus follow the .mate-panel-menu-bar .menu selector in the gtk theme, and the menu window follow the .mate-panel-menu-bar selector. Use the former to set a custom menu theme, the latter to alter or remove shadows from applet menus
2015-07-14Replace GtkObject with GObject also for Gtk+ 2infirit1-7/+0
2015-07-14Drop gdkkeysyms-compat usage in Gtk+3infirit1-3/+2
The new GDK_KEY_ keys are also in Gtk+2.
2015-05-25Merge pull request #289 from rilian-la-te/simplify_imagemonsta1-82/+2
Remove change_background_for_widget from GTK3 build (it is useless.)
2015-05-21GTK3: fix typo in gtk_style_context mate-custom-panel-backgroundraveit651-3/+3