parallaxinc / Parallax-IDE

Parallax microcontroller development environment based on Chrome applications.
MIT License
35 stars 12 forks source link

Prototyping Parallax IDE (Multiple Elements) #318

Open jimjeffers opened 8 years ago

jimjeffers commented 8 years ago

[UPDATE: This discussion began as Project/File UI design but various issues pushed us to consider many other factors simultaneously. Once design of certain elements is deemed final, separate issues will be created to house each element individually]

Here are some notes from our initial discussion on file navigation:

File Navigation

Let’s create a list of common scenarios:

  1. New Project (No files)
  2. Minimal project (1 file)
  3. Sandbox project (multiple independent files)
  4. Complex project (multiple files w/ entry point)

Questions to ask ourselves:

What’s good and bad about the way we’ve done things in the past?

People are struggling with how to add updated files for a given library… They include libraries inappropriately.

The names are different on every platform.. C drive on windows.. you don’t see the drive name but you see the user folder on mac/linux (mobile). Some platforms hide the nature of the storage of the medium. You don’t know where it is.. kind of like iCloud / cloud storage.

Simplify the way we manage files (hide the storage medium) but retain the ability to create sub directories within the project.

Most of the time our projects are stored in a given folder. Some files in addition to the executable source code.

Project selection — then project directory specific file system. Have the ability to export/import source for personal backups / sharing with others.

We do have a need to allow you to open up or view files from other projects.

What needs are different from the user’s of the parallax IDE?

How might we handle this design challenge on a small screen vs. a large screen?

In the Future:

  1. Dependency Management.

Self managed — including a library. Third party and parallax based. Can we automate this process?

Stay away from dropping zip files onto the file drawer.

Version conflicts — automatic repository system. Has to retain a database of sorts so that this file is referenced (i.e. Gemfile or Podfile)

Send examples on Cocoapods, NPM, RubyGems.

jimjeffers commented 8 years ago

Notes from our continued discussion:

[This discussion generated the first File Navigation mock-up screencast and pdf]

App Menu

Profile

New Menu

More Button

Fuzzy Search

Project level and global level prioritized results.

Xcode / Browser Style

Common Actions

What are the primary actions our users need to use most frequently?

[Update: See newer post for updates to this subtopic]

Let’s create a list:

1. < text editing functions > 1. Run (Compile / Download) 1. Check Syntax (Compile) 1. Save 1. Identify 1. Memory Map…

Can we prioritize them?

Coding Pane

What are some common items expressed in code that we could automate or simplify for our user?

  1. Linking files?
  2. Declaring the stamp type?

Questions to ask ourselves (reiterate from file navigation):

What’s good and bad about the way we’ve done things in the past?

What needs are different from the user’s of the parallax IDE?

How might we handle this design challenge on a small screen vs. a large screen?

PropGit commented 8 years ago

Icons post moved to separate issue

jimjeffers commented 8 years ago

@PropGit Notes from our discussion today related to mockup Screencast and PDF:

Project Drawer

Fuzzy Search

Editor View Title Bar

FAB and Context Switching

On Screen Keyboard and UI?

More Button

Revise menu — it should be:

  1. Stamp
  2. Language (Syntax)
  3. Settings (is this specific to file or app?) Jeff was thinking of app. Jim was file.

Find Replace..

Need a mock up for the find and replace UI.

Close button?

We may still need it. Explicit or implicit? Tabs or no tabs? That is the question.

Tabs?

Mockup or show example of tabs.

Project Settings

What do we put in the project settings?

Undo/Redo

We need to add this to the editor UI.

Help button

File Cut / Copy / Paste

Secondary toolbar on desktop/mobile.

Save as / Print

Put these in context menu for specific file.

PropGit commented 8 years ago

Updates from Jeff:

Fuzzy Search

  • Project and filename for now… maybe folder.. the priorities need to be clarified. Jim to mockup fuzzy search results with files, projects, and folders.
  • Results to contain Filename (if matching) in large black font, then below, Project > Folder in small grey font. If it's a Project or Folder that matches (instead of Filename), then result contains "..." in small black font (representing possibly multiple files), then below, Project > Folder in large grey font.
  • Search result priorities are
  • Filename (within current project)
  • Filename (within other projects)
  • Projects
  • Folders (within current project)

Editor View Title Bar

  • Search results ./ nav bar. Show the context above or below the filename? Jeff likes above.
  • We should remain consistent. Let's try Filename (above) and Project > Folder (below, in smaller font of fainter color) like in search results.

More Button

Revise menu — it should be:

  1. Stamp
  2. Language (Syntax)
  3. Settings (is this specific to file or app?) Jeff was thinking of app. Jim was file.
    • If app settings are available through another means, this menu item begs for a different name. I'm unclear what file settings it would give access to: file name (for renaming?), Save As?, Duplicate?, Delete?, Print?
PropGit commented 8 years ago

Updated from Jeff:

Floating Toolbar

The floating toolbar concept seems very practical for the Project Files View, but unfortunately less practical on the Editor view. I'll explain:

I noticed on my Gmail (see screenshot) that there's four buttons plus text on the toolbar; the left arrow (left side), text of operation, then two function buttons followed by a more button that gives access to extended contextual menu items. I think we'd be well off to design with this in mind, where we have two most commonly used functions just one-click-away, and others in the more menu.

image

I still like the idea of the background compile / warning system. Maybe we can transform the more menu into a bright exclamation point at those moments and hide the functions of the context menu (and toolbar) that are not possible without compilable code at that moment, only to reveal those items again once the code is sound.

Another thought is to have the more button expand leftward across the toolbar (covering the source title and left arrow buttons temporarily) with icons for the context menu items.

With these changes (or similar ideas I haven't thought of), perhaps the editor view is never obscured by anything other than the possible keyboard overlay in this case.

jimjeffers commented 8 years ago

Hey Jeff,

I did more research and your points are indeed valid on the FAB. I think it works on the project views but is a bad fit for the editor view especially due to the presence of the on screen keyboard. I see two options — we can use a softwindow mode (or since this is a web app some javascript to replicate softwindow mode. This option would allow us to have a toolbar that floats above the keyboard as the user types. OR we just stick to the gmail approach and provide two primary options and a more button.

I advise against:

Breaking too many design patterns:

  1. Changing the icon of the more menu.
  2. Changing the type of menu transition for the more menu to something custom.

I recommend keeping those standard to maintain familiarity and predictability with the OS on android and chrome.

I’ll provide mockups of both solutions.

On Nov 30, 2015, at 12:36 PM, Parallax Git Administrator notifications@github.com wrote:

Updated from Jeff:

Floating Toolbar

The floating toolbar concept seems very practical for the Project Files View, but unfortunately less practical on the Editor view. I'll explain:

On the Project Files View There's less opportunity for the keyboard overlay to consume the bottom of the screen It displays the most-likely needed options (create folder / create project) immediately, still allowing simple access to existing folders and files It collapses to a smaller icon when scrolling NOTE: We'd want to ensure that the scrollable area allows for scrolling the last item all the way above the smaller icon so there's no chance of unavoidable obscuring of a folder or file name. On the Editor View Without a hardware keyboard, there's ample time that the keyboard overlay will consume the bottom of the screen Very frequently used operations are two taps away (instead of one tap) always It's always cover some text of the editor's source code (we'd have to allow for scrolling the last line above the smaller icon Examples like Gmail (mobile) only use the floating button in views where you're not editing (an email, in this case)... so it's not obscuring anything. I noticed on my Gmail (see screenshot) that there's four buttons plus text on the toolbar; the left arrow (left side), text of operation, then two function buttons followed by a more button that gives access to extended contextual menu items. I think we'd be well off to design with this in mind, where we have two most commonly used functions just one-click-away, and others in the more menu.

https://cloud.githubusercontent.com/assets/1266318/11483745/0524a04e-975f-11e5-9272-9eb1c4fa2380.png I still like the idea of the background compile / warning system. Maybe we can transform the more menu into a bright exclamation point at those moments and hide the functions of the context menu (and toolbar) that are not possible without compilable code at that moment, only to reveal those items again once the code is sound.

Another thought is to have the more button expand leftward across the toolbar (covering the source title and left arrow buttons temporarily) with icons for the context menu items.

With these changes (or similar ideas I haven't thought of), perhaps the editor view is never obscured by anything other than the possible keyboard overlay in this case.

— Reply to this email directly or view it on GitHub https://github.com/parallaxinc/Parallax-IDE/issues/318#issuecomment-160754192.

PropGit commented 8 years ago

Hi @jimjeffers

Good points. I'm pondering this more. Maybe changing the more menu icon is not the right perspective; perhaps it's more that we're replacing it in certain contexts, the there can be an animated (circular) animation to call attention to the transition from a more menu to an error notification. When pressed, the error notification displays the error toast and navigates to and highlights the offending source. When the source is repaired, the notification icon transitions (animates) to a more button again.

Note:

jimjeffers commented 8 years ago

@PropGit given that we won't be able to make much use of suggestions (per the fact that our users will be typing code) I think we may have more usable space by creating a custom accessory view to float above the keyboard or rest at the bottom of the editing view when the keyboard is not visible. We could still definitely do a dual dropdown menu as discussed. I'm open to discussing further. Please checkout the latest round of revisions I mocked up today and let me know when you'd like to get together to discuss!

Screencast: https://drive.google.com/file/d/0B53rXRf-3dMiRmJmckZIa0pFZms/view?usp=sharing

PDF: https://drive.google.com/file/d/0B53rXRf-3dMiSHE0UDNHOEJONkk/view?usp=sharing

jimjeffers commented 8 years ago

@PropGit Sorry correct link to the PDF is: https://drive.google.com/file/d/0B53rXRf-3dMiSHE0UDNHOEJONkk/view?usp=sharing

PropGit commented 8 years ago

@jimjeffers Thanks Jim. Yes, it was good for you to apply the remaining time to the mobile design- I agree.

Project's Drawer

Editor View

jimjeffers commented 8 years ago

Header The addition of the logo and title+font look great! The "PARALLAX" text should say "PARALLAX IDE" however, so it appears you'll have to make the logo size and font size a little smaller to fit it in nicely.

Aha! Ok I was afraid of that :) I'll finesse it in there!

Project Files View I'd like to call this simply "File View" from now on Thanks for including the modified indicator. I think we should make the color a shade of red to give it more of a warning kind of feel

Sure - many IDEs are subtle and just use a shade of grey matching the text etc.. my only caution is that red could confuse people into thinking there is an error but we can test to see if that hypothesis is actually true during user testing :)

Play Button - Thanks, this improves things quite a bit This and the Download item in the More menu are the same thing; should be same icon. We traditionally use a play button for this "download/run" function

Got it. Ok let's do it! I'll use the play button. I think that'll be more straightforward.

Keyboard Accessory Tray I like undo/redo and save there

Yes I'm thinking those fit well as they aid in editing as you type.

I need to consider the close, validation and grouping idea more Having Find/Replace there could definitely be a bonus also

Thinking about it more. I think find and replace should be down there with undo and redo. I'm not sure about save and explicit close. I think those features, along with validation belong elsewhere -- in the more menu or perhaps we have save take the place of find and replace and remove the validation action from the main UI -- primarily becuase we'll validate when they hit run.

I like how it will still be visible when the keyboard is hidden If we employ this feature, does that still work with custom keyboards like Swype?

It should. Theoretically the JS should be able to detect the viewport or screen size when the keyboard is or is not visible. So regardless of Android or iOS our accessory view should float above any keyboard as we're just placing the view at the bottom of the view minus the size reported back from the keyboard. Does that make sense? It's not actually part of the keyboard at all -- it just looks like it is.

What do you think would happen on iOS?

The same thing. BTW if you have a better idea of how you plan on packaging the app on iOS and Android I can advise further on a few details but overall it should work identically.

Source Tabs I like it a lot, but I really want it to collapse into the top toolbar somehow to save vertical space when not needed. Perhaps a very small down arrow (looks like a "v") at the bottom of the top toolbar (and horizontally centered) to indicate they can grab and drag it down. Then, the opposite indicate, but on the Source Tabs toolbar indicating it can be slid up, but also scrolling the actual source in the editor will cause the Source > Tab to slide up out of the way too. The modified indicators are very important here. Thanks!

Let's discuss this more. I'll see if that's common at all. I haven't seen that done on an Android app in the past. I'm still not sure this is a good idea to do tabs. I might actually be opposed to it just because the flow to open files is to essentially close this view to return to the file view. It seems the flow would be a little strange if each time you open a file there are multiple tabs from the last files you opened.

More Menu I like the layout Great choice in icon or Stamp and Syntax Remember, "Syntax" is really supposed to be "Language" I like the icon you chose for Syntax, but with it being "Language" I'm not sure it fits anymore I begrudgingly agree about hiding menu items from the more menu in different contexts... disabling them will maintain the sight-knowledge for the user

Yes I understand. Especially as it is a long menu. Perhaps we can eliminate a few options which I have made redundant by including them else where in the UI. I will fix language. I must have mixed that up in the notes some how. I read the note and then kept it as Syntax. Will fix.

PropGit commented 8 years ago

Common Actions

[Discussion is below, with quick Summary at end (after Analysis)]

To help determine the most common actions for prioritizing feature access, our Education Department identified two phases of common use for our consideration.

Usage During Educator's Course Presentations

  1. Identify
  2. New Source
  3. Select Stamp ($STAMP directive)
  4. Select Language ($PBASIC directive)
  5. Enter source code
  6. Syntax Check
  7. Run (compile+download)
  8. Save (or Save As)

The above steps are repeated several times to familiarize the audience, then they move on to development mode, below.

Development Mode

  1. Open existing source
  2. Edit source code
  3. Run (compile+download)
    1. Modify due to error
    2. Syntax Check
    3. Run (compile+download)
  4. Save (or Save As when needed for next set of modifications)

High use of Memory Map when developing space-critical code, or code that accesses EEPROM data directly.

Analysis

The above items are listed below by low, medium, and high access priorities. It's rating doesn't imply that it must be harder (low), not too hard (medium), or easy (high) to access, but gives us a relatively priority of accessibility should display and UI constraints dictate compromises.

Summary

For accessibility decisions, the recommended priorities are listed here. Items can be moved to higher priority if UI constraints allow.

High Priority

Medium Priority

Low Priority

PropGit commented 8 years ago

@jimjeffers

Project Files View I'd like to call this simply "File View" from now on Thanks for including the modified indicator. I think we should make the color a shade of red to give it more of a warning kind of feel

Sure - many IDEs are subtle and just use a shade of grey matching the text etc.. my only caution is that red could confuse people into thinking there is an error but we can test to see if that hypothesis is actually true during user testing :)

Perhaps yellow would be a better caution signal.

BTW if you have a better idea of how you plan on packaging the app on iOS and Android I can advise further on a few details but overall it should work identically.

I'm pretty sure we'll package using PhoneGap, but there's a chance we'll use another technology if that doesn't meet our needs.

Source Tabs

Let's discuss this more. I'll see if that's common at all. I haven't seen that done on an Android app in the past. I'm still not sure this is a good idea to do tabs. I might actually be opposed to it just because the flow to open files is to essentially close this view to return to the file view. It seems the flow would be a little strange if each time you open a file there are multiple tabs from the last files you opened.

Good points, but the flow you're speaking of is front-and-center only in the mobile platforms, all others leave code in-view during Projects Drawer and File View operations. I think you hit on the very core of why I suggested (before we met) that the filename in the toolbar be a touch target for file/project access, that slides down (animated) into view underneath the titlebar for full project/file access, and current-session open files can be swiped into/off-of view via the same filename touch target. See 17 seconds into this video.

jimjeffers commented 8 years ago

Some notes from our discussion this evening:

Open Indicator

Fuzzy Search

File Navigation

Floating Action Bar / Accessory View

Check Syntax / Displaying Errors

The Floating Toolbar

New Files…

Archive Action

jimjeffers commented 8 years ago

@PropGit Here is an update on mobile today:

Screencast: https://drive.google.com/open?id=0B53rXRf-3dMidTZnUDlkZXdnN2c

PDF: https://drive.google.com/open?id=0B53rXRf-3dMiRVBHZEhHWWFFMUU

Hope to get you one more on Tablet / Desktop tonight.

PropGit commented 8 years ago

@jimjeffers Thank you.

Project Drawer

Search

File View

Editor

jimjeffers commented 8 years ago

@PropGit

Is the "Projects" and "Files" section headers one of the colors in our scheme?

Yes. It is the medium blue color. Correction, the section headers are not in the color scheme... this will be fixed.

Context-Button (occasional high-priority item)

Sounds good. When there is not a special situation -- do we simply display only the run / validate button?

NOTE: Alternatively, we could leave Memory Map and Identify in the menu (just disabled/enabled in the right context) so people learn what the icon means that occasionally appears in the Context-Button space.

That could be better - my only concern is that people may get confused about memory map -- i.e. they won't know why it appears when it does or why they can't access it from the side menu when it's disabled. We'll definitely need to so some user testing in the wild to see how the context sensitive button pans out but I like the idea overall as it simplifies the interface by removing irrelevant complexity from the user!

Let's free up the Syntax Check position for an optional high-priority context button (or just blank) and combine Syntax Check with Run in the Run button's position.

Sure - I've updated mockups accordingly. Not sure whether or not we need to do colors or not but I can set it up so we can see how it looks!

Directives

Hmm there goes that idea! :) It's not that simple I suppose. I'll chat with you more on this but it might be best to revert back to providing them as menu options / context sensitive.

Recent Files dropdown

I've adjusted this a bit per your feedback. Should be more to your liking. I have a small arrow indicating a dropdown instead of that large clunky arrow. The dropdown is wider but covers the currently selected file. This is just per googles convention:

screen shot 2015-12-03 at 7 14 32 pm
PropGit commented 8 years ago

Context-Button (occasional high-priority item)

Sounds good. When there is not a special situation -- do we simply display only the run / validate button?

Yes... either a blank spot where the Context-Button would have been, or perhaps ideally, a gentle animate-stretch of the filename's width to occupy that blank space.

NOTE: Alternatively, we could leave Memory Map and Identify in the menu (just disabled/enabled in the right context) so people learn what the icon means that occasionally appears in the Context-Button space.

That could be better - my only concern is that people may get confused about memory map -- i.e. they won't know why it appears when it does or why they can't access it from the side menu when it's disabled.

Right. It's not possible to see the memory map if it can't compile. Not sure how we'd explain that to people with brevity... except through this interaction and their experience.

PropGit commented 8 years ago

Directives

Hmm there goes that idea! :) It's not that simple I suppose. I'll chat with you more on this but it might be best to revert back to providing them as menu options / context sensitive.

Yes, let's chat about that; I thought of a hybrid approach that, while probably not super easy to implement, would be really nice.

Recent Files dropdown

I've adjusted this a bit per your feedback. Should be more to your liking. I have a small arrow indicating a dropdown instead of that large clunky arrow. The dropdown is wider but covers the currently selected file. This is just per googles convention:

I had a feeling the "cover" behavior was unavoidable using Google's convention. :-(

PropGit commented 8 years ago

Updated mobile mockup screencast and also PDF is here.

PropGit commented 8 years ago

Updated desktop mockup screencast and PDF is here.

PropGit commented 8 years ago

@jimjeffers - Here's my desktop mockup feedback:

Project Drawer

File View

Editor

jimjeffers commented 8 years ago

Touch vs. Keyboard

More Menu on the Editor

Interactive Mockups

Schedule

jimjeffers commented 8 years ago

Per our last conversation. Some of the interactive mockups have been completed:

Desktop file navigator show / hide:

https://drive.google.com/file/d/0B53rXRf-3dMiWE4yN2pnYjktaGM/view?usp=sharing

Interactive version: http://share.framerjs.com/0l61zk9qb2gc/

Mobile File Navigator Toolbar Transitions

https://drive.google.com/file/d/0B53rXRf-3dMiNDVMMmVNUGhnekE/view?usp=sharing

Interactive Version: http://share.framerjs.com/w3esaw2pt2yv/

PropGit commented 8 years ago

@jimjeffers - Thanks.

jimjeffers commented 8 years ago

@PropGit Thanks for the feedback. I just looked into that last issue. Looks like ab ug with framer's viewer. It works in Safari but not in Git. I will see if there's anything I can do to fix it within framer.

jimjeffers commented 8 years ago

Some notes from today's discussion:

Begin considering deeper interactions such as the debug terminal.

For this iteration:

PropGit commented 8 years ago

@jimjeffers I'm confused by something in the Mobile mock ups. When in the editor view: image

The upper-left icon is a left arrow, indicating that we're in a nested activity, right? Selecting that takes us back to the file view? image

and only from there can we get back to the project drawer? image

If we had selected a project, the selected a subfolder, then a file; that seems like the interaction to get back to the main menu would now take three steps. I think we need to find a way to alleviate these extra steps.

jimjeffers commented 8 years ago

@PropGit Agreed. I think our compromise or solution here was the quick file switch which allows to switch between projects. OR the autocomplete for file search matches files, folders, and projects. So those alternate paths would be quicker routes to get to different files or projects. Do you think this could be sufficient or should I reconsider the mobile nav in the file switcher?

PropGit commented 8 years ago

UPDATE:

Here's a 6 minute video I recorded to give our Parallax Team a walk-through of our mocked up design for the official Parallax IDE. These are mostly static mock ups that I'm making look dynamic in the video; just politely ignore graphics that shift around in transitions.

https://drive.google.com/file/d/0B0tev9Y3WaL4T1dDeWdXczVzeHc/view?usp=sharing

jimjeffers commented 8 years ago

@PropGit Looks great. That's some fancy screen dancing with static mocks!

jimjeffers commented 8 years ago

I've done some house keeping per the feedback we had on the last iteration of interactive mockups. Framer generates a new URL each time I share a prototype so here are updated versions of the last prototypes I deployed:

  1. Fab scrolling now properly clips the Fab in Chrome: http://share.framerjs.com/46p699tk97ni/
  2. Here are revisions to the desktop mockup in which you can now swipe to open the file explorer, the button to compact or expend is persistent, and the more menu on the right hand side has a larger hit target: http://share.framerjs.com/9bpuwdg3606n/
PropGit commented 8 years ago

@jimjeffers - Great! Both items verified and I like them!

Try expanding the file view and then click the Menu button; funny thing happens.

jimjeffers commented 8 years ago

@PropGit I've added a lot of demo functionality to the mobile file nav.

Updated Mobile Navigation Prototype

  1. We can now navigate to the search screen and type real keyboard input into the search field. It will only respond to 'SER' if you type anything outside of that you'll see 'No Results Found':
  2. You can summon the project drawer via swipe or tapping the menu button:

http://share.framerjs.com/924y21zuyn1a/

TODO:

  1. Hoping to add project switching tonight. This should give some context as to how we expect the project toggling to behave.
  2. Navigating to the code view.

I think from that point I'll create a seperate framer to demonstrate changes that occur within the code view. The reason is that the framer project will become overly complex and difficult to maintain. So I'll try to provide hooks in any of the framer prototypes where you can navigate to a screen that is no longer interactive indicating you've reached the end of a given demonstration.

jimjeffers commented 8 years ago

@propgit I can resolve this by making the layer below an interactive later. Seems to be a bug with framers scroll component. I had to deal with that specific issue on the updates to mobile.

Sent from my iPhone

On Jan 13, 2016, at 4:16 PM, Parallax Git Administrator notifications@github.com wrote:

@jimjeffers - Great! Both items verified and I like them!

Try expanding the file view and then click the Menu button; funny thing happens.

— Reply to this email directly or view it on GitHub.

jimjeffers commented 8 years ago

Mobile Navigation Prototype V2

http://share.framerjs.com/22b2efzxlghh/

Please excuse some loading time - the first time you jump to a view the images for the view may need to load.

Let me know your thoughts! We're getting there...

jimjeffers commented 8 years ago

Mobile Navigation Prototype V3

Notes:

I'm still trying to figure out a good way to handle the appearance of a tokenization error or jumping to another file. I think I may just use the screenshot of the err example as the contents of the other file. Since we just have images here I can't actually fake some code entry so this might be the best demonstration.

http://share.framerjs.com/cqhit8uf9ulb/

jimjeffers commented 8 years ago

Mobile Navigation Prototype V4

http://share.framerjs.com/2c41hlwie6sq/

@PropGit I have added a screencast demonstrating the latest iteration of the mobile file nav prototype here: https://drive.google.com/a/sumocreations.com/file/d/0B53rXRf-3dMiM2VOYnluZ29qSVE/view

PropGit commented 8 years ago

@jimjeffers

I'm responding to a number of versions of the interactives... ignore comments if they've been fixed in later versions.

Updated Mobile Navigation Prototype

  1. We can now navigate to the search screen and type real keyboard input into the search field. It will only respond to 'SER' if you type anything outside of that you'll see 'No Results Found':
  2. You can summon the project drawer via swipe or tapping the menu button:

Search and Project Drawer interactions verified! Fantastic!

I can resolve this by making the layer below an interactive later.

Does the resolve the overly complex framer project issue?

Mobile Navigation Prototype V2

  • Added the ability to switch between projects when viewing the project drawer.

This interactive simply toggles open project, sometimes making the resulting view show the wrong project.

  • You can open the code editor by tapping on the first file item.

Verified, but this works for the first two file items, but always shows the same code view, which isn't the right source name. Also, doesn't seem to have a touch target that covers the whole row (minus the more button).

  • You can see the more menu by tapping any of the 'more' buttons on a given file or folder.

Perfect!

  • You can show or hide the keyboard in the code editor.

Verified!

Mobile Navigation Prototype V3

  • Fixed bugs relating to the project switcher drawer showing the wrong project.

Still broken for me. If I click on the same project each time, it still toggles projects.

  • Fixed bug causing the keyboard to appear erratically in the code editing view.

Not sure, but I think this is working fine for me.

  • Fixed bug causing the code to scroll to an improper constraint when the keyboard was not visible.

Seems perfect now.

  • Added the ability to show the jump menu to switch between projects.

Awesome! Can we add ability to open code view for that first item in the jump menu? Done... I see it now in v4.

  • Added the ability to launch the more menu in the code editor.

Verified!

  • Added the ability to delete the last item from the code menu.

Code menu? You must mean jump menu: verified! Let's call it the Active Source list.

I'm still trying to figure out a good way to handle the appearance of a tokenization error or jumping to another file. I think I may just use the screenshot of the err example as the contents of the other file. Since we just have images here I can't actually fake some code entry so this might be the best demonstration.

Agreed.

Mobile Navigation Prototype V4

  • Completed the illusion of file switching.

Perfect!

  • Improved the 'delete' from jump menu demonstration.

Great! Looks like it's the second item in the active code list that's deletable. Verified.

  • Fixed some bugs causing files in the main navigation to detect false clicks when scrolling.
  • Both cases where the keyboard gets displayed are accurately presented w/ the default android behavior to hide the keyboard or go back.

Verified.

I have added a screencast demonstrating the latest iteration of the mobile file nav prototype

Thanks! That helped me understand a few things I couldn't figure out before.

This all looks fantastic!

PropGit commented 8 years ago

@jimjeffers - Request for comment: I'm no longer seeing a true benefit in having the green action bar (at the bottom of the File View) animating away into a FAB. If we're making the scrolling list provide enough padding at the bottom to allow scrolling up out of the way of the FAB, then it naturally also scrolls up out of the way of the green action bar. I think we started down this path to prevent taking up two rows of space to allow adding a new folder and new file, but now we've compressed that down to one row, that can always be visible.

I'm leaning towards keeping it a green action bar always.

Thoughts?

jimjeffers commented 8 years ago

@PropGit Outside of it being a nice effect - it is some unnecessary complexity in the UI. It affords you more screen real-estate to read the list, but if most smartphones have a larger display as they do today, than I think it could be safe to forego this element in the actual interface as well!

PropGit commented 8 years ago

@jimjeffers - Okay, let's make it a fixed green action bar then. Sorry to have wasted time on this, but some things are not obvious until we implement them.

jimjeffers commented 8 years ago

@PropGit - I've uploaded a new screencast demoing the debug console on mobile. Please take a look:

https://drive.google.com/open?id=0B53rXRf-3dMiM2VOYnluZ29qSVE

(Also see this post) Changes in this update include:

  1. The new file/folder menu does not disappear when you scroll. The fab is no more! Long live the new item menu!
  2. I've added a swipe up interaction as well as a tap on the keyboard accessory view in the code editor. This allows you to quickly navigate to the debugger console while coding. The debugger console also has it's own accessory view with the Echo,TX,RX items serving as the contextual items for the view which will be visible at the bottom of the screen whether the keyboard is active or not.

Also note:

I've hit a limit on the allowed file size for a demo that I can share. So moving forward I'll have to break these apart into individual demonstrations that we can share online. I thought we could just keep adding on to one framer project, but it's not really intended for that and thus my goal will be to create specialized prototypes that only show a specific interaction for upcoming works.

PropGit commented 8 years ago

@jimjeffers - I'll provide feedback as soon as possible.

The shared interactive limitation is a bummer, but we can deal with it the way you indicated. Sounds reasonable.

PropGit commented 8 years ago

@jimjeffers

The new file/folder menu does not disappear when you scroll. The fab is no more! Long live the new item menu!

The screencast shows the green toolbar still transitions into a fab. Am I misunderstanding what you meant?

Do you have a new interactive to publish?

I've added a swipe up interaction as well as a tap on the keyboard accessory view in the code editor. This allows you to quickly navigate to the debugger console while coding. The debugger console also has it's own accessory view with the Echo,TX,RX items serving as the contextual items for the view which will be visible at the bottom of the screen whether the keyboard is active or not.

The debug console is not shown in this screencast.

Maybe you linked to the wrong screencast?

PropGit commented 8 years ago

@jimjeffers Found it. Here's the debugger screencast: https://drive.google.com/file/d/0B53rXRf-3dMiYzJEOXExbk5uWHc/view?usp=sharing

The permanent new file/folder menu is great. The swipe up (or tap) to reveal the debug terminal is perfect. Animation is fantastic too. Great work!

PropGit commented 8 years ago

Next Design Elements

NOTE: Ideas are welcome. Struck-through items are done.

jimjeffers commented 8 years ago

@PropGit Sorry about that! It was incorrect. Reviewing your notes for next items now.

jimjeffers commented 8 years ago

@PropGit I wanted to chat with you shortly about breaking the interactive up into parts before I did so. There is no interactive because it's grown too large for the sharing API provided by framer.

jimjeffers commented 8 years ago

@PropGit Notes from our discussion today:

File Switching Done.

Syntax Error: Done.

Import / Export Done.

Project Drawer Done. Nothing to change.

Debug Console Done.

Landscape Orientation Done.

Directives

Find / Replace Done.

Google Drive (process management) Done.