From 55d566140c2e7606a845a810b35f88b97968eb63 Mon Sep 17 00:00:00 2001 From: Bleak Grey Date: Fri, 29 May 2020 15:19:35 +0300 Subject: [PATCH] Merge refactor branch (#173) --- .gitignore | 1 - README.md | 32 +- data/app.css | 37 +- ...com.github.bleakgrey.tootle.appdata.xml.in | 21 +- .../com.github.bleakgrey.tootle.gresource.xml | 10 - data/com.github.bleakgrey.tootle.gschema.xml | 10 - data/dark.css | 14 - data/empty_state.png | Bin 5769 -> 0 bytes data/gresource.xml | 14 + .../icons/128/com.github.bleakgrey.tootle.svg | 188 ---- data/icons/16/com.github.bleakgrey.tootle.svg | 125 --- data/icons/24/com.github.bleakgrey.tootle.svg | 189 ---- data/icons/32/com.github.bleakgrey.tootle.svg | 185 ---- data/icons/48/com.github.bleakgrey.tootle.svg | 184 ---- data/icons/64/com.github.bleakgrey.tootle.svg | 184 ---- data/icons/LICENSE | 21 - data/icons/color-nightly.svg | 499 ++++++++++ data/icons/color.svg | 233 +++++ data/icons/symbolic.svg | 24 + data/light.css | 14 - data/logo128.png | Bin 5766 -> 0 bytes data/meson.build | 24 +- data/screenshot.png | Bin 170603 -> 131914 bytes data/screenshot2.png | Bin 252316 -> 0 bytes data/screenshot3.png | Bin 180001 -> 0 bytes data/screenshot4.png | Bin 249703 -> 0 bytes data/ui/dialogs/compose.ui | 255 +++++ data/ui/dialogs/main.ui | 82 ++ data/ui/views/base.ui | 155 +++ data/ui/views/new_account.ui | 224 +++++ data/ui/views/profile_header.ui | 525 ++++++++++ data/ui/widgets/accounts_button.ui | 240 +++++ data/ui/widgets/accounts_button_item.ui | 113 +++ data/ui/widgets/status.ui | 293 ++++++ install.sh | 4 + meson.build | 50 +- po/POTFILES | 74 +- po/com.github.bleakgrey.tootle.pot | 583 +++++------- po/de_DE.po | 896 ++++++++++-------- po/fr_FR.po | 808 +++++++++------- po/pl.po | 889 +++++++++-------- po/regenerate-po-files.sh | 3 + po/ru.po | 734 +++++++------- po/zh_CN.po | 896 ++++++++++-------- src/.editorconfig | 10 + src/API/Account.vala | 195 ++-- src/API/Attachment.vala | 39 +- src/API/Mention.vala | 40 +- src/API/Notification.vala | 87 +- src/API/NotificationType.vala | 22 +- src/API/Relationship.vala | 46 +- src/API/Status.vala | 238 +++-- src/API/Tag.vala | 20 +- ...{StatusVisibility.vala => Visibility.vala} | 47 +- src/Accounts.vala | 144 --- src/Application.vala | 61 +- src/Build.vala | 9 + src/Desktop.vala | 51 +- src/Dialogs/Compose.vala | 320 +++---- src/Dialogs/MainWindow.vala | 181 +--- src/Dialogs/NewAccount.vala | 192 ---- src/Dialogs/Preferences.vala | 2 +- src/Dialogs/WatchlistEditor.vala | 206 ---- src/Drawing.vala | 29 +- src/Html.vala | 36 +- src/ImageCache.vala | 148 --- src/InstanceAccount.vala | 160 ++-- src/Network.vala | 208 ---- src/Notificator.vala | 122 --- src/Request.vala | 110 +++ src/Services/Accounts.vala | 141 +++ src/Services/Cache.vala | 136 +++ src/Services/IAccountListener.vala | 12 + src/Services/IStreamListener.vala | 11 + src/Services/Network.vala | 88 ++ src/Services/Settings.vala | 44 + src/Services/Streams.vala | 177 ++++ src/Settings.vala | 24 - src/Stacktrace.vala | 651 +++++++++++++ src/Utils.vala | 16 + src/Views/Abstract.vala | 73 -- src/Views/Base.vala | 89 ++ src/Views/Direct.vala | 13 +- src/Views/ExpandedStatus.vala | 166 ++-- src/Views/Favorites.vala | 9 +- src/Views/Federated.vala | 17 +- src/Views/Followers.vala | 52 - src/Views/Following.vala | 16 - src/Views/Hashtag.vala | 20 +- src/Views/Home.vala | 6 +- src/Views/Local.vala | 23 +- src/Views/NewAccount.vala | 183 ++++ src/Views/Notifications.vala | 153 ++- src/Views/Profile.vala | 345 +++---- src/Views/Search.vala | 86 +- src/Views/Timeline.vala | 159 ++-- src/Watchlist.vala | 125 --- src/Widgets/Account.vala | 12 +- src/Widgets/AccountsButton.vala | 247 +++-- src/Widgets/Attachment/Box.vala | 69 ++ src/Widgets/Attachment/Item.vala | 105 ++ src/Widgets/AttachmentGrid.vala | 91 -- src/Widgets/Avatar.vala | 71 ++ src/Widgets/ImageAttachment.vala | 187 ---- src/Widgets/ImageToggleButton.vala | 22 - src/Widgets/Notification.vala | 106 +-- src/Widgets/RichLabel.vala | 113 +-- src/Widgets/Status.vala | 409 ++++---- src/Widgets/VisibilityPopover.vala | 48 + 109 files changed, 8692 insertions(+), 7179 deletions(-) delete mode 100644 data/com.github.bleakgrey.tootle.gresource.xml delete mode 100644 data/dark.css delete mode 100644 data/empty_state.png create mode 100644 data/gresource.xml delete mode 100644 data/icons/128/com.github.bleakgrey.tootle.svg delete mode 100644 data/icons/16/com.github.bleakgrey.tootle.svg delete mode 100644 data/icons/24/com.github.bleakgrey.tootle.svg delete mode 100644 data/icons/32/com.github.bleakgrey.tootle.svg delete mode 100644 data/icons/48/com.github.bleakgrey.tootle.svg delete mode 100644 data/icons/64/com.github.bleakgrey.tootle.svg delete mode 100644 data/icons/LICENSE create mode 100644 data/icons/color-nightly.svg create mode 100644 data/icons/color.svg create mode 100644 data/icons/symbolic.svg delete mode 100644 data/light.css delete mode 100644 data/logo128.png delete mode 100644 data/screenshot2.png delete mode 100644 data/screenshot3.png delete mode 100644 data/screenshot4.png create mode 100644 data/ui/dialogs/compose.ui create mode 100644 data/ui/dialogs/main.ui create mode 100644 data/ui/views/base.ui create mode 100644 data/ui/views/new_account.ui create mode 100644 data/ui/views/profile_header.ui create mode 100644 data/ui/widgets/accounts_button.ui create mode 100644 data/ui/widgets/accounts_button_item.ui create mode 100644 data/ui/widgets/status.ui create mode 100755 install.sh create mode 100755 po/regenerate-po-files.sh create mode 100644 src/.editorconfig rename src/API/{StatusVisibility.vala => Visibility.vala} (59%) delete mode 100644 src/Accounts.vala create mode 100644 src/Build.vala delete mode 100644 src/Dialogs/NewAccount.vala delete mode 100644 src/Dialogs/WatchlistEditor.vala delete mode 100644 src/ImageCache.vala delete mode 100644 src/Network.vala delete mode 100644 src/Notificator.vala create mode 100644 src/Request.vala create mode 100644 src/Services/Accounts.vala create mode 100644 src/Services/Cache.vala create mode 100644 src/Services/IAccountListener.vala create mode 100644 src/Services/IStreamListener.vala create mode 100644 src/Services/Network.vala create mode 100644 src/Services/Settings.vala create mode 100644 src/Services/Streams.vala delete mode 100644 src/Settings.vala create mode 100644 src/Stacktrace.vala create mode 100644 src/Utils.vala delete mode 100644 src/Views/Abstract.vala create mode 100644 src/Views/Base.vala delete mode 100644 src/Views/Followers.vala delete mode 100644 src/Views/Following.vala create mode 100644 src/Views/NewAccount.vala delete mode 100644 src/Watchlist.vala create mode 100644 src/Widgets/Attachment/Box.vala create mode 100644 src/Widgets/Attachment/Item.vala delete mode 100644 src/Widgets/AttachmentGrid.vala create mode 100644 src/Widgets/Avatar.vala delete mode 100644 src/Widgets/ImageAttachment.vala delete mode 100644 src/Widgets/ImageToggleButton.vala create mode 100644 src/Widgets/VisibilityPopover.vala diff --git a/.gitignore b/.gitignore index 05826c6..58b9868 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,5 @@ _ignore build build.sh build-po.sh -install.sh uninstall.sh *~ diff --git a/README.md b/README.md index cd821f6..a504fb7 100644 --- a/README.md +++ b/README.md @@ -1,14 +1,17 @@ -![Tootle](https://user-images.githubusercontent.com/37731582/39933812-45d8149a-5544-11e8-9bf4-6d78b1fdb29c.png) -Simple [Mastodon](https://github.com/tootsuite/mastodon) client designed for elementary OS. +![Tootle](https://raw.githubusercontent.com/bleakgrey/tootle/master/data/icons/color.svg) +Simple [Mastodon](https://github.com/tootsuite/mastodon) client for Linux -![Tootle Screenshot](https://raw.githubusercontent.com/bleakgrey/tootle/master/data/screenshot.png) +![Screenshot](https://raw.githubusercontent.com/bleakgrey/tootle/master/data/screenshot.png) -## Building and Installation +## Installation +This project is undergoing a major rewrite and will be published in the near future. + +To help the project, please build it manually and help test it. -[![Get it on AppCenter](https://appcenter.elementary.io/badge.svg)](https://appcenter.elementary.io/com.github.bleakgrey.tootle) Download on Flathub -First of all you'll need some dependencies to build and run the app: +## Building +To build the app, make sure you have these dependencies: * meson * valac * libgtk-3-dev @@ -16,26 +19,19 @@ First of all you'll need some dependencies to build and run the app: * libgranite-dev * libjson-glib-dev -Then run these commands to build and install it: +Then run 'install.sh' in the project directory to install the app. - meson build --prefix=/usr - cd build - sudo ninja install - com.github.bleakgrey.tootle - ## Contributing -If you feel like contributing, you're always welcome to help the project in many ways: -* Reporting any issues -* Suggesting ideas and functionality +You're always welcome to help the project in many ways: +* Donating with [LiberaPay](https://liberapay.com/bleakgrey/) to keep the developer happy and motivated +* Reporting issues and bugs * Submitting pull requests -* Donating with [LiberaPay](https://liberapay.com/bleakgrey/) to help project development and keeping the developer happy Donate using Liberapay ## Credits -* Tootle Logo by [@CallMeFib3r](https://github.com/CallMeFib3r) -* Medel typeface by Ozan Karakoc +* Icon design by [Tobias Bernard](https://github.com/bertob) * French translation by [@Larnicone](https://github.com/Larnicone) * Polish translation by [@m4sk1n](https://github.com/m4sk1n) * German translation by [@koyuawsmbrtn](https://github.com/koyuawsmbrtn) diff --git a/data/app.css b/data/app.css index 34465bc..2c8dca7 100644 --- a/data/app.css +++ b/data/app.css @@ -1,35 +1,12 @@ -.titlebar.compact { - padding: 0 6px; +.avatar { + border-radius: 4px; } -.mode .toggle{ - border-radius:0px; - border-top:none; - border-bottom:none; - padding:10px; - margin:0px; +.attachment { + border-radius: 4px; + background: rgba (150, 150, 150, 0.2); } -.button_avatar{ - padding:0; - border:0; - box-shadow:none; - background:none; -} - -.toot-text, .toot-text text{ - background-color: transparent; -} - -.header{ - background-size: cover; - background-position: 50%; - opacity: 0.15; -} - -.relationship { - background: rgba (0,0,0,.5); - padding: 6px; - border-radius: 3px; - color: #fff; +.highlight { + background: @theme_base_color; } diff --git a/data/com.github.bleakgrey.tootle.appdata.xml.in b/data/com.github.bleakgrey.tootle.appdata.xml.in index 57c7088..822d1eb 100644 --- a/data/com.github.bleakgrey.tootle.appdata.xml.in +++ b/data/com.github.bleakgrey.tootle.appdata.xml.in @@ -6,7 +6,7 @@ GPL-3.0+ Tootle Lightning fast client for Mastodon - +

Tootle is a client for the world’s largest free, open-source, decentralized microblogging network with real-time notifications and support for multiple accounts. @@ -18,16 +18,16 @@ Anyone can run a Mastodon server. Each server hosts individual user accounts, the content they produce, and the content to which they are subscribed. Every user can follow each other and share their posts regardless of their server.

- + com.github.bleakgrey.tootle - + bleak_grey https://github.com/bleakgrey https://github.com/bleakgrey/tootle/issues https://liberapay.com/bleakgrey/donate - + none none @@ -57,20 +57,11 @@ none none - + https://raw.githubusercontent.com/bleakgrey/tootle/master/data/screenshot.png - - https://raw.githubusercontent.com/bleakgrey/tootle/master/data/screenshot2.png - - - https://raw.githubusercontent.com/bleakgrey/tootle/master/data/screenshot3.png - - - https://raw.githubusercontent.com/bleakgrey/tootle/master/data/screenshot4.png - @@ -111,7 +102,7 @@ - + #F5F8FF #413F58 diff --git a/data/com.github.bleakgrey.tootle.gresource.xml b/data/com.github.bleakgrey.tootle.gresource.xml deleted file mode 100644 index 71d04bb..0000000 --- a/data/com.github.bleakgrey.tootle.gresource.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - app.css - light.css - dark.css - logo128.png - empty_state.png - - diff --git a/data/com.github.bleakgrey.tootle.gschema.xml b/data/com.github.bleakgrey.tootle.gschema.xml index 2f308b7..647680c 100644 --- a/data/com.github.bleakgrey.tootle.gschema.xml +++ b/data/com.github.bleakgrey.tootle.gschema.xml @@ -16,16 +16,6 @@ Always monitor new notifications - - false - Cache images to reduce network load - - - - 64 - Cache size - Sets the maximum size of cached content - true Real-time timelines diff --git a/data/dark.css b/data/dark.css deleted file mode 100644 index eb3a0aa..0000000 --- a/data/dark.css +++ /dev/null @@ -1,14 +0,0 @@ -@define-color colorAccent #c92e34; -@define-color colorPrimary #35393c; - -.header-counters{ - background: rgba(0,0,0,.2); -} - -.attachment{ - background: rgba (255,255,255,.15); -} - -.card{ - background: rgba (255,255,255,.15); -} diff --git a/data/empty_state.png b/data/empty_state.png deleted file mode 100644 index 4a0cfccd60d80f2638eec2fde501d586b808ff7e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5769 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 diff --git a/data/gresource.xml b/data/gresource.xml new file mode 100644 index 0000000..52bf864 --- /dev/null +++ b/data/gresource.xml @@ -0,0 +1,14 @@ + + + + app.css + ui/views/new_account.ui + ui/views/base.ui + ui/views/profile_header.ui + ui/widgets/status.ui + ui/widgets/accounts_button.ui + ui/widgets/accounts_button_item.ui + ui/dialogs/compose.ui + ui/dialogs/main.ui + + diff --git a/data/icons/128/com.github.bleakgrey.tootle.svg b/data/icons/128/com.github.bleakgrey.tootle.svg deleted file mode 100644 index 9d564ab..0000000 --- a/data/icons/128/com.github.bleakgrey.tootle.svg +++ /dev/null @@ -1,188 +0,0 @@ - - - -image/svg+xml \ No newline at end of file diff --git a/data/icons/16/com.github.bleakgrey.tootle.svg b/data/icons/16/com.github.bleakgrey.tootle.svg deleted file mode 100644 index a82f8ce..0000000 --- a/data/icons/16/com.github.bleakgrey.tootle.svg +++ /dev/null @@ -1,125 +0,0 @@ - - - -image/svg+xml \ No newline at end of file diff --git a/data/icons/24/com.github.bleakgrey.tootle.svg b/data/icons/24/com.github.bleakgrey.tootle.svg deleted file mode 100644 index ab3aeef..0000000 --- a/data/icons/24/com.github.bleakgrey.tootle.svg +++ /dev/null @@ -1,189 +0,0 @@ - - - -image/svg+xml \ No newline at end of file diff --git a/data/icons/32/com.github.bleakgrey.tootle.svg b/data/icons/32/com.github.bleakgrey.tootle.svg deleted file mode 100644 index 5dc33c6..0000000 --- a/data/icons/32/com.github.bleakgrey.tootle.svg +++ /dev/null @@ -1,185 +0,0 @@ - - - -image/svg+xml \ No newline at end of file diff --git a/data/icons/48/com.github.bleakgrey.tootle.svg b/data/icons/48/com.github.bleakgrey.tootle.svg deleted file mode 100644 index 36c40ee..0000000 --- a/data/icons/48/com.github.bleakgrey.tootle.svg +++ /dev/null @@ -1,184 +0,0 @@ - - - -image/svg+xml \ No newline at end of file diff --git a/data/icons/64/com.github.bleakgrey.tootle.svg b/data/icons/64/com.github.bleakgrey.tootle.svg deleted file mode 100644 index f371cf4..0000000 --- a/data/icons/64/com.github.bleakgrey.tootle.svg +++ /dev/null @@ -1,184 +0,0 @@ - - - -image/svg+xml \ No newline at end of file diff --git a/data/icons/LICENSE b/data/icons/LICENSE deleted file mode 100644 index 1a07481..0000000 --- a/data/icons/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2018 CallMeFib3r - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/data/icons/color-nightly.svg b/data/icons/color-nightly.svg new file mode 100644 index 0000000..0a6efd0 --- /dev/null +++ b/data/icons/color-nightly.svg @@ -0,0 +1,499 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/data/icons/color.svg b/data/icons/color.svg new file mode 100644 index 0000000..f254da9 --- /dev/null +++ b/data/icons/color.svg @@ -0,0 +1,233 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/data/icons/symbolic.svg b/data/icons/symbolic.svg new file mode 100644 index 0000000..741ad91 --- /dev/null +++ b/data/icons/symbolic.svg @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/data/light.css b/data/light.css deleted file mode 100644 index 65d4409..0000000 --- a/data/light.css +++ /dev/null @@ -1,14 +0,0 @@ -@define-color colorAccent #9aa7c8; -@define-color colorPrimary #9aa7c8; - -.header-counters{ - background: rgba(255,255,255,.4); -} - -.attachment{ - background: rgba (255,255,255,.8); -} - -.card{ - background: #fff; -} diff --git a/data/logo128.png b/data/logo128.png deleted file mode 100644 index ffdeb2419731eee479cc420cf3f2814b47155139..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5766 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 diff --git a/data/meson.build b/data/meson.build index f0c4ef7..ac5f6f7 100644 --- a/data/meson.build +++ b/data/meson.build @@ -1,15 +1,17 @@ -icon_sizes = ['16', '24', '32', '48', '64', '128'] +icons_dir = join_paths(get_option('datadir'), 'icons', 'hicolor') +scalable_dir = join_paths(icons_dir, 'scalable', 'apps') +symbolic_dir = join_paths(icons_dir, 'symbolic', 'apps') -foreach i : icon_sizes - install_data( - join_paths('icons', i, meson.project_name() + '.svg'), - install_dir: join_paths(get_option('datadir'), 'icons', 'hicolor', i + 'x' + i, 'apps') - ) - install_data( - join_paths('icons', i, meson.project_name() + '.svg'), - install_dir: join_paths(get_option('datadir'), 'icons', 'hicolor', i + 'x' + i + '@2', 'apps') - ) -endforeach +install_data( + join_paths('icons', 'color.svg'), + install_dir: scalable_dir, + rename: meson.project_name() + '.svg' +) +install_data( + join_paths('icons', 'symbolic.svg'), + install_dir: symbolic_dir, + rename: meson.project_name() + '-symbolic.svg' +) install_data( meson.project_name() + '.gschema.xml', diff --git a/data/screenshot.png b/data/screenshot.png index 9ea9f7c652b7f4956e511c806c5ea8e99419cfe8..bf280892ef9c78401979882147bab2f2f65712c6 100644 GIT binary patch literal 131914 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 z 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 Sb~N7uTu57Io9EVk$^QdSorQ@2 literal 170603 zcmd3NV|ymg6K-tV#>Te!#I|kQcCvA@F*nJ^wv&yMC$?>E?33UBoDXqc%r#ec*Hl;C zcTIOqPj|GE0ss*X4-Nzb1W{T_Tm=LK%m@SooDv4=yJjI;u@eM@4B1*tOv&2R6a>U; ztvbt633ICT%Gcr;0iTn{jx{^S704rtgvQBZ2|+;@Rg_#Dl`O6#EQ|puE+QcUfvE<8 ziOFIFfhoaw{UxA&yin~cv{BJnTKbk*)}dK@`uflcB}~D=%1jGt0ZKy4%d$1L5p{L7 zD?LIFPHzN`(Fgte9UR@Hq-ap3|BHi@81y7RK;bc8Z|92vMr1Nf7=+}a<_an9r{cz9 zXeSc~C5wmVpr@z*W1rGjf&Pb|=EUD?EEtfG=LF)L+S0FLvCl=?uM;n9>V18CP>@`l ze?o43Uo*jlx5^+2B6s)S~U#CA!P3HFoMMcq1 zW#D2eSl#9~8%}}IEVFVQW^imIr1VMU63Fs$af`{n5|CmopjgEAGAF}8EX?F$^o-8U+;ZS{o;3ZxVv=+cyruQ%Jnqeb!ZUmZ-J)qUV}0uOA^ z@NiAwMX$iDB*>2!5QL3qN2UU}pjc?o9Up=WjQsc7k$?G%AP9*dkTW3QP9VrIK`^78 zWzmpzS9!D^!r%l!@J`@FeVx7o5J4mb;G`sA;=wp5(8)odzk}`>WnF}ceq5-OAgBe= zDna83qg#R67r@^K2{Nx7PUB>N%f%*pFJ3$lmp?iT7 z@4&wYeKBSRlfXb+v*LA3So~$|R3^du8`P$6fbLN)4@EeTd9RRDJSJ_;Mk9JB%4nPkjh& z$VYwPHz<>#kT*E|ps_o+T42-t@Hc2(V72}DH&|7{o;%>rFoMC;JMhm?J)!b9;O`K+ zJ6tPJf&EAjBFtf7N+?hRqFzxTNhGY|!CIuWf01TM6r$kwg1txsq)>{)1`=T?prXZ+ zQNWWU%t(2pKvlw0Nin4m=YrTt?WLgSLJ>&BMsZlfCrRK(;Tj_BNPR~^T|)E<1QPKN zK)pq`5}BH?|3!k4Qel9Fi|#5>U?2_&J1c>uLQsm8&j|hiUqdz*;ZY(|10f8HDG-}6 z{sX}al_q+qM5zY3DD18Tz5v4^QdWrd2ay*%H=MW7Rf%f>{y_wMhQtlG0}N5Dcm~G} zJS)gSBxOe53NI_zq7Zt9+zQkOj6qa(2HpzN2eDezcEjcjyD>j`{-pt^d;rg#h83Vn8f3E4fWB#dep>@n;Km=NA#)(1aFKmUA=4NLk#fh8@hlBh<3I2L{& z21gd2WFiHn0!5RcCRstsk<=jt{+nfvz&gB1f|pD`(LsvoHxnz!n0N#kc@oPggc&O< zVrKNDDG3J24NEX;R^e{?S3FYxU@!G2J{#gY~L_`!(*9Rp1ngeDnXi1R}`l}rY*BzR5) zw;)dW=!b2pz&Pw-%s=s$A~2=?Kg?G(~Sk!nb@YEA{qirOc zi+Pogm9dqumBs#`F1RnqFAy#WED+cbJzzA)>4;PpZ50a^_7n#ceHMV?MGqH6TVb*D zWx-EHVu{8U;#z4pk?CMoM=y!t7f#J+Sn)Nnts!29KZ-#YiOnXRXt|N`BIZT|MX(Ey z3uR|YPH5c-J5V>{8~~n0zB3;uvM0v(I6h$h(Ei9DAl*R*;=RJXlD%TJ#l1y=1%aj@ zP|^LyQaH2`;DfQKf1^w&SQ>C7;_xKlixXIewT$do;&C+NsE3i!qhN=`jrW+xGTh{_ zsEAd=ctU7~)Qr!VsaY5@*fLx*;4@+~=rU|GU?(Y#h>k#ySdMUyC@nDWK<^+MgI5PG zjFPkn(!)wjcV~!8s~DDG&m$g&Urj^nQCGC=&^(Aa;jK0d^E@&uOg9O%Le`qz1>6Kr^~>kYiWJ z+0t2{4Rix@gJT2Yit$R&fv7dgH(Gbd|F8eh$6xz>V}2~ffyUkTTQDzWesHD)&3@b6 zhucywx-Rf7%0qL7-f<)I~tR86oqs$d3kb^v?K+5vVb-6ST=?*9QjaUvNY~* zeihVHobu!aVH+yA~O5bA)sBr!3Z)_YwEO_dlB?BEE*V86#ZjhF$Fcm; z>;rqaWYGd8nhgwIi4Zb?a>M*WRS+HKk=^l0?|=xyjb=&9&A>4Efl^q};{^!4=R z^xE{$S~6O+T6kJn+Q0@qqxMPGVV7+42=id`O!GAJT=Nw3Y|J4UGjq#Bb4=qj6LphC zGY+$6BX=Wr(+5*T?+%;eC z4>a!KuX(ROU$YVWC5=o?_s!9bQ!G?1<}KKa8;xC!?=0X=V$EdDCX6O5`6e}hOMOcN zOG8W39%=SD_A!^J>uBrvE$%JyErcEjeBrq%xj@FTn!cKThf#;ItI?}5qCO&EUSA$C zZzLe2JEuFZJG?vAKgd7BKjeexjsMN{vGu}mC2*DmFHf@Mc23-il^rvSaVpgU;9C4L zD{5We#IA#MiBcV>0kAD~pL?|)Y=T`ASOdG{vH$s))-n{lL*i2BdgB`9I_mnz6~{@- zh1=Q71;Rz#g~Ivbn7hw8wK%Idx;S(nYy@QlF`gzKKrlhz$kXFw=S;>OopX`%p0k(p zF9$CtB1aK zi?<)NEwm%F(YNQcb+u>c&FazU@#saijkle(>$C%15nX;dZ|?f^HUDiMf5^0r#qXCt zINHHFuyCStwsp;RS$FPqeRBmkQM+6p3y%8dbf$M^cE-MuJ^gs1cp`XWyW-l&Z*TQN z;in)%BH~TJNMKE1Ou$V5PoP#LQN&P$Q$(63&2z~^=eOq<;1}cH=bz_?=V$U3ys^8v zxY_es^?LE9^uqLN_LBFy^xE_W_agUB@oMyn^_uX)_geSz^@{Ww@xHzlJksC&7<~&x z-Xp)6eTI0!@f-K+@H_I0_cQR5>(T1*_j~c9^jq{Rd**$Cdak+M-1Qx8oopR`%DrY1 zO3xpk9%1UQ9j%>m9KY_n9wYusJeWV6KVmpwI29Pv8~a7}#qrtsp73mV(|f#)0s`g* zniW(Klo}KhlowPI)EHDN{6{!MxKy}MI8!)OxKp^cPdzvrtPw00tP;!+@)O1cqCCVe z1T91+gg4|UL?L7=gf!$f1UCd4QWg>)VjaR4vKDR&EeF$&>RIC^d&iJB9Vm%i!1g^| z`FCJ$hF<}Y%cy4?PlxVhe9*g70+IwJ^NW~fG*8a&4Mn9$V^9(jGZI4*TM{!9ixXRw zqLjL30t(3rT?!=&kqQF}l?yvX??jox1>rt0B;i!Uyu*gVFvHx#rowZ>{KE&s(8C+U zV#Ddev%@;Wpu=n7x6uR0-X))7Z-`N=V6vkMqEe$Oq6(vaMs-RRNX3l`CV`WUNZ^UD zNxX_nieE+Xqj}RbF#eOppd2R~r>3Q;ps!%EVK}43Bf(?HqS7Jp(Q7hj(r;396Tgo? z={kuy={QNp(TSs_A{j1#Joc>jTwqDkHU;ei_OJ2$H2$vB;_P;`O!lAC~pVI zApz1bk})#XFgP$?(O*#$k>-)*F$KtV8FcA)Df+3s*F1+j)7?(*t)p?nW`!k&RfUy? zWrn4M)rz-?H;Cu`RgUJ3=8P7MR*vpOOQ1B6^-Eew|10Yv6(cn+Ya^>8)gg727MCoS z!cU@2>n-}P>Of))Kbb9gnqrxP3zs=`V8>jFRShQsK{tY$JS?ei)PlfbfmsK)I}UYN ze;90^V;_FM7DFUPRz^)mSw?YOW?Y_DidKPE^(;{>O|4NaVL`oIy4<^5Q^oN2r_6o{ zPl-ecX34|v>XOZp%(>e+?YYPj+uypseMUJDjd!Q5rvgSB z$KgjOMs3HkC$5u_6BE+5nGER-$+xMtsfDP7$iL)1yWg20o4`6l>O#6gYC@VrB1NM_ zi$rS%Si;faa^ZeqIMDK|X(>M!)fG#r94M!%sj0FnyQyqc;#6l8dP&vm)T`GkI?Fjr zI!oV%?xmw?M2ktQNlT9jk134l(&*91pBAWu&smocm7tc;e8c1^Ba}8fe(@bwG2^e} zE#q6`yW{2K(5ZB(igZsu5@;3am}q-7KTATCca>1pl{Hw@>NRiGqt&D}X;jKJtkq97 z+iO@W|LGm3jJMD#rvcImD{5>?&x-K=;MHbT`=~XGG^@HxJ+z#KoK>7f;HmtSmzR^#AICVmg7v+X-h9Ta){@rp$`XamKN}fa z8*3e#4%-N;QY)gFsu{bbi}|h^p2`=|yI8E5A}d&%G3!&CRU2i20X7h z`CVZ$Aw`DLElrsGPH%@BHJb>S*AoejWKe2B{i~8tQNBZOaRZ3#s=i z_3HHM2P%D~f0}-9d>BG;gFArJfHQ#8fh&f>gt~>Ag!+UkgwjE&LQNwG;=OZF;KSjJ zb5Y zEK!^wxjt-WDq`ww3T_H84czzI=ihhPx7ZKZhu!zySKrU4;zlPzw??-|$44hlu}Yy& zF{P5H>ZUTKa;2)3H7HFg%`BxX{aLzMx-4fYuPN7?T{y`-MKQ%b zRW;c)NjAkg6`z&Me$Il=md)mC-eMika?EO(VVk|4@sdbwtJ|u6S2b1JRlis5Rk>7;SL;+W>TI_7*gVYIjARYztmq7_O|EV7PV#QP zM!6TeCp@^HM=n(^_1fKV`f<8&LUAf^ig1o`hI2M^=5h{lvT-um_pBG$x7(N4yW3yd zf7qkj!P`~ZO|KZ#=eGDeye%SGk64e?&9^i*-!;azPPA4w@tJa&ahbQ;JuMPhPa99y zEw{8bZrc(&8X6gzZyN^=1+0CBe{exJf&U6^3atqZ6$=te9u$exiDZmKjnt0RL=qx! zj`xfI7atMN7*85+9Un=EPv}eF$PMJH;rVnf;)dlb=g#Ew=9Sto(Mk>^;Gs?alLhlb{lh{akqBHb!*>m zIQZv|Y=gW^bSmKEOYp?}^!tit%hg12I`38h-goQzwXQ|9;1zq)TyUd0S?uce_OAVTXEKu5;%e=YGrH;~?QR<4(i+0|NsV18)O$1Iup7uA?rE?f_raE{U$i?&|I*A8H?LpJiW9 z-|ZWNo6jBaml;1C!4AQALAiW?K}x|gKPbPeXZkn4yP?;AFSO5D&pywRFGsH$uO83w z&%l?O*UwwiTlBm6`^G!?8`)dBN50eLW6$;L%6nZ_ig-UE>Fk9twvwK zqu@$si|2a&8Pjg<<@L_={r0ipUf^2bOyKxe_?HC;X%JBXo)PX2ejFeD8i`_oUx9Q1z{t(W;5)0=+|kEK+D0^!`r~}yjcu}ZQ_*&>IIw;mCMkh8MVF2%s@k)w-w2zR2$cE&K z9E&u8TnWoZ%t`dfe&Nc^o5Q3>vq82&%}?6(ql=|W$dC2i``H45MU-2Ve1MVchl%0e z`lzKSI@Cr~NAgd}27t_WHq#*~DS0HR0mzH(LVcn5=Ze7_!z9Bq&N|NYozZYt(AY5B z@SdqJXt3Khi8nbkxw?6|dAOOoY2H7ajLhbn&an8gjI*S(_?jl0B8}w4w_~uO-%(lc zr88*IE|DxTaME%LwQ#mjKU!Rj5^bHvBex_*wI~3~08< zwwMHYKBfFz-w&VPZXNeM(YVpf(Bjbf(f82c(DBfr&`Qw^DD5a4sAQNnOHQ!gpvft}<>xOQTM&PQ6IULB_$=%-Kx+;Bj`hkZ+yJ9?jm( zzT9-u6w(yY)YH^yO=sQvRDYSWX4y3DYPiu;7Y;-lRhe#>h8r6nuNXfAcBDPb1kCzG?_5N%-lBiOPxdiR^LT+$XMlHbc^FvTdP2!vO67%g>+hmM__msbFJZgJ9Dk z&mnu?S$rjA0-PXW9}x;~fqUPJ@Ii10I5m+XPCTMVa1T%HufZROUVA<>uz*`sS_U2I(I($Ml-?tu)At z(=@eo#6R+B0u6&J3N)=WFUq5;xz%P>SafcGn-nLj(5PGMd}nO64Mh!|E)D1Bnbo*Hm>Kld|t1$SllaQ7*9a(Bfu&NJ4jd$K6V(c6HYI73QhuB?sewbn+D@Ih$q-IbR=pr1pk%ZhsnF}dvgr~a%DW-nt`DV_>7oTOP0*-cq`*?ZYCS-e?PSqAL( z`FnyTKI6A)3*|+s3}rRBJ|1Vw)@#;7^DSkA3fMUgy#5dO`}6oyRZ|U9=~I(OIY;PI zzp{xr0_{m#rJ6HZAzI9u7n%`T_^nE5%%LwGlSUPrWbN?`R{fne<8U){qvo_A&s%Xyw`$>h3tQKnk)`W#Gq41>t*@tF zp|7CNq954_bdz_h&H+Dup0>_)<@@DTbHDN8>N#DV3&_Xjadg^x@_T(byZbmk1_oYH zxy!oiy0LY-cH(!|dI+6<&WfEYpE;jIpYbfrZ?SDP&cXXY`ZW6r_@www`1<->KLoS| z^^!RE-;4HzU%*o{BItYh88;?$E0$09FjdsH)pk1;U8@UiFs;wA>gip|2_WTeuk?_6=c-5N>=4HFqIcp-6RcC52@GP_yb zxt87d#m?AnAk(GhQ~ox0Uy|?(_80E2DJEz`V6WfVzmvnmiFL6qF&(ihu`w}BG3nFSb@G>8jP?pN+szMj3GU7M9HhA$SXnXM_;bM3(jynJrHvVE$l zPDmOy8?G7|7>OBP8*zy5ZjbL^^x1s&>3hgIr>;#fFzoq!g8D+t#W&!Zb6nVJb2Hr? zPH+Y~H{S~EOYa}K^{WX>|RysC2cI??l z_(~Yc7vR}&#lD5x-sop}T(hJ9(b?nqv@PK5`Fu6E*{ces>Z97D`c|eOhp5OP|B;K8 zvy}gs4a{=LA<8t!+iC~&S~@vicVGBYU+Z^1nLuTsX0c?!W{l0T*r1hU0ure$#CBjz&X2(bD3K5h~ODEI&^7+tPL^_Dm8H(tTV!NZ}EkoSmE z1yB5$pLX8F9wRG|^@&UQt9-bhZ*B*x0sIL~#NI;Ver|iSqs52b%uMW#?8MypLffoD zEWI5;`bP9x4C3?z1}8ch2G92yhxL1=Wh1Z&6U0wK0r$_x=vUM_id}hT{5-d22V-|- zGpf5~REn93$o%$!K5wU;5(7mSMVls*d$&VdL(sAK)7*L1{C8gIpH-i$H;spsR?=Q$ zX3_0#PUZgAE~kU6*4hE9#ykP-e(izY0WZt0dB?od{`r;yjy?e&FXz}N*vU*)2I4*3 z|MuQv-QV7Ne5HL*zpSLI zO*as$l`zQeLGsqWf4w*_U(VlF+Wyn!?4R;jdNsAkHBos}aZ<5rvtn~=vwSvrw%mH* zxVY`pB_HU!cX_g&#<7rfkhQ3@ur}Mg)eLPbwB_78?|uBnc&vZd8SQC%4SRjK#n+?g zW%%+r_crttC2r><0D-Q?y}4FM_}JE1W;( zhs`a=p6%FjUM+I(=lk%R{FiQDYlx#|&*sPD3*WkD^L5@fTQ8S?@9oDWl(AUApf$O7 zvBmz`@SXfY>EF@^i%E;qqrRj4sY_x}A-RCCPww~Pw~>tmVj=Iqvk!!4?;XpL>C=3} zfY|`+&wnpzca?|BmxjbGS}kfV8?CG@3J#kqK5yC2y1T6t*9+SZy@0^p*U%60yOCYR zx%@04&9AN%Nqe>y`_}zdx>hDfrjPJ1nfK;T{JYlo>z(Z(!aDL6({}V`)eg40J2%VY zZC}dH;O85+X2=p|?O#gN$6OmU?!X?;RqrPEy*gARzE)|6QPS zn*s0Nl^8y1T5iVfZdQ&i|7{s@9jB3p1Od+njjmFq!~g*y0g)CLQS(~6$b~c_SZXSq|{Be&s3($%rsHBSRswvxbJ4S&nmUfPEBr+HsH1gw^xN}%wCD#=e9`HZkcT9 z!(zLt@z8|7yNc@z(YIEflR5UJYQ$@EJpzV10>eS2DA1zC$&&uRy5%v%7X|I*{Ld_^ zyrP0Piozcx|JTGbgCwqqz3l&*ep@7A#{~uLCHzkgtfhy>CWPYuNm(R8NA5-bufa2# z-wXl=gX@2OqK2WGDd{C%{#Q5)R1y=G#N_J7{to~cvr&(VuD3gXbgBPzl=luO_JXtG zK}z39{D)43tJFQp>p{1Q3H5g=nL7HqY?+GrX2PJa8Qave4ixa|(Tw~V>-$Q^~J=#txr#S@L zkN#gbe|db6t|LDDxK@vxQI_!OF0O)Vub`M}@a?F$$-m9~gx7w|yGFoyz=(RFfjPHN zb8!q~0`!k>3LgP2rRpUA!vVe`2XS7%&wN@iq)rgd2srRdz<>!TvD*ngs`sD=JMbU( zPkp~C0h}FpZ5OLo7x!3x$U?D#&_>;`J$jG^S75B3!ubC=#E-s{6OQEx{;TBjgJ{4< zmU2_|W{9VLN>%vh&VQKm6F2ZfR`IR_J4rSK!Hx5fjB3J|EJ>$wZu^mSOG($5gvnT}M27DS+uC7V}0FbE0JICnkn)8cp^o;+)%rZ2+5oHesL3_=y z1wBvCUEdQ_D?ucq3^ap$i^P|7e9M&^|B(+&@9HrMHRwO?w!xS+pHBBWS4P&oYRH#e zG5+!o!!N0(IeKykxH!CKH#+ySwV;N5i=y>wdiMPi7;$UfH2C9^20gV;GN}qONjMb` zWM^6fHvq2eAiiA&?UfF}(0rSPh1*UY&&iWUvM=XtH`#lVOLp-=6|0Cjn=Uac+ z%DTwb+--|blNWx$PtO5P-@Z9hlF1a%D(W5CxuM&fpCFb~L_mcd7pMW4zW=>iAd~9k z1ooH9=7z z)RlDHtm`1oUE%(ZVawShRf=F4m0gCw$F~OTo;Ba@wLuLEU8n}iLRP}6z0OM1gv&zN#3Y7hyY~KcRyw7nG_FZ37+3SaI)hWl^JSsTi!(enp-EoSUhhUon{DspHav8nU@k^ z&KixgZ07m2HubVqAh$J5nIdyg*e@tX^f@*ipsBB4{&v3~2)k9+ps_R142~;Jx3Z_x z|FijWDZsONdaY#(|Ca!aLJjxQsuOQ0D-bNGc`N@H#p>S8r?(Gk8094aH8f-Bomj)}S0} z?>;>auJq;}y_P=BbILykwlWp9TuPbZHg`S8*6)zWhoB9emKRh>5U}p~8kRDmreBt@ zyw_sG+QG~tKc^8`k$eCDCOT0G0FPi0j`3XVqAD z)k`FuV-A%bzUfmGp5uS5au$O{4dL4nAGo$FKASM}?CfKjeqs8^lU*T!>~CO1bQhD_ zXUeIYfcrJmQ=uz5hW$n=i5qDa9uU+0J9an)olx?sVC<5*~L1=m&8 zpVHZ7qq-$Bt1MfU^LVP-q)5hu zmb8Vj&2`Ia)m?WiC(h`WPa;~ymOCm$?yS6Q`3~-ubgdwUn#JwCtmAMhDcWSIyz?Jc z=ZU)lta)QsS54XDoi!}Yl@%3CX`c33B)Vc)I*WyuyRp}1_J{=p_AwWWE?hx8Z_)&w zlRH57hRtN^Nix5}64>Mz!sKw53_T+=Ps8Ty1w6qjaWw$ePMaW%nO`JtgFx8r$;O>| zCD%lz&o-`>E8T+kKk=%^_p6F+O-qz-&RAf7!jZYtC-B=g;cQ>!QxCJP%Aa;v_Qg6L zVjg6F+ESs_lw<9R-=M9;9=8iZo5(-Wi2#s)F-*l@W)sgs#;v|}F3T=W|BG*)O=#)U zemjzif89yp#RBGW=u|yK@t;jxX?xhRyZ>l&MudD>o%v&n0|U}z}x{0dECz2X#?!3{2?smz4K3o4-7@&pUA@59_xvr}COd|Cpjv8VP^`W4lYMXRQkYGfqJ`kNJ3 zs^)r&+=~y%B4J7A!b++h}u(l7{(?U_kLIRM9zLUqAv`_~pR+4TJ^p-P!7Mhiz&jfT=E2Tp;1{8`<}?}8F{{dPjkw-BN!jI9?TtAWzdo2(X51fI zrjdSuZBiyabZ`?>X5&5Xu<%GS?jPdMT4Xl1XG$*nPz|h&i2?6FpeT@rFU;vs35bBg za!|09A{1!Tk<2~zn=1%OY)2EwH-Vzk`6Gkv|QCHPxJ^x_T*=pZ0fs3(L+O1|}AsG%vlQ=jT}_T>{AMFM9klZaMOMad121hML@C-glX&26j#Z@j+zWXQ9H`K&E zc8rfs$cEp{fG{Qz4h~FiXEQD;MMIcOxvk!ALq-{F(Z>Bkf87FWn*a=o`!}8@Pk0NU zeynn_s?i*Lo45# z4U_`WM@>oc!`;JRhBJCn20KoFKdDlkj7o_{A&C(3@pQiVIlhU6-|dF7ntGbaQ5Q!M zS25oOqgmY=UJn>}sMAv^aX~>FR%g!(Of&sgvxdTvHw6;W&s1qPXU>nX6@c`!=j(~X z^E2GXAQX?Cr%(~oZJzE|4bN!c!F#=Suaeq zm}Fs95kb2<6oi_r)2$Yk3U#T`)%)tR*M!DG13QPqfz>DmT)k<}4lFwP5;$p`BOhFY z{}+?)TlgyP>#RESl5L;dp7Hd$_BFQUu^ZS~j=H)z zcYqnToTON9+^={cE>Gvdd zH-f94r^uq#vFYCWm)16t$Zn?#jO*o14_j>=ZXYXOct2Ps?sF~&QDbR_p6yxGo-6^b zRn7TAu8E|+pau>CV!pPYBAp$8`DkkTJ)y0IgBO#VG{dNz5VDPyPfooKy)ebri=pUH zXcmvZ%uu5$7O{HRd%z{&~^X2h)gV3lR#RN|0 zwn|M#9s> zHkZSS{coAa+8)1M3OJWqQd-&w&?49^dH){Xlm_nQD_cI(R)eyk)8g&czU5cMClY>M zSe}<=hArmi3b-=Gi@`+H6s1~@f`*Q~eoX|Tjd#k{(VznK~M+tFBWbq=xj}?OY zw}Dl12LB$2sXR7fL<>U#o*P`73c9N8GJ{a4M+A*+A8bZLxe*|t?$Dd9)yzH_Je&Dh zk%RnlURpx70p}EdoFw@;T}9nxNaIQe#+un>f;z z8I&cfXlc2`X(l`BTx06r8rbdU@uVaDC?t&P4-6@yWSHFg-j*p|F2m%R-Ornzua-EU3pr8OgRN`95x?(+ zFF-s%y?L0_cDINpFU-yPVc@oufZUoO%h9x@`DqQflIwqo(6lz(mL=ec`YyVsq)~3; z8mFPUe8&4z#oBG=w4~_iG(Yf-4dEhyDMui#?fWpwZ{vcx<3z zlJWzq^QS*(y5eW*oWjDw2BxPC34RnPc{MM@kpmQkmz`hc+Do~) zBX>DwLxObsRAI8;2Vy%hw7I3z^f(C5MLO zJVvgpSs4<|WxNvvp~lQiXN)qy4_(ly_C1VFJt6B2WRmRMssen;VY`o{N z>C!3&7FO@a%IlS|>UOW+|> zWMms`UM)NRZYAWvN_}VV2g3Yum9w22#dXe9b(%LNA#ZLAOShV4R36BD5QP*Qleqe)OJ|dRS*gF@LeC7oP zk6##OtzL)e8x3%Sk_zI=)`Z~ow_06JNOAP>_!;t&#oGJ|Ir$Yl(@RT@wi!6$HweJ< zdau)Jsa#ITBGR6NxUB1E5&_3$KigsOJZRB3Q3{)J3G;_htJHSg%lqx5nv3f zvDE;zZTBXVGfYOtt8fvwJvUpE-DT8hAqNnZWA1qi@EozU58T|q8>srQKfgx>`ZRT% z7jF?E8r4K_`F0!T$_p4Hj;~E(9-aIlF^(^cyC=sH2;lYe^UH2oY_yMDZLtPUE$>r3 z^Sb*f!uxGj#o>ezZvKo`J&wI)c3&e%)vPEeUoPw&pPe-!^Sk^SH_2zx?Vau2KKt#94y6SfD!Cr|{8xGNX%FICFj zS3DnB9n1_(tV^+cG)i&gC7rV%NDbkNlSUNtB7>vJ@$PIwi6ZA&QE+iXjf>0n^oDU$ z>yJ~oz2bD|o6C-NC7*5X0}fMDW5Ep?;Ln^GIzc22z?w_HkLzXq=2xS_J&S=u#T0_z zY3D*g$BeNVCZx(IxpAT7ew2eqs9U2C=7OK*>VpO(7z#7{VrjAg$td_$?gN|?LytRZ z(N#s9Il#nB3)E;=V^eA_Ki1JT3C~q~(A(-cY0(sX`uVT;61!3RxcRzul6B-n>I}(d`>r5elr)G%HO!ZK5rr2EaDBY zDiHsT^R7%x(~bD7SwfU+k)az{UPkKIw1q(jVRQ%5c9O(7F8?_C!#an|3}bsP-QjeE zg67zbJeXb+^1fcn5W3D_tArtd($-i#t=>U|#n$F_f8am6u)8h?95Tx&cYC3QH zQ&H*A9xu@;uM*Z6(^yp{et~UmyRmB9nzfpg!Hu)aBBrFG0U7?QVMsb9+n>mLxmKHB z5ob0tho4{#s&S>(>Kd4!%X>b7X#jJBZ1$wJpSbBSgnYLb)*_1jd(7%@yK31EF>36* z^)F+yI=cA^CC8bVj~0>?a;|-dNf}4GUcbym1Xewiz13wyJFQ>i{wvuXO8Pj;6XPDu zt=QaHUoIXtW*Nv8bh6Bu`h$}LEYg#SPMgaJG^x06z1s`}-*_}$#t>EPbMkCt@61vXa;AM#f3B-&WixOrtCo3q$8OL2)JF&vp8T75mD(jQ~{o`1{9=h zVUZCgmsyM57D2M|*f*3?{aa0r`kh#;v*AcO7joD-Kksf9JA?%~YH6w*2sS*(&%3w* z>6BjEcbkDp`5h1)k;IWS-V`Jt5V~?=0MV!7{9>zD);|kAtt0MkY8Z^>1QL(UaaeCI z4K;PxdBssNaTiX0_VVh*t+686B{yNEqd`F=w>X7Nd7T#;whPR7^3U(Z-zPfiQF-^_ z4RHJKW;PV7yWc~(nzZXmDku!E6=l`s* zDMg6jV#O=(Qx8y6f%1=#yRCTrjn79?RYOA{b-uyR2WRdLZ2Zt zU2nNjuaL&AHPTTmNR6C>kyYGhzdR-60JVD(YuDNxgdFiB`_gp1+qn zNadj1RFA8g#?Y6z7xEmn*U9^3-N@hgYqU>B*XfNvD-yN>@zKjBhgYT&`lnlGLse_- zh0U9xDqKdcHVrz#L&?5JZ<&jgo|36Y-Sk=!VI}USj+Rrst$X!IbbyD^aF;GayaL

M>#*z8oA?iNa!oNx2>q;6rLE#fu16jJ)eSx13RQEpmm2U{cxt>B% z|IVPC!M4Lh#D)UoB=@J@viZGvD{Lz8^+6xkHWjl-h9sU3635~y5=FFlO$ALtz?~0t zh}bc0`sjnDk04JA>N7ZIk)2VEe;iWM6LJ`R1+&ZHbKpsDZM7-uM>?y5B_-*Hnaif{ z{cElq-M+;o8&MDwcEb=g3R+!x_Ab7P-%d?+9vyoe>T18!?k<)Tor9TV%g(V5No~3_ z(mn&Xa5QA@yH$98Y!GXuc8Jb)_}wb1r@6&oOL)rwblf|ch^*<4ip?CdmyFI_!Jj$2 zP;oX??0r{XhcU#*^|QwDTl~{>@NV^@S=* zE;BxArSOmC+Zu7;a`#v0?jWGJi5vOXG;t$NX+_IyCB-D-5o70v_DYDSnbCmJ38G{w z<|fLUZ?4=MRx@uocX$NztMW`i|5)2~KXKu2l>~w9fSBZN-}2oLF(ZxFK{eI*m3tUc#Qr&&^$67^8l7e8B(3R3@>THIcu}tnnM2{5D8iQDS<6JUU4u zV%Bv4rZpb8dhpw2qXSG0<=+amYpX4T$m0rBNR!Q_NaGs*xey36q0^)s4^FI?0R#*! z6|P!AdmJJqnE=%lc^d}lTY2_U*!8#3ZT26z&wGu?Nxc44a#Tdtkxx8sn@PpP{S&gm zp>Lk157qc2su3~sR4X=)`*zzF*|lY6j!)<+r6l_o*7d{%3}{r182sIjdLvnr7C?ti zx{8GiR#Vh*8QH(cwqS8BDu4_&eXKLPZpnOqynIx#_6D=i%saifaLysw zg;vzm!*Xy_G?WNsGpi3Z9JcOC8i2Yq)RK{s&VHx0kLSLf(?i>S> zagps+Dp4qEztsAEOAqee$>2cDm`_WNx6t7sw6$IH{SX^0h>IE73ZeIsHRsOqBt(*^+6^JvP~sy&51f-NSoFEQ2SUDkb@(gqcl#@=F%Br3k4K?m&_5EZKr z*z{qEN)UR9!aPym>w!)2Ek*BvF)XtSs{IM(N28<*n2JxArCgs2XHK5lW`fBk_JKg8 z!ktqjbbd}2ogbM=LT9mCky^0wS}1R7S+|LtV!&)j8c98kW%m3;b9N|4ABm45oa;>P z4Xm?`5rn>EWLP$OsX#PIF)0Tz)Bs|ZI*c+^^%oq#(&tC)uRFFHe>P;_ksn&*ItC{N zM~}6v8MK z{6A#9WmH?w+lGs~1$TE1QoML^C{kR5w>ZV!T}yE*rMQ>k9^BpC9TMC*{QhUX=gaw) zwKIEW&FswNnR~AL*}t0v;X5!o_}6b>SZ!4Vo$tv2;mGuYHXZ>(opALKTu-Ig&3~+( zEPiV0`WT=p)Ogt1r9~JLCfMSt(6$D0G(Qey4TfvUDc}%(Nx4>mejc(yi2k)=%$c(W zR{tPPV%>{=6xw<;l6I1OX4PKD{aA}PR!Z(8BzFKTwf8XUwzQXRyNjD-z^TZ8#;gAexQrc4+dWbN7A1+#fRt zT{Y9f?$SXVUq&%GMiL6)y7blKY(2{&|EF3R)*;zXcoLQmgH9*+L6yh}3Kl9ij+~Ab z_GAgIiN#u6SzI;yOrfQ#&*6@d!0=?s^nWZsq)LAga({ja1W7eVG<>u?tuiAG(J)R zznHnnTZke*AGFQSRfsDc5&ynr;RS^XTwccXCWtW6(|1+mv4U$RU0FPt-H=iV1@X>( zHbMAl<<3qM0qP@{EjUG+fGN^Z_vNv>a?w$RAa%R}8m3P2p8ioO3wa#HvRQUxGGZBL z_E+Udkc6hLb`+b)8+yT)_>4venUtYWQ!cKOYg~x2#+L(2>8+EP-WnWYOP<-e1!?Uh z#Eb^RbkM@NOAi1Q!hq4W*aXGeO(`*Q;XnudJ4c_V49tE%2vN8}2z2HY3_sZx#Jc^U z;y&kKA9XDxc>gv2ha!b`bu*?;ol@UKJxYtQE|WuRs^{ob|=h@1Who+H`IoJ#-1fwnWfFVNNGW>PHDUCNW+*zAUtyqp-dS0fd;e%AOw# z-hcAMf_RUZerY%QWt5ax$;yXbU9Ae4Hv*l%#t{9jBK2C}GV4wMy3GV)-^Wf-MKH(} zkTR(5hf1&XPRyWW3i-eupTzxd)sn3vHy=>xefWMv3^WzuU%SKkZH^pyrDka|(euD7 zqMq)dlC5vH+Uu1Lbms4m&l#j1BU?sN&E5()ZTe!d!7RBPRLP;K9-9XwL8?=J#>#JZ zzk6V3UuR^!<;15UH17S{6E$l${AVut!b=VZxCV8 z3$Q@HV4!Bu)NUgH%Y!R3oPI;{UigJI)XOCTJ684+1DmuKfjq{Y<$zM3E$V`+$1|Fy zif`i+46a@F+nDS`NnwXc>ahxC>Qm^_^el?&I>ympL>q-r(S~=|slC5zUo&}y2fJ(2 z{PYp2)47IZmc4g-eouo#Q1$X~)mBXV&|0lC{FfVCXh_{3PBePCul>U;#)<*EgnZiB z>+`bw{3Z+e%SdqrHKXGxA6b!D!9Uz?@cUy)BT8qi=|ry3RP#imS65HAxq}aETy(Rq zrtI9;&oj$307ci{m4^hRy#D;YFCi7Xdhm*9-<{5{*Hf2X<=(A~laZ3{?TL%F9?~HI zb4KN!!kB}^B!3LFJ+o}9Nv$u54C6F&r)1B?!*A<ns@>8ApB=7Y&D$z!D1yBbG1N2WxA_T#+21V8yxW5dp2wZlO>R7m*8~ zYgp;B=AtzLhafBTut^dE#l*KxCc2&bk`g)d6{TywqFXxL?6IPdnO(Da%>k4>68)iZ zXXNvG&v@lUbOEJ7K(+yE3N^bZE)`~HW#W#aH|I-fg!$MWR|Bu0AP$?YWnWBgGUhD*m?Np&5h zEs<5EHy~u#6yLZR&NvgbR3YIitT{0QBk|-Ljb#n3mUsU4Gxx4ZXRKQ}VH5}*UMkc! zYQa^S9Np5#XOBp0$J;+FhTPQtSXPtCjT`x7My08oWLhha?fC9Jh{}(xGtc92&@9in zegc|_4L7JWaK6@~-Pb9UzHB~!b);s@QcF84n z4XcJRA*X!$63oC>YkpG9%r+FJZ-mKH39ps4`LJwrn|0uEP)EkGZV2i@lmBQj?1P3XmpcsRtjEK;E4pslh8^k+21C@Hdz@F!x))pa z@O)p7p5)1Skh=2$+rAd{A1q5sS@D9(^@t``udUFzG*1NVg40Yw7fmLdTc1W^z7!m& z9p*744^yXk(eU%>+C`7I|BP=^FGaz=l5^J*k_rh1fY;6IlvtBeGLZ9jyO~9$BJ+twjF^j9!?i=NB43KFM!$bedG*}BaaEa zr#EbKCDE^h6^l(BHKW|6WMOHRmWzvz_^c8H)KC$ z=WvXF&e~dTd(!ubF}Z6&gna8&eH))lDo-RI6|!Bgk>-h#^Zv_8{uW2M!#LLcuK6aq zouTpYR{tt0LMv;i1tX!Uz!Dd5!!X zKc$%h#Lyzc{FYq{TzSDL6g8d<9&<;wp@M5dD}bT*~#}zVg6%Y_T41d%HXp=SR?W8dNeaQCg0w zbLP!PpX5-4I-y8ZDQEAUiyV7;j@tTU-QjQ*kel>Z>E_BGk?9|dB zge?0HVD=9#k|8*g11y9K+mzXLUW7dQeW!28yRB|t(x(IYD2Y=>PkczcA%3(*7D_0x zhZmS6ER5zk0S|=Mi8lCU7B>!#D!mgpHLU?@9@_&^q)(x!V-Y;4A?!%nZQ0#vrAIv) z0$!5O?i4EtMW{wXP{S(jSVk+z_5JROYVWdT&R5tr;qv4sU$d)!3C<$udJVWj|Ivu@ z_GJq?M(5G-kOnY`U+jwH;&!&^ zhCXo>N~a|aHt`UcEq}nPYcoFwGIX9>n>C9yoM}2*)pW|+N3oG_?E2fmt%zkh1A^Lh z8p>wSumT6V9W|Mzsd(k%rWvw&y(~fXHaK3z^0qDZgtguf+p6zq66fwz-!TI8y7Y>8rJV01G2u1GY@ z6i1SWvV3lm9Y{)kIXd}AzcNDiS&>Mk!8_9B!DAiU7{|G^p!vIKn7^&9XGNFs zvmIFPN3&>8Pr)~+5+`SVU4leZw)RzAK2=jL4ClO15_xO>*@S%PAXkgiwIN+H!5F;}*N4u9Jb# zUrC<>yfLjEAn=x2|HxslZQ87ASjS z|HGTDn_Xn#sXF`a;V;rqsN1j8QU|t|;H#gSB<$UfQeHQ?HXE zPRnZS&wl+!AHTzww~teL#3x^65AR_1Pv7OqEj-u%u1D>zd(TYEwLbl$_q*=)s2|JS zs{OAr+9X44n;gHQ!PJ%=M%KfRQF@^}nJwhJH&-#~=l4 z@tSpF{-FQy-SX|lucyfrcMLy`?YwaijQ>|q-AEB;J`Q2k7H^cTx(zNzb-{jttqNhk zLN};5paGU=eRXH6Nt3k_uKZjd{*#{(*XI@q2_j|gf z;pN5aeBR^YcG{FE?$NZ})AhUX_H2|uP6%CeveWM*O+KhP%@?KX?nowr_7z|3JkDJu z@?@FONjptcDgn)pD1diSOha2v-bh8*N-zh~R3eQ3ak{_OPhodf+ct6L{?oTx zrIPaDtpkqk_LEfeC3|ew%~#E|5oj;oow;u|E?4J0)+Q0NLv?xDHr1OiKoKc4;Av+j zl0xKVf8mRl@iPaXwL_Z+qVb|Ha)VKMPezEzW}SFvJbGpzmb*%JBcSo)CCcch1IXUS zE9|FH>OV#$y}X?*M2*VPeV+ra2xBXM#Uu|x=9xCkE`oA^Hnz2(CFP3Ng8`tzpQc33 zC>@gk${R~Wh^EW^l%I#`bH(0ox$$MOl=z#IWG$^=JT&Ay{ z{rRHWKLP?o%=LM+w7@@xOtS?9SN+9-r}cxbF!^I{q|0!RCs^!m$BDn8ULt)6XXumo z3OS>o;(tfHUr0Jy>afo7KIK;A(Z`PCA|IG~t}%9BF?6LFat;`Itc3}E->0Uhm$?q^ z8yJY8t85GwmuDmx)p!if$jwr?UILeLP)WTxOB`T?4+hl*{DZX&Ob z>(=S~xl6dB4ShYX1-cQ%{&#r2k0ivNZA)+_!GF=psHbLW-DLQXVim$_@h)bmHXhO? z_26Y0vBQVShflp{gN=rCJ6z!#UU|t#im^;Dhb>M8Ysg&EYpjm!?KhRwDl_HUbXde* zC&bk?xw^6aq0Ed}8zG6@BajvAysnrm0W-)?#6i~C%_t^;ot|C`;vQMuHII@>GMbwM z==0M>KCA|Q+HT0zkFDCLi@uDRR>=PM&(gS*5&Ah8oqn&yp06GC@~TGB6CQbe->YA- zCdBVPe>qOM@6^fdB@H*L?B>uG&aGsOcs76F~_cme8DsClS4qTkJ&j=RZ(h4%JLbw_{4MWa;r zrp5HVLZIOk0E5dgB27C^W#qv8^#_CJVUXOf5Ztd{TXn%aJ5wTQThQX%?&Xzv)1k7b zMH0o?pF|BU@kEpX`wMEviqPem2}uB8gV9&3Jr{(ALq&j?tGRj3WP+2gsq6nVbCZ~% z!ZE-~aC5(%)4B6z?2pbAeO$SCLy9xIHbzjAjGENLtIIMfcgbLi>v63Ktn%TYp=Sn44aMPVHF9&i$-yk!X<0pH~y9c)A6ULt|rPh)YElJ&JW6@ ztz39!1v`s=Zpv0^j$f!%)x!YE`+tF>xlcY^^*_*~_(kbx_yVPHoB+@o>mGOAvc3nfty!mKE{#d?3zo zuv}2nh2#sFc>BHjt7{_9kL1E}E#hdWU-HMl8WsGXUw%dbp#2BPy`KhzKm^G%x=2q9KBZz_*xj>wYDu9@j zLr%tqetiCmRN)lOq7IfStE2FAZ2F)sK0z*`@KU3bJdXc$9TD^Zdn4?qvJnb-xifV= z{*ARzseY80Qr?||ZAVBGZ|$)&alSG6%TldOB9bd)s|Zqvo4a%<_eu2Km&9>X(VhqR zW<+(REeb*~rQED{A*#GXV|SQ>UEdf^AD+h=C>g7fR^3nN?ib_&ddjOm z#+f|7Vy0VMroNy~b=xHRYz>AP+9+0;&kTn#mm9}Y5W*+#!et7z`)_I@RcIndxLs^!L;38ih~jx#(uvN zXqA)-1oCpn=ow~sVIj4rMhCq6TUOeQ*VH|H@VgYeA)sqlGYByzDWAL{x?d~1!lCEe zvTb$!5~H#@jm=;pjk`(p@A*)j4PUYV-&Y3m`{N5R0nlQx35&&R`A~Aw=V`0X=*el% zP?*!WBiw%DJg`w6yFEXDD68Ppa_QA#<4GOX0*MfixUt$GeyVO^Q$m&|{`|Q_B^U#9 zv&OZr-3Iu$Sw;0RHZ3=Ru)6&b*>&&YXq0n{vM63Pbc&0(m@8Wb!MuF1J2eY(e4}x? z`hZB^rgw_n@cjT;m*;>GLkZ(k5;sQL=QAQaZFdj_XYM^|X=#k`nvO=Hq@R7EE+a;C zLQpT0#Az&-rNG#Tuex3)m$8S88L`VTywmyN-6pYX7O~O+(SF^A6$Tk`{Hd^z3s(+) zPiLZ0_}@_s)^i1V4HM)hF%LgIDj(`>vZ|>aNQ3vyH|H-q$W*@6uWPHQCTjlvV!1x& zLe3m~3ffv)QIMOh2&#r`+s-!V+PZ9@QZ!1}ek-Mn#I#LG*)k;oW$#v@czbx`x;Mq! zGenb6T{N8OlSGwn!rXVJt;Kxj#XNsPXT(pQ->yDGdzAuCoft}IV@>Qjs62Al6Rh8$ zoMI#b6vIv3ae#>o=;B8<044Q+hk^J&5S<(i-w|dcn%wcfFOclLyNK~q+;;hOQ4Q-# zna6mKTC;iA^pp<59uj^aN}nO^dD9&%pUp{)^AQHUayD{uZ>adk2T^0+Gq2h9SE_qf zujkuWkxdaN;=1w2j;pj`D7Y>`8Z<4tL#LsXN&3e4aI^(-UTJY*as5knbYFSiXm zZ%c_F!zWz7p65J>JxOZq=5a{MnP6vo>K=*v1d-&O()#KXbIU^_5%Jw0EcjruaVD-|*7G^n4!-`sW?XzI z6jgl^kt^zvE4-2#p4OJx=1*U6=hu#5>li_d?`li{Wpi^g0*;Ylbn)w@*!bBa&P+dM z|4zb3L@y_VPw4N#x=@KWWsOyWjxDyXZ9;nU+J*lG>pzdx zf7^)`JwAXf*B2eCHHViitN&e+M=+%)g3-}|k(Ky=D}W^)Lfo8tUa{kE)N4$Wq5WD% zxLN*S2*>@u;_r4X{;sqdLeugWT02MM%&jsnz-IZ&G=|y#>|gH&y1*nm7_Q_Ygn}t% ze+_1FaVjq_uab(AK<#pn1VhjlR)Pt2?{_|*JQx-piI$U7H5=B1F*)ifOR_@G53_f; z%**a^!^df4P~v%aXaV#?-pHkbfj|e2?7}Fhd8p&QM~SL?P+|33HCxrfMxlT_bi13p-w)DhHM6s`rWfn&?*gbGe1$1J13k6BgebTNjI&7vlOcr_ z_bx15x&X#IRK-Kej#>XGXNP)yKcHo1mPe?yBL3b>W(6FsIf^ooPRR(rGxjCy?qLL5 zr0#SVzXnF5KS8Pw{1YJRr4CU<_1f`scU2J{enxnrnLz(uoK>FzB>Ff70`Zo;!o1LjWG3EJf zaQfIMm7iWnosO#2QVgCC@@R!qK^EAj&UH@l7%dw*KWpY;{ zP-XyAW*Rb;F3gRnXktPx;t%&(6pEl-Wf;{LL)0@eg6`7X7AG*OjgmYP>$&?H0ev#b z=@+4D3p4q6<&iyBCEXoHrwbG&oa$kUGSPFZ{-@hwDm45B^K>1H=B0FFr@ol7XR|a0 zaA@04Ht~^;((;)0XZ(O7bUbY($z#`OwZkrM1ZIE5T&D*5tp%mrXl1g#LY(bx@gf&3 za^Mcx9b_kkp^?f7$CMI7@Y$=L^yxEs|Ee<*f(+K77S6t+W3AMT7bOS$f{4)u;cWjy&xLRifFFKwpoBh9B8mvKYpV6gMC6n{L$N<_x@)NW;C zM>yb*r!6IjFDgXKz#!&s-RHBR<6;eL*g_qopSM#=&zKNj5%G@;3%v^oJx?hPOj%j9 zx}J96cP1?GFMA1@XH#~459IT<9jw!pPAa{nrKY!zCmdp8W~uad=cwH@#6~7AJvxNs z2@-N@>vdo_1g;?`|SOwIA_Sd(%0);h9|`BWs# z^Zo<&FMejH6>Nc?;&Yx3?*KBFlb2q`1|t5AAp3=5r~OT$`_qZ)9wv}X)=31SA~c!m z6$XimioDa4%l~Br8FIPt7960Q9w(aeSA{nxH*IGOyU}z(hYAL>B^5|mBxANicVTKY zQ#;Xik81p8hs@LQmJW&)NUhk2V1AeOuwmuVRhJYecxKGKjZq{0L)E zG!TP{-W!LuS>M?iY;EGHQ{ugH>bOy{n9?4%j_3Z?8353k!KP#FMelrCGLNMC2p{nB zkJlyj=KolLf|mrb8}9j!HAtT;45I9b(A1qC_>g2Cw`!?g(5eHVm@YiiI26C%cf0pO zX0poRQ|#R$dG>XlorqevF%t*DjPGLypxw4uf61xAoczbA+Of zdhoU=#E3U21Tm7e5etSQk9NY%=dZ&Ay_4Bs6r>ml0!KIh@=i5&IceaC+4!+@pd3oMxu~q z!tRA|C+E*ALB|@Y%zIpr+FiJ~jqF665WXYJNdSaUB0gu!sCOsy`^Efo2_FLgL( zEI4Y1m&xar?Z|Y;Y_3-JX?aQ-_*W3k^x^Ax>{8-8RUFiQq>E-SFv9L2pj1kH!Et$& z3U-9lq>=-O2;$moWg!)-T$R(*V!dSRk|1E6pLqmkzm5hhEyqjHvRXJY0r(I&nRHhEKcWgO_O_2e6CB6A@|80?P* z@vtv{%l$=!3|AwDXtJH9o_tWApC8oyg<#$9P8?5N4fU$!_JFyl54$ z{9tx^e@e013`A7W6xdz}@Fb_BvuwJ{-;kK$toXAipN_A{96NUp+uB((2;+odSI>yW zGUO~z+JbvwzZT!waYs@VmxqCnaCT{oTR;Gz_=|BQ*SLKgwH8Uq@PlB>U8m=@z-Q3I=@7B&2-4}} zKHl?O~Xx|6jkRO+kTW4r;l(y_-n7N8y#l&RDFRAuw~xci;Dh9;`zcu zgu9{*r$Zez5*52QvM^>5Bqr!`%Q~JX5~RSJDrLJ_bGLb?3-m_-ZxaD+K1ft0N;=}h zq()%Z-OX#U{o+-G&W)eRTXAvxokW0U_u&mt)AIvT+%Om0J;>&f!Xh_|X0iaxGn?~s zY1R;1qVdxW1Yzv`WL|S+>HtET>zr9{oVyU$EBr@SC^1eoBu9D%*vn zBA?A13_LJyJ~ACfRhg}xl+vKVKUk;$88rMmOs$T+&i;UiSky*Pkm`+pp*B^gjE~W< z(;dz>wE|({*3SosS&B*nv4RxZ4$GxphE^PXijaYsXWA@ZdU{v4HldH#GoJwz6k|NO zgpOi2yu_q@7;T}W%phA5pR0MAms7;qvc;_A*#s>h+Pzl>06-bI#9rX_^z?py4NqIM zXCf5Q=>I_M5OA87$P8a=yP&%2GJ-aRS7dtd0Y1Ib53CXXiN@g?!y-oMrhk(=toG_19y`Ye&`d}<^kKZxlYI{>Yg@XsWZ=p18QnMu-Y!s*QgK59 ziAm#dX~on4882dFX^9<5TI+f)b&o}XnimN>NmfP2M-NBpR!%3xyRV!Z*;!NLdo!n7 z?~01C?!QfTSm42FF2|17!?pv4js@h(VV09y^24N0mGpe(UrX?bKkrhyXp2fS&YX~{ zCG2ciA|qT3+<1MwE7=KlI@v>Ku4qGxQm~%#e-FS2JMu-}d8`QLsfR5CBvVv>;pfAx zyx*iWi!Ih$;N6vo~ZY^ubC=+vbR4$wxZxQS=h+=fJO#a{s-EX-MigR4mNL7A;?;-v& z+nr#KijHLmrR|j)*zOOD`OVbyS35$YnKH>)0ay$9X)J&jZrE=Q*-Y9LLT%GsM?s4t z?BP{B0nj^2*j&R*ohQODfXyRl#ktUHrRjRFaFfHM8qg?%yF&(OuVj&AUExgq#f$}Y zDkZ&~#lXLJwl0WFp@Oz|Hb3U*B+5Q{D#L}axW6niTV&e@X6*Udf>yj$G$zXQEy3d# z9fT%)X5eR_1z41OEe!Et%dn6XkFP%Q5rKxc5$AC^y5D!|r+)zn2I|*71D25K0Wv5& zQq+NWEz$SVG%AcoZ{}r~^qaQdRSR^Ba#&HTO6(V45>Kspd|C?$9@cLa2T{H12&M?8 zekkC~EQ*tp6X@K6Nz_W&$Z*Y#V>KNQ4+2Aqe(Do_qR*2A%bwa#ubgfg3L ztU9bcS@>udR_AA3Lf017!M0ssG(iRlxnozv#0zXWl~=4}IKZ0j)6xrJy`JbufIJ-q~-N`gdILpM%dtut1x6 zLhTm3)D{_~t)>Z2NRrm78=NJvo*}}oDkJlSz;s>r10F*Q7-42J+~aaZ90BI^z5@G~ z0>0C@%j!3OBI}u3Zru_qNq$;HN6Xjx_z42}Xmzu7j=Sw$fwz9>$GkevhSVIpIss00 zwOGy4j0mZ~UeXSzR1P!GVnR?892%ZaKgQ12Hbwpm3{L@)PV7cGvUO>8~SvEv^c1X?0bCFA@83V0DQ%GB)rJMOS%LgYrBZ1m0M@m{>B5{*7iMH>X>wtNpQ7m}%&j?O8wW#JlqvvMeDIRzQUrQsDSig*d_H zqX!t@(jVXYHD7|Wf5Jq`<(kc3OGN%om>2npDPCZCeTwuC$rwXj!XK{E@u}N z7gje66LJi^>#54v&}U>%-QQ+I<);GmsEA8^gas>c$+gvvDZ) zv~q=psLTY57U$F7VEvIYaZJZx9%g`I07cmc0``!+fqy?)1bOLNwK#T>WJ4ulgHy`9tq4z&xD8|dcu#f=PbgCy{2w~=UtSxFxV z_D~e?6?qg|gA)k^J0#V#ytb+xJ25-es35O#FX`XD=>N$PPVj5(aAh{8mHwmK`WjHX z(@wN>rhk{aWbQZ++}8fGuKRD7ruEd$1`gTa!sA`%y=U_&$~#+*z=Y)n4!G;J4#zC*G#ByUh-6pG6yLf?j@`n^_T8v+7m4$KW=NYY@U|+Qv zYPnBSn4$fc!Rw}Gj;~VW`WNT~l)IQIL&yYu%_vbSQYnfFm*DbrA&-W^py0+2Y$voo z22{heC+K*2;g$NaLlz5Tu7Zs<2bx&P>q+5fQ-UL?DM>3~(QYs4tW&HLJM#|RcD?Gx zCg_5LPC+3=idWxp2)X!poz+Ue0q}8P>gR2^Prca|{*MZ@Xj4e#>ZFsJcz~Xw@B6!}5)2TUoT7zgRI=!{@rMr);0Y{WQcLV%` z0y=I2?yWA2+2tuhYJ_Z^9}a!ojr+)2Z_h%c`a#0wFc(Wru<+r_k>37ROG*fZ4Pp1bUtSSr z<|G%WLf*RK>a=)}4gyFIY|Cn9v%C{VB7W7%5q@B=#r!XT+V6>W06aH^d(;BnpZHcewqZ`Rv3KkxU9TPSfzn z)&#?3D_daYu>7z|d`NKD?KQ#~rMAhsY{nayekW$sn$AnT2c2Kza|w4mAYJmx**s() zw82#@)s0O#nbbZB$HadwM7)TRD#KG6ac?!YlvVh_ zdS_!SrWfq^wftQg4`?(t(6_ST%M{m#2Z8{iCSXGouuM6&-775NL{?1o#)C+#TS|JJ z6XP`JAM?Y=FR^4ouyZ=q5*o%qII7VSR?(d>AdK|jkQdW$C2}fyG}mna{R^Afzr$^r zT3AJqI6q702A=|M$Kgeze`D`l7&|s!E8^-Ow%@U~hXeEa;B$n?Pl|H22T<4a1O zQru|57784pg|17fTr{scc4lA_!LJ%|;xh<#9xNF;+_^8SdL4*cUR@>m9kJVmX@k~- z7u6c7HxhO?i}LZC5QmKw;aa08EHih;DV4*;#0$R(Ei z%h%88-z}G^si<0OLXsA4AYgB4M61{TnB#jY1MP)#j93|AGC3A8IbN-QOB2J{^a#ka z%#kKJfNSn&H}!y{L|@FPv(DElcYYluA+D>Fx0a9nXss$uK#Kgm15n)PDEUV>9N37r zB|{&UD64$pE}^oUH~mvdAL2X65e95s1u6woC*eiOA{b*G0eaGr;zp2cmHAxIxKOXY zTrVxj3%Q|vOHo{;s&Fol6*Dx~oJz^Jhxn?HE{V;!akIp)|_j-0N$gMdA z_DQ}q>6Nho%+#)(mDUnt$ifsR(owvL@G<_V^~b z6c^Z(!l8qaPJeQRSy1R%hpA^IXtX62IE-jX{{87fh}kQ_Cr7B9K`m6r&gelY9Ys=Q z2nMrrQkhR;35)wcV?LF!YCcc${S&IqF}NS?i~C(bB|{ zU%@Efrg`(PI%FP%)Q0;e5lT15J28^RI4YErn}p=G{v7;n>|#|%!MjoE<*4UFk*!2S zqn+O+C9n(YTk$^rTL&=d6jQ~WlIxM^*+$jr3s4tGP*o`}n2ESB;_}t=Bzf1dxwpPy z9InkM+4q{lor=?fOX^R+VKF5-^*roIAwcrJ=17=2e92>e>0=kE^X+`6m0$EyQCMWd z>{yU-(?~vd`RzUME?=WMyiO5(wmPyKF?PX->Uo{S{$E@HPx)T6k{z>rE@eQ49b-GJ zdj$LemoYAQ6BRq8+Z0HQ!Ps@~4Up}7Pi~A*&Vl5fg_(HMH6lR0RuMdX4xdP^d2SPQ$!) z3@v7k^|b8*@IFEQYbYJ&=`#vYGIXlh)ZJ(35-S3|hIEjsnb;wOLe&_dMI|{4g=JlG zOb5$}=hBEPc;z%yUee$CFAj3brfGz{@+$j39ME3)iZdk&;go{4(=MUGVzfuelXj3H$HENN& z{u?hOJkvJ{Q6GmsCPuYFghE;P7-KFwPAfXrA?3T%Z6VzwoPwVraUFE=&tifajBUSE z*|EZ&c#`xqXn$v`Z(4@cSmp*zZ3Y_kcPsc?HMFRIv5=~o`_!9lfa7tkW?PS=*|~#v z9^Kygzb-Xp;ndPMwZp|aJgGIhQ!Jjk(^k+{FGr0lA`lZ8sj^_>P07h#wns)XhpZsB zE@BpsA^CixG|X6XT3)MB{0FoRF~v*+EAnOJmI#)olkZX{Ws52chkEs$C8iUDuyiZ+ zKa9L*Q~2K#B32I6vVraaOvf_$CEqg#ZL{id)~X3bQvOvOViH1&gbdd=Mcr?M)LNK?FZg$_=jnD|0nm9v zP=Vnl&`%qk@+NPZ?fM@MF=S=>d#MG5^>IwyfB$e9%o~xBv0RSkFbOlGZ4;#QqNUVx z5cnGjGZId*^o@guVmH8t#^n>wB^eQhB<-P>K&+|@RkJ_@N>iI%40VT;`Fos=<|aH# zEj4<@IVkZdJ*uR+Fz+pJU?6S)&zy2#vDTd1V;^1qqt~X%*CujRR7(F>g6#Fz?@@1} zT;1Q%bxcn@lvq6(_iL^;0T3Nl#~g)Vz-Lhe)ijTVpU5W8EsxJ<%E;W>&k*rg8-fJK zj#omCM^V?2Td9^0TW!MUu`4E#>xs=yK5_cIfy{PoRpeewJkt4y&{ogm~|ldYK7*?vR~?)!(&S2a^|Z}hWq64#dv>}9`7(pc@wP3(bd zhx=+z2y(qoi2fz{^0Wp0U_04qjcq8e2;TdN4-yBmW@5-lF|nSbbkz3y*5CwnN;<_vJbCDmCXwmXiaGRlm2mOV-_b?ghseGKMC))QRn>QsVTo_~6^t?kP4Z^mUS1P}$c4 zA=C9Vf;@+KC-*qQMEn`ey-;@WGNJPk$?C2u;aB(zbaZx$nE#N4-3ZEmURvD8Tg{Fa zS{q@0a2eU^_=|bxo!yMHyxQ*}P~SN5i}33=2<2Kh?`okE3tF-I)RfxOcEp<>TONnV zCMLa}fgc<2m64XtBK>w7cT|rLTfFn_!?_;_S1k9LS?Zer5!fZN=m9*X`>?JfugZ)3 zvwt02typsQK{WH86znt{YE3DTWwn;%vd`?=B6aPcNz@~&60Agj*q&-?Ea zI>wMt-n^Ku7Y z9Nt@_8Fb9dgMBX_mv^!`5DpT~r9mLraM!P)#yyPY_q=$ucBe0qHj}rCUff%20Ba0FDv!BH-`{P1Y0LiXe%d(+tN#`hFGCCi+GG{q_;@&35 zYijlYZ~AYp$#IiZ)SO(B_ynMh`y66ePbAvzKITb%fcX#*u z0JS+O6lX2iB}mZ^k<`FVk}1x zoNISi;?%4i;E2d2Nr9+VqXDQ_R3yQf_TJ`mMHZtzK8*Vl1t~vAJ7HYE-#g8Dhmv7| z?n4EXdeais`&478Zt&Or9NBXdE<&H{$fiJGMM-uNj^2r8P3V65mi)IlOqL@?Wj`;B zjxv3`$$99>!JZwP>gfxixZgi~S`~=ac1(+i-#L1^fH%rpD+*$xN#SW3X?`)*>z2O)lo;s5|NTd8y-sy#7o!s zpHve|BBaOsxmvc*0+tw&9j=jXFU*KN|41eA&(!k`i};ahD-|PX3Qk7^{=n)o*DS_? zZ6k@Q^nPsrY`vRAJ<%_aS4B?&56JZd@nkM6#ZHF5Jd45C4({<%Fuz{TQVr>$@KW_X zbBRUdxPIlS(+ERq{Up*-k4-NRpIX^UMwHLlg* zT1U>nIhO80>%8t?cuzQUC7NAczXZ8HYVKbZS`g??(dPCDURH2gwgO#7P1_z#KP%I| z9vljaihX5%ylx|EZ%OEyIMD%-158yj(;6K60_QolI%qqF(K=hSb;S4d4aa%*#or#b zWx?)l%Zz4IIwv(3lMWd4aHoSye6z8Uy^m`KYUMpJxT+LpDefBB1EBtq&z{wvBR4zv z#gJm|9&OJ|O8u`GL%PGM9e31X2jKQe!cXT4L{??KSnTebLCh1R2zinl zdy9J#n^gt=Qi%SIB4$HDmz0!J*&Pl}EUha@{Aprdf!hyc$ez-ot|Z4q1=tN!GvsD| z!23#)!9001Rj)+EoT4Zhn9>mVfCnPtxl$LWK_g^NbUwl%<+uM_rikSg<~8{(xC&#< zNupH6Xrd?sy0E`T{Bl?qY%1)|~1vKQ+V3)+4v8@Wli) zTvy%0&}>}sp_BwwP6oYA>_AAFToi}XGSTU^H_VWp6{BRXqQF$W!dM~3yAsLluFB2Q z%BglR9$Jux&pK_J?_63jTL8*B2T!JG7tjjGx2+$DuZw=uQ3(`f{@FVd=RUSfUGNKr zwliy|WvbDf>ob!0I8vXm-zAjhp@K{imU0mhJ(8d?l6P9ySs$o z7F+_sg1gJ$?(PuWf_rca4#6R~1c%`APOj^|pXaN$-m354nVLSQ&#CU-d-vLF?aq1H z@d&Uw5qy5_FG}o~>2&2avDBtMknbi9bY1nQ{1E>3l*~cf?n=(I>sXyBS!;-4)ONmq zk=D$<)ywC>LQE@P#6ZK*q-N`L$yQ|KGu)r%{dy%~rQw9X(s<5XoD=Pm&p`cC#!ZW; z)oC~IDj8VvBjhV{2l9gmNGfo;%%Rb0)j-FpS~F?VNRB$))$?$n2Cg}~6>&ocw$dP4 z^sahH*Z@JF*XNw^xzw&s-<#EpSB=b0dTGsawUytETo5`TYWOjS_+lwPaLFA=45}m? zEuAcMtv=?<{CcOC=TXVoxnRVb%1ihIdZ=|zi;W@l@O^!rw*`k`HV^4U7MDz#?2yUo zL7vzNmzaW7vIadC13q>+NpuMMNLd|nQ}E8I1LJ}NJZ>K|puZZOT3Jcbx&Sj=Qd33n zfs zrs@Bj*A*oY;S?^um6ujTv*s7MXMe*d0frS(u@L{3=- z+kV2nJkn4`A%KPo+Kshmj<6b09UDlOYUqBt^7K5kO5Mj>xd=&zPQ*J2A)}#FS&rql zX;DLV5*5f-tl0z7^2`I{e-I-pBMT+rL|zhMG5tOhZUK@`Kq-v1#jJ7R({dy%V_{Ki zcOiLCazDZPxEfAI8XjDUqrSYWyZ7%`hqz7IE|+;P&$RP;n@(U9JzS`W8jrTz4fA{M zd20aM3&Q@MTgO5QvjNGP-sM(^Hy;S*r)pt-z`SlVUT)_p7PN1Z`_eL%+kf)c``F4z z`gO^HaQE0z-D10%gl)0RoT(^8QwpLxQKV^$;2(TPkM$Zo2|$Y(}jg!20# zV_+F#kz_*cqz7DsVP3ERcjC1FEa$!R+?$H!4^ZR~RN5$0XJxouxwYGMoyD>I!y=Ll zZM`C_ReF#HDsqAK-k*=*RcZ(yywJbzMcWpCCK=k5Pl6RaM897|7ft1cB_t{y%FVWw z;}iTUBtlrrloO}2yqGR%fs^`jMf@o%cQ|S%7Z5sM_EyPrDrsO&cHDT%eA5cNY2Pc; zGl+8E&_x<o?=i;`6fwLPq3LYF((`+O%{eFi-BgGSG|?!>{Uz<+L0YI<_+6?( z65mP*To)0qZ2GgjGm6O(>HI7v_<1+N^zI~?Mgxl%IP+(F3PH3#&G#9)chDbiRHy9a_fje1+n1 zkj6Z1#7E{pv{+3Pi~1Q>>9y&@VL|Tu#hv?Cqv_Ba9&?UZF0Nj>AKgsPw`!??WqMg? z7hYt1RE6xN9!)wrnJ7~9%H?5u-@&Y~Nn_+p5qHn_8u>UQE3*B*3Tdp!#Y9L@U{v(DRR_HcZKiqe zjiPKkGcm}Lwa##8;C&&|8qTxgAz8l`ZM0i#&`%}sH&IKjjCM5N@44D$wO#zmoP)j8 zs!Cg>dyVbYWGQ{j!Y&a1c*r^H}GkpUO& z*imhqTOenhaFxD))OL`U6C~<(Ho#h`U1Xt#C2;FYfEP?gSUN>P$q56YEVCWC#830n z0)gRiQIaluV~8=z0ns-j>S}5ZF2m?IM{@|(y3IJ?G+7_j9t8|xcu?OwGQNz+4JbE@ z6MHH;C!E2RDEMGNZh~PTWX^lK#Ei8S)?MoU_708h(}CG@<8lyP{QDdoE;AY~c1SdkI3$s?-zs#a z*4Jd81NNO6fQoj_2L?raGSU~4p`KSfP*X4B%-FOH?Zz+)a9Dk<-s|6&(aOND}W?S6fYjX14 zE-Iqu)PCUIhCbf(H8ZO&Zk+X>jy~U8+Oi@>Bi`pj z4F9Qs)SmC-1V$FGjI6JH`^;aCgzB_=3<4Iv3bBCe6{7LrI*EL(X#5Q`|ylwDH4 z|E^V4?hIMPSL|S6#Xa^o+33N?esl>DVhH3;elw4`z-Svxag0UzmEEGu^8Gwla(B<) zvHVTCq&w~P#;uVzL$MYikxj#8CKz3^U7v-I1Oj1c#Xp(U>*P~{Yy<&ndd+r{a&>s} z3zbDCU0!l!IAP)8Y$N7QhaY4tDx>#K2f>)_uWXA99C0BBecFkxbH@_X6I(R?qzV|(NpVM*sHj4oLe0JVYBMuIB-oV>_TrjrJAWi zqdcfUG7QARqlIbU5{2@3RPU9t;nLK(UFrY!YB+W93C8}bPYiFG?@Qd*)#HWAkNYNU zc7V@nu5zNy=o936V*~iXjypy!m4fH<4?MfZvV^%C)6Zo5*0{|~ z9j$;u`zVTQHlHaiDttYpfKoTh`p|uA+!ys1mX3~uf#9r#nAcVDOkL{2xJD(SwS(7! z_JXUNmxKR-VWZzkEj7I%wA%>(gJefXqS%~5;PijdX0yLgE#wk9`X7`VatTZDPqV)O z?!S!)qTiWRQV=dCq@{(8r?K`Mvms{nZYUh466;puAt51!hZ_qzasGV_5*s|s!DNo4 zj10V~nHc~d-+jDgF#jowFh(X@z*WJaN4LqEY3854VF`A6P?~&HFExu~(6;tAZn$Mz zV2+z*ih7qDKEv4%G=SM5Pu%H&&w?4E3q%)G8(%!dF$y}SwNn>0H8qXT%pAkY{rk#_ z0qn0G)BHyB9Ik?c+ExHO92}~9Pg*gf0K1k|#+&QwPTu7Iv}3?@>GSnG@ag*VQ?G8> zmN)ew+(_eo4e4aL0m1+IQZ~fbOmo@T0V(pYkM#XSAgvI zV(oA!8ZpDCrMJi5tU^~KluKRSyyNkZk5?5pPP!o63(}4Bdwuw90^PM>jXOExsXrz1 z#FXoECGYb4Cz@m^s`x}EH@nA$aijIZ@z*EB-)^MC-u68K=lebIAJmHU$Y=#n+uhF% zd!cnyR08Vi>hul;!eB}{E^k+B`wi1$Ry09uzQ>I5(gW*_<1QmNJ8_~zEt`IfkWKHu zpnG%&=E~CBML&jN?aYHL$uQEJx{2HF2mpeU*%HXak@-r#ws`_l{d>^UUY`kpEn;=| zrV#Z!^>q)=mlZ1TgO*8SIQ!=pJGQ`D}hN znXJaosz52?^SYd^5kgqb6W6xp0+U z%UNo>@1vSXMMX^6&pPJsmjv@o!mkRveTM1I{dQ_7yXov^HP}Wt3{*$fKc__BNGN5Z z#hjct#ycTH;)u}4WE>rEzXvI8qb#r(uB&zEkTYm1UTfHOF|V$SB)I17Hlbav(Pv+# zY5Q=s*Vo0%gL5SF8!{tZAaweM#ljyWxUTreuAsi{rZn+;b^&iKykPv%4&9v(V9 zWu#`sjU@noQLAlr=#NQ$jR_Iqh3Va@=f#PGRBxn98RNhgO;@B5x?6L;|H}p?C!gYA zhpetOaW)hJN{TYJ0+-VjO`W#G<*NXm3m0y)BYwFXqL&HbyERH5QRn?1q<}C8;?;RQ zDF`X3CieZ#<$Qyb+~=YfErM0xZQPb!vP9+0;Fny)&VW;Eb~ACTY=_$^EQFeW`Sm+ON-GcU7D`8fam!qEmil8!1uqt~jgTak zVGO88|JoXw?*zD*?G*_UwB_Ex=wYhjDn#wla3xyRy6zhKWlgcVy@noJaCtoil>$d3 z63PIytOS;4^{^5DKm{a}tjFkq`Q9Yofs)@_oaprxTPg{W5!rwf7| zVr#BCu?N}y+9#+X<7B9uIq8S(C|0oi?Zd+Z_2Oaid1;|Lw=jnjAiY4=9stU-k-{g z3r4`$9*DqZ%bJkTw@Zaz=)ZjU=5GJQ+5XeC#rZ(VM7d56NcCUaY!rlCj>oK<4=K$M zbWuoLGuzce#A8cmi|qCK>}g`p#xNqp2t1!}lXXebLC&!h^|`-Dygu)KV)1+Vqs{d3 zo77TG;g{8B+^df>zN@$Ao2*rj#jHA?|6`(%QE@d(jPgG)o4G`V{*~D92}vg40?AyO zD4H-0Izr%c@|EwHi)!^MET@s~Y<^Y&U^z%>zA_5?R;&Hj%n7~|h&z;_$({2)Y({fY zW}70Z5Ieta!5ug)h7@q1Ho3rKXu7#}-&DV1P9~X7LHa|b#pSs2zDJhah|M0r-`b@~=GwT7wAw&xjH>1H7 zL5>xG{bX*Aq?J6|AKgN9%=0JsQTndRbWK2Yl*#ZPParVKghW7g=%;#<6Xj`J>!m}b}9W*=*KbhPo5OAXx=`SVHRe2%@&MA;j@A`Ij>Xo`VLhxv?_6% z8xT=Y%(nk=^$t=)u+(DN__)?8~%Pt`a3hWPDHAI96CV@0uNH&Uw`+n zJO2CsKMND`^Y7)~hx~J?p}$1+oRtsiW{m&0HMTKsCK0!Foz%bgs@g4KQvG}P{{{m8 zbN4@e{`;W+2^;_vwz#{bav#r4It^Gy|N76r!NiikmP5*&^paxyza2yTK0G+>z`teH zcj2HZT&l2Ar2PJBZ5;e>)PW1bgK%PmXLK{S=hS=T(g%sX!WOJUCM>W;nDL?SvkFC1K46Nv9v>aiyW=oA!h)dYbD zV5MZF#E6SSq-a7$Ev4-2YA7cC_&pHeLf|ZacEYv09R)!=lz6!3K>BB$Z$cnN2FLAk zS=wIqK^=Ti2BLVm{|+MwCiT912@IYy92A`U zN>T2r3|qPG;lE+KrER|4So2m*K>pGSpXTlx`t*d_Z4SME*Hy~)d?PMil}Z}=?eeA5 zPWj$m8D_w2=N8RUgBpFp>+T(G>TEi&Wjg%JlY8NNGla&O2=`>fjugo|4*EE)3EiM1 z#xv`J(TmtDp&NxQhDIBn_+4K@^t`rc1Mijs@3>yS+BQBOf=A`8qF& zL1xK^+_ro~TI$AUediawaXn_M=c0W&@hCBB;2FuMf+^oPV0^-Z0-(1w9ig+q2e8j_ zAI;OHZBW`Dxrbz5{|7wqw!rK7_)BR3Jj#B(OfP3SP4>RKL*zNB)Hk>w4sB?@0H*Fy zM_^WoOw61D5Q-aVuFh398Jd!*?xmOlu9F&z1Nl z;N=FzD!-xul05bdYIeI}hNrgrN^n|9w7AMX61oyKgJ)=lRyKQjVP52R=u=Q0O#j>( z946wxeROd>S$m_6{5JPJ>54>>=qEa9d;fl_87RaD633^_4!1(95M4qtV z<>D~?p#uAZNfoJqM<(p59SEJxfU&!5FDjBXM=1;vf$QJ<{0c;f_XEP6Px&G7r>Rq@ zk5JH1OHieVQ32EuR8-<4p0l|~mV02(qexYeq4iq6NRG8Rd)y?*Vv>+B zg|jJmN~cSm41iU4*j_@qJpNR-IM53d3ukFbOU1~H(CuDs|M*Ee)sh^xvylQsccuKd^|$PL%J(RwTmT$eCB}LI-v2d*|MNy&ur9=Kb%xf8^oDmBgB-=|BB=G>uRFjC)ywKJuTX)c3=39#=HU=Ig~nWD!>(L-WZR_>78d>r$T2PXxvP zWFyjU9UimggW-C2_F2F35NX8VzQk4ir}^kwDF*HGHyiZtpBzC-<4B&;pSLgPYBvj= zgO4pC8Q19Ikt)MGn8b=js8ZziF=iw4lJC2HA)HU_t&8t2c2~{?-HJY>u+c@_e>0?) z-53K)jfYBQyz7V>NHfmtHhm~eIzT~2zF7X8CsCqST}G-M~|RHBQbu< zJY8(A4jUFC!Jv&?IFZjN<>o~*nIjOTKCA?!eIXIa62(SpA~K!E-f^VojzMgnV)MC2 z1c!y8{H!Aem`qp?Q*?`a7n7_b(K8WnT4QAwCvHj-sfH|o9VOcf-YAue+?!E~$jHH( zzx@W2EhwR#^njc@QFo%DLIUjX*heG_&}p`%P>GMw48Is}J0v11A!Q$~mk7=`9gE|p zAZG1A_w^SVbEG~}AIKb}PF#{XzW>5F@O`7}mx{HV;HcSEuM*ve3P@tPg ze?U0o`8*n!av`Tsfsl(Wt~915=TY@5SKU@7d_MMKNeZ}Tq6-INT##TmI?<@WrC!r+ z()|LgnwN-Ao=5!5N+x3<3awa_xFc79)Rs{m9{xcrUgq~7_wMb(#PkAOJxoIFkZ}5K z{}KWcrRM%G4UaB@Dx!pMEFtiagu|Qkq2++IrAm?2V&c{IInhK|y%g$9XQ75%z6yOp zypBOD3+-u;PEBCHMd%3w)P6@5!2}PuqPUon75}(H4%B%SH48}9!So~_GCPwKP3@Vw+4e7T7^+j=QVgVkgV(`ns7&PR;lfPhDf5ww_ zqY||dt0w5WfP_iS4WM``UP%ISB>hxqa(g#PY^io!(pPK%TfWZRm8#Z6|VBZ3PdN*LgI#0nl&sMm<77jRt7k9Ttp!eKedOmbo*=b z*tKZcNsdPppeCrD`Q-bnOBwp*!RdI9Ht-!-I}8btl0iFEuM0)G-}U1|?vD$K@lb62 zk|S>D(tNH66W#5pO$*}rKI)@g*|`Ty;hi9?7yp+FP=;43w%A>Cd9b2fXMfEQ?u!lw zhqrMbZVdb|Xh+7ufE9Ib8uyGzS^<0zgU@)68jHAx2ns06%1#QC0|h^gy#x;2ogefA z8ChjLHqL8TSV)4zC}r(Ta+NcV9NNQwYBy8Qb~$cOxZQlUN|iqC@LrVYzY&W;2qL?>kS)%n|T~iAI{P@ zb8N5M6J{J8F9_okK|c^t3soRb+_5C!Dm)?_3)yb0#JNn;+sP}6EsdT@2I)+J+N5zM zWI>pw62-!Rg)7m9SgvLXS&fFojV3RI`8V|O5S%0#UW^S6fdFrHiydT<|&VwT^IVhrbA{rJxZ+;>|g?*H;?qo-s zP_Cztj$R9#5&1d&${e6XU{OCw@ zicTO9W&iHsx^qAp(vrxU7Tkl-R4WXzwptpkX6*3RjuRh~%q)NWQzv}M*k{AbVSZ6_ z=}J7x8f(s~k3D1xpc?C;P)fcUh5C?*|I78kb^d+q>NLR*y^2Hlt==#oeY% zht`Bjt)qd@)r59D9rtvoW^iUQI`wJH$U@(S$}FQZ!Yr%)_XrpS6UvamLd0Oj>M$tj zIwy24t7$}*DB{Yrt}p~6FF5+*dK8Q|lrJld04C!`U|WLxLy6T~egzxqZLe}xyoHMC z+cK(2nWbEu-!#~o0<y zt5rc$pKSJ;snx@YJd#GL-{jBGhiN(~4;M@2#?vRZH7xvG zuPeAJ{ag5-cFRF_Ux+}3*O=LB*Pi^os;2!vtK;SQ8Y$6!jcj31)GKk;qKTY0C&c;_ zOzKZ!p^sJMt$F-z16lsYXg_XoiHfPm5RIj_?}_BrYc6nZVDLC8AHEo#99nW?BfPXC zOy}7rR5ZAMj1e*sT53Vjs(mHdme|~Xg3KA+&X69T7?wD316|{D^1xwU4zSQU|GDw< zw?V2nKLh~>tx{batLw0b&afIe+xa>eo|C0Wo(Vk=6^D!tVL5MtPi9&qL&QRt?tKlK z&7XTY{Z7mvP0?4x61C9wCZetF6fX6V0HxCov*GTXx>JF7ZPBuu-iHiwA)5~CbM?e- zr|WR58$pgK?s73f-&I`7);UB>_7##qxSp%iYA*Ark3n z>h#SXC}=q|u?GIOU~sauZe!*`1#*HeqvBU|*o=V~JJJp_45TEhDJYxb+x^%fNMol_K->0sdnro@F<^^2Y+#Bptly z+PAyP>C04ksWMGrGPJBl!0VkRjgH?VE%lS=4xaW9KTCk~hDh7H9tck*?QO8+6+h+C z@NsT+X5$k_*V*`^^d+kBY|cr~!@iz=w+kS2P5xp8c?L2gc z`?+jG;GG0EAaKBXf$gUIDPOG|oRW}>X2AH!7**v~UN<3KlrQlk_ZrFy9OOt<@=pD0 zbl-sAgyZ>AhC{=}tBt0DRxbLmGD(QMHpLHib%x?HO=c*~#A5`C?*ynr6O?_;J+Tz3 zR+3EuF{9cM#vctj9MM8uY#DW2>~XD|yaXPWBDN#oHqcwrl)LBMyXV_%-dKGpzMsE} zj0=QuOu{+EeEk0UMFB$;t02@!t5#;J#-Q%tAdezRzJQZ3zMNI6y8TOjsuiFdIcVgQ zB!N|akUS-xlr+K7erTxmuWwnZ$?CAg=U{0&{gU3uI!K)Dt^%|HaCUyuCQc~bHG?nxQ3SJyBYfec9O>wHC+Li~ zNOrE6ik<>$Bk!_iU|nrVvZdZ>RU4AdXomuYlP($C5sSu~uq)<=Uw4zFKGh7yp6XG! z;~8&LQmXX$<_S)Ysm=6_8?!O+xX1}o@nLmf(Ck18zw-I+qjIQC6@1x&p9T-Fsr5iI zf*m0~`nM)c+c0$&aHcWsj3#(>tLA^`ns#1#CBrZY0kIltn1_c{q?uqvm=GPf662#p z@%NF6bvm&Mz2ehYTVJ`3fzAZLl;!W`kZ+18;OQ`)Es-p)>m$U0YtL){SP{Bx5~xN9 zVk*7c-I$*%#WboFNsPFt)NZLUhAY~-M3vOKc{M2gx-fIpe^;aIj%Nsg-^CPLiD10$ zZq$g`(;-{iHaEE42y9vaRZ=0HV5tYC!t8P6DW1unNQuHAWKfxBDckw`!a2$Y^NN zkYu;L7d6k$t+?P}8jAr|u68gynobZTB6bgFWAM9q1nGQXuUoafIMJc{rW5kvLh375 zIH?f8JljDoS;j$^pTbp)gf+OTS|)w)ROkfWh$ZJ5M9?AUYzLQ5GB8lKbMjulr4i#CFN2Oj#!;U)cOn7h^mA)0lF}#-y$sMS!wCh zpn1qRFnE1GR9x08@u0A^pGvN;xEeRCM$|=i zS~D6mLb5w9{3Sw)QsjiAcOXz9svZ7`DQ`9p@kzO-gSkb&m3u$KOkWjR5Vt-uwg$CP+BH~X|e&_HY>0ho)6)b`fURe zdlX(H4AgnMbQFDzi`z8YQDNdxyV!)%Q%9#3I=fiu(GSxHc`{IK>_&Le5^@PSJ5mKH zk=);<&{0$kBiW=!C*3aP<>khIQ2Ft8Q4`k@F>#>!Sh9Vx5cY13?m$oNdF!9rV3KGF z6sF*)|2zfJzSaPYT$Y=pK;nO_7xFm?0EF1VzYZkTKb_gS|$^3Z^bp50~n9xMdN18f?$Ll!u*kLW`?NiXX4| z*DrjJeL?uuX$A18Tr**V(n`QiRcfb2@I~TTU$XnZ<$V#KoRWg)H%E#jBK75_+$p-g z$D&4IXDFd?oX~v2Hc8F#hUZrzcA{3pkq@`r@ze<(#FTv>($y!_AIIG8CT{H|0FO?B z*rv|{?!_iED%(|hZhbbWGVCI%?Ri0Cpk=stQWlLrx0yLlz(0#5UFBBbrHRXeRl>fC zyZ`JSS^r$A{N1}8_3fzcS9TJ7f0{dr46Og_Zfh<+t{5*Unh;Gi8Vek_Z9r&rG zmoTCuXEgXPFWX0bT%k5 z(MDiLb(#DR4QG&$2}i&H=+#mlWl}`bOO5q(lZH+&%<0M(isps;wSEkE}m<*;m_|<@4KzNbd{i z2(D9^1|N0}96GWs)i{w^mG$0fm#6JNUVUC0uyT06=QnHg{}BE~)B;q99v7lZEFCBuxYJu%DUqL;+>WA)CS z9^RM4bYrdWV*37y3?)-ku!koPlCG~!CV_s8d|T_89|UfLYoZ&k_Q^oUY4>TR*k)_$ zFBiYVjCyP45f^rMYP$oMyM9x)sDsERhaZhrsM(%8GI#d{wK`#* zvGxC$(O$$~q#d5LFh1-2IF00~6iu%z68rNGH6ROrYe&)|r4{uj=2}lKz@z`A8R=OyPXZb;aDxe3yCu*9Z z$tP6V9?xWVCwRKafIOSeFMi(Ki>sD6t~AdV%{jG3Y=0En!*W(bO4{mTGV6RtCv(z< z4|UHaOuH`SLNVZFm`)g0URp&?4w203LY(CJw{ox zhZdPNsQcc59q@5iA^|3$CYn zGyEwG4cm}ed=u)U7vh!0bcP4GjWsd%2>H-fEjss^>XCdCL9?1Ao&AmahyN!;>*k{v z&8$TB^V5uUQG4oaEUVEMn#zHL^T+1eu$Wb1v-8k%z}hcEl9gtxyq+dhc#z+$(+5ic zf+9f!q~5X|d6obi^Rb@XyKAvsfefT_ck^75FJ@L9ae0c9xhsY(e+M&t<`C#OOE|{>F@v+>H*sS(7dkMj{x&|_VWf%^| z2p-QQM!2>-c9M)PCKlhb*&UnqPJEjkNz40M#+5sN1Nd=_C?xC-q;Xe}AOIL` z;59@^*ZiI}Ti=-H*!j{Z$M(NcL9wfRIEE5MK2ftXjZS_GzC>MDNriSKbtAIi+KQhz z1Ie`xmDX;5j&p(EXK3@L##~*~?Wt^4V+6iMHlRjR`HS$LepJj9B7G6$k=fYm_b~0# zsH!qVd6<=YzMZ?fci59HE&_x~v&PEC!pyc0+Hat{^lb!=69x*7ZN{f6{}CH@*s+myr7!>@pKU>70CiqO3(A(XoJ z6kt@sY@BN{Vkq2>@-sPlO&`_oM71nvH@;H3555YI7aVc#Lcpw!%1x4AgBbhD#r19nP8My%ro`Tb<2(REH>1N#A_;2S>yHFO^0?=|3Q%8 zP@JC{Cf>%*j>KH50bDO8pisEy;Dtc}tyoD*K3n};#Y0*^WyoPk|3Kxs&$mwEAL zGI5+yRQQdE<1?RhgM=kFr2}4)z;-hW9y|*uGcC3VivNENo_SJKSbaQ>Aw!kK=`Rn# zH3jZ$@sMJCnozwD3}_Ld^BX|Su!?-Qr5WdWSRCD|rDii)LyuR_vIT4L8_z1E7OIB$ z_V?vKQx!E!`eM(nj6T(Y_7agWM0obc7!=XPJ5kU(_9{@dex5T(kEoU_;UC8Ngb7S^ zB#!TZl~STz5Dr+SR@T`v&t|` zvV&K0?2?X)FFyZabx&+|BrESywU;mLb4UpVijRX3I_XA)h;LSkO^q?d<^YDCTVy(!u5lq~I79J5Iwp_AIJzHQogxgQvOLmsrir*``?JP%B5rSn-r-%zDh zDx;}pKwF>#jbb~Oq4~bH#;!v`QVg?O^F!zBEp$!L!*@p^XM4%5R|nBWg&>*N(RqB} zsSn2^YL#fjkoNo%ygrj%eI1OKhxQkyV}WBK}c zDA>yH%aahP_?cJ`6tZF-zV!i7)^dp1Ng$NA4#oj|=67UJGDb)c%!D-3$90G?{m&!G ze0c)+H7U0@FY7f-!VE7*9O?g3*d5IwrGRy4g18jL8QelBFg$$mK$Y|2Nx3i%{FKB; zgkkKSvsAqp?J%!R{c$bD0iKSMm8nH`uFM;rHq<13RY>M9XOOyfySe&d7x&FeZLi*q zq-?r;=TyR4QT5@LlbFDb@{BZ0LM$Z)G10S+K4C3Y_sNWF=J(h-nH~QR#oCb_&&%SO zz}??!Q6iCrFFQTIxzpUrsl>{ll4CKw@Kqwi>B>5B0Nzki(o(yum|~H1cqg?>Gx*Xt zDp0ubG+mOGz?k{*Kd+n14wqPGENSs#0SDusm)BB{1fQ}#TYRoNZ;7k3d__j&yX^El zmwvunNFFN*jJuAQQENQqhf1PR4otgUFaPmNaNL{vgh*gfMy&6+WcTS(Qxj@v^T4%- zfeO{F2%V(^#x5d$DlWS!%96B5dWQh;xW0j1M3wJvK zgut=v;^xUt25otq93S&C#HtKff@-KCh&SdC3U$EP2!|ezXM@cR%>2|C#0!x;u%|dF+Q* z^2yyg=lmF=b2rWq-unB>MX5^fi5~u@6J}KW(YtB;VBBjLuQEO_iR_|13QnfGGHGEN z4SNTuVSNv^p-m>j3z78n@deT(Fq$+Y*F7HCKe%+NG4TN1&UIoi@L2nv;ZPihyD+ZF zr8Q`TgCg9oi!HNf7#%(x&~$&}NdHo&r?_@0_er3Uuicx|UQ=P5ZfGkV80?{!WhqZgE-2hE8R~Lxo*s^d(HA^K1;D1;MVpn z2Vc?Z=z;H>IU~ILhrl`0-Z(ua(^1I5U+eB0eJExEy)5DMj*Q>=?Q1i+s}K@ixzO#O z0dAGJ7Ey%5b65H9BV%CZHWOby7q^qwCteW}uOdR826p3n61z96K9TQ<4ne2-Ll21_ z@TjsEXZrG)*q@*}fK|r1HF6dSS2#{?CvEgemy4;)_a+lWTvqdl>*pSr7QXBpad~1E zS~O11&L;Cm6c%QheSPtm)JCn-`D5eH39WYBNxLUC(4TiE|4RDY(@RPsE@Bi4>BYb??)LTkSC@L(!m}qF5=e=XYE~hn(Lg>s@T0|6wz|p|hlv zU^6`=u-*99LNwNlf@KaJ8tt3TyI;18h59=$Xl5rjWG)W3(Z?$~ix0m6e-e?vK4vx| zgZ0O7wt4w?}w|K2QAZQ0iO2 z!(mW#0@Thycj(=IXRJEPMxaE^_xoWo@tor3Dbr%{|8fCF>c;>Djb=9nln;+eCGn>B z`MCtVR><04C7yGyuj1YPO^9omS)GGUH|>7w@Vl?uaMp4C z`H=1Tg-W&J7AVxpG(Au4h z+#~O;R+$-ZZMFti?xyAknFUeAKCGYwJ)bUvMPBhdUzl$mPrL4#T)By2YBj$?o36(z zm14Vf~DcY^81oSuMb}0*pYjq59}4s!EJ$@>7s; z=0l}yUdNEr1RvqIYi5t<2if|oy@UL+#puNFUk|@)d#2l*4;YZxa>RlyFHJ^HF6oAP zerm$FuMNIL`)ZC;clDSd`{L4d)5ty$KFo6fFqlMx45K|aKl0TvUqhX7D#3u z{t<^qnV(V_n$fzim2OVw5C}6e_`II^c)qMh1_ep9lDNI<9+i|c{Uz{vpS2-eIy!b9 znyTy9bqycy2_G>q_kEa$we2q9Jcu>ZU!BAZFVX+78@h0|&45i@Jcg-2QK-vgOw@vo zr}uwYd&{Ugnzm~YcR4u0EqL(Y?m>eDcL)&N-Ge(pgS!L|!QC}T2=4B3(1TBNKll6T z%s2C6);d4V>ebcVRb5@Ouf6vL!@RTV&Unh}EmapsXw%jdzE0F=k}2SgbnAi=w){D4 z=1{za0Ux0eEdk~GnzITc)>x)@9ygv#>Z1yuYa8>q4~?-@#l-D+`ya2*iDO4v)D(3BOQB^0^gmxA0N~XpLqRe2;bT;Q2<7r^nODnKr}Dp$t5kj|tT_yX#YSqSMZd zq-jpLbrEXSH(efA0<*i3p*jowZ`pPqxTQi$y#HJ_ia-wpr<7z&QMa^J8mtDzQ6O#V zbhl6lxE*_ZLhv9!?P@ph^IG3KRy9HVcX2xvkJ3F+6yb|QGxt3#efnLub59RK!Em&} z;Ik3YJ>Y&~FvmnF>=OjvRyk){Srmu%FF4r?_V^7sml7dVNcr5e&RqT7*9n?e7?jX% zYIu+ff6cjyYdA5`9MMgPn}!BHK=Ef_x8nQ${kxAJ7EKpY5JmV=CXh~Q9gxe+*IN^4 zcUv{H2Sl)@7{Vd51p!s$5A!Ws`T1F1F8l}%d-$IcNM2<)edy@uyi`DO;0G-Y0`36k zXbLPM`aW;(>})*VT}~cdKbqCdAZIv96iiXDvt#L0reJ6Md-|6zUmo{{9334WOSWc& z-XUbHjTy161J-J74?se=TuD0Ms1Dm;6qQ!x><>KQaexIchO7+KCmxDAeB}J$taGcZB)bO? zYE~b4uu)ppEmR%xP6ns`=gP!MoiESC01;R)6q7tw>?;CzaGtk{L9KWl&?#>D*EzGc zox`{t&pYb(1EbS(i``{WX(;q-J^U%N(WLXB9&`YUU_A~1^2Y0IM4GIv@?v+%ZkEKtH*IEz6ksI!= zj+n4TvF%;INfS6A^SQicMK0L9tcac!Ykt;Sj9?%tI+}>*99tz#i6E#D`GyAk}42;4vhi-~}#@B~4 zX}pe9omOI=Y4K*4%}=+TFa7&d1-15T!i;S|b?ZTgK{Sj~clDI8zI;Oi>iWn8PM0dI zjA(YX!7uL;nooX5qB zE>_IY=$3(2Fvm%9n&}KlW~ziqKvR;L*(F6qMeY4lB+qU(6rX!`Fjq|uWS?1KjHpfz zhb@p#WoZjJYFM&sJtomTZfg@YHwC|bxj@HpMIxT=haA^UK*VlV4VPY269 zHeJsn$xL@^fSyws&&LH&Uv`_Zr;r)9XWEtEQPox)0=Y~@r;8Q08bvvu>yF60kJ-o4 z-=ktj6h?N;D3E9ou;L^tod4vTpAW+#0~CSEKF@c1KAN?NH_0@>U?Bz*-GpI0i_cvg z?#jdwHS!fxc!=C0{|Mk9??@4T{f#~_UR!-RUw^yiFS1x~t@&02$CTQUMHw-#ppa?W zil9p;6Fr9eCUUc9pq!nFFk@nj+{SeYzm+&ule{bzU zmH!C;qQe8T$DGIOyKdk0uIn&H*C9#+?t_*~eRyhHn_%bOcf4x;Vz<&^UXRVGTrpUK z^Pk8LZmjgz^t2&^JJ#2Aj(;Sv7NcO_T$v>&xH z1Qx;9DO^V21>8@!JMY!YXVjaJgD9-tm;u8$GCF!lw^4u| zOZ6`{lNF=DT{tGpx_tIdadGjg4|?BUj;+PaDH%l~n2B>IQk3|Cin^wT*>pWAi#+wY zm;8)-t0kO5ULfx$lke)ebA{rowC)>O@s zmpf%SnJ| z{uZ77`1ZebSc8d z4gi}u0iHlI^tdStoZy}2)L_DYpE?L+Xfx5LaTh~+YeVL^vycX1?DPyKjCfsQyw(Pe zvMp1Ijsyd-LW2nf1;s&Fi1Y!ItglM{WqoXT8swDzLrEOQuDu?9vEF`kqN{qw3XpD7 z;zv5MFj-d@z9;@Y>ISO`V3WR}Gzgm!4~|rMpp_{{hs8XY!L5Jn{VG z<4fbv3hY-UZpZa0QDe4`a;FKLYAtTLyNso5%#c+1UBAlaq6n#3}6SHYd{#8hi67*SVx>f3B6hgz1Eu-2zzx zmP#AwGQ5_lG4wlo>6%fKqzQeY67SoeIywu@;3IP4$sc}#i|EIgfwDcCPR$_*Hml9> z?K(?&5oMzhOwdZjd!{er==+O#uqIwE&`p3r4O%?vF--?jP$|Bi-e*-h)d-f8P^aqz z+y~{%!P%3Hsp=Q~N$p@g(oSRvubUt)W|UUUBIAb}#r;`lkRD8Wd;riv3pPiW4nH?8 z8M7UNPtuj+-8MB)OS+;BlQnmwXO9nHl+7PGNIGs)k~ z`)2KM_~_@;enahYI!StqkqwnBhaMrRIzXg>hgFP@w^8;1$2gTio)OPZAa$#6J}flP z-x=LNNgw&Eek4|$Lhw%ry@r1Sg1I*R>hq(wjaEB$jkes%;T#J>qJ?j`ZP+yU=0a*n zStKMJgiQ9vnY?A$50e80j_|!38yV?e#Ed@|@s2(sCRAn~pGVC8+Ab_q^Eyd{+j_g_ z$=A`)=Mxz}k?XE=9c?)9Pln)>th8SBuK8DY2MD_wxqhg5$mwLGFQV?*Oq5%RMglN3 z`Yvb|awXD*QK|W1WMx3PO%`uOWn3Rs^E~&-a;k#b?WvCRgNmxlp)jF$Tu%30B4YC+ zZkHKzr~+dbsgSogDBWS;q;5(*AtITazR1&=BXB64$kSzpMd3 zpcmS2B1Kw>a$2;22s=PoHlP$YW8(%9OTY+(PY|o}}mSX@jeG zBHxS^qP%_SS|DLL-O&rL7_%W+5B{!N)YCWk{8d-Cq33>W&Sd=O9(Wsa5FQh|Cq-EB zgNj*sukYvW>fSpe znu57fAASk-eFG)r^Mi`RTb3Zl!Ovf-Os7Omf1q?|hQp>dlauOEG z=SDx$Z_b>#k(Dx-AThnLv`VF8fnS)4*oO}GI>?$Y85CDPqNK#3;Y|2!%wfBb*$Nf{ zJz@f?VO^woI$pp`S8agS=jIF%cCJ{z&JK_0y$wPj2TiG0c^6@6?1dqD#QTIKPfg^X z-UjgCe%%BX?G77m;@HgjxVbgYH^b;Uy>{4}XO&B}zDpQN=FRf0m?s!?3bd%V4n)ls znkYrI(GRu=YY?oO*=VfMwMW92$E?uR_IoNuer)Hpw9u_DVV)u*n7h>^D36av_F9d0 zq|XpvbT}3Z_&HPuu6HqNml$ZrGnlrzjR71jEER4{RMh!=DlP~dRp0I=vV12kx}X%& z&uN%5X%-u7CB8sMM>%Y4d{8!C{(38cn;ahfXo5t--6@R!W-NTRl$X4pZQlt*nlXg> zDY3t={-V%_sJ56Ssx=v>4W*3mRNmZ=IyE|{`X0m32Mq7`43-bi#OSF1fsPrXRlIKJ zO3hw{p?RP!r_M$$LC62gZX${ywA)OoNfm~Y4y4^7<(RDFr;@E1nba;^Jrv9qfu7*# zdWUZwEFD|QubANXjGI%Wio9ph{%y7-9MxR56dyr?eLoQ;sHubguK;-G#~HZutRr+j zEn;A}^3DLxHjU`u4q-l;f0f_$LJy&$rR`fwqy&{4b(K;?hyf*mM3p*4t)0ZP!FP3} z1O@cg8TDuMt;SUpbs6{{aY#P{Rz7Zynm(EI?E4J7X}g{hbUFG%de2Po{J6#X+@{XR zFwOr{%jRSGb{mB=|8Y%v^rMkavv`DE%vSB)M zJ-H*hD@5#`j7jVBK=2m{TOc9Ai(D%O>Ep||lOwE1{E8a#-mLa%Z93(dvfr5G)x>&t6a%L)!upXKnc?{O4lEaGI{x|? zK6^#|?v4<}(p*51pH`?u2{g!2%P(6HqH;XAZUdE!Lj^URB4J_~{|(=8;9cSMIt65H=Zy83J;{4Ftql7j=AoJALzhmJ;Wz~+f5mSmYdL{En?Etm=` z`krcN+lk9Qx1VWRTI{ads$$gz#BrL(S0jM_yA|-ez>xYHiq03vlS*Jr83bBIpXhpI z>UM4n#0fnDt&7!ytmQ!4S%X*x65|xZvZ8cd3RC>|2hmSM zclFPhlkrqGeyDbLkAY9+f)k3A5paq!QL`3Z`ifU{DGA6V&$ugV9{L!F7`w4U8zi(pnUw*i=i3f&TmBZ_!-BGF3S7{>}(PzVtPA%}WiM zTOG7X6?=Ln?x3yv#aafrq7{*H{326$&yS8zp%7lYm_F z$yzv6k5Wo62!DaEdGfnrd^21;`%&sg^#Rql*vRrLL%)Y5pZa(Oy3f=S1W7#r3HvFBtai&YMiF{-7eUYpnph&sRcx%$~fMh zG&<)!uldd3RHY^+?|~y_I58A7N)-CX$d!1enMZ4-A&!)($8>l`AY8hOdMq{7;`K9f~@<@ zhn}n&8qMhml7=doAn$(H$lbfDFECYdMEZFb8I=rv)_&RL;EYP}rb{chG|S^+Y7e|2 za9QiNC4Hs%1=)6DgZKW{U!Ke+6>lUSDU&znw|%sIr@QggUn;H>M*@SKI^46iO9bJ^ zM{7Sp@j8U5cv%?@KK&xSw{t%}^VmR~aa0%ALTgI3o=1mF3gAOL4@wOi^HQaL$8Zn3 z^06~?8Mb0}6|VJ=e{wQu5~HFU2!`QO2=7_oG=|)?p5?B`^4Kq;Sg`i@DvyiPp!XBJ zJS0qTmT83-qvHVLM3lO{J2d;8Q{P(G2Mw*pvmKp5I~RLjCYn4Q-jl0LP+yE_?NqE{ zYeSbE_rxz=%ZUrT30&$m=~W*@h<-tW!JSZp?n^bUqavXB1&Wb)`MFj| zt+Jb+9~&^FrZy-rixxn5+l2i&OiX_9Hf<4(XYt123)%O-%-Z+&+-f*e$%l8lUkCiG zifvts02LvqHsX`&UP%D>LY_L~9V_*B5b7+7#v5jCWRbU0B`A4zyW1q>&? ze5E_JiEE{6SFJ}d07*~W+8$Jmvrr<(78OgQPb4;d>g zCoA6Hs-b;d2(0gX4&GQ1kif>5dXEYq&++A&GG*#N-Ymz~TV?rir^dA}9W^c;Y29_U z^T6E+Om^g(mac2D?G3@WRf13b%wU-JOfWVN`_{#8KKzZbjg$!E?y}t&$<~95n!#Y0 zqxnNT7BAP_z8dX-M`uOWL{P#)CiRml6Xz3UTL_(Gfv83jnsw(L(ZV3=9ea{O#fNPZ z10QxYbD>3tcX^MGK3dH9erz3sC>l8Oc9$bb-o;-R) z^*0L&jdC%YTbB2iE|BX_0r~lYzaq*(rAR63O%Z7b zKPS0Ua%Ll>Nr69_a1w{1lE`HD7!M>H93Furqg9B~f9hXSOV3S^Tifskz&*85`_DF4 zX987syP^^ed&17%^^Y}Q-VKT{P@-^V`w?C*-j<0$yV-)yVP6E+Mc zgqG?<;|WH9?Yg=Qfc#f|hg^(#RL>n@<$OdGP|9FM5AXcd)R5$@!0gs!WMS&KFJoJb1$m^Xz zaL6@B3cV2BlUmW;4q3@h&)xUcuLkiiYZYT&=zxV3O4}veMflx*7F~W>{hVh1c$- zijE*}hlRUG3FZ%c)Av6s4{Or+`77fSG7w7UzKOl9JCc_l%u4{GJwO0q5mvj) zN-MyVRc1Tpx1Cf*63t(0Rr1kB8!?Y3ep$4*U_GjhP7TKv_%gufs+X zvmqqG(xKGU%3)sYSV*YoVlBcMt%F$VyjF=fFB8$~W~W-p@F7iy`@dDueAiiI75kG2 zU(u&l6=T@76E~UfcH%d;!(&2(j)vs(+t_U_R_Lex#_Vn{o;7ArodtbP0|WL8HW-p~ zaZ;V^PYz36v1}R4Z6GxUT;2@(u84|WdXX6-=bTC*?Pg@HI|1p`=%xF%8l$*c7xaU{{?f=K}qxr8ggEa~?H@j~dAO zNvT7-9IRgOKAp^LDJdpnuHC6RKfm^m43uYi89UR&+;j!$svitY-_kyfFb?$$ZMf&B z;aI-mr`D)iiylk-o(Xa4GOq6)x3yun%joV}F_I83@CY6V-WW@8e%xcG`i|?RmM{?+ zBN} zdCq{a|MXv607gd%s$_90wdEx6?Z7U`xPOnl*S3Nbrh>MofQJwCmUUq6jCF8s4WP_5 zu7nlYcc9dc-fpU5ln|n>>POIrS zgCuQ(2LfhlpiF03xr-$I{Gdg$QFj>kmV21{W^qh=ByOp;w)xQZ7l{x~(>V|LG6NWa zgV!KN}0R?K|y-UOPx%ADvWu39S~os^=+C=Xm6f)^r}q&=i3ap_Kxwf&P%KiJ}wGm`}izwL$LLMgMy zl(i#>z7qG+KtI^`jd|zJfWXV>-qKg)$}S1z)d=#n2NG^SMFDoQ^!Ma-h^s;IDPNyL zXWk~#<@S=wfL!+T5CM=9P1VxIh~i3L>UFqWz6gG2Z?4 z=3_ry@^E`88{*8`2I@Xbn($mX(e<;LHjgGdp z1i2vSj}`;+sX_!h(>n{PYuz2c1X&dK3g|DLT=AtNH|A3i)gnWHN0g`tC*zl4q#moZnT^uL(J#xn!~4>bkX~Vk%^WzQtUQ-Je}i z$t5uEn>W@1UlDSh3MV68rC~{)9{bWcpls$)6_DK^2>@w`d7TnmGZZ8p&B+dLvGq2Y0P87y=f@A)U`V}7&^HnbgM%jf-UPMh zlu5`5W*KXFaTBa}fMz*_^Vl!*X4}8nU@JSkyT)A9br2p5qF(Ckxg~Ey&*M)j=M5Ya z=%`9FHPfQ1O#d58U>{R=Pzwl6Y>;;18bJwryVYWz|EQgrapi~xRQCI2LTY?$y z&fH$b^-RY84x69d^HJ;g2^b5rZyAGCkm)y{{Qi`zUG&j@eq_n9_iX7Z+h?tqs%&{c z$Mj}Dinfz%8sChHTMZj$?4GwE>tF8`$hBESq*{2 znF6WzKNazVX`GGP6G>-KzLyf;Q~j$*KzSSttB*hF7l#1|02)k&r;mO zu;pAaqTBIGXkI3ifWrk$x@AF)-;y-f33qT*4u&HN@%F}4?q|ISroa{o>yJLQU`+)V zb}V&uEu>n}T}`;GMsp)mJF;xO`!^l;UevSCO?VWHT=&XvLS4BmryS`UZ1uxTp~p!@Mv+@VOy6{h&sjrK zVzzQ^=l@vn;;PauuFht-OAyn_0LeL2`ER!f(5FlL;zMQvKctegF+WmeixZO(KhVEm zpXVm=CH!%vV2z)LS#Uk1rKWr6`HYY3Kew}eq#~jUUCW3o9*FabK>hutvUfKYxV>epS4XpVBuukD zjf9v&5U$LfZ1&k}-j}R7@Ws3%RO;NPBA*tLogQsvmFN_PCy1-^d#ktZDm#mRXY>br z_6*mZ3}!f-izY5qI!|Ast16dFm-1ji{3}|WpJ8dyh$BfYoG5;!)tt?LaIspfi7twv z7=qErNP2h6ZB9)5^=;xX=uKY#X`*L%v`Vj4ogVEx2TQh;aWTAj7omm7gW&b@R%O?Yy&_}{#w2eqhTztdrxM3P6KyxRqT8{Ckj?0Xe zeGVsH882q<2&H6)Bael*JJ4d^(HG&ugx|rPPF`2csRMCkgs1xOrCdn37=wfJrdC*? zb8k~oL$b7K_N2&}Dvy|>XmKJcRQp>}jsB0e{$*%;mEO3batdacj-NZ5xW(<;YB7RD+ZilNkjYY`Yz^7G?OvVH0Y&1w(CjFQw(etO&t>gj(T z(u&enGz%No|MF3v=CFbPFm}QOH)Yi*x^k1~9_X|w?73O;3D3N>vamDKlnW$MeSAx1mM7A+#2+e8!DFRXnjR8{CMCB55E13 zT%~Ss2W~aT-2Vn!vZ5}R(zLy#x%Me>HnFA{GjRt#4hUxXP>FZS^&^(no#WSc^9VsbmOBbjSmA_nn2BByV107b-{<`IxM?hplj z%QZhg4KkyW#mN_IP0@GcK7rvnJpaQ=_1*GMDK)6TDz1VAr$>UCmwjhbw;;WSjo0?= zC`usuubZ*h3BNk)c@7yb>R>%<7WD;Ol@WZ)%z6BlDDGeF@8RW&zBLATx{D!*7q}Qh z!s*yNPf0T8>yjITYaK1%0gvp;_1zB%LoSw%F1O~w2w&dx^R`_g78YK~I0ZN>9!gPG zY6UsVxPkXDiuC*X6E$xQL+`fN z62`VoLrkWaE41r&|J-nXYqnnVGRCHL*pzoa;6LiWVoZAZZ-jCxo_`4C?+qH^brFIX z_5v@8igV6HPf>%Fe%Z~yu03A~A-Jp)ebS?D&|Tt&tfgdy;~h~V&s@X|jU88fBZCd1 zK-B_NT?$&B%tjTc@xC#1v2=LVHf{9`y7(hRXbVvp{18Y*x?`3bd#>A8Nm+GlSxE0>InT%hlGwY>CZt@5R z%AF33feZ3}q>ineypRy5JTG%Pvw05dA-x-&EcD}2<-h634>A7a^zwW#_CC3hMK%eU zkmJUsY>-}2W6GEmo$KiV;l?}1HAHf!hbDdlh? z*7u_n=7Z}L1J?lg+yeoA!`j%7ijljgH@vYmiN*;V{rQS>mUQVX`BF=QJsT ztwq~2TA;oK54_jwykmt8_@%ld__5>f)g|eWFTriK^U+P(^$g78+IAS^r-q2eSC~eW zujw=ws-z3R?>npKq0{yrdp)SbkIT7CA5QI6)#_bJg&zB$lKDTYRQTNS z(I38V?e5iF+ESk6bhw7tYSP|3a-mLJw4;Wt@17{AmZ@_#t>E9ZT-NS%P8RAp+gXiGtCJCKYlwDJ>&f%_&}{v6V)TZT#D` z+0;rasv`4rbA*A|$mj~La?(gT(UTVel13bUfp?YM-~=N<@Lgo?B>yk5sqFq zpF2s+;cQp{Ip-$8fDR($mQAMQ@qt)*KO%b}RFR1v^R?mJt~yRAzUu&jbTe|OX^nW% zC-Nz{Kf7(XFH>qVGX*P_nn?MY5iHf&LE*=feSNurA~xbZ7L{pFLTW;2tFDZ=J1>sP zZ)^}wQD71(?a}_-mI4dP3_2g!ygN?8B`kzyoT8ndGQJ4y%d4CQ9 z`}X&kR8a|yvQCQxIH&EX?*!Him^4sI56)+9AUIcOAVA(>z-$D-jvoU&qu6HghG#v@ z^b_!-;1Rw;^Xs!Wobm?vA}Wh&T1v@HjK>dudSt$FJJm^CfT5#X4(6s_Ca9ZaSB+r) zN=ES33YYho*SiBrszuP{Y!>6m>z9mWX=u)El&iqcz?bYYx}ke106dF_D%XdJM%b8R zTZO%NGsd_hq+*>zM(SW46*}K>1mdoGd83%Y^Hr5JlHYZcB1xViVJN}13Q9bNs6W&s zb9iL11?R!oHEpWW)LPJE4e769^xiuIn*rZ5cEeYW3c!(b6Nfowj9?4BO%2cf9GOO8 zy0i|xvAimwQ~D?TqlGjhhkHdy*ee<8Zzj^^Y0#B|O1C8Lk+j)X)BK}; zUS3`*GOJs3)@Ahd#j9)GkzC(gy;$(A<`ZUt0PXrHYlnE47^eEf&;VmDXC(Xm1|r4e zPOV-~iV)&@l}fkk`^Qopt&!sXnXwmkh}Bch{`AM7>P`su)2a7Q6vLUBVwd*koT#I~ z@=pfUex$F&GAo5}&l@tz-2oE3sr7J14u>>W||Fydkr{b-GWq z_b!O?G@8!GsFlTXF~0t$?1`KZ30=~1PClABFZf{$R*EXmcoEO!_lG&r{S{gli5{_- zRK?Td>?q_=KXNovMIBB|P6VrgDw%e>*3F!*U+}5(zr!3O^`{7K&G0znIT$5ckrE}B zwc9c3X)Fc-IxJl{ThaxJw*q;b@?c2aEoG6uNG87{2ykpbDCQa*dJ*ie#&ZAPfRXq? z?w*Te!>!GP6_0}+EE*c0u;Gc0Kx8%P^}$==FvYyxs6C0gUDKN`UC*R=8V1 zFxTpL7uH{mZo6@${I-2R?@Z69ekMB%;X1U?5OUfQr3g9*GOf~Q*mpgD$q3fYmUiH-W zF-NzIQNA%x1)HvxM>U-@-tpG3OvvOk6A0N6hi?tu8WK?$Fu&n573E#Rh>p!@EZ)y|tMK-U75SHB9 zhKwGFX3$QhJ^z8>ExO<^MpJKq-3dYT#mk1q$8=k(o0c}-uAu|pJjhSBdh$wMd#8G` z?6&)rG9{};Lwyt8xjIfxLS@E8tq5I z5;$+s{E?2Us)i&*`Ne&=Nc{VJpS|9wE@R`VNZ8KkuBZtoMYEXTwi}-P!RY1Xvd1B` zA^7vobt+yCm0|8Rv3ZHs#_e7FtbLrPeLHDQW?F?wr>kVmPV}oB!Efr#N;r^Ihk(2t zGwV}O?Sx=tcbL2AR3U-+cvff#j!d4)U(%Qn#zC7FlMCJbSP zxI!BD8`AWb*ddLtY@F9pg|Wo3v<$G|6Z;1?`(Y;8tXs-#9|syYQlaSPTNf#XB?F&+ z-8Y5UhzM82F*8S<{nVLI&Z6P<{x&`FN{!w95v-xI`;x8PLN%sm+-N&+^MQ#3laj~3^VxIFUfG6 zhjSttKfzoFc=v>~#YxC*p)ltW57|Z|>Gv);cff33s3py94bTwMfO>l6mya9zk zT@y8mach1j5lW0|aS}>zI2vzMC7zwil^V>OZ*V0w3{T=9Sad%ejayI|StgwH=bC*2 zbH?WUmI(R<^;_U-^VB)dzNBG3M+L2&YZEQkGrC+D~Y}zq3Djun&%H-`_0ZacPNq7B8t-s{O%*CLCPelu&^qLC1 zc`DYN31P~S&6U)Tm!43)Zb+hg#deRTn1)_NZ+|*pE3tbB|dnzj~cn#&ztN|fl%q~<+2dW+sR6+>TSVG4uKR_^C5UQ6Nz zw8Mo``u4{VKDw?;ECoK~zT{Qqc=%`v3Vg@pM!DYlO_on?R8{Jq63 z#8Iyh_ebyzudk)R)zk`zl_jWHsaJl3KJQDrWhRSDm%3Tsf~kMr?^4gM-O3>WcNASW z`yNzZ?+e!AL#0&iPvH}ttZzh%KPKM~wiJK&mxBJoNy!iW#S=db_2&kLV%O@EF57;r z+hf$w|9}S}Ez|#9N+_-J2={){dOtRDKP2LeYtgTmK*1y}>w_J6gAYLub1zbLfxjc) zH^}M^K}t@Nr~e?zqr-#Ii=&2bvapxab2r}V;qyqioc^bCZ2j42q@lX)JlP`I7lFcp z3i@N%7x|UWWkyn7pN>-tzAk&zqvKL^{{z_+@iot(b|O`S z-sqM8)N~;+oZ`=fNkf+cUBVgzq;3AN(i+*)PaItKrQLs|$a@UN#Z?TVk}8PSeY2gX z&5&$*@OarwCh2`%mW~_-blLM|F#YsWc!>Vb$Veb`YS@n4G(28kNsrjB@VGThp#>G) zm&KdRfDef!qNDA(VZW@S3o(2>9Gm^TiEf^5u<(ByLPOKh@SL@Wi*%%`8f(#*AbQ;r z1sc9Q!hhLBZEBTK=56voK#{50sFaODXwl5l>?&z((Z-z_=I5yGOjAsgE-4nCfzH%7>!DWtA0kZ&jw;iH8J@`s zYdM8eYkY~b$;zTKd+r{otkR#&Umw20`oEw+YnJmjM@@77Y3^jTCmtz+Q4$QvXWJ8e zdC+Ts<}1NaCu~ScL9aau!b5y{Cg*o;_7OAUHZO23CxhISoU!Lh$nZ*0xmYhDye$31 zsWlOz$y*%NnY61#x#K&~Ok(*11ulyw|NL~Bll{L#I(N|P3TQQ-@Borafn-(i0%O-< zPUp_$kIkB59C{%9xH#4qlV>t&Mk1kIJ0Q35qnnEo*Qtfui#^`l za-lz=V#!|imje1H#9ugwi7xOkd}LJ_*l1A)Nxyaf9{`UHzgBkVN6XT~w-STz^?D^F zhuq$-chqhfa}t=2b=j4!b?|6*^ReF+!D~GZz-+VJ1(b)A68>$+qZQ)AVcFR6izXMq zi)(K{Qc3?9{H1VzvcWpUnc_>59amEkj~-oT7-O-)_fr|=qof$vjDKMRkK4mRtB>m% z#vc?DjV@z_d>AI9Sp~ZqMR_h!N7#v2R9t9J^EUzqvMJ+o4i8>2aPI z>)w9rO!F|@_zA5!GykPGfe`ez*^8? zjz2Dwp&v%1*YDEY)yWAcv5CR=R+;7hfEISn_X~Q$H+I!)cGadkFE^{8?K9Db$k@Cf z)9y@EB0v>b<*ihB6z^zBy68^oGCfXs>V)dJyX?sILzf)JPa&3AqctkA_!VGKmkrM# z@)8bTL;{qPbMMT{3FA7i1WEYl*e|ERqRq8>JUHTkq=|Hbv2&~Gh*L6a;IDCkM`{1X z1&GJvSl>QnY9q6?7&!TT19GSqLc`_>CKd zhW|)y{+ql9IIuY&74Xg*qsx|Y*Z&~eB-#%GjpX8)#PttLhApTR*#-kk!{?cOc>o)_ z_}}eaS9SHPzUoz0OB~-@g35Lp!9e)_P+0I~433aRQ_e)U01m$~g{CT{sJnbk4dQH*g0CGBncucbg%$^nxbUlD^HpeAT15EHWK6*qYx?XguDat9f%Mde2#8z4)b@r7 zv^0p;7Qb(>hak|6AJw{FhIv?Sa^dP0`JLAG0>R;d}<&Ml0A60l_@XUe!Y_o zg(OYTj~SO8%foxM9MbvM-6)koZi4gnbsKO{V88cxkImY4BW&&*6cxcQZJzz+9o28G zHV5ccuOnX@L2K!o1k$A1|Fm-cjnmb?;j}!0WrzR1o&%XA;IIncaN)n4xihD|2pW*_ z;0JxQ?ed;)_KGz5rEq}QC<+y$gB<>&1JaYg*<8vrSMa6v^pV*E{RohmZGE&^YKdhX z`gcuN2l>!%_qQw~I`bHHhJT6ewPDl|f8k=O$R+&u^@|$nzw4Jv_@Y>iQ2yUud62F- z%h?VB61?RC&L&XaH>Z4g)x0%3_kJAIqiFo#avD%l%bvK80;!q#F_ZS605xNd5EO3Z zBXRoRX{o5_f4hoKwDenv%TOX_{VU32VdhU^6S$PO`}~r$E(0moYq^*4wa{lOdw98B zmS2~??8&A7x@r=o2xwe&YK3RZK>IxYK&4Q*z9LcPEpBFJC|bSWG@Y03($~``hZ?HANPN@LdgtwGWvL{k#@Ds?9*b7!!NBpwcjA@fYMLscE-i* zVa;ORe&3MeZ4LxUOm!~cZ1s}YDM=MF$>)xh)CQJ^AZsWjvXOqom*)QJM8e6-5q#5XwGLkxBiA6o4=4Wu@n~7!FJ6(XCO?qg z+eSD%5*#?ku{i_Kw*3U{6}WNe$Ubk*{;a*avV6+YCngf~T93MX)iQI3)_2RhSN~^( z_QUIIg>y`%{8#x8d}FVJ&#Rj8wPOLl|IY_D4<+QWuu@<1Enn_UNL0`D9=K?fFHt2R z5yc#>%)A<}m_n9RQ~>Q9j3wP#v7gL^e#`%# zn>TqHr?Ap?0D?!fW<8ABCi6(d|9_kVCKdyFHv)c}w^m(FoVck`{ww#i|KEKCXnm}J zwbT>O^Zilv5%*bSWaK%JzE$<#63b|h&ktuFhh-%WfXephza?9)8m&14tyup*&mGvYOZN%Yp!A7ky+y+{>+(JZln-C{nvS62%|*!iWGaEXia2znWJP z;7^jw6pZ+iVq#cG?vJvX1!Z*}`X)-^V!0EdWZSP&2IbA5^NXx|-eqRj8c?6v0##}n25 zW70G6V9wA#rbs?j&OQ~W-RnfM1Tt7)HSB2nYuomcK!Nm!gTP!SmL#D#fm+6-Cm8ut zZjB0c$G9seU;`iC_8NO2$w+RyE z)e~=8(cs+jD&+|46LI$uvjp6YqOY{N54PW~M&;&Gj5GoF=Arxx_W=TT>*EM6QY||l zqK-4_kHnjA^Q`+-3D^p}>f$FG?f);jzA-wou5Ghpt7F@?&5qNtE4FRhNe3OXlXPs` zwmP?>B2^&HSx()~PzD_P+Ox3;M^Ln}d(r_~)tg+M&Q(s4Mxy*lRlFF@x(Y zIqgow*)CRSyXi))-T-Og3SqyH-+o`1>=F!*BvGa!>*FzyJ+GE;`o7W+Mq>wwh9N2) zkOOxm3^5YcHY!l`A@QKS3gxl<>VT(iCEEA>WgDnAktosZ7MET%cU05%+ElTkD}oo3{OgoGavKpwU& z$uOA26F4SCW;VZiih7~d8;pI^pI8`4+cOE_LAOTBv?|H-NvIhWh8eHa2)_-kq) z%1Ch4udWiUiP2x(VR^EVI!s2lgj?_W8Jpvd0}b$_2iRpoZtu7hWjo8(2KfE04YN>wurW?KiF%i zk61^yX7_kvU@wf&m#QORG$UmF?fEcAqt-Zr?8o|56B+Qq|B4~dL;IB_^zoLaLfRqj z26p2Lh(Qz^^o1@>BG16Iyq#!Gwlu|h_2~IN@3TB^+qv8bs4Sfr?Lo;GlgzuKpv0`| z))j6Y_UL1!3Hk}-7ZmV=wgBy*-ESv29ft7Tq)vfwvn3Ju|L6|j!e7n}JOdRu3gsWL zv9Ysl+UFiwr}%bJ%)D_gtGnE<4UZqgQAmHInQ5h9r%vXC5=Gj#g44a)u%6)JO^1r> zpkDWO`DkLi;Z-h7BQhujgb3327ZN{q=c(w=o%Y)75waal)O$Z6eJiNF+c{nDdT!#V z3c>v6NN`o8^zNl}_anVPc>zYDA^~x4tv1&RveqZu_;yhNvu=M7@mO45S2`e3Pn%pJ zafAf$r+g|t2@R=1D?|;Ufa!ffvzk_AX)hD#c6_OM02+c+uuTwa2#j2+1Of$I*WV-%JUai%KI|V<@vyT!J=Ae8?Rz&*^LXBs)Q@jEW&%|{?mYQTCo_Q-Jcxg_ zYnXn@&bH{#-;>O1v>uu1T;_d`@;U>CP>L8B*NR}Wf4}kxYD?s|&+Eg{d}$I{`;&i} z_gNLt`B^F`aByfy#wf@^_`nzS#`N5)A1Y%1D)s^BEd5ZP!|TSNR;3rCAn+`PQ?N+AHn9gVHqC?<90t_r zD=aLO(nGs69kfC~${6a|-7!)_S&~;t90I0UI~X4JzsQKzuCDW+IKezNDK|JHy^7uE zb{c{ov3EDA_I9F%26oA2{;CTAM@JtG_Qd^A_j_^)m<&2Vi~1Y($KdNVWY53Pb4mV>~9(YR3K1_6#7S8Xy-*J>+0|J{6`N6_=x}9 z{-0dqZ%6*057t^0Dc{Pr)ZYF_>cG|lD14*vKT-!2QvclGe@dVKuhhZ+>xw1;Lf1s>VFXgY48G9kc+JQ>CUy3#8(F^I=Bv&O#MhP z1p>==^+%TMTu&h+;O~13l<4gm_^Y%8TvPNukR#{Mt)>+rnq1#Wvq zp#M2MJ`Wl`uj?K6nRne+QOfAxMN%HI`3UGfFw(Gm(YT(ormHwUQtJ&byfMEw#6tzb zkW3&HhaPM9@;t2aeW=?-TSpaS6%kJ&Rl!(FM4i!NWks5R7l#_q^pomz&EBBadRN$+^^rYADeGvq z6@BjofG6k#YXB)oF;MAr)*FM8$q|O9&+rVH^?3{WPpJuvrxX94tSU5rRf(K0H}HFU zda&5ck@NHOuSRLBq?{)6#iOc$f+F6J>uwsI-rT@^EgBJ@=Lt{U+#gRtkOiAV^~+#~ zwfMzIMfJhq7h!UU+3a1Iw8vwpVJWUKfFL;mz96jb1rA6X)sXtwB4EspHa^D#8?pi( zRRX@>e>+LBecx+yWX%1z2x^Asdl1sbD=ZVZ)Txu4q2Zr7ORr(UY=5PqH&OZD$&i>IBvqS4se< z{!jn5RmrWE&sTUv#u@Tqv?uFhyCns(NA zFg#%E{T*pDl$;c$;rB7~dC^jC6*hg*^Ftrz_3>I$Uj2T7(t7&z^8J!-^uKAqjZpNGZV!Cr{=O_AC zBTZw|E$nrqB}GGh&crK$>iT|=D3H9U1h;%UQBD`%DU1j4`Z-DiwCD}DsfKv(7u5x; zZyWL~f;@+vLYUgJ=?5wyv6lVN)ELA2wtci`4D7+m*I#&l*zaV2^hJd;%FB0#Q@POi zYBYaYp};2aeb%hEYKQ5ehXnkIPQBXLn<-hU;hZGLxt^UL(fGRlC3c#^#P*d|DGD&B zH2!v>y-XzOC=CkU06Hbe1p@VG*WK>+OB4em0xt@5&Qu`mCu&%pu(jXY-79fB>#NJS zw;2daIZpfQwu<-5xbeK@96pr1{vez(g%B2oOi1uQ`0IY`m(LiLMfkCKUJcL0F#?qmrmPSz6^ z!@SyP2r{Kc$KCbpi>$}J96YWs(hI`R;n-=SSI2yHK1*4TTXu80(lpk0{F2^+NFWra zmgOg?m}(WGlH&G9X&qS{Va_jp&abekb9Ge`CcQURo&9Zu-l6>8ezBZs#Rcf{5~ada z=r>yXub=e>bog~ESc#rfoXce9sO<|~3Osg`4{udrPFHQdYc#pg%V%{(Yo+tCS+C07 z@C}GP6<7=rFW30!wyau)f^P}w(8v?4^-PXMgySTfwM%n2Ww*!2N~uz$*I)MZ+UL0y zb8uy*!I|k{th!>)_^OGq3Xl5u)1NE}naje_5CJ3T9tdeA3}=+R`H<<} zp)qqGoHa^^HIF?<(EEhH9;qn6-W`Vb4(B4naNERG2sukOyk0^&9z*+MP0?_3ut6jj zDayY9w9PWKM6pVo6OXGMk}@tUfS(k`=h7NRm{76Sp6R}L@wrD2z}+kQdt1>J@+KMs z{5TnTPufkoz_bCHjGO>;bY-#FmnhqNn}1xl7J70@U!g#?~qz}A~5GAb&m%kM*kAl_sl$2;3mnbP=3Mmot049fNeDhhC++xD- z8u1{4Hay`rR;fluS@cYRJ?FRPeQ=In|=W+PQP~dIR!$L^X{yx zlu4mEif~rrbc31q`3SJqpe!`q3~Z=DWe54cC32SXwcS}0LP;QWBGn<;4MZjjG8vc- z<@)wTvDvjcFx{ImABfmO{{T00)FSBx72UF%CYdt_%al#0ZZ=a4?f)TjgrWxqvTwb+ zQ7%t^QhO|SCipYj!cH(C=Y$>Ptssi6^yPHH{OfKUHzA$Bu3mlkOOYALs&UwsF-Bdz zV+81#8Y?<75PqW#ZyDGwz9lMckHM%%=Q21oK7MB{BPG=hEG6RPGC00T+wUWBjCbB{{Z7BU;(Gvy3aI|$MMUMLUvF3=Ay`H zb+2U;x~J3la?K?bhnQr6DQtoo8^ zQc`x|$fj@3R6BAXT(wT5;7Y-B1C1B?5kaJ_%{Z(?fnrX!?O?iG-f}Pl*SWKIb(i{45H?%x2GQHTXn*1Q}4~+$s3`UF5)Qa2{iZl>>EQOpZ z3zj|PT+EisWU{_a6#0FJ+q;hfebMS>+kJ7S+c#%bX;+Q_p{5k~y;2Kkw&p9K9Q^L{ z3M*0FxOfoHcKG>n(ncT|ureP&wpG*+fj9*xTukP`^nN?fHZGzY>qs#HVlNMis zcC|TQ0{_YW%M#qmfq_*M283dSvO>+$buYVWG^%QqP)TL0#qE&T_EkaSWhQKz)!}c) zOogCB?-M7(#we*SdPH?p=kA5xvx2tsjK61SbAN(XD-3q=xi$uT`JAR(Iw&q!(CI+- z*hy@SR!ue1YwE*BNA3?W-vwrHAZpkpFgF}TKt+nnuFuXr7*de$1di=5*KS<31~5EL zzr(1fx?oKdxlD+FdGAiBC_(jVH`qTKouA-)AZ0vv7-WAFY2u60 z5t$Ttb+|Uz3D^Tt6r+F}PnJCwUiFIgY`z;aCRxB=EM{somBE7-{hzApCA$X-jptzz zf^%or4At+{8nd37w(Uo&&zAJJE=LEq0!X*MQ}M4xn*yFs2xo|NVi@>Cd&Nh9FNjLl zyG0x`C;AyXJdQWKP`QeTsylL6>wczP$>~Xa4XVhI3&0JY!H(jgiJ6ds5jOv$j|

  • 9cMSSQCR(xWo%+1Ewil?oj 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
    5XVt=b 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⪚;N}6eI}DBWoIQLp$UC2*EDi|Z*H@D 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

    ", "") .replace("

    ", "\n\n"); - var html_params = new Regex("(class|target|rel)=\"(.|\n)*?\"", RegexCompileFlags.CASELESS); - var simplified = html_params.replace(divided, -1, 0, ""); + var html_params = new Regex ("(class|target|rel)=\"(.|\n)*?\"", RegexCompileFlags.CASELESS); + var simplified = html_params.replace (divided, -1, 0, ""); while (simplified.has_suffix ("\n")) simplified = simplified.slice (0, simplified.last_index_of ("\n")); - return simplified; + return escape_pango_entities (simplified); } - public static string uri_encode (string content) { - var to_escape = ";&+"; - return Soup.URI.encode (content, to_escape); + public static string uri_encode (string str) { + var restored = restore_entities (str); + return Soup.URI.encode (restored, ";&+"); } } diff --git a/src/ImageCache.vala b/src/ImageCache.vala deleted file mode 100644 index cd625a8..0000000 --- a/src/ImageCache.vala +++ /dev/null @@ -1,148 +0,0 @@ -using Soup; -using GLib; -using Gdk; -using Json; - -private struct CachedImage { - - public string uri; - public int size; - - public CachedImage (string _uri, int _size) { - uri = _uri; - size = _size; - } - - public static uint hash(CachedImage? c) { - assert (c != null); - assert (c.uri != null); - return GLib.int64_hash (c.size) ^ c.uri.hash (); - } - - public static bool equal (CachedImage? a, CachedImage? b) { - if (a == null || b == null) - return false; - return a.size == b.size && a.uri == b.uri; - } - -} - -public delegate void PixbufCallback (Gdk.Pixbuf pb); - -public class Tootle.ImageCache : GLib.Object { - - private GLib.HashTable in_progress; - private GLib.HashTable pixbufs; - private uint total_size_est; - private uint size_limit; - private string cache_path; - - construct { - pixbufs = new GLib.HashTable (CachedImage.hash, CachedImage.equal); - in_progress = new GLib.HashTable (CachedImage.hash, CachedImage.equal); - total_size_est = 0; - cache_path = "%s/%s".printf (GLib.Environment.get_user_cache_dir (), app.application_id); - - settings.changed.connect (on_settings_changed); - on_settings_changed (); - } - - public ImageCache() {} - - private void on_settings_changed () { - // assume 32BPP (divide bytes by 4 to get # pixels) and raw, overhead-free storage - // cache_size setting is number of megabytes - size_limit = (1024 * 1024 * settings.cache_size) / 4; - if (settings.cache) - enforce_size_limit (); - else - remove_all (); - } - - public void remove_all () { - debug("Image cache cleared"); - pixbufs.remove_all (); - total_size_est = 0; - } - - public void remove_one (string uri, int size) { - CachedImage ci = CachedImage (uri, size); - bool removed = pixbufs.remove(ci); - if (removed) { - assert (total_size_est >= size * size); - total_size_est -= size * size; - debug("Cache usage: %zd", total_size_est); - } - } - - //TODO: fix me - // remove least used image - private void remove_least_used () { - var keys = pixbufs.get_keys(); - if (keys.first() != null) { - var ci = keys.first().data; - remove_one(ci.uri, ci.size); - } - } - - private void enforce_size_limit () { - debug("Updating size limit (%zd/%zd)", total_size_est, size_limit); - while (total_size_est > size_limit && pixbufs.size() > 0) - remove_least_used (); - - assert (total_size_est <= size_limit); - } - - private void store_pixbuf (CachedImage ci, Gdk.Pixbuf pixbuf) { - assert (!pixbufs.contains (ci)); - pixbufs.insert (ci, pixbuf); - in_progress.remove (ci); - total_size_est += ci.size * ci.size; - enforce_size_limit (); - } - - public async void get_image (string uri, int size, owned PixbufCallback? cb = null) { - CachedImage ci = CachedImage (uri, size); - Gdk.Pixbuf? pb = pixbufs.get(ci); - if (pb != null) { - cb (pb); - return; - } - - Soup.Message? msg = in_progress.get(ci); - if (msg == null) { - msg = new Soup.Message("GET", uri); - ulong id = 0; - id = msg.finished.connect(() => { - debug("Caching %s@%d", uri, size); - var data = msg.response_body.data; - var stream = new MemoryInputStream.from_data (data); - var pixbuf = new Gdk.Pixbuf.from_stream_at_scale (stream, size, size, true); - store_pixbuf(ci, pixbuf); - cb(pixbuf); - msg.disconnect(id); - }); - in_progress[ci] = msg; - network.queue (msg); - } else { - ulong id = 0; - id = msg.finished.connect(() => { - cb(pixbufs[ci]); - msg.disconnect(id); - }); - } - } - - public void load_avatar (string uri, Granite.Widgets.Avatar avatar, int size) { - get_image.begin (uri, size, (pixbuf) => avatar.pixbuf = pixbuf.scale_simple (size, size, Gdk.InterpType.BILINEAR)); - } - - public void load_image (string uri, Gtk.Image image) { - load_scaled_image (uri, image, -1); - } - - public void load_scaled_image (string uri, Gtk.Image image, int size) { - get_image.begin (uri, size, image.set_from_pixbuf); - } - -} diff --git a/src/InstanceAccount.vala b/src/InstanceAccount.vala index 431c3ac..6532ed7 100644 --- a/src/InstanceAccount.vala +++ b/src/InstanceAccount.vala @@ -1,58 +1,89 @@ using GLib; using Gee; -public class Tootle.InstanceAccount : Object { +public class Tootle.InstanceAccount : API.Account, IStreamListener { - public string username {get; set;} - public string instance {get; set;} - public string client_id {get; set;} - public string client_secret {get; set;} - public string token {get; set;} + public string instance { get; set; } + public string client_id { get; set; } + public string client_secret { get; set; } + public string token { get; set; } - public int64 last_seen_notification {get; set; default = 0;} - public bool has_unread_notifications {get; set; default = false;} - public ArrayList cached_notifications {get; set;} + public int64 last_seen_notification { get; set; default = 0; } + public bool has_unread_notifications { get; set; default = false; } + public ArrayList cached_notifications { get; set; default = new ArrayList (); } - private Notificator? notificator; + protected string? stream; - public InstanceAccount () { - cached_notifications = new ArrayList (); + public string handle { + owned get { return @"@$username@$short_instance"; } + } + public string short_instance { + owned get { + return instance + .replace ("https://", "") + .replace ("/",""); + } } - public string get_pretty_instance () { - return instance - .replace ("https://", "") - .replace ("/",""); + public InstanceAccount (Json.Object obj) { + Object ( + username: obj.get_string_member ("username"), + instance: obj.get_string_member ("instance"), + client_id: obj.get_string_member ("id"), + client_secret: obj.get_string_member ("secret"), + token: obj.get_string_member ("access_token"), + last_seen_notification: obj.get_int_member ("last_seen_notification"), + has_unread_notifications: obj.get_boolean_member ("has_unread_notifications") + ); + + var cached = obj.get_object_member ("cached_profile"); + var account = new API.Account (cached); + patch (account); + + var notifications = obj.get_array_member ("cached_notifications"); + notifications.foreach_element ((arr, i, node) => { + var notification = new API.Notification (node.get_object ()); + cached_notifications.add (notification); + }); + } + ~InstanceAccount () { + unsubscribe (); + } + + public InstanceAccount.empty (string instance){ + Object (id: 0, instance: instance); } - public void start_notificator () { - if (notificator != null) - notificator.close (); - - notificator = new Notificator (get_stream ()); - notificator.status_added.connect (status_added); - notificator.status_removed.connect (status_removed); - notificator.notification.connect (notification); - notificator.start (); + public InstanceAccount.from_account (API.Account account) { + Object (id: account.id); + patch (account); } + public InstanceAccount patch (API.Account account) { + Utils.merge (this, account); + return this; + } + public bool is_current () { - return accounts.formal.token == token; + return accounts.active.token == token; } - public Soup.Message get_stream () { - var url = "%s/api/v1/streaming/?stream=user&access_token=%s".printf (instance, token); - return new Soup.Message ("GET", url); + public string get_stream_url () { + return @"$instance/api/v1/streaming/?stream=user&access_token=$token"; } - public void close_notificator () { - if (notificator != null) - notificator.close (); + public void subscribe () { + streams.subscribe (get_stream_url (), this, out stream); } - public Json.Node serialize () { + public void unsubscribe () { + streams.unsubscribe (stream, this); + } + + public override Json.Node? serialize () { var builder = new Json.Builder (); builder.begin_object (); + builder.set_member_name ("hash"); builder.add_string_value ("test"); builder.set_member_name ("username"); @@ -63,13 +94,17 @@ public class Tootle.InstanceAccount : Object { builder.add_string_value (client_id); builder.set_member_name ("secret"); builder.add_string_value (client_secret); - builder.set_member_name ("token"); + builder.set_member_name ("access_token"); builder.add_string_value (token); builder.set_member_name ("last_seen_notification"); builder.add_int_value (last_seen_notification); builder.set_member_name ("has_unread_notifications"); builder.add_boolean_value (has_unread_notifications); + var cached_profile = base.serialize (); + builder.set_member_name ("cached_profile"); + builder.add_value (cached_profile); + builder.set_member_name ("cached_notifications"); builder.begin_array (); cached_notifications.@foreach (notification => { @@ -84,31 +119,12 @@ public class Tootle.InstanceAccount : Object { return builder.get_root (); } - public static InstanceAccount parse (Json.Object obj) { - var acc = new InstanceAccount (); - acc.username = obj.get_string_member ("username"); - acc.instance = obj.get_string_member ("instance"); - acc.client_id = obj.get_string_member ("id"); - acc.client_secret = obj.get_string_member ("secret"); - acc.token = obj.get_string_member ("token"); - acc.last_seen_notification = obj.get_int_member ("last_seen_notification"); - acc.has_unread_notifications = obj.get_boolean_member ("has_unread_notifications"); - - var notifications = obj.get_array_member ("cached_notifications"); - notifications.foreach_element ((arr, i, node) => { - var notification = API.Notification.parse (node.get_object ()); - acc.cached_notifications.add (notification); - }); - - return acc; - } - - public void notification (API.Notification obj) { - var title = Html.remove_tags (obj.type.get_desc (obj.account)); + public override void on_notification (API.Notification obj) { + var title = Html.remove_tags (obj.kind.get_desc (obj.account)); var notification = new GLib.Notification (title); if (obj.status != null) { var body = ""; - body += get_pretty_instance (); + body += short_instance; body += "\n"; body += Html.remove_tags (obj.status.content); notification.set_body (body); @@ -118,34 +134,34 @@ public class Tootle.InstanceAccount : Object { app.send_notification (app.application_id + ":" + obj.id.to_string (), notification); if (is_current ()) - network.notification (obj); + streams.notification (obj); - if (obj.type == API.NotificationType.WATCHLIST) { + if (obj.kind == API.NotificationType.WATCHLIST) { cached_notifications.add (obj); accounts.save (); } } - private void status_removed (int64 id) { + public override void on_status_removed (int64 id) { if (is_current ()) - network.status_removed (id); + streams.status_removed (id); } - private void status_added (API.Status status) { + public override void on_status_added (API.Status status) { if (!is_current ()) return; - watchlist.users.@foreach (item => { - var acct = status.account.acct; - if (item == acct || item == "@" + acct) { - var obj = new API.Notification (-1); - obj.type = API.NotificationType.WATCHLIST; - obj.account = status.account; - obj.status = status; - notification (obj); - } - return true; - }); + // watchlist.users.@foreach (item => { + // var acct = status.account.acct; + // if (item == acct || item == "@" + acct) { + // var obj = new API.Notification (-1); + // obj.kind = API.NotificationType.WATCHLIST; + // obj.account = status.account; + // obj.status = status; + // on_notification (obj); + // } + // return true; + // }); } } diff --git a/src/Network.vala b/src/Network.vala deleted file mode 100644 index 155af42..0000000 --- a/src/Network.vala +++ /dev/null @@ -1,208 +0,0 @@ -using Soup; -using GLib; -using Gdk; -using Json; - -public class Tootle.Network : GLib.Object { - - public const string INJECT_TOKEN = "X-HeyMate-PlsInjectToken4MeThx"; - - public signal void started (); - public signal void finished (); - public signal void notification (API.Notification notification); - public signal void status_removed (int64 id); - - public delegate void ErrorCallback (int32 code, string reason); - public delegate void SuccessCallback (Session session, Message msg) throws GLib.Error; - - private int requests_processing = 0; - private Soup.Session session; - - construct { - session = new Soup.Session (); - session.ssl_strict = true; - session.ssl_use_system_ca_file = true; - session.timeout = 15; - session.max_conns = 20; - session.request_unqueued.connect (msg => { - requests_processing--; - if (requests_processing <= 0) - finished (); - }); - - // Soup.Logger logger = new Soup.Logger (Soup.LoggerLogLevel.BODY, -1); - // session.add_feature (logger); - } - - public Network () {} - - public async WebsocketConnection stream (Soup.Message msg) throws GLib.Error { - return yield session.websocket_connect_async (msg, null, null, null); - } - - public void cancel_request (Soup.Message? msg) { - if (msg == null) - return; - switch (msg.status_code) { - case Soup.Status.CANCELLED: - case Soup.Status.OK: - return; - } - session.cancel_message (msg, Soup.Status.CANCELLED); - } - - public void inject (Soup.Message msg, string header) { - msg.request_headers.append (header, "VeryPls"); - } - - private void inject_headers (ref Soup.Message msg) { - var headers = msg.request_headers; - var formal = accounts.formal; - if (headers.get_one (INJECT_TOKEN) != null && formal != null) { - headers.remove (INJECT_TOKEN); - headers.append ("Authorization", "Bearer " + formal.token); - } - } - - public void queue (owned Soup.Message message, owned SuccessCallback? cb = null, owned ErrorCallback? errcb = null) { - requests_processing++; - started (); - - inject_headers (ref message); - - session.queue_message (message, (sess, msg) => { - var status = msg.status_code; - if (status != Soup.Status.CANCELLED) { - if (status == Soup.Status.OK) { - if (cb != null) { - try { - cb (session, msg); - } - catch (Error e) { - warning ("Caught exception on network request:"); - warning (e.message); - if (errcb != null) - errcb (Soup.Status.NONE, e.message); - } - } - } - else { - if (errcb != null) - errcb ((int32)status, get_error_reason ((int32)status)); - } - } - // msg.request_body.free (); - // msg.response_body.free (); - // msg.request_headers.free (); - // msg.response_headers.free (); - }); - } - - public string get_error_reason (int32 status) { - return "Error " + status.to_string () + ": " + Soup.Status.get_phrase (status); - } - - public void on_error (int32 code, string message) { - warning (message); - app.toast (message); - } - - public void on_show_error (int32 code, string message) { - warning (message); - app.error (_("Network Error"), message); - } - - public Json.Object parse (Soup.Message msg) throws GLib.Error { - // debug ("Status Code: %u", msg.status_code); - // debug ("Message length: %lld", msg.response_body.length); - // debug ("Object: %s", (string) msg.response_body.data); - - var parser = new Json.Parser (); - parser.load_from_data ((string) msg.response_body.flatten ().data, -1); - return parser.get_root ().get_object (); - } - - public Json.Array parse_array (Soup.Message msg) throws GLib.Error { - // debug ("Status Code: %u", msg.status_code); - // debug ("Message length: %lld", msg.response_body.length); - // debug ("Array: %s", (string) msg.response_body.data); - - var parser = new Json.Parser (); - parser.load_from_data ((string) msg.response_body.flatten ().data, -1); - return parser.get_root ().get_array (); - } - - //TODO: Cache - public void load_avatar (string url, Granite.Widgets.Avatar avatar, int size){ - var message = new Soup.Message("GET", url); - network.queue (message, (sess, msg) => { - if (msg.status_code != Soup.Status.OK) { - avatar.show_default (size); - return; - } - - var data = msg.response_body.data; - var stream = new MemoryInputStream.from_data (data); - var pixbuf = new Gdk.Pixbuf.from_stream_at_scale (stream, size, size, true); - - avatar.pixbuf = pixbuf.scale_simple (size, size, Gdk.InterpType.BILINEAR); - }); - } - - //TODO: Cache - public delegate void PixbufCallback (Gdk.Pixbuf pixbuf); - public Soup.Message load_pixbuf (string url, PixbufCallback cb) { - var message = new Soup.Message("GET", url); - network.queue (message, (sess, msg) => { - Gdk.Pixbuf? pixbuf = null; - try { - var data = msg.response_body.flatten ().data; - var stream = new MemoryInputStream.from_data (data); - pixbuf = new Gdk.Pixbuf.from_stream (stream); - } - catch (Error e) { - warning ("Can't get image: %s".printf (url)); - warning ("Reason: " + e.message); - } - finally { - if (msg.status_code != Soup.Status.OK) - warning ("Invalid response code %s: %s".printf (msg.status_code.to_string (), url)); - } - cb (pixbuf); - }); - return message; - } - - //TODO: Cache - public void load_image (string url, Gtk.Image image) { - var message = new Soup.Message("GET", url); - network.queue (message, (sess, msg) => { - if (msg.status_code != Soup.Status.OK) { - image.set_from_icon_name ("image-missing", Gtk.IconSize.LARGE_TOOLBAR); - return; - } - - var data = msg.response_body.data; - var stream = new MemoryInputStream.from_data (data); - var pixbuf = new Gdk.Pixbuf.from_stream (stream); - image.set_from_pixbuf (pixbuf); - }); - } - - //TODO: Cache - public void load_scaled_image (string url, Gtk.Image image, int size) { - var message = new Soup.Message("GET", url); - network.queue (message, (sess, msg) => { - if (msg.status_code != Soup.Status.OK) { - image.set_from_icon_name ("image-missing", Gtk.IconSize.LARGE_TOOLBAR); - return; - } - - var data = msg.response_body.data; - var stream = new MemoryInputStream.from_data (data); - var pixbuf = new Gdk.Pixbuf.from_stream_at_scale (stream, size, size, true); - image.set_from_pixbuf (pixbuf); - }); - } - -} diff --git a/src/Notificator.vala b/src/Notificator.vala deleted file mode 100644 index 1585a1a..0000000 --- a/src/Notificator.vala +++ /dev/null @@ -1,122 +0,0 @@ -using GLib; -using Soup; - -public class Tootle.Notificator : GLib.Object { - - private WebsocketConnection? connection; - private Soup.Message msg; - private bool closing = false; - private int timeout = 2; - - public signal void notification (API.Notification notification); - public signal void status_added (API.Status status); - public signal void status_removed (int64 id); - - public Notificator (Soup.Message _msg){ - msg = _msg; - msg.priority = Soup.MessagePriority.VERY_HIGH; - msg.set_flags (Soup.MessageFlags.IGNORE_CONNECTION_LIMITS); - } - - public string get_url () { - return msg.get_uri ().to_string (false); - } - - public string get_name () { - var name = msg.get_uri ().to_string (true); - if ("&access_token" in name) { - var pos = name.last_index_of ("&access_token"); - name = name.slice (0, pos); - } - - return name; - } - - public async void start () { - if (connection != null) - return; - - try { - info ("Starting: %s", get_name ()); - connection = yield network.stream (msg); - connection.error.connect (on_error); - connection.message.connect (on_message); - connection.closed.connect (on_closed); - timeout = 2; - } - catch (GLib.Error e) { - warning (e.message); - on_closed (); - } - } - - public void close () { - if (connection == null) - return; - - info ("Closing: %s", get_name ()); - closing = true; - connection.close (0, null); - } - - private bool reconnect () { - start (); - return false; - } - - private void on_closed () { - if (closing) - return; - - warning ("Aborted: %s. Reconnecting in %i seconds.", get_name (), timeout); - GLib.Timeout.add_seconds (timeout, reconnect); - timeout = int.min (timeout*2, 60); - } - - private void on_error (Error e) { - if (!closing) - warning ("Error in %s: %s", get_name (), e.message); - } - - private void on_message (int i, Bytes bytes) { - var msg = (string) bytes.get_data (); - - var parser = new Json.Parser (); - parser.load_from_data (msg, -1); - var root = parser.get_root ().get_object (); - - var type = root.get_string_member ("event"); - switch (type) { - case "update": - if (!settings.live_updates) - return; - - var status = API.Status.parse (sanitize (root)); - status_added (status); - break; - case "delete": - if (!settings.live_updates) - return; - - var id = int64.parse (root.get_string_member("payload")); - status_removed (id); - break; - case "notification": - var notif = API.Notification.parse (sanitize (root)); - notification (notif); - break; - default: - warning ("Unknown push event: %s", type); - break; - } - } - - private Json.Object sanitize (Json.Object root) { - var payload = root.get_string_member ("payload"); - var sanitized = Soup.URI.decode (payload); - var parser = new Json.Parser (); - parser.load_from_data (sanitized, -1); - return parser.get_root ().get_object (); - } - -} diff --git a/src/Request.vala b/src/Request.vala new file mode 100644 index 0000000..1d0276b --- /dev/null +++ b/src/Request.vala @@ -0,0 +1,110 @@ +using Soup; +using Gee; + +public class Tootle.Request : Soup.Message { + + public string url { construct set; get; } + private Network.SuccessCallback? cb; + private Network.ErrorCallback? error_cb; + private HashMap? pars; + private weak InstanceAccount? account; + private bool needs_token = false; + + public Request.GET (string url) { + Object (method: "GET", url: url); + } + public Request.POST (string url) { + Object (method: "POST", url: url); + } + public Request.DELETE (string url) { + Object (method: "DELETE", url: url); + } + + public Request then (owned Network.SuccessCallback cb) { + this.cb = (owned) cb; + return this; + } + + public Request then_parse_array (owned Network.NodeCallback _cb) { + this.cb = (sess, msg) => { + var parser = new Json.Parser (); + parser.load_from_data ((string) msg.response_body.flatten ().data, -1); + parser.get_root ().get_array ().foreach_element ((array, i, node) => _cb (node, msg)); + }; + return this; + } + + public Request then_parse_obj (owned Network.ObjectCallback _cb) { + this.cb = (sess, msg) => { + _cb (network.parse (msg)); + }; + return this; + } + + public Request on_error (owned Network.ErrorCallback cb) { + this.error_cb = (owned) cb; + return this; + } + + public Request with_account (InstanceAccount? account = null) { + this.needs_token = true; + if (account != null) + this.account = account; + return this; + } + + public Request with_param (string name, string val) { + if (pars == null) + pars = new HashMap (); + pars[name] = val; + return this; + } + + // Should be used for requests with default priority + public Request queue () { + var parameters = ""; + if (pars != null) { + parameters = "?"; + var parameters_counter = 0; + pars.@foreach (entry => { + parameters_counter++; + var key = (string) entry.key; + var val = (string) entry.value; + parameters += @"$key=$val"; + + if (parameters_counter < pars.size) + parameters += "&"; + + return true; + }); + } + + if (needs_token) { + if (account == null) { + warning (@"No account found for: $method: $url$parameters"); + return this; + } + + request_headers.append ("Authorization", @"Bearer $(account.token)"); + } + + if (!("://" in url)) { + url = account.instance + url; + } + + this.uri = new URI (url + "" + parameters); + + url = uri.to_string (false); + info (@"$method: $url"); + + network.queue (this, (owned) cb, (owned) error_cb); + return this; + } + + // Should be used for real-time user interactions (liking, removing and browsing posts) + public Request exec () { + this.priority = MessagePriority.HIGH; + return this.queue (); + } + +} diff --git a/src/Services/Accounts.vala b/src/Services/Accounts.vala new file mode 100644 index 0000000..99c217b --- /dev/null +++ b/src/Services/Accounts.vala @@ -0,0 +1,141 @@ +using Gee; + +public class Tootle.Accounts : GLib.Object { + + private string dir_path; + private string file_path; + + public ArrayList saved { get; set; default = new ArrayList (); } + public InstanceAccount? active { get; set; } + + construct { + dir_path = @"$(GLib.Environment.get_user_config_dir ())/$(app.application_id)"; + file_path = @"$dir_path/accounts.json"; + } + + public void switch_account (int id) { + var acc = saved.@get (id); + info (@"Switching to account: $(acc.handle)..."); + new Request.GET ("/api/v1/accounts/verify_credentials") + .with_account (acc) + .then ((sess, mess) => { + var root = network.parse (mess); + var profile = new API.Account (root); + acc.patch (profile); + info ("OK: Token is valid"); + active = acc; + settings.current_account = id; + }) + .on_error ((code, reason) => { + warning ("Token invalid!"); + network.on_show_error (code, _("This instance has invalidated this session. Please sign in again.\n\n%s").printf (reason)); + }) + .exec (); + } + + public void add (InstanceAccount account) { + info (@"Adding new account: $(account.handle)"); + saved.add (account); + save (); + switch_account (saved.size - 1); + account.subscribe (); + } + + public void remove (InstanceAccount account) { + account.unsubscribe (); + saved.remove (account); + saved.notify_property ("size"); + + if (saved.size < 1) + active = null; + else { + var id = settings.current_account - 1; + if (id > saved.size - 1) + id = saved.size - 1; + else if (id < saved.size - 1) + id = 0; + switch_account (id); + } + save (); + + if (is_empty ()) + window.open_view (new Views.NewAccount (false)); + } + + public bool is_empty () { + return saved.size == 0; + } + + public void init () { + save (false); + load (); + + if (saved.size < 1) + window.open_view (new Views.NewAccount (false)); + else + switch_account (settings.current_account); + } + + public void save (bool overwrite = true) { + try { + var dir = File.new_for_path (dir_path); + if (!dir.query_exists ()) + dir.make_directory (); + + var file = File.new_for_path (file_path); + if (file.query_exists () && !overwrite) + return; + + var builder = new Json.Builder (); + builder.begin_array (); + saved.foreach ((acc) => { + var node = acc.serialize (); + builder.add_value (node); + return true; + }); + builder.end_array (); + + var generator = new Json.Generator (); + generator.set_root (builder.get_root ()); + var data = generator.to_data (null); + + if (file.query_exists ()) + file.@delete (); + + FileOutputStream stream = file.create (FileCreateFlags.PRIVATE); + stream.write (data.data); + info ("Saved accounts"); + } + catch (Error e){ + warning (e.message); + } + } + + private void load () { + try { + uint8[] data; + string etag; + var file = File.new_for_path (file_path); + file.load_contents (null, out data, out etag); + var contents = (string) data; + + var parser = new Json.Parser (); + parser.load_from_data (contents, -1); + var array = parser.get_root ().get_array (); + + array.foreach_element ((_arr, _i, node) => { + var obj = node.get_object (); + var account = new InstanceAccount (obj); + if (account != null) { + saved.add (account); + account.subscribe (); + } + }); + info (@"Loaded $(saved.size) accounts"); + } + catch (Error e){ + warning (e.message); + } + } + +} diff --git a/src/Services/Cache.vala b/src/Services/Cache.vala new file mode 100644 index 0000000..3722281 --- /dev/null +++ b/src/Services/Cache.vala @@ -0,0 +1,136 @@ +using Gee; +using Gdk; + +public class Tootle.Cache : GLib.Object { + + protected HashTable items { get; set; } + protected HashTable items_in_progress { get; set; } + protected uint size { + get { + return items.size (); + } + } + + construct { + items = new HashTable (GLib.str_hash, GLib.str_equal); + items_in_progress = new HashTable (GLib.str_hash, GLib.str_equal); + } + + public delegate void CachedResultCallback (Reference? result); + + public struct Reference { + public string key; + public weak Pixbuf? data; + public bool loading; + } + + protected class Item : GLib.Object { + public Pixbuf data { get; construct set; } + public int64 references { get; construct set; } + + public Item (Pixbuf d, int64 r) { + Object (data: d, references: r); + } + } + + public void unload (Reference? r) { + if (r == null) + return; + + if (r.data == null) + return; + + var item = items[r.key]; + if (item == null) + return; + + item.references--; + //info (@"DEREF $(r.key) $(item.references)"); + if (item.references <= 0) { + //info ("REMOVE %s", r.key); + items.remove (r.key); + items_in_progress.remove (r.key); + } + } + + public void load (string? url, owned CachedResultCallback cb) { + if (url == null) + return; + + var key = url; + if (items.contains (key)) { + //info (@"LOAD $key"); + var item = items.@get (key); + item.references++; + cb (Reference () { + data = item.data, + key = key, + loading = false + }); + return; + } + + var item = items.@get (key); + + var message = items_in_progress.@get (key); + if (message == null) { + message = new Soup.Message ("GET", url); + ulong id = 0; + id = message.finished.connect (() => { + Pixbuf? pixbuf = null; + + var data = message.response_body.flatten ().data; + var stream = new MemoryInputStream.from_data (data); + pixbuf = new Pixbuf.from_stream (stream); + stream.close (); + + //info (@"< STORE $key"); + items[key] = new Item (pixbuf, 1); + items_in_progress.remove (key); + + cb (Reference () { + data = items[key].data, + key = key, + loading = false + }); + + message.disconnect (id); + }); + + network.queue (message, (sess, msg) => { + // no one cares + }, + (code, reason) => { + cb (null); + }); + + cb (Reference () { + data = null, + key = key, + loading = true + }); + + items_in_progress.insert (key, message); + } + else { + //info ("AWAIT: %s", key); + ulong id = 0; + id = message.finished.connect_after (() => { + var it = items.@get (key); + cb (Reference () { + data = it.data, + key = key, + loading = false + }); + it.references++; + message.disconnect (id); + }); + } + } + + public void clear () { + info ("PURGE"); + items.remove_all (); + items_in_progress.remove_all (); + } +} diff --git a/src/Services/IAccountListener.vala b/src/Services/IAccountListener.vala new file mode 100644 index 0000000..75e1d8e --- /dev/null +++ b/src/Services/IAccountListener.vala @@ -0,0 +1,12 @@ +public interface Tootle.IAccountListener : GLib.Object { + + protected void connect_account () { + accounts.notify["active"].connect (() => on_account_changed (accounts.active)); + accounts.saved.notify["size"].connect (() => on_accounts_changed (accounts.saved)); + on_account_changed (accounts.active); + } + + public virtual void on_account_changed (InstanceAccount? account) {} + public virtual void on_accounts_changed (Gee.ArrayList accounts) {} + +} diff --git a/src/Services/IStreamListener.vala b/src/Services/IStreamListener.vala new file mode 100644 index 0000000..2717322 --- /dev/null +++ b/src/Services/IStreamListener.vala @@ -0,0 +1,11 @@ +public interface Tootle.IStreamListener : GLib.Object { + + public virtual void on_status_removed (int64 id) {} + public virtual void on_status_added (API.Status s) {} + public virtual void on_notification (API.Notification n) {} + + public virtual bool accepts (ref string event) { + return true; + } + +} diff --git a/src/Services/Network.vala b/src/Services/Network.vala new file mode 100644 index 0000000..2d3ed83 --- /dev/null +++ b/src/Services/Network.vala @@ -0,0 +1,88 @@ +using Soup; +using GLib; +using Gdk; +using Json; + +public class Tootle.Network : GLib.Object { + + public signal void started (); + public signal void finished (); + + public delegate void ErrorCallback (int32 code, string reason); + public delegate void SuccessCallback (Session session, Message msg) throws Error; + public delegate void NodeCallback (Json.Node node, Message msg) throws Error; + public delegate void ObjectCallback (Json.Object node) throws Error; + + private int requests_processing = 0; + public Soup.Session session; + + construct { + session = new Soup.Session (); + session.ssl_strict = true; + session.ssl_use_system_ca_file = true; + session.timeout = 15; + session.max_conns = 30; + session.request_unqueued.connect (msg => { + requests_processing--; + if (requests_processing <= 0) + finished (); + }); + } + + // public void cancel_request (Soup.Message? msg) { + // if (msg == null) + // return; + + // switch (msg.status_code) { + // case Soup.Status.CANCELLED: + // case Soup.Status.OK: + // return; + // } + // session.cancel_message (msg, Soup.Status.CANCELLED); + // } + + public void queue (owned Soup.Message message, owned SuccessCallback? cb, owned ErrorCallback? errcb = null) { + requests_processing++; + started (); + + session.queue_message (message, (sess, msg) => { + var status = msg.status_code; + if (status == Soup.Status.OK) { + try { + cb (session, msg); + } + catch (Error e) { + warning ("Exception on network request: %s", e.message); + if (errcb != null) + errcb (Soup.Status.NONE, e.message); + } + } + else { + if (errcb != null) + errcb ((int32)status, describe_error ((int32)status)); + } + }); + } + + public string describe_error (int32 code) { + var reason = Soup.Status.get_phrase (code); + return @"$code: $reason"; + } + + public void on_error (int32 code, string message) { + warning (message); + app.toast (message); + } + + public void on_show_error (int32 code, string message) { + warning (message); + app.error (_("Network Error"), message); + } + + public Json.Object parse (Soup.Message msg) throws Error { + var parser = new Json.Parser (); + parser.load_from_data ((string) msg.response_body.flatten ().data, -1); + return parser.get_root ().get_object (); + } + +} diff --git a/src/Services/Settings.vala b/src/Services/Settings.vala new file mode 100644 index 0000000..73ec381 --- /dev/null +++ b/src/Services/Settings.vala @@ -0,0 +1,44 @@ +using GLib; + +public class Tootle.Settings : GLib.Settings { + + public int current_account { get; set; } + public bool notifications { get; set; } + public bool always_online { get; set; } + public int char_limit { get; set; } + public bool live_updates { get; set; } + public bool live_updates_public { get; set; } + public bool dark_theme { get; set; } + + public string watched_users { get; set; } + public string watched_hashtags { get; set; } + + public int window_x { get; set; } + public int window_y { get; set; } + public int window_w { get; set; } + public int window_h { get; set; } + + public Settings () { + Object (schema_id: Build.DOMAIN); + init ("current-account"); + init ("notifications"); + init ("always-online"); + init ("char-limit"); + init ("live-updates"); + init ("live-updates-public"); + init ("dark-theme"); + + init ("watched-users"); + init ("watched-hashtags"); + + init ("window-x"); + init ("window-y"); + init ("window-w"); + init ("window-h"); + } + + void init (string key) { + bind (key, this, key, SettingsBindFlags.DEFAULT); + } + +} diff --git a/src/Services/Streams.vala b/src/Services/Streams.vala new file mode 100644 index 0000000..6f10208 --- /dev/null +++ b/src/Services/Streams.vala @@ -0,0 +1,177 @@ +using GLib; +using Soup; +using Gee; + +public class Tootle.Streams : Object { + + public signal void notification (API.Notification n); + public signal void status_removed (int64 id); + + protected HashTable connections { + get; + set; + default = new HashTable (GLib.str_hash, GLib.str_equal); + } + + protected class Connection : Object { + public ArrayList subscribers; + protected WebsocketConnection socket; + protected Message msg; + + protected bool closing = false; + protected int timeout = 2; + + public string name { + owned get { + var url = msg.get_uri ().to_string (false); + return url.slice (0, url.last_index_of ("&access_token")); + } + } + + public Connection (string url) { + this.subscribers = new ArrayList (); + this.msg = new Message ("GET", url); + } + + public bool start () { + //info (@"Opening stream: $name"); + network.session.websocket_connect_async.begin (msg, null, null, null, (obj, res) => { + socket = network.session.websocket_connect_async.end (res); + socket.error.connect (on_error); + socket.closed.connect (on_closed); + socket.message.connect (on_message); + }); + return false; + } + + public void add (IStreamListener s) { + info ("%s > %s", get_subscriber_name (s), name); + subscribers.add (s); + } + + public void remove (IStreamListener s) { + if (subscribers.contains (s)) { + info ("%s X %s", get_subscriber_name (s), name); + subscribers.remove (s); + } + + if (subscribers.size <= 0) { + info (@"Closing: $name"); + closing = true; + socket.close (0, null); + } + } + + void on_error (Error e) { + if (!closing) + warning (@"Error in $name: $(e.message)"); + } + + void on_closed () { + if (!closing) { + warning (@"CLOSED: $name. Reconnecting in $timeout seconds."); + GLib.Timeout.add_seconds (timeout, start); + timeout = int.min (timeout*2, 30); + } + } + + void on_message (int i, Bytes bytes) { + try { + emit (bytes, this); + } + catch (Error e) { + warning (@"Couldn't handle websocket event. Reason: $(e.message)"); + } + } + } + + public void subscribe (string? url, IStreamListener s, out string cookie) { + if (url == null) + return; + + if (connections.contains (url)) { + connections[url].add (s); + } + else { + var con = new Connection (url); + connections[url] = con; + con.add (s); + con.start (); + } + cookie = url; + } + + public void unsubscribe (string? cookie, IStreamListener s) { + var url = cookie; + if (url == null) + return; + + if (connections.contains (url)) + connections.@get (url).remove (s); + } + + static string get_subscriber_name (Object s) { + return s.get_type ().name (); + } + + static void decode (Bytes bytes, out string event, out Json.Object root) throws Error { + var msg = (string) bytes.get_data (); + var parser = new Json.Parser (); + parser.load_from_data (msg, -1); + root = parser.get_root ().get_object (); + event = root.get_string_member ("event"); + } + + static Json.Object sanitize (Json.Object root) { + var payload = root.get_string_member ("payload"); + var sanitized = Soup.URI.decode (payload); + var parser = new Json.Parser (); + parser.load_from_data (sanitized, -1); + return parser.get_root ().get_object (); + } + + static void emit (Bytes bytes, Connection c) throws Error { + if (!settings.live_updates) + return; + + string event; + Json.Object root; + decode (bytes, out event, out root); + + // c.subscribers.@foreach (s => { + // warning ("%s: %s for %s", c.name, event, get_subscriber_name (s)); + // return false; + // }); + + switch (event) { + case "update": + var entity = new API.Status (sanitize (root)); + c.subscribers.@foreach (s => { + if (s.accepts (ref event)) + s.on_status_added (entity); + return false; + }); + break; + case "delete": + var id = int64.parse (root.get_string_member ("payload")); + c.subscribers.@foreach (s => { + if (s.accepts (ref event)) + s.on_status_removed (id); + return false; + }); + break; + case "notification": + var entity = new API.Notification (sanitize (root)); + c.subscribers.@foreach (s => { + if (s.accepts (ref event)) + s.on_notification (entity); + return false; + }); + break; + default: + warning (@"Unknown websocket event: \"$event\". Ignoring."); + break; + } + } + +} diff --git a/src/Settings.vala b/src/Settings.vala deleted file mode 100644 index 2ac0bb7..0000000 --- a/src/Settings.vala +++ /dev/null @@ -1,24 +0,0 @@ -public class Tootle.Settings : Granite.Services.Settings { - - public int current_account { get; set; } - public bool notifications { get; set; } - public bool always_online { get; set; } - public bool cache { get; set; } - public int cache_size { get; set; } - public int char_limit { get; set; } - public bool live_updates { get; set; } - public bool live_updates_public { get; set; } - public bool dark_theme { get; set; } - public string watched_users { get; set; } - public string watched_hashtags { get; set; } - - public int window_x { get; set; } - public int window_y { get; set; } - public int window_w { get; set; } - public int window_h { get; set; } - - public Settings () { - base ("com.github.bleakgrey.tootle"); - } - -} diff --git a/src/Stacktrace.vala b/src/Stacktrace.vala new file mode 100644 index 0000000..adf65b1 --- /dev/null +++ b/src/Stacktrace.vala @@ -0,0 +1,651 @@ +/* + * Copyright (C) 2014 PerfectCarl - https://github.com/PerfectCarl/vala-stacktrace + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +public class Stacktrace { + + public class Frame { + // Address used by addr2line + public string address { get;private set;default = "";} + + public string line { get;private set;default = "";} + + public string line_number { get;private set;default = "";} + + public string file_path { get;private set;default = "";} + + public string file_short_path { get;private set;default = "";} + + public string function { get;private set;default = "";} + + public Frame (string address, string line, string function, string file_path, string file_short_path) { + this._address = address; + this._line = line; + + this._file_path = file_path; + this._file_short_path = file_short_path; + this._function = function; + this.line_number = extract_line (line); + } + + public string to_string () { + var result = line; + if (result == "") + result = " C library at address [" + address + "]"; + return result + " [" + address + "]"; + } + + } + + public enum Style { + RESET = 0, + BRIGHT = 1, + DIM = 2, + UNDERLINE = 3, + BLINK = 4, + REVERSE = 7, + HIDDEN = 8 + } + + public enum CriticalHandler { + IGNORE, + PRINT_STACKTRACE, + CRASH + } + + public enum Color { + BLACK = 0, + RED = 1, + GREEN = 2, + YELLOW = 3, + BLUE = 4, + MAGENTA = 5, + CYAN = 6, + WHITE = 7 + } + + public Gee.ArrayList _frames = new Gee.ArrayList(); + + private Frame first_vala = null; + + private int max_file_name_length = 0; + + private int max_line_number_length = 0; + + private bool is_all_function_name_blank = true; + + private bool is_all_file_name_blank = true; + + private ProcessSignal sig; + + public static bool enabled { get;set;default = true;} + + public static bool hide_installed_libraries { get;set;default = false;} + + public static Color default_highlight_color { get;set;default = Color.WHITE;} + + public static Color default_error_background { get;set;default = Color.RED;} + + public Color highlight_color { get;set;default = Color.WHITE;} + + public Color error_background { get;set;default = Color.RED;} + + public Gee.ArrayList frames { + get { + return _frames; + } + } + + public Stacktrace (GLib.ProcessSignal sig = GLib.ProcessSignal.TTOU) { + this.sig = sig; + error_background = default_error_background; + highlight_color = default_highlight_color; + //hide_installed_libraries = true; + create_stacktrace (); + } + + private string get_module_name () { + var path = new char[1024]; + Posix.readlink ("/proc/self/exe", path); + string result = (string) path; + return result; + } + + // TODO CARL convert this piece of code to vala conventions + public static string get_relative_path (string p_fullDestinationPath, string p_startPath) { + + string[] l_startPathParts = p_startPath.split ("/"); + string[] l_destinationPathParts = p_fullDestinationPath.split ("/"); + + int l_sameCounter = 0; + while ((l_sameCounter < l_startPathParts.length) && + (l_sameCounter < l_destinationPathParts.length) && + l_startPathParts[l_sameCounter] == l_destinationPathParts[l_sameCounter]) { + l_sameCounter++; + } + + if (l_sameCounter == 0) { + return p_fullDestinationPath; // There is no relative link. + } + + StringBuilder l_builder = new StringBuilder (); + for (int i = l_sameCounter ; i < l_startPathParts.length ; i++) { + l_builder.append ("../"); + } + + for (int i = l_sameCounter ; i < l_destinationPathParts.length ; i++) { + l_builder.append (l_destinationPathParts[i] + "/"); + } + + // CARL l_builder.Length--; + // Remove the last / + var result = l_builder.str; + result = result.substring (0, result.length - 1); + return result; + } + + private string extract_short_file_path (string file_path) { + var path = Environment.get_current_dir (); + /*var i = file_path.index_of ( path ); + if( i>=0 ) + return file_path.substring ( path.length, file_path.length - path.length ); + return file_path; */ + var result = get_relative_path (file_path, path); + return result; + } + + public bool is_custom { + get { + return sig == ProcessSignal.TTOU; + } + } + // input : '/home/cran/Documents/Projects/elementary/noise/instant-beta/build/core/libnoise-core.so.0(noise_job_repository_create_job+0x309) [0x7ff60a021e69]' + // ouput: 0x309 + private int extract_base_address (string line) { + int result = 0 ; + var start = line.last_index_of ("+"); + if (start >= 0) { + var end = line.last_index_of (")"); + if( end > start ) { + var text = line.substring (start+3,end-start-3) ; + text.scanf("%x", &result); + } + } + return result ; + } + + private void process_info_for_file (string full_line, string str ) { + func = "" ; + file_path = ""; + short_file_path = ""; + l = ""; + file_line = ""; + func_line = ""; + + var lines = full_line.split ("\n"); + + if (lines.length > 0) + func_line = lines[0]; + + if (lines.length > 1) + file_line = lines[1]; + if (file_line == "??:0" || file_line == "??:?") + file_line = ""; + func = extract_function_name (str); + + file_path = ""; + short_file_path = ""; + l = ""; + if (file_line != "") { + if (func == "") + func = extract_function_name_from_line (func_line); + file_path = extract_file_path (file_line); + short_file_path = extract_short_file_path (file_path); + l = extract_line (file_line); + } + } + + string func = "" ; + string file_path = ""; + string short_file_path = ""; + string l = ""; + string file_line = ""; + string func_line = ""; + + private void process_info_from_lib (string file_path, string str) { + var cmd2 = "nm %s".printf(file_path) ; + var addr1_s = execute_command_sync_get_output (cmd2) ; + MatchInfo info ; + try { + Regex regex = new Regex ("\\n[^ ]* T "+func); + + if( regex.match (addr1_s, 0, out info) ) + { + while( info.matches() ){ + var lll = info.fetch(0) ; + //stdout.printf ( "lll '%s'\n", lll ) ; + addr1_s = lll.substring(0, lll.index_of(" ")) ; + info.next(); + } + } + } catch (RegexError e) + { + critical( "Error while processing regex %s", e.message ) ; + } + //stdout.printf ("addr1_s %s\n", addr1_s) ; + int addr1 = 0 ; + addr1_s.scanf("%x", &addr1); + if( addr1 != 0 ) { + int addr2 = extract_base_address (str) ; + string addr3 = "%#08x".printf (addr1+addr2); + var new_full_line = process_line (file_path, addr3); + process_info_for_file (new_full_line, str ) ; + } + } + + private void create_stacktrace () { + int frame_count = 100; + int skipped_frames_count = 5; + // Stacktrace not due to a crash + if (is_custom) + skipped_frames_count = 3; + + void *[] array = new void *[frame_count]; + + _frames.clear (); + first_vala = null; + max_file_name_length = 0; + is_all_function_name_blank = true; + is_all_file_name_blank = true; + + #if VALA_0_26 + var size = Linux.Backtrace.@get (array); + var strings = Linux.Backtrace.symbols (array); + #else + int size = Linux.backtrace (array, frame_count); + unowned string[] strings = Linux.backtrace_symbols (array, size); + // Needed because of some weird bug + strings.length = size; + #endif + + int[] addresses = (int[])array; + string module = get_module_name (); + // First ones are the handler + for (int i = skipped_frames_count ; i < size ; i++) { + int address = addresses[i]; + string str = strings[i]; + var addr = extract_address (str); + + var full_line = process_line (module, addr); + process_info_for_file( full_line, str) ; + if (file_line == "") { + file_path = extract_file_path_from (str); + + } + if( file_path.has_suffix(".so.0")) { + process_info_from_lib (file_path, str) ; + } + + //stdout.printf ("Building %d \n . addr: [%s]\n . full_line: '%s'\n . file_line: '%s'\n . func_line: '%s'\n . str : '%s'\n . func: '%s'\n . file: '%s'\n . line: '%s'\n", + //i, addr, full_line, file_line, func_line, str, func, file_path, l); + + if (func != "" && file_path.has_suffix (".vala") && is_all_function_name_blank) + is_all_function_name_blank = false; + + if (short_file_path != "" && is_all_file_name_blank) + is_all_file_name_blank = false; + + var frame = new Frame (addr, file_line, func, file_path, short_file_path); + + if (first_vala == null && file_path.has_suffix (".vala")) + first_vala = frame; + + if (short_file_path.length > max_file_name_length) + max_file_name_length = short_file_path.length; + if (l.length > max_line_number_length) + max_line_number_length = l.length; + _frames.add (frame); + } + } + + private string extract_function_name (string line) { + if (line == "") + return ""; + var start = line.index_of ("("); + if (start >= 0) { + var end = line.index_of ("+", start); + if (end >= 0) { + var result = line.substring (start + 1, end - start - 1); + return result.strip (); + } + } + return ""; + } + + private string extract_function_name_from_line (string line) { + return line.strip (); + } + + private string extract_file_path_from (string str) { + if (str == "") + return ""; + /*if( str.index_of("??") >= 0) + //result = result.substring (4, line.length - 4 ); + stdout.printf ("ERR2?? : %s\n", str ) ; */ + var start = str.index_of ("("); + if (start >= 0) { + return str.substring (0, start).strip (); + } + return str.strip (); + } + + private string extract_file_path (string line) { + var result = line; + if (result == "") + return ""; + if (result == "??:0??:0") + return ""; + // For some reason, the file name can starts with ??:0 + if (result.has_prefix ("??:0")) + result = result.substring (4, line.length - 4); + // stdout.printf ("ERR1?? : %s\n", line ) ; + var start = result.index_of (":"); + if (start >= 0) { + result = result.substring (0, start); + return result.strip (); + } + return ""; + } + + public static string extract_line (string line) { + var result = line; + if (result == "") + return ""; + if (result.has_prefix ("??:0")) + result = result.substring (4, line.length - 4); + var start = result.index_of (":"); + if (start >= 0) { + result = result.substring (start + 1, line.length - start - 1); + var end = result.index_of ("("); + if (end >= 0) { + result = result.substring (0, end); + } + return result.strip (); + } + return ""; + } + + private string extract_address (string line) { + if (line == "") + return ""; + var start = line.index_of ("["); + if (start >= 0) { + var end = line.index_of ("]", start); + if (end >= 0) { + var result = line.substring (start + 1, end - start - 1); + return result.strip (); + } + } + return ""; + } + + private string execute_command_sync_get_output (string cmd) { + try { + int exitCode; + string std_out; + string std_err; + Process.spawn_command_line_sync (cmd, out std_out, out std_err, out exitCode); + return std_out; + } + catch (Error e) { + warning (@"Error while executing '$cmd': $(e.message)"); + return ""; + } + } + + // Poor's man demangler. libunwind is another dep + // TODO : Optimize this + // module : app + // address : 0x007f80 + // output : /home/cran/Projects/noise/noise-perf-instant-search/tests/errors.vala:87 + string process_line (string module, string address) { + var cmd = "addr2line -f -e %s %s".printf (module, address); + var result = execute_command_sync_get_output (cmd); + //stdout.printf( "CMD %s\n", cmd) ; + return result; + } + + private string get_reset_code () { + // return get_color_code (Style.RESET, Colors.WHITE, Colors.BLACK); + return "\x1b[0m"; + } + + private string get_reset_style () { + return get_color_code (Style.DIM, highlight_color, background_color); + } + + private string get_color_code (Style attr, Color fg, Color bg = background_color) { + /* Command is the control command to the terminal */ + if (bg == Color.BLACK) + return "%c[%d;%dm".printf (0x1B, (int) attr, (int) fg + 30); + else + return "%c[%d;%d;%dm".printf (0x1B, (int) attr, (int) fg + 30, (int) bg + 40); + } + + private string get_signal_name () { + return sig.to_string (); + } + + private string get_highlight_code () { + return get_color_code (Style.BRIGHT, highlight_color); + } + + private string get_printable_function (Frame frame, int padding = 0) { + var result = ""; + var is_unknown = false; + if (frame.function == "") { + result = " " + frame.address; + is_unknown = true; + } else { + var s = ""; + int count = padding - get_signal_name ().length; + if (padding != 0 && count > 0) + s = string.nfill (count, ' '); + result = "'" + frame.function + "'" + s; + } + if (is_unknown) + return result + get_reset_code (); + else + return get_highlight_code () + result + get_reset_code (); + } + + private string get_printable_line_number (Frame frame, bool pad = true) { + var path = frame.line_number; + var result = ""; + var color = get_highlight_code (); + if (path.length >= max_line_number_length || !pad) + result = color + path + get_reset_style (); + else { + result = color + path + get_reset_style (); + result = string.nfill (max_line_number_length - path.length, ' ') + result; + } + return result; + } + + private string get_printable_file_short_path (Frame frame, bool pad = true) { + var path = frame.file_short_path; + var result = ""; + var color = get_highlight_code (); + if (path.length >= max_file_name_length || !pad) + result = color + path + get_reset_style (); + else { + result = color + path + get_reset_style (); + result = result + string.nfill (max_file_name_length - path.length, ' '); + } + return result; + } + + Color background_color = Color.BLACK; + int title_length = 0; + + private string get_printable_title () { + var c = get_color_code (Style.DIM, highlight_color, background_color); + var color = get_highlight_code (); + + var result = "" ; + + if( is_custom) + result = "%sA function was called in %s".printf ( + c, + get_reset_style ()); + else + result = "%sAn error occured %s(%s)%s".printf ( + c, + color, + get_signal_name (), + get_reset_style ()); + + title_length = get_signal_name ().length; + return result; + } + + private string get_reason () { + // var c = get_reset_code(); + var color = get_highlight_code (); + if (sig == ProcessSignal.TRAP) { + return "The reason is likely %san uncaught error%s".printf ( + color, get_reset_code ()); + } + if (sig == ProcessSignal.ABRT) { + return "The reason is likely %sa failed assertion (assert...)%s".printf ( + color, get_reset_code ()); + } + if (sig == ProcessSignal.SEGV) { + return "The reason is likely %sa null reference being used%s".printf ( + color, get_reset_code ()); + } + return "Unknown reason"; + } + + public void print () { + stdout.printf ("\n"); + background_color = error_background; + var header = "%s%s\n".printf (get_printable_title (), + get_reset_code ()); + + if (first_vala != null) { + header = "%s in %s, line %s in %s\n".printf ( + get_printable_title (), + get_printable_file_short_path (first_vala, false), + get_printable_line_number (first_vala, false), + get_printable_function (first_vala) + get_reset_code ()); + title_length += first_vala.line_number.length + + first_vala.function.length + + first_vala.file_short_path.length; + } + stdout.printf (header); + background_color = Color.BLACK; + if( !is_custom) { + var reason = get_reason (); + stdout.printf ("%s\n", reason); + } + + // Has the user forgot to compile with -g -X -rdynamic flag ? + if (is_all_file_name_blank) { + //var advice = " %sNote%s: no file path and line numbers can be retrieved. Are you sure %syou added -g -X -rdynamic%s to valac command line?\n"; + var advice = "%sNote%s: no vala function name can be retrieved."; + var color = get_highlight_code (); + stdout.printf (advice, color, get_reset_code (), color, get_reset_code ()); + } + + // Has the user forgot to compile with rdynamic flag ? + if (is_all_function_name_blank && !is_all_file_name_blank) { + var advice = "%sNote%s: no vala function name can be retrieved."; + //var advice = " %sNote%s: no vala function name can be retrieved. Are you sure %syou added -X -rdynamic%s to valac command line?\n"; + var color = get_highlight_code (); + stdout.printf (advice, color, get_reset_code (), color, get_reset_code ()); + } + + stdout.printf ("\n"); + int i = 1; + bool has_displayed_first_vala = false; + foreach (var frame in _frames) { + var show_frame = frame.function != "" || frame.file_path.has_suffix (".vala") || frame.file_path.has_suffix (".c"); + if (hide_installed_libraries && has_displayed_first_vala) + show_frame = show_frame && frame.file_short_path != ""; + + // Ignore glib tracing code if displayed before the first vala frame + if ((frame.function == "g_logv" || frame.function == "g_log") && !has_displayed_first_vala) + show_frame = false; + if (show_frame) { + // #2 ./OtherModule.c line 80 in 'other_module_do_it' + // at /home/cran/Projects/noise/noise-perf-instant-search/tests/errors/module/OtherModule.vala:10 + var str = " %s #%d %s line %s in %s\n"; + background_color = Color.BLACK; + var lead = " "; + var function_padding = 0; + if (frame == first_vala) { + has_displayed_first_vala = true; + lead = "*"; + background_color = error_background; + function_padding = 22; + } + var l_number = ""; + if (frame.line_number == "") { + str = " %s #%d %s in %s\n"; + var func_name = get_printable_function (frame); + var fill_len = int.max (max_file_name_length + max_line_number_length - 1, 0); + str = str.printf ( + lead, + i, + string.nfill (fill_len, ' '), + func_name); + } else { + str = str.printf ( + lead, + i, + get_printable_file_short_path (frame), + get_printable_line_number (frame), + get_printable_function (frame, function_padding)); + l_number = ":" + frame.line_number; + } + stdout.printf (str); + str = " at %s%s\n".printf ( + frame.file_path, l_number); + stdout.printf (str); + + i++; + } + } + } + + public static void register_handlers () { + Process.@signal (ProcessSignal.SEGV, handler); + Process.@signal (ProcessSignal.ABRT, handler); + Process.@signal (ProcessSignal.TRAP, handler); + } + + public static CriticalHandler critical_handling { get;set;default = CriticalHandler.PRINT_STACKTRACE;} + + public static void handler (int sig) { + Stacktrace stack = new Stacktrace ((ProcessSignal) sig); + stack.print (); + if (sig != ProcessSignal.TRAP || + (sig == ProcessSignal.TRAP && critical_handling == CriticalHandler.CRASH)) + Process.exit (1); + } + +} + diff --git a/src/Utils.vala b/src/Utils.vala new file mode 100644 index 0000000..24571bf --- /dev/null +++ b/src/Utils.vala @@ -0,0 +1,16 @@ +public class Tootle.Utils { + + public static void merge (GLib.Object what, GLib.Object with) { + var props = with.get_class ().list_properties (); + foreach (var prop in props) { + var name = prop.get_name (); + var defined = what.get_class ().find_property (name) != null; + if (defined) { + var val = Value (prop.value_type); + with.get_property (name, ref val); + what.set_property (name, val) ; + } + } + } + +} diff --git a/src/Views/Abstract.vala b/src/Views/Abstract.vala deleted file mode 100644 index d7a398e..0000000 --- a/src/Views/Abstract.vala +++ /dev/null @@ -1,73 +0,0 @@ -using Gtk; - -public abstract class Tootle.Views.Abstract : ScrolledWindow { - - public bool current = false; - public int stack_pos = -1; - public Image? image; - public Box view; - protected Box? empty; - protected Grid? header; - - construct { - view = new Box (Orientation.VERTICAL, 0); - view.valign = Align.START; - add (view); - - hscrollbar_policy = PolicyType.NEVER; - edge_reached.connect (pos => { - if (pos == PositionType.BOTTOM) - on_bottom_reached (); - }); - } - - public Abstract () { - show_all (); - } - - public virtual string get_icon () { - return "null"; - } - - public virtual string get_name () { - return "unnamed"; - } - - public virtual void clear (){ - view.forall (widget => { - if (widget != header) - widget.destroy (); - }); - } - - public virtual void on_bottom_reached () {} - public virtual void on_set_current () {} - - public virtual bool is_empty () { - return view.get_children ().length () <= 1; - } - - public virtual bool empty_state () { - if (empty != null) - empty.destroy (); - if (!is_empty ()) - return false; - - empty = new Box (Orientation.VERTICAL, 0); - empty.margin = 64; - var image = new Image.from_resource ("/com/github/bleakgrey/tootle/empty_state"); - var text = new Label (_("Nothing to see here")); - text.get_style_context ().add_class ("h2"); - text.opacity = 0.5; - empty.hexpand = true; - empty.vexpand = true; - empty.valign = Align.FILL; - empty.pack_start (image, false, false, 0); - empty.pack_start (text, false, false, 12); - empty.show_all (); - view.pack_start (empty, false, false, 0); - - return true; - } - -} diff --git a/src/Views/Base.vala b/src/Views/Base.vala new file mode 100644 index 0000000..d6cdd09 --- /dev/null +++ b/src/Views/Base.vala @@ -0,0 +1,89 @@ +using Gtk; + +[GtkTemplate (ui = "/com/github/bleakgrey/tootle/ui/views/base.ui")] +public class Tootle.Views.Base : Box { + + public static string STATUS_EMPTY = _("Nothing to see here"); + public static string STATUS_LOADING = " "; + + public bool current = false; + public int stack_pos = -1; + public Image? image; + + [GtkChild] + protected ScrolledWindow scrolled; + [GtkChild] + protected Box view; + [GtkChild] + protected Stack states; + [GtkChild] + protected Box content; + [GtkChild] + private Label status_message_label; + [GtkChild] + protected Button status_button; + [GtkChild] + private Stack status_stack; + + public string state { get; set; default = "status"; } + public string status_message { get; set; default = STATUS_EMPTY; } + public bool allow_closing { get; set; default = true; } + + public bool empty { + get { + return content.get_children ().length () <= 0; + } + } + + construct { + status_button.label = _("Reload"); + bind_property ("state", states, "visible-child-name", BindingFlags.SYNC_CREATE); + scrolled.edge_reached.connect (pos => { + if (pos == PositionType.BOTTOM) + on_bottom_reached (); + }); + content.remove.connect (() => on_content_changed ()); + + notify["status-message"].connect (() => { + status_message_label.label = @"$status_message"; + status_stack.visible_child_name = status_message == STATUS_LOADING ? "spinner" : "message"; + }); + } + + public virtual string get_icon () { + return "null"; + } + + public virtual string get_name () { + return "unnamed"; + } + + public virtual void clear (){ + content.forall (widget => { + widget.destroy (); + }); + state = "status"; + } + + public virtual void on_bottom_reached () {} + public virtual void on_set_current () {} + + public virtual void on_content_changed () { + if (empty) { + status_message = STATUS_EMPTY; + state = "status"; + } + else { + state = "content"; + } + check_resize (); + } + + public virtual void on_error (int32 code, string reason) { + status_message = reason; + status_button.visible = true; + status_button.sensitive = true; + state = "status"; + } + +} diff --git a/src/Views/Direct.vala b/src/Views/Direct.vala index 1f8b04e..165e730 100644 --- a/src/Views/Direct.vala +++ b/src/Views/Direct.vala @@ -1,20 +1,19 @@ public class Tootle.Views.Direct : Views.Timeline { public Direct () { - base ("direct"); + Object (timeline: "direct"); } - + public override string get_icon () { return "mail-send-symbolic"; } - + public override string get_name () { return _("Direct Messages"); } - - public override Soup.Message? get_stream () { - var url = "%s/api/v1/streaming/?stream=direct&access_token=%s".printf (accounts.formal.instance, accounts.formal.token); - return new Soup.Message("GET", url); + + public override string? get_stream_url () { + return @"/api/v1/streaming/?stream=direct&access_token=$(accounts.active.token)"; } } diff --git a/src/Views/ExpandedStatus.vala b/src/Views/ExpandedStatus.vala index e195ca9..02103ad 100644 --- a/src/Views/ExpandedStatus.vala +++ b/src/Views/ExpandedStatus.vala @@ -1,111 +1,91 @@ using Gtk; -public class Tootle.Views.ExpandedStatus : Views.Abstract { +public class Tootle.Views.ExpandedStatus : Views.Base, IAccountListener { - private API.Status root_status; - private bool last_status_was_root = false; - private bool sensitive_visible = false; + public API.Status root_status { get; construct set; } + protected InstanceAccount? account = null; + protected Widgets.Status root_widget; public ExpandedStatus (API.Status status) { - base (); - root_status = status; + Object (root_status: status, state: "content"); + + root_widget = append (status); + root_widget.avatar.button_press_event.connect (root_widget.on_avatar_clicked); + root_widget.get_style_context ().add_class ("card"); + root_widget.get_style_context ().add_class ("highlight"); + + connect_account (); + } + + public override void on_account_changed (InstanceAccount? acc) { + account = acc; request (); - - window.button_reveal.clicked.connect (on_reveal_toggle); } - ~ExpandedStatus () { - if (window != null) { - window.button_reveal.clicked.disconnect (on_reveal_toggle); - window.button_reveal.hide (); - } - } - - private void prepend (API.Status status, bool is_root = false){ - var separator = new Separator (Orientation.HORIZONTAL); - separator.show (); - + private Widgets.Status prepend (API.Status status, bool to_end = false){ var widget = new Widgets.Status (status); widget.avatar.button_press_event.connect (widget.on_avatar_clicked); - if (!is_root) - widget.button_press_event.connect (widget.open); - else - widget.highlight (); + widget.revealer.reveal_child = true; - if (!last_status_was_root) { - widget.separator = separator; - view.pack_start (separator, false, false, 0); - } - view.pack_start (widget, false, false, 0); - last_status_was_root = is_root; + content.pack_start (widget, false, false, 0); + if (!to_end) + content.reorder_child (widget, 0); - if (status.has_spoiler ()) - window.button_reveal.show (); - if (sensitive_visible) - reveal_sensitive (widget); + check_resize (); + return widget; + } + private Widgets.Status append (API.Status status) { + return prepend (status, true); } - public Soup.Message request (){ - var url = "%s/api/v1/statuses/%lld/context".printf (accounts.formal.instance, root_status.id); - var msg = new Soup.Message ("GET", url); - network.inject (msg, Network.INJECT_TOKEN); - network.queue (msg, (sess, mess) => { - var root = network.parse (mess); - var ancestors = root.get_array_member ("ancestors"); - ancestors.foreach_element ((array, i, node) => { - var object = node.get_object (); - if (object != null) { - var status = API.Status.parse (object); - prepend (status); + public void request () { + new Request.GET (@"/api/v1/statuses/$(root_status.id)/context") + .with_account (account) + .then_parse_obj (root => { + if (scrolled == null) return; + + var ancestors = root.get_array_member ("ancestors"); + ancestors.foreach_element ((array, i, node) => { + var object = node.get_object (); + if (object != null) { + var status = new API.Status (object); + prepend (status); + } + }); + + var descendants = root.get_array_member ("descendants"); + descendants.foreach_element ((array, i, node) => { + var object = node.get_object (); + if (object != null) { + var status = new API.Status (object); + append (status); + } + }); + + int x,y; + translate_coordinates (root_widget, 0, 0, out x, out y); + scrolled.vadjustment.value = (double)(y*-1); //TODO: Animate scrolling? + }) + .exec (); + } + + public static void open_from_link (string q) { + new Request.GET ("/api/v1/search") + .with_account () + .with_param ("q", q) + .with_param ("resolve", "true") + .then ((sess, msg) => { + var root = network.parse (msg); + var statuses = root.get_array_member ("statuses"); + var object = statuses.get_element (0).get_object (); + if (object != null){ + var status = new API.Status (object); + window.open_view (new Views.ExpandedStatus (status)); } - }); - - prepend (root_status, true); - - var descendants = root.get_array_member ("descendants"); - descendants.foreach_element ((array, i, node) => { - var object = node.get_object (); - if (object != null) { - var status = API.Status.parse (object); - prepend (status); - } - }); - }); - return msg; - } - - public static void open_from_link (string q){ - var url = "%s/api/v1/search?q=%s&resolve=true".printf (accounts.formal.instance, q); - var msg = new Soup.Message ("GET", url); - msg.priority = Soup.MessagePriority.HIGH; - network.inject (msg, Network.INJECT_TOKEN); - network.queue (msg, (sess, mess) => { - var root = network.parse (mess); - var statuses = root.get_array_member ("statuses"); - var object = statuses.get_element (0).get_object (); - if (object != null){ - var st = API.Status.parse (object); - window.open_view (new Views.ExpandedStatus (st)); - } - else - Desktop.open_uri (q); - }); - } - - private void on_reveal_toggle () { - sensitive_visible = !sensitive_visible; - view.forall (w => { - if (!(w is Widgets.Status)) - return; - - var widget = w as Widgets.Status; - reveal_sensitive (widget); - }); - } - - private void reveal_sensitive (Widgets.Status widget) { - if (widget.status.has_spoiler ()) - widget.revealer.reveal_child = sensitive_visible; + else + Desktop.open_uri (q); + }) + .exec (); } } diff --git a/src/Views/Favorites.vala b/src/Views/Favorites.vala index f74479e..96378de 100644 --- a/src/Views/Favorites.vala +++ b/src/Views/Favorites.vala @@ -1,15 +1,14 @@ public class Tootle.Views.Favorites : Views.Timeline { public Favorites () { - base ("favorites"); + Object (timeline: "favorites"); } - + public override string get_url (){ if (page_next != null) return page_next; - - var url = "%s/api/v1/favourites/?limit=%i".printf (accounts.formal.instance, this.limit); - return url; + + return @"/api/v1/favourites"; } } diff --git a/src/Views/Federated.vala b/src/Views/Federated.vala index 3b46071..dc02ea3 100644 --- a/src/Views/Federated.vala +++ b/src/Views/Federated.vala @@ -1,24 +1,19 @@ public class Tootle.Views.Federated : Views.Timeline { public Federated () { - base ("public"); + Object (timeline: "public", is_public: true); } - + public override string get_icon () { return "network-workgroup-symbolic"; } - + public override string get_name () { return _("Federated Timeline"); } - - protected override bool is_public () { - return true; - } - - public override Soup.Message? get_stream () { - var url = "%s/api/v1/streaming/?stream=public&access_token=%s".printf (accounts.formal.instance, accounts.formal.token); - return new Soup.Message("GET", url); + + public override string? get_stream_url () { + return account != null ? @"$(account.instance)/api/v1/streaming/?stream=public&access_token=$(account.token)" : null; } } diff --git a/src/Views/Followers.vala b/src/Views/Followers.vala deleted file mode 100644 index dc8107f..0000000 --- a/src/Views/Followers.vala +++ /dev/null @@ -1,52 +0,0 @@ -using Gtk; - -public class Tootle.Views.Followers : Views.Timeline { - - public Followers (API.Account account) { - base (account.id.to_string ()); - } - - public new void append (API.Account account){ - if (empty != null) - empty.destroy (); - - var separator = new Separator (Orientation.HORIZONTAL); - separator.show (); - - var widget = new Widgets.Account (account); - widget.separator = separator; - view.pack_start (separator, false, false, 0); - view.pack_start (widget, false, false, 0); - } - - public override string get_url (){ - if (page_next != null) - return page_next; - - var url = "%s/api/v1/accounts/%s/followers".printf (accounts.formal.instance, this.timeline); - return url; - } - - public override void request (){ - var msg = new Soup.Message("GET", get_url ()); - msg.finished.connect (() => empty_state ()); - network.queue (msg, (sess, mess) => { - try { - network.parse_array (mess).foreach_element ((array, i, node) => { - var object = node.get_object (); - if (object != null){ - var status = API.Account.parse (object); - append (status); - } - }); - - get_pages (mess.response_headers.get_one ("Link")); - } - catch (GLib.Error e) { - warning ("Can't get account follow info:"); - warning (e.message); - } - }); - } - -} diff --git a/src/Views/Following.vala b/src/Views/Following.vala deleted file mode 100644 index fa2ecda..0000000 --- a/src/Views/Following.vala +++ /dev/null @@ -1,16 +0,0 @@ -public class Tootle.Views.Following : Views.Followers { - - public Following (API.Account account) { - base (account); - - } - - public override string get_url (){ - if (page_next != null) - return page_next; - - var url = "%s/api/v1/accounts/%s/following".printf (accounts.formal.instance, this.timeline); - return url; - } - -} diff --git a/src/Views/Hashtag.vala b/src/Views/Hashtag.vala index 5ea2097..15d91ef 100644 --- a/src/Views/Hashtag.vala +++ b/src/Views/Hashtag.vala @@ -1,20 +1,12 @@ public class Tootle.Views.Hashtag : Views.Timeline { - public Hashtag (string hashtag) { - base ("tag/" + hashtag); + public Hashtag (string tag) { + Object (timeline: @"tag/$tag"); } - - public string get_hashtag () { - return this.timeline.substring (4); - } - - public override string get_name () { - return get_hashtag (); - } - - public override Soup.Message? get_stream () { - var url = "%s/api/v1/streaming/?stream=hashtag&tag=%s&access_token=%s".printf (accounts.formal.instance, get_hashtag (), accounts.formal.token); - return new Soup.Message("GET", url); + + public override string? get_stream_url () { + var tag = timeline.substring (4); + return account != null ? @"$(account.instance)/api/v1/streaming/?stream=hashtag&tag=$tag&access_token=$(account.token)" : null; } } diff --git a/src/Views/Home.vala b/src/Views/Home.vala index 36d45df..1b23709 100644 --- a/src/Views/Home.vala +++ b/src/Views/Home.vala @@ -1,7 +1,7 @@ public class Tootle.Views.Home : Views.Timeline { public Home () { - base ("home"); + Object (timeline: "home"); } public override string get_icon () { @@ -12,8 +12,8 @@ public class Tootle.Views.Home : Views.Timeline { return _("Home"); } - public override Soup.Message? get_stream () { - return accounts.formal.get_stream (); + public override string? get_stream_url () { + return account.get_stream_url () ?? null; } } diff --git a/src/Views/Local.vala b/src/Views/Local.vala index 020789c..75abd71 100644 --- a/src/Views/Local.vala +++ b/src/Views/Local.vala @@ -1,8 +1,4 @@ -public class Tootle.Views.Local : Views.Timeline { - - public Local () { - base ("public"); - } +public class Tootle.Views.Local : Views.Federated { public override string get_icon () { return Desktop.fallback_icon ("system-users-symbolic", "document-open-recent-symbolic"); @@ -12,19 +8,14 @@ public class Tootle.Views.Local : Views.Timeline { return _("Local Timeline"); } - public override string get_url (){ - var url = base.get_url (); - url += "&local=true"; - return url; + public override Request append_params (Request req) { + req.with_param ("local", "true"); + req.with_param ("limit", limit.to_string ()); + return req; } - protected override bool is_public () { - return true; - } - - public override Soup.Message? get_stream () { - var url = "%s/api/v1/streaming/?stream=public:local&access_token=%s".printf (accounts.formal.instance, accounts.formal.token); - return new Soup.Message("GET", url); + public override string? get_stream_url () { + return account != null ? @"$(account.instance)/api/v1/streaming/?stream=public:local&access_token=$(account.token)" : null; } } diff --git a/src/Views/NewAccount.vala b/src/Views/NewAccount.vala new file mode 100644 index 0000000..49e2a01 --- /dev/null +++ b/src/Views/NewAccount.vala @@ -0,0 +1,183 @@ +using Gtk; + +public class Tootle.Views.NewAccount : Views.Base { + + private string? instance { get; set; } + private string? code { get; set; } + private string scopes = "read%20write%20follow"; + + private string? client_id { get; set; } + private string? client_secret { get; set; } + private string? access_token { get; set; } + private string redirect_uri { get; set; default = "urn:ietf:wg:oauth:2.0:oob"; } //TODO: Investigate URI handling for automatic token getting + private InstanceAccount account; + + private Button next_button; + private Entry instance_entry; + private Entry code_entry; + private Label reset_label; + + private Stack stack; + private Widget step1; + private Widget step2; + + public NewAccount (bool allow_closing = true) { + Object (allow_closing: allow_closing); + + var builder = new Builder.from_resource (@"$(Build.RESOURCES)ui/views/new_account.ui"); + content.pack_start (builder.get_object ("wizard") as Grid); + state = "content"; + next_button = builder.get_object ("next") as Button; + reset_label = builder.get_object ("reset") as Label; + instance_entry = builder.get_object ("instance_entry") as Entry; + code_entry = builder.get_object ("code_entry") as Entry; + + stack = builder.get_object ("stack") as Stack; + step1 = builder.get_object ("step1") as Widget; + step2 = builder.get_object ("step2") as Widget; + + next_button.clicked.connect (on_next_clicked); + reset_label.activate_link.connect (reset); + instance_entry.text = "https://mastodon.social/"; //TODO: REMOVE ME + info ("New account view was requested"); + } + + private bool reset () { + info ("State invalidated"); + instance = code = client_id = client_secret = access_token = null; + instance_entry.sensitive = true; + stack.visible_child = step1; + return true; + } + + private void oopsie (string message) { + warning (message); + } + + private void on_next_clicked () { + try { + step (); + } + catch (Oopsie e) { + oopsie (e.message); + } + } + + private void step () throws Error { + if (instance == null) + setup_instance (); + + if (client_secret == null || client_id == null) { + register_client (); + return; + } + + code = code_entry.text; + request_token (); + } + + private void setup_instance () throws Error { + info ("Checking instance URL"); + + var str = instance_entry.text + .replace ("/", "") + .replace (":", "") + .replace ("https", "") + .replace ("http", ""); + instance = "https://"+str; + instance_entry.text = str; + + if (str.char_count () <= 0 || !("." in instance)) + throw new Oopsie.USER (_("Instance URL is invalid")); + } + + private void register_client () throws Error { + info ("Registering client"); + instance_entry.sensitive = false; + + account = new InstanceAccount.empty (instance); + + new Request.POST (@"/api/v1/apps") + .with_param ("client_name", Build.NAME) + .with_param ("website", Build.WEBSITE) + .with_param ("scopes", scopes) + .with_param ("redirect_uris", redirect_uri) + .with_account (account) + .then ((sess, msg) => { + var root = network.parse (msg); + client_id = root.get_string_member ("client_id"); + client_secret = root.get_string_member ("client_secret"); + info ("OK: instance registered client"); + stack.visible_child = step2; + + open_confirmation_page (); + }) + .on_error ((status, reason) => { + oopsie (reason); + instance_entry.sensitive = true; + }) + .exec (); + } + + private void open_confirmation_page () { + info ("Opening permission request page"); + + var pars = @"scope=$scopes&response_type=code&redirect_uri=$redirect_uri&client_id=$client_id"; + var url = @"$instance/oauth/authorize?$pars"; + Desktop.open_uri (url); + } + + private void request_token () throws Error { + if (code.char_count () <= 10) + throw new Oopsie.USER (_("Please paste a valid authorization code")); + + info ("Requesting access token"); + new Request.POST (@"/oauth/token") + .with_account (account) + .with_param ("client_id", client_id) + .with_param ("client_secret", client_secret) + .with_param ("redirect_uri", redirect_uri) + .with_param ("grant_type", "authorization_code") + .with_param ("code", code) + .then ((sess, msg) => { + var root = network.parse (msg); + access_token = root.get_string_member ("access_token"); + account.token = access_token; + account.id = 0; + info ("OK: received access token"); + request_profile (); + }) + .on_error ((code, reason) => oopsie (reason)) + .exec (); + } + + private void request_profile () throws Error { + info ("Testing received access token"); + new Request.GET ("/api/v1/accounts/verify_credentials") + .with_account (account) + .then ((sess, msg) => { + var root = network.parse (msg); + var account = new API.Account (root); + info ("OK: received user profile"); + save (account); + }) + .on_error ((status, reason) => { + reset (); + oopsie (reason); + }) + .exec (); + } + + private void save (API.Account profile) { + info ("Account validated. Saving..."); + account.patch (profile); + account.instance = instance; + account.client_id = client_id; + account.client_secret = client_secret; + account.token = access_token; + accounts.add (account); + + destroy (); + } + +} diff --git a/src/Views/Notifications.vala b/src/Views/Notifications.vala index 94aa9b6..d470c22 100644 --- a/src/Views/Notifications.vala +++ b/src/Views/Notifications.vala @@ -1,23 +1,20 @@ using Gtk; using Gdk; -public class Tootle.Views.Notifications : Views.Abstract { +public class Tootle.Views.Notifications : Views.Base, IAccountListener { - private int64 last_id = 0; - private bool force_dot = false; + protected InstanceAccount? account = null; + protected int64 last_id = 0; + protected bool force_dot = false; public Notifications () { - base (); - view.remove.connect (on_remove); - accounts.switched.connect (on_account_changed); app.refresh.connect (on_refresh); - network.notification.connect (prepend); - - request (); + status_button.clicked.connect (on_refresh); + streams.notification.connect (prepend); + connect_account (); } private bool has_unread () { - var account = accounts.formal; if (account == null) return false; return last_id > account.last_seen_notification || force_dot; @@ -39,38 +36,33 @@ public class Tootle.Views.Notifications : Views.Abstract { } public void append (API.Notification notification, bool reverse = false) { - if (empty != null) - empty.destroy (); + GLib.Idle.add (() => { + var widget = new Widgets.Notification (notification); + content.pack_start (widget, false, false, 0); - var separator = new Separator (Orientation.HORIZONTAL); - separator.show (); + if (reverse) { + content.reorder_child (widget, 0); - var widget = new Widgets.Notification (notification); - widget.separator = separator; - view.pack_start (separator, false, false, 0); - view.pack_start (widget, false, false, 0); - - if (reverse) { - view.reorder_child (widget, 0); - view.reorder_child (separator, 0); - - if (!current) { - force_dot = true; - accounts.formal.has_unread_notifications = force_dot; + if (!current) { + force_dot = true; + accounts.active.has_unread_notifications = force_dot; + } } - } - if (notification.id > last_id) - last_id = notification.id; + on_content_changed (); - if (has_unread ()) { - accounts.save (); - image.icon_name = get_icon (); - } + if (notification.id > last_id) + last_id = notification.id; + + if (has_unread ()) { + accounts.save (); + image.icon_name = get_icon (); + } + return GLib.Source.REMOVE; + }); } public override void on_set_current () { - var account = accounts.formal; if (has_unread ()) { force_dot = false; account.has_unread_notifications = force_dot; @@ -80,73 +72,58 @@ public class Tootle.Views.Notifications : Views.Abstract { } } - public virtual void on_remove (Widget widget) { - if (!(widget is Widgets.Notification)) - return; - - empty_state (); - } - - public override bool empty_state () { - var is_empty = base.empty_state (); - if (image != null && is_empty) + public override void on_content_changed () { + base.on_content_changed (); + if (image != null && empty) image.icon_name = get_icon (); - - return is_empty; } public virtual void on_refresh () { clear (); - request (); + GLib.Idle.add (request); } - public virtual void on_account_changed (API.Account? account) { - if (account == null) - return; - - last_id = accounts.formal.last_seen_notification; - force_dot = accounts.formal.has_unread_notifications; - on_refresh (); + public virtual void on_account_changed (InstanceAccount? acc) { + account = acc; + if (account == null) { + last_id = 0; + force_dot = false; + } + else { + last_id = account.last_seen_notification; + force_dot = account.has_unread_notifications; + } + on_refresh (); } - public void request () { - if (accounts.current == null) { - empty_state (); - return; + public bool request () { + if (account != null) { + account.cached_notifications.@foreach (notification => { + append (notification); + return true; + }); } - accounts.formal.cached_notifications.@foreach (notification => { - append (notification); - return true; - }); + // new Request.GET ("/api/v1/follow_requests") //TODO: this + // .with_account () + // .then_parse_array (node => { + // var notification = API.Notification.parse_follow_request (node.get_object ()); + // append (notification); + // }) + // .on_error (on_error) + // .exec (); - var url = "%s/api/v1/follow_requests".printf (accounts.formal.instance); - var msg = new Soup.Message ("GET", url); - network.inject (msg, Network.INJECT_TOKEN); - network.queue (msg, (sess, mess) => { - network.parse_array (mess).foreach_element ((array, i, node) => { - var obj = node.get_object (); - if (obj != null){ - var notification = API.Notification.parse_follow_request (obj); - append (notification); - } - }); - }); + new Request.GET ("/api/v1/notifications") + .with_account (account) + .with_param ("limit", "30") + .then_parse_array (node => { + var notification = new API.Notification (node.get_object ()); + append (notification); + }) + .on_error (on_error) + .exec (); - var url2 = "%s/api/v1/notifications?limit=30".printf (accounts.formal.instance); - var msg2 = new Soup.Message ("GET", url2); - network.inject (msg2, Network.INJECT_TOKEN); - network.queue (msg2, (sess, mess) => { - network.parse_array (mess).foreach_element ((array, i, node) => { - var obj = node.get_object (); - if (obj != null){ - var notification = API.Notification.parse (obj); - append (notification); - } - }); - }); - - empty_state (); + return GLib.Source.REMOVE; } } diff --git a/src/Views/Profile.vala b/src/Views/Profile.vala index 09b8ac7..d23013e 100644 --- a/src/Views/Profile.vala +++ b/src/Views/Profile.vala @@ -1,249 +1,190 @@ using Gtk; -using Granite; public class Tootle.Views.Profile : Views.Timeline { - const int AVATAR_SIZE = 128; - protected API.Account account; + public API.Account profile { get; construct set; } + + protected RadioButton filter_all; + protected RadioButton filter_replies; + protected RadioButton filter_media; - protected Grid header_image; - protected Box header_info; - protected Granite.Widgets.Avatar avatar; - protected Widgets.RichLabel display_name; - protected Label username; protected Label relationship; - protected Widgets.RichLabel note; - protected Grid counters; protected Box actions; - protected Button button_follow; - - protected Gtk.Menu menu; - protected Gtk.MenuItem menu_edit; - protected Gtk.MenuItem menu_mention; - protected Gtk.MenuItem menu_mute; - protected Gtk.MenuItem menu_block; - protected Gtk.MenuItem menu_report; - protected Gtk.MenuButton button_menu; + protected Button follow_button; + protected MenuButton options_button; + protected Label posts_label; + protected Label following_label; + protected Label followers_label; + protected RadioButton posts_tab; + protected RadioButton following_tab; + protected RadioButton followers_tab; construct { - header = new Grid (); - header_info = new Box (Orientation.VERTICAL, 0); - header_info.margin = 12; - actions = new Box (Orientation.HORIZONTAL, 0); - actions.hexpand = false; - actions.halign = Align.END; - actions.vexpand = false; - actions.valign = Align.START; - actions.margin = 12; + profile.notify["rs"].connect (on_rs_updated); - relationship = new Label (""); - relationship.get_style_context ().add_class ("relationship"); - relationship.halign = Align.START; - relationship.valign = Align.START; - relationship.margin = 12; - header.attach (relationship, 0, 0, 1, 1); + var builder = new Builder.from_resource (@"$(Build.RESOURCES)ui/views/profile_header.ui"); + view.pack_start (builder.get_object ("grid") as Grid, false, false, 0); - avatar = new Granite.Widgets.Avatar.with_default_icon (AVATAR_SIZE); - avatar.hexpand = true; - avatar.margin_bottom = 6; - header_info.pack_start (avatar, false, false, 0); + var avatar = builder.get_object ("avatar") as Widgets.Avatar; + avatar.url = profile.avatar; - display_name = new Widgets.RichLabel (""); - display_name.get_style_context ().add_class (Granite.STYLE_CLASS_H2_LABEL); - header_info.pack_start (display_name, false, false, 0); + var name = builder.get_object ("name") as Widgets.RichLabel; + profile.bind_property ("display-name", name, "label", BindingFlags.SYNC_CREATE, (b, src, ref target) => { + var label = (string) src; + target.set_string (@"$label"); + return true; + }); - username = new Label (""); - header_info.pack_start (username, false, false, 0); + var handle = builder.get_object ("handle") as Widgets.RichLabel; + profile.bind_property ("acct", handle, "label", BindingFlags.SYNC_CREATE, (b, src, ref target) => { + target.set_string ("@" + (string) src); + return true; + }); - note = new Widgets.RichLabel (""); - note.set_line_wrap (true); - note.selectable = true; - note.margin_top = 12; - note.can_focus = false; - note.justify = Justification.CENTER; - header_info.pack_start (note, false, false, 0); - header_info.show_all (); - header.attach (header_info, 0, 0, 1, 1); + var note = builder.get_object ("note") as Widgets.RichLabel; + profile.bind_property ("note", note, "label", BindingFlags.SYNC_CREATE, (b, src, ref target) => { + target.set_string (Html.simplify ((string) src)); + return true; + }); - counters = new Grid (); - counters.column_homogeneous = true; - counters.get_style_context ().add_class ("header-counters"); - header.attach (counters, 0, 1, 1, 1); + actions = builder.get_object ("actions") as Box; + follow_button = builder.get_object ("follow_button") as Button; + follow_button.clicked.connect (on_follow_button_clicked); + options_button = builder.get_object ("options_button") as MenuButton; + relationship = builder.get_object ("relationship") as Label; - header_image = new Grid (); - header_image.get_style_context ().add_class ("header"); - header.attach (header_image, 0, 0, 2, 2); + posts_label = builder.get_object ("posts_label") as Label; + profile.bind_property ("posts_count", posts_label, "label", BindingFlags.SYNC_CREATE, (b, src, ref target) => { + var val = (int64) src; + target.set_string (_("%s Posts").printf (@"$val")); + return true; + }); + following_label = builder.get_object ("following_label") as Label; + profile.bind_property ("following_count", following_label, "label", BindingFlags.SYNC_CREATE, (b, src, ref target) => { + var val = (int64) src; + target.set_string (_("%s Follows").printf (@"$val")); + return true; + }); + followers_label = builder.get_object ("followers_label") as Label; + profile.bind_property ("followers_count", followers_label, "label", BindingFlags.SYNC_CREATE, (b, src, ref target) => { + var val = (int64) src; + target.set_string (_("%s Followers").printf (@"$val")); + return true; + }); - menu = new Gtk.Menu (); - menu_edit = new Gtk.MenuItem.with_label (_("Edit Profile")); - menu_mention = new Gtk.MenuItem.with_label (_("Mention")); - menu_report = new Gtk.MenuItem.with_label (_("Report")); - menu_mute = new Gtk.MenuItem.with_label (_("Mute")); - menu_block = new Gtk.MenuItem.with_label (_("Block")); - menu.add (menu_mention); - //menu.add (new Gtk.SeparatorMenuItem ()); - menu.add (menu_mute); - menu.add (menu_block); - //menu.add (menu_report); //TODO: Report users - //menu.add (menu_edit); //TODO: Edit profile - menu.show_all (); + filter_all = builder.get_object ("filter_all") as RadioButton; + filter_all.toggled.connect (on_refresh); + filter_replies = builder.get_object ("filter_replies") as RadioButton; + filter_replies.toggled.connect (on_refresh); + filter_media = builder.get_object ("filter_media") as RadioButton; + filter_media.toggled.connect (on_refresh); - button_follow = add_counter ("contact-new-symbolic"); - button_menu = new MenuButton (); - button_menu.image = new Image.from_icon_name ("view-more-symbolic", IconSize.LARGE_TOOLBAR); - button_menu.tooltip_text = _("More Actions"); - button_menu.get_style_context ().add_class (Gtk.STYLE_CLASS_FLAT); - (button_menu as Widget).set_focus_on_click (false); - button_menu.can_default = false; - button_menu.can_focus = false; - button_menu.popup = menu; - actions.pack_end(button_menu, false, false, 0); - actions.pack_end(button_follow, false, false, 0); - button_menu.hide (); - button_follow.hide (); - header.attach (actions, 0, 0, 2, 2); - - view.pack_start (header, false, false, 0); + posts_tab = builder.get_object ("posts_tab") as RadioButton; + posts_tab.toggled.connect (() => { + if (posts_tab.active) on_refresh (); + }); + following_tab = builder.get_object ("following_tab") as RadioButton; + following_tab.toggled.connect (() => { + if (following_tab.active) on_refresh (); + }); + followers_tab = builder.get_object ("followers_tab") as RadioButton; + followers_tab.toggled.connect (() => { + if (followers_tab.active) on_refresh (); + }); } public Profile (API.Account acc) { - base (""); - account = acc; - account.updated.connect (rebind); - - add_counter (_("Toots"), 1, account.statuses_count); - add_counter (_("Follows"), 2, account.following_count).clicked.connect (() => { - var view = new Views.Following (account); - window.open_view (view); - }); - add_counter (_("Followers"), 3, account.followers_count).clicked.connect (() => { - var view = new Views.Followers (account); - window.open_view (view); - }); - - show_all (); - - //TODO: Has this thing always been synchronous??? - //var stylesheet = ".header{background-image: url(\"%s\")}".printf (account.header); - //var css_provider = Granite.Widgets.Utils.get_css_provider (stylesheet); - //header_image.get_style_context ().add_provider (css_provider, Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION); - - menu_mention.activate.connect (() => Dialogs.Compose.open ("@%s ".printf (account.acct))); - menu_mute.activate.connect (() => account.set_muted (!account.rs.muting)); - menu_block.activate.connect (() => account.set_blocked (!account.rs.blocking)); - button_follow.clicked.connect (() => account.set_following (!account.rs.following)); - - rebind (); - account.get_relationship (); - request (); + Object (profile: acc); + profile.get_relationship (); } + protected void on_follow_button_clicked () { + actions.sensitive = false; + profile.set_following (!profile.rs.following); + } + protected void on_rs_updated () { + var rs = profile.rs; + var label = ""; + if (actions.sensitive = rs != null) { + if (rs.requested) + label = _("Sent follow request"); + else if (rs.followed_by && rs.following) + label = _("Mutually follows you"); + else if (rs.followed_by) + label = _("Follows you"); - public void rebind (){ - display_name.set_label ("%s".printf (account.display_name)); - username.label = "@" + account.acct; - note.set_label (account.note); - button_follow.visible = !account.is_self (); - network.load_avatar (account.avatar, avatar, 128); + foreach (Widget w in new Widget[] { follow_button, options_button }) { + var ctx = w.get_style_context (); + ctx.remove_class (STYLE_CLASS_SUGGESTED_ACTION); + ctx.remove_class (STYLE_CLASS_DESTRUCTIVE_ACTION); + ctx.add_class (rs.following ? STYLE_CLASS_DESTRUCTIVE_ACTION : STYLE_CLASS_SUGGESTED_ACTION); + } - menu_edit.visible = account.is_self (); + var label2 = ""; + if (rs.followed_by && !rs.following) + label2 = _("Follow back"); + else if (rs.following) + label2 = _("Unfollow"); + else + label2 = _("Follow"); - if (account.rs != null && !account.is_self ()) { - button_follow.show (); - if (account.rs.following) { - button_follow.tooltip_text = _("Unfollow"); - (button_follow.get_image () as Image).icon_name = "close-symbolic"; - } - else{ - button_follow.tooltip_text = _("Follow"); - (button_follow.get_image () as Image).icon_name = "contact-new-symbolic"; - } - } + follow_button.label = label2; + } - if (account.rs != null){ - button_menu.show (); - menu_block.label = account.rs.blocking ? _("Unblock") : _("Block"); - menu_mute.label = account.rs.muting ? _("Unmute") : _("Mute"); - menu_report.visible = menu_mute.visible = menu_block.visible = !account.is_self (); - - var rs_label = get_relationship_label (); - if (rs_label != null) { - relationship.label = rs_label; - relationship.show (); - } - else - relationship.hide (); - } - else - relationship.hide (); - } - - public override bool is_status_owned (API.Status status) { - return status.is_owned (); - } - - private Button add_counter (string name, int? i = null, int64? val = null) { - Button btn; - if (val != null){ - btn = new Button (); - var label = new Label ("%s\n%s".printf (name.up (), val.to_string ())); - label.justify = Justification.CENTER; - label.use_markup = true; - label.margin = 8; - btn.add (label); - } - else - btn = new Button.from_icon_name (name, IconSize.LARGE_TOOLBAR); - - btn.get_style_context ().add_class (Gtk.STYLE_CLASS_FLAT); - (btn as Widget).set_focus_on_click (false); - btn.can_default = false; - btn.can_focus = false; - - if (i != null) - counters.attach (btn, i, 1, 1, 1); - return btn; - } - - public override bool is_empty () { - return view.get_children ().length () <= 2; - } + relationship.label = label; + } public override string get_url () { if (page_next != null) return page_next; - var url = "%s/api/v1/accounts/%lld/statuses?limit=%i".printf (accounts.formal.instance, account.id, this.limit); - return url; + if (following_tab.active) + return @"/api/v1/accounts/$(profile.id)/following"; + else if (followers_tab.active) + return @"/api/v1/accounts/$(profile.id)/followers"; + else + return @"/api/v1/accounts/$(profile.id)/statuses"; } - public override void request () { - if (account != null) - base.request (); - } + public override Request append_params (Request req) { + req.with_param ("exclude_replies", (!filter_replies.active).to_string ()); + req.with_param ("only_media", filter_media.active.to_string ()); + return base.append_params (req); + } - private string? get_relationship_label () { - if (account.rs.requested) - return _("Sent follow request"); - else if (account.rs.blocking) - return _("Blocked"); - else if (account.rs.followed_by) - return _("Follows you"); - else if (account.rs.domain_blocking) - return _("Blocking this instance"); - else - return null; + public override bool request () { + append_params (new Request.GET (get_url ())) + .with_account (account) + .then_parse_array ((node, msg) => { + var obj = node.get_object (); + if (obj != null) { + API.Status status; + if (posts_tab.active) + status = new API.Status (obj); + else { + var account = new API.Account (obj); + status = new API.Status.from_account (account); + } + + append (status); + } + get_pages (msg.response_headers.get_one ("Link")); + }) + .on_error (on_error) + .exec (); + + return GLib.Source.REMOVE; } public static void open_from_id (int64 id){ - var url = "%s/api/v1/accounts/%lld".printf (accounts.formal.instance, id); + var url = "%s/api/v1/accounts/%lld".printf (accounts.active.instance, id); var msg = new Soup.Message ("GET", url); msg.priority = Soup.MessagePriority.HIGH; network.queue (msg, (sess, mess) => { var root = network.parse (mess); - var acc = API.Account.parse (root); + var acc = new API.Account (root); window.open_view (new Views.Profile (acc)); }, (status, reason) => { network.on_error (status, reason); diff --git a/src/Views/Search.vala b/src/Views/Search.vala index 108641d..d96a86c 100644 --- a/src/Views/Search.vala +++ b/src/Views/Search.vala @@ -1,61 +1,64 @@ using Gtk; -public class Tootle.Views.Search : Views.Abstract { +public class Tootle.Views.Search : Views.Base { private string query = ""; - private Entry entry; + private SearchBar bar; + private SearchEntry entry; construct { - view.margin_bottom = 6; + bar = new SearchBar (); + bar.search_mode_enabled = true; + bar.show (); + pack_start (bar, false, false, 0); - entry = new Entry (); - entry.placeholder_text = _("Search"); - entry.secondary_icon_name = "system-search-symbolic"; + entry = new SearchEntry (); entry.width_chars = 25; entry.text = query; - entry.valign = Align.CENTER; entry.show (); - window.header.pack_start (entry); + bar.add (entry); + bar.connect_entry (entry); - destroy.connect (() => entry.destroy ()); entry.activate.connect (() => request ()); entry.icon_press.connect (() => request ()); - } - - public Search () { entry.grab_focus_without_selecting (); + status_button.clicked.connect (request); } private void append_account (API.Account acc) { - var widget = new Widgets.Account (acc); - view.pack_start (widget, false, false, 0); + var status = new API.Status.from_account (acc); + var widget = new Widgets.Status (status); + widget.button_press_event.connect (widget.on_avatar_clicked); + content.pack_start (widget, false, false, 0); + on_content_changed (); } private void append_status (API.Status status) { var widget = new Widgets.Status (status); widget.button_press_event.connect (widget.on_avatar_clicked); - view.pack_start (widget, false, false, 0); + content.pack_start (widget, false, false, 0); + on_content_changed (); } private void append_header (string name) { - var widget = new Label (name); - widget.get_style_context ().add_class ("h4"); + var widget = new Label (@"$name"); widget.halign = Align.START; - widget.margin = 6; - widget.margin_bottom = 0; + widget.margin = 8; + widget.use_markup = true; widget.show (); - view.pack_start (widget, false, false, 0); + content.pack_start (widget, false, false, 0); + on_content_changed (); } private void append_hashtag (string name) { - var text = "#%s".printf (accounts.formal.instance, Soup.URI.encode (name, null), name); - var widget = new Widgets.RichLabel (text); + var encoded = Soup.URI.encode (name, null); + var widget = new Widgets.RichLabel (@"#$name"); widget.use_markup = true; widget.halign = Align.START; widget.margin = 6; widget.margin_bottom = 0; widget.show (); - view.pack_start (widget, false, false, 0); + content.pack_start (widget, false, false, 0); } private void request () { @@ -64,25 +67,31 @@ public class Tootle.Views.Search : Views.Abstract { clear (); return; } - window.reopen_view (this.stack_pos); - var query_encoded = Soup.URI.encode (query, null); - var url = "%s/api/v1/search?q=%s&resolve=true".printf (accounts.formal.instance, query_encoded); - var msg = new Soup.Message("GET", url); - network.inject (msg, Network.INJECT_TOKEN); - network.queue (msg, (sess, mess) => { - var root = network.parse (mess); + new Request.GET ("/api/v2/search") + .with_account (accounts.active) + .with_param ("resolve", "true") + .with_param ("q", Soup.URI.encode (query, null)) + .then ((sess, msg) => { + var root = network.parse (msg); var accounts = root.get_array_member ("accounts"); var statuses = root.get_array_member ("statuses"); var hashtags = root.get_array_member ("hashtags"); clear (); + if (hashtags.get_length () > 0) { + append_header (_("Hashtags")); + hashtags.foreach_element ((array, i, node) => { + append_hashtag (node.get_object ().get_string_member ("name")); + }); + } + if (accounts.get_length () > 0) { append_header (_("Accounts")); accounts.foreach_element ((array, i, node) => { var obj = node.get_object (); - var acc = API.Account.parse (obj); + var acc = new API.Account (obj); append_account (acc); }); } @@ -91,20 +100,13 @@ public class Tootle.Views.Search : Views.Abstract { append_header (_("Statuses")); statuses.foreach_element ((array, i, node) => { var obj = node.get_object (); - var status = API.Status.parse (obj); + var status = new API.Status (obj); append_status (status); }); } - - if (hashtags.get_length () > 0) { - append_header (_("Hashtags")); - hashtags.foreach_element ((array, i, node) => { - append_hashtag (node.get_string ()); - }); - } - - empty_state (); - }); + }) + .on_error (on_error) + .exec (); } } diff --git a/src/Views/Timeline.vala b/src/Views/Timeline.vala index 33b1f7c..fcd5c64 100644 --- a/src/Views/Timeline.vala +++ b/src/Views/Timeline.vala @@ -1,31 +1,25 @@ using Gtk; using Gdk; -public class Tootle.Views.Timeline : Views.Abstract { +public class Tootle.Views.Timeline : Views.Base, IAccountListener, IStreamListener { - protected string timeline; - protected string pars; + public string timeline { get; construct set; } + public bool is_public { get; construct set; default = false; } + + protected InstanceAccount? account = null; protected int limit = 25; protected bool is_last_page = false; protected string? page_next; protected string? page_prev; + protected string? stream; - protected Notificator? notificator; - - public Timeline (string timeline, string pars = "") { - base (); - this.timeline = timeline; - this.pars = pars; - - accounts.switched.connect (on_account_changed); + construct { app.refresh.connect (on_refresh); - destroy.connect (() => { - if (notificator != null) - notificator.close (); - }); - - setup_notificator (); - request (); + status_button.clicked.connect (on_refresh); + connect_account (); + } + ~Timeline () { + streams.unsubscribe (stream, this); } public override string get_icon () { @@ -36,38 +30,32 @@ public class Tootle.Views.Timeline : Views.Abstract { return _("Home"); } - public virtual void on_status_added (API.Status status) { + public override void on_status_added (API.Status status) { prepend (status); } public virtual bool is_status_owned (API.Status status) { - return false; + return status.is_owned (); } public void prepend (API.Status status) { append (status, true); } - public void append (API.Status status, bool first = false){ - if (empty != null) - empty.destroy (); + public void append (API.Status status, bool first = false) { + GLib.Idle.add (() => { + var w = new Widgets.Status (status); + w.button_press_event.connect (w.open); + if (!is_status_owned (status)) + w.avatar.button_press_event.connect (w.on_avatar_clicked); - var separator = new Separator (Orientation.HORIZONTAL); - separator.show (); + content.pack_start (w, false, false, 0); + if (first || status.pinned) + content.reorder_child (w, 0); - var widget = new Widgets.Status (status); - widget.separator = separator; - widget.button_press_event.connect (widget.open); - if (!is_status_owned (status)) - widget.avatar.button_press_event.connect (widget.on_avatar_clicked); - view.pack_start (separator, false, false, 0); - view.pack_start (widget, false, false, 0); - - if (first || status.pinned) { - var new_index = header == null ? 1 : 0; - view.reorder_child (separator, new_index); - view.reorder_child (widget, new_index); - } + on_content_changed (); + return GLib.Source.REMOVE; + }); } public override void clear () { @@ -102,82 +90,51 @@ public class Tootle.Views.Timeline : Views.Abstract { if (page_next != null) return page_next; - var url = "%s/api/v1/timelines/%s?limit=%i".printf (accounts.formal.instance, this.timeline, this.limit); - url += this.pars; - return url; + return @"/api/v1/timelines/$timeline"; } - public virtual void request (){ - if (accounts.current == null) { - empty_state (); - return; - } - - var msg = new Soup.Message ("GET", get_url ()); - network.inject (msg, Network.INJECT_TOKEN); - network.queue (msg, (sess, mess) => { - network.parse_array (mess).foreach_element ((array, i, node) => { - var object = node.get_object (); - if (object != null) { - var status = API.Status.parse (object); - append (status); - } - }); - get_pages (mess.response_headers.get_one ("Link")); - empty_state (); - }, - network.on_error); + public virtual Request append_params (Request req) { + return req.with_param ("limit", limit.to_string ()); } - public virtual void on_refresh (){ + public virtual bool request () { + append_params (new Request.GET (get_url ())) + .with_account (account) + .then_parse_array ((node, msg) => { + var obj = node.get_object (); + if (obj != null) { + var status = new API.Status (obj); + append (status); + } + get_pages (msg.response_headers.get_one ("Link")); + }) + .on_error (on_error) + .exec (); + + return GLib.Source.REMOVE; + } + + public virtual void on_refresh () { + status_button.sensitive = false; clear (); - request (); + status_message = STATUS_LOADING; + GLib.Idle.add (request); } - public virtual Soup.Message? get_stream (){ + public virtual string? get_stream_url () { return null; } - public virtual void on_account_changed (API.Account? account){ - if(account == null) - return; - - var stream = get_stream (); - if (notificator != null && stream != null) { - var old_url = notificator.get_url (); - var new_url = stream.get_uri ().to_string (false); - if (old_url != new_url) { - info ("Updating notificator %s", notificator.get_name ()); - setup_notificator (); - } - } - + public override void on_account_changed (InstanceAccount? acc) { + account = acc; + streams.unsubscribe (stream, this); + streams.subscribe (get_stream_url (), this, out stream); on_refresh (); } - protected void setup_notificator () { - if (notificator != null) - notificator.close (); - - var stream = get_stream (); - if (stream == null) - return; - - notificator = new Notificator (stream); - notificator.status_added.connect ((status) => { - if (can_stream ()) - on_status_added (status); - }); - notificator.start (); - } - - protected virtual bool is_public () { - return false; - } - - protected virtual bool can_stream () { + protected override bool accepts (ref string event) { var allowed_public = true; - if (is_public ()) + if (is_public) allowed_public = settings.live_updates_public; return settings.live_updates && allowed_public; @@ -185,7 +142,7 @@ public class Tootle.Views.Timeline : Views.Abstract { protected override void on_bottom_reached () { if (is_last_page) { - debug ("Last page reached"); + info ("Last page reached"); return; } request (); diff --git a/src/Watchlist.vala b/src/Watchlist.vala deleted file mode 100644 index 603c1e4..0000000 --- a/src/Watchlist.vala +++ /dev/null @@ -1,125 +0,0 @@ -using GLib; -using Gee; - -public class Tootle.Watchlist : Object { - - public ArrayList users = new ArrayList (); - public ArrayList hashtags = new ArrayList (); - public ArrayList notificators = new ArrayList (); - - construct { - accounts.switched.connect (on_account_changed); - } - - public Watchlist () {} - - public virtual void on_account_changed (API.Account? account){ - if (account != null) - reload (); - } - - private void reload () { - info ("Reloading"); - - notificators.@foreach (notificator => { - notificator.close (); - return true; - }); - notificators.clear (); - users.clear (); - hashtags.clear (); - - load (); - info ("Watching for %i users and %i hashtags", users.size, hashtags.size); - } - - private void load () { - var users_array = settings.watched_users.split (","); - foreach (string item in users_array) - add (item, false); - - var hashtags_array = settings.watched_hashtags.split (","); - foreach (string item in hashtags_array) - add (item, true); - } - - public void save () { - var serialized_users = ""; - users.@foreach (item => { - serialized_users += item + ","; - return true; - }); - serialized_users = remove_last_delimiter (serialized_users); - settings.watched_users = serialized_users; - - var serialized_hashtags = ""; - hashtags.@foreach (item => { - serialized_hashtags += item + ","; - return true; - }); - serialized_hashtags = remove_last_delimiter (serialized_hashtags); - settings.watched_hashtags = serialized_hashtags; - - info ("Saved"); - } - - private string remove_last_delimiter (string str) { - var i = str.last_index_of (","); - if (i > -1) - return str.substring (0, i); - else - return str; - } - - private Notificator get_notificator (string hashtag) { - var url = "%s/api/v1/streaming/?stream=hashtag&tag=%s&access_token=%s".printf (accounts.formal.instance, hashtag, accounts.formal.token); - var msg = new Soup.Message ("GET", url); - var notificator = new Notificator (msg); - notificator.status_added.connect (on_status_added); - return notificator; - } - - private void on_status_added (API.Status status) { - var obj = new API.Notification (-1); - obj.type = API.NotificationType.WATCHLIST; - obj.account = status.account; - obj.status = status; - accounts.formal.notification (obj); - } - - public void add (string entity, bool is_hashtag) { - if (entity == "") - return; - - if (is_hashtag) { - hashtags.add (entity); - var notificator = get_notificator (entity); - notificator.start (); - notificators.add (notificator); - info ("Added #%s", entity); - } - else { - users.add (entity); - info ("Added @%s", entity); - } - } - - public void remove (string entity, bool is_hashtag) { - if (entity == "") - return; - - if (is_hashtag) { - var i = hashtags.index_of (entity); - var notificator = notificators.@get(i); - notificator.close (); - notificators.remove_at (i); - hashtags.remove (entity); - info ("Removed #%s", entity); - } - else { - users.remove (entity); - info ("Removed @%s", entity); - } - } - -} diff --git a/src/Widgets/Account.vala b/src/Widgets/Account.vala index 2eeb289..0e7b9c1 100644 --- a/src/Widgets/Account.vala +++ b/src/Widgets/Account.vala @@ -5,15 +5,15 @@ public class Tootle.Widgets.Account : Widgets.Status { public Account (API.Account account) { var status = new API.Status (-1); status.account = account; - status.url = account.url; - status.content = "@%s".printf (account.url, account.acct); - status.created_at = account.created_at; + //status.url = account.url; + //status.content = "@%s".printf (account.url, account.acct); + //status.created_at = account.created_at; base (status); - counters.visible = false; - title_acct.visible = false; - content_label.margin_bottom = 12; + //counters.visible = false; + //title_acct.visible = false; + //content_label.margin_bottom = 12; } protected override bool on_clicked (EventButton ev) { diff --git a/src/Widgets/AccountsButton.vala b/src/Widgets/AccountsButton.vala index f17a207..e48560b 100644 --- a/src/Widgets/AccountsButton.vala +++ b/src/Widgets/AccountsButton.vala @@ -1,168 +1,149 @@ using Gtk; -public class Tootle.Widgets.AccountsButton : MenuButton { +[GtkTemplate (ui = "/com/github/bleakgrey/tootle/ui/widgets/accounts_button.ui")] +public class Tootle.Widgets.AccountsButton : Gtk.MenuButton, IAccountListener { - const int AVATAR_SIZE = 24; - Granite.Widgets.Avatar avatar; - Grid grid; - Popover menu; - ListBox list; - ModelButton item_settings; - ModelButton item_refresh; - ModelButton item_search; - ModelButton item_favs; - ModelButton item_direct; - ModelButton item_watchlist; + [GtkTemplate (ui = "/com/github/bleakgrey/tootle/ui/widgets/accounts_button_item.ui")] + private class Item : Grid { + [GtkChild] + private Widgets.Avatar avatar; + [GtkChild] + private Label name; + [GtkChild] + private Label handle; + [GtkChild] + private Button profile; + [GtkChild] + private Button remove; - private class AccountItemView : ListBoxRow { + public Item (InstanceAccount acc, AccountsButton _self) { + avatar.url = acc.avatar; + name.label = acc.display_name; + handle.label = acc.handle; - private Grid grid; - public Label display_name; - public Label instance; - public Button button; - public int id = -1; + profile.clicked.connect (() => { + Views.Profile.open_from_id (acc.id); + _self.active = false; + }); - construct { - can_default = false; - - grid = new Grid (); - grid.margin = 6; - grid.margin_start = 14; - - display_name = new Label (""); - display_name.hexpand = true; - display_name.halign = Align.START; - display_name.use_markup = true; - instance = new Label (""); - instance.halign = Align.START; - button = new Button.from_icon_name ("window-close-symbolic", IconSize.SMALL_TOOLBAR); - button.receives_default = false; - button.get_style_context ().add_class (Gtk.STYLE_CLASS_FLAT); - - grid.attach (display_name, 1, 0, 1, 1); - grid.attach (instance, 1, 1, 1, 1); - grid.attach (button, 2, 0, 2, 2); - add (grid); - show_all (); + remove.clicked.connect (() => { + _self.active = false; + accounts.remove (acc); + }); } - public AccountItemView (){ - button.clicked.connect (() => accounts.remove (id)); + public Item.add_new () { + name.label = _("New Account"); + handle.label = _("Click to add"); + profile.destroy (); + remove.destroy (); } - } - construct{ - avatar = new Granite.Widgets.Avatar.with_default_icon (AVATAR_SIZE); - list = new ListBox (); + private bool invalidated = true; - var item_separator = new Separator (Orientation.HORIZONTAL); - item_separator.hexpand = true; + [GtkChild] + private Widgets.Avatar avatar; + [GtkChild] + private Spinner spinner; + + [GtkChild] + private ListBox account_list; + + [GtkChild] + private ModelButton item_accounts; + [GtkChild] + private ModelButton item_prefs; + [GtkChild] + private ModelButton item_refresh; + [GtkChild] + private ModelButton item_search; + [GtkChild] + private ModelButton item_favs; + [GtkChild] + private ModelButton item_direct; + [GtkChild] + private ModelButton item_watchlist; + + construct { + connect_account (); - item_refresh = new ModelButton (); - item_refresh.text = _("Refresh"); item_refresh.clicked.connect (() => app.refresh ()); Desktop.set_hotkey_tooltip (item_refresh, null, app.ACCEL_REFRESH); - item_favs = new ModelButton (); - item_favs.text = _("Favorites"); item_favs.clicked.connect (() => window.open_view (new Views.Favorites ())); - - item_direct = new ModelButton (); - item_direct.text = _("Direct Messages"); item_direct.clicked.connect (() => window.open_view (new Views.Direct ())); - - item_search = new ModelButton (); - item_search.text = _("Search"); item_search.clicked.connect (() => window.open_view (new Views.Search ())); + //item_watchlist.clicked.connect (() => Dialogs.WatchlistEditor.open ()); + item_prefs.clicked.connect (() => Dialogs.Preferences.open ()); - item_watchlist = new ModelButton (); - item_watchlist.text = _("Watchlist"); - item_watchlist.clicked.connect (() => Dialogs.WatchlistEditor.open ()); + // network.started.connect (() => spinner.show ()); + // network.finished.connect (() => spinner.hide ()); - item_settings = new ModelButton (); - item_settings.text = _("Settings"); - item_settings.clicked.connect (() => Dialogs.Preferences.open ()); + on_account_changed (null); - grid = new Grid (); - grid.orientation = Orientation.VERTICAL; - grid.width_request = 200; - grid.attach (list, 0, 1, 1, 1); - grid.attach (item_separator, 0, 3, 1, 1); - grid.attach (item_favs, 0, 4, 1, 1); - grid.attach (item_direct, 0, 5, 1, 1); - grid.attach (new Separator (Orientation.HORIZONTAL), 0, 6, 1, 1); - grid.attach (item_refresh, 0, 7, 1, 1); - grid.attach (item_search, 0, 8, 1, 1); - grid.attach (item_watchlist, 0, 9, 1, 1); - grid.attach (item_settings, 0, 10, 1, 1); - grid.show_all (); - - menu = new Popover (null); - menu.add (grid); - - get_style_context ().add_class ("button_avatar"); - popover = menu; - add (avatar); - show_all (); - - accounts.updated.connect (accounts_updated); - accounts.switched.connect (account_switched); - list.row_activated.connect (row => { - var widget = row as AccountItemView; - if (widget.id == -1) { - Dialogs.NewAccount.open (); - return; - } - if (widget.id == settings.current_account) - Views.Profile.open_from_id (accounts.current.id); - else - accounts.switch_account (widget.id); - - menu.popdown (); - }); - } - - private void accounts_updated (GenericArray accounts) { - list.forall (widget => widget.destroy ()); - int i = -1; - accounts.foreach (account => { - i++; - var widget = new AccountItemView (); - widget.id = i; - widget.display_name.label = "@"+account.username+""; - widget.instance.label = account.get_pretty_instance (); - list.add (widget); + notify["active"].connect (() => { + if (active && invalidated) + rebuild (); }); - var add_account = new AccountItemView (); - add_account.display_name.label = _("New Account"); - add_account.instance.label = _("Click to add"); - add_account.button.hide (); - list.add (add_account); - update_selection (); + account_list.row_activated.connect (on_selection_changed) ; } - private void account_switched (API.Account? account) { - if (account == null) - avatar.show_default (AVATAR_SIZE); - else - network.load_avatar (account.avatar, avatar, get_avatar_size ()); + protected void on_selection_changed (ListBoxRow r) { + var i = r.get_index (); + if (i >= accounts.saved.size) { + active = false; + window.open_view (new Views.NewAccount (true)); + return; + } + + var account = accounts.saved.@get (i); + if (accounts.active == account) + return; + + accounts.switch_account (i); } - private void update_selection () { - var id = settings.current_account; - var row = list.get_row_at_index (id); - if (row != null) - list.select_row (row); + public virtual void on_accounts_changed (Gee.ArrayList accounts) { + invalidated = true; + if (active) + rebuild (); } - public int get_avatar_size () { - return AVATAR_SIZE * get_style_context ().get_scale (); + public virtual void on_account_changed (InstanceAccount? account) { + if (account == null) { + avatar.url = null; + item_accounts.text = "" + _("No active account") + ""; + } + else { + avatar.url = account.avatar; + item_accounts.text = @"$(account.display_name)\n$(account.handle) "; + } + item_accounts.use_markup = true; } - public AccountsButton () { - account_switched (accounts.current); + private void rebuild () { + account_list.@foreach (w => account_list.remove (w)); + accounts.saved.@foreach (acc => { + var item = new Item (acc, this); + var row = new ListBoxRow (); + row.add (item); + row.show (); + + account_list.insert (row, -1); + if (accounts.active == acc) + row.activate (); + + return true; + }); + var new_row = new ListBoxRow (); + new_row.add (new Item.add_new ()); + new_row.selectable = false; + new_row.show (); + account_list.insert (new_row, -1); + + invalidated = false; } } diff --git a/src/Widgets/Attachment/Box.vala b/src/Widgets/Attachment/Box.vala new file mode 100644 index 0000000..281e14e --- /dev/null +++ b/src/Widgets/Attachment/Box.vala @@ -0,0 +1,69 @@ +using Gtk; +using GLib; +using Gee; + +public class Tootle.Widgets.Attachment.Box : FlowBox { + + public bool editing { get; construct set; } + + construct { + hexpand = true; + can_focus = false; + selection_mode = SelectionMode.NONE; + } + + public Box (bool editing = false) { + Object (editing: editing); + } + + public void select () { + var filter = new Gtk.FileFilter (); + filter.add_mime_type ("image/jpeg"); + filter.add_mime_type ("image/png"); + filter.add_mime_type ("image/gif"); + filter.add_mime_type ("video/webm"); + filter.add_mime_type ("video/mp4"); + + var chooser = new Gtk.FileChooserDialog ( + _("Select media files to add"), + null, + Gtk.FileChooserAction.OPEN, + _("_Cancel"), + Gtk.ResponseType.CANCEL, + _("_Open"), + Gtk.ResponseType.ACCEPT); + + chooser.select_multiple = true; + chooser.set_filter (filter); + + if (chooser.run () == ResponseType.ACCEPT) { + show (); + foreach (unowned string uri in chooser.get_uris ()) { + //var widget = new ImageAttachment.upload (uri); + //append_widget (widget); + } + } + chooser.close (); + } + + public bool populate (ArrayList? list) { + if (list == null) + return false; + + var max = 6; + if (list.size % 2 == 0) + max = 2; + + //max_children_per_line = (int)Math.fmin (list.size, 5); + max_children_per_line = max; + list.@foreach (obj => pack (obj)); + return true; + } + + public bool pack (API.Attachment obj) { + var w = new Widgets.Attachment.Item (obj); + insert (w, -1); + return true; + } + +} diff --git a/src/Widgets/Attachment/Item.vala b/src/Widgets/Attachment/Item.vala new file mode 100644 index 0000000..9260715 --- /dev/null +++ b/src/Widgets/Attachment/Item.vala @@ -0,0 +1,105 @@ +using Gtk; +using Gdk; + +public class Tootle.Widgets.Attachment.Item : EventBox { + + public API.Attachment attachment { get; construct set; } + + private Cache.Reference? cached; + + public Item (API.Attachment obj) { + Object (attachment: obj); + } + ~Item () { + cache.unload (cached); + } + + construct { + get_style_context ().add_class ("attachment"); + width_request = height_request = 128; + hexpand = true; + tooltip_text = attachment.description ?? _("No description is available"); + + button_press_event.connect (on_clicked); + + show (); + on_request (); + } + + protected void on_request () { + cached = null; + on_redraw (); + cache.load (attachment.preview_url, on_cache_result); + } + + protected void on_redraw () { + var w = get_allocated_width (); + var h = get_allocated_height (); + queue_draw_area (0, 0, w, h); + } + + protected void on_cache_result (Cache.Reference? result) { + cached = result; + on_redraw (); + } + + protected void download () { + Desktop.download (attachment.url, path => { + app.toast (_("Attachment downloaded")); + }); + } + protected void open () { + Desktop.download (attachment.url, path => { + Desktop.open_uri (path); + }); + } + + public override bool draw (Cairo.Context ctx) { + base.draw (ctx); + var w = get_allocated_width (); + var h = get_allocated_height (); + var style = get_style_context (); + var border_radius = style.get_property (Gtk.STYLE_PROPERTY_BORDER_RADIUS, style.get_state ()).get_int (); + + if (cached != null) { + if (cached.loading) { + Drawing.center (ctx, w, h, 32, 32); + get_style_context ().render_activity (ctx, 0, 0, 32, 32); + } + else { + var thumb = Drawing.make_thumbnail (cached.data, w, h); + Drawing.draw_rounded_rect (ctx, 0, 0, w, h, border_radius); + Drawing.center (ctx, w, h, thumb.width, thumb.height); + Gdk.cairo_set_source_pixbuf (ctx, thumb, 0, 0); + ctx.fill (); + } + } + + return Gdk.EVENT_STOP; + } + + protected virtual bool on_clicked (EventButton ev) { + if (ev.button == 1) { + open (); + return true; + } + else if (ev.button == 3) { + var menu = new Gtk.Menu (); + + var item_open = new Gtk.MenuItem.with_label (_("Open")); + item_open.activate.connect (open); + menu.add (item_open); + + var item_download = new Gtk.MenuItem.with_label (_("Download")); + item_download.activate.connect (download); + menu.add (item_download); + + menu.show_all (); + menu.attach_widget = this; + menu.popup_at_pointer (); + return true; + } + return false; + } + +} diff --git a/src/Widgets/AttachmentGrid.vala b/src/Widgets/AttachmentGrid.vala deleted file mode 100644 index c3f73fd..0000000 --- a/src/Widgets/AttachmentGrid.vala +++ /dev/null @@ -1,91 +0,0 @@ -using Gtk; -using GLib; - -public class Tootle.Widgets.AttachmentGrid : Grid { - - private int counter = 0; - private bool allow_editing; - - construct { - hexpand = true; - } - - public AttachmentGrid (bool edit = false) { - allow_editing = edit; - } - - public void append (API.Attachment attachment) { - var widget = new ImageAttachment (attachment); - attach_widget (widget); - } - public void append_widget (ImageAttachment widget) { - attach_widget (widget); - } - - private void attach_widget (ImageAttachment widget) { - attach (widget, counter++, 1); - column_spacing = row_spacing = 12; - show_all (); - } - - public void pack (API.Attachment[] attachments) { - clear (); - var len = attachments.length; - - if (len == 1) { - var widget = new ImageAttachment (attachments[0]); - attach_widget (widget); - widget.fill_parent (); - } - else { - foreach (API.Attachment attachment in attachments) { - append (attachment); - } - } - } - - private void clear () { - forall (widget => widget.destroy ()); - } - - public void select () { - var filter = new Gtk.FileFilter (); - filter.add_mime_type ("image/jpeg"); - filter.add_mime_type ("image/png"); - filter.add_mime_type ("image/gif"); - filter.add_mime_type ("video/webm"); - filter.add_mime_type ("video/mp4"); - - var chooser = new Gtk.FileChooserDialog ( - _("Select media files to add"), - null, - Gtk.FileChooserAction.OPEN, - _("_Cancel"), - Gtk.ResponseType.CANCEL, - _("_Open"), - Gtk.ResponseType.ACCEPT); - - chooser.select_multiple = true; - chooser.set_filter (filter); - - if (chooser.run () == Gtk.ResponseType.ACCEPT) { - show (); - foreach (unowned string uri in chooser.get_uris ()) { - var widget = new ImageAttachment.upload (uri); - append_widget (widget); - } - } - chooser.close (); - } - - public string get_uri_array () { - var str = ""; - get_children ().@foreach (w => { - var widget = (ImageAttachment) w; - if (widget.attachment != null) - str += "&media_ids[]=%lld".printf (widget.attachment.id); - }); - return str; - } - -} diff --git a/src/Widgets/Avatar.vala b/src/Widgets/Avatar.vala new file mode 100644 index 0000000..0da9d46 --- /dev/null +++ b/src/Widgets/Avatar.vala @@ -0,0 +1,71 @@ +using Gtk; +using Gdk; + +public class Tootle.Widgets.Avatar : EventBox { + + public string? url { get; set; } + public int size { get; set; default = 48; } + + private Cache.Reference? cached; + + construct { + get_style_context ().add_class ("avatar"); + notify["url"].connect (on_url_updated); + notify["size"].connect (on_redraw); + Screen.get_default ().monitors_changed.connect (on_redraw); + on_url_updated (); + } + + public Avatar (int size = this.size) { + Object (size: size); + on_redraw (); + } + + ~Avatar () { + notify["url"].disconnect (on_url_updated); + Screen.get_default ().monitors_changed.disconnect (on_redraw); + cache.unload (cached); + } + + private void on_url_updated () { + cached = null; + on_redraw (); + cache.load (url, on_cache_result); + } + + private void on_cache_result (Cache.Reference? result) { + cached = result; + on_redraw (); + } + + public int get_scaled_size () { + return size * get_scale_factor (); + } + + private void on_redraw () { + set_size_request (get_scaled_size (), get_scaled_size ()); + queue_draw_area (0, 0, size, size); + } + + public override bool draw (Cairo.Context ctx) { + var w = get_allocated_width (); + var h = get_allocated_height (); + var style = get_style_context (); + var border_radius = style.get_property (Gtk.STYLE_PROPERTY_BORDER_RADIUS, style.get_state ()).get_int (); + Pixbuf pixbuf; + + Drawing.draw_rounded_rect (ctx, 0, 0, w, h, border_radius); + if (cached != null && !cached.loading) { + pixbuf = cached.data.scale_simple (get_scaled_size (), get_scaled_size (), InterpType.BILINEAR); + } + else { + pixbuf = IconTheme.get_default () + .load_icon_for_scale ("avatar-default", size, get_scale_factor (), IconLookupFlags.GENERIC_FALLBACK); + } + Gdk.cairo_set_source_pixbuf (ctx, pixbuf, 0, 0); + ctx.fill (); + + return Gdk.EVENT_STOP; + } + +} diff --git a/src/Widgets/ImageAttachment.vala b/src/Widgets/ImageAttachment.vala deleted file mode 100644 index ba77c17..0000000 --- a/src/Widgets/ImageAttachment.vala +++ /dev/null @@ -1,187 +0,0 @@ -using Gtk; -using Gdk; - -public class Tootle.Widgets.ImageAttachment : DrawingArea { - - public API.Attachment? attachment; - private bool editable = false; - private bool fill = false; - - private Pixbuf? pixbuf = null; - private static Pixbuf? pixbuf_error; - private int center_x = 0; - private int center_y = 0; - - private Soup.Message? image_request; - - construct { - if (pixbuf_error == null) - pixbuf_error = IconTheme.get_default ().load_icon ("image-missing", 32, IconLookupFlags.GENERIC_FALLBACK); - - hexpand = true; - vexpand = true; - add_events (EventMask.BUTTON_PRESS_MASK); - draw.connect (on_draw); - button_press_event.connect (on_clicked); - } - - ~ImageAttachment () { - network.cancel_request (image_request); - } - - public ImageAttachment (API.Attachment obj) { - attachment = obj; - image_request = network.load_pixbuf (attachment.preview_url, on_ready); - set_size_request (32, 128); - show_all (); - } - - public ImageAttachment.upload (string uri) { - halign = Align.START; - valign = Align.START; - set_size_request (100, 100); - show_all (); - try { - GLib.File file = File.new_for_uri (uri); - uint8[] contents; - file.load_contents (null, out contents, null); - var type = file.query_info (GLib.FileAttribute.STANDARD_CONTENT_TYPE, 0); - var mime = type.get_content_type (); - - info ("Uploading %s (%s)", uri, mime); - show (); - - var buffer = new Soup.Buffer.take (contents); - var multipart = new Soup.Multipart (Soup.FORM_MIME_TYPE_MULTIPART); - multipart.append_form_file ("file", mime.replace ("/", "."), mime, buffer); - var url = "%s/api/v1/media".printf (accounts.formal.instance); - var msg = Soup.Form.request_new_from_multipart (url, multipart); - - network.queue (msg, (sess, mess) => { - var root = network.parse (mess); - attachment = API.Attachment.parse (root); - editable = true; - invalidate (); - network.load_pixbuf (attachment.preview_url, on_ready); - info ("Uploaded media: %lld", attachment.id); - }); - } - catch (Error e) { - app.error (_("File read error"), _("Can't read file %s: %s").printf (uri, e.message)); - warning (e.message); - } - } - - private void on_ready (Pixbuf? result) { - if (result == null) - result = pixbuf_error; - - pixbuf = result; - invalidate (); - } - - private void invalidate () { - var w = get_allocated_width (); - var h = get_allocated_height (); - if (fill) { - var h_scaled = (pixbuf.height * w) / pixbuf.width; - if (h_scaled > pixbuf.height) { - halign = Align.START; - set_size_request (pixbuf.width, pixbuf.height); - } - else { - halign = Align.FILL; - set_size_request (1, h_scaled); - } - } - queue_draw_area (0, 0, w, h); - } - - private void calc_center (int w, int h, int size_w, int size_h, Cairo.Context? ctx = null) { - center_x = w/2 - size_w/2; - center_y = h/2 - size_h/2; - - if (ctx != null) - ctx.translate (center_x, center_y); - } - - public void fill_parent () { - fill = true; - size_allocate.connect (on_size_changed); - on_size_changed (); - } - - public void on_size_changed () { - if (fill && pixbuf != null) - invalidate (); - } - - private bool on_draw (Widget widget, Cairo.Context ctx) { - var w = widget.get_allocated_width (); - var h = widget.get_allocated_height (); - if (halign == Align.START) { - w = pixbuf.width; - h = pixbuf.height; - } - - //Draw frame - ctx.set_source_rgba (1, 1, 1, 1); - Drawing.draw_rounded_rect (ctx, 0, 0, w, h, 4); - ctx.fill (); - - //Draw image, spinner or an error icon - if (pixbuf != null) { - var thumbnail = Drawing.make_pixbuf_thumbnail (pixbuf, w, h, fill); - Drawing.draw_rounded_rect (ctx, 0, 0, w, h, 4); - calc_center (w, h, thumbnail.width, thumbnail.height, ctx); - Gdk.cairo_set_source_pixbuf (ctx, thumbnail, 0, 0); - ctx.fill (); - } - else { - calc_center (w, h, 32, 32, ctx); - set_state_flags (StateFlags.CHECKED, false); //Y U NO SPIN - get_style_context ().render_activity (ctx, 0, 0, 32, 32); - } - - return false; - } - - private bool on_clicked (EventButton ev){ - switch (ev.button) { - case 3: - return open_menu (ev.button, ev.time); - case 1: - return Desktop.open_uri (attachment.url); - } - return false; - } - - public virtual bool open_menu (uint button, uint32 time) { - var menu = new Gtk.Menu (); - - if (editable && attachment != null) { - var item_remove = new Gtk.MenuItem.with_label (_("Remove")); - item_remove.activate.connect (() => destroy ()); - menu.add (item_remove); - menu.add (new Gtk.SeparatorMenuItem ()); - } - - var item_open_link = new Gtk.MenuItem.with_label (_("Open in Browser")); - item_open_link.activate.connect (() => Desktop.open_uri (attachment.url)); - var item_copy_link = new Gtk.MenuItem.with_label (_("Copy Link")); - item_copy_link.activate.connect (() => Desktop.copy (attachment.url)); - var item_download = new Gtk.MenuItem.with_label (_("Download")); - item_download.activate.connect (() => Desktop.download_file (attachment.url)); - menu.add (item_open_link); - if (attachment.type != "unknown") - menu.add (item_download); - menu.add (new Gtk.SeparatorMenuItem ()); - menu.add (item_copy_link); - - menu.show_all (); - menu.attach_widget = this; - menu.popup_at_pointer (); - return true; - } - -} diff --git a/src/Widgets/ImageToggleButton.vala b/src/Widgets/ImageToggleButton.vala deleted file mode 100644 index 7bdd4b8..0000000 --- a/src/Widgets/ImageToggleButton.vala +++ /dev/null @@ -1,22 +0,0 @@ -using Gtk; - -public class Tootle.Widgets.ImageToggleButton : ToggleButton { - - public Image icon; - public IconSize size; - - public ImageToggleButton (string icon_name, IconSize icon_size = IconSize.BUTTON) { - valign = Align.CENTER; - size = icon_size; - icon = new Image.from_icon_name (icon_name, icon_size); - add (icon); - show_all (); - } - - public void set_action () { - can_default = false; - set_focus_on_click (false); - get_style_context ().add_class (Gtk.STYLE_CLASS_FLAT); - } - -} diff --git a/src/Widgets/Notification.vala b/src/Widgets/Notification.vala index 099e3f0..0984d25 100644 --- a/src/Widgets/Notification.vala +++ b/src/Widgets/Notification.vala @@ -1,92 +1,34 @@ using Gtk; using Granite; -public class Tootle.Widgets.Notification : Grid { +public class Tootle.Widgets.Notification : Widgets.Status { - private API.Notification notification; + public API.Notification notification { get; construct set; } - public Separator? separator; - private Image image; - private Widgets.RichLabel label; - private Widgets.Status? status_widget; - private Button dismiss; + public Notification (API.Notification obj) { + API.Status status; + if (obj.status != null) + status = obj.status; + else + status = new API.Status.from_account (obj.account); - construct { - margin = 6; + Object (notification: obj, status: status); + this.kind = obj.kind; + } - image = new Image.from_icon_name ("notification-symbolic", IconSize.BUTTON); - image.margin_start = 32; - image.margin_end = 6; - label = new RichLabel (_("Unknown Notification")); - label.hexpand = true; - label.halign = Align.START; - dismiss = new Button.from_icon_name ("window-close-symbolic", IconSize.BUTTON); - dismiss.get_style_context ().add_class (Gtk.STYLE_CLASS_FLAT); - dismiss.tooltip_text = _("Dismiss"); - dismiss.clicked.connect (() => { + protected override void on_kind_changed () { + if (kind == null) + return; + + header_icon.visible = header_label.visible = true; + header_icon.icon_name = kind.get_icon (); + header_label.label = kind.get_desc (notification.account); + } + + protected override void on_status_removed (int64 id) { + if (id == notification.status.id) notification.dismiss (); - destroy (); - }); - - attach (image, 1, 2); - attach (label, 2, 2); - attach (dismiss, 3, 2); - show_all (); - } - - public Notification (API.Notification _notification) { - notification = _notification; - image.icon_name = notification.type.get_icon (); - label.set_label (notification.type.get_desc (notification.account)); - get_style_context ().add_class ("notification"); - - if (notification.status != null) - network.status_removed.connect (on_status_removed); - - destroy.connect (() => { - if (separator != null) - separator.destroy (); - separator = null; - status_widget = null; - }); - - if (notification.status != null){ - status_widget = new Widgets.Status (notification.status, true); - status_widget.is_notification = true; - status_widget.button_press_event.connect (status_widget.open); - status_widget.avatar.button_press_event.connect (status_widget.on_avatar_clicked); - attach (status_widget, 1, 3, 3, 1); - } - - if (notification.type == API.NotificationType.FOLLOW_REQUEST) { - var box = new Box (Orientation.HORIZONTAL, 6); - box.margin_start = 32 + 16 + 8; - var accept = new Button.with_label (_("Accept")); - box.pack_start (accept, false, false, 0); - var reject = new Button.with_label (_("Reject")); - box.pack_start (reject, false, false, 0); - - attach (box, 1, 3, 3, 1); - box.show_all (); - - accept.clicked.connect (() => { - destroy (); - notification.accept_follow_request (); - }); - reject.clicked.connect (() => { - destroy (); - notification.reject_follow_request (); - }); - } - } - - private void on_status_removed (int64 id) { - if (id == notification.status.id) { - if (notification.type == API.NotificationType.WATCHLIST) - notification.dismiss (); - - destroy (); - } - } + base.on_status_removed (id); + } } diff --git a/src/Widgets/RichLabel.vala b/src/Widgets/RichLabel.vala index 9d7fba4..f4c6d39 100644 --- a/src/Widgets/RichLabel.vala +++ b/src/Widgets/RichLabel.vala @@ -1,13 +1,22 @@ using Gtk; +using Gee; public class Tootle.Widgets.RichLabel : Label { - public weak API.Mention[]? mentions; + public weak ArrayList? mentions; + + construct { + use_markup = true; + xalign = 0; + wrap_mode = Pango.WrapMode.WORD_CHAR; + justify = Justification.LEFT; + single_line_mode = false; + set_line_wrap (true); + activate_link.connect (open_link); + } public RichLabel (string text) { set_label (text); - set_use_markup (true); - activate_link.connect (open_link); } public static string escape_entities (string content) { @@ -29,23 +38,16 @@ public class Tootle.Widgets.RichLabel : Label { base.set_markup (Html.simplify(escape_entities (text))); } - public void wrap_words () { - halign = Align.START; - single_line_mode = false; - set_line_wrap (true); - wrap_mode = Pango.WrapMode.WORD_CHAR; - justify = Justification.LEFT; - xalign = 0; - } - public bool open_link (string url) { + if ("tootle://" in url) + return false; + if (mentions != null){ - foreach (API.Mention mention in mentions) { - if (url == mention.url){ + mentions.@foreach (mention => { + if (url == mention.url) Views.Profile.open_from_id (mention.id); - return true; - } - } + return true; + }); } if ("/tags/" in url) { @@ -56,39 +58,37 @@ public class Tootle.Widgets.RichLabel : Label { } if ("@" in url || "tags" in url) { - var query = Soup.URI.encode (url, null); - var msg_url = "%s/api/v1/search?q=%s&resolve=true".printf (accounts.formal.instance, query); - var msg = new Soup.Message("GET", msg_url); - msg.priority = Soup.MessagePriority.HIGH; - network.inject (msg, Network.INJECT_TOKEN); - network.queue (msg, (sess, mess) => { - var root = network.parse (mess); - var accounts = root.get_array_member ("accounts"); - var statuses = root.get_array_member ("statuses"); - var hashtags = root.get_array_member ("hashtags"); + new Request.GET ("/api/v2/search") + .with_account (accounts.active) + .with_param ("resolve", "true") + .with_param ("q", Soup.URI.encode (url, null)) + .then ((sess, mess) => { + var root = network.parse (mess); + var accounts = root.get_array_member ("accounts"); + var statuses = root.get_array_member ("statuses"); + var hashtags = root.get_array_member ("hashtags"); - if (accounts.get_length () > 0) { - var item = accounts.get_object_element (0); - var obj = API.Account.parse (item); - window.open_view (new Views.Profile (obj)); - } - else if (statuses.get_length () > 0) { - var item = accounts.get_object_element (0); - var obj = API.Status.parse (item); - window.open_view (new Views.ExpandedStatus (obj)); - } - else if (hashtags.get_length () > 0) { - var item = accounts.get_object_element (0); - var obj = API.Tag.parse (item); - window.open_view (new Views.Hashtag (obj.name)); - } - else { - Desktop.open_uri (url); - } - - }, (status, reason) => { - open_link_fallback (url, reason); - }); + if (accounts.get_length () > 0) { + var item = accounts.get_object_element (0); + var obj = new API.Account (item); + window.open_view (new Views.Profile (obj)); + } + else if (statuses.get_length () > 0) { + var item = accounts.get_object_element (0); + var obj = new API.Status (item); + window.open_view (new Views.ExpandedStatus (obj)); + } + else if (hashtags.get_length () > 0) { + var item = accounts.get_object_element (0); + var obj = new API.Tag (item); + window.open_view (new Views.Hashtag (obj.name)); + } + else { + Desktop.open_uri (url); + } + }) + .on_error ((status, reason) => open_link_fallback (url, reason)) + .exec (); } else { Desktop.open_uri (url); @@ -97,18 +97,9 @@ public class Tootle.Widgets.RichLabel : Label { } public bool open_link_fallback (string url, string reason) { - warning ("Can't resolve url: " + url); - warning ("Reason: " + reason); - - var toast = window.toast; - toast.title = reason; - toast.set_default_action (_("Open in Browser")); - ulong signal_id = 0; - signal_id = toast.default_action.connect (() => { - Desktop.open_uri (url); - toast.disconnect (signal_id); - }); - toast.send_notification (); + warning (@"Can't resolve url: $url"); + warning (@"Reason: $reason"); + Desktop.open_uri (url); return true; } diff --git a/src/Widgets/Status.vala b/src/Widgets/Status.vala index 361df85..e1e02de 100644 --- a/src/Widgets/Status.vala +++ b/src/Widgets/Status.vala @@ -1,251 +1,191 @@ using Gtk; using Gdk; -using Granite; +[GtkTemplate (ui = "/com/github/bleakgrey/tootle/ui/widgets/status.ui")] public class Tootle.Widgets.Status : EventBox { - public API.Status status; - public bool is_notification = false; - public const int AVATAR_SIZE = 32; + public API.Status status { get; construct set; } + public API.NotificationType? kind { get; construct set; } - public Separator? separator; - public Granite.Widgets.Avatar avatar; + [GtkChild] + protected Separator separator; + [GtkChild] protected Grid grid; - protected Widgets.RichLabel title_user; - protected Label title_date; - protected Label title_acct; - public Revealer revealer; - protected Widgets.RichLabel content_label; - protected Widgets.RichLabel? content_spoiler; - protected Button? spoiler_button; - protected Box title_box; - protected Widgets.AttachmentGrid attachments; - protected Image pin_indicator; - protected Box counters; - protected Label replies; - protected Label reblogs; - protected Label favorites; - protected Widgets.ImageToggleButton reblog; - protected Widgets.ImageToggleButton favorite; - protected Widgets.ImageToggleButton reply; + [GtkChild] + protected Image header_icon; + [GtkChild] + protected Widgets.RichLabel header_label; + + [GtkChild] + public Widgets.Avatar avatar; + [GtkChild] + protected Widgets.RichLabel handle_label; + [GtkChild] + protected Label date_label; + [GtkChild] + protected Image pin_indicator; + [GtkChild] + public Revealer revealer; + [GtkChild] + protected Widgets.RichLabel content; + [GtkChild] + protected Widgets.RichLabel revealer_content; + [GtkChild] + protected Widgets.Attachment.Box attachments; + + [GtkChild] + protected Box actions; + [GtkChild] + protected Button reply_button; + [GtkChild] + protected ToggleButton reblog_button; + [GtkChild] + protected Image reblog_icon; + [GtkChild] + protected ToggleButton favorite_button; + + protected string escaped_spoiler { + owned get { + if (status.formal.has_spoiler) { + var text = Html.simplify (status.formal.spoiler_text ?? ""); + var label = _("[ Toggle content ]"); + text += @" $label"; + return text; + } + else + return Html.simplify (status.formal.content); + } + } + + protected string escaped_content { + owned get { + return status.formal.has_spoiler ? Html.simplify (status.formal.content) : ""; + } + } + + protected string handle { + owned get { + var name = Html.simplify (status.formal.account.display_name); + var handle = Html.simplify (status.formal.account.acct); + return @"$name @$handle"; + } + } + + protected string date { + owned get { + var timeval = GLib.TimeVal (); + GLib.DateTime? date = null; + if (timeval.from_iso8601 (status.formal.created_at)) + date = new GLib.DateTime.from_timeval_local (timeval); + + return Granite.DateTime.get_relative_datetime (date); + } + } construct { - grid = new Grid (); - - avatar = new Granite.Widgets.Avatar.with_default_icon (AVATAR_SIZE); - avatar.valign = Align.START; - avatar.margin_top = 6; - avatar.margin_start = 6; - avatar.margin_end = 6; - - title_box = new Box (Orientation.HORIZONTAL, 6); - title_box.hexpand = true; - title_box.margin_end = 12; - title_box.margin_top = 6; - - title_user = new Widgets.RichLabel (""); - title_box.pack_start (title_user, false, false, 0); - - title_acct = new Label (""); - title_acct.opacity = 0.5; - title_acct.ellipsize = Pango.EllipsizeMode.END; - title_box.pack_start (title_acct, false, false, 0); - - title_date = new Label (""); - title_date.opacity = 0.5; - title_date.ellipsize = Pango.EllipsizeMode.END; - title_box.pack_end (title_date, false, false, 0); - title_box.show_all (); - - pin_indicator = new Image.from_icon_name ("view-pin-symbolic", IconSize.MENU); - pin_indicator.opacity = 0.5; - title_box.pack_end (pin_indicator, false, false, 0); - - content_label = new Widgets.RichLabel (""); - content_label.wrap_words (); - - attachments = new Widgets.AttachmentGrid (); - - var revealer_box = new Box (Orientation.VERTICAL, 6); - revealer_box.margin_end = 12; - revealer_box.add (content_label); - revealer_box.add (attachments); - revealer = new Revealer (); - revealer.reveal_child = true; - revealer.add (revealer_box); - - reblogs = new Label ("0"); - favorites = new Label ("0"); - replies = new Label ("0"); - - reblog = new Widgets.ImageToggleButton ("media-playlist-repeat-symbolic"); - reblog.set_action (); - reblog.tooltip_text = _("Boost"); - reblog.toggled.connect (() => { - if (reblog.sensitive) - status.get_formal ().set_reblogged (reblog.get_active ()); - }); - favorite = new Widgets.ImageToggleButton ("emblem-favorite-symbolic"); - favorite.set_action (); - favorite.tooltip_text = _("Favorite"); - favorite.toggled.connect (() => { - if (favorite.sensitive) - status.get_formal ().set_favorited (favorite.get_active ()); - }); - reply = new Widgets.ImageToggleButton ("mail-replied-symbolic"); - reply.set_action (); - reply.tooltip_text = _("Reply"); - reply.toggled.connect (() => { - reply.set_active (false); - Dialogs.Compose.reply (status.get_formal ()); - }); - - counters = new Box (Orientation.HORIZONTAL, 6); - counters.margin_top = 6; - counters.margin_bottom = 6; - counters.add (reblog); - counters.add (reblogs); - counters.add (favorite); - counters.add (favorites); - counters.add (reply); - counters.add (replies); - counters.show_all (); - - add (grid); - grid.attach (avatar, 1, 1, 1, 4); - grid.attach (title_box, 2, 2, 1, 1); - grid.attach (revealer, 2, 4, 1, 1); - grid.attach (counters, 2, 5, 1, 1); - show_all (); - button_press_event.connect (on_clicked); - } + streams.status_removed.connect (on_status_removed); + content.activate_link.connect (on_toggle_spoiler); + notify["kind"].connect (on_kind_changed); - public Status (API.Status status, bool notification = false) { - this.status = status; - this.status.updated.connect (rebind); - is_notification = notification; - - if (status.reblog != null) { - var image = new Image.from_icon_name("media-playlist-repeat-symbolic", IconSize.BUTTON); - image.halign = Align.END; - image.margin_end = 6; - image.margin_top = 6; - image.show (); - - var label_text = API.NotificationType.REBLOG_REMOTE_USER.get_desc (status.account); - var label = new Widgets.RichLabel (label_text); - label.halign = Align.START; - label.margin_top = 6; - label.show (); - - grid.attach (image, 1, 0, 1, 1); - grid.attach (label, 2, 0, 2, 1); + if (kind == null) { + if (status.reblog != null) + kind = API.NotificationType.REBLOG_REMOTE_USER; } - if (status.has_spoiler ()) { - revealer.reveal_child = false; - var spoiler_box = new Box (Orientation.HORIZONTAL, 6); - spoiler_box.margin_end = 12; + status.formal.bind_property ("favorited", favorite_button, "active", BindingFlags.SYNC_CREATE); + favorite_button.clicked.connect (() => { + status.action (status.formal.favorited ? "unfavourite" : "favourite"); + }); - var spoiler_button_text = _("Toggle content"); - if (status.sensitive && status.attachments != null) { - spoiler_button = new Button.from_icon_name ("mail-attachment-symbolic", IconSize.BUTTON); - spoiler_button.label = spoiler_button_text; - spoiler_button.always_show_image = true; - content_label.margin_top = 6; - } - else { - spoiler_button = new Button.with_label (spoiler_button_text); - } - spoiler_button.hexpand = true; - spoiler_button.halign = Align.END; - spoiler_button.clicked.connect (() => revealer.set_reveal_child (!revealer.child_revealed)); + status.formal.bind_property ("reblogged", reblog_button, "active", BindingFlags.SYNC_CREATE); + reblog_button.clicked.connect (() => { + status.action (status.formal.reblogged ? "unreblog" : "reblog"); + }); - var spoiler_text = _("[ This post contains sensitive content ]"); - if (status.spoiler_text != null) - spoiler_text = status.spoiler_text; - content_spoiler = new Widgets.RichLabel (spoiler_text); - content_spoiler.wrap_words (); + reply_button.clicked.connect (() => new Dialogs.Compose.reply (status)); - spoiler_box.add (content_spoiler); - spoiler_box.add (spoiler_button); - spoiler_box.show_all (); - grid.attach (spoiler_box, 2, 3, 1, 1); + bind_property ("escaped-spoiler", content, "label", BindingFlags.SYNC_CREATE); + bind_property ("escaped-content", revealer_content, "label", BindingFlags.SYNC_CREATE); + status.formal.account.bind_property ("avatar", avatar, "url", BindingFlags.SYNC_CREATE); + bind_property ("handle", handle_label, "label", BindingFlags.SYNC_CREATE); + bind_property ("date", date_label, "label", BindingFlags.SYNC_CREATE); + status.formal.bind_property ("pinned", pin_indicator, "visible", BindingFlags.SYNC_CREATE); + status.formal.bind_property ("replies-count", reply_button, "label", BindingFlags.SYNC_CREATE, (b, src, ref target) => { + target.set_string (((int64)src).to_string ()); + return true; + }); + status.formal.bind_property ("reblogs-count", reblog_button, "label", BindingFlags.SYNC_CREATE, (b, src, ref target) => { + target.set_string (((int64)src).to_string ()); + return true; + }); + status.bind_property ("favourites-count", favorite_button, "label", BindingFlags.SYNC_CREATE, (b, src, ref target) => { + target.set_string (((int64)src).to_string ()); + return true; + }); + + status.formal.bind_property ("has_spoiler", revealer_content, "visible", BindingFlags.SYNC_CREATE); + revealer.reveal_child = !status.formal.has_spoiler; + + if (status.formal.visibility == API.Visibility.DIRECT) { + reblog_icon.icon_name = status.formal.visibility.get_icon (); + reblog_button.sensitive = false; + reblog_button.tooltip_text = _("This post can't be boosted"); } - if (!is_notification && status.get_formal ().attachments != null) - attachments.pack (status.get_formal ().attachments); - else + if (status.id <= 0) { + actions.destroy (); + date_label.destroy (); + content.single_line_mode = true; + content.lines = 2; + content.ellipsize = Pango.EllipsizeMode.END; + button_press_event.connect (on_avatar_clicked); + } + else { + button_press_event.connect (open); + } + + if (!attachments.populate (status.formal.attachments) || status.id <= 0) { attachments.destroy (); - - destroy.connect (() => { - avatar.show_default (AVATAR_SIZE); - if (separator != null) - separator.destroy (); - }); - - network.status_removed.connect (id => { - if (id == status.id) - destroy (); - }); - - rebind (); - } - - public void highlight () { - grid.get_style_context ().add_class ("card"); - grid.margin_bottom = 6; - } - - public int get_avatar_size () { - return AVATAR_SIZE * get_style_context ().get_scale (); - } - - public void rebind () { - var formal = status.get_formal (); - - title_user.set_label ("%s".printf ((formal.account.display_name))); - title_acct.label = "@" + formal.account.acct; - content_label.set_label (formal.content); - content_label.mentions = formal.mentions; - pin_indicator.visible = status.pinned; - - var datetime = parse_date_iso8601 (formal.created_at); - title_date.label = Granite.DateTime.get_relative_datetime (datetime); - - reblogs.label = formal.reblogs_count.to_string (); - favorites.label = formal.favourites_count.to_string (); - replies.label = formal.replies_count.to_string (); - - reblog.sensitive = false; - reblog.active = formal.reblogged; - reblog.sensitive = true; - favorite.sensitive = false; - favorite.active = formal.favorited; - favorite.sensitive = true; - - if (formal.visibility == API.StatusVisibility.DIRECT) { - reblog.sensitive = false; - reblog.icon.icon_name = formal.visibility.get_icon (); - reblog.tooltip_text = _("This post can't be boosted"); } - - network.load_avatar (formal.account.avatar, avatar, get_avatar_size ()); } - private GLib.DateTime? parse_date_iso8601 (string date) { - var timeval = GLib.TimeVal (); - if (timeval.from_iso8601 (date)) - return new GLib.DateTime.from_timeval_local (timeval); + public Status (API.Status status, API.NotificationType? _kind = null) { + Object (status: status, kind: _kind); + } - return null; + ~Status () { + button_press_event.disconnect (on_clicked); + streams.status_removed.disconnect (on_status_removed); + notify["kind"].disconnect (on_kind_changed); + } + + protected virtual void on_status_removed (int64 id) { + if (id == status.id) + destroy (); + } + + protected bool on_toggle_spoiler (string uri) { + if (uri == "tootle://toggle") { + revealer.reveal_child = !revealer.reveal_child; + return true; + } + return false; + } + + protected virtual void on_kind_changed () { + header_icon.visible = header_label.visible = (kind != null); + if (kind == null) + return; + + header_icon.icon_name = kind.get_icon (); + header_label.label = kind.get_desc (status.account); } public bool on_avatar_clicked (EventButton ev) { if (ev.button == 1) { - var view = new Views.Profile (status.get_formal ().account); + var view = new Views.Profile (status.formal.account); return window.open_view (view); } return false; @@ -253,7 +193,7 @@ public class Tootle.Widgets.Status : EventBox { public bool open (EventButton ev) { if (ev.button == 1) { - var formal = status.get_formal (); + var formal = status.formal; var view = new Views.ExpandedStatus (formal); return window.open_view (view); } @@ -264,30 +204,26 @@ public class Tootle.Widgets.Status : EventBox { if (ev.button == 3) return open_menu (ev.button, ev.time); return false; - } public virtual bool open_menu (uint button, uint32 time) { var menu = new Gtk.Menu (); - var is_muted = status.muted; - var is_pinned = status.pinned; - - var item_muting = new Gtk.MenuItem.with_label (is_muted ? _("Unmute Conversation") : _("Mute Conversation")); - item_muting.activate.connect (() => status.set_muted (!is_muted)); var item_open_link = new Gtk.MenuItem.with_label (_("Open in Browser")); - item_open_link.activate.connect (() => Desktop.open_uri (status.get_formal ().url)); + item_open_link.activate.connect (() => Desktop.open_uri (status.formal.url)); var item_copy_link = new Gtk.MenuItem.with_label (_("Copy Link")); - item_copy_link.activate.connect (() => Desktop.copy (status.get_formal ().url)); + item_copy_link.activate.connect (() => Desktop.copy (status.formal.url)); var item_copy = new Gtk.MenuItem.with_label (_("Copy Text")); item_copy.activate.connect (() => { - var sanitized = Html.remove_tags (status.get_formal ().content); + var sanitized = Html.remove_tags (status.formal.content); Desktop.copy (sanitized); }); if (status.is_owned ()) { - var item_pin = new Gtk.MenuItem.with_label (is_pinned ? _("Unpin from Profile") : _("Pin on Profile")); - item_pin.activate.connect (() => status.set_pinned (!is_pinned)); + var item_pin = new Gtk.MenuItem.with_label (status.pinned ? _("Unpin from Profile") : _("Pin on Profile")); + item_pin.activate.connect (() => { + status.action (status.formal.pinned ? "unpin" : "pin"); + }); menu.add (item_pin); var item_delete = new Gtk.MenuItem.with_label (_("Delete")); @@ -295,14 +231,17 @@ public class Tootle.Widgets.Status : EventBox { menu.add (item_delete); var item_redraft = new Gtk.MenuItem.with_label (_("Redraft")); - item_redraft.activate.connect (() => Dialogs.Compose.redraft (status.get_formal ())); + item_redraft.activate.connect (() => new Dialogs.Compose.redraft (status.formal)); menu.add (item_redraft); menu.add (new SeparatorMenuItem ()); } - if (is_notification) - menu.add (item_muting); + // if (is_notification) { + // var item_muting = new Gtk.MenuItem.with_label (status.muted ? _("Unmute Conversation") : _("Mute Conversation")); + // item_muting.activate.connect (() => status.update_muted (!is_muted) ); + // menu.add (item_muting); + // } menu.add (item_open_link); menu.add (new SeparatorMenuItem ()); diff --git a/src/Widgets/VisibilityPopover.vala b/src/Widgets/VisibilityPopover.vala new file mode 100644 index 0000000..5072a61 --- /dev/null +++ b/src/Widgets/VisibilityPopover.vala @@ -0,0 +1,48 @@ +using Gtk; + +public class Tootle.Widgets.VisibilityPopover: Popover { + + protected RadioButton? group_owner; + protected MenuButton button; + protected int i = 0; + + public API.Visibility selected { get; set; default = API.Visibility.PUBLIC; } + + protected Box box; + + construct { + var box = new Box (Orientation.VERTICAL, 8); + box.margin = 8; + box.show (); + add (box); + + foreach (API.Visibility item in API.Visibility.all ()){ + var radio = new RadioButton.from_widget (group_owner); + if (group_owner == null) + group_owner = radio; + + box.pack_start (radio, true, true, 0); + radio.toggled.connect (() => { + selected = item; + popdown (); + }); + + var label = new Label (@"$(item.get_name())\n$(item.get_desc())"); + label.use_markup = true; + label.xalign = 0; + label.margin_start = 8; + radio.add (label); + + i++; + } + + box.show_all (); + } + + public VisibilityPopover.with_button (MenuButton w) { + button = w; + button.popover = this; + } + +} +

    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 + + + + + True + False + dialog-warning-symbolic + + + True + False + mail-attachment-symbolic + + + True + False + face-smile-symbolic + + + diff --git a/data/ui/dialogs/main.ui b/data/ui/dialogs/main.ui new file mode 100644 index 0000000..9a2b527 --- /dev/null +++ b/data/ui/dialogs/main.ui @@ -0,0 +1,82 @@ + + + + + + diff --git a/data/ui/views/base.ui b/data/ui/views/base.ui new file mode 100644 index 0000000..e187792 --- /dev/null +++ b/data/ui/views/base.ui @@ -0,0 +1,155 @@ + + + + + + diff --git a/data/ui/views/new_account.ui b/data/ui/views/new_account.ui new file mode 100644 index 0000000..c2c08cc --- /dev/null +++ b/data/ui/views/new_account.ui @@ -0,0 +1,224 @@ + + + + + + 350 + 400 + True + False + center + center + 12 + 12 + vertical + 12 + + + True + False + 12 + 12 + True + + + True + True + True + True + + + True + False + 8 + 8 + 8 + 8 + go-next-symbolic + + + + + + True + False + end + 1 + + + + + 0 + 2 + + + + + True + False + True + True + slide-left-right + + + True + False + 12 + 12 + True + True + 6 + 6 + + + True + False + True + Which Instance? + + center + True + + + + 0 + 0 + 2 + + + + + True + False + end + start + <a href="https://joinmastodon.org/">What's an instance?</a> + True + right + False + + + 1 + 2 + + + + + True + True + True + True + False + instance.domain + url + + + 0 + 1 + 2 + + + + + + + + + + True + False + 12 + 12 + True + True + 6 + 6 + + + True + False + True + Grant Account Access + + center + True + + + + 0 + 0 + 2 + + + + + True + True + True + edit-paste-symbolic + Paste + Paste your authorization code here + url + + + 0 + 1 + 2 + + + + + True + True + end + start + <a href="">Try another instance?</a> + True + right + False + + + 1 + 2 + + + + + + + + page1 + page1 + 1 + + + + + 0 + 1 + + + + + True + False + True + True + 128 + com.github.bleakgrey.tootle + 6 + + + 0 + 0 + + + + diff --git a/data/ui/views/profile_header.ui b/data/ui/views/profile_header.ui new file mode 100644 index 0000000..2b25001 --- /dev/null +++ b/data/ui/views/profile_header.ui @@ -0,0 +1,525 @@ + + + + + + False + + + True + False + 8 + 8 + 8 + 8 + vertical + 8 + True + + + Posts + True + True + False + True + True + + + False + True + 0 + + + + + Posts and Replies + True + True + False + True + True + filter_all + + + False + True + 1 + + + + + Media + True + True + False + True + True + filter_all + + + False + True + 2 + + + + + + + True + False + + + True + False + __glade_unnamed_3 + True + + + + + True + False + __glade_unnamed_8 + True + + + + + True + False + __glade_unnamed_9 + True + + + + + 400 + True + False + 8 + 8 + 8 + 8 + 8 + 8 + + + True + False + 0 + in + + + True + False + none + False + + + True + False + False + False + + + True + True + False + 8 + 8 + 8 + 8 + True + 25 + + + + + + + + + + + + 1 + 2 + + + + + True + False + 0 + in + + + True + False + none + False + + + True + False + False + False + + + True + False + 8 + 8 + 8 + 8 + 8 + + + 40 + True + False + True + 32 + + + True + True + False + True + True + + + True + False + 0 Posts + True + + + + + + True + True + 0 + + + + + True + True + False + True + posts_tab + + + True + False + 0 Follows + True + + + + + + True + True + 1 + + + + + True + True + False + True + posts_tab + + + True + False + 0 Followers + True + + + + + + True + True + 2 + + + + + + False + True + 0 + + + + + True + False + vertical + + + False + True + 1 + + + + + True + True + True + none + True + filter_popover + + + True + False + view-more-symbolic + + + + + + False + True + 2 + + + + + + + + + + + + + + 1 + 3 + + + + + True + False + 0 + in + + + True + False + none + False + + + 100 + 80 + True + False + False + False + + + True + False + 8 + 8 + 8 + 8 + 8 + + + True + 8 + 8 + 8 + 8 + 128 + + + False + True + 0 + + + + + True + False + center + 8 + 8 + vertical + 8 + + + True + True + + + False + True + 0 + + + + + True + True + + + False + True + 1 + + + + + True + True + 2 + + + + + + + + + True + False + False + False + + + True + False + + + + + + + True + False + False + False + + + True + False + 8 + 8 + 8 + 8 + 8 + + + True + False + False + 0 + + + True + True + 0 + + + + + True + False + False + + + Follow + True + True + True + + + False + True + 0 + + + + + True + True + True + True + options + False + + + + + + False + True + 1 + + + + + + False + True + 1 + + + + + + + + + + + 1 + 1 + + + + + + + + + + + + + + + + + + + diff --git a/data/ui/widgets/accounts_button.ui b/data/ui/widgets/accounts_button.ui new file mode 100644 index 0000000..41253dd --- /dev/null +++ b/data/ui/widgets/accounts_button.ui @@ -0,0 +1,240 @@ + + + + + + False + + + True + False + False + False + slide-left-right + True + + + True + False + 4 + vertical + 2 + + + True + True + True + + True + accounts + + + False + True + 0 + + + + + + + + True + False + + + False + True + 2 + + + + + True + True + True + Favorites + + + False + True + 3 + + + + + True + True + True + Conversations + + + False + True + 4 + + + + + True + True + Watchlist + + + False + True + 5 + + + + + True + False + + + False + True + 6 + + + + + True + True + True + Refresh + + + False + True + 7 + + + + + True + True + True + Search + + + False + True + 8 + + + + + True + True + True + Preferences + + + False + True + 9 + + + + + menu + page0 + + + + + 400 + True + False + 4 + vertical + 6 + + + True + True + True + Accounts + menu + True + True + + + False + True + 0 + + + + + True + True + True + in + 300 + True + + + True + False + + + True + False + + + + + + + False + True + 1 + + + + + accounts + page1 + 1 + + + + + + + diff --git a/data/ui/widgets/accounts_button_item.ui b/data/ui/widgets/accounts_button_item.ui new file mode 100644 index 0000000..3f87153 --- /dev/null +++ b/data/ui/widgets/accounts_button_item.ui @@ -0,0 +1,113 @@ + + + + + + diff --git a/data/ui/widgets/status.ui b/data/ui/widgets/status.ui new file mode 100644 index 0000000..4316590 --- /dev/null +++ b/data/ui/widgets/status.ui @@ -0,0 +1,293 @@ + + + + + + True + False + emblem-favorite-symbolic + + + True + False + mail-replied-symbolic + + + True + False + media-playlist-repeat-symbolic + + + diff --git a/install.sh b/install.sh new file mode 100755 index 0000000..8db4601 --- /dev/null +++ b/install.sh @@ -0,0 +1,4 @@ +meson build --prefix=/usr +cd build +sudo ninja install +com.github.bleakgrey.tootle diff --git a/meson.build b/meson.build index 0776747..4664b6a 100644 --- a/meson.build +++ b/meson.build @@ -3,6 +3,9 @@ project('com.github.bleakgrey.tootle', 'vala', 'c') gnome = import('gnome') i18n = import('i18n') +#add_project_arguments(['--disable-warnings', '-g', '-X', '-rdynamic'], language: 'vala') +add_project_arguments(['-g', '-rdynamic', '-export-dynamic'], language: 'c') + add_global_arguments([ '-DGETTEXT_PACKAGE="@0@"'.format(meson.project_name()) ], @@ -10,7 +13,7 @@ add_global_arguments([ ) asresources = gnome.compile_resources( - 'as-resources', 'data/' + meson.project_name() + '.gresource.xml', + 'as-resources', 'data/gresource.xml', source_dir: 'data', c_name: 'as' ) @@ -18,42 +21,48 @@ asresources = gnome.compile_resources( executable( meson.project_name(), asresources, + + 'src/Stacktrace.vala', #TODO: move into a separate lib + + 'src/Build.vala', 'src/Application.vala', 'src/Desktop.vala', 'src/Drawing.vala', 'src/Html.vala', - 'src/Settings.vala', - 'src/Accounts.vala', - 'src/ImageCache.vala', - 'src/Network.vala', - 'src/Watchlist.vala', - 'src/Notificator.vala', + 'src/Utils.vala', + 'src/Request.vala', 'src/InstanceAccount.vala', + 'src/Services/Streams.vala', + 'src/Services/Settings.vala', + 'src/Services/Accounts.vala', + 'src/Services/IAccountListener.vala', + 'src/Services/IStreamListener.vala', + 'src/Services/Cache.vala', + 'src/Services/Network.vala', 'src/API/Account.vala', 'src/API/Relationship.vala', 'src/API/Mention.vala', 'src/API/Tag.vala', 'src/API/Status.vala', - 'src/API/StatusVisibility.vala', + 'src/API/Visibility.vala', 'src/API/Notification.vala', 'src/API/NotificationType.vala', 'src/API/Attachment.vala', + 'src/Widgets/Avatar.vala', + 'src/Widgets/AccountsButton.vala', 'src/Widgets/AlignedLabel.vala', 'src/Widgets/RichLabel.vala', - 'src/Widgets/ImageToggleButton.vala', - 'src/Widgets/AccountsButton.vala', 'src/Widgets/Status.vala', - 'src/Widgets/Account.vala', 'src/Widgets/Notification.vala', - 'src/Widgets/ImageAttachment.vala', - 'src/Widgets/AttachmentGrid.vala', + 'src/Widgets/VisibilityPopover.vala', + 'src/Widgets/Attachment/Box.vala', + 'src/Widgets/Attachment/Item.vala', 'src/Dialogs/ISavedWindow.vala', 'src/Dialogs/MainWindow.vala', - 'src/Dialogs/NewAccount.vala', 'src/Dialogs/Compose.vala', 'src/Dialogs/Preferences.vala', - 'src/Dialogs/WatchlistEditor.vala', - 'src/Views/Abstract.vala', + 'src/Views/Base.vala', + 'src/Views/NewAccount.vala', 'src/Views/Timeline.vala', 'src/Views/Home.vala', 'src/Views/Local.vala', @@ -62,8 +71,6 @@ executable( 'src/Views/Direct.vala', 'src/Views/ExpandedStatus.vala', 'src/Views/Profile.vala', - 'src/Views/Followers.vala', - 'src/Views/Following.vala', 'src/Views/Favorites.vala', 'src/Views/Search.vala', 'src/Views/Hashtag.vala', @@ -73,9 +80,12 @@ executable( dependency('gee-0.8', version: '>=0.8.5'), dependency('granite', version: '>=5.2.0'), dependency('json-glib-1.0'), - dependency('libsoup-2.4') + dependency('libsoup-2.4'), + + meson.get_compiler('vala').find_library('linux', required: true), #Required by Stacktrace.vala ], - install: true + install: true, + link_args: '-export-dynamic' ) subdir('data') diff --git a/po/POTFILES b/po/POTFILES index e788f8c..6f34dd4 100644 --- a/po/POTFILES +++ b/po/POTFILES @@ -1,47 +1,53 @@ data/com.github.bleakgrey.tootle.desktop.in data/com.github.bleakgrey.tootle.appdata.xml.in -src/Accounts.vala +src/Build.vala src/Application.vala src/Desktop.vala +src/Drawing.vala src/Html.vala -src/ImageCache.vala +src/Utils.vala +src/Request.vala src/InstanceAccount.vala -src/MainWindow.vala -src/Network.vala -src/Watchlist.vala -src/Notificator.vala -src/Settings.vala +src/Services/Notificator.vala +src/Services/Settings.vala +src/Services/Accounts.vala +src/Services/IAccountListener.vala +src/Services/Cache.vala +src/Services/Network.vala +src/Services/Watchlist.vala src/API/Account.vala -src/API/Attachment.vala +src/API/Relationship.vala src/API/Mention.vala +src/API/Tag.vala +src/API/Status.vala +src/API/Visibility.vala src/API/Notification.vala src/API/NotificationType.vala -src/API/Relationship.vala -src/API/Status.vala -src/API/StatusVisibility.vala +src/API/Attachment.vala +src/Widgets/Avatar.vala src/Widgets/AccountsButton.vala -src/Widgets/AccountWidget.vala src/Widgets/AlignedLabel.vala -src/Widgets/AttachmentBox.vala -src/Widgets/AttachmentWidget.vala -src/Widgets/ImageToggleButton.vala -src/Widgets/NotificationWidget.vala src/Widgets/RichLabel.vala -src/Widgets/StatusWidget.vala -src/Dialogs/NewAccountDialog.vala -src/Dialogs/PostDialog.vala -src/Dialogs/SettingsDialog.vala -src/Dialogs/WatchlistDialog.vala -src/Views/AbstractView.vala -src/Views/AccountView.vala -src/Views/FavoritesView.vala -src/Views/DirectView.vala -src/Views/FederatedView.vala -src/Views/FollowersView.vala -src/Views/FollowingView.vala -src/Views/HomeView.vala -src/Views/LocalView.vala -src/Views/NotificationsView.vala -src/Views/SearchView.vala -src/Views/StatusView.vala -src/Views/TimelineView.vala +src/Widgets/Status.vala +src/Widgets/Notification.vala +src/Widgets/VisibilityPopover.vala +src/Widgets/Attachment/Box.vala +src/Widgets/Attachment/Item.vala +src/Dialogs/ISavedWindow.vala +src/Dialogs/MainWindow.vala +src/Dialogs/Compose.vala +src/Dialogs/Preferences.vala +src/Dialogs/WatchlistEditor.vala +src/Views/Base.vala +src/Views/NewAccount.vala +src/Views/Timeline.vala +src/Views/Home.vala +src/Views/Local.vala +src/Views/Federated.vala +src/Views/Notifications.vala +src/Views/Direct.vala +src/Views/ExpandedStatus.vala +src/Views/Profile.vala +src/Views/Favorites.vala +src/Views/Search.vala +src/Views/Hashtag.vala diff --git a/po/com.github.bleakgrey.tootle.pot b/po/com.github.bleakgrey.tootle.pot index fad4e60..622feac 100644 --- a/po/com.github.bleakgrey.tootle.pot +++ b/po/com.github.bleakgrey.tootle.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: com.github.bleakgrey.tootle\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-10-30 19:17+0300\n" +"POT-Creation-Date: 2019-09-16 16:00+0300\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,7 +18,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" #: data/com.github.bleakgrey.tootle.desktop.in:4 -#: data/com.github.bleakgrey.tootle.appdata.xml.in:7 src/MainWindow.vala:68 +#: data/com.github.bleakgrey.tootle.appdata.xml.in:7 msgid "Tootle" msgstr "" @@ -42,366 +42,300 @@ msgstr "" #: data/com.github.bleakgrey.tootle.appdata.xml.in:11 msgid "" "Tootle is a client for the world’s largest free, open-source, decentralized " -"microblogging network with real-time notifications and multiple accounts " -"support." +"microblogging network with real-time notifications and support for multiple " +"accounts." msgstr "" #: data/com.github.bleakgrey.tootle.appdata.xml.in:14 msgid "" -"Mastodon is lovely crafted with power and speed in mind, resulting in a " -"free, independent and popular alternative to the centralized social networks." +"Mastodon is lovingly crafted with power and speed in mind, resulting in a " +"free, independent, and popular alternative to the centralized social " +"networks." msgstr "" #: data/com.github.bleakgrey.tootle.appdata.xml.in:17 msgid "" -"Anyone can run a server of Mastodon. Each server hosts individual user " -"accounts, the content they produce, and the content they are subscribed. " -"Every user can follow each other and share their posts regardless of their " -"server." +"Anyone can run a Mastodon server. Each server hosts individual user " +"accounts, the content they produce, and the content to which they are " +"subscribed. Every user can follow each other and share their posts " +"regardless of their server." msgstr "" #: data/com.github.bleakgrey.tootle.appdata.xml.in:26 msgid "bleak_grey" msgstr "" -#: src/Desktop.vala:10 src/API/Account.vala:123 src/API/Account.vala:142 -#: src/API/Account.vala:161 src/Dialogs/NewAccountDialog.vala:102 +#: data/com.github.bleakgrey.tootle.appdata.xml.in:80 +msgid "Added Watchlist" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:81 +msgid "Added Redraft support" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:82 +msgid "Added Pinning support" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:83 +msgid "Added Simplified Chinese and German translations" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:84 +msgid "Added --hidden Start Flag" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:85 +msgid "Added Shortcuts and Back mouse button support" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:86 +msgid "Changed Notifications screen behavior" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:87 +#: data/com.github.bleakgrey.tootle.appdata.xml.in:102 +msgid "Fixed minor bugs" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:94 +msgid "Added Russian, French and Polish translations" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:95 +msgid "Added Direct timeline" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:96 +msgid "Added support for custom character limit" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:97 +msgid "Added support for streaming all timelines" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:98 +msgid "Added tooltips for image attachments" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:99 +msgid "Added remove action for attachments" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:100 +msgid "Changed behavior for mentioning users" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:101 +msgid "Changed behavior for missing image attachments" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:109 +msgid "Initial release" +msgstr "" + +#: src/Desktop.vala:10 msgid "Error" msgstr "" -#: src/Desktop.vala:46 +#: src/Desktop.vala:47 msgid "Media downloaded" msgstr "" -#: src/MainWindow.vala:48 -msgid "Back" -msgstr "" - -#: src/MainWindow.vala:54 src/Dialogs/PostDialog.vala:29 -msgid "Toot" -msgstr "" - -#: src/Network.vala:58 -msgid "TLS Error" -msgstr "" - -#: src/Network.vala:58 -msgid "Can't ensure secure connection: " -msgstr "" - -#: src/Network.vala:66 +#: src/Services/Accounts.vala:31 #, c-format -msgid "Error: %s" +msgid "" +"This instance has invalidated this session. Please sign in again.\n" +"\n" +"%s" msgstr "" -#: src/API/NotificationType.vala:50 -#, c-format -msgid "%s mentioned you" +#: src/Services/Network.vala:86 +msgid "Network Error" msgstr "" -#: src/API/NotificationType.vala:52 -#, c-format -msgid "%s boosted your toot" +#: src/API/Visibility.vala:36 +msgid "Unlisted" msgstr "" -#: src/API/NotificationType.vala:54 -#, c-format -msgid "%s favorited your toot" +#: src/API/Visibility.vala:38 +msgid "Followers-only" +msgstr "" + +#: src/API/Visibility.vala:40 +msgid "Direct" +msgstr "" + +#: src/API/Visibility.vala:42 +msgid "Public" +msgstr "" + +#: src/API/Visibility.vala:49 +msgid "Don't post to public timelines" +msgstr "" + +#: src/API/Visibility.vala:51 +msgid "Post to followers only" +msgstr "" + +#: src/API/Visibility.vala:53 +msgid "Post to mentioned users only" +msgstr "" + +#: src/API/Visibility.vala:55 +msgid "Post to public timelines" msgstr "" #: src/API/NotificationType.vala:56 #, c-format -msgid "%s now follows you" +msgid "" +"%s mentioned you" msgstr "" #: src/API/NotificationType.vala:58 #, c-format -msgid "%s wants to follow you" +msgid "" +"%s boosted your status" msgstr "" #: src/API/NotificationType.vala:60 #, c-format -msgid "%s posted a toot" +msgid "%s boosted" msgstr "" -#: src/API/Status.vala:174 -msgid "Boosted!" +#: src/API/NotificationType.vala:62 +#, c-format +msgid "" +"%s favorited your status" msgstr "" -#: src/API/Status.vala:176 -msgid "Removed boost" +#: src/API/NotificationType.vala:64 +#, c-format +msgid "" +"%s now follows you" msgstr "" -#: src/API/Status.vala:189 -msgid "Favorited!" +#: src/API/NotificationType.vala:66 +#, c-format +msgid "" +"%s wants to follow you" msgstr "" -#: src/API/Status.vala:191 -msgid "Removed from favorites" +#: src/API/NotificationType.vala:68 +#, c-format +msgid "" +"%s posted a status" msgstr "" -#: src/API/Status.vala:204 -msgid "Muted!" -msgstr "" - -#: src/API/Status.vala:206 -msgid "Conversation unmuted" -msgstr "" - -#: src/API/Status.vala:219 -msgid "Pinned!" -msgstr "" - -#: src/API/Status.vala:221 -msgid "Unpinned from profile" -msgstr "" - -#: src/API/Status.vala:231 -msgid "Poof!" -msgstr "" - -#: src/API/StatusVisibility.vala:40 -msgid "Post to public timelines" -msgstr "" - -#: src/API/StatusVisibility.vala:42 -msgid "Don't post to public timelines" -msgstr "" - -#: src/API/StatusVisibility.vala:44 -msgid "Post to followers only" -msgstr "" - -#: src/API/StatusVisibility.vala:46 -msgid "Post to mentioned users only" -msgstr "" - -#: src/Widgets/AccountsButton.vala:67 -msgid "Refresh" -msgstr "" - -#: src/Widgets/AccountsButton.vala:71 -msgid "Favorites" -msgstr "" - -#: src/Widgets/AccountsButton.vala:75 src/Views/DirectView.vala:12 -msgid "Direct Messages" -msgstr "" - -#: src/Widgets/AccountsButton.vala:79 src/Views/SearchView.vala:12 -msgid "Search" -msgstr "" - -#: src/Widgets/AccountsButton.vala:83 -msgid "Watchlist" -msgstr "" - -#: src/Widgets/AccountsButton.vala:87 src/Dialogs/SettingsDialog.vala:18 -msgid "Settings" -msgstr "" - -#: src/Widgets/AccountsButton.vala:142 -msgid "New Account" -msgstr "" - -#: src/Widgets/AccountsButton.vala:143 -msgid "Click to add" -msgstr "" - -#: src/Widgets/AccountWidget.vala:24 src/Widgets/AttachmentWidget.vala:130 -#: src/Widgets/StatusWidget.vala:289 +#: src/Widgets/RichLabel.vala:105 src/Widgets/Status.vala:206 +#: src/Widgets/Account.vala:28 msgid "Open in Browser" msgstr "" -#: src/Widgets/AccountWidget.vala:26 src/Widgets/AttachmentWidget.vala:132 -#: src/Widgets/StatusWidget.vala:291 -msgid "Copy Link" +#: src/Widgets/AccountsButton.vala:62 +msgid "Refresh" msgstr "" -#: src/Widgets/AttachmentBox.vala:41 -msgid "Select media files to add" +#: src/Widgets/AccountsButton.vala:67 +msgid "Favorites" msgstr "" -#: src/Widgets/AttachmentBox.vala:44 -msgid "_Cancel" +#: src/Widgets/AccountsButton.vala:71 src/Views/Direct.vala:12 +msgid "Direct Messages" msgstr "" -#: src/Widgets/AttachmentBox.vala:46 -msgid "_Open" +#: src/Widgets/AccountsButton.vala:75 src/Views/Search.vala:12 +msgid "Search" msgstr "" -#: src/Widgets/AttachmentWidget.vala:67 -#, c-format -msgid "Click to open %s media" +#: src/Widgets/AccountsButton.vala:79 src/Dialogs/WatchlistEditor.vala:99 +msgid "Watchlist" msgstr "" -#: src/Widgets/AttachmentWidget.vala:84 -msgid "Uploading..." +#: src/Widgets/AccountsButton.vala:83 src/Dialogs/Preferences.vala:17 +msgid "Settings" msgstr "" -#: src/Widgets/AttachmentWidget.vala:105 -msgid "File read error" +#: src/Widgets/Status.vala:52 +msgid "[ Show more ]" msgstr "" -#: src/Widgets/AttachmentWidget.vala:105 -#, c-format -msgid "Can't read file %s: %s" -msgstr "" - -#: src/Widgets/AttachmentWidget.vala:124 -msgid "Remove" -msgstr "" - -#: src/Widgets/AttachmentWidget.vala:134 -msgid "Download" -msgstr "" - -#: src/Widgets/NotificationWidget.vala:20 -msgid "Unknown Notification" -msgstr "" - -#: src/Widgets/NotificationWidget.vala:25 -msgid "Dismiss" -msgstr "" - -#: src/Widgets/NotificationWidget.vala:64 -msgid "Accept" -msgstr "" - -#: src/Widgets/NotificationWidget.vala:66 -msgid "Reject" -msgstr "" - -#: src/Widgets/StatusWidget.vala:84 -msgid "Boost" -msgstr "" - -#: src/Widgets/StatusWidget.vala:91 -msgid "Favorite" -msgstr "" - -#: src/Widgets/StatusWidget.vala:98 -msgid "Reply" -msgstr "" - -#: src/Widgets/StatusWidget.vala:136 -#, c-format -msgid "%s boosted" -msgstr "" - -#: src/Widgets/StatusWidget.vala:151 -msgid "Toggle content" -msgstr "" - -#: src/Widgets/StatusWidget.vala:165 -msgid "[ This post contains sensitive content ]" -msgstr "" - -#: src/Widgets/StatusWidget.vala:234 +#: src/Widgets/Status.vala:120 msgid "This post can't be boosted" msgstr "" -#: src/Widgets/StatusWidget.vala:287 -msgid "Unmute Conversation" +#: src/Widgets/Status.vala:208 src/Widgets/Account.vala:30 +msgid "Copy Link" msgstr "" -#: src/Widgets/StatusWidget.vala:287 -msgid "Mute Conversation" -msgstr "" - -#: src/Widgets/StatusWidget.vala:293 +#: src/Widgets/Status.vala:210 msgid "Copy Text" msgstr "" -#: src/Widgets/StatusWidget.vala:300 +#: src/Widgets/Status.vala:217 msgid "Unpin from Profile" msgstr "" -#: src/Widgets/StatusWidget.vala:300 +#: src/Widgets/Status.vala:217 msgid "Pin on Profile" msgstr "" -#: src/Widgets/StatusWidget.vala:304 +#: src/Widgets/Status.vala:221 msgid "Delete" msgstr "" -#: src/Widgets/StatusWidget.vala:308 src/Dialogs/PostDialog.vala:72 +#: src/Widgets/Status.vala:225 src/Dialogs/Compose.vala:73 msgid "Redraft" msgstr "" -#: src/Dialogs/NewAccountDialog.vala:27 -msgid "New Account" +#: src/Widgets/Attachment/Box.vala:28 +msgid "Select media files to add" msgstr "" -#: src/Dialogs/NewAccountDialog.vala:38 -msgid "What's an instance?" +#: src/Widgets/Attachment/Box.vala:31 +msgid "_Cancel" msgstr "" -#: src/Dialogs/NewAccountDialog.vala:42 -msgid "Code:" +#: src/Widgets/Attachment/Box.vala:33 +msgid "_Open" msgstr "" -#: src/Dialogs/NewAccountDialog.vala:46 -msgid "Paste your instance authorization code here" +#: src/Dialogs/MainWindow.vala:49 +msgid "Back" msgstr "" -#: src/Dialogs/NewAccountDialog.vala:49 -msgid "Add Account" +#: src/Dialogs/MainWindow.vala:58 +msgid "Toot" msgstr "" -#: src/Dialogs/NewAccountDialog.vala:60 -msgid "Instance:" +#: src/Dialogs/MainWindow.vala:63 +msgid "Toggle content" msgstr "" -#: src/Dialogs/NewAccountDialog.vala:102 -msgid "Please paste valid instance authorization code" +#: src/Dialogs/Compose.vala:69 +msgid "Post" msgstr "" -#: src/Dialogs/NewAccountDialog.vala:110 -msgid "Network Error" -msgstr "" - -#: src/Dialogs/PostDialog.vala:45 -msgid "Post Visibility" -msgstr "" - -#: src/Dialogs/PostDialog.vala:52 -msgid "Add Media" -msgstr "" - -#: src/Dialogs/PostDialog.vala:61 -msgid "Spoiler Warning" -msgstr "" - -#: src/Dialogs/PostDialog.vala:68 -msgid "Cancel" -msgstr "" - -#: src/Dialogs/PostDialog.vala:77 -msgid "Toot!" -msgstr "" - -#: src/Dialogs/PostDialog.vala:85 -msgid "Write your warning here" -msgstr "" - -#: src/Dialogs/SettingsDialog.vala:37 +#: src/Dialogs/Preferences.vala:36 msgid "Appearance" msgstr "" -#: src/Dialogs/SettingsDialog.vala:38 +#: src/Dialogs/Preferences.vala:37 msgid "Dark theme:" msgstr "" -#: src/Dialogs/SettingsDialog.vala:41 +#: src/Dialogs/Preferences.vala:40 msgid "Timelines" msgstr "" -#: src/Dialogs/SettingsDialog.vala:42 +#: src/Dialogs/Preferences.vala:41 msgid "Real-time updates:" msgstr "" -#: src/Dialogs/SettingsDialog.vala:44 +#: src/Dialogs/Preferences.vala:43 msgid "Update public timelines:" msgstr "" @@ -409,140 +343,115 @@ msgstr "" #. grid.attach (new SettingsLabel (_("Use cache:")), 0, i); #. grid.attach (new SettingsSwitch ("cache"), 1, i++); #. grid.attach (new SettingsLabel (_("Max cache size (MB):")), 0, i); -#. var cache_size = new Gtk.SpinButton.with_range (16, 256, 1); +#. var cache_size = new SpinButton.with_range (16, 256, 1); #. settings.schema.bind ("cache-size", cache_size, "value", SettingsBindFlags.DEFAULT); #. grid.attach (cache_size, 1, i++); -#: src/Dialogs/SettingsDialog.vala:55 src/Views/NotificationsView.vala:34 +#: src/Dialogs/Preferences.vala:54 src/Views/Notifications.vala:33 msgid "Notifications" msgstr "" -#: src/Dialogs/SettingsDialog.vala:56 +#: src/Dialogs/Preferences.vala:55 msgid "Display notifications:" msgstr "" -#: src/Dialogs/SettingsDialog.vala:58 +#: src/Dialogs/Preferences.vala:57 msgid "Always receive notifications:" msgstr "" -#: src/Dialogs/SettingsDialog.vala:64 +#: src/Dialogs/Preferences.vala:63 src/Dialogs/WatchlistEditor.vala:162 msgid "_Close" msgstr "" -#: src/Dialogs/WatchlistDialog.vala:20 +#: src/Dialogs/WatchlistEditor.vala:20 msgid "" "You'll be notified when toots from this user appear in your Home timeline." msgstr "" -#: src/Dialogs/WatchlistDialog.vala:21 +#: src/Dialogs/WatchlistEditor.vala:21 msgid "" "You'll be notified when toots with this hashtag appear in any public " "timelines." msgstr "" -#: src/Dialogs/WatchlistDialog.vala:137 +#: src/Dialogs/WatchlistEditor.vala:108 msgid "Users" msgstr "" -#: src/Dialogs/WatchlistDialog.vala:138 src/Views/SearchView.vala:100 +#: src/Dialogs/WatchlistEditor.vala:109 src/Views/Search.vala:100 msgid "Hashtags" msgstr "" -#: src/Dialogs/WatchlistDialog.vala:148 +#: src/Dialogs/WatchlistEditor.vala:122 msgid "Add" msgstr "" -#: src/Views/AbstractView.vala:59 +#: src/Views/Base.vala:6 msgid "Nothing to see here" msgstr "" -#: src/Views/AccountView.vala:79 -msgid "Edit Profile" +#: src/Views/NewAccount.vala:91 +msgid "Instance URL is invalid" msgstr "" -#: src/Views/AccountView.vala:80 -msgid "Mention" +#: src/Views/NewAccount.vala:133 +msgid "Please paste a valid authorization code" msgstr "" -#: src/Views/AccountView.vala:81 -msgid "Report" -msgstr "" - -#: src/Views/AccountView.vala:82 src/Views/AccountView.vala:167 -msgid "Mute" -msgstr "" - -#: src/Views/AccountView.vala:83 src/Views/AccountView.vala:166 -msgid "Block" -msgstr "" - -#: src/Views/AccountView.vala:95 -msgid "More Actions" -msgstr "" - -#: src/Views/AccountView.vala:115 -msgid "Toots" -msgstr "" - -#: src/Views/AccountView.vala:116 -msgid "Follows" -msgstr "" - -#: src/Views/AccountView.vala:120 -msgid "Followers" -msgstr "" - -#: src/Views/AccountView.vala:155 -msgid "Unfollow" -msgstr "" - -#: src/Views/AccountView.vala:159 -msgid "Follow" -msgstr "" - -#: src/Views/AccountView.vala:166 -msgid "Unblock" -msgstr "" - -#: src/Views/AccountView.vala:167 -msgid "Unmute" -msgstr "" - -#: src/Views/AccountView.vala:228 -msgid "Sent follow request" -msgstr "" - -#: src/Views/AccountView.vala:230 -msgid "Blocked" -msgstr "" - -#: src/Views/AccountView.vala:232 -msgid "Follows you" -msgstr "" - -#: src/Views/AccountView.vala:234 -msgid "Blocking this instance" -msgstr "" - -#: src/Views/AccountView.vala:269 -msgid "User not found" -msgstr "" - -#: src/Views/FederatedView.vala:12 -msgid "Federated Timeline" -msgstr "" - -#: src/Views/HomeView.vala:12 src/Views/TimelineView.vala:36 +#: src/Views/Timeline.vala:34 src/Views/Home.vala:12 msgid "Home" msgstr "" -#: src/Views/LocalView.vala:12 +#: src/Views/Local.vala:12 msgid "Local Timeline" msgstr "" -#: src/Views/SearchView.vala:82 +#: src/Views/Federated.vala:12 +msgid "Federated Timeline" +msgstr "" + +#: src/Views/Profile.vala:61 +#, c-format +msgid "%s Posts" +msgstr "" + +#: src/Views/Profile.vala:67 +#, c-format +msgid "%s Follows" +msgstr "" + +#: src/Views/Profile.vala:73 +#, c-format +msgid "%s Followers" +msgstr "" + +#: src/Views/Profile.vala:109 +msgid "Sent follow request" +msgstr "" + +#: src/Views/Profile.vala:111 +msgid "Mutually follows you" +msgstr "" + +#: src/Views/Profile.vala:113 +msgid "Follows you" +msgstr "" + +#: src/Views/Profile.vala:124 +msgid "Follow back" +msgstr "" + +#: src/Views/Profile.vala:126 +msgid "Unfollow" +msgstr "" + +#: src/Views/Profile.vala:128 +msgid "Follow" +msgstr "" + +#: src/Views/Search.vala:82 msgid "Accounts" msgstr "" -#: src/Views/SearchView.vala:91 +#: src/Views/Search.vala:91 msgid "Statuses" msgstr "" diff --git a/po/de_DE.po b/po/de_DE.po index e1065c6..e6a0bc5 100644 --- a/po/de_DE.po +++ b/po/de_DE.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: com.github.bleakgrey.tootle\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-10-30 19:17+0300\n" +"POT-Creation-Date: 2019-09-16 16:00+0300\n" "PO-Revision-Date: 2018-10-30 22:20+0100\n" "Last-Translator: \n" "Language-Team: \n" @@ -19,7 +19,7 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: data/com.github.bleakgrey.tootle.desktop.in:4 -#: data/com.github.bleakgrey.tootle.appdata.xml.in:7 src/MainWindow.vala:68 +#: data/com.github.bleakgrey.tootle.appdata.xml.in:7 msgid "Tootle" msgstr "Tootle" @@ -41,30 +41,34 @@ msgid "Lightning fast client for Mastodon" msgstr "Blitzschneller Client für Mastodon" #: data/com.github.bleakgrey.tootle.appdata.xml.in:11 +#, fuzzy msgid "" "Tootle is a client for the world’s largest free, open-source, decentralized " -"microblogging network with real-time notifications and multiple accounts " -"support." +"microblogging network with real-time notifications and support for multiple " +"accounts." msgstr "" "Tootle ist ein Client für das weltgrößte freie, dezentrale, open-source " "Microblogging-Netzwerk mit Echtzeit-Benachrichtigungen und Multi-Account-" "Support." #: data/com.github.bleakgrey.tootle.appdata.xml.in:14 +#, fuzzy msgid "" -"Mastodon is lovely crafted with power and speed in mind, resulting in a " -"free, independent and popular alternative to the centralized social networks." +"Mastodon is lovingly crafted with power and speed in mind, resulting in a " +"free, independent, and popular alternative to the centralized social " +"networks." msgstr "" "Mastodon ist eine liebevoll erstellte schnelle und kraftvolle Software, die " "frei und unabhängig ist und eine populäre Alternative zu zentralisierten " "sozialen Netzwerken ist." #: data/com.github.bleakgrey.tootle.appdata.xml.in:17 +#, fuzzy msgid "" -"Anyone can run a server of Mastodon. Each server hosts individual user " -"accounts, the content they produce, and the content they are subscribed. " -"Every user can follow each other and share their posts regardless of their " -"server." +"Anyone can run a Mastodon server. Each server hosts individual user " +"accounts, the content they produce, and the content to which they are " +"subscribed. Every user can follow each other and share their posts " +"regardless of their server." msgstr "" "Jeder kann sein eigenes Mastodon betreiben. Jeder Server hostet seine " "eigenen Nutzerkonten, den Inhalt, den sie erstellen und den Inhalt, den sie " @@ -75,344 +79,280 @@ msgstr "" msgid "bleak_grey" msgstr "bleak_grey" -#: src/Desktop.vala:10 src/API/Account.vala:123 src/API/Account.vala:142 -#: src/API/Account.vala:161 src/Dialogs/NewAccountDialog.vala:102 +#: data/com.github.bleakgrey.tootle.appdata.xml.in:80 +#, fuzzy +msgid "Added Watchlist" +msgstr "Beobachtungsliste" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:81 +msgid "Added Redraft support" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:82 +msgid "Added Pinning support" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:83 +msgid "Added Simplified Chinese and German translations" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:84 +msgid "Added --hidden Start Flag" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:85 +msgid "Added Shortcuts and Back mouse button support" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:86 +msgid "Changed Notifications screen behavior" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:87 +#: data/com.github.bleakgrey.tootle.appdata.xml.in:102 +msgid "Fixed minor bugs" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:94 +msgid "Added Russian, French and Polish translations" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:95 +#, fuzzy +msgid "Added Direct timeline" +msgstr "Aktualisiere öffentliche Zeitleisten:" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:96 +msgid "Added support for custom character limit" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:97 +msgid "Added support for streaming all timelines" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:98 +msgid "Added tooltips for image attachments" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:99 +msgid "Added remove action for attachments" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:100 +msgid "Changed behavior for mentioning users" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:101 +msgid "Changed behavior for missing image attachments" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:109 +msgid "Initial release" +msgstr "" + +#: src/Desktop.vala:10 msgid "Error" msgstr "Fehler" -#: src/Desktop.vala:46 +#: src/Desktop.vala:47 msgid "Media downloaded" msgstr "Medien heruntergeladen" -#: src/MainWindow.vala:48 -msgid "Back" -msgstr "Zurück" - -#: src/MainWindow.vala:54 src/Dialogs/PostDialog.vala:29 -msgid "Toot" -msgstr "Tröt" - -#: src/Network.vala:58 -msgid "TLS Error" -msgstr "TLS-Fehler" - -#: src/Network.vala:58 -msgid "Can't ensure secure connection: " -msgstr "Kann keine sichere Verbindung aufbauen: " - -#: src/Network.vala:66 +#: src/Services/Accounts.vala:31 #, c-format -msgid "Error: %s" -msgstr "Fehler: %s" +msgid "" +"This instance has invalidated this session. Please sign in again.\n" +"\n" +"%s" +msgstr "" -#: src/API/NotificationType.vala:50 -#, c-format -msgid "%s mentioned you" -msgstr "%s hat dich erwähnt" - -#: src/API/NotificationType.vala:52 -#, c-format -msgid "%s boosted your toot" -msgstr "%s hat deinen Beitrag geteilt" - -#: src/API/NotificationType.vala:54 -#, c-format -msgid "%s favorited your toot" -msgstr "%s hat deinen Beitrag favorisiert" - -#: src/API/NotificationType.vala:56 -#, c-format -msgid "%s now follows you" -msgstr "%s folgt dir nun" - -#: src/API/NotificationType.vala:58 -#, c-format -msgid "%s wants to follow you" -msgstr "%s möchte dir folgen" - -#: src/API/NotificationType.vala:60 -#, c-format -msgid "%s posted a toot" -msgstr "%s hat einen Beitrag gepostet" - -#: src/API/Status.vala:174 -msgid "Boosted!" -msgstr "Geteilt!" - -#: src/API/Status.vala:176 -msgid "Removed boost" -msgstr "Boost entfernt" - -#: src/API/Status.vala:189 -msgid "Favorited!" -msgstr "Favorisiert!" - -#: src/API/Status.vala:191 -msgid "Removed from favorites" -msgstr "Von den Favoriten entfernt" - -#: src/API/Status.vala:204 -msgid "Muted!" -msgstr "Stummgeschaltet!" - -#: src/API/Status.vala:206 -msgid "Conversation unmuted" -msgstr "Konversation nicht mehr stummgeschaltet" - -#: src/API/Status.vala:219 -msgid "Pinned!" -msgstr "Angepinnt!" - -#: src/API/Status.vala:221 -msgid "Unpinned from profile" -msgstr "Vom Profil losgelöst" - -#: src/API/Status.vala:231 -msgid "Poof!" -msgstr "Poof!" - -#: src/API/StatusVisibility.vala:40 -msgid "Post to public timelines" -msgstr "An die öffentliche Zeitleiste posten" - -#: src/API/StatusVisibility.vala:42 -msgid "Don't post to public timelines" -msgstr "Nicht an die öffentliche Zeitleiste posten" - -#: src/API/StatusVisibility.vala:44 -msgid "Post to followers only" -msgstr "Nur für Follower posten" - -#: src/API/StatusVisibility.vala:46 -msgid "Post to mentioned users only" -msgstr "Nur für erwähnte Nutzer posten" - -#: src/Widgets/AccountsButton.vala:67 -msgid "Refresh" -msgstr "Aktualisieren" - -#: src/Widgets/AccountsButton.vala:71 -msgid "Favorites" -msgstr "Favoriten" - -#: src/Widgets/AccountsButton.vala:75 src/Views/DirectView.vala:12 -msgid "Direct Messages" -msgstr "Direktnachrichten" - -#: src/Widgets/AccountsButton.vala:79 src/Views/SearchView.vala:12 -msgid "Search" -msgstr "Suchen" - -#: src/Widgets/AccountsButton.vala:83 -msgid "Watchlist" -msgstr "Beobachtungsliste" - -#: src/Widgets/AccountsButton.vala:87 src/Dialogs/SettingsDialog.vala:18 -msgid "Settings" -msgstr "Einstellungen" - -#: src/Widgets/AccountsButton.vala:142 -msgid "New Account" -msgstr "Neuer Account" - -#: src/Widgets/AccountsButton.vala:143 -msgid "Click to add" -msgstr "Klicken zum Hinzufügen" - -#: src/Widgets/AccountWidget.vala:24 src/Widgets/AttachmentWidget.vala:130 -#: src/Widgets/StatusWidget.vala:289 -msgid "Open in Browser" -msgstr "Im Browser öffnen" - -#: src/Widgets/AccountWidget.vala:26 src/Widgets/AttachmentWidget.vala:132 -#: src/Widgets/StatusWidget.vala:291 -msgid "Copy Link" -msgstr "Link kopieren" - -#: src/Widgets/AttachmentBox.vala:41 -msgid "Select media files to add" -msgstr "Wähle Medien zum Senden aus" - -#: src/Widgets/AttachmentBox.vala:44 -msgid "_Cancel" -msgstr "_Cancel" - -#: src/Widgets/AttachmentBox.vala:46 -msgid "_Open" -msgstr "_Open" - -#: src/Widgets/AttachmentWidget.vala:67 -#, c-format -msgid "Click to open %s media" -msgstr "Klicken um %s Medien zu öffnen" - -#: src/Widgets/AttachmentWidget.vala:84 -msgid "Uploading..." -msgstr "Hochladen..." - -#: src/Widgets/AttachmentWidget.vala:105 -msgid "File read error" -msgstr "Dateilesefehler" - -#: src/Widgets/AttachmentWidget.vala:105 -#, c-format -msgid "Can't read file %s: %s" -msgstr "Kann Datei nicht lesen %s: %s" - -#: src/Widgets/AttachmentWidget.vala:124 -msgid "Remove" -msgstr "Entfernen" - -#: src/Widgets/AttachmentWidget.vala:134 -msgid "Download" -msgstr "Herunterladen" - -#: src/Widgets/NotificationWidget.vala:20 -msgid "Unknown Notification" -msgstr "Unbekannte Benachrichtigung" - -#: src/Widgets/NotificationWidget.vala:25 -msgid "Dismiss" -msgstr "Verwerfen" - -#: src/Widgets/NotificationWidget.vala:64 -msgid "Accept" -msgstr "Aktzeptieren" - -#: src/Widgets/NotificationWidget.vala:66 -msgid "Reject" -msgstr "Ablehnen" - -#: src/Widgets/StatusWidget.vala:84 -msgid "Boost" -msgstr "Teilen" - -#: src/Widgets/StatusWidget.vala:91 -msgid "Favorite" -msgstr "Favorisieren" - -#: src/Widgets/StatusWidget.vala:98 -msgid "Reply" -msgstr "Antworten" - -#: src/Widgets/StatusWidget.vala:136 -#, c-format -msgid "%s boosted" -msgstr "%s teilte" - -#: src/Widgets/StatusWidget.vala:151 -msgid "Toggle content" -msgstr "Umschalten" - -#: src/Widgets/StatusWidget.vala:165 -msgid "[ This post contains sensitive content ]" -msgstr "[ Dieser Beitrag beinhaltet sensibles Material ]" - -#: src/Widgets/StatusWidget.vala:234 -msgid "This post can't be boosted" -msgstr "Dieser Beitrag kann nicht geteilt werden" - -#: src/Widgets/StatusWidget.vala:287 -msgid "Unmute Conversation" -msgstr "Konversation nicht mehr stummschalten" - -#: src/Widgets/StatusWidget.vala:287 -msgid "Mute Conversation" -msgstr "Konversation stummschalten" - -#: src/Widgets/StatusWidget.vala:293 -msgid "Copy Text" -msgstr "Text kopieren" - -#: src/Widgets/StatusWidget.vala:300 -msgid "Unpin from Profile" -msgstr "Vom Profil loslösen" - -#: src/Widgets/StatusWidget.vala:300 -msgid "Pin on Profile" -msgstr "An Profil anheften" - -#: src/Widgets/StatusWidget.vala:304 -msgid "Delete" -msgstr "Löschen" - -#: src/Widgets/StatusWidget.vala:308 src/Dialogs/PostDialog.vala:72 -msgid "Redraft" -msgstr "Neu verfassen" - -#: src/Dialogs/NewAccountDialog.vala:27 -msgid "New Account" -msgstr "Neues Konto" - -#: src/Dialogs/NewAccountDialog.vala:38 -msgid "What's an instance?" -msgstr "Was ist eine Instanz?" - -#: src/Dialogs/NewAccountDialog.vala:42 -msgid "Code:" -msgstr "Code:" - -#: src/Dialogs/NewAccountDialog.vala:46 -msgid "Paste your instance authorization code here" -msgstr "Füge dein Autorisierungstoken hier ein" - -#: src/Dialogs/NewAccountDialog.vala:49 -msgid "Add Account" -msgstr "Konto hinzufügen" - -#: src/Dialogs/NewAccountDialog.vala:60 -msgid "Instance:" -msgstr "Instanz:" - -#: src/Dialogs/NewAccountDialog.vala:102 -msgid "Please paste valid instance authorization code" -msgstr "Bitte füge einen validen Autorisierungscode ein" - -#: src/Dialogs/NewAccountDialog.vala:110 +#: src/Services/Network.vala:86 msgid "Network Error" msgstr "Netzwerkfehler" -#: src/Dialogs/PostDialog.vala:45 -msgid "Post Visibility" -msgstr "Post-Sichtbarkeit" +#: src/API/Visibility.vala:36 +msgid "Unlisted" +msgstr "" -#: src/Dialogs/PostDialog.vala:52 -msgid "Add Media" -msgstr "Medien hinzufügen" +#: src/API/Visibility.vala:38 +#, fuzzy +msgid "Followers-only" +msgstr "Follower" -#: src/Dialogs/PostDialog.vala:61 -msgid "Spoiler Warning" -msgstr "Inhaltswarnung" +#: src/API/Visibility.vala:40 +msgid "Direct" +msgstr "" -#: src/Dialogs/PostDialog.vala:68 -msgid "Cancel" -msgstr "Abbrechen" +#: src/API/Visibility.vala:42 +msgid "Public" +msgstr "" -#: src/Dialogs/PostDialog.vala:77 -msgid "Toot!" -msgstr "Tröt!" +#: src/API/Visibility.vala:49 +msgid "Don't post to public timelines" +msgstr "Nicht an die öffentliche Zeitleiste posten" -#: src/Dialogs/PostDialog.vala:85 -msgid "Write your warning here" -msgstr "Schreibe deine Warnung hier" +#: src/API/Visibility.vala:51 +msgid "Post to followers only" +msgstr "Nur für Follower posten" -#: src/Dialogs/SettingsDialog.vala:37 +#: src/API/Visibility.vala:53 +msgid "Post to mentioned users only" +msgstr "Nur für erwähnte Nutzer posten" + +#: src/API/Visibility.vala:55 +msgid "Post to public timelines" +msgstr "An die öffentliche Zeitleiste posten" + +#: src/API/NotificationType.vala:56 +#, fuzzy, c-format +msgid "" +"%s mentioned you" +msgstr "%s hat dich erwähnt" + +#: src/API/NotificationType.vala:58 +#, fuzzy, c-format +msgid "" +"%s boosted your status" +msgstr "%s hat deinen Beitrag geteilt" + +#: src/API/NotificationType.vala:60 +#, fuzzy, c-format +msgid "%s boosted" +msgstr "%s teilte" + +#: src/API/NotificationType.vala:62 +#, fuzzy, c-format +msgid "" +"%s favorited your status" +msgstr "%s hat deinen Beitrag favorisiert" + +#: src/API/NotificationType.vala:64 +#, fuzzy, c-format +msgid "" +"%s now follows you" +msgstr "%s folgt dir nun" + +#: src/API/NotificationType.vala:66 +#, fuzzy, c-format +msgid "" +"%s wants to follow you" +msgstr "%s möchte dir folgen" + +#: src/API/NotificationType.vala:68 +#, fuzzy, c-format +msgid "" +"%s posted a status" +msgstr "%s hat einen Beitrag gepostet" + +#: src/Widgets/RichLabel.vala:105 src/Widgets/Status.vala:206 +#: src/Widgets/Account.vala:28 +msgid "Open in Browser" +msgstr "Im Browser öffnen" + +#: src/Widgets/AccountsButton.vala:62 +msgid "Refresh" +msgstr "Aktualisieren" + +#: src/Widgets/AccountsButton.vala:67 +msgid "Favorites" +msgstr "Favoriten" + +#: src/Widgets/AccountsButton.vala:71 src/Views/Direct.vala:12 +msgid "Direct Messages" +msgstr "Direktnachrichten" + +#: src/Widgets/AccountsButton.vala:75 src/Views/Search.vala:12 +msgid "Search" +msgstr "Suchen" + +#: src/Widgets/AccountsButton.vala:79 src/Dialogs/WatchlistEditor.vala:99 +msgid "Watchlist" +msgstr "Beobachtungsliste" + +#: src/Widgets/AccountsButton.vala:83 src/Dialogs/Preferences.vala:17 +msgid "Settings" +msgstr "Einstellungen" + +#: src/Widgets/Status.vala:52 +msgid "[ Show more ]" +msgstr "" + +#: src/Widgets/Status.vala:120 +msgid "This post can't be boosted" +msgstr "Dieser Beitrag kann nicht geteilt werden" + +#: src/Widgets/Status.vala:208 src/Widgets/Account.vala:30 +msgid "Copy Link" +msgstr "Link kopieren" + +#: src/Widgets/Status.vala:210 +msgid "Copy Text" +msgstr "Text kopieren" + +#: src/Widgets/Status.vala:217 +msgid "Unpin from Profile" +msgstr "Vom Profil loslösen" + +#: src/Widgets/Status.vala:217 +msgid "Pin on Profile" +msgstr "An Profil anheften" + +#: src/Widgets/Status.vala:221 +msgid "Delete" +msgstr "Löschen" + +#: src/Widgets/Status.vala:225 src/Dialogs/Compose.vala:73 +msgid "Redraft" +msgstr "Neu verfassen" + +#: src/Widgets/Attachment/Box.vala:28 +msgid "Select media files to add" +msgstr "Wähle Medien zum Senden aus" + +#: src/Widgets/Attachment/Box.vala:31 +msgid "_Cancel" +msgstr "_Cancel" + +#: src/Widgets/Attachment/Box.vala:33 +msgid "_Open" +msgstr "_Open" + +#: src/Dialogs/MainWindow.vala:49 +msgid "Back" +msgstr "Zurück" + +#: src/Dialogs/MainWindow.vala:58 +msgid "Toot" +msgstr "Tröt" + +#: src/Dialogs/MainWindow.vala:63 +msgid "Toggle content" +msgstr "Umschalten" + +#: src/Dialogs/Compose.vala:69 +msgid "Post" +msgstr "" + +#: src/Dialogs/Preferences.vala:36 msgid "Appearance" msgstr "Aussehen" -#: src/Dialogs/SettingsDialog.vala:38 +#: src/Dialogs/Preferences.vala:37 msgid "Dark theme:" msgstr "Dunkles Design:" -#: src/Dialogs/SettingsDialog.vala:41 +#: src/Dialogs/Preferences.vala:40 msgid "Timelines" msgstr "Zeitleisten" -#: src/Dialogs/SettingsDialog.vala:42 +#: src/Dialogs/Preferences.vala:41 msgid "Real-time updates:" msgstr "Echtzeit-Aktualisierungen:" -#: src/Dialogs/SettingsDialog.vala:44 +#: src/Dialogs/Preferences.vala:43 msgid "Update public timelines:" msgstr "Aktualisiere öffentliche Zeitleisten:" @@ -420,33 +360,33 @@ msgstr "Aktualisiere öffentliche Zeitleisten:" #. grid.attach (new SettingsLabel (_("Use cache:")), 0, i); #. grid.attach (new SettingsSwitch ("cache"), 1, i++); #. grid.attach (new SettingsLabel (_("Max cache size (MB):")), 0, i); -#. var cache_size = new Gtk.SpinButton.with_range (16, 256, 1); +#. var cache_size = new SpinButton.with_range (16, 256, 1); #. settings.schema.bind ("cache-size", cache_size, "value", SettingsBindFlags.DEFAULT); #. grid.attach (cache_size, 1, i++); -#: src/Dialogs/SettingsDialog.vala:55 src/Views/NotificationsView.vala:34 +#: src/Dialogs/Preferences.vala:54 src/Views/Notifications.vala:33 msgid "Notifications" msgstr "Benachrichtigungen" -#: src/Dialogs/SettingsDialog.vala:56 +#: src/Dialogs/Preferences.vala:55 msgid "Display notifications:" msgstr "Benachrichtigungen anzeigen:" -#: src/Dialogs/SettingsDialog.vala:58 +#: src/Dialogs/Preferences.vala:57 msgid "Always receive notifications:" msgstr "Immer Benachrichtigungen empfangen:" -#: src/Dialogs/SettingsDialog.vala:64 +#: src/Dialogs/Preferences.vala:63 src/Dialogs/WatchlistEditor.vala:162 msgid "_Close" msgstr "_Close" -#: src/Dialogs/WatchlistDialog.vala:20 +#: src/Dialogs/WatchlistEditor.vala:20 msgid "" "You'll be notified when toots from this user appear in your Home timeline." msgstr "" "Du wirst benachrichtigt wenn Beiträge von dem Nutzer in deiner Startseite " "erscheinen." -#: src/Dialogs/WatchlistDialog.vala:21 +#: src/Dialogs/WatchlistEditor.vala:21 msgid "" "You'll be notified when toots with this hashtag appear in any public " "timelines." @@ -454,114 +394,254 @@ msgstr "" "Du wirst benachrichtigt wenn Beiträge mit diesem Hashtag in irgendwelchen " "öffentlichen Zeitleisten geteilt werden." -#: src/Dialogs/WatchlistDialog.vala:137 +#: src/Dialogs/WatchlistEditor.vala:108 msgid "Users" msgstr "Benutzer" -#: src/Dialogs/WatchlistDialog.vala:138 src/Views/SearchView.vala:100 +#: src/Dialogs/WatchlistEditor.vala:109 src/Views/Search.vala:100 msgid "Hashtags" msgstr "Hashtags" -#: src/Dialogs/WatchlistDialog.vala:148 +#: src/Dialogs/WatchlistEditor.vala:122 msgid "Add" msgstr "Hinzufügen" -#: src/Views/AbstractView.vala:59 +#: src/Views/Base.vala:6 msgid "Nothing to see here" msgstr "Hier gibt es nichts zu sehen" -#: src/Views/AccountView.vala:79 -msgid "Edit Profile" -msgstr "Profil bearbeiten" +#: src/Views/NewAccount.vala:91 +msgid "Instance URL is invalid" +msgstr "" -#: src/Views/AccountView.vala:80 -msgid "Mention" -msgstr "Erwähnen" +#: src/Views/NewAccount.vala:133 +#, fuzzy +msgid "Please paste a valid authorization code" +msgstr "Bitte füge einen validen Autorisierungscode ein" -#: src/Views/AccountView.vala:81 -msgid "Report" -msgstr "Melden" - -#: src/Views/AccountView.vala:82 src/Views/AccountView.vala:167 -msgid "Mute" -msgstr "Stummschalten" - -#: src/Views/AccountView.vala:83 src/Views/AccountView.vala:166 -msgid "Block" -msgstr "Blockieren" - -#: src/Views/AccountView.vala:95 -msgid "More Actions" -msgstr "Weitere Aktionen" - -#: src/Views/AccountView.vala:115 -msgid "Toots" -msgstr "Beiträge" - -#: src/Views/AccountView.vala:116 -msgid "Follows" -msgstr "Folgt" - -#: src/Views/AccountView.vala:120 -msgid "Followers" -msgstr "Follower" - -#: src/Views/AccountView.vala:155 -msgid "Unfollow" -msgstr "Entfolgen" - -#: src/Views/AccountView.vala:159 -msgid "Follow" -msgstr "Folgen" - -#: src/Views/AccountView.vala:166 -msgid "Unblock" -msgstr "Entsperren" - -#: src/Views/AccountView.vala:167 -msgid "Unmute" -msgstr "Nicht mehr stummschalten" - -#: src/Views/AccountView.vala:228 -msgid "Sent follow request" -msgstr "Followanfrage gesendet" - -#: src/Views/AccountView.vala:230 -msgid "Blocked" -msgstr "Blockiert" - -#: src/Views/AccountView.vala:232 -msgid "Follows you" -msgstr "Folgt dir" - -#: src/Views/AccountView.vala:234 -msgid "Blocking this instance" -msgstr "Diese Instanz blockieren" - -#: src/Views/AccountView.vala:269 -msgid "User not found" -msgstr "Benutzer nicht gefunden" - -#: src/Views/FederatedView.vala:12 -msgid "Federated Timeline" -msgstr "Föderierte Zeitleiste" - -#: src/Views/HomeView.vala:12 src/Views/TimelineView.vala:36 +#: src/Views/Timeline.vala:34 src/Views/Home.vala:12 msgid "Home" msgstr "Startseite" -#: src/Views/LocalView.vala:12 +#: src/Views/Local.vala:12 msgid "Local Timeline" msgstr "Lokale Zeitleiste" -#: src/Views/SearchView.vala:82 +#: src/Views/Federated.vala:12 +msgid "Federated Timeline" +msgstr "Föderierte Zeitleiste" + +#: src/Views/Profile.vala:61 +#, c-format +msgid "%s Posts" +msgstr "" + +#: src/Views/Profile.vala:67 +#, fuzzy, c-format +msgid "%s Follows" +msgstr "Folgt" + +#: src/Views/Profile.vala:73 +#, fuzzy, c-format +msgid "%s Followers" +msgstr "Follower" + +#: src/Views/Profile.vala:109 +msgid "Sent follow request" +msgstr "Followanfrage gesendet" + +#: src/Views/Profile.vala:111 +#, fuzzy +msgid "Mutually follows you" +msgstr "Folgt dir" + +#: src/Views/Profile.vala:113 +msgid "Follows you" +msgstr "Folgt dir" + +#: src/Views/Profile.vala:124 +#, fuzzy +msgid "Follow back" +msgstr "Folgen" + +#: src/Views/Profile.vala:126 +msgid "Unfollow" +msgstr "Entfolgen" + +#: src/Views/Profile.vala:128 +msgid "Follow" +msgstr "Folgen" + +#: src/Views/Search.vala:82 msgid "Accounts" msgstr "Konten" -#: src/Views/SearchView.vala:91 +#: src/Views/Search.vala:91 msgid "Statuses" msgstr "Beiträge" +#~ msgid "TLS Error" +#~ msgstr "TLS-Fehler" + +#~ msgid "Can't ensure secure connection: " +#~ msgstr "Kann keine sichere Verbindung aufbauen: " + +#~ msgid "Error: %s" +#~ msgstr "Fehler: %s" + +#~ msgid "Boosted!" +#~ msgstr "Geteilt!" + +#~ msgid "Removed boost" +#~ msgstr "Boost entfernt" + +#~ msgid "Favorited!" +#~ msgstr "Favorisiert!" + +#~ msgid "Removed from favorites" +#~ msgstr "Von den Favoriten entfernt" + +#~ msgid "Muted!" +#~ msgstr "Stummgeschaltet!" + +#~ msgid "Conversation unmuted" +#~ msgstr "Konversation nicht mehr stummgeschaltet" + +#~ msgid "Pinned!" +#~ msgstr "Angepinnt!" + +#~ msgid "Unpinned from profile" +#~ msgstr "Vom Profil losgelöst" + +#~ msgid "Poof!" +#~ msgstr "Poof!" + +#~ msgid "New Account" +#~ msgstr "Neuer Account" + +#~ msgid "Click to add" +#~ msgstr "Klicken zum Hinzufügen" + +#~ msgid "Click to open %s media" +#~ msgstr "Klicken um %s Medien zu öffnen" + +#~ msgid "Uploading..." +#~ msgstr "Hochladen..." + +#~ msgid "File read error" +#~ msgstr "Dateilesefehler" + +#~ msgid "Can't read file %s: %s" +#~ msgstr "Kann Datei nicht lesen %s: %s" + +#~ msgid "Remove" +#~ msgstr "Entfernen" + +#~ msgid "Download" +#~ msgstr "Herunterladen" + +#~ msgid "Unknown Notification" +#~ msgstr "Unbekannte Benachrichtigung" + +#~ msgid "Dismiss" +#~ msgstr "Verwerfen" + +#~ msgid "Accept" +#~ msgstr "Aktzeptieren" + +#~ msgid "Reject" +#~ msgstr "Ablehnen" + +#~ msgid "Boost" +#~ msgstr "Teilen" + +#~ msgid "Favorite" +#~ msgstr "Favorisieren" + +#~ msgid "Reply" +#~ msgstr "Antworten" + +#~ msgid "[ This post contains sensitive content ]" +#~ msgstr "[ Dieser Beitrag beinhaltet sensibles Material ]" + +#~ msgid "Unmute Conversation" +#~ msgstr "Konversation nicht mehr stummschalten" + +#~ msgid "Mute Conversation" +#~ msgstr "Konversation stummschalten" + +#~ msgid "New Account" +#~ msgstr "Neues Konto" + +#~ msgid "What's an instance?" +#~ msgstr "Was ist eine Instanz?" + +#~ msgid "Code:" +#~ msgstr "Code:" + +#~ msgid "Paste your instance authorization code here" +#~ msgstr "Füge dein Autorisierungstoken hier ein" + +#~ msgid "Add Account" +#~ msgstr "Konto hinzufügen" + +#~ msgid "Instance:" +#~ msgstr "Instanz:" + +#~ msgid "Post Visibility" +#~ msgstr "Post-Sichtbarkeit" + +#~ msgid "Add Media" +#~ msgstr "Medien hinzufügen" + +#~ msgid "Spoiler Warning" +#~ msgstr "Inhaltswarnung" + +#~ msgid "Cancel" +#~ msgstr "Abbrechen" + +#~ msgid "Toot!" +#~ msgstr "Tröt!" + +#~ msgid "Write your warning here" +#~ msgstr "Schreibe deine Warnung hier" + +#~ msgid "Edit Profile" +#~ msgstr "Profil bearbeiten" + +#~ msgid "Mention" +#~ msgstr "Erwähnen" + +#~ msgid "Report" +#~ msgstr "Melden" + +#~ msgid "Mute" +#~ msgstr "Stummschalten" + +#~ msgid "Block" +#~ msgstr "Blockieren" + +#~ msgid "More Actions" +#~ msgstr "Weitere Aktionen" + +#~ msgid "Toots" +#~ msgstr "Beiträge" + +#~ msgid "Unblock" +#~ msgstr "Entsperren" + +#~ msgid "Unmute" +#~ msgstr "Nicht mehr stummschalten" + +#~ msgid "Blocked" +#~ msgstr "Blockiert" + +#~ msgid "Blocking this instance" +#~ msgstr "Diese Instanz blockieren" + +#~ msgid "User not found" +#~ msgstr "Benutzer nicht gefunden" + #~ msgid "Conversation muted" #~ msgstr "Konversation stummgeschaltet" diff --git a/po/fr_FR.po b/po/fr_FR.po index bfbc8ae..086e12e 100644 --- a/po/fr_FR.po +++ b/po/fr_FR.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: com.github.bleakgrey.tootle\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-10-30 19:17+0300\n" +"POT-Creation-Date: 2019-09-16 16:00+0300\n" "PO-Revision-Date: 2018-06-17 10:07+0200\n" "Last-Translator: Guillaume\n" "Language-Team: none\n" @@ -20,7 +20,7 @@ msgstr "" "X-Poedit-SourceCharset: UTF-8\n" #: data/com.github.bleakgrey.tootle.desktop.in:4 -#: data/com.github.bleakgrey.tootle.appdata.xml.in:7 src/MainWindow.vala:68 +#: data/com.github.bleakgrey.tootle.appdata.xml.in:7 msgid "Tootle" msgstr "Tootle" @@ -42,30 +42,34 @@ msgid "Lightning fast client for Mastodon" msgstr "Client léger et rapide pour Mastodon" #: data/com.github.bleakgrey.tootle.appdata.xml.in:11 +#, fuzzy msgid "" "Tootle is a client for the world’s largest free, open-source, decentralized " -"microblogging network with real-time notifications and multiple accounts " -"support." +"microblogging network with real-time notifications and support for multiple " +"accounts." msgstr "" "Tootle est un client pour le plus grand réseau mondial de microblogging " "décentralisé, libre et open-source, avec un support multicomptes et la " "gestion des notifications instantanées." #: data/com.github.bleakgrey.tootle.appdata.xml.in:14 +#, fuzzy msgid "" -"Mastodon is lovely crafted with power and speed in mind, resulting in a " -"free, independent and popular alternative to the centralized social networks." +"Mastodon is lovingly crafted with power and speed in mind, resulting in a " +"free, independent, and popular alternative to the centralized social " +"networks." msgstr "" "Mastodon est conçu avec amour dans un objectif de puissance et de vitesse, " "en faisant une alternative libre, indépendante et populaire aux réseaux " "sociaux centralisés." #: data/com.github.bleakgrey.tootle.appdata.xml.in:17 +#, fuzzy msgid "" -"Anyone can run a server of Mastodon. Each server hosts individual user " -"accounts, the content they produce, and the content they are subscribed. " -"Every user can follow each other and share their posts regardless of their " -"server." +"Anyone can run a Mastodon server. Each server hosts individual user " +"accounts, the content they produce, and the content to which they are " +"subscribed. Every user can follow each other and share their posts " +"regardless of their server." msgstr "" "N'importe qui peut faire tourner un serveur Mastodon. Chaque serveur héberge " "des comptes utilisateurs individuels, le contenu qu'ils produisent et le " @@ -76,348 +80,282 @@ msgstr "" msgid "bleak_grey" msgstr "" -#: src/Desktop.vala:10 src/API/Account.vala:123 src/API/Account.vala:142 -#: src/API/Account.vala:161 src/Dialogs/NewAccountDialog.vala:102 +#: data/com.github.bleakgrey.tootle.appdata.xml.in:80 +#, fuzzy +msgid "Added Watchlist" +msgstr "Liste de veille" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:81 +msgid "Added Redraft support" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:82 +msgid "Added Pinning support" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:83 +msgid "Added Simplified Chinese and German translations" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:84 +msgid "Added --hidden Start Flag" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:85 +msgid "Added Shortcuts and Back mouse button support" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:86 +msgid "Changed Notifications screen behavior" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:87 +#: data/com.github.bleakgrey.tootle.appdata.xml.in:102 +msgid "Fixed minor bugs" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:94 +msgid "Added Russian, French and Polish translations" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:95 +#, fuzzy +msgid "Added Direct timeline" +msgstr "Mettre à jour le fil public:" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:96 +msgid "Added support for custom character limit" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:97 +msgid "Added support for streaming all timelines" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:98 +msgid "Added tooltips for image attachments" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:99 +msgid "Added remove action for attachments" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:100 +msgid "Changed behavior for mentioning users" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:101 +msgid "Changed behavior for missing image attachments" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:109 +msgid "Initial release" +msgstr "" + +#: src/Desktop.vala:10 msgid "Error" msgstr "Erreur" -#: src/Desktop.vala:46 +#: src/Desktop.vala:47 msgid "Media downloaded" msgstr "Médias téléchargés" -#: src/MainWindow.vala:48 -msgid "Back" -msgstr "Retour" - -#: src/MainWindow.vala:54 src/Dialogs/PostDialog.vala:29 -msgid "Toot" -msgstr "Écrire un message" - -#: src/Network.vala:58 -msgid "TLS Error" -msgstr "Erreur TLS" - -#: src/Network.vala:58 -msgid "Can't ensure secure connection: " -msgstr "Impossible d'assurer une connexion sécurisée:" - -#: src/Network.vala:66 +#: src/Services/Accounts.vala:31 #, c-format -msgid "Error: %s" -msgstr "Erreur: %s" +msgid "" +"This instance has invalidated this session. Please sign in again.\n" +"\n" +"%s" +msgstr "" -#: src/API/NotificationType.vala:50 -#, c-format -msgid "%s mentioned you" -msgstr "%s vous a mentionné" +#: src/Services/Network.vala:86 +msgid "Network Error" +msgstr "Erreur réseau" -#: src/API/NotificationType.vala:52 -#, c-format -msgid "%s boosted your toot" -msgstr "%s a partagé votre pouet" +#: src/API/Visibility.vala:36 +msgid "Unlisted" +msgstr "" -#: src/API/NotificationType.vala:54 -#, c-format -msgid "%s favorited your toot" -msgstr "%s a ajouté votre pouet à ses favoris" - -#: src/API/NotificationType.vala:56 -#, c-format -msgid "%s now follows you" -msgstr "%s vous suit désormais" - -#: src/API/NotificationType.vala:58 -#, c-format -msgid "%s wants to follow you" -msgstr "%s demande à vous suivre" - -#: src/API/NotificationType.vala:60 -#, fuzzy, c-format -msgid "%s posted a toot" -msgstr "%s a publié un pouet" - -#: src/API/Status.vala:174 -msgid "Boosted!" -msgstr "Partagé!" - -#: src/API/Status.vala:176 -msgid "Removed boost" -msgstr "Partage annulé" - -#: src/API/Status.vala:189 -msgid "Favorited!" -msgstr "Ajouté aux favoris!" - -#: src/API/Status.vala:191 -msgid "Removed from favorites" -msgstr "Supprimé des favoris" - -#: src/API/Status.vala:204 +#: src/API/Visibility.vala:38 #, fuzzy -msgid "Muted!" -msgstr "Masqué!" +msgid "Followers-only" +msgstr "Abonnés" -#: src/API/Status.vala:206 -msgid "Conversation unmuted" -msgstr "Discussion visible" +#: src/API/Visibility.vala:40 +msgid "Direct" +msgstr "" -#: src/API/Status.vala:219 -msgid "Pinned!" -msgstr "Épinglé!" +#: src/API/Visibility.vala:42 +msgid "Public" +msgstr "" -#: src/API/Status.vala:221 -#, fuzzy -msgid "Unpinned from profile" -msgstr "Désépinglé du profil" - -#: src/API/Status.vala:231 -msgid "Poof!" -msgstr "Poof!" - -#: src/API/StatusVisibility.vala:40 -msgid "Post to public timelines" -msgstr "Afficher dans le fil public" - -#: src/API/StatusVisibility.vala:42 +#: src/API/Visibility.vala:49 msgid "Don't post to public timelines" msgstr "Ne pas afficher dans le fil public" -#: src/API/StatusVisibility.vala:44 +#: src/API/Visibility.vala:51 msgid "Post to followers only" msgstr "Afficher seulement pour les abonnés" -#: src/API/StatusVisibility.vala:46 +#: src/API/Visibility.vala:53 msgid "Post to mentioned users only" msgstr "N'envoyer qu'aux personnes mentionnées" -#: src/Widgets/AccountsButton.vala:67 -msgid "Refresh" -msgstr "Actualiser" +#: src/API/Visibility.vala:55 +msgid "Post to public timelines" +msgstr "Afficher dans le fil public" -#: src/Widgets/AccountsButton.vala:71 -msgid "Favorites" -msgstr "Favoris" +#: src/API/NotificationType.vala:56 +#, fuzzy, c-format +msgid "" +"%s mentioned you" +msgstr "%s vous a mentionné" -#: src/Widgets/AccountsButton.vala:75 src/Views/DirectView.vala:12 -msgid "Direct Messages" -msgstr "Messages directs" +#: src/API/NotificationType.vala:58 +#, fuzzy, c-format +msgid "" +"%s boosted your status" +msgstr "%s a partagé votre pouet" -#: src/Widgets/AccountsButton.vala:79 src/Views/SearchView.vala:12 -msgid "Search" -msgstr "Chercher" +#: src/API/NotificationType.vala:60 +#, fuzzy, c-format +msgid "%s boosted" +msgstr "%s a partagé" -#: src/Widgets/AccountsButton.vala:83 -msgid "Watchlist" -msgstr "Liste de veille" +#: src/API/NotificationType.vala:62 +#, fuzzy, c-format +msgid "" +"%s favorited your status" +msgstr "%s a ajouté votre pouet à ses favoris" -#: src/Widgets/AccountsButton.vala:87 src/Dialogs/SettingsDialog.vala:18 -msgid "Settings" -msgstr "Paramètres" +#: src/API/NotificationType.vala:64 +#, fuzzy, c-format +msgid "" +"%s now follows you" +msgstr "%s vous suit désormais" -#: src/Widgets/AccountsButton.vala:142 -msgid "New Account" -msgstr "Nouveau Compte" +#: src/API/NotificationType.vala:66 +#, fuzzy, c-format +msgid "" +"%s wants to follow you" +msgstr "%s demande à vous suivre" -#: src/Widgets/AccountsButton.vala:143 -msgid "Click to add" -msgstr "Cliquer pour ajouter" +#: src/API/NotificationType.vala:68 +#, fuzzy, c-format +msgid "" +"%s posted a status" +msgstr "%s a publié un pouet" -#: src/Widgets/AccountWidget.vala:24 src/Widgets/AttachmentWidget.vala:130 -#: src/Widgets/StatusWidget.vala:289 +#: src/Widgets/RichLabel.vala:105 src/Widgets/Status.vala:206 +#: src/Widgets/Account.vala:28 msgid "Open in Browser" msgstr "Ouvrir dans le navigateur" -#: src/Widgets/AccountWidget.vala:26 src/Widgets/AttachmentWidget.vala:132 -#: src/Widgets/StatusWidget.vala:291 -msgid "Copy Link" -msgstr "Copier le lien" +#: src/Widgets/AccountsButton.vala:62 +msgid "Refresh" +msgstr "Actualiser" -#: src/Widgets/AttachmentBox.vala:41 -msgid "Select media files to add" -msgstr "Sélectionner les média à ajouter" +#: src/Widgets/AccountsButton.vala:67 +msgid "Favorites" +msgstr "Favoris" -#: src/Widgets/AttachmentBox.vala:44 -msgid "_Cancel" -msgstr "_Annuler" +#: src/Widgets/AccountsButton.vala:71 src/Views/Direct.vala:12 +msgid "Direct Messages" +msgstr "Messages directs" -#: src/Widgets/AttachmentBox.vala:46 -msgid "_Open" -msgstr "_Ouvrir" +#: src/Widgets/AccountsButton.vala:75 src/Views/Search.vala:12 +msgid "Search" +msgstr "Chercher" -#: src/Widgets/AttachmentWidget.vala:67 -#, c-format -msgid "Click to open %s media" -msgstr "Cliquer pour ouvrir les médias %s" +#: src/Widgets/AccountsButton.vala:79 src/Dialogs/WatchlistEditor.vala:99 +msgid "Watchlist" +msgstr "Liste de veille" -#: src/Widgets/AttachmentWidget.vala:84 -msgid "Uploading..." -msgstr "Téléchargement en cours..." +#: src/Widgets/AccountsButton.vala:83 src/Dialogs/Preferences.vala:17 +msgid "Settings" +msgstr "Paramètres" -#: src/Widgets/AttachmentWidget.vala:105 -msgid "File read error" -msgstr "Erreur de lecture du fichier" +#: src/Widgets/Status.vala:52 +msgid "[ Show more ]" +msgstr "" -#: src/Widgets/AttachmentWidget.vala:105 -#, c-format -msgid "Can't read file %s: %s" -msgstr "Impossible de lire le fichier %s: %s" - -#: src/Widgets/AttachmentWidget.vala:124 -msgid "Remove" -msgstr "Supprimer" - -#: src/Widgets/AttachmentWidget.vala:134 -msgid "Download" -msgstr "Télécharger" - -#: src/Widgets/NotificationWidget.vala:20 -msgid "Unknown Notification" -msgstr "Notification inconnue" - -#: src/Widgets/NotificationWidget.vala:25 -msgid "Dismiss" -msgstr "Annuler" - -#: src/Widgets/NotificationWidget.vala:64 -msgid "Accept" -msgstr "Accepter" - -#: src/Widgets/NotificationWidget.vala:66 -msgid "Reject" -msgstr "Rejeter" - -#: src/Widgets/StatusWidget.vala:84 -msgid "Boost" -msgstr "Partager" - -#: src/Widgets/StatusWidget.vala:91 -msgid "Favorite" -msgstr "Ajouter aux favoris" - -#: src/Widgets/StatusWidget.vala:98 -msgid "Reply" -msgstr "Répondre" - -#: src/Widgets/StatusWidget.vala:136 -#, c-format -msgid "%s boosted" -msgstr "%s a partagé" - -#: src/Widgets/StatusWidget.vala:151 -msgid "Toggle content" -msgstr "Afficher le contenu" - -#: src/Widgets/StatusWidget.vala:165 -msgid "[ This post contains sensitive content ]" -msgstr "[ Ce message comporte un contenu sensible ]" - -#: src/Widgets/StatusWidget.vala:234 +#: src/Widgets/Status.vala:120 msgid "This post can't be boosted" msgstr "Ce message ne peut être partagé" -#: src/Widgets/StatusWidget.vala:287 -msgid "Unmute Conversation" -msgstr "Rétablir la discussion" +#: src/Widgets/Status.vala:208 src/Widgets/Account.vala:30 +msgid "Copy Link" +msgstr "Copier le lien" -#: src/Widgets/StatusWidget.vala:287 -msgid "Mute Conversation" -msgstr "Masquer la discussion" - -#: src/Widgets/StatusWidget.vala:293 +#: src/Widgets/Status.vala:210 msgid "Copy Text" msgstr "Copier le texte" -#: src/Widgets/StatusWidget.vala:300 +#: src/Widgets/Status.vala:217 #, fuzzy msgid "Unpin from Profile" msgstr "Désépingler du profil" -#: src/Widgets/StatusWidget.vala:300 +#: src/Widgets/Status.vala:217 #, fuzzy msgid "Pin on Profile" msgstr "Épingler sur le profil" -#: src/Widgets/StatusWidget.vala:304 +#: src/Widgets/Status.vala:221 msgid "Delete" msgstr "Supprimer" -#: src/Widgets/StatusWidget.vala:308 src/Dialogs/PostDialog.vala:72 +#: src/Widgets/Status.vala:225 src/Dialogs/Compose.vala:73 msgid "Redraft" msgstr "Réecrire" -#: src/Dialogs/NewAccountDialog.vala:27 -msgid "New Account" -msgstr "Nouveau compte" +#: src/Widgets/Attachment/Box.vala:28 +msgid "Select media files to add" +msgstr "Sélectionner les média à ajouter" -#: src/Dialogs/NewAccountDialog.vala:38 -msgid "What's an instance?" -msgstr "Qu'est une instance?" +#: src/Widgets/Attachment/Box.vala:31 +msgid "_Cancel" +msgstr "_Annuler" -#: src/Dialogs/NewAccountDialog.vala:42 -msgid "Code:" -msgstr "Code:" +#: src/Widgets/Attachment/Box.vala:33 +msgid "_Open" +msgstr "_Ouvrir" -#: src/Dialogs/NewAccountDialog.vala:46 -msgid "Paste your instance authorization code here" -msgstr "Coller le code d'autorisation de votre instance ici" +#: src/Dialogs/MainWindow.vala:49 +msgid "Back" +msgstr "Retour" -#: src/Dialogs/NewAccountDialog.vala:49 -msgid "Add Account" -msgstr "Ajouter un compte" +#: src/Dialogs/MainWindow.vala:58 +msgid "Toot" +msgstr "Écrire un message" -#: src/Dialogs/NewAccountDialog.vala:60 -msgid "Instance:" -msgstr "Instance:" +#: src/Dialogs/MainWindow.vala:63 +msgid "Toggle content" +msgstr "Afficher le contenu" -#: src/Dialogs/NewAccountDialog.vala:102 -msgid "Please paste valid instance authorization code" -msgstr "Veuillez coller un code d'autorisation valide" +#: src/Dialogs/Compose.vala:69 +msgid "Post" +msgstr "" -#: src/Dialogs/NewAccountDialog.vala:110 -msgid "Network Error" -msgstr "Erreur réseau" - -#: src/Dialogs/PostDialog.vala:45 -msgid "Post Visibility" -msgstr "Visibilité du message" - -#: src/Dialogs/PostDialog.vala:52 -msgid "Add Media" -msgstr "Ajouter un média" - -#: src/Dialogs/PostDialog.vala:61 -msgid "Spoiler Warning" -msgstr "Ajouter un avertissement" - -#: src/Dialogs/PostDialog.vala:68 -msgid "Cancel" -msgstr "Annuler" - -#: src/Dialogs/PostDialog.vala:77 -msgid "Toot!" -msgstr "Envoyer le message!" - -#: src/Dialogs/PostDialog.vala:85 -msgid "Write your warning here" -msgstr "Écrire votre avertissement ici" - -#: src/Dialogs/SettingsDialog.vala:37 +#: src/Dialogs/Preferences.vala:36 msgid "Appearance" msgstr "Apparence" -#: src/Dialogs/SettingsDialog.vala:38 +#: src/Dialogs/Preferences.vala:37 msgid "Dark theme:" msgstr "Thème sombre:" -#: src/Dialogs/SettingsDialog.vala:41 +#: src/Dialogs/Preferences.vala:40 msgid "Timelines" msgstr "Fils" -#: src/Dialogs/SettingsDialog.vala:42 +#: src/Dialogs/Preferences.vala:41 msgid "Real-time updates:" msgstr "Mises à jour instantanées:" -#: src/Dialogs/SettingsDialog.vala:44 +#: src/Dialogs/Preferences.vala:43 msgid "Update public timelines:" msgstr "Mettre à jour le fil public:" @@ -425,144 +363,290 @@ msgstr "Mettre à jour le fil public:" #. grid.attach (new SettingsLabel (_("Use cache:")), 0, i); #. grid.attach (new SettingsSwitch ("cache"), 1, i++); #. grid.attach (new SettingsLabel (_("Max cache size (MB):")), 0, i); -#. var cache_size = new Gtk.SpinButton.with_range (16, 256, 1); +#. var cache_size = new SpinButton.with_range (16, 256, 1); #. settings.schema.bind ("cache-size", cache_size, "value", SettingsBindFlags.DEFAULT); #. grid.attach (cache_size, 1, i++); -#: src/Dialogs/SettingsDialog.vala:55 src/Views/NotificationsView.vala:34 +#: src/Dialogs/Preferences.vala:54 src/Views/Notifications.vala:33 msgid "Notifications" msgstr "Notifications" -#: src/Dialogs/SettingsDialog.vala:56 +#: src/Dialogs/Preferences.vala:55 msgid "Display notifications:" msgstr "Afficher les notifications:" -#: src/Dialogs/SettingsDialog.vala:58 +#: src/Dialogs/Preferences.vala:57 msgid "Always receive notifications:" msgstr "Toujours recevoir les notifications:" -#: src/Dialogs/SettingsDialog.vala:64 +#: src/Dialogs/Preferences.vala:63 src/Dialogs/WatchlistEditor.vala:162 msgid "_Close" msgstr "_Fermer" -#: src/Dialogs/WatchlistDialog.vala:20 +#: src/Dialogs/WatchlistEditor.vala:20 msgid "" "You'll be notified when toots from this user appear in your Home timeline." -msgstr "Vous serez averti lorsque des messages de cet utilisateur apparaîtront sur votre fil d'actualité." +msgstr "" +"Vous serez averti lorsque des messages de cet utilisateur apparaîtront sur " +"votre fil d'actualité." -#: src/Dialogs/WatchlistDialog.vala:21 +#: src/Dialogs/WatchlistEditor.vala:21 msgid "" "You'll be notified when toots with this hashtag appear in any public " "timelines." -msgstr "Vous serez averti lorsque des toots contenant ce hashtag apparaîtront dans n'importe quel fil public." +msgstr "" +"Vous serez averti lorsque des toots contenant ce hashtag apparaîtront dans " +"n'importe quel fil public." -#: src/Dialogs/WatchlistDialog.vala:137 +#: src/Dialogs/WatchlistEditor.vala:108 msgid "Users" msgstr "Utilisateurs" -#: src/Dialogs/WatchlistDialog.vala:138 src/Views/SearchView.vala:100 +#: src/Dialogs/WatchlistEditor.vala:109 src/Views/Search.vala:100 msgid "Hashtags" msgstr "Hashtags" -#: src/Dialogs/WatchlistDialog.vala:148 +#: src/Dialogs/WatchlistEditor.vala:122 msgid "Add" msgstr "Ajouter" -#: src/Views/AbstractView.vala:59 +#: src/Views/Base.vala:6 msgid "Nothing to see here" msgstr "Rien à voir par ici" -#: src/Views/AccountView.vala:79 -msgid "Edit Profile" -msgstr "Éditer votre profil" +#: src/Views/NewAccount.vala:91 +msgid "Instance URL is invalid" +msgstr "" -#: src/Views/AccountView.vala:80 -msgid "Mention" -msgstr "Mentionner" +#: src/Views/NewAccount.vala:133 +#, fuzzy +msgid "Please paste a valid authorization code" +msgstr "Veuillez coller un code d'autorisation valide" -#: src/Views/AccountView.vala:81 -msgid "Report" -msgstr "Signaler" - -#: src/Views/AccountView.vala:82 src/Views/AccountView.vala:167 -msgid "Mute" -msgstr "Masquer" - -#: src/Views/AccountView.vala:83 src/Views/AccountView.vala:166 -msgid "Block" -msgstr "Bloquer" - -#: src/Views/AccountView.vala:95 -msgid "More Actions" -msgstr "Plus d'actions" - -#: src/Views/AccountView.vala:115 -msgid "Toots" -msgstr "Pouets" - -#: src/Views/AccountView.vala:116 -msgid "Follows" -msgstr "Abonnements" - -#: src/Views/AccountView.vala:120 -msgid "Followers" -msgstr "Abonnés" - -#: src/Views/AccountView.vala:155 -msgid "Unfollow" -msgstr "Ne plus suivre" - -#: src/Views/AccountView.vala:159 -msgid "Follow" -msgstr "Suivre" - -#: src/Views/AccountView.vala:166 -msgid "Unblock" -msgstr "Débloquer" - -#: src/Views/AccountView.vala:167 -msgid "Unmute" -msgstr "Rétablir" - -#: src/Views/AccountView.vala:228 -msgid "Sent follow request" -msgstr "Demande de suivi envoyée" - -#: src/Views/AccountView.vala:230 -msgid "Blocked" -msgstr "Bloqué" - -#: src/Views/AccountView.vala:232 -msgid "Follows you" -msgstr "Vous suis actuellement" - -#: src/Views/AccountView.vala:234 -msgid "Blocking this instance" -msgstr "Blocage de cette instance" - -#: src/Views/AccountView.vala:269 -msgid "User not found" -msgstr "Utilisateur non trouvé" - -#: src/Views/FederatedView.vala:12 -msgid "Federated Timeline" -msgstr "Fil global" - -#: src/Views/HomeView.vala:12 src/Views/TimelineView.vala:36 +#: src/Views/Timeline.vala:34 src/Views/Home.vala:12 msgid "Home" msgstr "Accueil" -#: src/Views/LocalView.vala:12 +#: src/Views/Local.vala:12 msgid "Local Timeline" msgstr "Fil local" -#: src/Views/SearchView.vala:82 +#: src/Views/Federated.vala:12 +msgid "Federated Timeline" +msgstr "Fil global" + +#: src/Views/Profile.vala:61 +#, c-format +msgid "%s Posts" +msgstr "" + +#: src/Views/Profile.vala:67 +#, fuzzy, c-format +msgid "%s Follows" +msgstr "Abonnements" + +#: src/Views/Profile.vala:73 +#, fuzzy, c-format +msgid "%s Followers" +msgstr "Abonnés" + +#: src/Views/Profile.vala:109 +msgid "Sent follow request" +msgstr "Demande de suivi envoyée" + +#: src/Views/Profile.vala:111 +#, fuzzy +msgid "Mutually follows you" +msgstr "Vous suis actuellement" + +#: src/Views/Profile.vala:113 +msgid "Follows you" +msgstr "Vous suis actuellement" + +#: src/Views/Profile.vala:124 +#, fuzzy +msgid "Follow back" +msgstr "Suivre" + +#: src/Views/Profile.vala:126 +msgid "Unfollow" +msgstr "Ne plus suivre" + +#: src/Views/Profile.vala:128 +msgid "Follow" +msgstr "Suivre" + +#: src/Views/Search.vala:82 msgid "Accounts" msgstr "Comptes" -#: src/Views/SearchView.vala:91 +#: src/Views/Search.vala:91 msgid "Statuses" msgstr "Statuts" +#~ msgid "TLS Error" +#~ msgstr "Erreur TLS" + +#~ msgid "Can't ensure secure connection: " +#~ msgstr "Impossible d'assurer une connexion sécurisée:" + +#~ msgid "Error: %s" +#~ msgstr "Erreur: %s" + +#~ msgid "Boosted!" +#~ msgstr "Partagé!" + +#~ msgid "Removed boost" +#~ msgstr "Partage annulé" + +#~ msgid "Favorited!" +#~ msgstr "Ajouté aux favoris!" + +#~ msgid "Removed from favorites" +#~ msgstr "Supprimé des favoris" + +#, fuzzy +#~ msgid "Muted!" +#~ msgstr "Masqué!" + +#~ msgid "Conversation unmuted" +#~ msgstr "Discussion visible" + +#~ msgid "Pinned!" +#~ msgstr "Épinglé!" + +#, fuzzy +#~ msgid "Unpinned from profile" +#~ msgstr "Désépinglé du profil" + +#~ msgid "Poof!" +#~ msgstr "Poof!" + +#~ msgid "New Account" +#~ msgstr "Nouveau Compte" + +#~ msgid "Click to add" +#~ msgstr "Cliquer pour ajouter" + +#~ msgid "Click to open %s media" +#~ msgstr "Cliquer pour ouvrir les médias %s" + +#~ msgid "Uploading..." +#~ msgstr "Téléchargement en cours..." + +#~ msgid "File read error" +#~ msgstr "Erreur de lecture du fichier" + +#~ msgid "Can't read file %s: %s" +#~ msgstr "Impossible de lire le fichier %s: %s" + +#~ msgid "Remove" +#~ msgstr "Supprimer" + +#~ msgid "Download" +#~ msgstr "Télécharger" + +#~ msgid "Unknown Notification" +#~ msgstr "Notification inconnue" + +#~ msgid "Dismiss" +#~ msgstr "Annuler" + +#~ msgid "Accept" +#~ msgstr "Accepter" + +#~ msgid "Reject" +#~ msgstr "Rejeter" + +#~ msgid "Boost" +#~ msgstr "Partager" + +#~ msgid "Favorite" +#~ msgstr "Ajouter aux favoris" + +#~ msgid "Reply" +#~ msgstr "Répondre" + +#~ msgid "[ This post contains sensitive content ]" +#~ msgstr "[ Ce message comporte un contenu sensible ]" + +#~ msgid "Unmute Conversation" +#~ msgstr "Rétablir la discussion" + +#~ msgid "Mute Conversation" +#~ msgstr "Masquer la discussion" + +#~ msgid "New Account" +#~ msgstr "Nouveau compte" + +#~ msgid "What's an instance?" +#~ msgstr "Qu'est une instance?" + +#~ msgid "Code:" +#~ msgstr "Code:" + +#~ msgid "Paste your instance authorization code here" +#~ msgstr "Coller le code d'autorisation de votre instance ici" + +#~ msgid "Add Account" +#~ msgstr "Ajouter un compte" + +#~ msgid "Instance:" +#~ msgstr "Instance:" + +#~ msgid "Post Visibility" +#~ msgstr "Visibilité du message" + +#~ msgid "Add Media" +#~ msgstr "Ajouter un média" + +#~ msgid "Spoiler Warning" +#~ msgstr "Ajouter un avertissement" + +#~ msgid "Cancel" +#~ msgstr "Annuler" + +#~ msgid "Toot!" +#~ msgstr "Envoyer le message!" + +#~ msgid "Write your warning here" +#~ msgstr "Écrire votre avertissement ici" + +#~ msgid "Edit Profile" +#~ msgstr "Éditer votre profil" + +#~ msgid "Mention" +#~ msgstr "Mentionner" + +#~ msgid "Report" +#~ msgstr "Signaler" + +#~ msgid "Mute" +#~ msgstr "Masquer" + +#~ msgid "Block" +#~ msgstr "Bloquer" + +#~ msgid "More Actions" +#~ msgstr "Plus d'actions" + +#~ msgid "Toots" +#~ msgstr "Pouets" + +#~ msgid "Unblock" +#~ msgstr "Débloquer" + +#~ msgid "Unmute" +#~ msgstr "Rétablir" + +#~ msgid "Blocked" +#~ msgstr "Bloqué" + +#~ msgid "Blocking this instance" +#~ msgstr "Blocage de cette instance" + +#~ msgid "User not found" +#~ msgstr "Utilisateur non trouvé" + #~ msgid "Conversation muted" #~ msgstr "Discussion masquée" diff --git a/po/pl.po b/po/pl.po index c939ce2..bed8787 100644 --- a/po/pl.po +++ b/po/pl.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: com.github.bleakgrey.tootle\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-10-30 19:17+0300\n" +"POT-Creation-Date: 2019-09-16 16:00+0300\n" "PO-Revision-Date: 2018-11-01 12:20+0100\n" "Last-Translator: Marcin Mikołajczak \n" "Language-Team: Polish\n" @@ -18,7 +18,7 @@ msgstr "" "X-Generator: Poedit 2.1.1\n" #: data/com.github.bleakgrey.tootle.desktop.in:4 -#: data/com.github.bleakgrey.tootle.appdata.xml.in:7 src/MainWindow.vala:68 +#: data/com.github.bleakgrey.tootle.appdata.xml.in:7 msgid "Tootle" msgstr "Tootle" @@ -40,30 +40,34 @@ msgid "Lightning fast client for Mastodon" msgstr "Klient Mastodona szybki jak błyskawica" #: data/com.github.bleakgrey.tootle.appdata.xml.in:11 +#, fuzzy msgid "" "Tootle is a client for the world’s largest free, open-source, decentralized " -"microblogging network with real-time notifications and multiple accounts " -"support." +"microblogging network with real-time notifications and support for multiple " +"accounts." msgstr "" "Tootle jest klientem największej na świecie wolnej i otwartoźródłowej, " "zdecentralizowanej sieci społecznościowej obsługującym powiadomienia w " "czasie rzeczywistym i wiele kont jednocześnie." #: data/com.github.bleakgrey.tootle.appdata.xml.in:14 +#, fuzzy msgid "" -"Mastodon is lovely crafted with power and speed in mind, resulting in a " -"free, independent and popular alternative to the centralized social networks." +"Mastodon is lovingly crafted with power and speed in mind, resulting in a " +"free, independent, and popular alternative to the centralized social " +"networks." msgstr "" "Mastodon został zaprojektowany z myślą o funkcjonalności i szybkości, w " "wyniku czego powstałą wolna, niezależna i popularna alternatywa dla " "scentralizowanych sieci społecznościowych." #: data/com.github.bleakgrey.tootle.appdata.xml.in:17 +#, fuzzy msgid "" -"Anyone can run a server of Mastodon. Each server hosts individual user " -"accounts, the content they produce, and the content they are subscribed. " -"Every user can follow each other and share their posts regardless of their " -"server." +"Anyone can run a Mastodon server. Each server hosts individual user " +"accounts, the content they produce, and the content to which they are " +"subscribed. Every user can follow each other and share their posts " +"regardless of their server." msgstr "" "Każdy może uruchomić serwer Mastodona. Każdy serwer przechowuje konta innych " "użytkowników, zawartość przez nich tworzoną i wpisy obserwowanych osób. " @@ -74,344 +78,280 @@ msgstr "" msgid "bleak_grey" msgstr "bleak_grey" -#: src/Desktop.vala:10 src/API/Account.vala:123 src/API/Account.vala:142 -#: src/API/Account.vala:161 src/Dialogs/NewAccountDialog.vala:102 +#: data/com.github.bleakgrey.tootle.appdata.xml.in:80 +#, fuzzy +msgid "Added Watchlist" +msgstr "Lista obserwowanych" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:81 +msgid "Added Redraft support" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:82 +msgid "Added Pinning support" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:83 +msgid "Added Simplified Chinese and German translations" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:84 +msgid "Added --hidden Start Flag" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:85 +msgid "Added Shortcuts and Back mouse button support" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:86 +msgid "Changed Notifications screen behavior" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:87 +#: data/com.github.bleakgrey.tootle.appdata.xml.in:102 +msgid "Fixed minor bugs" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:94 +msgid "Added Russian, French and Polish translations" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:95 +#, fuzzy +msgid "Added Direct timeline" +msgstr "Aktualizuj publiczne osie czasu:" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:96 +msgid "Added support for custom character limit" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:97 +msgid "Added support for streaming all timelines" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:98 +msgid "Added tooltips for image attachments" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:99 +msgid "Added remove action for attachments" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:100 +msgid "Changed behavior for mentioning users" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:101 +msgid "Changed behavior for missing image attachments" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:109 +msgid "Initial release" +msgstr "" + +#: src/Desktop.vala:10 msgid "Error" msgstr "Błąd" -#: src/Desktop.vala:46 +#: src/Desktop.vala:47 msgid "Media downloaded" msgstr "Pobrano zawartość multimedialną" -#: src/MainWindow.vala:48 -msgid "Back" -msgstr "Wróć" - -#: src/MainWindow.vala:54 src/Dialogs/PostDialog.vala:29 -msgid "Toot" -msgstr "Wyślij" - -#: src/Network.vala:58 -msgid "TLS Error" -msgstr "Błąd TLS" - -#: src/Network.vala:58 -msgid "Can't ensure secure connection: " -msgstr "Nie można zapewnić bezpiecznego połączenia: " - -#: src/Network.vala:66 +#: src/Services/Accounts.vala:31 #, c-format -msgid "Error: %s" -msgstr "Błąd: %s" - -#: src/API/NotificationType.vala:50 -#, c-format -msgid "%s mentioned you" -msgstr "%s wspomniał o Tobie" - -#: src/API/NotificationType.vala:52 -#, c-format -msgid "%s boosted your toot" -msgstr "%s podbił Twój wpis" - -#: src/API/NotificationType.vala:54 -#, c-format -msgid "%s favorited your toot" -msgstr "%s dodał Twój wpis do ulubionych" - -#: src/API/NotificationType.vala:56 -#, c-format -msgid "%s now follows you" -msgstr "%s zaczął Cię śledzić" - -#: src/API/NotificationType.vala:58 -#, c-format -msgid "%s wants to follow you" -msgstr "%s chce Cię śledzić" - -#: src/API/NotificationType.vala:60 -#, c-format -msgid "%s posted a toot" -msgstr "%s utworzył wpis" - -#: src/API/Status.vala:174 -msgid "Boosted!" -msgstr "Podbito!" - -#: src/API/Status.vala:176 -msgid "Removed boost" -msgstr "Cofnięto podbicie" - -#: src/API/Status.vala:189 -msgid "Favorited!" -msgstr "Dodano do ulubionych!" - -#: src/API/Status.vala:191 -msgid "Removed from favorites" -msgstr "Usunięto z ulubionych" - -#: src/API/Status.vala:204 -msgid "Muted!" -msgstr "Wyciszono!" - -#: src/API/Status.vala:206 -msgid "Conversation unmuted" -msgstr "Cofnięto wyciszenie konwersacji" - -#: src/API/Status.vala:219 -msgid "Pinned!" -msgstr "Przypięto!" - -#: src/API/Status.vala:221 -msgid "Unpinned from profile" -msgstr "Cofnięto przypięcie" - -#: src/API/Status.vala:231 -msgid "Poof!" +msgid "" +"This instance has invalidated this session. Please sign in again.\n" +"\n" +"%s" msgstr "" -#: src/API/StatusVisibility.vala:40 -msgid "Post to public timelines" -msgstr "Wyświetlaj na publicznej osi czasu" - -#: src/API/StatusVisibility.vala:42 -msgid "Don't post to public timelines" -msgstr "Nie wyświetlaj na publicznej osi czasu" - -#: src/API/StatusVisibility.vala:44 -msgid "Post to followers only" -msgstr "Wyślij tylko dla śledzących" - -#: src/API/StatusVisibility.vala:46 -msgid "Post to mentioned users only" -msgstr "Wyślij tylko dla wspomnianych" - -#: src/Widgets/AccountsButton.vala:67 -msgid "Refresh" -msgstr "Odśwież" - -#: src/Widgets/AccountsButton.vala:71 -msgid "Favorites" -msgstr "Ulubione" - -#: src/Widgets/AccountsButton.vala:75 src/Views/DirectView.vala:12 -msgid "Direct Messages" -msgstr "Wiadomości bezpośrednie" - -#: src/Widgets/AccountsButton.vala:79 src/Views/SearchView.vala:12 -msgid "Search" -msgstr "Wyszukiwanie" - -#: src/Widgets/AccountsButton.vala:83 -msgid "Watchlist" -msgstr "Lista obserwowanych" - -#: src/Widgets/AccountsButton.vala:87 src/Dialogs/SettingsDialog.vala:18 -msgid "Settings" -msgstr "Ustawienia" - -#: src/Widgets/AccountsButton.vala:142 -msgid "New Account" -msgstr "Nowe konto" - -#: src/Widgets/AccountsButton.vala:143 -msgid "Click to add" -msgstr "Naciśnij aby dodać" - -#: src/Widgets/AccountWidget.vala:24 src/Widgets/AttachmentWidget.vala:130 -#: src/Widgets/StatusWidget.vala:289 -msgid "Open in Browser" -msgstr "Otwórz w przeglądarce" - -#: src/Widgets/AccountWidget.vala:26 src/Widgets/AttachmentWidget.vala:132 -#: src/Widgets/StatusWidget.vala:291 -msgid "Copy Link" -msgstr "Skopiuj odnośnik" - -#: src/Widgets/AttachmentBox.vala:41 -msgid "Select media files to add" -msgstr "Zaznacz pliki multimedialne do dodania" - -#: src/Widgets/AttachmentBox.vala:44 -msgid "_Cancel" -msgstr "_Anuluj" - -#: src/Widgets/AttachmentBox.vala:46 -msgid "_Open" -msgstr "_Otwórz" - -#: src/Widgets/AttachmentWidget.vala:67 -#, c-format -msgid "Click to open %s media" -msgstr "Naciśnij aby otworzyć %s multimediów" - -#: src/Widgets/AttachmentWidget.vala:84 -msgid "Uploading..." -msgstr "Wysyłanie…" - -#: src/Widgets/AttachmentWidget.vala:105 -msgid "File read error" -msgstr "Błąd odczytywania plików" - -#: src/Widgets/AttachmentWidget.vala:105 -#, c-format -msgid "Can't read file %s: %s" -msgstr "Nie można odczytać pliku %s: %s" - -#: src/Widgets/AttachmentWidget.vala:124 -msgid "Remove" -msgstr "Usuń" - -#: src/Widgets/AttachmentWidget.vala:134 -msgid "Download" -msgstr "Pobierz" - -#: src/Widgets/NotificationWidget.vala:20 -msgid "Unknown Notification" -msgstr "Nieznane powiadomienie" - -#: src/Widgets/NotificationWidget.vala:25 -msgid "Dismiss" -msgstr "Pomiń" - -#: src/Widgets/NotificationWidget.vala:64 -msgid "Accept" -msgstr "Zaakceptuj" - -#: src/Widgets/NotificationWidget.vala:66 -msgid "Reject" -msgstr "Odrzuć" - -#: src/Widgets/StatusWidget.vala:84 -msgid "Boost" -msgstr "Podbij" - -#: src/Widgets/StatusWidget.vala:91 -msgid "Favorite" -msgstr "Dodaj do ulubionych" - -#: src/Widgets/StatusWidget.vala:98 -msgid "Reply" -msgstr "Odpowiedz" - -#: src/Widgets/StatusWidget.vala:136 -#, c-format -msgid "%s boosted" -msgstr "%s podbił" - -#: src/Widgets/StatusWidget.vala:151 -msgid "Toggle content" -msgstr "Przełącz zawartość" - -#: src/Widgets/StatusWidget.vala:165 -msgid "[ This post contains sensitive content ]" -msgstr "[ Ten wpis zawiera zawartość wrażliwą ]" - -#: src/Widgets/StatusWidget.vala:234 -msgid "This post can't be boosted" -msgstr "Ten wpis nie może zostać podbity" - -#: src/Widgets/StatusWidget.vala:287 -msgid "Unmute Conversation" -msgstr "Cofnij wyciszenie konwersacji" - -#: src/Widgets/StatusWidget.vala:287 -msgid "Mute Conversation" -msgstr "Wycisz konwersację" - -#: src/Widgets/StatusWidget.vala:293 -msgid "Copy Text" -msgstr "Skopiuj tekst" - -#: src/Widgets/StatusWidget.vala:300 -msgid "Unpin from Profile" -msgstr "Cofnij przypięcie" - -#: src/Widgets/StatusWidget.vala:300 -msgid "Pin on Profile" -msgstr "Przypnij do profilu" - -#: src/Widgets/StatusWidget.vala:304 -msgid "Delete" -msgstr "Usuń" - -#: src/Widgets/StatusWidget.vala:308 src/Dialogs/PostDialog.vala:72 -msgid "Redraft" -msgstr "Przeredaguj" - -#: src/Dialogs/NewAccountDialog.vala:27 -msgid "New Account" -msgstr "Nowe konto" - -#: src/Dialogs/NewAccountDialog.vala:38 -msgid "What's an instance?" -msgstr "Czym jest instancja?" - -#: src/Dialogs/NewAccountDialog.vala:42 -msgid "Code:" -msgstr "Kod:" - -#: src/Dialogs/NewAccountDialog.vala:46 -msgid "Paste your instance authorization code here" -msgstr "Wklej kod autoryzacji swojej instancji tutaj" - -#: src/Dialogs/NewAccountDialog.vala:49 -msgid "Add Account" -msgstr "Dodaj konto" - -#: src/Dialogs/NewAccountDialog.vala:60 -msgid "Instance:" -msgstr "Instancja:" - -#: src/Dialogs/NewAccountDialog.vala:102 -msgid "Please paste valid instance authorization code" -msgstr "Wklej prawidłowy kod autoryzacji tutaj" - -#: src/Dialogs/NewAccountDialog.vala:110 +#: src/Services/Network.vala:86 msgid "Network Error" msgstr "Błąd sieci" -#: src/Dialogs/PostDialog.vala:45 -msgid "Post Visibility" -msgstr "Widoczność wpisu" +#: src/API/Visibility.vala:36 +msgid "Unlisted" +msgstr "" -#: src/Dialogs/PostDialog.vala:52 -msgid "Add Media" -msgstr "Dodaj zawartość multimedialną" +#: src/API/Visibility.vala:38 +#, fuzzy +msgid "Followers-only" +msgstr "Śledzący" -#: src/Dialogs/PostDialog.vala:61 -msgid "Spoiler Warning" -msgstr "Ostrzeżenie o zawartości" +#: src/API/Visibility.vala:40 +msgid "Direct" +msgstr "" -#: src/Dialogs/PostDialog.vala:68 -msgid "Cancel" -msgstr "Anuluj" +#: src/API/Visibility.vala:42 +msgid "Public" +msgstr "" -#: src/Dialogs/PostDialog.vala:77 -msgid "Toot!" +#: src/API/Visibility.vala:49 +msgid "Don't post to public timelines" +msgstr "Nie wyświetlaj na publicznej osi czasu" + +#: src/API/Visibility.vala:51 +msgid "Post to followers only" +msgstr "Wyślij tylko dla śledzących" + +#: src/API/Visibility.vala:53 +msgid "Post to mentioned users only" +msgstr "Wyślij tylko dla wspomnianych" + +#: src/API/Visibility.vala:55 +msgid "Post to public timelines" +msgstr "Wyświetlaj na publicznej osi czasu" + +#: src/API/NotificationType.vala:56 +#, fuzzy, c-format +msgid "" +"%s mentioned you" +msgstr "%s wspomniał o Tobie" + +#: src/API/NotificationType.vala:58 +#, fuzzy, c-format +msgid "" +"%s boosted your status" +msgstr "%s podbił Twój wpis" + +#: src/API/NotificationType.vala:60 +#, fuzzy, c-format +msgid "%s boosted" +msgstr "%s podbił" + +#: src/API/NotificationType.vala:62 +#, fuzzy, c-format +msgid "" +"%s favorited your status" +msgstr "%s dodał Twój wpis do ulubionych" + +#: src/API/NotificationType.vala:64 +#, fuzzy, c-format +msgid "" +"%s now follows you" +msgstr "%s zaczął Cię śledzić" + +#: src/API/NotificationType.vala:66 +#, fuzzy, c-format +msgid "" +"%s wants to follow you" +msgstr "%s chce Cię śledzić" + +#: src/API/NotificationType.vala:68 +#, fuzzy, c-format +msgid "" +"%s posted a status" +msgstr "%s utworzył wpis" + +#: src/Widgets/RichLabel.vala:105 src/Widgets/Status.vala:206 +#: src/Widgets/Account.vala:28 +msgid "Open in Browser" +msgstr "Otwórz w przeglądarce" + +#: src/Widgets/AccountsButton.vala:62 +msgid "Refresh" +msgstr "Odśwież" + +#: src/Widgets/AccountsButton.vala:67 +msgid "Favorites" +msgstr "Ulubione" + +#: src/Widgets/AccountsButton.vala:71 src/Views/Direct.vala:12 +msgid "Direct Messages" +msgstr "Wiadomości bezpośrednie" + +#: src/Widgets/AccountsButton.vala:75 src/Views/Search.vala:12 +msgid "Search" +msgstr "Wyszukiwanie" + +#: src/Widgets/AccountsButton.vala:79 src/Dialogs/WatchlistEditor.vala:99 +msgid "Watchlist" +msgstr "Lista obserwowanych" + +#: src/Widgets/AccountsButton.vala:83 src/Dialogs/Preferences.vala:17 +msgid "Settings" +msgstr "Ustawienia" + +#: src/Widgets/Status.vala:52 +msgid "[ Show more ]" +msgstr "" + +#: src/Widgets/Status.vala:120 +msgid "This post can't be boosted" +msgstr "Ten wpis nie może zostać podbity" + +#: src/Widgets/Status.vala:208 src/Widgets/Account.vala:30 +msgid "Copy Link" +msgstr "Skopiuj odnośnik" + +#: src/Widgets/Status.vala:210 +msgid "Copy Text" +msgstr "Skopiuj tekst" + +#: src/Widgets/Status.vala:217 +msgid "Unpin from Profile" +msgstr "Cofnij przypięcie" + +#: src/Widgets/Status.vala:217 +msgid "Pin on Profile" +msgstr "Przypnij do profilu" + +#: src/Widgets/Status.vala:221 +msgid "Delete" +msgstr "Usuń" + +#: src/Widgets/Status.vala:225 src/Dialogs/Compose.vala:73 +msgid "Redraft" +msgstr "Przeredaguj" + +#: src/Widgets/Attachment/Box.vala:28 +msgid "Select media files to add" +msgstr "Zaznacz pliki multimedialne do dodania" + +#: src/Widgets/Attachment/Box.vala:31 +msgid "_Cancel" +msgstr "_Anuluj" + +#: src/Widgets/Attachment/Box.vala:33 +msgid "_Open" +msgstr "_Otwórz" + +#: src/Dialogs/MainWindow.vala:49 +msgid "Back" +msgstr "Wróć" + +#: src/Dialogs/MainWindow.vala:58 +msgid "Toot" msgstr "Wyślij" -#: src/Dialogs/PostDialog.vala:85 -msgid "Write your warning here" -msgstr "Wprowadź zawartość ostrzeżenia tutaj" +#: src/Dialogs/MainWindow.vala:63 +msgid "Toggle content" +msgstr "Przełącz zawartość" -#: src/Dialogs/SettingsDialog.vala:37 +#: src/Dialogs/Compose.vala:69 +msgid "Post" +msgstr "" + +#: src/Dialogs/Preferences.vala:36 msgid "Appearance" msgstr "Wygląd" -#: src/Dialogs/SettingsDialog.vala:38 +#: src/Dialogs/Preferences.vala:37 msgid "Dark theme:" msgstr "Ciemny motyw:" -#: src/Dialogs/SettingsDialog.vala:41 +#: src/Dialogs/Preferences.vala:40 msgid "Timelines" msgstr "Osie czasu" -#: src/Dialogs/SettingsDialog.vala:42 +#: src/Dialogs/Preferences.vala:41 msgid "Real-time updates:" msgstr "Aktualizacje w czasie rzeczywistym:" -#: src/Dialogs/SettingsDialog.vala:44 +#: src/Dialogs/Preferences.vala:43 msgid "Update public timelines:" msgstr "Aktualizuj publiczne osie czasu:" @@ -419,33 +359,33 @@ msgstr "Aktualizuj publiczne osie czasu:" #. grid.attach (new SettingsLabel (_("Use cache:")), 0, i); #. grid.attach (new SettingsSwitch ("cache"), 1, i++); #. grid.attach (new SettingsLabel (_("Max cache size (MB):")), 0, i); -#. var cache_size = new Gtk.SpinButton.with_range (16, 256, 1); +#. var cache_size = new SpinButton.with_range (16, 256, 1); #. settings.schema.bind ("cache-size", cache_size, "value", SettingsBindFlags.DEFAULT); #. grid.attach (cache_size, 1, i++); -#: src/Dialogs/SettingsDialog.vala:55 src/Views/NotificationsView.vala:34 +#: src/Dialogs/Preferences.vala:54 src/Views/Notifications.vala:33 msgid "Notifications" msgstr "Powiadomienia" -#: src/Dialogs/SettingsDialog.vala:56 +#: src/Dialogs/Preferences.vala:55 msgid "Display notifications:" msgstr "Wyświetlaj powiadomienia:" -#: src/Dialogs/SettingsDialog.vala:58 +#: src/Dialogs/Preferences.vala:57 msgid "Always receive notifications:" msgstr "Zawsze otrzymuj powiadomienia:" -#: src/Dialogs/SettingsDialog.vala:64 +#: src/Dialogs/Preferences.vala:63 src/Dialogs/WatchlistEditor.vala:162 msgid "_Close" msgstr "_Zamknij" -#: src/Dialogs/WatchlistDialog.vala:20 +#: src/Dialogs/WatchlistEditor.vala:20 msgid "" "You'll be notified when toots from this user appear in your Home timeline." msgstr "" "Otrzymasz powiadomienie, kiedy wpisy tego użytkownika pojawią się na Twojej " "osi czasu." -#: src/Dialogs/WatchlistDialog.vala:21 +#: src/Dialogs/WatchlistEditor.vala:21 msgid "" "You'll be notified when toots with this hashtag appear in any public " "timelines." @@ -453,114 +393,251 @@ msgstr "" "Otrzymasz powiadomienie, kiedy wpisy z tym hashtagiem pojawią się na " "publicznej osi czasu." -#: src/Dialogs/WatchlistDialog.vala:137 +#: src/Dialogs/WatchlistEditor.vala:108 msgid "Users" msgstr "Użytkownicy" -#: src/Dialogs/WatchlistDialog.vala:138 src/Views/SearchView.vala:100 +#: src/Dialogs/WatchlistEditor.vala:109 src/Views/Search.vala:100 msgid "Hashtags" msgstr "Hashtagi" -#: src/Dialogs/WatchlistDialog.vala:148 +#: src/Dialogs/WatchlistEditor.vala:122 msgid "Add" msgstr "Dodaj" -#: src/Views/AbstractView.vala:59 +#: src/Views/Base.vala:6 msgid "Nothing to see here" msgstr "Nie ma nic do wyświetlenia" -#: src/Views/AccountView.vala:79 -msgid "Edit Profile" -msgstr "Edytuj profil" +#: src/Views/NewAccount.vala:91 +msgid "Instance URL is invalid" +msgstr "" -#: src/Views/AccountView.vala:80 -msgid "Mention" -msgstr "Wspomnij" +#: src/Views/NewAccount.vala:133 +#, fuzzy +msgid "Please paste a valid authorization code" +msgstr "Wklej prawidłowy kod autoryzacji tutaj" -#: src/Views/AccountView.vala:81 -msgid "Report" -msgstr "Zgłoś" - -#: src/Views/AccountView.vala:82 src/Views/AccountView.vala:167 -msgid "Mute" -msgstr "Wycisz" - -#: src/Views/AccountView.vala:83 src/Views/AccountView.vala:166 -msgid "Block" -msgstr "Zablokuj" - -#: src/Views/AccountView.vala:95 -msgid "More Actions" -msgstr "Więcej działań" - -#: src/Views/AccountView.vala:115 -msgid "Toots" -msgstr "Wpisy" - -#: src/Views/AccountView.vala:116 -msgid "Follows" -msgstr "Śledzeni" - -#: src/Views/AccountView.vala:120 -msgid "Followers" -msgstr "Śledzący" - -#: src/Views/AccountView.vala:155 -msgid "Unfollow" -msgstr "Przestań śledzić" - -#: src/Views/AccountView.vala:159 -msgid "Follow" -msgstr "Śledź" - -#: src/Views/AccountView.vala:166 -msgid "Unblock" -msgstr "Odblokuj" - -#: src/Views/AccountView.vala:167 -msgid "Unmute" -msgstr "Cofnij wyciszenie" - -#: src/Views/AccountView.vala:228 -msgid "Sent follow request" -msgstr "Wysłano prośbę o możliwość śledzenia" - -#: src/Views/AccountView.vala:230 -msgid "Blocked" -msgstr "Zablokowano" - -#: src/Views/AccountView.vala:232 -msgid "Follows you" -msgstr "Aledzi Cię" - -#: src/Views/AccountView.vala:234 -msgid "Blocking this instance" -msgstr "Blokujesz tę instancję" - -#: src/Views/AccountView.vala:269 -msgid "User not found" -msgstr "Nie znaleziono użytkownika" - -#: src/Views/FederatedView.vala:12 -msgid "Federated Timeline" -msgstr "Oś czasu federacji" - -#: src/Views/HomeView.vala:12 src/Views/TimelineView.vala:36 +#: src/Views/Timeline.vala:34 src/Views/Home.vala:12 msgid "Home" msgstr "Strona główna" -#: src/Views/LocalView.vala:12 +#: src/Views/Local.vala:12 msgid "Local Timeline" msgstr "Lokalna oś czasu" -#: src/Views/SearchView.vala:82 +#: src/Views/Federated.vala:12 +msgid "Federated Timeline" +msgstr "Oś czasu federacji" + +#: src/Views/Profile.vala:61 +#, c-format +msgid "%s Posts" +msgstr "" + +#: src/Views/Profile.vala:67 +#, fuzzy, c-format +msgid "%s Follows" +msgstr "Śledzeni" + +#: src/Views/Profile.vala:73 +#, fuzzy, c-format +msgid "%s Followers" +msgstr "Śledzący" + +#: src/Views/Profile.vala:109 +msgid "Sent follow request" +msgstr "Wysłano prośbę o możliwość śledzenia" + +#: src/Views/Profile.vala:111 +#, fuzzy +msgid "Mutually follows you" +msgstr "Aledzi Cię" + +#: src/Views/Profile.vala:113 +msgid "Follows you" +msgstr "Aledzi Cię" + +#: src/Views/Profile.vala:124 +#, fuzzy +msgid "Follow back" +msgstr "Śledź" + +#: src/Views/Profile.vala:126 +msgid "Unfollow" +msgstr "Przestań śledzić" + +#: src/Views/Profile.vala:128 +msgid "Follow" +msgstr "Śledź" + +#: src/Views/Search.vala:82 msgid "Accounts" msgstr "Kinda" -#: src/Views/SearchView.vala:91 +#: src/Views/Search.vala:91 msgid "Statuses" msgstr "Wpisy" +#~ msgid "TLS Error" +#~ msgstr "Błąd TLS" + +#~ msgid "Can't ensure secure connection: " +#~ msgstr "Nie można zapewnić bezpiecznego połączenia: " + +#~ msgid "Error: %s" +#~ msgstr "Błąd: %s" + +#~ msgid "Boosted!" +#~ msgstr "Podbito!" + +#~ msgid "Removed boost" +#~ msgstr "Cofnięto podbicie" + +#~ msgid "Favorited!" +#~ msgstr "Dodano do ulubionych!" + +#~ msgid "Removed from favorites" +#~ msgstr "Usunięto z ulubionych" + +#~ msgid "Muted!" +#~ msgstr "Wyciszono!" + +#~ msgid "Conversation unmuted" +#~ msgstr "Cofnięto wyciszenie konwersacji" + +#~ msgid "Pinned!" +#~ msgstr "Przypięto!" + +#~ msgid "Unpinned from profile" +#~ msgstr "Cofnięto przypięcie" + +#~ msgid "New Account" +#~ msgstr "Nowe konto" + +#~ msgid "Click to add" +#~ msgstr "Naciśnij aby dodać" + +#~ msgid "Click to open %s media" +#~ msgstr "Naciśnij aby otworzyć %s multimediów" + +#~ msgid "Uploading..." +#~ msgstr "Wysyłanie…" + +#~ msgid "File read error" +#~ msgstr "Błąd odczytywania plików" + +#~ msgid "Can't read file %s: %s" +#~ msgstr "Nie można odczytać pliku %s: %s" + +#~ msgid "Remove" +#~ msgstr "Usuń" + +#~ msgid "Download" +#~ msgstr "Pobierz" + +#~ msgid "Unknown Notification" +#~ msgstr "Nieznane powiadomienie" + +#~ msgid "Dismiss" +#~ msgstr "Pomiń" + +#~ msgid "Accept" +#~ msgstr "Zaakceptuj" + +#~ msgid "Reject" +#~ msgstr "Odrzuć" + +#~ msgid "Boost" +#~ msgstr "Podbij" + +#~ msgid "Favorite" +#~ msgstr "Dodaj do ulubionych" + +#~ msgid "Reply" +#~ msgstr "Odpowiedz" + +#~ msgid "[ This post contains sensitive content ]" +#~ msgstr "[ Ten wpis zawiera zawartość wrażliwą ]" + +#~ msgid "Unmute Conversation" +#~ msgstr "Cofnij wyciszenie konwersacji" + +#~ msgid "Mute Conversation" +#~ msgstr "Wycisz konwersację" + +#~ msgid "New Account" +#~ msgstr "Nowe konto" + +#~ msgid "What's an instance?" +#~ msgstr "Czym jest instancja?" + +#~ msgid "Code:" +#~ msgstr "Kod:" + +#~ msgid "Paste your instance authorization code here" +#~ msgstr "Wklej kod autoryzacji swojej instancji tutaj" + +#~ msgid "Add Account" +#~ msgstr "Dodaj konto" + +#~ msgid "Instance:" +#~ msgstr "Instancja:" + +#~ msgid "Post Visibility" +#~ msgstr "Widoczność wpisu" + +#~ msgid "Add Media" +#~ msgstr "Dodaj zawartość multimedialną" + +#~ msgid "Spoiler Warning" +#~ msgstr "Ostrzeżenie o zawartości" + +#~ msgid "Cancel" +#~ msgstr "Anuluj" + +#~ msgid "Toot!" +#~ msgstr "Wyślij" + +#~ msgid "Write your warning here" +#~ msgstr "Wprowadź zawartość ostrzeżenia tutaj" + +#~ msgid "Edit Profile" +#~ msgstr "Edytuj profil" + +#~ msgid "Mention" +#~ msgstr "Wspomnij" + +#~ msgid "Report" +#~ msgstr "Zgłoś" + +#~ msgid "Mute" +#~ msgstr "Wycisz" + +#~ msgid "Block" +#~ msgstr "Zablokuj" + +#~ msgid "More Actions" +#~ msgstr "Więcej działań" + +#~ msgid "Toots" +#~ msgstr "Wpisy" + +#~ msgid "Unblock" +#~ msgstr "Odblokuj" + +#~ msgid "Unmute" +#~ msgstr "Cofnij wyciszenie" + +#~ msgid "Blocked" +#~ msgstr "Zablokowano" + +#~ msgid "Blocking this instance" +#~ msgstr "Blokujesz tę instancję" + +#~ msgid "User not found" +#~ msgstr "Nie znaleziono użytkownika" + #~ msgid "Conversation muted" #~ msgstr "Wyciszono konwersację" diff --git a/po/regenerate-po-files.sh b/po/regenerate-po-files.sh new file mode 100755 index 0000000..52c1672 --- /dev/null +++ b/po/regenerate-po-files.sh @@ -0,0 +1,3 @@ +cd . +cd build +ninja com.github.bleakgrey.tootle-update-po diff --git a/po/ru.po b/po/ru.po index e1b1966..ce040ee 100644 --- a/po/ru.po +++ b/po/ru.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: com.github.bleakgrey.tootle\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-10-30 19:17+0300\n" +"POT-Creation-Date: 2019-09-16 16:00+0300\n" "PO-Revision-Date: 2018-05-10 00:35+0300\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" @@ -19,7 +19,7 @@ msgstr "" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" #: data/com.github.bleakgrey.tootle.desktop.in:4 -#: data/com.github.bleakgrey.tootle.appdata.xml.in:7 src/MainWindow.vala:68 +#: data/com.github.bleakgrey.tootle.appdata.xml.in:7 msgid "Tootle" msgstr "" @@ -41,30 +41,34 @@ msgid "Lightning fast client for Mastodon" msgstr "Молниеносный клиент для Мастодонта" #: data/com.github.bleakgrey.tootle.appdata.xml.in:11 +#, fuzzy msgid "" "Tootle is a client for the world’s largest free, open-source, decentralized " -"microblogging network with real-time notifications and multiple accounts " -"support." +"microblogging network with real-time notifications and support for multiple " +"accounts." msgstr "" "Tootle - клиент для крупнейшей в мире свободной, децентрализованной сети " "микроблогинга с открытым исходным кодом. Он поддерживает уведомления в " "реальном времени и несколько рабочих аккаунтов." #: data/com.github.bleakgrey.tootle.appdata.xml.in:14 +#, fuzzy msgid "" -"Mastodon is lovely crafted with power and speed in mind, resulting in a " -"free, independent and popular alternative to the centralized social networks." +"Mastodon is lovingly crafted with power and speed in mind, resulting in a " +"free, independent, and popular alternative to the centralized social " +"networks." msgstr "" "Мастодонт был создан с учётом множества возможностей и скорости, что привело " "к созданию свободной альтернативы популярным централизованным социальным " "сетям." #: data/com.github.bleakgrey.tootle.appdata.xml.in:17 +#, fuzzy msgid "" -"Anyone can run a server of Mastodon. Each server hosts individual user " -"accounts, the content they produce, and the content they are subscribed. " -"Every user can follow each other and share their posts regardless of their " -"server." +"Anyone can run a Mastodon server. Each server hosts individual user " +"accounts, the content they produce, and the content to which they are " +"subscribed. Every user can follow each other and share their posts " +"regardless of their server." msgstr "" "Каждый может запустить свою копию Мастодонта. Сервер хранит аккаунты " "пользователей, контент, который они создают, и контент, на который они " @@ -75,344 +79,280 @@ msgstr "" msgid "bleak_grey" msgstr "" -#: src/Desktop.vala:10 src/API/Account.vala:123 src/API/Account.vala:142 -#: src/API/Account.vala:161 src/Dialogs/NewAccountDialog.vala:102 +#: data/com.github.bleakgrey.tootle.appdata.xml.in:80 +#, fuzzy +msgid "Added Watchlist" +msgstr "Список Наблюдения" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:81 +msgid "Added Redraft support" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:82 +msgid "Added Pinning support" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:83 +msgid "Added Simplified Chinese and German translations" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:84 +msgid "Added --hidden Start Flag" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:85 +msgid "Added Shortcuts and Back mouse button support" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:86 +msgid "Changed Notifications screen behavior" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:87 +#: data/com.github.bleakgrey.tootle.appdata.xml.in:102 +msgid "Fixed minor bugs" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:94 +msgid "Added Russian, French and Polish translations" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:95 +#, fuzzy +msgid "Added Direct timeline" +msgstr "Обновлять публичные ленты:" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:96 +msgid "Added support for custom character limit" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:97 +msgid "Added support for streaming all timelines" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:98 +msgid "Added tooltips for image attachments" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:99 +msgid "Added remove action for attachments" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:100 +msgid "Changed behavior for mentioning users" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:101 +msgid "Changed behavior for missing image attachments" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:109 +msgid "Initial release" +msgstr "" + +#: src/Desktop.vala:10 msgid "Error" msgstr "Ошибка" -#: src/Desktop.vala:46 +#: src/Desktop.vala:47 msgid "Media downloaded" msgstr "Медиаконтент загружен" -#: src/MainWindow.vala:48 -msgid "Back" -msgstr "Назад" - -#: src/MainWindow.vala:54 src/Dialogs/PostDialog.vala:29 -msgid "Toot" -msgstr "Статус" - -#: src/Network.vala:58 -msgid "TLS Error" -msgstr "Ошибка TLS" - -#: src/Network.vala:58 -msgid "Can't ensure secure connection: " -msgstr "Не удалось установить безопасное соединение:" - -#: src/Network.vala:66 +#: src/Services/Accounts.vala:31 #, c-format -msgid "Error: %s" -msgstr "Ошибка: %s" +msgid "" +"This instance has invalidated this session. Please sign in again.\n" +"\n" +"%s" +msgstr "" -#: src/API/NotificationType.vala:50 -#, c-format -msgid "%s mentioned you" -msgstr "%s упомянул вас" - -#: src/API/NotificationType.vala:52 -#, c-format -msgid "%s boosted your toot" -msgstr "%s продвинул ваш статус" - -#: src/API/NotificationType.vala:54 -#, c-format -msgid "%s favorited your toot" -msgstr "%s понравился ваш статус" - -#: src/API/NotificationType.vala:56 -#, c-format -msgid "%s now follows you" -msgstr "%s подписался на вас" - -#: src/API/NotificationType.vala:58 -#, c-format -msgid "%s wants to follow you" -msgstr "%s хочет на вас подписаться" - -#: src/API/NotificationType.vala:60 -#, c-format -msgid "%s posted a toot" -msgstr "%s опубликовал статус" - -#: src/API/Status.vala:174 -msgid "Boosted!" -msgstr "Продвинуто!" - -#: src/API/Status.vala:176 -msgid "Removed boost" -msgstr "Продвижение отменено" - -#: src/API/Status.vala:189 -msgid "Favorited!" -msgstr "Добавлено в понравившиеся!" - -#: src/API/Status.vala:191 -msgid "Removed from favorites" -msgstr "Удалено из понравившихся" - -#: src/API/Status.vala:204 -msgid "Muted!" -msgstr "Заглушено!" - -#: src/API/Status.vala:206 -msgid "Conversation unmuted" -msgstr "Переписка включена" - -#: src/API/Status.vala:219 -msgid "Pinned!" -msgstr "Закреплено!" - -#: src/API/Status.vala:221 -msgid "Unpinned from profile" -msgstr "Откреплено от профиля" - -#: src/API/Status.vala:231 -msgid "Poof!" -msgstr "Вжух!" - -#: src/API/StatusVisibility.vala:40 -msgid "Post to public timelines" -msgstr "Видно в публичных лентах" - -#: src/API/StatusVisibility.vala:42 -msgid "Don't post to public timelines" -msgstr "Не видно в публичных лентах" - -#: src/API/StatusVisibility.vala:44 -msgid "Post to followers only" -msgstr "Только для подписчиков" - -#: src/API/StatusVisibility.vala:46 -msgid "Post to mentioned users only" -msgstr "Только для упомянутых" - -#: src/Widgets/AccountsButton.vala:67 -msgid "Refresh" -msgstr "Обновить" - -#: src/Widgets/AccountsButton.vala:71 -msgid "Favorites" -msgstr "Понравившиеся" - -#: src/Widgets/AccountsButton.vala:75 src/Views/DirectView.vala:12 -msgid "Direct Messages" -msgstr "Личные Сообщения" - -#: src/Widgets/AccountsButton.vala:79 src/Views/SearchView.vala:12 -msgid "Search" -msgstr "Поиск" - -#: src/Widgets/AccountsButton.vala:83 -msgid "Watchlist" -msgstr "Список Наблюдения" - -#: src/Widgets/AccountsButton.vala:87 src/Dialogs/SettingsDialog.vala:18 -msgid "Settings" -msgstr "Настройки" - -#: src/Widgets/AccountsButton.vala:142 -msgid "New Account" -msgstr "Новый аккаунт" - -#: src/Widgets/AccountsButton.vala:143 -msgid "Click to add" -msgstr "Нажмите, чтобы добавить" - -#: src/Widgets/AccountWidget.vala:24 src/Widgets/AttachmentWidget.vala:130 -#: src/Widgets/StatusWidget.vala:289 -msgid "Open in Browser" -msgstr "Открыть в Браузере" - -#: src/Widgets/AccountWidget.vala:26 src/Widgets/AttachmentWidget.vala:132 -#: src/Widgets/StatusWidget.vala:291 -msgid "Copy Link" -msgstr "Скопировать Ссылку" - -#: src/Widgets/AttachmentBox.vala:41 -msgid "Select media files to add" -msgstr "Выберите файлы для добавления" - -#: src/Widgets/AttachmentBox.vala:44 -msgid "_Cancel" -msgstr "_Отмена" - -#: src/Widgets/AttachmentBox.vala:46 -msgid "_Open" -msgstr "_Выбрать" - -#: src/Widgets/AttachmentWidget.vala:67 -#, c-format -msgid "Click to open %s media" -msgstr "Нажмите, чтобы открыть %s" - -#: src/Widgets/AttachmentWidget.vala:84 -msgid "Uploading..." -msgstr "Загрузка..." - -#: src/Widgets/AttachmentWidget.vala:105 -msgid "File read error" -msgstr "Ошибка чтения файла" - -#: src/Widgets/AttachmentWidget.vala:105 -#, c-format -msgid "Can't read file %s: %s" -msgstr "Не удалось прочитать файл %s: %s" - -#: src/Widgets/AttachmentWidget.vala:124 -msgid "Remove" -msgstr "Удалить" - -#: src/Widgets/AttachmentWidget.vala:134 -msgid "Download" -msgstr "Скачать" - -#: src/Widgets/NotificationWidget.vala:20 -msgid "Unknown Notification" -msgstr "Неизвестное уведомление" - -#: src/Widgets/NotificationWidget.vala:25 -msgid "Dismiss" -msgstr "Скрыть" - -#: src/Widgets/NotificationWidget.vala:64 -msgid "Accept" -msgstr "Принять" - -#: src/Widgets/NotificationWidget.vala:66 -msgid "Reject" -msgstr "Отклонить" - -#: src/Widgets/StatusWidget.vala:84 -msgid "Boost" -msgstr "Продвинуть" - -#: src/Widgets/StatusWidget.vala:91 -msgid "Favorite" -msgstr "Нравится" - -#: src/Widgets/StatusWidget.vala:98 -msgid "Reply" -msgstr "Ответить" - -#: src/Widgets/StatusWidget.vala:136 -#, c-format -msgid "%s boosted" -msgstr "%s продвинул" - -#: src/Widgets/StatusWidget.vala:151 -msgid "Toggle content" -msgstr "Развернуть" - -#: src/Widgets/StatusWidget.vala:165 -msgid "[ This post contains sensitive content ]" -msgstr "[ Данный статус содержит чувствительный контент ]" - -#: src/Widgets/StatusWidget.vala:234 -msgid "This post can't be boosted" -msgstr "Этот статус нельзя продвинуть" - -#: src/Widgets/StatusWidget.vala:287 -msgid "Unmute Conversation" -msgstr "Включить переписку" - -#: src/Widgets/StatusWidget.vala:287 -msgid "Mute Conversation" -msgstr "Заглушить Переписку" - -#: src/Widgets/StatusWidget.vala:293 -msgid "Copy Text" -msgstr "Скопировать Текст" - -#: src/Widgets/StatusWidget.vala:300 -msgid "Unpin from Profile" -msgstr "Открепить от Профиля" - -#: src/Widgets/StatusWidget.vala:300 -msgid "Pin on Profile" -msgstr "Закрепить на Профиле" - -#: src/Widgets/StatusWidget.vala:304 -msgid "Delete" -msgstr "Удалить" - -#: src/Widgets/StatusWidget.vala:308 src/Dialogs/PostDialog.vala:72 -msgid "Redraft" -msgstr "Исправить" - -#: src/Dialogs/NewAccountDialog.vala:27 -msgid "New Account" -msgstr "Новый аккаунт" - -#: src/Dialogs/NewAccountDialog.vala:38 -msgid "What's an instance?" -msgstr "Что такое узел?" - -#: src/Dialogs/NewAccountDialog.vala:42 -msgid "Code:" -msgstr "Код:" - -#: src/Dialogs/NewAccountDialog.vala:46 -msgid "Paste your instance authorization code here" -msgstr "Вставьте свой код авторизации здесь" - -#: src/Dialogs/NewAccountDialog.vala:49 -msgid "Add Account" -msgstr "Добавить Аккаунт" - -#: src/Dialogs/NewAccountDialog.vala:60 -msgid "Instance:" -msgstr "Узел:" - -#: src/Dialogs/NewAccountDialog.vala:102 -msgid "Please paste valid instance authorization code" -msgstr "Пожалуйста, вставьте корректный код авторизации" - -#: src/Dialogs/NewAccountDialog.vala:110 +#: src/Services/Network.vala:86 msgid "Network Error" msgstr "Сетевая Ошибка" -#: src/Dialogs/PostDialog.vala:45 -msgid "Post Visibility" -msgstr "Видимость Статуса" +#: src/API/Visibility.vala:36 +msgid "Unlisted" +msgstr "" -#: src/Dialogs/PostDialog.vala:52 -msgid "Add Media" -msgstr "Добавить Медиаконтент" +#: src/API/Visibility.vala:38 +#, fuzzy +msgid "Followers-only" +msgstr "Подписчиков" -#: src/Dialogs/PostDialog.vala:61 -msgid "Spoiler Warning" -msgstr "Спойлер" +#: src/API/Visibility.vala:40 +msgid "Direct" +msgstr "" -#: src/Dialogs/PostDialog.vala:68 -msgid "Cancel" -msgstr "Отмена" +#: src/API/Visibility.vala:42 +msgid "Public" +msgstr "" -#: src/Dialogs/PostDialog.vala:77 -msgid "Toot!" -msgstr "Отправить!" +#: src/API/Visibility.vala:49 +msgid "Don't post to public timelines" +msgstr "Не видно в публичных лентах" -#: src/Dialogs/PostDialog.vala:85 -msgid "Write your warning here" -msgstr "Напишите здесь предупреждение" +#: src/API/Visibility.vala:51 +msgid "Post to followers only" +msgstr "Только для подписчиков" -#: src/Dialogs/SettingsDialog.vala:37 +#: src/API/Visibility.vala:53 +msgid "Post to mentioned users only" +msgstr "Только для упомянутых" + +#: src/API/Visibility.vala:55 +msgid "Post to public timelines" +msgstr "Видно в публичных лентах" + +#: src/API/NotificationType.vala:56 +#, fuzzy, c-format +msgid "" +"%s mentioned you" +msgstr "%s упомянул вас" + +#: src/API/NotificationType.vala:58 +#, fuzzy, c-format +msgid "" +"%s boosted your status" +msgstr "%s продвинул ваш статус" + +#: src/API/NotificationType.vala:60 +#, fuzzy, c-format +msgid "%s boosted" +msgstr "%s продвинул" + +#: src/API/NotificationType.vala:62 +#, fuzzy, c-format +msgid "" +"%s favorited your status" +msgstr "%s понравился ваш статус" + +#: src/API/NotificationType.vala:64 +#, fuzzy, c-format +msgid "" +"%s now follows you" +msgstr "%s подписался на вас" + +#: src/API/NotificationType.vala:66 +#, fuzzy, c-format +msgid "" +"%s wants to follow you" +msgstr "%s хочет на вас подписаться" + +#: src/API/NotificationType.vala:68 +#, fuzzy, c-format +msgid "" +"%s posted a status" +msgstr "%s опубликовал статус" + +#: src/Widgets/RichLabel.vala:105 src/Widgets/Status.vala:206 +#: src/Widgets/Account.vala:28 +msgid "Open in Browser" +msgstr "Открыть в Браузере" + +#: src/Widgets/AccountsButton.vala:62 +msgid "Refresh" +msgstr "Обновить" + +#: src/Widgets/AccountsButton.vala:67 +msgid "Favorites" +msgstr "Понравившиеся" + +#: src/Widgets/AccountsButton.vala:71 src/Views/Direct.vala:12 +msgid "Direct Messages" +msgstr "Личные Сообщения" + +#: src/Widgets/AccountsButton.vala:75 src/Views/Search.vala:12 +msgid "Search" +msgstr "Поиск" + +#: src/Widgets/AccountsButton.vala:79 src/Dialogs/WatchlistEditor.vala:99 +msgid "Watchlist" +msgstr "Список Наблюдения" + +#: src/Widgets/AccountsButton.vala:83 src/Dialogs/Preferences.vala:17 +msgid "Settings" +msgstr "Настройки" + +#: src/Widgets/Status.vala:52 +msgid "[ Show more ]" +msgstr "" + +#: src/Widgets/Status.vala:120 +msgid "This post can't be boosted" +msgstr "Этот статус нельзя продвинуть" + +#: src/Widgets/Status.vala:208 src/Widgets/Account.vala:30 +msgid "Copy Link" +msgstr "Скопировать Ссылку" + +#: src/Widgets/Status.vala:210 +msgid "Copy Text" +msgstr "Скопировать Текст" + +#: src/Widgets/Status.vala:217 +msgid "Unpin from Profile" +msgstr "Открепить от Профиля" + +#: src/Widgets/Status.vala:217 +msgid "Pin on Profile" +msgstr "Закрепить на Профиле" + +#: src/Widgets/Status.vala:221 +msgid "Delete" +msgstr "Удалить" + +#: src/Widgets/Status.vala:225 src/Dialogs/Compose.vala:73 +msgid "Redraft" +msgstr "Исправить" + +#: src/Widgets/Attachment/Box.vala:28 +msgid "Select media files to add" +msgstr "Выберите файлы для добавления" + +#: src/Widgets/Attachment/Box.vala:31 +msgid "_Cancel" +msgstr "_Отмена" + +#: src/Widgets/Attachment/Box.vala:33 +msgid "_Open" +msgstr "_Выбрать" + +#: src/Dialogs/MainWindow.vala:49 +msgid "Back" +msgstr "Назад" + +#: src/Dialogs/MainWindow.vala:58 +msgid "Toot" +msgstr "Статус" + +#: src/Dialogs/MainWindow.vala:63 +msgid "Toggle content" +msgstr "Развернуть" + +#: src/Dialogs/Compose.vala:69 +msgid "Post" +msgstr "" + +#: src/Dialogs/Preferences.vala:36 msgid "Appearance" msgstr "Внешний вид" -#: src/Dialogs/SettingsDialog.vala:38 +#: src/Dialogs/Preferences.vala:37 msgid "Dark theme:" msgstr "Тёмная тема:" -#: src/Dialogs/SettingsDialog.vala:41 +#: src/Dialogs/Preferences.vala:40 msgid "Timelines" msgstr "Ленты" -#: src/Dialogs/SettingsDialog.vala:42 +#: src/Dialogs/Preferences.vala:41 msgid "Real-time updates:" msgstr "Обновления в реальном времени:" -#: src/Dialogs/SettingsDialog.vala:44 +#: src/Dialogs/Preferences.vala:43 msgid "Update public timelines:" msgstr "Обновлять публичные ленты:" @@ -420,33 +360,33 @@ msgstr "Обновлять публичные ленты:" #. grid.attach (new SettingsLabel (_("Use cache:")), 0, i); #. grid.attach (new SettingsSwitch ("cache"), 1, i++); #. grid.attach (new SettingsLabel (_("Max cache size (MB):")), 0, i); -#. var cache_size = new Gtk.SpinButton.with_range (16, 256, 1); +#. var cache_size = new SpinButton.with_range (16, 256, 1); #. settings.schema.bind ("cache-size", cache_size, "value", SettingsBindFlags.DEFAULT); #. grid.attach (cache_size, 1, i++); -#: src/Dialogs/SettingsDialog.vala:55 src/Views/NotificationsView.vala:34 +#: src/Dialogs/Preferences.vala:54 src/Views/Notifications.vala:33 msgid "Notifications" msgstr "Уведомления" -#: src/Dialogs/SettingsDialog.vala:56 +#: src/Dialogs/Preferences.vala:55 msgid "Display notifications:" msgstr "Отображать уведомления:" -#: src/Dialogs/SettingsDialog.vala:58 +#: src/Dialogs/Preferences.vala:57 msgid "Always receive notifications:" msgstr "Всегда получать уведомления:" -#: src/Dialogs/SettingsDialog.vala:64 +#: src/Dialogs/Preferences.vala:63 src/Dialogs/WatchlistEditor.vala:162 msgid "_Close" msgstr "_Закрыть" -#: src/Dialogs/WatchlistDialog.vala:20 +#: src/Dialogs/WatchlistEditor.vala:20 msgid "" "You'll be notified when toots from this user appear in your Home timeline." msgstr "" "Вы получите уведомление, когда статусы от этого пользователя появятся в " "вашей Главной ленте." -#: src/Dialogs/WatchlistDialog.vala:21 +#: src/Dialogs/WatchlistEditor.vala:21 msgid "" "You'll be notified when toots with this hashtag appear in any public " "timelines." @@ -454,110 +394,88 @@ msgstr "" "Вы получите уведомление, когда статусы с данным хэштегом появятся в любой " "публичной ленте." -#: src/Dialogs/WatchlistDialog.vala:137 +#: src/Dialogs/WatchlistEditor.vala:108 msgid "Users" msgstr "Пользователи" -#: src/Dialogs/WatchlistDialog.vala:138 src/Views/SearchView.vala:100 +#: src/Dialogs/WatchlistEditor.vala:109 src/Views/Search.vala:100 msgid "Hashtags" msgstr "Хэштеги" -#: src/Dialogs/WatchlistDialog.vala:148 +#: src/Dialogs/WatchlistEditor.vala:122 msgid "Add" msgstr "Добавить" -#: src/Views/AbstractView.vala:59 +#: src/Views/Base.vala:6 msgid "Nothing to see here" msgstr "Тут ничего нет" -#: src/Views/AccountView.vala:79 -msgid "Edit Profile" -msgstr "Редактировать Профиль" +#: src/Views/NewAccount.vala:91 +msgid "Instance URL is invalid" +msgstr "" -#: src/Views/AccountView.vala:80 -msgid "Mention" -msgstr "Упомянуть" +#: src/Views/NewAccount.vala:133 +#, fuzzy +msgid "Please paste a valid authorization code" +msgstr "Пожалуйста, вставьте корректный код авторизации" -#: src/Views/AccountView.vala:81 -msgid "Report" -msgstr "Пожаловаться" - -#: src/Views/AccountView.vala:82 src/Views/AccountView.vala:167 -msgid "Mute" -msgstr "Заглушить" - -#: src/Views/AccountView.vala:83 src/Views/AccountView.vala:166 -msgid "Block" -msgstr "Заблокировать" - -#: src/Views/AccountView.vala:95 -msgid "More Actions" -msgstr "Больше Действий" - -#: src/Views/AccountView.vala:115 -msgid "Toots" -msgstr "Статусов" - -#: src/Views/AccountView.vala:116 -msgid "Follows" -msgstr "Подписок" - -#: src/Views/AccountView.vala:120 -msgid "Followers" -msgstr "Подписчиков" - -#: src/Views/AccountView.vala:155 -msgid "Unfollow" -msgstr "Отписаться" - -#: src/Views/AccountView.vala:159 -msgid "Follow" -msgstr "Подписаться" - -#: src/Views/AccountView.vala:166 -msgid "Unblock" -msgstr "Разблокировать" - -#: src/Views/AccountView.vala:167 -msgid "Unmute" -msgstr "Включить" - -#: src/Views/AccountView.vala:228 -msgid "Sent follow request" -msgstr "Отправлен запрос на подписку" - -#: src/Views/AccountView.vala:230 -msgid "Blocked" -msgstr "Заблокирован" - -#: src/Views/AccountView.vala:232 -msgid "Follows you" -msgstr "Подписан на вас" - -#: src/Views/AccountView.vala:234 -msgid "Blocking this instance" -msgstr "Данный узел заблокирован" - -#: src/Views/AccountView.vala:269 -msgid "User not found" -msgstr "Пользователь не найден" - -#: src/Views/FederatedView.vala:12 -msgid "Federated Timeline" -msgstr "Глобальная Лента" - -#: src/Views/HomeView.vala:12 src/Views/TimelineView.vala:36 +#: src/Views/Timeline.vala:34 src/Views/Home.vala:12 msgid "Home" msgstr "Главная" -#: src/Views/LocalView.vala:12 +#: src/Views/Local.vala:12 msgid "Local Timeline" msgstr "Локальная Лента" -#: src/Views/SearchView.vala:82 +#: src/Views/Federated.vala:12 +msgid "Federated Timeline" +msgstr "Глобальная Лента" + +#: src/Views/Profile.vala:61 +#, c-format +msgid "%s Posts" +msgstr "" + +#: src/Views/Profile.vala:67 +#, fuzzy, c-format +msgid "%s Follows" +msgstr "Подписок" + +#: src/Views/Profile.vala:73 +#, fuzzy, c-format +msgid "%s Followers" +msgstr "Подписчиков" + +#: src/Views/Profile.vala:109 +msgid "Sent follow request" +msgstr "Отправлен запрос на подписку" + +#: src/Views/Profile.vala:111 +#, fuzzy +msgid "Mutually follows you" +msgstr "Подписан на вас" + +#: src/Views/Profile.vala:113 +msgid "Follows you" +msgstr "Подписан на вас" + +#: src/Views/Profile.vala:124 +#, fuzzy +msgid "Follow back" +msgstr "Подписаться" + +#: src/Views/Profile.vala:126 +msgid "Unfollow" +msgstr "Отписаться" + +#: src/Views/Profile.vala:128 +msgid "Follow" +msgstr "Подписаться" + +#: src/Views/Search.vala:82 msgid "Accounts" msgstr "Аккаунты" -#: src/Views/SearchView.vala:91 +#: src/Views/Search.vala:91 msgid "Statuses" msgstr "Статусы" diff --git a/po/zh_CN.po b/po/zh_CN.po index 83bb1cb..de210fc 100644 --- a/po/zh_CN.po +++ b/po/zh_CN.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: com.github.bleakgrey.tootle\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-10-30 19:17+0300\n" +"POT-Creation-Date: 2019-09-16 16:00+0300\n" "PO-Revision-Date: 2018-10-31 14:47+1300\n" "Last-Translator: \n" "Language-Team: \n" @@ -18,7 +18,7 @@ msgstr "" "Plural-Forms: nplurals=1; plural=0;\n" #: data/com.github.bleakgrey.tootle.desktop.in:4 -#: data/com.github.bleakgrey.tootle.appdata.xml.in:7 src/MainWindow.vala:68 +#: data/com.github.bleakgrey.tootle.appdata.xml.in:7 msgid "Tootle" msgstr "Tootle" @@ -40,28 +40,32 @@ msgid "Lightning fast client for Mastodon" msgstr "轻量快速的 Mastodon 客户端" #: data/com.github.bleakgrey.tootle.appdata.xml.in:11 +#, fuzzy msgid "" "Tootle is a client for the world’s largest free, open-source, decentralized " -"microblogging network with real-time notifications and multiple accounts " -"support." +"microblogging network with real-time notifications and support for multiple " +"accounts." msgstr "" "Tootle 是一个社交应用,基于世界上最大的自由、开源、去中心化社交网络,支持实时" "通知和多帐户登录。" #: data/com.github.bleakgrey.tootle.appdata.xml.in:14 +#, fuzzy msgid "" -"Mastodon is lovely crafted with power and speed in mind, resulting in a " -"free, independent and popular alternative to the centralized social networks." +"Mastodon is lovingly crafted with power and speed in mind, resulting in a " +"free, independent, and popular alternative to the centralized social " +"networks." msgstr "" "Mastodon 以人为本,搭配与生俱来的极致性能,给你一个自由而流行的去中心化社交网" "络。" #: data/com.github.bleakgrey.tootle.appdata.xml.in:17 +#, fuzzy msgid "" -"Anyone can run a server of Mastodon. Each server hosts individual user " -"accounts, the content they produce, and the content they are subscribed. " -"Every user can follow each other and share their posts regardless of their " -"server." +"Anyone can run a Mastodon server. Each server hosts individual user " +"accounts, the content they produce, and the content to which they are " +"subscribed. Every user can follow each other and share their posts " +"regardless of their server." msgstr "" "任何人都可以运营 Mastodon 的节点,各自负责节点上的用户数据。用户可以互相关" "注、分享,而这一切都可以跨节点运作。" @@ -70,344 +74,280 @@ msgstr "" msgid "bleak_grey" msgstr "bleak_grey" -#: src/Desktop.vala:10 src/API/Account.vala:123 src/API/Account.vala:142 -#: src/API/Account.vala:161 src/Dialogs/NewAccountDialog.vala:102 +#: data/com.github.bleakgrey.tootle.appdata.xml.in:80 +#, fuzzy +msgid "Added Watchlist" +msgstr "特别关注" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:81 +msgid "Added Redraft support" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:82 +msgid "Added Pinning support" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:83 +msgid "Added Simplified Chinese and German translations" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:84 +msgid "Added --hidden Start Flag" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:85 +msgid "Added Shortcuts and Back mouse button support" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:86 +msgid "Changed Notifications screen behavior" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:87 +#: data/com.github.bleakgrey.tootle.appdata.xml.in:102 +msgid "Fixed minor bugs" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:94 +msgid "Added Russian, French and Polish translations" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:95 +#, fuzzy +msgid "Added Direct timeline" +msgstr "更新公共时间线:" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:96 +msgid "Added support for custom character limit" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:97 +msgid "Added support for streaming all timelines" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:98 +msgid "Added tooltips for image attachments" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:99 +msgid "Added remove action for attachments" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:100 +msgid "Changed behavior for mentioning users" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:101 +msgid "Changed behavior for missing image attachments" +msgstr "" + +#: data/com.github.bleakgrey.tootle.appdata.xml.in:109 +msgid "Initial release" +msgstr "" + +#: src/Desktop.vala:10 msgid "Error" msgstr "错误" -#: src/Desktop.vala:46 +#: src/Desktop.vala:47 msgid "Media downloaded" msgstr "媒体已下载" -#: src/MainWindow.vala:48 -msgid "Back" -msgstr "返回" - -#: src/MainWindow.vala:54 src/Dialogs/PostDialog.vala:29 -msgid "Toot" -msgstr "发嘟" - -#: src/Network.vala:58 -msgid "TLS Error" -msgstr "TLS 错误" - -#: src/Network.vala:58 -msgid "Can't ensure secure connection: " -msgstr "无法建立安全连接: " - -#: src/Network.vala:66 +#: src/Services/Accounts.vala:31 #, c-format -msgid "Error: %s" -msgstr "错误:%s" +msgid "" +"This instance has invalidated this session. Please sign in again.\n" +"\n" +"%s" +msgstr "" -#: src/API/NotificationType.vala:50 -#, c-format -msgid "%s mentioned you" -msgstr "%s 提及了你" - -#: src/API/NotificationType.vala:52 -#, c-format -msgid "%s boosted your toot" -msgstr "%s 转了你的嘟文" - -#: src/API/NotificationType.vala:54 -#, c-format -msgid "%s favorited your toot" -msgstr "%s 赞了你的嘟文" - -#: src/API/NotificationType.vala:56 -#, c-format -msgid "%s now follows you" -msgstr "%s 关注了你" - -#: src/API/NotificationType.vala:58 -#, c-format -msgid "%s wants to follow you" -msgstr "%s 想要关注你" - -#: src/API/NotificationType.vala:60 -#, c-format -msgid "%s posted a toot" -msgstr "%s 发了一条嘟文" - -#: src/API/Status.vala:174 -msgid "Boosted!" -msgstr "转!" - -#: src/API/Status.vala:176 -msgid "Removed boost" -msgstr "转嘟已取消" - -#: src/API/Status.vala:189 -msgid "Favorited!" -msgstr "赞!" - -#: src/API/Status.vala:191 -msgid "Removed from favorites" -msgstr "赞已撤回" - -#: src/API/Status.vala:204 -msgid "Muted!" -msgstr "已隐藏!" - -#: src/API/Status.vala:206 -msgid "Conversation unmuted" -msgstr "对话已恢复" - -#: src/API/Status.vala:219 -msgid "Pinned!" -msgstr "已置顶!" - -#: src/API/Status.vala:221 -msgid "Unpinned from profile" -msgstr "取消置顶" - -#: src/API/Status.vala:231 -msgid "Poof!" -msgstr "已删除!" - -#: src/API/StatusVisibility.vala:40 -msgid "Post to public timelines" -msgstr "发送到公共时间线" - -#: src/API/StatusVisibility.vala:42 -msgid "Don't post to public timelines" -msgstr "发送到本地时间线" - -#: src/API/StatusVisibility.vala:44 -msgid "Post to followers only" -msgstr "仅限关注者" - -#: src/API/StatusVisibility.vala:46 -msgid "Post to mentioned users only" -msgstr "仅限提及的用户" - -#: src/Widgets/AccountsButton.vala:67 -msgid "Refresh" -msgstr "刷新" - -#: src/Widgets/AccountsButton.vala:71 -msgid "Favorites" -msgstr "点赞" - -#: src/Widgets/AccountsButton.vala:75 src/Views/DirectView.vala:12 -msgid "Direct Messages" -msgstr "私信" - -#: src/Widgets/AccountsButton.vala:79 src/Views/SearchView.vala:12 -msgid "Search" -msgstr "搜索" - -#: src/Widgets/AccountsButton.vala:83 -msgid "Watchlist" -msgstr "特别关注" - -#: src/Widgets/AccountsButton.vala:87 src/Dialogs/SettingsDialog.vala:18 -msgid "Settings" -msgstr "设置" - -#: src/Widgets/AccountsButton.vala:142 -msgid "New Account" -msgstr "新帐户" - -#: src/Widgets/AccountsButton.vala:143 -msgid "Click to add" -msgstr "点击添加" - -#: src/Widgets/AccountWidget.vala:24 src/Widgets/AttachmentWidget.vala:130 -#: src/Widgets/StatusWidget.vala:289 -msgid "Open in Browser" -msgstr "浏览器中打开" - -#: src/Widgets/AccountWidget.vala:26 src/Widgets/AttachmentWidget.vala:132 -#: src/Widgets/StatusWidget.vala:291 -msgid "Copy Link" -msgstr "复制链接" - -#: src/Widgets/AttachmentBox.vala:41 -msgid "Select media files to add" -msgstr "选择媒体文件" - -#: src/Widgets/AttachmentBox.vala:44 -msgid "_Cancel" -msgstr "_取消" - -#: src/Widgets/AttachmentBox.vala:46 -msgid "_Open" -msgstr "_打开" - -#: src/Widgets/AttachmentWidget.vala:67 -#, c-format -msgid "Click to open %s media" -msgstr "点击打开 %s 媒体" - -#: src/Widgets/AttachmentWidget.vala:84 -msgid "Uploading..." -msgstr "上传中…" - -#: src/Widgets/AttachmentWidget.vala:105 -msgid "File read error" -msgstr "文件读取错误" - -#: src/Widgets/AttachmentWidget.vala:105 -#, c-format -msgid "Can't read file %s: %s" -msgstr "无法读取文件 %s: %s" - -#: src/Widgets/AttachmentWidget.vala:124 -msgid "Remove" -msgstr "移除" - -#: src/Widgets/AttachmentWidget.vala:134 -msgid "Download" -msgstr "下载" - -#: src/Widgets/NotificationWidget.vala:20 -msgid "Unknown Notification" -msgstr "未知通知" - -#: src/Widgets/NotificationWidget.vala:25 -msgid "Dismiss" -msgstr "忽略" - -#: src/Widgets/NotificationWidget.vala:64 -msgid "Accept" -msgstr "接受" - -#: src/Widgets/NotificationWidget.vala:66 -msgid "Reject" -msgstr "拒绝" - -#: src/Widgets/StatusWidget.vala:84 -msgid "Boost" -msgstr "转嘟" - -#: src/Widgets/StatusWidget.vala:91 -msgid "Favorite" -msgstr "赞" - -#: src/Widgets/StatusWidget.vala:98 -msgid "Reply" -msgstr "回复" - -#: src/Widgets/StatusWidget.vala:136 -#, c-format -msgid "%s boosted" -msgstr "%s 转嘟了" - -#: src/Widgets/StatusWidget.vala:151 -msgid "Toggle content" -msgstr "切换隐藏状态" - -#: src/Widgets/StatusWidget.vala:165 -msgid "[ This post contains sensitive content ]" -msgstr "[ 此嘟文有敏感内容 ]" - -#: src/Widgets/StatusWidget.vala:234 -msgid "This post can't be boosted" -msgstr "无法转发这条嘟文" - -#: src/Widgets/StatusWidget.vala:287 -msgid "Unmute Conversation" -msgstr "恢复对话" - -#: src/Widgets/StatusWidget.vala:287 -msgid "Mute Conversation" -msgstr "隐藏对话" - -#: src/Widgets/StatusWidget.vala:293 -msgid "Copy Text" -msgstr "复制文本" - -#: src/Widgets/StatusWidget.vala:300 -msgid "Unpin from Profile" -msgstr "取消置顶" - -#: src/Widgets/StatusWidget.vala:300 -msgid "Pin on Profile" -msgstr "置顶" - -#: src/Widgets/StatusWidget.vala:304 -msgid "Delete" -msgstr "删除" - -#: src/Widgets/StatusWidget.vala:308 src/Dialogs/PostDialog.vala:72 -msgid "Redraft" -msgstr "编辑" - -#: src/Dialogs/NewAccountDialog.vala:27 -msgid "New Account" -msgstr "新帐户" - -#: src/Dialogs/NewAccountDialog.vala:38 -msgid "What's an instance?" -msgstr "需要帮助?" - -#: src/Dialogs/NewAccountDialog.vala:42 -msgid "Code:" -msgstr "授权码:" - -#: src/Dialogs/NewAccountDialog.vala:46 -msgid "Paste your instance authorization code here" -msgstr "在此粘贴授权码" - -#: src/Dialogs/NewAccountDialog.vala:49 -msgid "Add Account" -msgstr "添加帐户" - -#: src/Dialogs/NewAccountDialog.vala:60 -msgid "Instance:" -msgstr "实例:" - -#: src/Dialogs/NewAccountDialog.vala:102 -msgid "Please paste valid instance authorization code" -msgstr "请确认授权码是否有效" - -#: src/Dialogs/NewAccountDialog.vala:110 +#: src/Services/Network.vala:86 msgid "Network Error" msgstr "网络错误" -#: src/Dialogs/PostDialog.vala:45 -msgid "Post Visibility" -msgstr "嘟文可见范围" +#: src/API/Visibility.vala:36 +msgid "Unlisted" +msgstr "" -#: src/Dialogs/PostDialog.vala:52 -msgid "Add Media" -msgstr "添加媒体" +#: src/API/Visibility.vala:38 +#, fuzzy +msgid "Followers-only" +msgstr "关注者" -#: src/Dialogs/PostDialog.vala:61 -msgid "Spoiler Warning" -msgstr "内容预警" +#: src/API/Visibility.vala:40 +msgid "Direct" +msgstr "" -#: src/Dialogs/PostDialog.vala:68 -msgid "Cancel" -msgstr "取消" +#: src/API/Visibility.vala:42 +msgid "Public" +msgstr "" -#: src/Dialogs/PostDialog.vala:77 -msgid "Toot!" -msgstr "发嘟!" +#: src/API/Visibility.vala:49 +msgid "Don't post to public timelines" +msgstr "发送到本地时间线" -#: src/Dialogs/PostDialog.vala:85 -msgid "Write your warning here" -msgstr "输入预警提示" +#: src/API/Visibility.vala:51 +msgid "Post to followers only" +msgstr "仅限关注者" -#: src/Dialogs/SettingsDialog.vala:37 +#: src/API/Visibility.vala:53 +msgid "Post to mentioned users only" +msgstr "仅限提及的用户" + +#: src/API/Visibility.vala:55 +msgid "Post to public timelines" +msgstr "发送到公共时间线" + +#: src/API/NotificationType.vala:56 +#, fuzzy, c-format +msgid "" +"%s mentioned you" +msgstr "%s 提及了你" + +#: src/API/NotificationType.vala:58 +#, fuzzy, c-format +msgid "" +"%s boosted your status" +msgstr "%s 转了你的嘟文" + +#: src/API/NotificationType.vala:60 +#, fuzzy, c-format +msgid "%s boosted" +msgstr "%s 转嘟了" + +#: src/API/NotificationType.vala:62 +#, fuzzy, c-format +msgid "" +"%s favorited your status" +msgstr "%s 赞了你的嘟文" + +#: src/API/NotificationType.vala:64 +#, fuzzy, c-format +msgid "" +"%s now follows you" +msgstr "%s 关注了你" + +#: src/API/NotificationType.vala:66 +#, fuzzy, c-format +msgid "" +"%s wants to follow you" +msgstr "%s 想要关注你" + +#: src/API/NotificationType.vala:68 +#, fuzzy, c-format +msgid "" +"%s posted a status" +msgstr "%s 发了一条嘟文" + +#: src/Widgets/RichLabel.vala:105 src/Widgets/Status.vala:206 +#: src/Widgets/Account.vala:28 +msgid "Open in Browser" +msgstr "浏览器中打开" + +#: src/Widgets/AccountsButton.vala:62 +msgid "Refresh" +msgstr "刷新" + +#: src/Widgets/AccountsButton.vala:67 +msgid "Favorites" +msgstr "点赞" + +#: src/Widgets/AccountsButton.vala:71 src/Views/Direct.vala:12 +msgid "Direct Messages" +msgstr "私信" + +#: src/Widgets/AccountsButton.vala:75 src/Views/Search.vala:12 +msgid "Search" +msgstr "搜索" + +#: src/Widgets/AccountsButton.vala:79 src/Dialogs/WatchlistEditor.vala:99 +msgid "Watchlist" +msgstr "特别关注" + +#: src/Widgets/AccountsButton.vala:83 src/Dialogs/Preferences.vala:17 +msgid "Settings" +msgstr "设置" + +#: src/Widgets/Status.vala:52 +msgid "[ Show more ]" +msgstr "" + +#: src/Widgets/Status.vala:120 +msgid "This post can't be boosted" +msgstr "无法转发这条嘟文" + +#: src/Widgets/Status.vala:208 src/Widgets/Account.vala:30 +msgid "Copy Link" +msgstr "复制链接" + +#: src/Widgets/Status.vala:210 +msgid "Copy Text" +msgstr "复制文本" + +#: src/Widgets/Status.vala:217 +msgid "Unpin from Profile" +msgstr "取消置顶" + +#: src/Widgets/Status.vala:217 +msgid "Pin on Profile" +msgstr "置顶" + +#: src/Widgets/Status.vala:221 +msgid "Delete" +msgstr "删除" + +#: src/Widgets/Status.vala:225 src/Dialogs/Compose.vala:73 +msgid "Redraft" +msgstr "编辑" + +#: src/Widgets/Attachment/Box.vala:28 +msgid "Select media files to add" +msgstr "选择媒体文件" + +#: src/Widgets/Attachment/Box.vala:31 +msgid "_Cancel" +msgstr "_取消" + +#: src/Widgets/Attachment/Box.vala:33 +msgid "_Open" +msgstr "_打开" + +#: src/Dialogs/MainWindow.vala:49 +msgid "Back" +msgstr "返回" + +#: src/Dialogs/MainWindow.vala:58 +msgid "Toot" +msgstr "发嘟" + +#: src/Dialogs/MainWindow.vala:63 +msgid "Toggle content" +msgstr "切换隐藏状态" + +#: src/Dialogs/Compose.vala:69 +msgid "Post" +msgstr "" + +#: src/Dialogs/Preferences.vala:36 msgid "Appearance" msgstr "外观" -#: src/Dialogs/SettingsDialog.vala:38 +#: src/Dialogs/Preferences.vala:37 msgid "Dark theme:" msgstr "暗色主题:" -#: src/Dialogs/SettingsDialog.vala:41 +#: src/Dialogs/Preferences.vala:40 msgid "Timelines" msgstr "时间线" -#: src/Dialogs/SettingsDialog.vala:42 +#: src/Dialogs/Preferences.vala:41 msgid "Real-time updates:" msgstr "实时更新:" -#: src/Dialogs/SettingsDialog.vala:44 +#: src/Dialogs/Preferences.vala:43 msgid "Update public timelines:" msgstr "更新公共时间线:" @@ -415,144 +355,284 @@ msgstr "更新公共时间线:" #. grid.attach (new SettingsLabel (_("Use cache:")), 0, i); #. grid.attach (new SettingsSwitch ("cache"), 1, i++); #. grid.attach (new SettingsLabel (_("Max cache size (MB):")), 0, i); -#. var cache_size = new Gtk.SpinButton.with_range (16, 256, 1); +#. var cache_size = new SpinButton.with_range (16, 256, 1); #. settings.schema.bind ("cache-size", cache_size, "value", SettingsBindFlags.DEFAULT); #. grid.attach (cache_size, 1, i++); -#: src/Dialogs/SettingsDialog.vala:55 src/Views/NotificationsView.vala:34 +#: src/Dialogs/Preferences.vala:54 src/Views/Notifications.vala:33 msgid "Notifications" msgstr "通知" -#: src/Dialogs/SettingsDialog.vala:56 +#: src/Dialogs/Preferences.vala:55 msgid "Display notifications:" msgstr "显示通知:" -#: src/Dialogs/SettingsDialog.vala:58 +#: src/Dialogs/Preferences.vala:57 msgid "Always receive notifications:" msgstr "总是接收通知:" -#: src/Dialogs/SettingsDialog.vala:64 +#: src/Dialogs/Preferences.vala:63 src/Dialogs/WatchlistEditor.vala:162 msgid "_Close" msgstr "_关闭" -#: src/Dialogs/WatchlistDialog.vala:20 +#: src/Dialogs/WatchlistEditor.vala:20 msgid "" "You'll be notified when toots from this user appear in your Home timeline." msgstr "接收特别关心对象的通知。" -#: src/Dialogs/WatchlistDialog.vala:21 +#: src/Dialogs/WatchlistEditor.vala:21 msgid "" "You'll be notified when toots with this hashtag appear in any public " "timelines." msgstr "接收特别关注话题的通知。" -#: src/Dialogs/WatchlistDialog.vala:137 +#: src/Dialogs/WatchlistEditor.vala:108 msgid "Users" msgstr "用户" -#: src/Dialogs/WatchlistDialog.vala:138 src/Views/SearchView.vala:100 +#: src/Dialogs/WatchlistEditor.vala:109 src/Views/Search.vala:100 msgid "Hashtags" msgstr "话题" -#: src/Dialogs/WatchlistDialog.vala:148 +#: src/Dialogs/WatchlistEditor.vala:122 msgid "Add" msgstr "添加" -#: src/Views/AbstractView.vala:59 +#: src/Views/Base.vala:6 msgid "Nothing to see here" msgstr "什么也没有" -#: src/Views/AccountView.vala:79 -msgid "Edit Profile" -msgstr "编辑个人资料" +#: src/Views/NewAccount.vala:91 +msgid "Instance URL is invalid" +msgstr "" -#: src/Views/AccountView.vala:80 -msgid "Mention" -msgstr "提及" +#: src/Views/NewAccount.vala:133 +#, fuzzy +msgid "Please paste a valid authorization code" +msgstr "请确认授权码是否有效" -#: src/Views/AccountView.vala:81 -msgid "Report" -msgstr "举报" - -#: src/Views/AccountView.vala:82 src/Views/AccountView.vala:167 -msgid "Mute" -msgstr "隐藏" - -#: src/Views/AccountView.vala:83 src/Views/AccountView.vala:166 -msgid "Block" -msgstr "屏蔽" - -#: src/Views/AccountView.vala:95 -msgid "More Actions" -msgstr "更多" - -#: src/Views/AccountView.vala:115 -msgid "Toots" -msgstr "嘟文" - -#: src/Views/AccountView.vala:116 -msgid "Follows" -msgstr "关注" - -#: src/Views/AccountView.vala:120 -msgid "Followers" -msgstr "关注者" - -#: src/Views/AccountView.vala:155 -msgid "Unfollow" -msgstr "取消关注" - -#: src/Views/AccountView.vala:159 -msgid "Follow" -msgstr "关注" - -#: src/Views/AccountView.vala:166 -msgid "Unblock" -msgstr "取消屏蔽" - -#: src/Views/AccountView.vala:167 -msgid "Unmute" -msgstr "取消隐藏" - -#: src/Views/AccountView.vala:228 -msgid "Sent follow request" -msgstr "已发送关注请求" - -#: src/Views/AccountView.vala:230 -msgid "Blocked" -msgstr "已屏蔽" - -#: src/Views/AccountView.vala:232 -msgid "Follows you" -msgstr "关注了你" - -#: src/Views/AccountView.vala:234 -msgid "Blocking this instance" -msgstr "已屏蔽此实例" - -#: src/Views/AccountView.vala:269 -msgid "User not found" -msgstr "未找到用户" - -#: src/Views/FederatedView.vala:12 -msgid "Federated Timeline" -msgstr "公共时间线" - -#: src/Views/HomeView.vala:12 src/Views/TimelineView.vala:36 +#: src/Views/Timeline.vala:34 src/Views/Home.vala:12 msgid "Home" msgstr "主页" -#: src/Views/LocalView.vala:12 +#: src/Views/Local.vala:12 msgid "Local Timeline" msgstr "本地时间线" -#: src/Views/SearchView.vala:82 +#: src/Views/Federated.vala:12 +msgid "Federated Timeline" +msgstr "公共时间线" + +#: src/Views/Profile.vala:61 +#, c-format +msgid "%s Posts" +msgstr "" + +#: src/Views/Profile.vala:67 +#, fuzzy, c-format +msgid "%s Follows" +msgstr "关注" + +#: src/Views/Profile.vala:73 +#, fuzzy, c-format +msgid "%s Followers" +msgstr "关注者" + +#: src/Views/Profile.vala:109 +msgid "Sent follow request" +msgstr "已发送关注请求" + +#: src/Views/Profile.vala:111 +#, fuzzy +msgid "Mutually follows you" +msgstr "关注了你" + +#: src/Views/Profile.vala:113 +msgid "Follows you" +msgstr "关注了你" + +#: src/Views/Profile.vala:124 +#, fuzzy +msgid "Follow back" +msgstr "关注" + +#: src/Views/Profile.vala:126 +msgid "Unfollow" +msgstr "取消关注" + +#: src/Views/Profile.vala:128 +msgid "Follow" +msgstr "关注" + +#: src/Views/Search.vala:82 msgid "Accounts" msgstr "帐户" -#: src/Views/SearchView.vala:91 +#: src/Views/Search.vala:91 msgid "Statuses" msgstr "嘟文" +#~ msgid "TLS Error" +#~ msgstr "TLS 错误" + +#~ msgid "Can't ensure secure connection: " +#~ msgstr "无法建立安全连接: " + +#~ msgid "Error: %s" +#~ msgstr "错误:%s" + +#~ msgid "Boosted!" +#~ msgstr "转!" + +#~ msgid "Removed boost" +#~ msgstr "转嘟已取消" + +#~ msgid "Favorited!" +#~ msgstr "赞!" + +#~ msgid "Removed from favorites" +#~ msgstr "赞已撤回" + +#~ msgid "Muted!" +#~ msgstr "已隐藏!" + +#~ msgid "Conversation unmuted" +#~ msgstr "对话已恢复" + +#~ msgid "Pinned!" +#~ msgstr "已置顶!" + +#~ msgid "Unpinned from profile" +#~ msgstr "取消置顶" + +#~ msgid "Poof!" +#~ msgstr "已删除!" + +#~ msgid "New Account" +#~ msgstr "新帐户" + +#~ msgid "Click to add" +#~ msgstr "点击添加" + +#~ msgid "Click to open %s media" +#~ msgstr "点击打开 %s 媒体" + +#~ msgid "Uploading..." +#~ msgstr "上传中…" + +#~ msgid "File read error" +#~ msgstr "文件读取错误" + +#~ msgid "Can't read file %s: %s" +#~ msgstr "无法读取文件 %s: %s" + +#~ msgid "Remove" +#~ msgstr "移除" + +#~ msgid "Download" +#~ msgstr "下载" + +#~ msgid "Unknown Notification" +#~ msgstr "未知通知" + +#~ msgid "Dismiss" +#~ msgstr "忽略" + +#~ msgid "Accept" +#~ msgstr "接受" + +#~ msgid "Reject" +#~ msgstr "拒绝" + +#~ msgid "Boost" +#~ msgstr "转嘟" + +#~ msgid "Favorite" +#~ msgstr "赞" + +#~ msgid "Reply" +#~ msgstr "回复" + +#~ msgid "[ This post contains sensitive content ]" +#~ msgstr "[ 此嘟文有敏感内容 ]" + +#~ msgid "Unmute Conversation" +#~ msgstr "恢复对话" + +#~ msgid "Mute Conversation" +#~ msgstr "隐藏对话" + +#~ msgid "New Account" +#~ msgstr "新帐户" + +#~ msgid "What's an instance?" +#~ msgstr "需要帮助?" + +#~ msgid "Code:" +#~ msgstr "授权码:" + +#~ msgid "Paste your instance authorization code here" +#~ msgstr "在此粘贴授权码" + +#~ msgid "Add Account" +#~ msgstr "添加帐户" + +#~ msgid "Instance:" +#~ msgstr "实例:" + +#~ msgid "Post Visibility" +#~ msgstr "嘟文可见范围" + +#~ msgid "Add Media" +#~ msgstr "添加媒体" + +#~ msgid "Spoiler Warning" +#~ msgstr "内容预警" + +#~ msgid "Cancel" +#~ msgstr "取消" + +#~ msgid "Toot!" +#~ msgstr "发嘟!" + +#~ msgid "Write your warning here" +#~ msgstr "输入预警提示" + +#~ msgid "Edit Profile" +#~ msgstr "编辑个人资料" + +#~ msgid "Mention" +#~ msgstr "提及" + +#~ msgid "Report" +#~ msgstr "举报" + +#~ msgid "Mute" +#~ msgstr "隐藏" + +#~ msgid "Block" +#~ msgstr "屏蔽" + +#~ msgid "More Actions" +#~ msgstr "更多" + +#~ msgid "Toots" +#~ msgstr "嘟文" + +#~ msgid "Unblock" +#~ msgstr "取消屏蔽" + +#~ msgid "Unmute" +#~ msgstr "取消隐藏" + +#~ msgid "Blocked" +#~ msgstr "已屏蔽" + +#~ msgid "Blocking this instance" +#~ msgstr "已屏蔽此实例" + +#~ msgid "User not found" +#~ msgstr "未找到用户" + #~ msgid "Conversation muted" #~ msgstr "对话已隐藏" diff --git a/src/.editorconfig b/src/.editorconfig new file mode 100644 index 0000000..42fc5a2 --- /dev/null +++ b/src/.editorconfig @@ -0,0 +1,10 @@ +root = true + +[*] +end_of_line = lf +insert_final_newline = false +charset = utf-8 + +[*.sh] +indent_size = 4 +indent_style = tab diff --git a/src/API/Account.vala b/src/API/Account.vala index 0ea45dd..f67ea2a 100644 --- a/src/API/Account.vala +++ b/src/API/Account.vala @@ -1,60 +1,57 @@ -public class Tootle.API.Account { +public class Tootle.API.Account : GLib.Object { - public abstract signal void updated (); - - public int64 id; - public string username; - public string acct; - public string display_name; - public string note; - public string header; - public string avatar; - public string url; - public string created_at; - public int64 followers_count; - public int64 following_count; - public int64 statuses_count; - - public Relationship? rs; - - public Account (int64 _id){ - id = _id; + public int64 id { get; set; } + public string username { get; set; } + public string acct { get; set; } + public string? _display_name = null; + public string display_name { + set { + this._display_name = value; + } + get { + return (_display_name == null || _display_name == "") ? username : _display_name; + } } + public string note { get; set; } + public string header { get; set; } + public string avatar { get; set; } + public string url { get; set; } + public string created_at { get; set; } + public int64 followers_count { get; set; } + public int64 following_count { get; set; } + public int64 posts_count { get; set; } + public Relationship? rs { get; set; default = null; } - public static Account parse(Json.Object obj) { - var id = int64.parse (obj.get_string_member ("id")); - var account = new Account (id); + public Account (Json.Object obj) { + Object ( + id: int64.parse (obj.get_string_member ("id")), + username: obj.get_string_member ("username"), + acct: obj.get_string_member ("acct"), + display_name: obj.get_string_member ("display_name"), + note: obj.get_string_member ("note"), + avatar: obj.get_string_member ("avatar"), + header: obj.get_string_member ("header"), + url: obj.get_string_member ("url"), + created_at: obj.get_string_member ("created_at"), - account.username = obj.get_string_member ("username"); - account.acct = obj.get_string_member ("acct"); - account.display_name = obj.get_string_member ("display_name"); - if (account.display_name == "") - account.display_name = account.username; - account.note = obj.get_string_member ("note"); - account.avatar = obj.get_string_member ("avatar"); - account.header = obj.get_string_member ("header"); - account.url = obj.get_string_member ("url"); - account.created_at = obj.get_string_member ("created_at"); - - account.followers_count = obj.get_int_member ("followers_count"); - account.following_count = obj.get_int_member ("following_count"); - account.statuses_count = obj.get_int_member ("statuses_count"); + followers_count: obj.get_int_member ("followers_count"), + following_count: obj.get_int_member ("following_count"), + posts_count: obj.get_int_member ("statuses_count") + ); if (obj.has_member ("fields")) { obj.get_array_member ("fields").foreach_element ((array, i, node) => { var field_obj = node.get_object (); var field_name = field_obj.get_string_member ("name"); var field_val = field_obj.get_string_member ("value"); - account.note += "\n"; - account.note += field_name + ": "; - account.note += field_val; + note += "\n"; + note += field_name + ": "; + note += field_val; }); } - - return account; } - public Json.Node? serialize () { + public virtual Json.Node? serialize () { var builder = new Json.Builder (); builder.begin_object (); builder.set_member_name ("id"); @@ -66,7 +63,7 @@ public class Tootle.API.Account { builder.set_member_name ("followers_count"); builder.add_int_value (followers_count); builder.set_member_name ("statuses_count"); - builder.add_int_value (statuses_count); + builder.add_int_value (posts_count); builder.set_member_name ("display_name"); builder.add_string_value (display_name); builder.set_member_name ("username"); @@ -86,83 +83,55 @@ public class Tootle.API.Account { return builder.get_root (); } - public bool is_self (){ - return id == accounts.current.id; + public bool is_self () { + return id == accounts.active.id; } - public Soup.Message get_relationship (){ - var url = "%s/api/v1/accounts/relationships?id=%lld".printf (accounts.formal.instance, id); - var msg = new Soup.Message("GET", url); - msg.priority = Soup.MessagePriority.HIGH; - Tootle.network.queue (msg, (sess, mess) => { - try{ - var root = Tootle.network.parse_array (mess).get_object_element (0); - rs = Relationship.parse (root); - updated (); - } - catch (GLib.Error e) { - warning ("Can't get account relationship:"); - warning (e.message); - } - }); - return msg; + public Request get_relationship () { + return new Request.GET ("/api/v1/accounts/relationships") + .with_account (accounts.active) + .with_param ("id", id.to_string ()) + .then_parse_array (node => { + rs = new Relationship (node.get_object ()); + }) + .on_error (network.on_error) + .exec (); } - public Soup.Message set_following (bool follow = true){ - var action = follow ? "follow" : "unfollow"; - var url = "%s/api/v1/accounts/%lld/%s".printf (accounts.formal.instance, id, action); - var msg = new Soup.Message("POST", url); - msg.priority = Soup.MessagePriority.HIGH; - network.queue (msg, (sess, mess) => { - try{ - var root = network.parse (mess); - rs = Relationship.parse (root); - updated (); - } - catch (GLib.Error e) { - app.error (_("Error"), e.message); - warning (e.message); - } - }); - return msg; + public Request set_following (bool state = true) { + var action = state ? "follow" : "unfollow"; + return new Request.POST (@"/api/v1/accounts/$id/$action") + .with_account (accounts.active) + .then ((sess, msg) => { + var root = network.parse (msg); + rs = new Relationship (root); + }) + .on_error (network.on_error) + .exec (); } - public Soup.Message set_muted (bool mute = true){ - var action = mute ? "mute" : "unmute"; - var url = "%s/api/v1/accounts/%lld/%s".printf (accounts.formal.instance, id, action); - var msg = new Soup.Message("POST", url); - msg.priority = Soup.MessagePriority.HIGH; - network.queue (msg, (sess, mess) => { - try{ - var root = network.parse (mess); - rs = Relationship.parse (root); - updated (); - } - catch (GLib.Error e) { - app.error (_("Error"), e.message); - warning (e.message); - } - }); - return msg; + public Request set_muted (bool state = true) { + var action = state ? "mute" : "unmute"; + return new Request.POST (@"/api/v1/accounts/$id/$action") + .with_account (accounts.active) + .then ((sess, msg) => { + var root = network.parse (msg); + rs = new Relationship (root); + }) + .on_error (network.on_error) + .exec (); } - public Soup.Message set_blocked (bool block = true){ - var action = block ? "block" : "unblock"; - var url = "%s/api/v1/accounts/%lld/%s".printf (accounts.formal.instance, id, action); - var msg = new Soup.Message("POST", url); - msg.priority = Soup.MessagePriority.HIGH; - network.queue (msg, (sess, mess) => { - try{ - var root = network.parse (mess); - rs = Relationship.parse (root); - updated (); - } - catch (GLib.Error e) { - app.error (_("Error"), e.message); - warning (e.message); - } - }); - return msg; + public Request set_blocked (bool state = true) { + var action = state ? "block" : "unblock"; + return new Request.POST (@"/api/v1/accounts/$id/$action") + .with_account (accounts.active) + .then ((sess, msg) => { + var root = network.parse (msg); + rs = new Relationship (root); + }) + .on_error (network.on_error) + .exec (); } } diff --git a/src/API/Attachment.vala b/src/API/Attachment.vala index b09f42c..7c40a41 100644 --- a/src/API/Attachment.vala +++ b/src/API/Attachment.vala @@ -1,27 +1,24 @@ -public class Tootle.API.Attachment { +public class Tootle.API.Attachment : GLib.Object { - public int64 id; - public string type; - public string url; - public string preview_url; - public string? description; + public int64 id { get; construct set; } + public string kind { get; set; } + public string url { get; set; } + public string? description { get; set; default = null; } - public Attachment (int64 _id) { - id = _id; + public string? _preview_url = null; + public string preview_url { + set { this._preview_url = value; } + get { return (_preview_url == null || _preview_url == "") ? url : _preview_url; } } - public static Attachment parse (Json.Object obj) { - var id = int64.parse (obj.get_string_member ("id")); - var attachment = new Attachment (id); - - attachment.type = obj.get_string_member ("type"); - attachment.preview_url = obj.get_string_member ("preview_url"); - attachment.url = obj.get_string_member ("url"); - - if (obj.has_member ("description")) - attachment.description = obj.get_string_member ("description"); - - return attachment; + public Attachment (Json.Object obj) { + Object ( + id: int64.parse (obj.get_string_member ("id")), + kind: obj.get_string_member ("type"), + preview_url: obj.get_string_member ("preview_url"), + url: obj.get_string_member ("url"), + description: obj.get_string_member ("description") + ); } public Json.Node? serialize () { @@ -30,7 +27,7 @@ public class Tootle.API.Attachment { builder.set_member_name ("id"); builder.add_string_value (id.to_string ()); builder.set_member_name ("type"); - builder.add_string_value (type); + builder.add_string_value (kind); builder.set_member_name ("url"); builder.add_string_value (url); builder.set_member_name ("preview_url"); diff --git a/src/API/Mention.vala b/src/API/Mention.vala index bb1d219..cee2fce 100644 --- a/src/API/Mention.vala +++ b/src/API/Mention.vala @@ -1,30 +1,26 @@ public class Tootle.API.Mention : GLib.Object { - public int64 id; - public string username; - public string acct; - public string url; + public int64 id { get; construct set; } + public string username { get; construct set; } + public string acct { get; construct set; } + public string url { get; construct set; } - public Mention (int64 _id){ - id = _id; + public Mention (Json.Object obj) { + Object ( + id: int64.parse (obj.get_string_member ("id")), + username: obj.get_string_member ("username"), + acct: obj.get_string_member ("acct"), + url: obj.get_string_member ("url") + ); } - public Mention.from_account (Account account){ - id = account.id; - username = account.username; - acct = account.acct; - url = account.url; - } - - public static Mention parse (Json.Object obj){ - var id = int64.parse (obj.get_string_member ("id")); - var mention = new Mention (id); - - mention.username = obj.get_string_member ("username"); - mention.acct = obj.get_string_member ("acct"); - mention.url = obj.get_string_member ("url"); - - return mention; + public Mention.from_account (Account account) { + Object ( + id: account.id, + username: account.username, + acct: account.acct, + url: account.url + ); } public Json.Node? serialize () { diff --git a/src/API/Notification.vala b/src/API/Notification.vala index 6802166..572a826 100644 --- a/src/API/Notification.vala +++ b/src/API/Notification.vala @@ -1,29 +1,30 @@ -public class Tootle.API.Notification { +public class Tootle.API.Notification : GLib.Object { - public int64 id; - public NotificationType type; - public string created_at; + public int64 id { get; construct set; } + public Account account { get; construct set; } - public Status? status; - public Account? account; + public NotificationType kind { get; set; } + public string created_at { get; set; } + public Status? status { get; set; default = null; } - public Notification (int64 _id) { - id = _id; - } - - public static Notification parse (Json.Object obj) { - var id = int64.parse (obj.get_string_member ("id")); - var notification = new Notification (id); - - notification.type = NotificationType.from_string (obj.get_string_member ("type")); - notification.created_at = obj.get_string_member ("created_at"); + public Notification (Json.Object obj) throws Oopsie { + Object ( + id: int64.parse (obj.get_string_member ("id")), + kind: NotificationType.from_string (obj.get_string_member ("type")), + created_at: obj.get_string_member ("created_at"), + account: new Account (obj.get_object_member ("account")) + ); if (obj.has_member ("status")) - notification.status = Status.parse (obj.get_object_member ("status")); - if (obj.has_member ("account")) - notification.account = Account.parse (obj.get_object_member ("account")); + status = new Status (obj.get_object_member ("status")); + } - return notification; + public Notification.follow_request (Json.Object obj) { + Object ( + id: 0, + kind: NotificationType.FOLLOW_REQUEST, + account: new Account (obj) + ); } public Json.Node? serialize () { @@ -32,7 +33,7 @@ public class Tootle.API.Notification { builder.set_member_name ("id"); builder.add_string_value (id.to_string ()); builder.set_member_name ("type"); - builder.add_string_value (type.to_string ()); + builder.add_string_value (kind.to_string ()); builder.set_member_name ("created_at"); builder.add_string_value (created_at); @@ -49,47 +50,35 @@ public class Tootle.API.Notification { return builder.get_root (); } - public static Notification parse_follow_request (Json.Object obj) { - var notification = new Notification (-1); - var account = Account.parse (obj); - - notification.type = NotificationType.FOLLOW_REQUEST; - notification.account = account; - - return notification; - } - public Soup.Message? dismiss () { - if (type == NotificationType.WATCHLIST) { - if (accounts.formal.cached_notifications.remove (this)) + if (kind == NotificationType.WATCHLIST) { + if (accounts.active.cached_notifications.remove (this)) accounts.save (); return null; } - if (type == NotificationType.FOLLOW_REQUEST) + if (kind == NotificationType.FOLLOW_REQUEST) return reject_follow_request (); - var url = "%s/api/v1/notifications/dismiss?id=%lld".printf (accounts.formal.instance, id); - var msg = new Soup.Message ("POST", url); - network.inject (msg, Network.INJECT_TOKEN); - network.queue (msg); - return msg; + var req = new Request.POST ("/api/v1/notifications/dismiss") + .with_account (accounts.active) + .with_param ("id", id.to_string ()) + .exec (); + return req; } public Soup.Message accept_follow_request () { - var url = "%s/api/v1/follow_requests/%lld/authorize".printf (accounts.formal.instance, account.id); - var msg = new Soup.Message ("POST", url); - network.inject (msg, Network.INJECT_TOKEN); - network.queue (msg); - return msg; + var req = new Request.POST (@"/api/v1/follow_requests/$(account.id)/authorize") + .with_account (accounts.active) + .exec (); + return req; } public Soup.Message reject_follow_request () { - var url = "%s/api/v1/follow_requests/%lld/reject".printf (accounts.formal.instance, account.id); - var msg = new Soup.Message ("POST", url); - network.inject (msg, Network.INJECT_TOKEN); - network.queue (msg); - return msg; + var req = new Request.POST (@"/api/v1/follow_requests/$(account.id)/reject") + .with_account (accounts.active) + .exec (); + return req; } } diff --git a/src/API/NotificationType.vala b/src/API/NotificationType.vala index 0d889fc..18e2a67 100644 --- a/src/API/NotificationType.vala +++ b/src/API/NotificationType.vala @@ -7,7 +7,7 @@ public enum Tootle.API.NotificationType { FOLLOW_REQUEST, // Internal WATCHLIST; // Internal - public string to_string() { + public string to_string () { switch (this) { case MENTION: return "mention"; @@ -24,11 +24,12 @@ public enum Tootle.API.NotificationType { case WATCHLIST: return "watchlist"; default: - assert_not_reached(); + warning (@"Unknown notification type: $this"); + return ""; } } - public static NotificationType from_string (string str) { + public static NotificationType from_string (string str) throws Oopsie { switch (str) { case "mention": return MENTION; @@ -45,7 +46,7 @@ public enum Tootle.API.NotificationType { case "watchlist": return WATCHLIST; default: - assert_not_reached(); + throw new Oopsie.INSTANCE (@"Unknown notification type: $str"); } } @@ -54,19 +55,20 @@ public enum Tootle.API.NotificationType { case MENTION: return _("%s mentioned you").printf (account.url, account.display_name); case REBLOG: - return _("%s boosted your toot").printf (account.url, account.display_name); + return _("%s boosted your status").printf (account.url, account.display_name); case REBLOG_REMOTE_USER: return _("%s boosted").printf (account.url, account.display_name); case FAVORITE: - return _("%s favorited your toot").printf (account.url, account.display_name); + return _("%s favorited your status").printf (account.url, account.display_name); case FOLLOW: return _("%s now follows you").printf (account.url, account.display_name); case FOLLOW_REQUEST: return _("%s wants to follow you").printf (account.url, account.display_name); case WATCHLIST: - return _("%s posted a toot").printf (account.url, account.display_name); + return _("%s posted a status").printf (account.url, account.display_name); default: - assert_not_reached(); + warning (@"Unknown notification type: $this"); + return ""; } } @@ -76,6 +78,7 @@ public enum Tootle.API.NotificationType { case WATCHLIST: return "user-available-symbolic"; case REBLOG: + case REBLOG_REMOTE_USER: return "media-playlist-repeat-symbolic"; case FAVORITE: return "emblem-favorite-symbolic"; @@ -83,7 +86,8 @@ public enum Tootle.API.NotificationType { case FOLLOW_REQUEST: return "contact-new-symbolic"; default: - assert_not_reached(); + warning (@"Unknown notification type: $this"); + return ""; } } diff --git a/src/API/Relationship.vala b/src/API/Relationship.vala index eae29cf..3d6580a 100644 --- a/src/API/Relationship.vala +++ b/src/API/Relationship.vala @@ -1,31 +1,25 @@ -using GLib; +public class Tootle.API.Relationship : GLib.Object { -public class Tootle.API.Relationship : Object { + public int64 id { get; construct set; } + public bool following { get; set; default = false; } + public bool followed_by { get; set; default = false; } + public bool muting { get; set; default = false; } + public bool muting_notifications { get; set; default = false; } + public bool requested { get; set; default = false; } + public bool blocking { get; set; default = false; } + public bool domain_blocking { get; set; default = false; } - public int64 id; - public bool following; - public bool followed_by; - public bool blocking; - public bool muting; - public bool muting_notifications; - public bool requested; - public bool domain_blocking; - - public Relationship (int64 _id) { - id = _id; - } - - public static Relationship parse (Json.Object obj) { - var id = int64.parse (obj.get_string_member ("id")); - var relationship = new Relationship (id); - relationship.following = obj.get_boolean_member ("following"); - relationship.followed_by = obj.get_boolean_member ("followed_by"); - relationship.blocking = obj.get_boolean_member ("blocking"); - relationship.muting = obj.get_boolean_member ("muting"); - relationship.muting_notifications = obj.get_boolean_member ("muting_notifications"); - relationship.requested = obj.get_boolean_member ("requested"); - relationship.domain_blocking = obj.get_boolean_member ("domain_blocking"); - return relationship; + public Relationship (Json.Object obj) { + Object ( + id: int64.parse (obj.get_string_member ("id")), + following: obj.get_boolean_member ("following"), + followed_by: obj.get_boolean_member ("followed_by"), + blocking: obj.get_boolean_member ("blocking"), + muting: obj.get_boolean_member ("muting"), + muting_notifications: obj.get_boolean_member ("muting_notifications"), + requested: obj.get_boolean_member ("requested"), + domain_blocking: obj.get_boolean_member ("domain_blocking") + ); } } diff --git a/src/API/Status.vala b/src/API/Status.vala index a24ca27..07f0e5c 100644 --- a/src/API/Status.vala +++ b/src/API/Status.vala @@ -1,91 +1,117 @@ -public class Tootle.API.Status { +using Gee; - public signal void updated (); +public class Tootle.API.Status : GLib.Object { - public API.Account account; - public int64 id; - public string uri; - public string url; - public string? spoiler_text; - public string content; - public int64 replies_count; - public int64 reblogs_count; - public int64 favourites_count; - public string created_at; - public bool reblogged = false; - public bool favorited = false; - public bool sensitive = false; - public bool muted = false; - public bool pinned = false; - public API.StatusVisibility visibility; - public API.Status? reblog; - public API.Mention[]? mentions; - public API.Attachment[]? attachments; - public Status (int64 _id) { - id = _id; + public int64 id { get; construct set; } + public API.Account account { get; construct set; } + public string uri { get; set; } + public string? url { get; set; default = null; } + public string? spoiler_text { get; set; default = null; } + public string? in_reply_to_id { get; set; default = null; } + public string? in_reply_to_account_id { get; set; default = null; } + public string content { get; set; default = ""; } + public int64 replies_count { get; set; default = 0; } + public int64 reblogs_count { get; set; default = 0; } + public int64 favourites_count { get; set; default = 0; } + public string created_at { get; set; default = "0"; } + public bool reblogged { get; set; default = false; } + public bool favorited { get; set; default = false; } + public bool sensitive { get; set; default = false; } + public bool muted { get; set; default = false; } + public bool pinned { get; set; default = false; } + public API.Visibility visibility { get; set; default = API.Visibility.PUBLIC; } + public API.Status? reblog { get; set; default = null; } + public ArrayList? mentions { get; set; default = null; } + public ArrayList? attachments { get; set; default = null; } + + public Status formal { + get { return reblog ?? this; } } - public Status get_formal () { - return reblog != null ? reblog : this; - } + public bool has_spoiler { + get { + return formal.spoiler_text != null || formal.sensitive; + } + } - public static Status parse (Json.Object obj) { - var id = int64.parse (obj.get_string_member ("id")); - var status = new Status (id); + public Status (Json.Object obj) { + Object ( + id: int64.parse (obj.get_string_member ("id")), + account: new Account (obj.get_object_member ("account")), + uri: obj.get_string_member ("uri"), + created_at: obj.get_string_member ("created_at"), + content: Html.simplify ( obj.get_string_member ("content")), + sensitive: obj.get_boolean_member ("sensitive"), + visibility: Visibility.from_string (obj.get_string_member ("visibility")), - status.account = Account.parse (obj.get_object_member ("account")); - status.uri = obj.get_string_member ("uri"); - status.created_at = obj.get_string_member ("created_at"); - status.replies_count = obj.get_int_member ("replies_count"); - status.reblogs_count = obj.get_int_member ("reblogs_count"); - status.favourites_count = obj.get_int_member ("favourites_count"); - status.content = Html.simplify ( obj.get_string_member ("content")); - status.sensitive = obj.get_boolean_member ("sensitive"); - status.visibility = StatusVisibility.from_string (obj.get_string_member ("visibility")); + in_reply_to_id: obj.get_string_member ("in_reply_to_id") ?? null, + in_reply_to_account_id: obj.get_string_member ("in_reply_to_account_id") ?? null, + + replies_count: obj.get_int_member ("replies_count"), + reblogs_count: obj.get_int_member ("reblogs_count"), + favourites_count: obj.get_int_member ("favourites_count") + ); if (obj.has_member ("url")) - status.url = obj.get_string_member ("url"); + url = obj.get_string_member ("url"); else - status.url = obj.get_string_member ("uri").replace ("/activity", ""); + url = obj.get_string_member ("uri").replace ("/activity", ""); var spoiler = obj.get_string_member ("spoiler_text"); if (spoiler != "") - status.spoiler_text = Html.simplify (spoiler); + spoiler_text = Html.simplify (spoiler); if (obj.has_member ("reblogged")) - status.reblogged = obj.get_boolean_member ("reblogged"); + reblogged = obj.get_boolean_member ("reblogged"); if (obj.has_member ("favourited")) - status.favorited = obj.get_boolean_member ("favourited"); + favorited = obj.get_boolean_member ("favourited"); if (obj.has_member ("muted")) - status.muted = obj.get_boolean_member ("muted"); + muted = obj.get_boolean_member ("muted"); if (obj.has_member ("pinned")) - status.pinned = obj.get_boolean_member ("pinned"); + pinned = obj.get_boolean_member ("pinned"); if (obj.has_member ("reblog") && obj.get_null_member("reblog") != true) - status.reblog = Status.parse (obj.get_object_member ("reblog")); + reblog = new Status (obj.get_object_member ("reblog")); - API.Mention[]? _mentions = {}; obj.get_array_member ("mentions").foreach_element ((array, i, node) => { - var object = node.get_object (); - if (object != null) - _mentions += API.Mention.parse (object); + var entity = node.get_object (); + if (entity != null) { + if (mentions == null) + mentions = new ArrayList (); + mentions.add (new API.Mention (entity)); + } }); - if (_mentions.length > 0) - status.mentions = _mentions; - API.Attachment[]? _attachments = {}; obj.get_array_member ("media_attachments").foreach_element ((array, i, node) => { - var object = node.get_object (); - if (object != null) - _attachments += API.Attachment.parse (object); + var entity = node.get_object (); + if (entity != null) { + if (attachments == null) + attachments = new ArrayList (); + attachments.add (new API.Attachment (entity)); + } }); - if (_attachments.length > 0) - status.attachments = _attachments; - - return status; } + public Status.empty () { + Object (id: -1); + } + + public Status.from_account (API.Account account) { + Object ( + id: 0, + account: account, + created_at: account.created_at + ); + + if (account.note == "") + content = ""; + else if ("\n" in account.note) + content = Html.remove_tags (account.note.split ("\n")[0]); + else + content = Html.remove_tags (account.note); + } + public Json.Node? serialize () { var builder = new Json.Builder (); builder.begin_object (); @@ -142,21 +168,17 @@ public class Tootle.API.Status { } public bool is_owned (){ - return get_formal ().account.id == accounts.current.id; - } - - public bool has_spoiler () { - return get_formal ().spoiler_text != null || get_formal ().sensitive; + return formal.account.id == accounts.active.id; } public string get_reply_mentions () { var result = ""; - if (account.acct != accounts.current.acct) + if (account.acct != accounts.active.acct) result = "@%s ".printf (account.acct); if (mentions != null) { foreach (var mention in mentions) { - var equals_current = mention.acct == accounts.current.acct; + var equals_current = mention.acct == accounts.active.acct; var already_mentioned = mention.acct in result; if (!equals_current && ! already_mentioned) @@ -167,69 +189,29 @@ public class Tootle.API.Status { return result; } - public void set_reblogged (bool rebl, Network.ErrorCallback? err = network.on_error) { - var action = rebl ? "reblog" : "unreblog"; - var msg = new Soup.Message ("POST", "%s/api/v1/statuses/%lld/%s".printf (accounts.formal.instance, id, action)); - msg.priority = Soup.MessagePriority.HIGH; - network.inject (msg, Network.INJECT_TOKEN); - network.queue (msg, (sess, message) => { - reblogged = rebl; - updated (); - }, (status, reason) => { - err (status, reason); - }); + public void action (string action, owned Network.ErrorCallback? err = network.on_error) { + new Request.POST (@"/api/v1/statuses/$(formal.id)/$action") + .with_account (accounts.active) + .then_parse_obj (obj => { + var status = new API.Status (obj).formal; + formal.reblogged = status.reblogged; + formal.favorited = status.favorited; + formal.muted = status.muted; + formal.pinned = status.pinned; + }) + .on_error ((status, reason) => err (status, reason)) + .exec (); } - public void set_favorited (bool fav, Network.ErrorCallback? err = network.on_error) { - var action = fav ? "favourite" : "unfavourite"; - var msg = new Soup.Message ("POST", "%s/api/v1/statuses/%lld/%s".printf (accounts.formal.instance, id, action)); - msg.priority = Soup.MessagePriority.HIGH; - network.inject (msg, Network.INJECT_TOKEN); - network.queue (msg, (sess, message) => { - favorited = fav; - updated (); - }, (status, reason) => { - err (status, reason); - }); - } - - public void set_muted (bool mute, Network.ErrorCallback? err = network.on_error) { - var action = mute ? "mute" : "unmute"; - var msg = new Soup.Message ("POST", "%s/api/v1/statuses/%lld/%s".printf (accounts.formal.instance, id, action)); - msg.priority = Soup.MessagePriority.HIGH; - network.inject (msg, Network.INJECT_TOKEN); - network.queue (msg, (sess, message) => { - muted = mute; - updated (); - }, (status, reason) => { - err (status, reason); - }); - } - - public void set_pinned (bool pin, Network.ErrorCallback? err = network.on_error) { - var action = pin ? "pin" : "unpin"; - var msg = new Soup.Message ("POST", "%s/api/v1/statuses/%lld/%s".printf (accounts.formal.instance, id, action)); - msg.priority = Soup.MessagePriority.HIGH; - network.inject (msg, Network.INJECT_TOKEN); - network.queue (msg, (sess, message) => { - pinned = pin; - updated (); - }, (status, reason) => { - err (status, reason); - }); - } - - public void poof (Soup.SessionCallback? cb = null, Network.ErrorCallback? err = network.on_error) { - var msg = new Soup.Message ("DELETE", "%s/api/v1/statuses/%lld".printf (accounts.formal.instance, id)); - msg.priority = Soup.MessagePriority.HIGH; - network.inject (msg, Network.INJECT_TOKEN); - network.queue (msg, (sess, message) => { - network.status_removed (id); - if (cb != null) - cb (sess, message); - }, (status, reason) => { - err (status, reason); - }); + public void poof (owned Soup.SessionCallback? cb = null, owned Network.ErrorCallback? err = network.on_error) { + new Request.DELETE (@"/api/v1/statuses/$id") + .with_account (accounts.active) + .then ((sess, msg) => { + streams.status_removed (id); + cb (sess, msg); + }) + .on_error ((status, reason) => err (status, reason)) + .exec (); } } diff --git a/src/API/Tag.vala b/src/API/Tag.vala index 3e0fe91..bc11769 100644 --- a/src/API/Tag.vala +++ b/src/API/Tag.vala @@ -1,17 +1,13 @@ -public class Tootle.API.Tag{ +public class Tootle.API.Tag : GLib.Object { - public string name; - public string url; + public string name { get; construct set; } + public string url { get; construct set; } - public Tag (string _name, string _url) { - name = _name; - url = _url; - } - - public static Tag parse (Json.Object obj) { - var name = obj.get_string_member ("name"); - var url = obj.get_string_member ("url"); - return new Tag (name, url); + public Tag (Json.Object obj) { + Object ( + name: obj.get_string_member ("name"), + url: obj.get_string_member ("url") + ); } } diff --git a/src/API/StatusVisibility.vala b/src/API/Visibility.vala similarity index 59% rename from src/API/StatusVisibility.vala rename to src/API/Visibility.vala index 1da3f1d..1617194 100644 --- a/src/API/StatusVisibility.vala +++ b/src/API/Visibility.vala @@ -1,4 +1,4 @@ -public enum Tootle.API.StatusVisibility { +public enum Tootle.API.Visibility { PUBLIC, UNLISTED, PRIVATE, @@ -6,8 +6,6 @@ public enum Tootle.API.StatusVisibility { public string to_string () { switch (this) { - case PUBLIC: - return "public"; case UNLISTED: return "unlisted"; case PRIVATE: @@ -15,29 +13,38 @@ public enum Tootle.API.StatusVisibility { case DIRECT: return "direct"; default: - assert_not_reached(); + return "public"; } } - public static StatusVisibility from_string (string str) { + public static Visibility from_string (string str) { switch (str) { - case "public": - return StatusVisibility.PUBLIC; case "unlisted": - return StatusVisibility.UNLISTED; + return Visibility.UNLISTED; case "private": - return StatusVisibility.PRIVATE; + return Visibility.PRIVATE; case "direct": - return StatusVisibility.DIRECT; + return Visibility.DIRECT; default: - assert_not_reached(); + return Visibility.PUBLIC; + } + } + + public string get_name () { + switch (this) { + case UNLISTED: + return _("Unlisted"); + case PRIVATE: + return _("Followers-only"); + case DIRECT: + return _("Direct"); + default: + return _("Public"); } } public string get_desc () { switch (this) { - case PUBLIC: - return _("Post to public timelines"); case UNLISTED: return _("Don\'t post to public timelines"); case PRIVATE: @@ -45,27 +52,25 @@ public enum Tootle.API.StatusVisibility { case DIRECT: return _("Post to mentioned users only"); default: - assert_not_reached(); + return _("Post to public timelines"); } } public string get_icon () { switch (this) { - case PUBLIC: - return "network-workgroup-symbolic"; case UNLISTED: - return "view-private-symbolic"; + return "changes-allow-symbolic"; case PRIVATE: - return "security-medium-symbolic"; + return "changes-prevent-symbolic"; case DIRECT: return "user-available-symbolic"; default: - assert_not_reached(); + return "network-workgroup-symbolic"; } } - public static StatusVisibility[] get_all () { - return {StatusVisibility.PUBLIC, StatusVisibility.UNLISTED, StatusVisibility.PRIVATE, StatusVisibility.DIRECT}; + public static Visibility[] all () { + return {Visibility.PUBLIC, Visibility.UNLISTED, Visibility.PRIVATE, Visibility.DIRECT}; } } diff --git a/src/Accounts.vala b/src/Accounts.vala deleted file mode 100644 index 0294619..0000000 --- a/src/Accounts.vala +++ /dev/null @@ -1,144 +0,0 @@ -using GLib; - -public class Tootle.Accounts : Object { - - private string dir_path; - private string file_path; - - public signal void switched (API.Account? account); - public signal void updated (GenericArray accounts); - - public GenericArray saved_accounts = new GenericArray (); - public InstanceAccount? formal {get; set;} - public API.Account? current {get; set;} - - public Accounts () { - dir_path = "%s/%s".printf (GLib.Environment.get_user_config_dir (), app.application_id); - file_path = "%s/%s".printf (dir_path, "accounts.json"); - } - - public void switch_account (int id) { - info ("Switching to #%i", id); - settings.current_account = id; - formal = saved_accounts.@get (id); - var msg = new Soup.Message ("GET", "%s/api/v1/accounts/verify_credentials".printf (accounts.formal.instance)); - network.inject (msg, Network.INJECT_TOKEN); - network.queue (msg, (sess, mess) => { - var root = network.parse (mess); - current = API.Account.parse (root); - switched (current); - updated (saved_accounts); - }, - network.on_show_error); - } - - public void add (InstanceAccount account) { - info ("Adding account for %s at %s", account.username, account.instance); - saved_accounts.add (account); - save (); - updated (saved_accounts); - switch_account (saved_accounts.length - 1); - account.start_notificator (); - } - - public void remove (int i) { - var account = saved_accounts.@get (i); - account.close_notificator (); - - saved_accounts.remove_index (i); - if (saved_accounts.length < 1) - switched (null); - else { - var id = settings.current_account - 1; - if (id > saved_accounts.length - 1) - id = saved_accounts.length - 1; - else if (id < saved_accounts.length - 1) - id = 0; - switch_account (id); - } - save (); - updated (saved_accounts); - - if (is_empty ()) { - window.destroy (); - Dialogs.NewAccount.open (); - } - } - - public bool is_empty () { - return saved_accounts.length == 0; - } - - public void init () { - save (false); - load (); - - if (saved_accounts.length < 1) - Dialogs.NewAccount.open (); - else - switch_account (settings.current_account); - } - - public void save (bool overwrite = true) { - try { - var dir = File.new_for_path (dir_path); - if (!dir.query_exists ()) - dir.make_directory (); - - var file = File.new_for_path (file_path); - if (file.query_exists () && !overwrite) - return; - - var builder = new Json.Builder (); - builder.begin_array (); - saved_accounts.foreach ((acc) => { - var node = acc.serialize (); - builder.add_value (node); - }); - builder.end_array (); - - var generator = new Json.Generator (); - generator.set_root (builder.get_root ()); - var data = generator.to_data (null); - - if (file.query_exists ()) - file.@delete (); - - FileOutputStream stream = file.create (FileCreateFlags.PRIVATE); - stream.write (data.data); - } - catch (GLib.Error e){ - warning (e.message); - } - } - - private void load () { - try { - uint8[] data; - string etag; - var file = File.new_for_path (file_path); - file.load_contents (null, out data, out etag); - var contents = (string) data; - - var parser = new Json.Parser (); - parser.load_from_data (contents, -1); - var array = parser.get_root ().get_array (); - - saved_accounts = new GenericArray (); - array.foreach_element ((_arr, _i, node) => { - var obj = node.get_object (); - var account = InstanceAccount.parse (obj); - if (account != null) { - saved_accounts.add (account); - account.start_notificator (); - } - }); - debug ("Loaded %i saved accounts", saved_accounts.length); - updated (saved_accounts); - } - catch (GLib.Error e){ - warning (e.message); - } - } - -} diff --git a/src/Application.vala b/src/Application.vala index 0cfe75d..db83dc7 100644 --- a/src/Application.vala +++ b/src/Application.vala @@ -3,6 +3,12 @@ using Granite; namespace Tootle { + public errordomain Oopsie { + USER, + PARSING, + INSTANCE + } + public static Application app; public static Dialogs.MainWindow? window; public static Window window_dummy; @@ -10,16 +16,23 @@ namespace Tootle { public static Settings settings; public static Accounts accounts; public static Network network; - public static ImageCache image_cache; - public static Watchlist watchlist; + public static Cache cache; + public static Streams streams; public static bool start_hidden = false; public class Application : Granite.Application { - public abstract signal void refresh (); - public abstract signal void toast (string title); - public abstract signal void error (string title, string text); + // These are used for the GTK Inspector + public Settings app_settings { get {return Tootle.settings; } } + public Accounts app_accounts { get {return Tootle.accounts; } } + public Network app_network { get {return Tootle.network; } } + public Cache app_cache { get {return Tootle.cache; } } + public Streams app_streams { get {return Tootle.streams; } } + + public signal void refresh (); + public signal void toast (string title); + public signal void error (string title, string text); public const GLib.OptionEntry[] app_options = { { "hidden", 0, 0, OptionArg.NONE, ref start_hidden, "Do not show main window on start", null }, @@ -27,22 +40,20 @@ namespace Tootle { }; public const GLib.ActionEntry[] app_entries = { - {"compose-toot", compose_toot_activated }, - {"toggle-reveal", on_sensitive_toggled }, + {"compose", compose_activated }, {"back", back_activated }, {"refresh", refresh_activated }, {"switch-timeline", switch_timeline_activated, "i" } }; construct { - application_id = "com.github.bleakgrey.tootle"; + application_id = Build.DOMAIN; flags = ApplicationFlags.FLAGS_NONE; - program_name = "Tootle"; - build_version = "0.2.0"; + program_name = Build.NAME; + build_version = Build.VERSION; } public string[] ACCEL_NEW_POST = {"T"}; - public string[] ACCEL_TOGGLE_REVEAL = {"S"}; public string[] ACCEL_BACK = {"BackSpace", "Left"}; public string[] ACCEL_REFRESH = {"R", "F5"}; public string[] ACCEL_TIMELINE_0 = {"1"}; @@ -52,6 +63,9 @@ namespace Tootle { public static int main (string[] args) { Gtk.init (ref args); + + Stacktrace.register_handlers (); + //assert (true == false); // I'm not crazy. It's for stacktrace testing. try { var opt_context = new OptionContext ("- Options"); @@ -71,10 +85,10 @@ namespace Tootle { Granite.Services.Logger.DisplayLevel = Granite.Services.LogLevel.INFO; settings = new Settings (); + streams = new Streams (); accounts = new Accounts (); network = new Network (); - image_cache = new ImageCache (); - watchlist = new Watchlist (); + cache = new Cache (); accounts.init (); app.error.connect (app.on_error); @@ -82,8 +96,7 @@ namespace Tootle { window_dummy = new Window (); add_window (window_dummy); - set_accels_for_action ("app.compose-toot", ACCEL_NEW_POST); - set_accels_for_action ("app.toggle-reveal", ACCEL_TOGGLE_REVEAL); + set_accels_for_action ("app.compose", ACCEL_NEW_POST); set_accels_for_action ("app.back", ACCEL_BACK); set_accels_for_action ("app.refresh", ACCEL_REFRESH); set_accels_for_action ("app.switch-timeline(0)", ACCEL_TIMELINE_0); @@ -104,13 +117,9 @@ namespace Tootle { return; } - debug ("Creating new window"); - if (accounts.is_empty ()) - Dialogs.NewAccount.open (); - else { - window = new Dialogs.MainWindow (this); - window.present (); - } + info ("Creating new window"); + window = new Dialogs.MainWindow (this); + window.present (); } protected void on_error (string title, string msg){ @@ -120,12 +129,8 @@ namespace Tootle { message_dialog.destroy (); } - private void on_sensitive_toggled () { - window.button_reveal.clicked (); - } - - private void compose_toot_activated () { - Dialogs.Compose.open (); + private void compose_activated () { + new Dialogs.Compose (); } private void back_activated () { diff --git a/src/Build.vala b/src/Build.vala new file mode 100644 index 0000000..eb90870 --- /dev/null +++ b/src/Build.vala @@ -0,0 +1,9 @@ +public class Build { + + public const string NAME = "Tootle"; + public const string WEBSITE = "https://github.com/bleakgrey/tootle"; + public const string DOMAIN = "com.github.bleakgrey.tootle"; + public const string RESOURCES = "/com/github/bleakgrey/tootle/"; + public const string VERSION = "1.0.0"; + +} diff --git a/src/Desktop.vala b/src/Desktop.vala index c026329..466cbed 100644 --- a/src/Desktop.vala +++ b/src/Desktop.vala @@ -30,37 +30,42 @@ public class Tootle.Desktop { } // Download a file from the web to a user's configured Downloads folder - public static void download_file (string url) { - debug ("Downloading file: %s", url); + public delegate void DownloadCallback (string path); + public static void download (string url, DownloadCallback? cb = null, Network.ErrorCallback? ecb = null) { + info (@"Downloading file: $url..."); var i = url.last_index_of ("/"); var name = url.substring (i + 1, url.length - i - 1); if (name == null) - name = "unknown"; + name = _("Unknown Attachment"); - var dir_path = "%s/%s".printf (GLib.Environment.get_user_special_dir (UserDirectory.DOWNLOAD), app.program_name); - var file_path = "%s/%s".printf (dir_path, name); + var downloads = GLib.Environment.get_user_special_dir (UserDirectory.DOWNLOAD); + var dir_path = @"$downloads/$(Build.NAME)"; + var file_path = @"$dir_path/$name"; - var msg = new Soup.Message("GET", url); - msg.finished.connect(() => { - try { - var dir = File.new_for_path (dir_path); - if (!dir.query_exists ()) - dir.make_directory (); + new Request.GET (url) + .then ((sess, msg) => { + try { + var dir = File.new_for_path (dir_path); + if (!dir.query_exists ()) + dir.make_directory (); - var file = File.new_for_path (file_path); - if (!file.query_exists ()) { - var data = msg.response_body.data; - FileOutputStream stream = file.create (FileCreateFlags.PRIVATE); - stream.write (data); + var file = File.new_for_path (file_path); + if (!file.query_exists ()) { + var data = msg.response_body.data; + FileOutputStream stream = file.create (FileCreateFlags.PRIVATE); + stream.write (data); + } + info ("OK"); + cb (file_path); + + } catch (Error e) { + warning ("Error: %s\n", e.message); + ecb (0, e.message); } - app.toast (_("Media downloaded")); - } catch (Error e) { - app.toast (e.message); - warning ("Error: %s\n", e.message); - } - }); - network.queue (msg); + }) + .on_error ((code, reason) => ecb) + .exec (); } public static string fallback_icon (string normal, string fallback) { diff --git a/src/Dialogs/Compose.vala b/src/Dialogs/Compose.vala index a928495..a56018f 100644 --- a/src/Dialogs/Compose.vala +++ b/src/Dialogs/Compose.vala @@ -1,241 +1,145 @@ using Gtk; -public class Tootle.Dialogs.Compose : Dialog { +[GtkTemplate (ui = "/com/github/bleakgrey/tootle/ui/dialogs/compose.ui")] +public class Tootle.Dialogs.Compose : Window { - private static Compose dialog; + public API.Status? status { get; construct set; } + public string style_class { get; construct set; } + public string label { get; construct set; } + public int char_limit { + get { + return 250; + } + } - protected TextView text; - private ScrolledWindow scroll; - private Label counter; - private Widgets.ImageToggleButton spoiler; - private MenuButton visibility; - private Button attach; - private Button cancel; - private Button publish; - protected Widgets.AttachmentGrid attachments; - private Revealer spoiler_revealer; - private Entry spoiler_text; + [GtkChild] + protected Box box; - protected API.Status? replying_to; - protected API.Status? redrafting; - protected API.StatusVisibility visibility_opt = API.StatusVisibility.PUBLIC; - protected int char_limit; + [GtkChild] + protected Revealer cw_revealer; + [GtkChild] + protected ToggleButton cw_button; + [GtkChild] + protected Entry cw; + [GtkChild] + protected Label counter; - public Compose (API.Status? _replying_to = null, API.Status? _redrafting = null) { - border_width = 6; - deletable = false; - resizable = true; - title = _("Toot"); + [GtkChild] + protected MenuButton visibility_button; + [GtkChild] + protected Image visibility_icon; + protected Widgets.VisibilityPopover visibility_popover; + [GtkChild] + protected Button post_button; + + [GtkChild] + protected TextView content; + + construct { transient_for = window; - char_limit = settings.char_limit; - replying_to = _replying_to; - redrafting = _redrafting; - if (replying_to != null) - visibility_opt = replying_to.visibility; - if (redrafting != null) - visibility_opt = redrafting.visibility; + post_button.label = label; + foreach (Widget w in new Widget[] { visibility_button, post_button }) + w.get_style_context ().add_class (style_class); - var actions = get_action_area ().get_parent () as Box; - var content = get_content_area (); - get_action_area ().hexpand = false; + visibility_popover = new Widgets.VisibilityPopover.with_button (visibility_button); + visibility_popover.bind_property ("selected", visibility_icon, "icon-name", BindingFlags.SYNC_CREATE, (b, src, ref target) => { + target.set_string (((API.Visibility)src).get_icon ()); + return true; + }); - visibility = get_visibility_btn (); - visibility.tooltip_text = _("Post Visibility"); - visibility.get_style_context ().add_class (Gtk.STYLE_CLASS_FLAT); - visibility.get_style_context ().remove_class ("image-button"); - visibility.can_default = false; - (visibility as Widget).set_focus_on_click (false); + cw_button.bind_property ("active", cw_revealer, "reveal_child", BindingFlags.SYNC_CREATE); - attach = new Button.from_icon_name ("mail-attachment-symbolic"); - attach.tooltip_text = _("Add Media"); - attach.valign = Align.CENTER; - attach.get_style_context ().add_class (Gtk.STYLE_CLASS_FLAT); - attach.get_style_context ().remove_class ("image-button"); - attach.can_default = false; - (attach as Widget).set_focus_on_click (false); - attach.clicked.connect (() => attachments.select ()); + cw_button.toggled.connect (validate); + cw.buffer.deleted_text.connect (() => validate ()); + cw.buffer.inserted_text.connect (() => validate ()); + content.buffer.changed.connect (validate); + post_button.clicked.connect (on_post_button_clicked); - spoiler = new Widgets.ImageToggleButton ("image-red-eye-symbolic"); - spoiler.tooltip_text = _("Spoiler Warning"); - spoiler.set_action (); - spoiler.toggled.connect (() => { - spoiler_revealer.reveal_child = spoiler.active; - validate (); - }); - - cancel = add_button (_("Cancel"), 5) as Button; - cancel.clicked.connect(() => destroy ()); - - if (redrafting != null) { - publish = add_button (_("Redraft"), 5) as Button; - publish.get_style_context ().add_class (Gtk.STYLE_CLASS_DESTRUCTIVE_ACTION); - publish.clicked.connect (redraft_post); - } - else { - publish = add_button (_("Toot!"), 5) as Button; - publish.get_style_context ().add_class (Gtk.STYLE_CLASS_SUGGESTED_ACTION); - publish.clicked.connect (publish_post); + if (status.spoiler_text != null) { + cw.text = status.spoiler_text; + cw_button.active = true; } + content.buffer.text = Html.remove_tags (status.content); - spoiler_text = new Entry (); - spoiler_text.margin_start = 6; - spoiler_text.margin_end = 6; - spoiler_text.placeholder_text = _("Write your warning here"); - spoiler_text.changed.connect (validate); + show (); + } - spoiler_revealer = new Revealer (); - spoiler_revealer.add (spoiler_text); + public Compose () { + Object (status: new API.Status.empty (), style_class: STYLE_CLASS_SUGGESTED_ACTION, label: _("Post")); + } - text = new TextView (); - text.get_style_context ().add_class ("toot-text"); - text.wrap_mode = WrapMode.WORD; - text.accepts_tab = false; - text.vexpand = true; - text.buffer.changed.connect (validate); + public Compose.redraft (API.Status status) { + Object (status: status, style_class: STYLE_CLASS_DESTRUCTIVE_ACTION, label: _("Redraft")); + } - scroll = new ScrolledWindow (null, null); - scroll.hscrollbar_policy = PolicyType.NEVER; - scroll.min_content_height = 120; - scroll.vexpand = true; - scroll.propagate_natural_height = true; - scroll.margin_start = 6; - scroll.margin_end = 6; - scroll.add (text); - scroll.show_all (); + public Compose.reply (API.Status status) { + var template = new API.Status.empty (); + template.in_reply_to_id = status.in_reply_to_id; + template.in_reply_to_account_id = status.in_reply_to_account_id; + template.content = status.formal.get_reply_mentions (); + Object (status: template, style_class: STYLE_CLASS_SUGGESTED_ACTION, label: _("Reply")); + visibility_popover.selected = status.visibility; + } - attachments = new Widgets.AttachmentGrid (true); - counter = new Label (""); + protected void validate () { + var remain = char_limit - content.buffer.get_char_count (); + if (cw_button.active) + remain -= (int)cw.buffer.length; - actions.pack_start (counter, false, false, 6); - actions.pack_end (spoiler, false, false, 6); - actions.pack_end (visibility, false, false, 0); - actions.pack_end (attach, false, false, 6); - content.pack_start (spoiler_revealer, false, false, 6); - content.pack_start (scroll, false, false, 6); - content.pack_start (attachments, false, false, 6); - content.set_size_request (350, 120); + counter.label = remain.to_string (); + post_button.sensitive = remain >= 0; + visibility_button.sensitive = true; + box.sensitive = true; + } - if (replying_to != null) { - spoiler.active = replying_to.sensitive; - var status_spoiler_text = replying_to.spoiler_text != null ? replying_to.spoiler_text : ""; - spoiler_text.set_text (status_spoiler_text); - } - if (redrafting != null) { - spoiler.active = redrafting.sensitive; - var status_spoiler_text = redrafting.spoiler_text != null ? redrafting.spoiler_text : ""; - spoiler_text.set_text (status_spoiler_text); - } - - destroy.connect (() => dialog = null); - - show_all (); - attachments.hide (); - text.grab_focus (); + protected void on_error (int32 code, string reason) { //TODO: display errors + warning (reason); validate (); } - private MenuButton get_visibility_btn () { - var button = new MenuButton (); - var menu = new Popover (null); - var box = new Box (Orientation.VERTICAL, 6); - box.margin = 12; - menu.add (box); - button.direction = ArrowType.DOWN; - button.image = new Image.from_icon_name (visibility_opt.get_icon (), IconSize.BUTTON); + protected void on_post_button_clicked () { + post_button.sensitive = false; + visibility_button.sensitive = false; + box.sensitive = false; - RadioButton? first = null; - foreach (API.StatusVisibility opt in API.StatusVisibility.get_all ()){ - var item = new RadioButton.with_label_from_widget (first, opt.get_desc ()); - if (first == null) - first = item; + if (status.id >= 0) { + info ("Removing old status..."); + status.poof (publish, on_error); + } + else { + publish (); + } + } - item.toggled.connect (() => { - visibility_opt = opt; - (button.image as Image).icon_name = visibility_opt.get_icon (); - }); - item.active = visibility_opt == opt; - box.pack_start (item, false, false, 0); + protected void publish () { + info ("Publishing new status..."); + status.content = content.buffer.text; + status.spoiler_text = cw.text; + + var req = new Request.POST ("/api/v1/statuses") + .with_account () + .with_param ("visibility", visibility_popover.selected.to_string ()) + .with_param ("status", Html.uri_encode (status.content)); + + if (cw_button.active) { + req.with_param ("sensitive", "true"); + req.with_param ("spoiler_text", Html.uri_encode (cw.text)); } - box.show_all (); - button.use_popover = true; - button.popover = menu; - button.valign = Align.CENTER; - button.show (); - return button; - } + if (status.in_reply_to_id != null) + req.with_param ("in_reply_to_id", status.in_reply_to_id); + if (status.in_reply_to_account_id != null) + req.with_param ("in_reply_to_account_id", status.in_reply_to_account_id); - private void validate () { - var remain = char_limit - text.buffer.get_char_count (); - if (spoiler.active) - remain -= (int)spoiler_text.buffer.length; - - counter.label = remain.to_string (); - publish.sensitive = remain >= 0; - } - - public static void open (string? text = null, API.Status? reply_to = null) { - if (dialog == null){ - dialog = new Compose (reply_to); - - if (text != null) - dialog.text.buffer.text = text; - } - else if (text != null) - dialog.text.buffer.text += text; - } - - public static void reply (API.Status status) { - if (dialog != null) - return; - - open (null, status); - dialog.text.buffer.text = status.get_reply_mentions (); - } - - public static void redraft (API.Status status) { - if (dialog != null) - return; - dialog = new Compose (null, status); - - if (status.attachments != null) { - foreach (API.Attachment attachment in status.attachments) - dialog.attachments.append (attachment); - } - - var content = Html.simplify (status.content); - content = Html.remove_tags (content); - content = Widgets.RichLabel.restore_entities (content); - dialog.text.buffer.text = content; - } - - private void publish_post () { - var pars = "?status=%s&visibility=%s".printf (Html.uri_encode (text.buffer.text), visibility_opt.to_string ()); - pars += attachments.get_uri_array (); - if (replying_to != null) - pars += "&in_reply_to_id=%s".printf (replying_to.id.to_string ()); - - if (spoiler.active) { - pars += "&sensitive=true"; - pars += "&spoiler_text=" + Html.uri_encode (spoiler_text.buffer.text); - } - - var url = "%s/api/v1/statuses%s".printf (accounts.formal.instance, pars); - var msg = new Soup.Message ("POST", url); - network.inject (msg, Network.INJECT_TOKEN); - network.queue (msg, (sess, mess) => { + req.then ((sess, mess) => { var root = network.parse (mess); - var status = API.Status.parse (root); - debug ("Posted: %s", status.id.to_string ()); //TODO: Live updates + var status = new API.Status (root); + info ("OK: status id is %s", status.id.to_string ()); destroy (); - }); - } - - private void redraft_post () { - redrafting.poof ((sess, msg) => { - publish_post (); - }); + }) + .on_error (on_error) + .exec (); } } diff --git a/src/Dialogs/MainWindow.vala b/src/Dialogs/MainWindow.vala index fc508e4..a7c905c 100644 --- a/src/Dialogs/MainWindow.vala +++ b/src/Dialogs/MainWindow.vala @@ -1,122 +1,55 @@ using Gtk; using Gdk; +[GtkTemplate (ui = "/com/github/bleakgrey/tootle/ui/dialogs/main.ui")] public class Tootle.Dialogs.MainWindow: Gtk.Window, ISavedWindow { - private Overlay overlay; - public Granite.Widgets.Toast toast; - private Grid grid; - private Stack view_stack; - private Stack timeline_stack; + [GtkChild] + protected Stack view_stack; + [GtkChild] + protected Stack timeline_stack; - public HeaderBar header; - public Granite.Widgets.ModeButton button_mode; - private Widgets.AccountsButton button_accounts; - private Spinner spinner; - private Button button_toot; - private Button button_back; - public Button button_reveal; - - public Views.Home home = new Views.Home (); - public Views.Notifications notifications = new Views.Notifications (); - public Views.Local local = new Views.Local (); - public Views.Federated federated = new Views.Federated (); + [GtkChild] + protected HeaderBar header; + [GtkChild] + protected Button back_button; + [GtkChild] + protected Button compose_button; + [GtkChild] + protected Granite.Widgets.ModeButton timeline_switcher; + [GtkChild] + protected Widgets.AccountsButton accounts_button; construct { - var provider = new Gtk.CssProvider (); - provider.load_from_resource ("/com/github/bleakgrey/tootle/app.css"); - StyleContext.add_provider_for_screen (Gdk.Screen.get_default (), provider, Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION); + provider.load_from_resource (@"$(Build.RESOURCES)app.css"); + StyleContext.add_provider_for_screen (Screen.get_default (), provider, Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION); + back_button.clicked.connect (() => back ()); + Desktop.set_hotkey_tooltip (back_button, _("Back"), app.ACCEL_BACK); + + compose_button.clicked.connect (() => new Dialogs.Compose ()); + Desktop.set_hotkey_tooltip (compose_button, _("Compose"), app.ACCEL_NEW_POST); + + timeline_switcher.mode_changed.connect (on_mode_changed); + + add_header_view (new Views.Home (), app.ACCEL_TIMELINE_0, 0); + add_header_view (new Views.Notifications (), app.ACCEL_TIMELINE_1, 1); + add_header_view (new Views.Local (), app.ACCEL_TIMELINE_2, 2); + add_header_view (new Views.Federated (), app.ACCEL_TIMELINE_3, 3); + timeline_switcher.set_active (0); + + button_press_event.connect (on_button_press); settings.changed.connect (update_theme); update_theme (); - - timeline_stack = new Stack(); - timeline_stack.transition_type = Gtk.StackTransitionType.SLIDE_LEFT_RIGHT; - timeline_stack.show (); - view_stack = new Stack(); - view_stack.transition_type = Gtk.StackTransitionType.SLIDE_LEFT_RIGHT; - view_stack.show (); - view_stack.add_named (timeline_stack, "0"); - view_stack.hexpand = view_stack.vexpand = true; - - spinner = new Spinner (); - spinner.active = true; - - button_accounts = new Widgets.AccountsButton (); - - button_back = new Button (); - button_back.valign = Align.CENTER; - button_back.label = _("Back"); - button_back.get_style_context ().add_class (Granite.STYLE_CLASS_BACK_BUTTON); - button_back.clicked.connect (() => back ()); - Desktop.set_hotkey_tooltip (button_back, null, app.ACCEL_BACK); - - button_toot = new Button (); - button_toot.valign = Align.CENTER; - button_toot.image = new Image.from_icon_name ("document-edit-symbolic", IconSize.LARGE_TOOLBAR); - button_toot.clicked.connect (() => Dialogs.Compose.open ()); - Desktop.set_hotkey_tooltip (button_toot, _("Toot"), app.ACCEL_NEW_POST); - - button_reveal = new Button (); - button_reveal.valign = Align.CENTER; - button_reveal.image = new Image.from_icon_name ("image-red-eye-symbolic", IconSize.LARGE_TOOLBAR); - Desktop.set_hotkey_tooltip (button_reveal, _("Toggle content"), app.ACCEL_TOGGLE_REVEAL); - - button_mode = new Granite.Widgets.ModeButton (); - button_mode.get_style_context ().add_class ("mode"); - button_mode.vexpand = true; - button_mode.valign = Align.FILL; - button_mode.mode_changed.connect (on_mode_changed); - button_mode.show (); - - header = new HeaderBar (); - header.get_style_context ().add_class ("compact"); - header.show_close_button = true; - header.title = _("Tootle"); - header.custom_title = button_mode; - header.pack_start (button_back); - header.pack_start (button_toot); - header.pack_end (button_accounts); - header.pack_end (button_reveal); - header.pack_end (spinner); - header.show_all (); - - grid = new Grid (); - grid.attach (view_stack, 0, 0, 1, 1); - - add_header_view (home, app.ACCEL_TIMELINE_0, 0); - add_header_view (notifications, app.ACCEL_TIMELINE_1, 1); - add_header_view (local, app.ACCEL_TIMELINE_2, 2); - add_header_view (federated, app.ACCEL_TIMELINE_3, 3); - button_mode.set_active (0); - - toast = new Granite.Widgets.Toast (""); - overlay = new Overlay (); - overlay.add_overlay (grid); - overlay.add_overlay (toast); - overlay.set_size_request (450, 600); - add (overlay); - + update_header (); restore_state (); - show_all (); - - button_reveal.hide (); } - public MainWindow (Gtk.Application _app) { - application = _app; - icon_name = "com.github.bleakgrey.tootle"; - resizable = true; - window_position = WindowPosition.CENTER; - set_titlebar (header); - update_header (); - - app.toast.connect (on_toast); - network.started.connect (() => spinner.show ()); - network.finished.connect (() => spinner.hide ()); - accounts.updated (accounts.saved_accounts); - button_press_event.connect (on_button_press); + public MainWindow (Gtk.Application app) { + Object (application: app, icon_name: Build.DOMAIN, resizable: true, window_position: WindowPosition.CENTER); + if (accounts.is_empty ()) + open_view (new Views.NewAccount (false)); } private bool on_button_press (EventButton ev) { @@ -125,22 +58,19 @@ public class Tootle.Dialogs.MainWindow: Gtk.Window, ISavedWindow { return false; } - private void add_header_view (Views.Abstract view, string[] accelerators, int32 num) { + private void add_header_view (Views.Base view, string[] accelerators, int32 num) { var img = new Image.from_icon_name (view.get_icon (), IconSize.LARGE_TOOLBAR); Desktop.set_hotkey_tooltip (img, view.get_name (), accelerators); - button_mode.append (img); + timeline_switcher.append (img); view.image = img; timeline_stack.add_named (view, num.to_string ()); - - if (view is Views.Notifications) - img.pixel_size = 20; // For some reason Notifications icon is too small without this } public int get_visible_id () { return int.parse (view_stack.get_visible_child_name ()); } - public bool open_view (Views.Abstract widget) { + public bool open_view (Views.Base widget) { var i = get_visible_id (); i++; widget.stack_pos = i; @@ -171,7 +101,7 @@ public class Tootle.Dialogs.MainWindow: Gtk.Window, ISavedWindow { } } - public override bool delete_event (Gdk.EventAny event) { + public override bool delete_event (EventAny event) { destroy.connect (() => { if (!settings.always_online || accounts.is_empty ()) app.remove_window (window_dummy); @@ -181,39 +111,28 @@ public class Tootle.Dialogs.MainWindow: Gtk.Window, ISavedWindow { } public void switch_timeline (int32 timeline_no) { - button_mode.set_active (timeline_no); + timeline_switcher.set_active (timeline_no); } private void update_theme () { - var provider = new Gtk.CssProvider (); - var is_dark = settings.dark_theme; - var theme = is_dark ? "dark" : "light"; - provider.load_from_resource ("/com/github/bleakgrey/tootle/%s.css".printf (theme)); - StyleContext.add_provider_for_screen (Gdk.Screen.get_default (), provider, Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION); - Gtk.Settings.get_default ().gtk_application_prefer_dark_theme = is_dark; + Gtk.Settings.get_default ().gtk_application_prefer_dark_theme = settings.dark_theme; } private void update_header () { bool primary_mode = get_visible_id () == 0; - button_mode.sensitive = primary_mode; - button_mode.opacity = primary_mode ? 1 : 0; //Prevent HeaderBar height jitter - button_toot.set_visible (primary_mode); - button_back.set_visible (!primary_mode); - button_accounts.set_visible (true); - } - - private void on_toast (string msg){ - toast.title = msg; - toast.send_notification (); + timeline_switcher.sensitive = primary_mode; + timeline_switcher.opacity = primary_mode ? 1 : 0; //Prevent HeaderBar height jitter + compose_button.visible = primary_mode; + back_button.visible = !primary_mode; } private void on_mode_changed (Widget widget) { - var visible = timeline_stack.get_visible_child () as Views.Abstract; + var visible = timeline_stack.get_visible_child () as Views.Base; visible.current = false; - timeline_stack.set_visible_child_name (button_mode.selected.to_string ()); + timeline_stack.set_visible_child_name (timeline_switcher.selected.to_string ()); - visible = timeline_stack.get_visible_child () as Views.Abstract; + visible = timeline_stack.get_visible_child () as Views.Base; visible.current = true; visible.on_set_current (); } diff --git a/src/Dialogs/NewAccount.vala b/src/Dialogs/NewAccount.vala deleted file mode 100644 index 43faf67..0000000 --- a/src/Dialogs/NewAccount.vala +++ /dev/null @@ -1,192 +0,0 @@ -using Gtk; - -public class Tootle.Dialogs.NewAccount : Dialog { - - private static NewAccount dialog; - - private Grid grid; - private Button button_done; - private Image logo; - private Entry instance_entry; - private Label instance_register; - private Label code_name; - private Entry code_entry; - - private string? instance; - private string? client_id; - private string? client_secret; - private string? code; - private string? token; - private string? username; - - public NewAccount () { - border_width = 6; - deletable = true; - resizable = false; - title = _("New Account"); - transient_for = window; - - logo = new Image.from_resource ("/com/github/bleakgrey/tootle/logo128"); - logo.halign = Align.CENTER; - logo.hexpand = true; - logo.margin_bottom = 24; - - instance_entry = new Entry (); - instance_entry.width_chars = 30; - - instance_register = new Label ("%s".printf (_("What's an instance?"))); - instance_register.halign = Align.END; - instance_register.set_use_markup (true); - - code_name = new Widgets.AlignedLabel (_("Code:")); - - code_entry = new Entry (); - code_entry.secondary_icon_name = "dialog-question-symbolic"; - code_entry.secondary_icon_tooltip_text = _("Paste your instance authorization code here"); - code_entry.secondary_icon_activatable = false; - - button_done = new Button.with_label (_("Add Account")); - button_done.clicked.connect (on_done_clicked); - button_done.halign = Align.END; - button_done.margin_top = 24; - - grid = new Grid (); - grid.column_spacing = 12; - grid.row_spacing = 6; - grid.hexpand = true; - grid.halign = Align.CENTER; - grid.attach (logo, 0, 0, 2, 1); - grid.attach (new Widgets.AlignedLabel (_("Instance:")), 0, 1); - grid.attach (instance_entry, 1, 1); - grid.attach (code_name, 0, 3); - grid.attach (code_entry, 1, 3); - grid.attach (instance_register, 1, 5); - grid.attach (button_done, 1, 10); - - var content = get_content_area () as Box; - content.pack_start (grid, false, false, 0); - - destroy.connect (() => { - dialog = null; - - if (accounts.is_empty ()) - app.remove_window (window_dummy); - }); - - show_all (); - clear (); - } - - private void clear () { - code_name.hide (); - code_entry.hide (); - code_entry.text = ""; - client_id = client_secret = code = token = null; - } - - private void on_done_clicked () { - instance = "https://" + instance_entry.text - .replace ("/", "") - .replace (":", "") - .replace ("https", "") - .replace ("http", ""); - code = code_entry.text; - - if (client_id == null || client_secret == null) { - request_client_tokens (); - return; - } - - if (code == "") - app.error (_("Error"), _("Please paste valid instance authorization code")); - else - try_auth (code); - } - - private void request_client_tokens (){ - var pars = "?client_name=Tootle"; - pars += "&redirect_uris=urn:ietf:wg:oauth:2.0:oob"; - pars += "&website=https://github.com/bleakgrey/tootle"; - pars += "&scopes=read%20write%20follow"; - - grid.sensitive = false; - var message = new Soup.Message ("POST", "%s/api/v1/apps%s".printf (instance, pars)); - network.queue (message, (sess, msg) => { - grid.sensitive = true; - - var root = network.parse (msg); - var id = root.get_string_member ("client_id"); - var secret = root.get_string_member ("client_secret"); - client_id = id; - client_secret = secret; - - info ("Received tokens from %s", instance); - request_auth_code (); - code_name.show (); - code_entry.show (); - }, (status, reason) => { - network.on_show_error (status, reason); - }); - } - - private void request_auth_code (){ - var pars = "?scope=read%20write%20follow"; - pars += "&response_type=code"; - pars += "&redirect_uri=urn:ietf:wg:oauth:2.0:oob"; - pars += "&client_id=" + client_id; - - info ("Requesting auth token"); - Desktop.open_uri ("%s/oauth/authorize%s".printf (instance, pars)); - } - - private void try_auth (string code){ - var pars = "?client_id=" + client_id; - pars += "&client_secret=" + client_secret; - pars += "&redirect_uri=urn:ietf:wg:oauth:2.0:oob"; - pars += "&grant_type=authorization_code"; - pars += "&code=" + code; - - var message = new Soup.Message ("POST", "%s/oauth/token%s".printf (instance, pars)); - network.queue (message, (sess, msg) => { - var root = network.parse (msg); - token = root.get_string_member ("access_token"); - - info ("Got access token"); - get_username (); - }, (status, reason) => { - network.on_show_error (status, reason); - }); - } - - private void get_username () { - var message = new Soup.Message("GET", "%s/api/v1/accounts/verify_credentials".printf (instance)); - message.request_headers.append ("Authorization", "Bearer " + token); - network.queue (message, (sess, msg) => { - var root = network.parse (msg); - username = root.get_string_member ("username"); - add_account (); - window.show (); - window.present (); - destroy (); - }, (status, reason) => { - network.on_show_error (status, reason); - }); - } - - private void add_account () { - var account = new InstanceAccount (); - account.username = username; - account.instance = instance; - account.client_id = client_id; - account.client_secret = client_secret; - account.token = token; - accounts.add (account); - app.activate (); - } - - public static void open () { - if (dialog == null) - dialog = new NewAccount (); - } - -} diff --git a/src/Dialogs/Preferences.vala b/src/Dialogs/Preferences.vala index f0646f9..b476a74 100644 --- a/src/Dialogs/Preferences.vala +++ b/src/Dialogs/Preferences.vala @@ -88,7 +88,7 @@ public class Tootle.Dialogs.Preferences : Dialog { halign = Align.START; valign = Align.CENTER; margin_bottom = 6; - settings.schema.bind (setting, this, "active", SettingsBindFlags.DEFAULT); + settings.bind (setting, this, "active", SettingsBindFlags.DEFAULT); } } diff --git a/src/Dialogs/WatchlistEditor.vala b/src/Dialogs/WatchlistEditor.vala deleted file mode 100644 index 29cf1aa..0000000 --- a/src/Dialogs/WatchlistEditor.vala +++ /dev/null @@ -1,206 +0,0 @@ -using Gtk; -using Gee; - -public class Tootle.Dialogs.WatchlistEditor : Dialog { - - private static WatchlistEditor dialog; - - private StackSwitcher switcher; - private MenuButton button_add; - private Button button_remove; - private Stack stack; - private ListStack users; - private ListStack hashtags; - private ActionBar actionbar; - private Popover popover; - private Grid popover_grid; - private Entry popover_entry; - private Button popover_button; - - private const string TIP_USERS = _("You'll be notified when toots from this user appear in your Home timeline."); - private const string TIP_HASHTAGS = _("You'll be notified when toots with this hashtag appear in any public timelines."); - - private class ModelItem : GLib.Object { - public string name; - - public ModelItem (string name) { - this.name = name; - } - } - - private class ModelView : ListBoxRow { - public Label label; - public ModelView (ModelItem item) { - label = new Label (item.name); - label.margin = 6; - label.halign = Align.START; - label.justify = Justification.LEFT; - add (label); - show_all (); - } - } - - private class Model : GLib.ListModel, GLib.Object { - private GenericArray items = new GenericArray (); - - public GLib.Type get_item_type () { - return typeof (ModelItem); - } - - public uint get_n_items () { - return items.length; - } - - public GLib.Object? get_item (uint position) { - return items.@get ((int)position); - } - - public void append (ModelItem item) { - this.items.add (item); - } - - } - - public static Widget create_row (GLib.Object obj) { - var item = (ModelItem) obj; - return new ModelView (item); - } - - private class ListStack : ScrolledWindow { - public Model model; - public ListBox list; - - public void update (ArrayList array) { - array.@foreach (item => { - model.append (new ModelItem (item)); - return true; - }); - list.bind_model (model, create_row); - } - - public ListStack (ArrayList array) { - model = new Model (); - list = new ListBox (); - add (list); - update (array); - } - } - - private void set_tip () { - var is_user = stack.visible_child_name == "users"; - popover_entry.secondary_icon_tooltip_text = is_user ? TIP_USERS : TIP_HASHTAGS; - } - - public WatchlistEditor () { - border_width = 6; - deletable = false; - resizable = false; - transient_for = window; - title = _("Watchlist"); - - users = new ListStack (watchlist.users); - hashtags = new ListStack (watchlist.hashtags); - - stack = new Stack (); - stack.transition_type = StackTransitionType.SLIDE_LEFT_RIGHT; - stack.hexpand = true; - stack.vexpand = true; - stack.add_titled (users, "users", _("Users")); - stack.add_titled (hashtags, "hashtags", _("Hashtags")); - - switcher = new StackSwitcher (); - switcher.stack = stack; - switcher.halign = Align.CENTER; - switcher.margin_bottom = 12; - - popover_entry = new Entry (); - popover_entry.hexpand = true; - popover_entry.secondary_icon_name = "dialog-information-symbolic"; - popover_entry.secondary_icon_activatable = false; - popover_entry.activate.connect (() => submit ()); - - popover_button = new Button.with_label (_("Add")); - popover_button.halign = Align.END; - popover_button.margin_start = 6; - popover_button.clicked.connect (() => submit ()); - - popover_grid = new Grid (); - popover_grid.margin = 6; - popover_grid.attach (popover_entry, 0, 0); - popover_grid.attach (popover_button, 1, 0); - popover_grid.show_all (); - - popover = new Popover (null); - popover.add (popover_grid); - - button_add = new MenuButton (); - button_add.image = new Image.from_icon_name ("list-add-symbolic", IconSize.BUTTON); - button_add.popover = popover; - button_add.clicked.connect (() => set_tip ()); - - button_remove = new Button (); - button_remove.image = new Image.from_icon_name ("list-remove-symbolic", IconSize.BUTTON); - button_remove.clicked.connect (on_remove); - - actionbar = new ActionBar (); - actionbar.add (button_add); - actionbar.add (button_remove); - - var grid = new Grid (); - grid.attach (stack, 0, 1); - grid.attach (actionbar, 0, 2); - - var frame = new Frame (null); - frame.margin_bottom = 6; - frame.add (grid); - frame.set_size_request (350, 350); - - var content = get_content_area (); - content.pack_start (switcher, true, true, 0); - content.pack_start (frame, true, true, 0); - - add_button (_("_Close"), ResponseType.DELETE_EVENT); - show_all (); - - response.connect (on_response); - destroy.connect (() => dialog = null); - } - - private void on_response (int i) { - destroy (); - } - - private void on_remove () { - var is_hashtag = stack.visible_child_name == "hashtags"; - ListStack stack = is_hashtag ? hashtags : users; - stack.list.get_selected_rows ().@foreach (_row => { - var row = _row as ModelView; - watchlist.remove (row.label.label, is_hashtag); - watchlist.save (); - row.destroy (); - }); - } - - private void submit () { - if (popover_entry.text_length < 1) - return; - - var is_hashtag = stack.visible_child_name == "hashtags"; - var entity = popover_entry.text - .replace ("#", "") - .replace (" ", ""); - - watchlist.add (entity, is_hashtag); - watchlist.save (); - button_add.active = false; - - var stack = is_hashtag ? hashtags : users; - stack.list.insert (create_row (new ModelItem (entity)), 0); - } - - public static void open () { - if (dialog == null) - dialog = new WatchlistEditor (); - } - -} diff --git a/src/Drawing.vala b/src/Drawing.vala index 6a70a76..1d293e5 100644 --- a/src/Drawing.vala +++ b/src/Drawing.vala @@ -13,23 +13,24 @@ public class Tootle.Drawing { ctx.close_path (); } - public static Pixbuf make_pixbuf_thumbnail (Pixbuf pixbuf, int view_w, int view_h, bool fill_parent = false) { - // Don't resize if parent view is bigger than actual image - if (view_w >= pixbuf.width && view_h >= pixbuf.height) - return pixbuf; + public static void center (Cairo.Context ctx, int w, int h, int tw, int th) { + var cx = w/2 - tw/2; + var cy = h/2 - th/2; + ctx.translate (cx, cy); + } - //Otherwise fit the image into the parent view - var resized_w = view_w; - var resized_h = view_h; - //resized_w = (pixbuf.width * view_h) / pixbuf.height; - //resized_h = (pixbuf.height * view_w) / pixbuf.width; + public static Pixbuf make_thumbnail (Pixbuf pb, int view_w, int view_h) { + if (view_w >= pb.width && view_h >= pb.height) + return pb; - if (fill_parent) - resized_h = (pixbuf.height * view_w) / pixbuf.width; - else - resized_w = (pixbuf.width * view_h) / pixbuf.height; + double ratio_x = (double) view_w / (double) pb.width; + double ratio_y = (double) view_h / (double) pb.height; + double ratio = ratio_x < ratio_y ? ratio_x : ratio_y; - return pixbuf.scale_simple (resized_w, resized_h, InterpType.BILINEAR); + return pb.scale_simple ( + (int) (pb.width * ratio), + (int) (pb.height * ratio), + InterpType.BILINEAR); } } diff --git a/src/Html.vala b/src/Html.vala index da6a18f..da58fdf 100644 --- a/src/Html.vala +++ b/src/Html.vala @@ -1,30 +1,46 @@ public class Tootle.Html { public static string remove_tags (string content) { - var all_tags = new Regex("<(.|\n)*?>", RegexCompileFlags.CASELESS); - return all_tags.replace(content, -1, 0, ""); + var all_tags = new Regex ("<(.|\n)*?>", RegexCompileFlags.CASELESS); + return GLib.Markup.escape_text (all_tags.replace (content, -1, 0, "")); } - public static string simplify (string content) { - var divided = content + public static string escape_pango_entities (string str) { + return str + .replace (" ", " ") + .replace ("'", "'") + .replace ("& ", "&"); + } + + public static string restore_entities (string str) { + return str + .replace ("&", "&") + .replace ("<", "<") + .replace (">", ">") + .replace ("'", "'") + .replace (""", "\""); + } + + public static string simplify (string str) { + var divided = str .replace("
    ", "\n") .replace("
    ", "") .replace("
    ", "\n") .replace("

    EiS=cytW04(XDBq0Wro@TtPvvk{yCD+^4BkXy6@E|Hn#Gw)QSlE zip!U!8Nga@E^{)AuK+lHBvyEJ3!)pd8;IE|C)9+RCu5U6XE4@g*ogo#m*Yq9{>7JG zg=5}s3TvnAh@Z?TDmh>>*=MoPs}{=69{{6WSVfn>{GT=Z<+JHAF;u$u9Rl+=SUx$` zg9YS<@R9$Zo5Ui`M4XfOLO$e>!jX-VptNc!Zsi0?=zW!EmSoJyfV4-zaEo{ zbs3>r>R#ELhV4;b0P=#`P&{YQNN39501RR}B7c8**7t@|o^D@_Y8pO0YjG4Df(n`` ze#4=fx~JQrfsC3(vqORQZ>p$V9}co_In(_%F;i{2R}>Z6uv %W`VJB@$~T+NmPN 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%0DBe`2<(&T~~_6P#Zw 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 diff --git a/data/screenshot3.png b/data/screenshot3.png deleted file mode 100644 index 14330a13b9f5454482c650c17b35c76fd5b6411d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 180001 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%0DC`-12;a8p`ENMgzfhN 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ℜ-OZk z73KRWHGRN@f=hB7p>P3F9~R=b4%fWghKyS!fHX$y2KXVWrdevi^Axk~CFfvY2_Bhq-EnJcYD^pK93^xjMbJ^IBkb zcYfT#`hI}Ygn`T)D?hG1+eyLRLDi04pAP)KX!<1zFq_eC^n5BvLm&gHFIBhotW^kQ z#!{RHD}=gG%*tN(L{kGnG-{Tfv7M5~8fi#C;+)-w&EQ(Td5W*TgWw9 zPeWq2x`%K*|MDZ!AHvnAr2vIJhB;kuZ$HT2-sI4viaBjm*Km?0>TjIaAJzWNUva#&Nl_Q-aFs#n7w^{#awtcqu_*ug)TwFYX|2a7pLIu`{(iP zj??4IYz_CrXOQeC&u)xdA8;-*y&_+7eiMboV2=udGU$foMU>FS`WV+1^%n5QeRg+R zrKThfQ#GA^;-B5If)H2m@7o+D0xp5KvZx{!R79cvcA>d6obVorbV-*4BgD|oj!|j2 z)6wC+acchE{B8BZDq7=)$hVFl-sjj*w-|Xsf^o32ywyc`LBt}<2!@vPEW;sl(ASi% zVB%XRlSrs=rdW=dPTn8to?Mpf$2CP(ZXx zmK~lASRHL@0q8ZQEM(XD%d~I1ke#Ipz-uYa89!|-YF!}`>(q});!H)Sm1;JTI*)#erJGkX{j=pgpXy)H> zCtYI}*|#B|QuFX{N!FitE`)d2wqX_&^VQoOmt}DI+=hLxTVhPl3p}N5O}gq!bsTw` z%Ac<0y?|!kQ}c)`iF-*pv>&riK7hf7$fl%R+=?k&U@~0RscBOgXLZ z{qU~M|75!Vwr7Zdl7$vB8GEv4Gf!7rn;AN0dc;(jJ_RO1AoTV1e zaq>XAJ(YmkHGE%IHpDM=LIw!rGhF>rJ)Du$N9W=Sxb&6c8DP6ZP4?im-Dq&U zkJpjCE(WYE&u5wpY1S66oz()zVP%;mNioADVLlV_nZL!HQl+*W&j4iwn!X7zV5f@Hc*Z=3Y3JiGtbkkudV{*$5mr>Vs zaV=~4_4FR+Iaf_PA(DT~4@Ot&@ISh+D*#Xg$2X={OAgDgXjd^Nz`#}gPKp7exhSv8 z$mgRLCU0*PPExr`pzwQ_3GB$n^K0J)koom$kOVTiWIN99jrDmI8+eo1+-*Vt+SQs* z-;=;lWT)q&1*huaKWj%B`N$~y>7b+?$r@$I99(*R&9I?T>FH6l3G<^za!E(Cn>_x} z6mRg3I{gyKVm=*RR-}n4k2kO{vq7DmZr%0m@>ptY><+a$EFHolV1;%{b z4$q_le>JXW0YE#UcXJ6t_EFc1mBB$+-#5_7uz*NH0!tdW!!repjhloVWOX%rf7$8s z_%qDIwYdSP+$J8harz8a{RYy3YZ61qEW(2r6)>rIarenK@>cgbb&HXpBb&?TBVTih zioE5&BIl;S6EeoHtDrT;9Ksnl4iFtE$!>XNLl_?|!hi438|&+rm$Ez%Abv1av8iwm zwv1csmMdf*YqBXJmni5`xIgR3a-nl~p)BJf3rHjz3WuL>&EnFhV*YI^WaP6XVJWmz ziBJfCnL<>e-L+ynm4*FC_pXXpG%oCgPQT5*Sk-){?F4_qx~JFRrF|C$Tfo*PK$2eO z_IkH~BN5HqpY8V!3$b~OQ+Wc3(C^{`c}D~SK?Y(jfCQLAhLum>)PGe2O&WfO=kL@P z+9rJGEvQWW^Lj$U7GW{>Wvh=7yf1ldgqw|D4G0IUA#f}h;J{AvJg~J+1+T0$qTcY% z7R8}|-wr2HI}&;jji?v1JPQPevSrqhNG@WcqBnx{%Tu3j9En47{Aj)H&A|Twd#*)9 zXp^}-s{U2wjG+&Pm82SbQGK4%005)=@y$Kkwjpc6fMVZiHGUfCrb6!za7tL{utN9u zRQDd@kk`F8EUJOvp>49f5S+hK^P5vNa=a${_U#hr_ZD!{a(Q>x1|iRY z*)D0c2gMJrIW|UlWL->thfh=yFL5!KKrCXl7>=Hr7(mJ~*|bvK7#XVD8t11C6WG% zPQz&lp@cIA(vAbi>+>BV*yYQE+C=l*oyE_`$pu8XLTILd;#ZHJFy6fc5|foTAL+!!p?FKY;S*T&aetH25coPd{3Cg8Q zl%w69Neh9B%5x2rUctDZq-@X$ey~GL^Z~C^B=%Bqfd{OSMr6{x9FDOkduTTvmmwbi zKw5O8L;2-%L!-)DdXZws)nXbyqC`2qaJc#1UAoNA=Z;rp@A9`aL!qL7E4|F`zFg?A zmzEe80S1Q7r1!!f@7$HX$W*dn@NXw~A$gpc2fT9GAlAA}=cgF(ZZ}7{Gn0ytO}<+Um(~vGwATrnEg^ zXM=X7CIiMIc#0qJtpp%aKyN7CrCa@A)w~G&;#!@v$dB-xtB!_FFc;`Ag$$PydfQ?% z@*=rtl5lG4N%Lp&W_M|ADNV`L%*~hgU@Yxd3v`P#WOcp;%y};^--6m-3#!}B4;Drr zm6nZrh29?pCk?+fQSbGV@LQ7c1T>Op@+(q@WAvB*p%Qa5&$LK%+3~?2^|Tmj0INR=W%@SGrWW5|)%Y zR4b5G3Dr~41(1nqBtN*&s_FjQxr1_ZFQAWSrH5G}KtDD~H4i18hEOA$Qqd^j3M8Es zfzlVtf)azHz5Rx)Y#EP$4X6Eu68F5Z#nBHbAa-KvMGQu*9RE?-#-Pj@+C(Z;g}}Eo z*-URig#~OS#kOA=J}2m;AWFgMWFnOTElTRFh>Bp$<*O z5(3eKBj|xDnh;#s;$JyolA34dG~-a&*`(Al4Z~=k*AyEYtYl%V3q|w zu7o*-nn~-gGpjsHbcng+K#lad`PB_aJT`P2^OF<`vQdP1hOqn=zw#73$5ZGJC-_|g z+S|lZztXMyY^)<>QM6KY@KiL_V0*eDB=|Nu&3-zN!is9&1H-2{^whB(tcY&?y&Ed9 z0^M}e7&HEdc@;K(c*s5p2E)0X1wx5Vy_2|fTKsCUAPw%HrdS$e~TGUcbXNTT9MBnlu&ujUiAWe}rDOh4Q!Zzw7!= zbrsvQ{&znbI&P)&70fx*f@5GQ)NGR0**7pMxOy@OmYjgnIxgrx^RwaAz$B}Wh`bS+ zKW_)-a5{rXN9v`X+r@l~f{W6URdSLvMQp@0sVh4_hSxpTdd zeVX!76>6p0QFhYQh34Fa*xyrhw&c<_tpX&2ND4SHs4rlc$4ouVjLxT0ml~;+Mbe_l zb-)n%Qw86>WE3a8DFBaMdUuGjg%5%;#`GA50DW3Frj`929V1KkjKyX&q4m?^h9?@= zBLZ@HkM5GXpg=Uft_nx@Y@O=R2pKk<6Gl1lO0c|?fvPSm+Db6gNI+Nlw!%6|stQ6+ z4@Z$Won3vvUD8JK*jt5gJ;GOVVf3Cy|QX@7=rO<-8SAC)!h^!I*0n7K^=QC`qha(T;ouXsipVh~1r_8j%S^BqS^(uW)``3j)Xhd9YTkX68 z8vv8ZGJOW#>*HYNOt;uSyP2lc1|6d?$UyX6LE&Il zNn!8xX3}m~UlFwO#fbl)X=g`r#iLSrov2jHl1?gHW0^Z11N)dRaZ1GC zLwDimd3U=k=!EqfZuO!H8xO}*-i;{9pN{q+hE9>Gg42egK)%HP>WqOvo{|~9YLar` z)VYMlUW?oM!;MgZ)JT~%QNl%GyuIv3^^$q-YXh;$D`^m$ztQ!E`OVcI>h_{L^C) zqZqwDUZoZe-yY4RaayVNwtNAfqE&yu`E$SXy&lXKl`@3h{dvSeU~k^u1-~bxQG2|q z!S$HE`I~_O8LGe~Sea@?WRtw9Db?3dq>{RFnG`00>ml;|!oqo8g_6B1?L{-LN!hnw zWs|ZdXOd3eJ1)UJ7f&*ke@IIsu(Gncx33qUBqb+1_9Am%f;7k(&~iVU(SW8u8};Ax zK}-pTL?YBSoto=)-V7VnuV|AF*~@~=RmjH^(h(EHL&q|o z@I$%X&9Kgk_W8}%A4b955{qG{z)QG?^GImI)@Z3wSuDokue3kDLL6&~eQtB$M$L)v zSrEndRgZ(L&+pFzganf`D`0!_%S9)Nipq)LVDcZqxG)lR>Fhya!~N4q_p94A+157` z)g*4~iOT$Z3SIZD5dBf(E|CB3aW_E$m(SVUehJw5zWlchG^yZc5Nh~Azt-Xc8O}o# zG`M4MJX?~K3_X9g-tN_Y!x^Q!pbq%krhuog+n(q&gK1z z-AuL7;ATxM5&!j~Q5>uLrT$+-$7PYf44-63g6d8U4NmX`c z_qYtWKSUn4yAvmD`u2P$@_3~KVyN50e?eC}gEOBKYyb>XWD8|oD8${qo1c4GISWo# zq)i?eji+;p^sB@^tU95}7bTP^6Jp9u?M$yEcG`<@A(eUA zzRwY=6`Bs9)!_2m2TdUmt}A$X#w80J62`su>KnGyAt<>jf@&p1WaEe&ay(}zpwem`msf7_B zVf@GIyyPw^pwPk)S7P>v7+=fg1jl>{VZqZ37iM^Pn1Y&Gl4!w|^cW|i(87ATF5>#y zkxDj|6lM)EkdzP#<#kDv$GmTFP)SoWa?KXF@V$j;hRr-(!oq^q!NI|0qNu}Ct23Pm zw|E>H8aCJWcX6q79I+sZGwUa(q8Z{NkQIZ_&FOkOLEK=_#s%;JD(@d?VjCBOJ6Ba+ z54OwoRttw7-yEA36hOxfk8?PHg^Y%mHx2X$xolUZK%zH1CPqA&fLmh0C99@}&Glkk z?qt5=yR@|B>}?+J>d7Z<6Y_!Jw(@j|67}}>_Rz?P;lV^!63i+$3<#V=Mdg`I{(+_7 z`QLl-KkvoFHTG@d`@c`W_TjRC77#RHQ!0r6$E(UfYk!q8)vbq@t0(Vn0)>piB??S$ zgiq`i@Z~#3JV^Uti_F!p*X*|$$CrZAM@AzdiJLs=y?DqwX@Tqb9IRKB6ix{XI;uZ# z&QfqnoG(8DtQ;JITQk{214{q%MFxxtEm#xHOVsw768WTlYYLBbT-Uf7z;EtC{c4$5LNy^U2W411^tkl(Fm9Eg9bgh zHAMwc6(lm}Usib&5#j$IZbo7J0>Ty_$>bTWOBM zM%0QfG?hpJz0=(wBNV7uv5zyAO5;cl56ttEg%2&+15J?Zb_j z!9iI(4XD0fz^o*4y46Szr#WJJdc*)s+C#w6l!Vk&slod*iv&^z{ICPhhJC@nY`N?8RN#^}xh`NoPaWz~b3G9&r&JV8n7bRBlB z%6@P6<9F*m?7H`Qv**KUPXXrO%++B)s{eTDRJ9N6 z^t4eZ5xONJYu)^h0}lmFfuX>OUugoyL6AorUaemaHHaRVEum<`_C+<;$En;IyI zR>CN$llSqJs%)XcOl=;(!a?z!ifmpKNFGNjRDvCLL!=}qlm_g`8t3hm2o&5G!I9*N zesW2h?083L&;L8ZPvzs;Q1pf#gd)`(ybK~dc6euM7|r%qUtv(IzKhO}Ka)Z)(d2Og z@wF3th@es-X;!M$*F|-AaNfdUky9pV@jY|H_3zV7%RP6hmf z0yKAC=%0yo3=&X!VNc{R>hc#78v` znq`AQYcd#_9<=mD0Fz>k-N{mmkqxX7L8^^6j%?kt8D862dy0Mtsa>qZ>m6Ve&l9e& zLx~M)DQP*YR#XKb;eGJ#Yt0gBDIY=@NtB`ed+JZH)8U6|L(nD&Z8IPhY}cLNkqk}4 zgDe46rfB%yM=h}%7e&Rz;cgo~DY>~{2I5F2C;Zqvj<&oOGm;|aY{jc-h5*qO=6cV@4)B(yes?5}MR+AI!VgkK-Y(=xc7o=j5ENk~ZAzPsxLRdonz{+@RN z69zs9lyTb`Kfi1k4)*5D*or7Iymq+4GIzcr@vd-TTqyH?L~lh4e$c%SCpF!Uu;Z<> z$G#MHD3olBG%sk2%U<#Aw{fS~>@iVk^Mz7ZrVp*g^uIpcSPOah;Tc~@ zRSwui89Z&II9{x&UEW6HxSuU{8z(K&yUcjVAu{`2;@upyp$aLm#25?~ux$-2@Y-#( zpbGOQSY&&TmtF{ob$1UrVDhx&Wzj15jL~QN_Qq{^OI!G&Folg39Ar%#IsyN3&Fs|6 zN19nN32^V=6$)IT{NSZ2U9M19@&FeQ3dtbxjz^{k{GRU_fNb25$jFo5?T;%<`A8ln zaahMTb2#uYV{sdocP)PjYA9i{ZQUX+9Dk2wEK8m$4ao|-ct$-Ee96IM1NyOXTl=`} zjv5GObDB7`y-v^U+Dzt)mxov}5l_OCPxOY{3#1J(Jl$~1AN~Ue`E5GhEYMq8q2v~L zwo-|a_zZAmQYK7xODe7oRXZ}dqwXtOf2B0S#tq7xP*D3kX9bt2tG7E4q*;AHeH}Ci zQG!Jtz+b@dZ-?Gv&}zU{_ztc*w_BI{qwd?i6N;e5JcsO&T?~ zI2>;94)RH4)F=bn(p^R9TsCnfp*qAoTL@w*zdJA~g*dmX&n(xDL~vg8zIr=ls2|S7 zgc@w#JPl1w9%Q+#Q&9~Jv$n_X_a0<_v3jGUhzd4NI&w4A^L*e>egs6QTcbGZ6y+ED zpJuf#wfSP6ER>sFOpLd&-+?bX^QW@|J7R5C+%C^sFIWtEzG*gCM~s_79s`0)A_wkL zw0qm#7$0}KrnzIi7IMa~wmq?eJdcvJu6Mm)+ws2Z!i4KeNCYdpx&E=% zjb1{RBHt2MLucV)ofTln@yY9h&!CzyN%nqF_0DO~rllNiv=bKPBQa zroB!vQv4i3R?`_Z>nt}OkpW)$4l?z*oe?#}?%6{6UAZbgXLWOrzHcs~4ClMzj@58x zuySxau+rHM2OQn_8y3`QlT%9MO;-0#A*Fr1xDu~9xo*o^DR?>x2udPLRu5FU@4>ul zzR~+A5QeNUS6?1n;4ZgPf42$UzIv)wS82m{_oiaSa-3LXb>|4-z3Iq5StlxHT&exM z@!x^DX5G1nZgm_q;(?>97@~dt<`sTlnMtP8KAyWbh7-;hxu6BT^ymprIDbS+HAxW| zhE2clLpj%gj)_5)o+(3A+L16w5_u5)WIF{~m`sDB0jM{A+iJJ-x^gbjFbFa$3CQ!? zAb}9Ndd0jxnCc3v!Jvx*`A#wB@T(O%U{%{?SkAnrXPPsk+H0g~|1>AM`P5Xx?%jBCGg@7XKgqB7wQ*Bd9lOo-IY_J3r1#4jixg99 zG3x=~sf8X*Pw}J8?nes(ch92&ce5o@-FpHT;$AL%ei_mRIL%iWn61MYuVFU4 zw%*V+e7Cc3T*6+c8r<2=2>FooN(m#V>`a2tyzGB)T1wD^OGm}3A9xP+6>`FP3mVrM zp*+YMDItH|&({CnSOCfR)jNvw=Se#T4Yur=mitP4Gq4}($5fOP5uwr+Ke=cJ@4LR` zt}4YccEiL&?Z01y%o$D>>fp$V{3hcPikO}@)J~6-nlVTBz*vhTfrWE}_bFqf0>O@S@VzpoLXcRGZqyY4)I->E|@!OgD)n6>A zYApK~8+~k!TR(1oFDA6&z`I+_E3|Q(P=lR{$cx(cvCIIE)ENQBcvx0Qdj;afrBSP= zMDCdEEYj_Lo1zW8BCzm3usC@nmAVI5RGco6PiEe8y6I!Rr-;f z41yQ}EUQ&zCQoMU)sucjk;!ULs7p)N{Jys-Do*whEr?(r7$%P6wLk*Oi7s4zf{w`Vv&$WD*@# z2#J|8KKzT-sHzxyr`h%W2G#0AJwQ#-enm^)1)wBGMm(%=k>{Dyio7rH7l3%)95)t| zR%iXh4+)EcG=Z*~QaRMeLyf=bxcHD&Cp#Ul$PzGSlW_!&h1J@9kRzTBX`#3I^Z1G^ z4aS5x>pGWETP2oBBc4uE)RLmwe2=Ql>pjQJQ=kD*q8!nM>u3!tbp9`!dgBd${VhE< zf{t7FLGRU|#h8NbdhG*}{Oag|Uj6pYdV5>!*aRuY;r-Hr8u81M{345c;*ni7$1LV2Y*h8euY%wzWUbXMP2)NF^pG z{n~XlfCzFNF8)WKLC*u>6A8D{tUt3orco%DJPN?_c0KBi6*W zR8BX{XdR930OMJ&&nC9aT8*B9C`Pdr+j%(HFs1zsY`zZyTwTUkxE|CVVI5SdruC5_4~FAgOn78xkxF+&cNTX*=lO%F5;7% zzYHlVejoi;gLg$=Gv>!UT=>lN{4n*r-+4h+Npea`N*)FEuSf!=kjy+g9(%RWr!)?i zCxtqo5M{5&qb3ZUArzdlMy%_ex`Rh6HP-4D)q_0xMyZ3e6kP*JUp&8xXKZ?6+YAo8 zHN&!o^9gNktp&z|#RiLfleLOmX8_Fvy@o?f>~T^EO5gIgVWGlvGH0}rTrBpG%i!Q$np99t!ciYV~}Jn z0*8o6DD4AsXJ`5!15<H4w5u@6&~06L zR%>8kML`2$PPpIX#yYeUFbrvKHHOyelaleWE}vbnhQYqXg-FZW|HvKu)#^pSsOd)0 z*(WnGft=}lt?x{ysm0FzQD_AOZ)&H?;Hoe*zBnI3z>PwHjW&5P24wuw4rf& zsh0L-xW~mX)X}dtOs}^RgqHg5Tr*@x?)3tQUv};h$<5CX4{qX-UejEx8ztZMa36o9 z=78lKsb>5%%W?)x1v~_t4+1-%)47h0Uf*6Wu&g>tpMtZuU}m2wmmzS(CH;?79?> zDRtu`5-2kLG2xRUsgUI!Hj|7;kc27ybyNFO{Z)r+1!CU3axNo=bEpU zTiuPGcf9NE$-cr8%T52P)o8q3bq{9hV|sZ@6w*iJVOrqASUQj&Rk_=5MzT8^BFwhibg%8OgZ)}_i0i9e9Uo29 zn(94QvHCPi?y}CTZ{KY}&F*&IN&~%wzECRTQHG%Q-r^HTW%g$^#iVn#qhlBzLqYJF zaHdFMCk9nWq9eDB?-@qpM5kO-f3>_gi7p*jLeW*X71DtcDPv zr3SwVMJ=fGzNybMElOC@pEb{Fmkps>ErZL5-bat8FKtmDU8bD8XR|q*;R65iRXBNF zrhWjJwW8gYvWp{!{~E>iU}OiMhvh@@Q&LBb&UCqLfar^bK3SRcIEQ;@M= zKI1v1tI$%B&H1T(Y;?uEk(16>gEZ)J;(r<)q^bLCr-B@cfltP9ew&o;b2zdBfp!Z08f+Uq-P! z$$`ixznvT{$Y}e>(dobQV2AX5!)XC#_O$a~rQ_R5(nlgOL&rz_nGS3(C@|jJ``vDX zxekGvZo4flzc+SbxA{Wiw_A{+`$b5IIAc7tw6xp7AdD?;vgcDL2QESo``%(3n+cS$ z-!z{!$TV%;3T3h%1<=_19KZNMZ`UhzI?T9zQSbLtH8IWtm**7F;$r>vWkPcP(}uV8 zW80bU0vhm>wTg5#8-4#Dl7~$wL)o*yZJcID?7jL7o29yH#)G9?oj+%e2;$;^Tt>JP z-%^bOdBKub)iQRn?W%~ZA>W=yf%T&W*>GeMAXGv|g%Ui1r#DUsMp6UC{kp0dk!AsT zWKLaKOCa8&hP#MR+HG^X-F;edNvjHZCV2bQnr#6%h==)ge}9~CrcA9b!;2&m36mo` zZ1oFw8K`AN=dtnnWG7~jM7EIv&tYKN*NQe|qxfVj$>qP8J#FM58z2fZVm#-^Q3$ntau&I9HKLP#Oi4 z7>p)}HW=GdiYD7{;yibbr^$-eTzDCiVLCI_?js`HQ#SG(vfhQElWL(GzeR@sv>!_J zN66P`ez#gc$=2HmC-+oMC;Rwe2VPrDWwT5&45VMU8eh=6x=}!^ws=~#U-}j+;BYIt zFydI8qy{p@Hx$aI)u0W1@h(%z7w!?D9=qvHHwU+ZPyzaDx4IHlt0IOhdC~8SvWZ+Z zg9PcRB@*ipj~p^J>A_jQfs%dyfc~xtnHTae3gxdo7)D`++{AOSGVwI*-4+oA9855+ zomd(4Fm|H-b$`T{mW&BKC{E^qUuQUwdf}2!exP=B8DCas;l3Ut&aLzEXeFT3Uw;~= z<>a9BBB?f#C`C!S zKK)>~mh%63EVgkbNypf;)RV9LU@)_$?t%(f`=)}Gc~n8eG}OnDQ{DuXy)l_wu`=Z% zs80N!F&#w!Bz|*5z*M!h!v`}$Cr>EtyW39hNz-5)mr$@eBl2aWT7r*h#3O41`s3ma z`aRnakuYtN0yK*CC(YwJ?QsC0UJFw{68Q5pDX{!#BiB@ZGjHB_+ItCLVPiu>{*Rp= z1qFoI#ky5ldb=)epqVc&Pc~`)brWA1js*n5VM5nn(XPO-U!?;;-A@9=`4hIVhntzbG8bdq-xmJZa zF)GXt-NK!#lqhH$bqsk4D>iS6C%(b0}Za+jl7 zkkc*<9%T8)fT1fZ5dY1)2HO~3{CnTfbT3lL zt4&S({-ZPl>llVIG**Fis!i8>#p$1$S>6+pfFs=G7f5=@Oa zf~yl%e!&8IDiAI2%z%&rF9a$n}GHQ=Q(W8G9hP zdeLikAYdhU4^yadEg9jSUL_^O#95mWw!ZBdzaR|#uGp2~qpW7@FBB~?{qdLJ)P-Qz zw3RiWPqjiyUMBBvaX3>JKkNmx#tLcqn9cQdYi;v&`bpDsDSaA;1%?uFQ`FhXI}a%} zQ)i*$KfiOMUInMXr;Nf8B8Bz=RFY2jaFRZZDAn?T)rTD&mqsV?h=)%uMq zcwYPJuBS`AKYdM=KrgD>DX5igfIy6ikn2 zuuQ!#0j3)L@I8AhO?&AXzqH|Dn~Ys>Xq)1ci>CJET1ku>&WCnWiQDPU`KH1dyJLP% zl)B*H$1OJYbju?3*ooCJr9?1x;p?z_zR&bwE|9+XUF_WvAZEO5ri)NT`v zGG&BkyIV}|=qi@f3|vC51{$ZFOueP5A``s90F?80uk|p@9E+DZ2WIvV=zXmVhC*0l zqz`G`j4xu{cI(5$oa!<^@4|sIH?7-c(jHt+jeqcXyb>{XOrbo1Y8ktx{mXqDa$(rM z4ep-xud7Udj#OM*IUao*dVDN~iMf+5J? z4fdorS$}WUk26YU8~fgvpCGTYdL<^}eckouNSv#C##DEvlcY1(km z+PV3igMM@TQat5_yXso{e;nre^wrWtjD8!ox;sZ>XXnYarABUt&xwv1db^^EdxwS= z|1NS?PGz(tHz#YojUAfeJT+UXHB5EJ-BrtRmwx?8c9Ao8nYc#?r zz_4S8xn^*_LeEE{&*gyzywBBe}f>)BFg#V^CwyHZLRzKrn zV_Sl0j9S9y1DE5A%giqFv|=M7Vt>@K3Ssi{rYym5mPW?sDa~9pk=$~U_e9|*-%K?P zwhB6Mow!(Mi3chX?tkaP>o_SB3|#x=Pxp^&=3TC9UBIBfd9?wL$4jLILz{)UiqCnD z-dPz1OcLu_H3dCo96dna}&;mP5T z8JS~7gt4b6ggDx4;$xEJ$u@x+eEV+8Bay)NSZ|MsnyRPg3AZsabYy5iTXDHw)p6yV zhGRb`vULS^5uJbxB)I#;qj*MURU^C64nOOXg5AxU&g=S=TY6)dddXMemoN{uecDp^ zeET>h4zi#0u}rh3uSsinsX}!Ku^#s3t@av6muY^79=ze(lj8|(9x!gX+_;|8wq@75 z>;xZt#f0t=@zPjE_4BU|$*dh7m{YKDTEAUFPQDV282tLu`f!H=Dp29ahKIS0M>Vxb|&ikYk|7xAKkCcy=43&{E9>u$%kuYIwLsY|Z=E z@@nS4mK&{YH8|$JiP?KCd2#e3=L0M5{wcw|KQip9c_w4kL8IKL>(~efCyq_gSI5j5;WB54p zF$)Gv1k~Llr6K`n!0$ln=vQp*S`p`Da;e+Cj`jWm;p5uPUd~BFHkVcPbwS?_@kn~n zIPv+xrS!b$SMqDcIROiicvk`^giw*B`Kg`6C-b^F^u&Q0)rTWH--Ubn_`W5zhg!W^zrHbMxISgu?6EuMDzr%~JGnd_ z-^1oHW_)C>XU>pi9==@_L|D)AikvBgrFXlpcd>+rkCS5}&IX&pNSK&4J{jogIbKS)vJSySVx|W(!S>x~3Z(hKnhxQt|DjjWfy|EfrL3cza@POb;MOq}ibexY2JW8|Olf1ZV z*woroS;$2rEbcM?bPc3k0b66syZpXFJi{Z9@8!z^kK#y!nHfn}Db{?N9eomN^HDnQ zr6*)9Md?+J*sN_SiP$Y?vawZ(mGUim?A`-4X0BEZGZj@LMj0}OFK$JXlm=SHiTyoP z7nROCx&tF}U^I30H4tL%Z;yhn*;m`Ca&jHNC9t~x;*L{rRnCD9$ zqPC8kQAHNC>@0TY(70d%uRo1$b~x4$8#dduFCQ+uc9^_lFBxPz*_{q= zPwuK8?|-uO4B&0}%tjguxlK(&X~V4rP45fjN8b~dzD@Py>3(coY2+Pbt=&9z8f66{ zdVW3R3Gd#jG0$G(p`_IG^jmP~^1j0hFLCKS*AsyCDIPKT6J5jmBl;xSUhpcbeD!Ey zmZ}zM@I-$1N_CgpBQ?=!O^W@@Kj5pF&uH+x^s9bRlb%PzkK+kT>2!%0nH2vRMIo*y z`=ebthdtFNwtO>!JH40I42I*57L(y&>U*+_Ip_BeNw4HyaX0JA`#hj~D%y>{vX4(p z9Vlv(bcd`pJ;4@|PMVp0!sb`0Sz4MJf9fVv!q#-Vzg`Z(=B%7k%)QLHCdEJl1Yg~y zXY?>Ksk&eqWoL2l{T&_rHk?c}RM^`HG@l)5ZR!U?t0jrPjn`~ZpjbbRGyde4q0)(a zS9)pq{yY3epxVy1GwpXMuYK~ncvs3zI~JEx3BqQ1k)&qiJkDmmB0ajfei!@0vRH`1 zqsEiVfou2)|5J0^1$0AdQSi(~unsHq{^*ioM#`P!zi)rDl})z@76Y4E8B{|LQgw1& zz}%=X<@nFG>8-$k02w_w@$K8UCB1Lpl1DvxM;jw)f?~6MPIs4-{vFABN@Hb$!%_H`bu*<==1x=(3KOZ4XGuvN>9t5ZWwOIx=jvBO3E)`VTBV{ z`dTy=W+e&vem~!_Gu1$R?wmGBCMn=T)#|n=5rNkt6NER5yY`NXTBSi9C4~K(n?3p6 z`+38s`S;hWe*e^>ACkHvx-R0qwcF!ksKewWeN2gI{zG&}CNP3!U5)foKItBgt;@DM z@w6ao!8I1TMlefJL>)U-XHCpmP=)`R6jt8;jD2P`Uq_~-+|spEznA~elxVb+)uO@X z_}XsYN|(<&p@1pp!%F0Gx6J9m=m1te{&r5Y;`sB`6}R)|>aS`6Ge97Vqze_|v z8;AEwW`GIj>2{Nc5iWLnv$7KT!p=W=4=kHA^Q8>D$@;rCk?9> zI`Hz&1NPsn?43o3W(_@-;5^uSU7oJfcmMjdc()tzXO9(JEc8wI%4NmA_ph>wum`_l z@{Mi$D0i)YMMI#J^X8`2nkprcJVe0#hlp5 zWv<@PD&+)lmU~_iH3rDs)Gd>PiCHdnMj##mW*B90nC^_d_#omZA}KDhG0vX0IVAln zu{$TPzoN-!Ew@(u?E{PwMRrd(`DW=07^;-)89ZsJqZ2NaRA%7Dn`h7)Mb6{3~(1&)xyfsU0F0I;whP-6ruQNQtdl^$t z5HB6$1{=%fOjlw@d&^uTf_)CH9%m3K=5rjbH4XK!6cBzowE4CZYI8iB0afyO$7nKA zsQ$uLjXs1CdG$;-+~7ueb9_~wB*og4A^O8bK&YM2pAC(_sP=xS>P-wDXXFnpRkbRi zDcli51o{T|*kGz?*HCdn9Dy;hf}hhpzC3xQ_dw$XO6;a)LvLh^^6CETcY$wMlZ0mW z^uC)Hj`8kKR$2eqy?dHPbFHp$N1uwc>LX!2YpJe%xvg~E#b{hXmJRm@-( zo%^(6t!nsGwdvyq&plR7&d|zltlF&~Na#(n?KW`3Dg?X~G;HvaWgd13-_ltKy{ zSWrpqkgIoaxxSae9A7k|OZZeKh^JIai$kVWcr=@NeF_t&7WMm+ui$3arG53#G{T^6 zVdS!QZ!yND`r!c6V5AG2;0ZRrXaR& z1|BEL82A8`=F}&&bdk+RVBIV;K1L79oy$x$wXg>s4ZAy(le``#OZj>WZZyKCV_{W$ zZlu9;>8Bo5SNBTMhNp>#9ofR3BLKiK^IGAhcA`Z2mhsbvVXr|4r8?|C_F93w2^me_ zBJE3a7NhLP#EiYO;DTZ7?dn@9JzpOlA-L(i!bO`Q-JUj$G&nVX_FI~upowq3V&k$| z`dbq33|i_sRa)}-;q7ZLY*MQ1W!3Wob~tMYP;d zcqG2Fq?8eGAS}nqOGNj^rxz#j ztww4;SlZMdQ~K&yEO>miAF-=8t2Ur>yVxX?I@b2wo$jo^``?-AzS+Uy9f4;u@oc8E zVo8c%0*+p6bxW4_{co!m7Lu2>@0Lr^6O@0_WWGlVOCu#4t}!S*^Opt} z>57U9(Cu~~g8A*yq?wWrX5{W$Jd7aB`1O!%L0d;rN9Td!Z6p-qClem@>K?g_V_DyE z!k%3JT*np0n0)^=alP_KW@m5Dm%8w>ih5>CZv2TCUN1vPZ)tzv>y@qfj<9Xr?QJlx5NtZ5v6ilR)`yt`m6Hpt*?K%Y_7iuepfu~0t^Ex*Q3+$kalO8yh;un4P z<@Vi1^4FohfM*YBlbnz{!uS6Yn)Uf-22NPdD8Yt5%eS{u1`!esij4yo(`!(V_X(sl zlH;BezW==9&u@)Y`;~D8;{qg2I;Q^D4}2>ZqzWCHrqd zKS-DSl;;A9)yHON^>m(jrvE$l$7%Gz`smshg7jax5B}fR=pUxzxO+m3W+!R&lqT4t zg zo#E~DrOfvj7KUT< zX=peN+WtAHnLNb3ld7(x8Z3FV>_5F=c+J2~UI3KTN&om{$1&Tb4c=$}s@=!}kF1W4nYlR^7nkipqa7F+ z@t2$t=ZUO`piOxZ6C`~5t8f?1h@Ac)Lk>`}<)AyAtvNZpw$RGKESmwXV-ymE*!%9QM zZ6o=rAO%RCAqs0--UrIzm!6KzSDwhG6N3Bp=3_uy@8USUN4H3FA&oO#DYvx9rOZw~8Bkc6JQ~+0!JEF4?R0i3}%n@AlNscC>Xm zN4)m^c3(+G-7@1}AnigY=18An>}%U}z{7=6M$sJZ+wr%Jo-#n1LzWZ4Z|@p$&W z&`G4|98Br_xZM2kseVhX%km>$SbJjHey=3zN;LHI_ah}$FEHaq@@QDzVXm=m46__^zg9eid+>$^U`$X6rR^ZpO2q zP7GRes`7oQcxv9#=yUi;1or-;d40itb7;X!HKV-m;?{%o$oj1!yH*gQ{S zbQ=^WhG1M8W+UmvZ-g~K5kr?+|*gkd`WiMnbx zxT{5!8go5(_|Wy{>h#rJ70{lcduH=C-x5;qZrYc~^$$RNtoI48DOzciH#N$A^85Gi z3(n8&8qab|N+Kn8Yd_V@2V_J>Mk@6h-n+#Txh8GR_;7tOaFqEk;yG|F0$vaA`D&up z@H5`$tE~)PGasJzCv`D{%Ob)y(|4;7aG0sBXg#;K^h>+k6uz0Cy9(}kSM5U|=xfCq zPfKO?iYlCd8| z$W}l#N1gb9>bwdn_|y%pkH+%8J~_h+wlefZ(Tw+U6l*1Ytk>=g*T3e$NlJ>f@-Od@ zktr>J|2_KWr>5U^ujldg69R{Y*)r8(w0;}8p$ZBsQDSqkprRNKW=Ygk?ty8viQvbd zJu^$fOG6{;1v@xLAijK|2d$hsUOflp7g4-~N1Hjk|Fbt-udHhw&DZ8NTf>7n zuL}(`+nZ~0J^N$ogDb7E2naA2b^2hIWKNu)qgQijsE8A)vBKTo7x#Pv(w+rdCS9Htlfao+wWvMPOCtp7nB+gD{J0wn_rL0k8zm(-PwlKh1O55SXd3a zMxgpioXp=S$%9ZC>)MOzhYugFfc){lC(>=5?V}{>Fv-l{_~)bl`D)6+FR}R^r{*gT z9HwmOz}M|(%1WtuV4o}Be@$kmAe`BMvV--bV#7O%w~s85&`3w?&|OTUP-b1b@%Z|V z;>8wP630L4-8bWB0xox4!DReCn`iM6H2i(wdc|bti`9(S ze5BL`IA|0VKnVWv!Jl@DvZ`i~Ry+U^oE}yFCN?PiIB6SOQ&y~6vYPNlI_{0km3B0f z3?IhGO&ya$VB)*N$WJVBlFZoR`bMN^U6^;^v}s~2(B2iK0>_z#jSURq!6ISC8kx^o zI5jf$)54$5E-ih_l=RU=InATj9zG%_r;i2aDEYxm@zF(U1SkgR3P^$`{kCBPhpv#A znDtdMH()_2EV?xxlxcJ63e~Gnp)kpnbL=Y8aH+qj4-hAUd3uW4E}nZ!Ca0y*`D_&y z=uW&1W?ZkQR!G>b$03vKhoid9r%oY|+xicpp-{A#`!oj+s)s=kKp3%Zx;QOV((JcP`Le2Wqj!PswT zC4X`QIq;sTpVq5Ooe{+dIyXZjqr`s?3p`~Ba*I(-gH?qSb9l1->9wJHIR`J}r8QpG zqj|ZaJ?F)V|0|ILsbU?^?MW8v!OXZFY)yYx)PI&%98OA5P~_0SE1kh?DIN*W?buSo z8p=n2$%`>Md-%Nf_N?qk0gy~tYgAK}s(+EXR$9RNRh@%ss@gsU#6DjKoGlWcgA+`p zUfbH*+RC(jS(23BNe@^yiUbM>&?ii6TH=Ja0ol7O=GHy>FR0CT-V&r$351 z;IF_>#;M;f{CtjJfkcp;8}b7|w$??i!2w~sY@f#&Zg80e@9GHjGh|FQ=$)18$szNr z>B+YMlSk)WU9s=K53A^>;F>GZx?$7;Ig=hHNOO2I*%p5i*D3)Z@XNuzptw8sTj-_{ z;yM@e`wpDUL{RhLN@&TU*~NVz$PyiVToHU9i+;()9u({^ATC3q$0}A`7#2{nO#qmr z>zJF0NY@uZb4O#uk=-71tX+G2*AIRxv|Y2k9mru4k_vZ?4l_60D@I`h-gU7GO_iIr zQ>DaY)ctk(E~Se_1)BLFp)s`64p^2Ut!Ia!EO;i~u4I4E@BcF#CV9W@XmILqX-%qY zmtlXEVqf&m$qR;^fCr<8Sgs5xEY-=1Sk{k%?;O|hyVo+Rv%G?d1?SW4%quHc@jKyS zkg!o7r4SgVdU`H2_4F0Z!CWXKF`&=m(Grt&w~{b!xP{$}T+^;+TH=!l}=6P3y&n;?_Slx+(8=WhdEWTGF@0+!VZ}F6=sMOXamlyGSD?_az(n1)H=BmEA9#1qIH`b|F&<*AL&3J65KaOKW@xp}-?+sp=C< z?ItQuja|GWWZv(lH{OrotMuH~E>pefvY0(BFO^NY@=z%XT3skk*I`kecOo@sEhZSB z{4?{QLqS~k$};mE3a%B67BN9>DnpR>lzQ-kp0f~mMsMj=?~q!d0IQ;)uv#7y#KNkd zBPj%dWB6}cO=gJMow~)WSPvz;DgoVaxwrww$}PC_qAh(|o4C9S$83AH>Rwzusq|z) z^CYGXGHD_FAFUs5Prj9OLqmPsM3Cxm|xPU7j;h3kS*Nn6!Z2o4y=5er>^o}uv( zvPmrfeH(GtbxUykKSu*GgkI;E38L&u6FX*Jyr9F|h~a_SO;VPs)5oAh;n0o4VYv7O zLCf$8{kC~q%G_FUkWLKht3~nWb9AeX;T?o=1h4mbTWZW+>Ng&%e8TcX*?cB@-v|BD zS0dwATl|ZWs8T)j(bd)s_gJB7^>n_YUJQ~;xv6Xp;S^CIWqpqTtf+g7UoX%wzniAR zD7Rbtm(Xl>+e5Tkk}w=PP>pR%4=^hEhX39cZ=myGx@*?xvtye(w!X5U&NUW&&DU!g ztF}hjDrr5T>h|0^%6p`S2h6&u=hkI+hx|9n``DjaK#N(pl=x>8`eFt(SWJ%b(nqEW-hGD-KwKfYQ_=UJWwC{qFlvF(8kXXg{17gWtqR{~v;I1F16bFBEbYr0hz4q6 z>}Y}Sw+qeAPl7-5dtfK#sXLCgQux25aYK=$sWw;?cP0#~7A)W%sMf3`2MMDte=%N~ zXs({bCq=TE>!73?$n48rLTY>wrKg_6KZ*;M-tr%ft1Do*Z4DqGeGBwdEk~lz9}zxd z?a@5`g;?LW!a6-;xC5O{x$)a_ojP4AWF~w_+tyUD!*BMWf~A)uJSLCdH|(lrMbmS^ z#s$a4%?b2oZF}y0<_2t(qK6lYee-V#!VN~K%l+*;#@x=(=QekOQ90@|gVm5mB!Rw7 zCpV&U6;~V}iy%$0xg1}}KN*jCR}A@9l~!bg5-}-k?H^|xwUT2d2zus$Xf=YN-X=fl zFd7%oV=tLT5ei|?VP53UVYl@>=1wQv8Co2SSc)8}pCV$6?+OPCh`lA6(v+V2#?QTiN$0P0W#`~IknND|%$6XMI!D_Y}ZapE{jK+}bwxgmpTMVCcT|O%Yi7j{px3G&Q?+i{?jzEN=bIQ<(C9aMDV<|F~iv zuhyX_`X6*~OdrN_DZ?dJ>dK_5nShq3*3<*1lHZqBe8<}3u74>Q9;a^ciF{OV~8a)CWW6rUDIEG-5Q zHFa{aTo2MdzE`#!7@y~O=AOSHX*2aqs%3&<1A@oqKATXMZqaaF2%DXVJfNM{ld9P{ zmMdU1$4@QgwaB4ZBmmbztLeT3<(sP0(l*#to8U4=UvZ1{5#9 z0TG!hjH2ZGjCNljQxJN51!s;f?ej~njW zaI32OFFm+axIz79(eI{dgH%gCZo-74(TGbgogp|iKgMT#S*<(75vK`itvN7EKL0hF zlHLqId{3!xOAz7rxv;ygEt%Is=hBSF^8!`cTv`Uo5*jakOJEc|Y+H+vOD(LoEV8PT zOWONg&2S)z`1M(q2=E!B`(s|fa=gx><&PX*zQD$z)=|p}Qz^p!=O>#aCimfPx~&e~ z=@Zt4ShQ_l5pUH+K9l*S&ym~Y#Y%PnTM(WsV<9y^RvMa7c90j!0nZ5_ADy=y!;Zgd zg3PBps-G?i=sby6-L=3e*_ab$mLLRK&j>GJlt+-jbOev-S+pVrKL{RyDubc` zm~+MeE4!GikJ>eG9RX;*8uZQDi#Hp%Ei4i)IL<$hP7LS;4KFkr_PN|nLR7Mj+pvxs z!ZjMpa=CRx2%N1JHFl`UOq51;>h`I@koRa@8PN7)$KNj4S%t7icb>T33Q7gmrfI0` zj^N1a3x1=4szRKIx>{AF7jpG6h@{!9O%}t?z;5^f@Id#KBKhtD(9^x zUBjZJ%6>){?;fw&{A2-zCcG6Al!%&?O|Dexr$%WKm^jE78up-Hz!Q=lwHRH=PiOoH zPn%Y|bK;gMc2rmTYn&0w*)0eN+|?x7&9rY-gLxFNz_CatNfaGga~eiO(_#kY*ZVhW zUg^7*-l&Ls^|%>k6#pAdU+Fw(f-$#EJrJB)829|o{7~rsHD%8w9&~<@Lff|0n7kvR zHUxvQT$)_~K)Rk6ueKVAYN=3u36ttnv=2-V>>B-5LUkPp^!qtDnAS;5QJ6luj-z#t z06Y?1V3=QBuXXEICVeZ zWN%+tl;j&(JX^!RE?9lc8+0D6de^k>qC>a9jAm50ngnQ%1Gj)6HAQ&Nx1Dl))U{#K zYjA?P)RUR8{?c}+CpTq*2~w9Ch}EeI^=`*IECZTk=S-pfF` zHB;1vDl1-CwTs!obZ9#+U(mP6MVB@_pPR@wCly?~HvY^HY!t-H>CYaUR;+8h_j>3X zJ$%*4Z5gy4{(W)as=a+@R}5Ug-`dXZIr)#b_R zE&=cas;vJ5TM!{TF)sE%5gnNg*{6DgF{l42UB>+d?N_4N3WN?oB{Z!-lTa4Y{QpOf#F(7G5cF%4Rw z&yWCN=f>ib6(G)IpdNS|4-gF0p8B|&ikWJ;oe~r9!zu!o9@$9V^wMIRO znMd^N-v#po0PRN#Nl-Qwk>PZkNV=`1(0&DZHwM;8s8siDX-G0;9jLLJLUEd zJMuFbg6}})Y_qvu1F|K^wl}t?t6PvW%FUYvhyh8zM|9@8Ev^v=@~yx2i-To`{_&W) zN3=ZhNo5m53~bcck~qS$YpCTPbzD-q*ZU8J9{CWo-1DI0zR=9t^7vCk29w>z%`SzW zhyy_11jhNK!ULEt z{CB`13r9XWKA-;i6`u$IhJ}haJsZUUU`*_IoR5kdM6Utfygn_8JtpwY@7=750wEay ze6`eep6k5*hPO5*`dabCTfRr=&_&=(! BWAFd~ diff --git a/data/screenshot4.png b/data/screenshot4.png deleted file mode 100644 index b10821892ec3b51ae9380e9f7691fb6a3b603dd3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 249703 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