Skip to content

Releases: ilyabazhenov/mac-owa-widget

v1.0.53

Choose a tag to compare

@ilyabazhenov ilyabazhenov released this 29 Sep 06:38

v1.0.53 - 2026-09-29

RU

Что изменилось

  • Исправлена «Ошибка отправки» при ответе на приглашение. Если приложение какое-то время не обращалось к серверу, первый ответ («Принять», «Под вопросом» или «Отклонить») не доходил до Exchange: срабатывало только повторное нажатие. Теперь приложение заново подключается к серверу и отправляет ответ с первого раза. То же исправлено при создании встречи.
  • Если Exchange отклонил ответ на приглашение, приложение больше не показывает его как отправленный.
  • Ответ на перенесённую встречу отправляется, даже если после последней синхронизации встреча успела ещё раз измениться на сервере.
  • Раздел «Новые приглашения» в поповере теперь можно отключить в настройках, по умолчанию он выключен. Счётчик ✉︎ в строке меню работает только вместе с этим разделом. Панель о новых приглашениях от этой настройки не зависит.
  • Причина сбоя ответа на приглашение или создания встречи записывается в диагностику («Скопировать диагностику») — без названий встреч и адресов.

Установка

  1. Переместите OWAWidget.app в /Applications.
  2. Снимите quarantine-атрибуты (нужно только при первой установке):
xattr -dr com.apple.quarantine /Applications/OWAWidget.app
  1. Все последующие обновления устанавливаются автоматически через кнопку «Установить» внутри приложения.

EN

What's Changed

  • Fixed "Failed to send response" when answering an invitation. If the app had not talked to the server for a while, the first answer ("Accept", "Tentative" or "Decline") never reached Exchange, and only a second click worked. The app now reconnects to the server and sends the answer on the first try. Creating a meeting had the same problem and is fixed too.
  • When Exchange rejects an answer to an invitation, the app no longer shows it as sent.
  • An answer to a moved meeting now goes through even if the meeting changed on the server again after the last sync.
  • The "New invitations" section of the popover can now be turned off in Preferences. It is off by default. The ✉︎ badge in the menu bar works only together with this section. The new-invitations panel does not depend on this setting.
  • The reason an invitation answer or a new meeting failed is written to the diagnostics ("Copy diagnostics"), without meeting titles or addresses.

Installation

  1. Move OWAWidget.app to /Applications.
  2. Remove the quarantine attributes (only needed on the first install):
xattr -dr com.apple.quarantine /Applications/OWAWidget.app
  1. All subsequent updates install automatically via the "Install" button inside the app.

v1.0.52

Choose a tag to compare

@ilyabazhenov ilyabazhenov released this 28 Sep 08:32

v1.0.52 - 2026-09-28

RU

Что изменилось

  • Приложение может сообщать о новых приглашениях. После каждой синхронизации календарь Exchange сравнивается с прошлым состоянием, и новые приглашения, переносы и отмены встреч показываются в плавающей панели. Она остаётся на экране, пока вы её не закроете. Прямо из панели можно ответить на приглашение или открыть встречу. Об отмене сообщается, только если вы принимали встречу. Функция включается в настройках пунктом «Сообщать о новых приглашениях» и по умолчанию выключена.
  • Пока на приглашение нет ответа, оно учитывается в счётчике ✉︎ в строке меню и в новом разделе «Новые приглашения» в поповере. «Скрыть» убирает приглашение оттуда без ответа. Счётчик в строке меню можно отключить отдельно.
  • Повторы серий, которые каждый день попадают в окно синхронизации на 30 дней вперёд, не считаются новыми приглашениями. При первой синхронизации аккаунта текущее состояние календаря запоминается без уведомлений.
  • Название встречи можно скопировать. В шапке карточки встречи при наведении на название появляется кнопка копирования, а полное название видно во всплывающей подсказке. По правому клику на встрече (в карточке, строке списка, на таймлайне или в баннере) открывается меню: скопировать название, ссылку или название со временем и ссылкой.
  • Окна «Доступна новая версия» и прогресса установки обновления теперь показываются поверх остальных окон. Раньше они терялись за окнами других приложений, и обновление оставалось незавершённым.
  • Окно создания встречи полностью переведено. Статусы участников, подписи слотов, варианты длительности и экран успеха раньше были только на русском, а дни и месяцы выводились на языке системы. Теперь всё показывается на языке приложения.

Установка

  1. Переместите OWAWidget.app в /Applications.
  2. Снимите quarantine-атрибуты (нужно только при первой установке):
xattr -dr com.apple.quarantine /Applications/OWAWidget.app
  1. Все последующие обновления устанавливаются автоматически через кнопку «Установить» внутри приложения.

EN

What's Changed

  • The app can now tell you about new invitations. After every sync the Exchange calendar is compared with its previous state, and new invitations, moved meetings and cancellations appear in a floating panel. The panel stays on screen until you close it. From the panel you can respond to an invitation or open the meeting. A cancellation is reported only for meetings you accepted. Turn it on with "Tell me about new invitations" in Preferences. It is off by default.
  • Until you respond, an invitation is counted by the ✉︎ badge in the menu bar and listed in the new "New invitations" section of the popover. "Hide" removes it from there without responding. The menu bar badge can be turned off separately.
  • Each day the 30-day sync window picks up another occurrence of every recurring series. These occurrences are not treated as new invitations. On an account's first sync the calendar is recorded without any notifications.
  • Meeting titles can be copied. Hover over the title in the meeting details header to reveal a copy button; the full title also shows in a tooltip. Right-click a meeting in the details header, list row, timeline or banner to copy its title, its link, or its title with time and link.
  • The "A new version is available" window and the install progress window now stay above all other windows. They used to get lost behind other apps' windows, so updates went unfinished.
  • The Create Meeting window is fully localized. Attendee statuses, slot labels, duration chips and the success screen used to appear only in Russian, and day and month names followed the system language. Everything now uses the app language.

Installation

  1. Move OWAWidget.app to /Applications.
  2. Remove the quarantine attributes (only needed on the first install):
xattr -dr com.apple.quarantine /Applications/OWAWidget.app
  1. All subsequent updates install automatically via the "Install" button inside the app.

v1.0.51

Choose a tag to compare

@ilyabazhenov ilyabazhenov released this 14 Sep 06:54

v1.0.51 - 2026-09-14

RU

Что изменилось

  • По стрелкам переключения дат наконец можно попасть с первого раза. Раньше нажатие засчитывалось только точно по самому значку — области было около 7×11 точек, и промахнуться было легче, чем попасть. Теперь кнопка занимает 40×30 точек и дотягивается до края окна, а под курсором подсвечивается, так что видно, куда целиться. Сама стрелка осталась там же и того же размера. Спасибо за обратную связь — без неё это бы так и осталось незамеченным.
  • Даты теперь листаются свайпом двумя пальцами по трекпаду: вправо — предыдущий день, влево — следующий, как «назад» и «вперёд» в браузере. Вертикальная прокрутка расписания не задета, и полоса событий на весь день по-прежнему прокручивается сама по себе.
  • Смена дня показывается перелистыванием страницы, а на трекпадах с Force Touch отдаётся щелчком. Свайп — жест вслепую: ни кнопка не подсвечивается, ни курсор никуда не движется, и без отклика непонятно, засчитался он или нет. Упор в край доступного диапазона (неделя назад, месяц вперёд) ощущается иначе, чем удачное перелистывание.
  • Переключение дня оставляет расписание на том же времени суток. Открыли сегодняшний день около девяти утра, перешли на завтра — увидите снова примерно девять, а не начало суток.

Установка

  1. Переместите OWAWidget.app в /Applications.
  2. Снимите quarantine-атрибуты (нужно только при первой установке):
xattr -dr com.apple.quarantine /Applications/OWAWidget.app
  1. Все последующие обновления устанавливаются автоматически через кнопку «Установить» внутри приложения.

EN

What's Changed

  • The date arrows can finally be hit on the first try. A click used to register only on the glyph itself — an area of roughly 7×11 points, easier to miss than to hit. The button is now 40×30 points and reaches the window's edge, and it lights up under the pointer so you can see what you are aiming at. The arrow itself sits where it always did, at the same size. Thanks for the feedback — this would have gone unnoticed otherwise.
  • Dates can now be paged with a two-finger swipe on the trackpad: right for the previous day, left for the next, the way back and forward work in a browser. Scrolling the timeline vertically is untouched, and the all-day strip still scrolls on its own.
  • A day change is shown as a page turn, and answered with a tap on Force Touch trackpads. A swipe is a blind gesture: no button lights up, no cursor moves, and without an answer there is no telling whether it registered. Running into the end of the available range (a week back, a month ahead) feels different from a successful turn.
  • Changing the day keeps the timeline at the same time of day. Look at today around nine in the morning, move to tomorrow, and you land near nine again rather than at midnight.

Installation

  1. Move OWAWidget.app to /Applications.
  2. Remove the quarantine attributes (only needed on the first install):
xattr -dr com.apple.quarantine /Applications/OWAWidget.app
  1. All subsequent updates install automatically via the "Install" button inside the app.

v1.0.50

Choose a tag to compare

@ilyabazhenov ilyabazhenov released this 03 Sep 15:36

v1.0.50 - 2026-09-03

RU

Что изменилось

  • Правка в отрисовке кнопки «Присоединиться». У части пользователей значок и подпись на кнопке звонка иногда появлялись вверх ногами — и в баннере ближайшей встречи, и в карточке встречи. Шрифт и цвет теперь задаются самим значку и тексту, а не наследуются от контейнера: это единственное, чем эта кнопка отличалась от остальных кнопок приложения, где перевёрнутой отрисовки никто не видел. Внешне кнопка осталась прежней. Если перевёрнутая кнопка встретится снова — напишите, значит причина в другом.

Установка

  1. Переместите OWAWidget.app в /Applications.
  2. Снимите quarantine-атрибуты (нужно только при первой установке):
xattr -dr com.apple.quarantine /Applications/OWAWidget.app
  1. Все последующие обновления устанавливаются автоматически через кнопку «Установить» внутри приложения.

EN

What's Changed

  • A fix for how the "Join" button is drawn. For some users the icon and label on the join button occasionally appeared upside down — both in the next-meeting banner and in the meeting card. Font and colour are now set on the icon and the text themselves instead of being inherited from their container: that was the only thing setting this button apart from the app's other buttons, where nobody has seen flipped rendering. The button looks exactly as before. If you run into a flipped button again, please let us know — it would mean the cause lies elsewhere.

Installation

  1. Move OWAWidget.app to /Applications.
  2. Remove the quarantine attributes (only needed on the first install):
xattr -dr com.apple.quarantine /Applications/OWAWidget.app
  1. All subsequent updates install automatically via the "Install" button inside the app.

v1.0.49

Choose a tag to compare

@ilyabazhenov ilyabazhenov released this 25 Aug 13:43

v1.0.49 - 2026-08-25

RU

Что изменилось

  • Виджет показывает встречи из календарей, которые Mac уже синхронизирует, — Google, iCloud, локальные. Добавьте такой аккаунт в настройках, и встречи появятся рядом с встречами из OWA, вместе со ссылкой на звонок, если она есть в описании. Эти календари доступны только для чтения: ответить на приглашение и создать встречу можно в аккаунте OWA. При первом запуске после обновления macOS спросит доступ к Календарю — без него системные календари прочитать нельзя; если вы пользуетесь только OWA, разрешение не требуется. Система может переспросить после следующего обновления приложения — достаточно подтвердить снова.
  • Синхронизация устойчива к сбою отдельного аккаунта: если один календарь недоступен, встречи из остальных продолжают приходить и остаются на экране.
  • Данные приложения на диске хранятся в зашифрованном виде: список аккаунтов, кэш встреч и история участников. Ключ шифрования лежит в связке ключей macOS.
  • Учётные данные передаются только тому серверу, который вы настроили. Если вход перенаправляется на другой адрес, приложение спросит подтверждение — так же, как при доверии самоподписанному сертификату.
  • Отдельное предупреждение при смене сертификата сервера. Если у сервера, которому вы уже доверились, сменился сертификат, приложение покажет прежний и новый отпечаток и спросит подтверждение, чтобы плановую замену можно было отличить от подмены соединения. В диалоге доверия теперь видно, кому и кем выдан сертификат и до какого числа он действует.
  • Если список аккаунтов временно недоступен — например, приложение ещё не получило доступ к связке ключей, — оно прямо сообщает об этом и предлагает повторить, вместо пустого экрана.
  • Многодневные встречи (отпуск, командировка, блок на неделю) показываются в днях и часах: «2 д 5 ч» в баннере и 2d в меню-баре.
  • Служебное: приложение подписывается с hardened runtime; диагностические журналы не содержат учётных данных и ответов сервера.

Установка

  1. Переместите OWAWidget.app в /Applications.
  2. Снимите quarantine-атрибуты (нужно только при первой установке):
xattr -dr com.apple.quarantine /Applications/OWAWidget.app
  1. Все последующие обновления устанавливаются автоматически через кнопку «Установить» внутри приложения.

EN

What's Changed

  • The widget shows meetings from the calendars your Mac already syncs — Google, iCloud, local ones. Add such an account in settings and its meetings appear next to your OWA meetings, along with the join link when the description contains one. These calendars are read-only: replying to invitations and creating meetings happen in the OWA account. On the first launch after this update macOS asks for Calendar access — system calendars cannot be read without it; if you only use OWA, no permission is needed. The system may ask again after a later update — simply confirm it once more.
  • Sync tolerates a single failing account: if one calendar is unavailable, meetings from the others keep arriving and stay on screen.
  • App data on disk is stored encrypted: the account list, the meeting cache and the attendee history. The encryption key lives in the macOS Keychain.
  • Credentials are sent only to the server you configured. If the sign-in is redirected to a different address, the app asks for confirmation — the same way it does when trusting a self-signed certificate.
  • A distinct warning when a server certificate changes. If a server you already trusted presents a different certificate, the app shows both the old and the new fingerprint and asks for confirmation, so a planned replacement can be told apart from an intercepted connection. The trust dialog now also shows who the certificate was issued to, who issued it and when it expires.
  • When the account list is temporarily unavailable — for example, the app has not been granted Keychain access yet — it says so and offers to retry, instead of showing an empty screen.
  • Multi-day meetings (vacation, a trip, a week-long block) are shown in days and hours: "2 d 5 h" in the banner and 2d in the menu bar.
  • Under the hood: the app is signed with the hardened runtime, and diagnostic logs contain no credentials or server responses.

Installation

  1. Move OWAWidget.app to /Applications.
  2. Remove the quarantine attributes (only needed on the first install):
xattr -dr com.apple.quarantine /Applications/OWAWidget.app
  1. All subsequent updates install automatically via the "Install" button inside the app.

v1.0.48

Choose a tag to compare

@ilyabazhenov ilyabazhenov released this 11 Aug 11:22

v1.0.48 - 2026-08-11

RU

Что изменилось

  • Описание встречи больше не обрезается на 255 символах. Раньше запрос синхронизации отдавал только короткое превью, которое Exchange режет ровно на 255 символов, — повестка обрывалась на полуслове. Теперь при открытии карточки подгружается полный текст (тем же запросом, что и список участников, без лишнего похода в сеть).
  • Повестка сохраняет структуру. Таблица с таймингом остаётся таблицей с колонками по содержимому, пункты списков — с маркерами и вложенностью, длинный пункт переносится с отступом и не читается как два разных. Служебная разметка письма (стили, переносы HTML, спецсимволы) больше не протекает в текст.
  • Текст описания можно выделять и копировать, а ссылки на страницы с материалами стали кликабельными — открываются по клику, popover при этом закрывается. Открываются только https-ссылки.
  • Список участников сворачивается. На встрече с сотнями приглашённых он больше не выдавливает повестку из карточки: видно количество, раскрывается по клику. Небольшие списки (до 8 человек) показываются сразу.
  • Карточка встречи теперь по высоте содержимого, а не всегда во всю панель, и закрывается тремя способами: крестиком, кликом рядом с ней и по Esc. Esc без открытой карточки закрывает поиск, а если и его нет — сам popover.

Установка

  1. Переместите OWAWidget.app в /Applications.
  2. Снимите quarantine-атрибуты (нужно только при первой установке):
xattr -dr com.apple.quarantine /Applications/OWAWidget.app
  1. Все последующие обновления устанавливаются автоматически через кнопку «Установить» внутри приложения.

EN

What's Changed

  • Meeting descriptions are no longer cut at 255 characters. The sync request only ever returned a short preview, which Exchange truncates at exactly 255 characters, so agendas broke off mid-sentence. Opening a meeting now loads the full text — via the same request that fetches attendees, with no extra round trip.
  • Agendas keep their structure. A timetable stays a table with content-sized columns, list items keep their markers and nesting, and a long item wraps with a hanging indent instead of reading as two separate items. The mail's own markup (stylesheets, HTML line wrapping, entities) no longer leaks into the text.
  • Description text can be selected and copied, and links to reference pages are clickable — following one closes the popover. Only https links are opened.
  • The attendee list collapses. On a meeting with hundreds of invitees it no longer pushes the agenda out of the card: the count stays visible and the list expands on click. Short lists (up to 8 people) are shown right away.
  • The meeting card is now sized to its content instead of always filling the panel, and it closes three ways: the close button, a click beside it, and Esc. With no card open, Esc closes the search bar, and with neither open it closes the popover.

Installation

  1. Move OWAWidget.app to /Applications.
  2. Remove the quarantine attributes (only needed on the first install):
xattr -dr com.apple.quarantine /Applications/OWAWidget.app
  1. All subsequent updates install automatically via the “Install” button inside the app.

v1.0.47

Choose a tag to compare

@ilyabazhenov ilyabazhenov released this 06 Jul 09:51

v1.0.47 - 2026-07-06

RU

Что изменилось

  • Меню-бар: новый опциональный режим «умного статуса». Вместо словесной подписи смысл несут иконка, компактная подпись и пульсация: когда встреча идёт или вот-вот начнётся — видно, сколько осталось (иконка пульсирует за ≤2 минуты до старта и во время встречи); когда вы свободны — видно, когда следующая встреча (сегодня / завтра / позже). Детали (ссылка на звонок, число пересечений, «свободен до») перенесены в подсказку при наведении. Включается в настройках; прежние режимы отображения сохранены.
  • Синхронизация: восстановлено подключение, когда сервер OWA отвечает 449 «Retry With» на протухшую сессию (следствие перехода на единый вход). Приложение теперь распознаёт такой ответ как «сессия устарела», само переустанавливает соединение (заново проходит NTLM) и повторяет запрос — больше нет залипания на «Офлайн: кэш», а кнопка «Повторить» снова помогает. Устаревшая сессия при этом не путается с неверным паролем, поэтому учётная запись в домене не блокируется.
  • Служебное: технический журнал reminder.log теперь ротируется по 2 МБ — в долгих сеансах он больше не разрастается до десятков мегабайт.

Установка

  1. Переместите OWAWidget.app в /Applications.
  2. Снимите quarantine-атрибуты (нужно только при первой установке):
xattr -dr com.apple.quarantine /Applications/OWAWidget.app
  1. Все последующие обновления устанавливаются автоматически через кнопку «Установить» внутри приложения.

EN

What's Changed

  • Menu bar: new optional “smart status” mode. Instead of a worded label, meaning is carried by an icon, a compact label, and a pulse: when a meeting is running or about to start you see how long is left (the icon pulses within 2 minutes of the start and during the meeting); when you're free you see when the next meeting is (today / tomorrow / later). Finer details (call link, number of overlaps, “free until”) moved into the hover tooltip. Toggle it in Settings; the previous display modes are still available.
  • Sync: restored connectivity when the OWA server answers 449 “Retry With” to a stale session (a side effect of the single sign-on move). The app now recognizes this as “session expired,” re-establishes the connection on its own (re-runs NTLM) and retries the request — no more getting stuck on “Offline: cache,” and the “Retry” button works again. A stale session is no longer mistaken for a wrong password, so the domain account isn't locked out.
  • Housekeeping: the internal reminder.log trace now rotates at 2 MB — it no longer grows to tens of megabytes during long sessions.

Installation

  1. Move OWAWidget.app to /Applications.
  2. Remove the quarantine attributes (only needed on the first install):
xattr -dr com.apple.quarantine /Applications/OWAWidget.app
  1. All subsequent updates install automatically via the “Install” button inside the app.

v1.0.46

Choose a tag to compare

@ilyabazhenov ilyabazhenov released this 01 Jul 07:37

v1.0.46 - 2026-07-01

RU

Что изменилось

  • Синхронизация: восстановлена работа после перехода OWA на единый вход (SSO). Сервер теперь запрашивает интегрированную аутентификацию Windows (NTLM/Negotiate) вместо веб-формы логина — приложение это поддерживает и снова подключается к календарю.
  • Учётная запись указывается в формате ДОМЕН\логин (например, MOSCOW\U_12345), пароль — тот же, что для входа в ПК. Если у вас уже сохранён такой логин, менять ничего не нужно.
  • Точнее определяется реальный неверный пароль: отказ при NTLM-рукопожатии теперь отличается от обрыва сети (выключенный VPN по-прежнему показывает «Не удалось подключиться к серверу», а не «Неверный пароль»).

Установка

  1. Переместите OWAWidget.app в /Applications.
  2. Снимите quarantine-атрибуты (нужно только при первой установке):
xattr -dr com.apple.quarantine /Applications/OWAWidget.app
  1. Все последующие обновления устанавливаются автоматически через кнопку «Установить» внутри приложения.

EN

What's Changed

  • Sync: restored access after OWA moved to single sign-on (SSO). The server now requests Integrated Windows Authentication (NTLM/Negotiate) instead of a web logon form — the app supports this and connects to the calendar again.
  • The account is entered as DOMAIN\login (for example MOSCOW\U_12345), with the same password you use to sign in to your PC. If you already have such a login saved, nothing needs to change.
  • More accurate detection of a genuinely wrong password: an NTLM handshake rejection is now told apart from a network drop (with the VPN off you still get “Could not connect to the server”, not “Invalid password”).

Installation

  1. Move OWAWidget.app to /Applications.
  2. Remove quarantine attributes (only needed on the first install):
xattr -dr com.apple.quarantine /Applications/OWAWidget.app
  1. All subsequent updates install automatically via the “Install” button inside the app.

v1.0.45

Choose a tag to compare

@ilyabazhenov ilyabazhenov released this 30 Jun 19:51

v1.0.45 - 2026-06-30

RU

Что изменилось

  • Настройки: добавлен выбор часового пояса отображения календаря. Можно оставить «Системный» (как в macOS) либо выбрать пояс из списка РФ (UTC+2…+12). По умолчанию — Москва, поведение текущих пользователей не меняется. Смена пояса применяется без перезапуска.
  • Синхронизация: больше нет ложного «Неверный пароль», когда сервер OWA недоступен (например, выключен VPN). Теперь приложение отличает настоящую страницу входа OWA от ответов 404/5xx и показывает понятное сообщение «Не удалось подключиться к серверу».
  • Синхронизация: авто-восстановление после ошибки аутентификации. Блокировка ставится не с первой ошибки, а после двух подряд (переживает кратковременные сбои сессии), снимается авто-пробой раз в 30 минут, а в футере появилась кнопка «Повторить» — можно разблокировать вручную без повторного ввода пароля.
  • Меню-бар: при проблемах (ошибка входа, сертификат, сбой синхронизации) иконка показывает значок-предупреждение, а во всплывающей подсказке — текст ошибки.

Установка

  1. Переместите OWAWidget.app в /Applications.
  2. Снимите quarantine-атрибуты (нужно только при первой установке):
xattr -dr com.apple.quarantine /Applications/OWAWidget.app
  1. Все последующие обновления устанавливаются автоматически через кнопку «Установить» внутри приложения.

EN

What's Changed

  • Settings: added a calendar display time zone picker. Keep “System” (follows macOS) or choose a zone from the Russia list (UTC+2…+12). Default is Moscow, so current behavior is unchanged. Changing the zone applies without a restart.
  • Sync: no more false “Invalid password” when the OWA server is unreachable (e.g. VPN is off). The app now distinguishes a real OWA logon page from 404/5xx responses and shows a clear “Could not connect to the server” message.
  • Sync: auto-recovery after an authentication error. The block is no longer triggered by a single failure but after two in a row (survives transient session blips), clears itself via an auto-probe every 30 minutes, and a “Retry” button in the footer lets you unblock manually without re-entering the password.
  • Menu bar: on problems (auth error, certificate, sync failure) the icon shows a warning badge and the tooltip shows the error text.

Installation

  1. Move OWAWidget.app to /Applications.
  2. Remove quarantine attributes (only needed on the first install):
xattr -dr com.apple.quarantine /Applications/OWAWidget.app
  1. All subsequent updates install automatically via the “Install” button inside the app.

v1.0.44

Choose a tag to compare

@ilyabazhenov ilyabazhenov released this 16 Jun 12:43

v1.0.44 - 2026-06-16

RU

Что изменилось

  • Создание встреч: выбор длительности — пресеты 30 мин / 1 ч / 1.5 ч / 2 ч. Поиск свободных слотов и грид занятости теперь учитывают выбранную длительность: клик по ячейке выделяет окно нужной длины в пределах непрерывного свободного промежутка (не захватывая занятые соседние ячейки и не вылезая за конец дня); слишком короткие свободные «дырки» приглушаются; после смены длительности показывается предупреждение, если выбранный слот стал занят.
  • Создание встреч: исправлена подсветка выбранного предложенного слота — радио-кнопка в списках «Лучшие варианты» и доступных слотов теперь корректно отмечает выбор.
  • Настройки: окно настроек отображается в Доке, пока открыто (иконка остаётся, если параллельно открыто окно создания встречи).
  • Настройки: окно редактирования аккаунта больше не открывается повторно пустым после закрытия; после системного запроса доступа к Keychain окно настроек возвращается на передний план.

Установка

  1. Переместите OWAWidget.app в /Applications.
  2. Снимите quarantine-атрибуты (нужно только при первой установке):
xattr -dr com.apple.quarantine /Applications/OWAWidget.app
  1. Все последующие обновления устанавливаются автоматически через кнопку «Установить» внутри приложения.

EN

What's Changed

  • Create meeting: meeting duration picker — presets 30 min / 1 h / 1.5 h / 2 h. Free-slot search and the availability grid now honor the selected duration: clicking a cell selects a window of the chosen length within a continuous free gap (without grabbing busy neighbors or spilling past the end of day); free gaps too short to fit are dimmed; a warning appears if the selected slot becomes busy after changing the duration.
  • Create meeting: fixed highlighting of the selected suggested slot — the radio button in the “Best options” and available-slots lists now marks the selection correctly.
  • Settings: the settings window now appears in the Dock while open (the icon stays if the create-meeting window is also open).
  • Settings: the account edit sheet no longer reopens empty after closing; the settings window returns to the foreground after the system Keychain access prompt.

Installation

  1. Move OWAWidget.app to /Applications.
  2. Remove quarantine attributes (required only for the first install):
xattr -dr com.apple.quarantine /Applications/OWAWidget.app
  1. All subsequent updates are installed automatically via the in-app Install button.