Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1443)

Issue 218017: GTK: First cut at tab dragging automation.... (Closed)

Created:
11 years, 3 months ago by Evan Stade
Modified:
9 years, 6 months ago
Reviewers:
tony, sky, Paweł Hajdan Jr.
CC:
chromium-reviews_googlegroups.com, Ben Goodger (Google), tim (not reviewing)
Visibility:
Public.

Description

GTK: First cut at tab dragging automation. Also make tab dragging slightly more robust. I tried really hard to avoid hackiness, but after many hours of wrestling with gtk and X, this is the best I could do. The main point of contention is that GTK (and our tab dragging code in particular) seems to be able to get X into a state where gdk_display_warp_pointer() doesn't send back any events (although it does move the X pointer). I tried to fix our code directly, but decided it was GTK that was broken. So I faked some mouse motion events to prod the tab dragging into working. This approach does not appear to be flaky, and is actually closer to the event stream that occurs when a user drags a tab than the obvious approach would be. (The tests themselves are somewhat flaky, but only due to WaitForURLDisplayedForTab() flakiness, which is a separate issue I'll look at later. The tests aren't on any buildbot for now so I'd like to leave them enabled.) BUG=22182 TEST=--gtest_filter=AutomatedUITest.Drag* Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=27166

Patch Set 1 #

Total comments: 12

Patch Set 2 : comments #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+177 lines, -32 lines) Patch
M chrome/browser/automation/automation_provider_gtk.cc View 1 2 chunks +115 lines, -3 lines 1 comment Download
M chrome/browser/automation/ui_controls_linux.cc View 1 5 chunks +42 lines, -8 lines 0 comments Download
M chrome/browser/gtk/tabs/tab_gtk.cc View 1 chunk +14 lines, -11 lines 0 comments Download
M chrome/test/automated_ui_tests/automated_ui_test_base.cc View 1 chunk +4 lines, -2 lines 0 comments Download
M chrome/test/automated_ui_tests/automated_ui_test_interactive_test.cc View 1 3 chunks +2 lines, -8 lines 0 comments Download

Messages

Total messages: 6 (0 generated)
Evan Stade
11 years, 3 months ago (2009-09-24 04:28:19 UTC) #1
Paweł Hajdan Jr.
Drive-by. http://codereview.chromium.org/218017/diff/1/4 File chrome/browser/automation/automation_provider_gtk.cc (right): http://codereview.chromium.org/218017/diff/1/4#newcode112 Line 112: DCHECK(reply_message_ != NULL); Can this DCHECK be ...
11 years, 3 months ago (2009-09-24 15:38:11 UTC) #2
sky
LGTM with the following style nits fixed http://codereview.chromium.org/218017/diff/1/4 File chrome/browser/automation/automation_provider_gtk.cc (right): http://codereview.chromium.org/218017/diff/1/4#newcode108 Line 108: : ...
11 years, 3 months ago (2009-09-24 16:49:13 UTC) #3
Evan Stade
http://codereview.chromium.org/218017/diff/1/4 File chrome/browser/automation/automation_provider_gtk.cc (right): http://codereview.chromium.org/218017/diff/1/4#newcode108 Line 108: : provider_(provider), reply_message_(reply_message) {} On 2009/09/24 16:49:13, sky ...
11 years, 3 months ago (2009-09-24 18:02:27 UTC) #4
Paweł Hajdan Jr.
http://codereview.chromium.org/218017/diff/1002/1005 File chrome/browser/automation/automation_provider_gtk.cc (right): http://codereview.chromium.org/218017/diff/1002/1005#newcode111 Line 111: DCHECK(provider); very-small-nit: Please be consistent and check things ...
11 years, 3 months ago (2009-09-24 18:04:58 UTC) #5
sky
11 years, 3 months ago (2009-09-24 18:19:02 UTC) #6
> http://codereview.chromium.org/218017/diff/1/4#newcode172
> Line 172: if (window && (drag_path.size() > 1)) {
> On 2009/09/24 16:49:13, sky wrote:
>>
>> !drag_page.empty()
>
> drag_path.size() > 1, not drag_path.size() > 0

My mistake.
Sorry,

  -Scott

Powered by Google App Engine
This is Rietveld 408576698