| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
According to this wiki[0], port Logs to meson build system.
*[0] https://wiki.gnome.org/Initiatives/GnomeGoals/MesonPorting
https://bugzilla.gnome.org/show_bug.cgi?id=790276
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, boot timestamps in the boot selection menu is generated
when Logs is opened and won't be updated later. This causes a problem
that the timestamp of the latest log entry might be newer than what's
shown in the boot selection menu.
Fix that by updating the boot selection menu when users change the
category list or view logs from other boots.
https://bugzilla.gnome.org/show_bug.cgi?id=762840
|
|
|
|
|
|
|
|
|
|
| |
Currently, if an user don't have sufficient permission to view logs,
a GtkInfoBar will show up to warn the user about it. And it shows up
every time the user opens Logs until the user has sufficient
permission. This can be quite annoying.
Fix this by adding an "ignore" button to GtkInfoBar to give users the
option to ignore the warning.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The UI improvements as suggested by Allan
and Jakub are implemented in this commit:
* Use color theme suggested by Jakub for
expanded rows.
* Use row separator to indicate boundaries
of expanded header and it's group.
* Add hover effect to the expanded rows.
* Increase grid spacing and decrease label
padding in popover grid.
* Use regular text everywhere in the detailed
popover.
* Add padding for popover grid.
* Highlight the row pointed by detailed popover.
https://bugzilla.gnome.org/show_bug.cgi?id=709294
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GtkSizeGroup is used to make sure widgets in diffirent rows request the
same amount of space while implementing "Use a single row for each
log entry" in commit 995bacac51ee84516e9d0c4950dcc1edd45cdd64.
But adding too many widgets to GtkSizeGroup leads to poor performance,
which make scrolling the list in Logs very slow.
Fix that by removing the GtkSizeGroup. As there are not too many widgets
in the "Important" category, keep the category size group to make
category labels request the same amount of space.
https://bugzilla.gnome.org/show_bug.cgi?id=784216
|
|
|
|
|
|
|
|
| |
A popover has been used as a replacement to the previous details page
to show detailed information for each row, so the tooltip that shows
full log text is redundant. Remove the tooltip from each row.
https://bugzilla.gnome.org/show_bug.cgi?id=709294
|
|
|
|
|
|
|
|
|
| |
The GlEventViewDetail type now derives from GtkPopover instead of
GtkBin.Hence, The mode setting operation provided by GlEventView type
(which is derived from GtkStack) is no longer needed as a GtkStack
is not required to switch between GlEventViewList and GlEventViewDetail.
https://bugzilla.gnome.org/show_bug.cgi?id=709294
|
|
|
|
|
|
|
|
|
|
| |
A GtkPopover is shown when a row which is not a header is
activated. For handling very long messages, the message text is
wrapped to fit the size of the GtkPopover. Further, such long
messages are shown in a GtkScrolledWindow. All the earlier
available detail fields are shown in the GtkPopover.
https://bugzilla.gnome.org/show_bug.cgi?id=709294
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The compression information is stored in GlRowEntry objects
during population of the model array.The similarity criteria
for grouping adjacent messages is:
* Messages whose first word is same
* Messages sent by the same process
The compression information is then parsed in the view classes
and accordingly the events to be compressed are hidden in GlEventViewList.
The visibility of compressed events can be toggled by
activating the header row representing those compressed events.
When compressed events are expanded using the header, sorting order
specified by 'sort-order' GSettings key is maintained in GlEventViewList.
Headers are removed from the compressed rows to improve their visibility
when they are shown by activating the header.
https://bugzilla.gnome.org/show_bug.cgi?id=709294
|
|
|
|
|
|
|
|
| |
The model array is populated with GlRowEntry objects. The view
classes now interact with GlJournalEntry through GlRowEntry
objects.
https://bugzilla.gnome.org/show_bug.cgi?id=709294
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The GlRowEntry object includes flags/variables to store information
about the compression of journal entries and pass it on from the
model to view.
There are three types of row entries: uncompressed, compressed, header.
If a row entry is a header, then it also stores the compressed
journal entries which are represented by the header.
https://bugzilla.gnome.org/show_bug.cgi?id=709294
|
|
|
|
|
|
|
|
|
| |
The logs shown in GlEventViewList are now sorted from GlJournalModel.
The logs can be sorted in ascending or descending order according
to the timestamp. The sorting order can be controlled by setting
the 'sort-order' GSettings key.
https://bugzilla.gnome.org/show_bug.cgi?id=767995
|
|
|
|
| |
Use gtk_show_uri_on_window() instead.
|
|
|
|
| |
Use gtk_show_uri_on_window() instead.
|
|
|
|
|
|
|
|
|
| |
When users don't have permissions to view both system and user logs,
priv->boot_match equals NULL. One common scenario is the journal storage
type is volatile and there is no journal files under /var/log/journal.
So don't add boot match under this scenario.
https://bugzilla.gnome.org/show_bug.cgi?id=776818
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=777681
|
|
|
|
|
|
| |
Rename gl-*-get_current_boot_time to gl-*-get_boot_time. Since we pass
boot_match to these functions, the return value is boot time regrading
to a specific boot_match instead of the current boot time.
|
|
|
|
|
|
| |
GlEventViewListPrivate->boot_match should keep a copy of the state
string of "view-boot" action instead of simply pointing to the state
string to.
|
|
|
|
|
|
|
| |
Don't hide search bar when entering detail view from search results, so
we can still go to event list view with search results remembered.
https://bugzilla.gnome.org/show_bug.cgi?id=766766
|
|
|
|
|
|
| |
See https://developer.gnome.org/hig/stable/typography.html
https://bugzilla.gnome.org/show_bug.cgi?id=772263
|
|
|
|
|
|
|
|
| |
While searching, tokenize_search_string() is call for every log entry.
Because the results are exactly the same, so there is no need to call it
repeatedly. Just call it once to get the expected value.
https://bugzilla.gnome.org/show_bug.cgi?id=763747
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=773347
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=768985
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The custom timestamp range submenu is opened through the select
timestamp range treeview.
If the user doesn't specify any date, then today's date is taken as
default. If the user doesn't specify any time, then 11:59:59 PM is
taken as default start time and 12:00:00 AM is taken default end time.
This is done so that if the user selects the same date in both the
start and end date selection widgets, all the logs corresponding to
that date will be shown in the window.
The journal is filtered according to the entered start date-time and
end date-time timestamp range and the logs are shown in window
accordingly.
Invalid values in time spinboxes are set to nearest correct values.
Future dates fail silently.
If the user selects any other filter, then the options
in the custom timestamp range submenu are reset.
Depending upon whether the user has selected start date-time
or end date-time, we update the timestamp range button label
accordingly.
If time zone format is 24hr, we show only the hour-minute-second
spinboxes in the custom timestamp range submenu.
https://bugzilla.gnome.org/show_bug.cgi?id=767996
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The journal timestamp range filters in search popover can be
used to set the timestamp range of journal model.The default
journal timestamp range is the currently selected boot from
the boot selection menu in toolbar.
The query object was modified to include two
new parameters for storing the start and end timestamps
of the journal.
The gl_journal_set_matches() function was modified to
remove setting the boot match if no boot match is specified.
The search popover range button label is made consistent when
user selects boot through the toolbar boot selection menu.
https://bugzilla.gnome.org/show_bug.cgi?id=767996
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A radio button group was addded to select between "Exact"
and "Substring" search types.The default search type is
"Substring" search.
We hide the search type radio button group if "All Available Fields"
is selected as exact search doesn't make sense in that case.
The GlJournalModel class was modified to handle the case when all
search fields are exact and there are no substring matches.It was also
modified to handle the case when the exact search match string has a
null or empty value in which case we do not pass it to
gl_journal_set_matches().
GL_QUERY_* prefix was added to the enum nicks for making
it consistent with the enum name GlQuerySearchType.
https://bugzilla.gnome.org/show_bug.cgi?id=767996
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The search popover can be selected from the
drop down menu besides the search bar. Individual
journal field or all available journal fields can
be selected from the search popover.The default
journal field filter is "All Available fields".
The search popover is designed to look similar to the
Nautilus search popover.
If Nautilus implementation of search popover changes in
future, gnome-logs implementation of search popover should
be kept in sync with it.
https://bugzilla.gnome.org/show_bug.cgi?id=767996
|
|
|
|
|
| |
In commit b86a50a312b08dadbd58e04db351c38c65927b46, search matches was
moved to model. So gl_event_view_list_search is no longer needed.
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=770072
|
|
|
|
|
|
|
| |
There are mainly two kind of ways to storage journal files, one is
persistent and the other is volatile. So both method should be
considered when checking is the user has permissons to access journal
files.
|
|
|
|
|
|
|
| |
More parameters, including PID and GID, are added. The tokenizer was
modified to detect characters encountered in these new parameters.
https://bugzilla.gnome.org/show_bug.cgi?id=768848
|
|
|
|
|
|
|
|
| |
This variable was changed as we need to pass it as string for substring
search in gl-journal-model. Also, GlEventViewRow was modified to
reflect the change in the "uid" variable type.
https://bugzilla.gnome.org/show_bug.cgi?id=768848
|
|
|
|
|
|
|
|
|
|
|
| |
The querying for user entered search text is now done by
parsing the query struct in journal model and it is
populated accordingly. The query struct is populated in the view.
Earlier,the searching work was done by listbox_search_filter_func()
but now it is transferred to the query API. A new enum
'GlSearchQueryType' was introduced to differentiate
between exact and substring matches.The search related functions
from eventviewlist are also removed.
|
|
|
|
|
| |
The function argument is changed from const gchar * const *
to GPtrArray.
|
|
|
|
|
|
|
| |
Query struct is populated with the corresponding category matches.
It is parsed in the journal model to finally apply the matches with
gl_journal_set_matches(). After applying the matches, the model is
repopulated accordingly.
|
|
|
|
|
|
| |
These structs will be used for passing data from eventviewlist (view)
to journal model. Also, the functions for allocating and freeing
them are defined.
|
|
|
|
| |
This property was removed as it was not used anywhere.
|
|
|
|
|
|
|
|
|
|
|
|
| |
The problem is that there are comments for translators which are two
lines above the gettext call _("...") and these will not be seen by
translators.
To fix this rearrange lines in order to place the commentaries right
after the parameter. Also keep the coding style by indenting the
comments and having no more than 79 characters on a line.
https://bugzilla.gnome.org/show_bug.cgi?id=763572
|
|
|
|
|
|
| |
Replace newline characters with Unicode newline substitutor.
https://bugzilla.gnome.org/show_bug.cgi?id=762622
|
|
|
|
|
|
|
| |
Only output search results that are shown in the list view. Search
results are entries that are visible and child visible.
https://bugzilla.gnome.org/show_bug.cgi?id=762621
|
|
|
|
|
|
|
|
| |
Use g_debug instead of g_warning as debug information for fetching
PRIORITY field. And do not return NULL as the return value of
_gl_journal_query_entry while error fetching PRIORITY field.
https://bugzilla.gnome.org/show_bug.cgi?id=762665
|
| |
|
| |
|
| |
|
|
|
|
|
| |
NULL out the pointers to already-freed data when an error occurs in
_gl_journal_query_entry().
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=758408
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=758108
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=756899
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=757807
|
|
|
|
|
|
| |
Allow users to click the Support link directly to visit it.
https://bugzilla.gnome.org/show_bug.cgi?id=756575
|