[UI] Splitted code to prepare mobile audio implementation

This commit is contained in:
emeric
2015-01-17 17:23:33 +01:00
parent fe5b010b84
commit e5a5e7dbc9
20 changed files with 232 additions and 66 deletions
+22 -5
View File
@@ -17,17 +17,15 @@
* along with LMS. If not, see <http://www.gnu.org/licenses/>.
*/
#include <Wt/WEnvironment>
#include <Wt/WBootstrapTheme>
#include <Wt/WVBoxLayout>
#include <Wt/WHBoxLayout>
#include <Wt/WNavigationBar>
#include <Wt/WStackedWidget>
#include <Wt/WMenu>
#include <Wt/WNavigationBar>
#include <Wt/WPopupMenu>
#include <Wt/WPopupMenuItem>
#include <Wt/WVBoxLayout>
#include <Wt/WLineEdit>
#include <Wt/Auth/Identity>
#include "logger/Logger.hpp"
@@ -36,7 +34,8 @@
#include "settings/SettingsFirstConnectionFormView.hpp"
#include "auth/LmsAuth.hpp"
#include "audio/Audio.hpp"
#include "audio/desktop/DesktopAudio.hpp"
#include "audio/mobile/MobileAudio.hpp"
#include "video/VideoWidget.hpp"
#include "common/LineEdit.hpp"
@@ -46,6 +45,16 @@ namespace skeletons {
extern const char *AuthStrings_xml1;
}
namespace {
bool agentIsMobile()
{
const Wt::WEnvironment& env = Wt::WApplication::instance()->environment();
return (env.agentIsIEMobile() || env.agentIsMobileWebKit());
}
}
namespace UserInterface {
@@ -150,7 +159,15 @@ LmsApplication::handleAuthEvent(void)
Wt::WMenu *leftMenu = new Wt::WMenu(contentsStack);
navigation->addMenu(leftMenu);
Audio *audio = new Audio(_sessionData);
const Wt::WEnvironment& env = Wt::WApplication::instance()->environment();
Audio *audio;
if (agentIsMobile())
audio = new Desktop::Audio(_sessionData);
else
audio = new Mobile::Audio();
VideoWidget *videoWidget = new VideoWidget(_sessionData);
leftMenu->addItem("Audio", audio);