Issue 1:
Internal: b/144873050

Hey, looks like there is a bug preventing gesture detection on right side of the widget inside page view with only one element and viewport fraction smaller than 1.0.

This is how my widget tree looks like:

column
- page view
- gesture detector
- green container
- gesture detector
- blue container
- page view
- gesture detector
- red container

Top gesture detectors (green&blue widgets) work fine, I can click anywhere and I can see debug logs in console.

Bottom gesture detector (red widget) works fine only for left half of the widget. When I click on the right half then onTap callback is not fired. Looks like something is preventing gesture detector from getting input.

flutter doctor output:

[✓] Flutter (Channel beta, v0.9.4, on Linux, locale en_US.UTF-8)
[✓] Android toolchain - develop for Android devices (Android SDK 27.0.3)
[✓] Android Studio (version 3.1)
[!] IntelliJ IDEA Community Edition (version 2018.2)
✗ Flutter plugin not installed; this adds Flutter specific functionality.
✗ Dart plugin not installed; this adds Dart specific functionality.
[✓] Connected devices (1 available)

Source code to reproduce bug:

import 'package:flutter/material.dart';

void main() => runApp(new MyApp());

class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new MaterialApp(
title: 'Flutter Demo',
theme: new ThemeData(
primarySwatch: Colors.blue,
),
home: Column(children: <Widget>[
Expanded(
child: ColorPages(
colors: <Color>[
Colors.green,
Colors.blue,
],
),
),
Expanded(
child: ColorPages(
colors: <Color>[
Colors.red,
],
),
),
]),
);
}
}

class ColorPages extends StatefulWidget {
final List<Color> colors;

const ColorPages({Key key, this.colors}) : super(key: key);

@override
ColorPagesState createState() {
return new ColorPagesState();
}
}

class ColorPagesState extends State<ColorPages> {
PageController _pageController;

@override
void initState() {
super.initState();

_pageController = new PageController(
viewportFraction: 0.5,
);
}

@override
Widget build(BuildContext context) {
return PageView.builder(
controller: _pageController,
itemBuilder: (context, index) {
return GestureDetector(
onTap: () {
print(DateTime.now().toIso8601String() + " " + widget.colors[index].toString());
},
child: Container(
color: widget.colors[index],
),
);
},
itemCount: widget.colors.length,
);
}
}

Issue 2:
InkWell will not work if _file.length is 1;

but it will work if length is greater than or equal to 2;

Container(
height: 200,
child: PageView.builder(
itemCount: _file.length,
controller: PageController(viewportFraction: 0.4),
itemBuilder: (context, index) {
return Card(
child: InkWell(
onTap: () => _picImage(),
child: Center(
child: Icon(
Icons.add,
size: 40,
),
),
),
);
},
),
)

flutter doctor -v

[√] Flutter (Channel beta, v1.0.0, on Microsoft Windows [Version 10.0.17758.1], locale en-AS)
• Flutter version 1.0.0 at C:\flutter
• Framework revision 5391447fae (2 months ago), 2018-11-29 19:41:26 -0800
• Engine revision 7375a0f414
• Dart version 2.1.0 (build 2.1.0-dev.9.4 f9ebf21297)

[√] Android toolchain - develop for Android devices (Android SDK 28.0.3)
• Android SDK at C:\Users\Suraj\AppData\Local\Android\sdk
• Android NDK location not configured (optional; useful for native profiling support)
• Platform android-28, build-tools 28.0.3
• Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
• Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1248-b01)
• All Android licenses accepted.

[√] Android Studio (version 3.3)
• Android Studio at C:\Program Files\Android\Android Studio
• Flutter plugin version 32.0.1
• Dart plugin version 182.5215
• Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1248-b01)

[!] IntelliJ IDEA Ultimate Edition (version 2018.2)
• IntelliJ at C:\Program Files\JetBrains\IntelliJ IDEA 2018.2.3
X Flutter plugin not installed; this adds Flutter specific functionality.
X Dart plugin not installed; this adds Dart specific functionality.
• For information about installing plugins, see
https://flutter.io/intellij-setup/#installing-the-plugins

PS: Using Android Studio Not Intellij for Flutter