| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
with new menu:
1. When in desktop mode, you should see "Relaunch Chrome in Windows 8 mode", if clicked it will kill current browser process and relaunches all open tabs in Windows 8 mode.
2. When in Windows 8 mode, menu is "Relaunch Chrome in desktop mode", if clicked it will kill current browser process (gets user out of Ash shell) and relaunches all tabs in desktop mode.
Once we select to launch in different mode through these menu items we store new mode in registry and use this mode as default mode for next time launch. This means even if you click on desktop icon and last mode stored is metro, user will be switched to metro mode.
BUG=280823
R=cpu@chromium.org, jschuh@chromium.org, sky@chromium.org, ananta, cpu
Review URL: https://codereview.chromium.org/32843009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@232120 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
determine that Ash is the active desktop on Win8.
This is better than the VisibilityChanged event as it also handles the dual monitor case where Ash isn't hidden yet is no longer active (and Chrome desktop window can thus steal the "active desktop" state which was then not given back to the Ash desktop when re-focusing it. The WindowActivated event gets a CoreWindowActivationState_PointerActivated state for this specific case; which we treat the same as CoreWindowActivationState_CodeActivated for now.
Also remove the hooks for VisibilityChanged as they were only used for this purpose, i.e.:
https://code.google.com/p/chromium/codesearch#search/&q=OnRootWindowActivated&sq=package:chromium&type=cs
Called from: https://code.google.com/p/chromium/codesearch#chromium/src/ui/aura/env.cc&l=83
Called from: https://code.google.com/p/chromium/codesearch#chromium/src/ui/aura/root_window.cc&l=988
Called from: https://code.google.com/p/chromium/codesearch#chromium/src/ui/aura/remote_root_window_host_win.cc&l=463
BUG=177489
TEST=
The most reliable test I could find that would repro this is to:
1) Open Ash
2) Open Chrome on desktop on a 2nd monitor
3) Refocus Ash on first monitor
4) Signin with an account which will sync extensions (at least one of which opens a tab on install, e.g., https://chrome.google.com/webstore/detail/reload-all-tabs/midkcinmplflbiflboepnahkboeonkam).
Without this CL, this will result in the extension's tab opening on the desktop Chrome's window.
With this CL, the tab correctly opens in Ash as it was the last desktop focused.
Also make sure the regular use cases still work using the same test under:
A) Only Ash open
B) Ash open, but active desktop is native desktop.
Also confirmed using Sawbuck and some logging that the following is how OnWindowActivated() reports its state:
CoreWindowActivationState_CodeActivated == 0
- First activation
- Activated when hidden (either from Start Screen or Windows app switcher while viewing another app).
CoreWindowActivationState_Deactivated == 1
- All deactivations (including focusing a desktop app on the 2nd monitor while Ash remains open on 1st monitor)
CoreWindowActivationState_PointerActivated
- Ash is focused again after a window on another monitor had been focused while Ash stayed visible on its monitor.
R=cdn@chromium.org, grt@chromium.org, sky@chromium.org
Review URL: https://codereview.chromium.org/27058004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@229420 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: https://codereview.chromium.org/24476004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@225240 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
other, and drop a bunch of DEPS files in to make checkdeps happy.
See https://codereview.chromium.org/24162009/ for try runs.
BUG=none
R=sky@chromium.org
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=225020
Review URL: https://codereview.chromium.org/24273005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@225055 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
> Tighten up DEPS rules in src/ui: prevent components from including from each other, and drop a bunch of DEPS files in to make checkdeps happy.
>
> BUG=none
> R=sky@chromium.org
>
> Review URL: https://codereview.chromium.org/24273005
TBR=ben@chromium.org
Review URL: https://codereview.chromium.org/24257013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@225032 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
other, and drop a bunch of DEPS files in to make checkdeps happy.
BUG=none
R=sky@chromium.org
Review URL: https://codereview.chromium.org/24273005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@225020 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There is no need to deactivate and reactivate the window. The Focus()
in particular is wrong in so far as we don't want focus to go to the
rootwindow.
BUG=284411
TEST=see bug
R=ananta@chromium.org
TBR=jschuh@chromium.org
Review URL: https://codereview.chromium.org/23851042
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@224521 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=none
R=ben@chromium.org
TBR=brettw@chromium.org, scherkus@chromium.org, ananta@chromium.org,
Review URL: https://codereview.chromium.org/23851041
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@223906 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Browsers can force a metro -> desktop transition by calling ShellExecuteEx
with a special argument. However, the process that calls ShellExecute must
itself be a metro process. This change implements that behavior. Without
this change, triggering a relaunch in desktop mode while in ash would
launch chrome in the desktop mode, but it would not automatically transition
from metro to desktop.
cpu@:*metro*
bauerb@:chrome\browser\plugins\*
sky@:ui\aura\*
jschuh@:security review for ipc messages in ui\metro_viewer
BUG=280377
Review URL: https://chromiumcodereview.appspot.com/23592024
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@221075 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We were set for *_messages.h, but there exist other files such as
*_messages_android.h and *_messages_internal.h which we should also perform
security review on.
BUG=247434
R=cevans@chromium.org
Review URL: https://codereview.chromium.org/16830003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@205901 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The patch is unchanged but the previously failing multi-monitor test has been disabled since WinAsh doesn't support simultaneous multi-monitors (this patch just makes moving the single-monitor Ash desktop between different monitors).
TBR=cpu,cevans
Original description:
> Fix Ash on Windows multi-monitor support and snap-view sizing.
>
> Plumb through window size events to the remote root window host.
> Also add an initial sizing message to get Ash's initial state to be correct.
>
> BUG=236379
> TEST=Move Ash from one monitor to another with a different size, observe that things resize themselves correctly. Also, snap Ash, observe similar goodness.
>
> Review URL: https://chromiumcodereview.appspot.com/15599002
BUG=236379
TEST=ash_unittests
Review URL: https://chromiumcodereview.appspot.com/16267004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@205791 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
from the Start menu in Windows 8 ASH.
Changes as below:-
1. In the metro driver we need to handle the search and protocol activation requests.
Search requests when Chrome ASH is not running result in ASH being launched by Windows without going through
the normal delegate execute mechanism.
This means that the browser process will not be running to service the viewer ASH process. We need to launch the
server via ShellExecute to ensure that it launches in desktop mode.
If the search/protocol requests are received when Chrome ASH is being launched we ensure that the IPC messages
to service these requests are sent out after the MetroViewerHostMsg_SetTargetSurface IPC.
If Chrome ASH is running when we receive these requests we send out the search/navigation IPCs to Chrome.
2. Added the following IPC messages to metro_viewer_messages.h
1. MetroViewerHostMsg_SearchRequest
2. MetroViewerHostMsg_OpenURL
The handling for these messages is implemented via virtual functions OnOpenURL and OnHandleSearchRequest in the
MetroViewerProcessHost interface with the ChromeMetroViewerProcessHost overriding this to ensure that the URL
is opened.
3. Added a switch kWindows8MetroSearch to chrome_switches.cc/.h. This is passed in from the metro driver on Windows 8
if we are launched to service a search request from the start screen. We don't attempt to create a browser or
run the session restore code in the NOTIFICATION_ASH_SESSION_STARTED notification if this switch exists. The desired
browser window for the search is created in the MetroViewerHostMsg_SearchRequest IPC.
BUG=245899
R=cpu@chromium.org, jschuh@chromium.org, sky@chromium.org
Review URL: https://codereview.chromium.org/16282002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@204344 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
TestMetroViewerProcessHost and ChromeMetroViewerProcessHost
Bringing LaunchViewerAndWaitForConnection() to the common base so that ChromeMetroViewerProcessHost can also benefit from it (required for ash browser tests).
BUG=179830
1st Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=201806
Reverted: https://src.chromium.org/viewvc/chrome?view=rev&revision=201966
R=robertshield@chromium.org, sky@chromium.org
Review URL: https://codereview.chromium.org/14629025
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@202113 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Broke ash_unittests on Win8 Aura:
http://build.chromium.org/p/chromium.win/builders/Win8%20Aura/builds/6316
[ RUN ] AcceleratorControllerTest.Register
[912:1324:0523/094526:1371217:INFO:test_metro_viewer_process_host.cc(42)] ash::test::TestMetroViewerProcessHost::OnSetTargetSurface, target_surface = 131580
[912:1324:0523/094526:1371233:FATAL:ash_test_base.cc(149)] Check failed: !metro_viewer_host_->closed_unexpectedly().
Backtrace:
base::debug::StackTrace::StackTrace [0x100839F1+33]
logging::LogMessage::~LogMessage [0x100F6FCE+94]
ash::test::AshTestBase::TearDown [0x006DC397+471]
testing::internal::HandleExceptionsInMethodIfSupported<testing::Test,void> [0x007405FF+319]
testing::Test::Run [0x0072A525+229]
testing::TestInfo::Run [0x0072AF4D+221]
testing::TestCase::Run [0x0072B71F+239]
testing::internal::UnitTestImpl::RunAllTests [0x0073234D+701]
testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl,bool> [0x00741227+327]
testing::UnitTest::Run [0x00730BB0+192]
base::TestSuite::Run [0x00756AE0+240]
main [0x0058AFA4+100]
__tmainCRTStartup [0x0075BA6F+447] (f:\dd\vctools\crt_bld\self_x86\crt\src\crtexe.c:555)
mainCRTStartup [0x0075B89F+15] (f:\dd\vctools\crt_bld\self_x86\crt\src\crtexe.c:371)
BaseThreadInitThunk [0x76D78543+14]
RtlInitializeExceptionChain [0x7775AC69+133]
RtlInitializeExceptionChain [0x7775AC3C+88]
(No symbol) [0x00000000]
[912:1324:0523/094526:1371233:FATAL:ash_test_base.cc(149)] Check failed: !metro_viewer_host_->closed_unexpectedly().
Backtrace:
base::debug::StackTrace::StackTrace [0x100839F1+33]
logging::LogMessage::~LogMessage [0x100F6FCE+94]
ash::test::AshTestBase::TearDown [0x006DC397+471]
testing::internal::HandleExceptionsInMethodIfSupported<testing::Test,void> [0x007405FF+319]
testing::Test::Run [0x0072A525+229]
testing::TestInfo::Run [0x0072AF4D+221]
testing::TestCase::Run [0x0072B71F+239]
testing::internal::UnitTestImpl::RunAllTests [0x0073234D+701]
testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl,bool> [0x00741227+327]
testing::UnitTest::Run [0x00730BB0+192]
base::TestSuite::Run [0x00756AE0+240]
main [0x0058AFA4+100]
__tmainCRTStartup [0x0075BA6F+447] (f:\dd\vctools\crt_bld\self_x86\crt\src\crtexe.c:555)
mainCRTStartup [0x0075B89F+15] (f:\dd\vctools\crt_bld\self_x86\crt\src\crtexe.c:371)
BaseThreadInitThunk [0x76D78543+14]
RtlInitializeExceptionChain [0x7775AC69+133]
RtlInitializeExceptionChain [0x7775AC3C+88]
(No symbol) [0x00000000]
> Create MetroViewerProcessHost as a common base for TestMetroViewerProcessHost and ChromeMetroViewerProcessHost
>
> Bringing LaunchViewerAndWaitForConnection() to the common base so that ChromeMetroViewerProcessHost can also benefit from it (required for ash browser tests).
>
> BUG=179830
>
> Review URL: https://chromiumcodereview.appspot.com/14629025
TBR=gab@chromium.org
Review URL: https://codereview.chromium.org/15966003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@201966 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
TestMetroViewerProcessHost and ChromeMetroViewerProcessHost
Bringing LaunchViewerAndWaitForConnection() to the common base so that ChromeMetroViewerProcessHost can also benefit from it (required for ash browser tests).
BUG=179830
Review URL: https://chromiumcodereview.appspot.com/14629025
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@201806 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Breaking ash_unittests
http://build.chromium.org/p/chromium.win/builders/Win8%20Aura/builds/6312
> Fix Ash on Windows multi-monitor support and snap-view sizing.
>
> Plumb through window size events to the remote root window host.
> Also add an initial sizing message to get Ash's initial state to be correct.
>
> BUG=236379
> TEST=Move Ash from one monitor to another with a different size, observe that things resize themselves correctly. Also, snap Ash, observe similar goodness.
>
> Review URL: https://chromiumcodereview.appspot.com/15599002
TBR=robertshield@chromium.org
Review URL: https://codereview.chromium.org/15891003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@201805 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Plumb through window size events to the remote root window host.
Also add an initial sizing message to get Ash's initial state to be correct.
BUG=236379
TEST=Move Ash from one monitor to another with a different size, observe that things resize themselves correctly. Also, snap Ash, observe similar goodness.
Review URL: https://chromiumcodereview.appspot.com/15599002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@201771 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Mouse locking is used for e.g. by WebGL and is implemented in the browser by entering a state in the web view
where in we ensure that the mouse stays within the boundaries of the view and we send only mouse increment/decrement
information to the renderer.
We had support for this in Chrome AURA which did not work correctly due to a number of bugs.
1. We need to implement the MoveCursorTo override in the DesktopRootWindowHostWin, DesktopRootWindowHostX11 and
RemoteRootWindowHostWin classes which implement the aura RootWindowHost interface. In desktop Chrome windows we
invoke the SetCursorPos API to ensure that the cursor is set to the position specified. In desktop Chrome linux we
invoke the XWarpPointer API to achieve this. In ASH chrome on Windows we cannot call SetCursorPos in the
RemoteRootWindowHostWin class's implementation of the MoveCursorTo function.
As mouse input is received by the viewer process and sent to the browser, we have scenarios wherein we receive stale
mouse input from the viewer after invoking the SetCursorPos API in the browser. To workaround this we call SetCursorPos
API in the viewer process from an IPC MetroViewerHostMsg_SetCursorPos which is sent from the RemoteRootWindowHostWin::MoveCursorTo
function. We send out an ACK from the viewer process when the call finishes and in the meantime we ignore any mouse
messages coming from the viewer while we wait for the ACK.
If we don't do this then we have issues with the image locking up on screen in ASH. In the viewer process we also
send out a fake mousemove IPC after the SetCursorPos API as we don't receive the corresponding real mouse move for
some reason. This is needed as RVHAura class sets a flag which is reset when it receives the mousemove corresponding to
the cursor pos.
2. The RenderWidgetHostViewAura::ShouldMoveToCenter function which checks if the mouse cursor has moved beyond the window
bounds needs to convert the window rect to screen.
3. The MakeWebMouseEvent function in the web_input_Event_aura.cc file should use not set the globalX and globalY members in
the WebMouseEvent structure from the root coordinates if we have a native mouse event for Windows. This breaks the
lock mouse coordinate calculations.
I also fixed the implementation of the RootWindowHost::QueryMouseLocation function in the RemoteRootWindowHostWin class and
the DesktopRootWindowHostWin class. We can now safely enable the AshNativeCursorManagerTest.DisabledQueryMouseLocation test
with some windows specific fixes.
BUG=222497
R=cpu@chromium.org, palmer@chromium.org, sky@chromium.org
Review URL: https://codereview.chromium.org/14574010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@198582 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Chrome AURA when a DesktopRootWindowHostWin/
ASH root window is activated.
To achieve this we register a handler for the Activate event on the ASH core Window in Windows 8 and send an IPC
MetroViewerHostMsg_WindowActivated from the metro viewer process along with a bool which indcates whether we
gained or lost activation. In the RemoteRootWindowHostWin class we inform the RootWindow whether it gained or lost
focus based on the active flag passed in the IPC.
BUG=235128
R=cpu,sky
TBR=palmer
Review URL: https://codereview.chromium.org/14070017
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@196835 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Windows 8.
The current behavior is that the select folder picker displays in desktop mode even when
when performed in ASH.
Fixes are as below:-
1. In the Chrome browser added plumbing in the SelectFileDialogImpl class to forward this
operation of to the metro viewer process via the newly added function HandedSelectFolder
which lives in the aura namespace in the remote_window_host_win.cc file.
2. In the metro viewer code added a new class FolderPickerSession which provides the functionality
for displaying the metro select folder picker and returning the results from the same.
3. The following IPC messages provide the necessary functionality to funnel the request
and the result between the browser and the metro viewer process.
MetroViewerHostMsg_DisplaySelectFolder
MetroViewerHostMsg_SelectFolderDone
I also added code to save away the metro root window in the RemoteRootWindowHostWin class
when we receive the MetroViewerHostMsg_SetTargetSurface IPC from the viewer process. We
return this window in the RemoteRootWindowHostWin::GetAcceleratedWidget function. This
change although not needed for this CL seems correct.
BUG=230087
R=cpu,sky
Review URL: https://codereview.chromium.org/14282002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@195224 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The touch events coming in from desktop chrome AURA and ASH have hardcoded touch ids
which breaks the gesture recognizer as it is unable to figure out that multiple touch points
are involved.
Fix on desktop Chrome AURA is to use the OS generated touch id mapped to the gesture recognizer range.
For ASH Windows 8 we pass in the mapped touch ids from the metro driver in the touch IPC messages.
Fixes bug https://code.google.com/p/chromium/issues/detail?id=179977
BUG=179977
R=cpu,sky
Review URL: https://codereview.chromium.org/13003004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191015 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
He was an OWNER of some; now all.
NOTRY=true
Review URL: https://codereview.chromium.org/12672006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@188870 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: https://codereview.chromium.org/12217101
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@181640 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Chrome ASH.
Added the following functions to the Aura namespace.
1. HandleOpenFile
2. HandleOpenMultipleFiles
3. HandleSaveFile
These functions are invoked from the windows implementation of SelectFileDialogImpl::SelectFileImpl
for AURA. Internally these functions forward off to the corresponding implementations in the singleton
instance of the RemoteRootWindowHostWin class which is instantiated for Chrome ASH on Windows.
These functions take in a callback object which is invoked when the file picker operations complete.
The SelectFileDialogImpl::SelectFileImpl function uses the newly added ShellDialogsDelegate interface to
determine if the owning native window is in Windows 8 metro. This interface is implemented by a global
object ShellDialogsDelegateWin which lives in the chrome_browser_main_extra_parts_ash.cc file. It uses the
IsNativeViewInAsh helper function to determine this.
Added the following IPC's which are sent from the browser to the metro viewer process.
1. MetroViewerHostMsg_DisplayFileOpen
2. MetroViewerHostMsg_DisplayFileSaveAs
The following IPC's are sent from the metro viewer to the browser process and inform the browser about the
status of the file open/file save operations along with the file names.
1. MetroViewerHostMsg_FileOpenDone
2. MetroViewerHostMsg_MultiFileOpenDone
3. MetroViewerHostMsg_FileSaveAsDone
The handlers for these IPCs live in the RemoteRootWindowHostWin class and invoke the callback objects which are
passed in.
In the metro driver the file_picker_ash.cc/.h files contain the code for displaying the metro style file pickers.
These sources are copied from the file_picker.cc/.h files which perform this functionality for regular Chrome metro.
BUG=170483
Review URL: https://codereview.chromium.org/12041089
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@179921 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
To change the cursor we need to send a message from
the browser to the viewer with the right HCURSOR. Since the
cursors are a GDI shared resource, we can call ::LoadCursor
in the browser and ::SetCursor in the viewer.
BUG=151718
TEST= moving pointer to a chrome window edge changes cursor to resize cursor
Review URL: https://codereview.chromium.org/11446078
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@172265 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
to the browser process.
cpu:- Please review everything.
sky:- Please review changes to content\browser, chrome\browser and ui\aura.
This effectively also means that we won't be passing the fake mouse messages generated by Windows for touch events
from the Ash viewer process to chrome.
This only fixes touch handling in Metro Ash. Touch handling for desktop chrome Aura will be fixed in a subsequent CL.
BUG=151718
R=cpu,sky
Review URL: https://codereview.chromium.org/11472013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171888 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
state between mouse pressed/released events and pass it down to MouseEvent through flags.
MouseEvent now automatically converts a ET_MOUSE_MOVED event into an ET_MOUSE_DRAGGED event if the flags show that any mouse button is down (mimicking drag behavior of EventTypeFromNative() used for native events).
NOTE: From experimentation, it seems like Metro only sends a PointerPressed event for the first button pressed and the last button released in a sequence of mouse events.
For example, a sequence of LEFT_DOWN, RIGHT_DOWN, LEFT_UP, RIGHT_UP results only in PointerPressed(LEFT)/PointerReleased(RIGHT) events.
Thus, we cannot accumulate mouse down events and know each button that is down, nor can we wait for a matching mouse up event to cancel that state.
TBR=cdn
BUG=151718
TEST=Can now drag windows in Metro Ash.
Review URL: https://chromiumcodereview.appspot.com/11411155
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@170292 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
host desktop type.
This is for use in those places where there's no context from which to figure out if something should be popped on the native or ash desktop.
Original approach reviewed here: https://chromiumcodereview.appspot.com/11188064/
BUG=129187
TEST=none
Review URL: https://chromiumcodereview.appspot.com/11358090
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@168074 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: https://codereview.chromium.org/11191041
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@166955 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
-Wheel, r-click and l-click now discriminated
-More efficient, clean mouse event handling
Note; wheel event not properly handled. That is a bigger CL
that will come later.
BUG=151718
TEST= right click and left click
Review URL: https://codereview.chromium.org/11312025
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@166034 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
please review everything,
sky: Please review the changes to ui and chrome\browser.
We need to send character events to the RenderViewHost class in addition to the KeyDown/Keyup events
for this to work.
To achieve this we register the character received event on the Windows 8 CoreWindow class and send the
character info via a new IPC message MetroViewerHostMsg_Character.
The chrome side handling for this message is performed in the MockInputMethod::DispatchFabricatedKeyEvent
function where we dispatch the message to the focused TextInputClient.
While working on this I also noticed that we were not sending the event flags like shift/alt/Ctrl, etc to
Chrome from the Metro code. Added support for that. This ensures that we are able to select text in the edit
fields on the page and the omnibox, etc.
The above changes will most likely not work with IME's. Will look into that in a subsequent change.
BUG=158637
R=cpu,sky
Review URL: https://codereview.chromium.org/11348053
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@165496 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is the first part since there IME are issues
that need to be sorted out before this can fully
work. In particular, InputMethodEventFilter::PreHandleKeyEvent
needs changes not to assume native events.
BUG=151718
TEST=none
Review URL: https://codereview.chromium.org/11194044
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162781 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
- Wires metro mouse move, mouse click to aura viewer
- Introduces a new RootWindowHost, one that is remote
BUG=151718
TEST=see bug
Review URL: https://codereview.chromium.org/11047012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@160489 0039d316-1c4b-4281-b951-d872f2087c98
|
|
Render to the surface it provides to us.
BUG=151718
Review URL: https://codereview.chromium.org/10984007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@159559 0039d316-1c4b-4281-b951-d872f2087c98
|