summaryrefslogtreecommitdiffstats
path: root/ash/touch
Commit message (Collapse)AuthorAgeFilesLines
* touch: Change how touch-screen capability is processed.Sadrul Habib Chowdhury2015-01-132-24/+28
| | | | | | | | | | | | | | Instead of storing information in TouchFactory (which is X11 specific), store the maximum number of touch-points supported by a device in platform agnostic TouchscreenDevice. Use this TouchscreenDevice to compute the maximum number of simultaneous touch-points supported at runtime. BUG=none R=dnicoara@chromium.org, oshima@chromium.org, spang@chromium.org Review URL: https://codereview.chromium.org/845413002 Cr-Commit-Position: refs/heads/master@{#311336}
* ash: Use skia::RefPtr instead of manually calling unref().tfarina2015-01-081-9/+9
| | | | | | | | | | | | | | | | According to https://chromium.googlesource.com/chromium/src/+/master/skia/ext/refptr.h#40, we should never call unref() on the underlying ref-counted pointer. By using AdoptRef(), skia::RefPtr will take care of that for us automatically. BUG=None R=sky@chromium.org Review URL: https://codereview.chromium.org/812333003 Cr-Commit-Position: refs/heads/master@{#310443}
* Use template specialization to generate WindowProperty code.oshima2015-01-071-0/+2
| | | | | | | | | | | | | | They used to be a inlined function in the header, which led to code generation when method is used. This changes the code generation only in DECLARE_WINDOW_PROPERTY_TYPE(). BUG=None R=sadrul@chromium.org Committed: https://crrev.com/f62e152bb7a13135a597d9766eb79551d3a24a73 Cr-Commit-Position: refs/heads/master@{#309252} Review URL: https://codereview.chromium.org/801953002 Cr-Commit-Position: refs/heads/master@{#310179}
* Fix references to ui/gfx headers in a*/.Avi Drissman2014-12-225-6/+6
| | | | | | | | | | BUG=444596 TEST=none TBR=ben@chromium.org Review URL: https://codereview.chromium.org/802473003 Cr-Commit-Position: refs/heads/master@{#309448}
* Revert of Use template specialization to generate WindowProperty code ↵chirantan2014-12-191-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (patchset #8 id:330001 of https://codereview.chromium.org/801953002/) Reason for revert: This is breaking chrome on chrome os builds: In file included from ../../ui/aura/client/screen_position_client.cc:7:0: ../../ui/aura/window_property.h:115:58: error: specialization of 'template<class T> void aura::Window::SetProperty(const aura::WindowProperty<T>*, T)' in different namespace [-fpermissive] const aura::WindowProperty<T >* property, T value) { \ ^ ../../ui/aura/window_property.h:127:5: note: in expansion of macro 'DECLARE_EXPORTED_WINDOW_PROPERTY_TYPE' DECLARE_EXPORTED_WINDOW_PROPERTY_TYPE(, T) ^ ../../ui/aura/client/screen_position_client.cc:9:1: note: in expansion of macro 'DECLARE_WINDOW_PROPERTY_TYPE' DECLARE_WINDOW_PROPERTY_TYPE(aura::client::ScreenPositionClient*) ^ In file included from ../../ui/aura/client/screen_position_client.h:9:0, from ../../ui/aura/client/screen_position_client.cc:5: ../../ui/aura/window.h:297:8: error: from definition of 'template<class T> void aura::Window::SetProperty(const aura::WindowProperty<T>*, T)' [-fpermissive] void SetProperty(const WindowProperty<T>* property, T value); ^ Original issue's description: > Use template specialization to generate WindowProperty code. > > They used to be a inlined function in the header, which led to code generation when method is used. This changes the code generation only in DECLARE_WINDOW_PROPERTY_TYPE(). > > BUG=None > R=sadrul@chromium.org > > Committed: https://crrev.com/f62e152bb7a13135a597d9766eb79551d3a24a73 > Cr-Commit-Position: refs/heads/master@{#309252} TBR=sadrul@chromium.org,sky@chromium.org,oshima@chromium.org NOTREECHECKS=true NOTRY=true BUG=None Seems like nobody is around. LGTM. I'm broken by this as well. Review URL: https://codereview.chromium.org/814313002 Cr-Commit-Position: refs/heads/master@{#309285}
* Use template specialization to generate WindowProperty code.oshima2014-12-191-0/+2
| | | | | | | | | | | They used to be a inlined function in the header, which led to code generation when method is used. This changes the code generation only in DECLARE_WINDOW_PROPERTY_TYPE(). BUG=None R=sadrul@chromium.org Review URL: https://codereview.chromium.org/801953002 Cr-Commit-Position: refs/heads/master@{#309252}
* Generate mode list for internal display in test or on desktop as well.oshima2014-12-182-6/+6
| | | | | | | | | | | | | | | The list was empty on test and desktop. This CL makes the behavior close to one on real device. notable changes * move sorting logic to DisplayInfo. * tests now needs to use test api to change the primary display id, as the mode list has to be updated when primary display changes. BUG=401044 TEST=no functional change. all test should pass. Review URL: https://codereview.chromium.org/799423003 Cr-Commit-Position: refs/heads/master@{#308925}
* Do not forward input events to Widget during Widget destructiontdanderson2014-12-081-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Set the target handler of an aura::Window to null early in the Window destructor to stop input events from being forwarded to the hosted views::Widget since its event processor (RootView) may have already been destroyed. Furthermore, check for a null RootView in TouchUMA::FindGestureActionType() since this code may be reached during the pretarget phase of event processing at the same time the widget is being destroyed, in which case its root view will have already been destroyed. BUG=430582 TEST=WindowSelectorTest.ClickOnWindowDuringTouch, WindowTest.NoCrashOnWindowDelete, WindowTest.MouseEnterExitWithWindowAppearAndDelete, WindowTest.MouseEnterExitWithParentDelete, WindowTest.MouseEventsOnLeafWindowChange, WindowTest.MouseEventsOnNonLeafWindowDelete, WidgetTest.NoCrashOnWidgetDelete, WidgetTest.NoCrashOnWidgetDeleteWithPendingEvents Review URL: https://codereview.chromium.org/753623005 Cr-Commit-Position: refs/heads/master@{#307338}
* Remove unneeded object copies in range-based for loops.dcheng2014-12-011-1/+1
| | | | | | | | | | 'auto' by itself results in a copy, which can be expensive. BUG=435494 Review URL: https://codereview.chromium.org/766553002 Cr-Commit-Position: refs/heads/master@{#306203}
* ozone: dri: Use screen location for touch event dispatchspang2014-11-292-0/+18
| | | | | | | | | | | | | | This works a lot more naturally (no special cases in window targeting) and also will make event coordinates during capture less awkward (events must be reported relative to the window origin, but are not bounded by it during capture). BUG=437035 TEST=unit tests, manual testing on link_freon Review URL: https://codereview.chromium.org/765533003 Cr-Commit-Position: refs/heads/master@{#306117}
* events: Remove some usage of Event::native_event().Sadrul Habib Chowdhury2014-11-242-27/+1
| | | | | | | | | BUG=none R=sky@chromium.org Review URL: https://codereview.chromium.org/753603003 Cr-Commit-Position: refs/heads/master@{#305458}
* x11: Always require XI2.2 for X11.Sadrul Habib Chowdhury2014-11-122-3/+3
| | | | | | | | | | | | This removes the use_xi2_mt gyp variable, and USE_XI2_MT define from the code. XI2.2 is now available on all supported linux platforms. BUG=291141 R=brettw@chromium.org, derat@chromium.org, erg@chromium.org Review URL: https://codereview.chromium.org/706763003 Cr-Commit-Position: refs/heads/master@{#303918}
* Move all event related devices from ui/events/ to ui/events/devices/dnicoara2014-11-046-6/+6
| | | | | | | | BUG=none Review URL: https://codereview.chromium.org/685793002 Cr-Commit-Position: refs/heads/master@{#302647}
* Refactor TouchTransformerConverter to allow support for Ozonednicoara2014-10-303-104/+137
| | | | | | | | | | | | | | | In Ozone the touch events are received in device coordinates. This change consolidates the different transformations into one function and makes it use the touchscreen size when computing the transformation for Ozone and the framebuffer size for X11. BUG=425258 TESTS=Manually verified that X11 in single, mirror, extended and docked mode work with external touchscreen. Review URL: https://codereview.chromium.org/688183002 Cr-Commit-Position: refs/heads/master@{#302135}
* Prefix CommandLine usage with base namespace (Part 4: ash/)pgal.u-szeged2014-10-291-1/+1
| | | | | | | | | | | Prefix all CommandLine usage in the ash/ directory with the base:: namespace. BUG=422426 Review URL: https://codereview.chromium.org/684783004 Cr-Commit-Position: refs/heads/master@{#301819}
* Use the TouchscreenDevice when looking up the size of the touch areadnicoara2014-10-283-40/+50
| | | | | | | | | | | Removes some X11 dependencies when looking up the size of the touchscreen. BUG=425258 Review URL: https://codereview.chromium.org/683823004 Cr-Commit-Position: refs/heads/master@{#301713}
* Standardize usage of virtual/override/final specifiers.dcheng2014-10-276-37/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Google C++ style guide states: Explicitly annotate overrides of virtual functions or virtual destructors with an override or (less frequently) final specifier. Older (pre-C++11) code will use the virtual keyword as an inferior alternative annotation. For clarity, use exactly one of override, final, or virtual when declaring an override. To better conform to these guidelines, the following constructs have been rewritten: - if a base class has a virtual destructor, then: virtual ~Foo(); -> ~Foo() override; - virtual void Foo() override; -> void Foo() override; - virtual void Foo() override final; -> void Foo() final; This patch was automatically generated. The clang plugin can generate fixit hints, which are suggested edits when it is 100% sure it knows how to fix a problem. The hints from the clang plugin were applied to the source tree using the tool in https://codereview.chromium.org/598073004. BUG=417463 R=derat@chromium.org Review URL: https://codereview.chromium.org/680153002 Cr-Commit-Position: refs/heads/master@{#301490}
* Adds special support to the device manager for keyboards devices.rsadam2014-10-224-29/+44
| | | | | | | | | | This is the first step in using presence of different types of keyboards in automatically deploying the virtual keyboard. BUG=373402 Review URL: https://codereview.chromium.org/618283003 Cr-Commit-Position: refs/heads/master@{#300764}
* Preserve the native mode when parsing external display modesdnicoara2014-10-101-29/+8
| | | | | | | | | | | If the native mode is interlaced it can be replaced by a non-interlaced mode (which will not show as native). BUG=none Review URL: https://codereview.chromium.org/635403002 Cr-Commit-Position: refs/heads/master@{#299114}
* replace OVERRIDE and FINAL with override and final in ash/mostynb2014-10-038-30/+30
| | | | | | | | BUG=417463 Review URL: https://codereview.chromium.org/621133002 Cr-Commit-Position: refs/heads/master@{#298040}
* display: Move ui/display/types/chromeos/* to ui/display/types/*spang2014-09-181-1/+1
| | | | | | | | | | | | | | | Having these types disappear under chromeos=0 is a problem for platforms under ui/ozone, which also want to support embedded builds. There's no reason not to provide these everywhere. R=derat@chromium.org BUG=none TESt=build TBR=darin Review URL: https://codereview.chromium.org/558253003 Cr-Commit-Position: refs/heads/master@{#295468}
* Moving input device hotplug event processing outside of ui/displaydnicoara2014-09-124-9/+279
| | | | | | | | | | | | | | | The change decouples input device hotplug event processing from output device hotplug processing. In addition, for input device event processing, it takes advantage of the X11 caches in ui/events and simplifies how hotplug events are propagated to the system. Depends on https://codereview.chromium.org/508303002/ BUG=381326 Review URL: https://codereview.chromium.org/336863002 Cr-Commit-Position: refs/heads/master@{#294624}
* TouchTransformer for software mirroring modemiletus2014-09-111-22/+40
| | | | | | | | | | | | In software mirroring mode, there is one X root window and it should be associated with both displays (touchscreens). BUG=chrome-os-partner:31466 TEST=tested on Big with clone mode. Review URL: https://codereview.chromium.org/557073002 Cr-Commit-Position: refs/heads/master@{#294407}
* Move gestureCreated, touchMaxDistance and touchDuration UMA logs into ↵lanwei2014-08-291-165/+0
| | | | | | | | | | gesture provider, so that they can also record data from other platforms, such as Android, Windows, not only from ChromeOS. BUG=352654 Review URL: https://codereview.chromium.org/501553004 Cr-Commit-Position: refs/heads/master@{#292570}
* Scale touch event radiusmiletus@chromium.org2014-07-243-0/+72
| | | | | | | | | | | | | | | | | Touch event's position resolution could be quite different than the display's resolution, e.g. the display could be set as 1920x1080 while the touchscreen is reporting touch position range at 32767x32767. Touch event's radius is reported in the units the same as touch position. While we are doing touch position scaling, we should also do the same for touch radius. BUG=392172, 233245 TEST=touch radius is scaled to be reasonable value for HP 23TM touch monitor. Review URL: https://codereview.chromium.org/412553005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@285132 0039d316-1c4b-4281-b951-d872f2087c98
* Prepare to use gfx::RenderText in views::Label.msw@chromium.org2014-07-211-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Alter Label's API to support a RenderText implementation. This has minimal functional changes to Label for now. The Label rewrite to use RenderText will land separately. Remove the generally unused Label::SetDirectionalityMode. We should always use the text's directionality anyway. (it seems like this was the case even for *FROM_UI...) Also remove views::LabelButton::SetDirectionalityMode. Fix LabelButton mutli-line preferred sizing and layout. Add RenderText flag to swap newline chars for symbols. (We don't want that for multi-line views::Label layout) Add GetCurrentHorizontalAlignment ALIGN_HEAD helper. Expose ElideBehavior and ShadowValues accessors. Set the styles of the argument FontList in SetFontList. (this is how Label transmits style information for now) Fix partial-pixel treatment for centered alignment. Update Message Center's InnerBoundedLabel Label subclass. (minimal changes to keep it working with older paint path) BUG=240037 TEST=Negligible appearance changes (better multi-line label centering). R=sky@chromium.org,asvitkine@chromium.org Review URL: https://codereview.chromium.org/23228004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@284401 0039d316-1c4b-4281-b951-d872f2087c98
* Extract touchscreen device management into a generic managerdnicoara@chromium.org2014-06-233-5/+5
| | | | | | | | | | DeviceDataManager is currently X11 specific, so CrOS code that is responsible for touchscreen management would only work under X11. This CL starts extracting device state as generic state that X11 and Ozone implementations can share. BUG=375848 Review URL: https://codereview.chromium.org/289283015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@279126 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor views::Label and gfx::RenderText shadow functions.msw@chromium.org2014-06-181-3/+2
| | | | | | | | | | | | | | This is mechanical cleanup in preparation for a Label rewrite. Use simple gfx::ShadowValues setter functions everywhere. Remove a forbidden static FontList instance. BUG=240037 TEST=No appearance changes for views text shadows. R=sky@chromium.org Review URL: https://codereview.chromium.org/343513002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@278101 0039d316-1c4b-4281-b951-d872f2087c98
* Implementing the dispatch of the swipe gesture for one-finger touch swipes.mfomitchev@chromium.org2014-05-281-45/+50
| | | | | | | | BUG=377555 Review URL: https://codereview.chromium.org/302463004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@273097 0039d316-1c4b-4281-b951-d872f2087c98
* Early return in UpdateTouchTransformer for software mirroring modemiletus@chromium.org2014-05-231-0/+4
| | | | | | | | | | | | | | | | Software mirroring mode is special that display_state is marked as DUAL_EXTENDED but it is doing mirroring. There is only one root window as supposed 2 root windows in the extended mode. Early return in UpdateTouchTransformer() for the software mirroring mode for now so as not to crash chrome. BUG=376459 TEST=arm devices don't crash while switching from extended to mirror mode. Review URL: https://codereview.chromium.org/287193014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@272414 0039d316-1c4b-4281-b951-d872f2087c98
* Add OnDisplayMetricsChanged in DisplayObserver.mlamouri@chromium.org2014-05-224-11/+16
| | | | | | | | | | | | | | This replaces OnDisplayBoundsChanged and add a MetricsType parameter so consumers can now which metrics has changed. The current set of MetricsType include bounds, workarea and rotation. BUG=162827 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=271768 Review URL: https://codereview.chromium.org/259253002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@272040 0039d316-1c4b-4281-b951-d872f2087c98
* Revert of Add OnDisplayMetricsChanged in DisplayObserver. ↵zea@chromium.org2014-05-204-16/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/259253002/) Reason for revert: Breaks DesktopScreenX11Test.RemoveMonitorOnRight and AddMonitorToTheRight on Linux Tests TBR=mlamouri@chromium.org NOTRY=true NOTREECHECKS=true http://build.chromium.org/p/chromium.linux/buildstatus?builder=Linux%20Tests&number=11092 Original issue's description: > Add OnDisplayMetricsChanged in DisplayObserver. > > This replaces OnDisplayBoundsChanged and add a MetricsType > parameter so consumers can now which metrics has changed. The > current set of MetricsType include bounds, workarea and rotation. > > BUG=162827 > > Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=271768 Review URL: https://codereview.chromium.org/294963004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@271782 0039d316-1c4b-4281-b951-d872f2087c98
* Add OnDisplayMetricsChanged in DisplayObserver.mlamouri@chromium.org2014-05-204-11/+16
| | | | | | | | | | | | This replaces OnDisplayBoundsChanged and add a MetricsType parameter so consumers can now which metrics has changed. The current set of MetricsType include bounds, workarea and rotation. BUG=162827 Review URL: https://codereview.chromium.org/259253002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@271768 0039d316-1c4b-4281-b951-d872f2087c98
* clang: Turn on -Wabsolute-value.thakis@chromium.org2014-05-201-1/+2
| | | | | | | | | | BUG=351479 TBR=hans@chromium.org NOTRY=true Review URL: https://codereview.chromium.org/274533004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@271732 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 271468 "Revert of [Refactor] Consolidate the logic for wh..."erg@chromium.org2014-05-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The revert broke Windows interactive_ui_tests. The world has probably changed since this was first committed. WidgetTestInteractive.CanActivateFlagIsHonored http://build.chromium.org/p/chromium.win/builders/Win7%20Tests%20%281%29/builds/29193/steps/interactive_ui_tests/logs/stdio > Revert of [Refactor] Consolidate the logic for whether a widget can be activated. (https://codereview.chromium.org/286733002/) > > Reason for revert: > This CL was causing problems when the value of views::Widget::CanActivate() changes crbug.com/374095 > > I also need to audit the code to find out whether there are any 'non-activatable' widgets which were intended to be activatable > > Original issue's description: > > [Refactor] Consolidate the logic for whether a widget can be activated. > > > > This is a first step towards giving tooltips their own WindowTreeHosts on Linux. > > > > BUG=353533 > > TEST=None > > > > Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=270597 > > Review URL: https://codereview.chromium.org/297503003 TBR=pkotwicz@chromium.org Review URL: https://codereview.chromium.org/291013003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@271511 0039d316-1c4b-4281-b951-d872f2087c98
* Revert of [Refactor] Consolidate the logic for whether a widget can be ↵pkotwicz@chromium.org2014-05-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | activated. (https://codereview.chromium.org/286733002/) Reason for revert: This CL was causing problems when the value of views::Widget::CanActivate() changes crbug.com/374095 I also need to audit the code to find out whether there are any 'non-activatable' widgets which were intended to be activatable Original issue's description: > [Refactor] Consolidate the logic for whether a widget can be activated. > > This is a first step towards giving tooltips their own WindowTreeHosts on Linux. > > BUG=353533 > TEST=None > > Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=270597 Review URL: https://codereview.chromium.org/297503003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@271468 0039d316-1c4b-4281-b951-d872f2087c98
* use simpler gradient factories (in prep for removing SkUnitMapper param)reed@google.com2014-05-191-2/+1
| | | | | | | | BUG= Review URL: https://codereview.chromium.org/291843003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@271462 0039d316-1c4b-4281-b951-d872f2087c98
* [Refactor] Consolidate the logic for whether a widget can be activated.pkotwicz@chromium.org2014-05-151-1/+1
| | | | | | | | | | | This is a first step towards giving tooltips their own WindowTreeHosts on Linux. BUG=353533 TEST=None Review URL: https://codereview.chromium.org/286733002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@270597 0039d316-1c4b-4281-b951-d872f2087c98
* Reduce creation of ViewsDelegatesky@chromium.org2014-05-141-0/+1
| | | | | | | | | | | | | | | | | | | By consolidating override of OnBeforeWidgetInit that finds shell many of the places that were setting a viewsdelegate no longer need to. Also, made AshTestHelper install a ViewsDelegate so that tests don't have. Because of removed an include of views_delegate from ash_test_helper I had to update some includes. BUG=none TEST=none R=ben@chromium.org Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=270290 Review URL: https://codereview.chromium.org/280863002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@270399 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 270290 "Reduce creation of ViewsDelegate"raymes@google.com2014-05-141-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | Speculatively reverting as it may have caused the tree to break: http://build.chromium.org/p/chromium.win/builders/Win%20Builder/builds/20345/steps/compile/logs/stdio > Reduce creation of ViewsDelegate > > By consolidating override of OnBeforeWidgetInit that finds shell many > of the places that were setting a viewsdelegate no longer need to. > > Also, made AshTestHelper install a ViewsDelegate so that tests don't have. > > Because of removed an include of views_delegate from ash_test_helper I had to update some includes. > > BUG=none > TEST=none > R=ben@chromium.org > > Review URL: https://codereview.chromium.org/280863002 TBR=sky@chromium.org Review URL: https://codereview.chromium.org/286753002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@270305 0039d316-1c4b-4281-b951-d872f2087c98
* Reduce creation of ViewsDelegatesky@chromium.org2014-05-141-0/+1
| | | | | | | | | | | | | | | | | By consolidating override of OnBeforeWidgetInit that finds shell many of the places that were setting a viewsdelegate no longer need to. Also, made AshTestHelper install a ViewsDelegate so that tests don't have. Because of removed an include of views_delegate from ash_test_helper I had to update some includes. BUG=none TEST=none R=ben@chromium.org Review URL: https://codereview.chromium.org/280863002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@270290 0039d316-1c4b-4281-b951-d872f2087c98
* Re-land "Move touch CTM from X into Chrome"miletus@chromium.org2014-05-133-0/+486
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently we compute the touch CTM in OutputConfigurator and push that into X. This CL makes computing the touch CTM in DisplayController, and pushing it into WindowTreeHostX11. This moves the functionality of touch CTM from X into Chrome. Basically, when there is output configuration change, we compute the TouchCTM for each touch device, and push the TouchCTM into the WindowTreeHostX11 that is associated with the touchscreen. Then when X events reaching root window, we use the CTM to map the events coordinate in framebuffer space into the root window's coordinate space. BUG=351019, chrome-os-partner:25788 TEST=tested on Pixel/Clapper with external touch/non-touch displays on both extended/mirror mode. Touch events are correctly mapped to chrome window or discarded if it is from blank region from letterboxing/pillarboxing mirror mode. Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=269371 TBR=sadrul@chromium.org Review URL: https://codereview.chromium.org/280833002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@270252 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 269371 "Move touch CTM from X into Chrome"rlp@chromium.org2014-05-093-486/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Failed compile on Linux Builder http://build.chromium.org/p/chromium.linux/builders/Linux%20Builder%20%28dbg%29%2832%29/builds/23859/steps/compile/logs/stdio FAILED: /b/build/goma/gomacc c++ -Wl,-z,now -Wl,-z,relro -Wl,--fatal-warnings -pthread -Wl,-z,noexecstack -fPIC -m32 -Wl,--no-as-needed -Wl,-rpath=\$ORIGIN/lib/ -Wl,-rpath-link=lib/ -o cast_unittests -Wl,--start-group obj/media/base/cast_unittests.run_all_unittests.o obj/media/cast/audio_receiver/cast_unittests.audio_decoder_unittest.o obj/media/cast/audio_receiver/cast_unittests.audio_receiver_unittest.o obj/media/cast/audio_sender/cast_unittests.audio_encoder_unittest.o obj/media/cast/audio_sender/cast_unittests.audio_sender_unittest.o obj/media/cast/congestion_control/cast_unittests.congestion_control_unittest.o obj/media/cast/framer/cast_unittests.cast_message_builder_unittest.o obj/media/cast/framer/cast_unittests.frame_buffer_unittest.o obj/media/cast/framer/cast_unittests.framer_unittest.o obj/media/cast/logging/cast_unittests.encoding_event_subscriber_unittest.o obj/media/cast/logging/cast_unittests.serialize_deserialize_test.o obj/media/cast/logging/cast_unittests.logging_impl_unittest.o obj/media/cast/logging/cast_unittests.logging_raw_unittest.o obj/media/cast/logging/cast_unittests.receiver_time_offset_estimator_impl_unittest.o obj/media/cast/logging/cast_unittests.simple_event_subscriber_unittest.o obj/media/cast/logging/cast_unittests.stats_event_subscriber_unittest.o obj/media/cast/rtcp/cast_unittests.mock_rtcp_receiver_feedback.o obj/media/cast/rtcp/cast_unittests.mock_rtcp_sender_feedback.o obj/media/cast/rtcp/cast_unittests.rtcp_receiver_unittest.o obj/media/cast/rtcp/cast_unittests.rtcp_sender_unittest.o obj/media/cast/rtcp/cast_unittests.rtcp_unittest.o obj/media/cast/rtcp/cast_unittests.receiver_rtcp_event_subscriber_unittest.o obj/media/cast/rtcp/cast_unittests.sender_rtcp_event_subscriber_unittest.o obj/media/cast/rtcp/cast_unittests.test_rtcp_packet_builder.o obj/media/cast/rtp_receiver/cast_unittests.mock_rtp_payload_feedback.o obj/media/cast/rtp_receiver/cast_unittests.receiver_stats_unittest.o obj/media/cast/rtp_receiver/rtp_parser/test/cast_unittests.rtp_packet_builder.o obj/media/cast/rtp_receiver/rtp_parser/cast_unittests.rtp_parser_unittest.o obj/media/cast/test/cast_unittests.end2end_unittest.o obj/media/cast/test/cast_unittests.fake_receiver_time_offset_estimator.o obj/media/cast/test/cast_unittests.fake_single_thread_task_runner.o obj/media/cast/test/cast_unittests.fake_video_encode_accelerator.o obj/media/cast/test/utility/cast_unittests.audio_utility_unittest.o obj/media/cast/test/utility/cast_unittests.barcode_unittest.o obj/media/cast/transport/cast_unittests.cast_transport_sender_impl_unittest.o obj/media/cast/transport/pacing/cast_unittests.mock_paced_packet_sender.o obj/media/cast/transport/pacing/cast_unittests.paced_sender_unittest.o obj/media/cast/transport/rtp_sender/packet_storage/cast_unittests.packet_storage_unittest.o obj/media/cast/transport/rtp_sender/rtp_packetizer/cast_unittests.rtp_packetizer_unittest.o obj/media/cast/transport/rtp_sender/rtp_packetizer/test/cast_unittests.rtp_header_parser.o obj/media/cast/transport/transport/cast_unittests.udp_transport_unittest.o obj/media/cast/video_receiver/cast_unittests.video_decoder_unittest.o obj/media/cast/video_receiver/cast_unittests.video_receiver_unittest.o obj/media/cast/video_sender/cast_unittests.external_video_encoder_unittest.o obj/media/cast/video_sender/cast_unittests.video_encoder_impl_unittest.o obj/media/cast/video_sender/cast_unittests.video_sender_unittest.o obj/media/cast/libcast_base.a obj/media/cast/libcast_receiver.a obj/media/cast/libcast_rtcp.a obj/media/cast/libcast_sender.a obj/media/cast/libcast_test_utility.a obj/media/cast/libcast_transport.a obj/base/libtest_support_base.a obj/testing/libgmock.a obj/testing/libgtest.a obj/media/cast/libcast_logging_proto.a obj/third_party/opus/libopus.a obj/third_party/libvpx/libvpx.a obj/third_party/libvpx/libvpx_asm_offsets_vp8.a obj/third_party/libvpx/libvpx_intrinsics_mmx.a obj/third_party/libvpx/libvpx_intrinsics_sse2.a obj/third_party/libvpx/libvpx_intrinsics_ssse3.a libyuv.a obj/third_party/libjpeg_turbo/libjpeg_turbo.a obj/base/libbase_static.a obj/third_party/libxml/libxml2.a obj/third_party/zlib/libchrome_zlib.a obj/base/third_party/dynamic_annotations/libdynamic_annotations.a lib/libicuuc.so lib/libnet.so lib/libbase.so lib/libgfx_geometry.so lib/libprotobuf_lite.so lib/libshared_memory_support.so lib/libmedia.so lib/libbase_i18n.so lib/libcrcrypto.so -Wl,--end-group -lrt -ldl -lasound lib//libevents_base.so: undefined reference to `ui::PlatformEventSource::RemovePlatformEventObserver(ui::PlatformEventObserver*)' lib//libevents_base.so: undefined reference to `ui::PlatformEventSource::GetInstance()' lib//libevents_base.so: undefined reference to `ui::PlatformEventSource::AddPlatformEventObserver(ui::PlatformEventObserver*)' collect2: ld returned 1 exit status ninja: build stopped: subcommand failed. > Move touch CTM from X into Chrome > > Currently we compute the touch CTM in OutputConfigurator > and push that into X. This CL makes computing the touch CTM > in DisplayController, and pushing it > into WindowTreeHostX11. This moves the functionality of > touch CTM from X into Chrome. > > Basically, when there is output configuration change, we > compute the TouchCTM for each touch device, and push the > TouchCTM into the WindowTreeHostX11 that is associated > with the touchscreen. Then when X events reaching root > window, we use the CTM to map the events coordinate in > framebuffer space into the root window's coordinate space. > > > BUG=351019, chrome-os-partner:25788 > TEST=tested on Pixel/Clapper with external touch/non-touch displays > on both extended/mirror mode. Touch events are correctly mapped to > chrome window or discarded if it is from blank region from letterboxing/pillarboxing mirror mode. > > Review URL: https://codereview.chromium.org/191223007 TBR=miletus@chromium.org Review URL: https://codereview.chromium.org/276013002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@269376 0039d316-1c4b-4281-b951-d872f2087c98
* Move touch CTM from X into Chromemiletus@chromium.org2014-05-093-0/+486
| | | | | | | | | | | | | | | | | | | | | | | | | Currently we compute the touch CTM in OutputConfigurator and push that into X. This CL makes computing the touch CTM in DisplayController, and pushing it into WindowTreeHostX11. This moves the functionality of touch CTM from X into Chrome. Basically, when there is output configuration change, we compute the TouchCTM for each touch device, and push the TouchCTM into the WindowTreeHostX11 that is associated with the touchscreen. Then when X events reaching root window, we use the CTM to map the events coordinate in framebuffer space into the root window's coordinate space. BUG=351019, chrome-os-partner:25788 TEST=tested on Pixel/Clapper with external touch/non-touch displays on both extended/mirror mode. Touch events are correctly mapped to chrome window or discarded if it is from blank region from letterboxing/pillarboxing mirror mode. Review URL: https://codereview.chromium.org/191223007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@269371 0039d316-1c4b-4281-b951-d872f2087c98
* events: Remove stationary touch-event type.sadrul@chromium.org2014-05-011-3/+1
| | | | | | | | | | | ET_TOUCH_STATIONARY is never generated on any platform. So remove it. BUG=none R=oshima@chromium.org, tdresser@chromium.org Review URL: https://codereview.chromium.org/268483004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@267418 0039d316-1c4b-4281-b951-d872f2087c98
* Renamed OutputConfigurator to DisplayConfiguratordnicoara@chromium.org2014-04-072-7/+7
| | | | | | | | BUG=333413 Review URL: https://codereview.chromium.org/226183004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@262183 0039d316-1c4b-4281-b951-d872f2087c98
* Eliminate ash::internal namespaceoshima@chromium.org2014-04-037-43/+23
| | | | | | | | | | | Plus obvious style nit fixes. BUG=None TBR=sky@chromium.org Review URL: https://codereview.chromium.org/224113005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@261522 0039d316-1c4b-4281-b951-d872f2087c98
* Refactoring display configuration state to allow generic state objectsdnicoara@chromium.org2014-03-182-3/+3
| | | | | | | | | | OutputConfigurator now uses NativeDisplayDelegate impls to create generic DisplaySnapshot and DisplayMode objects. OutputConfigurator interacts with these objects then calls into NativeDisplayDelegate to perform the actual configuration. BUG=333413 Review URL: https://codereview.chromium.org/187073002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@257757 0039d316-1c4b-4281-b951-d872f2087c98
* Add OnDisplaysInitialized to DisplayController::Observeroshima@chromium.org2014-03-152-0/+5
| | | | | | | | | | this is a place for actions when displays are initialized after startup. BUG=None Review URL: https://codereview.chromium.org/199323003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@257302 0039d316-1c4b-4281-b951-d872f2087c98
* Move chromeos/display/* to ui/display/chromeosdnicoara@chromium.org2014-03-142-12/+10
| | | | | | | | | | TBR=darin@chromium.org BUG=333413 Review URL: https://codereview.chromium.org/192483007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@257197 0039d316-1c4b-4281-b951-d872f2087c98