Hari Rana
35580dc40c
event-editor/event-editor-dialog: Explicitly grab focus on summary section
...
As described in the previous commit, this approach is more
predictable because the focus is decided in the same place.
The focus grabbing behavior is set after notifying
the `GcalEventEditorDialog:event` property as otherwise it would
not select the entire text in some occasions.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/782 >
2026-06-25 07:39:38 -04:00
Hari Rana
3271974b95
event-editor/summary-section: Override grab_focus()
...
This will allow for a cleaner and more predictable focus behavior,
as this will give the capability to the dialog to grab focus
on either the "Done" button or summary section depending on the
writability, as opposed to the current approach, where the
summary section assumes that it is already writable and grabs focus,
which then the dialog sets focus on the "Done" button.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/782 >
2026-06-25 07:39:38 -04:00
Hari Rana
3c67de4076
event-editor/attendee-details-page: Use AdwPreferencesGroup API
...
AdwPreferencesGroup now has the `bind_model()` method, so it's
best to just use that.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/781 >
2026-06-23 14:10:35 -04:00
Hari Rana
cda1362c59
event-editor/event-editor-section: Add AdwPreferencesGroup as prerequisite
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/781 >
2026-06-23 14:10:35 -04:00
Hari Rana
240dc649ce
event-editor/summary-section: Inherit AdwPreferencesGroup
...
This is a prerequisite to make GcalEventEditorSection require
inheriting AdwPreferencesGroup.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/781 >
2026-06-23 14:10:35 -04:00
Hari Rana
cbee9bbb60
event-editor/schedule-section: Inherit AdwPreferencesGroup
...
This is a prerequisite to make GcalEventEditorSection require
inheriting AdwPreferencesGroup.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/781 >
2026-06-23 14:10:34 -04:00
Hari Rana
60c9989e4b
event-editor/attendees-section: Inherit AdwPreferencesGroup
...
This is a prerequisite to make GcalEventEditorSection require
inheriting AdwPreferencesGroup.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/781 >
2026-06-23 14:10:34 -04:00
Hari Rana
c595d8a6e8
event-editor/reminders-section: Inherit AdwPreferencesGroup
...
This is a prerequisite to make GcalEventEditorSection require
inheriting AdwPreferencesGroup.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/781 >
2026-06-23 14:10:34 -04:00
Hari Rana
fbea369c0f
event-editor/notes-section: Inherit AdwPreferencesGroup
...
The end goal is to make GcalEventEditorSection require inheriting
AdwPreferencesGroup. Given that most widgets utilizing
GcalEventEditorSection inherit another widget, we first want to
change and adapt the inheritance, and then bump the requirement
of the interface.
These changes will be made incrementally, starting
with GcalNotesSection.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/781 >
2026-06-23 14:10:34 -04:00
Hari Rana
568227346b
event-editor/event-editor-dialog: Port to AdwPreferencesPage
...
Our use case is already handled by the `AdwPreferencesPage:banner`
property, which allows us to port the dialog to AdwPreferencesPage.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/781 >
2026-06-23 14:10:34 -04:00
Hari Rana and Jamie Gravendeel
4f037132fe
event-editor/schedule-section: Use separate-rows property in all-day section
...
`separate-rows` already does what we want, and using that property
allows us to nesting AdwPreferencesGroup into a GtkBox widget.
Co-authored-by: Jamie Gravendeel <me@jamie.garden >
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/781 >
2026-06-23 14:10:28 -04:00
Hari Rana
8bbaeb754b
event-editor/schedule-section: Use AdwInlineViewSwitcher
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/781 >
2026-06-23 13:02:50 -04:00
Hari Rana
701c6e3cb5
event-editor/event-editor-dialog: Install actions in widget class
...
This is a prerequisite in order to enable/disable actions using
`gtk_widget_action_set_enabled()`, is something we'll be making
use of in the future.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/779 >
2026-06-23 12:55:12 -04:00
Hari Rana
3d768fa748
event-editor/attendee-row: Remove unused GtkBox
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/779 >
2026-06-23 12:55:12 -04:00
Hari Rana
eff6aeb6d6
event-editor/attendee-details-page: Chain up finalize()
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/779 >
2026-06-23 12:55:12 -04:00
Hari Rana
50ee469d42
core/event: Add remove_alarm() prototype to header
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/780 >
2026-06-23 12:48:03 -04:00
Hari Rana
5a171ea813
flatpak: Use runtime's GCR
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/778 >
2026-06-22 21:37:26 +00:00
Hari Rana
48d7037311
about: Explicitly state when app is not contained inside Flatpak
...
At the moment, whenever the user is not running under Flatpak,
the "Flatpak:" label won't show up, which confused me for a moment
when looking at https://gitlab.gnome.org/GNOME/gnome-calendar/-/work_items/1609 ,
as I assumed the "Flatpak:" label showed up whether it was running
under Flatpak or not, making me assume that they did not go in the
Troubleshooting section.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/777 >
2026-06-19 13:10:17 -04:00
Hari Rana
4f9cba85fb
views/month-view: Set ceiled height of each row
...
Fixes: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/work_items/1290 >
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/772 >
2026-05-28 06:27:37 -04:00
Hari Rana
7ebd9f2744
views/month-view-row: Add property to negate the compensated pixel
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/772 >
2026-05-28 06:27:37 -04:00
Hari Rana
1dcec8d2b5
event-editor/notes-section: Follow AdwEntryRow's style
...
The current notes text view has had a 2px offset for
an unknown amount of time, due to us magic-numbering
margins and/or padding. This approach works a little
bit differently, in that it uses the `.editable-area`
style class and sets the overlay's CSS name to "box"
to use a predictable size of margins from AdwEntryRow.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/738 >
2026-05-25 07:07:53 -04:00
Hari Rana
8629b1f422
views/month-cell: Create activation signal and shortcuts from utility function
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/747 >
2026-05-04 10:42:02 +00:00
Hari Rana
c507fb23af
gui/event-widget: Create activation signal and shortcuts from utility function
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/747 >
2026-05-04 10:42:02 +00:00
Hari Rana
312b286e2b
utils: Add utility function for creating activate signal and shortcuts
...
The current way of adding activation shortcuts is cumbersome,
as it is a for-loop pasted in the middle of class initializers.
The utility function addresses this problem by simply allowing us
to declaratively add these shortcuts with minimal effort.
Furthermore, the implementation is also simpler, thanks to the
`gtk_widget_class_add_binding_signal()` wrapper function.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/747 >
2026-05-04 10:42:02 +00:00
Hari Rana
2bc9c96095
flatpak: Use intltool provided by shared-modules
...
Launchpad is currently dealing with DDoS issues. The shared-module
repository contains mirrors which can be useful for those who are
unable to build intltool.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/756 >
2026-05-03 15:25:44 +00:00
Hari Rana
92b74849bf
views/month-cell: Add AdwBin as parent to methods retrieving height of widget
...
This is future-proofing the uncertain decision of removing
GtkWidget's `margin-*` properties in the future, which is what
we're currently using to retrieve the height of certain widgets.
Whenever the intention is to get the entire size of a particular
widget, including properties that contribute to layout such as
margins, the `get_width()`/`get_height()` methods don't include
these properties during calculations. However, getting the size
of the parent widget will include them in its entirety.
As such, the safest path is to use AdwBin as the parent to the
respective widgets, and using it to retrieve the height.
See: <https://gitlab.gnome.org/GNOME/gtk/-/issues/6556#note_2056432 >
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/739 >
2026-04-03 16:37:14 -04:00
Hari Rana
9f8faf0db0
data: Add agenda view screenshot
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/718 >
2026-04-01 11:20:44 +00:00
Hari Rana
49e0521b67
views/week-view: Adapt to high contrast
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/710 >
2026-03-31 21:55:32 -04:00
Hari Rana
c0063f29c8
calendar-management/calendars-page: Delete calendar during unmapping
...
The previous commit reintroduced
https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1270
In order to solve this without destroying the dialog,
the calendar is forcefully deleted when unmapping.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/712 >
2026-03-24 16:14:47 +00:00
Hari Rana
98a993de4d
gui/window: Reuse calendar management dialog
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/712 >
2026-03-24 16:14:47 +00:00
Hari Rana
8012dc4404
calendar-management/calendar-management-dialog: Replace hide() override with unmap()
...
`hide()` stopped working since we ported to AdwDialog. We certainly
don't want to override the `close()` virtual method from AdwDialog,
as page transitions begin while the dialog is closing. Instead,
we can override `unmap()`, which will do it at the very end.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/712 >
2026-03-24 16:14:47 +00:00
Hari Rana
48e86c7f3d
search/search-engine: Replace "context" property with context getter method
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702 >
2026-03-23 19:30:04 +00:00
Hari Rana
e0250064f6
core/shell-search-provider: Replace "context" property with context getter method
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702 >
2026-03-23 19:30:04 +00:00
Hari Rana
088d826c34
gui/importer: Replace "context" property with context getter method
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702 >
2026-03-23 19:30:04 +00:00
Hari Rana
b5d12237d5
gui/window: Remove "context" property
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702 >
2026-03-23 19:30:04 +00:00
Hari Rana
dc4cfe4ecf
core/manager: Remove "context" property
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702 >
2026-03-23 19:30:03 +00:00
Hari Rana
4e9ea9cd51
core/timeline: Remove "context" property
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702 >
2026-03-23 19:30:03 +00:00
Hari Rana
170bed7755
gui/event-popover: Replace "context" property with context getter method
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702 >
2026-03-23 19:30:02 +00:00
Hari Rana
037ffd3700
gui/event-widget: Replace "context" property with context getter method
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702 >
2026-03-23 19:30:02 +00:00
Hari Rana
3c9a525710
gui/calendar-management: Replace "context" property with context getter method
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702 >
2026-03-23 19:30:02 +00:00
Hari Rana
3f486c2ccc
gui/search-button: Replace "context" property with context getter method
...
This is the last remaining widget whose `context` property was bound
to GcalWindow's on construction and was null-asserted before
setting the value, making the FIXME comment unnecessary.
Fixes: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1463
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702 >
2026-03-23 19:30:02 +00:00
Hari Rana
c7c5d49b14
gui/sync-indicator: Replace "context" property with context getter method
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702 >
2026-03-23 19:30:01 +00:00
Hari Rana
0e73034ffe
gui/quick-add-popover: Replace "context" property with context getter method
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702 >
2026-03-23 19:30:01 +00:00
Hari Rana
9b4c166a18
event-editor/event-editor-dialog: Replace "context" property with context getter method
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702 >
2026-03-23 19:30:01 +00:00
Hari Rana
f44a1ee942
event-editor/event-editor-section: Remove "context" property
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702 >
2026-03-23 19:30:00 +00:00
Hari Rana
669906c601
event-editor/summary-section: Remove "context" property
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702 >
2026-03-23 19:30:00 +00:00
Hari Rana
b979ea05b5
event-editor/schedule-section: Replace "context" property with context getter method
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702 >
2026-03-23 19:30:00 +00:00
Hari Rana
7bcb78b6ae
event-editor/reminders-section: Remove "context" property
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702 >
2026-03-23 19:30:00 +00:00
Hari Rana
aafbd71ced
event-editor/notes-section: Remove "context" property
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702 >
2026-03-23 19:30:00 +00:00
Hari Rana
a51b65f5f7
event-editor/attendees-section: Remove "context" property
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702 >
2026-03-23 19:30:00 +00:00
Hari Rana
15a7a8cbd2
views/view: Remove "context" property
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702 >
2026-03-23 19:30:00 +00:00
Hari Rana
ccd3e5cae3
common/date-chooser: Replace "context" method with context getter method
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702 >
2026-03-23 19:30:00 +00:00
Hari Rana
5616ba2c03
views/agenda-view: Replace "context" property with context getter method
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702 >
2026-03-23 19:30:00 +00:00
Hari Rana
cebd3cd84d
views/month-view: Replace "context" property with context getter method
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702 >
2026-03-23 19:30:00 +00:00
Hari Rana
d9f02cee20
views/week-view: Replace "context" property with context getter method
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702 >
2026-03-23 19:29:59 +00:00
Hari Rana
a687d8f10b
gui/weather-settings: Replace "context" with context getter method
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702 >
2026-03-23 19:29:59 +00:00
Hari Rana
af30d8c43f
gui/calendar-list: Replace "context" with context getter method
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702 >
2026-03-23 19:29:58 +00:00
Hari Rana
a84cf3aed9
utils: Add macro for getting default application
...
This will be needed as a replacement for the removal of the
"context" property on every object.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/702 >
2026-03-23 19:29:58 +00:00
Hari Rana
855fea34bf
window: Only clear last_focused_widget if the widget has been focused
...
When opening the event editor dialog as a new event, `set_new_event_mode()`
immediately tries to focus the last focused widget, which won't work
because it is unfocusable. `focus_last_focused_widget()` then clears
clears the pointer regardless of whether the widget has successfully
grabbed focus or not. So, we want to only clear focus if the widget
has successfully grabbed focus.
Related: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1566
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/730 >
2026-03-22 20:19:54 +00:00
Hari Rana
3c94e255ac
window: Grab focus after closing Event Editor dialog
...
Fixes: https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1566
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/730 >
2026-03-22 20:19:54 +00:00
Hari Rana
d0bdc9f2af
gui/month-view-row: Add upward variable
...
`!downward` is disambiguous and could merely be interpreted
as "not downward and not upward either". The `upward` variable
is explicit and describes literally the condition.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/729 >
2026-03-21 10:39:16 -04:00
Hari Rana
b75c44795e
gui/meeting-row: Unset maximum width characters
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/728 >
2026-03-20 11:27:54 -04:00
Hari Rana
4f067eeec7
gui/event-popover: Unset maximum width characters
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/728 >
2026-03-20 11:27:54 -04:00
Hari Rana and Jamie Gravendeel
ec5884fcce
gui/event-popover: Wrap content inside AdwClamp widget
...
The event popover contains a lot of text in different sizes, which
pushes us to magic-number the maximum amount of characters
(i.e. `max-width-chars`) and hope that all is well.
This approach addresses that by simply clamping the parent widget
to the desired size, allowing us to remove all instances
of `max-width-chars`.
Do note that `Adw.Clamp:tightening-threshold` is set to 400 by default,
which technically doesn't need to bind to `Adw.Clamp:maximum-size` at
the moment, but I decided to do it anyway in case we want to change
`Adw.Clamp:maximum-size` in the future and can't figure out why
the margins are off.
Co-authored-by: Jamie Gravendeel <me@jamie.garden >
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/728 >
2026-03-20 11:24:47 -04:00
Hari Rana
dd3e4dce4a
readme: Use new default screenshot
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/724 >
2026-03-12 01:02:30 -04:00
Hari Rana
39cee3cbc3
event-editor/multi-choice: Check if destructor exists before clearing
...
Without this check, the app supposedly crashes when we close it.
GtkListBox frees itself the same way.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/723 >
2026-03-12 01:12:29 +00:00
Hari Rana
50e048c7e0
utils: Turn number of weekdays into a macro
...
While "7" may be obvious in the context of calendaring that
it represents the number of week days, it often gives me the
impression of it being a magic number when I'm hyperfocused on certain
parts of the codebase for several consecutive hours. Turning the
number into a macro helps me scan functions much more easily.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/674 >
2026-03-08 21:53:40 -04:00
Hari Rana
da7b625e18
data: Update screenshot URLs
...
See:
- https://gitlab.gnome.org/Teams/Websites/static.gnome.org/-/merge_requests/47#note_2701250
- https://gitlab.gnome.org/Teams/Websites/static.gnome.org/-/merge_requests/48
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/719 >
2026-03-08 20:15:26 -04:00
Hari Rana
1141c758a4
data: Update screenshots
...
This also sets the month view as the default screenshot.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/717 >
2026-03-08 09:26:11 -04:00
Hari Rana
2638766d10
views/month-view: Focus adjacent cell when tabbing forward from the last event widget
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/564 >
2026-03-03 21:11:16 -03:00
Hari Rana
e607a6bd2e
views/month-view: Clear marks when tabbing from a cell
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/564 >
2026-03-03 21:11:16 -03:00
Hari Rana
d6a450ff1f
gui/window: Focus last focused widget upon closing quick add popover
...
This also introduces the `focus_last_focused_widget()` to make the
code a little bit cleaner.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/564 >
2026-03-03 21:11:16 -03:00
Hari Rana
4e54c18d06
views/month-view: Set focus to cell upon click release
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/564 >
2026-03-03 21:11:16 -03:00
Hari Rana
3102766c51
views/month-view: Allow selecting cells
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/564 >
2026-03-03 21:11:16 -03:00
Hari Rana
6c6dd46a89
views/month-view: Scroll view when out of bounds
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/564 >
2026-03-03 18:35:18 -05:00
Hari Rana
c74fe74b97
views/month-view: Wrap cells
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/564 >
2026-03-03 18:35:18 -05:00
Hari Rana
d8e44108ea
views/month-view: Display quick add popover when activating cell
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/564 >
2026-03-03 18:35:18 -05:00
Hari Rana
3088b2260a
views/month-view-row: Add "activate-cell" signal
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/564 >
2026-03-03 18:35:18 -05:00
Hari Rana
cd0138393f
views/month-cell: Add activate signal
...
This will be needed for keyboard navigation.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/564 >
2026-03-03 18:35:17 -05:00
Hari Rana
471f81eb31
views/month-view-row: Implement focusing cells horizontally
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/564 >
2026-03-03 18:35:17 -05:00
Hari Rana
e6e201d9aa
views/month-view-row: Implement focusing cells vertically
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/564 >
2026-03-03 18:35:17 -05:00
Hari Rana
48e6607d43
views/month-view: Focus adjacent cell when pressing Ctrl+Tab
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/564 >
2026-03-03 18:35:17 -05:00
Hari Rana
405f826252
views/month-view-row: Add method for focusing adjacent cells
...
This method allows to focus the month cells behind the event widgets.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/564 >
2026-03-03 18:35:17 -05:00
Hari Rana
d76d37dff2
views/month-cell: Add focus styling
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/564 >
2026-03-03 18:35:17 -05:00
Hari Rana
e88f77802b
views/month-cell: Override focus() virtual function
...
Without this patch, focus immediately goes to the "Previous Month"
button at startup, for some unknown reason.
So, as a workaround, skip focus if the root cannot retrieve the
current focused widget.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/564 >
2026-03-03 18:35:17 -05:00
Hari Rana
80adbd0d23
views/month-cell: Inherit GtkWidget
...
AdwBreakpointBin, the parent, cannot set focus to itself. Instead
of focusing GtkOverlay, a child widget, we should instead inherit
GtkWidget to allow focusing that instead.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/564 >
2026-03-03 18:35:17 -05:00
Hari Rana
b592f15b26
views/month-view: Add and update accessible elements
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/564 >
2026-03-03 18:35:17 -05:00
Hari Rana
caed41abdd
views/month-cell: Set accessibility properties for overflow button
...
This uses the "toggle-button" role instead of GtkToggleButton widget,
as GtkToggleButton remains toggled after closing the month popover.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/598 >
2026-03-01 19:35:46 +00:00
Hari Rana
55aa6b8cc5
views/month-view: Focus last focused widget after closing month popover
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/598 >
2026-03-01 19:35:46 +00:00
Hari Rana
8877d93059
views/month-popover: Add "closed" signal
...
This will be needed for setting focus to the last focused widget
after closing the popover.
Alternatively, we could have used the "unmap" signal, but this causes
a significant delay before setting focus to the last focused widget,
as it needs to complete the animation before it emits the
"unmap" signal.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/598 >
2026-03-01 19:35:46 +00:00
Hari Rana
f3a6c93245
views/month-popover: Cycle focus through widgets
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/598 >
2026-03-01 19:35:46 +00:00
Hari Rana
5c4a2b1ab0
views/month-popover: Only focus rows
...
This follows the same approach as
https://gitlab.gnome.org/GNOME/gnome-calendar/-/commit/0aaf13626c0bb7e8ade2d79e8b50132b3a583c9f?merge_request_iid=559
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/598 >
2026-03-01 19:35:45 +00:00
Hari Rana
a1c8a9575e
views/month-popover: Make close button unfocusable
...
Close buttons throughout the app are unfocusable, so it's best
to keep that behavior consistent.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/598 >
2026-03-01 19:35:45 +00:00
Hari Rana
19879c6c02
style: Decrease event widget's outline offset
...
Having an offset would hide the overflowing pixels.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/598 >
2026-03-01 19:35:45 +00:00
Hari Rana
295f154c76
views/month-view-row: Allow navigating through overflow buttons
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/598 >
2026-03-01 19:35:45 +00:00
Hari Rana
9e8c9ae6e8
style: Add border radius to overflow button
...
This also adds the `.overflow` style class.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/598 >
2026-03-01 19:35:45 +00:00
Hari Rana
d79a3260f0
views/month-cell: Add margins to overflow button
...
`margin-end` and `margin-bottom` have a 2px margin since the
`box-shadow` CSS property, which is used to mimic a border,
is offset by 1px.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/598 >
2026-03-01 19:35:44 +00:00
Hari Rana
5ed93e73d4
views/month-cell: Add method for retrieving overflow button
...
This is needed for keyboard navigation, specifically for grabbing
focus and checking focus.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/598 >
2026-03-01 19:35:44 +00:00
Hari Rana
24dd9be132
views/month-view: Allow skipping event widgets with Ctrl
...
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/598 >
2026-03-01 19:35:44 +00:00
Hari Rana
bdfb4b609e
views/week-view-common: Port from GtkStyleContext to GtkSnapshot
...
GtkStyleContext methods are deprecated.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/707 >
2026-02-28 13:57:52 +00:00