| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Instead, silently don't export menus and actions. The single warning about the
desktop id being invalid should be enough.
|
|\
| |
| |
| |
| | |
Request GTK_ICON_SIZE_LARGE_TOOLBAR icons for the indicator.
|
|/
|
|
|
| |
To make it consistent with the other indicators.
|
| |
|
| |
|
|\ |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Changes the state of the "messages" action from a boolean (draws-attention) to
a string (icon-name). This has the added benefit that more logic is moved from
the plugin into the service.
It also fixes an edge case: the messaging menu didn't have the blue icon after
the service restarted (if anything was drawing attention).
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Up until now, the global chat status was set every time an application called
_set_status. Thus, global status really meant "status of the app that last
changed the status".
Now, the service remembers the chat status for each application and sets the
global status as a combination of all of application statuses. If applications
have different statuses, the menu items are shown in an inconsistent state.
This is implemented in IdoMenuItem by making it accept state as an array of
strings in addition to a single string. It is drawn inconsistent if the state
contains the menu item's target value in addition to other values.
When the global status is changed through the messaging menu, the service
doesn't update the action immediately anymore. Instead, it notifies all
applications about the change via the "status-changed" signal. Applications
must call _set_state to acknowledge that they have indeed changed their state.
This is consistent with libmessaging-menu's documentation and design.
Also, the SetStatus D-Bus call was missing a "desktop-id" parameter to tell the
menu which application changed status. Changing this doesn't break existing
apps, as the D-Bus interface is considered private to indicator-messages.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The application's status only changes when it calls _set_status, so it's wrong
to set the internal status when the global status changes.
This shouldn't be a problem in practice, as app->status is not accessible from
the API.
|
|/
|
|
|
|
|
|
| |
Only notify the service about status if the application has actually called
messaging_menu_app_set_status. This saves a d-bus call per non-chat
application and - more importantly - doesn't make the messaging menu go into
"unknown status" mode when one application is reporting 'online' status.
|
|\ |
|
| | |
|
|/
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, gtk didn't support changing the menu model on an already-created
GtkMenu. Since IndicatorObject doesn't allow changing the GtkMenu it exports
to the panel, IndicatorMessages created a menu with a single section, into
which the menu from the service was inserted (and removed when the service
died). This led to seperators not being shown, because separators are only
shown between top-level sections.
Gtk now has gtk_menu_shell_bind_model, which allows us to get rid of top-level
wrapper section.
|
| |
|
|
|
|
|
|
|
| |
Check whether no apps are left in remove_section instead of remove_application,
so that it is also done when an AppSection emits "destroy". This is a result
of improper merging of the watch-desktop-files and hide-indicator branches.
|
|\ |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
This introduces a slightly clumsy "destroy" signal for AppSection to notify
outsiders that the desktop file was deleted. This will do for now, but a
larger refactoring which pulls all the desktop-file-reading code out of
appsection is in order.
|
|\ \
| |/
|/|
| | |
https://bugs.launchpad.net/bugs/661059, https://bugs.launchpad.net/bugs/1045039. Approved by jenkins, Charles Kerr.
|
| | |
|
| |
| |
| |
| |
| |
| | |
This is done by removing the header item from the menu model in the service.
On the panel side, call indicator_object_hide() if the recevied menu is empty.
|
|\ \
| | |
| | |
| | | |
jenkins, Charles Kerr.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The most common case when inserting a timed source is to insert a source with
the current time. Emphasize this in the documentation by linking to the
convenience methods from the _with_time variants.
|
| | | |
|
| | | |
|
|\ \ \
| |_|/
|/| |
| | | |
Introduces IdoDetailLabel, a GtkWidget that renders detail strings (e.g. as lozenges) on the right side of a menu item.. Approved by Charles Kerr.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This was only half-heartedly done with the _clear function, which left a
dangling pointer.
Contributed by Charles Kerr. Thanks!
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
Also make sure that the label is left-aligned when ellipsized.
|
| | |
| | |
| | |
| | |
| | |
| | | |
A new widget class IdoDetailLabel is introduced, which can display either a
string or a count. Counts are drawn as lozenges.
|
| |/ |
|
|/ |
|
|
|
|
|
|
|
|
| |
In particular, mamke sure the <c:namespace> and <package> tags are included in
the .gir.
Fixes launchpad bug #1044096, thanks Jim!
|
| |
|
|
|
|
|
|
|
| |
The dbus path was set to /com/canonical/indicator/messages for all
MessagingMenuApps that a process created. This patch adds the desktop id into
the path.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
Adds an overview description of the messaging menu and documentation for
enums, properties, and signals.
|
| |
|
|\ |
|
| | |
|
| | |
|
| | |
|