Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
No need to have pointers to mutables when not needed.
This does not cover everything at all, and is limited to one file for
the moment.
|
|
The computed values are only used in one branch, so compute them there.
|
|
`info` cannot be NULL, and if it was it'd already have crashed above.
> mate-panel/panel.c:893:34: warning: Either the condition 'info!=((void*)0)' is redundant or there is possible null pointer dereference: info. [nullPointerRedundantCheck]
> parent = gtk_widget_get_parent (info->widget);
> ^
> mate-panel/panel.c:895:11: note: Assuming that condition 'info!=((void*)0)' is not redundant
> if (info != NULL &&
> ^
> mate-panel/panel.c:893:34: note: Null pointer dereference
> parent = gtk_widget_get_parent (info->widget);
> ^
|
|
It's probably not necessary to perform the NULL check at all as the
only code paths that could make `list` NULL are already pretty
dramatically broken, but as we have a NULL check move everything
relevant inside it.
|
|
|
|
This is not strictly needed as there's already an assertion (assuming
it's not compiled out), but returning a value help analyzers get this
right.
|
|
No need to get the default icon theme again anyway.
|
|
|
|
|
|
Mostly found by cppcheck.
|
|
> mate-panel/panel-action-button.c:516:26: style: struct member 'PanelAction::type' is never used. [unusedStructMember]
> PanelActionButtonType type;
> ^
|
|
- Build the list in reverse order, then reverse the result. This is
useful because GS?List are list nodes, not containers of nodes, and
thus don't contain a pointer to the list's end, meaning to append one
has to walk the entire list to find the end each time. To avoid this
we use the common idiom of prepending to the list (which is cheap, as
it's adding a node before the given one), and then reversing the
resulting list to get back the original order.
- Avoid unnecessary memory copy by stealing the GStrv's members. We
get the array as a copy, so we can simply steal the members and free
the container array only, saving a copy for each member.
|
|
There is no need to return -1 or 1 specifically, anything on the right
side of 0 is OK, so simplify using the usual `a - b` implementation for
such sort functions.
Note that the type is OK here, as the `struct tm` are ints, the same as
the function's return value.
|
|
cppcheck tells us that we perform NULL checking inconsistently, and
reports a potential NULL dereference. Here however the string cannot
be NULL, so just drop the unnecessary check.
> mate-panel/panel-run-dialog.c:1663:10: warning: Either the condition '!start' is redundant or there is possible null pointer dereference: start. [nullPointerRedundantCheck]
> while (*start != '\0' && g_ascii_isspace (*start))
> ^
> mate-panel/panel-run-dialog.c:1679:6: note: Assuming that condition '!start' is not redundant
> if (!start || !start [0]) {
> ^
> mate-panel/panel-run-dialog.c:1663:10: note: Null pointer dereference
> while (*start != '\0' && g_ascii_isspace (*start))
> ^
|
|
This is *not* an issue, as it's not really a bounds check but a mere
limit, and the array is NULL-terminated.
However, it looks odd and cppcheck (unsurprisingly) doesn't understand
the details well enough and reports this as a misordered bounds check.
> mate-panel/panel-run-dialog.c:166:12: style: Array index 'i' is used before limits check. [arrayIndexThenCheck]
> items[i] && i < history_max_size;
> ^
|
|
Fixes #1412.
|
|
Cherry-picked from gnome-panel commit
1cc654e16dc06edccaef8c877db4e0da30ceeeaa.
|
|
Cherry-picked from gnome-panel commit
55667a735ea33336f5b0912631b184b95ea2140b.
|
|
*After replacing gtk_image_menu_item with mate_image_menu_item
*We must also replace GTK_TYPE_IMAGE_MENU_ITEM with MATE_TYPE_IMAGE_MENU_ITEM
*This fixes leftover GtkImageMenuItem deprecation warnings and restores missing Places and System icons in main menus
|
|
|
|
*For some reason "widget" is not being properly passed to this, so use NULL for the parent window
|
|
*This uses systemd to be able to shutdown when a display manager is running as root
*If no session or display manager is running as root, systemd used only to suspend or hibernate
*Suspend/hibernate require systemd at this point
*If suspend or hibernate not supported error dialog shown if those buttons clicked
*If "disable logout" lockdown option set, shut down button cannot be added same as in x11
*If shut down button added to panel and lockout later disabled, same non-responsive button as in x11
*Logind support would be welcome
|
|
*Compute the size of the monitor we are actually showing the popup on
*by getting the monitor it is shown on and running gdk_monitor_get_geometry()
*This returns application (scaled) pixels not device pixels
|
|
|
|
|
|
|
|
|
|
* There is only one screen in GTK 3.22 or later
* Finding the screen from that used by GtkPanelPlug is out of process only
* Any in-process applet calling mate_panel_applet_request_focus needs this to avoid a segfault
* One known user: dictionary applet
|
|
*Otherwise taskbuttons for programs using URLs or filenames in the window name can balloon across the whole taskbar
|
|
as necessary
*Empty space between buttons removed
*padding in buttons similar to x11
*Vertical panel: do not modify buttons, they just plain work!
*We have a working window list on vertical panels in wayland only
*Horizontal panels:
*expand buttons like in X11 until more expanded buttons won't fit
*When expanded buttons won't fit, resize buttons to fit tasklist
*When ellipsized text plus icon won't fit, remove the label
*When one more button with icon won't fit, remove the icon
*but bring back the (compressable) label as in x11.
*Prevents window list buttons disappearing when theme does not set a border
|
|
*Use automatic signal handling for changing icon size so this code doesn't get called when the applet is removed
|
|
It was listing outdated values, and missing new ones.
Fixes #1132.
|
|
- button-widget.c: replace tabs with 4 spaces and reformat as necessary
- button-widget.h: tab to 4 spaces
- button-widget.c: adjust indents and bracket style
---------
Co-authored-by: raveit65 <[email protected]>
|
|
*Custom icons not findable by gtk_icon_theme_load_surface are still blurry
|
|
*we need this for theming
|
|
*allows up to 20 window buttons on a half screen width window list before overflow
|
|
* Clock applet/wayland: position calendar window same as in x11
- Wayland/clock: fix calendar window rendering when moved
Ensure the calendar window cannot be "stretched" across the screen
if the panel or the applet is moved while the calendar is showing
|
|
With gettext-0.22 we are getting build errors like:
/usr/bin/msgfmt --desktop --keyword Name --keyword Description --template org.mate.panel.TestApplet.mate-panel-applet.desktop.in -d ../po -o org.mate.panel.TestApplet.mate-panel-applet
/usr/bin/msgfmt: no input file should be given if --desktop and -d are specified
Try '/usr/bin/msgfmt --help' for more information.
make[3]: *** [Makefile:1035: org.mate.panel.TestApplet.mate-panel-applet] Error 1
make[3]: *** Waiting for unfinished jobs....
Bug: https://bugs.gentoo.org/908877
Signed-off-by: Brahmajit Das <[email protected]>
|
|
Fix distribution of the applet service files sources when building from
an in-process-configured build. This fixes `make distcheck` and
tarballs in builds configured with `--with-in-process-applets=all` (or
actually any in-process applet).
The issue was that the .service.in file was referenced indirectly in
EXTRA_DIST, and the variable listed there was only filled in a
conditional. Automake is not able to resolve this and see it still
should distribute the reference of that variable, even if set
conditionally. Fix this by always setting the variable properly, even
if it's only used for out-of-process builds.
|
|
*We cannot load the legacy system tray in Wayland as that requires xembed.
*We CAN load the status-notifier (SNI support)
*Wayland needs us to explicitly set gtk_button_set_always_show_image to TRUE
*Wayland needs us to explicitly set gtk_image_menu_item_set_always_show_image to TRUE
|
|
Otherwise they are rendered double-sized and offset. Wayland apparently handles this for us
|
|
* tell dconf-edit about relocatable schemas
* self fix for incorrect and duplicated records
remove duplicated schemas for currect path
remove incorrect schemas for current path
* remove clock applet hack
* expose mate_panel_applet_settings_new to introspection
add "transfer full" annotation to make this method available throught
introspection
|
|
* applets/wncklet/wayland-backend: add basic icon support
This commit uses GTK to find an icon with the same name as the wayland app_id.
A more complete implementation would need to search for .desktop files matching the app_id, get the icon name and finally use GTK to find the proper icon based on that name.
* applets/wncklet/wayland-backend: add more complete icon support
* applets/wncklet/wayland-backend: code style fixup
|
|
* applets/wncklet/wayland-backend: Add basic context menu for (un)maximize, (un)minimize and close
* applets/wncklet/wayland-backend: code style fixup
|
|
* panel-run-dialog: Add accelerator keys for "list of known applications" in panel run dialog, display modifier keys by using GtkCellRendererAccel
* fixup! panel-run-dialog: Add accelerator keys for "list of known applications" in panel run dialog, display modifier keys by using GtkCellRendererAccel
* fixup! fixup! panel-run-dialog: Add accelerator keys for "list of known applications" in panel run dialog, display modifier keys by using GtkCellRendererAccel
* fixup! fixup! fixup! panel-run-dialog: Add accelerator keys for "list of known applications" in panel run dialog, display modifier keys by using GtkCellRendererAccel
* fixup! fixup! fixup! fixup! panel-run-dialog: Add accelerator keys for "list of known applications" in panel run dialog, display modifier keys by using GtkCellRendererAccel
|
|
|
|
|
|
Before this commit, the Clock Applet was unaware of when the system
resumed from sleep mode (e.g. suspend or hibernate). This meant that,
if the user suspended the system and then woke it up some time later,
the clock might not show the real current time, but instead would continue
to show the time at which the system was suspended for up to a minute
after the system woke up. This could be confusing to the user if they
peered up at the clock immediately after, say, opening their laptop lid.
This commit connects to ConsoleKit or (if available) systemd-logind via
D-Bus, and listens for a signal that indicates when the system wakes up
from sleep mode. When the system does wake up, the Clock Applet updates
the date/time immediately, and also updates all the weather/temperature
readings if possible.
Note that if logind is missing, ConsoleKit2 is required for this feature
to work; the original ConsoleKit lacked the signal required to implement
this feature. This should not be a problem since it is unlikely that
anyone would even consider using the original ConsoleKit in this day and
age.
|
|
Fix for "no option to disable middle-click to close in window list"
https://github.com/mate-desktop/mate-panel/issues/962#issuecomment-1418934577
|