summaryrefslogtreecommitdiffstats
path: root/ash
Commit message (Collapse)AuthorAgeFilesLines
* Updating XTBs based on .GRDs from branch 2623Krishna Govind2016-02-223-3/+3
| | | | | Cr-Commit-Position: refs/branch-heads/2623@{#469} Cr-Branched-From: 92d77538a86529ca35f9220bd3cd512cbea1f086-refs/heads/master@{#369907}
* [This change needs to go to branch 2623].xdai2016-02-121-0/+61
| | | | | | | | | | | | | | | | | | | | | | | | | Fix the browser crash caused by releasing other window's capture while dragging a MODAL_TYPE_CHILD window. When a modal child window becomes visible, it tries to release the current capture window, which will trigger a END_DRAG_CAPTURE_LOST event to end the current dragging, which will cause the browser crash. We should disable this capture releasing behavior for a modal child window. Simpler repro steps: 1) Open 3 tabs (say T1, T2, T3) 2) Open Print preview on T1 3) Press and hold Shift key and click on T1 and T2 in order 4) Release Shift key and press on T1 to drag the tabs T1 and T2 out BUG=573451 TBR=sky@chromium.org Review URL: https://codereview.chromium.org/1643243003 Cr-Commit-Position: refs/heads/master@{#374458} (cherry picked from commit 74ce23c28b9ed0a8dc170a45c9596d5de468beef) Review URL: https://codereview.chromium.org/1692753002 . Cr-Commit-Position: refs/branch-heads/2623@{#370} Cr-Branched-From: 92d77538a86529ca35f9220bd3cd512cbea1f086-refs/heads/master@{#369907}
* Updating XTBs based on .GRDs from branch 2623Krishna Govind2016-02-081-2/+2
| | | | | Cr-Commit-Position: refs/branch-heads/2623@{#296} Cr-Branched-From: 92d77538a86529ca35f9220bd3cd512cbea1f086-refs/heads/master@{#369907}
* Updating XTBs based on .GRDs from branch 2623Krishna Govind2016-02-021-2/+2
| | | | | Cr-Commit-Position: refs/branch-heads/2623@{#245} Cr-Branched-From: 92d77538a86529ca35f9220bd3cd512cbea1f086-refs/heads/master@{#369907}
* Restore previous input device to display pairing behavior.Jacob Dufault2016-02-011-0/+12
| | | | | | | | | | | | | | | | We want to always associate a input device so that we don't accidentally break anyone who is depending on this behavior. BUG=582516 patch from issue 1652513002 at patchset 20001 (http://crrev.com/1652513002#ps20001) (cherry picked from commit d5c1e3b0b0a7b5b960ef16062d5722f24a1ea698) Review URL: https://codereview.chromium.org/1659543002 . Cr-Commit-Position: refs/branch-heads/2623@{#216} Cr-Branched-From: 92d77538a86529ca35f9220bd3cd512cbea1f086-refs/heads/master@{#369907}
* Fix merge error caused by a method rename.Jacob Dufault2016-01-291-1/+1
| | | | | | | | | | | BUG=582614 (cherry picked from commit 18001efee129dafec27acd52dfa1ed273385250c) Review URL: https://codereview.chromium.org/1652433003 . Cr-Commit-Position: refs/branch-heads/2623@{#200} Cr-Branched-From: 92d77538a86529ca35f9220bd3cd512cbea1f086-refs/heads/master@{#369907}
* Fix moving the mouse between two displays after the secondary display ↵Jacob Dufault2016-01-297-122/+135
| | | | | | | | | | | | | | | | becomes primary. BUG=580754 Review URL: https://codereview.chromium.org/1631023002 Cr-Commit-Position: refs/heads/master@{#371566} (cherry picked from commit 3c2d523b0549c0d5139e76132da313eb2935a511) Review URL: https://codereview.chromium.org/1649063002 . Cr-Commit-Position: refs/branch-heads/2623@{#196} Cr-Branched-From: 92d77538a86529ca35f9220bd3cd512cbea1f086-refs/heads/master@{#369907}
* Support moving the cursor and dragging windows to 3+ displays.Jacob Dufault2016-01-293-202/+337
| | | | | | | | | | | | | | BUG=573289 Review URL: https://codereview.chromium.org/1601383002 Cr-Commit-Position: refs/heads/master@{#370794} (cherry picked from commit fb0a421238b1b0a71a2c7d5d3de2ef57a20028d0) Review URL: https://codereview.chromium.org/1648413002 . Cr-Commit-Position: refs/branch-heads/2623@{#195} Cr-Branched-From: 92d77538a86529ca35f9220bd3cd512cbea1f086-refs/heads/master@{#369907}
* Fix light versions of cros frame buttonsEvan Stade2016-01-222-6/+8
| | | | | | | | | | | | | | BUG=575564 Review URL: https://codereview.chromium.org/1587463002 Cr-Commit-Position: refs/heads/master@{#370466} (cherry picked from commit 1cc3aafbc7904b32058550f90c6a930c0eeb0e26) Review URL: https://codereview.chromium.org/1620833003 . Cr-Commit-Position: refs/branch-heads/2623@{#86} Cr-Branched-From: 92d77538a86529ca35f9220bd3cd512cbea1f086-refs/heads/master@{#369907}
* [Merge to M49] Make sure the event blocker is destroyed when we leave ↵Ahmed Fakhry2016-01-212-17/+34
| | | | | | | | | | | | | | | | | | | | | | | maximize mode. Turning off the internal display while an external one is connected will enter the device into docked mode, and will exit the maximized mode (if any). We need to make sure that the keyboard and touchpad events are re-enabled when the maximize mode exits. TBR=varkha@chromium.org BUG=549803 TEST=ash_unittests --gtest_filter=MaximizeModeControllerTest.NoMaximizeModeWithDisabledInternalDisplay Review URL: https://codereview.chromium.org/1588883005 Cr-Commit-Position: refs/heads/master@{#370436} (cherry picked from commit bf0b91e43cd331c6ebdb80755a2a74bd71f259ab) Review URL: https://codereview.chromium.org/1614203002 . Cr-Commit-Position: refs/branch-heads/2623@{#56} Cr-Branched-From: 92d77538a86529ca35f9220bd3cd512cbea1f086-refs/heads/master@{#369907}
* Rename DisplayConfiguratorAnimation to DisplayAnimatorstevenjb2016-01-1611-95/+68
| | | | | | | | | | Also cleans up the class to new style guide some. BUG=576375 Review URL: https://codereview.chromium.org/1590463004 Cr-Commit-Position: refs/heads/master@{#369893}
* Replace base::CallbackList with base::ObserverList in CastConfigDelegatejdufault2016-01-144-40/+63
| | | | | | | | | | | | | | base::CallbackList::Observer invoked a destructor inside of TrayCast. Due to wonky deinitialization order between the system tray delegate and the status area, this caused a crash. base::ObserverList deinitialization is more easily controlled than base::CallbackList. Switch to that so we don't deinitialize the observer if it's already been removed. Fixing the deinitialization order between the system tray delegate and the status area is the correct fix, but it will take significantly more time and needs to be thoroughly tested. BUG=574874 Review URL: https://codereview.chromium.org/1567103005 Cr-Commit-Position: refs/heads/master@{#369508}
* Extend tabstrip to top edge of maximized Ash window in material designtdanderson2016-01-141-1/+1
| | | | | | | | | | | | | For a maximized Ash browser window in material design, the top edge of the tabstrip should extend to the top edge of the window. BUG=575813,575247 TEST=manual Review URL: https://codereview.chromium.org/1588643002 Cr-Commit-Position: refs/heads/master@{#369472}
* Change base::NativeEvent to XEvent in DeviceDataManagerX11.kylechar2016-01-131-3/+3
| | | | | | | | | | | | | | | | | | | | DeviceDataManagerX11 uses base::NativeEvent and assumes it is always an XEvent*. The code will only compile if this is true. This updates all functions that take base::NativeEvent to take XEvent instead. This will allow DeviceDataManagerX11 to be reused with ozone running on X11 where base::NativeEvent is a void* instead. This also changes const XEvent* to const XEvent& to comply with style guide. All methods assume a non-null XEvent* currently. Update method calls appropriately elsewhere in the code. Also changes CHECK(a <= b) to CHECK_GE(a, b) due to linter complaining. BUG=361137 Review URL: https://codereview.chromium.org/1586673002 Cr-Commit-Position: refs/heads/master@{#369209}
* Associate UDL input devices with their corresponding displays.jdufault2016-01-122-107/+299
| | | | | | | | | | | | | | | This CL completely rewrites display/touchscreen association code. There were a lot of hidden/tricky gotchas and the rewrite calls them out. The association logic is also significantly easier to extend. UDL assocation logic is added using the path to the input/display devices. The code that exposes the device paths is in two dependent CLs. BUG=543209 Review URL: https://codereview.chromium.org/1508203002 Cr-Commit-Position: refs/heads/master@{#368773}
* Propagate the path of the graphics device.jdufault2016-01-122-0/+7
| | | | | | | | | | | The touchscreen/display association logic will use the device path as a hueristic to properly pair UDL displays. BUG=543209 Review URL: https://codereview.chromium.org/1510893003 Cr-Commit-Position: refs/heads/master@{#368757}
* Lazily allocate CastConfigDelegate to fix profile construction race.jdufault2016-01-122-2/+2
| | | | | | | | | | | | | Checking if the MediaRouter is enabled requires a Profile instance. This check happens early in the initialization cycle, before the Profile has been constructed. Instead, lazily construct the CastConfigDelegate instance so we don't accidentally create two profiles at the same time. BUG=574246 Review URL: https://codereview.chromium.org/1562923002 Cr-Commit-Position: refs/heads/master@{#368739}
* Updating XTBs based on .GRDs from branch masterKrishna Govind2016-01-113-7/+7
| | | | Cr-Commit-Position: refs/heads/master@{#368634}
* Clean up event flags a bit:pkasting2016-01-083-10/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | * Reorder to group related items together. Add group comments. * Rename {NUM,CAPS,SCROLL}_LOCK_DOWN to ..._ON, in hopes of avoiding confusion as to whether the event is about one of these keys actually being pressed down versus just conveying the current state of the various locks. * Rename EF_EXTENDED to EF_IS_EXTENDED_KEY in hopes of greater clarity. Move it to the KeyEvent-specific enum since it's non-sensical for non-KeyEvents. * Expose MouseEvent::button_flags() since a couple callers outside the class wanted it. * Move Event::IsRepeat() to KeyEvent (to match the enum placement) and rename it unix_hacker()-style. (There are a ton of other functions in event.h that should be named that way, but there's only so much drudgery I can stand.) * Add some missing bits: missing static_asserts in the Mojo code that didn't check all enum values were equal, a missing SCROLL_LOCK_ON check in the exo code that would have no functional effect but looked unduly suspicious. * Attempt to reorder code to either check/use these enum values in the same order they're declared, or, in cases like code mapping GTK enum values to these values, in the order of the GTK enum values (and similar). BUG=none TEST=none Review URL: https://codereview.chromium.org/1559163002 Cr-Commit-Position: refs/heads/master@{#368456}
* Don't center screen magnification on empty focus rectangleglevin2016-01-082-0/+31
| | | | | | | | | | | BUG=574951 TEST=On OOBE or login screen, turn on screen magnifier, then click on blank parts of page. Magnification shouldn't move to upper left of screen. Review URL: https://codereview.chromium.org/1564973002 Cr-Commit-Position: refs/heads/master@{#368443}
* Remove Pass on CrOS.dcheng2016-01-071-1/+3
| | | | | | | | | | | | | Pass() is a legacy of the original C++03 move emulation implementation. New code should use std::move from <utility>. BUG=557422 R=danakj@chromium.org,sandersd@chromium.org,spang@chromium.org TBR=reveman@chromium.org,sky@chromium.org Review URL: https://codereview.chromium.org/1553263002 Cr-Commit-Position: refs/heads/master@{#368009}
* Vectorize CrOS window control icons.estade2016-01-0736-54/+58
| | | | | | | | BUG=569067 Review URL: https://codereview.chromium.org/1566563002 Cr-Commit-Position: refs/heads/master@{#367969}
* Do not overwrite the valid layout data with old invalid data.oshima2016-01-062-0/+25
| | | | | | | | | | | | A regression/bug can save the invalid data. When restoring the layout data, it should not overwrite the valid data. We still need to be able to read it to restore the state when regression is fixed. BUG=540606 TEST=covered by DisplayManagerTest.RejectInvalidLayoutData Review URL: https://codereview.chromium.org/1567443002 Cr-Commit-Position: refs/heads/master@{#367884}
* Remove unused WindowWatcher pointer from Ash [Shell|Shelf]Delegate.msw2016-01-055-40/+7
| | | | | | | | | | | | Other minor cleanup; no functionality changes. BUG=NONE TEST=Ash compliles and works as expected. R=sky@chromium.org Review URL: https://codereview.chromium.org/1555403002 Cr-Commit-Position: refs/heads/master@{#367644}
* Do not use assets for Ash window control button backgroundstdanderson2016-01-0516-157/+159
| | | | | | | | | | | | | | | | | | Paints the hovered/pressed background colors of the Ash frame caption buttons programmatically and deletes the now-obsolete asset files. Also introduces ash_layout_constants.cc in order to parameterize the constants which have different values for material design; this is used to specify the caption button dimensions which were previously given by assets. BUG=569062 TEST=ash_unittests.* Review URL: https://codereview.chromium.org/1505223004 Cr-Commit-Position: refs/heads/master@{#367566}
* GN: Add assert that ash/BUILD.gn referenced only on supported platformsagrieve2016-01-051-0/+2
| | | | | | | | | | This helps to ensure that targets not supported on a platform are not included in the "all" target. BUG=None Review URL: https://codereview.chromium.org/1542633006 Cr-Commit-Position: refs/heads/master@{#367472}
* Use more descriptive strings for virtual displays to assist translators.jdufault2016-01-051-2/+2
| | | | | | | | BUG=b/26350430 Review URL: https://codereview.chromium.org/1558043002 Cr-Commit-Position: refs/heads/master@{#367440}
* Updating XTBs based on .GRDs from branch masterKrishna Govind2016-01-0452-0/+364
| | | | Cr-Commit-Position: refs/heads/master@{#367332}
* Convert Pass()→std::move() in //ash (CrOS edition)dcheng2015-12-3123-42/+79
| | | | | | | | | | | (╯^□^)╯︵ ❄☃❄ BUG=557422 R=derat@chromium.org Review URL: https://codereview.chromium.org/1551133002 Cr-Commit-Position: refs/heads/master@{#367223}
* CustomButton cleanup: make protected members private, create accessorsestade2015-12-292-8/+10
| | | | | | | | | | | Also delete some old file that's not in use. BUG=none TBR=erg@chromium.org Review URL: https://codereview.chromium.org/1534303002 Cr-Commit-Position: refs/heads/master@{#367093}
* Convert Pass()→std::move() in //ashdcheng2015-12-2746-126/+171
| | | | | | | | | | | | ❆(੭ु ◜◡‾)੭ु⁾☃❆ BUG=557422 R=avi@chromium.org TBR=oshima@chromium.org Review URL: https://codereview.chromium.org/1547223002 Cr-Commit-Position: refs/heads/master@{#366940}
* Add a GestureConsumer callback to dispatching gesture eventsdtapuska2015-12-222-2/+0
| | | | | | | | | | | | | | and to get the targeted gesture event. The touch_id_target_for_gestures table is no longer required because the original targeted window will be available in the callbacks. BUG=568183 Review URL: https://codereview.chromium.org/1525233002 Cr-Commit-Position: refs/heads/master@{#366638}
* Updating XTBs based on .GRDs from branch masterKrishna Govind2015-12-2252-4/+472
| | | | Cr-Commit-Position: refs/heads/master@{#366619}
* Break ash->content DEPS; keep in ash_with_content.msw2015-12-222-8/+0
| | | | | | | | | | | | | | | | | | Removes unnecessary GN/GYP dependency specifications. (these aren't needed to build the ash target, etc.) Keep entries as ash_with_content dependencies. Yields "No non-data paths found between these two targets" for both: $ gn path out/Debug //ash:ash //content $ gn path out/Debug //ash:ash //third_party/mojo/src/mojo/edk/embedder BUG=NONE TEST=Ash (and dependent targets) still build as intended. R=derat@chromium.org Review URL: https://codereview.chromium.org/1540963003 Cr-Commit-Position: refs/heads/master@{#366495}
* Switch to standard integer types in ash/.avi2015-12-20351-431/+661
| | | | | | | | | BUG=138542 TBR=sky@chromium.org Review URL: https://codereview.chromium.org/1540753002 Cr-Commit-Position: refs/heads/master@{#366304}
* Fix volume slider to emit value changed events and do not focus system tray ↵dtseng2015-12-162-6/+6
| | | | | | | | | | | | | | item for transient views. SystemTray::ShowItems gets called by SystemTrayItem::PopupDetailedView. The former has some logic to detect when ChromeVox is on. If so, it tries to focus the first item. This is problematic because PopupDetailedView is transient and disappears. The general bug is that ChromeVox gets the focus event and flips itself to compat mode. However, true focus still lives in the web content. BUG=559339 Review URL: https://codereview.chromium.org/1523953004 Cr-Commit-Position: refs/heads/master@{#365565}
* Show a notification when dual-role devices are connected.michaelpg2015-12-1511-2/+358
| | | | | | | | | | | | | | | | | | | | The notification informs the user whether a connected dual-role device is being used as a power source, or which dual-role devices this device is charging. It has minimal priority (doesn't toast). It opens the power settings when clicked. When the device is using a dedicated charger, the notification doesn't appear (because we don't override dedicated chargers). 1-pager: https://docs.google.com/document/d/1UPYK_VIhtcBTZgyjfe4ogszqtOdVqmSOXxUTQ28GpJQ/edit# To test, use chrome://device-emulator in Debug builds. BUG=547260 Review URL: https://codereview.chromium.org/1515493004 Cr-Commit-Position: refs/heads/master@{#365345}
* Prevent DragImageView from resizing during paintenne2015-12-122-18/+42
| | | | | | | | | | | | | | The compositor is trying to enforce more strict timings on when resizing layers is allowed vs painting, and this class violates that. This patch moves the resizing into layout instead of paint. See also: https://codereview.chromium.org/1514743002/ R=mfomitchev@chromium.org Review URL: https://codereview.chromium.org/1517873003 Cr-Commit-Position: refs/heads/master@{#364855}
* Disable startup sound for telemetry tests on cros.achuith2015-12-114-2/+13
| | | | | | | | BUG=413622 Review URL: https://codereview.chromium.org/1507683012 Cr-Commit-Position: refs/heads/master@{#364741}
* Move USB Type-C device descriptions to Ashmichaelpg2015-12-113-36/+51
| | | | | | | | | | | | | This moves the strings to Ash so they can be used for notifications. This also has the advantage of making dependents more flexible for when we move from using descriptions based solely on the port, to more useful descriptions based on the device name and whatnot. BUG=547260 Review URL: https://codereview.chromium.org/1509673010 Cr-Commit-Position: refs/heads/master@{#364733}
* Make sure Search+<key(s)> are un-interceptable.afakhry2015-12-102-0/+43
| | | | | | | | | | | | On ChromeOS, accelerators using the Search key as a modifier are considered system accelerators, and they cannot be intercepted by apps or sites. R=oshima@chromium.org BUG=567294 Review URL: https://codereview.chromium.org/1502993004 Cr-Commit-Position: refs/heads/master@{#364533}
* Add support for virtual displaysrobert.bradford2015-12-102-4/+15
| | | | | | | | | | | | | | This CL allows the programmatic additional and removal of a virtual display for the purposes of both multiple display testing and to allow extending the the workspace for capture with e.g. Chrome Cast. BUG=425060 TEST=New tests added to DisplayConfiguratorTest. Interactive testing when combined with CL to enable controls for virtual display in display settings. Review URL: https://codereview.chromium.org/1456623002 Cr-Commit-Position: refs/heads/master@{#364332}
* Make EventGenerator to support input method.azurewei2015-12-091-0/+6
| | | | | | | | | | | | 1) EventGenerator makes the decision when to send the key-event through IME or should be handled locally. 2) Use EventGeneratorDelegate to send the key-event to IME. BUG=512315 Test=Verified bug not repro on local build. Review URL: https://codereview.chromium.org/1328093002 Cr-Commit-Position: refs/heads/master@{#363936}
* Fix getting stuck with a modal background when a tab produces a modal dialog ↵afakhry2015-12-082-4/+8
| | | | | | | | | | | | | | | | | | | | while drag is in progress When a tab produces a modal dialog while it's being dragged (out into its own browser frame), the newly created dialog will cause a capture loss, resulting in reverting the drag. Reverting the drag will then destroy the browser frame that owns the modal dialog, and the end result will be no modal dialog, and the modal background is still there. We simply complete the drag as a result of capture change. This is the behavior in desktop linux. BUG=558201 TEST=ash_unittests --gtest_filter=ToplevelWindowEventHandlerTest.GestureDragCaptureLoss Review URL: https://codereview.chromium.org/1492713002 Cr-Commit-Position: refs/heads/master@{#363808}
* Replace multi-value keyboard flags with single value flag types.flackr2015-12-071-2/+2
| | | | | | | | | | | | Use the new disable value flags to replace multi-value keyboard flags. This has the property that the multi-value flag had (can change without a string update) and makes it clear to the user which value is default. BUG=245319 Review URL: https://codereview.chromium.org/1488303005 Cr-Commit-Position: refs/heads/master@{#363484}
* Don't remember fullscreen bounds for auto rearrangeoshima2015-12-064-15/+51
| | | | | | | | | | BUG=550428 TEST=WindowPositionerTest.IgnoreFullscreenInAutoRearrange R=derat@chromium.org Review URL: https://codereview.chromium.org/1493913009 Cr-Commit-Position: refs/heads/master@{#363357}
* Don't change maximized window size if the desktop is covered by fullscreen ↵oshima2015-12-043-5/+44
| | | | | | | | | | | window. BUG=504299 TEST=WindowStateTest.DoNotResizeMaximizedWindowInFullscreen Review URL: https://codereview.chromium.org/1495783006 Cr-Commit-Position: refs/heads/master@{#363264}
* Use WindowTracker when resizing root window as it may delete other window in ↵oshima2015-12-034-9/+58
| | | | | | | | | | | | | | unit tests. This so far can happen in the test. The CL https://codereview.chromium.org/1483083003/ changes the timing of animation completion, which led to this state. BUG=None TEST=RootWindowLayoutManagerTest.DeleteChildDuringResize R=sky@chromium.org Review URL: https://codereview.chromium.org/1484383003 Cr-Commit-Position: refs/heads/master@{#363004}
* Improve checking for the status of touch eventsafakhry2015-12-011-1/+3
| | | | | | | | | | | | | | | | This CL removes the CrOS-specific touch screens master switch, and moves the global status of the touch screens to the DeviceDataManager. The touch screens availability will be one of three states NONE, ENABLED, or DISABLED. This CL fixes the use of the #touch-events flag as intended -- to forceand simulate the presence or lack of touch screen devices. R=oshima@chromium.org, sadrul@chromium.org BUG=555390,560892 Review URL: https://codereview.chromium.org/1458343002 Cr-Commit-Position: refs/heads/master@{#362547}
* Updating XTBs based on .GRDs from branch masterKrishna Govind2015-11-3052-1/+570
| | | | Cr-Commit-Position: refs/heads/master@{#362231}