| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
This effectively adds an Android WindowTreeHost.
For these three most platform-specific stuff
happens in PlatformWindow* and the WTH is mostly
a shim.
BUG=507792
Review URL: https://codereview.chromium.org/1390883003
Cr-Commit-Position: refs/heads/master@{#354585}
|
|
|
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=none
R=sadrul@chromium.org
TBR=jam@chromium.org
Review URL: https://codereview.chromium.org/1184123008
Cr-Commit-Position: refs/heads/master@{#335059}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is IMF refactoring according to the design:
- For @google.com:
https://docs.google.com/document/d/14PQN4fbbSTlJmIk6qk7RzsuNr7O22DUTfNQ6slxKWV0
- For @chromium.org:
https://docs.google.com/document/d/1sDES_kuEVUjb_FwCvKsg0Ef48edq5lAx589r0qUtG4g
This cl includes some fundamental changes:
1) ui::InputMethod is created & owned by aura::WindowTreeHost.
Therefore, the InputMethod instance can be accessed through
root_window->GetHost()->GetInputMethod, and no need to save
kRootWindowInputMethodKey instance to the root window
anymore.
2) Removed InputMethodEventFilter, therefore no need the flag
IsTranslated()/SetTranslated() on ui::KeyEvent.
3) Makes aura::WindowTreeHost as a ui::EventSource, because all
kinds of WindowTreeHost are also ui::EventSource. Therefore,
WindowTreeHost can override DeliverEventToProcessor method
to intercept key events for input method processing.
Note:
1) The key events processing by input method happens after event
rewriters and before the EventHandler's, which remains no
change to original on desktop environment. For Ash, the IME key
event handling is moved ahead of some other handles:
- MagnifierKeyScroller (CrOS only): handles Arrow keys when
magnification is enabled.
- SpokenFeedbackToggler (CrOS only): handles F6 key when
SpokenFeedbackToggler is enabled.
- OverlayEventFilter: handles ESC/OEM_2/HELP/F14 keys to
cancel the overlay UI.
2) For Ash, remains the singleton ui::InputMethod instance,
owned by DisplayController. Because if let each
AshWindowTreeHost own separated ui::InputMethod instances,
it will break things:
a) There is a test: ExtendedDesktopTest.KeyEventsOnLockScreen,
which tests the text field in root window X can be inserted
with text while dispatching key events to root window Y. I
think this test makes no sense and will confirm with oshima@.
b) For now for Ozone, DrmWindowHost::CanDispatchEvent()
always returns true, so that only primary window tree host
can receive the key events, which makes the "primary"
InputMethod can receive the key events.
c) For Virtual Keyboard on CrOS, it listens to the notification
through InputMethodObserver::OnShowImeIfNeeded(), which is
bound to the specific InputMethod instance. However, the
Virtual Keyboard should work cross multiple root windows &
InputMethod instances.
BUG=474828
TEST=Verified on local builds, including linux, cros, win7 & win8.1. And all tests passed.
Review URL: https://codereview.chromium.org/1155013005
Cr-Commit-Position: refs/heads/master@{#333698}
|
|
|
|
|
|
|
|
| |
This avoids trying to draw hidden windows and improves performance of resize because status bubble isn't continually redrawn.
Review URL: https://codereview.chromium.org/1157433008
Cr-Commit-Position: refs/heads/master@{#332768}
|
|
|
|
|
|
|
|
|
|
|
|
| |
Constrain the mouse cursor to the painted region of the screen when overscan
insets are set.
BUG=427619
TEST=Manual, see bug
Review URL: https://codereview.chromium.org/873563002
Cr-Commit-Position: refs/heads/master@{#313336}
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
These are changes detected by Chromecast not covered by the Linux build.
See: https://codereview.chromium.org/831863003
R=sky@chromium.org,spang@chromium.org
BUG=417463
Review URL: https://codereview.chromium.org/808333004
Cr-Commit-Position: refs/heads/master@{#310019}
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The geometry headers were moved from /ui/gfx/ to ui/gfx/geometry, so
we are updating the include paths to fix this.
BUG=395370
TEST=compiles
TBR=sky@chromium.org,danakj@chromium.org
Review URL: https://codereview.chromium.org/823133004
Cr-Commit-Position: refs/heads/master@{#309814}
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When dragging windows from one screen to another, events need to be
captured and send to the window where the drag started. As a result we
also need to translate event back into the original window's location.
BUG=423383
TEST=none
Review URL: https://codereview.chromium.org/657603002
Cr-Commit-Position: refs/heads/master@{#306623}
|
|
|
|
|
|
|
|
|
| |
TEST=none
BUG=436433
Review URL: https://codereview.chromium.org/758883003
Cr-Commit-Position: refs/heads/master@{#305797}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
WindowTreeHost::PostNativeEvent() is only used in tests. So remove this from
the public API. Instead:
. For Win32, directly use PostMessage (this is used in only two places).
. For Ozone, use EventSourceTestApi to inject the event (this is equivalent to
current code, in terms of not doing the right thing when menus are open).
. For X11, introduce aura::test::PostEventToWindowTreeHost() instead, and use
it in tests.
BUG=none
R=sky@chromium.org
Review URL: https://codereview.chromium.org/710553002
Cr-Commit-Position: refs/heads/master@{#303315}
|
|
|
|
|
|
|
|
| |
BUG=417463
Review URL: https://codereview.chromium.org/623293004
Cr-Commit-Position: refs/heads/master@{#298839}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With this patch, both Windows and Ozone implementations use PlatformWindow for
interacting with the native windowing system. Eventually, the X11 implementations
will also use this, and WindowTreeHost will have a single implementation on all
platforms.
BUG=none
R=ben@chromium.org
Previously landed in r284850, but reverted in r284905 because it broke a multi-
window ash unit-test on Windows. The test is now disabled (r284931).
Review URL: https://codereview.chromium.org/400413002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@284986 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
> aura: Use PlatformWindow from WindowTreeHostWin.
>
> With this patch, both Windows and Ozone implementations use PlatformWindow for
> interacting with the native windowing system. Eventually, the X11 implementations
> will also use this, and WindowTreeHost will have a single implementation on all
> platforms.
>
> BUG=none
> R=ben@chromium.org
>
> Review URL: https://codereview.chromium.org/400413002
TBR=sadrul@chromium.org
Review URL: https://codereview.chromium.org/410873003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@284905 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With this patch, both Windows and Ozone implementations use PlatformWindow for
interacting with the native windowing system. Eventually, the X11 implementations
will also use this, and WindowTreeHost will have a single implementation on all
platforms.
BUG=none
R=ben@chromium.org
Review URL: https://codereview.chromium.org/400413002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@284850 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Most of the WindowTreeHost functionality is actually implemented by the
platform window, so there's not much in WindowTreeHostOzone aside from
forwarding calls to and from the platform part.
Should be no functional change for in-tree platforms. To accomplish
that, this adds a transitional class PlatformWindowCompat that
implements PlatformWindow functions as WindowTreeHostOzone did before.
As a followup, we'll convert each platform to use the new PlatformWindow
natively & then remove PlatformWindowCompat.
BUG=392280
TEST=built with chromeos==1 use_ozone==1 & ran all platforms.
NOTRY=true
TBR=ben@chromium.org
Review URL: https://codereview.chromium.org/375053002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@283573 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
None of the implementations if WindowTreeHosts do anything when
the device-scale factor changes. So remove it.
BUG=none
R=sky@chromium.org
Review URL: https://codereview.chromium.org/389663003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@282799 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The primary use-case for QueryMouseLocation() is for X11 interactive
tests. The only other use was in WindowEventDispatcher, but that code
is no longer necessary.
BUG=none
R=sky@chromium.org
Review URL: https://codereview.chromium.org/251743004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@266565 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: https://codereview.chromium.org/250103002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@266024 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The ash component is now using this for AshWindowTreeHostOzone.
R=sadrul
TEST=ash_unittests
BUG=361341
NOTRY=true
Review URL: https://codereview.chromium.org/235533002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@263300 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Other notable changes:
* Removed WindowTreeHostFactory as this is no longer necessary.
* Moved RootWindowTransformer to ash/host
* Removed Set/GetInsets which are no longer necessary (a code in SetInsets is now a part of
SetRootWindowTransformer)
* Added TransformerHelper that implements common behavior to transform root window for AshWindowTreeHost
* Added DEPS files
* Updated metro_viewer code to make sure it creates ash::AshRemoteWindowHostTree
A few more simplifications to come:
* Simplify RootWindowTransformer
* Eliminate EnvObserver in AshWindowTreeHostX11
I'll also work on DEPS reorg to make it more explicit under ash/
BUG=355771
TEST=No functional change. ui/aura/window_tree_host_x11_unittests has been moved to ash/host/ash_window_tree_host_x11_unittests
Review URL: https://codereview.chromium.org/201573015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@263192 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Notable changes:
* Convert EventFactoryOzone into a PlatformEventSource.
* Convert WindowTreeHostOzone into a PlatformEventDispatcher.
* The WindowTreeHostOzone looks at the location of the event for mouse, scroll
and touch-events to decide whether it should dispatch the event or not. It
expects the event-location it receives to be in the same coordinate space as
its bounds.
* Adds an ObserverList in MessagePumpOzone, and the EventFactoryOzone reaches
into the message-pump to trigger these observers. This is a short-term
workaround (the same is done for X11 in http://crrev.com/219743002/), until
the message-pump observers are converted into PlatformEventObservers.
* Have EventConverterEvdev take in a callback that can be used for dispatching
events it receives. The EventFactoryEvdev sets this callback to each of these
converters after creation.
* Change the asynchronous event-dispatch to be synchronous.
This set of changes allows dispatching events to multiple window-tree hosts (at
least in theory).
BUG=319986
R=rjkroege@chromium.org, spang@chromium.org
Review URL: https://codereview.chromium.org/223363003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@261953 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Filter events after shutdown in event filter instead.
BUG=None
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=258077
Review URL: https://codereview.chromium.org/196573023
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@258217 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Broke Linux official builder:
http://build.chromium.org/p/chromium/builders/Linux/builds/48352/steps/compile/logs/stdio
../../apps/shell/browser/shell_browser_main_parts.cc:197:42:error: 'class aura::WindowEventDispatcher' has no member named 'PrepareForShutdown'
ninja: build stopped: subcommand failed.
> Remove PrepareForShutdown
> Filter events after shutdown in event filter instead.
>
> BUG=None
>
> Review URL: https://codereview.chromium.org/196573023
TBR=oshima@chromium.org
Review URL: https://codereview.chromium.org/205313002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@258103 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
Filter events after shutdown in event filter instead.
BUG=None
Review URL: https://codereview.chromium.org/196573023
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@258077 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
http://crbug.com/308843
R=sky@chromium.org
Review URL: https://codereview.chromium.org/172743002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252501 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=344502
Review URL: https://codereview.chromium.org/167003005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251815 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
TBR=sky@chromium.org
BUG=
Review URL: https://codereview.chromium.org/167563004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251606 0039d316-1c4b-4281-b951-d872f2087c98
|
|
R=sky@chromium.org
TBR=sky@chromium.org
BUG=
Review URL: https://codereview.chromium.org/160573002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251379 0039d316-1c4b-4281-b951-d872f2087c98
|