Skip to content

Commit 1975bd1

Browse files
committed
Migrate to UWP and VS and redesign some things
1 parent 427e29a commit 1975bd1

309 files changed

Lines changed: 9701 additions & 6682 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/ISSUE_TEMPLATE/bug_report.yml

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name: Bug Report
2-
description: Help improve Reminders by filing a bug report
2+
description: Help improve Cue by filing a bug report
33
title: "[Bug]: "
44
labels: ["bug"]
55
body:
@@ -8,26 +8,27 @@ body:
88
value: |
99
## System information
1010
11-
Make sure you have tested the Flatpak release of Reminders through Flathub before opening a bug report. If the bug is not present in the Flatpak open the report with the package maintainer.
11+
If on Linux, make sure you have tested the Flatpak release of Cue through Flathub before opening a bug report. If the bug is not present in the Flatpak open the report with the package maintainer.
1212
1313
- type: dropdown
1414
id: package
1515
attributes:
1616
label: Package
1717
description: |
18-
Where did you install Reminders from?
18+
Where did you install Cue from?
1919
options:
2020
- Flathub
2121
- Flathub Beta
22+
- Windows Store
2223
validations:
2324
required: true
2425

2526
- type: input
2627
id: distro
2728
attributes:
28-
label: Distribution
29+
label: OS
2930
description: What distribution are you currently using?
30-
placeholder: Fedora 37, Ubuntu 22.04, Arch Linux...
31+
placeholder: Fedora 37, Ubuntu 22.04, Windows 10...
3132
validations:
3233
required: true
3334

@@ -63,7 +64,9 @@ body:
6364
attributes:
6465
label: Logs
6566
description: |
66-
If you saw an error dialog, click view error and copy the text here. Otherwise you can run something like `sudo journalctl --boot | grep remembrance | grep -i error` in the terminal to see the errors and copy that here.
67+
If you can access the about page, you can also view logs by going to About > Troubleshooting > Debugging Information.
68+
On Windows you can find these logs by pressing `Windows Key + r` and entering `%LOCALAPPDATA%`, and then navigating to `cuedevs.Cue.Devel_4zhcwx3m88y16\LocalState\cue`.
69+
On Linux the logs are at `~/.var/app/io.github.cuedevs.Cue/data/cue`.
6770
render: shell
6871
validations:
6972
required: false

.github/workflows/flatpak_builder.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,6 @@ jobs:
2020
- uses: actions/checkout@v3
2121
- uses: bilelmoussaoui/flatpak-github-actions/flatpak-builder@v6.1
2222
with:
23-
bundle: Reminders.flatpak
24-
manifest-path: flatpak/io.github.remindersdevs.Reminders.Devel.yml
23+
bundle: Cue.flatpak
24+
manifest-path: flatpak/io.github.cuedevs.Cue.Devel.yml
2525
cache-key: flatpak-builder-${{ github.sha }}

.github/workflows/release.yml

Lines changed: 0 additions & 29 deletions
This file was deleted.

.github/workflows/windows.yml

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,7 @@ jobs:
1818
- uses: msys2/setup-msys2@v2
1919
with:
2020
update: true
21-
- uses: actions/setup-dotnet@v3
22-
with:
23-
dotnet-version:
24-
7.x
21+
- uses: microsoft/setup-msbuild@v1.1
2522
- name: Build
2623
run: |
27-
dotnet tool install --global wix --version 4.0.0
28-
windows/build_windows.ps1 -msi
24+
msbuild Cue.sln -property:Platform=x64 -property:Configuration=Devel

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,7 @@ build-dir
44
bin
55
out
66
obj
7+
bin
8+
*.assets.cache
9+
*.user
710
.vs
Lines changed: 50 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,4 @@
1-
# Reminders DBus Service version 5.0 Documentation
2-
name: io.github.remindersdevs.Reminders.Service
3-
4-
interface: io.github.remindersdevs.Reminders.Service
5-
6-
object: /io/github/remindersdevs/Reminders/Service
1+
# Cue DBus Service version 5.0 Documentation
72

83
Currently this is only packaged with Reminders and anyone who wants to use it will have to have the full Reminders app installed. The reason this exists is to allow integrating the Reminders app with desktop environments through extensions.
94

@@ -13,6 +8,30 @@ This service will have some breaking changes made to it at times, so make sure y
138

149
Newer versions of this service should usually be compatible with apps that expect an older version. If this ever changes, the bus name will be updated.
1510

11+
To use the dbus service, you first need to connect to the public service on the DBus session bus, and get the private address, and then connect to the private server at that address. This is done for security reasons, and also for performance reasons on Windows. I wont be explaining how to do all of this in your app, but you can always look at my source code if you are confused, and GLib also has an example [here](https://gitlab.gnome.org/GNOME/glib/-/blob/HEAD/gio/tests/gdbus-example-server.c).
12+
13+
Do not try to use this service on Windows, you probably will not have any luck even though Cue runs on Windows.
14+
15+
# Public Service (Session Bus)
16+
name: io.github.cuedevs.Cue.Service
17+
18+
interface: io.github.cuedevs.Cue.Service
19+
20+
object: /io/github/cuedevs/Cue/Service
21+
22+
## Methods
23+
24+
### GetPrivateAddress
25+
Get address of private dbus server
26+
- Returns (s)
27+
- dbus-address
28+
- Type: s
29+
30+
# Private Service
31+
interface: io.github.cuedevs.Cue.Service
32+
33+
object: /io/github/cuedevs/Cue/Service
34+
1635
## Enums
1736
### RepeatType
1837
On what interval to repeat the reminder.
@@ -41,18 +60,18 @@ Type: a{sv}
4160
| 'id' | s | This is the id of the reminder. | This usually cannot be left blank, no default. |
4261
| 'title' | s | This is the title of the reminder. | '' |
4362
| 'description' | s | This is a short description of the reminder. | '' |
44-
| 'due-date' | u | This is a Unix timestamp for the day that the reminder is due. This should be at 00:00 of the desired day in UTC, and can be 0 if you don't want to set a due date. | 0 |
45-
| 'timestamp' | u | This is a Unix timestamp that sets when the notification will be sent. This has to be on the same day as the due date, and if it isn't the due date will be changed. This can be 0 if you don't want to send a notification. | 0 |
63+
| 'due-date' | t | This is a Unix timestamp for the day that the reminder is due. This should be at 00:00 of the desired day in UTC, and can be 0 if you don't want to set a due date. | 0 |
64+
| 'timestamp' | t | This is a Unix timestamp that sets when the notification will be sent. This has to be on the same day as the due date, and if it isn't the due date will be changed. This can be 0 if you don't want to send a notification. | 0 |
4665
| 'important' | b | Whether or not the reminder is important. | False |
4766
| 'completed' | b | Whether or not the reminder is completed. | False |
4867
| 'repeat-type' | q | This is the enum [RepeatType](#repeattype). | 0 |
4968
| 'repeat-frequency' | q | How often to repeat the reminder, so if 'repeat-type' is 4 and and 'repeat-frequency' is 3, it will repeat every 3 weeks. | 1 |
5069
| 'repeat-days' | q | This is the enum [RepeatDays](#repeatdays). | 0 |
5170
| 'repeat-times'| q | How many times in total the reminder should be repeated, this gets decreased by 1 each time the reminder is repeated. -1 if you want to repeat forever or are not repeating. Must be -1 for Microsoft Tasks. | -1 |
52-
| 'repeat-until' | u | This is a Unix timestamp that represents the last day that the reminder should be repeated on. This should be at 00:00 of the desired day in UTC. Must be 0 for Microsoft Tasks | 0 |
53-
| 'created-timestamp' | u | This is a Unix timestamp that represents the time the reminder was created, this is set automatically and cannot be changed. | 0 |
54-
| 'updated-timestamp' | u | This is a Unix timestamp that represents the last time the reminder was updated, this is set automatically and cannot be changed. | 0 |
55-
| 'completed-date' | u | This is a Unix timestamp that represents the day the reminder was completed, at 00:00 in UTC. 0 if not complete. This is set automatically and cannot be changed. | 0 |
71+
| 'repeat-until' | t | This is a Unix timestamp that represents the last day that the reminder should be repeated on. This should be at 00:00 of the desired day in UTC. Must be 0 for Microsoft Tasks | 0 |
72+
| 'created-timestamp' | t | This is a Unix timestamp that represents the time the reminder was created, this is set automatically and cannot be changed. | 0 |
73+
| 'updated-timestamp' | t | This is a Unix timestamp that represents the last time the reminder was updated, this is set automatically and cannot be changed. | 0 |
74+
| 'completed-date' | t | This is a Unix timestamp that represents the day the reminder was completed, at 00:00 in UTC. 0 if not complete. This is set automatically and cannot be changed. | 0 |
5675
| 'list-id' | s | This is the id of the list that the reminder is in. | 'local' |
5776

5877
## List Object
@@ -182,12 +201,12 @@ Add a new reminder
182201
- Note that the 'completed', and 'id' key will be ignored here
183202
- You can leave any of these values blank, in that case the default value will be used
184203

185-
- Returns (su)
204+
- Returns (st)
186205
- reminder-id
187206
- Type: s
188207
- Id that was generated to represent the reminder, keep track of these
189208
- created-timestamp
190-
- Type: u
209+
- Type: t
191210
- The Unix timestamp of when the reminder was created
192211

193212
### UpdateReminder
@@ -200,9 +219,9 @@ Update an existing reminder
200219
- Note that the 'completed' key will be ignored here
201220
- You can leave any of these values blank, in that case the previous value will be used
202221

203-
- Returns (u)
222+
- Returns (t)
204223
- updated-timestamp
205-
- Type: u
224+
- Type: t
206225
- The Unix timestamp of when the reminder was updated
207226

208227
### UpdateCompleted
@@ -217,12 +236,12 @@ Update the completed status of a reminder
217236
- Type: b
218237
- Whether or not the reminder should be completed
219238
- completed-date
220-
- Type: u
239+
- Type: t
221240
- The Unix timestamp of the day the reminder was completed
222241

223-
- Returns (u)
242+
- Returns (t)
224243
- updated-timestamp
225-
- Type: u
244+
- Type: t
226245
- The Unix timestamp of when the reminder was updated
227246

228247
### RemoveReminder
@@ -245,12 +264,12 @@ Update an existing reminder
245264
- Note that the 'completed' key will be ignored here
246265
- You can leave any of these values blank, in that case the previous value will be used
247266

248-
- Returns (u)
267+
- Returns (t)
249268
- updated-reminder-ids
250269
- Type: as
251270
- Ids of reminders that were actually updated (in case there were errors)
252271
- updated-timestamp
253-
- Type: u
272+
- Type: t
254273
- The Unix timestamp of when the reminder was updated
255274

256275
### UpdateCompletedv
@@ -265,15 +284,15 @@ Update the completed status of a reminder
265284
- Type: b
266285
- Whether or not the reminder should be completed
267286

268-
- Returns (asu)
287+
- Returns (ast)
269288
- updated-reminder-ids
270289
- Type: as
271290
- Ids of reminders that were actually updated (in case there were errors)
272291
- updated-timestamp
273-
- Type: u
292+
- Type: t
274293
- The Unix timestamp of when the reminder was updated
275294
- completed-date
276-
- Type: u
295+
- Type: t
277296
- The Unix timestamp of the day the reminder was completed
278297

279298
### RemoveReminderv
@@ -359,7 +378,7 @@ Read reminders file again and also check for remote updates. Changes will be emi
359378
- The version of the service that is currently loaded (PEP 440)
360379

361380
### Quit
362-
Quits the service
381+
Quits the service, this will not return anything and will close the connection immediately. Make sure to handle the error if needed.
363382

364383
## Signals
365384

@@ -411,7 +430,7 @@ Emitted when a Reminder is created or updated
411430

412431
### CompletedUpdated
413432
Emitted when a reminder's completed status is changed
414-
- Parameters (ssbuu)
433+
- Parameters (ssbtt)
415434
- [app-id](#app-id-parameter)
416435
- Type: s
417436
- reminder-id
@@ -421,10 +440,10 @@ Emitted when a reminder's completed status is changed
421440
- Type: b
422441
- Whether or not the reminder was set as completed
423442
- updated-timestamp
424-
- Type: u
443+
- Type: t
425444
- The Unix timestamp of when the reminder was last updated
426445
- completed-date
427-
- Type: u
446+
- Type: t
428447
- The Unix timestamp of the day the reminder was completed
429448

430449
### ReminderRemoved
@@ -446,7 +465,7 @@ Emitted when a reminder is removed
446465

447466
### RemindersCompleted
448467
Emitted when multiple reminders' completed status changes
449-
- Parameters (saa{sv})
468+
- Parameters (sasbtt)
450469
- [app-id](#app-id-parameter)
451470
- Type: s
452471
- reminder-ids
@@ -456,10 +475,10 @@ Emitted when multiple reminders' completed status changes
456475
- Type: b
457476
- Whether or not the reminders were set as completed
458477
- updated-timestamp
459-
- Type: u
478+
- Type: t
460479
- The Unix timestamp of when the reminders were updated
461480
- completed-date
462-
- Type: u
481+
- Type: t
463482
- The Unix timestamp of the day the reminders were completed
464483

465484
### RemindersRemoved

Cue.msbuildproj

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<!--
3+
Copyright (C) 2023 Sasha Hale <dgsasha04@gmail.com>
4+
5+
This program is free software: you can redistribute it and/or modify it under
6+
the terms of the GNU General Public License as published by the Free Software
7+
Foundation, either version 3 of the License, or (at your option) any later
8+
version.
9+
10+
This program is distributed in the hope that it will be useful, but WITHOUT
11+
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
12+
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
13+
14+
You should have received a copy of the GNU General Public License along with
15+
this program. If not, see <http://www.gnu.org/licenses/>.
16+
-->
17+
<Project Sdk="Microsoft.Build.NoTargets/3.7.0">
18+
<PropertyGroup>
19+
<Configuration Condition=" '$(Configuration)' == '' ">Devel</Configuration>
20+
<Platform Condition=" '$(Platform)' == '' ">x64</Platform>
21+
<ProjectGuid>{9B2DF041-7C27-4D85-8FB8-38DD8ACCF3D4}</ProjectGuid>
22+
<TargetFramework>net6.0</TargetFramework>
23+
<Configurations>Devel;Release</Configurations>
24+
<Platforms>x86;x64;ARM64</Platforms>
25+
</PropertyGroup>
26+
27+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
28+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" />
29+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x86'" />
30+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Devel|ARM64'" />
31+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Devel|x64'" />
32+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Devel|x86'" />
33+
34+
<ItemGroup>
35+
<Content Include="build\$(Platform)\**">
36+
<Link>%(RecursiveDir)%(Filename)%(Extension)</Link>
37+
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
38+
</Content>
39+
</ItemGroup>
40+
41+
<Target Name="BuildApp" BeforeTargets="Build">
42+
<PropertyGroup>
43+
<PowerShellExe Condition=" '$(PowerShellExe)'=='' ">%WINDIR%\System32\WindowsPowerShell\v1.0\powershell.exe</PowerShellExe>
44+
<MSYSRoot Condition=" '$(MSYSRoot)'=='' ">%SystemDrive%\msys64</MSYSRoot>
45+
<PSScript>.\windows\build_windows.ps1 -arches $(Platform) -root $(MSYSRoot) -configuration $(Configuration)</PSScript>
46+
</PropertyGroup>
47+
<Exec Command="$(PowerShellExe) -NonInteractive -executionpolicy Unrestricted -command &quot;&amp; { $(PSScript) } &quot;" ContinueOnError="True" WorkingDirectory="$(MSBuildProjectDirectory)" />
48+
</Target>
49+
</Project>

0 commit comments

Comments
 (0)