Commit Graph

145 Commits

Author SHA1 Message Date
Eric Dubé
331d9e7542
feat: allow apps to add a menubar via puter.js
* Begin work on menubar and dropdowns

* Improve menubar

* Fix pointer event behavior

* Fix labels

* Fix active button

* Eliminate flicker

* Update _default.js

---------

Co-authored-by: Nariman Jelveh <n.jelveh@gmail.com>
2024-04-22 20:38:16 -04:00
zinreq
14098b2ff2
Do not show the "Change Password" option when user is temporary 2024-04-20 19:42:30 -07:00
Nariman Jelveh
915152d3b9
Merge pull request #296 from Xiayucheng1212/keep_params
Keep the query params in the url started with '/app/*'
2024-04-20 16:45:05 -07:00
Nariman Jelveh
2ecea9a7b0 Prevent XSS by escaping user_set_url_params 2024-04-20 16:34:15 -07:00
Eric Dubé
dc2a620b4e
Merge pull request #304 from HeyPuter/eric/stdio-bridge/2
stdio-bridge 2
2024-04-20 19:29:15 -04:00
Nariman Jelveh
8648a303f1 use puter.js to retrieve server info 2024-04-20 15:29:33 -07:00
Eric Lighthall
338d925bcc Fetch server info from versionservice.js module
Instead of directly fetching for the version info in UITabAbout.js, the module is now used for it
2024-04-20 02:24:45 -07:00
Eric Lighthall
7e2c4a0a1c Add server/version info on login page
The server/version info is under the forgot password section of the login page
2024-04-20 02:22:13 -07:00
Sam Atkins
2f49c1c9b0 Remove a whole load of noisy log messages
These can be added back if and when we need them, but right now, it's
hard to follow console output with all this chatter. 😅
2024-04-19 17:29:26 +01:00
Sam Atkins
639653dac2 Report when a non-SDK app closes
puter.ui.launchApp() returns a Promise that needs to resolve whether the
app uses the Puter SDK or not. Non-SDK apps are tricky because they
don't send a READY message on startup, and we don't know in advance
whether an app will use the SDK or not.

This is a workaround to ensure that launchApp() always resolves. When an
app is closed, if it wasn't using the SDK, we send an artificial
notification that it launched, followed by an extra notification that
it has closed (because the original close notification was sent before
this point). This means any users of launchApp() can await it, and get
an AppConnection, and listen to the close event. They can't otherwise
interact with a non-SDK app because it will have closed already, but we
can improve this in the future without breaking the API.
2024-04-19 15:52:59 +01:00
Xiayucheng1212
8713db3d55 Fix params lost 2024-04-17 19:45:01 +08:00
Eric Dubé
3a4858b83c
Merge pull request #286 from AtkinsSJ/background-settings
Settings: Organise code to be grouped by tab, and add desktop background picker
2024-04-15 17:55:09 -04:00
KernelDeimos
66fecf88ef Fix funny context menu on task manager 2024-04-15 15:58:07 -04:00
Sam Atkins
868202ba41 Settings: Add desktop-background setting to 'Personalization' tab 2024-04-15 17:41:19 +01:00
Sam Atkins
c6b0ed32bf Settings: Move 'Clock' tab into its own file 2024-04-15 17:41:19 +01:00
Sam Atkins
17adef11a6 Settings: Move 'Language' tab into its own file
Also implement an optional `on_show` callback for settings tabs, to
support the "select and clear the search field" behaviour we had before.
2024-04-15 17:41:19 +01:00
Sam Atkins
6d1c807879 Settings: Move 'Personalization' tab into its own file 2024-04-15 17:41:19 +01:00
Sam Atkins
0ed5b20627 Settings: Move 'Account' tab into its own file 2024-04-15 17:41:19 +01:00
Sam Atkins
f5175941d9 Settings: Move 'Usage' tab into its own file 2024-04-15 17:41:19 +01:00
Sam Atkins
e2f048ec2d Settings: Move 'About'-specific logic and data into UITabAbout.js
Keeping all the logic and data for the tab together should make it
easier to modify.
2024-04-15 17:41:19 +01:00
KernelDeimos
2717444c29 Oops 2024-04-15 12:17:09 -04:00
Eric Dubé
b897598fac
Merge pull request #282 from HeyPuter/eric/task-manager
Add a task manager
2024-04-15 03:53:51 -04:00
KernelDeimos
5730dc642a Add process ending and i18n 2024-04-15 03:37:04 -04:00
Nariman Jelveh
2dbde52338 live-update email address after change 2024-04-14 21:09:41 -07:00
KernelDeimos
61f1caa122 Add type column 2024-04-14 23:58:14 -04:00
Nariman Jelveh
695d7b8654 Update UIDesktop.js 2024-04-14 20:53:31 -07:00
KernelDeimos
6e7fd2ca95 Add polling 2024-04-14 23:52:53 -04:00
KernelDeimos
79bfcf226b Integrate ProcessService with task manager 2024-04-14 23:52:53 -04:00
KernelDeimos
9d9e091a7a Add process management 2024-04-14 23:52:53 -04:00
KernelDeimos
be1bb6bc06 Improve task manager style 2024-04-14 23:52:53 -04:00
KernelDeimos
d39bb412f3 Begin work on task manager 2024-04-14 23:52:53 -04:00
Nariman Jelveh
49c3df2328 allow child windows to center relative to parent window 2024-04-14 20:04:27 -07:00
Nariman Jelveh
61a4b10adf add i18n text 2024-04-14 19:14:33 -07:00
Nariman Jelveh
aae1d194c7 wip 2024-04-14 17:43:20 -07:00
Nariman Jelveh
bfaaa914f1 wip 2024-04-14 17:30:22 -07:00
Nariman Jelveh
2f101c4a39 close #271 2024-04-14 17:10:46 -07:00
Nariman Jelveh
765eb43568 Disable manual arrangement in Explore 2024-04-14 12:50:28 -07:00
Nariman Jelveh
3b65523da9 separate refresh_item_container into a module 2024-04-13 13:41:15 -07:00
KernelDeimos
199b68a964 Highlight current session 2024-04-13 02:30:48 -04:00
Eric Dubé
fbbc73308e
Merge pull request #274 from HeyPuter/eric/builtin-apps
Move terminal and phoenix into main repo
2024-04-12 21:54:47 -04:00
KernelDeimos
5fbbfb4c18 Enable background and builtin apps 2024-04-12 20:52:57 -04:00
Aya Moosa
b725c4c7b4 removed commented code causing translation error 2024-04-12 14:39:46 -07:00
Aya Moosa
f8d3fdbefb merge 2024-04-12 14:16:26 -07:00
KernelDeimos
1da3a769c4 Use localstorage instead of cookie for list-sessions 2024-04-12 00:19:07 -04:00
Eric Dubé
8135e076c2
Merge pull request #266 from HeyPuter/eric/session-updates
session management
2024-04-11 22:04:07 -04:00
Nariman Jelveh
9ab3e3ccd8
Merge pull request #244 from HeyPuter/eric/host-storage
Display storage use of host/puter separately
2024-04-11 10:14:45 -07:00
KernelDeimos
09bf422686 Add session manager ui 2024-04-11 00:29:39 -04:00
Sam Atkins
cce6531d45 Notify parents/children when an app closes
Send an appClosed message with the instance ID of the app that was
closed. This will be picked up by Puter.js's AppConnection and reported
as a 'close' event.

To make this work, a `data-parent_instance_id` attribute is set on child
app windows. This is very similar to the `data-parent_uuid` attribute,
which tracks parent windows instead of parent app instances. (Dialogs
have a parent window, but are not apps, so don't have a parent app
instance.) The difference is subtle, and we may want to combine these in
the future, but currently closing an app will close any child windows,
which is not behaviour we want for child apps.
2024-04-09 15:55:14 +01:00
Aya Moosa
80aa87023e working white text, not perfect with all colors 2024-04-08 22:01:00 -07:00
Aya Moosa
626d63c91d working white text, not perfect with all colors 2024-04-08 22:00:12 -07:00