Repository: flutter
Issue: [mobile] spacebar cannot delete text  in RTL mode and cursor is misplaced
Labels: a: text input,framework,f: material design,a: internationalization,a: quality,P3,team-text-input,triaged-text-input

Hello, I am experiencing huge problem with space  and obscure text erasing in flutter mobile please watch this video [https://drive.google.com/file/d/16ScA6s0oZYVRGwGjnzFWYn9OzsCl-yq4/view](https://drive.google.com/file/d/16ScA6s0oZYVRGwGjnzFWYn9OzsCl-yq4/view) 



code:
```dart
import 'package:flutter/material.dart';
import 'package:flutter_localizations/flutter_localizations.dart';
import 'package:input_bugs/generated/i18n.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      localizationsDelegates: [
        S.delegate,
        GlobalMaterialLocalizations.delegate,
        GlobalWidgetsLocalizations.delegate,
        GlobalCupertinoLocalizations.delegate,
      ],
      supportedLocales: S.delegate.supportedLocales,
      localeListResolutionCallback:
      S.delegate.listResolution(fallback: const Locale('ar', '')),
      title: 'Flutter Demo',
      theme: ThemeData(
        // This is the theme of your application.
        //
        // Try running your application with "flutter run". You'll see the
        // application has a blue toolbar. Then, without quitting the app, try
        // changing the primarySwatch below to Colors.green and then invoke
        // "hot reload" (press "r" in the console where you ran "flutter run",
        // or simply save your changes to "hot reload" in a Flutter IDE).
        // Notice that the counter didn't reset back to zero; the application
        // is not restarted.
        primarySwatch: Colors.blue,
        // This makes the visual density adapt to the platform that you run
        // the app on. For desktop platforms, the controls will be smaller and
        // closer together (more dense) than on mobile platforms.
        visualDensity: VisualDensity.adaptivePlatformDensity,
      ),
      home: SignInWithEmail(),
    );
  }
}

class SignInWithEmail extends StatefulWidget {
  @override
  _SignInWithEmailState createState() => _SignInWithEmailState();
}

class _SignInWithEmailState extends State<SignInWithEmail> {
  String email, password;
  bool showPassword = false;
  @override
  Widget build(BuildContext context) {

    final _width = MediaQuery.of(context).size.width;
    return Scaffold(
      resizeToAvoidBottomInset: false,

      backgroundColor: Color.fromRGBO(250, 250, 250, 1.0),
      body: SingleChildScrollView(

          child: Center(
                child: Column(
                    children: [
                Padding(
                padding: EdgeInsets.symmetric(horizontal: _width * 0.07),
                child: Column(
                  mainAxisAlignment: MainAxisAlignment.center,
                  crossAxisAlignment: CrossAxisAlignment.stretch,
                  children: <Widget>[

                    const Text("تسجيل الدخول",
                        style: TextStyle(
                          fontFamily:
                          'HelveticaNeueLTArabic', //'HelveticaNeueLTArabic',
                          color: Color(0xff000000),
                          fontSize: 24,
                          fontWeight: FontWeight.w700,
                          fontStyle: FontStyle.normal,
                        )),
                    SizedBox(
                      height: 20.0,
                    ),
                    Container(
                      width: 311,
                      height: 48,
                      decoration: BoxDecoration(
                          color: Color(0xffffffff).withOpacity(0.0),
                          shape: BoxShape.rectangle,
                          border: Border.all(
                            color: Color.fromRGBO(147, 113, 71, 0.5),
                          )),
                      child: TextField(
                        maxLines: 2, //temp solution
                        minLines: 1, //temp solution
                        keyboardType: TextInputType.emailAddress,
                        onChanged: (value) => email = value,
                        decoration: InputDecoration(
                          border: InputBorder.none,
                          fillColor: Color.fromRGBO(255, 255, 255, .5),
                          filled: true,
                          hintText: 'البريد الالكتروني',
                          hintStyle: TextStyle(
                            fontFamily: 'HelveticaNeueLTArabic-Roman',
                            color: Color(0xff939393),
                            fontSize: 14,
                            fontWeight: FontWeight.w400,
                            fontStyle: FontStyle.normal,
                          ),
                        ),
                      ),
                    ),
                    const SizedBox(
                      height: 10.0,
                    ),
                    Container(
                      width: 311,
                      height: 48,
                      decoration: BoxDecoration(
                        color: Color(0xffffffff).withOpacity(0.0),
                        shape: BoxShape.rectangle,
                        border: Border.all(
                          color: Color.fromRGBO(147, 113, 71, 0.5),
                        ),
                      ),
                      child: TextField(
                        minLines: 1, //temp solution
                        obscureText: !showPassword,
                        onChanged: (value) => password = value,
                        decoration: InputDecoration(
                            border: InputBorder.none,
                            fillColor: Color.fromRGBO(255, 255, 255, .5),
                            filled: true,
                            hintText: 'كلمة المرور',
                            hintStyle: TextStyle(
                              fontFamily: 'HelveticaNeueLTArabic-Roman',
                              color: Color(0xff939393),
                              fontSize: 14,
                              fontWeight: FontWeight.w400,
                              fontStyle: FontStyle.normal,
                            ),
                            suffixIcon: IconButton(
                              color: !showPassword
                                  ? Colors.black45
                                  : Colors.blueAccent,
                              icon: Icon(Icons.visibility),
                              onPressed: () => setState(() {
                                showPassword = !showPassword;
                              }),
                            )),
                      ),
                    ),

                  ],
                ),
              )]))));
            }
  }


```

```
flutter doctor -v: 
[✓] Flutter (Channel stable, v1.17.5, on Mac OS X 10.15.6 19G73, locale en-US)
    • Flutter version 1.17.5 at /Users/addow/Developer/flutter
    • Framework revision 8af6b2f038 (5 weeks ago), 2020-06-30 12:53:55 -0700
    • Engine revision ee76268252
    • Dart version 2.8.4

 
[!] Android toolchain - develop for Android devices (Android SDK version 30.0.1)
    • Android SDK at /Users/addow/Library/Android/sdk
    • Platform android-30, build-tools 30.0.1
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)
    ! Some Android licenses not accepted.  To resolve this, run: flutter doctor --android-licenses

[✓] Xcode - develop for iOS and macOS (Xcode 11.6)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.6, Build version 11E708
    • CocoaPods version 1.9.3

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 47.1.2
    • Dart plugin version 193.7361
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)

[✓] VS Code (version 1.47.3)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.13.2

[✓] Connected device (1 available)
    • iPhone SE (2nd generation) • E50AFF28-BB84-48BE-931E-329079A30EBA • ios • com.apple.CoreSimulator.SimRuntime.iOS-13-6 (simulator)

! Doctor found issues in 1 category.
```

for some reason cant add the flutter run -verbose result I think because its huge.
any fix for this issue?