vcl: sfx2: LOK: Support per-view popup windows

Desktop / LibreOffice - Ashod Nakashian [collabora.co.uk] - 18 December 2019 00:50 UTC

While we do support multiple views, there is only one state for popup/floating windows, that also includes the dialogs open and related windows/data.

This adds support to allow each view to have its own popups and state, thus allowing multiple users to interact with the dialogs independently of one another.

(cherry picked from commit b50c341a53911f1d725947a4d8d3d2f782c94079)

Change-Id: I3786a561ca6ca113ad12425bdb491e5a30bd1a28 Reviewed-on: https://gerrit.libreoffice.org/82440

c2f8929ed760 vcl: sfx2: LOK: Support per-view popup windows
include/sfx2/viewfrm.hxx | 1 +
include/vcl/svapp.hxx | 6 ++
sfx2/source/view/viewfrm.cxx | 7 ++
vcl/inc/svdata.hxx | 26 +++--
vcl/source/app/help.cxx | 8 +-
vcl/source/app/salvtables.cxx | 2 +-
vcl/source/app/stdtext.cxx | 10 +-
vcl/source/app/svapp.cxx | 44 ++++----
vcl/source/app/svdata.cxx | 62 +++++++++--
vcl/source/app/svmain.cxx | 26 ++---
vcl/source/outdev/font.cxx | 4 +-
vcl/source/outdev/map.cxx | 4 +-
vcl/source/uitest/logger.cxx | 6 +-
vcl/source/uitest/uitest.cxx | 6 +-
vcl/source/window/brdwin.cxx | 2 +-
vcl/source/window/cursor.cxx | 10 +-
vcl/source/window/dialog.cxx | 38 ++++---
vcl/source/window/event.cxx | 16 +--
vcl/source/window/floatwin.cxx | 24 ++---
vcl/source/window/menu.cxx | 7 +-
vcl/source/window/menubarwindow.cxx | 12 +--
vcl/source/window/menufloatingwindow.cxx | 2 +-
vcl/source/window/mouse.cxx | 36 +++----
vcl/source/window/msgbox.cxx | 82 +++++++++++++++
vcl/source/window/scrwnd.cxx | 6 +-
vcl/source/window/stacking.cxx | 2 +-
vcl/source/window/syswin.cxx | 4 +-
vcl/source/window/taskpanelist.cxx | 4 +-
vcl/source/window/toolbox.cxx | 4 +-
vcl/source/window/window.cxx | 85 ++++++++-------
vcl/source/window/window2.cxx | 60 +++++------
vcl/source/window/winproc.cxx | 173 ++++++++++++++++---------------
vcl/source/window/wrkwin.cxx | 11 +-
vcl/unx/generic/window/salframe.cxx | 16 +--
vcl/unx/gtk3/gtk3gtkframe.cxx | 6 +-
35 files changed, 488 insertions(+), 324 deletions(-)

Upstream: cgit.freedesktop.org


  • Share