Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Desktop-specific APIs #4

Open
4 of 10 tasks
ptmt opened this issue Oct 20, 2015 · 14 comments
Open
4 of 10 tasks

Desktop-specific APIs #4

ptmt opened this issue Oct 20, 2015 · 14 comments
Labels

Comments

@ptmt
Copy link
Owner

ptmt commented Oct 20, 2015

Implement core APIs. Keep in mind that some most difficult could be covered by plugins.

  • Application menu;
  • Contexts menu;
  • Custom titlebars. Now it's achieved by [[self window] setTitlebarAppearsTransparent:YES]; + NSFullSizeContentViewWindowMask;
  • Keyboard Shortcuts: expose it to js + as a key equivalents for menus;
  • Resizing (by dragging) areas inside window;
  • Managing cursors state (loading, pointer);
  • Opening files;
  • Notifications;
  • Undo manager;
  • Toolbar icon;
@ptmt ptmt added the proposal label Oct 22, 2015
@yanivtal
Copy link

Hey, great work with this project! What milestone are you expecting to add these in? Next release is 0.2.0 right? Would this be 0.3.0 stuff?

@ptmt
Copy link
Owner Author

ptmt commented Dec 15, 2015

I've started to implement a real product based on RND now, which will use most of these APIs internally. So eventually these will be merged into master. If you need some particular thing let me know.

@yanivtal
Copy link

That's great! Congrats. I'm very interested in the file writing API's. I'll keep an eye out for these hitting.

@Amnesthesia
Copy link

Any news on the file-writing API (or file-reading for that matter)? Been looking around trying to figure out how to read files and directories with no luck

@ptmt
Copy link
Owner Author

ptmt commented Dec 27, 2016

I believe it should be the plugin, like react-native-fs. See also https://github.com/skeletcode/skelet/blob/master/macos/skelet/Modules/FilesystemManager.m#L34 for an example, there are 3 methods, not perfect, though. What's you task?

@matpaul
Copy link
Contributor

matpaul commented Dec 28, 2016

@ptmt what of these tasks has more priority ?
Is resizing by dragging mean NSSplitView ?

@ptmt
Copy link
Owner Author

ptmt commented Dec 28, 2016 via email

@matpaul
Copy link
Contributor

matpaul commented Dec 28, 2016

I'll start with implementation NSSplitView

I saw issue with resizing in init app (when resize - view background resize some delay)
I'm very interested in this project so yep, if you have some more details it will be good to provide it.

Concerning Event bug - when I test cursor changes, onMouseEnter and onMouseLeave work excellent - so need some information how to reproduce it.

It will be very cool to merge with last react native, maybe after 0.40 released.

I think about implementation #40, but at this moment i think there are many other work ))

Also, how to provide documentation for custom components that not in React Native docs?

@stanlemon
Copy link

Are there any prototypes around the file open dialog that could be looked at for inspiration?

@ptmt
Copy link
Owner Author

ptmt commented Mar 6, 2017

@stanlemon https://github.com/skeletcode/skelet/blob/master/macos/skelet/Modules/DialogManager.m#L32

@nathggns
Copy link

nathggns commented May 7, 2018

Did you manage to look at menubar icons yet?

@ptmt
Copy link
Owner Author

ptmt commented May 9, 2018

Yes, I used it couple times, but this requires to write a bit of native code. See this for example https://github.com/ptmt/dripr-menubar/blob/react-native/osx/dripr/AppDelegate.m#L65

@doprdele
Copy link

Can you open files yet?

@ptmt
Copy link
Owner Author

ptmt commented Dec 30, 2018

Yes, see https://github.com/skeletcode/skelet/blob/master/macos/skelet/Modules/DialogManager.m#L32 for example. If you need to open it without a user consent there is a few examples like this ptmt/ratpack@d1c2b2e, but you’ll need to write ObjC

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

7 participants