summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2022-08-20Fix center- and right-sticking of expanding appletsGordon Norman Squash1-26/+121
In a prior commit (38e00280e9d17282717595a05411736a308804c0), I added support to stick applets to the center of the panel, so that no matter the width of the applet or the panel, the applet would always stay at the center of the panel. That commit also added an "end-relative" mode, which is similar to the panel's old "right-stick" feature, except end-relative mode positions the applet's right edge relative to the panel's right edge, whereas right-sticking positioned the applet's left edge relative to the right edge of the panel. The advantage of end-relative positioning is that the applet can resize without moving itself even further to the right than the user intended, whereas if positioned so that there is empty space between the applet and the edge of the panel, right-stuck applets would change the size of that gap (or close it entirely) when the applet resized. Unfortunately, I have since discovered that my original implementation of the center-stick and end-relative positioning of applets was inadequate. Some applets can accept any amount of space between a minimum and their "preferred" size -- if such an applet cannot be allocated its preferred size (perhaps because panel space is scarce), then the applet will be allocated as much space as is available, and the applet will "flex" itself to compensate. Some examples of these "expanding" applets include the Window List (a component of the wncklet included in this package) and the MATE Dock Applet (a third-party panel applet from the Ubuntu MATE project). When writing my original center-stick code, I did not properly take expanding applets into account, and with my original commit, such applets were off-center -- usually way off-center since the code seemed to position such applets based on their minimum size, rather than their actual allocated size. This commit adds center-sticking support for expanding applets. It also works with end-relative expanding applets -- such applets will expand towards the left, thus keeping their right-relative position intact.
2022-06-28panel-applet: Fix leak in no-background code pathColomban Wendling1-2/+3
2022-06-28clock: Fix memory leakColomban Wendling1-1/+2
2022-06-08applet: SMALL_ICON_SIZE macro is not used [-Wunused-macros]rbuj1-2/+0
2022-06-02notification_area: Reduce lifetime of the settings local variable (#1309)Robert Antoni Buj Gelonch1-2/+2
2022-06-01build warning: AC_OUTPUT should be used without argumentsrbuj1-1/+2
2022-06-01Add "center-stick" capability applets on the panelThe Squash26-222/+459
Conventionally, the applets on a MATE Panel are positioned relative to the left edge of the panel (if the panel is horizontal) or the top edge (if the panel is vertical). There has also been some (buggy) support for positioning of applets relative to the right (or bottom) edge of the panel, so that applets on the right side of the panel will stay on the right side even if the user changes screen resolutions or if the panel changes size for some other reason. However, many users want to also place applets at or near the center of their panel(s). There is no such conventional support for positioning applets relative to the center of the panel, so users have positioned applets near the center of the panel -- but the position recorded is relative to the left side of the panel. As such, the applets will almost certainly shift over to the left or right slightly if the panel is ever resized, and the user will have to reposition all those centered applets yet again. This is especially frustrating if the user switches monitors on a regular basis! This patch radically revamps the MATE Panel's positioning framework, and deprecates the original "right-stick" feature. To replace the right-stick feature, this patch instead associates an "edge relativity" setting with each and every panel applet: An applet can be relative to the start (left/ top), end (right/bottom), or center of the panel. This setting can be changed using DConf/GSettings, using a custom panel layout file, or even by simply dragging the applet to the appropriate place on the panel. (Conventionally, applets are not even right-stuck automatically even when the user drags the applet over to the far right of the panel!) As a bonus, when the user drags an applet across the center of the panel, the applet will temporarily "stick" to the very center of the panel, to allow the user to very precisely align any applet they wish.
2022-04-26wncklet: Fix crash thumbnailing dying or otherwise inaccessible windowsColomban Wendling1-0/+8
Fixes https://github.com/mate-desktop/mate-desktop/issues/478
2022-04-22Register SNI host only if SNI is enabledIlya Fedin1-1/+6
This prevents duplication of tray icons
2022-03-23fix undefined reference to g_clear_signal_handler (glib < 2.62)rbuj1-2/+0
2022-03-18wncklet: Condition 'sdd->wnck_screen!=NULL' is always falserbuj1-7/+12
2022-03-18panel-multimonitor: Condition '*monitors_ret>0' is always falserbuj1-6/+8
2022-03-18clock: cast from function call of type 'gdouble' to non-matching typerbuj1-3/+3
2022-02-20wncklet: do not exceed workspace number when setting n_rowsrbuj1-4/+7
2022-02-13ci: drop -Wunused-parameter compiler cflag from debian buildraveit651-1/+1
2022-01-26release 1.27.0v1.27.0raveit651-0/+30
2022-01-26tx: pull from transifex serverraveit65167-4288/+5304
2022-01-26tx: update resourceraveit651-282/+282
2022-01-26Fix implicit conversion changes signedness: 'gboolean' to 'guint'rbuj12-56/+56
2022-01-21wncklet: The values stored in the wrapper hash table are incorrectrbuj1-16/+2
2022-01-18notification_area: fix build warning -Wbad-function-castrbuj1-6/+10
2022-01-18panel-run-dialog: address of array 'dent->d_name' will always evaluate to 'true'rbuj1-2/+1
2022-01-02clock: fix memory leakrbuj1-0/+2
2021-12-20panel-toplevel.h: fix indentrbuj1-56/+56
2021-12-20Fix some -Wsign-compare warningsrbuj18-54/+64
2021-12-20Use dashes for applet-[added|removed|move], back-change, size-changerbuj2-10/+10
2021-12-20Remove unnecessary cast in g_signal_connect* callrbuj27-192/+287
2021-12-19Upscale in panel_xutils_set_strutrbuj4-24/+13
2021-12-19panel-toplevel: fix the computed dimension for (non) auto hidden panelsrbuj1-1/+1
2021-12-19struts: add support for _GNOME_WM_STRUT_AREAAlberts Muktupāvels3-6/+35
In addition to existing properties set also new _GNOME_WM_STRUT_AREA property that allows creating struts between monitors. https://mail.gnome.org/archives/wm-spec-list/2018-December/msg00000.html https://gitlab.freedesktop.org/xdg/xdg-specs/merge_requests/22 https://gitlab.gnome.org/GNOME/gnome-panel/merge_requests/3 Upscale area strut because of 73e025b0eab94fe06cdafee61c347fb5fe6f7545
2021-12-19Use dashes instead of underscores in signal namesrbuj25-108/+108
2021-12-19clock: gtk_entry_set_alignment in clock.uirbuj2-3/+3
2021-12-19clock: gtk_entry_set_width_chars in clock.uirbuj2-3/+3
2021-12-19clock: Upgrade clock.uirbuj1-294/+340
2021-12-19clock: Define _clock_get_widget instead of using one sentence methodrbuj1-7/+2
2021-12-19clock: simplify temperature_unit_changed and speed_unit_changedrbuj1-22/+23
2021-12-19clock: fix temperature_unit_changed and -Wsign-compare warningsrbuj1-7/+13
2021-12-19Use GLib's new g_clear_signal_handler() function to simplify coderbuj3-105/+89
2021-12-16Use g_clear_pointer() and g_clear_object()rbuj30-360/+133
2021-12-14panel-test-applets: fix memory leakrbuj1-2/+2
2021-12-14Fix build warnings about missing field initializerrbuj6-7/+10
2021-12-11Use a blank line at mostrbuj56-110/+0
2021-10-19sn-dbus-menu-item: fix include guardrbuj1-1/+1
2021-10-19panel-applet-private: fix include guardrbuj1-1/+1
2021-09-25pre-bump versionraveit652-1/+3
2021-09-02fix show window thumbnails check buttonmbkma2-15/+14
adapt ui file to reverted window-list.c
2021-09-02Revert "window-list.c: use g_settings_* functions directly instead of using ↵mbkma1-104/+355
stored values" This reverts commit ce8167e1b498e47ca6f667f83acaf21d407135bb.
2021-08-26Updated installation instructions ; added missing build dependencyYannick Mauray (frenchguych)1-1/+6
2021-08-26fix mate-desktop-item-edit executablembkma1-0/+4
2021-08-04release 1.26.0v1.26.0raveit652-1/+8