Page MenuHomePhabricator

GUI: Tab implement
ClosedPublic

Authored by bowonryu on Sep 6 2018, 3:37 AM.

Details

Reviewers
JackDanielZ
Summary

File tab implement for GUI enhancement.

  • I have customized the elm_list's theme to look more like a regular tab.

[file click on explorer -> file preview]
the preview tab is activated whenever you select another file in the explorer.
only one preview tab is created, and the text style of tab is Italic.

[file double click on explorer -> pin the tab]
pin the selected tab to the top. you can close by pressing x button.

Test Plan

execute ea_gen and select file on explorer.

Diff Detail

Branch
master
Lint
No Linters Available
Unit
No Unit Test Coverage
Build Status
Buildable 7623
Build 7182: arc lint + arc unit
bowonryu requested review of this revision.Sep 6 2018, 3:37 AM
bowonryu created this revision.
bowonryu updated this revision to Diff 16697.Sep 6 2018, 4:25 AM

remove unused code.

Hi Bowon,

I like the tab feature, really useful.

Can you check on your side if playing with single clicks and double clicks behave as you expect? On my side, when I double click on the first, it opens it well. Then I single click on the second gl item, a new tab is open. When I double click on the third, the current tab file is replaced. When I single click on the 4th item, it opens a new tab. Weird no?
By the way, since selected and double,clicked events are invoked when one double-clicks, how do you know if you need to replace the tab or to create a new one?

Daniel

Hi Daniel Zaoui.

Thanks for comment : )

It's simple, no need to distinguish between click and double-click.
If you double-click the file,

[ Click -> Preview(replace tab) -> Double Click -> Pin (add tab) ]

The tab is created through the above process.
This is the intended implementation.

Usability is also simple for the user.
Click on the file you want to check. It is convenient because it does not create new tabs continuously.

If you want to keep the tab, double click it.
In this process, Preview -> Pin is done naturally.

So, your test is expected result.

[1st Item] [Double-Click] : Click -> Preview(replace tab) -> Double Click -> Pin (add tab)
                          : There is 1 tab

[2nd Item] [Click]        : Click -> Preview(replace tab, If the preview tab does not exist, it is generated)
                          : There are 1 tab and 1 preview tab

[3rd Item] [Double-Click] : Click -> Preview(replace tab, preview tab by 2nd) -> Double Click -> Pin (add tab)
                          : There are 2 tabs

[4th Item] [Click]        : Click -> Preview(replace tab, If the preview tab does not exist, it is generated)
                          : There are 2 tabs and 1 preview tab

This UX is used in Visual Studio Code.
Is this strange? How should it work?
I'll wait for your feedback.

Anyway, We should also be able to see the App's ML and DB through the tabs. I am currently working on it.

I'll upload a review soon.
Have a good weekend!

Hi Bowon,

Thank you for your explanation, it is clear for me now. I didn't understand the preview concept before that.

Btw, please fix the warnings and add the edj file to .gitignore.

Daniel

bowonryu updated this revision to Diff 16743.Sep 10 2018, 9:48 PM

support ml, db

Hi,

It seems really good now! Thank you!

Concerning the MLs directories, I don't think them shown in a tab is useful. Can't we just ignore them?

Daniel

And please fix the warnings! :-)

bowonryu updated this revision to Diff 16761.Sep 12 2018, 5:19 AM

From now, the directory is not visible on tab.
and fix build warning.

JackDanielZ accepted this revision.Sep 13 2018, 6:52 AM
This revision is now accepted and ready to land.Sep 13 2018, 6:52 AM
JackDanielZ closed this revision.Sep 13 2018, 6:53 AM