Georges Basile Stavracas Neto
151c47a8b3
Bump 3.35.0
2019-09-30 12:03:36 -03:00
Georges Basile Stavracas Neto
5e4bbe446f
utils: Pass GcalCalendar to ask_recurrence_modification_type()
...
The method ask_recurrence_modification_type() currently
receives an ESource, and tried to fetch the ECalClient
from the ESource by using g_object_get_data().
However, since we moved to GcalCalendar, we do not set
this data field in ESource.
Receive a GcalCalendar instead, and use the appropriate
function gcal_calendar_get_client() instead.
2019-09-14 21:38:53 -03:00
Georges Basile Stavracas Neto
9644c30eee
date-time-utils: Fix weekday calculation
...
GNOME Calendar needs to deal with two different
weekday ranges:
1. Sunday → 0 ... Saturday → 6
2. Monday → 1 ... Sunday → 7 (used by GDateTime)
When converting (2) into (1), the correct calculation
is `weekday % 7`.
However, gcal_date_time_get_start_of_week() was doing
`weekday - 1` instead.
Fix it and do the correct calculation instead.
https://gitlab.gnome.org/GNOME/gnome-calendar/issues/451
2019-09-14 11:14:01 -03:00
Georges Basile Stavracas Neto
450aa5e158
log: Remove g_get_current_time
2019-09-14 10:46:14 -03:00
Georges Basile Stavracas Neto
e39bd95c87
log: Use g_autofree
2019-09-14 10:39:38 -03:00
Georges Basile Stavracas Neto
43f5de8a0c
main: Trivial style cleanup
2019-09-13 18:53:13 -03:00
Georges Basile Stavracas Neto
22596db1d1
window: Readd <Ctrl>n shortcut
...
https://gitlab.gnome.org/GNOME/gnome-calendar/issues/383
2019-09-13 18:49:05 -03:00
Georges Basile Stavracas Neto
5b49c4fc46
3.34.0
2019-09-09 12:31:13 -03:00
Georges Basile Stavracas Neto
666679f123
year-view: Remove stray message
2019-08-25 17:57:48 +03:00
Georges Basile Stavracas Neto
f81320bdd1
3.33.4
2019-07-16 21:30:31 -03:00
Georges Basile Stavracas Neto
75d24803ed
tests: Temporarily disable discoverer test
2019-07-16 21:30:31 -03:00
Georges Basile Stavracas Neto
00e883ca63
year-view: Optimize sidebar update
...
Use the cached events to fill the sidebar, instead of
querying e-d-s every time we need an update.
2019-07-13 20:44:27 -03:00
Georges Basile Stavracas Neto
9aec1c097d
new-calendar-page: Properly cleanup sources
...
We can't control a widget's property at destruction time.
Cleanup the sources directly.
2019-07-13 20:07:30 -03:00
Georges Basile Stavracas Neto
b49486d0f9
calendar: Disconnect from the visible signals as well
...
Missed from the initial implementation.
2019-07-13 19:54:47 -03:00
Georges Basile Stavracas Neto
07acf540ae
calendar: Disconnect from the correct object
...
The name changed signal comes from the ESource, not
the extension.
2019-07-13 19:54:17 -03:00
Georges Basile Stavracas Neto
bb2a1321be
calendar: Use gulong for signal handlers
...
They are unsigned longs, not unsigned ints.
2019-07-13 19:52:53 -03:00
Georges Basile Stavracas Neto
1d6dee8bbb
manager: Avoid reentrancy
...
While deleting the calendar, we may run into a situation
where the GcalCalendar instance is destroyed before the
GcalManager:calendar-removed signal is emitted, causing
us to emit the signal with a destroyed object.
Prevent that by increasing the ref count before emiting
the signal.
2019-07-13 19:51:02 -03:00
Georges Basile Stavracas Neto
f0060b7699
new-calendar-page: Use the new discoverer
...
The new discoverer is a vast improvement over the code
that use used to have here. Right now, we fail to use
Soup to detect the URL, and that's been reported multiple
times already.
Use the new web discoverer code, and adjust the UI to
match the new code. Namely, use a GtkPopover to show
the credentials widget.
Fixes #380
2019-07-13 16:04:31 -03:00
Georges Basile Stavracas Neto
ff0644ad76
utils: Add auxiliary function to format display names
...
This will be used by the web source discoverer to format
any URLs that contain a file name in their path.
2019-07-13 16:04:31 -03:00
Georges Basile Stavracas Neto
371fdbc881
Introduce new source discoverer
...
The new source discoverer is a complete overhaul of
the current code. It is async-only, correctly threaded,
and easier to maintain.
A major new feature of this web source discoverer is
that it now pings the server to see if the URL feeds
us back with an iCalendar file.
Furthermore, it continues to use E-D-S WebDAV discovery
functions as a fallback mechanism.
Fixes #380
2019-07-13 16:04:30 -03:00
Georges Basile Stavracas Neto
2aa9bc1f61
tests: Add calendar server and tests
...
This will be used to write a propert test suite
for the new calendar discoverer code.
2019-07-13 16:04:30 -03:00
Georges Basile Stavracas Neto
54690e285a
build: Improve test generation
2019-07-13 16:04:30 -03:00
Georges Basile Stavracas Neto
02a5eca945
weather-service: Reorganize file
2019-07-09 21:47:14 -03:00
Georges Basile Stavracas Neto
8a98c697c4
week-header: Trivial style cleanup
2019-07-09 21:24:58 -03:00
Georges Basile Stavracas Neto
c62bb2eb95
flatpak: Reorder some sources
...
Small cosmetic change.
2019-07-09 21:24:58 -03:00
Georges Basile Stavracas Neto
0b4119367a
month-view: Use last cell to calculate multday event end
...
Instead of assuming all cells have the same width, use the last
cell to figure out the width of the event with the traditional:
event width = end.x2 - start.x1
event width = (end.x1 + end.width) - start.x1
https://gitlab.gnome.org/GNOME/gnome-calendar/issues/413
2019-06-26 11:04:39 -03:00
Georges Basile Stavracas Neto
33fc75ca01
calendar-management-page: Pass GcalCalendar
2019-06-25 14:16:47 -03:00
Georges Basile Stavracas Neto
47bed7bc77
new-calendar-page: Restore opening Online Accounts panel from label
2019-06-25 12:51:14 -03:00
Georges Basile Stavracas Neto
a95097f594
calendar-management-dialog: Remove unused signal handler
2019-06-25 12:50:48 -03:00
Georges Basile Stavracas Neto
4a7536328e
new-calendar-page: Add more file filters
2019-06-25 11:42:11 -03:00
Georges Basile Stavracas Neto
fcfa403902
new-calendar-page: Reenable file filter
...
We were blocked on a GtkBuilder issue [1].
[1] https://gitlab.gnome.org/GNOME/gtk/issues/1973
2019-06-25 11:39:06 -03:00
Georges Basile Stavracas Neto
0f28e3fa53
new-calendar-page: Implement new designs
...
This looks soooooo much better =)
https://gitlab.gnome.org/GNOME/gnome-calendar/issues/388
2019-06-24 21:33:00 -03:00
Georges Basile Stavracas Neto
7da3197186
calendars-page: Remove previously deleted calendar if any
...
It is possible to delete a calendar, and immediately delete another.
When that happens, both should be deleted.
2019-06-24 21:33:00 -03:00
Georges Basile Stavracas Neto
39ebc5457a
calendars-page: Fix callback parameters
2019-06-24 21:33:00 -03:00
Georges Basile Stavracas Neto
e53a7532f2
calendars-page: Use the passed calendar for deletion
2019-06-24 21:33:00 -03:00
Georges Basile Stavracas Neto
78680d9b5b
search-engine: Fix wrong debug message
2019-06-24 21:32:59 -03:00
Georges Basile Stavracas Neto
10e10f6605
edit-calendar-page: Silence warning
2019-06-24 21:32:59 -03:00
Georges Basile Stavracas Neto
170347b016
calendar-management-dialog: Trivial style cleanup
2019-06-24 21:32:59 -03:00
Georges Basile Stavracas Neto
efa29b19d5
calendars-page: Use switch to toggle visibility
2019-06-24 21:32:59 -03:00
Georges Basile Stavracas Neto
c092445363
calendar-management: Shuffle code around and cleanup
2019-06-24 21:32:59 -03:00
Georges Basile Stavracas Neto
f7df717e1b
edit-calendar-page: Add back button
...
And remove the remaining code (and a few extras) from the
calendar management dialog.
2019-06-24 21:32:59 -03:00
Georges Basile Stavracas Neto
a2d15697d9
log: Increase prefix width
...
GcalCalendarManagementDialog is too wide and breaks the log
layout, so increase the spacing to fit it.
2019-06-24 21:32:58 -03:00
Georges Basile Stavracas Neto
5e9f7bf01e
new-calendar-page: Add "Cancel" and "Add" header buttons
2019-06-24 21:32:58 -03:00
Georges Basile Stavracas Neto
804479ebcc
calendar-management-page: Add helper to retrieve titlebar
2019-06-24 21:32:58 -03:00
Georges Basile Stavracas Neto
e49ed1ed67
calendar-management: Move code to GcalNewCalendarPage
2019-06-24 21:32:58 -03:00
Georges Basile Stavracas Neto
9cc07c5786
calendar-management: Introduce GcalEditCalendarPage
...
This is the second of the three original pages we used to have.
This one edits calendars.
2019-06-24 21:32:58 -03:00
Georges Basile Stavracas Neto
db4613ae71
new-calendar-page: Add stub page
2019-06-24 21:32:58 -03:00
Georges Basile Stavracas Neto
375b9fc53c
calendar-management-dialog: Response to page switch
2019-06-24 21:32:57 -03:00
Georges Basile Stavracas Neto
ad017d1709
calendars-page: Introduce GcalCalendarsPage
...
A page dedicated to show a list of calendars and add
new ones. Other pages will come in soon.
2019-06-24 21:32:57 -03:00
Georges Basile Stavracas Neto
b2d2767131
calendar-row: Tweak margins
2019-06-24 21:32:57 -03:00
Georges Basile Stavracas Neto
831bbbdba8
calendar-management-page: Introduce new interface
...
This will be used by the pages of the calendar management dialog
to let it know they are actual pages, to offer an activation
mechanism, and to communicate with the dialog when they want to
switch to another page.
2019-06-24 21:32:57 -03:00
Georges Basile Stavracas Neto
4088b8b6bb
source-dialog: Rename to GcalCalendarManagementDialog
2019-06-24 21:32:44 -03:00
Georges Basile Stavracas Neto
c0720d0031
build: Move GcalSourceDialog to gui/calendar-management
...
Soon we will start populating this subfolder with many other
calendar management files, and to avoid making the gui/ folder
a mess, move source dialog to it.
2019-06-24 21:32:44 -03:00
Georges Basile Stavracas Neto
7217f9fa53
window: Add "Online Accounts..." button
2019-06-24 21:32:44 -03:00
Georges Basile Stavracas Neto
8743121f4d
source-dialog: Move Online Accounts panel spawn to utils
...
So that it can be reused by other files.
2019-06-24 21:32:44 -03:00
Georges Basile Stavracas Neto
7ee0acdcbf
source-dialog: Remove online accounts
...
Showing these online accounts in the dialog only added
an additional step. We'll be adding a link to online
accounts in the next commit, so for now, remove the
widgets from the source dialog.
2019-06-24 21:32:44 -03:00
Georges Basile Stavracas Neto
af8d2bb969
schema: Default 'follow-night-light' to false
...
https://gitlab.gnome.org/GNOME/gnome-calendar/issues/401
2019-05-27 15:14:10 -03:00
Georges Basile Stavracas Neto
2be54af238
flatpak: Build less
2019-05-24 21:28:47 -03:00
Georges Basile Stavracas Neto
16f2a8a554
flatpak: Allow org.gnome.evolution.dataserver.Calendar8
...
The new EDS bumped its D-Bus API version.
2019-05-24 21:27:14 -03:00
Georges Basile Stavracas Neto
73ddbbdc60
window: Remove non-existing signal handler
2019-05-24 21:26:50 -03:00
Georges Basile Stavracas Neto
badd1fb0f1
calendar: Fix double free
...
The GError is unreferenced twice.
2019-05-24 21:25:28 -03:00
Georges Basile Stavracas Neto
dcdd3f6ee8
Remove stray g_message()s
...
Leftovers from previous commits.
2019-05-11 13:41:50 -03:00
Georges Basile Stavracas Neto
ea043ab48b
calendar-popover: Show success after synchronizing
...
https://gitlab.gnome.org/GNOME/gnome-calendar/issues/395
2019-05-10 13:45:00 -03:00
Georges Basile Stavracas Neto
198180d023
manager: Fix typo
2019-05-10 13:44:43 -03:00
Georges Basile Stavracas Neto
117d56a1c9
calendar-popover: Relabel as "Synchronize Calendars"
...
https://gitlab.gnome.org/GNOME/gnome-calendar/issues/396
2019-05-10 13:30:29 -03:00
Georges Basile Stavracas Neto
647c9ee2c7
calendar-popover: Adjust UI
...
Add a separator and remove spacing.
2019-05-10 13:15:50 -03:00
Georges Basile Stavracas Neto
c5ec57f78e
calendar-popover: Improve calendar settings button
...
Change the label to "Manage Calendars…" and make it a model
button.
2019-05-10 13:14:23 -03:00
Georges Basile Stavracas Neto
405787307c
window: Move synchronize button to the calendar popover
2019-05-10 13:10:50 -03:00
Georges Basile Stavracas Neto
0639b4e7ae
window: Show a spinner while synchronizing
2019-05-10 13:04:33 -03:00
Georges Basile Stavracas Neto
f4c4a91465
manager: Add 'synchronizing' property
...
Will be useful to know if there are any clients being
synchronized.
2019-05-10 12:42:13 -03:00
Georges Basile Stavracas Neto
1c0131a55f
edit-dialog: Restore time removal of all-day events
...
All day events have no time period. This was a fallout from
the previous commit.
2019-05-10 11:53:24 -03:00
Georges Basile Stavracas Neto
7ad0f100a7
manager: Properly bind default calendar
...
We need to convert from ESource to GcalCalendar.
2019-05-10 11:20:51 -03:00
Georges Basile Stavracas Neto
79eea9376b
window: Add new event button
...
As per the latest mockups [1]
[1] https://teams.pages.gitlab.gnome.org/Design/web-experiments/calendar/headerbar
2019-05-09 17:42:59 -03:00
Georges Basile Stavracas Neto
771c5c30f0
window: Reorganize a few functions
2019-05-09 17:42:59 -03:00
Georges Basile Stavracas Neto
0baeaa160a
window: Delegate changing dates to GcalView
...
The view knows its time range, and knows what the
next or previous dates should be. So instead of
calculating the next date manually, ask the views
for that.
2019-05-09 17:42:59 -03:00
Georges Basile Stavracas Neto
da31180cba
view: Let views handle subscription range
...
Instead of GcalWindow handling the ranges themselves,
delegate this responsibility to the views.
2019-05-09 17:42:58 -03:00
Georges Basile Stavracas Neto
1f0179c431
ci: Simplify CI
...
Only build with the 'flatpak' stage, since it does
everything we do on other stages already.
2019-05-04 22:45:14 -03:00
Georges Basile Stavracas Neto
a88b628507
build: Make generated sources a dependency
...
So that they are 100% certain to be generated before
starting to build libgcal.
2019-05-04 22:15:17 -03:00
Georges Basile Stavracas Neto
a2609d6853
project: Reorganize much
2019-05-04 19:48:40 -03:00
Georges Basile Stavracas Neto
70cb7c14a9
build: Make libgcal a static library
...
This avoids us building everything twice.
2019-05-04 12:28:45 -03:00
Georges Basile Stavracas Neto
682e614e4b
Remove developer docs
...
They're essentially useless.
2019-05-04 12:28:24 -03:00
Georges Basile Stavracas Neto
f55b4531ef
project: Move ui-related classes to gui/
2019-05-04 12:14:05 -03:00
Georges Basile Stavracas Neto
d5fbce1385
window: Remove search mode
2019-05-04 12:05:39 -03:00
Georges Basile Stavracas Neto
bb8d5b92ce
manager: Handle default calendars via GcalCalendar
2019-05-04 12:05:39 -03:00
Georges Basile Stavracas Neto
7811b90730
tests: Fix test suite
...
Introduce a new GcalStubCalendar class that essentially
removes the ECalClient initialization from GcalCalendar,
and use it as part of a new private library consumed by
the tests.
2019-05-04 12:05:39 -03:00
Georges Basile Stavracas Neto
28c5a41639
build: Properly include deps and directories in libgcal_dep
2019-05-04 12:05:39 -03:00
Georges Basile Stavracas Neto
ada9bcc473
calendar: Fix signal handler cleanup on finalize()
2019-05-04 12:05:39 -03:00
Georges Basile Stavracas Neto
5e3eb40c53
utils: Add gcal_clear_signal_handler
2019-05-04 12:05:39 -03:00
Georges Basile Stavracas Neto
245df513d7
event: Simplify color handling
...
We can use GcalCalendar::color property directly now.
2019-05-04 12:05:39 -03:00
Georges Basile Stavracas Neto
02cbfdadf2
calendar: Make it a derivable class
2019-05-04 12:05:39 -03:00
Georges Basile Stavracas Neto
df182d1b88
manager: Remove "loading" property
...
The stack is robust enough to handle dynamically
loading the calendars.
2019-05-04 12:05:39 -03:00
Georges Basile Stavracas Neto
e7c6120133
manager: Remove gcal_manager_is_client_writable()
...
It is now handled by GcalCalendar, and nobody else uses
it.
2019-05-04 12:05:39 -03:00
Georges Basile Stavracas Neto
e617d29309
source-dialog: Use more GcalCalendar API
2019-05-04 12:05:39 -03:00
Georges Basile Stavracas Neto
e800bb2476
manager: Remove gcal_manager_enable/disable_source()
...
This is now managed by GcalCalendar itself.
2019-05-04 12:05:39 -03:00
Georges Basile Stavracas Neto
560419ed8a
editorconfig: Update tab width
2019-05-04 12:05:39 -03:00
Georges Basile Stavracas Neto
e3e19b4cea
application: Parse CSS more aggressively
2019-05-04 12:05:39 -03:00
Georges Basile Stavracas Neto
2ef1cbc463
manager: Toggle data model sources when changed
...
Instead of other classes needing to manually set and
unset whether a source is registered in the data model,
we can now simply call GcalCalendar.set_visible() and
have the model be updated for us.
2019-05-04 12:05:39 -03:00
Georges Basile Stavracas Neto
fd3d2ea3f6
window: Move calendar popover to GcalCalendarPopover
...
This helps reducing the LOC number of GcalWindow, and
allows us to also implement the popover in a better way.
2019-05-04 12:05:39 -03:00
Georges Basile Stavracas Neto
64fa11f4c0
calendar: Fix double unref
2019-05-04 12:05:39 -03:00
Georges Basile Stavracas Neto
1a5ff545a2
project: Move a few classes to core/
2019-05-04 12:05:39 -03:00