1. 02 Oct, 2019 1 commit
  2. 28 Sep, 2019 1 commit
  3. 26 Sep, 2019 3 commits
  4. 25 Sep, 2019 2 commits
  5. 23 Sep, 2019 1 commit
  6. 22 Sep, 2019 3 commits
  7. 20 Sep, 2019 15 commits
    • Robert Mader's avatar
      shell-util: Do not scale the clip in get_content_for_window_actor() · 506b75fc
      Robert Mader authored
      This is now handled in Mutter. Also, respect the result size instead
      of assuming it to be equal to the clip size, as the clip takes actor
      coordinates while the result takes buffer coordinates.
      This can be fixed in a future API iteration.
    • Fran Diéguez's avatar
      Update Galician translation · a0d0a17d
      Fran Diéguez authored
    • Florian Müllner's avatar
      screenShield: Stop using deprecated actor property · 92e5713e
      Florian Müllner authored
      Both LoginDialog and UnlockDialog are now actor subclasses, so stop
      using the deprecated actor delegate that will trigger a warning.
    • Florian Müllner's avatar
      unlockDialog: Use inheritance instead of composition · 856c32db
      Florian Müllner authored
      The screen shield creates the unlock dialog based on the session mode.
      However since commit 0c0d76f7 turned LoginDialog into an actor
      subclass (while UnlockDialog kept using the delegate pattern), it is
      no longer possible to handle both objects the same way without warnings.
      Allow this again by turning UnlockDialog into an actor subclass as well.
    • Florian Müllner's avatar
      loginDialog: Stop using deprecated actor property · 7b45ffa5
      Florian Müllner authored
      Commit 0c0d76f7 made the class an actor subclass, so the actor
      property is just a deprecated synonym of the object itself.
    • Florian Müllner's avatar
      environment: Try harder to find a transition · b6754d7d
      Florian Müllner authored
      When easing, we need the transition of one of the involved properties
      to connect our callbacks. Currently we simply get the transition for
      the first property, however as Clutter optimizes the case where a
      property doesn't actually change, that transition may be NULL even
      though we still animate other properties.
      So instead of only looking at the transition of the first property,
      try to find a transition for any of the involved properties.
    • Marco Trevisan's avatar
      layout: Don't use the actors pick workaround on update regions · 2a9977a5
      Marco Trevisan authored
      As per introduction of geometric picking in mutter [1], the workaround we
      had consisting in picking all the actors to ensure that all the stage
      projections were computed to get valid actors stage-transformed coordinates
      and sizes is not working anymore as there is more caching involved.
      However since this can be now handled properly in mutter [2], initializing a
      valid projection matrix since the beginning, we can get rid of the
      [1] mutter@14c706e5
      [2] mutter!803
    • Marco Trevisan's avatar
      renameFolderMenu: Use a custom menu item inheriting from PopupBaseMenuItem · dab60d55
      Marco Trevisan authored
      The RenameFolderMenu uses the internal box as a menu item, while PopupMenu
      expects to have PopupBaseMenuItem based children with a delegate set.
      Instead of using a custom menu with a customized box acting as menu
      item,just add a RenameFolderMenuItem that inherits from the parent,
      adjusting the features as we need them. In fact, the rename folder menu item
      doesn't need any label, padding or default styling so we can reuse
      PopupMenuBaseItem after we use our styling properties and we set the
      Ornament to HIDDEN.
      To get the proper style in place, define rename-folder-popup and
      rename-folder-popup-item to override the default popup-menu-item rule
      padding instead of using margins.
      Pass the menu item as menu's focusActor as this will key-focus it on pop-up,
      by overriding the key_focus_in() vfunc we can then delegate the focus
      handling to the entry's clutter-text.
      Also override the map() vfunc in order to update the entry's content before
      mapping the entry.
      Finally, use the item's activate method in order to tell the parent menu
      we're done with it and that the menu can be closed.
      As consequence we can also remove the menu's popup() method, and just use
      the default open().
    • Marco Trevisan's avatar
      renameFolderMenu: Move to non-legacy coding style · 8e3aac8e
      Marco Trevisan authored
      Use proper indentation on multi-line methods calls and use single quotes on
      button label.
    • Marco Trevisan's avatar
      renameFolderMenu: Set the entry as menu focus actor · 147cb531
      Marco Trevisan authored
      When the rename folder menu is opened the text entry is expected to be
      focused and selected for a quick editing.
      While this is required it doesn't actually happens since PopupMenu by
      default gives the key focus to the source actor, that is then free to pass
      the key focus to the menu if there's an user interaction.
      In this case however, we want the text entry to be focused once we prompt
      the menu, so just use the PopupMenu's focusActor property to ensure it will
      handle it for us.
      Fixes #1604
    • Marco Trevisan's avatar
      popupMenu: Add focusActor property to define the default focus actor · 54f36940
      Marco Trevisan authored
      The PopupMenuManager is supposed to grab and focus the menu actors, with
      normal menus we always need to grab the actual menu but set the key focus to
      the source actor so that it will be able to move the focus to the menu
      child, if requested.
      However there are menus such as the RenameFolderMenu that requires the
      key-focus once prompted, so provide a focusActor property (defaulting to the
      sourceActor) that can be set in order to define the actor to give the
      keyboard focus to, when the menu is popped-up.
      Fixes #1604
    • Marco Trevisan's avatar
      popupBaseMenuItem: Add support for Hidden Ornament · af1aabff
      Marco Trevisan authored
      The menu item ornament is used to put dots or checks in menus or otherwise
      to define a padding for a label.
      However in some cases we want to create a menu item with no left (in ltr)
      In order to do that, define a HIDDEN Ornament mode that completely hides the
      ornament actor.
      The naming here might be confusing as this should probably be called NONE,
      while the default mode is the invisible one, but it's too late to change it
    • Marco Trevisan's avatar
      renameFolderMenu: Don't save the source · d6ba6dc5
      Marco Trevisan authored
      The source actor is already tracked by the PopupMenu internally as
      sourceActor, while nothing in RenameFolderMenu uses the source, so we can
      drop this.
    • Marco Trevisan's avatar
      folderIcon: Remove duplicated addMenu call · 42188b76
      Marco Trevisan authored
      The RenameFolderMenu is added already to its menu manager, so no need to
      repeat the operation.
    • verdre's avatar
      workspace: Fix an incorrect signal check · 48adb2ef
      verdre authored
      While commit 3094f863 was intended to cancel the ongoing idle hide
      timeout before we start a new one, a mistake slipped in there while
      rebasing: Obviously we should check if the signal id is NOT 0 here.
      This didn't prevent timeouts being started while old ones are still
      running and did override `this._idleHideOverlayId`, which caused the old
      timeouts to run indefinitely after an overlay actor was destroyed
      because we fail early (and don't return TRUE) in `_idleHideOverlay()`.
  8. 18 Sep, 2019 14 commits
    • verdre's avatar
      appDisplay: Animate DnD app icons at the position they were dropped · f8e648b7
      verdre authored
      Indicate whether dropping an app icon was successful or not by using the
      newly added `animateLaunchAtPos()` API of AppIcon which starts a zoom
      out animation of the icon at the position the drop happened.
      To get the position of the drag actor, we have to forward the arguments
      passed to `acceptDrop()` and `handleDragOver()` to the internal drag
      handlers of the WorkspaceThumbnails. We can use this position directly
      without transforming it to stage coordinates because the actor is a
      child of `Main.uiGroup` and the animation actor will also be a child of
      this container.
    • verdre's avatar
      appDisplay: Add API to animate launch at given position · daa5452a
      verdre authored
      Add a `animateLaunchAtPos()` method to the AppIcon class to animate the
      launch of an app at a given position. This allows for a visual
      indication of whether dropping an app icon using DnD was successful at
      the position the drop happened in a later commit.
    • verdre's avatar
      workspace: Return results of forwarded acceptDrop · 259874d7
      verdre authored
      Return the results of calls to acceptDrop that we forwarded to the
      Workspace object.
      This fixes a bug where app icons that were dragged and released above a
      window clone would get animated back to their original position
      (indicating that nothing happened) even though they opened correctly.
    • verdre's avatar
    • verdre's avatar
      shell-app: Never allow opening new windows while an app is starting · 00e95de1
      verdre authored
      We allow opening new windows as a fallback in case the app doesn't give
      us explicit information about it, but we don't want to allow opening new
      windows if we're unable to ask for this information (we can only use the
      APIs to get this information while the app is RUNNING).
      So always return FALSE in case the app is STARTING, always return TRUE
      in case the app is STOPPED (starting an app always opens a new window)
      and go through the usual checks in case the app is RUNNING (and
      eventually fall back to FALSE).
    • verdre's avatar
      workspace: Use AppIcon.app to check action-support by the drag source · 942758bb
      verdre authored
      `AppIcon.shellWorkspaceLaunch()` can easily be replaced by checking for
      `AppIcon.app` and calling `AppIcon.app.open_new_window()` directly.
      For compatibility and to prevent breaking extensions implementing the
      function, keep supporting the `shellWorkspaceLaunch` API in AppIcon
      while logging a deprecation warning. Also keep supporting the API on
      drag sources (without deprecating it) to allow extensions to define
      custom actions on their drag sources.
    • Jonas Ådahl's avatar
      introspect: Check whitelist also for GetRunningWindows() · e0947b01
      Jonas Ådahl authored
      Otherwise the xdg-desktop-portal-gtk screen cast widget won't work.
    • Daniel Garcia Moreno's avatar
      st: Fix box-shadow drawing with prerendered_texture · cf00231a
      Daniel Garcia Moreno authored
      The use of box-shadow on a StWidget that has a background-gradient was
      not been rendered correctly, the shadow borders was calculated inside
      the st_theme_node_prerender_shadow function and in the case that we've a
      prerendered_texture the max_borders was not calculated and are 0.
      This patch creates a new static function to compute shadow maximum
      borders copying the code from st_theme_node_prerender_shadow, and call
      this new method in the case that we've a prerendered_texture.
    • verdre's avatar
    • verdre's avatar
      viewSelector: Only reset search entry if it has key focus · 5f10047b
      verdre authored
      If the search entry does not have any text typed in and a button press
      happens outside of the search entry, we set key focus to NULL to make
      the search entry appear unfocused.
      This is quite intrusive and can easily cause unwanted focus changes, so
      change the captured-event handler to only call `reset()` if the search
      entry actually is focused.
    • verdre's avatar
      workspace: Reset idle hide timeout for overlays on reentry · 3094f863
      verdre authored
      Instead of returning and waiting until the old timeout is finished,
      start a new idle hide timeout for the overlay when the pointer enters a
      window clone. This makes sure the timeout for hiding the overlay after
      the pointer left the clone mostly stays the same (except when leaving
      the clone via the title or the close button).
    • verdre's avatar
      workspace: Make title of overlay reactive · 8ffea9d5
      verdre authored
      Also make the title of the overlay reactive so we can keep the overlay
      visible if the mouse is hovering over the title.
    • verdre's avatar
      workspace: Continue overlay idle hide timeout when pointing at close button · 4f3c8b8d
      verdre authored
      While it makes sense to remove the timeout in every other case, restart it
      if the pointer is hovering over the close button to make sure the overlay
      will be hidden afterwards.
    • Kjartan Maraas's avatar
      Update Norwegian Bokmål translation · edf6bd69
      Kjartan Maraas authored