Commit Graph
23 Commits
Author SHA1 Message Date
Markus Göllnitz 05eb46511f week-view: add border around scrolled main area for distiction from toolbar
Currently, at the top there is an always visible border
which, due to having the same colour as the drop shadow,
slightly interferes with how the drop shadow looks, while
more severely, the bottom bar's start is not easily
distinguishable from the week grid's end, as there is
no border at all.

Styling the scrolled content itself with a border
elegantly solves these two issues, because now a drop
shadow is drawn when scrolling in a direction is
possible, and a border is drawn otherwise.

Closes: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1406

Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/593>
2025-06-11 06:14:13 +02:00
Markus Göllnitz c03c501888 month-view: fix undershoot for new bottom bar
This adds the same styling as .undershoot-bottom would
while scrolling and adjusts the size allocation of month
rows, so that the top border of the month row right below
the last one is already visible.

Link: https://gitlab.gnome.org/GNOME/libadwaita/-/blob/649967044e269a0118ae09a9ff0ecba90cc58300/src/stylesheet/_drawing.scss#L57

Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/542>
2025-06-08 09:59:00 +00:00
Markus Göllnitz 7764b4dc0a window: reintroduce back and forward buttons
They reappear in the newest adaptive layout wireframes.

These were dropped in
54a8445abb ("window: Drop the back and forward buttons")

Closes: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/933

Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/542>
2025-06-08 09:59:00 +00:00
Markus Göllnitz 4a4dce8ee3 views: add time direction property
The time direction property tells which orientation one
needs to scroll to change the time of the view. In these
directions (up/down v left/right) the new prev/next
buttons will be pointing.

The two buttons will be added in a subsequent commit,
and will gain view-dependent tooltips.

Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/542>
2025-06-08 09:59:00 +00:00
Markus Göllnitz d400048bc6 week-view: remove week, month, and year header
This provides only little benefit over the new navigation
button's label. Thus, it is not there in the here newly
implemented UI mock-ups.

Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/542>
2025-06-08 09:59:00 +00:00
Markus Göllnitz 1de447f7f3 month-view: remove month and year header
This header duplicates the month and year from the new
navigation button in the header.

Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/542>
2025-06-08 09:59:00 +00:00
Markus Göllnitz f06bc265cd window: rearrange month and week view
The mock-ups order these by coarse to fine time scales:
year > month > week / multi-day > day | agenda.

Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/542>
2025-06-08 09:59:00 +00:00
Markus Göllnitz b728e5beae window: reorganise top and bottom toolbars
This lets users directly launch the calendar dialogue
instead of sidebar in narrow mode.

It moves the view switcher to bottom when narrow.

This also makes the sidebar overlaid for an intermediate
step between narrow and always optionally visible sidebar.

Further, it moves the today button to bottom with the new
navigation button at its old location.

Closes: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1007

Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/542>
2025-06-08 09:59:00 +00:00
Markus Göllnitz 7904aba23c gui: introduce navigation button with date chooser
The navigation button provides access to a date chooser
at all times without requiring it to be permanently
visible, as done currently with the always-shown sidebar.

Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/542>
2025-06-08 09:59:00 +00:00
Markus Göllnitz df182ed942 calendar-button: change widget to standalone list for sidebar
The sync entry is dropped here in favour of one in the
main menu.

Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/542>
2025-06-08 09:59:00 +00:00
Markus Göllnitz dec31cadd4 views: move agenda view to main area
This prepares for multiple views to be there for mobile
users, and is the location at which a dedicated agenda
view for desktop will be, once the current agenda view
is refactored to suit desktop use-cases better.

Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/542>
2025-06-08 09:59:00 +00:00
Markus Göllnitz 07a6a077cb window: replace sidebar with overlay sidebar
When collapsed, there is no navigation required nor
wanted. Instead, this allows to have an intermediate
breakpoint at which the sidebar is still used, but
overlaid instead of shown side-by-side.

Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/542>
2025-06-08 09:59:00 +00:00
Markus Göllnitz 26db7e1627 window: only allow changing to visible view
As of now, every view is visible. That however, will
change with a subsequent commit moving the agenda view to
the main area and introducing breakpoint-dependent view
visibilities.

Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/542>
2025-06-08 09:59:00 +00:00
Markus Göllnitz 3dce4414a8 enums+window: make GcalWindowView iterators order and length agnostic
Currently, iterators over the GcalWindowView enum relied
on knowing the first and last enum value. But we know,
without knowing which is the first, that an enum in C
will assign 0 to its first value if not otherwise
specified.

And with the trick of a new end value similar to N_PROPS,
we can determine the amount of available window views
without relying on know which it is.

Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/542>
2025-06-08 09:59:00 +00:00
Markus Göllnitz 55df257ed1 window: remove unnecessary single-childed Gtk.Box
Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/542>
2025-06-08 09:59:00 +00:00
Markus Göllnitz 44894475d0 views/month: Display only weather icon under space contraint
If the horizontal space does not allow for an icon and
a temperature label, there'd still be enough space for
an icon only.

Visually, it makes sense to align that icon in icon-only
mode to the end.

Closes: #856

Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
Co-authored-by: Georged Basile Stavracas Neto
<georges.stavracas@gmail.com>
2025-01-22 16:45:31 -03:00
Markus Göllnitz 87607efa90 views/month: Fix measurement of month view and month rows
The measurement in opposit direction of the one in which
the elements are lined up needs not to add up all the
sizes but just get the maximal size.

This bug leads to too high minimal and natural widths
(and heights) of the month view.

Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
2025-01-22 16:45:23 -03:00
Markus Göllnitz 74b1296d07 month-cell: hold weather service while this widget exists
Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
2024-01-27 16:09:02 +00:00
Markus Göllnitz cf40734243 weather-service: add hold/release style use counter to pause weather service
Holding and releasing the weather service makes sure it
is stopped whenever no UI depends on it.

Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
2024-01-27 16:09:02 +00:00
Markus Göllnitz 9c879c999c weather-service: split activate/deactivate from start/stop
Splitting an activation flag from starting and stopping
the service makes it possible to flag the service as
wanted from the settings and still due use counting in a
subsequent commit.

Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
2024-01-27 16:09:02 +00:00
Markus Göllnitz faa6e91d8b weather-service: add location property and split from gc_w_s_run
This helps in preparation of splitting out a dedicated
activation flag from the actually starting and stopping
the service.

Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
2024-01-27 16:09:02 +00:00
Markus Göllnitz 47db4a1de3 weather-service: free location service properly for destruction
This is needed as the location service is not properly
stopped from the portal backend if running in a sandbox
otherwise.

Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
2024-01-27 16:09:02 +00:00
Markus Göllnitz 02465d1bed gcal-manager: fix typo debug message
Signed-off-by: Markus Göllnitz <camelcasenick@bewares.it>
2024-01-27 16:09:02 +00:00