diff --git a/providers/iCloud/32.svg b/providers/iCloud/32.svg new file mode 100644 index 00000000..da43ef58 --- /dev/null +++ b/providers/iCloud/32.svg @@ -0,0 +1,325 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + diff --git a/providers/iCloud/48.svg b/providers/iCloud/48.svg new file mode 100644 index 00000000..87c2d12b --- /dev/null +++ b/providers/iCloud/48.svg @@ -0,0 +1,293 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + diff --git a/providers/iCloud/com.icloud.calendar.service b/providers/iCloud/com.icloud.calendar.service new file mode 100644 index 00000000..e69de29b diff --git a/providers/iCloud/com.icloud.contacts.service b/providers/iCloud/com.icloud.contacts.service new file mode 100644 index 00000000..e69de29b diff --git a/providers/iCloud/com.icloud.mail.service b/providers/iCloud/com.icloud.mail.service new file mode 100644 index 00000000..e69de29b diff --git a/providers/iCloud/com.icloud.provider b/providers/iCloud/com.icloud.provider new file mode 100644 index 00000000..4d0f5014 --- /dev/null +++ b/providers/iCloud/com.icloud.provider @@ -0,0 +1,15 @@ + + + iCloud + Mail, Contacts, Calendars, and Tasks + io.elementary.online-accounts.icloud + online-accounts-plug + icloud + + + diff --git a/providers/iCloud/com.icloud.tasks.service b/providers/iCloud/com.icloud.tasks.service new file mode 100644 index 00000000..e69de29b diff --git a/providers/iCloud/icloud.svg b/providers/iCloud/icloud.svg deleted file mode 100644 index 9d7b65e7..00000000 --- a/providers/iCloud/icloud.svg +++ /dev/null @@ -1,270 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - - - - diff --git a/providers/iCloud/meson.build b/providers/iCloud/meson.build new file mode 100644 index 00000000..93d9c63a --- /dev/null +++ b/providers/iCloud/meson.build @@ -0,0 +1,30 @@ +provider_rdnn = 'io.elementary.online-accounts.icloud' + +install_data( + 'com.icloud.provider', + install_dir: providers_dir +) + +install_data( + 'com.icloud.calendar.service', + 'com.icloud.contacts.service', + 'com.icloud.mail.service', + 'com.icloud.tasks.service', + install_dir: services_dir, +) + +icon_sizes = ['32', '48'] + +foreach i : icon_sizes + install_data( + i + '.svg', + install_dir: join_paths(hicolor_dir, i + 'x' + i, 'apps'), + rename: provider_rdnn + '.svg' + ) + install_data( + i + '.svg', + install_dir: join_paths(hicolor_dir, i + 'x' + i + '@2', 'apps'), + rename: provider_rdnn + '.svg' + + ) +endforeach diff --git a/providers/meson.build b/providers/meson.build index 9567d726..74f46eb5 100644 --- a/providers/meson.build +++ b/providers/meson.build @@ -4,6 +4,7 @@ services_dir = libaccounts_dep.get_pkgconfig_variable('servicefilesdir') subdir('Facebook') subdir('FastMail') subdir('Google') +subdir('iCloud') subdir('LastFM') subdir('Mail') subdir('Microsoft') diff --git a/src/Authentification/iCloudDialog.vala b/src/Authentification/iCloudDialog.vala new file mode 100644 index 00000000..b2aa45b8 --- /dev/null +++ b/src/Authentification/iCloudDialog.vala @@ -0,0 +1,59 @@ +/* + * Copyright 2013-2019 elementary, Inc. (https://elementary.io) + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the + * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301 USA. + */ + +public class OnlineAccounts.iCloudDialog : OnlineAccounts.Dialog { + public iCloudDialog (GLib.HashTable params) { + base (params); + + var info_label = new Gtk.Label (_("Loading…")); + + var spinner = new Gtk.Spinner (); + spinner.start (); + + var back_button = new Gtk.Button.with_label (_("Back")); + back_button.halign = Gtk.Align.START; + back_button.margin = 6; + back_button.get_style_context ().add_class (Granite.STYLE_CLASS_BACK_BUTTON); + + var container_grid = new Gtk.Grid (); + container_grid.column_spacing = 6; + container_grid.valign = Gtk.Align.CENTER; + container_grid.add (info_label); + container_grid.add (spinner); + + var header_box = new Gtk.Box (Gtk.Orientation.HORIZONTAL, 6); + header_box.hexpand = true; + header_box.add (back_button); + header_box.set_center_widget (container_grid); + + + attach (header_box, 0, 0); + attach (new Gtk.Separator (Gtk.Orientation.HORIZONTAL), 0, 1); + show_all (); + + back_button.clicked.connect (() => { + error_code = OnlineAccounts.SignonUIError.CANCELED; + finished (); + }); + } + + public override bool refresh_captcha (string uri) { + return true; + } +} diff --git a/src/meson.build b/src/meson.build index f3ecdb97..21581893 100644 --- a/src/meson.build +++ b/src/meson.build @@ -4,6 +4,7 @@ plug_files = files( 'Plug.vala', 'Authentification/DialogService.vala', 'Authentification/Dialog.vala', + 'Authentification/iCloudDialog.vala', 'Authentification/Key.vala', 'Authentification/MailDialog.vala', 'Authentification/PasswordDialog.vala',