1. 07 Feb, 2019 7 commits
  2. 06 Feb, 2019 17 commits
  3. 05 Feb, 2019 16 commits
    • Balázs Úr's avatar
      Update Hungarian translation · 4ef8041b
      Balázs Úr authored
      4ef8041b
    • Ray Strode's avatar
      shellActionModes: disable POPUP keybindings in unlock screen · f0a7395b
      Ray Strode authored
      Certain keybindings should continue to work even when a popup
      menu is on screen. For instance, the keybinding for showing
      the app menu and the keyinding for showing the calendar are
      examples.
      
      This is achieved by putting in place a special "POPUP" action
      mode, whenever a popup menu is active.  This mode replaces
      the (e.g., "NORMAL" or "OVERVIEW") action mode that was in place
      for as long as the popup menu is active.
      
      But those keybindings should not work when the user is at the
      unlock dialog (which uses an action mode of "UNLOCK").
      
      Unfortunately, since commit c79d24b6 they do.
      
      This commit addresses the problem by forcing the action mode
      to NONE at the unlock screen when popups are visible.
      
      CVE-2019-3820
      
      Closes #851
      f0a7395b
    • Florian Müllner's avatar
      panel: Don't allow opening hidden menus via keybindings · c1a6effe
      Florian Müllner authored
      We shouldn't allow toggling menus that aren't supported by the
      current session mode, but as indicators are hidden rather than
      destroyed on mode switches, it is not enough to check for an
      indicator's existence.
      
      #851
      c1a6effe
    • Carlos Garnacho's avatar
      keyboard: Implement keypad OSK panel · f78efc46
      Carlos Garnacho authored
      This is pretty ad-hoc, the panel is hooked so it shows right away on the
      right Clutter.InputContentPurpose.
      f78efc46
    • Carlos Garnacho's avatar
      keyboard: Add Emoji keyboard · 42ae052d
      Carlos Garnacho authored
      This keyboard works similar to GTK+'s emoji chooser (actually, both pull
      from the same JSON file). Emojis are categorized in sections and variants
      and kept in a "model".
      
      The EmojiPager actor then uses this model to generate pages on-the-fly as
      the user swipes around. This is an important optimization since the amount
      of actors would rival with the rest of the shell otherwise.
      
      The EmojiSelection object puts the EmojiPager, the page indicators and
      a KeyContainer with the bottom row of emoji section shortcuts together to
      implement the emoji panel as a whole.
      
      The Keyboard object hooked this to an "emoji" key, which is just visible
      on the Clutter.InputContentPurpose where showing an emoji would be
      meaningful. Otherwise the surrounding buttons are made a bit wider to
      cover up for it (i.e. as it was before).
      42ae052d
    • Carlos Garnacho's avatar
      appDisplay: Separate PageIndicators to a separate file · fab39082
      Carlos Garnacho authored
      In order to cater for emoji panel usage, we want something like PageIndicators
      except:
      - It should have horizontal disposition
      - It should not be animatable (?)
      - It should not be reactive
      
      Separated PageIndicators into a base, non-animated widget, and an
      AnimatedPageIndicators that can be used on appDisplay.js. Reactiveness is
      set through an extra method, and layout is set as a construct argument.
      fab39082
    • Carlos Garnacho's avatar
      keyboard: Separate aspect ratio control to a container actor · 2a992362
      Carlos Garnacho authored
      This will be useful as we want other panels (eg. emoji) to preserve aspect
      ratio with the rest of the OSK. Separate the aspect ratio management logic
      into this container that will be the parent of them all.
      2a992362
    • Carlos Garnacho's avatar
      keyboard: Remove unused code · 291aa0b0
      Carlos Garnacho authored
      This signal does not exist, the Suggestions.add() method allows to attach
      per-element callbacks instead.
      291aa0b0
    • Carlos Garnacho's avatar
      keyboard: Fix JS warning · 83eb75ad
      Carlos Garnacho authored
      Iterate correctly through the array, instead of stepping on the possibly
      non existent first element.
      83eb75ad
    • Carlos Garnacho's avatar
      keyboard: Fix JS warning · bb215966
      Carlos Garnacho authored
      The label field may be empty here (eg. buttons fully styled through css),
      just resort to an empty string then.
      bb215966
    • Carlos Garnacho's avatar
      keyboard: Fix JS warning · 545d49c7
      Carlos Garnacho authored
      The solution is pointed out by the warning itself.
      545d49c7
    • Carlos Garnacho's avatar
      theme: Reduce minimum OSK key width/height · ace44af8
      Carlos Garnacho authored
      The OSK panel uses 1/3rd of the monitor height, plus we specify a minimum
      size for the keys. This doesn't play along if contents won't fit (short
      monitor, big fonts, ...) pushing contents offscreen. Reduce the minimum
      size a bit so there's better chances to fit.
      
      Closes: #675
      ace44af8
    • Carlos Garnacho's avatar
      windowManager: Disable bottom edge swipe gesture if OSK is enabled · 699e9755
      Carlos Garnacho authored
      It does not make sense then, plus it eats events close to the edge.
      699e9755
    • Carlos Garnacho's avatar
      keyboard: Avoid sequence grabs on touch · 4aecf4c9
      Carlos Garnacho authored
      We can do without these. Since grabs prevent gestures in parent containers
      from happening, we actively don't want these for emoji scrolling/paging.
      4aecf4c9
    • Carlos Garnacho's avatar
      st: Honor button mask on touch events · b092c5f3
      Carlos Garnacho authored
      Even though it's not a "button", we use button1 to map to actions. Seems
      fair to refuse to press the StButton if it would not react to button1.
      b092c5f3
    • Fabio Tomat's avatar
      Update Friulian translation · aca8aec9
      Fabio Tomat authored
      aca8aec9