Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Set the global chat status more intelligently | Lars Uebernickel | 2012-09-18 | 1 | -45/+80 |
| | | | | | | | | | | | | | | | | | | | | | | | | 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. | ||||
* | messages-services: don't call g_object_unref with NULL | Lars Uebernickel | 2012-09-14 | 1 | -1/+2 |
| | |||||
* | messages-service: update chat section when an app is removed | Lars Uebernickel | 2012-09-06 | 1 | -3/+11 |
| | |||||
* | messages-service: fix merge error | Lars Uebernickel | 2012-09-06 | 1 | -7/+5 |
| | | | | | | | 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. | ||||
* | Merge lp:~larsu/indicator-messages/watch-desktop-files | Lars Uebernickel | 2012-09-06 | 1 | -9/+23 |
|\ | |||||
| * | messages-service.c: remove redundant g_hash_table_remove | Lars Uebernickel | 2012-09-05 | 1 | -1/+0 |
| | | |||||
| * | Watch desktop files for changes | Lars Uebernickel | 2012-09-05 | 1 | -10/+24 |
| | | | | | | | | | | | | | | | | 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. | ||||
* | | Hide indicator when no applications are configured to use it | Lars Uebernickel | 2012-09-04 | 1 | -14/+25 |
|/ | | | | | | 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. | ||||
* | Show icons on status menu items | Lars Uebernickel | 2012-08-27 | 1 | -5/+24 |
| | | | | | | | This introduces IdoMenuItem, a GtkCheckMenuItem that can also show icons. This should go into libido at some point. Also, Im{App,Source}MenuItem could derive from it so that the GMenuItem-setting logic is only in one place. | ||||
* | Plug memory leaks: return value of g_menu_model_get_item_link is transfer full | Lars Uebernickel | 2012-08-25 | 1 | -0/+2 |
| | |||||
* | Don't spam debug messages | Lars Uebernickel | 2012-08-24 | 1 | -1/+0 |
| | |||||
* | Update remaining license headers | Lars Uebernickel | 2012-08-21 | 1 | -1/+2 |
| | |||||
* | Show icons in application and source menu items | Lars Uebernickel | 2012-08-21 | 1 | -2/+9 |
| | | | | | | | Everthing goes through GIcon now, using g_icon_{to,new_for}_string to set a string attribute on the menu item. The attribute is prefixed x-canonical- for now. | ||||
* | Insert new app items right before the "Clear" item | Lars Uebernickel | 2012-08-20 | 1 | -1/+1 |
| | | | | | | This still isn't as specified by design (should be alphabetically), but at least "Clear" is below the app items now. | ||||
* | in messages-service.c, make the functions create_action_group() and ↵ | Charles Kerr | 2012-08-19 | 1 | -4/+4 |
| | | | | create_status_section() static | ||||
* | when removing an application in messages-service, disconnect the ↵ | Charles Kerr | 2012-08-19 | 1 | -0/+1 |
| | | | | notify::uses-chat-status handler | ||||
* | Set accessible description (statically to "Messages" for now) | Lars Uebernickel | 2012-08-16 | 1 | -0/+1 |
| | |||||
* | Only show chat section when necessary | Lars Uebernickel | 2012-06-27 | 1 | -4/+35 |
| | | | | | | | | The chat section is only shown when an application that is registered to use it is running. Applications are registered if their desktop file contains: X-MessagingMenu-UsesChatStatus: true | ||||
* | Remove header from status section | Lars Uebernickel | 2012-06-27 | 1 | -1/+1 |
| | |||||
* | Sync chat status from and to clients | Lars Uebernickel | 2012-06-27 | 1 | -7/+43 |
| | |||||
* | Use gdbus-codegen also for the server side messages service | Lars Uebernickel | 2012-06-27 | 1 | -10/+26 |
| | |||||
* | Add toplevel menu | Lars Uebernickel | 2012-06-27 | 1 | -2/+21 |
| | | | | | | | | The toplevel menu represents the indicator itself. It has one item with a submenu, which is the indicator's popup menu. The action that is set on the toplevel will never be activated, but its state is used to indicate "draws-attention". | ||||
* | Set status action when requested | Lars Uebernickel | 2012-06-27 | 1 | -0/+12 |
| | |||||
* | Disable "Clear" initially | Lars Uebernickel | 2012-06-27 | 1 | -6/+25 |
| | |||||
* | Make "Clear" work again | Lars Uebernickel | 2012-06-27 | 1 | -3/+11 |
| | |||||
* | Add draws-attention flag to source actions | Lars Uebernickel | 2012-06-27 | 1 | -13/+30 |
| | | | | | | AppSections watch those flags for associated sources and mux them into a draws-attention property for the whole section. | ||||
* | messages-service: move gmenu utility functions into gmenuutils.[ch] | Lars Uebernickel | 2012-06-26 | 1 | -40/+6 |
| | | | | | As a neat side-effect, this fixes a memory leak in app-section.c. | ||||
* | messages-service.c: move gsettings strv handling into gsettingsstrv.[ch] | Lars Uebernickel | 2012-06-26 | 1 | -48/+3 |
| | |||||
* | messages-service.c: fix memory leak | Lars Uebernickel | 2012-06-25 | 1 | -0/+2 |
| | |||||
* | messages-service.c: get rid of some global variables | Lars Uebernickel | 2012-06-25 | 1 | -8/+8 |
| | |||||
* | messages-service.c: get session bus asynchronously | Lars Uebernickel | 2012-06-25 | 1 | -23/+36 |
| | |||||
* | messages-service.c: removee unused includes | Lars Uebernickel | 2012-06-25 | 1 | -4/+1 |
| | |||||
* | Remove status providers | Lars Uebernickel | 2012-06-25 | 1 | -5/+49 |
| | | | | | | Applications will be able to set and retrieve status through libmessaging-menu and telepathy. | ||||
* | Set user_data that action handlers expect | Lars Uebernickel | 2012-06-25 | 1 | -1/+1 |
| | |||||
* | Set action namespace on application sections | Lars Uebernickel | 2012-06-25 | 1 | -1/+6 |
| | |||||
* | Put launcher and shortcut menu items into the same gmenu section | Lars Uebernickel | 2012-06-25 | 1 | -5/+1 |
| | |||||
* | Reexport application actions | Lars Uebernickel | 2012-06-03 | 1 | -0/+21 |
| | |||||
* | Use ids instead of .desktop file names to identify applications | Lars Uebernickel | 2012-06-03 | 1 | -8/+25 |
| | |||||
* | Add GActionMuxer | Lars Uebernickel | 2012-06-03 | 1 | -1/+6 |
| | | | | | | | | | | | This is a new implementation of an action muxer with the same interface as the one in the gtk tree. Its implementation is considerably simpler, mostly because it doesn't need to implement GActionObservable. In addition to muxing different action groups with the <prefix>.<action_name> scheme, it has the notion of global, prefix-less actions. Indicator-messages needs those for the status and clear actions. | ||||
* | Listen to actions exported by applications | Lars Uebernickel | 2012-06-02 | 1 | -18/+39 |
| | |||||
* | Put the 'launch' action onto app's menu sections | Lars Uebernickel | 2012-05-31 | 1 | -4/+5 |
| | | | | | This requires clients to make those menu sections clickable. | ||||
* | Rename AppMenuItem to AppSection | Lars Uebernickel | 2012-05-31 | 1 | -9/+9 |
| | |||||
* | Remove an application from the menu after it unregistered | Lars Uebernickel | 2012-05-31 | 1 | -1/+52 |
| | |||||
* | Allow applications to (un)register themselves from the messaging menu via d-bus | Lars Uebernickel | 2012-05-30 | 1 | -7/+72 |
| | |||||
* | Check whether supplied desktop files exist | Lars Uebernickel | 2012-05-24 | 1 | -0/+6 |
| | |||||
* | message-service: replace the server list with a hash table of appmenuitems | Lars Uebernickel | 2012-05-24 | 1 | -49/+12 |
| | |||||
* | Port to gmenu, act I | Lars Uebernickel | 2012-05-24 | 1 | -750/+57 |
| | | | | | | | Work-in-progress of the gmenu port for the service. The bulk of this patch removes everything related to libindicate from the service. Only the static app launchers and their configured shortcut actions are exported for now. | ||||
* | Merge launcher- and appmenuitems | Lars Uebernickel | 2012-05-23 | 1 | -298/+117 |
| | |||||
* | Allow creating AppMenuItems without initial listener / server | Lars Uebernickel | 2012-05-21 | 1 | -1/+1 |
| | |||||
* | Move build_launcher_core into build_launcher | Lars Uebernickel | 2012-05-21 | 1 | -19/+5 |
| |