X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2FIntInternetApp.cpp;h=be34a5b14163ee0a27ba89e757e5a0b1d35cf02b;hb=refs%2Ftags%2Fsubmit%2Ftizen_2.2%2F20130716.172749;hp=0798b46c68b93c188c2f4259b6f43ff0f700ab0d;hpb=5ea885ff7baecc41e6a0318f152603b52d410f30;p=apps%2Fosp%2FInternet.git diff --git a/src/IntInternetApp.cpp b/src/IntInternetApp.cpp index 0798b46..be34a5b 100644 --- a/src/IntInternetApp.cpp +++ b/src/IntInternetApp.cpp @@ -40,10 +40,15 @@ using namespace Tizen::Ui; using namespace Tizen::Ui::Controls; using namespace Tizen::Ui::Scenes; +static const wchar_t* APPCONTROL_SELECT_KEY_IMAGE = L"http://tizen.org/appcontrol/data/image/crop_mode"; +static const wchar_t* APPCONTROL_SELECT_VALUE_IMAGE = L"fit_to_screen"; +static const wchar_t* APPCONTROL_PROVIDER_ID_IMAGE_VIEWER = L"tizen.imageviewer"; +static const wchar_t* APPCONTROL_OPERATION_ID_IMAGE_VIEWER = L"http://tizen.org/appcontrol/operation/view"; +const int MIN_MEMORY_NEEDED = 1048576; + InternetApp::InternetApp(void) -: __pMultiWindowManager(NULL),__pNewWindowInfo(null) +: __pMultiWindowManager(NULL),__pNewWindowInfo(null),pSceneManagementFrame(null) { - } InternetApp::~InternetApp(void) @@ -100,6 +105,20 @@ InternetApp::OnAppInitialized(void) { result r = E_SUCCESS; + long long mem = GetAvailableMemory(); + AppLogDebug("%lld",mem); + if(mem < MIN_MEMORY_NEEDED) + { + MessageBox LowMemory; + String msg = L""; + LowMemory.Construct(CommonUtil::GetString(L"IDS_LOW_MEMORY_MSG_TITLE"), CommonUtil::GetString(L"IDS_LOW_MEMORY_MSG"), MSGBOX_STYLE_NONE,1000); + int modalResult = 0; + // Calls ShowAndWait() : Draws and Shows itself and processes events + LowMemory.ShowAndWait(modalResult); + + return false; + + } String title1 = L"URL1"; String title2 = L"URL2"; String folder1 = L"Folder 1"; @@ -116,18 +135,22 @@ InternetApp::OnAppInitialized(void) __pMultiWindowManager = MultipleWindowPresentationModel::GetInstance(); AppLogDebug("window count %d",__pMultiWindowManager->GetAllWindowArrayList()->GetCount()); + + + // Create a Frame + pSceneManagementFrame = new(std::nothrow) MainFrame(); + pSceneManagementFrame->Construct(); + pSceneManagementFrame->SetName(L"SceneManagement"); + AddFrame(*pSceneManagementFrame); + pSceneManagementFrame->Show(); // Goto the first scene. + SceneManager* pSceneManager = SceneManager::GetInstance(); if (pSceneManager == null) { AppLogDebug("pSceneManager is null returning"); return false; } - // Create a Frame - MainFrame* pSceneManagementFrame = new(std::nothrow) MainFrame(); - pSceneManagementFrame->Construct(); - pSceneManagementFrame->SetName(L"SceneManagement"); - AddFrame(*pSceneManagementFrame); String homePage = SettingPresentationModel::GetInstance()->GetHomepage(); if (homePage == (L"IDS_BR_BODY_MOST_VISITED_SITES") || homePage == (L"IDS_BR_BODY_BLANK_PAGE")) @@ -143,7 +166,7 @@ InternetApp::OnAppInitialized(void) if (__pNewWindowInfo == null)//if the application is launched normally { - __pNewWindowInfo = MultipleWindowPresentationModel::GetInstance()->CreateNewMainViewScene(homePage); + __pNewWindowInfo = MultipleWindowPresentationModel::GetInstance()->CreateNewMainViewSceneN(homePage); } if (__pNewWindowInfo == null) @@ -195,8 +218,26 @@ InternetApp::OnAppTerminating(AppRegistry& appRegistry, bool forcedTermination) void InternetApp::OnForeground(void) { + AppLog("InternetApp::OnForeground"); + + AppRegistry* pAppRegistry = App::GetInstance()->GetAppRegistry(); + String sliderKey("SliderValue"); + + int sliderValue = 0; + + result r = pAppRegistry->Get(sliderKey, sliderValue); + r = PowerManager::SetScreenBrightness(sliderValue); +// r = PowerManager::RestoreScreenBrightness(); + AppLog("Settingscreenbrightness to %d result %s",sliderValue , GetErrorMessage(r)); + + + Form* pCurrentForm = (SceneManager::GetInstance()->GetCurrentScene()->GetForm()); + if (pCurrentForm) + { + pCurrentForm->SendUserEvent(FORE_GROUND_APP_EVENT, NULL); + } } void @@ -242,7 +283,7 @@ void InternetApp::OnSettingChanged(Tizen::Base::String& key) { AppLog("InternetApp::OnSettingChanged: %ls", key.GetPointer()); - if (key == L"http://tizen.org/setting/locale.language") + if (key == L"http://tizen.org/setting/locale.language" || key == L"http://tizen.org/setting/font.size") { Terminate(); } @@ -283,17 +324,19 @@ InternetApp::OnAppControlRequestReceived(RequestId reqId, const String &operatio urlData = *pUrl; } AppLog("URL received %ls", urlData.GetPointer()); + if(pSceneManagementFrame) + pSceneManagementFrame->Show(); if (__pNewWindowInfo == null) { - __pNewWindowInfo = MultipleWindowPresentationModel::GetInstance()->CreateNewMainViewScene(urlData, true); + __pNewWindowInfo = MultipleWindowPresentationModel::GetInstance()->CreateNewMainViewSceneN(urlData, true); } if (__pNewWindowInfo == null) { if (MultipleWindowPresentationModel::GetInstance()->GetAllWindowArrayList()->GetCount() >= 9) { - String strTitle = L"Maximum Limit Reached"; - String strText = L"cannot open more than 9 windows"; + String strTitle = L"";//CommonUtil::GetString(L"IDS_COM_SK_MAX_LIMIT_REACHED"); + String strText = CommonUtil::GetString(L"IDS_BR_BODY_COULD_NOT_OPEN_NEW_WINDOW_BECAUSE_YOU_HAVE_ALREADY_OPENED_MAXIMUM_NUMBER"); ShowPopup(strTitle, strText); } return; @@ -325,7 +368,51 @@ InternetApp::OnAppControlRequestReceived(RequestId reqId, const String &operatio __pNewWindowInfo = null; } } + else if (operationId.CompareTo(L"http://tizen.org/appcontrol/operation/main") == 0) + { + if (pArgs) + { + const String* pVal = (String *) pArgs->GetValue(String(L"http://tizen.org/appcontrol/data/notification")); + if (pVal && pVal->GetLength() > 0) + { + HashMap extraData; + extraData.Construct(); + String typeKey = APPCONTROL_SELECT_KEY_IMAGE; + String typeVal = APPCONTROL_SELECT_VALUE_IMAGE; + extraData.Add(&typeKey, &typeVal); + + AppControl* pAc = AppManager::FindAppControlN(APPCONTROL_PROVIDER_ID_IMAGE_VIEWER, + APPCONTROL_OPERATION_ID_IMAGE_VIEWER); + if (pAc) + { + if (pAc->Start(pVal, null, null, null) == E_SUCCESS) + { + delete pAc; + } + } + } + } + } + AppLogDebug("ABC::Internet::OnAppControlRequestReceivedN Exit"); return; } + +long long +InternetApp::GetAvailableMemory(void) +{ + result r = E_SUCCESS; + + String key(L"http://tizen.org/runtime/storage.available.internal"); + long long allocatedMemory = 0; + + r = RuntimeInfo::GetValue(key, allocatedMemory); + TryCatch(r == E_SUCCESS, , "MyRuntimeInfo: Failed to get value"); + + return allocatedMemory; + + CATCH: + return 0; +} +