Age | Commit message (Collapse) | Author | Files | Lines |
|
It can happen that a panel configuration is so messed up, that only a reset helps.
Only a few users know how to do that.
This patch adds a context menu entry "Reset Panel", which enables a user to do that.
Internally the function behind "mate-panel --reset" is called.
|
|
Don't just check for the clock's existance and return if it has been destroyed, disconnect them entirely when the clock is destroyed
|
|
*On destroying applet disconnect signals for functions that otherwise segfaults with glib 2.53.4 or later.
*Fish: it's not always enough for a function to return immediately if applet destroyed anymore
*panel-action-button: suppress a warning
|
|
avoid deprecated:
gdk_screen_get_monitor_geometry
gdk_screen_get_monitor_at_window
gdk_screen_get_monitor_at_point
|
|
|
|
|
|
|
|
Fixes window list, workspace switcher. Window menu and show desktop no warnings or segfaults on removal when built in process
|
|
These two "changed" functions get triggered by clearing gsettings values on exit, make them return immediately when this happens. Don't return from dispose on repeat call or applet can't be added back
|
|
|
|
|
|
This works, but does leave part of it in RAM until the panel is restarted.
No change in out-of-process builds
|
|
|
|
Stops segfault on adding, removing, adding fish again when built in-process.
Based on https://github.com/GNOME/gnome-panel/commit/66602bab12f55e09b2205b493c7e0e5e9c560911
"This function only makes sense when PANEL_APPLET_IN_PROCESS_FACTORY is
used."
|
|
One portion of https://github.com/GNOME/gnome-panel/commit/0c3844c0e5f1bee5885d2c7aeaa49763e6708f6d got left out
|
|
This is a dummy variable used only to accomodate existing applets
|
|
|
|
Fix for crashes on removing applets similar to
https://bugzilla.gnome.org/show_bug.cgi?id=692610
|
|
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
|
|
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
|
|
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
|
|
|
|
... 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
|
|
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
|
|
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
|
|
This function will be used to get applet widget from factory.
Based on https://github.com/GNOME/gnome-panel/commit/8e1f7ea9f13533ce448cbc485d766fed01029be5
|
|
Return applet process type and generated uid from factory. Process
type will be needed to know if we should create GtkSocket, but uid
will be used to get applet widget.
|
|
Based on
https://github.com/GNOME/gnome-panel/commit/dca3101714da67adc08fc986a6355afada4bde15
and needed for later commits
libpanel-applet: store applets in hash table
Based on
https://github.com/GNOME/gnome-panel/commit/3fe6791d32a415a333bcb7d71d98a6de9929fa27
and needed for later commits
|
|
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
|
|
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
|
|
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
|
|
|
|
|
|
|
|
Based on part of https://github.com/GNOME/gnome-panel/commit/f0f91805a1e39543487cfe67dfc47129e45e76f3
There was an issue where Wanda appeared as a thin line. The reason is
that calling gtk_widget_set_size_request() in a size_allocate() handler
doesn't work. So use an idle function for this.
Also, only call gtk_widget_set_size_request() if really needed.
|
|
user configured scale. Closes #621
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This reverts commit cf46fb7f03d6ab0e106fa1cbfbf180fbbb9a5b75.
*Note that this is because the code added was already present in the same function
|
|
|
|
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.
|
|
Avoid cairo function that seemed to be causing crashes related to setting geometry, use code copied from panel-background.c instead
|
|
Enable the force-redraw code unconditionally so it can function from the idle callback regardless of child->parent_relative_bg = TRUE/FALSE as it seems to now always be needed
|
|
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.
|
|
*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
|