1. 01 Oct, 2020 4 commits
  2. 30 Sep, 2020 7 commits
  3. 29 Sep, 2020 14 commits
    • Bhushan Shah's avatar
      virtualkeyboard: rename class to InputMethod · 222b558b
      Bhushan Shah authored
      VirtualKeyboard class does not implement the relevant VirtualKeyboard
      protocol but rather implements the InputMethod protcol and can in theory
      be used by other input method like e.g. ibus.
      
      Make class name consistent with what it does to avoid confusion in
      future.
      
      For now only rename of main class is done and dbus service is kept as-is
      to provide retro-compatibility, when input method protocol is
      implemented fully, we can think of what to do wrt the dbus interface
      later when we fully implement zwp_input_method_unstable_v1 protocol.
      222b558b
    • Aleix Pol Gonzalez's avatar
      scene: prefer calling mapToGlobal just once · f558115d
      Aleix Pol Gonzalez authored
      It's the same top mapToGlobal()+operator& than the other way around and
      we get to skip 1 call.
      This path is the most common so we better save it.
      f558115d
    • Andrey Butirsky's avatar
      fix: redundant keyboard layout OSD notification · db202f5c
      Andrey Butirsky authored
      there is no need to display the OSD for window we are going to switch from
      
      DIGEST:
      BUG: 426122
      db202f5c
    • Andrey Butirsky's avatar
      fix: wrong keyboard layout OSD notification · 2bbab06f
      Andrey Butirsky authored
      DIGEST:
      BUG: 426120
      2bbab06f
    • Andrey Butirsky's avatar
      fix: no OSD indication when switching keyboard layout with Application Policy · 769c8959
      Andrey Butirsky authored
      When deciding do OSD or not, we need to consider not only last saved layout,
      but last actual layout also, when comparing it to current one.
      
      DIGEST:
      BUG: 425590
      769c8959
    • Vlad Zahorodnii's avatar
      Place internal osd windows according to placement policies · 4559d303
      Vlad Zahorodnii authored
      Currently, internal on screen display windows have the bypass window
      manager hint set. If that hint is set, the osds must place themselves,
      but they don't do it.
      
      As far as I know, there is no any reason why internal OSDs have that
      flag set.
      
      By removing the Qt::BypassWindowManagerHint flag, we let kwin core
      know that it's okay to place internal OSD windows.
      
      BUG: 400675
      4559d303
    • Vlad Zahorodnii's avatar
      screencast: Replace EGLFence with a glFinish() · 6546ac2c
      Vlad Zahorodnii authored
      The way EGLFence is used is equivalent to calling glFinish().
      
      CCBUG: 425869
      6546ac2c
    • Vlad Zahorodnii's avatar
      Allow calling setFrameGeometry() while the client is being resized · 6f153552
      Vlad Zahorodnii authored
      Currently, if some script attempts to resize a window while it's being
      interactively resized, the corresponding change won't be propagated to
      the X server.
      
      The main reason for that is that we don't want to configure the frame
      window, the wrapper window, and the client window twice. However, since
      Xcb::Window keeps track of the last configured geometry, we can adjust
      X11Client::updateServerGeometry() so it only configures windows that
      have mismatching geometry.
      
      By doing so, the setFrameGeometry() function can be called by scripts
      even when the associated X11 window is being interactively resized.
      
      Note that this bug doesn't affect Wayland windows.
      
      BUG: 426988
      6f153552
    • Vlad Zahorodnii's avatar
      Fix ghost shadows left by context menus · ddb24eaf
      Vlad Zahorodnii authored
      If the shadow is destroyed immediately before the window is destroyed,
      we need to schedule a workspace repaint in order to prevent showing a
      "ghost" shadow.
      
      BUG: 425294
      ddb24eaf
    • Vlad Zahorodnii's avatar
      Schedule workspace repaint for destroyed clients · 12e59f9a
      Vlad Zahorodnii authored
      We need to schedule a workspace repaint in case no effect is going to
      animate the window.
      
      The workspace repaint is issued before creating a Deleted because the
      latter takes the owner of the effect window, which means that after an
      instance of Deleted has been created, visibleRect() returns the frame
      geometry.
      
      CCBUG: 425294
      12e59f9a
    • Bhushan Shah's avatar
      virtualkeyboard: add text-input-v3 support · 6d433bdf
      Bhushan Shah authored
      6d433bdf
    • Vlad Zahorodnii's avatar
      x11: Make removal of X11 event filters safe · a433fb08
      Vlad Zahorodnii authored
      If an X11 event filter has been activated and it unregisters another X11
      event filter, then the window manager may crash because the foreach macro
      in Workspace::workspaceEvent() makes a copy of m_genericEventFilters or
      m_eventFilters and we can call the event() method for an already defunct
      filter.
      
      With this change, X11 event filters can be safely removed and installed
      at any particular moment.
      
      BUG: 423319
      a433fb08
    • David Edmundson's avatar
      Update systemd units · 260e75f6
      David Edmundson authored
      By marking as part of graphical-session we get a more graceful shutdown.
      
      Also switched to explicit restart inside the unit. Originally I did this
      with drop-ins, but this complicates wayland for now.
      260e75f6
    • Script Kiddy's avatar
      SVN_SILENT made messages (.desktop file) - always resolve ours · cd9acd2e
      Script Kiddy authored
      In case of conflict in i18n, keep the version of the branch "ours"
      To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
      cd9acd2e
  4. 28 Sep, 2020 4 commits
  5. 27 Sep, 2020 1 commit
  6. 26 Sep, 2020 1 commit
  7. 25 Sep, 2020 3 commits
    • Aleix Pol Gonzalez's avatar
      Improve opacity detection · 375691c6
      Aleix Pol Gonzalez authored
      If the opaque area covers all the window's shape, it means that it's an
      opaque window.
      This is how GTK presents opacity right now, so we'll get to skip
      rendering under GTK clients and other compatible ones.
      Qt is still not emitting opacity.
      375691c6
    • Felix Yan's avatar
      Correct typos in xcbutils.h · a58100fc
      Felix Yan authored
      a58100fc
    • Vlad Zahorodnii's avatar
      Enable shadow protocol support for all Wayland clients · f24f2bd5
      Vlad Zahorodnii authored
      The main motivation for this change is to enable support for our
      proprietary shadow protocol in LayerShellV1Client.
      
      Previously we couldn't move code that handles shadows in WaylandClient
      because WaylandClient::bufferGeometry() was a pure virtual method.
      f24f2bd5
  8. 24 Sep, 2020 6 commits