Commit graph

268 commits

Author SHA1 Message Date
Damian Büchel
d1f0e012d5 SEBWIN-414: Implemented home functionality for browser. 2020-10-05 23:37:23 +02:00
Damian Büchel
68decb740c SEBWIN-414: Implemented new feature to control displaying and logging of URLs in browser. 2020-09-29 14:01:17 +02:00
Damian Büchel
3a23cec2c2 SEBWIN-414: Ensured query string parameter is correctly appended to start URL. 2020-09-24 17:01:23 +02:00
Damian Büchel
50e943e8a8 SEBWIN-414: Implemented query string parameter feature. 2020-09-24 12:55:20 +02:00
Damian Büchel
6d478660b5 SEBWIN-414: Implemented feature to reset browser via quit URL. 2020-09-21 19:22:15 +02:00
Damian Büchel
252e807c44 SEBWIN-414: Implemented new mechanism to allow or deny reconfiguration. 2020-09-10 12:35:58 +02:00
Damian Büchel
867bcfe6a7 Updated browser engine to version 84.4.10. 2020-08-26 19:09:44 +02:00
Damian Büchel
af71bbd72e SEBWIN-413: Made find functionality configurable. 2020-08-11 17:52:51 +02:00
Damian Büchel
7a91d34ca8 SEBWIN-413: Implemented basic find toolbar for browser. 2020-08-10 21:42:51 +02:00
Damian Büchel
e0d0fb8379 Removed unused load error page. 2020-08-06 14:30:37 +02:00
Damian Büchel
a82f2d5780 SEBWIN-416: Ensured third-party applications with custom URI schemes are correctly opened. 2020-08-06 14:26:40 +02:00
Damian Büchel
2ade9e15b4 SEBWIN-407: Implemented access restriction for file system dialog. 2020-08-05 22:55:38 +02:00
Damian Büchel
8d94750078 SEBWIN-405: Fixed and improved LMS session detection. 2020-08-03 14:41:25 +02:00
Damian Büchel
7ac34b3473 SEBWIN-405: Implemented draft of mechanism to send pings and logs. 2020-07-31 14:37:12 +02:00
Damian Büchel
facc8c9442 SEBWIN-405: Implemented detection of Moodle session identifier and server disconnection. 2020-07-31 13:24:42 +02:00
Damian Büchel
22f6e8b664 SEBWIN-405: Implemented scaffolding for detection of session identifier. 2020-07-29 23:39:05 +02:00
Damian Büchel
48d0dc4db6 SEBWIN-411: Fixed audio / video playback not stopping when closing additional browser window. 2020-06-23 16:53:43 +02:00
Damian Büchel
0f1d57744e Updated browser engine to version 81.3.100 and updated dependencies for entire solution. 2020-06-22 12:03:29 +02:00
Damian Büchel
eb8ac889a4 SEBWIN-408: Made favicon loading asynchronous. 2020-06-22 11:31:42 +02:00
Damian Büchel
9ec8130a8a SEBWIN-395: Fixed issue with request filter blocking load error page. 2020-05-15 16:13:15 +02:00
Damian Büchel
ad24146d9f SEBWIN-380: Implemented unit tests for browser resource handler. 2020-04-06 14:13:13 +02:00
Damian Büchel
246bc81d79 SEBWIN-383: Corrected redirect mechanism for PDF toolbar to only redirect main frame requests and added missing new option to configuration tool. 2020-03-27 13:18:24 +01:00
Damian Büchel
9e8c5056cf SEBWIN-362: Ensured load error page is not rendered when a request is aborted. 2020-03-18 10:24:22 +01:00
Damian Büchel
63152a0335 SEBWIN-362: Added retry option for load error page. 2020-03-16 14:20:53 +01:00
Damian Büchel
f0504fa6d2 SEBWIN-362: Implemented basic load error page for browser. 2020-03-13 15:56:32 +01:00
Damian Büchel
54b5be830e SEBWIN-379: Fixed request filter expressions containing trailing slashes after host. 2020-03-11 11:33:52 +01:00
Damian Büchel
b465d498d0 SEBWIN-378: Implemented basic support for default spell checking. 2020-03-05 09:38:26 +01:00
Damian Büchel
24c5d91fe4 SEBWIN-376: Fixed error with browser request filtering and improved logging if request is blocked. Also fixed error in configuration value mapping for content request filter. 2020-03-04 10:08:34 +01:00
Damian Büchel
7d8720d6a2 SEBWIN-369: Ensured quit link ignores trailing slash. 2020-03-02 10:46:42 +01:00
dbuechel
07bb78e637 SEBWIN-363, SEBWIN-357: Ensured session is retained when loading a configuration from a server which requires authentication and introduced new flag to determine whether a reconfiguration is allowed or not. Also fixed session persistence when using delete cookies settings. 2020-02-25 10:41:55 +01:00
dbuechel
1d9f5ffad7 SEBWIN-358: Implemented configuration and mechanism for browser cache deletion. 2020-02-21 15:11:35 +01:00
dbuechel
9d0c005b35 SEBWIN-309, SEBWIN-358: Fixed crash happening when a configuration does not contain a salt value for the browser exam key. 2020-02-21 11:58:08 +01:00
dbuechel
c43df2e712 SEBWIN-358: Implemented user agent suffix. 2020-02-19 15:32:38 +01:00
dbuechel
6ad5d062db SEBWIN-309, SEBWIN-358: Corrected usage of salt value for browser exam key. 2020-02-19 15:21:34 +01:00
dbuechel
28f5b88f25 SEBWIN-358: Fixed message box title & text for legacy configuration tool and disabled / marked configuration options not yet available in SEB 3.0. 2020-02-19 09:02:18 +01:00
dbuechel
38159dae3e Removed remarks regarding workaround for browser user agent. It appears that the user agent can't be changed on a per-request basis (at least for requests from service workers). 2020-02-17 15:44:22 +01:00
dbuechel
91765e2d55 SEBWIN-357: Implemented browser session configuration. 2020-02-17 12:10:04 +01:00
dbuechel
d5210e85b7 Updated browser engine to version 79.1.36 and updated dependencies for entire solution. 2020-02-14 09:51:52 +01:00
dbuechel
9f8920b410 SEBWIN-309: Corrected implementation of configuration and browser exam key. 2020-02-13 11:01:07 +01:00
dbuechel
5ce5c78641 SEBWIN-309: Implemented draft of browser exam key. 2020-02-10 12:19:25 +01:00
dbuechel
92d22a8437 SEBWIN-309: Extended detection mechanism for configuration file downloads. 2020-02-06 11:10:22 +01:00
dbuechel
7df1fe5f03 SEBWIN-309: Corrected implementation of configuration key. 2020-02-06 09:56:32 +01:00
dbuechel
603c268839 SEBWIN-302: Implemented configuration of internal PDF reader. 2020-01-30 11:15:28 +01:00
dbuechel
c3a2fb38ce Ensured naming consistency for parent window of file system dialog. 2020-01-24 11:07:52 +01:00
dbuechel
b003bf93b7 SEBWIN-308: Implemented mechanism to block uploads. 2020-01-24 10:19:11 +01:00
dbuechel
c1aa080f87 SEBWIN-308, SEBWIN-312: Replaced BCL folder dialog with custom implementation. 2020-01-22 16:08:57 +01:00
dbuechel
97f3fb4a02 SEBWIN-308: Implemented basic download overview for browser. 2020-01-22 15:16:11 +01:00
dbuechel
0083a87bce SEBWIN-308: Implemented basic file system dialog and download configuration for browser. 2020-01-20 16:13:08 +01:00
dbuechel
5e131289b0 SEBWIN-309: Implemented scaffolding for Configuration Key. 2020-01-10 08:54:10 +01:00
dbuechel
df61e79861 Updated year in copyright and license remarks. 2020-01-06 15:24:46 +01:00
dbuechel
130dd45ff6 SEBWIN-310: Implemented quit URL. 2019-12-19 15:02:40 +01:00
dbuechel
4b415a5f45 SEBWIN-314: Corrected simplified rule implementation for alphanumeric expression. 2019-12-18 10:09:30 +01:00
dbuechel
42eccef565 Cleaned and restructured browser settings namespace. 2019-12-18 08:24:55 +01:00
dbuechel
5b3a2a3861 SEBWIN-315: Implemented basic proxy support. 2019-12-18 08:09:59 +01:00
dbuechel
eb3a87016e SEBWIN-304: Implemented same host policies for browser popups. 2019-12-13 16:10:10 +01:00
dbuechel
1f4043619f SEBWIN-304: Implemented browser popup policy. 2019-12-12 15:41:05 +01:00
dbuechel
a93678d5d7 SEBWIN-312: Implemented thumbnails of open windows for desktop taskview. 2019-12-05 11:54:43 +01:00
dbuechel
018e596905 SEBWIN-312: Implemented icon change event for application windows and finally moved IconResource from core to application namespace. 2019-12-03 15:43:48 +01:00
dbuechel
df13e96dcd SEBWIN-312: Implemented mechanism to detect start of whitelisted application instances. 2019-12-02 15:48:06 +01:00
dbuechel
f19f284d95 SEBWIN-312: Implemented basic window handling for external applications. Reverted wrong cleanup logic for native handles. 2019-11-29 14:59:54 +01:00
dbuechel
4503cbe778 SEBWIN-312: Removed IApplicationInstance from API as it is irrelevant to the shell (which cares only about applications and their windows). 2019-11-28 17:22:04 +01:00
dbuechel
fbe03b86ea SEBWIN-312: Finished first draft of task view. 2019-11-20 10:45:08 +01:00
dbuechel
08bf49b61b SEBWIN-312: Started implementing task view. 2019-11-15 16:00:03 +01:00
dbuechel
35dd3dd4c2 SEBWIN-312: Implemented basic handling of whitelisted applications. 2019-11-13 10:11:11 +01:00
dbuechel
a6a90376ad SEBWIN-344: Removed AnyCPU and introduced x64 platform, adapted setup project to be built for both platforms. Changed configuration tool to .NET 4.7.2. 2019-11-06 15:45:17 +01:00
dbuechel
c21005b934 SEBWIN-312: Implemented loading of whitelisted applications into shell. 2019-11-06 08:45:37 +01:00
dbuechel
b2013412dd Removed safeguard question before reconfiguration. 2019-09-25 08:45:20 +02:00
dbuechel
0159b9c0de SEBWIN-314: Added functionality to automatically allow start URL when request filtering is active. 2019-09-24 08:53:29 +02:00
dbuechel
f4f6b47548 Updated browser engine to version 75.1.142. Consolidated and updated nuget packages for entire solution. 2019-09-24 07:37:42 +02:00
dbuechel
d3272814bd SEBWIN-314: Completed implementation of simplified filter rule. 2019-09-20 11:45:06 +02:00
dbuechel
6d1b282b33 SEBWIN-314: Started implementing filter rules with unit tests. 2019-09-18 16:15:26 +02:00
dbuechel
5209103c97 SEBWIN-314: Completed infrastructure for browser request filtering. 2019-09-13 09:17:14 +02:00
dbuechel
d51422e188 SEBWIN-314: Main requests are now entirely prevented (before any loading happens) and only content requests are intercepted with custom resource handling. 2019-09-12 12:31:17 +02:00
dbuechel
dda48396b3 Unified naming and comments for settings. 2019-09-10 11:53:30 +02:00
dbuechel
1dd65e1bda SEBWIN-314: Completed infrastructure for request filter. 2019-09-10 11:01:49 +02:00
dbuechel
367ebf1329 SEBWIN-342: Moved settings to separate assembly. 2019-09-06 09:39:28 +02:00
dbuechel
b8fd96a10c SEBWIN-314: Started implementing scaffolding for request filter. 2019-09-06 08:13:27 +02:00
dbuechel
88afdb7d72 SEBWIN-342: Moved application instance identifier back to application namespace. 2019-09-04 15:49:48 +02:00
dbuechel
66cefac874 SEBWIN-342: Resolved UI dependencies in configuration download mechanism. 2019-09-04 15:12:59 +02:00
dbuechel
affd5de6a7 Resolved dependencies from browser API on UI. 2019-08-30 12:30:00 +02:00
dbuechel
fd20d0d638 Finally did what should have been done a long time ago: Moved contracts from SafeExamBrowser.Contracts to new contracts assembly per namespace. 2019-08-30 09:55:26 +02:00
dbuechel
18e6b366a5 SEBWIN-141: Removed custom windows style for good, as it does not fix the convoluted touch activation issue. 2019-08-27 11:53:29 +02:00
dbuechel
0bca109ad8 SEBWIN-141: Made workaround for initial touch activation of browser control permanent, as there appears to be no other way to fix the issue. 2019-08-27 11:25:38 +02:00
dbuechel
f8518eb8c4 SEBWIN-141: Removed workaround for initial touch activation of previous browser version. 2019-08-27 10:19:01 +02:00
dbuechel
c39f7febc0 Updated browser engine to version 75.1.141. 2019-08-23 15:48:23 +02:00
dbuechel
b71529da31 SEBWIN-338: Introduced program build version. 2019-08-13 10:02:05 +02:00
dbuechel
0f639aa550 SEBWIN-300: Ensured output directories of browser, client and runtime are completely emptied on clean and disabled building of setup project for debug configuration. 2019-07-26 10:06:04 +02:00
dbuechel
ac5791ee13 SEBWIN-329: Fixed bug with custom URI scheme handling and blocked mailto URLs. 2019-06-27 15:02:35 +02:00
dbuechel
ccf7727d4c SEBWIN-301: Fixed usage of application data folder (local for large files vs. roaming for configuration) and implemented basic service operation for runtime. 2019-06-06 15:44:03 +02:00
dbuechel
8b0cc6db71 SEBWIN-329: URL textbox is now hidden when disabled and the developer console is accessible via the browser menu. Removed spinning wheel and introduced loading progress indicator. 2019-05-22 11:42:31 +02:00
dbuechel
e46316a69d SEBWIN-328: Implemented static user agent to fix issue with as of yet unsupported request interception for requests made by service workers. 2019-05-16 14:41:38 +02:00
dbuechel
2fd4bfa78a SEBWIN-141: Updated browser engine to version 73.1.130 and implemented workaround for broken touch activation / OSK input in browser. 2019-05-15 10:00:13 +02:00
dbuechel
66275830ae Downgraded browser engine back to 71.0.2 due to issues with touch input. 2019-05-08 15:41:57 +02:00
dbuechel
626e2742e0 Downgraded browser engine back to 71.0.2 due to issues with touch input. 2019-05-08 15:40:58 +02:00
dbuechel
8da5588e26 SEBWIN-141: Enabled touch events for browser engine. 2019-05-08 15:36:48 +02:00
dbuechel
d985a580bc Updated browser engine to version 73.1.13. 2019-05-08 14:08:43 +02:00
dbuechel
8656363a7a SEBWIN-325: Only update the favicon if it really exists. 2019-05-08 13:53:38 +02:00
dbuechel
5d5c260ca8 SEBWIN-226: Implemented custom user agent suffix. 2019-04-18 08:15:47 +02:00
dbuechel
0d270b1444 SEBWIN-226: Trying to use CI to set correct version and build number for assemblies. 2019-03-29 10:52:00 +01:00
dbuechel
370ea54116 SEBWIN-226: Updated browser engine to version 71.0.2. 2019-03-20 14:07:30 +01:00
dbuechel
4044b62867 SEBWIN-226: Updated target framework for all assemblies to version 4.7.2. 2019-03-20 14:00:36 +01:00
dbuechel
4f257c60f0 SEBWIN-106: Ensured invalid URIs entered by the user are not loaded by the browser. 2019-03-15 15:55:34 +01:00
dbuechel
519fb9e57b SEBWIN-141: Implemented draft of application controls for action center. 2019-03-08 11:43:52 +01:00
dbuechel
d99d46d086 SEBWIN-141: Basic draft of action center including keyboard and touch activators. 2019-03-06 16:10:00 +01:00
dbuechel
5641dc3e4b SEBWIN-226: Cleaned up configuration and core contracts by creating new namespaces SafeExamBrowser.Applications, SafeExamBrowser.Client and SafeExamBrowser.Runtime. 2019-01-23 15:57:49 +01:00
dbuechel
c6556a7765 SEBWIN-226: Implemented configuration for main / additional browser windows and handled forward / backward navigation buttons. 2019-01-23 09:37:47 +01:00
dbuechel
6436f98e3f SEBWIN-226: Implemented global log severity threshold. 2019-01-23 08:12:15 +01:00
dbuechel
06c32ee359 SEBWIN-140: Updated nuget-packages, incl. browser engine version (from 69 to 71). 2019-01-22 09:07:34 +01:00
dbuechel
6527969e75 SEBWIN-106: Implemented basic zoom functionality for browser. 2019-01-18 16:11:33 +01:00
dbuechel
483eec6ef8 SEBWIN-106: Fixed loading / rendering issues with favicons and application instance button and enabled popups for default settings. 2019-01-18 09:58:14 +01:00
dbuechel
0ee13c9c8b SEBWIN-106: Implemented basic favicon handling. 2019-01-17 16:15:10 +01:00
dbuechel
f949a19f32 SEBWIN-106: Implemented basic popup and reload handling, revised browser control implementation and added mouse button interception for navigation (auxiliary) keys. Also finally implemented a custom template for small scrollbars in scrollviewers. 2019-01-17 11:12:17 +01:00
dbuechel
91c2417930 SEBWIN-106: Working on browser zoom... 2019-01-15 10:44:35 +01:00
dbuechel
20962fab05 SEBWIN-141: Renamed assembly "SafeExamBrowser.UserInterface.Classic" to "SafeExamBrowser.UserInterface.Desktop". 2019-01-11 15:32:47 +01:00
dbuechel
704aea3a45 SEBWIN-223, SEBWIN-224: Implemented user interface and browser configuration mapping. 2019-01-11 08:25:40 +01:00
dbuechel
4edd8480ef Updated year to 2019 for all copyright notices. 2019-01-09 11:25:21 +01:00
dbuechel
d4ef20bd9f SEBWIN-221: Consolidated & updated NuGet packages, including browser engine (from version 63.0.1 to 69.0.0). 2019-01-08 14:30:38 +01:00
dbuechel
f9f2bb3257 SEBWIN-221: Implemented changes in configuration algorithm to accomodate new functionality scope of 3.0 Alpha. 2018-12-11 16:06:10 +01:00
dbuechel
7f38c0b8c3 SEBWIN-221: Implemented basic password decryption of binary configuration files and finally found correct solution for multi-threading issues related to WPF. 2018-11-22 14:36:20 +01:00
dbuechel
b29fd8c2d7 SEBWIN-221: Implemented basic gzip decompression & binary format detection. The browser is now automatically started after client initialization. 2018-11-15 08:45:17 +01:00
dbuechel
902b0c2b3b SEBWIN-221: Implemented scaffolding for loading and parsing of configuration resources. 2018-11-08 09:39:52 +01:00
dbuechel
b4f468a2b4 SEBWIN-221: Moved hide & restore windows mechanism for Disable Explorer Shell to IExplorerShell and made reconfiguration dialogs modal to respective browser window. 2018-10-30 11:24:28 +01:00
dbuechel
0b76770f0f SEBWIN-220: Removed unused dependencies and reverted service-based message box implementation. Need to find solution for message boxes resp. UI interaction from operations in general... 2018-10-02 15:45:45 +02:00
dbuechel
8280ac3a92 SEBWIN-220: Implemented basic logging for browser modules. 2018-08-31 15:29:36 +02:00
dbuechel
ec3f2b7ff2 SEBWIN-220: Extracted concerns from core namespace (communication, i18n, logging) and removed behaviour namespace. 2018-08-31 10:06:27 +02:00
dbuechel
ef31db9920 SEBWIN-220: Replaced guid with abstact InstanceIdentifier for application instances and started to implement logging for browser component. 2018-08-31 07:49:41 +02:00
dbuechel
02d69005c0 SEBWIN-220: Moved SEB URI schemes to global application configuration. 2018-08-14 09:06:35 +02:00
dbuechel
70f68abc8f SEBWIN-220: Moved all event handlers to separate files and namespaces. 2018-07-06 15:57:38 +02:00
dbuechel
420ed1fc18 SEBWIN-220: Removed custom scheme handling and added fancy icon to password dialog. 2018-07-04 14:33:07 +02:00
dbuechel
9a12bbdb7d SEBWIN-220: Finally renamed RuntimeInfo to AppConfig. 2018-06-29 09:50:20 +02:00
dbuechel
50dcb7502a SEBWIN-220: Scaffolding for new (re-)configuration procedure. 2018-06-21 07:56:25 +02:00
dbuechel
45dd741e4c Changed log level for browser. 2018-04-25 07:47:48 +02:00
dbuechel
ec588e50bc SEBWIN-219: Tidied up communication namespace. 2018-03-15 14:32:07 +01:00
dbuechel
49d9b03d7a SEBWIN-219: Extracted message box from UI factory and tidied up user interface contracts. 2018-03-14 12:07:20 +01:00
dbuechel
6334294e4d SEBWIN-219: Minor refactoring. 2018-03-14 11:13:30 +01:00
dbuechel
4e2e43ede3 SEBWIN-219: Corrected handling of URIs in configuration request detection. 2018-03-13 09:13:35 +01:00
dbuechel
993329bd71 SEBWIN-219: Finished basic implementation of reconfiguration mechanism. 2018-03-08 15:27:12 +01:00
dbuechel
5bd1d9dea4 SEBWIN-219: Found acceptable solution for interception of configuration requests. 2018-03-08 07:35:58 +01:00
dbuechel
4ce5677ecf SEBWIN-219: Started implementing reconfiguration mechanism. 2018-03-02 15:41:04 +01:00
dbuechel
f2e3b35730 SEBWIN-219: Implemented simple loading state indicator for browser window. 2018-03-01 08:50:08 +01:00
dbuechel
f5ef7fa859 SEBWIN-219: Cleaned up remaining TODOs. 2018-02-28 09:45:29 +01:00
dbuechel
d935407ecb SEBWIN-219: Working on IPC mechanics. 2018-02-15 15:42:54 +01:00
dbuechel
31d6d544d0 SEBWIN-219:
- Extracted operations and notifications from core library and moved them to client resp. runtime component.
- Renamead runtime component to SafeExamBrowser.Runtime.
- Moved post-build event from browser to client assembly.
2018-01-18 08:16:20 +01:00
dbuechel
0b52095453 SEBWIN-219: Separated immutable, application-wide configuration values from settings. 2018-01-17 14:08:39 +01:00
dbuechel
e1a0e9b3d6 SEBWIN-219: Separated existing functionality between runtime and client. 2018-01-17 08:26:44 +01:00
dbuechel
ff956daf39 SEBWIN-219: Updated assembly information and copyright year. 2018-01-16 08:24:00 +01:00
dbuechel
37293687d0 Added and replaced icons for classic UI. 2017-08-23 08:32:44 +02:00
dbuechel
7baf826e5a Refactored taskbar components (moved contracts to separate namespace and introduced XAML control templates) and started implementing system components. 2017-08-15 15:30:31 +02:00
dbuechel
1c26d54e34 Removed unused assembly references. 2017-08-15 08:39:10 +02:00
dbuechel
a8025ad2a1 Added coloration to log window and removed URI format check in browser control. 2017-08-11 10:22:09 +02:00