Skip to content

Instantly share code, notes, and snippets.

View rohan20's full-sized avatar

Rohan Taneja rohan20

View GitHub Profile
@rohan20
rohan20 / app_translations.dart
Last active September 3, 2018 13:51
flutter-localizations
import 'dart:async';
import 'dart:convert';
import 'dart:ui';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart' show rootBundle;
class AppTranslations {
Locale locale;
static Map<dynamic, dynamic> _localisedValues;
@rohan20
rohan20 / localization_en.json
Last active September 3, 2018 13:49
flutter-localization
{
"tab_home": "Home",
"tab_categories": "Categories",
"tab_profile": "Profile",
"tab_notifications": "Notifications",
"tab_bag": "Bag",
"title_select_language": "Select Language"
}
@rohan20
rohan20 / home_page.dart
Last active September 3, 2018 11:42
flutter-localization
actions: <Widget>[
IconButton(
icon: Icon(
Icons.settings,
color: Colors.black,
),
onPressed: () {
Navigator.of(context).push(
MaterialPageRoute(
builder: (context) {
@rohan20
rohan20 / language_selector_page.dart
Last active September 3, 2018 13:41
flutter-localization
import 'package:flutter/material.dart';
class LanguageSelectorPage extends StatefulWidget {
@override
_LanguageSelectorPageState createState() => _LanguageSelectorPageState();
}
class _LanguageSelectorPageState extends State<LanguageSelectorPage> {
final List<String> languagesList = ["English", "Spanish"];
@rohan20
rohan20 / main.dart
Created August 14, 2018 10:08
Flutter Facebook login
Container(
height: 200.0,
width: 200.0,
decoration: BoxDecoration(
shape: BoxShape.circle,
image: DecorationImage(
fit: BoxFit.fill,
image: NetworkImage(
profileData['picture']['data']['url'],
),
@rohan20
rohan20 / main.dart
Last active August 14, 2018 09:52
Flutter Facebook login
case FacebookLoginStatus.loggedIn:
print("LoggedIn");
var graphResponse = await http.get(
'https://graph.facebook.com/v2.12/me?fields=name,first_name,last_name,email&access_token=${facebookLoginResult
.accessToken.token}');
var profile = json.decode(graphResponse.body);
print(profile.toString());
@rohan20
rohan20 / main.dart
Created August 14, 2018 08:46
Flutter Facebook login
bool isLoggedIn = false;
void onLoginStatusChanged(bool isLoggedIn) {
setState(() {
this.isLoggedIn = isLoggedIn;
});
}
@override
Widget build(BuildContext context) {
@rohan20
rohan20 / main.dart
Created August 14, 2018 08:44
Flutter Facebook login
void initiateFacebookLogin() async {
var facebookLogin = FacebookLogin();
var facebookLoginResult =
await facebookLogin.logInWithReadPermissions(['email']);
switch (facebookLoginResult.status) {
case FacebookLoginStatus.error:
print("Error");
onLoginStatusChanged(false);
break;
case FacebookLoginStatus.cancelledByUser:
@rohan20
rohan20 / main.dart
Created August 14, 2018 08:43
Flutter Facebook login
import 'package:flutter_facebook_login/flutter_facebook_login.dart';
@rohan20
rohan20 / product_scoped_model.dart
Created August 8, 2018 06:45
E-Commerce app using Flutter - Part 4: Scoped Model
Future parseProductsFromResponse(int categoryId, int pageIndex) async {
if (pageIndex == 1) {
_isLoading = true;
}
notifyListeners();
currentProductCount = 0;
var dataFromResponse = await _getProductsByCategory(categoryId, pageIndex);