Change logs for gnome-shell-extension-appindicator source package in Jammy

  • gnome-shell-extension-appindicator (42-2~fakesync1) jammy; urgency=medium
    
      * Manual upload from salsa, to not have to wait for debian publishing
    
    gnome-shell-extension-appindicator (42-2) unstable; urgency=medium
    
      [ Marco Trevisan (Treviño) ]
      * appIndicator: Fix indicator IDs on error logs
      * appIndicator: Handle promises rejections gracefully (LP: #1968498)
      * statusNotifierWatcher: Handle initialization / destruction errors
      * extension: Cleanup indicators leftovers on startup
    
     -- Marco Trevisan (Treviño) <email address hidden>  Thu, 14 Apr 2022 22:51:52 +0200
  • gnome-shell-extension-appindicator (42-1) unstable; urgency=medium
    
      * New upstream release:
        - IndicatorStatusTrayIcon: Use the latest valid touch event on long press
        - iconCache: Handle errors on timeout cancellations
        - metadata: Add support for gnome-shell 42
        - promiseUtils: Update _promisify definition to match latest gjs one
        - promiseUtils: Ensure we don't leave dangling CancellablePromise
        - indicatorStatusIcon: Try to pass the event coordinates to activate methods
        - indicatorStatusIcon: Use XAyatanaSecondaryActivate passing timestamp
        - appIndicator: Pass GCancellable to remote proxy operations
        - statusNotifierWatcher: Use Promise.allSettled to introspect dbus names
        - appIndicator: Handle some unhandled promise rejections
      * debian/control: Add support for GNOME Shell 42
    
     -- Marco Trevisan (Treviño) <email address hidden>  Thu, 24 Feb 2022 03:37:29 +0100
  • gnome-shell-extension-appindicator (41-1) unstable; urgency=medium
    
      [ Marco Trevisan (Treviño) ]
      * New upstream release
      * build: Use meson to configure, test and install the extension.
      * Locale: Update PO files as per new strings
      * indicatorStatusIcon: Handle events on the whole legacy tray icon area.
      * appIndicator: Also ensure that indicator ID is always defined.
      * satusNotifierWatcher: code cleanup
      * indicatorStatusIcon: Only redirect events coming from tray icon container.
        It seems that processing events that we get from the tray icon itself
        results in mutter not accepting them when running in pure wayland, as
        the clients should be in an "allowed-list" of windows who can require
        grabs.
        If we do this from a shell actor, instead, this works. So let's just
        use the container events.
      * indicatorStatusIcon: Properly handle tray key events and key navigation
      * IndicatorStatusTrayIcon: Mark the button as active while pressing a key/button
      * IndicatorStatusTrayIcon: Handle touch events under wayland.
        Simulate classic button events when we got touch events.
        A simple tap event is considered a left click, while long-press events
        are sent as right-clicks.
      * statusNotifierWatcher: Handle promise rejection on items seeking
      * statusNotifierWatcher: Keep track if we've ever acquired bus name.
        This was only for controlling debug statements
      * appIndicator: Avoid checking for ready state multiple times.
        This may lead to emitting signals that lead to rebuilding menus mutliple
        times.
      * dbusMenu: random cleanups
      * debian/control: Add support to gnome-shell 41
      * debian/patches: Refresh and drop applied upstream
    
      [ Ivan Mironov ]
      * Add support for GNOME 41.
    
      [ Andreas Angerer ]
      * appIndicator: Add option to change indicator icons with a custom icon
    
     -- Marco Trevisan (Treviño) <email address hidden>  Tue, 05 Oct 2021 05:17:15 +0200
  • gnome-shell-extension-appindicator (40-1) experimental; urgency=medium
    
      [ Marco Trevisan (Treviño) ]
      * New upstream release:
        - statusNotifierWatcher: Emit StatusNotifierHostRegistered (and
          Unregistered) signals.
          Other signals we were missing for long time, the specs includes these
          signals and they should be emitted when the watcher appears/disappears
          So do this, although it seems that Qt apps are still ignoring it.
        - indicatorStatusIcon: add polyfill for versionCheck in GNOME 40
        - iconCache: Do not dispose the icon when clearing the cache.
          The icon can be a property of the Gio.EmblemedIcon and we should not
          dispose it as its parent doesn't support handling the child removal
        - metadata: Remove 40.beta as supported given we support 40 already.
        - promiseUtils: Promptly remove a source if was already cancelled
        - promiseUtils: Disconnect cancellable when the promise is resolved.
          In CancellablePromise we were connecting to the cancellable in order to
          monitor its cancellation, however we never disconnected from it and this
          was causing gjs to keep a reference on the promise itself, being the
          scope of the cancellable callback, and thus never garbaging collecting
          both the promise and its children (such as GSources).
          So, connect earlier to the signal and once we've resolved the promise,
          disconnect form the cancellable.
        - promiseUtils: Disconnect cancellation signal after resolving or rejecting.
          As per the previous commit we do disconnect from cancellation, but this
          happens too early so the cancellation event isn't ever tracked.
          We need in fact to handle it after that the promise is resolved or
          rejected.
          In the rejected case, we need to be extra careful though, as in case
          the cancellation happens as per cancellation's ::cancelled signal
          callback we need to do this in the next idle cycle or we'll deadlock.
        - prefs: Use es6 class and support Gtk4. GNOME 40 requires it
        - appIndicator: Do not lower opacity on versions after GNOME 40.
          There's no such effect upstream anymore so we don't want to switch that
        - appIndicator: Also toggle desaturate effect on mouse hover
        - settingsManager: Move gsettings initializtion to SettingsManager.
          Quite simple class for now but it avoids us to initialize a new
          gsettings instance for each indicator
        - appIndicator: Track hover status using native StWidget's hover property
        - IndicatorStatusIcon: Bind hover property with child IconActor.
          Whatever happens during hover on the whole indicator (including label)
          should affect also the icon, so we can just bind the hover property
        - appIndicator: Use more consistent names for settings updates
        - appIndicator: Cleanup emission of icon signal on status changes.
          We were handling this already in a common place, so let's move there
        - appIndicator: Get and expose the accessibility name.
          Some indicators (such as the Ayatana appindicator based) may include
          accessible descriptions so read and expose them if any or fallback with
          the indicator title otherwise.
        - appIndicator: Do not reload icons when updating the effects applied to it.
          Those are just effects that are not dependent on the icon content, so
          we can just update the icon without having check the effects all the
          times.
        - trayIconsManager: Move handling of legacy tray icons into a nicer class.
          Also move more into the wrapper AppIndicatorsIndicatorTrayIcon, and use
          Shell.TrayManager's unmanage_screen() in newer versions of the shell
          instead of relying on the ugly (and unreliable) tray unset + garbage
          collector invocation.
        - indicatorStatusIcon: Use the accessible name or WM class for a11y.
          We wrongly passed the indicator unique id as the accessible name to the
          shell for ages, we must instead use something that the screen readers
          may use for that.
          So, on appindicators we can use the exposed accessible name while for
          tray icons we can try use the wm class, even if it could be very generic
        - indicatorStatusIcon: Do not create a menu for tray icons
        - util: Wait for display opened only on X11 setup.
          This is actually only relevant for wayland sessions with Xwayland, as
          it may lead to opening the X11 display with some delay.
          But let's keep it to be a bit more conservative, and unblock the case
          for setups with no-x11 at all.
        - appIndicator: Use custom theme icon based on Shell one as default theme.
          Especially under wayland we should avoid to get the theme from the
          default gtk one as it may be always unset, as it depends on the Gdk
          Screen that is undefined in such scenario.
          So add an helper function to create a new Gtk theme using the shell's
          gtk icon theme and try to use it when no default gtk theme is available.
          We could probably do this in all the cases, but for now let's keep X11
          environment as it is.
      * debian/gbp.conf: Do not use patch numbers
      * debian/patches: Refresh
      * debian/control: Add full support to gnome-shell 40
      * debian/control: Update extension description
      * debian/patches: Use meson based build system
      * debian/control: Build depend on jq and meson
      * debian/rules: Do not install compiled schemas
      * debian/control: Add suggestions on extension prefs and libappindicator
      * debian/upstream/metadata: Add upstream references
      * debian/control: Use dh-sequence-gnome.
        In this way we also get for free ubuntu-specific tools such as
        dh-translations without having to do an ubuntu-specific fork
    
      [ Fini Jastrow ]
      * Add icon opacity, size, position and other effects settings.
        The icons can be very colorful. Some people might not like it and older
        icons do not blend too well with newer monochrome ones.
        Add settings to configure multiple values of the icons and in
        particular:
         - Icons position in the panel
         - Icon size
         - Opacity
         - Desaturation
         - Brightness
         - Contrast
        As per this a new preference dialog is provided to configure such values
      * appIndicator: Fix resizing pixmap icons
        Icons created from pixmaps can not be resized (properly).
        When we create a icon from a pixmap we actually crate the icon in the
        native size. For example if the smallest available pixmap is 22 px the
        icon will also be 22 px, regardless of requested icon size.
        This is ok if the pixmap is by chance the requested size. But this is
        not always the case, especiually if the icon size is user selectable.
        So after creating the pixmap image we tell it how big it shall be.
    
      [ jingi_jeong ]
      * feature: Add topicons-plus extension logic.
        To add support to legacy tray, merge topicons-plus extension logic.
        Create topicons.js file and connect with original appindicator code.
    
     -- Marco Trevisan (Treviño) <email address hidden>  Tue, 15 Jun 2021 01:18:26 +0200