title: Getting screen size in a class without buildcontext in Flutter
body: <p>I am trying to get screen size in flutter inside a custom class which donot have build method in it. How can i get screen size without using  buildcontext class?</p>
  
  <p>The following code : </p>
  
  <pre><code>class ShapesPainter extends CustomPainter {
    @override
    void paint(Canvas canvas, Size size) {
  
      BuildContext context;
      double width = MediaQuery.of(context).size.width;
      double height = MediaQuery.of(context).size.height;
      final paint = Paint();
  
      paint.color = Colors.deepOrange;
  
      var center = Offset(size.width / 2, size.height / 2);
  
      print(height);
      print(width);
  
      Rect rect = Rect.fromLTWH(0.0, 0.0, width, height);
      canvas.drawRect(rect, paint);
    }
  
    @override
    bool shouldRepaint(CustomPainter oldDelegate) {
      return false;
    }
  }
  </code></pre>
  
  <p>gives following error : </p>
  
  <blockquote>
    <p>The following assertion was thrown during paint(): 
    'package:flutter/src/widgets/media_query.dart': Failed assertion: line
    689 pos 12: 'context != null': is not true.</p>
  </blockquote>