title: Adding a textfield widget to Stack results in RenderFlex children have non-zero flex but incoming width constraints are unbounded
body: <p>I'm trying to create the following design
  <a href="https://i.stack.imgur.com/0d4H6.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/0d4H6.png" alt="enter image description here" /></a></p>
  <p>Nothing complex. I'd be done in 30 minutes if it was just plain HTML and CSS but its not and Flutter is driving me nuts. Below is the code</p>
  <pre><code> Widget build(BuildContext context) {   
          return 
           Stack(
            children: [
              Row(
                children: 
                [
                  Expanded(
                  child:  TextField(
                    maxLength: 140,
                    decoration:  InputDecoration(
                      filled: true,
                      contentPadding: EdgeInsets.only(left: 20, top: 5, right: 60, bottom: 5),
                      hintStyle: TextStyle(
                        color: Colors.grey[800]
                      ),
                      hintText: &quot;Write something here&quot;,
                      fillColor: Colors.white,
                      focusedBorder:  OutlineInputBorder(
                        borderSide: const BorderSide(color: Colors.transparent, width: 25.0),
                        borderRadius: BorderRadius.all(Radius.circular(30)),
                      ),
                      enabledBorder: OutlineInputBorder(
                        borderSide: const BorderSide(color: Colors.transparent, width: 25.0),
                        borderRadius: BorderRadius.all(Radius.circular(30)),
                      ),
                    ),
                  )
              )],
            ),
             
              Positioned(
                right: 0,
                top: 0,
                child: Center(
                  child:   
                    _selectedIcon == null ?  ElevatedButton(
                      style: ButtonStyle(
                        elevation: MaterialStateProperty.all&lt;double&gt;(0), 
                        backgroundColor: MaterialStateProperty.all&lt;Color&gt;(Colors.transparent)
                      ),          
                      onPressed: () async {
                        final IconData? result = await customiconpickerFuture( context: context, defalutIcon: _selectedIcon);
                        setState(() {
                          _selectedIcon = result;
                        });
                      },
                        child: _selectedIcon == null ? const Icon(
                          IconData(0xe907, fontFamily: 'icomoon'), 
                          color: Colors.black, 
                          size: 40,
                          ) : Icon(_selectedIcon,size: 70, color: Colors.black, ) 
                    )
                    : ElevatedButton(
                      style: ButtonStyle(
                        elevation: MaterialStateProperty.all&lt;double&gt;(0), 
                        backgroundColor: MaterialStateProperty.all&lt;Color&gt;(Colors.transparent)
                      ),          
                      onPressed: () async {
                        final IconData? result = await customiconpickerFuture( context: context, defalutIcon: _selectedIcon);
                        setState(() {
                          _selectedIcon = result;
                        });
                      },
                        child: Icon(_selectedIcon,size: 40, color: Colors.black, ) 
                    )
                   
                    // this button is used to show the icon picker
                   
                
                ),
              ) 
            ],
          );
              
      }
  </code></pre>
  <p>I have an idea what the problem is. There are no constraints being passed to the Expand widget therefore its colliding with the Row widget. I've tried various other ways but none is working. Any ideas?</p>