Commits on Source (89)
-
Daniel Mustieles authoredd4c615b9
-
Niels De Graef authoredc7863314
-
Yosef Or Boczko authoreda62359ff
-
Niels De Graef authored
We depend on libadwaita 1.2 now, so we no longer have to check whether the property exists already.
641aa88d -
Jordi Mas authored998bb53e
-
Luming Zh authoredb8123149
-
Jiri Grönroos authored58c68cdd
-
Zurab Kargareteli authored100c3cfe
-
Christopher Davis authored
Add updated screenshots for GNOME 43, hosted on static.gnome.org. All people are fake, with avatars generated with thispersondoesnotexist.com. Related to https://gitlab.gnome.org/GNOME/Initiatives/-/issues/34
637a7578 -
No other app has a margin there. Not even contacts on the other pane.
8ebebd0b -
Don't go offscreen with too long names.
63da3cc0 -
Multiple things here. - The selection model state was mever synced back to the list - The selected == null codepath didn't work - unselect_all() does nothing with GtkSingleSelection - gtk_list_box_unselect_all() does nothing with BROWSE selection mode Fixes https://gitlab.gnome.org/GNOME/gnome-contacts/-/issues/262
9094c98f -
Don't wait for the animation to end, just do it on visible-child changes instead. Do it when folding while on the contact list pane as well.
a65f1a87 -
Zurab Kargareteli authoreddc9dd11f
-
Danial Behzadi authored807fde8c
-
Yuri Chornoivan authored49104d8f
-
gogo authoredf0b09963
-
Aleksandr Melman authored1fddd850
-
Hugo Carvalho authoredfa47cf30
-
Kukuh Syafaat authored57307799
-
Luming Zh authored17270c11
-
Asier Sarasua Garmendia authored3b343fda
-
Niels De Graef authored
Before this commit, the QueryFilter used a very naive implementation where it would just re-filter all contacts if something change (like a query string). This wasn't of course the most performant thing to do, and after some investigation we found out that on each search bar change, we were using quite some CPU. This commit adds some optimizations by avoiding unnecessary refiltering of contacts where possible. This shaves off quite a few percentages of CPU usage when doing some searching in the side bar.
7a4aa622 -
Niels De Graef authored
This allows us to split off the logic for filtering and sorting personas from the generic `Utils` namespace, and allows us to expand on our GListModel usage, which allows for some bigger cleanups planned ahead.
83aa3ceb -
Niels De Graef authored27478965
-
Niels De Graef authored
This allows us to split off the logic for filtering and sorting personas from the generic `Utils` namespace, and allows us to expand on our GListModel usage, which allows for some bigger cleanups planned ahead.
3f2f996a -
gogo authoredd64dbc7c
-
gogo authored48b5a08a
-
Yosef Or Boczko authoredf6a8837a
-
Jiri Grönroos authorede6b2b91e
-
Fran Dieguez authored132f0550
-
Piotr Drąg authored53909b94
-
Yuri Chornoivan authored710129ec
-
Fran Dieguez authored51956237
-
gogo authored56a04bdd
-
Sabri Ünal authored185139dc
-
Kukuh Syafaat authored5d5b0901
-
Yosef Or Boczko authored61a511e8
-
Aleksandr Melman authoredda27e475
-
Danial Behzadi authoredf60344cb
-
Hugo Carvalho authoreda74b01d1
-
Daniel Mustieles authored61623f7a
-
Nart Tlisha authoredb71591b8
-
Marek Černocký authored7d795bf0
-
Jordi Mas authored0bcec3c7
-
5431a018
-
gogo authored7c6f1806
-
Yuri Chornoivan authored62610680
-
Yuri Chornoivan authored3b5db096
-
Marek Černocký authored591a4e2f
-
Danial Behzadi authored49b34138
-
Niels De Graef authored
When starting the application (or when the user removes the input from the search entry), the `QueryFilter` object we use to filter our contacts will match any item. GTK allows us to specify this in the `get_strictness()` method by returning `Gtk.FilterMatch.ALL`, which is a performance improvement, as it doesn't have to iterate over all the items in the list anymore.
4248cc22 -
Hugo Carvalho authored932f592e
-
Piotr Drąg authored188186e8
-
Luming Zh authored3e2a35b7
-
Aleksandr Melman authoredf94c25a1
-
Daniel Mustieles authoreda448dd2b
-
Jiri Grönroos authoredbf1b00f2
-
Asier Sarasua Garmendia authored627d608b
-
Kukuh Syafaat authored98b1eff0
-
Niels De Graef authoredb87be002
-
Ask Hjorth Larsen authored608ea790
-
Emin Tufan Çetin authored90ca0b51
-
Balázs Úr authored309a8fc9
-
Jordi Mas authored4d0710b8
-
Niels De Graef authored
This commit introduces a new class `Contacts.Chunk`. Just like libfolks, we see a contact as a collection of data, or to word it differently: a collection built up from "chunks" of information. The net result of adding this concept adds quite a bit of lines of code, but it does have some major benefits: * Rather than stuffing new properties into yet another if-else spread out over multiple places in contacts-utils (and quite a bit of other files), we can create a new subclass of `Contacts.Chunk` * This also goes for property-specific logic, which we can consolidate within their appropriate classes/files. * All of our logic is now unit-testable In the future, this would allow for more cleanups/features: * We can put the serialization code for each property inside the `Contacts.Chunk` * We can extend ContactSheet to show a vCard's information, before actually importing it into a Folks.Individual. * We can write unit tests on the set of chunks, rather than regularly having to deal with yet another regression in e.g. the birthday editor.
1d44c114 -
Niels De Graef authored
When adding the feature to import and export contacts, we forgot to make some strings translatable. Piotr found these, so let's mark them as such (we're already in string freeze, but the alternative is that these won't be translated anyway). Fixes: https://gitlab.gnome.org/GNOME/gnome-contacts/-/issues/263
437deaf6 -
Niels De Graef authored
On a well configured system, this shouldn't happen since we expect something like E-D-S to be running. Of course, distro bugs can happen, and people can always screw up their system, so at least put a log message asking them if something like E-D-S is running. Related: https://gitlab.gnome.org/GNOME/gnome-contacts/-/issues/179
59ac39fa -
This avoids the current contact to instantaneously disappear as the transition is running or as we the user is swiping back, and close the contact only once the contact pane is hidden.
1321e8b6 -
Piotr Drąg authored84b9986d
-
Danial Behzadi authored3fbb3ef2
-
Yuri Chornoivan authoredd31867c4
-
Piotr Drąg authored9f3f91fc
-
Seong-ho Cho authored7804fbfb
-
Hugo Carvalho authoredb0784c01
-
Jordi Mas authoredd39c4b65
-
Balázs Úr authored412bf701
-
gogo authoredb11369e3
-
Boyuan Yang authoredddc142a1
-
Asier Sarasua Garmendia authored5657c695
-
Sabri Ünal authored8d8f8e65
-
Seong-ho Cho authoredd21964a1
-
Jiri Grönroos authorede837a2c8
-
Jürgen Benvenuti authored2f8bddc2
-
Luna Jernberg authorede1ec1436
-
Aleksandr Melman authoredbb891aa3
-
Fran Dieguez authored9e418234
-
Niels De Graef authored8ba37596
-
Jeremy Bicha authoredef64b413
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.