예제 #1
0
        /// <summary>
        /// Create window for login.
        /// </summary>
        /// <param name="puller">The mallow puller.</param>
        public LoginWindow(MallowPuller puller)
        {
            InitializeComponent();

            //Handler = new MallowResourceRequestHandler();

            //Handler.OnGetCookie += (sender, cookies) =>
            //{
            //    foreach (Cookie cookie in cookies) CookieStorageHelper.CurrentCookieContainer.Add(cookie);
            //};

            //MallowRequestHandler requestHandler = new MallowRequestHandler(Handler);
            //Browser.RequestHandler = requestHandler;

            Closed += (sender, args) => Browser.Dispose();

            Browser.Address = puller.Address;

            Timer timer = new Timer(10000)
            {
                AutoReset = true,
                Enabled   = true
            };

            Closing += (sender, args) =>
            {
                timer.Stop();
                timer.Dispose();
            };

            bool isTickRunning = false;

            timer.Elapsed += async(sender, args) =>
            {
                if (!isTickRunning)
                {
                    isTickRunning = true;
                }
                else
                {
                    return;
                }
                if (!(await puller.VerifyLogin()))
                {
                    isTickRunning = false;
                    return;
                }
                IsLoginComplete = true;
                timer.Stop();
                timer.Dispose();
                Dispatcher.Invoke(Close);
            };
        }
예제 #2
0
        public PullWindow(MallowPuller puller)
        {
            // Create Progress for Display

            Progress = new Progress(puller.Progress, Dispatcher);

            // DataContext Initialize

            PullerName      = puller.Name;
            CreateGroupName = $"{puller.Name}导入";

            Puller = puller;

            // Initialize Component

            InitializeComponent();
        }